/*
Theme Name: DigitalScope360
Theme URI: https://example.com/
Author: Custom Build
Description: Premium custom WordPress agency theme for DigitalScope360.
Version: 14.55.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: custom-agency
*/

:root{
  --bg:#0a0a0a;
  --surface:#121212;
  --surface-2:#181818;
  --text:#f5f5f5;
  --muted:#a7a7a7;
  --line:rgba(255,255,255,.12);
  --accent:#d7ff45;
  --max:1240px;
  --radius:22px;
}

/* =========================================================
   V14.42 — FINAL DESKTOP MEGA MENU + HEADER PHONE CTA
   This block intentionally lives at the very end so legacy
   header rules cannot override or clip the desktop menu.
   ========================================================= */
@media(min-width:951px){
  .site-header,
  .site-header .container.header-inner,
  .site-header nav.nav,
  .site-header .ds-services-menu{
    overflow:visible !important;
  }

  .site-header .ds-services-menu{
    position:static !important;
  }

  .site-header .ds-services-trigger{
    position:relative !important;
    min-height:42px !important;
    padding:0 12px !important;
    color:#18213a !important;
    font-size:13px !important;
    font-weight:650 !important;
  }

  .site-header .ds-services-mega{
    position:fixed !important;
    top:86px !important;
    left:50vw !important;
    right:auto !important;
    bottom:auto !important;
    width:min(1180px,calc(100vw - 44px)) !important;
    max-height:calc(100vh - 108px) !important;
    margin:0 !important;
    padding:0 !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
    border:1px solid rgba(50,118,235,.17) !important;
    border-radius:26px !important;
    background:
      radial-gradient(circle at 5% 0%,rgba(36,199,255,.12),transparent 25%),
      radial-gradient(circle at 96% 2%,rgba(131,84,255,.12),transparent 27%),
      rgba(255,255,255,.985) !important;
    box-shadow:0 34px 95px rgba(22,54,117,.23) !important;
    backdrop-filter:blur(24px) saturate(135%) !important;
    -webkit-backdrop-filter:blur(24px) saturate(135%) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:translate(-50%,14px) scale(.985) !important;
    transform-origin:top center !important;
    transition:opacity .22s ease,transform .22s ease,visibility .22s !important;
    z-index:2147483000 !important;
    scrollbar-width:thin;
    scrollbar-color:#b8cff4 transparent;
  }

  .site-header .ds-services-mega::before{
    content:"" !important;
    position:fixed !important;
    top:66px !important;
    left:0 !important;
    right:0 !important;
    height:24px !important;
    display:block !important;
  }

  .site-header .ds-services-mega::after{
    display:none !important;
  }

.site-header .ds-services-menu.is-open>.ds-services-mega{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translate(-50%,0) scale(1) !important;
  }

  .site-header .ds-mega-heading{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:28px !important;
    padding:21px 24px 17px !important;
    border-bottom:1px solid rgba(55,120,225,.12) !important;
    background:linear-gradient(105deg,rgba(240,251,255,.82),rgba(248,246,255,.82)) !important;
  }

  .site-header .ds-mega-heading>div{
    display:flex !important;
    flex-direction:column !important;
    gap:3px !important;
  }

  .site-header .ds-mega-heading span{
    color:#3279f4 !important;
    font-size:9px !important;
    font-weight:850 !important;
    letter-spacing:.17em !important;
    text-transform:uppercase !important;
  }

  .site-header .ds-mega-heading strong{
    color:#0b2048 !important;
    font-size:22px !important;
    font-weight:850 !important;
    letter-spacing:-.025em !important;
  }

  .site-header .ds-mega-heading p{
    max-width:390px !important;
    margin:0 !important;
    color:#71809a !important;
    font-size:12px !important;
    line-height:1.55 !important;
    text-align:right !important;
  }

  .site-header .ds-services-mega-inner{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:12px !important;
    padding:16px !important;
  }

  .site-header .ds-service-group{
    position:relative !important;
    min-width:0 !important;
    padding:13px !important;
    border:1px solid rgba(58,120,224,.12) !important;
    border-radius:17px !important;
    background:linear-gradient(145deg,#fff,rgba(246,250,255,.92)) !important;
    box-shadow:none !important;
    transform:none !important;
    transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease !important;
  }

  .site-header .ds-service-group:hover,
  .site-header .ds-service-group:focus-within{
    border-color:rgba(47,121,245,.26) !important;
    box-shadow:0 13px 30px rgba(35,74,145,.09) !important;
    transform:translateY(-2px) !important;
  }

  .site-header .ds-service-group-trigger{
    width:100% !important;
    min-height:31px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    padding:0 3px 9px !important;
    border:0 !important;
    border-bottom:1px solid rgba(61,122,223,.10) !important;
    border-radius:0 !important;
    background:transparent !important;
    color:#10264f !important;
    cursor:default !important;
    font-size:13px !important;
    font-weight:850 !important;
    text-align:left !important;
  }

  .site-header .ds-service-group-trigger::before{
    content:"" !important;
    width:8px !important;
    height:8px !important;
    flex:0 0 8px !important;
    border-radius:50% !important;
    background:linear-gradient(135deg,#23c9ff,#347cff 55%,#8557ff) !important;
    box-shadow:0 0 0 4px rgba(52,126,255,.09) !important;
  }

  .site-header .ds-service-group-trigger i{
    display:none !important;
  }

  .site-header .ds-service-submenu,
  .site-header .ds-service-group:hover>.ds-service-submenu,
  .site-header .ds-service-group:focus-within>.ds-service-submenu,
  .site-header .ds-service-group.is-open>.ds-service-submenu{
    position:static !important;
    inset:auto !important;
    width:auto !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:3px 6px !important;
    margin:8px 0 0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:none !important;
  }

  .site-header .ds-service-submenu::before{
    display:none !important;
  }

  .site-header .ds-service-submenu a{
    min-width:0 !important;
    min-height:30px !important;
    display:flex !important;
    align-items:center !important;
    padding:6px 8px !important;
    border-radius:9px !important;
    background:transparent !important;
    color:#5c6b84 !important;
    font-size:11px !important;
    font-weight:600 !important;
    line-height:1.25 !important;
    text-decoration:none !important;
    white-space:normal !important;
    transition:color .18s ease,background .18s ease,transform .18s ease !important;
  }

  .site-header .ds-service-submenu a:hover,
  .site-header .ds-service-submenu a:focus{
    color:#176ef2 !important;
    background:linear-gradient(135deg,rgba(35,198,255,.10),rgba(125,82,255,.09)) !important;
    transform:translateX(2px) !important;
    outline:none !important;
  }

  .site-header .ds-mega-footer{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:20px !important;
    padding:13px 22px !important;
    border-top:1px solid rgba(55,120,225,.12) !important;
    background:linear-gradient(105deg,rgba(247,251,255,.94),rgba(249,247,255,.94)) !important;
  }

  .site-header .ds-mega-footer span{
    color:#6c7b94 !important;
    font-size:11px !important;
    font-weight:650 !important;
  }

  .site-header .ds-mega-footer a{
    padding:9px 13px !important;
    border-radius:10px !important;
    background:linear-gradient(100deg,#217fff,#7855f7) !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
    text-decoration:none !important;
    box-shadow:0 8px 20px rgba(74,91,235,.17) !important;
  }

  .site-header .ds-header-phone{
    min-width:max-content !important;
    gap:8px !important;
    padding:0 17px !important;
    font-size:12px !important;
    letter-spacing:.01em !important;
  }

  .site-header .ds-header-phone span{
    font-size:14px !important;
    line-height:1 !important;
  }
}

@media(max-width:950px){
  .site-header .ds-mega-heading,
  .site-header .ds-mega-footer{
    display:none !important;
  }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{width:min(calc(100% - 40px),var(--max));margin:auto}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(10,10,10,.72);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between}
.logo{font-size:22px;font-weight:800;letter-spacing:-.04em}
.logo span{color:var(--accent)}
.nav{display:flex;gap:30px;align-items:center}
.nav a{font-size:14px;color:#ddd;transition:.2s}
.nav a:hover{color:var(--accent)}
.menu-toggle{display:none;background:none;border:0;color:white;font-size:25px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 21px;border-radius:999px;border:1px solid var(--line);font-weight:700;font-size:14px;transition:.25s}
.btn-primary{background:var(--accent);color:#090909;border-color:var(--accent)}
.btn:hover{transform:translateY(-2px)}
.hero{min-height:100vh;padding:170px 0 90px;display:flex;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:var(--accent);font-weight:800}
.hero h1{font-size:clamp(52px,8vw,112px);line-height:.92;letter-spacing:-.075em;max-width:1050px;margin:20px 0}
.hero h1 em{font-style:normal;color:var(--accent)}
.hero-copy{max-width:650px;color:var(--muted);font-size:18px}
.hero-actions{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:end}
.hero-card{min-height:330px;border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(circle at 70% 20%,rgba(215,255,69,.2),transparent 40%),linear-gradient(145deg,#191919,#0d0d0d);display:flex;align-items:end;padding:28px;overflow:hidden}
.hero-card strong{font-size:42px;letter-spacing:-.05em}
.section{padding:110px 0}
.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:45px}
.section h2{font-size:clamp(38px,5vw,72px);line-height:.98;letter-spacing:-.06em;margin:0}
.section-intro{max-width:500px;color:var(--muted)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stat{padding:28px 20px;border-right:1px solid var(--line)}
.stat:last-child{border-right:0}
.stat b{display:block;font-size:38px;letter-spacing:-.05em}
.stat span{color:var(--muted);font-size:13px}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.service{padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:240px;transition:.3s}
.service:hover{transform:translateY(-5px);border-color:rgba(215,255,69,.45)}
.service-num{color:var(--accent);font-size:12px;font-weight:800}
.service h3{font-size:25px;margin:50px 0 10px;letter-spacing:-.04em}
.service p{color:var(--muted);margin:0}
.work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.work-card{border-radius:var(--radius);overflow:hidden;background:var(--surface);border:1px solid var(--line)}
.work-image{aspect-ratio:16/10;background:linear-gradient(135deg,#202020,#101010);display:flex;align-items:center;justify-content:center;color:#666;font-size:13px}
.work-body{padding:24px}
.work-body h3{margin:0 0 5px;font-size:25px}
.work-body p{margin:0;color:var(--muted)}
.process{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.process-item{padding:25px 18px;border-right:1px solid var(--line)}
.process-item:last-child{border-right:0}
.process-item b{color:var(--accent);font-size:12px}
.process-item h3{margin:30px 0 8px}
.process-item p{color:var(--muted);font-size:14px}
.cta{padding:90px 40px;border-radius:32px;background:var(--accent);color:#090909;text-align:center}
.cta h2{font-size:clamp(42px,6vw,82px);letter-spacing:-.07em;line-height:.95;margin:0 auto 28px;max-width:850px}
.cta .btn{background:#090909;color:white;border-color:#090909}
.site-footer{padding:70px 0 30px;border-top:1px solid var(--line)}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}
.footer-title{font-size:22px;font-weight:800}
.footer-copy{color:var(--muted);max-width:420px}
.footer-links{display:flex;flex-direction:column;gap:10px;color:var(--muted);font-size:14px}
.copyright{margin-top:60px;padding-top:20px;border-top:1px solid var(--line);color:#666;font-size:12px}
@media(max-width:900px){
  .nav{display:none;position:absolute;top:78px;left:0;right:0;padding:20px;background:#0a0a0a;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}
  .nav.open{display:flex}
  .menu-toggle{display:block}
  .header-cta{display:none}
  .hero-grid{grid-template-columns:1fr}
  .stats{grid-template-columns:repeat(2,1fr)}
  .stat:nth-child(2){border-right:0}
  .services-grid{grid-template-columns:1fr 1fr}
  .process{grid-template-columns:1fr 1fr}
  .process-item:nth-child(2n){border-right:0}
  .work-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .container{width:min(calc(100% - 28px),var(--max))}
  .hero{padding-top:140px}
  .hero h1{font-size:55px}
  .section{padding:75px 0}
  .section-head{display:block}
  .section-intro{margin-top:18px}
  .stats,.services-grid,.process{grid-template-columns:1fr}
  .stat,.process-item{border-right:0;border-bottom:1px solid var(--line)}
  .stat:last-child,.process-item:last-child{border-bottom:0}
  .cta{padding:65px 22px}
  .footer-grid{grid-template-columns:1fr}
}

/* DigitalScope360 v2.1 */
.site-header.scrolled{background:rgba(8,8,8,.94);border-bottom-color:var(--line)}
.mobile-cta{display:none}
.hero-visual{position:relative;overflow:hidden;background:radial-gradient(circle at 70% 25%,rgba(202,255,37,.16),transparent 30%),linear-gradient(145deg,#171717,#090909)}
.hero-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:48px 48px}
.hero-visual:after{content:"";position:absolute;width:220px;height:220px;right:-50px;top:-50px;border-radius:50%;background:radial-gradient(circle,rgba(202,255,37,.55),rgba(202,255,37,.08) 42%,transparent 70%);animation:agencyFloat 7s ease-in-out infinite}
@keyframes agencyFloat{50%{transform:translate(-25px,30px) scale(1.08)}}
.marquee{border-block:1px solid var(--line);overflow:hidden;padding:20px 0}
.marquee-track{display:flex;width:max-content;animation:agencyMarquee 28s linear infinite}
.marquee span{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#777;padding:0 30px}
.marquee i{color:var(--accent);font-style:normal}
@keyframes agencyMarquee{to{transform:translateX(-50%)}}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
@media(max-width:950px){.nav.open{display:block}.nav .mobile-cta{display:inline-flex;margin-top:18px}}


/* ===== Header/Nav Fix v2.2 ===== */
.site-header .header-inner{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:32px;
}

.site-header .nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
  min-width:0;
}

.site-header .nav > ul,
.site-header .nav ul.menu{
  display:flex !important;
  align-items:center;
  justify-content:center;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  gap:28px;
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

.site-header .nav li,
.site-header .nav ul li{
  display:block;
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

.site-header .nav li::marker{
  content:"";
  font-size:0;
}

.site-header .nav a{
  display:inline-flex;
  align-items:center;
  white-space:nowrap;
  line-height:1;
  padding:10px 0;
  color:#d7d7d7;
}

.site-header .nav a:hover{
  color:var(--accent);
}

.site-header .mobile-cta{
  display:none;
}

.site-header .header-cta{
  white-space:nowrap;
}

.site-header .menu-toggle{
  margin-left:10px;
}

@media (max-width:950px){
  .site-header .header-inner{
    display:flex;
    justify-content:space-between;
  }

  .site-header .nav{
    display:none;
    position:absolute;
    top:76px;
    left:0;
    right:0;
    padding:22px 20px 26px;
    background:#080808;
    border-bottom:1px solid var(--line);
  }

  .site-header .nav.open{
    display:block;
  }

  .site-header .nav > ul,
  .site-header .nav ul.menu{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start;
    justify-content:flex-start;
    gap:4px;
  }

  .site-header .nav a{
    width:100%;
    padding:12px 0;
  }

  .site-header .nav .mobile-cta{
    display:inline-flex;
    width:auto;
    margin-top:16px;
    padding:0 20px;
  }
}


/* ===== Definitive Header Fix v2.3 ===== */
.site-header{
  height:76px;
}

.site-header .header-inner{
  height:76px !important;
  display:grid !important;
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  column-gap:36px !important;
}

.site-header .logo{
  display:inline-flex !important;
  align-items:center !important;
  white-space:nowrap !important;
}

.site-header .nav{
  position:static !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  gap:30px !important;
  width:auto !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
}

.site-header .nav > a:not(.btn){
  display:inline-flex !important;
  align-items:center !important;
  width:auto !important;
  padding:10px 0 !important;
  margin:0 !important;
  white-space:nowrap !important;
  line-height:1 !important;
  font-size:13px !important;
  color:#d7d7d7 !important;
}

.site-header .nav > a:not(.btn):hover{
  color:var(--accent) !important;
}

.site-header .header-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
}

.site-header .mobile-cta{
  display:none !important;
}

.site-header .menu-toggle{
  display:none !important;
}

@media(max-width:950px){
  .site-header .header-inner{
    display:flex !important;
    justify-content:space-between !important;
  }

  .site-header .header-cta{
    display:none !important;
  }

  .site-header .menu-toggle{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .site-header .nav{
    display:none !important;
    position:absolute !important;
    top:76px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:4px !important;
    padding:20px !important;
    background:#080808 !important;
    border-bottom:1px solid var(--line) !important;
  }

  .site-header .nav.open{
    display:flex !important;
  }

  .site-header .nav > a:not(.btn){
    width:100% !important;
    padding:13px 0 !important;
  }

  .site-header .nav .mobile-cta{
    display:inline-flex !important;
    width:auto !important;
    margin-top:12px !important;
    padding:0 20px !important;
  }
}

/* =========================================================
   V14.41 — DESKTOP SERVICES MEGA MENU
   Wide, scan-friendly service directory on PC. The existing
   mobile accordion below 951px remains unchanged.
   ========================================================= */
@media(min-width:951px){
  .site-header .ds-services-menu{
    position:relative !important;
  }

  .site-header .ds-services-mega{
    top:calc(100% + 17px) !important;
    left:50% !important;
    width:min(1120px,calc(100vw - 48px)) !important;
    max-height:calc(100vh - 118px) !important;
    overflow-y:auto !important;
    padding:20px !important;
    border:1px solid rgba(54,122,237,.16) !important;
    border-radius:24px !important;
    background:
      radial-gradient(circle at 8% 0%,rgba(39,200,255,.10),transparent 26%),
      radial-gradient(circle at 94% 5%,rgba(132,86,255,.10),transparent 28%),
      rgba(255,255,255,.985) !important;
    box-shadow:0 30px 80px rgba(30,64,132,.19) !important;
    transform:translate(-50%,12px) !important;
    scrollbar-width:thin;
    scrollbar-color:#bed2f5 transparent;
  }

  .site-header .ds-services-mega::after{
    content:"Explore all services";
    display:block;
    grid-column:1/-1;
    margin:15px 2px 0;
    padding-top:14px;
    border-top:1px solid rgba(66,124,224,.12);
    color:#7888a4;
    font-size:10px;
    font-weight:800;
    letter-spacing:.16em;
    text-align:center;
    text-transform:uppercase;
  }

.site-header .ds-services-menu.is-open>.ds-services-mega{
    transform:translate(-50%,0) !important;
  }

  .site-header .ds-services-mega-inner{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:12px !important;
  }

  .site-header .ds-service-group{
    position:relative !important;
    min-width:0 !important;
    padding:14px !important;
    border:1px solid rgba(65,125,230,.11) !important;
    border-radius:17px !important;
    background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(246,250,255,.88)) !important;
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease !important;
  }

  .site-header .ds-service-group:hover,
  .site-header .ds-service-group:focus-within{
    z-index:2;
    transform:translateY(-2px);
    border-color:rgba(55,126,246,.24) !important;
    box-shadow:0 14px 30px rgba(42,80,150,.09) !important;
  }

  .site-header .ds-service-group-trigger{
    min-height:auto !important;
    padding:1px 2px 10px !important;
    color:#0d234b !important;
    background:transparent !important;
    cursor:default !important;
    font-size:13px !important;
    font-weight:850 !important;
    letter-spacing:-.01em !important;
  }

  .site-header .ds-service-group-trigger::before{
    content:"";
    width:8px;
    height:8px;
    flex:0 0 8px;
    border-radius:50%;
    background:linear-gradient(135deg,#23c9ff,#3d7cff 55%,#8658ff);
    box-shadow:0 0 0 4px rgba(55,134,255,.09);
  }

  .site-header .ds-service-group-trigger span{
    margin-right:auto;
  }

  .site-header .ds-service-group-trigger i{
    display:none !important;
  }

  .site-header .ds-service-submenu{
    position:static !important;
    width:auto !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:3px 6px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:none !important;
  }

  .site-header .ds-service-submenu::before{
    display:none !important;
  }

  .site-header .ds-service-submenu a{
    display:flex !important;
    min-height:31px !important;
    align-items:center !important;
    padding:7px 8px !important;
    border-radius:9px !important;
    color:#5c6c87 !important;
    font-size:11px !important;
    font-weight:600 !important;
    line-height:1.25 !important;
  }

  .site-header .ds-service-submenu a:hover,
  .site-header .ds-service-submenu a:focus{
    color:#176ef2 !important;
    background:linear-gradient(135deg,rgba(35,198,255,.10),rgba(125,82,255,.08)) !important;
    transform:translateX(2px) !important;
    outline:none !important;
  }
}


/* ===== Premium Hero Visual v2.4 ===== */
.hero-card.hero-premium{
  position:relative;
  min-height:470px;
  border-radius:30px;
  overflow:hidden;
  padding:0;
  background:
    radial-gradient(circle at 75% 15%,rgba(202,255,37,.18),transparent 28%),
    radial-gradient(circle at 20% 80%,rgba(255,255,255,.05),transparent 30%),
    linear-gradient(145deg,#151515,#0a0a0a);
  isolation:isolate;
}

.hero-premium .hero-grid-bg{
  position:absolute;
  inset:0;
  z-index:0;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,transparent 0%,black 20%,black 78%,transparent 100%);
  opacity:.45;
}

.hero-premium .hero-glow{
  position:absolute;
  border-radius:999px;
  filter:blur(35px);
  opacity:.45;
  z-index:0;
}

.hero-premium .hero-glow-a{
  width:220px;
  height:220px;
  right:-60px;
  top:-40px;
  background:rgba(202,255,37,.38);
  animation:heroGlowA 7s ease-in-out infinite;
}

.hero-premium .hero-glow-b{
  width:180px;
  height:180px;
  left:-70px;
  bottom:40px;
  background:rgba(255,255,255,.08);
  animation:heroGlowB 8s ease-in-out infinite;
}

@keyframes heroGlowA{
  50%{transform:translate(-30px,35px) scale(1.08)}
}
@keyframes heroGlowB{
  50%{transform:translate(35px,-20px) scale(.92)}
}

.hero-premium .floating-card{
  position:absolute;
  z-index:3;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(10,10,10,.68);
  backdrop-filter:blur(12px);
  box-shadow:0 20px 60px rgba(0,0,0,.25);
}

.hero-premium .floating-card-1{
  top:34px;
  left:28px;
  width:185px;
  padding:18px;
  border-radius:18px;
  animation:floatOne 6s ease-in-out infinite;
}

.hero-premium .floating-card-1 strong{
  display:block;
  font-size:34px;
  line-height:1;
  letter-spacing:-.06em;
  margin:10px 0 5px;
}

.hero-premium .fc-label{
  display:block;
  color:var(--accent);
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.hero-premium .floating-card small{
  color:#8a8a8a;
  font-size:11px;
}

.hero-premium .floating-card-2{
  top:118px;
  right:28px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:999px;
  animation:floatTwo 7s ease-in-out infinite;
}

.hero-premium .floating-card-2 strong{
  display:block;
  font-size:12px;
  line-height:1.1;
}

.hero-premium .floating-card-2 small{
  display:block;
  margin-top:3px;
  font-size:9px;
}

.hero-premium .fc-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 18px rgba(202,255,37,.8);
}

@keyframes floatOne{
  50%{transform:translateY(12px) rotate(-1deg)}
}
@keyframes floatTwo{
  50%{transform:translate(-10px,-8px)}
}

.hero-premium .hero-centerpiece{
  position:absolute;
  inset:50% auto auto 50%;
  width:190px;
  height:190px;
  transform:translate(-50%,-50%);
  z-index:2;
  display:grid;
  place-items:center;
}

.hero-premium .center-ring{
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(202,255,37,.22);
}

.hero-premium .ring-1{
  inset:0;
  animation:spinSlow 14s linear infinite;
}

.hero-premium .ring-1:before,
.hero-premium .ring-2:before{
  content:"";
  position:absolute;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 18px rgba(202,255,37,.7);
}

.hero-premium .ring-1:before{
  top:-4px;
  left:50%;
}

.hero-premium .ring-2{
  inset:22px;
  border-color:rgba(255,255,255,.12);
  animation:spinReverse 11s linear infinite;
}

.hero-premium .ring-2:before{
  right:-4px;
  top:50%;
}

@keyframes spinSlow{to{transform:rotate(360deg)}}
@keyframes spinReverse{to{transform:rotate(-360deg)}}

.hero-premium .center-core{
  width:112px;
  height:112px;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.14);
  background:
    radial-gradient(circle at 35% 30%,rgba(202,255,37,.16),transparent 35%),
    rgba(10,10,10,.85);
  box-shadow:
    0 0 0 10px rgba(255,255,255,.02),
    0 25px 80px rgba(0,0,0,.45);
}

.hero-premium .center-core span{
  font-size:30px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.06em;
}

.hero-premium .center-core small{
  margin-top:6px;
  color:#868686;
  font-size:9px;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.hero-premium .hero-result-premium{
  position:absolute;
  left:24px;
  right:24px;
  bottom:24px;
  z-index:4;
  padding:20px 22px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  background:rgba(8,8,8,.72);
  backdrop-filter:blur(14px);
}

.hero-premium .result-row{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  margin-top:7px;
}

.hero-premium .result-row strong{
  font-size:42px;
  line-height:1;
  letter-spacing:-.07em;
}

.hero-premium .result-row span{
  color:#a5a5a5;
  font-size:12px;
  text-align:right;
  padding-bottom:4px;
}

@media(max-width:950px){
  .hero-card.hero-premium{
    min-height:430px;
  }
}

@media(max-width:620px){
  .hero-card.hero-premium{
    min-height:390px;
  }

  .hero-premium .floating-card-1{
    left:18px;
    top:20px;
    width:160px;
  }

  .hero-premium .floating-card-2{
    right:18px;
    top:105px;
  }

  .hero-premium .hero-centerpiece{
    width:160px;
    height:160px;
  }

  .hero-premium .center-core{
    width:94px;
    height:94px;
  }

  .hero-premium .hero-result-premium{
    left:16px;
    right:16px;
    bottom:16px;
  }
}


/* ===== Homepage Polish v2.5 ===== */
.hero{
  min-height:auto;
  padding:138px 0 82px;
}
.hero-grid{
  gap:58px;
}
.hero h1{
  margin-bottom:22px;
}
.hero-copy{
  max-width:610px;
}

.proof-section{
  padding:24px 0 44px;
}
.proof-strip{
  display:grid;
  grid-template-columns:1.05fr 1.4fr;
  align-items:stretch;
  border:1px solid var(--line);
  border-radius:24px;
  overflow:hidden;
  background:linear-gradient(145deg,#121212,#0b0b0b);
}
.proof-intro{
  padding:30px;
  border-right:1px solid var(--line);
}
.proof-intro h3{
  margin:12px 0 0;
  max-width:410px;
  font-size:26px;
  line-height:1.05;
  letter-spacing:-.045em;
}
.proof-metrics{
  display:grid;
  grid-template-columns:repeat(3,1fr);
}
.proof-item{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:145px;
  padding:26px;
  border-right:1px solid var(--line);
}
.proof-item:last-child{
  border-right:0;
}
.proof-item b{
  font-size:40px;
  line-height:1;
  letter-spacing:-.06em;
}
.proof-item span{
  margin-top:8px;
  color:#777;
  font-size:12px;
}

.section-kicker{
  margin-bottom:14px;
}

.services-grid{
  gap:18px;
}
.service{
  min-height:300px;
  padding:30px;
}
.service:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--accent),transparent);
  transform:scaleX(0);
  transition:transform .35s ease;
}
.service:hover:before{
  transform:scaleX(1);
}
.service h3{
  margin-top:74px;
  font-size:27px;
}
.service p{
  line-height:1.6;
}

.work-grid{
  gap:22px;
}
.work-card{
  border-radius:26px;
}
.work-card:nth-child(3n+1){
  grid-column:span 1;
}
.work-image{
  aspect-ratio:16/9;
  background:
    radial-gradient(circle at 70% 20%,rgba(202,255,37,.08),transparent 35%),
    linear-gradient(135deg,#1d1d1d,#0c0c0c);
}
.work-body{
  padding:25px 26px 28px;
}
.work-body h3{
  font-size:27px;
}
.work-body p{
  margin-top:6px;
}

.process{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.process-item{
  min-height:220px;
  transition:background .25s ease;
}
.process-item:hover{
  background:rgba(255,255,255,.025);
}
.process-item h3{
  margin-top:46px;
}

.why-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.why-card{
  position:relative;
  min-height:240px;
  padding:30px;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(145deg,#131313,#0c0c0c);
  overflow:hidden;
}
.why-card:after{
  content:"";
  position:absolute;
  width:120px;
  height:120px;
  right:-45px;
  bottom:-45px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(202,255,37,.12),transparent 70%);
}
.why-card span{
  color:var(--accent);
  font-size:11px;
  font-weight:900;
}
.why-card h3{
  margin:70px 0 10px;
  font-size:25px;
  letter-spacing:-.04em;
}
.why-card p{
  margin:0;
  max-width:330px;
  color:#858585;
  font-size:14px;
  line-height:1.55;
}

.cta{
  position:relative;
  overflow:hidden;
}
.cta:before{
  content:"";
  position:absolute;
  width:340px;
  height:340px;
  right:-110px;
  top:-180px;
  border-radius:50%;
  background:rgba(255,255,255,.2);
  filter:blur(2px);
}
.cta > *{
  position:relative;
  z-index:1;
}

@media(max-width:950px){
  .hero{
    padding-top:125px;
  }
  .proof-strip{
    grid-template-columns:1fr;
  }
  .proof-intro{
    border-right:0;
    border-bottom:1px solid var(--line);
  }
  .why-grid{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:620px){
  .hero{
    padding:116px 0 64px;
  }
  .proof-metrics{
    grid-template-columns:1fr;
  }
  .proof-item{
    min-height:auto;
    border-right:0;
    border-bottom:1px solid var(--line);
  }
  .proof-item:last-child{
    border-bottom:0;
  }
  .why-grid{
    grid-template-columns:1fr;
  }
}


/* ===== Premium Sections v2.6 ===== */

.service-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.service-arrow{
  color:#555;
  font-size:20px;
  transition:.25s ease;
}
.service:hover .service-arrow{
  color:var(--accent);
  transform:translate(3px,-3px);
}
.service-link{
  margin-top:24px;
  padding-top:16px;
  border-top:1px solid var(--line);
  color:#bbb;
  font-size:12px;
  font-weight:700;
  transition:.25s;
}
.service:hover .service-link{
  color:var(--accent);
}

.work-meta{
  display:flex;
  gap:8px;
  margin-bottom:13px;
}
.work-meta span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 9px;
  border:1px solid var(--line);
  border-radius:999px;
  color:#868686;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.work-cta{
  margin-top:18px;
  color:#cfcfcf;
  font-size:12px;
  font-weight:800;
  transition:.25s;
}
.work-card:hover .work-cta{
  color:var(--accent);
  transform:translateX(3px);
}

.process-pro{
  overflow:hidden;
  border-radius:24px;
  border:1px solid var(--line);
}
.process-pro .process-item{
  border-top:0;
  border-bottom:0;
}
.process-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.process-head span{
  color:#555;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.process-pro .process-item:hover .process-head span{
  color:var(--accent);
}

.capability-band{
  padding:0 0 30px;
}
.capability-shell{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:30px;
  align-items:center;
  padding:30px;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(145deg,#111,#0b0b0b);
}
.capability-copy h3{
  margin:10px 0 0;
  max-width:420px;
  font-size:29px;
  line-height:1.05;
  letter-spacing:-.05em;
}
.capability-list{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
}
.capability-list span{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:0 16px;
  border:1px solid var(--line);
  border-radius:999px;
  color:#bbb;
  font-size:12px;
  background:#0d0d0d;
}

.cta-pro{
  text-align:left;
  padding:82px 70px;
}
.cta-pro h2{
  max-width:980px;
  margin-left:0;
  margin-right:0;
}
.cta-actions{
  display:flex;
  align-items:center;
  gap:20px;
  flex-wrap:wrap;
}
.cta-actions span{
  font-size:12px;
  color:rgba(8,8,8,.65);
  font-weight:700;
}

.footer-top{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:30px;
  padding-bottom:45px;
  margin-bottom:45px;
  border-bottom:1px solid var(--line);
}
.footer-big-link{
  font-size:clamp(28px,4vw,50px);
  line-height:1;
  letter-spacing:-.05em;
  font-weight:800;
}
.footer-big-link span{
  color:var(--accent);
}
.footer-grid-pro{
  grid-template-columns:1fr 1fr 1fr;
}
.copyright{
  display:flex;
  justify-content:space-between;
  gap:20px;
}

@media(max-width:950px){
  .capability-shell{
    grid-template-columns:1fr;
  }
  .capability-list{
    justify-content:flex-start;
  }
  .cta-pro{
    padding:70px 40px;
  }
}
@media(max-width:620px){
  .process-pro{
    border-radius:20px;
  }
  .capability-shell{
    padding:24px;
  }
  .cta-pro{
    padding:58px 22px;
  }
  .footer-top{
    display:block;
  }
  .footer-big-link{
    display:inline-block;
    margin-top:30px;
  }
  .footer-grid-pro{
    grid-template-columns:1fr;
  }
  .copyright{
    display:block;
  }
  .copyright span{
    display:block;
    margin-top:5px;
  }
}


/* ===== Vertical Rhythm Tightening v2.7 ===== */

/* Global section rhythm */
.section{
  padding:82px 0;
}

.section-head{
  margin-bottom:38px;
}

/* Hero */
.hero{
  padding:122px 0 68px;
}

/* Proof strip */
.proof-section{
  padding:18px 0 30px;
}

/* Services */
#services.section{
  padding-top:78px;
  padding-bottom:82px;
}

/* Portfolio */
#work.section{
  padding-top:76px;
  padding-bottom:82px;
}

/* Process */
#process.section{
  padding-top:74px;
  padding-bottom:78px;
}

/* Why us */
.why-section{
  padding-top:74px;
  padding-bottom:76px;
}

/* Capability band */
.capability-band{
  padding:0 0 18px;
}

/* CTA */
#contact.section{
  padding-top:70px;
  padding-bottom:76px;
}

/* Footer */
.site-footer{
  padding-top:58px;
}

/* Reduce oversized internal whitespace */
.process-pro .process-item{
  min-height:185px;
  padding-top:24px;
  padding-bottom:24px;
}

.process-pro .process-item h3{
  margin-top:34px;
}

.why-card{
  min-height:205px;
}

.why-card h3{
  margin-top:52px;
}

.capability-shell{
  padding:26px 28px;
}

.cta-pro{
  padding:68px 60px;
}

/* Slightly tighter desktop hero visual */
.hero-card.hero-premium{
  min-height:435px;
}

/* Better transition from section to section */
#process + .capability-band,
.capability-band + .why-section{
  margin-top:-8px;
}

@media(max-width:950px){
  .section{
    padding:70px 0;
  }

  .hero{
    padding:112px 0 60px;
  }

  .proof-section{
    padding-bottom:24px;
  }

  .cta-pro{
    padding:60px 38px;
  }
}

@media(max-width:620px){
  .section{
    padding:58px 0;
  }

  .section-head{
    margin-bottom:30px;
  }

  .hero{
    padding:104px 0 54px;
  }

  .proof-section{
    padding:14px 0 20px;
  }

  #services.section,
  #work.section,
  #process.section,
  .why-section,
  #contact.section{
    padding-top:56px;
    padding-bottom:58px;
  }

  .process-pro .process-item{
    min-height:auto;
  }

  .why-card{
    min-height:185px;
  }

  .cta-pro{
    padding:52px 22px;
  }

  .site-footer{
    padding-top:48px;
  }
}


/* ===== DigitalScope360 Branding v2.8 ===== */
.logo{
  font-size:20px;
  letter-spacing:-.055em;
}
.logo span{
  color:var(--accent);
}
.footer-title{
  letter-spacing:-.05em;
}
@media(max-width:620px){
  .logo{
    font-size:17px;
  }
}


/* ===== DigitalScope360 Footer v2.9 ===== */
.site-footer{
  padding:74px 0 28px;
  border-top:1px solid var(--line);
  background:
    radial-gradient(circle at 78% 12%,rgba(202,255,37,.045),transparent 28%),
    #080808;
}

.footer-cta{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr 1.3fr;
  gap:40px;
  align-items:center;
  min-height:310px;
  padding:46px 48px;
  margin-bottom:52px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:28px;
  overflow:hidden;
  background:
    radial-gradient(circle at 72% 36%,rgba(202,255,37,.09),transparent 38%),
    linear-gradient(145deg,#111,#0b0b0b);
}

.footer-cta-copy h2{
  margin:16px 0 0;
  font-size:clamp(44px,5vw,70px);
  line-height:.95;
  letter-spacing:-.065em;
}

.footer-cta-copy h2::after{
  content:".";
  color:var(--accent);
}

.footer-cta-middle{
  position:relative;
  z-index:2;
  padding-left:34px;
  border-left:1px solid var(--line);
}

.footer-cta-middle p{
  max-width:370px;
  margin:0 0 24px;
  color:#b8b8b8;
  font-size:18px;
  line-height:1.55;
}

.footer-wave{
  position:relative;
  min-height:180px;
  z-index:1;
}

.footer-wave span{
  position:absolute;
  left:0;
  right:0;
  top:calc(8px + (var(--i) * 10px));
  height:70px;
  border-top:1px dotted rgba(202,255,37,.8);
  border-radius:50%;
  transform:
    translateX(calc(var(--i) * 5px))
    rotate(calc(-14deg + (var(--i) * 1.2deg)));
  opacity:calc(.18 + (var(--i) * .045));
}

.footer-main{
  display:grid;
  grid-template-columns:1.35fr .8fr 1fr .8fr 1.15fr;
  gap:38px;
  padding:52px 0 54px;
  border-top:1px solid var(--line);
}

.footer-brand-col{
  padding-right:22px;
}

.footer-title{
  font-size:30px;
  font-weight:900;
  letter-spacing:-.055em;
}

.footer-title span{
  color:var(--accent);
}

.footer-copy{
  margin-top:26px;
  max-width:340px;
  color:#9a9a9a;
  font-size:15px;
  line-height:1.65;
}

.footer-socials{
  display:flex;
  gap:12px;
  margin-top:24px;
}

.footer-socials a{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  border-radius:50%;
  color:var(--accent);
  font-weight:800;
  transition:.25s ease;
}

.footer-socials a:hover{
  border-color:var(--accent);
  transform:translateY(-3px);
}

.footer-mini-card{
  display:flex;
  gap:14px;
  align-items:flex-start;
  margin-top:28px;
  padding:20px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#0d0d0d;
}

.mini-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(202,255,37,.1);
  color:var(--accent);
}

.footer-mini-card strong{
  display:block;
  font-size:13px;
}

.footer-mini-card span{
  display:block;
  margin-top:6px;
  color:#777;
  font-size:12px;
}

.footer-col h4{
  margin:0;
  font-size:18px;
}

.footer-underline{
  width:32px;
  height:2px;
  margin:13px 0 24px;
  background:var(--accent);
}

.footer-links{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.footer-links a,
.footer-links > span{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:#a6a6a6;
  font-size:14px;
  transition:.2s ease;
}

.footer-links a:hover{
  color:var(--text);
}

.footer-links span b{
  color:#777;
  font-weight:400;
}

.footer-contact-list{
  display:flex;
  flex-direction:column;
  gap:17px;
}

.footer-contact-list a,
.footer-contact-list div{
  display:flex;
  align-items:center;
  gap:12px;
  color:#aaa;
  font-size:14px;
}

.contact-icon{
  width:22px;
  color:var(--accent);
  font-size:17px;
  text-align:center;
}

.footer-consult-card{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:12px;
  align-items:center;
  margin-top:28px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#0d0d0d;
}

.consult-icon,
.consult-arrow{
  color:var(--accent);
  font-size:20px;
}

.footer-consult-card strong{
  display:block;
  font-size:13px;
}

.footer-consult-card small{
  display:block;
  margin-top:4px;
  color:#777;
}

.footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:center;
  padding-top:25px;
  border-top:1px solid var(--line);
  color:#777;
  font-size:12px;
}

.footer-bottom strong{
  color:var(--accent);
}

.footer-legal{
  display:flex;
  gap:18px;
  align-items:center;
}

.footer-legal span{
  width:1px;
  height:18px;
  background:var(--line);
}

.footer-legal a{
  color:#888;
}

.footer-legal a:hover{
  color:#fff;
}

@media(max-width:1100px){
  .footer-main{
    grid-template-columns:1.4fr 1fr 1fr;
  }

  .footer-contact-col{
    grid-column:span 2;
  }

  .footer-cta{
    grid-template-columns:1fr 1fr;
  }

  .footer-wave{
    grid-column:1/-1;
    min-height:90px;
  }
}

@media(max-width:760px){
  .footer-cta{
    grid-template-columns:1fr;
    padding:34px 26px;
  }

  .footer-cta-middle{
    padding-left:0;
    padding-top:24px;
    border-left:0;
    border-top:1px solid var(--line);
  }

  .footer-wave{
    min-height:80px;
  }

  .footer-main{
    grid-template-columns:1fr 1fr;
  }

  .footer-brand-col{
    grid-column:1/-1;
  }

  .footer-contact-col{
    grid-column:1/-1;
  }

  .footer-bottom{
    flex-direction:column;
    align-items:flex-start;
  }
}

@media(max-width:520px){
  .site-footer{
    padding-top:56px;
  }

  .footer-main{
    grid-template-columns:1fr;
    gap:34px;
  }

  .footer-brand-col,
  .footer-contact-col{
    grid-column:auto;
  }

  .footer-legal{
    flex-wrap:wrap;
    gap:10px 14px;
  }

  .footer-legal span{
    display:none;
  }
}


/* =========================================================
   DigitalScope360 Footer HARD FIX v3.0
   ========================================================= */

.site-footer{
  display:block !important;
  width:100% !important;
  padding:72px 0 26px !important;
  margin:0 !important;
  background:#080808 !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
  color:#f5f5f5 !important;
}

.site-footer > .container{
  width:min(calc(100% - 40px),1240px) !important;
  margin:0 auto !important;
}

.site-footer .footer-cta{
  position:relative !important;
  display:grid !important;
  grid-template-columns:1fr 1fr 1.2fr !important;
  gap:40px !important;
  align-items:center !important;
  min-height:300px !important;
  padding:46px 48px !important;
  margin:0 0 52px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:28px !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 75% 35%,rgba(202,255,37,.10),transparent 36%),
    linear-gradient(145deg,#111,#0b0b0b) !important;
}

.site-footer .footer-cta-copy,
.site-footer .footer-cta-middle,
.site-footer .footer-wave{
  position:relative !important;
  z-index:2 !important;
}

.site-footer .footer-cta-copy .eyebrow{
  color:#caff25 !important;
}

.site-footer .footer-cta-copy h2{
  margin:15px 0 0 !important;
  font-size:clamp(42px,5vw,68px) !important;
  line-height:.95 !important;
  letter-spacing:-.06em !important;
  color:#f5f5f5 !important;
}

.site-footer .footer-cta-copy h2::after{
  content:"." !important;
  color:#caff25 !important;
}

.site-footer .footer-cta-middle{
  padding-left:34px !important;
  border-left:1px solid rgba(255,255,255,.10) !important;
}

.site-footer .footer-cta-middle p{
  max-width:360px !important;
  margin:0 0 24px !important;
  color:#b7b7b7 !important;
  font-size:17px !important;
  line-height:1.55 !important;
}

.site-footer .footer-wave{
  min-height:180px !important;
  display:block !important;
}

.site-footer .footer-wave span{
  display:block !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:calc(8px + (var(--i) * 10px)) !important;
  height:70px !important;
  border-top:1px dotted rgba(202,255,37,.7) !important;
  border-radius:50% !important;
  transform:translateX(calc(var(--i) * 4px)) rotate(calc(-14deg + (var(--i) * 1.1deg))) !important;
  opacity:.48 !important;
}

.site-footer .footer-main{
  display:grid !important;
  grid-template-columns:1.35fr .8fr 1fr .8fr 1.15fr !important;
  gap:38px !important;
  align-items:start !important;
  padding:50px 0 52px !important;
  margin:0 !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
}

.site-footer .footer-brand-col,
.site-footer .footer-col,
.site-footer .footer-contact-col{
  display:block !important;
  min-width:0 !important;
}

.site-footer .footer-title{
  display:block !important;
  font-size:29px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:-.055em !important;
  color:#f5f5f5 !important;
}

.site-footer .footer-title span{
  color:#caff25 !important;
}

.site-footer .footer-copy{
  margin:24px 0 0 !important;
  max-width:330px !important;
  color:#969696 !important;
  font-size:14px !important;
  line-height:1.65 !important;
}

.site-footer .footer-socials{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin:24px 0 0 !important;
}

.site-footer .footer-socials a{
  display:grid !important;
  place-items:center !important;
  width:44px !important;
  height:44px !important;
  padding:0 !important;
  margin:0 !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:50% !important;
  color:#caff25 !important;
  background:#0d0d0d !important;
  font-size:15px !important;
  font-weight:800 !important;
}

.site-footer .footer-mini-card{
  display:flex !important;
  flex-direction:row !important;
  align-items:flex-start !important;
  gap:13px !important;
  margin-top:26px !important;
  padding:18px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:16px !important;
  background:#0d0d0d !important;
}

.site-footer .mini-icon{
  flex:0 0 40px !important;
  width:40px !important;
  height:40px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  color:#caff25 !important;
  background:rgba(202,255,37,.10) !important;
}

.site-footer .footer-mini-card strong{
  display:block !important;
  color:#f5f5f5 !important;
  font-size:13px !important;
  line-height:1.45 !important;
}

.site-footer .footer-mini-card span{
  display:block !important;
  margin-top:5px !important;
  color:#777 !important;
  font-size:12px !important;
}

.site-footer .footer-col h4{
  margin:0 !important;
  color:#f5f5f5 !important;
  font-size:17px !important;
}

.site-footer .footer-underline{
  width:32px !important;
  height:2px !important;
  margin:12px 0 22px !important;
  background:#caff25 !important;
}

.site-footer .footer-links{
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  margin:0 !important;
}

.site-footer .footer-links a,
.site-footer .footer-links > span{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  width:100% !important;
  color:#a4a4a4 !important;
  font-size:13px !important;
  line-height:1.3 !important;
}

.site-footer .footer-links a:hover{
  color:#f5f5f5 !important;
}

.site-footer .footer-contact-list{
  display:flex !important;
  flex-direction:column !important;
  gap:15px !important;
  margin:0 !important;
}

.site-footer .footer-contact-list a,
.site-footer .footer-contact-list div{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:11px !important;
  color:#a7a7a7 !important;
  font-size:13px !important;
  line-height:1.35 !important;
  word-break:break-word !important;
}

.site-footer .contact-icon{
  flex:0 0 22px !important;
  width:22px !important;
  color:#caff25 !important;
  text-align:center !important;
}

.site-footer .footer-consult-card{
  display:grid !important;
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  gap:12px !important;
  margin-top:26px !important;
  padding:16px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:15px !important;
  background:#0d0d0d !important;
}

.site-footer .footer-consult-card strong{
  display:block !important;
  color:#f5f5f5 !important;
  font-size:12px !important;
}

.site-footer .footer-consult-card small{
  display:block !important;
  margin-top:4px !important;
  color:#777 !important;
  font-size:11px !important;
}

.site-footer .consult-icon,
.site-footer .consult-arrow{
  color:#caff25 !important;
}

.site-footer .footer-bottom{
  display:flex !important;
  flex-direction:row !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:24px !important;
  padding-top:24px !important;
  margin:0 !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
  color:#777 !important;
  font-size:11px !important;
}

.site-footer .footer-bottom strong{
  color:#caff25 !important;
}

.site-footer .footer-legal{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:14px !important;
}

.site-footer .footer-legal a{
  color:#858585 !important;
}

.site-footer .footer-legal span{
  display:block !important;
  width:1px !important;
  height:16px !important;
  background:rgba(255,255,255,.12) !important;
}

@media(max-width:1100px){
  .site-footer .footer-cta{
    grid-template-columns:1fr 1fr !important;
  }

  .site-footer .footer-wave{
    grid-column:1/-1 !important;
    min-height:90px !important;
  }

  .site-footer .footer-main{
    grid-template-columns:1.3fr 1fr 1fr !important;
  }

  .site-footer .footer-contact-col{
    grid-column:span 2 !important;
  }
}

@media(max-width:760px){
  .site-footer .footer-cta{
    grid-template-columns:1fr !important;
    padding:34px 24px !important;
  }

  .site-footer .footer-cta-middle{
    padding:22px 0 0 !important;
    border-left:0 !important;
    border-top:1px solid rgba(255,255,255,.10) !important;
  }

  .site-footer .footer-main{
    grid-template-columns:1fr 1fr !important;
  }

  .site-footer .footer-brand-col,
  .site-footer .footer-contact-col{
    grid-column:1/-1 !important;
  }

  .site-footer .footer-bottom{
    flex-direction:column !important;
    align-items:flex-start !important;
  }
}

@media(max-width:520px){
  .site-footer > .container{
    width:min(calc(100% - 28px),1240px) !important;
  }

  .site-footer .footer-main{
    grid-template-columns:1fr !important;
  }

  .site-footer .footer-brand-col,
  .site-footer .footer-contact-col{
    grid-column:auto !important;
  }

  .site-footer .footer-legal span{
    display:none !important;
  }
}


/* =========================================================
   DigitalScope360 Navy + Electric Cyan Palette v3.1
   ========================================================= */
:root{
  --bg:#020b1f;
  --surface:#06162e;
  --surface-2:#08213f;
  --text:#f4f8ff;
  --muted:#9fb4c9;
  --line:rgba(48,191,255,.18);
  --accent:#18d8f2;
  --accent-2:#168cff;
}

html,
body{
  background:#020b1f !important;
  color:#f4f8ff !important;
}

body{
  background:
    radial-gradient(circle at 85% 8%,rgba(0,155,255,.11),transparent 28%),
    radial-gradient(circle at 10% 35%,rgba(0,89,180,.08),transparent 28%),
    #020b1f !important;
}

/* Header */
.site-header{
  background:rgba(2,11,31,.90) !important;
  border-bottom:1px solid rgba(48,191,255,.18) !important;
  backdrop-filter:blur(16px);
}
.site-header.scrolled{
  background:rgba(2,11,31,.96) !important;
}
.logo span{
  color:#18d8f2 !important;
}
.site-header .nav > a:not(.btn){
  color:#e6f1ff !important;
}
.site-header .nav > a:not(.btn):hover{
  color:#18d8f2 !important;
}

/* Buttons */
.btn-primary,
.hero .btn-primary,
.site-header .btn-primary{
  background:#18d8f2 !important;
  color:#02101f !important;
  border-color:#18d8f2 !important;
  box-shadow:0 0 24px rgba(24,216,242,.12);
}
.btn-primary:hover{
  background:#49e5fa !important;
  border-color:#49e5fa !important;
}

/* Accent text */
.eyebrow,
.section-kicker,
.service-num,
.process-item b,
.fc-label,
.hero-result-premium .eyebrow,
.why-card > span{
  color:#18d8f2 !important;
}

/* Hero */
.hero{
  background:
    radial-gradient(circle at 78% 26%,rgba(0,155,255,.08),transparent 28%),
    #020b1f !important;
}
.hero h1 .accent,
.hero h1 span{
  color:#18d8f2 !important;
}
.hero p,
.section-intro{
  color:#a8bbcf !important;
}
.hero-card.hero-premium{
  border-color:rgba(48,191,255,.22) !important;
  background:
    radial-gradient(circle at 78% 12%,rgba(24,216,242,.18),transparent 30%),
    radial-gradient(circle at 18% 82%,rgba(0,104,255,.12),transparent 34%),
    linear-gradient(145deg,#071a35,#020b1f) !important;
  box-shadow:0 28px 90px rgba(0,25,70,.32);
}
.hero-premium .hero-glow-a{
  background:rgba(24,216,242,.38) !important;
}
.hero-premium .hero-glow-b{
  background:rgba(0,112,255,.20) !important;
}
.hero-premium .hero-grid-bg{
  background-image:
    linear-gradient(rgba(38,180,255,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(38,180,255,.07) 1px,transparent 1px) !important;
}
.hero-premium .floating-card,
.hero-premium .hero-result-premium{
  background:rgba(2,12,30,.78) !important;
  border-color:rgba(48,191,255,.22) !important;
}
.hero-premium .center-ring{
  border-color:rgba(24,216,242,.35) !important;
}
.hero-premium .ring-2{
  border-color:rgba(22,140,255,.28) !important;
}
.hero-premium .ring-1:before,
.hero-premium .ring-2:before,
.hero-premium .fc-dot{
  background:#18d8f2 !important;
  box-shadow:0 0 18px rgba(24,216,242,.9) !important;
}
.hero-premium .center-core{
  background:
    radial-gradient(circle at 35% 30%,rgba(24,216,242,.18),transparent 36%),
    rgba(3,16,37,.92) !important;
  border-color:rgba(48,191,255,.25) !important;
}

/* Marquee / proof */
.marquee,
.proof-strip{
  border-color:rgba(48,191,255,.16) !important;
}
.proof-strip{
  background:linear-gradient(145deg,#06162e,#020b1f) !important;
}
.proof-intro,
.proof-item{
  border-color:rgba(48,191,255,.15) !important;
}

/* Cards */
.service,
.work-card,
.why-card,
.capability-shell,
.process-pro{
  background:
    radial-gradient(circle at 85% 10%,rgba(0,146,255,.05),transparent 30%),
    linear-gradient(145deg,#06162e,#030d21) !important;
  border-color:rgba(48,191,255,.17) !important;
}
.service:hover,
.work-card:hover,
.why-card:hover{
  border-color:rgba(24,216,242,.42) !important;
}
.service:before{
  background:linear-gradient(90deg,transparent,#18d8f2,transparent) !important;
}
.service:hover .service-arrow,
.service:hover .service-link,
.work-card:hover .work-cta,
.process-pro .process-item:hover .process-head span{
  color:#18d8f2 !important;
}
.work-image{
  background:
    radial-gradient(circle at 70% 20%,rgba(24,216,242,.13),transparent 35%),
    linear-gradient(135deg,#09284c,#030d21) !important;
}
.work-meta span,
.capability-list span{
  border-color:rgba(48,191,255,.18) !important;
  background:#041329 !important;
}
.capability-list span{
  color:#b7cce0 !important;
}

/* Process */
.process,
.process-pro,
.process-pro .process-item{
  border-color:rgba(48,191,255,.16) !important;
}
.process-item:hover{
  background:rgba(0,151,255,.035) !important;
}

/* Why */
.why-card:after{
  background:radial-gradient(circle,rgba(24,216,242,.14),transparent 70%) !important;
}

/* Main CTA */
.cta,
.cta-pro{
  background:
    radial-gradient(circle at 80% 20%,rgba(255,255,255,.16),transparent 28%),
    linear-gradient(135deg,#18d8f2,#168cff) !important;
  color:#02101f !important;
}
.cta .eyebrow,
.cta-pro .eyebrow{
  color:#02101f !important;
}
.cta .btn,
.cta-pro .btn{
  background:#02101f !important;
  color:#f4f8ff !important;
  border-color:#02101f !important;
}

/* Footer */
.site-footer{
  background:
    radial-gradient(circle at 80% 5%,rgba(0,149,255,.09),transparent 26%),
    #020817 !important;
  border-color:rgba(48,191,255,.16) !important;
}
.site-footer .footer-cta{
  background:
    radial-gradient(circle at 76% 34%,rgba(24,216,242,.12),transparent 38%),
    linear-gradient(145deg,#06162e,#020b1f) !important;
  border-color:rgba(48,191,255,.20) !important;
}
.site-footer .footer-cta-copy .eyebrow,
.site-footer .footer-title span,
.site-footer .footer-bottom strong,
.site-footer .contact-icon,
.site-footer .consult-icon,
.site-footer .consult-arrow,
.site-footer .footer-socials a{
  color:#18d8f2 !important;
}
.site-footer .footer-underline{
  background:#18d8f2 !important;
}
.site-footer .footer-wave span{
  border-color:rgba(24,216,242,.70) !important;
}
.site-footer .footer-socials a,
.site-footer .footer-mini-card,
.site-footer .footer-consult-card{
  background:#041329 !important;
  border-color:rgba(48,191,255,.17) !important;
}
.site-footer .mini-icon{
  color:#18d8f2 !important;
  background:rgba(24,216,242,.10) !important;
}
.site-footer .footer-main,
.site-footer .footer-bottom{
  border-color:rgba(48,191,255,.15) !important;
}

/* Selection + scrollbar */
::selection{
  background:#18d8f2;
  color:#02101f;
}
::-webkit-scrollbar-thumb{
  background:#0f6e9c;
}

/* Services page v3.2 */
.services-page{background:radial-gradient(circle at 82% 8%,rgba(0,150,255,.09),transparent 28%),#020b1f}
.services-hero{padding:160px 0 90px;border-bottom:1px solid rgba(48,191,255,.14)}
.services-hero-grid{display:grid;grid-template-columns:1.1fr .75fr;gap:70px;align-items:end}
.services-hero h1{margin:18px 0 0;max-width:900px;font-size:clamp(58px,8vw,108px);line-height:.9;letter-spacing:-.07em}
.services-hero-copy{padding-bottom:10px}
.services-hero-copy p{max-width:520px;margin:0 0 28px;color:#a8bbcf;font-size:18px;line-height:1.6}
.services-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.service-detail-card{position:relative;min-height:430px;padding:32px;border:1px solid rgba(48,191,255,.17);border-radius:26px;background:radial-gradient(circle at 85% 10%,rgba(24,216,242,.07),transparent 28%),linear-gradient(145deg,#06162e,#030d21);overflow:hidden;transition:.3s ease}
.service-detail-card:hover{transform:translateY(-5px);border-color:rgba(24,216,242,.4)}
.service-detail-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,transparent,#18d8f2,transparent);transform:scaleX(0);transition:.3s ease}
.service-detail-card:hover:after{transform:scaleX(1)}
.service-detail-top{display:flex;justify-content:space-between;align-items:center}
.service-detail-num{color:#18d8f2;font-size:11px;font-weight:900;letter-spacing:.12em}
.service-detail-arrow{color:#52718e;font-size:22px;transition:.25s ease}
.service-detail-card:hover .service-detail-arrow{color:#18d8f2;transform:translate(3px,-3px)}
.service-detail-card h3{margin:76px 0 14px;font-size:34px;line-height:1;letter-spacing:-.05em}
.service-detail-card p{max-width:520px;margin:0 0 28px;color:#9fb4c9;font-size:15px;line-height:1.65}
.service-detail-card ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;list-style:none;margin:0;padding:22px 0 0;border-top:1px solid rgba(48,191,255,.14)}
.service-detail-card li{position:relative;padding-left:16px;color:#c3d3e2;font-size:13px}
.service-detail-card li:before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:#18d8f2;box-shadow:0 0 10px rgba(24,216,242,.55)}
.services-flow{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border:1px solid rgba(48,191,255,.16);border-radius:24px;background:linear-gradient(145deg,#06162e,#030d21)}
.services-flow>div{min-height:200px;padding:28px;border-right:1px solid rgba(48,191,255,.14)}
.services-flow>div:last-child{border-right:0}
.services-flow span{display:block;color:#18d8f2;font-size:11px;font-weight:900}
.services-flow strong{display:block;margin-top:58px;font-size:23px;letter-spacing:-.04em}
.services-flow small{display:block;margin-top:8px;color:#7f98ae;font-size:12px}
.services-why-shell{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:46px;border:1px solid rgba(48,191,255,.16);border-radius:28px;background:radial-gradient(circle at 85% 20%,rgba(24,216,242,.08),transparent 30%),linear-gradient(145deg,#06162e,#030d21)}
.services-why-shell h2{margin-top:14px;max-width:600px;font-size:clamp(42px,5vw,72px);line-height:.94;letter-spacing:-.06em}
.services-why-points{display:flex;flex-direction:column;justify-content:center}
.services-why-points>div{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid rgba(48,191,255,.13)}
.services-why-points>div:last-child{border-bottom:0}
.services-why-points b{color:#18d8f2;font-size:11px}
.services-why-points span{color:#b4c6d6;font-size:15px;line-height:1.55}
@media(max-width:900px){.services-hero-grid,.services-why-shell{grid-template-columns:1fr}.services-detail-grid{grid-template-columns:1fr}.services-flow{grid-template-columns:1fr 1fr}.services-flow>div:nth-child(2){border-right:0}}
@media(max-width:620px){.services-hero{padding:120px 0 64px}.services-hero h1{font-size:58px}.service-detail-card{min-height:auto;padding:26px}.service-detail-card h3{margin-top:54px;font-size:30px}.service-detail-card ul{grid-template-columns:1fr}.services-flow{grid-template-columns:1fr}.services-flow>div{min-height:auto;border-right:0!important;border-bottom:1px solid rgba(48,191,255,.14)}.services-flow>div:last-child{border-bottom:0}.services-flow strong{margin-top:34px}.services-why-shell{padding:28px}}


/* ===== DigitalScope360 Official Logo v3.3 ===== */
.ds360-logo-link{
  display:flex !important;
  align-items:center !important;
  width:auto !important;
  height:64px !important;
  padding:0 !important;
  overflow:visible !important;
}
.ds360-header-logo{
  display:block !important;
  width:auto !important;
  height:76px !important;
  max-width:132px !important;
  object-fit:contain !important;
  filter:drop-shadow(0 0 12px rgba(24,216,242,.18));
}
.ds360-footer-logo-link{
  display:inline-flex !important;
  align-items:center !important;
}
.ds360-footer-logo{
  display:block !important;
  width:145px !important;
  height:auto !important;
  object-fit:contain !important;
  filter:drop-shadow(0 0 18px rgba(24,216,242,.16));
}
@media(max-width:620px){
  .ds360-logo-link{height:58px !important}
  .ds360-header-logo{height:66px !important;max-width:112px !important}
  .ds360-footer-logo{width:125px !important}
}


/* =========================================================
   About Us Page v3.4
   ========================================================= */
.about-page{
  background:
    radial-gradient(circle at 84% 7%,rgba(0,150,255,.09),transparent 27%),
    #020b1f;
}

.about-hero{
  padding:155px 0 86px;
  overflow:hidden;
}

.about-hero-grid{
  display:grid;
  grid-template-columns:1.15fr .65fr;
  gap:70px;
  align-items:end;
}

.about-hero h1{
  margin:18px 0 0;
  max-width:950px;
  font-size:clamp(58px,8vw,108px);
  line-height:.9;
  letter-spacing:-.07em;
}

.about-hero-side{
  padding-bottom:10px;
}

.about-hero-side p{
  margin:0 0 28px;
  color:#a8bbcf;
  font-size:18px;
  line-height:1.62;
}

.about-visual{
  position:relative;
  min-height:420px;
  margin-top:75px;
  border:1px solid rgba(48,191,255,.17);
  border-radius:30px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 50%,rgba(24,216,242,.12),transparent 24%),
    linear-gradient(145deg,#06162e,#020b1f);
}

.about-visual:before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.38;
  background-image:
    linear-gradient(rgba(48,191,255,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(48,191,255,.06) 1px,transparent 1px);
  background-size:46px 46px;
}

.about-core{
  position:absolute;
  left:50%;
  top:50%;
  z-index:3;
  width:150px;
  height:150px;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  border:1px solid rgba(24,216,242,.32);
  border-radius:50%;
  background:#031126;
  box-shadow:0 0 70px rgba(24,216,242,.13);
}

.about-core img{
  width:110px;
  height:auto;
}

.about-orbit{
  position:absolute;
  left:50%;
  top:50%;
  border:1px solid rgba(24,216,242,.2);
  border-radius:50%;
  transform:translate(-50%,-50%);
}

.orbit-a{width:250px;height:250px;animation:aboutSpin 18s linear infinite}
.orbit-b{width:390px;height:210px;animation:aboutSpinReverse 22s linear infinite}
.orbit-c{width:540px;height:310px;animation:aboutSpin 28s linear infinite}

@keyframes aboutSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes aboutSpinReverse{to{transform:translate(-50%,-50%) rotate(-360deg)}}

.about-node{
  position:absolute;
  z-index:4;
  padding:9px 14px;
  border:1px solid rgba(48,191,255,.2);
  border-radius:999px;
  background:rgba(3,17,38,.86);
  color:#bcd1e4;
  font-size:11px;
  font-weight:800;
  backdrop-filter:blur(8px);
}
.node-1{left:16%;top:24%}
.node-2{right:17%;top:24%}
.node-3{left:19%;bottom:21%}
.node-4{right:19%;bottom:21%}

.about-story-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.about-story-card{
  min-height:310px;
  padding:30px;
  border:1px solid rgba(48,191,255,.17);
  border-radius:24px;
  background:linear-gradient(145deg,#06162e,#030d21);
}

.about-story-card span{
  color:#18d8f2;
  font-size:11px;
  font-weight:900;
}

.about-story-card h3{
  margin:92px 0 14px;
  font-size:28px;
  letter-spacing:-.045em;
}

.about-story-card p{
  color:#91a9be;
  font-size:14px;
  line-height:1.65;
}

.about-number-shell{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:40px;
  padding:42px;
  border:1px solid rgba(48,191,255,.17);
  border-radius:28px;
  background:
    radial-gradient(circle at 80% 20%,rgba(24,216,242,.08),transparent 30%),
    linear-gradient(145deg,#06162e,#030d21);
}

.about-number-intro h2{
  margin:14px 0 0;
  font-size:clamp(38px,4vw,58px);
  line-height:.96;
  letter-spacing:-.055em;
}

.about-number-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
}

.about-number-grid div{
  min-height:145px;
  padding:24px;
  border-left:1px solid rgba(48,191,255,.14);
  border-bottom:1px solid rgba(48,191,255,.14);
}

.about-number-grid div:nth-child(3),
.about-number-grid div:nth-child(4){
  border-bottom:0;
}

.about-number-grid strong{
  display:block;
  color:#f4f8ff;
  font-size:42px;
  line-height:1;
  letter-spacing:-.06em;
}

.about-number-grid span{
  display:block;
  margin-top:10px;
  color:#829cb2;
  font-size:12px;
}

.values-list{
  border-top:1px solid rgba(48,191,255,.16);
}

.value-row{
  display:grid;
  grid-template-columns:70px 1fr 1fr;
  gap:30px;
  align-items:center;
  padding:28px 4px;
  border-bottom:1px solid rgba(48,191,255,.16);
  transition:.25s ease;
}

.value-row:hover{
  padding-left:16px;
  background:rgba(24,216,242,.025);
}

.value-row > span{
  color:#18d8f2;
  font-size:11px;
  font-weight:900;
}

.value-row h3{
  margin:0;
  font-size:25px;
  letter-spacing:-.04em;
}

.value-row p{
  margin:0;
  color:#8fa7bc;
  font-size:14px;
  line-height:1.55;
}

.about-cap-shell{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  padding:44px;
  border:1px solid rgba(48,191,255,.17);
  border-radius:28px;
  background:linear-gradient(145deg,#06162e,#030d21);
}

.about-cap-shell h2{
  margin:14px 0 0;
  font-size:clamp(38px,4vw,60px);
  line-height:.96;
  letter-spacing:-.055em;
}

.about-cap-tags{
  display:flex;
  align-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}

.about-cap-tags span{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:0 16px;
  border:1px solid rgba(48,191,255,.18);
  border-radius:999px;
  background:#041329;
  color:#b7cce0;
  font-size:12px;
}

@media(max-width:900px){
  .about-hero-grid,
  .about-number-shell,
  .about-cap-shell{
    grid-template-columns:1fr;
  }

  .about-story-grid{
    grid-template-columns:1fr;
  }

  .value-row{
    grid-template-columns:50px 1fr;
  }

  .value-row p{
    grid-column:2;
  }
}

@media(max-width:620px){
  .about-hero{
    padding:120px 0 62px;
  }

  .about-hero h1{
    font-size:58px;
  }

  .about-visual{
    min-height:350px;
    margin-top:50px;
  }

  .orbit-c{
    width:400px;
  }

  .about-node{
    font-size:9px;
    padding:7px 10px;
  }

  .node-1{left:6%;top:18%}
  .node-2{right:6%;top:18%}
  .node-3{left:7%;bottom:17%}
  .node-4{right:7%;bottom:17%}

  .about-number-shell,
  .about-cap-shell{
    padding:28px;
  }

  .about-number-grid{
    grid-template-columns:1fr;
  }

  .about-number-grid div{
    border-left:0;
    border-bottom:1px solid rgba(48,191,255,.14) !important;
  }

  .about-number-grid div:last-child{
    border-bottom:0 !important;
  }

  .value-row{
    grid-template-columns:40px 1fr;
    gap:15px;
  }
}

/* ================= Portfolio v3.5 ================= */
.portfolio-page{background:radial-gradient(circle at 82% 8%,rgba(24,216,242,.08),transparent 28%),#020b1f}
.portfolio-hero{padding:155px 0 65px;overflow:hidden}
.portfolio-hero-grid{display:grid;grid-template-columns:1.25fr .55fr;gap:70px;align-items:end}
.portfolio-hero h1{margin:18px 0 0;font-size:clamp(60px,8.2vw,112px);line-height:.88;letter-spacing:-.075em}
.portfolio-hero h1 span{color:#18d8f2}
.portfolio-hero-copy{padding-bottom:10px}
.portfolio-hero-copy p{margin:0 0 28px;color:#9eb5c9;font-size:18px;line-height:1.65}
.portfolio-marquee{margin-top:75px;padding:19px 0;border-top:1px solid rgba(48,191,255,.16);border-bottom:1px solid rgba(48,191,255,.16);overflow:hidden;white-space:nowrap}
.portfolio-marquee div{font-size:12px;font-weight:900;letter-spacing:.13em;color:#7e9ab1}
.portfolio-marquee i{padding:0 20px;color:#18d8f2;font-style:normal}
.portfolio-filter{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:32px}
.portfolio-filter>span{color:#718ca4;font-size:12px}
.portfolio-filter-tags{display:flex;gap:8px;flex-wrap:wrap}
.portfolio-filter button{border:1px solid rgba(48,191,255,.16);border-radius:999px;padding:10px 15px;background:#041329;color:#9eb4c7;font:inherit;font-size:11px;cursor:pointer}
.portfolio-filter button.active,.portfolio-filter button:hover{background:#18d8f2;color:#02101f;border-color:#18d8f2}
.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px 20px}
.portfolio-card-visual{position:relative;min-height:430px;border:1px solid rgba(48,191,255,.16);border-radius:25px;overflow:hidden;background:#06162e}
.portfolio-card-visual:before,.portfolio-card-visual:after{content:"";position:absolute}
.portfolio-card-visual:before{inset:0;background-image:linear-gradient(rgba(48,191,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(48,191,255,.055) 1px,transparent 1px);background-size:40px 40px}
.portfolio-card-visual:after{width:260px;height:260px;border:1px solid rgba(24,216,242,.25);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 80px rgba(24,216,242,.09)}
.project-brand{background:radial-gradient(circle at 50% 50%,rgba(24,216,242,.13),transparent 28%),#06162e}
.project-web{background:radial-gradient(circle at 70% 35%,rgba(22,140,255,.17),transparent 28%),#031126}
.project-growth{background:linear-gradient(135deg,#031126,#071a35)}
.project-motion{background:radial-gradient(circle at 30% 70%,rgba(24,216,242,.12),transparent 28%),#041329}
.project-seo{background:linear-gradient(145deg,#071a35,#020b1f)}
.project-ai{background:radial-gradient(circle at 55% 45%,rgba(22,140,255,.2),transparent 25%),#020d21}
.project-index,.project-category{position:absolute;z-index:3;top:24px;font-size:10px;font-weight:900;letter-spacing:.08em}
.project-index{left:25px;color:#18d8f2}.project-category{right:25px;color:#8ba5ba}
.project-symbol{position:absolute;z-index:2;left:50%;top:50%;width:180px;height:180px;transform:translate(-50%,-50%) rotate(45deg)}
.project-symbol span{position:absolute;inset:0;border:1px solid rgba(24,216,242,.3);border-radius:28px;animation:projectPulse 4s ease-in-out infinite}
.project-symbol span:nth-child(2){inset:25px;animation-delay:.4s}.project-symbol span:nth-child(3){inset:50px;background:rgba(24,216,242,.08);animation-delay:.8s}
@keyframes projectPulse{50%{transform:rotate(18deg) scale(.93);opacity:.55}}
.project-view{position:absolute;right:24px;bottom:24px;z-index:4;width:62px;height:62px;display:grid;place-items:center;border-radius:50%;background:#18d8f2;color:#02101f;text-align:center;font-size:9px;font-weight:900;line-height:1.1}
.portfolio-card-info{display:grid;grid-template-columns:1fr auto;gap:30px;padding:22px 4px 0}
.portfolio-card-info h2{margin:0 0 10px;font-size:29px;letter-spacing:-.045em}
.portfolio-card-info p{max-width:530px;margin:0;color:#829cb2;font-size:13px;line-height:1.6}
.portfolio-card-tags{display:flex;align-items:flex-start;justify-content:flex-end;gap:6px;flex-wrap:wrap;max-width:190px}
.portfolio-card-tags span{padding:7px 9px;border:1px solid rgba(48,191,255,.15);border-radius:999px;color:#7895ad;font-size:9px}
.portfolio-method-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(48,191,255,.16);border-bottom:1px solid rgba(48,191,255,.16)}
.portfolio-method-grid>div{min-height:230px;padding:28px;border-right:1px solid rgba(48,191,255,.16)}
.portfolio-method-grid>div:last-child{border-right:0}
.portfolio-method-grid b{color:#18d8f2;font-size:10px}
.portfolio-method-grid h3{margin:75px 0 10px;font-size:24px}
.portfolio-method-grid p{margin:0;color:#829cb2;font-size:12px;line-height:1.55}
@media(max-width:900px){.portfolio-hero-grid{grid-template-columns:1fr}.portfolio-grid{grid-template-columns:1fr}.portfolio-method-grid{grid-template-columns:1fr 1fr}.portfolio-method-grid>div:nth-child(2){border-right:0}}
@media(max-width:620px){.portfolio-hero{padding:120px 0 55px}.portfolio-hero h1{font-size:56px}.portfolio-filter{align-items:flex-start;flex-direction:column}.portfolio-card-visual{min-height:330px}.portfolio-card-info{grid-template-columns:1fr}.portfolio-card-tags{justify-content:flex-start;max-width:none}.portfolio-method-grid{grid-template-columns:1fr}.portfolio-method-grid>div{border-right:0;border-bottom:1px solid rgba(48,191,255,.16)}}


/* =========================================================
   V3.6 — Premium Creative Agency Feel Refresh
   Inspired by modern high-end agency pacing, not copied.
   Colors remain DigitalScope360 navy/cyan.
   ========================================================= */

/* Stronger global rhythm */
:root{
  --ds-radius-xl: 34px;
  --ds-radius-lg: 26px;
  --ds-line: rgba(84,207,255,.16);
  --ds-muted: #91a8bd;
}

body{
  letter-spacing:-.01em;
}

.container{
  width:min(1240px, calc(100% - 48px));
}

/* Floating premium header */
.site-header,
header.site-header{
  width:calc(100% - 34px);
  max-width:1240px;
  left:50% !important;
  right:auto !important;
  transform:translateX(-50%);
  top:16px;
  border:1px solid rgba(104,218,255,.13) !important;
  border-radius:20px !important;
  background:rgba(2,11,31,.76) !important;
  box-shadow:0 18px 55px rgba(0,0,0,.24);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.nav{
  gap:6px !important;
}
.nav a{
  padding:10px 12px !important;
  border-radius:999px;
  transition:background .25s ease,color .25s ease,transform .25s ease;
}
.nav a:hover{
  background:rgba(24,216,242,.08);
  color:#fff !important;
  transform:translateY(-1px);
}

/* More editorial headings */
h1,h2,h3{
  text-wrap:balance;
}
.section-head h2,
.about-story .section-head h2,
.portfolio-method .section-head h2{
  font-size:clamp(48px,5.4vw,78px) !important;
  line-height:.93 !important;
  letter-spacing:-.065em !important;
}
.section-intro{
  max-width:520px;
  font-size:16px !important;
  line-height:1.7 !important;
}

/* Premium eyebrow treatment */
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:30px;
  padding:0 12px;
  border:1px solid rgba(24,216,242,.18);
  border-radius:999px;
  background:rgba(24,216,242,.035);
  font-size:10px !important;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.eyebrow:before{
  content:"";
  width:5px;
  height:5px;
  border-radius:50%;
  background:#18d8f2;
  box-shadow:0 0 10px rgba(24,216,242,.8);
}

/* Large breathing space like a premium agency site */
.section{
  padding-top:115px !important;
  padding-bottom:115px !important;
}

/* About page — bolder and more image-led */
.about-hero{
  padding-top:185px !important;
}
.about-hero h1{
  max-width:980px;
  font-size:clamp(64px,8.8vw,124px) !important;
  line-height:.86 !important;
}
.about-visual{
  min-height:500px !important;
  border-radius:var(--ds-radius-xl) !important;
}
.about-story-card{
  border-radius:var(--ds-radius-lg) !important;
  min-height:355px !important;
  padding:34px !important;
  transition:transform .35s ease,border-color .35s ease,background .35s ease;
}
.about-story-card:hover{
  transform:translateY(-8px);
  border-color:rgba(24,216,242,.32);
  background:linear-gradient(145deg,#081c39,#031126);
}
.about-number-shell,
.about-cap-shell{
  border-radius:var(--ds-radius-xl) !important;
  padding:54px !important;
}

/* Portfolio — wider editorial cards, less "template" feeling */
.portfolio-hero{
  padding-top:185px !important;
}
.portfolio-hero h1{
  font-size:clamp(66px,9vw,128px) !important;
  max-width:1000px;
  line-height:.85 !important;
}
.portfolio-marquee{
  margin-top:95px !important;
  padding:24px 0 !important;
}
.portfolio-grid{
  gap:76px 24px !important;
}
.portfolio-card:nth-child(3n+1){
  grid-column:span 2;
}
.portfolio-card:nth-child(3n+1) .portfolio-card-visual{
  min-height:560px;
}
.portfolio-card-visual{
  min-height:470px !important;
  border-radius:32px !important;
  transition:transform .4s cubic-bezier(.2,.7,.2,1),border-color .3s ease;
}
.portfolio-card:hover .portfolio-card-visual{
  transform:translateY(-7px);
  border-color:rgba(24,216,242,.34);
}
.portfolio-card-info{
  padding-top:26px !important;
}
.portfolio-card-info h2{
  font-size:34px !important;
  line-height:1 !important;
}
.project-view{
  width:72px !important;
  height:72px !important;
  right:28px !important;
  bottom:28px !important;
  transition:transform .3s ease;
}
.portfolio-card:hover .project-view{
  transform:rotate(8deg) scale(1.06);
}

/* Services cards + any generic card blocks */
.service-card,
.services-card,
.service-detail-card,
.process-card,
.why-card{
  border-radius:28px !important;
  transition:transform .35s ease,border-color .35s ease;
}
.service-card:hover,
.services-card:hover,
.service-detail-card:hover,
.process-card:hover,
.why-card:hover{
  transform:translateY(-6px);
  border-color:rgba(24,216,242,.30) !important;
}

/* CTA becomes a bold, rounded visual block */
.cta,
.cta-pro{
  border-radius:36px !important;
  padding:clamp(38px,6vw,76px) !important;
  overflow:hidden;
  position:relative;
}
.cta:after,
.cta-pro:after{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  right:-70px;
  top:-90px;
  border:1px solid rgba(2,16,31,.12);
  border-radius:50%;
  box-shadow:0 0 0 50px rgba(2,16,31,.035),0 0 0 100px rgba(2,16,31,.02);
  pointer-events:none;
}

/* Buttons feel more substantial */
.btn{
  min-height:50px;
  padding:0 20px !important;
  border-radius:999px !important;
  font-weight:800 !important;
  letter-spacing:-.01em;
  transition:transform .25s ease,box-shadow .25s ease;
}
.btn:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 34px rgba(24,216,242,.16);
}

/* Footer more premium */
.site-footer,
footer{
  margin-top:65px;
}
.footer-main,
.footer-wrap{
  border-top-color:rgba(84,207,255,.14) !important;
}

/* Mobile */
@media(max-width:900px){
  .portfolio-card:nth-child(3n+1){
    grid-column:auto;
  }
  .portfolio-card:nth-child(3n+1) .portfolio-card-visual{
    min-height:430px;
  }
}

@media(max-width:620px){
  .container{
    width:min(100% - 28px,1240px);
  }
  .site-header,
  header.site-header{
    width:calc(100% - 18px);
    top:9px;
    border-radius:16px !important;
  }
  .section{
    padding-top:82px !important;
    padding-bottom:82px !important;
  }
  .about-hero,
  .portfolio-hero{
    padding-top:140px !important;
  }
  .about-hero h1,
  .portfolio-hero h1{
    font-size:54px !important;
    line-height:.9 !important;
  }
  .about-visual{
    min-height:390px !important;
  }
  .portfolio-card-visual,
  .portfolio-card:nth-child(3n+1) .portfolio-card-visual{
    min-height:350px !important;
  }
  .about-number-shell,
  .about-cap-shell{
    padding:28px !important;
  }
}


/* =========================================================
   V3.7 — Design Spartans inspired color direction
   High contrast black / warm white / electric lime.
   ========================================================= */
:root{
  --ds-black:#080808;
  --ds-black-2:#111111;
  --ds-black-3:#181818;
  --ds-white:#f5f3ed;
  --ds-muted:#aaa9a4;
  --ds-accent:#d9ff43;
  --ds-accent-2:#bdf51e;
  --ds-line:rgba(255,255,255,.13);
}

html,body{
  background:var(--ds-black) !important;
  color:var(--ds-white) !important;
}

body,
.about-page,
.portfolio-page,
.services-page{
  background:
    radial-gradient(circle at 82% 5%,rgba(217,255,67,.07),transparent 25%),
    var(--ds-black) !important;
}

/* Header */
.site-header,
header.site-header{
  background:rgba(8,8,8,.84) !important;
  border-color:rgba(255,255,255,.13) !important;
  box-shadow:0 18px 55px rgba(0,0,0,.32) !important;
}
.nav a{color:#d9d8d2 !important}
.nav a:hover{
  color:var(--ds-black) !important;
  background:var(--ds-accent) !important;
}

/* Typography */
h1,h2,h3,h4,h5,h6{
  color:var(--ds-white) !important;
}
p,.section-intro{
  color:var(--ds-muted) !important;
}
.portfolio-hero h1 span,
a:not(.btn):hover{
  color:var(--ds-accent) !important;
}

/* Accent pills */
.eyebrow{
  color:var(--ds-accent) !important;
  border-color:rgba(217,255,67,.26) !important;
  background:rgba(217,255,67,.055) !important;
}
.eyebrow:before{
  background:var(--ds-accent) !important;
  box-shadow:0 0 12px rgba(217,255,67,.75) !important;
}

/* Buttons */
.btn-primary,
button.active,
.portfolio-filter button.active,
.project-view{
  background:var(--ds-accent) !important;
  color:var(--ds-black) !important;
  border-color:var(--ds-accent) !important;
}
.btn-primary:hover,
.portfolio-filter button:hover{
  background:var(--ds-accent-2) !important;
  color:#080808 !important;
}
.btn:hover{
  box-shadow:0 12px 34px rgba(217,255,67,.12) !important;
}

/* Cards and surfaces */
.about-story-card,
.about-number-shell,
.about-cap-shell,
.portfolio-card-visual,
.service-card,
.services-card,
.service-detail-card,
.process-card,
.why-card{
  background:linear-gradient(145deg,#151515,#0d0d0d) !important;
  border-color:rgba(255,255,255,.12) !important;
}
.about-story-card:hover,
.portfolio-card:hover .portfolio-card-visual,
.service-card:hover,
.services-card:hover,
.service-detail-card:hover,
.process-card:hover,
.why-card:hover{
  border-color:rgba(217,255,67,.38) !important;
}

/* About visual */
.about-visual{
  background:
    radial-gradient(circle at 50% 50%,rgba(217,255,67,.09),transparent 24%),
    linear-gradient(145deg,#151515,#090909) !important;
  border-color:rgba(255,255,255,.13) !important;
}
.about-visual:before,
.portfolio-card-visual:before{
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px) !important;
}
.about-core{
  background:#0b0b0b !important;
  border-color:rgba(217,255,67,.32) !important;
  box-shadow:0 0 70px rgba(217,255,67,.09) !important;
}
.about-orbit{
  border-color:rgba(217,255,67,.23) !important;
}
.about-node,
.about-cap-tags span,
.portfolio-card-tags span,
.portfolio-filter button{
  background:#121212 !important;
  border-color:rgba(255,255,255,.13) !important;
  color:#b8b7b1 !important;
}
.about-story-card span,
.value-row > span,
.portfolio-method-grid b,
.project-index{
  color:var(--ds-accent) !important;
}

/* Lines */
.values-list,
.value-row,
.portfolio-marquee,
.portfolio-method-grid,
.portfolio-method-grid>div,
.about-number-grid div{
  border-color:rgba(255,255,255,.12) !important;
}

/* Portfolio visual accents */
.portfolio-card-visual:after{
  border-color:rgba(217,255,67,.27) !important;
  box-shadow:0 0 80px rgba(217,255,67,.07) !important;
}
.project-symbol span{
  border-color:rgba(217,255,67,.34) !important;
}
.project-symbol span:nth-child(3){
  background:rgba(217,255,67,.08) !important;
}
.project-brand,
.project-web,
.project-growth,
.project-motion,
.project-seo,
.project-ai{
  background:
    radial-gradient(circle at 50% 50%,rgba(217,255,67,.08),transparent 28%),
    #101010 !important;
}

/* Marquee */
.portfolio-marquee div{color:#aaa9a4 !important}
.portfolio-marquee i{color:var(--ds-accent) !important}

/* CTA: lime hero block */
.cta,
.cta-pro{
  background:var(--ds-accent) !important;
  color:#080808 !important;
  border-color:var(--ds-accent) !important;
}
.cta h2,.cta-pro h2,
.cta p,.cta-pro p,
.cta span,.cta-pro span,
.cta .eyebrow,.cta-pro .eyebrow{
  color:#080808 !important;
}
.cta .eyebrow,.cta-pro .eyebrow{
  border-color:rgba(8,8,8,.18) !important;
  background:rgba(8,8,8,.04) !important;
}
.cta .eyebrow:before,.cta-pro .eyebrow:before{
  background:#080808 !important;
  box-shadow:none !important;
}
.cta .btn,.cta-pro .btn{
  background:#080808 !important;
  color:var(--ds-white) !important;
  border-color:#080808 !important;
}

/* Footer */
.site-footer,
footer{
  background:#080808 !important;
  color:#d9d8d2 !important;
}
.footer-main,
.footer-wrap{
  border-color:rgba(255,255,255,.12) !important;
}
.site-footer a:hover,
footer a:hover{
  color:var(--ds-accent) !important;
}

/* Logo: retain official artwork, reduce cyan glow so it sits naturally */
.ds360-header-logo,
.ds360-footer-logo{
  filter:drop-shadow(0 0 12px rgba(255,255,255,.08)) !important;
}


/* =========================================================
   V3.8 — WHITE / LIGHT Creative Agency Direction
   ========================================================= */
:root{
  --ds-bg:#f7f7f3;
  --ds-surface:#ffffff;
  --ds-surface-2:#efefe9;
  --ds-text:#101010;
  --ds-muted-light:#686862;
  --ds-accent:#d9ff43;
  --ds-accent-2:#c7f52c;
  --ds-light-line:rgba(16,16,16,.13);
}

html,body,
.about-page,
.portfolio-page,
.services-page{
  background:var(--ds-bg) !important;
  color:var(--ds-text) !important;
}

body{
  background:
    radial-gradient(circle at 85% 5%,rgba(217,255,67,.13),transparent 24%),
    var(--ds-bg) !important;
}

/* Header */
.site-header,
header.site-header{
  background:rgba(255,255,252,.86) !important;
  border-color:rgba(16,16,16,.11) !important;
  box-shadow:0 16px 48px rgba(0,0,0,.07) !important;
}
.nav a{
  color:#242421 !important;
}
.nav a:hover{
  background:#101010 !important;
  color:#fff !important;
}

/* Main text */
h1,h2,h3,h4,h5,h6,
.about-hero h1,
.portfolio-hero h1,
.section-head h2{
  color:#101010 !important;
}
p,
.section-intro,
.about-hero-side p,
.portfolio-hero-copy p,
.portfolio-card-info p,
.about-story-card p,
.value-row p{
  color:var(--ds-muted-light) !important;
}
.portfolio-hero h1 span{
  color:#101010 !important;
  -webkit-text-stroke:1px #101010;
}

/* Accent labels */
.eyebrow{
  color:#101010 !important;
  background:var(--ds-accent) !important;
  border-color:var(--ds-accent) !important;
}
.eyebrow:before{
  background:#101010 !important;
  box-shadow:none !important;
}

/* Cards */
.about-story-card,
.about-number-shell,
.about-cap-shell,
.service-card,
.services-card,
.service-detail-card,
.process-card,
.why-card{
  background:var(--ds-surface) !important;
  border-color:var(--ds-light-line) !important;
  box-shadow:0 18px 50px rgba(0,0,0,.035);
}
.about-story-card:hover,
.service-card:hover,
.services-card:hover,
.service-detail-card:hover,
.process-card:hover,
.why-card:hover{
  background:#fff !important;
  border-color:rgba(16,16,16,.30) !important;
  box-shadow:0 24px 60px rgba(0,0,0,.07);
}

/* About hero visual */
.about-visual{
  background:
    radial-gradient(circle at 50% 50%,rgba(217,255,67,.22),transparent 26%),
    #fff !important;
  border-color:var(--ds-light-line) !important;
  box-shadow:0 22px 60px rgba(0,0,0,.045);
}
.about-visual:before,
.portfolio-card-visual:before{
  background-image:
    linear-gradient(rgba(16,16,16,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(16,16,16,.055) 1px,transparent 1px) !important;
}
.about-core{
  background:#fff !important;
  border-color:rgba(16,16,16,.16) !important;
  box-shadow:0 20px 50px rgba(0,0,0,.09) !important;
}
.about-orbit{
  border-color:rgba(16,16,16,.16) !important;
}
.about-node,
.about-cap-tags span,
.portfolio-card-tags span,
.portfolio-filter button{
  background:#fff !important;
  color:#343431 !important;
  border-color:rgba(16,16,16,.13) !important;
}

/* Portfolio */
.portfolio-card-visual,
.project-brand,
.project-web,
.project-growth,
.project-motion,
.project-seo,
.project-ai{
  background:
    radial-gradient(circle at 50% 50%,rgba(217,255,67,.20),transparent 28%),
    #ecece6 !important;
  border-color:rgba(16,16,16,.12) !important;
}
.portfolio-card:hover .portfolio-card-visual{
  border-color:rgba(16,16,16,.28) !important;
  box-shadow:0 24px 60px rgba(0,0,0,.07);
}
.portfolio-card-visual:after{
  border-color:rgba(16,16,16,.18) !important;
  box-shadow:none !important;
}
.project-symbol span{
  border-color:rgba(16,16,16,.26) !important;
}
.project-symbol span:nth-child(3){
  background:rgba(217,255,67,.45) !important;
}
.project-index,
.about-story-card span,
.value-row > span,
.portfolio-method-grid b{
  color:#101010 !important;
}
.project-category{
  color:#62625d !important;
}
.project-view{
  background:#101010 !important;
  color:#fff !important;
}
.portfolio-marquee div{
  color:#555550 !important;
}
.portfolio-marquee i{
  color:#101010 !important;
}

/* Borders */
.values-list,
.value-row,
.portfolio-marquee,
.portfolio-method-grid,
.portfolio-method-grid>div,
.about-number-grid div{
  border-color:rgba(16,16,16,.13) !important;
}

/* Buttons */
.btn-primary{
  background:#101010 !important;
  color:#fff !important;
  border-color:#101010 !important;
}
.btn-primary:hover{
  background:var(--ds-accent) !important;
  color:#101010 !important;
  border-color:var(--ds-accent) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.10) !important;
}
.portfolio-filter button.active,
.portfolio-filter button:hover{
  background:#101010 !important;
  color:#fff !important;
  border-color:#101010 !important;
}

/* Stats */
.about-number-grid strong{
  color:#101010 !important;
}
.about-number-grid span{
  color:#6c6c66 !important;
}

/* CTA stays lime for visual contrast */
.cta,
.cta-pro{
  background:var(--ds-accent) !important;
  color:#101010 !important;
  border-color:#101010 !important;
}
.cta h2,.cta-pro h2,
.cta p,.cta-pro p,
.cta span,.cta-pro span,
.cta .eyebrow,.cta-pro .eyebrow{
  color:#101010 !important;
}
.cta .eyebrow,.cta-pro .eyebrow{
  background:transparent !important;
  border-color:rgba(16,16,16,.20) !important;
}
.cta .btn,.cta-pro .btn{
  background:#101010 !important;
  color:#fff !important;
  border-color:#101010 !important;
}

/* Footer becomes clean white/light */
.site-footer,
footer{
  background:#fff !important;
  color:#101010 !important;
  border-top:1px solid rgba(16,16,16,.12);
}
.footer-main,
.footer-wrap{
  border-color:rgba(16,16,16,.12) !important;
}
.site-footer h2,.site-footer h3,.site-footer h4,
footer h2,footer h3,footer h4{
  color:#101010 !important;
}
.site-footer p,footer p,
.site-footer span,footer span{
  color:#686862 !important;
}
.site-footer a,footer a{
  color:#252522 !important;
}
.site-footer a:hover,footer a:hover{
  color:#101010 !important;
  text-decoration:underline;
}

/* Official logo clean on light */
.ds360-header-logo,
.ds360-footer-logo{
  filter:none !important;
}


/* =========================================================
   V3.9 — COMPLETE WHITE HOMEPAGE FIX
   Fixes legacy navy/cyan rules from earlier versions.
   ========================================================= */
:root{
  --bg:#f7f7f2 !important;
  --surface:#ffffff !important;
  --surface-2:#efefe9 !important;
  --text:#101010 !important;
  --muted:#686862 !important;
  --line:rgba(16,16,16,.13) !important;
  --accent:#d9ff43 !important;
  --accent-2:#c7f52c !important;
}

html,body,main{
  background:#f7f7f2 !important;
  color:#101010 !important;
}

/* HEADER — readable on white */
.site-header,
.site-header.scrolled,
header.site-header{
  background:rgba(255,255,252,.94) !important;
  border:1px solid rgba(16,16,16,.12) !important;
  box-shadow:0 14px 42px rgba(0,0,0,.08) !important;
}
.site-header .nav > a:not(.btn),
.site-header .nav a,
.nav a{
  color:#171714 !important;
}
.site-header .nav > a:not(.btn):hover,
.site-header .nav a:hover,
.nav a:hover{
  color:#101010 !important;
  background:#d9ff43 !important;
}
.site-header .btn-primary,
.header-cta,
.mobile-cta{
  background:#101010 !important;
  color:#fff !important;
  border-color:#101010 !important;
}

/* HOME HERO — remove navy completely */
.hero{
  min-height:100vh;
  background:
    radial-gradient(circle at 76% 22%,rgba(217,255,67,.20),transparent 26%),
    #f7f7f2 !important;
  color:#101010 !important;
}
.hero h1{
  color:#101010 !important;
}
.hero h1 em,
.hero h1 .accent,
.hero h1 span{
  color:#101010 !important;
  font-style:normal;
  position:relative;
}
.hero h1 em{
  display:inline;
  background:linear-gradient(transparent 61%,#d9ff43 61%);
}
.hero-copy,
.hero p{
  color:#5f5f59 !important;
}
.hero .btn-primary{
  background:#101010 !important;
  color:#fff !important;
  border-color:#101010 !important;
}
.hero .btn-primary:hover{
  background:#d9ff43 !important;
  color:#101010 !important;
  border-color:#d9ff43 !important;
}
.hero-actions .btn:not(.btn-primary){
  background:transparent !important;
  color:#101010 !important;
  border-color:rgba(16,16,16,.22) !important;
}

/* HERO VISUAL — clean off-white premium card */
.hero-card.hero-premium,
.hero-card{
  background:
    radial-gradient(circle at 76% 18%,rgba(217,255,67,.34),transparent 31%),
    linear-gradient(145deg,#ffffff,#ecece6) !important;
  border-color:rgba(16,16,16,.14) !important;
  box-shadow:0 28px 80px rgba(0,0,0,.08) !important;
}
.hero-premium .hero-grid-bg{
  background-image:
    linear-gradient(rgba(16,16,16,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(16,16,16,.055) 1px,transparent 1px) !important;
}
.hero-premium .hero-glow-a{
  background:rgba(217,255,67,.42) !important;
}
.hero-premium .hero-glow-b{
  background:rgba(16,16,16,.06) !important;
}
.hero-premium .floating-card,
.hero-premium .hero-result-premium{
  background:rgba(255,255,255,.90) !important;
  border-color:rgba(16,16,16,.14) !important;
  color:#101010 !important;
  box-shadow:0 16px 45px rgba(0,0,0,.08);
}
.hero-premium .floating-card strong,
.hero-premium .hero-result-premium strong,
.hero-premium .center-core span{
  color:#101010 !important;
}
.hero-premium .floating-card small,
.hero-premium .hero-result-premium span,
.hero-premium .center-core small{
  color:#66665f !important;
}
.hero-premium .fc-label{
  color:#101010 !important;
}
.hero-premium .center-ring,
.hero-premium .ring-2{
  border-color:rgba(16,16,16,.20) !important;
}
.hero-premium .ring-1:before,
.hero-premium .ring-2:before,
.hero-premium .fc-dot{
  background:#101010 !important;
  box-shadow:none !important;
}
.hero-premium .center-core{
  background:#ffffff !important;
  border-color:rgba(16,16,16,.16) !important;
}
.hero-result-premium .eyebrow{
  background:#d9ff43 !important;
  color:#101010 !important;
  border-color:#d9ff43 !important;
}

/* MARQUEE */
.marquee{
  background:#fff !important;
  border-color:rgba(16,16,16,.12) !important;
}
.marquee span{
  color:#5e5e58 !important;
}
.marquee i{
  color:#101010 !important;
}

/* PROOF STRIP */
.proof-section{
  background:#f7f7f2 !important;
}
.proof-strip{
  background:#101010 !important;
  border-color:#101010 !important;
  color:#fff !important;
  box-shadow:0 18px 55px rgba(0,0,0,.08);
}
.proof-strip h3,
.proof-strip b{
  color:#fff !important;
}
.proof-strip p,
.proof-strip span:not(.eyebrow){
  color:#a9a9a2 !important;
}
.proof-strip .eyebrow{
  background:#d9ff43 !important;
  color:#101010 !important;
  border-color:#d9ff43 !important;
}
.proof-intro,
.proof-item{
  border-color:rgba(255,255,255,.14) !important;
}

/* ALL HOME SECTIONS */
#services,#work,#process,.capability-band,.why-section,#contact{
  background:#f7f7f2 !important;
}
.section-head h2,
#services h2,#work h2,#process h2,.why-section h2{
  color:#101010 !important;
}
.section-intro{
  color:#66665f !important;
}

/* SERVICES */
.service{
  background:#fff !important;
  border-color:rgba(16,16,16,.13) !important;
  box-shadow:0 15px 45px rgba(0,0,0,.035);
}
.service:hover{
  border-color:rgba(16,16,16,.35) !important;
  box-shadow:0 20px 55px rgba(0,0,0,.07);
}
.service h3{color:#101010 !important}
.service p{color:#686862 !important}
.service-num{color:#101010 !important}
.service:before{
  background:linear-gradient(90deg,transparent,#d9ff43,transparent) !important;
}

/* WORK */
.work-card{
  background:#fff !important;
  border-color:rgba(16,16,16,.13) !important;
}
.work-image{
  background:
    radial-gradient(circle at 72% 20%,rgba(217,255,67,.30),transparent 32%),
    linear-gradient(135deg,#efefe9,#deded7) !important;
  color:#777770 !important;
}
.work-body h3{color:#101010 !important}
.work-body p{color:#686862 !important}
.work-meta span{
  background:#f4f4ef !important;
  border-color:rgba(16,16,16,.13) !important;
  color:#4e4e49 !important;
}
.work-cta{color:#101010 !important}

/* PROCESS */
.process,
.process-pro,
.process-pro .process-item{
  background:transparent !important;
  border-color:rgba(16,16,16,.14) !important;
}
.process-item h3{color:#101010 !important}
.process-item p{color:#686862 !important}
.process-item b{color:#101010 !important}

/* CAPABILITY */
.capability-band{
  padding-top:0 !important;
}
.capability-shell{
  background:#101010 !important;
  border-color:#101010 !important;
}
.capability-copy h3{
  color:#fff !important;
}
.capability-list span{
  background:#1a1a1a !important;
  border-color:rgba(255,255,255,.14) !important;
  color:#e8e8e2 !important;
}

/* WHY */
.why-card{
  background:#fff !important;
  border-color:rgba(16,16,16,.13) !important;
}
.why-card h3{color:#101010 !important}
.why-card p{color:#686862 !important}
.why-card > span{color:#101010 !important}

/* CTA */
#contact .cta,
.cta,
.cta-pro{
  background:#d9ff43 !important;
  color:#101010 !important;
  border:1px solid #101010 !important;
}
#contact .cta h2,
.cta h2,.cta-pro h2{
  color:#101010 !important;
}
#contact .cta .btn,
.cta .btn,.cta-pro .btn{
  background:#101010 !important;
  color:#fff !important;
  border-color:#101010 !important;
}

/* FOOTER */
.site-footer,footer{
  background:#fff !important;
  color:#101010 !important;
}

/* Smaller screens */
@media(max-width:900px){
  .hero{
    min-height:auto !important;
  }
}


/* =========================================================
   V4.0 — HOMEPAGE REBALANCE
   Less empty space, stronger creative-agency composition.
   ========================================================= */

/* HEADER: less oversized/floating */
.site-header,
header.site-header{
  width:calc(100% - 52px) !important;
  max-width:1280px !important;
  top:18px !important;
  min-height:72px !important;
  border-radius:18px !important;
  padding:0 22px !important;
}
.ds360-logo-link{
  height:62px !important;
}
.ds360-header-logo{
  height:66px !important;
  max-width:118px !important;
}

/* HERO: remove the huge dead vertical space */
.hero{
  min-height:auto !important;
  padding:150px 0 86px !important;
  display:block !important;
  overflow:hidden !important;
  position:relative !important;
}
.hero:before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-110px;
  top:105px;
  border-radius:50%;
  background:#d9ff43;
  opacity:.16;
  filter:blur(4px);
  pointer-events:none;
}
.hero:after{
  content:"";
  position:absolute;
  right:4%;
  bottom:14px;
  width:160px;
  height:160px;
  border:1px solid rgba(16,16,16,.12);
  border-radius:50%;
  box-shadow:
    0 0 0 42px rgba(16,16,16,.025),
    0 0 0 84px rgba(16,16,16,.018);
  pointer-events:none;
}

.hero-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr) !important;
  gap:76px !important;
  align-items:center !important;
  position:relative;
  z-index:2;
}

/* headline: more controlled and editorial */
.hero h1{
  max-width:720px !important;
  margin:22px 0 24px !important;
  font-size:clamp(66px,6.8vw,108px) !important;
  line-height:.88 !important;
  letter-spacing:-.075em !important;
}
.hero h1 em{
  display:inline !important;
  background:none !important;
  position:relative !important;
  z-index:1;
}
.hero h1 em:after{
  content:"";
  position:absolute;
  left:-8px;
  right:-8px;
  bottom:8px;
  height:22%;
  background:#d9ff43;
  z-index:-1;
  transform:rotate(-.8deg);
}

.hero-copy,
.hero p{
  max-width:600px !important;
  margin-bottom:27px !important;
  font-size:17px !important;
  line-height:1.6 !important;
}
.hero-actions{
  gap:12px !important;
}

/* visual larger and more dominant */
.hero-card.hero-premium,
.hero-card{
  width:100% !important;
  max-width:none !important;
  min-height:470px !important;
  border-radius:28px !important;
  transform:none !important;
}
.hero-premium .floating-card{
  top:38px !important;
  left:30px !important;
  width:190px !important;
  padding:23px !important;
  border-radius:19px !important;
}
.hero-premium .floating-card strong{
  font-size:37px !important;
}
.hero-premium .center-rings{
  transform:translate(-50%,-50%) scale(1.12) !important;
}
.hero-premium .hero-result-premium{
  left:26px !important;
  right:26px !important;
  bottom:26px !important;
  min-height:116px !important;
  padding:24px !important;
  border-radius:19px !important;
}
.hero-premium .hero-result-premium strong{
  font-size:38px !important;
}

/* Make lime more structural, not just a text underline */
.hero-card.hero-premium:after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-48px;
  top:-48px;
  background:#d9ff43;
  border-radius:50%;
  opacity:.34;
  filter:blur(2px);
}

/* marquee closer to hero */
.marquee{
  margin-top:0 !important;
  min-height:58px !important;
}

/* proof section should start immediately, no awkward blank */
.proof-section{
  padding:38px 0 88px !important;
}
.proof-strip{
  margin-top:0 !important;
  border-radius:24px !important;
}

/* tighter page rhythm */
#services,
#work,
#process,
.why-section{
  padding-top:96px !important;
  padding-bottom:96px !important;
}

/* force homepage container to wider modern agency composition */
.hero .container,
.proof-section .container{
  width:min(1280px,calc(100% - 52px)) !important;
}

/* Make service/work visuals feel more designed */
.service,
.work-card,
.why-card{
  border-radius:22px !important;
}
.service{
  min-height:300px !important;
}
.work-image{
  min-height:390px !important;
}

/* desktop */
@media(min-width:1100px){
  .hero-copy-col{
    padding-top:10px;
  }
}

/* tablet */
@media(max-width:1000px){
  .hero-grid{
    grid-template-columns:1fr !important;
    gap:48px !important;
  }
  .hero h1{
    max-width:800px !important;
  }
  .hero-card.hero-premium{
    max-width:760px !important;
    margin:0 auto !important;
  }
}

/* mobile */
@media(max-width:620px){
  .site-header,
  header.site-header{
    width:calc(100% - 18px) !important;
    top:9px !important;
    min-height:64px !important;
    padding:0 12px !important;
  }
  .hero{
    padding:118px 0 58px !important;
  }
  .hero .container,
  .proof-section .container{
    width:min(100% - 28px,1280px) !important;
  }
  .hero h1{
    font-size:54px !important;
    line-height:.9 !important;
  }
  .hero-card.hero-premium,
  .hero-card{
    min-height:390px !important;
  }
  .hero-premium .floating-card{
    width:155px !important;
    padding:17px !important;
  }
  .hero-premium .floating-card strong{
    font-size:30px !important;
  }
  .hero-premium .hero-result-premium{
    left:16px !important;
    right:16px !important;
    bottom:16px !important;
  }
}


/* =========================================================
   V4.1 — CLEAN PREMIUM HERO
   ========================================================= */
.hero-v41{
  padding:150px 0 74px !important;
  background:#f7f7f2 !important;
}
.hero-v41:before,
.hero-v41:after{
  display:none !important;
}

.hero-grid-v41{
  grid-template-columns:minmax(0, .92fr) minmax(500px, 1.08fr) !important;
  gap:64px !important;
  align-items:center !important;
}

.hero-v41 h1{
  max-width:680px !important;
  margin:22px 0 24px !important;
  font-size:clamp(64px,6vw,96px) !important;
  line-height:.9 !important;
  letter-spacing:-.07em !important;
}
.hero-v41 h1 em{
  position:relative !important;
  display:inline-block !important;
  color:#101010 !important;
  font-style:normal !important;
  background:none !important;
}
.hero-v41 h1 em:after{
  content:"";
  position:absolute;
  left:-4px;
  right:-8px;
  bottom:2px;
  height:18px;
  background:#d9ff43;
  z-index:-1;
  transform:rotate(-1deg);
}
.hero-v41 .hero-copy{
  max-width:600px !important;
  margin:0 0 30px !important;
  font-size:16px !important;
  line-height:1.7 !important;
  color:#65655f !important;
}
.hero-v41 .hero-actions{
  display:flex;
  gap:10px !important;
  flex-wrap:wrap;
}
.hero-v41 .btn{
  min-height:48px !important;
  padding:0 21px !important;
}
.hero-v41 .btn-primary{
  background:#101010 !important;
  color:#fff !important;
  border-color:#101010 !important;
}
.hero-v41 .btn-primary:hover{
  background:#d9ff43 !important;
  color:#101010 !important;
  border-color:#101010 !important;
}

.hero-mini-proof{
  display:flex;
  gap:0;
  margin-top:44px;
  border-top:1px solid rgba(16,16,16,.14);
  border-bottom:1px solid rgba(16,16,16,.14);
}
.hero-mini-proof span{
  flex:1;
  padding:16px 18px 16px 0;
  color:#77776f;
  font-size:10px;
  line-height:1.45;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.hero-mini-proof span+span{
  padding-left:18px;
  border-left:1px solid rgba(16,16,16,.14);
}
.hero-mini-proof b{
  display:block;
  margin-bottom:3px;
  color:#101010;
  font-size:12px;
  letter-spacing:-.01em;
  text-transform:none;
}

/* Art panel */
.hero-art-v41{
  position:relative;
  min-height:520px;
  overflow:hidden;
  border:1px solid rgba(16,16,16,.13);
  border-radius:28px;
  background:#101010;
  box-shadow:0 26px 70px rgba(0,0,0,.10);
}
.hero-art-v41:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:46px 46px;
}
.hero-art-v41:after{
  content:"";
  position:absolute;
  width:290px;
  height:290px;
  right:-70px;
  top:-70px;
  border-radius:50%;
  background:#d9ff43;
}

.hero-art-label{
  position:absolute;
  z-index:4;
  left:28px;
  top:24px;
  color:#9d9d96;
  font-size:9px;
  font-weight:800;
  letter-spacing:.14em;
}

.hero-art-logo{
  position:absolute;
  z-index:5;
  left:50%;
  top:50%;
  width:160px;
  height:160px;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.14);
  border-radius:50%;
  background:#0c0c0c;
  box-shadow:0 20px 50px rgba(0,0,0,.35);
}
.hero-art-logo img{
  width:118px;
  height:auto;
  filter:none !important;
}

.hero-art-word{
  position:absolute;
  z-index:2;
  color:rgba(255,255,255,.12);
  font-size:clamp(58px,5.2vw,84px);
  font-weight:900;
  line-height:.8;
  letter-spacing:-.07em;
}
.word-a{left:28px;top:90px}
.word-b{right:26px;top:215px}
.word-c{left:35px;bottom:34px}

.hero-art-card{
  position:absolute;
  z-index:6;
  width:150px;
  min-height:78px;
  padding:15px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:16px;
  background:rgba(255,255,255,.94);
  color:#101010;
  box-shadow:0 14px 35px rgba(0,0,0,.18);
}
.hero-art-card span{
  display:block;
  margin-bottom:14px;
  color:#77776f;
  font-size:9px;
  font-weight:800;
}
.hero-art-card strong{
  font-size:15px;
}
.card-a{left:30px;top:180px}
.card-b{right:30px;top:320px}
.card-c{left:180px;bottom:35px}

.hero-art-circle{
  position:absolute;
  z-index:1;
  width:360px;
  height:360px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border:1px solid rgba(217,255,67,.30);
  border-radius:50%;
  box-shadow:
    0 0 0 46px rgba(217,255,67,.045),
    0 0 0 92px rgba(217,255,67,.025);
}
.hero-art-dot{
  position:absolute;
  z-index:7;
  right:28px;
  bottom:26px;
  width:14px;
  height:14px;
  border-radius:50%;
  background:#d9ff43;
}

/* Tighter follow-on */
.marquee{
  min-height:54px !important;
}
.proof-section{
  padding-top:34px !important;
}

@media(max-width:1000px){
  .hero-grid-v41{
    grid-template-columns:1fr !important;
  }
  .hero-art-v41{
    min-height:500px;
  }
}
@media(max-width:620px){
  .hero-v41{
    padding:118px 0 54px !important;
  }
  .hero-v41 h1{
    font-size:52px !important;
  }
  .hero-mini-proof{
    flex-direction:column;
  }
  .hero-mini-proof span,
  .hero-mini-proof span+span{
    padding:12px 0 !important;
    border-left:0;
    border-top:1px solid rgba(16,16,16,.12);
  }
  .hero-mini-proof span:first-child{
    border-top:0;
  }
  .hero-art-v41{
    min-height:430px;
  }
  .hero-art-logo{
    width:125px;
    height:125px;
  }
  .hero-art-logo img{
    width:92px;
  }
  .hero-art-card{
    width:125px;
  }
  .card-a{left:16px;top:150px}
  .card-b{right:16px;top:270px}
  .card-c{left:26px;bottom:18px}
}


/* =========================================================
   V4.2 — REFINED WHITE CREATIVE HERO
   Cleaner, more premium and less template-like.
   ========================================================= */

.hero-v42{
  padding:145px 0 36px !important;
  background:#f7f7f2 !important;
  overflow:hidden;
}
.hero-v42:before,
.hero-v42:after{
  display:none !important;
}

.hero-v42-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);
  gap:72px;
  align-items:center;
}

.hero-v42-copy{
  padding:18px 0 8px;
}

.hero-v42-copy h1{
  margin:24px 0 26px !important;
  max-width:660px !important;
  color:#101010 !important;
  font-size:clamp(68px,6.7vw,108px) !important;
  line-height:.84 !important;
  letter-spacing:-.078em !important;
}
.hero-v42-copy h1 > span{
  display:block;
}
.hero-line-outline{
  color:transparent !important;
  -webkit-text-stroke:2px #101010;
  text-stroke:2px #101010;
}
.hero-line-accent{
  position:relative;
  width:max-content;
  max-width:100%;
  z-index:1;
}
.hero-line-accent:after{
  content:"";
  position:absolute;
  z-index:-1;
  left:-5px;
  right:-8px;
  bottom:3px;
  height:22%;
  background:#d9ff43;
  transform:rotate(-.7deg);
}

.hero-v42-copy p{
  max-width:590px !important;
  margin:0 !important;
  color:#65655f !important;
  font-size:16px !important;
  line-height:1.72 !important;
}

.hero-v42-actions{
  display:flex;
  align-items:center;
  gap:24px;
  margin-top:30px;
}
.hero-v42-actions .btn{
  min-height:50px !important;
}
.hero-text-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#101010 !important;
  font-size:13px;
  font-weight:800;
  text-decoration:none;
}
.hero-text-link span{
  transition:transform .25s ease;
}
.hero-text-link:hover span{
  transform:translateX(5px);
}

/* Right hero panel */
.hero-v42-art{
  position:relative;
  min-height:530px;
  overflow:hidden;
  border:1px solid rgba(16,16,16,.14);
  border-radius:30px;
  background:#fff;
  box-shadow:0 28px 75px rgba(0,0,0,.07);
}

.hero-v42-art:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(16,16,16,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(16,16,16,.05) 1px,transparent 1px);
  background-size:44px 44px;
}

.art-topline{
  position:absolute;
  z-index:5;
  left:28px;
  right:28px;
  top:24px;
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-bottom:15px;
  border-bottom:1px solid rgba(16,16,16,.12);
  color:#777770;
  font-size:8px;
  font-weight:900;
  letter-spacing:.14em;
}

.art-big-type{
  position:absolute;
  z-index:1;
  left:28px;
  top:96px;
  display:flex;
  flex-direction:column;
  color:#101010;
  font-size:clamp(60px,5.6vw,90px);
  font-weight:900;
  line-height:.78;
  letter-spacing:-.07em;
}
.art-big-type span:last-child{
  color:transparent;
  -webkit-text-stroke:1px rgba(16,16,16,.22);
}

.art-lime-block{
  position:absolute;
  z-index:2;
  right:-50px;
  top:72px;
  width:240px;
  height:240px;
  border-radius:50% 0 50% 50%;
  background:#d9ff43;
}

.art-logo-wrap{
  position:absolute;
  z-index:6;
  left:50%;
  top:56%;
  width:170px;
  height:170px;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#101010;
  box-shadow:0 18px 45px rgba(0,0,0,.18);
}
.art-logo-wrap img{
  position:relative;
  z-index:3;
  width:120px;
  height:auto;
}
.art-logo-ring{
  position:absolute;
  inset:-42px;
  border:1px solid rgba(16,16,16,.16);
  border-radius:50%;
  box-shadow:
    0 0 0 38px rgba(16,16,16,.025),
    0 0 0 76px rgba(16,16,16,.015);
}

.art-bottom{
  position:absolute;
  z-index:5;
  left:24px;
  right:24px;
  bottom:22px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border:1px solid rgba(16,16,16,.12);
  border-radius:18px;
  overflow:hidden;
  background:rgba(255,255,255,.94);
}
.art-bottom > div{
  padding:17px 18px;
}
.art-bottom > div+div{
  border-left:1px solid rgba(16,16,16,.12);
}
.art-bottom strong{
  display:block;
  margin-bottom:4px;
  color:#101010;
  font-size:13px;
}
.art-bottom span{
  color:#74746e;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.hero-v42-strip{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  margin-top:54px;
  border-top:1px solid rgba(16,16,16,.13);
  border-bottom:1px solid rgba(16,16,16,.13);
}
.hero-v42-strip span{
  padding:17px 14px;
  color:#5f5f59;
  text-align:center;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.hero-v42-strip span+span{
  border-left:1px solid rgba(16,16,16,.11);
}

/* Hide the older duplicated marquee right after the new hero */
.hero-v42 + .marquee{
  display:none !important;
}

/* bring next section up */
.proof-section{
  padding-top:48px !important;
}

@media(max-width:1000px){
  .hero-v42-grid{
    grid-template-columns:1fr;
    gap:48px;
  }
  .hero-v42-copy h1{
    max-width:780px !important;
  }
  .hero-v42-art{
    min-height:520px;
  }
  .hero-v42-strip{
    grid-template-columns:repeat(3,1fr);
  }
  .hero-v42-strip span:nth-child(4){
    border-left:0;
    border-top:1px solid rgba(16,16,16,.11);
  }
  .hero-v42-strip span:nth-child(5),
  .hero-v42-strip span:nth-child(6){
    border-top:1px solid rgba(16,16,16,.11);
  }
}

@media(max-width:620px){
  .hero-v42{
    padding:118px 0 28px !important;
  }
  .hero-v42-copy h1{
    font-size:54px !important;
    line-height:.88 !important;
  }
  .hero-v42-actions{
    align-items:flex-start;
    flex-direction:column;
    gap:15px;
  }
  .hero-v42-art{
    min-height:430px;
    border-radius:24px;
  }
  .art-big-type{
    left:20px;
    top:82px;
    font-size:53px;
  }
  .art-lime-block{
    width:180px;
    height:180px;
  }
  .art-logo-wrap{
    width:130px;
    height:130px;
  }
  .art-logo-wrap img{
    width:92px;
  }
  .art-bottom{
    left:14px;
    right:14px;
    bottom:14px;
  }
  .art-bottom > div{
    padding:12px 10px;
  }
  .art-bottom span{
    font-size:7px;
  }
  .hero-v42-strip{
    grid-template-columns:1fr 1fr;
    margin-top:34px;
  }
  .hero-v42-strip span{
    border-top:1px solid rgba(16,16,16,.11);
  }
}


/* =========================================================
   V4.3 — COMMERCIAL PREMIUM AGENCY HOME
   Cleaner, practical, conversion-focused.
   ========================================================= */

.hero-v43{
  padding:148px 0 42px !important;
  background:
    radial-gradient(circle at 83% 20%,rgba(217,255,67,.18),transparent 25%),
    #f7f7f2 !important;
}
.hero-v43:before,
.hero-v43:after{
  display:none !important;
}

.hero-v43-grid{
  display:grid;
  grid-template-columns:minmax(0,.93fr) minmax(520px,1.07fr);
  gap:68px;
  align-items:center;
}

.hero-rating{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:22px;
  color:#101010;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
}
.hero-rating span{
  color:#6a6a64;
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.hero-v43 h1{
  max-width:710px !important;
  margin:0 0 26px !important;
  color:#101010 !important;
  font-size:clamp(62px,6.4vw,98px) !important;
  line-height:.9 !important;
  letter-spacing:-.07em !important;
}

.hero-v43-copy > p{
  max-width:620px !important;
  margin:0 !important;
  color:#666660 !important;
  font-size:17px !important;
  line-height:1.7 !important;
}

.hero-v43-actions{
  display:flex;
  align-items:center;
  gap:22px;
  margin-top:31px;
}
.hero-v43-actions .btn{
  min-height:52px !important;
  padding:0 24px !important;
}

.hero-call-link{
  display:flex;
  flex-direction:column;
  gap:2px;
  color:#101010 !important;
  text-decoration:none;
}
.hero-call-link small{
  color:#777770;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.hero-call-link strong{
  color:#101010;
  font-size:15px;
}

.hero-trust-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:45px;
  border-top:1px solid rgba(16,16,16,.13);
  border-bottom:1px solid rgba(16,16,16,.13);
}
.hero-trust-row > div{
  padding:17px 16px 16px 0;
}
.hero-trust-row > div+div{
  padding-left:18px;
  border-left:1px solid rgba(16,16,16,.13);
}
.hero-trust-row strong{
  display:block;
  margin-bottom:4px;
  color:#101010;
  font-size:22px;
  letter-spacing:-.04em;
}
.hero-trust-row span{
  color:#777770;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.07em;
}

/* Right web showcase */
.hero-v43-showcase{
  position:relative;
  padding:24px 0 34px 24px;
}

.showcase-window{
  position:relative;
  z-index:2;
  overflow:hidden;
  border:1px solid rgba(16,16,16,.13);
  border-radius:24px;
  background:#fff;
  box-shadow:0 28px 70px rgba(0,0,0,.09);
}

.showcase-window-bar{
  display:flex;
  align-items:center;
  gap:6px;
  min-height:45px;
  padding:0 17px;
  border-bottom:1px solid rgba(16,16,16,.10);
  background:#fafaf7;
}
.showcase-window-bar > span{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#d4d4cf;
}
.showcase-window-bar b{
  margin-left:auto;
  color:#8a8a83;
  font-size:8px;
  letter-spacing:.08em;
}

.showcase-main{
  position:relative;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  min-height:320px;
  padding:42px;
  overflow:hidden;
  background:#101010;
}
.showcase-main:after{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  right:-80px;
  top:-90px;
  border-radius:50%;
  background:#d9ff43;
}

.showcase-copy{
  position:relative;
  z-index:3;
  align-self:center;
}
.showcase-kicker{
  color:#d9ff43;
  font-size:8px;
  font-weight:900;
  letter-spacing:.14em;
}
.showcase-copy strong{
  display:block;
  margin-top:15px;
  color:#fff;
  font-size:48px;
  line-height:.92;
  letter-spacing:-.06em;
}
.showcase-copy i{
  display:block;
  width:58px;
  height:3px;
  margin:22px 0;
  background:#d9ff43;
}
.showcase-copy small{
  color:#999992;
  font-size:9px;
  letter-spacing:.04em;
}

.showcase-logo{
  position:relative;
  z-index:4;
  align-self:center;
  justify-self:center;
  width:155px;
  height:155px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.14);
  border-radius:50%;
  background:#0a0a0a;
}
.showcase-logo img{
  width:108px;
  height:auto;
}

.showcase-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  background:#fff;
}
.showcase-cards > div{
  padding:20px 18px;
}
.showcase-cards > div+div{
  border-left:1px solid rgba(16,16,16,.11);
}
.showcase-cards b{
  display:block;
  margin-bottom:5px;
  color:#101010;
  font-size:11px;
}
.showcase-cards span{
  color:#777770;
  font-size:8px;
  line-height:1.4;
}

.showcase-badge{
  position:absolute;
  z-index:5;
  right:-16px;
  bottom:0;
  width:132px;
  height:132px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:7px solid #f7f7f2;
  border-radius:50%;
  background:#d9ff43;
  color:#101010;
  text-align:center;
}
.showcase-badge b{
  font-size:29px;
  line-height:1;
}
.showcase-badge span{
  margin-top:5px;
  font-size:8px;
  line-height:1.25;
  font-weight:800;
  text-transform:uppercase;
}

.hero-v43-features{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-top:48px;
  border-top:1px solid rgba(16,16,16,.13);
  border-bottom:1px solid rgba(16,16,16,.13);
}
.hero-v43-features > div{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:54px;
  padding:0 18px;
}
.hero-v43-features > div+div{
  border-left:1px solid rgba(16,16,16,.12);
}
.hero-v43-features b{
  color:#9a9a93;
  font-size:9px;
}
.hero-v43-features span{
  color:#101010;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
}

/* Hide previous duplicate marquee if present */
.hero-v43 + .marquee{
  display:none !important;
}
.proof-section{
  padding-top:48px !important;
}

@media(max-width:1000px){
  .hero-v43-grid{
    grid-template-columns:1fr;
  }
  .hero-v43-showcase{
    padding-left:0;
  }
}
@media(max-width:620px){
  .hero-v43{
    padding:118px 0 28px !important;
  }
  .hero-v43 h1{
    font-size:52px !important;
  }
  .hero-v43-actions{
    align-items:flex-start;
    flex-direction:column;
  }
  .hero-trust-row{
    grid-template-columns:1fr;
  }
  .hero-trust-row > div,
  .hero-trust-row > div+div{
    padding:12px 0;
    border-left:0;
    border-top:1px solid rgba(16,16,16,.11);
  }
  .showcase-main{
    grid-template-columns:1fr;
    min-height:380px;
    padding:28px;
  }
  .showcase-logo{
    width:120px;
    height:120px;
  }
  .showcase-logo img{
    width:82px;
  }
  .showcase-copy strong{
    font-size:42px;
  }
  .showcase-cards{
    grid-template-columns:1fr;
  }
  .showcase-cards > div+div{
    border-left:0;
    border-top:1px solid rgba(16,16,16,.11);
  }
  .showcase-badge{
    right:-5px;
  }
  .hero-v43-features{
    grid-template-columns:1fr 1fr;
  }
}


/* V4.4 — Remove center logo from hero showcase */
.showcase-logo{
  display:none !important;
}
.showcase-main{
  grid-template-columns:1fr !important;
}
.showcase-copy{
  max-width:72%;
}
@media(max-width:620px){
  .showcase-copy{
    max-width:100%;
  }
}


/* =========================================================
   V4.5 — DESIGN SPARTANS INSPIRED COLOR SYSTEM
   Color treatment only: white / black / warm gold-orange.
   ========================================================= */
:root{
  --ds-bg:#ffffff !important;
  --ds-surface:#ffffff !important;
  --ds-surface-2:#f7f7f7 !important;
  --ds-text:#111111 !important;
  --ds-muted-light:#666666 !important;
  --ds-accent:#8b5cf6 !important;
  --ds-accent-2:#7c3aed !important;
  --ds-light-line:rgba(17,17,17,.12) !important;
  --accent:#8b5cf6 !important;
  --accent-2:#7c3aed !important;
  --bg:#ffffff !important;
  --surface:#ffffff !important;
  --surface-2:#f7f7f7 !important;
  --text:#111111 !important;
  --muted:#666666 !important;
}

html,body,main,
.hero,.hero-v41,.hero-v42,.hero-v43,
#services,#work,#process,.why-section,.proof-section,
.capability-band{
  background:#fff !important;
  color:#111 !important;
}

.site-header,
header.site-header,
.site-header.scrolled{
  background:#fff !important;
  border-color:#e8e8e8 !important;
  box-shadow:0 12px 34px rgba(0,0,0,.07) !important;
}
.site-header .nav a,
.nav a{color:#111 !important}
.site-header .nav a:hover,
.nav a:hover{
  background:#8b5cf6 !important;
  color:#111 !important;
}
.site-header .btn-primary,
.header-cta,.mobile-cta{
  background:#8b5cf6 !important;
  color:#111 !important;
  border-color:#8b5cf6 !important;
}

/* buttons */
.btn-primary,
.hero .btn-primary,
.hero-v42 .btn-primary,
.hero-v43 .btn-primary{
  background:#8b5cf6 !important;
  color:#111 !important;
  border-color:#8b5cf6 !important;
}
.btn-primary:hover,
.hero .btn-primary:hover{
  background:#111 !important;
  color:#fff !important;
  border-color:#111 !important;
}

/* labels / highlights */
.eyebrow,
.hero-result-premium .eyebrow,
.proof-strip .eyebrow{
  background:#8b5cf6 !important;
  color:#111 !important;
  border-color:#8b5cf6 !important;
}
.hero h1 em:after,
.hero-line-accent:after,
.hero-v41 h1 em:after{
  background:#8b5cf6 !important;
}

/* current V4.4 showcase */
.showcase-main{
  background:#111 !important;
}
.showcase-main:after,
.showcase-badge,
.art-lime-block,
.hero-art-v41:after,
.hero-art-dot{
  background:#8b5cf6 !important;
}
.showcase-kicker{
  color:#8b5cf6 !important;
}
.showcase-copy i{
  background:#8b5cf6 !important;
}

/* old hero graphic fallbacks */
.hero-card.hero-premium,
.hero-card{
  background:#fff !important;
}
.hero-premium .hero-glow-a{
  background:rgba(244,163,33,.24) !important;
}
.hero-premium .ring-1:before,
.hero-premium .ring-2:before,
.hero-premium .fc-dot{
  background:#8b5cf6 !important;
}

/* proof / dark contrast */
.proof-strip,
.capability-shell{
  background:#111 !important;
  border-color:#111 !important;
}
.proof-strip h3,.proof-strip b,
.capability-copy h3{color:#fff !important}

/* cards */
.service,.work-card,.why-card{
  background:#fff !important;
  border-color:#e5e5e5 !important;
}
.service:before{
  background:linear-gradient(90deg,transparent,#8b5cf6,transparent) !important;
}
.work-image{
  background:
    radial-gradient(circle at 75% 20%,rgba(244,163,33,.16),transparent 32%),
    #f4f4f4 !important;
}

/* CTA */
#contact .cta,.cta,.cta-pro{
  background:#8b5cf6 !important;
  color:#111 !important;
  border-color:#8b5cf6 !important;
}
#contact .cta .btn,.cta .btn,.cta-pro .btn{
  background:#111 !important;
  color:#fff !important;
  border-color:#111 !important;
}

.site-footer,footer{
  background:#111 !important;
  color:#fff !important;
}
.site-footer a,footer a{color:#fff !important}


/* =========================================================
   V4.7 — RESTORE ORIGINAL HERO MOTION STYLE
   Same slow floating / orbit / glow feel from the earlier hero.
   No center logo.
   ========================================================= */

@keyframes oldHeroGlowA{
  0%,100%{transform:translate(0,0) scale(1)}
  50%{transform:translate(-30px,35px) scale(1.08)}
}
@keyframes oldFloatOne{
  0%,100%{transform:translateY(0) rotate(0)}
  50%{transform:translateY(12px) rotate(-1deg)}
}
@keyframes oldFloatTwo{
  0%,100%{transform:translate(0,0)}
  50%{transform:translate(-10px,-8px)}
}
@keyframes oldSpinSlow{
  to{transform:rotate(360deg)}
}
@keyframes oldSpinReverse{
  to{transform:rotate(-360deg)}
}

/* Showcase remains the same design; only restore old motion character */
.hero-v43-showcase{
  position:relative;
  isolation:isolate;
}

/* old moving glow */
.hero-v43-showcase:before{
  content:"";
  position:absolute;
  z-index:0;
  width:230px;
  height:230px;
  right:-55px;
  top:-35px;
  border-radius:50%;
  background:radial-gradient(circle,
    rgba(244,163,33,.46) 0%,
    rgba(244,163,33,.16) 44%,
    transparent 72%);
  filter:blur(8px);
  animation:oldHeroGlowA 7s ease-in-out infinite;
  pointer-events:none;
}

/* rotating orbit rings from the old hero */
.old-motion-orbits{
  position:absolute;
  z-index:1;
  width:310px;
  height:310px;
  right:22px;
  top:76px;
  pointer-events:none;
}

.old-orbit{
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(17,17,17,.17);
}

.old-orbit-1{
  inset:0;
  animation:oldSpinSlow 14s linear infinite;
}
.old-orbit-1:before{
  content:"";
  position:absolute;
  width:9px;
  height:9px;
  top:-5px;
  left:50%;
  border-radius:50%;
  background:#8b5cf6;
  box-shadow:0 0 18px rgba(244,163,33,.55);
}

.old-orbit-2{
  inset:38px;
  border-color:rgba(244,163,33,.35);
  animation:oldSpinReverse 11s linear infinite;
}
.old-orbit-2:before{
  content:"";
  position:absolute;
  width:8px;
  height:8px;
  right:-4px;
  top:50%;
  border-radius:50%;
  background:#111;
}

.old-orbit-3{
  inset:80px;
  border-color:rgba(17,17,17,.10);
  animation:oldSpinSlow 18s linear infinite;
}

/* same gentle float feel as old floating cards */
.showcase-window{
  z-index:2;
  animation:oldFloatOne 6s ease-in-out infinite;
}

.showcase-badge{
  animation:oldFloatTwo 7s ease-in-out infinite;
}

/* accent circle inside showcase moves slowly like the old glow */
.showcase-main:after{
  animation:oldHeroGlowA 8s ease-in-out infinite;
  transform-origin:center;
}

/* Keep hero copy static — earlier animation was mainly visual-side motion */
.hero-v43 .hero-rating,
.hero-v43 h1,
.hero-v43-copy > p,
.hero-v43-actions,
.hero-trust-row,
.hero-v43-features > div{
  opacity:1 !important;
  transform:none !important;
  animation:none !important;
}

/* Ensure V4.6 shine/reveal behaviour is not present */
.hero-v43 .btn-primary:after{
  display:none !important;
}

@media(max-width:1000px){
  .old-motion-orbits{
    right:7%;
    top:84px;
  }
}

@media(max-width:620px){
  .old-motion-orbits{
    width:220px;
    height:220px;
    right:-15px;
    top:90px;
  }
  .showcase-window{
    animation-duration:7s;
  }
}

@media(prefers-reduced-motion:reduce){
  .hero-v43-showcase:before,
  .old-orbit-1,
  .old-orbit-2,
  .old-orbit-3,
  .showcase-window,
  .showcase-badge,
  .showcase-main:after{
    animation:none !important;
  }
}


/* =========================================================
   V4.8 — CALIFORNIA LOGO DESIGNS INSPIRED COLOR SYSTEM
   Structure and existing hero motion preserved.
   ========================================================= */
:root{
  --cld-purple:#5b2bd9;
  --cld-violet:#7b35e8;
  --cld-pink:#ef3f8f;
  --cld-deep:#20113f;
  --cld-ink:#17131f;
  --cld-muted:#6f6879;
  --cld-soft:#f7f3ff;
  --cld-line:#e8dff7;

  --ds-bg:#ffffff !important;
  --ds-surface:#ffffff !important;
  --ds-surface-2:#f7f3ff !important;
  --ds-text:#17131f !important;
  --ds-muted-light:#6f6879 !important;
  --ds-accent:#7b35e8 !important;
  --ds-accent-2:#ef3f8f !important;
  --ds-light-line:#e8dff7 !important;

  --accent:#7b35e8 !important;
  --accent-2:#ef3f8f !important;
  --bg:#ffffff !important;
  --surface:#ffffff !important;
  --surface-2:#f7f3ff !important;
  --text:#17131f !important;
  --muted:#6f6879 !important;
}

html,body,main,
.hero,.hero-v43,
.services-section,.work-section,.process-section{
  background:#fff !important;
  color:#17131f !important;
}

/* Header */
.site-header,
.header-inner{
  background:rgba(255,255,255,.96) !important;
  border-color:#e8dff7 !important;
}
.main-nav a{color:#17131f !important}
.main-nav a:hover,
.main-nav .current-menu-item>a{color:#7b35e8 !important}

.header-cta,
.btn-primary,
.hero-v43 .btn-primary{
  background:linear-gradient(135deg,#6a2cdf 0%,#8d3ce9 62%,#ef3f8f 135%) !important;
  color:#fff !important;
  border-color:transparent !important;
  box-shadow:0 12px 30px rgba(91,43,217,.22) !important;
}
.header-cta:hover,
.btn-primary:hover,
.hero-v43 .btn-primary:hover{
  background:#20113f !important;
  color:#fff !important;
}

/* Hero labels and highlights */
.hero-rating,
.eyebrow,
.section-kicker,
.showcase-kicker{
  color:#6a2cdf !important;
}
.hero-rating{
  background:#f3ecff !important;
  border-color:#e1d3fa !important;
}
.hero-rating:before{
  background:#ef3f8f !important;
}

.hero-v43 h1,
.hero-v43 h1 *{
  color:#17131f;
}
.hero-v43 h1 em,
.hero-v43 h1 strong,
.text-accent,
.accent-text{
  color:#7b35e8 !important;
}

/* Secondary button */
.btn-secondary,
.hero-v43 .btn-secondary{
  background:#fff !important;
  color:#20113f !important;
  border-color:#d9caef !important;
}
.btn-secondary:hover,
.hero-v43 .btn-secondary:hover{
  background:#f7f3ff !important;
  border-color:#7b35e8 !important;
  color:#5b2bd9 !important;
}

/* Hero dashboard: deep purple instead of black/orange */
.showcase-window{
  border-color:rgba(123,53,232,.34) !important;
  box-shadow:0 28px 70px rgba(57,28,103,.18) !important;
}
.showcase-main{
  background:
    radial-gradient(circle at 78% 22%,rgba(239,63,143,.18),transparent 28%),
    radial-gradient(circle at 24% 78%,rgba(123,53,232,.26),transparent 34%),
    linear-gradient(145deg,#211044 0%,#160d2e 58%,#100a20 100%) !important;
}
.showcase-main:after{
  background:linear-gradient(135deg,#7b35e8,#ef3f8f) !important;
}
.showcase-kicker,
.showcase-copy i{
  color:#c9a8ff !important;
}
.showcase-badge{
  background:linear-gradient(135deg,#7b35e8,#ef3f8f) !important;
  color:#fff !important;
}

/* Restore the original orbit animation, recolored */
.hero-v43-showcase:before{
  background:radial-gradient(circle,
    rgba(123,53,232,.42) 0%,
    rgba(239,63,143,.16) 44%,
    transparent 72%) !important;
}
.old-orbit{
  border-color:rgba(123,53,232,.28) !important;
}
.old-orbit-1:before{
  background:#ef3f8f !important;
  box-shadow:0 0 18px rgba(239,63,143,.55) !important;
}
.old-orbit-2{
  border-color:rgba(239,63,143,.34) !important;
}
.old-orbit-2:before{
  background:#7b35e8 !important;
}

/* Light cards / strips */
.hero-v43-features,
.service-card,
.work-card,
.process-card,
.proof-card,
.feature-card{
  background:#fff !important;
  border-color:#e8dff7 !important;
}
.hero-v43-features svg,
.feature-icon,
.service-icon{
  color:#7b35e8 !important;
}

/* Dark contrast sections use the purple-black brand tone */
.proof-strip,
.capability-shell,
.dark-section{
  background:#20113f !important;
  color:#fff !important;
}
.proof-strip .muted,
.capability-shell .muted,
.dark-section .muted{
  color:#cfc4df !important;
}

/* CTA */
.cta-section,
.home-cta,
.cta-band{
  background:linear-gradient(120deg,#5b2bd9 0%,#7b35e8 55%,#ef3f8f 120%) !important;
  color:#fff !important;
}
.cta-section .btn,
.home-cta .btn,
.cta-band .btn{
  background:#fff !important;
  color:#5b2bd9 !important;
}

/* Footer */
.site-footer{
  background:#170d2d !important;
  color:#fff !important;
}
.site-footer a{color:#e7dcf7 !important}
.site-footer a:hover{color:#ef8abd !important}

/* Replace remaining old gold/orange visual accents in common hero selectors */
.hero-v43 [style*="#8b5cf6"],
.hero-v43 [style*="#7c3aed"]{
  color:#7b35e8 !important;
}

/* Selection */
::selection{
  background:#7b35e8;
  color:#fff;
}


/* =========================================================
   V4.9 — FULL THEME COLOR UNIFICATION
   California Logo Designs inspired purple / violet / pink.
   Applies across Home, About, Services, Portfolio, Pricing,
   Blog, Contact, archive/single and footer/header.
   ========================================================= */

:root{
  --brand-purple:#5b2bd9 !important;
  --brand-violet:#7b35e8 !important;
  --brand-pink:#ef3f8f !important;
  --brand-deep:#20113f !important;
  --brand-deeper:#170d2d !important;
  --brand-ink:#17131f !important;
  --brand-muted:#6f6879 !important;
  --brand-soft:#f7f3ff !important;
  --brand-soft-2:#f1eaff !important;
  --brand-line:#e8dff7 !important;

  --accent:#7b35e8 !important;
  --accent-2:#ef3f8f !important;
  --bg:#ffffff !important;
  --surface:#ffffff !important;
  --surface-2:#f7f3ff !important;
  --text:#17131f !important;
  --muted:#6f6879 !important;
  --ds-accent:#7b35e8 !important;
  --ds-accent-2:#ef3f8f !important;
  --ds-bg:#ffffff !important;
  --ds-surface:#ffffff !important;
  --ds-surface-2:#f7f3ff !important;
  --ds-text:#17131f !important;
  --ds-muted-light:#6f6879 !important;
  --ds-light-line:#e8dff7 !important;
}

body,
main,
.site-main,
.page-content,
.entry-content,
.about-page,
.services-page,
.portfolio-page,
.pricing-page,
.blog-page,
.contact-page{
  background:#fff !important;
  color:#17131f !important;
}

h1,h2,h3,h4,h5,h6,
.section-title,.page-title,.entry-title{
  color:#17131f !important;
}

p,.muted,.section-copy,.page-copy{
  color:#6f6879;
}

/* All common light section backgrounds */
.section-light,
.about-section,
.services-section,
.portfolio-section,
.pricing-section,
.blog-section,
.contact-section,
.process-section,
.work-section,
.why-section,
.stats-section{
  background:#fff !important;
}

.section-soft,
.alt-section,
.about-story,
.services-process,
.portfolio-method,
.pricing-faq,
.blog-featured,
.contact-info-section{
  background:#f7f3ff !important;
}

/* All common cards */
.card,
.service-card,
.portfolio-card,
.project-card,
.process-card,
.pricing-card,
.price-card,
.blog-card,
.contact-card,
.stat-card,
.value-card,
.capability-card,
.feature-card,
.proof-card,
.info-card{
  background:#fff !important;
  border-color:#e8dff7 !important;
  color:#17131f !important;
  box-shadow:0 14px 38px rgba(91,43,217,.07) !important;
}

.card:hover,
.service-card:hover,
.portfolio-card:hover,
.project-card:hover,
.pricing-card:hover,
.blog-card:hover{
  border-color:rgba(123,53,232,.42) !important;
  box-shadow:0 20px 48px rgba(91,43,217,.13) !important;
}

/* Labels / icons / links */
.eyebrow,
.kicker,
.section-kicker,
.card-kicker,
.meta-label,
.service-number,
.process-number,
.portfolio-category,
.price-label,
a:not(.btn):not(.header-cta){
  --local-accent:#7b35e8;
}
.eyebrow,.kicker,.section-kicker,.card-kicker,
.service-number,.process-number,.portfolio-category,.price-label{
  color:#7b35e8 !important;
}
.service-icon,.feature-icon,.contact-icon,.value-icon,
.process-icon,.pricing-icon{
  color:#7b35e8 !important;
}

/* Buttons everywhere */
.btn-primary,
.primary-button,
.cta-button,
.wp-element-button,
input[type="submit"],
button[type="submit"]{
  background:linear-gradient(135deg,#5b2bd9 0%,#7b35e8 62%,#ef3f8f 130%) !important;
  border-color:transparent !important;
  color:#fff !important;
}
.btn-primary:hover,
.primary-button:hover,
.cta-button:hover,
.wp-element-button:hover,
input[type="submit"]:hover,
button[type="submit"]:hover{
  background:#20113f !important;
  color:#fff !important;
}

.btn-secondary,.secondary-button{
  background:#fff !important;
  border-color:#d9caef !important;
  color:#5b2bd9 !important;
}
.btn-secondary:hover,.secondary-button:hover{
  background:#f7f3ff !important;
  border-color:#7b35e8 !important;
}

/* Forms */
input,textarea,select{
  background:#fff !important;
  color:#17131f !important;
  border-color:#ded4ee !important;
}
input:focus,textarea:focus,select:focus{
  border-color:#7b35e8 !important;
  box-shadow:0 0 0 3px rgba(123,53,232,.10) !important;
}

/* Portfolio filters */
.portfolio-filter button,
.filter-button{
  background:#fff !important;
  color:#5f566c !important;
  border-color:#ded4ee !important;
}
.portfolio-filter button.active,
.portfolio-filter button:hover,
.filter-button.active,
.filter-button:hover{
  background:#7b35e8 !important;
  color:#fff !important;
  border-color:#7b35e8 !important;
}

/* Pricing featured card */
.pricing-card.featured,
.price-card.featured,
.pricing-card.is-featured{
  background:linear-gradient(150deg,#25114c,#170d2d) !important;
  border-color:#7b35e8 !important;
  color:#fff !important;
}
.pricing-card.featured h2,
.pricing-card.featured h3,
.pricing-card.featured p,
.price-card.featured h2,
.price-card.featured h3,
.price-card.featured p{
  color:#fff !important;
}
.pricing-card.featured .muted,
.price-card.featured .muted{
  color:#d6c9e9 !important;
}

/* All intentional dark panels */
.dark-section,
.proof-strip,
.capability-shell,
.about-dark,
.services-dark,
.portfolio-dark,
.pricing-dark,
.contact-dark{
  background:linear-gradient(145deg,#24124a,#170d2d) !important;
  color:#fff !important;
}
.dark-section h1,.dark-section h2,.dark-section h3,
.proof-strip h1,.proof-strip h2,.proof-strip h3,
.capability-shell h1,.capability-shell h2,.capability-shell h3{
  color:#fff !important;
}

/* CTA bands throughout site */
.cta-section,.home-cta,.cta-band,.page-cta,
.about-cta,.services-cta,.portfolio-cta,.pricing-cta,.contact-cta{
  background:linear-gradient(120deg,#5b2bd9 0%,#7b35e8 56%,#ef3f8f 120%) !important;
  color:#fff !important;
}
.cta-section h2,.home-cta h2,.cta-band h2,.page-cta h2,
.about-cta h2,.services-cta h2,.portfolio-cta h2,.pricing-cta h2,.contact-cta h2,
.cta-section p,.home-cta p,.cta-band p,.page-cta p{
  color:#fff !important;
}

/* Blog */
.blog-card .entry-meta,
.post-meta,.entry-meta{
  color:#857991 !important;
}
.blog-card a:hover,.entry-title a:hover{
  color:#7b35e8 !important;
}

/* Header */
.site-header,.header-inner{
  background:rgba(255,255,255,.97) !important;
  border-color:#e8dff7 !important;
}
.main-nav a{color:#17131f !important}
.main-nav a:hover,.main-nav .current-menu-item>a{
  color:#7b35e8 !important;
}
.header-cta{
  background:linear-gradient(135deg,#5b2bd9,#7b35e8 65%,#ef3f8f) !important;
  color:#fff !important;
}

/* Footer */
.site-footer{
  background:#170d2d !important;
  border-color:#33214f !important;
  color:#fff !important;
}
.site-footer h2,.site-footer h3,.site-footer h4{
  color:#fff !important;
}
.site-footer p{color:#bfb3cf !important}
.site-footer a{color:#e8dcf8 !important}
.site-footer a:hover{color:#ef83b6 !important}

/* Decorative gradients / borders */
.gradient-text{
  background:linear-gradient(90deg,#5b2bd9,#ef3f8f) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
}
.accent-line,.accent-dot{
  background:#7b35e8 !important;
}
.accent-gradient{
  background:linear-gradient(90deg,#7b35e8,#ef3f8f) !important;
}

/* Remove leftover gold/lime/cyan variables wherever variable-based */
:where(.about-page,.services-page,.portfolio-page,.pricing-page,.blog-page,.contact-page,.site-main){
  --lime:#7b35e8 !important;
  --gold:#7b35e8 !important;
  --orange:#7b35e8 !important;
  --cyan:#7b35e8 !important;
}

/* Preserve hero V4.7 animation but use unified colors */
.hero-v43-showcase:before{
  background:radial-gradient(circle,rgba(123,53,232,.42),rgba(239,63,143,.15) 44%,transparent 72%) !important;
}
.old-orbit{border-color:rgba(123,53,232,.28) !important}
.old-orbit-1:before{background:#ef3f8f !important;box-shadow:0 0 18px rgba(239,63,143,.55) !important}
.old-orbit-2{border-color:rgba(239,63,143,.34) !important}
.old-orbit-2:before{background:#7b35e8 !important}

::selection{background:#7b35e8 !important;color:#fff !important}


/* =========================================================
   V5.0 — PURPLE / LAVENDER SYSTEM, NO YELLOW / ORANGE
   ========================================================= */

:root{
  --brand-purple:#7c3aed !important;
  --brand-violet:#8b5cf6 !important;
  --brand-lavender:#a78bfa !important;
  --brand-soft:#f3eeff !important;
  --brand-soft-2:#faf8ff !important;
  --brand-deep:#21113f !important;
  --brand-deeper:#170d2d !important;
  --brand-ink:#111111 !important;
  --brand-muted:#6e6877 !important;
  --brand-line:#e8dff7 !important;

  --accent:#8b5cf6 !important;
  --accent-2:#a78bfa !important;
  --ds-accent:#8b5cf6 !important;
  --ds-accent-2:#a78bfa !important;
}

/* Header CTA */
.header-cta,
.btn-primary,
.primary-button,
.cta-button,
.wp-element-button,
input[type="submit"],
button[type="submit"]{
  background:linear-gradient(135deg,#7c3aed 0%,#8b5cf6 58%,#a78bfa 100%) !important;
  color:#fff !important;
  border-color:transparent !important;
  box-shadow:0 10px 26px rgba(124,58,237,.22) !important;
}

/* Pills / labels */
.hero-rating,
.eyebrow,
.kicker,
.section-kicker,
.card-kicker,
.meta-label,
.capability-label,
.why-label,
.badge,
.tag{
  background:#f3eeff !important;
  color:#7c3aed !important;
  border-color:#e2d7fb !important;
}

.hero-rating:before,
.eyebrow:before,
.kicker:before,
.section-kicker:before,
.accent-dot{
  background:#8b5cf6 !important;
}

/* Hero / capability strip */
.proof-strip,
.capability-shell,
.dark-section,
.about-dark,
.services-dark,
.portfolio-dark,
.pricing-dark,
.contact-dark{
  background:
    radial-gradient(circle at 85% 20%,rgba(139,92,246,.20),transparent 28%),
    linear-gradient(135deg,#241049 0%,#1c1036 58%,#150b2b 100%) !important;
  color:#fff !important;
}

/* Accent text */
.text-accent,
.accent-text,
.gradient-text,
.hero-v43 h1 em,
.hero-v43 h1 strong{
  color:#8b5cf6 !important;
}
.gradient-text{
  background:linear-gradient(90deg,#7c3aed,#a78bfa) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
}

/* Cards */
.card,
.service-card,
.portfolio-card,
.project-card,
.process-card,
.pricing-card,
.price-card,
.blog-card,
.contact-card,
.stat-card,
.value-card,
.capability-card,
.feature-card,
.proof-card,
.info-card{
  border-color:#e8dff7 !important;
  box-shadow:0 14px 38px rgba(76,29,149,.06) !important;
}

.card:hover,
.service-card:hover,
.portfolio-card:hover,
.project-card:hover,
.pricing-card:hover,
.blog-card:hover{
  border-color:#c9b5f4 !important;
  box-shadow:0 20px 48px rgba(124,58,237,.12) !important;
}

/* Decorative card glow */
.value-card:after,
.feature-card:after,
.service-card:after,
.process-card:after{
  background:radial-gradient(circle,#ede5ff 0%,rgba(237,229,255,.55) 35%,transparent 72%) !important;
}

/* Buttons hover */
.header-cta:hover,
.btn-primary:hover,
.primary-button:hover,
.cta-button:hover,
.wp-element-button:hover,
input[type="submit"]:hover,
button[type="submit"]:hover{
  background:#21113f !important;
  color:#fff !important;
}

/* CTA sections */
.cta-section,.home-cta,.cta-band,.page-cta,
.about-cta,.services-cta,.portfolio-cta,.pricing-cta,.contact-cta{
  background:linear-gradient(120deg,#6d28d9 0%,#8b5cf6 58%,#a78bfa 100%) !important;
  color:#fff !important;
}

/* Hero animation colors */
.hero-v43-showcase:before{
  background:radial-gradient(circle,
    rgba(139,92,246,.42) 0%,
    rgba(167,139,250,.18) 44%,
    transparent 72%) !important;
}
.old-orbit{border-color:rgba(139,92,246,.30) !important}
.old-orbit-1:before{
  background:#a78bfa !important;
  box-shadow:0 0 18px rgba(167,139,250,.58) !important;
}
.old-orbit-2{
  border-color:rgba(167,139,250,.38) !important;
}
.old-orbit-2:before{
  background:#8b5cf6 !important;
}

/* Dashboard */
.showcase-main{
  background:
    radial-gradient(circle at 76% 20%,rgba(139,92,246,.22),transparent 27%),
    radial-gradient(circle at 20% 80%,rgba(167,139,250,.15),transparent 32%),
    linear-gradient(145deg,#21113f 0%,#160c2b 62%,#10081f 100%) !important;
}
.showcase-main:after,
.showcase-badge{
  background:linear-gradient(135deg,#7c3aed,#a78bfa) !important;
}

/* Explicitly neutralize legacy yellow / orange accent classes */
.yellow,
.orange,
.gold,
.bg-yellow,
.bg-orange,
.bg-gold,
.text-yellow,
.text-orange,
.text-gold,
.accent-yellow,
.accent-orange{
  background:#8b5cf6 !important;
  color:#fff !important;
  border-color:#8b5cf6 !important;
}

/* Bottom bands / highlight strips */
.bottom-band,
.highlight-strip,
.accent-strip,
.section-bar{
  background:linear-gradient(90deg,#7c3aed,#a78bfa) !important;
}

/* Pricing featured */
.pricing-card.featured,
.price-card.featured,
.pricing-card.is-featured{
  background:linear-gradient(145deg,#271349,#1a0d31) !important;
  border-color:#8b5cf6 !important;
}

/* Footer remains deep purple */
.site-footer{
  background:#170d2d !important;
}
.site-footer a:hover{
  color:#a78bfa !important;
}

::selection{
  background:#8b5cf6 !important;
  color:#fff !important;
}


/* =========================================================
   V5.1 — REMOVE REMAINING YELLOW / ORANGE
   Header CTA + large CTA banner + legacy hard-coded accents
   ========================================================= */

/* Header button — exact final override */
.site-header .header-cta,
.header-inner .header-cta,
.site-header a.header-cta,
.header-actions a,
.header-actions .btn,
.nav-cta,
.start-project-btn{
  background:#8b5cf6 !important;
  background-image:linear-gradient(135deg,#7c3aed 0%,#8b5cf6 58%,#a78bfa 100%) !important;
  border-color:transparent !important;
  color:#fff !important;
  box-shadow:0 10px 28px rgba(124,58,237,.24) !important;
}
.site-header .header-cta:hover,
.header-inner .header-cta:hover,
.site-header a.header-cta:hover,
.header-actions a:hover,
.nav-cta:hover,
.start-project-btn:hover{
  background:#21113f !important;
  background-image:none !important;
  color:#fff !important;
}

/* Big bottom CTA/banner — exact final override */
.cta-section,
.home-cta,
.cta-band,
.page-cta,
.about-cta,
.services-cta,
.portfolio-cta,
.pricing-cta,
.contact-cta,
.final-cta,
.closing-cta,
.project-cta,
.cta-panel,
.cta-shell{
  background:#7c3aed !important;
  background-image:
    radial-gradient(circle at 92% 12%,rgba(255,255,255,.14) 0 11%,transparent 11.5%),
    radial-gradient(circle at 92% 12%,transparent 0 17%,rgba(167,139,250,.24) 17.5% 22%,transparent 22.5%),
    linear-gradient(120deg,#6d28d9 0%,#8b5cf6 62%,#a78bfa 100%) !important;
  border-color:rgba(124,58,237,.25) !important;
}

/* Common class names used by the theme for home CTA */
.homepage-cta,
.home-final-cta,
.build-cta,
.contact-banner{
  background:#7c3aed !important;
  background-image:linear-gradient(120deg,#6d28d9,#8b5cf6 62%,#a78bfa) !important;
  color:#fff !important;
}

/* CTA text */
.cta-section h1,.cta-section h2,.cta-section h3,.cta-section p,
.home-cta h1,.home-cta h2,.home-cta h3,.home-cta p,
.cta-band h1,.cta-band h2,.cta-band h3,.cta-band p,
.page-cta h1,.page-cta h2,.page-cta h3,.page-cta p,
.final-cta h1,.final-cta h2,.final-cta h3,.final-cta p,
.closing-cta h1,.closing-cta h2,.closing-cta h3,.closing-cta p,
.project-cta h1,.project-cta h2,.project-cta h3,.project-cta p,
.cta-panel h1,.cta-panel h2,.cta-panel h3,.cta-panel p{
  color:#fff !important;
}

/* CTA small pill */
.cta-section .eyebrow,
.home-cta .eyebrow,
.cta-band .eyebrow,
.page-cta .eyebrow,
.final-cta .eyebrow,
.project-cta .eyebrow,
.cta-panel .eyebrow{
  background:rgba(255,255,255,.14) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.30) !important;
}

/* CTA inner dark/email button */
.cta-section .btn,
.home-cta .btn,
.cta-band .btn,
.page-cta .btn,
.final-cta .btn,
.project-cta .btn,
.cta-panel .btn{
  background:#170d2d !important;
  background-image:none !important;
  color:#fff !important;
  border-color:#170d2d !important;
}

/* Last-resort legacy color variables */
:root{
  --yellow:#8b5cf6 !important;
  --orange:#8b5cf6 !important;
  --gold:#8b5cf6 !important;
  --lime:#8b5cf6 !important;
}


/* =========================================================
   V5.2 — HEADER FIX
   Cleaner proportions, smaller logo, stable sticky spacing.
   ========================================================= */

.site-header{
  position:sticky !important;
  top:12px !important;
  z-index:9999 !important;
  width:calc(100% - 64px) !important;
  max-width:1280px !important;
  margin:12px auto 0 !important;
  padding:0 !important;
  background:rgba(255,255,255,.96) !important;
  border:1px solid #e8e3ee !important;
  border-radius:18px !important;
  box-shadow:0 12px 36px rgba(33,17,63,.10) !important;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}

.site-header .header-inner,
.site-header .container,
.site-header .header-container{
  min-height:72px !important;
  height:72px !important;
  max-width:none !important;
  width:100% !important;
  margin:0 !important;
  padding:0 28px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:28px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Logo no longer dominates header */
.site-branding,
.header-logo,
.custom-logo-link{
  flex:0 0 auto !important;
  display:flex !important;
  align-items:center !important;
  margin:0 !important;
}
.site-header .custom-logo,
.site-header .header-logo img,
.site-header .site-branding img,
.site-header .custom-logo-link img{
  display:block !important;
  width:auto !important;
  height:54px !important;
  max-height:54px !important;
  max-width:145px !important;
  object-fit:contain !important;
  margin:0 !important;
}

/* Navigation properly centered */
.site-header .main-nav,
.site-header nav{
  flex:1 1 auto !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  margin:0 !important;
}
.site-header .main-nav ul,
.site-header nav ul{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:30px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
.site-header .main-nav a,
.site-header nav ul a{
  display:inline-flex !important;
  align-items:center !important;
  min-height:40px !important;
  padding:0 !important;
  color:#17131f !important;
  font-size:14px !important;
  font-weight:500 !important;
  line-height:1 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}
.site-header .main-nav a:hover,
.site-header nav ul a:hover,
.site-header .current-menu-item > a{
  color:#7c3aed !important;
}

/* CTA balanced with header */
.site-header .header-cta,
.site-header a.header-cta,
.site-header .nav-cta,
.site-header .start-project-btn{
  flex:0 0 auto !important;
  min-width:154px !important;
  height:50px !important;
  padding:0 24px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#7c3aed,#8b5cf6 62%,#a78bfa) !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:700 !important;
  line-height:1 !important;
  box-shadow:0 10px 24px rgba(124,58,237,.22) !important;
}

/* Keep hero clear of sticky header */
.site-main,
main{
  scroll-margin-top:105px;
}

/* Tablet */
@media(max-width:1050px){
  .site-header{
    width:calc(100% - 32px) !important;
  }
  .site-header .header-inner,
  .site-header .container,
  .site-header .header-container{
    padding:0 20px !important;
    gap:18px !important;
  }
  .site-header .main-nav ul,
  .site-header nav ul{
    gap:18px !important;
  }
  .site-header .main-nav a,
  .site-header nav ul a{
    font-size:13px !important;
  }
  .site-header .header-cta,
  .site-header a.header-cta{
    min-width:138px !important;
    padding:0 18px !important;
  }
}

/* Mobile: do not force desktop nav layout */
@media(max-width:820px){
  .site-header{
    top:8px !important;
    width:calc(100% - 20px) !important;
    margin-top:8px !important;
    border-radius:16px !important;
  }
  .site-header .header-inner,
  .site-header .container,
  .site-header .header-container{
    height:64px !important;
    min-height:64px !important;
    padding:0 16px !important;
  }
  .site-header .custom-logo,
  .site-header .header-logo img,
  .site-header .site-branding img,
  .site-header .custom-logo-link img{
    height:46px !important;
    max-height:46px !important;
    max-width:122px !important;
  }
  .site-header .main-nav{
    display:none !important;
  }
}


/* =========================================================
   V5.3 — HEADER CENTER POSITION FIX
   Removes old left:50% + translateX(-50%) conflict.
   ========================================================= */
html, body{
  overflow-x:hidden;
}

.site-header,
header.site-header{
  position:sticky !important;
  top:12px !important;
  left:auto !important;
  right:auto !important;
  transform:none !important;
  width:calc(100% - 64px) !important;
  max-width:1280px !important;
  height:auto !important;
  margin:12px auto 0 !important;
  box-sizing:border-box !important;
}

.site-header .container.header-inner{
  width:100% !important;
  max-width:100% !important;
  height:72px !important;
  min-height:72px !important;
  margin:0 !important;
  padding:0 28px !important;
  box-sizing:border-box !important;
  display:grid !important;
  grid-template-columns:150px minmax(0,1fr) 170px !important;
  align-items:center !important;
  column-gap:24px !important;
}

/* Actual logo classes used in header.php */
.site-header .logo.ds360-logo-link{
  width:150px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  padding:0 !important;
  margin:0 !important;
}
.site-header .ds360-header-logo{
  width:auto !important;
  height:54px !important;
  max-width:120px !important;
  max-height:54px !important;
  object-fit:contain !important;
  display:block !important;
}

/* Actual nav is direct links, not UL */
.site-header nav.nav{
  width:100% !important;
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:26px !important;
  position:static !important;
  transform:none !important;
}
.site-header nav.nav > a:not(.btn){
  width:auto !important;
  flex:0 0 auto !important;
  padding:10px 0 !important;
  margin:0 !important;
  font-size:13px !important;
  color:#17131f !important;
}

/* Right CTA */
.site-header .header-actions{
  width:170px !important;
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
}
.site-header .header-actions .header-cta{
  min-width:154px !important;
  height:50px !important;
  margin:0 !important;
}

/* Desktop/tablet responsive */
@media(max-width:1100px){
  .site-header,
  header.site-header{
    width:calc(100% - 32px) !important;
  }
  .site-header .container.header-inner{
    grid-template-columns:125px minmax(0,1fr) 150px !important;
    padding:0 20px !important;
    column-gap:16px !important;
  }
  .site-header nav.nav{
    gap:16px !important;
  }
  .site-header nav.nav > a:not(.btn){
    font-size:12px !important;
  }
  .site-header .header-actions{
    width:150px !important;
  }
  .site-header .header-actions .header-cta{
    min-width:140px !important;
    padding:0 16px !important;
  }
}

@media(max-width:950px){
  .site-header,
  header.site-header{
    width:calc(100% - 20px) !important;
    top:8px !important;
    margin-top:8px !important;
  }
  .site-header .container.header-inner{
    display:flex !important;
    height:64px !important;
    min-height:64px !important;
    justify-content:space-between !important;
  }
  .site-header nav.nav{
    display:none !important;
  }
  .site-header .header-actions{
    width:auto !important;
  }
}


/* =========================================================
   V5.4 — HERO TOP GAP FIX
   Header is now in normal sticky flow, so old 148px hero
   top padding created excessive whitespace.
   ========================================================= */

.hero.hero-v43,
.hero-v43{
  padding-top:58px !important;
  padding-bottom:42px !important;
}

.hero-v43-grid{
  align-items:center !important;
}

@media(max-width:1000px){
  .hero.hero-v43,
  .hero-v43{
    padding-top:46px !important;
  }
}

@media(max-width:620px){
  .hero.hero-v43,
  .hero-v43{
    padding-top:34px !important;
    padding-bottom:28px !important;
  }
}


/* =========================================================
   V5.5 — FUTURISTIC ANIMATED WHITE + BLUE HERO
   ========================================================= */

:root{
  --v55-blue:#1267f4;
  --v55-blue2:#2b8cff;
  --v55-cyan:#20c7ff;
  --v55-indigo:#3347d7;
  --v55-violet:#7047ff;
  --v55-ink:#0c1740;
  --v55-muted:#5e6980;
  --v55-line:#dbe6ff;
  --v55-soft:#f6f9ff;
}

.hero-v55{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 35%,rgba(43,140,255,.10),transparent 23%),
    radial-gradient(circle at 66% 68%,rgba(112,71,255,.08),transparent 25%),
    #fff !important;
  padding:56px 0 30px !important;
}

.hero-v55:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(18,103,244,.025) 1px, transparent 1px),
    linear-gradient(90deg,rgba(18,103,244,.025) 1px, transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image:linear-gradient(to bottom,transparent,black 18%,black 78%,transparent);
  mask-image:linear-gradient(to bottom,transparent,black 18%,black 78%,transparent);
}

.hero-v55-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(540px,1.12fr);
  align-items:center;
  gap:48px;
}

.hero-v55-copy{
  position:relative;
  z-index:5;
  max-width:610px;
}

.hero-v55-trust{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:9px 14px;
  border:1px solid #dbe6ff;
  border-radius:999px;
  background:rgba(246,249,255,.92);
  color:#1454c6;
  text-transform:uppercase;
  font-size:12px;
  font-weight:800;
  letter-spacing:.09em;
  box-shadow:0 8px 24px rgba(18,103,244,.08);
  margin-bottom:24px;
}

.hero-v55-trust .trust-star{
  color:var(--v55-cyan);
  font-size:16px;
}

.hero-v55 h1{
  margin:0;
  color:var(--v55-ink) !important;
  font-size:clamp(64px,6vw,96px);
  line-height:.92;
  letter-spacing:-.065em;
  font-weight:850;
}

.hero-v55 h1 span{
  display:inline-block;
  background:linear-gradient(90deg,#1267f4 0%,#2b8cff 42%,#7047ff 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent !important;
}

.hero-v55-lead{
  max-width:590px;
  margin:28px 0 0;
  color:var(--v55-muted) !important;
  font-size:17px;
  line-height:1.72;
}

.hero-v55-actions{
  display:flex;
  align-items:center;
  gap:26px;
  margin-top:30px;
  flex-wrap:wrap;
}

.hero-v55-primary{
  min-height:58px;
  padding:0 24px !important;
  border-radius:18px !important;
  background:linear-gradient(135deg,#135bea,#167cff 58%,#6547ff 100%) !important;
  color:#fff !important;
  box-shadow:0 16px 34px rgba(18,103,244,.24) !important;
  gap:10px;
  animation:v55ButtonGlow 3.8s ease-in-out infinite;
}

.hero-v55-primary .btn-icon{
  font-size:16px;
}
.hero-v55-primary .btn-arrow{
  font-size:18px;
  margin-left:2px;
}

.hero-v55-contact{
  display:flex;
  align-items:center;
  gap:13px;
  color:var(--v55-ink);
}
.hero-v55-contact .contact-icon{
  width:48px;
  height:48px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,#f8fbff,#eaf2ff);
  color:#1267f4;
  border:1px solid #dfe9ff;
  box-shadow:0 10px 28px rgba(26,92,210,.12);
  font-size:22px;
}
.hero-v55-contact small{
  display:block;
  color:#6e7890;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-size:10px;
  margin-bottom:3px;
}
.hero-v55-contact strong{
  font-size:16px;
  color:var(--v55-ink);
}

/* Futuristic visual */
.hero-v55-visual{
  position:relative;
  min-height:610px;
  isolation:isolate;
}

.future-map{
  position:absolute;
  inset:40px 0 0 80px;
  opacity:.24;
  background:
    radial-gradient(circle at 30% 30%,rgba(18,103,244,.55) 0 1px,transparent 1.5px) 0 0/12px 12px,
    linear-gradient(135deg,rgba(18,103,244,.08),rgba(112,71,255,.03));
  -webkit-mask-image:radial-gradient(ellipse at center,black 30%,transparent 76%);
  mask-image:radial-gradient(ellipse at center,black 30%,transparent 76%);
  transform:perspective(900px) rotateX(62deg) rotateZ(-4deg);
  border-radius:50%;
  filter:blur(.1px);
}

.future-globe{
  position:absolute;
  width:330px;
  height:330px;
  left:50%;
  top:38%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  z-index:4;
  animation:v55Float 5.2s ease-in-out infinite;
}

.globe-core{
  position:absolute;
  inset:0;
  border-radius:50%;
  overflow:hidden;
  background:
    radial-gradient(circle at 32% 24%,rgba(255,255,255,.95),rgba(255,255,255,.1) 14%,transparent 30%),
    radial-gradient(circle at 65% 65%,rgba(32,199,255,.50),transparent 30%),
    radial-gradient(circle at 48% 54%,#1838a9 0%,#10286f 42%,#091844 72%,#06102e 100%);
  box-shadow:
    inset -24px -28px 70px rgba(0,0,0,.25),
    inset 18px 18px 55px rgba(42,156,255,.28),
    0 0 0 1px rgba(43,140,255,.45),
    0 0 42px rgba(43,140,255,.38),
    0 38px 70px rgba(16,40,112,.18);
}

.globe-core:before,
.globe-core:after{
  content:"";
  position:absolute;
  inset:12%;
  border-radius:50%;
  border:1px solid rgba(93,182,255,.55);
}
.globe-core:before{
  transform:rotate(62deg);
  box-shadow:0 0 18px rgba(32,199,255,.18);
}
.globe-core:after{
  transform:rotate(-34deg) scaleX(.65);
}

.globe-lines{
  position:absolute;
  inset:0;
  border-radius:50%;
  opacity:.48;
  background:
    repeating-radial-gradient(ellipse at center,transparent 0 23px,rgba(71,172,255,.34) 24px 25px),
    repeating-linear-gradient(90deg,transparent 0 33px,rgba(89,178,255,.18) 34px 35px);
}
.globe-lines-a{animation:v55Spin 18s linear infinite}
.globe-lines-b{
  transform:rotate(90deg);
  opacity:.25;
  animation:v55SpinReverse 24s linear infinite;
}

.globe-shine{
  position:absolute;
  width:46%;
  height:70%;
  left:10%;
  top:5%;
  border-radius:50%;
  background:linear-gradient(100deg,rgba(255,255,255,.20),transparent 62%);
  filter:blur(7px);
  transform:rotate(20deg);
}

.globe-label{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#fff;
  text-shadow:0 2px 18px rgba(0,0,0,.35);
}
.globe-label strong{
  font-size:50px;
  line-height:1;
  letter-spacing:-.05em;
}
.globe-label small{
  margin-top:8px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  opacity:.86;
}

/* Orbit rings */
.future-orbit{
  position:absolute;
  left:50%;
  top:38%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:1px solid rgba(18,103,244,.35);
  z-index:3;
}
.future-orbit i{
  position:absolute;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#20c7ff;
  box-shadow:0 0 18px rgba(32,199,255,.9);
}
.orbit-a{
  width:450px;height:270px;
  animation:v55OrbitA 11s linear infinite;
}
.orbit-a i{top:15px;left:70%}
.orbit-b{
  width:390px;height:420px;
  transform:translate(-50%,-50%) rotate(48deg);
  animation:v55OrbitB 15s linear infinite;
}
.orbit-b i{top:50%;right:-5px}
.orbit-c{
  width:520px;height:180px;
  transform:translate(-50%,-50%) rotate(-13deg);
  border-color:rgba(112,71,255,.28);
  animation:v55OrbitC 13s linear infinite;
}
.orbit-c i{bottom:18px;left:23%;background:#7047ff}

/* Platform */
.future-platform{
  position:absolute;
  left:50%;
  bottom:38px;
  width:560px;
  height:180px;
  transform:translateX(-50%);
  z-index:2;
  perspective:700px;
}
.platform-ring{
  position:absolute;
  left:50%;
  top:50%;
  border-radius:50%;
  transform:translate(-50%,-50%) rotateX(67deg);
}
.ring-1{
  width:530px;height:220px;
  border:2px solid rgba(18,103,244,.28);
  box-shadow:0 0 40px rgba(18,103,244,.10);
  animation:v55PulseRing 4.6s ease-in-out infinite;
}
.ring-2{
  width:390px;height:150px;
  border:8px solid rgba(43,140,255,.20);
  box-shadow:0 0 40px rgba(43,140,255,.20), inset 0 0 30px rgba(43,140,255,.12);
}
.ring-3{
  width:250px;height:90px;
  border:9px solid rgba(112,71,255,.22);
  box-shadow:0 0 36px rgba(112,71,255,.22);
}
.platform-light{
  position:absolute;
  left:50%;
  top:37%;
  width:86px;
  height:86px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle,#fff 0%,#8edfff 22%,rgba(32,199,255,.75) 38%,rgba(18,103,244,.15) 65%,transparent 72%);
  filter:blur(2px);
  animation:v55PlatformGlow 2.8s ease-in-out infinite;
}

/* Service cards */
.future-card{
  position:absolute;
  z-index:8;
  width:218px;
  min-height:88px;
  display:flex;
  align-items:center;
  gap:13px;
  padding:16px 17px;
  background:rgba(255,255,255,.90);
  border:1px solid rgba(201,217,250,.88);
  border-radius:18px;
  box-shadow:0 18px 48px rgba(23,60,142,.13);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  animation:v55CardFloat 5.8s ease-in-out infinite;
}
.future-card .future-icon{
  flex:0 0 42px;
  width:42px;height:42px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:linear-gradient(145deg,#edf5ff,#e5ebff);
  color:#1267f4;
  font-weight:900;
  border:1px solid #dce8ff;
  box-shadow:inset 0 0 16px rgba(43,140,255,.10);
}
.future-card strong{
  display:block;
  color:#0c1740;
  font-size:13px;
}
.future-card small{
  display:block;
  margin-top:5px;
  color:#707a90;
  font-size:11px;
  line-height:1.35;
}

.fc-web{left:1%;top:12%}
.fc-brand{left:-2%;top:54%;animation-delay:-1.6s}
.fc-marketing{right:-1%;top:16%;animation-delay:-2.4s}
.fc-growth{right:-3%;top:58%;animation-delay:-3.2s}

/* Ambient dots */
.future-dot{
  position:absolute;
  width:7px;height:7px;border-radius:50%;
  background:#2b8cff;
  box-shadow:0 0 16px rgba(43,140,255,.8);
  z-index:6;
  animation:v55Dot 3s ease-in-out infinite;
}
.dot-1{left:20%;top:25%}
.dot-2{left:12%;top:44%;animation-delay:-.8s}
.dot-3{right:16%;top:35%;animation-delay:-1.3s}
.dot-4{right:10%;top:52%;animation-delay:-1.9s}
.dot-5{left:58%;top:8%;animation-delay:-2.4s}

/* Bottom feature strip */
.hero-v55-features{
  position:relative;
  z-index:5;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-top:16px;
  border:1px solid #e1e9fb;
  border-radius:22px;
  background:rgba(255,255,255,.94);
  box-shadow:0 16px 48px rgba(34,71,144,.08);
  overflow:hidden;
}
.v55-feature{
  display:flex;
  gap:15px;
  align-items:center;
  padding:24px 22px;
  min-height:118px;
  position:relative;
}
.v55-feature:not(:last-child):after{
  content:"";
  position:absolute;
  right:0;
  top:24px;
  bottom:24px;
  width:1px;
  background:#e6ecf8;
}
.v55-feature-icon{
  flex:0 0 48px;
  width:48px;height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:linear-gradient(145deg,#f5f8ff,#ebf1ff);
  border:1px solid #dde7ff;
  color:#1267f4;
  font-weight:900;
  font-size:19px;
}
.v55-feature strong{
  display:block;
  font-size:14px;
  color:#0d183b;
}
.v55-feature small{
  display:block;
  margin-top:5px;
  color:#6f788e;
  line-height:1.5;
  font-size:12px;
}

/* Animations */
@keyframes v55Float{
  0%,100%{transform:translate(-50%,-50%) translateY(0)}
  50%{transform:translate(-50%,-50%) translateY(-14px)}
}
@keyframes v55Spin{to{transform:rotate(360deg)}}
@keyframes v55SpinReverse{to{transform:rotate(-360deg)}}
@keyframes v55OrbitA{
  to{transform:translate(-50%,-50%) rotate(360deg)}
}
@keyframes v55OrbitB{
  to{transform:translate(-50%,-50%) rotate(408deg)}
}
@keyframes v55OrbitC{
  to{transform:translate(-50%,-50%) rotate(347deg)}
}
@keyframes v55CardFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-10px)}
}
@keyframes v55Dot{
  0%,100%{transform:scale(.72);opacity:.45}
  50%{transform:scale(1.28);opacity:1}
}
@keyframes v55PulseRing{
  0%,100%{opacity:.55;transform:translate(-50%,-50%) rotateX(67deg) scale(.97)}
  50%{opacity:1;transform:translate(-50%,-50%) rotateX(67deg) scale(1.03)}
}
@keyframes v55PlatformGlow{
  0%,100%{opacity:.72;transform:translate(-50%,-50%) scale(.92)}
  50%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}
}
@keyframes v55ButtonGlow{
  0%,100%{box-shadow:0 16px 34px rgba(18,103,244,.22)}
  50%{box-shadow:0 18px 42px rgba(78,71,255,.34)}
}

/* subtle entrance */
.hero-v55-trust,
.hero-v55 h1,
.hero-v55-lead,
.hero-v55-actions{
  opacity:0;
  animation:v55Reveal .7s cubic-bezier(.2,.7,.2,1) forwards;
}
.hero-v55 h1{animation-delay:.08s}
.hero-v55-lead{animation-delay:.18s}
.hero-v55-actions{animation-delay:.28s}
.hero-v55-visual{
  opacity:0;
  animation:v55VisualIn .9s cubic-bezier(.2,.7,.2,1) .18s forwards;
}
.hero-v55-features{
  opacity:0;
  animation:v55Reveal .7s ease .45s forwards;
}
@keyframes v55Reveal{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes v55VisualIn{
  from{opacity:0;transform:translateX(30px) scale(.98)}
  to{opacity:1;transform:translateX(0) scale(1)}
}

@media(max-width:1180px){
  .hero-v55-grid{
    grid-template-columns:1fr 1fr;
    gap:26px;
  }
  .hero-v55 h1{font-size:clamp(56px,6vw,78px)}
  .hero-v55-visual{transform:scale(.88);transform-origin:center right}
}

@media(max-width:980px){
  .hero-v55-grid{grid-template-columns:1fr}
  .hero-v55-copy{max-width:760px}
  .hero-v55 h1{font-size:clamp(56px,10vw,86px)}
  .hero-v55-visual{
    width:100%;
    max-width:760px;
    margin:0 auto;
    transform:none;
  }
  .hero-v55-features{grid-template-columns:repeat(2,1fr)}
  .v55-feature:nth-child(2):after{display:none}
}

@media(max-width:650px){
  .hero-v55{padding-top:34px !important}
  .hero-v55 h1{font-size:52px}
  .hero-v55-lead{font-size:15px}
  .hero-v55-actions{align-items:flex-start}
  .hero-v55-visual{
    min-height:520px;
    transform:scale(.78);
    transform-origin:top center;
    margin-bottom:-95px;
  }
  .future-card{width:190px}
  .fc-web{left:-7%}
  .fc-brand{left:-10%}
  .fc-marketing{right:-8%}
  .fc-growth{right:-11%}
  .hero-v55-features{grid-template-columns:1fr}
  .v55-feature:not(:last-child):after{
    left:22px;right:22px;top:auto;bottom:0;width:auto;height:1px;
  }
}

@media(prefers-reduced-motion:reduce){
  .hero-v55 *,
  .hero-v55 *:before,
  .hero-v55 *:after{
    animation:none !important;
    transition:none !important;
  }
  .hero-v55-trust,
  .hero-v55 h1,
  .hero-v55-lead,
  .hero-v55-actions,
  .hero-v55-visual,
  .hero-v55-features{
    opacity:1 !important;
    transform:none !important;
  }
}


/* =========================================================
   V5.6 — HERO REFINEMENT TO MATCH APPROVED REFERENCE
   White background, stronger blue futuristic visual,
   cleaner spacing, no number/stat strip.
   ========================================================= */

/* Kill old hero decorative blobs / legacy colors */
.hero-v55::before{
  background-image:
    radial-gradient(circle at 76% 34%, rgba(26,128,255,.075), transparent 28%),
    radial-gradient(circle at 84% 64%, rgba(98,84,255,.055), transparent 26%) !important;
  -webkit-mask-image:none !important;
  mask-image:none !important;
}
.hero-v55::after{
  content:none !important;
}
.hero-v55 .hero-stats,
.hero-v55 .hero-v43-stats,
.hero-v55 .stats-row,
.hero-v55 .stats-strip{
  display:none !important;
}

/* Overall hero spacing closer to approved screenshot */
.hero-v55{
  min-height:auto !important;
  padding:54px 0 26px !important;
  background:#fff !important;
}
.hero-v55-grid{
  max-width:1320px !important;
  margin:0 auto !important;
  grid-template-columns:minmax(500px,.9fr) minmax(620px,1.1fr) !important;
  gap:46px !important;
  align-items:center !important;
}
.hero-v55-copy{
  max-width:620px !important;
  padding-left:0 !important;
}

/* Trust pill */
.hero-v55-trust{
  margin-bottom:26px !important;
  padding:10px 15px !important;
  border-radius:999px !important;
  background:#f5f9ff !important;
  border:1px solid #d9e7ff !important;
  color:#1264d9 !important;
  box-shadow:0 10px 24px rgba(27,91,202,.08) !important;
}

/* Headline exactly closer to target proportions */
.hero-v55 h1{
  font-size:clamp(62px,5.7vw,88px) !important;
  line-height:.93 !important;
  letter-spacing:-.055em !important;
  max-width:610px !important;
  color:#0a163c !important;
}
.hero-v55 h1 span{
  background:linear-gradient(90deg,#1d71ff 0%,#4f83ff 42%,#7558ff 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
}
.hero-v55-lead{
  margin-top:26px !important;
  max-width:590px !important;
  font-size:17px !important;
  line-height:1.72 !important;
  color:#5d687f !important;
}

/* CTA row */
.hero-v55-actions{
  margin-top:30px !important;
  gap:24px !important;
}
.hero-v55-primary{
  min-height:58px !important;
  padding:0 26px !important;
  border-radius:18px !important;
  background:linear-gradient(135deg,#1469f6 0%,#205bff 55%,#744bff 100%) !important;
  box-shadow:0 15px 34px rgba(44,96,232,.24) !important;
}
.hero-v55-contact .contact-icon{
  width:50px !important;
  height:50px !important;
  border-radius:14px !important;
  background:#f4f8ff !important;
  color:#1469f6 !important;
  border-color:#dbe7ff !important;
}

/* =========================================
   RIGHT VISUAL — MORE IMPRESSIVE / READABLE
   ========================================= */
.hero-v55-visual{
  min-height:590px !important;
  overflow:visible !important;
  filter:none !important;
}

/* soft technical halo instead of washed-out yellow/green */
.hero-v55-visual::before{
  content:"";
  position:absolute;
  width:620px;
  height:500px;
  left:50%;
  top:45%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:
    radial-gradient(circle at center, rgba(37,129,255,.12) 0%, rgba(56,121,255,.06) 36%, transparent 69%);
  filter:blur(2px);
  z-index:0;
  pointer-events:none;
}

/* subtle dotted world-tech field */
.future-map{
  inset:44px 8px 20px 50px !important;
  opacity:.36 !important;
  transform:none !important;
  border-radius:48% !important;
  background:
    radial-gradient(circle, rgba(45,116,255,.26) 1px, transparent 1.35px) 0 0/11px 11px,
    radial-gradient(circle at 50% 50%, rgba(51,136,255,.08), transparent 68%) !important;
  -webkit-mask-image:radial-gradient(ellipse at center, black 35%, transparent 80%) !important;
  mask-image:radial-gradient(ellipse at center, black 35%, transparent 80%) !important;
}

/* Main globe */
.future-globe{
  width:340px !important;
  height:340px !important;
  top:42% !important;
  z-index:6 !important;
}
.globe-core{
  background:
    radial-gradient(circle at 32% 22%,rgba(255,255,255,.58),transparent 16%),
    radial-gradient(circle at 62% 64%,rgba(43,194,255,.38),transparent 28%),
    radial-gradient(circle at 48% 52%,#0d358f 0%,#0b2b78 43%,#071c54 74%,#061338 100%) !important;
  box-shadow:
    inset -24px -28px 68px rgba(0,0,0,.28),
    inset 18px 18px 48px rgba(56,152,255,.28),
    0 0 0 1px rgba(55,144,255,.55),
    0 0 30px rgba(43,137,255,.34),
    0 28px 58px rgba(24,58,135,.22) !important;
}

/* longitude / latitude layers */
.globe-lines{
  background:
    repeating-radial-gradient(ellipse at center,
      transparent 0 25px,
      rgba(93,183,255,.26) 26px 27px),
    repeating-linear-gradient(90deg,
      transparent 0 35px,
      rgba(89,178,255,.16) 36px 37px) !important;
}

/* add abstract "continent" lights without an image */
.globe-core .globe-shine::before,
.globe-core .globe-shine::after{
  content:"";
  position:absolute;
  background:rgba(83,180,255,.52);
  filter:drop-shadow(0 0 8px rgba(57,157,255,.35));
}
.globe-core .globe-shine::before{
  width:92px;height:138px;
  left:62px;top:105px;
  clip-path:polygon(28% 0,55% 8%,75% 23%,66% 41%,88% 57%,72% 72%,53% 66%,43% 89%,22% 74%,11% 52%,0 37%,13% 19%);
  transform:rotate(-8deg);
}
.globe-core .globe-shine::after{
  width:120px;height:118px;
  right:48px;top:82px;
  clip-path:polygon(8% 10%,37% 0,61% 12%,91% 21%,100% 47%,83% 62%,64% 58%,52% 78%,28% 88%,13% 67%,0 46%);
  transform:rotate(6deg);
}
.globe-label{
  opacity:0 !important; /* target visual does not need center numbers/text */
}

/* Orbits more elegant and visible */
.future-orbit{
  top:42% !important;
  border-color:rgba(30,107,245,.34) !important;
  box-shadow:0 0 18px rgba(49,128,255,.05);
}
.orbit-a{width:480px !important;height:290px !important}
.orbit-b{width:410px !important;height:440px !important}
.orbit-c{width:540px !important;height:200px !important}
.future-orbit i{
  width:9px !important;height:9px !important;
  background:#2ec8ff !important;
  box-shadow:0 0 16px rgba(46,200,255,.9) !important;
}

/* Platform closer to approved reference */
.future-platform{
  bottom:16px !important;
  width:600px !important;
  height:170px !important;
}
.ring-1{
  width:560px !important;height:210px !important;
  border-color:rgba(34,111,255,.23) !important;
}
.ring-2{
  width:410px !important;height:145px !important;
  border-color:rgba(48,139,255,.22) !important;
}
.ring-3{
  width:270px !important;height:92px !important;
  border-color:rgba(112,76,255,.24) !important;
}
.platform-light{
  width:92px !important;height:92px !important;
  background:radial-gradient(circle,#fff 0%,#92e3ff 21%,rgba(46,200,255,.82) 38%,rgba(47,115,255,.20) 63%,transparent 73%) !important;
}

/* Service cards: same placements as reference, cleaner */
.future-card{
  width:214px !important;
  min-height:88px !important;
  padding:16px 17px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.95) !important;
  border:1px solid #dbe5f8 !important;
  box-shadow:0 16px 40px rgba(28,66,148,.12) !important;
}
.future-card .future-icon{
  background:linear-gradient(145deg,#eef5ff,#e7efff) !important;
  color:#1469f6 !important;
  border-color:#dce8ff !important;
}
.fc-web{left:0 !important;top:15% !important}
.fc-brand{left:-2% !important;top:57% !important}
.fc-marketing{right:-1% !important;top:19% !important}
.fc-growth{right:-3% !important;top:60% !important}

/* Bottom feature strip like approved reference; no numbers */
.hero-v55-features{
  max-width:1320px !important;
  margin:18px auto 0 !important;
  grid-template-columns:repeat(4,1fr) !important;
  border:1px solid #e3e9f6 !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.97) !important;
  box-shadow:0 14px 40px rgba(31,70,151,.07) !important;
}
.v55-feature{
  padding:24px 26px !important;
  min-height:112px !important;
}
.v55-feature-icon{
  width:50px !important;
  height:50px !important;
  flex-basis:50px !important;
  border-radius:16px !important;
  background:linear-gradient(145deg,#f6f9ff,#eaf1ff) !important;
  border-color:#dce7ff !important;
  color:#1669f6 !important;
}
.v55-feature strong{
  font-size:15px !important;
  color:#0b173c !important;
}
.v55-feature small{
  font-size:12px !important;
  color:#68748c !important;
}

/* Desktop polish */
@media(min-width:1181px){
  .hero-v55-grid,
  .hero-v55-features{
    width:calc(100% - 64px) !important;
  }
}

/* Responsive */
@media(max-width:1180px){
  .hero-v55-grid{
    grid-template-columns:1fr 1fr !important;
    gap:22px !important;
  }
  .hero-v55 h1{font-size:clamp(56px,6vw,76px) !important}
  .hero-v55-visual{
    transform:scale(.9) !important;
    transform-origin:center right !important;
  }
}
@media(max-width:980px){
  .hero-v55-grid{grid-template-columns:1fr !important}
  .hero-v55-copy{max-width:760px !important}
  .hero-v55 h1{font-size:clamp(56px,10vw,84px) !important}
  .hero-v55-visual{
    transform:none !important;
    max-width:760px !important;
    margin:0 auto !important;
  }
  .hero-v55-features{grid-template-columns:repeat(2,1fr) !important}
}
@media(max-width:650px){
  .hero-v55{padding-top:34px !important}
  .hero-v55 h1{font-size:50px !important}
  .hero-v55-visual{
    min-height:500px !important;
    transform:scale(.76) !important;
    transform-origin:top center !important;
    margin-bottom:-110px !important;
  }
  .hero-v55-features{grid-template-columns:1fr !important}
}

/* Keep animation polished */
.future-globe{animation:v55Float 5.5s ease-in-out infinite !important}
.future-card{animation:v55CardFloat 6s ease-in-out infinite !important}
.platform-light{animation:v55PlatformGlow 3s ease-in-out infinite !important}


/* =========================================================
   V5.7 — OFFICIAL LOGO IN ANIMATED GLOBE CENTER
   ========================================================= */

/* V5.6 hid the center label; turn the new logo layer back on */
.hero-v55 .globe-label.globe-brand-logo{
  opacity:1 !important;
  z-index:20 !important;
  pointer-events:none;
  overflow:visible;
}

/* Logo sits clearly in the center without hiding the globe */
.globe-brand-logo img{
  position:relative;
  z-index:3;
  display:block;
  width:138px;
  height:138px;
  object-fit:contain;
  filter:
    drop-shadow(0 10px 18px rgba(0,15,70,.38))
    drop-shadow(0 0 15px rgba(61,181,255,.32));
  animation:v57LogoFloat 4.4s ease-in-out infinite,
            v57LogoGlow 3.2s ease-in-out infinite;
  transform-origin:center;
}

/* Soft animated blue energy halo behind official logo */
.globe-logo-halo{
  position:absolute;
  z-index:1;
  width:178px;
  height:178px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:
    radial-gradient(circle,
      rgba(255,255,255,.24) 0%,
      rgba(52,178,255,.17) 31%,
      rgba(35,101,255,.10) 52%,
      transparent 72%);
  border:1px solid rgba(97,196,255,.25);
  box-shadow:
    0 0 28px rgba(34,157,255,.20),
    inset 0 0 24px rgba(88,188,255,.12);
  animation:v57HaloPulse 3.4s ease-in-out infinite;
}

/* extra scanning ring */
.globe-brand-logo:before{
  content:"";
  position:absolute;
  z-index:2;
  width:160px;
  height:160px;
  left:50%;
  top:50%;
  border-radius:50%;
  border:1px dashed rgba(105,204,255,.38);
  transform:translate(-50%,-50%);
  animation:v57ScanSpin 12s linear infinite;
}

.globe-brand-logo:after{
  content:"";
  position:absolute;
  z-index:2;
  width:118px;
  height:118px;
  left:50%;
  top:50%;
  border-radius:50%;
  border:1px solid rgba(112,104,255,.26);
  transform:translate(-50%,-50%);
  animation:v57ScanSpinReverse 9s linear infinite;
}

@keyframes v57LogoFloat{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-6px) scale(1.035)}
}
@keyframes v57LogoGlow{
  0%,100%{
    filter:drop-shadow(0 10px 18px rgba(0,15,70,.38))
           drop-shadow(0 0 10px rgba(61,181,255,.25));
  }
  50%{
    filter:drop-shadow(0 13px 22px rgba(0,15,70,.42))
           drop-shadow(0 0 24px rgba(61,181,255,.52));
  }
}
@keyframes v57HaloPulse{
  0%,100%{
    opacity:.65;
    transform:translate(-50%,-50%) scale(.92);
  }
  50%{
    opacity:1;
    transform:translate(-50%,-50%) scale(1.08);
  }
}
@keyframes v57ScanSpin{
  from{transform:translate(-50%,-50%) rotate(0)}
  to{transform:translate(-50%,-50%) rotate(360deg)}
}
@keyframes v57ScanSpinReverse{
  from{transform:translate(-50%,-50%) rotate(360deg)}
  to{transform:translate(-50%,-50%) rotate(0)}
}

@media(max-width:650px){
  .globe-brand-logo img{
    width:126px;
    height:126px;
  }
  .globe-logo-halo{
    width:162px;
    height:162px;
  }
  .globe-brand-logo:before{
    width:148px;
    height:148px;
  }
}

@media(prefers-reduced-motion:reduce){
  .globe-brand-logo img,
  .globe-logo-halo,
  .globe-brand-logo:before,
  .globe-brand-logo:after{
    animation:none !important;
  }
}


/* =========================================================
   V5.8 — DEVELOPMENT MOTION RIBBON
   Inspired by flowing creative fabric, but built as a custom
   code-first tech visual for DigitalScope360.
   ========================================================= */

.dev-motion-ribbon{
  position:absolute;
  z-index:1;
  width:640px;
  height:520px;
  left:50%;
  top:44%;
  transform:translate(-50%,-50%);
  pointer-events:none;
  opacity:.95;
  filter:drop-shadow(0 30px 45px rgba(34,74,180,.12));
}

/* Main translucent flowing surfaces */
.dev-ribbon-layer{
  position:absolute;
  left:50%;
  top:50%;
  transform-origin:center;
  border-radius:45% 55% 58% 42% / 58% 43% 57% 42%;
  mix-blend-mode:multiply;
  will-change:transform,border-radius;
}

.ribbon-one{
  width:510px;
  height:330px;
  margin-left:-255px;
  margin-top:-165px;
  background:
    linear-gradient(125deg,
      rgba(18,103,244,.08) 0%,
      rgba(23,144,255,.28) 28%,
      rgba(40,200,255,.30) 50%,
      rgba(91,94,255,.24) 72%,
      rgba(112,71,255,.12) 100%);
  border:1px solid rgba(53,143,255,.28);
  backdrop-filter:blur(3px);
  animation:devRibbonOne 10s ease-in-out infinite;
}

.ribbon-two{
  width:430px;
  height:370px;
  margin-left:-215px;
  margin-top:-185px;
  background:
    linear-gradient(155deg,
      rgba(55,176,255,.12) 0%,
      rgba(36,110,255,.22) 34%,
      rgba(112,71,255,.25) 66%,
      rgba(64,211,255,.12) 100%);
  border:1px solid rgba(107,111,255,.24);
  animation:devRibbonTwo 12s ease-in-out infinite;
}

.ribbon-three{
  width:360px;
  height:300px;
  margin-left:-180px;
  margin-top:-150px;
  background:
    radial-gradient(circle at 28% 28%,rgba(255,255,255,.35),transparent 30%),
    linear-gradient(135deg,
      rgba(35,133,255,.12),
      rgba(42,196,255,.24),
      rgba(99,77,255,.22));
  border:1px solid rgba(52,178,255,.22);
  animation:devRibbonThree 9s ease-in-out infinite;
}

/* Wireframe strokes embedded into ribbon */
.dev-motion-ribbon:before,
.dev-motion-ribbon:after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:470px;
  height:300px;
  transform:translate(-50%,-50%) rotate(-9deg);
  border-radius:50%;
  border:1px solid rgba(38,118,255,.18);
  box-shadow:
    0 0 0 22px rgba(72,137,255,.04),
    0 0 0 44px rgba(98,89,255,.025);
  animation:devWireSpin 18s linear infinite;
}
.dev-motion-ribbon:after{
  width:380px;
  height:250px;
  transform:translate(-50%,-50%) rotate(28deg);
  border-color:rgba(62,198,255,.16);
  animation:devWireSpinReverse 22s linear infinite;
}

/* Floating development/service chips */
.dev-code-chip{
  position:absolute;
  z-index:5;
  min-width:48px;
  height:48px;
  padding:0 12px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(204,220,255,.95);
  color:#145fe2;
  font-weight:800;
  font-size:12px;
  letter-spacing:.04em;
  box-shadow:0 12px 28px rgba(30,70,160,.12);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.chip-html{
  left:13%;
  top:21%;
  animation:devChipA 5.2s ease-in-out infinite;
}
.chip-ui{
  right:12%;
  top:24%;
  color:#5b55f7;
  animation:devChipB 5.7s ease-in-out infinite;
}
.chip-ai{
  left:19%;
  bottom:17%;
  color:#1377ef;
  animation:devChipB 6.1s ease-in-out infinite reverse;
}
.chip-seo{
  right:14%;
  bottom:18%;
  color:#6d4eff;
  animation:devChipA 5.5s ease-in-out infinite reverse;
}

/* Keep main globe above moving ribbon */
.future-globe{z-index:7 !important}
.future-orbit{z-index:6 !important}
.future-platform{z-index:4 !important}
.future-card{z-index:9 !important}

/* Motion */
@keyframes devRibbonOne{
  0%,100%{
    transform:rotate(-8deg) skewX(-3deg) scale(1);
    border-radius:45% 55% 58% 42% / 58% 43% 57% 42%;
  }
  33%{
    transform:rotate(5deg) skewX(3deg) scale(1.06);
    border-radius:58% 42% 48% 52% / 43% 57% 41% 59%;
  }
  66%{
    transform:rotate(-2deg) skewX(-1deg) scale(.97);
    border-radius:50% 50% 63% 37% / 62% 38% 55% 45%;
  }
}
@keyframes devRibbonTwo{
  0%,100%{
    transform:rotate(18deg) translate(0,0) scale(.98);
    border-radius:55% 45% 42% 58% / 48% 62% 38% 52%;
  }
  50%{
    transform:rotate(6deg) translate(14px,-12px) scale(1.05);
    border-radius:42% 58% 61% 39% / 60% 40% 56% 44%;
  }
}
@keyframes devRibbonThree{
  0%,100%{
    transform:rotate(-24deg) translate(0,0) scale(1);
    border-radius:46% 54% 62% 38% / 51% 39% 61% 49%;
  }
  50%{
    transform:rotate(-12deg) translate(-10px,14px) scale(1.08);
    border-radius:59% 41% 44% 56% / 38% 62% 43% 57%;
  }
}
@keyframes devWireSpin{
  to{transform:translate(-50%,-50%) rotate(351deg)}
}
@keyframes devWireSpinReverse{
  to{transform:translate(-50%,-50%) rotate(-332deg)}
}
@keyframes devChipA{
  0%,100%{transform:translateY(0) rotate(0)}
  50%{transform:translateY(-12px) rotate(2deg)}
}
@keyframes devChipB{
  0%,100%{transform:translate(0,0)}
  50%{transform:translate(8px,-9px)}
}

/* Make sure ribbon doesn't overpower readability */
@media(max-width:1180px){
  .dev-motion-ribbon{
    transform:translate(-50%,-50%) scale(.9);
  }
}
@media(max-width:980px){
  .dev-motion-ribbon{
    transform:translate(-50%,-50%) scale(.92);
  }
}
@media(max-width:650px){
  .dev-motion-ribbon{
    transform:translate(-50%,-50%) scale(.72);
  }
}
@media(prefers-reduced-motion:reduce){
  .dev-ribbon-layer,
  .dev-motion-ribbon:before,
  .dev-motion-ribbon:after,
  .dev-code-chip{
    animation:none !important;
  }
}


/* =========================================================
   V5.9 — CREATIVE ANIMATED DIGITAL CORE
   Removes center logo and replaces it with a futuristic
   development/design/growth identity.
   ========================================================= */

/* Hide old logo styling if any remains */
.globe-brand-logo,
.globe-brand-logo img,
.globe-logo-halo{
  display:none !important;
}

/* Make the center core visible */
.hero-v55 .globe-label.globe-digital-core{
  opacity:1 !important;
  z-index:24 !important;
  pointer-events:none;
  overflow:visible;
}

/* Center content */
.core-content{
  position:relative;
  z-index:5;
  width:176px;
  height:176px;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:
    radial-gradient(circle at 35% 25%,rgba(255,255,255,.22),transparent 24%),
    linear-gradient(145deg,rgba(8,31,94,.88),rgba(9,42,120,.72));
  border:1px solid rgba(98,192,255,.30);
  box-shadow:
    inset 0 0 28px rgba(47,165,255,.14),
    0 0 25px rgba(36,129,255,.20);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
  animation:coreFloat 4.8s ease-in-out infinite;
}

.core-code{
  display:block;
  color:#71d7ff;
  font-size:18px;
  font-weight:900;
  letter-spacing:.15em;
  margin-bottom:5px;
  text-shadow:0 0 14px rgba(83,205,255,.55);
  animation:coreCodePulse 2.6s ease-in-out infinite;
}

.core-content strong{
  color:#fff !important;
  font-size:52px;
  line-height:.95;
  font-weight:850;
  letter-spacing:-.055em;
  text-shadow:
    0 2px 14px rgba(0,0,0,.35),
    0 0 22px rgba(64,164,255,.34);
}

.core-content small{
  display:block;
  margin-top:9px;
  color:#b8dfff !important;
  font-size:8px;
  font-weight:800;
  letter-spacing:.13em;
  white-space:nowrap;
}

/* halo behind */
.core-halo{
  position:absolute;
  z-index:1;
  width:220px;
  height:220px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:
    radial-gradient(circle,
      rgba(85,190,255,.22) 0%,
      rgba(38,135,255,.11) 38%,
      rgba(113,76,255,.07) 58%,
      transparent 74%);
  box-shadow:
    0 0 40px rgba(52,154,255,.18),
    inset 0 0 30px rgba(86,185,255,.10);
  animation:coreHaloPulse 3.6s ease-in-out infinite;
}

/* two scanning rings */
.core-scan{
  position:absolute;
  z-index:2;
  left:50%;
  top:50%;
  border-radius:50%;
  transform:translate(-50%,-50%);
}

.core-scan-a{
  width:202px;
  height:202px;
  border:1px dashed rgba(97,200,255,.42);
  animation:coreSpin 11s linear infinite;
}
.core-scan-a:before,
.core-scan-a:after{
  content:"";
  position:absolute;
  width:9px;
  height:9px;
  border-radius:50%;
  background:#36c7ff;
  box-shadow:0 0 16px rgba(54,199,255,.85);
}
.core-scan-a:before{
  left:50%;
  top:-5px;
}
.core-scan-a:after{
  right:-5px;
  top:50%;
}

.core-scan-b{
  width:144px;
  height:144px;
  border:1px solid rgba(117,93,255,.30);
  border-left-color:rgba(56,202,255,.75);
  border-bottom-color:rgba(116,83,255,.75);
  animation:coreSpinReverse 8s linear infinite;
}

/* moving scanner line */
.globe-digital-core:after{
  content:"";
  position:absolute;
  z-index:4;
  left:50%;
  top:50%;
  width:154px;
  height:1px;
  background:linear-gradient(90deg,transparent,#63d8ff,transparent);
  box-shadow:0 0 12px rgba(99,216,255,.75);
  transform-origin:center;
  animation:coreScanner 3.2s linear infinite;
}

/* tiny corner nodes */
.globe-digital-core:before{
  content:"";
  position:absolute;
  z-index:3;
  left:50%;
  top:50%;
  width:230px;
  height:230px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 0,#4bd4ff 0 4px,transparent 5px),
    radial-gradient(circle at 100% 50%,#6e5cff 0 4px,transparent 5px),
    radial-gradient(circle at 50% 100%,#4bd4ff 0 4px,transparent 5px),
    radial-gradient(circle at 0 50%,#6e5cff 0 4px,transparent 5px);
  animation:coreNodes 6s ease-in-out infinite;
}

@keyframes coreFloat{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-6px) scale(1.025)}
}
@keyframes coreCodePulse{
  0%,100%{opacity:.68;transform:scale(.96)}
  50%{opacity:1;transform:scale(1.06)}
}
@keyframes coreHaloPulse{
  0%,100%{opacity:.58;transform:translate(-50%,-50%) scale(.92)}
  50%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}
}
@keyframes coreSpin{
  from{transform:translate(-50%,-50%) rotate(0)}
  to{transform:translate(-50%,-50%) rotate(360deg)}
}
@keyframes coreSpinReverse{
  from{transform:translate(-50%,-50%) rotate(360deg)}
  to{transform:translate(-50%,-50%) rotate(0)}
}
@keyframes coreScanner{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(360deg)}
}
@keyframes coreNodes{
  0%,100%{opacity:.55;transform:translate(-50%,-50%) scale(.95)}
  50%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}
}

@media(max-width:650px){
  .core-content{
    width:160px;
    height:160px;
  }
  .core-content strong{font-size:46px}
  .core-halo{width:202px;height:202px}
  .core-scan-a{width:186px;height:186px}
  .globe-digital-core:before{width:212px;height:212px}
}

@media(prefers-reduced-motion:reduce){
  .core-content,
  .core-code,
  .core-halo,
  .core-scan-a,
  .core-scan-b,
  .globe-digital-core:before,
  .globe-digital-core:after{
    animation:none !important;
  }
}


/* =========================================================
   V6.0 — ANIMATED HEADER + HERO TYPOGRAPHY
   Phone/contact block removed completely.
   ========================================================= */

/* ---------------------------------------------------------
   HEADER ENTRANCE
   --------------------------------------------------------- */
.site-header{
  opacity:0;
  transform:translateY(-24px) scale(.985);
  animation:dsHeaderDrop .85s cubic-bezier(.22,.85,.28,1) .05s forwards;
}

.site-header .logo,
.site-header .site-branding,
.site-header .custom-logo-link{
  opacity:0;
  transform:translateX(-14px);
  animation:dsHeaderItemIn .62s ease .42s forwards;
}

.site-header nav.nav > a,
.site-header .main-nav a{
  opacity:0;
  transform:translateY(-8px);
  animation:dsNavItemIn .48s ease forwards;
}

.site-header nav.nav > a:nth-child(1),
.site-header .main-nav a:nth-child(1){animation-delay:.48s}
.site-header nav.nav > a:nth-child(2),
.site-header .main-nav a:nth-child(2){animation-delay:.54s}
.site-header nav.nav > a:nth-child(3),
.site-header .main-nav a:nth-child(3){animation-delay:.60s}
.site-header nav.nav > a:nth-child(4),
.site-header .main-nav a:nth-child(4){animation-delay:.66s}
.site-header nav.nav > a:nth-child(5),
.site-header .main-nav a:nth-child(5){animation-delay:.72s}
.site-header nav.nav > a:nth-child(6),
.site-header .main-nav a:nth-child(6){animation-delay:.78s}
.site-header nav.nav > a:nth-child(7),
.site-header .main-nav a:nth-child(7){animation-delay:.84s}

.site-header .header-actions,
.site-header .header-cta{
  opacity:0;
  transform:translateX(16px);
  animation:dsHeaderItemIn .62s ease .72s forwards;
}

/* animated underline on nav */
.site-header nav.nav > a:not(.header-cta),
.site-header .main-nav a{
  position:relative;
}
.site-header nav.nav > a:not(.header-cta)::after,
.site-header .main-nav a::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:3px;
  width:0;
  height:2px;
  border-radius:20px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,#1680ff,#6456ff);
  transition:width .28s ease;
}
.site-header nav.nav > a:not(.header-cta):hover::after,
.site-header .main-nav a:hover::after,
.site-header .current-menu-item > a::after{
  width:68%;
}

/* soft animated header glow */
.site-header::after{
  content:"";
  position:absolute;
  inset:auto 14% -1px 14%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(27,129,255,.38),rgba(108,78,255,.36),transparent);
  opacity:.35;
  animation:dsHeaderGlow 4s ease-in-out infinite;
}

/* ---------------------------------------------------------
   HERO TEXT ANIMATION
   --------------------------------------------------------- */

/* Override previous group reveal so each line gets its own motion */
.hero-v55 h1{
  opacity:1 !important;
  transform:none !important;
  animation:none !important;
  overflow:visible;
}

.hero-v55 h1 br{
  display:block;
}

/* animate headline with a cinematic reveal using clip + blur */
.hero-v55 h1{
  position:relative;
}

.hero-v55 h1::before{
  content:"";
  position:absolute;
  left:-10px;
  top:-6px;
  width:116%;
  height:105%;
  background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.82),transparent);
  transform-origin:left center;
  transform:scaleX(1);
  animation:dsHeadlineCurtain 1.15s cubic-bezier(.72,0,.2,1) .34s forwards;
  pointer-events:none;
  z-index:5;
}

/* accent line under gradient words */
.hero-v55 h1 span{
  position:relative;
  display:inline-block;
  filter:blur(8px);
  opacity:0;
  transform:translateY(28px) scale(.97);
  animation:dsHeroAccentIn .82s cubic-bezier(.2,.8,.2,1) .88s forwards;
}

.hero-v55 h1 span::after{
  content:"";
  position:absolute;
  left:2px;
  bottom:-8px;
  width:0;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,#1585ff,#25c3ff,#6b50ff);
  box-shadow:0 0 14px rgba(35,146,255,.26);
  animation:dsAccentLine 1s cubic-bezier(.2,.8,.2,1) 1.32s forwards;
}

/* title itself gets subtle perspective rise */
.hero-v55 h1{
  transform-origin:left center !important;
  animation:dsTitleRise .88s cubic-bezier(.2,.8,.2,1) .38s both !important;
}

/* trust badge */
.hero-v55-trust{
  opacity:0 !important;
  transform:translateY(12px) scale(.96) !important;
  animation:dsTrustPop .58s cubic-bezier(.2,.8,.2,1) .52s forwards !important;
}

/* supporting paragraph */
.hero-v55-lead{
  opacity:0 !important;
  transform:translateY(18px) !important;
  animation:dsBodyReveal .68s ease 1.08s forwards !important;
}

/* CTA now sits cleanly by itself after phone removal */
.hero-v55-actions{
  opacity:0 !important;
  transform:translateY(18px) !important;
  animation:dsBodyReveal .68s ease 1.22s forwards !important;
  gap:0 !important;
}

/* Make CTA feel more alive */
.hero-v55-primary{
  position:relative;
  overflow:hidden;
}
.hero-v55-primary::before{
  content:"";
  position:absolute;
  top:-45%;
  bottom:-45%;
  left:-36px;
  width:28px;
  background:rgba(255,255,255,.34);
  transform:skewX(-18deg);
  animation:dsBtnSweep 4.6s ease-in-out 1.7s infinite;
  pointer-events:none;
}

/* Feature strip delayed entrance */
.hero-v55-features{
  opacity:0 !important;
  transform:translateY(24px) !important;
  animation:dsFeatureStripIn .72s ease 1.38s forwards !important;
}
.hero-v55-features .v55-feature{
  opacity:0;
  transform:translateY(12px);
  animation:dsFeatureItemIn .5s ease forwards;
}
.hero-v55-features .v55-feature:nth-child(1){animation-delay:1.58s}
.hero-v55-features .v55-feature:nth-child(2){animation-delay:1.68s}
.hero-v55-features .v55-feature:nth-child(3){animation-delay:1.78s}
.hero-v55-features .v55-feature:nth-child(4){animation-delay:1.88s}

/* ---------------------------------------
   KEYFRAMES
   --------------------------------------- */
@keyframes dsHeaderDrop{
  from{opacity:0;transform:translateY(-24px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes dsHeaderItemIn{
  from{opacity:0;transform:translateY(-8px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes dsNavItemIn{
  from{opacity:0;transform:translateY(-8px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes dsHeaderGlow{
  0%,100%{opacity:.18;transform:scaleX(.86)}
  50%{opacity:.65;transform:scaleX(1)}
}
@keyframes dsHeadlineCurtain{
  0%{transform:scaleX(1)}
  100%{transform:scaleX(0)}
}
@keyframes dsTitleRise{
  from{
    opacity:0;
    transform:translateY(34px) perspective(500px) rotateX(5deg);
    filter:blur(6px);
  }
  to{
    opacity:1;
    transform:translateY(0) perspective(500px) rotateX(0);
    filter:blur(0);
  }
}
@keyframes dsHeroAccentIn{
  from{opacity:0;transform:translateY(28px) scale(.97);filter:blur(8px)}
  to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
}
@keyframes dsAccentLine{
  from{width:0;opacity:0}
  to{width:108px;opacity:1}
}
@keyframes dsTrustPop{
  from{opacity:0;transform:translateY(12px) scale(.96)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes dsBodyReveal{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes dsFeatureStripIn{
  from{opacity:0;transform:translateY(24px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes dsFeatureItemIn{
  from{opacity:0;transform:translateY(12px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes dsBtnSweep{
  0%,65%{transform:translateX(0) skewX(-18deg);opacity:0}
  72%{opacity:.7}
  100%{transform:translateX(260px) skewX(-18deg);opacity:0}
}

/* Clean up the removed contact area */
.hero-v55-contact{
  display:none !important;
}

/* mobile tuning */
@media(max-width:650px){
  .hero-v55 h1::before{
    width:120%;
  }
  .hero-v55 h1 span::after{
    bottom:-5px;
    height:3px;
  }
}

/* Accessibility */
@media(prefers-reduced-motion:reduce){
  .site-header,
  .site-header *,
  .hero-v55-trust,
  .hero-v55 h1,
  .hero-v55 h1::before,
  .hero-v55 h1 span,
  .hero-v55 h1 span::after,
  .hero-v55-lead,
  .hero-v55-actions,
  .hero-v55-primary::before,
  .hero-v55-features,
  .hero-v55-features .v55-feature{
    animation:none !important;
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
  }
  .hero-v55 h1::before{
    display:none !important;
  }
}


/* =========================================================
   V6.1 — CONSTANT HERO TEXT MOTION + PERMANENT HEADER BORDER
   Restores touch/contact CTA but keeps phone number removed.
   ========================================================= */

/* Restore contact/touch CTA without phone */
.hero-v55-contact.hero-v55-contact-no-phone{
  display:flex !important;
  align-items:center;
  gap:12px;
  color:#0b173c !important;
  text-decoration:none !important;
  opacity:1;
}
.hero-v55-contact-no-phone .contact-icon{
  width:50px !important;
  height:50px !important;
  border-radius:14px !important;
  display:grid !important;
  place-items:center !important;
  background:#f4f8ff !important;
  border:1px solid #dbe7ff !important;
  color:#1469f6 !important;
  box-shadow:0 10px 28px rgba(26,92,210,.10) !important;
  transition:transform .28s ease, box-shadow .28s ease, background .28s ease;
}
.hero-v55-contact-no-phone small{
  display:block;
  color:#707b91 !important;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:10px !important;
  margin-bottom:3px;
}
.hero-v55-contact-no-phone strong{
  display:block;
  color:#0b173c !important;
  font-size:14px !important;
  font-weight:750;
}
.hero-v55-contact-no-phone:hover .contact-icon{
  transform:translateY(-3px) rotate(-4deg);
  background:#edf4ff !important;
  box-shadow:0 14px 32px rgba(26,92,210,.16) !important;
}

/* V6.0 hid all contact blocks; override that rule */
.hero-v55-contact{
  display:flex !important;
}

/* ---------------------------------------------
   CONSTANT HERO TEXT MOTION
   Initial reveal remains; these run continuously.
   --------------------------------------------- */

/* Gradient words get a slow flowing blue/cyan/violet shimmer */
.hero-v55 h1 span{
  background:
    linear-gradient(
      105deg,
      #176cff 0%,
      #2f91ff 22%,
      #28c8ff 42%,
      #655cff 63%,
      #347cff 82%,
      #176cff 100%
    ) !important;
  background-size:240% 100% !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  animation:
    dsHeroAccentIn .82s cubic-bezier(.2,.8,.2,1) .88s forwards,
    dsTextGradientFlow 5.8s linear 1.8s infinite !important;
}

/* Main dark headline has an ultra-subtle breathing motion */
.hero-v55 h1{
  animation:
    dsTitleRise .88s cubic-bezier(.2,.8,.2,1) .38s both,
    dsHeadlineBreath 6.5s ease-in-out 1.5s infinite !important;
}

/* Accent underline keeps a soft light sweep */
.hero-v55 h1 span::after{
  overflow:hidden;
  background:linear-gradient(90deg,#1682ff,#29c8ff,#6956ff) !important;
  animation:
    dsAccentLine 1s cubic-bezier(.2,.8,.2,1) 1.32s forwards,
    dsAccentGlow 3.2s ease-in-out 2.3s infinite !important;
}

/* Trust pill gently pulses forever */
.hero-v55-trust{
  animation:
    dsTrustPop .58s cubic-bezier(.2,.8,.2,1) .52s forwards,
    dsTrustFloat 4.8s ease-in-out 1.4s infinite !important;
}

/* Paragraph gets a very subtle opacity drift, not distracting */
.hero-v55-lead{
  animation:
    dsBodyReveal .68s ease 1.08s forwards,
    dsLeadBreath 6s ease-in-out 2s infinite !important;
}

/* CTA remains lively */
.hero-v55-primary{
  animation:
    v55ButtonGlow 3.8s ease-in-out infinite,
    dsCtaFloat 4.6s ease-in-out 1.5s infinite !important;
}

/* ---------------------------------------------
   HEADER: PERMANENT OUTLINE / READABILITY
   --------------------------------------------- */
.site-header,
header.site-header{
  border:1px solid #d9e3f3 !important;
  background:rgba(255,255,255,.97) !important;
  box-shadow:
    0 12px 34px rgba(19,42,91,.10),
    0 0 0 1px rgba(33,104,214,.035) !important;
}

/* Permanent subtle blue outline/glow even after entrance finishes */
.site-header::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1px;
  background:linear-gradient(
    105deg,
    rgba(24,111,246,.18),
    rgba(49,195,255,.10),
    rgba(107,83,255,.18),
    rgba(24,111,246,.18)
  );
  background-size:220% 100%;
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
  opacity:.72;
  animation:dsHeaderBorderFlow 7s linear infinite;
}

/* keep lower edge clearly visible */
.site-header::after{
  opacity:.48 !important;
  height:1px !important;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(25,116,248,.45),
    rgba(52,197,255,.25),
    rgba(107,81,255,.40),
    transparent
  ) !important;
  animation:dsHeaderGlow 4s ease-in-out infinite !important;
}

/* Header button gets soft recurring sheen */
.site-header .header-cta{
  position:relative;
  overflow:hidden;
}
.site-header .header-cta::before{
  content:"";
  position:absolute;
  top:-40%;
  bottom:-40%;
  width:26px;
  left:-35px;
  background:rgba(255,255,255,.30);
  transform:skewX(-18deg);
  animation:dsHeaderBtnSweep 4.8s ease-in-out 1.8s infinite;
}

/* New keyframes */
@keyframes dsTextGradientFlow{
  0%{background-position:0% 50%}
  100%{background-position:240% 50%}
}
@keyframes dsHeadlineBreath{
  0%,100%{transform:translateY(0);letter-spacing:-.055em}
  50%{transform:translateY(-2px);letter-spacing:-.053em}
}
@keyframes dsAccentGlow{
  0%,100%{box-shadow:0 0 10px rgba(35,146,255,.18);opacity:.78}
  50%{box-shadow:0 0 20px rgba(62,165,255,.42);opacity:1}
}
@keyframes dsTrustFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-4px)}
}
@keyframes dsLeadBreath{
  0%,100%{opacity:1}
  50%{opacity:.88}
}
@keyframes dsCtaFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-3px)}
}
@keyframes dsHeaderBorderFlow{
  from{background-position:0% 50%}
  to{background-position:220% 50%}
}
@keyframes dsHeaderBtnSweep{
  0%,66%{transform:translateX(0) skewX(-18deg);opacity:0}
  72%{opacity:.65}
  100%{transform:translateX(210px) skewX(-18deg);opacity:0}
}

/* Accessibility */
@media(prefers-reduced-motion:reduce){
  .hero-v55 h1,
  .hero-v55 h1 span,
  .hero-v55 h1 span::after,
  .hero-v55-trust,
  .hero-v55-lead,
  .hero-v55-primary,
  .site-header::before,
  .site-header::after,
  .site-header .header-cta::before{
    animation:none !important;
  }
}


/* V6.2 — restore original touch/contact visual, phone number intentionally omitted */
.hero-v55-contact-restored{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  margin-left:4px;
}
.hero-v55-contact-restored .contact-icon{
  width:50px !important;
  height:50px !important;
  flex:0 0 50px;
  border-radius:14px !important;
  display:grid !important;
  place-items:center !important;
  background:#f4f8ff !important;
  border:1px solid #dbe7ff !important;
  color:#1469f6 !important;
  box-shadow:0 10px 28px rgba(26,92,210,.10) !important;
}
.hero-v55-contact-restored .contact-copy{
  display:flex;
  align-items:center;
  min-height:50px;
}
.hero-v55-contact-restored small{
  display:block !important;
  color:#75819a !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  font-size:10px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  margin:0 !important;
}


/* V6.3 — HERO EMPTY SPACE FIX
   Keep all restored CTA/features; only remove excessive forced hero height. */
.hero-v55{
  min-height:auto !important;
  height:auto !important;
  padding-bottom:42px !important;
}
.hero-v55-inner{
  min-height:auto !important;
  height:auto !important;
  align-items:center !important;
}
.hero-v55-features{
  margin-top:20px !important;
  margin-bottom:0 !important;
}
@media(min-width:981px){
  .hero-v55{
    padding-top:52px !important;
  }
}
@media(max-width:980px){
  .hero-v55{
    padding-bottom:30px !important;
  }
}


/* V6.4 — restore hero lower content from reference, number excluded */
.hero-v55{
  padding-bottom:34px !important;
}
.hero-v55-lead{
  display:block !important;
  visibility:visible !important;
  margin-top:22px !important;
  margin-bottom:22px !important;
}
.hero-v55-actions{
  display:flex !important;
  visibility:visible !important;
  align-items:center !important;
  gap:18px !important;
  margin-top:0 !important;
}
.hero-v55-contact-restored{
  display:flex !important;
  visibility:visible !important;
  align-items:center !important;
  gap:11px !important;
}
.hero-v55-contact-restored .contact-copy{
  min-height:auto !important;
}
.hero-v55-contact-restored .contact-copy small{
  margin:0 !important;
  white-space:nowrap;
}
.hero-v55-features{
  display:grid !important;
  visibility:visible !important;
  margin-top:18px !important;
  opacity:1;
}
@media(max-width:650px){
  .hero-v55-actions{
    flex-wrap:wrap;
  }
}


/* V6.5 — HARD FIX: lower hero content always visible */
.hero-v55{
  min-height:0 !important;
  height:auto !important;
  overflow:visible !important;
  padding-bottom:36px !important;
}
.hero-v55-inner{
  min-height:0 !important;
  height:auto !important;
  overflow:visible !important;
}
.hero-v65-lower{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:30 !important;
  margin-top:20px !important;
}
.hero-v65-lead{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  max-width:600px !important;
  margin:0 0 22px !important;
  transform:none !important;
}
.hero-v65-actions{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  align-items:center !important;
  gap:18px !important;
  margin:0 !important;
  transform:none !important;
}
.hero-v65-actions .hero-v55-primary{
  display:inline-flex !important;
  visibility:visible !important;
}
.hero-v65-actions .hero-v55-contact-restored{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
}
.hero-v65-features{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:35 !important;
  width:min(1280px,calc(100% - 48px)) !important;
  margin:24px auto 0 !important;
  transform:none !important;
}
.hero-v65-features .v55-feature{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  transform:none !important;
}
@media(max-width:980px){
  .hero-v65-features{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media(max-width:650px){
  .hero-v65-actions{flex-wrap:wrap !important}
  .hero-v65-features{
    width:calc(100% - 28px) !important;
    grid-template-columns:1fr !important;
  }
}


/* V6.6 — compact/premium hero spacing */
.hero-v55{
  padding-bottom:22px !important;
}
.hero-v65-lower{
  margin-top:14px !important;
}
.hero-v65-lead{
  margin-bottom:16px !important;
}
.hero-v65-features{
  margin-top:10px !important;
}
@media(min-width:981px){
  .hero-v55-inner{
    padding-bottom:0 !important;
  }
}
@media(max-width:980px){
  .hero-v65-features{
    margin-top:14px !important;
  }
}


/* V6.7 — reduce gap between CTA row and feature strip */
.hero-v55{
  padding-bottom:12px !important;
}
.hero-v65-actions{
  margin-bottom:0 !important;
}
.hero-v65-features{
  margin-top:-48px !important;
}
@media(max-width:980px){
  .hero-v65-features{
    margin-top:4px !important;
  }
}


/* =========================================================
   V6.8 — PHONE / MOBILE HARD FIX
   Fixes nav toggle, duplicate strip, hero overflow and scaling.
   Desktop remains unchanged.
   ========================================================= */

@media(max-width: 950px){

  html, body{
    overflow-x:hidden !important;
  }

  /* HEADER */
  .site-header,
  header.site-header{
    width:calc(100% - 20px) !important;
    max-width:none !important;
    top:8px !important;
    margin:8px auto 0 !important;
    height:auto !important;
    border-radius:16px !important;
  }

  .site-header .container.header-inner{
    width:100% !important;
    height:64px !important;
    min-height:64px !important;
    padding:0 14px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
  }

  .site-header .logo.ds360-logo-link{
    width:auto !important;
    flex:0 0 auto !important;
  }

  .site-header .ds360-header-logo{
    height:46px !important;
    width:auto !important;
    max-width:92px !important;
  }

  .site-header .header-actions{
    width:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:8px !important;
  }

  .site-header .header-cta{
    display:none !important;
  }

  .site-header .menu-toggle{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:44px !important;
    height:44px !important;
    padding:0 !important;
    margin:0 !important;
    border:1px solid #d9e4f5 !important;
    border-radius:13px !important;
    background:#f6f9ff !important;
    color:#145fe2 !important;
    font-size:23px !important;
    line-height:1 !important;
    cursor:pointer !important;
    position:relative !important;
    z-index:10002 !important;
  }

  /* Actual mobile menu */
  .site-header nav.nav{
    display:none !important;
    position:absolute !important;
    top:72px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    padding:12px !important;
    margin:0 !important;
    background:rgba(255,255,255,.98) !important;
    border:1px solid #dfe7f4 !important;
    border-radius:15px !important;
    box-shadow:0 18px 42px rgba(15,42,92,.14) !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:2px !important;
    z-index:10001 !important;
  }

  .site-header nav.nav.open{
    display:flex !important;
  }

  .site-header nav.nav > a:not(.btn){
    display:flex !important;
    width:100% !important;
    min-height:44px !important;
    align-items:center !important;
    padding:0 14px !important;
    border-radius:10px !important;
    font-size:14px !important;
    font-weight:600 !important;
    color:#101936 !important;
  }

  .site-header nav.nav > a:not(.btn):hover{
    background:#f2f6ff !important;
    color:#1267f4 !important;
  }

  /* HERO */
  .hero-v55{
    width:100% !important;
    min-height:0 !important;
    height:auto !important;
    padding:38px 0 24px !important;
    overflow:hidden !important;
  }

  .hero-v55-grid{
    width:calc(100% - 28px) !important;
    max-width:none !important;
    margin:0 auto !important;
    display:flex !important;
    flex-direction:column !important;
    gap:24px !important;
  }

  .hero-v55-copy{
    width:100% !important;
    max-width:none !important;
  }

  .hero-v55-trust{
    margin-bottom:18px !important;
    padding:8px 12px !important;
    font-size:10px !important;
  }

  .hero-v55 h1{
    max-width:none !important;
    width:100% !important;
    font-size:clamp(46px, 13.5vw, 68px) !important;
    line-height:.94 !important;
    letter-spacing:-.055em !important;
  }

  .hero-v55 h1 span::after{
    bottom:-4px !important;
  }

  .hero-v65-lower{
    margin-top:18px !important;
  }

  .hero-v65-lead{
    max-width:none !important;
    font-size:15px !important;
    line-height:1.6 !important;
    margin-bottom:18px !important;
  }

  .hero-v65-actions{
    width:100% !important;
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    gap:12px !important;
  }

  .hero-v55-primary{
    min-height:52px !important;
    padding:0 20px !important;
    border-radius:15px !important;
    font-size:13px !important;
  }

  .hero-v55-contact-restored{
    margin-left:0 !important;
  }

  .hero-v55-contact-restored .contact-icon{
    width:46px !important;
    height:46px !important;
    flex-basis:46px !important;
  }

  /* Futuristic graphic - sized specifically for phone */
  .hero-v55-visual{
    width:100% !important;
    max-width:560px !important;
    min-height:455px !important;
    height:455px !important;
    margin:2px auto 0 !important;
    transform:none !important;
    overflow:visible !important;
  }

  .future-globe{
    width:255px !important;
    height:255px !important;
    left:50% !important;
    top:43% !important;
  }

  .core-content{
    width:128px !important;
    height:128px !important;
  }

  .core-content strong{
    font-size:38px !important;
  }

  .core-content small{
    font-size:6px !important;
  }

  .core-halo{
    width:158px !important;
    height:158px !important;
  }

  .core-scan-a{
    width:150px !important;
    height:150px !important;
  }

  .core-scan-b{
    width:108px !important;
    height:108px !important;
  }

  .globe-digital-core:before{
    width:174px !important;
    height:174px !important;
  }

  .future-orbit{
    top:43% !important;
  }

  .orbit-a{
    width:340px !important;
    height:205px !important;
  }

  .orbit-b{
    width:290px !important;
    height:315px !important;
  }

  .orbit-c{
    width:385px !important;
    height:140px !important;
  }

  .future-platform{
    width:390px !important;
    height:120px !important;
    bottom:14px !important;
  }

  .ring-1{width:370px !important;height:140px !important}
  .ring-2{width:270px !important;height:100px !important}
  .ring-3{width:175px !important;height:64px !important}
  .platform-light{width:68px !important;height:68px !important}

  /* Cards readable, without hanging off screen */
  .future-card{
    width:155px !important;
    min-height:68px !important;
    padding:10px 11px !important;
    gap:8px !important;
    border-radius:14px !important;
  }

  .future-card .future-icon{
    width:34px !important;
    height:34px !important;
    flex-basis:34px !important;
    border-radius:9px !important;
    font-size:11px !important;
  }

  .future-card strong{
    font-size:10px !important;
    line-height:1.15 !important;
  }

  .future-card small{
    font-size:8px !important;
    line-height:1.25 !important;
    margin-top:3px !important;
  }

  .fc-web{left:0 !important;top:10% !important}
  .fc-marketing{right:0 !important;top:14% !important}
  .fc-brand{left:0 !important;top:61% !important}
  .fc-growth{right:0 !important;top:64% !important}

  /* The large fabric stays subtle on phone; tiny floating chips are hidden */
  .dev-motion-ribbon{
    width:430px !important;
    height:360px !important;
    left:50% !important;
    top:44% !important;
    transform:translate(-50%,-50%) scale(.78) !important;
    opacity:.72 !important;
  }

  .dev-code-chip{
    display:none !important;
  }

  /* Exactly one feature strip */
  .hero-v55 > .hero-v55-features:not(.hero-v65-features){
    display:none !important;
  }

  .hero-v65-features{
    width:calc(100% - 28px) !important;
    max-width:none !important;
    margin:14px auto 0 !important;
    grid-template-columns:1fr 1fr !important;
    border-radius:18px !important;
    overflow:hidden !important;
  }

  .hero-v65-features .v55-feature{
    min-height:100px !important;
    padding:16px !important;
    gap:11px !important;
  }

  .hero-v65-features .v55-feature-icon{
    width:42px !important;
    height:42px !important;
    flex-basis:42px !important;
    border-radius:13px !important;
    font-size:15px !important;
  }

  .hero-v65-features .v55-feature strong{
    font-size:12px !important;
  }

  .hero-v65-features .v55-feature small{
    font-size:10px !important;
    line-height:1.35 !important;
  }

  .hero-v65-features .v55-feature:nth-child(2n)::after{
    display:none !important;
  }
}

@media(max-width: 520px){
  .hero-v65-features{
    grid-template-columns:1fr !important;
  }

  .hero-v65-features .v55-feature{
    min-height:88px !important;
  }

  .hero-v55-visual{
    min-height:430px !important;
    height:430px !important;
  }

  .future-card{
    width:142px !important;
  }

  .fc-web{left:-2px !important}
  .fc-marketing{right:-2px !important}
  .fc-brand{left:-2px !important}
  .fc-growth{right:-2px !important}
}


/* V6.9 — duplicate feature strip hard fix */
.hero-v55 > .v55-feature,
.hero-v55-grid > .v55-feature,
.hero-v55-copy > .v55-feature,
.hero-v55-visual > .v55-feature{
  display:none !important;
}

/* Only the intended single feature strip is allowed */
.hero-v55 .hero-v65-features{
  display:grid !important;
}

/* Hide any legacy feature strip that is not the intended one */
.hero-v55 .hero-v55-features:not(.hero-v65-features){
  display:none !important;
}


/* =========================================================
   V7.0 — FEATURE STRIP POSITION FIX
   Prevent strip from overlapping CTA / Talk to Our Team.
   ========================================================= */

/* Undo the negative desktop pull-up from V6.7 */
.hero-v65-features{
  margin-top:18px !important;
  position:relative !important;
  z-index:10 !important;
  transform:none !important;
}

/* Keep CTA/contact above normal flow, not underneath strip */
.hero-v65-lower{
  position:relative !important;
  z-index:20 !important;
  margin-bottom:0 !important;
}
.hero-v65-actions{
  position:relative !important;
  z-index:21 !important;
  margin-bottom:0 !important;
}

/* Compact spacing without overlap */
@media(min-width:981px){
  .hero-v65-features{
    margin-top:14px !important;
  }
}

@media(max-width:980px){
  .hero-v65-features{
    margin-top:16px !important;
  }
}


/* =========================================================
   V7.1 — CONTINUOUS SERVICES BACKGROUND ANIMATION
   Decorative only. Existing hero layout/content is untouched.
   ========================================================= */

.hero-v55{
  position:relative !important;
  isolation:isolate;
}

.hero-v55 > .hero-service-bg{
  position:absolute;
  inset:0;
  overflow:hidden;
  pointer-events:none;
  z-index:0;
}

/* Keep all existing hero content above animation */
.hero-v55 > .hero-v55-grid,
.hero-v55 > .hero-v65-features{
  position:relative;
  z-index:2;
}

/* faint technical grid */
.hero-service-bg::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(34,116,255,.032) 1px, transparent 1px),
    linear-gradient(90deg, rgba(34,116,255,.032) 1px, transparent 1px);
  background-size:52px 52px;
  -webkit-mask-image:linear-gradient(to bottom, transparent 2%, #000 20%, #000 82%, transparent 100%);
  mask-image:linear-gradient(to bottom, transparent 2%, #000 20%, #000 82%, transparent 100%);
  animation:serviceGridDrift 26s linear infinite;
}

/* soft moving blue/cyan ambient light */
.hero-service-bg::after{
  content:"";
  position:absolute;
  width:620px;
  height:620px;
  left:46%;
  top:8%;
  border-radius:50%;
  background:
    radial-gradient(circle at 35% 40%, rgba(25,146,255,.085), transparent 42%),
    radial-gradient(circle at 65% 60%, rgba(122,86,255,.065), transparent 46%);
  filter:blur(20px);
  animation:serviceAmbient 18s ease-in-out infinite alternate;
}

.service-orbit{
  position:absolute;
  border:1px solid rgba(51,127,255,.10);
  border-radius:50%;
  opacity:.8;
  transform-origin:center;
}
.orbit-bg-a{
  width:720px;height:240px;
  left:-170px;top:120px;
  transform:rotate(-13deg);
  animation:serviceOrbitA 28s linear infinite;
}
.orbit-bg-b{
  width:620px;height:620px;
  right:-210px;top:40px;
  border-color:rgba(114,89,255,.085);
  animation:serviceOrbitB 36s linear infinite;
}
.orbit-bg-c{
  width:860px;height:300px;
  left:34%;bottom:-80px;
  transform:rotate(8deg);
  animation:serviceOrbitC 32s linear infinite reverse;
}

/* traveling service paths */
.service-flow{
  position:absolute;
  height:1px;
  width:430px;
  opacity:.24;
  background:linear-gradient(90deg, transparent, rgba(22,119,255,.5), rgba(82,211,255,.55), transparent);
  filter:drop-shadow(0 0 5px rgba(32,132,255,.22));
}
.service-flow::after{
  content:"";
  position:absolute;
  top:50%;
  left:0;
  width:7px;height:7px;
  border-radius:50%;
  background:#55cfff;
  box-shadow:0 0 14px rgba(58,184,255,.75);
  transform:translateY(-50%);
  animation:serviceSignal 6.5s ease-in-out infinite;
}
.flow-a{left:3%;top:38%;transform:rotate(10deg)}
.flow-b{right:2%;top:28%;transform:rotate(-14deg)}
.flow-c{left:28%;bottom:20%;width:520px;transform:rotate(-3deg)}

.service-glyph{
  position:absolute;
  display:flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border:1px solid rgba(43,119,255,.10);
  border-radius:12px;
  background:rgba(255,255,255,.22);
  box-shadow:0 8px 26px rgba(18,72,160,.035);
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
  opacity:.20;
  color:#1768e8;
  white-space:nowrap;
  transform:translate3d(0,0,0);
}
.service-glyph i{
  width:27px;height:27px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:rgba(42,121,255,.065);
  font-style:normal;
  font-size:11px;
  font-weight:800;
}
.service-glyph b{
  font-size:8px;
  letter-spacing:.13em;
  font-weight:800;
}

.sg-web{left:4%;top:18%;animation:serviceFloat1 12s ease-in-out infinite}
.sg-ui{left:17%;top:56%;animation:serviceFloat2 15s ease-in-out infinite .8s}
.sg-brand{left:39%;top:12%;animation:serviceFloat3 13s ease-in-out infinite 1.5s}
.sg-seo{right:7%;top:19%;animation:serviceFloat2 14s ease-in-out infinite .4s}
.sg-marketing{right:3%;top:55%;animation:serviceFloat1 16s ease-in-out infinite 1.1s}
.sg-motion{left:53%;bottom:9%;animation:serviceFloat3 14s ease-in-out infinite .2s}
.sg-ai{left:8%;bottom:11%;animation:serviceFloat2 17s ease-in-out infinite 2s}
.sg-graphic{right:25%;bottom:16%;animation:serviceFloat1 13s ease-in-out infinite 1.2s}

.service-particle{
  position:absolute;
  width:5px;height:5px;
  border-radius:50%;
  background:rgba(36,139,255,.45);
  box-shadow:0 0 10px rgba(36,139,255,.26);
  animation:serviceParticle 11s ease-in-out infinite;
}
.sp-1{left:10%;top:34%;animation-delay:-1s}
.sp-2{left:28%;top:20%;animation-delay:-4s}
.sp-3{left:42%;top:62%;animation-delay:-7s}
.sp-4{left:58%;top:25%;animation-delay:-2s}
.sp-5{left:71%;top:48%;animation-delay:-6s}
.sp-6{left:84%;top:31%;animation-delay:-9s}
.sp-7{left:90%;top:72%;animation-delay:-3s}
.sp-8{left:22%;top:78%;animation-delay:-8s}

@keyframes serviceGridDrift{
  from{background-position:0 0,0 0}
  to{background-position:52px 52px,52px 52px}
}
@keyframes serviceAmbient{
  0%{transform:translate3d(-8%,0,0) scale(.96);opacity:.55}
  100%{transform:translate3d(12%,4%,0) scale(1.08);opacity:.9}
}
@keyframes serviceOrbitA{
  from{transform:rotate(-13deg)}
  to{transform:rotate(347deg)}
}
@keyframes serviceOrbitB{
  from{transform:rotate(0deg)}
  to{transform:rotate(-360deg)}
}
@keyframes serviceOrbitC{
  from{transform:rotate(8deg)}
  to{transform:rotate(368deg)}
}
@keyframes serviceSignal{
  0%,12%{left:0;opacity:0}
  25%{opacity:1}
  82%{opacity:1}
  100%{left:100%;opacity:0}
}
@keyframes serviceFloat1{
  0%,100%{transform:translate3d(0,0,0) rotate(-1deg)}
  35%{transform:translate3d(16px,-13px,0) rotate(1deg)}
  70%{transform:translate3d(-8px,9px,0) rotate(0deg)}
}
@keyframes serviceFloat2{
  0%,100%{transform:translate3d(0,0,0) rotate(1deg)}
  40%{transform:translate3d(-13px,-16px,0) rotate(-1deg)}
  75%{transform:translate3d(10px,7px,0) rotate(.5deg)}
}
@keyframes serviceFloat3{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(8px,-18px,0)}
}
@keyframes serviceParticle{
  0%,100%{transform:translate3d(0,0,0) scale(.75);opacity:.18}
  30%{transform:translate3d(18px,-20px,0) scale(1);opacity:.55}
  65%{transform:translate3d(-8px,-38px,0) scale(.8);opacity:.3}
}

/* Keep animation lighter/cleaner on phones */
@media(max-width:980px){
  .hero-service-bg::before{
    background-size:44px 44px;
    opacity:.65;
  }
  .hero-service-bg::after{
    width:430px;height:430px;
    left:20%;top:20%;
  }
  .service-glyph{
    opacity:.14;
    transform:scale(.88);
  }
  .sg-brand,.sg-motion,.sg-graphic{
    display:none;
  }
  .service-flow{
    opacity:.14;
    width:300px;
  }
  .orbit-bg-a{width:480px;height:170px;left:-170px}
  .orbit-bg-b{width:430px;height:430px;right:-230px}
  .orbit-bg-c{width:540px;height:190px;left:10%;bottom:60px}
}

@media(max-width:520px){
  .service-glyph{
    opacity:.11;
  }
  .sg-ui,.sg-marketing{
    display:none;
  }
  .service-flow{
    opacity:.10;
  }
}

/* accessibility */
@media(prefers-reduced-motion:reduce){
  .hero-service-bg *,
  .hero-service-bg::before,
  .hero-service-bg::after{
    animation:none !important;
  }
}


/* =========================================================
   V7.2 — stronger service background visibility
   Same animation/layout, only contrast increased.
   ========================================================= */

.hero-service-bg::before{
  background-image:
    linear-gradient(rgba(34,116,255,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(34,116,255,.055) 1px, transparent 1px) !important;
}

.hero-service-bg::after{
  background:
    radial-gradient(circle at 35% 40%, rgba(25,146,255,.13), transparent 42%),
    radial-gradient(circle at 65% 60%, rgba(122,86,255,.10), transparent 46%) !important;
}

.service-orbit{
  border-color:rgba(51,127,255,.17) !important;
  opacity:1 !important;
}

.orbit-bg-b{
  border-color:rgba(114,89,255,.14) !important;
}

.service-flow{
  opacity:.38 !important;
}

.service-glyph{
  opacity:.38 !important;
  border-color:rgba(43,119,255,.17) !important;
  background:rgba(255,255,255,.38) !important;
  box-shadow:0 8px 26px rgba(18,72,160,.06) !important;
}

.service-glyph i{
  background:rgba(42,121,255,.10) !important;
}

.service-particle{
  background:rgba(36,139,255,.68) !important;
  box-shadow:0 0 12px rgba(36,139,255,.38) !important;
}

/* Keep mobile slightly softer than desktop */
@media(max-width:980px){
  .service-glyph{opacity:.24 !important}
  .service-flow{opacity:.22 !important}
}
@media(max-width:520px){
  .service-glyph{opacity:.18 !important}
  .service-flow{opacity:.16 !important}
}


/* =========================================================
   V7.3 — PREMIUM HERO GRADIENT BACKGROUND
   Keeps existing content + service animation unchanged.
   ========================================================= */

.hero-v55{
  background:
    radial-gradient(circle at 9% 30%, rgba(64, 197, 255, .14) 0%, rgba(64,197,255,.055) 22%, transparent 43%),
    radial-gradient(circle at 88% 20%, rgba(116, 82, 255, .13) 0%, rgba(116,82,255,.05) 24%, transparent 46%),
    radial-gradient(circle at 72% 82%, rgba(32, 133, 255, .10) 0%, transparent 38%),
    linear-gradient(135deg, #ffffff 0%, #f8fbff 42%, #f7f5ff 72%, #ffffff 100%) !important;
}

/* soft animated gradient wash behind service graphics */
.hero-service-bg{
  background:
    linear-gradient(
      115deg,
      rgba(37,141,255,.025) 0%,
      rgba(255,255,255,0) 30%,
      rgba(119,78,255,.045) 54%,
      rgba(48,200,255,.035) 76%,
      rgba(255,255,255,0) 100%
    );
  background-size:220% 220%;
  animation:heroGradientWash 18s ease-in-out infinite alternate;
}

@keyframes heroGradientWash{
  0%{background-position:0% 40%}
  50%{background-position:60% 55%}
  100%{background-position:100% 35%}
}

/* Replace the old yellow/green legacy glow with a clean blue/cyan glow */
.hero-v55::before{
  background:
    radial-gradient(circle,
      rgba(64,207,255,.12) 0%,
      rgba(49,139,255,.055) 46%,
      transparent 72%
    ) !important;
}

/* Slight violet atmospheric glow on the opposite side */
.hero-v55::after{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-130px;
  top:110px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(122,84,255,.09) 0%, rgba(75,132,255,.035) 46%, transparent 72%);
  filter:blur(8px);
  pointer-events:none;
  z-index:0;
  animation:heroVioletGlow 14s ease-in-out infinite alternate;
}

@keyframes heroVioletGlow{
  from{transform:translate3d(0,-18px,0) scale(.96);opacity:.72}
  to{transform:translate3d(-42px,28px,0) scale(1.08);opacity:1}
}

@media(max-width:980px){
  .hero-v55{
    background:
      radial-gradient(circle at 12% 20%, rgba(64,197,255,.12), transparent 38%),
      radial-gradient(circle at 88% 55%, rgba(116,82,255,.10), transparent 42%),
      linear-gradient(145deg,#fff 0%,#f7fbff 52%,#f8f6ff 100%) !important;
  }
  .hero-v55::after{
    width:360px;
    height:360px;
    right:-180px;
  }
}


/* =========================================================
   V7.4 — FOUR SERVICE CARDS ORBIT AROUND THE 360 CORE
   Cards stay upright while their positions rotate continuously.
   ========================================================= */

@media(min-width:981px){
  .hero-v55-visual .fc-web,
  .hero-v55-visual .fc-marketing,
  .hero-v55-visual .fc-brand,
  .hero-v55-visual .fc-growth{
    left:50% !important;
    right:auto !important;
    top:43% !important;
    bottom:auto !important;
    margin:0 !important;
    transform-origin:0 0 !important;
    will-change:transform;
  }

  .hero-v55-visual .fc-web{
    animation:cardOrbitWeb 22s linear infinite !important;
  }
  .hero-v55-visual .fc-marketing{
    animation:cardOrbitMarketing 22s linear infinite !important;
  }
  .hero-v55-visual .fc-growth{
    animation:cardOrbitGrowth 22s linear infinite !important;
  }
  .hero-v55-visual .fc-brand{
    animation:cardOrbitBrand 22s linear infinite !important;
  }
}

@keyframes cardOrbitWeb{
  from{transform:rotate(-135deg) translateX(315px) rotate(135deg) translate(-50%,-50%)}
  to{transform:rotate(225deg) translateX(315px) rotate(-225deg) translate(-50%,-50%)}
}
@keyframes cardOrbitMarketing{
  from{transform:rotate(-45deg) translateX(315px) rotate(45deg) translate(-50%,-50%)}
  to{transform:rotate(315deg) translateX(315px) rotate(-315deg) translate(-50%,-50%)}
}
@keyframes cardOrbitGrowth{
  from{transform:rotate(45deg) translateX(315px) rotate(-45deg) translate(-50%,-50%)}
  to{transform:rotate(405deg) translateX(315px) rotate(-405deg) translate(-50%,-50%)}
}
@keyframes cardOrbitBrand{
  from{transform:rotate(135deg) translateX(315px) rotate(-135deg) translate(-50%,-50%)}
  to{transform:rotate(495deg) translateX(315px) rotate(-495deg) translate(-50%,-50%)}
}

/* Mobile keeps the safe static layout */
@media(max-width:980px){
  .hero-v55-visual .fc-web,
  .hero-v55-visual .fc-marketing,
  .hero-v55-visual .fc-brand,
  .hero-v55-visual .fc-growth{
    animation:none !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .hero-v55-visual .fc-web,
  .hero-v55-visual .fc-marketing,
  .hero-v55-visual .fc-brand,
  .hero-v55-visual .fc-growth{
    animation:none !important;
  }
}


/* V7.5 — darker/richer hero gradient, layout unchanged */
.hero-v55{
  background:
    radial-gradient(circle at 9% 30%, rgba(31, 168, 255, .24) 0%, rgba(31,168,255,.11) 24%, transparent 46%),
    radial-gradient(circle at 88% 20%, rgba(101, 66, 238, .23) 0%, rgba(101,66,238,.11) 27%, transparent 49%),
    radial-gradient(circle at 72% 82%, rgba(21, 105, 230, .18) 0%, rgba(21,105,230,.06) 25%, transparent 42%),
    linear-gradient(135deg, #f5faff 0%, #eaf4ff 40%, #eee9ff 72%, #f7fbff 100%) !important;
}

.hero-service-bg{
  background:
    linear-gradient(
      115deg,
      rgba(26,122,238,.07) 0%,
      rgba(255,255,255,0) 28%,
      rgba(102,66,238,.10) 54%,
      rgba(30,177,236,.075) 76%,
      rgba(255,255,255,0) 100%
    ) !important;
  background-size:220% 220% !important;
}

.hero-v55::before{
  background:
    radial-gradient(circle,
      rgba(35,184,255,.20) 0%,
      rgba(33,118,235,.10) 47%,
      transparent 73%
    ) !important;
}

.hero-v55::after{
  background:
    radial-gradient(circle,
      rgba(104,66,238,.17) 0%,
      rgba(54,103,226,.075) 47%,
      transparent 73%
    ) !important;
}

@media(max-width:980px){
  .hero-v55{
    background:
      radial-gradient(circle at 12% 20%, rgba(31,168,255,.20), transparent 40%),
      radial-gradient(circle at 88% 55%, rgba(101,66,238,.18), transparent 44%),
      linear-gradient(145deg,#f5faff 0%,#eaf4ff 52%,#eeeaff 100%) !important;
  }
}


/* V7.6 — larger header logo only */
.site-header .ds360-header-logo{
  height:58px !important;
  width:auto !important;
  max-width:125px !important;
  object-fit:contain !important;
}

@media(max-width:950px){
  .site-header .ds360-header-logo{
    height:54px !important;
    max-width:112px !important;
  }
}


/* =========================================================
   V7.7 — XL HEADER LOGO
   Logo is visually larger and may hang below the header.
   Header/nav layout remains unchanged.
   ========================================================= */

.site-header,
.site-header .header-inner{
  overflow:visible !important;
}

.site-header .logo.ds360-logo-link{
  position:relative !important;
  align-self:stretch !important;
  display:flex !important;
  align-items:center !important;
  overflow:visible !important;
  z-index:20 !important;
}

.site-header .ds360-header-logo{
  position:relative !important;
  height:88px !important;
  width:auto !important;
  max-width:160px !important;
  object-fit:contain !important;
  transform:translateY(8px) !important;
  transform-origin:center center !important;
  filter:drop-shadow(0 8px 12px rgba(17,74,160,.15)) !important;
  z-index:21 !important;
}

/* Phone: still larger, but controlled */
@media(max-width:950px){
  .site-header .ds360-header-logo{
    height:72px !important;
    max-width:135px !important;
    transform:translateY(6px) !important;
  }
}


/* =========================================================
   V7.8 — TRUE INFINITE MARQUEE + HOMEPAGE SPACING FIX
   ========================================================= */

/* Marquee: continuous loop, no stopping/gap at the end */
.marquee,
.ticker,
.service-marquee,
.home-marquee,
.hero-marquee{
  overflow:hidden !important;
  width:100% !important;
}

.marquee-track,
.ticker-track,
.service-marquee-track,
.home-marquee-track,
.hero-marquee-track{
  display:flex !important;
  width:max-content !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
  will-change:transform !important;
  animation:ds360InfiniteTicker 22s linear infinite !important;
}

@keyframes ds360InfiniteTicker{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

/* Existing ticker names found in older theme variants */
.motion-strip-track,
.v55-marquee-track,
.brand-ticker-track{
  display:flex !important;
  width:max-content !important;
  min-width:max-content !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
  will-change:transform !important;
  animation:ds360InfiniteTicker 22s linear infinite !important;
}

/* Tighten the large blank area shown below the stats bar */
.stats-strip,
.home-stats,
.momentum-strip,
.agency-stats{
  margin-bottom:0 !important;
}

.capabilities-section,
.services-preview,
.what-we-do,
.home-capabilities{
  padding-top:72px !important;
  margin-top:0 !important;
}

/* Tighten heading -> cards spacing */
.capabilities-section .section-head,
.services-preview .section-head,
.what-we-do .section-head,
.home-capabilities .section-head{
  margin-bottom:34px !important;
}

.capabilities-section .cards,
.capabilities-section .service-grid,
.services-preview .cards,
.services-preview .service-grid,
.what-we-do .cards,
.what-we-do .service-grid,
.home-capabilities .cards,
.home-capabilities .service-grid{
  margin-top:0 !important;
}

@media(max-width:980px){
  .capabilities-section,
  .services-preview,
  .what-we-do,
  .home-capabilities{
    padding-top:48px !important;
  }
}


/* =========================================================
   V7.9 — PREMIUM PROOF / METRICS REDESIGN
   ========================================================= */

.proof-section-v79{
  padding:48px 0 58px !important;
  background:transparent !important;
}

.proof-strip-v79{
  position:relative;
  min-height:238px;
  display:grid !important;
  grid-template-columns:1.45fr 2fr !important;
  gap:0 !important;
  overflow:hidden;
  border-radius:30px !important;
  border:1px solid rgba(106,82,255,.20) !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(49,153,255,.16), transparent 34%),
    radial-gradient(circle at 100% 100%, rgba(130,78,255,.18), transparent 37%),
    linear-gradient(120deg,#101d4d 0%,#171a4e 38%,#24134d 68%,#31145a 100%) !important;
  box-shadow:
    0 28px 70px rgba(33,22,88,.18),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
  isolation:isolate;
}

.proof-grid-v79{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.14;
  background-image:
    linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px);
  background-size:42px 42px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 20%,#000 84%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 20%,#000 84%,transparent);
}

.proof-glow{
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  filter:blur(6px);
  z-index:0;
}
.proof-glow-a{
  width:240px;height:240px;
  left:-70px;top:-95px;
  background:radial-gradient(circle,rgba(41,180,255,.28),transparent 67%);
  animation:proofGlowA 9s ease-in-out infinite alternate;
}
.proof-glow-b{
  width:280px;height:280px;
  right:-90px;bottom:-120px;
  background:radial-gradient(circle,rgba(151,74,255,.26),transparent 67%);
  animation:proofGlowB 11s ease-in-out infinite alternate;
}

.proof-intro-v79{
  position:relative;
  z-index:2;
  padding:34px 38px 32px !important;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-right:1px solid rgba(255,255,255,.10);
}

.proof-eyebrow-v79{
  align-self:flex-start;
  display:inline-flex !important;
  align-items:center;
  gap:8px;
  min-height:29px;
  padding:0 13px !important;
  margin-bottom:16px !important;
  border:1px solid rgba(171,153,255,.32) !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,rgba(110,87,255,.95),rgba(151,88,255,.92)) !important;
  color:#fff !important;
  font-size:9px !important;
  letter-spacing:.18em !important;
  font-weight:800 !important;
  box-shadow:0 8px 25px rgba(111,68,255,.20);
}
.proof-eyebrow-v79 i{
  width:6px;height:6px;border-radius:50%;
  background:#70dcff;
  box-shadow:0 0 12px #54ceff;
  animation:proofPulse 2s ease-in-out infinite;
}

.proof-intro-v79 h3{
  max-width:440px;
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(28px,2.25vw,39px) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
  font-weight:800 !important;
}

.proof-intro-v79 p{
  max-width:390px;
  margin:15px 0 0 !important;
  color:rgba(236,241,255,.68) !important;
  font-size:12px !important;
  line-height:1.55 !important;
}

.proof-mini-line{
  display:flex;
  gap:6px;
  margin-top:20px;
}
.proof-mini-line span{
  display:block;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,#55ccff,#886cff);
}
.proof-mini-line span:nth-child(1){width:38px}
.proof-mini-line span:nth-child(2){width:18px;opacity:.65}
.proof-mini-line span:nth-child(3){width:8px;opacity:.38}

.proof-metrics-v79{
  position:relative;
  z-index:2;
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  align-items:stretch;
}

.proof-item-v79{
  position:relative;
  min-width:0;
  padding:31px 26px 27px !important;
  display:flex !important;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start !important;
  border-left:1px solid rgba(255,255,255,.095) !important;
  transition:background .35s ease,transform .35s ease;
  overflow:hidden;
}

.proof-item-v79:first-child{
  border-left:none !important;
}

.proof-item-v79::after{
  content:"";
  position:absolute;
  left:22px;right:22px;bottom:0;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,#32bfff,#805cff,#aa62ff);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .38s ease;
}

.proof-item-v79:hover{
  background:rgba(255,255,255,.045);
  transform:translateY(-2px);
}
.proof-item-v79:hover::after{
  transform:scaleX(1);
}

.proof-index{
  position:absolute;
  top:18px;
  right:18px;
  color:rgba(255,255,255,.25);
  font-size:9px;
  letter-spacing:.13em;
  font-weight:800;
}

.proof-icon{
  width:34px;height:34px;
  display:grid;
  place-items:center;
  margin-bottom:12px;
  border:1px solid rgba(147,181,255,.20);
  border-radius:11px;
  background:linear-gradient(145deg,rgba(60,158,255,.14),rgba(139,85,255,.13));
  color:#85d8ff;
  font-size:12px;
  font-weight:800;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}

.proof-item-v79 b{
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(36px,3vw,52px) !important;
  line-height:.95 !important;
  letter-spacing:-.055em !important;
  font-weight:800 !important;
}

.proof-item-v79 > span:not(.proof-index){
  margin-top:10px;
  color:#fff !important;
  font-size:12px !important;
  font-weight:700 !important;
}

.proof-item-v79 small{
  margin-top:5px;
  color:rgba(221,230,255,.53);
  font-size:9px;
  line-height:1.35;
}

@keyframes proofGlowA{
  from{transform:translate3d(-10px,-4px,0) scale(.94);opacity:.62}
  to{transform:translate3d(28px,22px,0) scale(1.08);opacity:1}
}
@keyframes proofGlowB{
  from{transform:translate3d(10px,10px,0) scale(.96);opacity:.58}
  to{transform:translate3d(-32px,-20px,0) scale(1.10);opacity:1}
}
@keyframes proofPulse{
  0%,100%{opacity:.45;transform:scale(.75)}
  50%{opacity:1;transform:scale(1.15)}
}

@media(max-width:980px){
  .proof-strip-v79{
    grid-template-columns:1fr !important;
  }
  .proof-intro-v79{
    border-right:none !important;
    border-bottom:1px solid rgba(255,255,255,.10);
  }
}

@media(max-width:700px){
  .proof-section-v79{
    padding:30px 0 38px !important;
  }
  .proof-strip-v79{
    border-radius:22px !important;
  }
  .proof-intro-v79{
    padding:26px 23px 24px !important;
  }
  .proof-intro-v79 h3{
    font-size:30px !important;
  }
  .proof-metrics-v79{
    grid-template-columns:1fr !important;
  }
  .proof-item-v79{
    min-height:135px;
    padding:22px 23px !important;
    border-left:none !important;
    border-top:1px solid rgba(255,255,255,.095) !important;
  }
  .proof-item-v79:first-child{
    border-top:none !important;
  }
  .proof-item-v79 b{
    font-size:40px !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .proof-glow,
  .proof-eyebrow-v79 i{
    animation:none !important;
  }
}


/* =========================================================
   V8.0 — MOBILE FEATURE STRIP REDESIGN
   Desktop stays unchanged.
   ========================================================= */

@media(max-width:700px){

  .hero-v65-features{
    width:calc(100% - 24px) !important;
    margin:16px auto 0 !important;
    padding:10px !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    border:1px solid rgba(44,117,255,.12) !important;
    border-radius:22px !important;
    background:
      linear-gradient(145deg,rgba(255,255,255,.96),rgba(248,251,255,.94)) !important;
    box-shadow:
      0 14px 36px rgba(28,75,151,.08),
      inset 0 1px 0 rgba(255,255,255,.9) !important;
    overflow:visible !important;
  }

  .hero-v65-features .v55-feature{
    position:relative !important;
    min-height:138px !important;
    padding:16px 14px 14px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:10px !important;
    border:1px solid rgba(44,117,255,.10) !important;
    border-radius:17px !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(103,84,255,.08), transparent 40%),
      linear-gradient(145deg,#ffffff,#f8fbff) !important;
    box-shadow:0 8px 22px rgba(24,72,145,.055) !important;
    overflow:hidden !important;
  }

  .hero-v65-features .v55-feature::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:3px;
    background:linear-gradient(90deg,#2aa8ff,#526eff,#8a57ff);
    opacity:.78;
  }

  .hero-v65-features .v55-feature::after{
    display:none !important;
  }

  .hero-v65-features .v55-feature-icon{
    width:42px !important;
    height:42px !important;
    flex:0 0 42px !important;
    display:grid !important;
    place-items:center !important;
    margin:0 !important;
    border:1px solid rgba(45,119,255,.14) !important;
    border-radius:13px !important;
    background:
      linear-gradient(145deg,rgba(242,248,255,.98),rgba(235,241,255,.96)) !important;
    color:#176ef2 !important;
    font-size:15px !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9) !important;
  }

  .hero-v65-features .v55-feature > div{
    width:100% !important;
  }

  .hero-v65-features .v55-feature strong{
    display:block !important;
    margin-bottom:5px !important;
    color:#08183d !important;
    font-size:13px !important;
    line-height:1.2 !important;
    letter-spacing:-.02em !important;
  }

  .hero-v65-features .v55-feature small{
    display:block !important;
    color:#61708e !important;
    font-size:10px !important;
    line-height:1.45 !important;
  }
}

/* Very small phones: still premium, but one-column for readability */
@media(max-width:390px){
  .hero-v65-features{
    grid-template-columns:1fr !important;
  }

  .hero-v65-features .v55-feature{
    min-height:104px !important;
    flex-direction:row !important;
    align-items:center !important;
    gap:13px !important;
    padding:14px !important;
  }

  .hero-v65-features .v55-feature > div{
    flex:1 1 auto !important;
  }
}


/* =========================================================
   V8.1 — MOBILE PROOF SECTION OPTIMIZATION
   Desktop remains unchanged.
   ========================================================= */

@media(max-width:700px){

  .proof-section-v79{
    padding:26px 0 34px !important;
  }

  .proof-section-v79 .container{
    width:calc(100% - 24px) !important;
    max-width:none !important;
    margin:0 auto !important;
  }

  .proof-strip-v79{
    min-height:0 !important;
    display:block !important;
    border-radius:22px !important;
    overflow:hidden !important;
  }

  /* Compact intro */
  .proof-intro-v79{
    padding:24px 20px 20px !important;
    border-right:none !important;
    border-bottom:1px solid rgba(255,255,255,.10) !important;
  }

  .proof-eyebrow-v79{
    min-height:27px !important;
    padding:0 12px !important;
    margin-bottom:14px !important;
    font-size:8px !important;
  }

  .proof-intro-v79 h3{
    max-width:100% !important;
    font-size:30px !important;
    line-height:1.02 !important;
    letter-spacing:-.045em !important;
  }

  .proof-intro-v79 p{
    margin-top:12px !important;
    max-width:100% !important;
    font-size:11px !important;
    line-height:1.5 !important;
  }

  .proof-mini-line{
    margin-top:16px !important;
  }

  /* 2 + 1 mobile metric layout */
  .proof-metrics-v79{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
  }

  .proof-item-v79{
    min-height:170px !important;
    padding:20px 18px 18px !important;
    border-top:none !important;
    border-left:none !important;
    border-right:1px solid rgba(255,255,255,.09) !important;
    border-bottom:1px solid rgba(255,255,255,.09) !important;
    justify-content:flex-start !important;
  }

  .proof-item-v79:nth-child(2){
    border-right:none !important;
  }

  .proof-item-v79:nth-child(3){
    grid-column:1 / -1 !important;
    min-height:128px !important;
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    grid-template-rows:auto auto auto !important;
    column-gap:14px !important;
    align-items:center !important;
    border-right:none !important;
    border-bottom:none !important;
  }

  .proof-index{
    top:15px !important;
    right:15px !important;
    font-size:8px !important;
  }

  .proof-icon{
    width:32px !important;
    height:32px !important;
    margin-bottom:10px !important;
    border-radius:10px !important;
  }

  .proof-item-v79 b{
    font-size:42px !important;
    line-height:.95 !important;
  }

  .proof-item-v79 > span:not(.proof-index){
    margin-top:8px !important;
    font-size:11px !important;
  }

  .proof-item-v79 small{
    margin-top:4px !important;
    font-size:8px !important;
  }

  /* Horizontal layout for the 3rd metric */
  .proof-item-v79:nth-child(3) .proof-icon{
    grid-row:1 / 4 !important;
    margin:0 !important;
  }

  .proof-item-v79:nth-child(3) b{
    grid-column:2 !important;
    grid-row:1 !important;
    font-size:40px !important;
  }

  .proof-item-v79:nth-child(3) > span:not(.proof-index){
    grid-column:2 !important;
    grid-row:2 !important;
    margin-top:2px !important;
  }

  .proof-item-v79:nth-child(3) small{
    grid-column:2 !important;
    grid-row:3 !important;
  }

  .proof-item-v79:nth-child(3)::after{
    display:none !important;
  }
}

/* Narrow phones: retain the same compact layout */
@media(max-width:390px){
  .proof-intro-v79{
    padding:21px 17px 18px !important;
  }

  .proof-intro-v79 h3{
    font-size:27px !important;
  }

  .proof-item-v79{
    min-height:158px !important;
    padding:18px 14px 16px !important;
  }

  .proof-item-v79 b{
    font-size:38px !important;
  }

  .proof-item-v79:nth-child(3){
    min-height:118px !important;
  }
}


/* =========================================================
   V8.2 — COLORFUL LOWER SECTIONS + MOTION + MOBILE POLISH
   ========================================================= */

/* Reduce the big gap between proof and capabilities */
.proof-section-v79{
  padding-bottom:22px !important;
}
.services-section-v82{
  position:relative;
  overflow:hidden;
  padding-top:54px !important;
  padding-bottom:86px !important;
  background:
    radial-gradient(circle at 7% 18%, rgba(44,181,255,.12), transparent 28%),
    radial-gradient(circle at 91% 24%, rgba(129,77,255,.11), transparent 30%),
    linear-gradient(180deg,#ffffff 0%,#fbfdff 54%,#f8f7ff 100%);
}
.services-section-v82::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.42;
  background-image:
    linear-gradient(rgba(43,119,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(43,119,255,.035) 1px,transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:linear-gradient(to bottom,transparent,#000 15%,#000 85%,transparent);
  mask-image:linear-gradient(to bottom,transparent,#000 15%,#000 85%,transparent);
}
.services-section-v82 > .container{
  position:relative;
  z-index:2;
}

/* Heading presentation */
.services-section-v82 .section-head{
  margin-bottom:38px !important;
  align-items:end !important;
}
.services-section-v82 .section-kicker{
  border:1px solid rgba(116,83,255,.18) !important;
  background:linear-gradient(90deg,rgba(237,245,255,.98),rgba(246,239,255,.98)) !important;
  color:#6c48f5 !important;
  box-shadow:0 8px 25px rgba(89,76,218,.08);
}
.services-section-v82 .section-head h2,
.work-section-v82 .section-head h2,
.process-section-v82 .section-head h2,
.why-section-v82 .section-head h2{
  position:relative;
  display:inline-block;
  background:linear-gradient(100deg,#071634 0%,#071634 44%,#176cf1 67%,#8055f7 82%,#071634 100%);
  background-size:260% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent !important;
}
.services-section-v82 .section-head.visible h2,
.work-section-v82 .section-head.visible h2,
.process-section-v82 .section-head.visible h2,
.why-section-v82 .section-head.visible h2{
  animation:v82HeadingReveal .8s cubic-bezier(.2,.8,.2,1) both,
            v82HeadingFlow 7s ease-in-out 1s infinite;
}
.services-section-v82 .section-head h2::after,
.work-section-v82 .section-head h2::after,
.process-section-v82 .section-head h2::after,
.why-section-v82 .section-head h2::after{
  content:"";
  display:block;
  width:72px;
  height:4px;
  margin-top:12px;
  border-radius:999px;
  background:linear-gradient(90deg,#2bbdff,#286fff,#8e54ff);
  transform-origin:left;
  transform:scaleX(0);
  box-shadow:0 5px 16px rgba(45,118,255,.20);
}
.services-section-v82 .section-head.visible h2::after,
.work-section-v82 .section-head.visible h2::after,
.process-section-v82 .section-head.visible h2::after,
.why-section-v82 .section-head.visible h2::after{
  animation:v82LineReveal .75s .35s cubic-bezier(.2,.8,.2,1) forwards;
}

/* Services colorful card redesign */
.services-grid-v82{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
}
.service-v82{
  position:relative !important;
  min-height:278px !important;
  padding:27px 28px 25px !important;
  border:1px solid rgba(34,105,232,.11) !important;
  border-radius:24px !important;
  overflow:hidden !important;
  background:#fff !important;
  box-shadow:0 15px 36px rgba(26,63,128,.07) !important;
  transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease,border-color .4s ease !important;
}
.service-v82:nth-child(1){
  background:
    radial-gradient(circle at 100% 0%,rgba(39,177,255,.22),transparent 44%),
    linear-gradient(145deg,#ffffff,#f1faff) !important;
}
.service-v82:nth-child(2){
  background:
    radial-gradient(circle at 100% 0%,rgba(126,85,255,.20),transparent 44%),
    linear-gradient(145deg,#ffffff,#f7f2ff) !important;
}
.service-v82:nth-child(3){
  background:
    radial-gradient(circle at 100% 0%,rgba(45,111,255,.19),transparent 44%),
    linear-gradient(145deg,#ffffff,#f2f6ff) !important;
}
.service-v82:nth-child(4){
  background:
    radial-gradient(circle at 100% 0%,rgba(41,205,190,.17),transparent 44%),
    linear-gradient(145deg,#ffffff,#f1fffc) !important;
}
.service-v82:nth-child(5){
  background:
    radial-gradient(circle at 100% 0%,rgba(147,79,255,.18),transparent 44%),
    linear-gradient(145deg,#ffffff,#faf3ff) !important;
}
.service-v82:nth-child(6){
  background:
    radial-gradient(circle at 100% 0%,rgba(38,166,255,.18),transparent 44%),
    linear-gradient(145deg,#ffffff,#f0f8ff) !important;
}
.service-v82::before{
  content:"";
  position:absolute;
  width:124px;height:124px;
  right:-38px;top:-42px;
  border:1px solid rgba(40,119,255,.14);
  border-radius:50%;
  box-shadow:0 0 0 18px rgba(60,124,255,.035),0 0 0 38px rgba(107,80,255,.025);
  transition:transform .55s ease;
}
.service-v82::after{
  position:absolute;
  right:24px;
  bottom:22px;
  width:48px;height:48px;
  display:grid;
  place-items:center;
  border-radius:15px;
  background:linear-gradient(145deg,rgba(233,245,255,.98),rgba(239,234,255,.98));
  border:1px solid rgba(55,119,245,.13);
  color:#176ff1;
  font-size:16px;
  font-weight:800;
  box-shadow:0 8px 22px rgba(34,91,187,.08);
}
.service-v82:nth-child(1)::after{content:"</>"}
.service-v82:nth-child(2)::after{content:"✦"}
.service-v82:nth-child(3)::after{content:"↗"}
.service-v82:nth-child(4)::after{content:"◎"}
.service-v82:nth-child(5)::after{content:"▶"}
.service-v82:nth-child(6)::after{content:"AI"}
.service-v82 .service-num{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:38px;height:28px;
  margin-bottom:60px !important;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(46,112,235,.12);
  color:#155ecb !important;
  font-size:10px !important;
  letter-spacing:.10em;
}
.service-v82 h3{
  max-width:88%;
  margin-bottom:12px !important;
  font-size:25px !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
  color:#071634 !important;
}
.service-v82 p{
  max-width:86%;
  margin:0 !important;
  color:#5d6982 !important;
  font-size:14px !important;
  line-height:1.65 !important;
}
.service-v82:hover{
  transform:translateY(-8px) !important;
  border-color:rgba(73,101,245,.22) !important;
  box-shadow:0 25px 55px rgba(42,71,145,.13) !important;
}
.service-v82:hover::before{
  transform:scale(1.12) rotate(18deg);
}
.services-grid-v82.visible .service-v82{
  animation:v82CardIn .68s cubic-bezier(.2,.8,.2,1) both;
}
.services-grid-v82.visible .service-v82:nth-child(2){animation-delay:.08s}
.services-grid-v82.visible .service-v82:nth-child(3){animation-delay:.16s}
.services-grid-v82.visible .service-v82:nth-child(4){animation-delay:.24s}
.services-grid-v82.visible .service-v82:nth-child(5){animation-delay:.32s}
.services-grid-v82.visible .service-v82:nth-child(6){animation-delay:.40s}

/* Work section */
.work-section-v82{
  padding-top:78px !important;
  padding-bottom:82px !important;
  background:
    radial-gradient(circle at 15% 15%,rgba(41,183,255,.09),transparent 25%),
    radial-gradient(circle at 85% 25%,rgba(132,75,255,.09),transparent 28%),
    #fff !important;
}
.work-grid-v82 .work-card{
  border-radius:23px !important;
  overflow:hidden !important;
  border:1px solid rgba(42,105,218,.10) !important;
  box-shadow:0 14px 34px rgba(24,68,139,.07) !important;
  transition:transform .4s ease,box-shadow .4s ease !important;
}
.work-grid-v82 .work-card:hover{
  transform:translateY(-7px);
  box-shadow:0 25px 52px rgba(24,68,139,.13) !important;
}

/* Process */
.process-section-v82{
  padding-top:80px !important;
  padding-bottom:80px !important;
  background:linear-gradient(180deg,#f8fbff 0%,#f7f5ff 100%) !important;
}
.process-v82{
  gap:12px !important;
}
.process-item-v82{
  position:relative;
  overflow:hidden;
  border-radius:20px !important;
  border:1px solid rgba(56,108,221,.10) !important;
  background:rgba(255,255,255,.86) !important;
  box-shadow:0 12px 30px rgba(28,65,130,.055);
  transition:transform .35s ease,background .35s ease !important;
}
.process-item-v82::after{
  content:"";
  position:absolute;
  left:0;bottom:0;
  width:100%;height:3px;
  background:linear-gradient(90deg,#35c2ff,#276fff,#8b53ff);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .4s ease;
}
.process-item-v82:hover{
  transform:translateY(-5px);
  background:#fff !important;
}
.process-item-v82:hover::after{transform:scaleX(1)}
.process-v82.visible .process-item-v82{
  animation:v82CardIn .65s cubic-bezier(.2,.8,.2,1) both;
}
.process-v82.visible .process-item-v82:nth-child(2){animation-delay:.08s}
.process-v82.visible .process-item-v82:nth-child(3){animation-delay:.16s}
.process-v82.visible .process-item-v82:nth-child(4){animation-delay:.24s}
.process-v82.visible .process-item-v82:nth-child(5){animation-delay:.32s}

/* Capability band */
.capability-band-v82{
  padding:58px 0 !important;
  background:#fff !important;
}
.capability-band-v82 .capability-shell{
  border-radius:26px !important;
  border:1px solid rgba(92,78,231,.13) !important;
  background:
    radial-gradient(circle at 0% 0%,rgba(48,183,255,.14),transparent 36%),
    radial-gradient(circle at 100% 100%,rgba(137,73,255,.15),transparent 40%),
    linear-gradient(125deg,#0c1b49,#171848 48%,#2a1556) !important;
  box-shadow:0 24px 55px rgba(29,27,89,.14) !important;
}
.capability-band-v82 .capability-copy h3,
.capability-band-v82 .capability-list span{
  color:#fff !important;
}

/* Why section */
.why-section-v82{
  padding-top:76px !important;
  background:
    radial-gradient(circle at 90% 10%,rgba(125,78,255,.10),transparent 25%),
    #fff !important;
}
.why-section-v82 .why-card{
  border-radius:21px !important;
  border:1px solid rgba(49,109,228,.10) !important;
  background:linear-gradient(145deg,#fff,#f8fbff) !important;
  box-shadow:0 13px 30px rgba(25,65,132,.055) !important;
  transition:transform .35s ease,box-shadow .35s ease !important;
}
.why-section-v82 .why-card:hover{
  transform:translateY(-6px);
  box-shadow:0 22px 44px rgba(25,65,132,.11) !important;
}

/* Motion */
@keyframes v82HeadingReveal{
  from{opacity:0;transform:translate3d(0,28px,0);filter:blur(8px)}
  to{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}
}
@keyframes v82HeadingFlow{
  0%,100%{background-position:0% 50%}
  50%{background-position:100% 50%}
}
@keyframes v82LineReveal{
  to{transform:scaleX(1)}
}
@keyframes v82CardIn{
  from{opacity:0;transform:translate3d(0,30px,0) scale(.975)}
  to{opacity:1;transform:translate3d(0,0,0) scale(1)}
}

/* =========================================================
   MOBILE
   ========================================================= */
@media(max-width:980px){
  .proof-section-v79{padding-bottom:14px !important}
  .services-section-v82{
    padding-top:36px !important;
    padding-bottom:54px !important;
  }
  .services-section-v82 .section-head{
    margin-bottom:26px !important;
    gap:18px !important;
  }
  .services-grid-v82{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:13px !important;
  }
  .service-v82{
    min-height:232px !important;
    padding:20px !important;
    border-radius:20px !important;
  }
  .service-v82 .service-num{
    margin-bottom:42px !important;
  }
  .service-v82 h3{
    font-size:20px !important;
  }
  .service-v82 p{
    max-width:100%;
    font-size:12px !important;
  }
  .service-v82::after{
    width:42px;height:42px;
    right:17px;bottom:17px;
  }

  .work-section-v82,
  .process-section-v82,
  .why-section-v82{
    padding-top:56px !important;
    padding-bottom:56px !important;
  }
}

@media(max-width:620px){
  .proof-section-v79{padding-bottom:8px !important}

  .services-section-v82{
    padding-top:28px !important;
    padding-bottom:44px !important;
  }

  .services-section-v82 .section-head,
  .work-section-v82 .section-head,
  .why-section-v82 .section-head{
    display:block !important;
  }

  .services-section-v82 .section-head h2,
  .work-section-v82 .section-head h2,
  .process-section-v82 .section-head h2,
  .why-section-v82 .section-head h2{
    font-size:clamp(46px,14vw,66px) !important;
    line-height:.93 !important;
    margin-bottom:18px !important;
  }

  .services-section-v82 .section-intro,
  .work-section-v82 .section-intro,
  .why-section-v82 .section-intro{
    max-width:100% !important;
    font-size:14px !important;
    line-height:1.6 !important;
  }

  /* Phone layout: cards become rich horizontal service tiles */
  .services-grid-v82{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .service-v82{
    min-height:154px !important;
    padding:19px 76px 19px 19px !important;
    border-radius:18px !important;
  }
  .service-v82 .service-num{
    width:34px;height:25px;
    margin-bottom:18px !important;
  }
  .service-v82 h3{
    max-width:100%;
    margin-bottom:8px !important;
    font-size:20px !important;
  }
  .service-v82 p{
    font-size:11px !important;
    line-height:1.5 !important;
  }
  .service-v82::before{
    width:90px;height:90px;
    right:-28px;top:-30px;
  }
  .service-v82::after{
    right:18px;
    bottom:18px;
    width:43px;height:43px;
  }

  .work-section-v82,
  .process-section-v82,
  .why-section-v82{
    padding-top:44px !important;
    padding-bottom:44px !important;
  }

  .process-v82{
    display:grid !important;
    grid-template-columns:1fr !important;
  }
  .process-item-v82{
    min-height:0 !important;
    padding:20px !important;
  }

  .capability-band-v82{
    padding:38px 0 !important;
  }
  .capability-band-v82 .capability-shell{
    border-radius:20px !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .services-section-v82 .section-head h2,
  .work-section-v82 .section-head h2,
  .process-section-v82 .section-head h2,
  .why-section-v82 .section-head h2,
  .services-grid-v82 .service-v82,
  .process-v82 .process-item-v82{
    animation:none !important;
  }
}


/* =========================================================
   V8.3 — SERVICES TEXT FORMATION + SPACING REFINEMENT
   Keeps the colorful card direction, fixes composition.
   ========================================================= */

/* Reduce section-to-section whitespace */
.proof-section-v79{
  padding-bottom:8px !important;
}

.services-section-v82{
  padding-top:26px !important;
  padding-bottom:64px !important;
}

/* Better heading composition */
.services-section-v82 .section-head{
  display:grid !important;
  grid-template-columns:minmax(0, .92fr) minmax(340px, .78fr) !important;
  align-items:end !important;
  column-gap:70px !important;
  row-gap:0 !important;
  margin-bottom:28px !important;
}

.services-section-v82 .section-head > div:first-child{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
}

.services-section-v82 .section-kicker{
  order:0;
  margin:0 0 13px !important;
}

.services-section-v82 .section-head h2{
  order:1;
  margin:0 !important;
  max-width:500px !important;
  font-size:clamp(58px,5.6vw,88px) !important;
  line-height:.89 !important;
  letter-spacing:-.065em !important;
}

.services-section-v82 .section-head h2::after{
  margin-top:14px !important;
}

.services-section-v82 .section-intro{
  align-self:end !important;
  max-width:480px !important;
  margin:0 0 10px !important;
  font-size:15px !important;
  line-height:1.55 !important;
  color:#596476 !important;
}

/* Cards: remove giant empty upper half, create balanced hierarchy */
.services-grid-v82{
  gap:14px !important;
}

.service-v82{
  min-height:230px !important;
  padding:22px 24px 24px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
}

.service-v82 .service-num{
  width:36px !important;
  height:26px !important;
  margin:0 0 34px !important;
  flex:0 0 auto !important;
}

.service-v82 h3{
  max-width:78% !important;
  margin:0 0 10px !important;
  font-size:23px !important;
  line-height:1.05 !important;
  letter-spacing:-.04em !important;
}

.service-v82 p{
  max-width:76% !important;
  margin:0 !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

/* Keep icon in a fixed intentional bottom-right area */
.service-v82::after{
  right:20px !important;
  bottom:20px !important;
  width:46px !important;
  height:46px !important;
}

/* Decorative circle stays in corner, not over card number */
.service-v82::before{
  width:108px !important;
  height:108px !important;
  right:-38px !important;
  top:-42px !important;
  opacity:.72 !important;
}

/* Tighter transition to the next section */
.work-section-v82{
  padding-top:58px !important;
}

/* Tablet */
@media(max-width:980px){
  .services-section-v82{
    padding-top:22px !important;
    padding-bottom:50px !important;
  }

  .services-section-v82 .section-head{
    grid-template-columns:1fr 1fr !important;
    column-gap:32px !important;
    margin-bottom:24px !important;
  }

  .services-section-v82 .section-head h2{
    font-size:clamp(52px,8vw,72px) !important;
  }

  .service-v82{
    min-height:210px !important;
    padding:20px !important;
  }

  .service-v82 .service-num{
    margin-bottom:28px !important;
  }

  .service-v82 h3{
    max-width:84% !important;
    font-size:21px !important;
  }

  .service-v82 p{
    max-width:82% !important;
    font-size:12px !important;
  }
}

/* Phone: clean editorial heading + compact cards */
@media(max-width:620px){
  .proof-section-v79{
    padding-bottom:4px !important;
  }

  .services-section-v82{
    padding-top:18px !important;
    padding-bottom:38px !important;
  }

  .services-section-v82 .section-head{
    display:block !important;
    margin-bottom:20px !important;
  }

  .services-section-v82 .section-kicker{
    margin-bottom:11px !important;
  }

  .services-section-v82 .section-head h2{
    max-width:100% !important;
    font-size:clamp(44px,13.2vw,58px) !important;
    line-height:.91 !important;
    letter-spacing:-.06em !important;
    margin-bottom:18px !important;
  }

  .services-section-v82 .section-head h2::after{
    width:58px !important;
    height:3px !important;
    margin-top:10px !important;
  }

  .services-section-v82 .section-intro{
    max-width:100% !important;
    margin:0 !important;
    font-size:13px !important;
    line-height:1.55 !important;
  }

  .services-grid-v82{
    gap:10px !important;
  }

  .service-v82{
    min-height:138px !important;
    padding:16px 70px 16px 17px !important;
    justify-content:flex-start !important;
  }

  .service-v82 .service-num{
    width:32px !important;
    height:23px !important;
    margin:0 0 14px !important;
    font-size:8px !important;
  }

  .service-v82 h3{
    max-width:100% !important;
    margin-bottom:6px !important;
    font-size:18px !important;
    line-height:1.08 !important;
  }

  .service-v82 p{
    max-width:100% !important;
    font-size:10.5px !important;
    line-height:1.45 !important;
  }

  .service-v82::after{
    right:15px !important;
    bottom:15px !important;
    width:40px !important;
    height:40px !important;
    border-radius:13px !important;
  }

  .service-v82::before{
    width:82px !important;
    height:82px !important;
    right:-30px !important;
    top:-32px !important;
  }

  .work-section-v82{
    padding-top:38px !important;
  }
}

@media(max-width:390px){
  .services-section-v82{
    padding-top:14px !important;
  }

  .services-section-v82 .section-head h2{
    font-size:43px !important;
  }

  .service-v82{
    min-height:132px !important;
    padding-right:64px !important;
  }
}


/* =========================================================
   V8.4 — TIGHTER SECTION GAP + INTRO COPY VISUAL POLISH
   ========================================================= */

/* Bring What We Do Best closer to the proof section */
.proof-section-v79{
  padding-bottom:0 !important;
  margin-bottom:0 !important;
}
.services-section-v82{
  padding-top:14px !important;
}

/* Refine the supporting copy beside/below the heading */
.services-section-v82 .section-intro{
  position:relative;
  max-width:465px !important;
  padding-left:18px !important;
  margin-bottom:8px !important;
  color:#536078 !important;
  font-size:14px !important;
  line-height:1.65 !important;
  font-weight:500 !important;
  letter-spacing:-.01em !important;
}

.services-section-v82 .section-intro::before{
  content:"";
  position:absolute;
  left:0;
  top:5px;
  bottom:5px;
  width:3px;
  border-radius:999px;
  background:linear-gradient(180deg,#2fc5ff,#3578ff,#8b57ff);
  box-shadow:0 4px 14px rgba(63,108,255,.18);
}

/* Slightly tighter heading block */
.services-section-v82 .section-kicker{
  margin-bottom:10px !important;
}
.services-section-v82 .section-head{
  margin-bottom:24px !important;
}

/* Tablet */
@media(max-width:980px){
  .services-section-v82{
    padding-top:12px !important;
  }
}

/* Phone */
@media(max-width:620px){
  .proof-section-v79{
    padding-bottom:0 !important;
  }

  .services-section-v82{
    padding-top:8px !important;
  }

  .services-section-v82 .section-kicker{
    margin-bottom:9px !important;
  }

  .services-section-v82 .section-head h2{
    margin-bottom:14px !important;
  }

  .services-section-v82 .section-intro{
    padding-left:14px !important;
    margin-bottom:0 !important;
    font-size:12px !important;
    line-height:1.6 !important;
  }

  .services-section-v82 .section-intro::before{
    width:2px;
    top:3px;
    bottom:3px;
  }

  .services-section-v82 .section-head{
    margin-bottom:17px !important;
  }
}


/* =========================================================
   V8.5 — HARD FIX: PROOF -> CAPABILITIES SECTION GAP
   ========================================================= */

/* Remove inherited spacing from BOTH adjoining sections */
.proof-section,
.proof-section-v79{
  margin-bottom:0 !important;
  padding-bottom:12px !important;
}

.proof-section-v79 + .services-section-v82,
.services-section-v82{
  margin-top:0 !important;
  padding-top:24px !important;
}

/* Prevent inner wrappers from reintroducing top whitespace */
.services-section-v82 > .container,
.services-section-v82 .section-head{
  margin-top:0 !important;
}

.services-section-v82 .section-head{
  padding-top:0 !important;
}

/* Mobile: normal compact section rhythm */
@media(max-width:700px){
  .proof-section,
  .proof-section-v79{
    margin-bottom:0 !important;
    padding-bottom:6px !important;
  }

  .proof-section-v79 + .services-section-v82,
  .services-section-v82{
    margin-top:0 !important;
    padding-top:18px !important;
  }

  .services-section-v82 > .container{
    padding-top:0 !important;
    margin-top:0 !important;
  }

  .services-section-v82 .section-head{
    padding-top:0 !important;
    margin-top:0 !important;
  }
}

@media(max-width:390px){
  .proof-section,
  .proof-section-v79{
    padding-bottom:4px !important;
  }

  .proof-section-v79 + .services-section-v82,
  .services-section-v82{
    padding-top:14px !important;
  }
}


/* =========================================================
   V8.6 — FINAL VISUAL GAP FIX
   Pull capabilities upward to remove inherited whitespace.
   ========================================================= */

.proof-section-v79{
  padding-bottom:0 !important;
  margin-bottom:0 !important;
}

.proof-section-v79 + .services-section-v82{
  margin-top:-72px !important;
  padding-top:0 !important;
}

.services-section-v82 > .container{
  padding-top:0 !important;
}

@media(max-width:980px){
  .proof-section-v79 + .services-section-v82{
    margin-top:-62px !important;
    padding-top:0 !important;
  }
}

@media(max-width:700px){
  .proof-section-v79 + .services-section-v82{
    margin-top:-58px !important;
    padding-top:0 !important;
  }
}

@media(max-width:390px){
  .proof-section-v79 + .services-section-v82{
    margin-top:-52px !important;
  }
}


/* =========================================================
   V8.7 — SECTION BOUNDARY FIX
   Remove overlap/extra white block between proof and services.
   ========================================================= */

/* Let the proof section end exactly after its content */
.proof-section,
.proof-section-v79{
  position:relative !important;
  margin:0 !important;
  padding-bottom:10px !important;
  overflow:visible !important;
}

/* IMPORTANT: remove the negative pull-up from V8.6 */
.proof-section-v79 + .services-section-v82,
.services-section-v82{
  position:relative !important;
  margin-top:0 !important;
  padding-top:18px !important;
}

/* No hidden/inherited top space inside the services section */
.services-section-v82 > .container{
  margin-top:0 !important;
  padding-top:0 !important;
}

.services-section-v82 .section-head{
  margin-top:0 !important;
  padding-top:0 !important;
}

/* Desktop: small, normal visual separation only */
@media(min-width:981px){
  .proof-section,
  .proof-section-v79{
    padding-bottom:8px !important;
  }

  .proof-section-v79 + .services-section-v82,
  .services-section-v82{
    margin-top:0 !important;
    padding-top:16px !important;
  }
}

/* Tablet */
@media(max-width:980px){
  .proof-section,
  .proof-section-v79{
    padding-bottom:6px !important;
  }

  .proof-section-v79 + .services-section-v82,
  .services-section-v82{
    margin-top:0 !important;
    padding-top:14px !important;
  }
}

/* Mobile: keep sections almost end-to-end */
@media(max-width:700px){
  .proof-section,
  .proof-section-v79{
    padding-bottom:4px !important;
  }

  .proof-section-v79 + .services-section-v82,
  .services-section-v82{
    margin-top:0 !important;
    padding-top:10px !important;
  }
}

@media(max-width:390px){
  .proof-section,
  .proof-section-v79{
    padding-bottom:2px !important;
  }

  .proof-section-v79 + .services-section-v82,
  .services-section-v82{
    padding-top:8px !important;
  }
}


/* =========================================================
   V8.8 — SELECTED WORK REDESIGN + TRUE SECTION SPACING FIX
   ========================================================= */

/* Remove inherited/top white block before Selected Work */
.services-section-v82{
  padding-bottom:18px !important;
  margin-bottom:0 !important;
}

.work-section-v88{
  position:relative;
  overflow:hidden;
  margin-top:0 !important;
  padding-top:22px !important;
  padding-bottom:78px !important;
  background:
    radial-gradient(circle at 8% 18%, rgba(44,184,255,.10), transparent 28%),
    radial-gradient(circle at 92% 20%, rgba(129,77,255,.10), transparent 30%),
    linear-gradient(180deg,#ffffff 0%,#fbfdff 55%,#f8f7ff 100%) !important;
}

/* Make the section start end-to-end with only normal breathing room */
.work-section-v88 > .container{
  position:relative;
  z-index:2;
  margin-top:0 !important;
  padding-top:0 !important;
}

/* Heading layout */
.work-head-v88{
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(340px,.72fr) !important;
  align-items:end !important;
  column-gap:72px !important;
  margin:0 0 28px !important;
  padding:0 !important;
}

.work-head-v88 h2{
  margin:0 !important;
  max-width:520px !important;
  font-size:clamp(58px,5.7vw,88px) !important;
  line-height:.9 !important;
  letter-spacing:-.065em !important;
}

.work-head-v88 .section-intro{
  position:relative;
  align-self:end !important;
  max-width:470px !important;
  margin:0 0 9px !important;
  padding-left:18px !important;
  color:#56627a !important;
  font-size:14px !important;
  line-height:1.65 !important;
  font-weight:500 !important;
}

.work-head-v88 .section-intro::before{
  content:"";
  position:absolute;
  left:0;
  top:4px;
  bottom:4px;
  width:3px;
  border-radius:999px;
  background:linear-gradient(180deg,#2fc5ff,#3578ff,#8b57ff);
  box-shadow:0 4px 14px rgba(63,108,255,.18);
}

/* Portfolio grid */
.work-grid-v88{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
}

/* Complete card redesign */
.work-card-v88{
  position:relative;
  overflow:hidden !important;
  min-height:520px !important;
  display:flex !important;
  flex-direction:column !important;
  border:1px solid rgba(45,105,220,.11) !important;
  border-radius:26px !important;
  background:#fff !important;
  box-shadow:0 18px 44px rgba(25,67,137,.08) !important;
  transition:
    transform .42s cubic-bezier(.2,.8,.2,1),
    box-shadow .42s ease,
    border-color .42s ease !important;
}

/* Image / placeholder zone */
.work-card-v88 .work-image,
.work-card-v88 .project-image,
.work-card-v88 .work-thumb,
.work-card-v88 .portfolio-image{
  position:relative !important;
  min-height:330px !important;
  height:330px !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 18% 22%, rgba(36,181,255,.16), transparent 34%),
    radial-gradient(circle at 82% 20%, rgba(133,83,255,.16), transparent 36%),
    linear-gradient(145deg,#f4f9ff,#fbf8ff) !important;
  border-bottom:1px solid rgba(45,105,220,.09) !important;
  color:#6b7890 !important;
}

/* Give the placeholder a premium visual treatment */
.work-card-v88 .work-image::before,
.work-card-v88 .project-image::before,
.work-card-v88 .work-thumb::before,
.work-card-v88 .portfolio-image::before{
  content:"";
  position:absolute;
  width:190px;
  height:190px;
  border-radius:50%;
  border:1px solid rgba(45,116,240,.13);
  box-shadow:
    0 0 0 30px rgba(51,139,255,.035),
    0 0 0 62px rgba(119,83,255,.025);
  animation:v88OrbFloat 10s ease-in-out infinite alternate;
}

.work-card-v88 .work-image::after,
.work-card-v88 .project-image::after,
.work-card-v88 .work-thumb::after,
.work-card-v88 .portfolio-image::after{
  content:"VIEW";
  position:absolute;
  width:70px;
  height:70px;
  display:grid;
  place-items:center;
  border-radius:22px;
  border:1px solid rgba(48,115,237,.13);
  background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(239,242,255,.92));
  color:#176ef2;
  font-size:10px;
  font-weight:800;
  letter-spacing:.14em;
  box-shadow:0 14px 28px rgba(37,86,174,.10);
  z-index:2;
}

/* Hide plain placeholder text visually if it exists */
.work-card-v88 .work-image,
.work-card-v88 .project-image,
.work-card-v88 .work-thumb,
.work-card-v88 .portfolio-image{
  font-size:0 !important;
}

/* Content area */
.work-card-v88 .work-body,
.work-card-v88 .project-body,
.work-card-v88 .work-content,
.work-card-v88 .portfolio-content{
  position:relative !important;
  flex:1 1 auto !important;
  padding:24px 26px 26px !important;
  background:rgba(255,255,255,.97) !important;
}

/* Tags */
.work-card-v88 .tag,
.work-card-v88 .badge,
.work-card-v88 .work-tag,
.work-card-v88 .project-tag{
  display:inline-flex !important;
  align-items:center !important;
  min-height:26px !important;
  margin-right:7px !important;
  padding:0 10px !important;
  border:1px solid rgba(78,111,222,.13) !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,#f3f8ff,#f7f2ff) !important;
  color:#50617e !important;
  font-size:8px !important;
  font-weight:800 !important;
  letter-spacing:.10em !important;
  text-transform:uppercase !important;
}

/* Titles */
.work-card-v88 h3{
  margin:15px 0 8px !important;
  color:#071634 !important;
  font-size:27px !important;
  line-height:1.08 !important;
  letter-spacing:-.04em !important;
}

/* Description */
.work-card-v88 p{
  margin:0 0 18px !important;
  color:#637089 !important;
  font-size:13px !important;
  line-height:1.6 !important;
}

/* CTA */
.work-card-v88 a{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  color:#176ef2 !important;
  font-weight:800 !important;
  text-decoration:none !important;
  transition:gap .3s ease,color .3s ease !important;
}

.work-card-v88 a:hover{
  gap:12px !important;
  color:#744cf4 !important;
}

/* Hover */
.work-card-v88:hover{
  transform:translateY(-8px) !important;
  border-color:rgba(83,98,239,.20) !important;
  box-shadow:0 28px 58px rgba(28,69,145,.14) !important;
}

/* subtle top accent */
.work-card-v88::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:4px;
  z-index:5;
  background:linear-gradient(90deg,#2fc6ff,#3074ff,#8a55ff);
  transform:scaleX(.18);
  transform-origin:left;
  transition:transform .45s ease;
}

.work-card-v88:hover::before{
  transform:scaleX(1);
}

/* Reveal animation */
.work-grid-v88.visible .work-card-v88{
  animation:v88WorkCardIn .72s cubic-bezier(.2,.8,.2,1) both;
}
.work-grid-v88.visible .work-card-v88:nth-child(2){animation-delay:.12s}
.work-grid-v88.visible .work-card-v88:nth-child(3){animation-delay:.24s}
.work-grid-v88.visible .work-card-v88:nth-child(4){animation-delay:.36s}

@keyframes v88WorkCardIn{
  from{opacity:0;transform:translate3d(0,32px,0) scale(.978)}
  to{opacity:1;transform:translate3d(0,0,0) scale(1)}
}
@keyframes v88OrbFloat{
  from{transform:translate3d(-16px,-10px,0) scale(.94)}
  to{transform:translate3d(18px,14px,0) scale(1.08)}
}

/* Tablet */
@media(max-width:980px){
  .services-section-v82{
    padding-bottom:14px !important;
  }

  .work-section-v88{
    padding-top:18px !important;
    padding-bottom:58px !important;
  }

  .work-head-v88{
    grid-template-columns:1fr 1fr !important;
    column-gap:32px !important;
    margin-bottom:24px !important;
  }

  .work-head-v88 h2{
    font-size:clamp(52px,8vw,72px) !important;
  }

  .work-card-v88{
    min-height:470px !important;
  }

  .work-card-v88 .work-image,
  .work-card-v88 .project-image,
  .work-card-v88 .work-thumb,
  .work-card-v88 .portfolio-image{
    height:280px !important;
    min-height:280px !important;
  }
}

/* Mobile: proper one-column responsive layout */
@media(max-width:620px){
  .services-section-v82{
    padding-bottom:8px !important;
  }

  .work-section-v88{
    padding-top:12px !important;
    padding-bottom:42px !important;
  }

  .work-head-v88{
    display:block !important;
    margin-bottom:18px !important;
  }

  .work-head-v88 h2{
    max-width:100% !important;
    margin-bottom:15px !important;
    font-size:clamp(44px,13.2vw,58px) !important;
    line-height:.91 !important;
  }

  .work-head-v88 .section-intro{
    max-width:100% !important;
    margin:0 !important;
    padding-left:14px !important;
    font-size:12px !important;
    line-height:1.6 !important;
  }

  .work-head-v88 .section-intro::before{
    width:2px !important;
  }

  .work-grid-v88{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .work-card-v88{
    min-height:0 !important;
    border-radius:20px !important;
  }

  .work-card-v88 .work-image,
  .work-card-v88 .project-image,
  .work-card-v88 .work-thumb,
  .work-card-v88 .portfolio-image{
    height:205px !important;
    min-height:205px !important;
  }

  .work-card-v88 .work-image::before,
  .work-card-v88 .project-image::before,
  .work-card-v88 .work-thumb::before,
  .work-card-v88 .portfolio-image::before{
    width:135px !important;
    height:135px !important;
  }

  .work-card-v88 .work-image::after,
  .work-card-v88 .project-image::after,
  .work-card-v88 .work-thumb::after,
  .work-card-v88 .portfolio-image::after{
    width:58px !important;
    height:58px !important;
    border-radius:18px !important;
    font-size:8px !important;
  }

  .work-card-v88 .work-body,
  .work-card-v88 .project-body,
  .work-card-v88 .work-content,
  .work-card-v88 .portfolio-content{
    padding:18px 18px 20px !important;
  }

  .work-card-v88 h3{
    margin-top:12px !important;
    font-size:22px !important;
  }

  .work-card-v88 p{
    margin-bottom:14px !important;
    font-size:11px !important;
  }
}

/* Very small phones */
@media(max-width:390px){
  .work-section-v88{
    padding-top:10px !important;
  }

  .work-head-v88 h2{
    font-size:43px !important;
  }

  .work-card-v88 .work-image,
  .work-card-v88 .project-image,
  .work-card-v88 .work-thumb,
  .work-card-v88 .portfolio-image{
    height:185px !important;
    min-height:185px !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .work-grid-v88 .work-card-v88,
  .work-card-v88 .work-image::before,
  .work-card-v88 .project-image::before,
  .work-card-v88 .work-thumb::before,
  .work-card-v88 .portfolio-image::before{
    animation:none !important;
  }
}


/* =========================================================
   V8.9 — SELECTED WORK MOBILE FINAL FIX
   Removes global section padding conflict + fixes overflow.
   ========================================================= */

/* Previous service section ends directly after its cards */
.services-section-v82{
  margin:0 !important;
  padding-bottom:16px !important;
}

/* Selected Work owns all of its spacing — no generic .section padding */
.work-section-v89{
  width:100% !important;
  margin:0 !important;
  padding:18px 0 68px !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 8% 15%,rgba(45,186,255,.10),transparent 27%),
    radial-gradient(circle at 92% 20%,rgba(128,78,255,.10),transparent 30%),
    linear-gradient(180deg,#fff,#fbfdff 58%,#f8f7ff) !important;
}

.work-section-v89 > .container{
  width:min(calc(100% - 40px),var(--max)) !important;
  max-width:var(--max) !important;
  margin:0 auto !important;
  padding:0 !important;
  box-sizing:border-box !important;
}

/* Heading */
.work-section-v89 .work-head-v88{
  margin:0 0 26px !important;
  padding:0 !important;
}

.work-section-v89 .work-head-v88 h2{
  margin:0 !important;
}

/* Grid must never exceed its container */
.work-section-v89 .work-grid-v88{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  box-sizing:border-box !important;
}

/* Actual existing cards */
.work-card-v89{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid rgba(50,111,229,.12) !important;
  border-radius:24px !important;
  background:#fff !important;
  box-shadow:0 16px 38px rgba(27,66,137,.08) !important;
  box-sizing:border-box !important;
}

.work-card-v89 > a{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  display:block !important;
  box-sizing:border-box !important;
}

/* Placeholder / featured image area */
.work-image-v89{
  position:relative !important;
  width:100% !important;
  max-width:100% !important;
  height:300px !important;
  min-height:300px !important;
  aspect-ratio:auto !important;
  overflow:hidden !important;
  display:grid !important;
  place-items:center !important;
  box-sizing:border-box !important;
  font-size:0 !important;
  background:
    radial-gradient(circle at 25% 25%,rgba(42,187,255,.18),transparent 34%),
    radial-gradient(circle at 78% 20%,rgba(137,80,255,.17),transparent 36%),
    linear-gradient(145deg,#f3f9ff,#faf7ff) !important;
}

.work-image-v89 img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
}

.work-image-v89::before{
  content:"";
  position:absolute;
  width:170px;
  height:170px;
  border-radius:50%;
  border:1px solid rgba(47,117,242,.15);
  box-shadow:
    0 0 0 28px rgba(43,145,255,.035),
    0 0 0 56px rgba(122,82,255,.025);
  animation:v89PortfolioOrb 9s ease-in-out infinite alternate;
}

.work-image-v89::after{
  content:"PROJECT";
  position:absolute;
  width:72px;
  height:72px;
  display:grid;
  place-items:center;
  border-radius:22px;
  border:1px solid rgba(57,116,236,.14);
  background:linear-gradient(145deg,rgba(255,255,255,.93),rgba(238,243,255,.96));
  box-shadow:0 13px 30px rgba(33,82,173,.11);
  color:#176ef2;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  z-index:2;
}

/* Card copy */
.work-body-v89{
  width:100% !important;
  min-width:0 !important;
  padding:22px 24px 24px !important;
  box-sizing:border-box !important;
  background:#fff !important;
}

.work-meta-v89{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  margin:0 0 14px !important;
}

.work-meta-v89 span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:25px !important;
  padding:0 10px !important;
  border:1px solid rgba(67,110,217,.14) !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,#f2f8ff,#f7f2ff) !important;
  color:#56647d !important;
  font-size:8px !important;
  font-weight:800 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
}

.work-card-v89 h3{
  margin:0 0 8px !important;
  color:#071634 !important;
  font-size:26px !important;
  line-height:1.08 !important;
  letter-spacing:-.04em !important;
}

.work-card-v89 p{
  margin:0 0 16px !important;
  color:#64708a !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

.work-cta-v89{
  display:inline-flex !important;
  align-items:center !important;
  color:#176ef2 !important;
  font-size:12px !important;
  font-weight:800 !important;
}

/* Desktop/tablet section spacing */
@media(min-width:981px){
  .services-section-v82{
    padding-bottom:18px !important;
  }
  .work-section-v89{
    padding-top:20px !important;
  }
}

/* Tablet */
@media(max-width:980px){
  .services-section-v82{
    padding-bottom:12px !important;
  }

  .work-section-v89{
    padding:16px 0 52px !important;
  }

  .work-section-v89 > .container{
    width:calc(100% - 28px) !important;
  }

  .work-image-v89{
    height:250px !important;
    min-height:250px !important;
  }
}

/* PHONE — proper responsive one-column layout */
@media(max-width:620px){
  .services-section-v82{
    padding-bottom:6px !important;
  }

  .work-section-v89{
    padding:10px 0 38px !important;
    overflow:hidden !important;
  }

  .work-section-v89 > .container{
    width:calc(100% - 24px) !important;
    max-width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
  }

  .work-section-v89 .work-head-v88{
    display:block !important;
    width:100% !important;
    margin:0 0 16px !important;
    padding:0 !important;
  }

  .work-section-v89 .work-head-v88 h2{
    width:100% !important;
    max-width:100% !important;
    margin:0 0 14px !important;
    font-size:clamp(42px,12.8vw,56px) !important;
    line-height:.91 !important;
    letter-spacing:-.06em !important;
  }

  .work-section-v89 .work-head-v88 .section-intro{
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 0 0 13px !important;
    font-size:11.5px !important;
    line-height:1.55 !important;
    box-sizing:border-box !important;
  }

  .work-section-v89 .work-grid-v88{
    display:grid !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:12px !important;
    overflow:visible !important;
  }

  .work-card-v89{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    border-radius:19px !important;
  }

  .work-card-v89 > a{
    width:100% !important;
    max-width:100% !important;
  }

  .work-image-v89{
    width:100% !important;
    max-width:100% !important;
    height:190px !important;
    min-height:190px !important;
  }

  .work-image-v89::before{
    width:120px !important;
    height:120px !important;
  }

  .work-image-v89::after{
    width:54px !important;
    height:54px !important;
    border-radius:17px !important;
    font-size:7px !important;
  }

  .work-body-v89{
    width:100% !important;
    max-width:100% !important;
    padding:17px 17px 19px !important;
  }

  .work-meta-v89{
    margin-bottom:11px !important;
  }

  .work-card-v89 h3{
    font-size:21px !important;
    margin-bottom:6px !important;
  }

  .work-card-v89 p{
    font-size:10.5px !important;
    line-height:1.5 !important;
    margin-bottom:12px !important;
  }

  .work-cta-v89{
    font-size:11px !important;
  }
}

/* Small phones */
@media(max-width:390px){
  .work-section-v89{
    padding-top:8px !important;
  }

  .work-section-v89 > .container{
    width:calc(100% - 20px) !important;
  }

  .work-image-v89{
    height:175px !important;
    min-height:175px !important;
  }
}

@keyframes v89PortfolioOrb{
  from{transform:translate3d(-12px,-8px,0) scale(.95)}
  to{transform:translate3d(15px,11px,0) scale(1.07)}
}

@media(prefers-reduced-motion:reduce){
  .work-image-v89::before{
    animation:none !important;
  }
}


/* =========================================================
   V9.0 — ROOT CAUSE GAP FIX
   Overrides legacy ID-level 96px !important spacing.
   ========================================================= */

/* Desktop / all screens */
#services.services-section-v82{
  margin-bottom:0 !important;
  padding-bottom:6px !important;
}

#work.work-section-v89{
  margin-top:0 !important;
  padding-top:10px !important;
}

/* Remove any inner top offset that could visually recreate the gap */
#work.work-section-v89 > .container{
  margin-top:0 !important;
  padding-top:0 !important;
}

#work.work-section-v89 .work-head-v88{
  margin-top:0 !important;
  padding-top:0 !important;
}

/* Mobile: almost end-to-end, but still normal breathing room */
@media(max-width:620px){
  #services.services-section-v82{
    padding-bottom:4px !important;
  }

  #work.work-section-v89{
    padding-top:8px !important;
  }
}

@media(max-width:390px){
  #services.services-section-v82{
    padding-bottom:3px !important;
  }

  #work.work-section-v89{
    padding-top:7px !important;
  }
}


/* =========================================================
   V9.1 — PROOF -> CAPABILITIES GAP ROOT FIX
   Same approach as V9.0: override legacy ID-level spacing.
   ========================================================= */

/* Purple proof/stat block must end directly after its content */
#proof.proof-section-v79,
.proof-section.proof-section-v79,
.proof-section-v79{
  margin-bottom:0 !important;
  padding-bottom:5px !important;
}

/* Capabilities section begins with only a normal small gap */
#services.services-section-v82{
  margin-top:0 !important;
  padding-top:9px !important;
}

/* No inner wrapper/header spacing can recreate the white block */
#services.services-section-v82 > .container{
  margin-top:0 !important;
  padding-top:0 !important;
}

#services.services-section-v82 .section-head{
  margin-top:0 !important;
  padding-top:0 !important;
}

/* Mobile */
@media(max-width:620px){
  #proof.proof-section-v79,
  .proof-section.proof-section-v79,
  .proof-section-v79{
    padding-bottom:3px !important;
  }

  #services.services-section-v82{
    margin-top:0 !important;
    padding-top:7px !important;
  }
}

/* Very small phones */
@media(max-width:390px){
  #proof.proof-section-v79,
  .proof-section.proof-section-v79,
  .proof-section-v79{
    padding-bottom:2px !important;
  }

  #services.services-section-v82{
    padding-top:6px !important;
  }
}


/* =========================================================
   V9.2 — PROCESS SECTION REDESIGN
   Theme-matched blue/cyan/violet + real responsive layout.
   ========================================================= */

/* Root spacing fix: legacy #process 96px !important is overridden here */
#work.work-section-v89{
  padding-bottom:10px !important;
  margin-bottom:0 !important;
}

#process.process-section-v92{
  position:relative !important;
  width:100% !important;
  margin:0 !important;
  padding:14px 0 68px !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 8% 16%,rgba(42,190,255,.11),transparent 27%),
    radial-gradient(circle at 91% 20%,rgba(137,77,255,.11),transparent 30%),
    linear-gradient(180deg,#fff 0%,#f9fcff 52%,#f8f6ff 100%) !important;
}

#process.process-section-v92 > .container{
  position:relative;
  z-index:2;
  width:min(1280px,calc(100% - 52px)) !important;
  max-width:1280px !important;
  margin:0 auto !important;
  padding:0 !important;
}

/* Header */
.process-head-v92{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);
  align-items:end;
  gap:72px;
  margin:0 0 28px;
}

.process-title-v92{
  min-width:0;
}

.process-kicker-v92{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:0 0 12px;
  padding:7px 12px;
  border:1px solid rgba(106,81,255,.18);
  border-radius:999px;
  background:linear-gradient(90deg,#f1f8ff,#f6f0ff);
  color:#7050f7;
  font-size:9px;
  font-weight:900;
  letter-spacing:.13em;
}

.process-kicker-v92::before{
  content:"";
  width:5px;height:5px;
  border-radius:50%;
  background:#42c8ff;
  box-shadow:0 0 12px rgba(66,200,255,.65);
}

.process-head-v92 h2{
  margin:0;
  color:#07132f;
  font-size:clamp(58px,5.6vw,86px);
  line-height:.9;
  letter-spacing:-.065em;
}

.process-head-v92 h2 span{
  background:linear-gradient(90deg,#1479ff,#28b9ff 45%,#8356ff);
  background-size:200% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  animation:v92ProcessGradient 7s linear infinite;
}

.process-head-v92 > p{
  position:relative;
  max-width:470px;
  margin:0 0 9px;
  padding-left:18px;
  color:#59667e;
  font-size:14px;
  line-height:1.65;
  font-weight:500;
}

.process-head-v92 > p::before{
  content:"";
  position:absolute;
  left:0;top:4px;bottom:4px;
  width:3px;
  border-radius:999px;
  background:linear-gradient(180deg,#2fc5ff,#3578ff,#8b57ff);
}

/* Five-step desktop rail */
.process-v92{
  position:relative;
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:12px !important;
  width:100%;
}

.process-v92::before{
  content:"";
  position:absolute;
  left:7%;right:7%;
  top:46px;
  height:1px;
  background:linear-gradient(90deg,rgba(47,197,255,.20),rgba(53,120,255,.30),rgba(139,87,255,.20));
  z-index:0;
}

.process-item-v92{
  position:relative !important;
  z-index:1;
  min-width:0 !important;
  min-height:245px !important;
  padding:20px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
  overflow:hidden !important;
  border:1px solid rgba(54,111,225,.12) !important;
  border-radius:22px !important;
  background:
    radial-gradient(circle at 100% 0%,rgba(91,105,255,.09),transparent 38%),
    rgba(255,255,255,.90) !important;
  box-shadow:0 15px 36px rgba(31,69,139,.065) !important;
  transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease !important;
}

.process-item-v92:nth-child(2),
.process-item-v92:nth-child(5){
  background:
    radial-gradient(circle at 100% 0%,rgba(130,80,255,.12),transparent 40%),
    rgba(255,255,255,.92) !important;
}

.process-item-v92:nth-child(3){
  background:
    radial-gradient(circle at 100% 0%,rgba(44,194,255,.13),transparent 40%),
    rgba(255,255,255,.92) !important;
}

.process-top-v92{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.process-icon-v92{
  width:43px;height:43px;
  display:grid;
  place-items:center;
  flex:0 0 43px;
  border:1px solid rgba(56,112,230,.15);
  border-radius:14px;
  background:linear-gradient(145deg,#eef8ff,#f1edff);
  color:#1477f8;
  font-size:13px;
  font-weight:900;
  box-shadow:0 8px 20px rgba(43,91,182,.07);
}

.process-top-v92 b{
  color:#6b7590 !important;
  font-size:10px !important;
  letter-spacing:.14em;
}

.process-copy-v92 h3{
  margin:0 0 9px !important;
  color:#071634 !important;
  font-size:22px !important;
  line-height:1.05 !important;
  letter-spacing:-.035em;
}

.process-copy-v92 p{
  margin:0 !important;
  color:#647089 !important;
  font-size:12px !important;
  line-height:1.55 !important;
}

.process-line-v92{
  position:absolute;
  left:20px;right:20px;bottom:0;
  height:3px;
  border-radius:999px 999px 0 0;
  background:linear-gradient(90deg,#2fc5ff,#3278ff,#8956ff);
  transform:scaleX(.20);
  transform-origin:left;
  transition:transform .4s ease;
}

.process-item-v92:hover{
  transform:translateY(-7px) !important;
  border-color:rgba(75,100,239,.22) !important;
  box-shadow:0 25px 50px rgba(31,69,139,.12) !important;
}

.process-item-v92:hover .process-line-v92{
  transform:scaleX(1);
}

/* Reveal */
.process-v92.visible .process-item-v92{
  animation:v92ProcessIn .68s cubic-bezier(.2,.8,.2,1) both;
}
.process-v92.visible .process-item-v92:nth-child(2){animation-delay:.08s}
.process-v92.visible .process-item-v92:nth-child(3){animation-delay:.16s}
.process-v92.visible .process-item-v92:nth-child(4){animation-delay:.24s}
.process-v92.visible .process-item-v92:nth-child(5){animation-delay:.32s}

@keyframes v92ProcessIn{
  from{opacity:0;transform:translateY(28px) scale(.98)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes v92ProcessGradient{
  to{background-position:200% 0}
}

/* Tablet */
@media(max-width:980px){
  #work.work-section-v89{
    padding-bottom:8px !important;
  }

  #process.process-section-v92{
    padding-top:12px !important;
    padding-bottom:52px !important;
  }

  #process.process-section-v92 > .container{
    width:calc(100% - 30px) !important;
  }

  .process-head-v92{
    grid-template-columns:1fr 1fr;
    gap:30px;
    margin-bottom:22px;
  }

  .process-head-v92 h2{
    font-size:clamp(50px,7.5vw,70px);
  }

  .process-v92{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .process-v92::before{display:none}

  .process-item-v92{
    min-height:205px !important;
  }

  .process-item-v92:last-child{
    grid-column:1/-1;
    min-height:180px !important;
  }
}

/* Phone */
@media(max-width:620px){
  #work.work-section-v89{
    padding-bottom:4px !important;
  }

  #process.process-section-v92{
    padding:8px 0 38px !important;
  }

  #process.process-section-v92 > .container{
    width:calc(100% - 24px) !important;
    max-width:100% !important;
  }

  .process-head-v92{
    display:block;
    margin-bottom:17px;
  }

  .process-kicker-v92{
    margin-bottom:9px;
    padding:6px 10px;
    font-size:8px;
  }

  .process-head-v92 h2{
    margin-bottom:14px;
    font-size:clamp(42px,12.5vw,54px);
    line-height:.91;
  }

  .process-head-v92 > p{
    max-width:100%;
    margin:0;
    padding-left:13px;
    font-size:11.5px;
    line-height:1.55;
  }

  .process-head-v92 > p::before{
    width:2px;
  }

  .process-v92{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .process-item-v92,
  .process-item-v92:last-child{
    grid-column:auto;
    min-height:0 !important;
    padding:16px !important;
    border-radius:18px !important;
  }

  .process-top-v92{
    margin-bottom:24px;
  }

  .process-icon-v92{
    width:39px;height:39px;
    flex-basis:39px;
    border-radius:12px;
    font-size:12px;
  }

  .process-copy-v92 h3{
    margin-bottom:5px !important;
    font-size:19px !important;
  }

  .process-copy-v92 p{
    max-width:92%;
    font-size:10.5px !important;
    line-height:1.5 !important;
  }

  .process-line-v92{
    left:16px;right:16px;
  }
}

@media(max-width:390px){
  #process.process-section-v92{
    padding-top:6px !important;
  }

  #process.process-section-v92 > .container{
    width:calc(100% - 20px) !important;
  }

  .process-head-v92 h2{
    font-size:41px;
  }
}

@media(prefers-reduced-motion:reduce){
  .process-head-v92 h2 span,
  .process-v92.visible .process-item-v92{
    animation:none !important;
  }
}


/* =========================================================
   V9.3 — INTEGRATED CAPABILITY + WHY US REDESIGN
   Theme-matched, animated, spacing-correct, fully responsive.
   ========================================================= */

/* Tight transition from Process -> Capability */
#process.process-section-v92{
  padding-bottom:10px !important;
  margin-bottom:0 !important;
}

/* =========================
   INTEGRATED CAPABILITY
   ========================= */

.capability-band-v93{
  position:relative !important;
  margin:0 !important;
  padding:12px 0 20px !important;
  background:
    radial-gradient(circle at 9% 20%,rgba(39,187,255,.08),transparent 26%),
    radial-gradient(circle at 92% 20%,rgba(131,77,255,.08),transparent 28%),
    #fff !important;
}

.capability-band-v93 > .container{
  width:min(1280px,calc(100% - 52px)) !important;
  max-width:1280px !important;
  margin:0 auto !important;
  padding:0 !important;
}

.capability-shell-v93{
  position:relative;
  min-height:210px;
  padding:28px 30px !important;
  display:grid !important;
  grid-template-columns:1.05fr 1.4fr !important;
  align-items:center !important;
  gap:38px !important;
  overflow:hidden !important;
  border:1px solid rgba(102,87,255,.18) !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 0% 0%,rgba(44,190,255,.18),transparent 35%),
    radial-gradient(circle at 100% 100%,rgba(137,79,255,.20),transparent 40%),
    linear-gradient(120deg,#0d1d4e 0%,#17194e 42%,#2e165b 100%) !important;
  box-shadow:
    0 26px 60px rgba(31,27,93,.16),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
  isolation:isolate;
}

.capability-shell-v93::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  opacity:.15;
  background-image:
    linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
  background-size:44px 44px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 88%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 14%,#000 88%,transparent);
  animation:v93GridDrift 24s linear infinite;
}

.capability-shell-v93::after{
  content:"";
  position:absolute;
  width:340px;
  height:340px;
  right:-100px;
  top:-120px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(81,206,255,.18),rgba(127,83,255,.10) 45%,transparent 70%);
  filter:blur(8px);
  z-index:0;
  animation:v93CapGlow 10s ease-in-out infinite alternate;
}

.capability-copy-v93,
.capability-list-v93{
  position:relative;
  z-index:2;
}

.capability-copy-v93 .section-kicker,
.capability-copy-v93 .eyebrow{
  display:inline-flex !important;
  align-items:center;
  gap:7px;
  margin:0 0 14px !important;
  padding:7px 12px !important;
  border:1px solid rgba(181,164,255,.25) !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,rgba(111,86,255,.95),rgba(145,82,255,.95)) !important;
  color:#fff !important;
  font-size:8px !important;
  letter-spacing:.16em !important;
  font-weight:900 !important;
}

.capability-copy-v93 .section-kicker::before,
.capability-copy-v93 .eyebrow::before{
  content:"";
  width:5px;height:5px;
  border-radius:50%;
  background:#5cdcff;
  box-shadow:0 0 10px rgba(92,220,255,.75);
}

.capability-copy-v93 h3{
  max-width:470px !important;
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(34px,3vw,48px) !important;
  line-height:1.00 !important;
  letter-spacing:-.05em !important;
}

.capability-list-v93{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:10px !important;
}

.capability-list-v93 span{
  position:relative;
  display:inline-flex !important;
  align-items:center !important;
  min-height:43px !important;
  padding:0 16px !important;
  border:1px solid rgba(132,169,255,.18) !important;
  border-radius:999px !important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.045)) !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:800 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
  backdrop-filter:blur(6px);
  transition:transform .32s ease,background .32s ease,border-color .32s ease !important;
}

.capability-list-v93 span::before{
  content:"";
  width:6px;height:6px;
  margin-right:8px;
  border-radius:50%;
  background:linear-gradient(135deg,#53d8ff,#7b62ff);
  box-shadow:0 0 10px rgba(88,170,255,.50);
}

.capability-list-v93 span:hover{
  transform:translateY(-4px);
  border-color:rgba(112,173,255,.35) !important;
  background:linear-gradient(145deg,rgba(76,164,255,.14),rgba(132,83,255,.13)) !important;
}

.capability-shell-v93.visible .capability-copy-v93{
  animation:v93CapCopyIn .72s cubic-bezier(.2,.8,.2,1) both;
}

.capability-shell-v93.visible .capability-list-v93 span{
  animation:v93ChipIn .52s cubic-bezier(.2,.8,.2,1) both;
}
.capability-shell-v93.visible .capability-list-v93 span:nth-child(2){animation-delay:.07s}
.capability-shell-v93.visible .capability-list-v93 span:nth-child(3){animation-delay:.14s}
.capability-shell-v93.visible .capability-list-v93 span:nth-child(4){animation-delay:.21s}
.capability-shell-v93.visible .capability-list-v93 span:nth-child(5){animation-delay:.28s}
.capability-shell-v93.visible .capability-list-v93 span:nth-child(6){animation-delay:.35s}

/* =========================
   WHY US
   ========================= */

/* Override legacy .why-section 96px !important root spacing */
.why-section-v93{
  position:relative !important;
  margin:0 !important;
  padding:18px 0 72px !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 8% 18%,rgba(42,187,255,.10),transparent 27%),
    radial-gradient(circle at 92% 17%,rgba(133,79,255,.10),transparent 29%),
    linear-gradient(180deg,#fff 0%,#fbfdff 52%,#f8f6ff 100%) !important;
}

.why-section-v93 > .container{
  width:min(1280px,calc(100% - 52px)) !important;
  max-width:1280px !important;
  margin:0 auto !important;
  padding:0 !important;
}

.why-head-v93{
  display:grid !important;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr) !important;
  align-items:end !important;
  gap:68px !important;
  margin:0 0 28px !important;
  padding:0 !important;
}

.why-head-v93 .section-kicker{
  margin-bottom:12px !important;
  border:1px solid rgba(112,84,255,.18) !important;
  background:linear-gradient(90deg,#f0f8ff,#f6f0ff) !important;
  color:#714ff6 !important;
}

.why-head-v93 h2{
  max-width:720px !important;
  margin:0 !important;
  font-size:clamp(58px,5.7vw,88px) !important;
  line-height:.89 !important;
  letter-spacing:-.065em !important;
  background:linear-gradient(90deg,#071634 0%,#071634 48%,#1777ff 68%,#8454f7 83%,#071634 100%);
  background-size:250% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent !important;
}

.why-head-v93.visible h2{
  animation:v93WhyHeadingIn .75s cubic-bezier(.2,.8,.2,1) both,
            v93WhyHeadingFlow 8s ease-in-out 1s infinite;
}

.why-head-v93 h2::after{
  content:"";
  display:block;
  width:72px;
  height:4px;
  margin-top:13px;
  border-radius:999px;
  background:linear-gradient(90deg,#2fc6ff,#3477ff,#8b55ff);
  transform:scaleX(0);
  transform-origin:left;
}

.why-head-v93.visible h2::after{
  animation:v93UnderlineIn .7s .3s ease forwards;
}

.why-head-v93 .section-intro{
  position:relative;
  max-width:470px !important;
  margin:0 0 9px !important;
  padding-left:18px !important;
  color:#5a667d !important;
  font-size:14px !important;
  line-height:1.65 !important;
  font-weight:500 !important;
}

.why-head-v93 .section-intro::before{
  content:"";
  position:absolute;
  left:0;top:4px;bottom:4px;
  width:3px;
  border-radius:999px;
  background:linear-gradient(180deg,#2fc5ff,#3578ff,#8b57ff);
}

.why-grid-v93{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:16px !important;
}

.why-card-v93{
  position:relative !important;
  min-height:230px !important;
  padding:24px 24px 25px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
  overflow:hidden !important;
  border:1px solid rgba(50,109,225,.12) !important;
  border-radius:23px !important;
  background:
    radial-gradient(circle at 100% 0%,rgba(49,178,255,.13),transparent 40%),
    linear-gradient(145deg,#fff,#f6fbff) !important;
  box-shadow:0 15px 36px rgba(29,68,137,.065) !important;
  transition:transform .38s ease,box-shadow .38s ease,border-color .38s ease !important;
}

.why-card-v93:nth-child(2){
  background:
    radial-gradient(circle at 100% 0%,rgba(132,82,255,.14),transparent 42%),
    linear-gradient(145deg,#fff,#f8f4ff) !important;
}

.why-card-v93:nth-child(3){
  background:
    radial-gradient(circle at 100% 0%,rgba(56,135,255,.14),transparent 42%),
    linear-gradient(145deg,#fff,#f3f7ff) !important;
}

.why-card-v93::before{
  content:"";
  position:absolute;
  width:105px;height:105px;
  right:-35px;top:-40px;
  border:1px solid rgba(52,119,237,.14);
  border-radius:50%;
  box-shadow:0 0 0 18px rgba(54,133,255,.035),0 0 0 36px rgba(125,84,255,.025);
  transition:transform .45s ease;
}

.why-card-v93::after{
  content:"↗";
  position:absolute;
  right:20px;
  bottom:20px;
  width:44px;height:44px;
  display:grid;
  place-items:center;
  border:1px solid rgba(55,117,235,.14);
  border-radius:14px;
  background:linear-gradient(145deg,#eef8ff,#f1edff);
  color:#176ef2;
  font-size:13px;
  font-weight:900;
  box-shadow:0 8px 20px rgba(42,92,184,.07);
}

.why-card-v93 b,
.why-card-v93 .why-num{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:36px !important;
  height:26px !important;
  border:1px solid rgba(53,113,228,.13) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.78) !important;
  color:#1763d3 !important;
  font-size:9px !important;
  letter-spacing:.12em;
}

.why-card-v93 h3{
  max-width:80%;
  margin:48px 0 10px !important;
  color:#071634 !important;
  font-size:24px !important;
  line-height:1.05 !important;
  letter-spacing:-.035em !important;
}

.why-card-v93 p{
  max-width:82%;
  margin:0 !important;
  color:#647089 !important;
  font-size:12.5px !important;
  line-height:1.58 !important;
}

.why-card-v93:hover{
  transform:translateY(-7px);
  border-color:rgba(75,100,239,.21) !important;
  box-shadow:0 25px 52px rgba(29,68,137,.12) !important;
}

.why-card-v93:hover::before{
  transform:scale(1.12) rotate(16deg);
}

.why-grid-v93.visible .why-card-v93{
  animation:v93WhyCardIn .65s cubic-bezier(.2,.8,.2,1) both;
}
.why-grid-v93.visible .why-card-v93:nth-child(2){animation-delay:.10s}
.why-grid-v93.visible .why-card-v93:nth-child(3){animation-delay:.20s}

/* =========================
   MOTION
   ========================= */

@keyframes v93GridDrift{
  from{background-position:0 0,0 0}
  to{background-position:44px 44px,44px 44px}
}
@keyframes v93CapGlow{
  from{transform:translate3d(0,0,0) scale(.95);opacity:.65}
  to{transform:translate3d(-30px,25px,0) scale(1.08);opacity:1}
}
@keyframes v93CapCopyIn{
  from{opacity:0;transform:translateX(-24px)}
  to{opacity:1;transform:translateX(0)}
}
@keyframes v93ChipIn{
  from{opacity:0;transform:translateY(15px) scale(.95)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes v93WhyHeadingIn{
  from{opacity:0;transform:translateY(26px);filter:blur(7px)}
  to{opacity:1;transform:translateY(0);filter:blur(0)}
}
@keyframes v93WhyHeadingFlow{
  0%,100%{background-position:0% 50%}
  50%{background-position:100% 50%}
}
@keyframes v93UnderlineIn{
  to{transform:scaleX(1)}
}
@keyframes v93WhyCardIn{
  from{opacity:0;transform:translateY(28px) scale(.98)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

/* =========================
   TABLET
   ========================= */

@media(max-width:980px){
  #process.process-section-v92{
    padding-bottom:8px !important;
  }

  .capability-band-v93{
    padding:10px 0 16px !important;
  }

  .capability-band-v93 > .container,
  .why-section-v93 > .container{
    width:calc(100% - 30px) !important;
  }

  .capability-shell-v93{
    grid-template-columns:1fr !important;
    gap:24px !important;
    padding:26px !important;
  }

  .capability-list-v93{
    justify-content:flex-start !important;
  }

  .why-section-v93{
    padding-top:14px !important;
    padding-bottom:54px !important;
  }

  .why-head-v93{
    grid-template-columns:1fr 1fr !important;
    gap:32px !important;
    margin-bottom:23px !important;
  }

  .why-head-v93 h2{
    font-size:clamp(50px,7.5vw,70px) !important;
  }

  .why-grid-v93{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .why-card-v93:last-child{
    grid-column:1/-1;
  }
}

/* =========================
   PHONE
   ========================= */

@media(max-width:620px){
  #process.process-section-v92{
    padding-bottom:4px !important;
  }

  .capability-band-v93{
    padding:8px 0 12px !important;
  }

  .capability-band-v93 > .container,
  .why-section-v93 > .container{
    width:calc(100% - 24px) !important;
    max-width:100% !important;
  }

  .capability-shell-v93{
    min-height:0 !important;
    padding:20px 18px !important;
    gap:20px !important;
    border-radius:21px !important;
  }

  .capability-copy-v93 h3{
    font-size:31px !important;
  }

  .capability-list-v93{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }

  .capability-list-v93 span{
    min-width:0 !important;
    min-height:39px !important;
    padding:0 10px !important;
    justify-content:flex-start !important;
    font-size:9.5px !important;
  }

  .why-section-v93{
    padding:10px 0 40px !important;
  }

  .why-head-v93{
    display:block !important;
    margin-bottom:18px !important;
  }

  .why-head-v93 h2{
    max-width:100% !important;
    margin-bottom:14px !important;
    font-size:clamp(42px,12.5vw,55px) !important;
    line-height:.91 !important;
  }

  .why-head-v93 .section-intro{
    max-width:100% !important;
    margin:0 !important;
    padding-left:13px !important;
    font-size:11.5px !important;
    line-height:1.55 !important;
  }

  .why-head-v93 .section-intro::before{
    width:2px !important;
  }

  .why-grid-v93{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .why-card-v93,
  .why-card-v93:last-child{
    grid-column:auto;
    min-height:150px !important;
    padding:16px 66px 17px 16px !important;
    border-radius:18px !important;
  }

  .why-card-v93 h3{
    max-width:100% !important;
    margin:19px 0 6px !important;
    font-size:19px !important;
  }

  .why-card-v93 p{
    max-width:100% !important;
    font-size:10.5px !important;
    line-height:1.5 !important;
  }

  .why-card-v93::after{
    width:40px;height:40px;
    right:15px;bottom:15px;
    border-radius:13px;
  }
}

@media(max-width:390px){
  .capability-band-v93 > .container,
  .why-section-v93 > .container{
    width:calc(100% - 20px) !important;
  }

  .capability-list-v93{
    grid-template-columns:1fr !important;
  }

  .why-head-v93 h2{
    font-size:41px !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .capability-shell-v93::before,
  .capability-shell-v93::after,
  .capability-shell-v93.visible .capability-copy-v93,
  .capability-shell-v93.visible .capability-list-v93 span,
  .why-head-v93.visible h2,
  .why-grid-v93.visible .why-card-v93{
    animation:none !important;
  }
}


/* =========================================================
   V9.4 — FINAL CTA BANNER: PREMIUM MOTION + SPACING
   ========================================================= */

/* Tight spacing from Why Us -> CTA */
.why-section-v93{
  margin-bottom:0 !important;
  padding-bottom:8px !important;
}

/* Remove legacy .section 96px behavior entirely by using dedicated section */
#contact.contact-section-v94{
  position:relative !important;
  width:100% !important;
  margin:0 !important;
  padding:12px 0 42px !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 10% 20%,rgba(42,190,255,.07),transparent 25%),
    radial-gradient(circle at 92% 18%,rgba(132,78,255,.08),transparent 28%),
    #fff !important;
}

#contact.contact-section-v94 > .container{
  width:min(1280px,calc(100% - 52px)) !important;
  max-width:1280px !important;
  margin:0 auto !important;
  padding:0 !important;
}

.cta-v94{
  position:relative !important;
  min-height:410px !important;
  padding:54px 42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  border:1px solid rgba(110,84,255,.18) !important;
  border-radius:30px !important;
  background:
    radial-gradient(circle at 6% 10%,rgba(51,201,255,.18),transparent 31%),
    radial-gradient(circle at 94% 8%,rgba(169,99,255,.23),transparent 35%),
    linear-gradient(120deg,#5546ee 0%,#6b4cf1 38%,#8252ef 70%,#9865ee 100%) !important;
  box-shadow:
    0 28px 68px rgba(75,51,170,.18),
    inset 0 1px 0 rgba(255,255,255,.12) !important;
  isolation:isolate;
}

/* Technical grid */
.cta-v94::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  opacity:.15;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
  background-size:48px 48px;
  -webkit-mask-image:linear-gradient(to bottom,transparent,#000 15%,#000 88%,transparent);
  mask-image:linear-gradient(to bottom,transparent,#000 15%,#000 88%,transparent);
  animation:v94GridMove 22s linear infinite;
}

/* Large animated glow */
.cta-v94::after{
  content:"";
  position:absolute;
  width:350px;
  height:350px;
  right:-70px;
  top:-125px;
  z-index:0;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.11);
  background:
    radial-gradient(circle at 35% 35%,rgba(255,255,255,.23),rgba(255,255,255,.08) 30%,rgba(50,86,255,.10) 55%,transparent 73%);
  box-shadow:
    0 0 0 30px rgba(255,255,255,.04),
    0 0 0 64px rgba(63,82,255,.03);
  animation:v94BigOrb 11s ease-in-out infinite alternate;
}

.cta-inner-v94{
  position:relative;
  z-index:3;
  max-width:940px;
  margin:0 auto;
  text-align:center;
}

.cta-kicker-v94{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  margin:0 0 17px !important;
  padding:7px 12px !important;
  border:1px solid rgba(25,20,61,.20) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.18) !important;
  color:#17122e !important;
  font-size:8px !important;
  font-weight:900 !important;
  letter-spacing:.16em !important;
  backdrop-filter:blur(6px);
}

.cta-kicker-v94::before{
  content:"";
  width:5px;height:5px;
  border-radius:50%;
  background:#3ce0ff;
  box-shadow:0 0 10px rgba(60,224,255,.78);
  animation:v94Pulse 2s ease-in-out infinite;
}

.cta-v94 h2{
  max-width:900px !important;
  margin:0 auto 24px !important;
  color:#090815 !important;
  font-size:clamp(58px,6vw,94px) !important;
  line-height:.92 !important;
  letter-spacing:-.067em !important;
  font-weight:800 !important;
}

.cta-v94 h2 span{
  background:linear-gradient(90deg,#080715 0%,#080715 38%,#142a89 58%,#30159b 72%,#080715 100%);
  background-size:230% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  animation:v94TextFlow 7s ease-in-out infinite;
}

.cta-v94.visible h2{
  animation:v94HeadingIn .82s cubic-bezier(.2,.8,.2,1) both,
            v94HeadingFloat 7s ease-in-out 1.2s infinite;
}

/* Orbit graphics */
.cta-orbit-v94{
  position:absolute;
  z-index:1;
  left:50%;
  top:50%;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
  pointer-events:none;
}
.orbit-a-v94{
  width:780px;height:230px;
  transform:translate(-50%,-50%) rotate(-8deg);
  animation:v94OrbitA 24s linear infinite;
}
.orbit-b-v94{
  width:560px;height:330px;
  transform:translate(-50%,-50%) rotate(18deg);
  border-color:rgba(33,62,187,.18);
  animation:v94OrbitB 30s linear infinite reverse;
}

.cta-node-v94{
  position:absolute;
  z-index:2;
  width:8px;height:8px;
  border-radius:50%;
  background:#64e0ff;
  box-shadow:0 0 16px rgba(100,224,255,.80);
  animation:v94NodeFloat 7s ease-in-out infinite;
}
.node-a-v94{left:16%;top:27%}
.node-b-v94{right:17%;top:58%;animation-delay:-2.2s}
.node-c-v94{left:27%;bottom:17%;animation-delay:-4.6s}

/* Email CTA */
.cta-email-v94{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  min-height:54px !important;
  padding:0 23px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:999px !important;
  background:linear-gradient(120deg,#0d0d15,#16131e 66%,#201725) !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  text-decoration:none !important;
  box-shadow:
    0 14px 30px rgba(17,10,44,.21),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
  transition:transform .3s ease,box-shadow .3s ease !important;
}

.cta-email-v94::before{
  content:"";
  position:absolute;
  top:0;bottom:0;
  left:-75%;
  width:50%;
  transform:skewX(-22deg);
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.24),transparent);
  animation:v94Sheen 4.6s ease-in-out infinite;
}

.cta-email-v94:hover{
  transform:translateY(-3px) scale(1.018);
  box-shadow:
    0 20px 38px rgba(17,10,44,.27),
    0 0 0 5px rgba(255,255,255,.06) !important;
}

.cta-email-v94 span{
  transition:transform .3s ease;
}
.cta-email-v94:hover span{
  transform:translate(3px,-3px);
}

/* Reveal */
.cta-v94.visible .cta-kicker-v94{
  animation:v94KickerIn .55s ease both;
}
.cta-v94.visible .cta-email-v94{
  animation:v94ButtonIn .65s .28s ease both;
}

/* Animations */
@keyframes v94GridMove{
  from{background-position:0 0,0 0}
  to{background-position:48px 48px,48px 48px}
}
@keyframes v94BigOrb{
  from{transform:translate3d(0,0,0) scale(.95) rotate(0deg)}
  to{transform:translate3d(-42px,34px,0) scale(1.08) rotate(18deg)}
}
@keyframes v94Pulse{
  0%,100%{opacity:.45;transform:scale(.8)}
  50%{opacity:1;transform:scale(1.18)}
}
@keyframes v94TextFlow{
  0%,100%{background-position:0% 50%}
  50%{background-position:100% 50%}
}
@keyframes v94HeadingIn{
  from{opacity:0;transform:translateY(30px);filter:blur(8px)}
  to{opacity:1;transform:translateY(0);filter:blur(0)}
}
@keyframes v94HeadingFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-4px)}
}
@keyframes v94OrbitA{
  from{transform:translate(-50%,-50%) rotate(-8deg)}
  to{transform:translate(-50%,-50%) rotate(352deg)}
}
@keyframes v94OrbitB{
  from{transform:translate(-50%,-50%) rotate(18deg)}
  to{transform:translate(-50%,-50%) rotate(378deg)}
}
@keyframes v94NodeFloat{
  0%,100%{transform:translate3d(0,0,0);opacity:.4}
  50%{transform:translate3d(16px,-17px,0);opacity:1}
}
@keyframes v94Sheen{
  0%,57%{left:-75%}
  75%,100%{left:130%}
}
@keyframes v94KickerIn{
  from{opacity:0;transform:translateY(12px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes v94ButtonIn{
  from{opacity:0;transform:translateY(15px)}
  to{opacity:1;transform:translateY(0)}
}

/* Tablet */
@media(max-width:980px){
  .why-section-v93{
    padding-bottom:6px !important;
  }

  #contact.contact-section-v94{
    padding:10px 0 34px !important;
  }

  #contact.contact-section-v94 > .container{
    width:calc(100% - 30px) !important;
  }

  .cta-v94{
    min-height:340px !important;
    padding:42px 28px !important;
  }

  .cta-v94 h2{
    font-size:clamp(48px,8vw,72px) !important;
  }
}

/* Mobile */
@media(max-width:620px){
  .why-section-v93{
    padding-bottom:3px !important;
  }

  #contact.contact-section-v94{
    padding:7px 0 26px !important;
  }

  #contact.contact-section-v94 > .container{
    width:calc(100% - 24px) !important;
    max-width:100% !important;
  }

  .cta-v94{
    min-height:290px !important;
    padding:30px 17px !important;
    border-radius:22px !important;
  }

  .cta-v94::after{
    width:215px;height:215px;
    right:-100px;top:-90px;
  }

  .orbit-a-v94{
    width:430px;height:135px;
  }
  .orbit-b-v94{
    width:310px;height:190px;
  }

  .cta-kicker-v94{
    margin-bottom:13px !important;
    font-size:7.5px !important;
  }

  .cta-v94 h2{
    max-width:100% !important;
    margin-bottom:19px !important;
    font-size:clamp(38px,11.7vw,51px) !important;
    line-height:.94 !important;
    letter-spacing:-.057em !important;
  }

  .cta-email-v94{
    width:100% !important;
    max-width:100% !important;
    min-height:50px !important;
    padding:0 13px !important;
    font-size:11px !important;
    box-sizing:border-box !important;
  }

  .node-a-v94{left:8%;top:24%}
  .node-b-v94{right:8%;top:63%}
  .node-c-v94{left:20%;bottom:12%}
}

@media(max-width:390px){
  #contact.contact-section-v94 > .container{
    width:calc(100% - 20px) !important;
  }

  .cta-v94{
    padding:27px 14px !important;
  }

  .cta-v94 h2{
    font-size:36px !important;
  }

  .cta-email-v94{
    font-size:10px !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .cta-v94::before,
  .cta-v94::after,
  .cta-v94 h2 span,
  .cta-v94.visible h2,
  .cta-orbit-v94,
  .cta-node-v94,
  .cta-email-v94::before,
  .cta-v94.visible .cta-kicker-v94,
  .cta-v94.visible .cta-email-v94{
    animation:none !important;
  }
}


/* =========================================================
   V9.5 — FOOTER + FOOTER BANNER REDESIGN
   Dark blue/violet gradient, full alignment, no dead bottom space.
   ========================================================= */

.site-footer-v95{
  position:relative !important;
  margin:0 !important;
  padding:34px 0 0 !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 10% 10%,rgba(22,137,255,.10),transparent 28%),
    radial-gradient(circle at 90% 8%,rgba(126,70,255,.15),transparent 32%),
    linear-gradient(135deg,#0b1027 0%,#101633 36%,#17113b 68%,#221046 100%) !important;
  color:#fff !important;
}

/* subtle animated background */
.site-footer-v95::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.14;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:54px 54px;
  animation:v95FooterGrid 28s linear infinite;
}
.site-footer-v95::after{
  content:"";
  position:absolute;
  width:520px;height:520px;
  right:-180px;top:-180px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(115,73,255,.20),rgba(35,136,255,.08) 45%,transparent 72%);
  filter:blur(12px);
  pointer-events:none;
  animation:v95FooterGlow 14s ease-in-out infinite alternate;
}

/* Footer top banner */
.footer-top-card-v95,
.site-footer-v95 .footer-cta{
  position:relative !important;
  z-index:2;
  width:min(1280px,calc(100% - 52px)) !important;
  margin:0 auto 34px !important;
  padding:34px 42px !important;
  display:grid !important;
  grid-template-columns:1.05fr .9fr 1fr !important;
  align-items:center !important;
  gap:34px !important;
  overflow:hidden !important;
  border:1px solid rgba(82,155,255,.18) !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 8% 12%,rgba(35,194,255,.16),transparent 31%),
    radial-gradient(circle at 92% 16%,rgba(131,83,255,.18),transparent 34%),
    linear-gradient(120deg,#07172f 0%,#09213a 45%,#111a42 72%,#1a1648 100%) !important;
  box-shadow:0 24px 58px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.06) !important;
}

/* moving line accent inside banner */
.footer-top-card-v95::before,
.site-footer-v95 .footer-cta::before{
  content:"";
  position:absolute;
  left:-10%;
  right:-10%;
  bottom:18px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(51,197,255,.45),rgba(122,82,255,.45),transparent);
  animation:v95FooterSignal 8s ease-in-out infinite;
}
.footer-top-card-v95::after,
.site-footer-v95 .footer-cta::after{
  content:"";
  position:absolute;
  width:250px;height:250px;
  right:-80px;top:-110px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 0 0 24px rgba(255,255,255,.025),0 0 0 48px rgba(83,91,255,.02);
  animation:v95FooterOrb 12s ease-in-out infinite alternate;
}

/* Banner headings and copy */
.site-footer-v95 .footer-top-card-v95 h2,
.site-footer-v95 .footer-cta h2{
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(44px,4.6vw,72px) !important;
  line-height:.92 !important;
  letter-spacing:-.055em !important;
}

.site-footer-v95 .footer-top-card-v95 p,
.site-footer-v95 .footer-cta p{
  margin:0 !important;
  color:rgba(232,239,255,.70) !important;
  font-size:14px !important;
  line-height:1.6 !important;
}

.site-footer-v95 .footer-top-card-v95 .btn,
.site-footer-v95 .footer-cta .btn{
  justify-self:start !important;
  min-height:50px !important;
  padding:0 20px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,#7250ff,#965dff) !important;
  color:#fff !important;
  box-shadow:0 14px 28px rgba(111,72,255,.22) !important;
}

/* Main footer grid */
.footer-main-v95,
.site-footer-v95 .footer-grid{
  position:relative !important;
  z-index:2;
  width:min(1280px,calc(100% - 52px)) !important;
  margin:0 auto !important;
  padding:38px 0 30px !important;
  display:grid !important;
  grid-template-columns:1.25fr .75fr .95fr .75fr 1.05fr !important;
  gap:34px !important;
  align-items:start !important;
  border-top:1px solid rgba(255,255,255,.09) !important;
}

/* first column */
.site-footer-v95 .footer-brand,
.site-footer-v95 .footer-logo-wrap{
  min-width:0 !important;
}

.site-footer-v95 .footer-logo,
.site-footer-v95 .footer-brand img{
  width:auto !important;
  height:86px !important;
  max-width:150px !important;
  object-fit:contain !important;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.18)) !important;
}

.site-footer-v95 .footer-brand p,
.site-footer-v95 .footer-description{
  max-width:290px !important;
  color:rgba(225,233,255,.64) !important;
  font-size:12px !important;
  line-height:1.65 !important;
}

/* headings */
.site-footer-v95 h3,
.site-footer-v95 h4{
  position:relative !important;
  margin:0 0 18px !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:800 !important;
}
.site-footer-v95 h3::after,
.site-footer-v95 h4::after{
  content:"";
  display:block;
  width:28px;height:2px;
  margin-top:8px;
  border-radius:999px;
  background:linear-gradient(90deg,#2ed4ff,#765dff);
}

/* footer links */
.site-footer-v95 a{
  color:rgba(226,233,255,.72) !important;
  text-decoration:none !important;
  transition:color .25s ease,transform .25s ease !important;
}
.site-footer-v95 a:hover{
  color:#fff !important;
}

.site-footer-v95 ul{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
.site-footer-v95 li{
  margin:0 0 10px !important;
  font-size:12px !important;
  line-height:1.45 !important;
}

/* contact / Let's talk */
.site-footer-v95 .footer-contact,
.site-footer-v95 .lets-talk{
  min-width:0 !important;
}
.site-footer-v95 .footer-contact-row,
.site-footer-v95 .contact-row{
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  margin-bottom:12px !important;
  color:rgba(230,236,255,.74) !important;
  font-size:12px !important;
  line-height:1.45 !important;
}

.site-footer-v95 .footer-contact-row i,
.site-footer-v95 .contact-row i,
.site-footer-v95 .footer-contact-row span:first-child,
.site-footer-v95 .contact-row span:first-child{
  color:#40d6ff !important;
}

/* consultation card */
.site-footer-v95 .consultation-card,
.site-footer-v95 .footer-consult{
  margin-top:18px !important;
  padding:14px 15px !important;
  border:1px solid rgba(55,180,255,.18) !important;
  border-radius:16px !important;
  background:linear-gradient(145deg,rgba(3,36,58,.78),rgba(20,26,70,.78)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}

/* social icons */
.site-footer-v95 .socials,
.site-footer-v95 .footer-socials{
  display:flex !important;
  gap:9px !important;
  margin-top:18px !important;
}
.site-footer-v95 .socials a,
.site-footer-v95 .footer-socials a{
  width:38px;height:38px;
  display:grid !important;
  place-items:center !important;
  border:1px solid rgba(53,175,255,.16) !important;
  border-radius:50% !important;
  background:rgba(6,34,57,.65) !important;
  color:#51d8ff !important;
}

/* bottom bar flush to footer */
.footer-bottom-v95,
.site-footer-v95 .footer-bottom{
  position:relative !important;
  z-index:2;
  width:min(1280px,calc(100% - 52px)) !important;
  margin:0 auto !important;
  padding:18px 0 20px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  border-top:1px solid rgba(255,255,255,.09) !important;
  color:rgba(216,226,255,.48) !important;
  font-size:10px !important;
}

/* kill extra bottom whitespace from old footer rules */
.site-footer-v95,
.site-footer-v95 .container,
.site-footer-v95 .footer-main,
.site-footer-v95 .footer-bottom{
  margin-bottom:0 !important;
}
.site-footer-v95{
  padding-bottom:0 !important;
}

/* tablet */
@media(max-width:980px){
  .footer-top-card-v95,
  .site-footer-v95 .footer-cta{
    width:calc(100% - 30px) !important;
    grid-template-columns:1fr 1fr !important;
    padding:28px !important;
  }

  .footer-main-v95,
  .site-footer-v95 .footer-grid{
    width:calc(100% - 30px) !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:26px 30px !important;
  }

  .footer-bottom-v95,
  .site-footer-v95 .footer-bottom{
    width:calc(100% - 30px) !important;
  }
}

/* mobile */
@media(max-width:620px){
  .site-footer-v95{
    padding-top:18px !important;
  }

  .footer-top-card-v95,
  .site-footer-v95 .footer-cta{
    width:calc(100% - 24px) !important;
    margin-bottom:22px !important;
    padding:22px 18px !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    border-radius:21px !important;
  }

  .site-footer-v95 .footer-top-card-v95 h2,
  .site-footer-v95 .footer-cta h2{
    font-size:clamp(38px,11vw,50px) !important;
  }

  .footer-main-v95,
  .site-footer-v95 .footer-grid{
    width:calc(100% - 24px) !important;
    padding:26px 0 22px !important;
    grid-template-columns:1fr !important;
    gap:24px !important;
  }

  .site-footer-v95 .footer-logo,
  .site-footer-v95 .footer-brand img{
    height:78px !important;
  }

  .footer-bottom-v95,
  .site-footer-v95 .footer-bottom{
    width:calc(100% - 24px) !important;
    padding:16px 0 18px !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:10px !important;
  }
}

@keyframes v95FooterGrid{
  from{background-position:0 0,0 0}
  to{background-position:54px 54px,54px 54px}
}
@keyframes v95FooterGlow{
  from{transform:translate3d(0,0,0) scale(.96);opacity:.65}
  to{transform:translate3d(-34px,26px,0) scale(1.08);opacity:1}
}
@keyframes v95FooterSignal{
  0%,100%{transform:translateX(-10%);opacity:.18}
  50%{transform:translateX(10%);opacity:.55}
}
@keyframes v95FooterOrb{
  from{transform:translate3d(0,0,0) scale(.95)}
  to{transform:translate3d(-24px,20px,0) scale(1.06)}
}

@media(prefers-reduced-motion:reduce){
  .site-footer-v95::before,
  .site-footer-v95::after,
  .footer-top-card-v95::before,
  .footer-top-card-v95::after,
  .site-footer-v95 .footer-cta::before,
  .site-footer-v95 .footer-cta::after{
    animation:none !important;
  }
}


/* =========================================================
   V9.6 — FOOTER MATCHES MAIN HERO THEME
   White background + blue/cyan/violet gradient + corrected alignment
   ========================================================= */

.site-footer-v95{
  position:relative !important;
  margin:0 !important;
  padding:34px 0 0 !important;
  overflow:hidden !important;
  color:#07183f !important;
  background:
    radial-gradient(circle at 5% 8%,rgba(72,190,255,.20) 0,rgba(72,190,255,.09) 24%,transparent 48%),
    radial-gradient(circle at 94% 12%,rgba(132,89,255,.22) 0,rgba(132,89,255,.10) 27%,transparent 50%),
    linear-gradient(115deg,#f8fcff 0%,#eef8ff 34%,#f4f0ff 69%,#eee8ff 100%) !important;
}

/* soft hero-style grid, not dark */
.site-footer-v95::before{
  opacity:.22 !important;
  background-image:
    linear-gradient(rgba(41,119,255,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(41,119,255,.07) 1px,transparent 1px) !important;
  background-size:58px 58px !important;
}
.site-footer-v95::after{
  width:620px !important;
  height:620px !important;
  right:-230px !important;
  top:-230px !important;
  background:radial-gradient(circle,rgba(129,80,255,.18),rgba(57,175,255,.09) 44%,transparent 70%) !important;
  filter:blur(18px) !important;
}

/* CENTRAL BANNER: same family as hero orb/cards */
.footer-top-card-v95,
.site-footer-v95 .footer-cta{
  width:min(1280px,calc(100% - 48px)) !important;
  min-height:300px !important;
  margin:0 auto 32px !important;
  padding:38px 44px !important;
  grid-template-columns:1.05fr .92fr 1fr !important;
  gap:36px !important;
  border:1px solid rgba(63,145,255,.22) !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 10% 18%,rgba(46,196,255,.16),transparent 34%),
    radial-gradient(circle at 92% 14%,rgba(135,83,255,.20),transparent 35%),
    linear-gradient(120deg,#0a2145 0%,#0b2b50 42%,#172452 70%,#32206d 100%) !important;
  box-shadow:
    0 24px 55px rgba(50,75,150,.15),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

.footer-top-card-v95::before,
.site-footer-v95 .footer-cta::before{
  background:linear-gradient(90deg,transparent,rgba(49,211,255,.60),rgba(127,91,255,.62),transparent) !important;
}

.site-footer-v95 .footer-top-card-v95 h2,
.site-footer-v95 .footer-cta h2{
  color:#fff !important;
}
.site-footer-v95 .footer-top-card-v95 p,
.site-footer-v95 .footer-cta p{
  color:rgba(239,246,255,.78) !important;
}
.site-footer-v95 .footer-top-card-v95 .btn,
.site-footer-v95 .footer-cta .btn{
  color:#fff !important;
  background:linear-gradient(90deg,#6658ff 0%,#8959ff 52%,#9d62ff 100%) !important;
}

/* Footer content alignment */
.footer-main-v95,
.site-footer-v95 .footer-grid{
  width:min(1280px,calc(100% - 48px)) !important;
  margin:0 auto !important;
  padding:34px 0 30px !important;
  display:grid !important;
  grid-template-columns:1.25fr .8fr 1fr .8fr 1.15fr !important;
  column-gap:42px !important;
  row-gap:28px !important;
  align-items:start !important;
  border-top:1px solid rgba(47,103,184,.16) !important;
}

/* Make every footer column start on same line */
.site-footer-v95 .footer-grid > *,
.footer-main-v95 > *{
  margin-top:0 !important;
  padding-top:0 !important;
  min-width:0 !important;
  align-self:start !important;
}

.site-footer-v95 h3,
.site-footer-v95 h4{
  margin-top:0 !important;
  color:#08183c !important;
}
.site-footer-v95 h3::after,
.site-footer-v95 h4::after{
  background:linear-gradient(90deg,#19c8ff,#7659ff) !important;
}

/* Footer text/links on light background */
.site-footer-v95,
.site-footer-v95 p,
.site-footer-v95 li,
.site-footer-v95 .footer-contact-row,
.site-footer-v95 .contact-row{
  color:#52617b !important;
}
.site-footer-v95 a{
  color:#34445f !important;
}
.site-footer-v95 a:hover{
  color:#156cff !important;
}

.site-footer-v95 .footer-brand p,
.site-footer-v95 .footer-description{
  color:#53627a !important;
}

/* logo slightly larger and aligned */
.site-footer-v95 .footer-logo,
.site-footer-v95 .footer-brand img{
  height:96px !important;
  max-width:170px !important;
  margin:0 0 18px !important;
}

/* social buttons */
.site-footer-v95 .socials a,
.site-footer-v95 .footer-socials a{
  border:1px solid rgba(54,138,255,.20) !important;
  background:rgba(255,255,255,.66) !important;
  color:#1676ff !important;
  box-shadow:0 8px 20px rgba(61,100,180,.07) !important;
}

/* small result/consultation cards */
.site-footer-v95 .consultation-card,
.site-footer-v95 .footer-consult{
  border:1px solid rgba(57,143,255,.20) !important;
  background:linear-gradient(135deg,rgba(255,255,255,.80),rgba(236,244,255,.84),rgba(243,236,255,.82)) !important;
  color:#0a1c42 !important;
  box-shadow:0 12px 28px rgba(56,80,145,.08) !important;
}

/* Force Let's talk contact values to remain readable */
.site-footer-v95 .footer-contact-row,
.site-footer-v95 .contact-row{
  align-items:center !important;
}
.site-footer-v95 .footer-contact-row i,
.site-footer-v95 .contact-row i,
.site-footer-v95 .footer-contact-row span:first-child,
.site-footer-v95 .contact-row span:first-child{
  color:#087cff !important;
}

/* bottom bar: aligned edge-to-edge with footer grid, no wasted space */
.footer-bottom-v95,
.site-footer-v95 .footer-bottom{
  width:min(1280px,calc(100% - 48px)) !important;
  margin:0 auto !important;
  padding:17px 0 19px !important;
  color:#758197 !important;
  border-top:1px solid rgba(47,103,184,.16) !important;
}
.site-footer-v95 .footer-bottom a{
  color:#66738a !important;
}

/* remove any inherited dark overlays from old footer */
.site-footer-v95 .container{
  position:relative !important;
  z-index:2 !important;
}
.site-footer-v95 *{
  box-sizing:border-box !important;
}

/* tablet */
@media(max-width:980px){
  .footer-top-card-v95,
  .site-footer-v95 .footer-cta{
    width:calc(100% - 30px) !important;
    min-height:auto !important;
    grid-template-columns:1fr 1fr !important;
    padding:30px !important;
  }
  .footer-main-v95,
  .site-footer-v95 .footer-grid{
    width:calc(100% - 30px) !important;
    grid-template-columns:1.2fr 1fr 1fr !important;
    column-gap:30px !important;
  }
  .footer-bottom-v95,
  .site-footer-v95 .footer-bottom{
    width:calc(100% - 30px) !important;
  }
}

/* phone */
@media(max-width:620px){
  .site-footer-v95{
    padding-top:16px !important;
  }
  .footer-top-card-v95,
  .site-footer-v95 .footer-cta{
    width:calc(100% - 24px) !important;
    margin-bottom:20px !important;
    padding:24px 20px !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    border-radius:22px !important;
  }
  .footer-main-v95,
  .site-footer-v95 .footer-grid{
    width:calc(100% - 24px) !important;
    padding:24px 0 20px !important;
    grid-template-columns:1fr 1fr !important;
    column-gap:20px !important;
    row-gap:26px !important;
  }
  .site-footer-v95 .footer-brand,
  .site-footer-v95 .lets-talk,
  .site-footer-v95 .footer-contact{
    grid-column:1/-1 !important;
  }
  .site-footer-v95 .footer-logo,
  .site-footer-v95 .footer-brand img{
    height:86px !important;
  }
  .footer-bottom-v95,
  .site-footer-v95 .footer-bottom{
    width:calc(100% - 24px) !important;
    padding:15px 0 18px !important;
  }
}

@media(max-width:420px){
  .footer-main-v95,
  .site-footer-v95 .footer-grid{
    grid-template-columns:1fr !important;
  }
  .site-footer-v95 .footer-brand,
  .site-footer-v95 .lets-talk,
  .site-footer-v95 .footer-contact{
    grid-column:auto !important;
  }
}


/* =========================================================
   V9.7 — LIGHT FOOTER POLISH + SERVICE MOTION ECOSYSTEM
   ========================================================= */

/* Footer readable dark typography on the light hero-style background */
.site-footer-v95{
  color:#091936 !important;
}

.site-footer-v95 h3,
.site-footer-v95 h4,
.site-footer-v95 strong,
.site-footer-v95 b{
  color:#0a1835 !important;
}

.site-footer-v95 p,
.site-footer-v95 li,
.site-footer-v95 a,
.site-footer-v95 .footer-contact-row,
.site-footer-v95 .contact-row,
.site-footer-v95 .footer-description{
  color:#53617a !important;
}

.site-footer-v95 a:hover{
  color:#176ef2 !important;
}

/* The two old black blocks now match the light footer theme */
.site-footer-v95 .consultation-card,
.site-footer-v95 .footer-consult,
.site-footer-v95 .footer-highlight,
.site-footer-v95 .footer-promise,
.site-footer-v95 .footer-note-card{
  border:1px solid rgba(55,133,245,.18) !important;
  background:
    radial-gradient(circle at 100% 0%,rgba(129,82,255,.11),transparent 42%),
    linear-gradient(145deg,rgba(255,255,255,.92),rgba(238,247,255,.92)) !important;
  color:#0a1835 !important;
  box-shadow:0 14px 32px rgba(45,78,145,.09) !important;
}

.site-footer-v95 .consultation-card *,
.site-footer-v95 .footer-consult *,
.site-footer-v95 .footer-highlight *,
.site-footer-v95 .footer-promise *,
.site-footer-v95 .footer-note-card *{
  color:inherit !important;
}

.site-footer-v95 .consultation-card small,
.site-footer-v95 .footer-consult small,
.site-footer-v95 .footer-highlight small,
.site-footer-v95 .footer-promise small,
.site-footer-v95 .footer-note-card small{
  color:#6e7c93 !important;
}

/* Keep the top CTA banner dark/premium, but aligned with current palette */
.footer-top-card-v95,
.site-footer-v95 .footer-cta{
  background:
    radial-gradient(circle at 8% 15%,rgba(38,200,255,.18),transparent 31%),
    radial-gradient(circle at 92% 12%,rgba(139,83,255,.23),transparent 34%),
    linear-gradient(118deg,#082445 0%,#0b3153 38%,#172755 68%,#35236f 100%) !important;
}

.site-footer-v95 .footer-top-card-v95 h2,
.site-footer-v95 .footer-cta h2,
.site-footer-v95 .footer-top-card-v95 strong,
.site-footer-v95 .footer-cta strong{
  color:#fff !important;
}

.site-footer-v95 .footer-top-card-v95 p,
.site-footer-v95 .footer-cta p{
  color:rgba(239,246,255,.78) !important;
}

/* Animated service graphics similar to the homepage hero */
.footer-service-motion-v97{
  position:absolute;
  inset:0;
  z-index:1;
  overflow:hidden;
  pointer-events:none;
}

.footer-service-motion-v97::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.38;
  background:
    radial-gradient(circle at 18% 32%,rgba(47,193,255,.10),transparent 28%),
    radial-gradient(circle at 82% 45%,rgba(132,82,255,.11),transparent 30%);
  animation:v97FooterAmbient 15s ease-in-out infinite alternate;
}

.fsm-orbit{
  position:absolute;
  border:1px solid rgba(45,119,240,.12);
  border-radius:50%;
}
.fsm-orbit-a{
  width:720px;height:210px;
  left:-210px;top:38%;
  transform:rotate(-12deg);
  animation:v97FooterOrbitA 30s linear infinite;
}
.fsm-orbit-b{
  width:610px;height:610px;
  right:-260px;top:20%;
  border-color:rgba(126,82,255,.10);
  animation:v97FooterOrbitB 38s linear infinite reverse;
}

.fsm-flow{
  position:absolute;
  width:440px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(38,149,255,.42),rgba(97,92,255,.35),transparent);
  opacity:.35;
}
.fsm-flow::after{
  content:"";
  position:absolute;
  left:0;top:50%;
  width:6px;height:6px;
  border-radius:50%;
  background:#38bfff;
  box-shadow:0 0 13px rgba(56,191,255,.72);
  transform:translateY(-50%);
  animation:v97FooterSignal 6.8s ease-in-out infinite;
}
.fsm-flow-a{left:6%;top:48%;transform:rotate(7deg)}
.fsm-flow-b{right:4%;top:68%;transform:rotate(-11deg)}

.fsm-chip{
  position:absolute;
  display:flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border:1px solid rgba(42,116,236,.13);
  border-radius:12px;
  background:rgba(255,255,255,.48);
  box-shadow:0 8px 22px rgba(38,75,139,.05);
  color:#1769df;
  opacity:.24;
  backdrop-filter:blur(3px);
  white-space:nowrap;
}
.fsm-chip i{
  width:26px;height:26px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:rgba(44,121,245,.08);
  font-style:normal;
  font-size:10px;
  font-weight:900;
}
.fsm-chip b{
  color:#1769df !important;
  font-size:8px;
  letter-spacing:.12em;
}
.fsm-web{left:3%;top:19%;animation:v97Float1 14s ease-in-out infinite}
.fsm-ui{left:28%;top:10%;animation:v97Float2 16s ease-in-out infinite -3s}
.fsm-brand{right:36%;top:24%;animation:v97Float1 15s ease-in-out infinite -5s}
.fsm-seo{right:4%;top:14%;animation:v97Float2 13s ease-in-out infinite -2s}
.fsm-motion{left:13%;bottom:9%;animation:v97Float2 17s ease-in-out infinite -7s}
.fsm-ai{right:20%;bottom:10%;animation:v97Float1 16s ease-in-out infinite -4s}

.fsm-node{
  position:absolute;
  width:5px;height:5px;
  border-radius:50%;
  background:rgba(39,139,255,.58);
  box-shadow:0 0 10px rgba(39,139,255,.36);
  animation:v97Node 9s ease-in-out infinite;
}
.fn1{left:12%;top:38%}
.fn2{left:37%;top:59%;animation-delay:-2s}
.fn3{left:58%;top:28%;animation-delay:-5s}
.fn4{right:17%;top:51%;animation-delay:-7s}
.fn5{right:8%;bottom:20%;animation-delay:-3s}

/* Keep actual footer content above the graphics */
.site-footer-v95 > .container,
.footer-top-card-v95,
.site-footer-v95 .footer-cta,
.footer-main-v95,
.site-footer-v95 .footer-grid,
.footer-bottom-v95,
.site-footer-v95 .footer-bottom{
  position:relative !important;
  z-index:3 !important;
}

/* Alignment cleanup */
.footer-main-v95,
.site-footer-v95 .footer-grid{
  align-items:start !important;
}
.footer-main-v95 > *,
.site-footer-v95 .footer-grid > *{
  align-self:start !important;
  margin-top:0 !important;
}
.site-footer-v95 .footer-brand{
  padding-top:0 !important;
}
.site-footer-v95 .footer-contact,
.site-footer-v95 .lets-talk{
  padding-top:0 !important;
}

/* Contact icons remain vivid */
.site-footer-v95 .footer-contact-row i,
.site-footer-v95 .contact-row i,
.site-footer-v95 .footer-contact-row span:first-child,
.site-footer-v95 .contact-row span:first-child{
  color:#0c7cff !important;
}

/* Tablet/mobile lighter decorative density */
@media(max-width:980px){
  .fsm-brand,.fsm-motion{display:none}
  .fsm-chip{opacity:.16}
}

@media(max-width:620px){
  .footer-service-motion-v97{
    opacity:.75;
  }
  .fsm-ui,.fsm-seo{display:none}
  .fsm-chip{opacity:.12}
  .fsm-flow{opacity:.20}
}

/* Motion */
@keyframes v97FooterAmbient{
  from{transform:translate3d(-3%,0,0) scale(.96)}
  to{transform:translate3d(5%,2%,0) scale(1.05)}
}
@keyframes v97FooterOrbitA{
  from{transform:rotate(-12deg)}
  to{transform:rotate(348deg)}
}
@keyframes v97FooterOrbitB{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
@keyframes v97FooterSignal{
  0%,12%{left:0;opacity:0}
  25%,78%{opacity:1}
  100%{left:100%;opacity:0}
}
@keyframes v97Float1{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(14px,-14px,0)}
}
@keyframes v97Float2{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(-12px,-17px,0)}
}
@keyframes v97Node{
  0%,100%{transform:translate3d(0,0,0);opacity:.22}
  50%{transform:translate3d(14px,-18px,0);opacity:.70}
}

@media(prefers-reduced-motion:reduce){
  .footer-service-motion-v97 *,
  .footer-service-motion-v97::before{
    animation:none !important;
  }
}


/* =========================================================
   V9.8 — FOOTER CLEAN LIGHT VERSION
   Removes footer hero banner, fixes dark text + both black cards.
   ========================================================= */

/* Footer begins close to the previous section after banner removal */
.site-footer.site-footer-v95{
  padding-top:18px !important;
}

/* Remove any leftover footer CTA/banner spacing if old CSS survives */
.site-footer-v95 .footer-cta,
.site-footer-v95 .footer-top-card-v95{
  display:none !important;
}

/* Main grid now starts immediately */
.site-footer-v95 .footer-main.footer-main-v95{
  width:min(1280px,calc(100% - 48px)) !important;
  margin:0 auto !important;
  padding:26px 0 28px !important;
  border-top:none !important;
  align-items:start !important;
}

/* Strong specificity: ALL footer headings/text are dark on light background */
.site-footer-v95 .footer-main-v95 .footer-col h4,
.site-footer-v95 .footer-main-v95 .footer-contact-col h4{
  color:#081936 !important;
  text-shadow:none !important;
}

.site-footer-v95 .footer-main-v95 .footer-links a,
.site-footer-v95 .footer-main-v95 .footer-links span,
.site-footer-v95 .footer-main-v95 .footer-contact-list a,
.site-footer-v95 .footer-main-v95 .footer-contact-list > div,
.site-footer-v95 .footer-brand-col .footer-copy{
  color:#53617a !important;
}

.site-footer-v95 .footer-main-v95 .footer-links b{
  color:#5e6d86 !important;
}

.site-footer-v95 .footer-underline{
  background:linear-gradient(90deg,#21cfff,#3978ff,#8559ff) !important;
}

/* Animated service labels also use darker readable colors */
.site-footer-v95 .footer-service-motion-v97 .fsm-chip{
  color:#155fc9 !important;
  background:rgba(255,255,255,.56) !important;
  border-color:rgba(45,116,228,.16) !important;
}
.site-footer-v95 .footer-service-motion-v97 .fsm-chip b,
.site-footer-v95 .footer-service-motion-v97 .fsm-chip i{
  color:#155fc9 !important;
}

/* LEFT BLACK BOX -> light themed info card */
.site-footer-v95 .footer-mini-card{
  margin-top:20px !important;
  padding:15px 16px !important;
  display:flex !important;
  align-items:flex-start !important;
  gap:12px !important;
  border:1px solid rgba(50,125,235,.18) !important;
  border-radius:17px !important;
  background:
    radial-gradient(circle at 100% 0%,rgba(126,82,255,.11),transparent 42%),
    linear-gradient(145deg,rgba(255,255,255,.92),rgba(237,247,255,.94)) !important;
  box-shadow:0 14px 30px rgba(46,80,150,.08) !important;
}

.site-footer-v95 .footer-mini-card .mini-icon{
  width:38px !important;
  height:38px !important;
  flex:0 0 38px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:12px !important;
  background:linear-gradient(145deg,#e8f7ff,#eeeaff) !important;
  color:#176ef2 !important;
  border:1px solid rgba(53,119,234,.14) !important;
}

.site-footer-v95 .footer-mini-card strong{
  display:block !important;
  margin-bottom:5px !important;
  color:#0a1835 !important;
  font-size:12px !important;
  line-height:1.35 !important;
}

.site-footer-v95 .footer-mini-card span{
  color:#6b7890 !important;
  font-size:10px !important;
}

/* RIGHT BLACK BOX -> light themed consultation card */
.site-footer-v95 .footer-consult-card{
  margin-top:18px !important;
  padding:14px 15px !important;
  display:grid !important;
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  gap:11px !important;
  border:1px solid rgba(49,128,240,.18) !important;
  border-radius:17px !important;
  background:
    radial-gradient(circle at 100% 0%,rgba(129,82,255,.12),transparent 44%),
    linear-gradient(145deg,rgba(255,255,255,.94),rgba(236,246,255,.95)) !important;
  color:#0a1835 !important;
  box-shadow:0 14px 30px rgba(46,80,150,.08) !important;
}

.site-footer-v95 .footer-consult-card .consult-icon{
  width:36px !important;
  height:36px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:11px !important;
  background:linear-gradient(145deg,#e9f8ff,#efeaff) !important;
  border:1px solid rgba(52,120,236,.14) !important;
  color:#1674f4 !important;
}

.site-footer-v95 .footer-consult-card strong{
  display:block !important;
  margin-bottom:4px !important;
  color:#0a1835 !important;
  font-size:11px !important;
  line-height:1.3 !important;
}

.site-footer-v95 .footer-consult-card small{
  display:block !important;
  color:#718097 !important;
  font-size:9px !important;
}

.site-footer-v95 .footer-consult-card .consult-arrow{
  color:#176ef2 !important;
  font-size:20px !important;
}

/* Social circles: light, not dark */
.site-footer-v95 .footer-socials a{
  background:rgba(255,255,255,.72) !important;
  color:#176ef2 !important;
  border-color:rgba(51,124,235,.18) !important;
  box-shadow:0 8px 20px rgba(48,82,148,.07) !important;
}

/* Bottom alignment */
.site-footer-v95 .footer-bottom.footer-bottom-v95{
  width:min(1280px,calc(100% - 48px)) !important;
  margin:0 auto !important;
  padding:16px 0 18px !important;
  border-top:1px solid rgba(44,104,188,.15) !important;
  align-items:center !important;
}

.site-footer-v95 .footer-bottom-v95,
.site-footer-v95 .footer-bottom-v95 a{
  color:#748097 !important;
}

.site-footer-v95 .footer-bottom-v95 strong{
  color:#1767d9 !important;
}

/* Tablet */
@media(max-width:980px){
  .site-footer.site-footer-v95{
    padding-top:14px !important;
  }

  .site-footer-v95 .footer-main.footer-main-v95{
    width:calc(100% - 30px) !important;
    padding-top:22px !important;
  }

  .site-footer-v95 .footer-bottom.footer-bottom-v95{
    width:calc(100% - 30px) !important;
  }
}

/* Mobile */
@media(max-width:620px){
  .site-footer.site-footer-v95{
    padding-top:10px !important;
  }

  .site-footer-v95 .footer-main.footer-main-v95{
    width:calc(100% - 24px) !important;
    padding:18px 0 20px !important;
  }

  .site-footer-v95 .footer-mini-card,
  .site-footer-v95 .footer-consult-card{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  .site-footer-v95 .footer-bottom.footer-bottom-v95{
    width:calc(100% - 24px) !important;
  }
}

@media(max-width:420px){
  .site-footer-v95 .footer-main.footer-main-v95{
    grid-template-columns:1fr !important;
  }
}


/* V9.9 — footer bottom alignment after removing mini info card */
.site-footer-v95 .footer-mini-card{
  display:none !important;
}
.site-footer-v95 .footer-brand-col{
  padding-bottom:0 !important;
  margin-bottom:0 !important;
}
.site-footer-v95 .footer-main.footer-main-v95{
  padding-bottom:22px !important;
}


/* =========================================================
   V10.0 — COMPACT MOBILE FOOTER
   Desktop unchanged. Mobile becomes a compact 2-column footer.
   ========================================================= */

@media(max-width:620px){

  .site-footer.site-footer-v95{
    padding-top:0 !important;
    overflow:hidden !important;
  }

  .site-footer-v95 .footer-main.footer-main-v95{
    width:calc(100% - 28px) !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:24px 0 18px !important;

    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    column-gap:18px !important;
    row-gap:24px !important;
    align-items:start !important;
  }

  /* Brand block becomes compact full-width intro */
  .site-footer-v95 .footer-brand-col{
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:78px 1fr !important;
    column-gap:15px !important;
    row-gap:10px !important;
    align-items:center !important;
    margin:0 !important;
    padding:0 0 18px !important;
    border-bottom:1px solid rgba(49,105,189,.14) !important;
  }

  .site-footer-v95 .footer-logo{
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
    width:76px !important;
    max-width:76px !important;
    height:auto !important;
    margin:0 !important;
  }

  .site-footer-v95 .footer-brand-col .footer-copy{
    grid-column:2 !important;
    margin:0 !important;
    max-width:none !important;
    font-size:12px !important;
    line-height:1.55 !important;
  }

  .site-footer-v95 .footer-socials{
    grid-column:2 !important;
    display:flex !important;
    flex-wrap:wrap !important;
    gap:7px !important;
    margin:0 !important;
  }

  .site-footer-v95 .footer-socials a{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    border-radius:11px !important;
    display:grid !important;
    place-items:center !important;
    font-size:12px !important;
  }

  /* Every navigation column occupies half width */
  .site-footer-v95 .footer-col,
  .site-footer-v95 .footer-contact-col{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  .site-footer-v95 .footer-col h4,
  .site-footer-v95 .footer-contact-col h4{
    margin:0 0 11px !important;
    font-size:15px !important;
    line-height:1.2 !important;
  }

  .site-footer-v95 .footer-underline{
    width:28px !important;
    height:2px !important;
    margin:0 0 12px !important;
  }

  .site-footer-v95 .footer-links{
    display:grid !important;
    gap:0 !important;
  }

  .site-footer-v95 .footer-links a{
    min-width:0 !important;
    padding:5px 0 !important;
    font-size:11px !important;
    line-height:1.35 !important;
    white-space:normal !important;
  }

  .site-footer-v95 .footer-links a b{
    float:right !important;
    margin-left:5px !important;
  }

  /* Contact column spans full width, laid out horizontally */
  .site-footer-v95 .footer-contact-col{
    grid-column:1 / -1 !important;
    padding-top:2px !important;
  }

  .site-footer-v95 .footer-contact-list{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
  }

  .site-footer-v95 .footer-contact-list a,
  .site-footer-v95 .footer-contact-list > div{
    min-width:0 !important;
    font-size:11px !important;
    line-height:1.4 !important;
    overflow-wrap:anywhere !important;
  }

  .site-footer-v95 .footer-consult-card{
    margin-top:12px !important;
    padding:12px 13px !important;
    border-radius:14px !important;
  }

  /* Decorative motion is reduced on small screens */
  .site-footer-v95 .footer-service-motion-v97{
    opacity:.42 !important;
    pointer-events:none !important;
  }

  .site-footer-v95 .footer-service-motion-v97 .fsm-chip:nth-child(n+4){
    display:none !important;
  }

  /* Compact copyright row */
  .site-footer-v95 .footer-bottom.footer-bottom-v95{
    width:calc(100% - 28px) !important;
    margin:0 auto !important;
    padding:14px 0 18px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:9px !important;
    font-size:9px !important;
  }

  .site-footer-v95 .footer-bottom-links{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:10px !important;
  }
}

/* Very narrow phones: keep the two-column structure but tighten it */
@media(max-width:390px){
  .site-footer-v95 .footer-main.footer-main-v95{
    width:calc(100% - 22px) !important;
    column-gap:13px !important;
    row-gap:20px !important;
  }

  .site-footer-v95 .footer-brand-col{
    grid-template-columns:66px 1fr !important;
    column-gap:12px !important;
  }

  .site-footer-v95 .footer-logo{
    width:64px !important;
    max-width:64px !important;
  }

  .site-footer-v95 .footer-brand-col .footer-copy{
    font-size:11px !important;
  }

  .site-footer-v95 .footer-col h4,
  .site-footer-v95 .footer-contact-col h4{
    font-size:14px !important;
  }

  .site-footer-v95 .footer-links a{
    font-size:10.5px !important;
  }
}


/* =========================================================
   V10.1 — MINIMAL / ALIGNED MOBILE FOOTER
   Clean spacing, simple hierarchy, no awkward gaps.
   Desktop unchanged.
   ========================================================= */

@media(max-width:620px){

  .site-footer.site-footer-v95{
    padding:0 !important;
  }

  .site-footer-v95 .footer-main.footer-main-v95{
    width:calc(100% - 28px) !important;
    margin:0 auto !important;
    padding:22px 0 18px !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:22px 18px !important;
    align-items:start !important;
  }

  /* Brand block: full-width, simple and centered vertically */
  .site-footer-v95 .footer-brand-col{
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:68px 1fr !important;
    gap:10px 14px !important;
    align-items:center !important;
    padding:0 0 18px !important;
    margin:0 !important;
    border-bottom:1px solid rgba(49,105,189,.14) !important;
  }

  .site-footer-v95 .footer-logo{
    width:66px !important;
    max-width:66px !important;
    height:auto !important;
    margin:0 !important;
    grid-row:1 / 3 !important;
  }

  .site-footer-v95 .footer-brand-col .footer-copy{
    margin:0 !important;
    font-size:11px !important;
    line-height:1.5 !important;
    max-width:none !important;
  }

  .site-footer-v95 .footer-socials{
    margin:0 !important;
    display:flex !important;
    gap:7px !important;
    flex-wrap:wrap !important;
  }

  .site-footer-v95 .footer-socials a{
    width:32px !important;
    height:32px !important;
    min-width:32px !important;
    border-radius:10px !important;
    font-size:11px !important;
  }

  /* Navigation columns */
  .site-footer-v95 .footer-col,
  .site-footer-v95 .footer-contact-col{
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    min-width:0 !important;
  }

  .site-footer-v95 .footer-col h4,
  .site-footer-v95 .footer-contact-col h4{
    margin:0 0 10px !important;
    font-size:14px !important;
    line-height:1.2 !important;
  }

  .site-footer-v95 .footer-underline{
    width:24px !important;
    margin:0 0 10px !important;
  }

  .site-footer-v95 .footer-links{
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
  }

  .site-footer-v95 .footer-links a{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    min-height:29px !important;
    padding:4px 0 !important;
    font-size:10.5px !important;
    line-height:1.25 !important;
  }

  /* Company takes half width like other nav columns */
  .site-footer-v95 .footer-col:nth-of-type(3){
    grid-column:auto !important;
  }

  /* Let's talk: full-width clean block */
  .site-footer-v95 .footer-contact-col{
    grid-column:1 / -1 !important;
    padding-top:2px !important;
  }

  .site-footer-v95 .footer-contact-list{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:7px !important;
  }

  .site-footer-v95 .footer-contact-list a,
  .site-footer-v95 .footer-contact-list > div{
    display:flex !important;
    align-items:center !important;
    gap:9px !important;
    min-height:28px !important;
    font-size:10.5px !important;
    line-height:1.35 !important;
    overflow-wrap:anywhere !important;
  }

  /* Consultation card becomes subtle, not a heavy block */
  .site-footer-v95 .footer-consult-card{
    margin-top:10px !important;
    padding:11px 12px !important;
    border-radius:13px !important;
    box-shadow:none !important;
    background:rgba(255,255,255,.58) !important;
  }

  .site-footer-v95 .footer-consult-card strong{
    font-size:10.5px !important;
  }

  .site-footer-v95 .footer-consult-card small{
    font-size:8.5px !important;
  }

  /* Reduce decorative clutter behind footer on mobile */
  .site-footer-v95 .footer-service-motion-v97{
    opacity:.22 !important;
  }

  .site-footer-v95 .fsm-chip,
  .site-footer-v95 .fsm-flow{
    display:none !important;
  }

  .site-footer-v95 .fsm-orbit{
    opacity:.35 !important;
  }

  /* Bottom line */
  .site-footer-v95 .footer-bottom.footer-bottom-v95{
    width:calc(100% - 28px) !important;
    margin:0 auto !important;
    padding:13px 0 16px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    align-items:flex-start !important;
    font-size:8.5px !important;
  }

  .site-footer-v95 .footer-bottom-links{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:9px !important;
  }
}

@media(max-width:390px){
  .site-footer-v95 .footer-main.footer-main-v95{
    width:calc(100% - 22px) !important;
    grid-template-columns:1fr 1fr !important;
    gap:20px 14px !important;
  }

  .site-footer-v95 .footer-brand-col{
    grid-template-columns:58px 1fr !important;
    gap:9px 12px !important;
  }

  .site-footer-v95 .footer-logo{
    width:56px !important;
    max-width:56px !important;
  }

  .site-footer-v95 .footer-brand-col .footer-copy{
    font-size:10.5px !important;
  }

  .site-footer-v95 .footer-links a{
    font-size:10px !important;
  }

  .site-footer-v95 .footer-bottom.footer-bottom-v95{
    width:calc(100% - 22px) !important;
  }
}


/* =========================================================
   V10.2 — SIMPLE / PROPER MOBILE FOOTER
   Desktop footer untouched.
   Mobile shows only the essentials, centered and aligned.
   ========================================================= */

@media(max-width:620px){

  .site-footer.site-footer-v95{
    padding:0 !important;
  }

  .site-footer-v95 .footer-main.footer-main-v95{
    width:calc(100% - 28px) !important;
    margin:0 auto !important;
    padding:24px 0 18px !important;
    display:block !important;
  }

  /* Hide the desktop-heavy navigation columns on phone */
  .site-footer-v95 .footer-main-v95 > .footer-col{
    display:none !important;
  }

  /* Brand becomes the main mobile footer */
  .site-footer-v95 .footer-brand-col{
    width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    gap:0 !important;
    margin:0 !important;
    padding:0 0 22px !important;
    border-bottom:1px solid rgba(49,105,189,.14) !important;
  }

  .site-footer-v95 .footer-logo{
    width:92px !important;
    max-width:92px !important;
    height:auto !important;
    margin:0 auto 14px !important;
    display:block !important;
  }

  .site-footer-v95 .footer-brand-col .footer-copy{
    width:100% !important;
    max-width:300px !important;
    margin:0 auto 16px !important;
    padding:0 !important;
    color:#53617a !important;
    font-size:11.5px !important;
    line-height:1.55 !important;
    text-align:center !important;
  }

  .site-footer-v95 .footer-socials{
    width:100% !important;
    margin:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
  }

  .site-footer-v95 .footer-socials a{
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:11px !important;
    font-size:12px !important;
  }

  /* Contact block: only useful footer info */
  .site-footer-v95 .footer-contact-col{
    width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    text-align:center !important;
    margin:0 !important;
    padding:20px 0 0 !important;
  }

  .site-footer-v95 .footer-contact-col h4{
    margin:0 0 8px !important;
    color:#081936 !important;
    font-size:15px !important;
    line-height:1.2 !important;
    text-align:center !important;
  }

  .site-footer-v95 .footer-contact-col .footer-underline{
    width:34px !important;
    height:2px !important;
    margin:0 auto 13px !important;
  }

  .site-footer-v95 .footer-contact-list{
    width:100% !important;
    max-width:310px !important;
    margin:0 auto !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:8px !important;
  }

  .site-footer-v95 .footer-contact-list a,
  .site-footer-v95 .footer-contact-list > div{
    width:100% !important;
    min-height:34px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    margin:0 !important;
    padding:0 !important;
    color:#53617a !important;
    font-size:10.5px !important;
    line-height:1.35 !important;
    text-align:center !important;
    overflow-wrap:anywhere !important;
  }

  /* Remove the extra consultation card from phone */
  .site-footer-v95 .footer-consult-card{
    display:none !important;
  }

  /* Keep mobile background calm */
  .site-footer-v95 .footer-service-motion-v97{
    opacity:.14 !important;
  }

  .site-footer-v95 .footer-service-motion-v97 .fsm-chip,
  .site-footer-v95 .footer-service-motion-v97 .fsm-flow{
    display:none !important;
  }

  .site-footer-v95 .footer-service-motion-v97 .fsm-orbit{
    opacity:.24 !important;
  }

  /* Compact bottom row */
  .site-footer-v95 .footer-bottom.footer-bottom-v95{
    width:calc(100% - 28px) !important;
    margin:0 auto !important;
    padding:14px 0 18px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    text-align:center !important;
    font-size:8.5px !important;
  }

  .site-footer-v95 .footer-bottom-links{
    display:flex !important;
    justify-content:center !important;
    flex-wrap:wrap !important;
    gap:9px !important;
  }
}

@media(max-width:390px){
  .site-footer-v95 .footer-main.footer-main-v95{
    width:calc(100% - 22px) !important;
  }

  .site-footer-v95 .footer-logo{
    width:84px !important;
    max-width:84px !important;
  }

  .site-footer-v95 .footer-brand-col .footer-copy{
    max-width:270px !important;
    font-size:11px !important;
  }

  .site-footer-v95 .footer-contact-list{
    max-width:280px !important;
  }

  .site-footer-v95 .footer-bottom.footer-bottom-v95{
    width:calc(100% - 22px) !important;
  }
}


/* =========================================================
   V10.3 — PREMIUM HEADER REDESIGN
   Theme-matched, no yellow hover, hero-blended, mobile optimized.
   ========================================================= */

.site-header{
  position:relative !important;
  z-index:9999 !important;
  width:min(1280px,calc(100% - 44px)) !important;
  margin:16px auto 0 !important;
  border:1px solid rgba(70,137,255,.18) !important;
  border-radius:22px !important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.90),rgba(247,251,255,.88) 48%,rgba(246,241,255,.88)) !important;
  box-shadow:
    0 18px 46px rgba(37,67,130,.10),
    inset 0 1px 0 rgba(255,255,255,.92) !important;
  backdrop-filter:blur(18px) saturate(135%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(135%) !important;
  overflow:visible !important;
  isolation:isolate !important;
}

/* subtle animated gradient sweep inside header */
.site-header::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  border-radius:inherit;
  pointer-events:none;
  background:
    radial-gradient(circle at 8% 40%,rgba(47,190,255,.10),transparent 28%),
    radial-gradient(circle at 88% 20%,rgba(131,81,255,.11),transparent 30%),
    linear-gradient(110deg,transparent 0%,rgba(66,151,255,.04) 38%,rgba(135,82,255,.05) 62%,transparent 100%);
  background-size:180% 180%;
  animation:v103HeaderWash 14s ease-in-out infinite alternate;
}

/* thin animated border glow */
.site-header::after{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:-2;
  border-radius:23px;
  padding:1px;
  background:linear-gradient(100deg,rgba(53,197,255,.45),rgba(55,114,255,.35),rgba(138,82,255,.45),rgba(53,197,255,.45));
  background-size:220% 100%;
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  animation:v103HeaderBorder 9s linear infinite;
}

.site-header .container.header-inner{
  width:100% !important;
  min-height:72px !important;
  padding:0 18px 0 20px !important;
  display:grid !important;
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  gap:18px !important;
}

/* Logo larger but balanced */
.site-header .logo.ds360-logo-link{
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
  overflow:visible !important;
}

.site-header .ds360-header-logo{
  height:70px !important;
  max-width:130px !important;
  width:auto !important;
  margin:0 !important;
  transform:none !important;
  filter:drop-shadow(0 7px 12px rgba(26,72,145,.13)) !important;
}

/* Navigation centered */
.site-header nav.nav{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  min-width:0 !important;
}

.site-header nav.nav > a:not(.btn){
  position:relative !important;
  min-height:42px !important;
  display:inline-flex !important;
  align-items:center !important;
  padding:0 12px !important;
  border-radius:12px !important;
  background:transparent !important;
  color:#18213a !important;
  font-size:13px !important;
  font-weight:600 !important;
  line-height:1 !important;
  text-decoration:none !important;
  transition:
    color .28s ease,
    background .28s ease,
    transform .28s ease !important;
}

/* remove old yellow hover/current-state highlight */
.site-header nav.nav > a:not(.btn):hover,
.site-header nav.nav > a:not(.btn):focus,
.site-header nav.nav > a:not(.btn).active,
.site-header nav.nav > a:not(.btn)[aria-current="page"]{
  color:#176ef2 !important;
  background:
    linear-gradient(135deg,rgba(42,174,255,.10),rgba(119,82,255,.10)) !important;
  transform:translateY(-1px) !important;
  box-shadow:none !important;
}

/* animated underline */
.site-header nav.nav > a:not(.btn)::after{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  bottom:6px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,#27c8ff,#3477ff,#8456ff);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .28s ease !important;
}

.site-header nav.nav > a:not(.btn):hover::after,
.site-header nav.nav > a:not(.btn):focus::after,
.site-header nav.nav > a:not(.btn).active::after,
.site-header nav.nav > a:not(.btn)[aria-current="page"]::after{
  transform:scaleX(1);
}

/* CTA */
.site-header .header-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
}

.site-header .header-cta{
  position:relative !important;
  min-height:50px !important;
  padding:0 20px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  border:1px solid rgba(115,80,255,.16) !important;
  border-radius:16px !important;
  background:linear-gradient(90deg,#6c52f6 0%,#8157f7 52%,#9561f6 100%) !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  box-shadow:0 12px 25px rgba(115,79,245,.20) !important;
  transition:transform .3s ease,box-shadow .3s ease !important;
}

.site-header .header-cta::before{
  content:"";
  position:absolute;
  top:0;bottom:0;
  left:-70%;
  width:45%;
  transform:skewX(-20deg);
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);
  animation:v103HeaderSheen 4.8s ease-in-out infinite;
}

.site-header .header-cta:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 17px 34px rgba(115,79,245,.27) !important;
}

/* blend into hero: remove artificial gap */
.site-header + .hero-v55{
  margin-top:-2px !important;
  padding-top:54px !important;
}

/* HEADER MOBILE */
@media(max-width:950px){

  .site-header{
    width:calc(100% - 20px) !important;
    margin:10px auto 0 !important;
    border-radius:18px !important;
  }

  .site-header .container.header-inner{
    min-height:64px !important;
    padding:0 12px 0 14px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
  }

  .site-header .ds360-header-logo{
    height:58px !important;
    max-width:105px !important;
  }

  .site-header .header-cta{
    display:none !important;
  }

  .site-header .menu-toggle{
    width:44px !important;
    height:44px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 !important;
    border:1px solid rgba(57,126,239,.16) !important;
    border-radius:13px !important;
    background:
      linear-gradient(145deg,rgba(255,255,255,.94),rgba(239,246,255,.95)) !important;
    color:#176ef2 !important;
    box-shadow:0 7px 18px rgba(39,77,145,.07) !important;
    z-index:10003 !important;
  }

  .site-header nav.nav{
    display:none !important;
    position:absolute !important;
    top:72px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    padding:10px !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:3px !important;
    border:1px solid rgba(58,126,238,.14) !important;
    border-radius:16px !important;
    background:
      linear-gradient(145deg,rgba(255,255,255,.97),rgba(246,250,255,.97),rgba(247,242,255,.97)) !important;
    box-shadow:0 18px 42px rgba(34,66,126,.13) !important;
    backdrop-filter:blur(18px) !important;
    z-index:10002 !important;
  }

  .site-header nav.nav.open{
    display:flex !important;
  }

  .site-header nav.nav > a:not(.btn){
    width:100% !important;
    min-height:44px !important;
    padding:0 13px !important;
    justify-content:flex-start !important;
    border-radius:11px !important;
    font-size:13px !important;
  }

  .site-header nav.nav > a:not(.btn)::after{
    left:13px !important;
    right:auto !important;
    width:28px !important;
    bottom:5px !important;
    transform-origin:left !important;
  }

  .site-header + .hero-v55{
    margin-top:-1px !important;
    padding-top:36px !important;
  }
}

/* small phones */
@media(max-width:390px){
  .site-header{
    width:calc(100% - 14px) !important;
  }

  .site-header .ds360-header-logo{
    height:54px !important;
    max-width:98px !important;
  }

  .site-header .container.header-inner{
    min-height:60px !important;
    padding-left:10px !important;
    padding-right:10px !important;
  }
}

/* motion */
@keyframes v103HeaderWash{
  0%{background-position:0% 50%}
  100%{background-position:100% 50%}
}
@keyframes v103HeaderBorder{
  to{background-position:220% 0}
}
@keyframes v103HeaderSheen{
  0%,56%{left:-70%}
  74%,100%{left:135%}
}

@media(prefers-reduced-motion:reduce){
  .site-header::before,
  .site-header::after,
  .site-header .header-cta::before{
    animation:none !important;
  }
}


/* =========================================================
   V10.4 — HEADER EDGE BLEND ONLY
   Softens the left/right cut-off look without changing layout.
   ========================================================= */

.site-header{
  /* keep existing header design exactly as-is */
  overflow:visible !important;
}

/* soft side “wings” so the floating header does not look abruptly cut */
.site-header .header-inner::before,
.site-header .header-inner::after{
  content:"";
  position:absolute;
  top:8px;
  bottom:8px;
  width:70px;
  pointer-events:none;
  z-index:-1;
  filter:blur(10px);
  opacity:.75;
}

.site-header .header-inner::before{
  left:-34px;
  background:
    radial-gradient(ellipse at right center,
      rgba(72,186,255,.16) 0%,
      rgba(72,186,255,.07) 42%,
      transparent 72%);
}

.site-header .header-inner::after{
  right:-34px;
  background:
    radial-gradient(ellipse at left center,
      rgba(133,84,255,.16) 0%,
      rgba(133,84,255,.07) 42%,
      transparent 72%);
}

/* ensure the inner wrapper can host the soft extensions */
.site-header .container.header-inner{
  position:relative !important;
  overflow:visible !important;
}

/* tiny bottom blend into hero so the header feels integrated */
.site-header + .hero-v55::before{
  opacity:.92 !important;
}

@media(max-width:950px){
  .site-header .header-inner::before,
  .site-header .header-inner::after{
    width:42px;
    top:7px;
    bottom:7px;
    filter:blur(8px);
    opacity:.62;
  }

  .site-header .header-inner::before{
    left:-20px;
  }

  .site-header .header-inner::after{
    right:-20px;
  }
}


/* =========================================================
   V10.5 — STICKY FLOATING HEADER OVER EXTENDED HERO BACKGROUND
   Header card stays white/glassy; hero visual background extends
   behind it and remains visible on both sides.
   ========================================================= */

/* Extend the hero's visual language behind the header area */
body.home{
  position:relative;
  background:
    radial-gradient(circle at 8% 8%, rgba(55,194,255,.18) 0%, rgba(55,194,255,.08) 24%, transparent 46%),
    radial-gradient(circle at 91% 7%, rgba(132,82,255,.20) 0%, rgba(132,82,255,.09) 28%, transparent 49%),
    linear-gradient(135deg,#f6fbff 0%,#eaf6ff 42%,#f0ebff 72%,#f8fbff 100%) !important;
}

/* Decorative top background layer that visually connects header + hero */
body.home::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:220px;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 11% 30%, rgba(44,190,255,.15), transparent 33%),
    radial-gradient(circle at 87% 24%, rgba(129,80,255,.17), transparent 35%),
    linear-gradient(115deg, rgba(255,255,255,.08), rgba(74,156,255,.035) 40%, rgba(135,81,255,.055) 68%, rgba(255,255,255,.04));
  background-size:180% 180%;
  animation:v105TopHeroWash 16s ease-in-out infinite alternate;
}

/* subtle grid/orbit feel behind header sides */
body.home::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:220px;
  z-index:0;
  pointer-events:none;
  opacity:.22;
  background-image:
    linear-gradient(rgba(38,118,255,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(38,118,255,.06) 1px, transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 72%,transparent 100%);
  mask-image:linear-gradient(to bottom,#000 0%,#000 72%,transparent 100%);
  animation:v105TopGrid 24s linear infinite;
}

/* Header remains a floating card but is now sticky */
.site-header{
  position:sticky !important;
  top:12px !important;
  z-index:99999 !important;
  margin-top:12px !important;
}

/* Keep the white/glassy header itself unchanged/readable */
.site-header{
  background:
    linear-gradient(135deg,rgba(255,255,255,.93),rgba(248,251,255,.91) 48%,rgba(247,243,255,.91)) !important;
  backdrop-filter:blur(18px) saturate(135%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(135%) !important;
}

/* Header + hero become one continuous visual system */
.site-header + .hero-v55{
  margin-top:-86px !important;
  padding-top:150px !important;
}

/* Ensure hero sits in normal stack while its background runs underneath header */
.hero-v55{
  position:relative !important;
  z-index:1 !important;
}

/* Keep sticky header above the hero animation */
.site-header{
  isolation:isolate !important;
}

/* Let hero's own animated service/grid visuals reach higher */
.hero-v55 > .hero-service-bg{
  top:-150px !important;
  bottom:0 !important;
  height:auto !important;
}

/* Hide the old edge blend wings; the continuous hero background now does the job */
.site-header .header-inner::before,
.site-header .header-inner::after{
  opacity:.18 !important;
}

/* Sticky scroll state remains premium without becoming opaque/heavy */
@supports (backdrop-filter: blur(1px)){
  .site-header{
    box-shadow:
      0 15px 38px rgba(37,67,130,.11),
      inset 0 1px 0 rgba(255,255,255,.94) !important;
  }
}

/* Mobile/tablet */
@media(max-width:950px){
  body.home::before,
  body.home::after{
    height:170px;
  }

  .site-header{
    position:sticky !important;
    top:7px !important;
    margin-top:7px !important;
  }

  .site-header + .hero-v55{
    margin-top:-72px !important;
    padding-top:116px !important;
  }

  .hero-v55 > .hero-service-bg{
    top:-120px !important;
  }
}

@media(max-width:520px){
  body.home::before,
  body.home::after{
    height:150px;
  }

  .site-header + .hero-v55{
    margin-top:-68px !important;
    padding-top:106px !important;
  }

  .hero-v55 > .hero-service-bg{
    top:-105px !important;
  }
}

@keyframes v105TopHeroWash{
  0%{background-position:0% 50%}
  100%{background-position:100% 50%}
}
@keyframes v105TopGrid{
  from{background-position:0 0,0 0}
  to{background-position:54px 54px,54px 54px}
}

@media(prefers-reduced-motion:reduce){
  body.home::before,
  body.home::after{
    animation:none !important;
  }
}


/* =========================================================
   V10.6 — HEADER LOGO SIZE + TOP SPACING ONLY
   ========================================================= */

/* Give floating header a little more breathing room from viewport top */
.site-header{
  top:10px !important;
  margin-top:10px !important;
}

/* Make official logo visually larger without increasing header height */
.ds360-logo-link{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:visible !important;
  min-width:76px !important;
}

.ds360-header-logo{
  width:76px !important;
  height:76px !important;
  max-width:none !important;
  object-fit:contain !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-48%) !important;
  z-index:5 !important;
  filter:drop-shadow(0 7px 10px rgba(25,103,220,.18)) !important;
}

/* preserve the existing compact header bar height */
.site-header .header-inner{
  overflow:visible !important;
}

@media(max-width:950px){
  .site-header{
    top:7px !important;
    margin-top:7px !important;
  }

  .ds360-logo-link{
    min-width:64px !important;
  }

  .ds360-header-logo{
    width:66px !important;
    height:66px !important;
  }
}

@media(max-width:520px){
  .ds360-logo-link{
    min-width:58px !important;
  }

  .ds360-header-logo{
    width:60px !important;
    height:60px !important;
  }
}


/* =========================================================
   V10.7 — OFFICIAL MEDIA-LIBRARY LOGO / LARGE OFFSET PLACEMENT
   ========================================================= */

.ds360-logo-link{
  min-width:96px !important;
  width:96px !important;
  overflow:visible !important;
  position:relative !important;
}

/* Large visual logo, shifted slightly toward the outer/left side.
   It may extend below the white header intentionally. */
.ds360-header-logo{
  width:108px !important;
  height:108px !important;
  max-width:none !important;
  object-fit:contain !important;
  position:absolute !important;
  left:43% !important;
  top:54% !important;
  transform:translate(-50%,-50%) !important;
  z-index:20 !important;
  filter:drop-shadow(0 9px 13px rgba(13,91,205,.23)) !important;
  pointer-events:none !important;
}

/* Never clip the intentionally oversized transparent logo */
.site-header,
.site-header .header-inner,
.site-header .container.header-inner{
  overflow:visible !important;
}

@media(max-width:950px){
  .ds360-logo-link{
    min-width:76px !important;
    width:76px !important;
  }
  .ds360-header-logo{
    width:86px !important;
    height:86px !important;
    left:45% !important;
    top:53% !important;
  }
}

@media(max-width:520px){
  .ds360-logo-link{
    min-width:66px !important;
    width:66px !important;
  }
  .ds360-header-logo{
    width:76px !important;
    height:76px !important;
    left:46% !important;
    top:52% !important;
  }
}


/* V10.8 — corrected logo markup + final large placement */
.site-header .ds360-logo-link{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:112px !important;
  min-width:112px !important;
  height:64px !important;
  overflow:visible !important;
}

.site-header .ds360-header-logo{
  display:block !important;
  position:absolute !important;
  width:112px !important;
  height:112px !important;
  max-width:none !important;
  left:-2px !important;
  top:50% !important;
  transform:translateY(-47%) !important;
  object-fit:contain !important;
  z-index:25 !important;
  filter:drop-shadow(0 8px 12px rgba(20,91,200,.20)) !important;
}

@media(max-width:950px){
  .site-header .ds360-logo-link{
    width:84px !important;
    min-width:84px !important;
    height:58px !important;
  }
  .site-header .ds360-header-logo{
    width:88px !important;
    height:88px !important;
    left:-2px !important;
  }
}

@media(max-width:520px){
  .site-header .ds360-logo-link{
    width:72px !important;
    min-width:72px !important;
  }
  .site-header .ds360-header-logo{
    width:78px !important;
    height:78px !important;
  }
}


/* V10.9 — hard logo size fix */
.site-header,
.site-header .header-inner,
.site-header .container.header-inner{
  overflow:visible !important;
}

@media(max-width:950px){
  .site-header .ds360-logo-link{
    width:104px !important;
    min-width:104px !important;
  }
  .site-header .ds360-header-logo{
    width:112px !important;
    height:112px !important;
    left:-5px !important;
  }
}

@media(max-width:520px){
  .site-header .ds360-logo-link{
    width:84px !important;
    min-width:84px !important;
  }
  .site-header .ds360-header-logo{
    width:92px !important;
    height:92px !important;
    left:-4px !important;
  }
}


/* =========================================================
   V11.0 — RESPONSIVE OVERSIZED LOGO FIX
   Desktop stays large; mobile no longer inherits the 150px inline size.
   ========================================================= */

.site-header .ds360-header-logo{
  --ds360-logo-size:150px;
}

/* desktop: keep the intentionally large logo */
@media(min-width:951px){
  .site-header .ds360-logo-link{
    width:138px !important;
    min-width:138px !important;
  }
  .site-header .ds360-header-logo{
    --ds360-logo-size:150px;
    left:-8px !important;
    top:50% !important;
    transform:translateY(-46%) !important;
  }
}

/* tablet/mobile: scale the same logo down so it does not cover CTA/menu */
@media(max-width:950px){
  .site-header .ds360-logo-link{
    width:88px !important;
    min-width:88px !important;
    height:58px !important;
  }

  .site-header .ds360-header-logo{
    --ds360-logo-size:96px;
    left:-5px !important;
    top:50% !important;
    transform:translateY(-47%) !important;
  }
}

@media(max-width:520px){
  .site-header .header-inner{
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .site-header .ds360-logo-link{
    width:74px !important;
    min-width:74px !important;
    height:56px !important;
  }

  .site-header .ds360-header-logo{
    --ds360-logo-size:84px;
    left:-3px !important;
    top:50% !important;
    transform:translateY(-47%) !important;
  }
}

/* very narrow phones */
@media(max-width:380px){
  .site-header .ds360-logo-link{
    width:68px !important;
    min-width:68px !important;
  }

  .site-header .ds360-header-logo{
    --ds360-logo-size:78px;
    left:-2px !important;
  }
}


/* V11.2 Contact Us — tested */
.ds-contact-page{overflow:hidden;background:#fff;color:#0a1d45}.ds-contact-hero{position:relative;min-height:610px;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 10% 18%,rgba(43,191,255,.22),transparent 35%),radial-gradient(circle at 88% 24%,rgba(127,78,255,.22),transparent 38%),linear-gradient(120deg,#f7fcff,#eaf7ff 42%,#f1ebff 74%,#fbfdff)}
.ds-contact-grid{position:absolute;inset:0;opacity:.4;background-image:linear-gradient(rgba(41,126,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(41,126,255,.08) 1px,transparent 1px);background-size:58px 58px;animation:dsg 24s linear infinite}.ds-orbit{position:absolute;border:1px solid rgba(50,133,255,.18);border-radius:50%;animation:dss 24s linear infinite}.ds-orbit.oa{width:700px;height:700px;right:-230px;top:-280px}.ds-orbit.ob{width:460px;height:460px;left:-230px;bottom:-280px;animation-direction:reverse}
.ds-contact-hero-inner{position:relative;z-index:2;width:100%;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center;padding:65px 0}.ds-kicker{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.18em;color:#287cff;margin-bottom:17px}.ds-contact-copy h1{font-size:clamp(48px,5.5vw,80px);line-height:.99;letter-spacing:-.055em;margin:0 0 25px}.ds-contact-copy h1 span{background:linear-gradient(90deg,#147cff,#7857ff);-webkit-background-clip:text;color:transparent}.ds-contact-copy p{font-size:16px;line-height:1.8;color:#63708b;max-width:640px}.ds-pills{display:flex;gap:9px;flex-wrap:wrap;margin-top:25px}.ds-pills span{padding:9px 14px;border-radius:99px;border:1px solid rgba(69,125,230,.16);background:rgba(255,255,255,.65);font-size:11px;font-weight:700}
.ds-contact-visual{position:relative;min-height:420px;display:grid;place-items:center}.ds-core{position:relative;width:320px;height:320px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 38% 30%,#258eff,#0a397d 50%,#071b46 74%);box-shadow:0 35px 80px rgba(37,77,180,.25);animation:dsf 5s ease-in-out infinite}.ds-core .ring{position:absolute;inset:28px;border:1px solid rgba(61,210,255,.4);border-radius:50%;animation:dss 11s linear infinite}.ds-core .r2{inset:55px;border-style:dashed;animation-direction:reverse;animation-duration:8s}.core-copy{text-align:center;color:#fff;z-index:2}.core-copy b,.core-copy strong,.core-copy small{display:block}.core-copy b{font-size:27px;color:#56ddff}.core-copy strong{font-size:50px}.core-copy small{font-size:9px;letter-spacing:.18em;opacity:.7}.ds-core i{position:absolute;width:9px;height:9px;border-radius:50%;background:#2bd8ff;box-shadow:0 0 16px #2bd8ff}.ds-core i:nth-of-type(1){top:30px;left:80px}.ds-core i:nth-of-type(2){right:20px;top:145px;background:#7758ff}.ds-core i:nth-of-type(3){bottom:48px;left:30px}.ds-float{position:absolute;padding:15px 19px;min-width:170px;border:1px solid rgba(90,130,220,.15);border-radius:17px;background:rgba(255,255,255,.84);backdrop-filter:blur(14px);box-shadow:0 18px 45px rgba(35,70,140,.11);animation:dsf 5s ease-in-out infinite}.ds-float b,.ds-float small{display:block}.ds-float b{font-size:13px}.ds-float small{font-size:10px;color:#7b879c;margin-top:4px}.ds-float.f1{left:0;top:55px}.ds-float.f2{right:0;bottom:55px;animation-delay:-2s}
.ds-contact-main{padding:105px 0;background:linear-gradient(180deg,#fff,#f8fbff 55%,#fff)}.ds-contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;align-items:center}.ds-contact-info h2{font-size:clamp(38px,4vw,56px);line-height:1.05;letter-spacing:-.045em;margin:0 0 20px}.ds-contact-info>p{font-size:15px;line-height:1.8;color:#69758e;margin-bottom:30px}.ds-info-list{display:grid;gap:11px}.ds-info-list>a,.ds-info-list>div{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid #e3ebf8;border-radius:15px;background:#fff;text-decoration:none;color:#102044}.ds-info-list em{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#e6f7ff,#eee9ff);color:#347cff;font-style:normal}.ds-info-list small,.ds-info-list strong{display:block}.ds-info-list small{font-size:10px;color:#8590a6}.ds-info-list strong{font-size:13px;margin-top:3px}
.ds-form-shell{position:relative;padding:40px;border:1px solid rgba(82,129,229,.17);border-radius:28px;background:#fff;box-shadow:0 32px 85px rgba(42,76,145,.13)}.ds-form-head>span{font-size:10px;font-weight:800;letter-spacing:.18em;color:#387fff}.ds-form-head h2{font-size:33px;margin:7px 0}.ds-form-head p{font-size:12px;color:#7d889e;margin:0 0 25px}.ds-project-form{display:grid;gap:13px}.ds-project-form input,.ds-project-form textarea{width:100%;box-sizing:border-box;padding:16px;border:1px solid #dbe5f3;border-radius:14px;background:#fbfdff;font:inherit;font-size:14px;outline:none;transition:.25s}.ds-project-form textarea{min-height:150px;resize:vertical}.ds-project-form input:focus,.ds-project-form textarea:focus{border-color:#5b9cff;background:#fff;box-shadow:0 0 0 4px rgba(70,145,255,.1);transform:translateY(-1px)}.ds-project-form button{padding:17px;border:0;border-radius:14px;background:linear-gradient(100deg,#197eff,#7654ff);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 14px 30px rgba(80,83,240,.2);transition:.25s}.ds-project-form button:hover{transform:translateY(-2px)}.ds-project-form button span{display:inline-block;margin-left:6px}.ds-success{padding:13px 15px;margin-bottom:18px;border-radius:12px;background:#effbf6;border:1px solid #ccefe0;color:#177251;font-size:12px;font-weight:700}
.ds-contact-bottom{padding:10px 0 90px}.ds-bottom-card{position:relative;overflow:hidden;text-align:center;padding:45px 20px;border-radius:27px;background:linear-gradient(120deg,#081f4c,#133f89 50%,#5438b6);color:#fff}.ds-bottom-card:before{content:"";position:absolute;inset:-100%;background:conic-gradient(transparent,rgba(64,220,255,.13),transparent,rgba(161,105,255,.14),transparent);animation:dss 15s linear infinite}.ds-bottom-card span,.ds-bottom-card h2{position:relative}.ds-bottom-card span{font-size:9px;letter-spacing:.2em;color:#80e8ff;font-weight:800}.ds-bottom-card h2{font-size:clamp(28px,4vw,45px);margin:9px 0 0}
@keyframes dsg{to{background-position:58px 58px,58px 58px}}@keyframes dss{to{transform:rotate(360deg)}}@keyframes dsf{0%,100%{transform:translateY(0)}50%{transform:translateY(-11px)}}
@media(max-width:950px){.ds-contact-hero-inner,.ds-contact-layout{grid-template-columns:1fr}.ds-contact-copy{text-align:center}.ds-contact-copy p{margin-left:auto;margin-right:auto}.ds-pills{justify-content:center}.ds-contact-visual{min-height:350px}.ds-contact-layout{gap:50px}.ds-contact-info{text-align:center}.ds-info-list{max-width:580px;margin:auto;text-align:left}}
@media(max-width:600px){.ds-contact-hero-inner{padding:50px 0}.ds-contact-copy h1{font-size:43px}.ds-contact-visual{min-height:300px}.ds-core{width:220px;height:220px}.core-copy strong{font-size:40px}.ds-float{min-width:135px;padding:11px 13px}.ds-float.f1{left:0;top:25px}.ds-float.f2{right:0;bottom:20px}.ds-contact-main{padding:70px 0}.ds-form-shell{padding:25px 17px;border-radius:21px}.ds-form-head h2{font-size:27px}.ds-contact-info h2{font-size:37px}.ds-contact-bottom{padding-bottom:65px}}
@media(prefers-reduced-motion:reduce){.ds-contact-page *{animation:none!important}}


/* V11.3 contact route display safety */
body .ds-contact-page{
  display:block !important;
  width:100% !important;
}
body .ds-contact-page .ds-contact-hero,
body .ds-contact-page .ds-contact-main,
body .ds-contact-page .ds-contact-bottom{
  display:block;
}


/* =========================================================
   V11.4 — CONTACT HERO HORIZONTAL ALIGNMENT
   Match homepage content width / left-right gutters.
   ========================================================= */
.ds-contact-hero .ds-contact-hero-inner{
  width:min(1280px, calc(100% - 44px)) !important;
  max-width:1280px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

/* Keep both hero columns inside the same visual boundary */
.ds-contact-hero .ds-contact-copy{
  min-width:0 !important;
}

.ds-contact-hero .ds-contact-visual{
  min-width:0 !important;
}

/* Floating cards should stay inside the hero content area */
.ds-contact-hero .ds-float.f1{
  left:10px !important;
}
.ds-contact-hero .ds-float.f2{
  right:10px !important;
}

@media(max-width:950px){
  .ds-contact-hero .ds-contact-hero-inner{
    width:calc(100% - 28px) !important;
  }
}

@media(max-width:600px){
  .ds-contact-hero .ds-contact-hero-inner{
    width:calc(100% - 20px) !important;
  }

  .ds-contact-hero .ds-float.f1{
    left:0 !important;
  }

  .ds-contact-hero .ds-float.f2{
    right:0 !important;
  }
}


/* =========================================================
   V11.5 — SERVICES MULTI-LEVEL MEGA MENU
   ========================================================= */
.site-header nav.nav{overflow:visible!important}
.ds-services-menu{position:relative;display:flex;align-items:center}
.ds-services-trigger{appearance:none;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;cursor:pointer;display:flex;align-items:center;gap:5px;padding:10px 12px;border-radius:10px;transition:.22s ease}
.ds-services-caret{font-size:13px;line-height:1;transition:transform .25s ease;transform:translateY(-1px)}
.ds-services-menu:hover>.ds-services-trigger,.ds-services-menu.is-open>.ds-services-trigger,.ds-services-trigger:focus-visible{color:#176ef2;background:linear-gradient(135deg,rgba(42,174,255,.10),rgba(119,82,255,.10));outline:none}
.ds-services-menu:hover .ds-services-caret,.ds-services-menu.is-open .ds-services-caret{transform:translateY(-1px) rotate(180deg)}

.ds-services-mega{position:absolute;top:calc(100% + 14px);left:50%;width:300px;transform:translate(-50%,10px);opacity:0;visibility:hidden;pointer-events:none;padding:9px;border:1px solid rgba(65,125,230,.15);border-radius:18px;background:rgba(255,255,255,.97);box-shadow:0 24px 60px rgba(34,68,135,.16);backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%);transition:opacity .22s ease,transform .22s ease,visibility .22s;z-index:999999}
.ds-services-mega:before{content:"";position:absolute;left:0;right:0;top:-16px;height:18px}

.ds-services-mega-inner{display:grid;gap:3px}
.ds-service-group{position:relative}
.ds-service-group-trigger{width:100%;appearance:none;border:0;background:transparent;color:#14233f;font:inherit;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;padding:11px 12px;border-radius:11px;transition:.2s ease}
.ds-service-group-trigger i{font-style:normal;color:#6c7f9f;font-size:17px;transition:transform .2s ease}
.ds-service-group:hover>.ds-service-group-trigger,.ds-service-group:focus-within>.ds-service-group-trigger,.ds-service-group.is-open>.ds-service-group-trigger{color:#176ef2;background:linear-gradient(135deg,rgba(34,187,255,.10),rgba(118,80,255,.09))}

.ds-service-submenu{position:absolute;top:-9px;left:calc(100% + 9px);width:260px;padding:9px;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(8px);border:1px solid rgba(65,125,230,.14);border-radius:16px;background:rgba(255,255,255,.99);box-shadow:0 22px 55px rgba(34,68,135,.15);transition:opacity .2s ease,transform .2s ease,visibility .2s}
.ds-service-submenu:before{content:"";position:absolute;top:0;bottom:0;left:-12px;width:14px}
.ds-service-submenu a{display:block;padding:9px 11px;border-radius:9px;color:#53617b!important;text-decoration:none;font-size:12px;line-height:1.35;transition:.18s ease}
.ds-service-submenu a:hover,.ds-service-submenu a:focus{color:#176ef2!important;background:linear-gradient(135deg,rgba(34,187,255,.09),rgba(118,80,255,.08));transform:translateX(3px)}

@media(min-width:951px){
.ds-services-menu.is-open>.ds-services-mega{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
  .ds-service-group:hover>.ds-service-submenu,.ds-service-group:focus-within>.ds-service-submenu,.ds-service-group.is-open>.ds-service-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0)}
}

@media(max-width:950px){
  .site-header nav.nav .ds-services-menu{width:100%;display:block}
  .site-header nav.nav .ds-services-trigger{width:100%;justify-content:space-between;padding:12px 13px!important;color:#14233f!important;font-size:14px!important;font-weight:700!important}
  .ds-services-mega{position:static;width:100%;transform:none!important;opacity:1;visibility:visible;pointer-events:auto;display:none;margin:5px 0 2px;padding:7px;border-radius:14px;background:rgba(245,249,255,.86);box-shadow:none;backdrop-filter:none}
  .ds-services-menu.is-open>.ds-services-mega{display:block}
  .ds-services-mega:before{display:none}
  .ds-service-group-trigger{padding:10px;font-size:13px}
  .ds-service-group-trigger i{transform:rotate(90deg)}
  .ds-service-group.is-open>.ds-service-group-trigger i{transform:rotate(-90deg)}
  .ds-service-submenu{position:static;width:auto;display:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;margin:2px 0 7px 12px;padding:5px;border:0;border-left:2px solid rgba(74,131,255,.17);border-radius:0 10px 10px 0;box-shadow:none;background:rgba(255,255,255,.78)}
  .ds-service-group.is-open>.ds-service-submenu{display:block}
  .ds-service-submenu:before{display:none}
  .ds-service-submenu a{font-size:12px!important;padding:8px 10px!important;color:#596982!important}
}


/* =========================================================
   V11.6 — INDIVIDUAL SERVICE DETAIL PAGES
   ========================================================= */
.ds-service-page{overflow:hidden;background:#fff;color:#0a1d45}
.ds-service-hero{position:relative;min-height:650px;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 12% 20%,rgba(42,190,255,.20),transparent 35%),radial-gradient(circle at 86% 28%,rgba(125,78,255,.22),transparent 38%),linear-gradient(120deg,#f8fcff,#eaf7ff 42%,#f1ebff 75%,#fbfdff)}
.ds-service-grid{position:absolute;inset:0;opacity:.38;background-image:linear-gradient(rgba(42,126,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(42,126,255,.08) 1px,transparent 1px);background-size:58px 58px;animation:dsvcGrid 24s linear infinite}
.ds-service-orbit{position:absolute;border:1px solid rgba(54,135,255,.17);border-radius:50%;animation:dsvcSpin 25s linear infinite}.ds-service-orbit.orbit-one{width:760px;height:760px;right:-280px;top:-310px}.ds-service-orbit.orbit-two{width:430px;height:430px;left:-190px;bottom:-250px;animation-direction:reverse}
.ds-service-hero-inner{position:relative;z-index:3;width:min(1280px,calc(100% - 52px))!important;display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:center;padding:80px 0}
.ds-service-kicker{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#287cff;margin-bottom:17px}
.ds-service-hero-copy h1{font-size:clamp(54px,6vw,88px);line-height:.96;letter-spacing:-.06em;margin:0 0 25px;max-width:690px;background:linear-gradient(90deg,#0a1d45 0%,#176ef2 58%,#7157ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.ds-service-hero-copy p{max-width:620px;font-size:17px;line-height:1.8;color:#65718a;margin:0 0 30px}
.ds-service-cta{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:#fff;font-weight:800;font-size:13px;padding:15px 20px;border-radius:14px;background:linear-gradient(100deg,#197eff,#7654ff);box-shadow:0 15px 35px rgba(75,87,235,.22);transition:.25s}.ds-service-cta:hover{transform:translateY(-2px)}.ds-service-cta span{transition:.25s}.ds-service-cta:hover span{transform:translateX(4px)}

.ds-service-art{position:relative;min-height:460px;display:grid;place-items:center}.ds-service-art-glow{position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(38,190,255,.18),rgba(114,76,255,.08) 48%,transparent 70%);animation:dsvcPulse 5s ease-in-out infinite}
.ds-service-art-core{position:relative;width:330px;height:330px;border-radius:34px;display:grid;place-items:center;transform:rotate(7deg);background:linear-gradient(145deg,#0c3a82,#0b1e4a 65%,#1e1458);box-shadow:0 38px 85px rgba(30,69,155,.25),inset 0 0 45px rgba(60,211,255,.12);animation:dsvcFloat 5s ease-in-out infinite}
.ds-service-art-core:before{content:"";position:absolute;inset:-18px;border:1px solid rgba(52,149,255,.25);border-radius:42px}
.ds-service-art-ring{position:absolute;border:1px solid rgba(67,219,255,.32);border-radius:50%;animation:dsvcSpin 12s linear infinite}.ds-service-art-ring.ring-a{width:260px;height:260px}.ds-service-art-ring.ring-b{width:205px;height:205px;border-style:dashed;animation-direction:reverse;animation-duration:8s}
.ds-service-art-screen{position:relative;z-index:2;width:190px;text-align:center;padding:27px 18px;border-radius:22px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);backdrop-filter:blur(10px);color:#fff}
.ds-service-art-screen .art-icon{display:block;font-size:36px;font-weight:900;color:#5de4ff;margin-bottom:12px}.ds-service-art-screen strong{display:block;font-size:17px;line-height:1.25}.ds-service-art-screen small{display:block;font-size:8px;letter-spacing:.16em;margin-top:10px;opacity:.65}
.art-node{position:absolute;width:10px;height:10px;border-radius:50%;background:#2edcff;box-shadow:0 0 18px #2edcff}.art-node.n1{top:28px;left:76px}.art-node.n2{right:28px;top:150px;background:#795cff}.art-node.n3{bottom:34px;left:42px}
.ds-service-float{position:absolute;display:flex;align-items:center;gap:10px;padding:13px 16px;border:1px solid rgba(80,126,220,.15);border-radius:16px;background:rgba(255,255,255,.88);box-shadow:0 18px 45px rgba(35,70,140,.11);backdrop-filter:blur(14px);animation:dsvcFloat 5s ease-in-out infinite}.ds-service-float span{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,#e5f7ff,#eee9ff);color:#377fff;font-size:11px;font-weight:900}.ds-service-float b{font-size:12px;color:#18263f}.ds-service-float.sf-a{left:5px;top:62px}.ds-service-float.sf-b{right:0;top:140px;animation-delay:-1.7s}.ds-service-float.sf-c{right:40px;bottom:40px;animation-delay:-3s}

.ds-service-detail{padding:110px 0;background:linear-gradient(180deg,#fff,#f8fbff 60%,#fff)}.ds-service-detail-grid{display:grid;grid-template-columns:1fr .82fr;gap:85px;align-items:start}
.ds-service-description h2,.ds-service-form-card h2{font-size:clamp(36px,4vw,56px);line-height:1.05;letter-spacing:-.045em;margin:0 0 20px;color:#0a1d45}.ds-service-description .lead{font-size:18px;line-height:1.75;color:#4f5f7d}.ds-service-description>p:not(.lead){font-size:15px;line-height:1.8;color:#718097}
.ds-service-points{display:grid;gap:12px;margin-top:34px}.ds-service-points>div{display:flex;gap:15px;align-items:center;padding:15px;border:1px solid #e4ebf7;border-radius:16px;background:#fff}.ds-service-points>b{}.ds-service-points>div>b{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#e5f7ff,#eee9ff);color:#347cff;font-size:11px}.ds-service-points strong,.ds-service-points small{display:block}.ds-service-points strong{font-size:13px}.ds-service-points small{font-size:11px;color:#7e8ba2;margin-top:4px}
.ds-service-form-card{position:sticky;top:110px;padding:38px;border:1px solid rgba(82,129,229,.16);border-radius:28px;background:#fff;box-shadow:0 30px 80px rgba(42,76,145,.12)}.ds-service-form-card>p{font-size:13px;color:#78859c;margin:0 0 24px}.ds-service-form-card h2{font-size:32px}
.ds-service-form-card .ds-project-form{display:grid;gap:13px}.ds-service-form-card .ds-project-form input,.ds-service-form-card .ds-project-form textarea{width:100%;box-sizing:border-box;padding:16px;border:1px solid #dbe5f3;border-radius:14px;background:#fbfdff;font:inherit;font-size:14px;outline:none;transition:.25s}.ds-service-form-card .ds-project-form textarea{min-height:145px;resize:vertical}.ds-service-form-card .ds-project-form input:focus,.ds-service-form-card .ds-project-form textarea:focus{border-color:#5b9cff;background:#fff;box-shadow:0 0 0 4px rgba(70,145,255,.1)}.ds-service-form-card .ds-project-form button{padding:17px;border:0;border-radius:14px;background:linear-gradient(100deg,#197eff,#7654ff);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 14px 30px rgba(80,83,240,.2);transition:.25s}.ds-service-form-card .ds-project-form button:hover{transform:translateY(-2px)}

/* category-specific visual accents */
.visual-brand .ds-service-art-core,.visual-graphic .ds-service-art-core{background:linear-gradient(145deg,#173f86,#371f74 62%,#071b43)}
.visual-seo .ds-service-art-core,.visual-marketing .ds-service-art-core{border-radius:50%;background:radial-gradient(circle at 35% 30%,#188eff,#123978 52%,#071b43)}
.visual-motion .ds-service-art-core{border-radius:50% 34px 50% 34px}
.visual-ai .ds-service-art-core{background:linear-gradient(145deg,#063f63,#172667 55%,#3b1c78)}
.visual-ui .ds-service-art-screen{transform:rotate(-7deg)}

@keyframes dsvcGrid{to{background-position:58px 58px,58px 58px}}@keyframes dsvcSpin{to{transform:rotate(360deg)}}@keyframes dsvcFloat{0%,100%{transform:translateY(0) rotate(7deg)}50%{transform:translateY(-12px) rotate(5deg)}}@keyframes dsvcPulse{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(1.12);opacity:1}}

@media(max-width:950px){.ds-service-hero-inner{grid-template-columns:1fr;width:calc(100% - 28px)!important;text-align:center;gap:50px}.ds-service-hero-copy p{margin-left:auto;margin-right:auto}.ds-service-art{min-height:380px}.ds-service-detail-grid{grid-template-columns:1fr;gap:55px}.ds-service-form-card{position:relative;top:auto}.ds-service-description{text-align:center}.ds-service-points{text-align:left}}
@media(max-width:600px){.ds-service-hero{min-height:auto}.ds-service-hero-inner{width:calc(100% - 20px)!important;padding:58px 0}.ds-service-hero-copy h1{font-size:46px}.ds-service-hero-copy p{font-size:14px}.ds-service-art{min-height:310px}.ds-service-art-core{width:230px;height:230px;border-radius:28px}.ds-service-art-ring.ring-a{width:180px;height:180px}.ds-service-art-ring.ring-b{width:140px;height:140px}.ds-service-art-screen{width:140px;padding:20px 12px}.ds-service-art-screen .art-icon{font-size:29px}.ds-service-art-screen strong{font-size:13px}.ds-service-float{padding:10px 11px}.ds-service-float.sf-a{left:0;top:25px}.ds-service-float.sf-b{right:0;top:90px}.ds-service-float.sf-c{right:10px;bottom:20px}.ds-service-detail{padding:72px 0}.ds-service-description h2{font-size:38px}.ds-service-form-card{padding:25px 18px;border-radius:22px}.ds-service-form-card h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.ds-service-page *{animation:none!important}}


/* =========================================================
   V11.9 — HEADER LOGO LEFT ALIGNMENT
   Keep nav/button unchanged; move only logo to far left
   inside the existing header.
   ========================================================= */
.site-header .header-inner{
  padding-left:12px !important;
}

.site-header .ds360-logo-link{
  margin-left:0 !important;
  margin-right:auto !important;
  justify-self:start !important;
}

.site-header .ds360-header-logo{
  left:-8px !important;
}

@media(max-width:950px){
  .site-header .header-inner{
    padding-left:8px !important;
  }

  .site-header .ds360-logo-link{
    margin-left:0 !important;
  }

  .site-header .ds360-header-logo{
    left:-10px !important;
  }
}


/* =========================================================
   V12.0 — FORCE LOGO TO TRUE LEFT EDGE OF HEADER
   Logo removed from layout flow so centered nav stays centered.
   ========================================================= */
.site-header .container.header-inner{
  position:relative !important;
}

.site-header .ds360-logo-link{
  position:absolute !important;
  left:12px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  margin:0 !important;
  width:138px !important;
  min-width:138px !important;
  height:64px !important;
  z-index:10001 !important;
}

.site-header .ds360-header-logo{
  left:-8px !important;
  top:50% !important;
  transform:translateY(-46%) !important;
}

@media(max-width:950px){
  .site-header .ds360-logo-link{
    left:4px !important;
  }
}

/* V12.2 Footer real social icons */
.footer-socials a{overflow:hidden!important;padding:0!important;display:grid!important;place-items:center!important}
.footer-socials a img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;border-radius:50%!important}


/* =========================================================
   V14.0 — ABOUT US PAGE
   ========================================================= */
.ds-about-page{overflow:hidden;background:#fff;color:#10152b}
.ds-about-wrap{width:min(1280px,calc(100% - 44px));margin:0 auto}
.ds-about-kicker{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:800;letter-spacing:.14em;color:#6257e8;text-transform:uppercase}
.ds-about-kicker:before{content:"";width:28px;height:1px;background:linear-gradient(90deg,#2f8cff,#8b5cf6)}
.ds-about-hero{position:relative;min-height:680px;padding:150px 0 105px;background:radial-gradient(circle at 12% 18%,rgba(67,183,255,.18),transparent 30%),radial-gradient(circle at 86% 20%,rgba(142,96,255,.18),transparent 34%),linear-gradient(135deg,#f8fcff,#eff7ff 48%,#f6f1ff);isolation:isolate}
.ds-about-grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(53,111,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(53,111,255,.055) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(#000,transparent 92%);z-index:-2}
.ds-about-glow{position:absolute;border-radius:50%;filter:blur(28px);opacity:.45;z-index:-1;animation:dsAboutFloat 8s ease-in-out infinite}.glow-a{width:280px;height:280px;background:#67d8ff33;left:-80px;top:260px}.glow-b{width:320px;height:320px;background:#8b5cf633;right:-100px;top:120px;animation-delay:-4s}
.ds-about-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:80px}
.ds-about-copy h1{font-size:clamp(52px,5.4vw,84px);line-height:.98;letter-spacing:-.055em;margin:18px 0 24px;max-width:780px}.ds-about-copy h1 span,.ds-about-two-col h2 span{background:linear-gradient(90deg,#146fff,#7659ef 58%,#a65cf1);-webkit-background-clip:text;background-clip:text;color:transparent}.ds-about-copy p{font-size:18px;line-height:1.75;color:#5e687f;max-width:700px}
.ds-about-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.ds-about-btn{min-height:52px;padding:0 24px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;text-decoration:none;transition:.25s ease}.ds-about-btn-primary{color:#fff;background:linear-gradient(100deg,#176dff,#7d55ef);box-shadow:0 15px 34px rgba(70,82,220,.22)}.ds-about-btn-primary:hover{transform:translateY(-2px)}.ds-about-btn-ghost{color:#18223e;background:rgba(255,255,255,.72);border:1px solid rgba(68,88,150,.14);backdrop-filter:blur(10px)}
.ds-about-orbit{position:relative;height:460px;display:grid;place-items:center}.about-orbit-core{position:relative;z-index:4;width:190px;height:190px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;background:radial-gradient(circle at 32% 25%,#73dcff,#1d8cff 24%,#5948dc 62%,#171c66 100%);box-shadow:0 28px 72px rgba(57,85,211,.35),inset 0 0 42px rgba(255,255,255,.18);animation:dsAboutPulse 4s ease-in-out infinite}.about-orbit-core strong{font-size:48px;letter-spacing:-.05em}.about-orbit-core span{font-size:9px;letter-spacing:.16em;opacity:.84}
.about-orbit-ring{position:absolute;border:1px solid rgba(49,112,255,.26);border-radius:50%;animation:dsAboutSpin 16s linear infinite}.ring-one{width:340px;height:340px}.ring-two{width:430px;height:230px;transform:rotate(32deg);animation-direction:reverse;animation-duration:20s}
.about-node{position:absolute;z-index:5;min-width:132px;padding:12px 14px;border-radius:15px;background:rgba(255,255,255,.86);border:1px solid rgba(63,88,155,.12);box-shadow:0 14px 34px rgba(39,58,121,.10);backdrop-filter:blur(12px);animation:dsAboutFloat 6s ease-in-out infinite}.about-node b{display:block;font-size:12px}.about-node span{font-size:10px;color:#7a8499}.node-1{top:28px;left:30px}.node-2{top:88px;right:0;animation-delay:-2s}.node-3{bottom:48px;left:18px;animation-delay:-4s}.node-4{bottom:22px;right:18px;animation-delay:-3s}
.ds-about-who,.ds-about-values,.ds-about-why,.ds-about-capabilities{padding:105px 0}.ds-about-two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:start}.ds-about-two-col h2,.ds-about-section-head h2,.ds-about-approach h2,.ds-about-mindset h2,.ds-about-cta h2{font-size:clamp(40px,4.2vw,64px);line-height:1.03;letter-spacing:-.045em;margin:14px 0 0}.ds-about-copy-block p{font-size:17px;line-height:1.8;color:#687287;margin:0 0 18px}
.ds-about-values{background:linear-gradient(180deg,#fbfdff,#f3f7ff)}.ds-about-section-head{text-align:center;max-width:860px;margin:0 auto 48px}.ds-about-section-head .ds-about-kicker:before{display:none}.ds-about-values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.ds-about-values-grid article{position:relative;padding:28px;border-radius:22px;background:#fff;border:1px solid #e5eaf4;box-shadow:0 14px 34px rgba(28,44,95,.06);overflow:hidden;transition:.3s ease}.ds-about-values-grid article:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(28,44,95,.11)}.value-num{position:absolute;right:18px;top:12px;font-size:50px;font-weight:900;color:rgba(75,89,155,.07)}.value-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#e2f2ff,#e8e1ff);color:#5267d8;font-size:22px;margin-bottom:20px}.ds-about-values-grid h3{font-size:21px;margin:0 0 10px}.ds-about-values-grid p{color:#697389;line-height:1.7;margin:0}
.ds-about-approach{padding:110px 0;background:radial-gradient(circle at 80% 30%,rgba(109,91,238,.12),transparent 35%),linear-gradient(135deg,#0f1739,#182257 54%,#291d68);color:#fff}.ds-about-approach-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.ds-about-approach-copy p{font-size:17px;line-height:1.75;color:#c7cee3;max-width:610px}.ds-about-capability-wheel{position:relative;height:470px;display:grid;place-items:center}.wheel-core{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#2b94ff,#7758ee);font-size:33px;font-weight:900;box-shadow:0 0 55px rgba(83,128,255,.40);z-index:3}.wheel-item{position:absolute;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px);font-size:12px;color:#eef2ff;animation:dsAboutFloat 6s ease-in-out infinite}.w1{top:14px;left:39%}.w2{top:85px;right:5%}.w3{top:200px;right:0}.w4{bottom:70px;right:10%}.w5{bottom:15px;left:42%}.w6{bottom:85px;left:4%}.w7{top:210px;left:0}.w8{top:88px;left:8%}
.ds-about-why-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid #e3e8f3;border-radius:22px;overflow:hidden}.ds-about-why-grid article{padding:26px;border-right:1px solid #e3e8f3;background:#fff}.ds-about-why-grid article:last-child{border-right:0}.ds-about-why-grid strong{display:block;font-size:18px;margin-bottom:8px}.ds-about-why-grid span{font-size:14px;line-height:1.6;color:#707a8f}
.ds-about-process{padding:105px 0;background:#f5f8ff}.ds-about-process-line{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative}.ds-about-process-line:before{content:"";position:absolute;left:10%;right:10%;top:31px;height:1px;background:linear-gradient(90deg,#2f8cff,#8b5cf6);opacity:.28}.ds-about-process-line article{position:relative;padding:24px 20px 0;text-align:center}.ds-about-process-line article>span{position:relative;z-index:2;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;margin:0 auto 20px;background:#fff;border:1px solid #dce4f2;box-shadow:0 8px 22px rgba(34,49,102,.08);font-weight:900;color:#5568da}.ds-about-process-line h3{font-size:20px;margin:0 0 9px}.ds-about-process-line p{font-size:14px;line-height:1.65;color:#707a8e;margin:0}
.ds-about-impact{padding:36px 0;background:#fff}.ds-about-impact-grid{display:grid;grid-template-columns:repeat(4,1fr);border-radius:20px;overflow:hidden;background:linear-gradient(110deg,#176dff,#594fe4 48%,#8758ef);color:#fff}.ds-about-impact-grid article{padding:28px;text-align:center;border-right:1px solid rgba(255,255,255,.16)}.ds-about-impact-grid article:last-child{border-right:0}.ds-about-impact-grid strong{display:block;font-size:27px}.ds-about-impact-grid span{font-size:13px;opacity:.85}
.ds-about-cap-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.ds-about-cap-grid article{padding:25px;border-radius:20px;border:1px solid #e4e9f3;background:#fff;transition:.28s ease}.ds-about-cap-grid article:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(33,49,102,.10)}.ds-about-cap-grid article>span{font-size:11px;font-weight:900;letter-spacing:.12em;color:#6f63e8}.ds-about-cap-grid h3{font-size:19px;margin:10px 0 8px}.ds-about-cap-grid p{font-size:14px;line-height:1.65;color:#717b8f;margin:0}
.ds-about-mindset{padding:30px 0 105px}.ds-about-mindset-card{padding:68px;border-radius:28px;background:radial-gradient(circle at 80% 20%,rgba(112,92,237,.18),transparent 35%),linear-gradient(135deg,#eef8ff,#f5efff);border:1px solid #e0e7f4}.ds-about-mindset-card p{font-size:17px;line-height:1.75;color:#657086;max-width:760px}
.ds-about-cta{padding:78px 0;background:linear-gradient(110deg,#176dff,#594fe4 50%,#8758ef);color:#fff}.ds-about-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.ds-about-cta .ds-about-kicker{color:#dcecff}.ds-about-cta .ds-about-kicker:before{background:#a6e7ff}.ds-about-btn-light{background:#fff;color:#17234a}.ds-about-btn-outline-light{color:#fff;border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.08)}
@keyframes dsAboutSpin{to{transform:rotate(360deg)}}@keyframes dsAboutFloat{0%,100%{translate:0 0}50%{translate:0 -10px}}@keyframes dsAboutPulse{0%,100%{scale:1}50%{scale:1.04}}
@media(max-width:1050px){.ds-about-hero-grid,.ds-about-two-col,.ds-about-approach-grid{grid-template-columns:1fr}.ds-about-hero-grid{gap:30px}.ds-about-orbit{height:410px}.ds-about-values-grid{grid-template-columns:repeat(2,1fr)}.ds-about-why-grid{grid-template-columns:repeat(2,1fr)}.ds-about-why-grid article{border-bottom:1px solid #e3e8f3}.ds-about-cap-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.ds-about-wrap{width:min(100% - 28px,1280px)}.ds-about-hero{padding:118px 0 68px}.ds-about-copy h1{font-size:44px}.ds-about-copy p,.ds-about-copy-block p,.ds-about-approach-copy p,.ds-about-mindset-card p{font-size:15.5px}.ds-about-actions{display:grid;grid-template-columns:1fr}.ds-about-btn{width:100%}.ds-about-orbit{height:330px;transform:scale(.86)}.ds-about-who,.ds-about-values,.ds-about-why,.ds-about-capabilities,.ds-about-process{padding:74px 0}.ds-about-values-grid,.ds-about-why-grid,.ds-about-cap-grid,.ds-about-process-line,.ds-about-impact-grid{grid-template-columns:1fr}.ds-about-process-line:before{display:none}.ds-about-why-grid article,.ds-about-impact-grid article{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.ds-about-mindset-card{padding:34px 24px}.ds-about-cta-inner{display:block}.ds-about-cta .ds-about-actions{margin-top:26px}.ds-about-capability-wheel{height:400px;transform:scale(.9)}}


/* =========================================================
   V14.1 — PRICING PAGE
   ========================================================= */
.ds-pricing-page{overflow:hidden;background:#fff;color:#10152b}
.ds-price-wrap{width:min(1280px,calc(100% - 44px));margin:0 auto}
.ds-price-kicker{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:800;letter-spacing:.14em;color:#6257e8;text-transform:uppercase}
.ds-price-kicker:before{content:"";width:28px;height:1px;background:linear-gradient(90deg,#2f8cff,#8b5cf6)}
.ds-price-hero{position:relative;padding:150px 0 96px;background:radial-gradient(circle at 15% 15%,rgba(67,183,255,.16),transparent 30%),radial-gradient(circle at 84% 10%,rgba(142,96,255,.16),transparent 32%),linear-gradient(135deg,#f8fcff,#eff7ff 48%,#f6f1ff);isolation:isolate}
.ds-price-grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(53,111,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(53,111,255,.055) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(#000,transparent 92%);z-index:-2}
.ds-price-glow{position:absolute;border-radius:50%;filter:blur(30px);opacity:.38;z-index:-1;animation:dsPriceFloat 8s ease-in-out infinite}.glow-one{width:280px;height:280px;background:#67d8ff33;left:-90px;top:200px}.glow-two{width:330px;height:330px;background:#8b5cf633;right:-100px;top:70px;animation-delay:-4s}
.ds-price-hero-inner{text-align:center;max-width:1000px}.ds-price-hero h1{font-size:clamp(50px,5.4vw,82px);line-height:.98;letter-spacing:-.055em;margin:18px auto 24px}.ds-price-hero h1 span{background:linear-gradient(90deg,#146fff,#7659ef 58%,#a65cf1);-webkit-background-clip:text;background-clip:text;color:transparent}.ds-price-hero p{max-width:760px;margin:0 auto;font-size:18px;line-height:1.75;color:#5f697f}.ds-price-jump{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:30px}.ds-price-jump a{padding:12px 18px;border-radius:999px;background:#fff;border:1px solid #dfe6f3;color:#26324e;font-weight:800;text-decoration:none;box-shadow:0 8px 20px rgba(31,49,99,.06);transition:.25s}.ds-price-jump a:hover{transform:translateY(-2px);border-color:#8877ef}
.ds-price-section{padding:105px 0;background:#fff}.ds-logo-price-section{background:linear-gradient(180deg,#fbfdff,#f4f7ff)}
.ds-price-section-head{text-align:center;max-width:880px;margin:0 auto 48px}.ds-price-section-head .ds-price-kicker:before{display:none}.ds-price-section-head h2,.ds-price-custom h2,.ds-price-faq h2{font-size:clamp(40px,4vw,62px);line-height:1.04;letter-spacing:-.045em;margin:14px 0 12px}.ds-price-section-head p{font-size:17px;line-height:1.7;color:#687287;margin:0}
.ds-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:stretch}
.ds-price-card{position:relative;display:flex;flex-direction:column;min-height:650px;border-radius:28px;background:#fff;border:1px solid #e3e8f3;box-shadow:0 18px 45px rgba(30,46,97,.08);overflow:hidden;transition:.32s ease}
.ds-price-card:hover{transform:translateY(-7px);box-shadow:0 28px 62px rgba(34,49,108,.14)}
.ds-price-card.is-featured{border-color:#8b79ef;box-shadow:0 22px 58px rgba(92,75,214,.16)}
.ds-price-ribbon{position:absolute;right:18px;top:18px;z-index:2;padding:8px 11px;border-radius:999px;background:linear-gradient(100deg,#176dff,#7d55ef);color:#fff;font-size:10px;font-weight:900;letter-spacing:.08em}
.ds-price-card-top{position:relative;display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:30px 28px 28px;background:linear-gradient(135deg,#eef8ff,#eeeaff);border-bottom:1px solid #e4e9f3}.is-featured .ds-price-card-top{background:linear-gradient(135deg,#e8f5ff,#e9e2ff)}
.ds-price-tag{font-size:10px;font-weight:900;letter-spacing:.12em;color:#6558e7}.ds-price-card h3{font-size:26px;line-height:1.08;margin:7px 0 9px}.ds-price-card-top p{font-size:13px;line-height:1.55;color:#6d778c;margin:0;max-width:220px}
.ds-price-value{text-align:right;white-space:nowrap}.ds-price-value small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#788296;margin-bottom:4px}.ds-price-value strong{display:block;font-size:46px;letter-spacing:-.05em;color:#11182f}
.ds-price-feature-box{padding:26px 28px 20px;flex:1}.ds-price-feature-box ul{list-style:none;padding:0;margin:0;display:grid;gap:13px}.ds-price-feature-box li{position:relative;padding-left:24px;color:#555f75;font-size:14px;line-height:1.5}.ds-price-feature-box li:before{content:"✓";position:absolute;left:0;top:0;color:#5c69df;font-weight:900}
.ds-price-btn{min-height:50px;margin:0 28px 28px;border-radius:14px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-weight:900;color:#fff;background:linear-gradient(100deg,#176dff,#7d55ef);box-shadow:0 12px 26px rgba(68,83,214,.20);transition:.25s}.ds-price-btn:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(68,83,214,.27)}
.ds-price-custom{padding:76px 0;background:linear-gradient(110deg,#176dff,#594fe4 50%,#8758ef);color:#fff}.ds-price-custom-inner{display:flex;align-items:center;justify-content:space-between;gap:42px}.ds-price-custom .ds-price-kicker{color:#dcecff}.ds-price-custom .ds-price-kicker:before{background:#a6e7ff}.ds-price-custom p{max-width:700px;font-size:16px;line-height:1.7;color:#e1e5f7}.ds-price-btn-light{margin:0;background:#fff;color:#17234a;min-width:230px;white-space:nowrap}
.ds-price-faq{padding:105px 0;background:#fff}.ds-price-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:1000px;margin:0 auto}.ds-price-faq details{border:1px solid #e2e7f2;border-radius:18px;background:#fbfdff;padding:19px 21px}.ds-price-faq summary{cursor:pointer;font-weight:800;color:#202b47}.ds-price-faq details p{margin:13px 0 0;color:#687287;line-height:1.65;font-size:14px}
@keyframes dsPriceFloat{0%,100%{translate:0 0}50%{translate:0 -10px}}
@media(max-width:1000px){.ds-price-grid{grid-template-columns:1fr}.ds-price-card{min-height:auto}.ds-price-card-top{align-items:center}.ds-price-custom-inner{display:block}.ds-price-btn-light{margin-top:24px;width:max-content}}
@media(max-width:700px){.ds-price-wrap{width:min(100% - 28px,1280px)}.ds-price-hero{padding:118px 0 68px}.ds-price-hero h1{font-size:44px}.ds-price-hero p,.ds-price-section-head p{font-size:15.5px}.ds-price-section,.ds-price-faq{padding:74px 0}.ds-price-card-top{display:block}.ds-price-value{text-align:left;margin-top:20px}.ds-price-value strong{font-size:42px}.ds-price-card-top,.ds-price-feature-box{padding-left:22px;padding-right:22px}.ds-price-btn{margin-left:22px;margin-right:22px}.ds-price-faq-grid{grid-template-columns:1fr}.ds-price-custom{padding:62px 0}}


/* =========================================================
   V14.4 — HOMEPAGE SELECTED WORK
   ========================================================= */
#work.ds-home-selected-v144{
  padding-top:72px!important;
  padding-bottom:72px!important;
  background:#fff!important;
}
.ds-home-work-head{
  display:grid!important;
  grid-template-columns:.8fr 1.2fr!important;
  gap:60px!important;
  align-items:end!important;
  margin-bottom:34px!important;
}
.ds-home-work-kicker{
  display:block;
  font-size:11px;
  font-weight:900;
  letter-spacing:.14em;
  color:#6257e8;
  margin-bottom:8px;
}
.ds-home-work-head h2{
  font-size:clamp(58px,6vw,94px)!important;
  line-height:.88!important;
  letter-spacing:-.06em!important;
  margin:0!important;
  color:#0d1224!important;
}
.ds-home-work-head p{
  max-width:560px!important;
  margin:0 0 8px auto!important;
  padding-left:18px!important;
  border-left:3px solid transparent!important;
  border-image:linear-gradient(#32b9ff,#7c55ef) 1!important;
  color:#647087!important;
  line-height:1.7!important;
}
.ds-home-work-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:22px!important;
}
.ds-home-work-card{
  display:block!important;
  text-decoration:none!important;
  color:inherit!important;
  overflow:hidden!important;
  border:1px solid #e2e8f4!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 16px 42px rgba(28,43,93,.08)!important;
  transition:transform .35s ease,box-shadow .35s ease!important;
}
.ds-home-work-card:hover{
  transform:translateY(-7px)!important;
  box-shadow:0 26px 58px rgba(28,43,93,.14)!important;
}
.ds-home-work-image{
  position:relative!important;
  height:330px!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#edf7ff,#f2edff)!important;
}
.ds-home-work-image img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center!important;
  transition:transform .55s cubic-bezier(.2,.75,.25,1),filter .4s ease!important;
}
.ds-home-work-card:hover .ds-home-work-image img{
  transform:scale(1.045)!important;
  filter:saturate(1.05) contrast(1.02)!important;
}
.ds-home-work-overlay{
  position:absolute!important;
  left:18px!important;
  bottom:18px!important;
  z-index:3!important;
  padding:10px 13px!important;
  border-radius:999px!important;
  background:rgba(11,18,42,.88)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:800!important;
  opacity:0!important;
  transform:translateY(8px)!important;
  transition:.3s ease!important;
  backdrop-filter:blur(8px)!important;
}
.ds-home-work-card:hover .ds-home-work-overlay{
  opacity:1!important;
  transform:translateY(0)!important;
}
.ds-home-work-card .work-body-v89{
  padding:24px 24px 26px!important;
}
.ds-home-work-card .work-meta-v89{
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  margin-bottom:10px!important;
}
.ds-home-work-card .work-meta-v89 span{
  display:inline-flex!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  border:1px solid #dce5f4!important;
  background:#f8fbff!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
  color:#53617b!important;
}
.ds-home-work-card h3{
  font-size:26px!important;
  line-height:1.1!important;
  margin:0 0 8px!important;
  color:#111a33!important;
}
.ds-home-work-card p{
  min-height:48px!important;
  margin:0 0 18px!important;
  color:#69758c!important;
  line-height:1.65!important;
}
.ds-home-work-card .work-cta-v89{
  color:#176dff!important;
  font-weight:800!important;
  font-size:13px!important;
}

@media(max-width:800px){
  #work.ds-home-selected-v144{
    padding-top:54px!important;
    padding-bottom:54px!important;
  }
  .ds-home-work-head{
    grid-template-columns:1fr!important;
    gap:18px!important;
    margin-bottom:26px!important;
  }
  .ds-home-work-head h2{
    font-size:58px!important;
  }
  .ds-home-work-head p{
    margin:0!important;
    max-width:none!important;
  }
  .ds-home-work-grid{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
  .ds-home-work-image{
    height:260px!important;
  }
}
@media(max-width:430px){
  .ds-home-work-head h2{
    font-size:50px!important;
  }
  .ds-home-work-image{
    height:220px!important;
  }
  .ds-home-work-card .work-body-v89{
    padding:20px!important;
  }
}


/* =========================================================
   V14.5 — BLOG / INSIGHTS PAGE
   ========================================================= */
.ds-blog-v145{background:#fff;color:#101426;overflow:hidden}
.ds-blog-v145 .container{width:min(1280px,calc(100% - 44px));margin-inline:auto}
.ds-blog-hero{position:relative;padding:112px 0 92px;background:linear-gradient(145deg,#fff 5%,#f7fbff 50%,#f7f2ff 100%);overflow:hidden}
.ds-blog-gridfx{position:absolute;inset:0;opacity:.32;background-image:linear-gradient(rgba(68,107,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(68,107,255,.08) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 70%,transparent)}
.ds-blog-orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.45;animation:dsBlogFloat 7s ease-in-out infinite}
.ds-blog-orb-a{width:320px;height:320px;right:-90px;top:40px;background:radial-gradient(circle,#8a63ff33,transparent 68%)}
.ds-blog-orb-b{width:280px;height:280px;left:-80px;bottom:-80px;background:radial-gradient(circle,#31c6ff35,transparent 68%);animation-delay:-3s}
.ds-blog-hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:70px}
.ds-blog-kicker{display:block;font-size:11px;font-weight:900;letter-spacing:.15em;color:#6558e9;margin-bottom:16px}
.ds-blog-hero h1{font-size:clamp(58px,6.6vw,98px);line-height:.91;letter-spacing:-.065em;margin:0;color:#0e1223}
.ds-blog-hero h1 span{background:linear-gradient(90deg,#0a9fff,#7656f3);-webkit-background-clip:text;background-clip:text;color:transparent}
.ds-blog-hero-copy>p{font-size:17px;line-height:1.75;color:#69748b;max-width:690px;margin:25px 0}
.ds-blog-topic-row{display:flex;gap:9px;flex-wrap:wrap}
.ds-blog-topic-row span{padding:8px 12px;border:1px solid #dfe6f4;border-radius:999px;background:#fff;color:#53617a;font-size:11px;font-weight:800}
.ds-blog-hero-art{height:430px;position:relative;display:grid;place-items:center}
.ds-blog-core{position:relative;z-index:4;width:176px;height:176px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#ffffff,#c9edff 24%,#7762ff 58%,#19214c 100%);box-shadow:0 0 0 18px #ffffff80,0 30px 90px #635bff4d;animation:dsBlogPulse 4s ease-in-out infinite}
.ds-blog-core span{font-size:13px;letter-spacing:.16em;font-weight:900;color:#fff;text-shadow:0 2px 8px #19214c}
.ds-blog-ring{position:absolute;border:1px solid #7788ff66;border-radius:50%;animation:dsBlogSpin 13s linear infinite}
.ds-blog-ring:before,.ds-blog-ring:after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:#4bbcff;box-shadow:0 0 18px #4bbcff}
.ds-blog-ring:before{top:11%;left:18%}.ds-blog-ring:after{right:7%;bottom:27%;background:#805cff;box-shadow:0 0 18px #805cff}
.ring-one{width:285px;height:285px}.ring-two{width:380px;height:225px;transform:rotate(24deg);animation-duration:17s;animation-direction:reverse}
.ds-blog-hero-art .node{position:absolute;width:8px;height:8px;border-radius:50%;background:#31c6ff;box-shadow:0 0 18px #31c6ff;animation:dsBlogPulse 2.6s infinite}
.ds-blog-hero-art .n1{left:16%;top:22%}.ds-blog-hero-art .n2{right:12%;top:38%;animation-delay:-1s}.ds-blog-hero-art .n3{left:26%;bottom:17%;background:#7957f1;animation-delay:-1.7s}
.ds-blog-float-card{position:absolute;z-index:5;padding:14px 16px;border:1px solid #dfe7f5;border-radius:14px;background:#ffffffd9;backdrop-filter:blur(12px);box-shadow:0 14px 35px #263b7217;font-size:10px;font-weight:900;letter-spacing:.1em;color:#26324c;animation:dsBlogFloat 5s ease-in-out infinite}
.ds-blog-float-card b{color:#6856f0;margin-left:10px}.card-a{left:6%;top:25%}.card-b{right:4%;bottom:22%;animation-delay:-2.5s}
.ds-blog-featured{padding:78px 0 58px}
.ds-blog-section-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.ds-blog-section-label span{font-size:11px;font-weight:900;letter-spacing:.14em;color:#6558e9}.ds-blog-section-label em{font-style:normal;color:#8b94a7;font-size:12px}
.ds-feature-card{display:grid;grid-template-columns:1.12fr .88fr;min-height:430px;border:1px solid #dfe6f2;border-radius:26px;overflow:hidden;background:#fff;text-decoration:none;color:inherit;box-shadow:0 22px 60px rgba(29,47,94,.08);transition:.35s ease}
.ds-feature-card:hover{transform:translateY(-5px);box-shadow:0 30px 70px rgba(29,47,94,.13)}
.ds-feature-media{min-height:430px;overflow:hidden;background:#eef4ff}.ds-feature-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease}.ds-feature-card:hover img{transform:scale(1.035)}
.ds-feature-copy{padding:48px;display:flex;flex-direction:column;justify-content:center}.ds-blog-meta{display:flex;gap:12px;align-items:center;margin-bottom:16px}.ds-blog-meta span{padding:6px 9px;border-radius:999px;background:#f0edff;color:#6558e9;font-size:10px;font-weight:900;text-transform:uppercase}.ds-blog-meta time{font-size:11px;color:#8993a8}
.ds-feature-copy h2{font-size:clamp(34px,3.4vw,52px);line-height:1.02;letter-spacing:-.045em;margin:0 0 17px;color:#101426}.ds-feature-copy p{font-size:15px;line-height:1.75;color:#6c768a;margin:0 0 25px}.ds-feature-copy strong,.ds-blog-card-body strong{color:#146fff;font-size:13px}.ds-feature-copy strong i,.ds-blog-card-body strong i{font-style:normal;margin-left:4px}
.ds-blog-placeholder{height:100%;min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 40%,#c8eaff,#e9e6ff 38%,#f7faff 70%);color:#0d6fff}.ds-blog-placeholder span{font-size:12px;font-weight:900;letter-spacing:.18em}.ds-blog-placeholder b{font-size:54px;letter-spacing:-.05em;color:#111b38;opacity:.12}.ds-blog-placeholder.small{min-height:240px}
.ds-blog-feed{padding:65px 0 92px}.ds-blog-feed-head{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:30px}.ds-blog-feed-head h2{font-size:clamp(44px,5vw,72px);line-height:.95;letter-spacing:-.055em;margin:0;color:#101426}.ds-blog-feed-head p{max-width:520px;margin:0 0 6px auto;color:#6c768a;line-height:1.7}
.ds-blog-filters{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 28px}.ds-blog-filters button{appearance:none;border:1px solid #dce5f3;background:#f9fbff;color:#53617a;border-radius:999px;padding:10px 15px;font-size:11px;font-weight:800;cursor:pointer;transition:.25s}.ds-blog-filters button:hover,.ds-blog-filters button.is-active{background:#111c43;color:#fff;border-color:#111c43;transform:translateY(-1px)}
.ds-blog-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ds-blog-card{border:1px solid #e0e7f2;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 14px 35px rgba(31,48,91,.06);transition:.3s}.ds-blog-card:hover{transform:translateY(-5px);box-shadow:0 22px 45px rgba(31,48,91,.11)}.ds-blog-card-link{text-decoration:none;color:inherit;display:block;height:100%}.ds-blog-card-media{height:225px;overflow:hidden;background:#eef4ff}.ds-blog-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s}.ds-blog-card:hover img{transform:scale(1.04)}.ds-blog-card-body{padding:22px}.ds-blog-card-body h3{font-size:23px;line-height:1.13;letter-spacing:-.025em;color:#12182b;margin:0 0 10px}.ds-blog-card-body p{color:#707a8e;line-height:1.65;font-size:13px;margin:0 0 18px}
.ds-blog-pagination{display:flex;justify-content:center;gap:8px;margin-top:36px}.ds-blog-pagination .page-numbers{padding:9px 13px;border:1px solid #dfe6f2;border-radius:10px;text-decoration:none;color:#526078;font-weight:700;font-size:12px}.ds-blog-pagination .current{background:#111c43;color:#fff;border-color:#111c43}
.ds-blog-empty{text-align:center;padding:70px 20px;border:1px dashed #d6dfed;border-radius:22px;background:#fbfdff}.ds-blog-empty span{font-size:10px;font-weight:900;letter-spacing:.14em;color:#6558e9}.ds-blog-empty h3{font-size:34px;margin:10px 0;color:#11182b}.ds-blog-empty p{max-width:650px;margin:auto;color:#727d91}
.ds-blog-cta{padding:0 0 88px}.ds-blog-cta-box{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:40px;padding:50px 54px;border-radius:28px;background:linear-gradient(120deg,#111a3d,#182858 50%,#5136b7);box-shadow:0 25px 60px #27336b30}.ds-blog-cta-grid{position:absolute;inset:0;opacity:.12;background-image:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);background-size:38px 38px}.ds-blog-cta-box>div:not(.ds-blog-cta-grid),.ds-blog-cta-box>a{position:relative;z-index:2}.ds-blog-cta-box .ds-blog-kicker{color:#9fdcff}.ds-blog-cta-box h2{color:#fff;font-size:clamp(38px,4vw,58px);line-height:1;margin:0 0 12px;letter-spacing:-.045em}.ds-blog-cta-box p{color:#dce5ff;max-width:700px;margin:0;line-height:1.65}.ds-blog-cta-box>a{flex:none;padding:15px 19px;border-radius:999px;background:#fff;color:#17214a;text-decoration:none;font-size:12px;font-weight:900;box-shadow:0 10px 30px #050a1e40}.ds-blog-cta-box>a span{margin-left:7px;color:#6558e9}
@keyframes dsBlogSpin{to{transform:rotate(360deg)}}@keyframes dsBlogFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes dsBlogPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}
@media(max-width:900px){.ds-blog-hero{padding:78px 0 65px}.ds-blog-hero-inner{grid-template-columns:1fr;gap:25px}.ds-blog-hero-art{height:330px}.ds-blog-featured{padding-top:55px}.ds-feature-card{grid-template-columns:1fr}.ds-feature-media{min-height:330px;height:330px}.ds-feature-copy{padding:32px}.ds-blog-feed-head{grid-template-columns:1fr;gap:14px}.ds-blog-feed-head p{margin:0}.ds-blog-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-blog-cta-box{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.ds-blog-v145 .container{width:min(100% - 28px,1280px)}.ds-blog-hero{padding:54px 0 48px}.ds-blog-hero h1{font-size:52px}.ds-blog-hero-copy>p{font-size:14px;margin:18px 0}.ds-blog-hero-art{height:260px}.ds-blog-core{width:120px;height:120px}.ring-one{width:205px;height:205px}.ring-two{width:255px;height:160px}.ds-blog-float-card{padding:10px 11px;font-size:8px}.ds-blog-featured{padding:42px 0 34px}.ds-blog-section-label em{display:none}.ds-feature-media{height:240px;min-height:240px}.ds-feature-copy{padding:24px 20px}.ds-feature-copy h2{font-size:34px}.ds-blog-feed{padding:45px 0 58px}.ds-blog-feed-head h2{font-size:46px}.ds-blog-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;scrollbar-width:none}.ds-blog-filters::-webkit-scrollbar{display:none}.ds-blog-filters button{flex:none}.ds-blog-cards{grid-template-columns:1fr;gap:15px}.ds-blog-card-media{height:215px}.ds-blog-card-body{padding:19px}.ds-blog-card-body h3{font-size:22px}.ds-blog-cta{padding-bottom:58px}.ds-blog-cta-box{padding:34px 24px;border-radius:22px}.ds-blog-cta-box h2{font-size:40px}.ds-blog-cta-box>a{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.ds-blog-v145 *{animation:none!important;transition:none!important}}


/* ===== DigitalScope360 Website Assistant v14.11 ===== */
.ds360-chatbot{position:fixed;right:22px;bottom:22px;z-index:99999;font-family:inherit}.ds360-chat-launcher{width:62px;height:62px;border:0;border-radius:22px;display:grid;place-items:center;cursor:pointer;color:#fff;background:linear-gradient(135deg,#246bfe 0%,#7048ff 55%,#9a4dff 100%);box-shadow:0 14px 38px rgba(63,69,214,.32),inset 0 1px 0 rgba(255,255,255,.3);position:relative;transition:.28s ease}.ds360-chat-launcher:hover{transform:translateY(-3px) scale(1.03)}.ds360-chat-launcher svg{width:28px;height:28px;position:absolute;transition:.25s}.ds360-chat-icon-close{opacity:0;transform:rotate(-90deg) scale(.7)}.ds360-chatbot.open .ds360-chat-icon-open{opacity:0;transform:rotate(90deg) scale(.7)}.ds360-chatbot.open .ds360-chat-icon-close{opacity:1;transform:none}.ds360-chat-pulse{position:absolute;inset:-5px;border:1px solid rgba(74,105,255,.34);border-radius:25px;animation:ds360Pulse 2.1s infinite;pointer-events:none}@keyframes ds360Pulse{0%{transform:scale(.88);opacity:.9}70%,100%{transform:scale(1.18);opacity:0}}
.ds360-chat-panel{position:absolute;right:0;bottom:76px;width:min(390px,calc(100vw - 28px));height:min(590px,calc(100vh - 120px));background:rgba(255,255,255,.98);border:1px solid rgba(76,92,180,.14);border-radius:25px;box-shadow:0 25px 70px rgba(20,31,78,.22);overflow:hidden;display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(16px) scale(.96);transform-origin:bottom right;transition:.25s ease}.ds360-chatbot.open .ds360-chat-panel{opacity:1;visibility:visible;transform:none}.ds360-chat-head{padding:17px 18px;display:flex;align-items:center;gap:11px;color:#fff;background:radial-gradient(circle at 80% -20%,rgba(90,224,255,.55),transparent 42%),linear-gradient(125deg,#102d77,#4056e8 58%,#7c46e9);position:relative}.ds360-chat-head:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:18px 18px;pointer-events:none}.ds360-chat-avatar,.ds360-mini-avatar{display:grid;place-items:center;border-radius:50%;font-weight:800;letter-spacing:-.5px}.ds360-chat-avatar{width:42px;height:42px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.32);font-size:12px;z-index:1}.ds360-chat-head>div:nth-child(2){display:flex;flex-direction:column;z-index:1}.ds360-chat-head strong{font-size:14px;line-height:1.25}.ds360-chat-head small{font-size:11px;opacity:.82;margin-top:4px}.ds360-chat-head small i{width:7px;height:7px;border-radius:50%;background:#69f5b1;display:inline-block;margin-right:4px;box-shadow:0 0 9px #69f5b1}.ds360-chat-head-close{margin-left:auto;border:0;background:rgba(255,255,255,.12);color:#fff;width:31px;height:31px;border-radius:10px;font-size:21px;line-height:1;cursor:pointer;z-index:1}.ds360-chat-messages{flex:1;overflow-y:auto;padding:18px 15px;background:linear-gradient(180deg,#f8faff,#fff 60%);scroll-behavior:smooth}.ds360-bot-row,.ds360-user-row{display:flex;align-items:flex-end;gap:8px;margin-bottom:12px}.ds360-user-row{justify-content:flex-end}.ds360-mini-avatar{width:28px;height:28px;flex:0 0 28px;font-size:8px;color:#fff;background:linear-gradient(135deg,#246bfe,#804bff)}.ds360-chat-bubble{max-width:82%;font-size:13px;line-height:1.55;padding:11px 13px}.ds360-chat-bubble.bot{color:#24304f;background:#fff;border:1px solid #e6eaf6;border-radius:6px 16px 16px 16px;box-shadow:0 5px 16px rgba(33,47,99,.06)}.ds360-chat-bubble.user{color:#fff;background:linear-gradient(135deg,#315cf0,#7549e9);border-radius:16px 6px 16px 16px}.ds360-chat-bubble a{color:#4257dc;font-weight:700;text-decoration:none;display:inline-block;margin-top:5px}.ds360-chat-quick{display:flex;gap:7px;flex-wrap:wrap;margin:3px 0 16px 36px}.ds360-chat-quick button{border:1px solid #dce3fb;background:#fff;color:#3d4e9a;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:700;cursor:pointer;transition:.2s}.ds360-chat-quick button:hover{background:#eef2ff;border-color:#aebcf7;transform:translateY(-1px)}.ds360-chat-form{display:flex;gap:8px;padding:11px 12px;border-top:1px solid #e9edf7;background:#fff}.ds360-chat-form input{min-width:0;flex:1;border:1px solid #dfe4f1;border-radius:14px;padding:11px 13px;outline:0;color:#1d2948;background:#f9faff;font:inherit;font-size:13px}.ds360-chat-form input:focus{border-color:#6a73e8;box-shadow:0 0 0 3px rgba(88,100,230,.1)}.ds360-chat-form button{width:43px;height:43px;border:0;border-radius:14px;background:linear-gradient(135deg,#2e67f6,#7948ea);color:#fff;display:grid;place-items:center;cursor:pointer}.ds360-chat-form svg{width:20px;height:20px}.ds360-chat-note{text-align:center;padding:0 10px 9px;background:#fff;color:#9299ad;font-size:9px;letter-spacing:.15px}.ds360-typing{display:flex;gap:4px;padding:14px}.ds360-typing b{width:5px;height:5px;border-radius:50%;background:#8791ad;animation:ds360Dot 1s infinite alternate}.ds360-typing b:nth-child(2){animation-delay:.15s}.ds360-typing b:nth-child(3){animation-delay:.3s}@keyframes ds360Dot{to{transform:translateY(-4px);opacity:.45}}
@media(max-width:600px){.ds360-chatbot{right:14px;bottom:14px}.ds360-chat-launcher{width:56px;height:56px;border-radius:19px}.ds360-chat-panel{position:fixed;right:10px;left:10px;bottom:80px;width:auto;height:min(570px,calc(100dvh - 100px));border-radius:22px}.ds360-chat-bubble{max-width:86%}}

/* =========================================================
 * V14.27 — 47 service pages: portfolio proof + case studies
 * ========================================================= */
.ds-service-proof,.ds-case-study{position:relative;padding:88px 0;background:#fff;overflow:hidden}
.ds-service-proof{background:linear-gradient(180deg,#f8fbff 0%,#fff 100%)}
.ds-proof-head,.ds-case-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:44px;align-items:end;margin-bottom:34px}
.ds-proof-head h2,.ds-case-intro h2{margin:8px 0 0;color:#0b1739;font-size:clamp(32px,4vw,56px);line-height:1.02;letter-spacing:-.045em}
.ds-proof-head>p,.ds-case-intro>p{margin:0;color:#59647c;font-size:16px;line-height:1.75}
.ds-proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ds-proof-card{border:1px solid rgba(57,91,190,.14);border-radius:24px;overflow:hidden;background:rgba(255,255,255,.94);box-shadow:0 18px 55px rgba(32,58,128,.09);transition:.35s ease}
.ds-proof-card:hover{transform:translateY(-7px);box-shadow:0 28px 70px rgba(41,67,155,.16)}
.ds-proof-media{aspect-ratio:4/3;overflow:hidden;background:#eef4ff}
.ds-proof-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.visual-brand .ds-proof-media img{object-fit:contain}.ds-proof-card:hover img{transform:scale(1.035)}
.ds-proof-copy{padding:22px}.ds-proof-copy small,.ds-case-caption span{font-size:10px;font-weight:800;letter-spacing:.16em;color:#5d5fe9}.ds-proof-copy h3{margin:8px 0;color:#101d42;font-size:22px}.ds-proof-copy p{margin:0;color:#667087;line-height:1.65;font-size:14px}
.ds-case-study{background:radial-gradient(circle at 82% 12%,rgba(88,82,236,.12),transparent 28%),linear-gradient(180deg,#fff,#f6f9ff)}
.ds-case-visuals{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ds-case-panel{border:1px solid rgba(47,71,148,.16);border-radius:26px;overflow:hidden;background:#fff;box-shadow:0 22px 65px rgba(32,52,115,.10)}
.ds-browser-bar{height:46px;display:flex;align-items:center;gap:7px;padding:0 15px;background:#e9edf5;color:#6b7280;font-size:11px;font-weight:700}.ds-browser-bar i{width:8px;height:8px;border-radius:50%;background:#b9c1cf}.ds-browser-bar span{margin-left:8px}
.is-after .ds-browser-bar{background:linear-gradient(90deg,#17285d,#29256d);color:#eaf6ff}.is-after .ds-browser-bar i{background:#62dcff}
.ds-concept-canvas{height:310px;position:relative;padding:26px;background:#f1f3f6;overflow:hidden}.is-after .ds-concept-canvas{background:linear-gradient(145deg,#f9fcff,#eaf2ff)}
.concept-nav{width:64%;height:13px;background:#c7cbd2;border-radius:2px;margin-bottom:22px}.concept-nav.good{width:48%;height:9px;border-radius:9px;background:linear-gradient(90deg,#315fe9,#6a4bea)}
.concept-hero{height:96px;background:#c3c7cd;border:2px dashed #a9adb5;margin-bottom:18px}.concept-hero.bad{transform:skew(-1deg)}.concept-hero.good{position:relative;border:0;border-radius:16px;background:linear-gradient(135deg,#132c69,#3b38a4);box-shadow:0 15px 35px rgba(39,59,153,.18)}.concept-hero.good:before{content:"";position:absolute;left:20px;top:24px;width:43%;height:12px;border-radius:10px;background:#fff}.concept-hero.good:after{content:"";position:absolute;left:20px;top:48px;width:28%;height:8px;border-radius:8px;background:#9eeaff}
.concept-row{display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:9px}.concept-row b{height:55px;background:#d1d4d9;border:1px solid #bfc3c9}.concept-row.good{grid-template-columns:repeat(3,1fr);gap:12px}.concept-row.good b{border:1px solid #d9e4ff;border-radius:12px;background:#fff;box-shadow:0 7px 20px rgba(44,68,140,.08)}
.concept-lines{margin-top:15px;display:grid;gap:7px}.concept-lines i{height:6px;background:#c9cdd3;width:86%}.concept-lines i:nth-child(2){width:58%}.concept-lines i:nth-child(3){width:74%}.concept-lines.good i{height:5px;border-radius:5px;background:#b8c8ec}.concept-noise{position:absolute;background:#aeb4bd;opacity:.6}.concept-noise.n-a{width:50px;height:50px;right:12px;top:24px}.concept-noise.n-b{width:75px;height:24px;right:18px;bottom:25px}.concept-signal{position:absolute;width:110px;height:110px;border:1px solid rgba(48,100,239,.25);border-radius:50%;right:-28px;top:-28px;box-shadow:0 0 0 22px rgba(70,117,241,.05),0 0 0 44px rgba(93,74,232,.035)}
.ds-case-caption{padding:24px 25px 28px}.ds-case-caption h3{margin:8px 0 10px;color:#0f1c42;font-size:24px}.ds-case-caption p{margin:0;color:#626d84;line-height:1.7;font-size:14px}.ds-case-method{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}.ds-case-method>div{display:flex;gap:14px;padding:18px;border:1px solid rgba(57,91,190,.12);border-radius:18px;background:rgba(255,255,255,.78)}.ds-case-method b{font-size:12px;color:#5559e7}.ds-case-method span{display:grid;gap:5px}.ds-case-method strong{color:#15234a}.ds-case-method small{color:#69748b;line-height:1.5}
@media(max-width:820px){.ds-service-proof,.ds-case-study{padding:58px 0}.ds-proof-head,.ds-case-intro{grid-template-columns:1fr;gap:16px}.ds-proof-grid{grid-template-columns:1fr}.ds-case-visuals{grid-template-columns:1fr}.ds-case-method{grid-template-columns:1fr}.ds-concept-canvas{height:250px}.ds-proof-media{aspect-ratio:16/10}}

/* =========================================================
   V14.33 — HERO PERFORMANCE OPTIMIZATION
   Visual design is preserved. This layer only reduces render
   work on mobile / low-power devices and pauses the hero when
   it is outside the viewport or the tab is hidden.
   ========================================================= */

/* Isolate the complex hero so its animation repaints do not spill into the page. */
.hero-v55{
  contain:paint style;
}
.hero-v55 > .hero-service-bg,
.hero-v55 .hero-v55-visual{
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

/* Pause every decorative hero animation when the hero cannot be seen. */
.hero-v55.hero-perf-paused *,
.hero-v55.hero-perf-paused *::before,
.hero-v55.hero-perf-paused *::after,
.hero-v55.hero-perf-paused > .hero-service-bg,
.hero-v55.hero-perf-paused > .hero-service-bg::before,
.hero-v55.hero-perf-paused > .hero-service-bg::after{
  animation-play-state:paused !important;
}

/*
 * Low-power mode keeps the same artwork, layout, colors and primary motion.
 * Only secondary ambient motion is frozen to cut simultaneous compositing work.
 */
.hero-v55.hero-perf-lite > .hero-service-bg,
.hero-v55.hero-perf-lite > .hero-service-bg::before,
.hero-v55.hero-perf-lite > .hero-service-bg::after,
.hero-v55.hero-perf-lite .service-orbit,
.hero-v55.hero-perf-lite .service-flow::after,
.hero-v55.hero-perf-lite .service-glyph,
.hero-v55.hero-perf-lite .service-particle,
.hero-v55.hero-perf-lite .dev-ribbon-layer,
.hero-v55.hero-perf-lite .dev-code-chip,
.hero-v55.hero-perf-lite .future-dot,
.hero-v55.hero-perf-lite .core-scan,
.hero-v55.hero-perf-lite .core-halo{
  animation:none !important;
}

/* Keep the main visual alive: globe, main orbits, cards and platform still animate. */
.hero-v55.hero-perf-lite .future-globe,
.hero-v55.hero-perf-lite .future-orbit,
.hero-v55.hero-perf-lite .future-card,
.hero-v55.hero-perf-lite .platform-light{
  animation-play-state:running;
}

/* Backdrop blur is expensive on integrated/mobile GPUs; the opaque fallback is visually equivalent. */
.hero-v55.hero-perf-lite .future-card{
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  background:rgba(255,255,255,.97) !important;
}
.hero-v55.hero-perf-lite .service-glyph{
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

/* Mobile always uses the lighter render path while preserving the same composition. */
@media(max-width:980px), (hover:none) and (pointer:coarse){
  .hero-v55 > .hero-service-bg,
  .hero-v55 > .hero-service-bg::before,
  .hero-v55 > .hero-service-bg::after,
  .hero-v55 .service-orbit,
  .hero-v55 .service-flow::after,
  .hero-v55 .service-glyph,
  .hero-v55 .service-particle,
  .hero-v55 .dev-ribbon-layer,
  .hero-v55 .dev-code-chip,
  .hero-v55 .future-dot,
  .hero-v55 .core-scan,
  .hero-v55 .core-halo{
    animation:none !important;
  }
  .hero-v55 .future-card{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    background:rgba(255,255,255,.97) !important;
  }
  .hero-v55 .service-glyph{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
}

/* Respect users/devices that explicitly request reduced motion. */
@media(prefers-reduced-motion:reduce){
  .hero-v55 *,
  .hero-v55 *::before,
  .hero-v55 *::after,
  .hero-v55 > .hero-service-bg,
  .hero-v55 > .hero-service-bg::before,
  .hero-v55 > .hero-service-bg::after{
    animation:none !important;
  }
}


/* =========================================================
   V14.34 — MOBILE HERO HARD-FREEZE
   Mobile only: preserve the exact composition, but stop every
   continuous hero animation except the four service cards.
   Desktop/tablet > 980px remains unchanged.
   ========================================================= */
@media(max-width:980px), (hover:none) and (pointer:coarse){
  /* Freeze background / atmospheric motion. */
  .hero-v55 > .hero-service-bg,
  .hero-v55 > .hero-service-bg::before,
  .hero-v55 > .hero-service-bg::after,
  .hero-v55::after,
  .hero-v55 .service-orbit,
  .hero-v55 .service-flow,
  .hero-v55 .service-flow::after,
  .hero-v55 .service-glyph,
  .hero-v55 .service-particle,
  .hero-v55 .dev-ribbon-layer,
  .hero-v55 .dev-code-chip,
  .hero-v55 .future-globe,
  .hero-v55 .globe-lines-a,
  .hero-v55 .globe-lines-b,
  .hero-v55 .future-orbit,
  .hero-v55 .future-orbit i,
  .hero-v55 .platform-ring,
  .hero-v55 .platform-light,
  .hero-v55 .future-dot,
  .hero-v55 .core-scan,
  .hero-v55 .core-halo{
    animation:none !important;
    animation-play-state:paused !important;
  }

  /* Remove the costly blur compositor path while keeping the same visible cards. */
  .hero-v55 .future-card,
  .hero-v55 .service-glyph{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  .hero-v55 .future-card{
    background:rgba(255,255,255,.97) !important;
  }

  /* Hero copy stays visually identical, but no continuous breathing / shimmer / sweep. */
  .hero-v55-trust,
  .hero-v55 h1,
  .hero-v55 h1 span,
  .hero-v55 h1 span::after,
  .hero-v55-lead,
  .hero-v55-actions,
  .hero-v55-primary,
  .hero-v55-primary::before,
  .hero-v55-visual,
  .hero-v55-features,
  .hero-v55-features .v55-feature{
    animation:none !important;
  }

  .hero-v55-trust,
  .hero-v55 h1,
  .hero-v55 h1 span,
  .hero-v55-lead,
  .hero-v55-actions,
  .hero-v55-visual,
  .hero-v55-features,
  .hero-v55-features .v55-feature{
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
  }

  .hero-v55 h1::before{
    display:none !important;
    animation:none !important;
  }
  .hero-v55 h1 span::after{
    width:108px !important;
    opacity:1 !important;
  }
  .hero-v55-primary::before{
    display:none !important;
  }

  /* The ONLY continuous motion left on mobile: the four service cards. */
  .hero-v55-visual .future-card{
    will-change:transform;
    animation:ds360MobileHeroCardDrift 6.4s ease-in-out infinite !important;
  }
  .hero-v55-visual .fc-web{animation-delay:0s !important}
  .hero-v55-visual .fc-marketing{animation-delay:-1.6s !important}
  .hero-v55-visual .fc-brand{animation-delay:-3.2s !important}
  .hero-v55-visual .fc-growth{animation-delay:-4.8s !important}
}

@keyframes ds360MobileHeroCardDrift{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(0,-7px,0)}
}

/* Very small phones: keep the same four-card motion, just make it even lighter. */
@media(max-width:520px){
  .hero-v55-visual .future-card{
    animation-duration:7.2s !important;
  }
}

/* V14.42 FINAL CASCADE LOCK — keep this block last. */
@media(min-width:951px){
  .site-header,
  .site-header .container.header-inner,
  .site-header nav.nav,
  .site-header .ds-services-menu{overflow:visible!important}
  .site-header .ds-services-menu{position:static!important}

  .site-header .ds-services-mega{
    position:fixed!important;
    top:86px!important;
    left:50vw!important;
    right:auto!important;
    bottom:auto!important;
    width:min(1180px,calc(100vw - 44px))!important;
    max-height:calc(100vh - 108px)!important;
    margin:0!important;
    padding:0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    border:1px solid rgba(50,118,235,.17)!important;
    border-radius:26px!important;
    background:radial-gradient(circle at 5% 0%,rgba(36,199,255,.12),transparent 25%),radial-gradient(circle at 96% 2%,rgba(131,84,255,.12),transparent 27%),rgba(255,255,255,.985)!important;
    box-shadow:0 34px 95px rgba(22,54,117,.23)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate(-50%,14px) scale(.985)!important;
    transform-origin:top center!important;
    transition:opacity .22s ease,transform .22s ease,visibility .22s!important;
    z-index:2147483000!important;
  }
  .site-header .ds-services-mega:before{
    content:""!important;
    position:fixed!important;
    top:66px!important;
    left:0!important;
    right:0!important;
    height:24px!important;
    display:block!important;
  }
  .site-header .ds-services-mega:after{display:none!important}
.site-header .ds-services-menu.is-open>.ds-services-mega{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate(-50%,0) scale(1)!important;
  }

  .site-header .ds-mega-heading{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:28px!important;
    padding:21px 24px 17px!important;
    border-bottom:1px solid rgba(55,120,225,.12)!important;
    background:linear-gradient(105deg,rgba(240,251,255,.82),rgba(248,246,255,.82))!important;
  }
  .site-header .ds-mega-heading>div{display:flex!important;flex-direction:column!important;gap:3px!important}
  .site-header .ds-mega-heading span{color:#3279f4!important;font-size:9px!important;font-weight:850!important;letter-spacing:.17em!important;text-transform:uppercase!important}
  .site-header .ds-mega-heading strong{color:#0b2048!important;font-size:22px!important;font-weight:850!important;letter-spacing:-.025em!important}
  .site-header .ds-mega-heading p{max-width:390px!important;margin:0!important;color:#71809a!important;font-size:12px!important;line-height:1.55!important;text-align:right!important}

  .site-header .ds-services-mega-inner{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:12px!important;
    padding:16px!important;
  }
  .site-header .ds-service-group{
    position:relative!important;
    min-width:0!important;
    padding:13px!important;
    border:1px solid rgba(58,120,224,.12)!important;
    border-radius:17px!important;
    background:linear-gradient(145deg,#fff,rgba(246,250,255,.92))!important;
    box-shadow:none!important;
    transform:none!important;
  }
  .site-header .ds-service-group:hover,
  .site-header .ds-service-group:focus-within{border-color:rgba(47,121,245,.26)!important;box-shadow:0 13px 30px rgba(35,74,145,.09)!important;transform:translateY(-2px)!important}
  .site-header .ds-service-group-trigger{
    width:100%!important;
    min-height:31px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    padding:0 3px 9px!important;
    border:0!important;
    border-bottom:1px solid rgba(61,122,223,.10)!important;
    border-radius:0!important;
    background:transparent!important;
    color:#10264f!important;
    cursor:default!important;
    font-size:13px!important;
    font-weight:850!important;
    text-align:left!important;
  }
  .site-header .ds-service-group-trigger:before{content:""!important;width:8px!important;height:8px!important;flex:0 0 8px!important;border-radius:50%!important;background:linear-gradient(135deg,#23c9ff,#347cff 55%,#8557ff)!important;box-shadow:0 0 0 4px rgba(52,126,255,.09)!important}
  .site-header .ds-service-group-trigger i{display:none!important}

  .site-header .ds-service-submenu,
  .site-header .ds-service-group:hover>.ds-service-submenu,
  .site-header .ds-service-group:focus-within>.ds-service-submenu,
  .site-header .ds-service-group.is-open>.ds-service-submenu{
    position:static!important;
    inset:auto!important;
    width:auto!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:3px 6px!important;
    margin:8px 0 0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
  }
  .site-header .ds-service-submenu:before{display:none!important}
  .site-header .ds-service-submenu a{
    min-width:0!important;
    min-height:30px!important;
    display:flex!important;
    align-items:center!important;
    padding:6px 8px!important;
    border-radius:9px!important;
    background:transparent!important;
    color:#5c6b84!important;
    font-size:11px!important;
    font-weight:600!important;
    line-height:1.25!important;
    white-space:normal!important;
  }
  .site-header .ds-service-submenu a:hover,
  .site-header .ds-service-submenu a:focus{color:#176ef2!important;background:linear-gradient(135deg,rgba(35,198,255,.10),rgba(125,82,255,.09))!important;transform:translateX(2px)!important}

  .site-header .ds-mega-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;padding:13px 22px!important;border-top:1px solid rgba(55,120,225,.12)!important;background:linear-gradient(105deg,rgba(247,251,255,.94),rgba(249,247,255,.94))!important}
  .site-header .ds-mega-footer span{color:#6c7b94!important;font-size:11px!important;font-weight:650!important}
  .site-header .ds-mega-footer a{padding:9px 13px!important;border-radius:10px!important;background:linear-gradient(100deg,#217fff,#7855f7)!important;color:#fff!important;font-size:11px!important;font-weight:800!important;text-decoration:none!important}
  .site-header .ds-header-phone{min-width:max-content!important;gap:8px!important;padding:0 17px!important;font-size:12px!important;letter-spacing:.01em!important}
  .site-header .ds-header-phone span{font-size:14px!important;line-height:1!important}
}

@media(max-width:950px){
  .site-header .ds-mega-heading,
  .site-header .ds-mega-footer{display:none!important}
}

/* =========================================================
   V14.43 — Reference-inspired interactive Our Work Process
   ========================================================= */
#process.ds-work-process{
  position:relative !important;
  overflow:hidden;
  padding:72px 0 78px !important;
  margin:0 !important;
  background:
    radial-gradient(900px 560px at 8% 44%,rgba(0,207,255,.09),transparent 62%),
    radial-gradient(760px 520px at 93% 44%,rgba(183,47,255,.10),transparent 64%),
    linear-gradient(118deg,#020914 0%,#050713 48%,#0c0610 100%) !important;
  color:#fff;
  isolation:isolate;
}
#process.ds-work-process::after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:52px 52px;
  mask-image:linear-gradient(to bottom,transparent,black 22%,black 78%,transparent);
}
.ds-work-process-bg{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.ds-process-chevron{position:absolute;top:150px;width:520px;height:520px;border-top:5px solid;border-right:5px solid;opacity:.16;filter:drop-shadow(0 0 18px currentColor);transform:rotate(45deg)}
.ds-process-chevron::before,.ds-process-chevron::after{content:"";position:absolute;border-top:4px solid;border-right:4px solid;width:310px;height:310px;top:102px;left:102px;opacity:.78}
.ds-process-chevron::after{width:165px;height:165px;top:174px;left:174px;opacity:.58}
.ds-process-chevron-left{left:-390px;color:#00e7ff}
.ds-process-chevron-right{right:-390px;color:#ff4bd6;transform:rotate(225deg)}
.ds-work-process-shell{position:relative;max-width:1080px !important}
.ds-work-process-intro{max-width:470px;margin:0 0 20px;position:relative;z-index:3}
.ds-process-eyebrow{display:flex;align-items:center;gap:9px;width:max-content;font-size:11px;line-height:1;font-weight:800;font-style:italic;letter-spacing:.08em;color:#d583ff;margin-bottom:18px}
.ds-process-eyebrow i{display:block;width:54px;height:2px;background:linear-gradient(90deg,#1e8fff,#d629ff);border-radius:4px}
.ds-work-process-intro h2{margin:0 0 18px !important;color:#fff !important;font-size:clamp(40px,5vw,66px) !important;line-height:.98 !important;letter-spacing:-.045em !important;font-weight:900 !important}
.ds-work-process-intro p{max-width:460px;margin:0;color:rgba(255,255,255,.78) !important;font-size:15px;line-height:1.55}
.ds-process-grid{display:grid;grid-template-columns:1.02fr .92fr 1.48fr;grid-template-rows:auto auto 250px;gap:18px;align-items:start;position:relative}
.ds-process-card{position:relative;background:#181b31;border:1px solid rgba(255,255,255,.055);border-radius:14px;padding:28px 14px 13px;color:#fff;box-shadow:0 16px 44px rgba(0,0,0,.24);overflow:hidden;min-height:255px;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.ds-process-card:hover{transform:translateY(-5px);border-color:rgba(111,121,255,.34);box-shadow:0 24px 54px rgba(0,0,0,.34)}
.ds-process-card h3{color:#fff !important;margin:0 0 10px !important;font-size:25px !important;line-height:1.15 !important;letter-spacing:-.025em;font-weight:800}
.ds-process-card p{color:rgba(255,255,255,.82) !important;margin:0 0 14px !important;font-size:12.5px;line-height:1.48;min-height:58px}
.ds-process-card img{display:block;width:100%;height:92px;object-fit:cover;border-radius:9px;filter:saturate(.94) contrast(1.02);transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.ds-process-card:hover img{transform:scale(1.04)}
.ds-process-badge{position:absolute;top:14px;left:14px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:8px;font-weight:900;color:#fff;background:linear-gradient(135deg,#2ce1ff,#6e52ff 53%,#f047dd);box-shadow:0 0 18px rgba(72,116,255,.45)}
.ds-process-card-01{grid-column:2;grid-row:1;margin-top:-164px}
.ds-process-card-02{grid-column:3;grid-row:1;margin-top:-164px}
.ds-process-card-03{grid-column:1;grid-row:2}
.ds-process-card-04{grid-column:2;grid-row:2}
.ds-process-visual{grid-column:1 / span 2;grid-row:3;position:relative;height:260px;display:flex;align-items:center;justify-content:center;perspective:1000px;pointer-events:none}
.ds-phone-stage{position:relative;width:430px;height:235px;transform:translate(-8px,-4px)}
.ds-phone{position:absolute;left:38px;bottom:10px;width:350px;height:154px;border-radius:35px;transform:rotateX(66deg) rotateZ(-7deg);background:linear-gradient(145deg,#103376,#1abcf1 36%,#802dff 72%,#ff56c9);border:4px solid rgba(149,222,255,.65);box-shadow:0 26px 40px rgba(0,0,0,.56),0 0 40px rgba(21,176,255,.25),inset 0 0 24px rgba(255,255,255,.25);overflow:hidden}
.ds-phone::before{content:"";position:absolute;inset:9px;border:1px solid rgba(255,255,255,.25);border-radius:27px;background:linear-gradient(120deg,rgba(255,255,255,.14),transparent 32%,rgba(255,63,231,.18) 70%,rgba(0,229,255,.18));box-shadow:inset 0 0 30px rgba(0,0,0,.28)}
.ds-phone-camera{position:absolute;top:10px;left:50%;width:65px;height:7px;border-radius:10px;background:rgba(3,5,20,.72);transform:translateX(-50%)}
.ds-phone-line{position:absolute;height:2px;border-radius:10px;background:linear-gradient(90deg,transparent,#58efff,#f764e6,transparent);opacity:.7;filter:blur(.2px)}
.ds-phone-line-a{left:34px;right:28px;top:55px;transform:rotate(-12deg)}
.ds-phone-line-b{left:62px;right:58px;top:84px;transform:rotate(7deg)}
.ds-phone-line-c{left:94px;right:84px;top:110px;transform:rotate(-5deg)}
.ds-phone-glow{position:absolute;width:150px;height:90px;border-radius:50%;left:105px;top:26px;background:radial-gradient(circle,rgba(255,255,255,.5),rgba(76,198,255,.18) 38%,transparent 70%);filter:blur(10px)}
.ds-globe-wrap{position:absolute;left:142px;top:3px;width:154px;height:154px;animation:dsGlobeFloat 4.8s ease-in-out infinite;filter:drop-shadow(0 17px 24px rgba(0,0,0,.52)) drop-shadow(0 0 18px rgba(47,202,255,.35))}
.ds-globe{position:relative;width:100%;height:100%;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 35% 26%,rgba(255,255,255,.65),rgba(82,213,255,.32) 11%,rgba(45,94,222,.72) 37%,rgba(109,35,190,.88) 68%,#241046 100%);border:2px solid rgba(126,239,255,.7);box-shadow:inset -18px -12px 28px rgba(0,0,0,.32),inset 14px 8px 30px rgba(98,228,255,.22),0 0 28px rgba(67,141,255,.32);animation:dsGlobeSpin 11s linear infinite}
.ds-globe::before{content:"";position:absolute;inset:8% 0;border-radius:50%;border:1px solid rgba(132,232,255,.46);box-shadow:0 0 0 13px transparent;transform:scaleX(.52)}
.ds-globe::after{content:"";position:absolute;left:-7%;right:-7%;top:49%;height:1px;background:rgba(124,233,255,.58);box-shadow:0 -26px 0 rgba(124,233,255,.32),0 26px 0 rgba(124,233,255,.32)}
.ds-globe-grid{position:absolute;inset:-12%;border:1px solid rgba(149,235,255,.28);border-radius:50%}
.ds-globe-grid-a{transform:scaleX(.72)}.ds-globe-grid-b{transform:scaleX(.35)}.ds-globe-grid-c{transform:rotate(90deg) scaleX(.58)}
.ds-globe-continent{position:absolute;background:linear-gradient(135deg,#ff8d72,#ff4fc4 45%,#6fe8ff);opacity:.9;filter:drop-shadow(0 0 5px rgba(255,94,215,.5));clip-path:polygon(4% 25%,27% 7%,44% 17%,54% 7%,78% 15%,95% 37%,80% 57%,63% 54%,53% 78%,31% 91%,20% 70%,4% 64%)}
.ds-continent-a{width:70px;height:54px;left:18px;top:26px;transform:rotate(-12deg)}
.ds-continent-b{width:54px;height:66px;right:16px;top:56px;transform:rotate(27deg)}
.ds-continent-c{width:35px;height:28px;left:52px;bottom:15px;transform:rotate(9deg)}
.ds-globe-shine{position:absolute;left:19px;top:13px;width:44px;height:58px;border-radius:50%;background:linear-gradient(135deg,rgba(255,255,255,.66),transparent);filter:blur(3px);transform:rotate(26deg)}
.ds-orbit{position:absolute;left:92px;top:55px;width:260px;height:92px;border:1px solid rgba(100,226,255,.28);border-radius:50%;transform:rotate(-15deg);animation:dsOrbitPulse 3.8s ease-in-out infinite}
.ds-orbit-b{transform:rotate(20deg);border-color:rgba(233,80,255,.24);animation-delay:-1.8s}
.ds-physics-panel{grid-column:3;grid-row:2 / span 2;position:relative;height:528px;border-radius:14px;overflow:hidden;background:linear-gradient(145deg,#6d38df 0%,#6437d0 42%,#5a33c4 100%);box-shadow:0 24px 55px rgba(0,0,0,.32),inset 0 0 0 1px rgba(255,255,255,.08)}
.ds-physics-panel::before{content:"";position:absolute;inset:0;background:radial-gradient(400px 240px at 84% 10%,rgba(255,255,255,.08),transparent 65%),linear-gradient(180deg,transparent 50%,rgba(18,8,60,.12));pointer-events:none}
.ds-physics-panel h3{position:relative;z-index:2;margin:0;padding:31px 24px 0;color:#fff !important;font-size:33px !important;line-height:1.08 !important;letter-spacing:-.035em;font-weight:900;max-width:95%}
.ds-physics-hint{position:absolute;z-index:3;top:148px;left:25px;margin:0;color:rgba(255,255,255,.58);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:0;transition:opacity .25s}
.ds-physics-panel:hover .ds-physics-hint{opacity:1}
.ds-physics-world{position:absolute;left:0;right:0;bottom:0;height:64%;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
.ds-physics-world:active{cursor:grabbing}
.ds-physics-chip{position:absolute;left:0;top:0;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:rgba(30,17,96,.46);box-shadow:0 8px 18px rgba(25,8,80,.22),inset 0 1px rgba(255,255,255,.08);color:#fff;display:flex;align-items:center;justify-content:center;padding:0 16px;font-size:11px;font-weight:900;letter-spacing:.035em;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);will-change:transform;touch-action:none;cursor:grab;outline:none}
.ds-physics-chip:active{cursor:grabbing}.ds-physics-chip:focus-visible{box-shadow:0 0 0 3px rgba(71,226,255,.7),0 8px 18px rgba(25,8,80,.22)}
.ds-physics-chip:nth-child(3n+1){background:rgba(29,33,117,.52)}
.ds-physics-chip:nth-child(3n+2){background:rgba(44,20,111,.52)}
.ds-physics-chip:nth-child(3n){background:rgba(18,60,119,.46)}
.ds-physics-chip-logo{padding:0 14px;background:rgba(255,255,255,.88) !important}
.ds-physics-chip-logo img{display:block;max-width:100%;max-height:30px;object-fit:contain;pointer-events:none}
@keyframes dsGlobeFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-12px) rotate(2deg)}}
@keyframes dsGlobeSpin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}
@keyframes dsOrbitPulse{0%,100%{opacity:.35;scale:.96}50%{opacity:.8;scale:1.05}}

/* Section reveal timing */
.ds-work-process .reveal{opacity:0;transform:translateY(28px);transition:opacity .72s cubic-bezier(.2,.8,.2,1),transform .72s cubic-bezier(.2,.8,.2,1)}
.ds-work-process .reveal.visible{opacity:1;transform:none}
.ds-work-process .ds-process-card-01{transition-delay:.05s}.ds-work-process .ds-process-card-02{transition-delay:.13s}.ds-work-process .ds-process-card-03{transition-delay:.20s}.ds-work-process .ds-process-card-04{transition-delay:.27s}.ds-work-process .ds-process-visual{transition-delay:.22s}.ds-work-process .ds-physics-panel{transition-delay:.32s}

@media (max-width:1050px){
  #process.ds-work-process{padding:68px 0 72px !important}
  .ds-work-process-shell{max-width:900px !important}
  .ds-process-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:16px}
  .ds-process-card-01,.ds-process-card-02,.ds-process-card-03,.ds-process-card-04,.ds-process-visual,.ds-physics-panel{grid-column:auto;grid-row:auto;margin-top:0}
  .ds-work-process-intro{max-width:620px;margin-bottom:34px}
  .ds-process-card{min-height:270px}.ds-process-card img{height:112px}
  .ds-process-visual{height:285px}.ds-physics-panel{height:430px}
}
@media (max-width:720px){
  #process.ds-work-process{padding:58px 0 60px !important}
  .ds-work-process-shell{width:min(100% - 28px,1080px) !important}
  .ds-work-process-intro{margin-bottom:28px}.ds-work-process-intro h2{font-size:42px !important}.ds-work-process-intro p{font-size:14px}
  .ds-process-grid{grid-template-columns:1fr;gap:14px}
  .ds-process-card{min-height:0;padding:27px 13px 13px}.ds-process-card h3{font-size:23px !important}.ds-process-card p{min-height:0;font-size:12.5px}.ds-process-card img{height:132px}
  .ds-process-visual{height:245px;overflow:hidden}.ds-phone-stage{transform:scale(.76);transform-origin:center center}
  .ds-physics-panel{height:420px}.ds-physics-panel h3{font-size:30px !important;padding:28px 21px 0}.ds-physics-world{height:62%}
  .ds-process-chevron{opacity:.1}
}
@media (max-width:420px){
  .ds-work-process-intro h2{font-size:37px !important}.ds-process-eyebrow i{width:36px}
  .ds-process-visual{height:215px}.ds-phone-stage{transform:scale(.67)}
  .ds-physics-panel{height:390px}.ds-physics-panel h3{font-size:27px !important}
}
@media (prefers-reduced-motion:reduce){
  .ds-globe,.ds-globe-wrap,.ds-orbit{animation:none !important}.ds-work-process .reveal{opacity:1 !important;transform:none !important;transition:none !important}
}



/* V14.45 — Explicit reference grid, isolated from global heading rules. */
#process.ds-work-process{padding:54px 0 40px!important;background:#050610!important}
#process.ds-work-process::after{display:none}
#process .ds-work-process-shell{width:calc(100% - 48px)!important;max-width:1000px!important;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto auto 255px;gap:22px 18px;padding:0!important}
#process .ds-process-grid{display:contents}
#process .ds-work-process-intro{grid-column:1 / 3;grid-row:1;margin:0!important;max-width:none;padding:8px 12px 0 0}
#process #ds-work-process-title{color:#fff!important;-webkit-text-fill-color:#fff!important;background:none!important;font-size:44px!important;line-height:1.1!important;letter-spacing:-.025em!important;margin:0 0 24px!important;font-weight:800!important}
#process .ds-work-process-intro p{max-width:none;color:#f4f4fa!important;font-size:14px;line-height:1.6}
#process .ds-process-card{margin:0!important;min-height:0;padding:32px 15px 15px;border:0;border-radius:13px;background:#1a1b2f;box-shadow:none;align-self:start}
#process .ds-process-card-01{grid-column:3;grid-row:1}
#process .ds-process-card-02{grid-column:4;grid-row:1}
#process .ds-process-card-03{grid-column:1;grid-row:2}
#process .ds-process-card-04{grid-column:2;grid-row:2}
#process .ds-process-card h3{font-size:23px!important;line-height:1.4!important;font-weight:750;margin:0 0 9px!important;letter-spacing:-.015em}
#process .ds-process-card p{font-size:12px;line-height:1.55;min-height:0;margin-bottom:13px!important}
#process .ds-process-card img{height:94px;border-radius:6px}
#process .ds-process-badge{width:21px;height:21px;top:14px;left:15px}
#process .ds-physics-panel{grid-column:3 / 5;grid-row:2 / 4;height:auto;align-self:stretch;min-height:500px;background:#6036cd;overflow:visible;box-shadow:none}
#process .ds-physics-panel h3{font-size:31px!important;line-height:1.23!important;padding:30px 24px 0;max-width:none;letter-spacing:-.015em}
#process .ds-physics-world{height:100%;overflow:visible;pointer-events:none;border-radius:13px}
#process .ds-physics-chip{pointer-events:auto;backdrop-filter:none;background:#472695!important;border:0;box-shadow:none;padding:12px;overflow:hidden}
#process .ds-physics-chip img{width:100%;height:100%;max-height:none;object-fit:contain;pointer-events:none}
#process .ds-physics-chip-logo{background:#472695!important}
#process .ds-physics-hint{display:none}
#process .ds-process-visual{grid-column:1 / 3;grid-row:3;height:255px;position:relative;display:block;overflow:visible}
#process .ds-process-phone{position:absolute;width:100%;height:215px;object-fit:contain;bottom:-12px;left:0;animation:none}
#process .ds-process-earth{position:absolute;width:165px;height:165px;left:calc(50% - 82.5px);top:-5px;object-fit:contain;animation:dsEarthTurn 20s linear infinite;filter:drop-shadow(0 0 18px #16baff55)}
@keyframes dsEarthTurn{to{transform:rotate(360deg)}}
#process .ds-process-chevron{width:650px;height:650px;top:200px;opacity:.12}
#process .ds-process-chevron-left{left:-470px}#process .ds-process-chevron-right{right:-470px}
@media(max-width:1050px){
 #process .ds-work-process-shell{max-width:760px!important;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}
 #process .ds-work-process-intro{grid-column:1 / 3;grid-row:auto;margin-bottom:10px!important}
 #process .ds-process-card-01,#process .ds-process-card-02,#process .ds-process-card-03,#process .ds-process-card-04{grid-column:auto;grid-row:auto}
 #process .ds-process-visual{grid-column:1;grid-row:auto;align-self:center}
 #process .ds-physics-panel{grid-column:2;grid-row:auto;min-height:460px}
 #process .ds-physics-panel h3{font-size:27px!important}
}
@media(max-width:600px){
 #process .ds-work-process-shell{width:calc(100% - 32px)!important;display:flex;flex-direction:column;gap:18px}
 #process #ds-work-process-title{font-size:36px!important}
 #process .ds-process-card{width:100%;box-sizing:border-box}
 #process .ds-process-card img{height:145px}
 #process .ds-process-visual{width:100%;height:255px}
 #process .ds-physics-panel{width:100%;height:460px;min-height:460px}
}
@media(prefers-reduced-motion:reduce){#process .ds-process-earth{animation:none}}

/* V14.46 — Enclosed sample-logo capsules. */
#process .ds-physics-panel{overflow:hidden;isolation:isolate}
#process .ds-physics-world{inset:0;height:100%;overflow:hidden;touch-action:pan-y}
#process .ds-physics-chip{padding:7px 10px;box-sizing:border-box;touch-action:none;background:#45248f!important}
#process .ds-physics-chip img{width:100%;height:100%;object-fit:contain}
#process .ds-physics-panel h3{pointer-events:none}
#process .ds-physics-chip:nth-child(3),#process .ds-physics-chip:nth-child(4),#process .ds-physics-chip:nth-child(6){background:#eee8ff!important}

/* V14.47 — Reference Why Choose Us composition and reveals. */
#why-us.ds-why-reference{position:relative;isolation:isolate;overflow:hidden;background:#fff!important;color:#080a15;padding:100px 0 42px;margin:0}
#why-us .ds-why-shell{max-width:1040px;width:calc(100% - 48px);margin:auto;position:relative;display:grid;grid-template-columns:1.15fr 1fr;column-gap:90px;min-height:578px}
#why-us .ds-why-copy{grid-column:1;grid-row:1;padding-top:24px;z-index:2}
#why-us .ds-why-eyebrow{display:flex;gap:10px;align-items:center;color:#8b39df;font-style:italic;font-size:11px;font-weight:800;margin-bottom:20px}
#why-us .ds-why-eyebrow i{width:60px;height:2px;background:linear-gradient(90deg,#2874ff,#dc17f6);transform-origin:left}
#why-us #ds-why-title{font-size:44px!important;line-height:1.18!important;letter-spacing:-.02em!important;font-weight:800!important;color:#080a15!important;-webkit-text-fill-color:currentColor!important;background:none!important;margin:0 0 24px!important;perspective:650px}
#why-us .ds-why-copy p{font-size:14px;line-height:1.6;color:#11152a;margin:0;max-width:460px}
#why-us .ds-why-showcase{grid-column:2;grid-row:1 / 3;position:relative;height:578px;margin-right:28px}
#why-us .ds-why-showcase-clip{position:absolute;inset:0;overflow:hidden;border-radius:150px 0 0 0;background:#111d33}
#why-us .ds-why-showcase-clip:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#111d33);pointer-events:none}
#why-us .ds-why-showcase-shape{position:absolute;inset:22px -28px -30px 28px;background:#e1e6fc;border-radius:150px 0 0 0}
#why-us .ds-why-pages{position:absolute;inset:0}
#why-us .ds-why-page{position:absolute;background:white;box-shadow:0 20px 45px #0005;overflow:hidden;width:56%;top:102px}
#why-us .ds-why-page img{display:block;width:100%;height:auto;border:0;border-radius:0}
#why-us .ds-why-page-back-left{left:-13%;top:140px;width:62%;transform:rotate(-3deg)}
#why-us .ds-why-page-back-right{right:-20%;top:140px;width:65%;transform:rotate(3deg)}
#why-us .ds-why-page-front{left:22%;width:56%;z-index:2}
#why-us .ds-why-browser{height:15px;background:#fafafa;display:flex;align-items:center;gap:3px;padding-left:5px}
#why-us .ds-why-browser i{height:3px;width:3px;border-radius:50%;background:#b9bdc9}
#why-us .ds-why-features{grid-column:1 / 3;grid-row:2;position:relative;z-index:4;display:grid;grid-template-columns:repeat(4,1fr);gap:13px;width:69%;align-self:end;padding-top:30px;perspective:1000px}
#why-us .ds-why-feature{background:#fff;border-radius:6px;box-shadow:0 0 8px #10153512;padding:0 13px 17px;text-align:center;min-height:216px;transform-origin:center;box-sizing:border-box}
#why-us .ds-why-icon{color:#783cff;display:flex;align-items:center;justify-content:center;width:55px;height:57px;background:#f1eaff;border-radius:0 0 50% 50%;margin:0 auto 9px}
#why-us .ds-why-icon svg{width:36px;height:36px}
#why-us .ds-why-feature h3{font-size:14px!important;line-height:1.5!important;color:#101324!important;letter-spacing:0!important;font-weight:750!important;margin:0 0 9px!important}
#why-us .ds-why-feature p{font-size:11px;line-height:1.6;margin:0;color:#434652}
#why-us .ds-why-wheel{position:absolute;z-index:-1;width:690px;height:690px;right:-80px;top:20px;opacity:.17;animation:dsWhyWheel 30s linear infinite}
#why-us .ds-why-circuit{position:absolute;z-index:-1;width:900px;height:700px;left:-70px;top:-60px;opacity:.065}
@keyframes dsWhyWheel{to{transform:rotate(360deg)}}
#why-us.ds-why-ready .ds-why-char{display:inline-block;transform:rotateX(90deg);transform-origin:50% 100%;color:#a249ed;transition:transform .85s cubic-bezier(.2,.7,.2,1),color .85s;transition-delay:calc(var(--n)*.018s)}
#why-us .ds-why-word{display:inline-block;white-space:nowrap}
#why-us.ds-why-ready .ds-why-copy>p{opacity:0;transform:translateY(28px);transition:opacity 2s,transform 2s}
#why-us.ds-why-ready .ds-why-eyebrow i{transform:scaleX(0);transition:transform 1s}
#why-us.ds-why-ready .ds-why-pages{transform:translateY(-100%);filter:blur(30px);opacity:0;transition:transform 1.5s cubic-bezier(.25,.46,.45,1),filter 1.5s,opacity 1.5s}
#why-us.ds-why-ready .ds-why-showcase-shape{transform:translate(-28px,-22px);transition:transform 1s .5s}
#why-us.ds-why-ready .ds-why-feature{transform:rotateY(90deg);transition:transform 1s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i)*.14s)}
#why-us.ds-why-enter .ds-why-char{transform:rotateX(0);color:#080a15}
#why-us.ds-why-enter .ds-why-copy>p{opacity:1;transform:none}
#why-us.ds-why-enter .ds-why-eyebrow i{transform:scaleX(1)}
#why-us.ds-why-enter .ds-why-pages{transform:none;filter:blur(0);opacity:1}
#why-us.ds-why-enter .ds-why-showcase-shape{transform:none}
#why-us .ds-why-feature.ds-why-card-enter{transform:none}
@media(max-width:1050px){#why-us .ds-why-shell{column-gap:40px;max-width:900px}#why-us #ds-why-title{font-size:38px!important}#why-us .ds-why-features{width:78%}#why-us .ds-why-copy p{font-size:13px}}
@media(max-width:760px){#why-us.ds-why-reference{padding:60px 0 55px}#why-us .ds-why-shell{width:calc(100% - 32px);display:flex;flex-direction:column;gap:30px;min-height:0}#why-us .ds-why-copy{padding:0}#why-us #ds-why-title{font-size:36px!important}#why-us .ds-why-showcase{width:calc(100% - 20px);height:430px;margin:0}#why-us .ds-why-features{width:100%;padding:0;grid-template-columns:repeat(2,1fr);gap:14px}#why-us .ds-why-feature{min-height:210px}#why-us .ds-why-copy p{font-size:14px;max-width:none}#why-us .ds-why-wheel{width:500px;height:500px;right:-220px;top:330px}}
@media(prefers-reduced-motion:reduce){#why-us .ds-why-wheel{animation:none}#why-us.ds-why-ready .ds-why-char,#why-us.ds-why-ready .ds-why-feature,#why-us.ds-why-ready .ds-why-pages,#why-us.ds-why-ready .ds-why-copy>p,#why-us.ds-why-ready .ds-why-eyebrow i,#why-us.ds-why-ready .ds-why-showcase-shape{transform:none;opacity:1;filter:none;transition:none;color:inherit}}
#why-us .ds-why-copy p{color:#15182a!important}
#why-us .ds-why-feature p{color:#434652!important}


/* V14.54 — Services opens exclusively through the trigger controller. */
.site-header .ds-services-mega::before{display:none!important;pointer-events:none!important}
.site-header .ds-services-menu:not(.is-open)>.ds-services-mega{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
@media(max-width:950px){
 .site-header .ds-services-menu:not(.is-open)>.ds-services-mega{display:none!important}
 .site-header .ds-services-menu.is-open>.ds-services-mega{display:block!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
}
@media(prefers-reduced-motion:reduce){.site-header .ds-services-mega{transition:none!important}}
