:root {
  --dg-bg: #07070a;
  --dg-surface: #0f0f16;
  --dg-surface-2: #171722;
  --dg-line: rgba(255,255,255,.11);
  --dg-line-soft: rgba(255,255,255,.065);
  --dg-text: #ffffff;
  --dg-muted: #b7b4c7;
  --dg-purple: #8b5cf6;
  --dg-brand: #723c84;
  --dg-magenta: #c93d7b;
  --dg-pink: #f044a7;
  --dg-cyan: #63e6ff;
  --dg-green: #71f6b2;
  --dg-radius-sm: 14px;
  --dg-radius: 24px;
  --dg-radius-lg: 36px;
  --dg-shadow: 0 32px 100px rgba(0,0,0,.42);
  --dg-glow: 0 24px 90px rgba(139,92,246,.2);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  overflow-x: hidden;
  background:
    radial-gradient(circle at 8% -8%, rgba(139,92,246,.14), transparent 32rem),
    radial-gradient(circle at 92% 12%, rgba(201,61,123,.11), transparent 28rem),
    var(--dg-bg);
  color: var(--dg-text);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -3;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.9), transparent 72%);
}
body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 9998;
  pointer-events: none;
  opacity: .028;
  background-image: url("../images/noise.svg");
}

.wp-site-blocks { overflow: clip; }
.wp-site-blocks > * { margin-block-start: 0; }

/* Global helpers */
.dg-section {
  position: relative;
  padding-top: clamp(5rem, 10vw, 9rem);
  padding-bottom: clamp(5rem, 10vw, 9rem);
}
.dg-section--tight {
  padding-top: clamp(3rem, 6vw, 5rem);
  padding-bottom: clamp(3rem, 6vw, 5rem);
}
.dg-wrap { position: relative; }
.dg-muted { color: var(--dg-muted); }
.dg-kicker {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  margin-bottom: 1rem;
  color: #d9d6e3;
  font-family: var(--wp--preset--font-family--mono);
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1;
  text-transform: uppercase;
}
.dg-kicker::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--dg-cyan), var(--dg-pink));
  box-shadow: 0 0 0 5px rgba(99,230,255,.08), 0 0 22px rgba(99,230,255,.4);
}
.dg-gradient-text {
  color: transparent !important;
  background: linear-gradient(110deg, #fff 0%, #fff 28%, #a991ff 55%, #f044a7 83%, #63e6ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
}
.dg-section-title { max-width: 900px; margin-bottom: 1.25rem !important; }
.dg-section-intro { max-width: 700px; color: var(--dg-muted); font-size: clamp(1rem, 1.5vw, 1.16rem); }
.dg-rule {
  height: 1px;
  border: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.16), transparent);
}
.dg-glass {
  border: 1px solid var(--dg-line);
  background: linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.025));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), var(--dg-shadow);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
.dg-chip-row { display: flex; flex-wrap: wrap; gap: .65rem; }
.dg-chip {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  min-height: 36px;
  padding: .55rem .8rem;
  border: 1px solid var(--dg-line);
  border-radius: 999px;
  background: rgba(255,255,255,.035);
  color: #dedbe8;
  font-family: var(--wp--preset--font-family--mono);
  font-size: .72rem;
  font-weight: 650;
  letter-spacing: .03em;
}
.dg-chip::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--dg-green);
  box-shadow: 0 0 12px rgba(113,246,178,.7);
}

/* Header */
.dg-header-shell {
  position: relative;
  z-index: 100;
  width: calc(100% - clamp(1rem, 3vw, 2.5rem));
  max-width: 1320px;
  margin: 1rem auto 0;
  padding: .7rem .8rem .7rem 1rem;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 999px;
  background: rgba(7,7,10,.72);
  box-shadow: 0 18px 50px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter: blur(20px) saturate(145%);
  -webkit-backdrop-filter: blur(20px) saturate(145%);
  transition: background .3s ease, border-color .3s ease, transform .3s ease;
}
.dg-header-shell.is-scrolled {
  background: rgba(7,7,10,.9);
  border-color: rgba(255,255,255,.16);
}
.dg-brand-lockup { gap: .7rem !important; }
.dg-brand-mark {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 12px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.02)),
    linear-gradient(135deg, var(--dg-purple), var(--dg-magenta));
  box-shadow: 0 10px 28px rgba(139,92,246,.28), inset 0 1px 0 rgba(255,255,255,.32);
  color: #fff;
  font-size: .85rem;
  font-weight: 900;
  letter-spacing: -.08em;
}
.dg-header-shell .wp-block-site-title { margin: 0; font-size: 1rem; font-weight: 800; letter-spacing: -.03em; }
.dg-header-shell .wp-block-site-title a { color: #fff; }
.dg-header-shell .wp-block-navigation-item__content { color: #d3d0dc; padding: .65rem .75rem; }
.dg-header-shell .wp-block-navigation-item__content:hover { color: #fff; }
.dg-header-cta .wp-block-button__link { padding: .72rem 1rem; background: #fff; color: #07070a; }
.dg-header-shell .wp-block-navigation__responsive-container.is-menu-open {
  padding: 1.25rem;
  background: rgba(7,7,10,.98);
  color: #fff;
}
.dg-header-shell .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
  padding-top: 4rem;
}

/* Hero */
.dg-hero {
  position: relative;
  min-height: min(900px, calc(100svh - 1rem));
  display: flex;
  align-items: center;
  padding-top: clamp(7rem, 12vw, 10rem);
  padding-bottom: clamp(4rem, 9vw, 8rem);
  isolation: isolate;
}
.dg-hero::before {
  content: "";
  position: absolute;
  z-index: -2;
  width: min(72vw, 980px);
  aspect-ratio: 1;
  top: -26%;
  right: -25%;
  border-radius: 50%;
  background:
    radial-gradient(circle at 32% 38%, rgba(99,230,255,.32), transparent 18%),
    radial-gradient(circle at 52% 58%, rgba(240,68,167,.45), transparent 24%),
    radial-gradient(circle at center, rgba(139,92,246,.3), transparent 62%);
  filter: blur(18px);
  opacity: .8;
  animation: dg-float 11s ease-in-out infinite alternate;
}
.dg-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(to bottom, transparent 70%, var(--dg-bg));
  pointer-events: none;
}
.dg-hero-grid { gap: clamp(2rem, 6vw, 6rem) !important; align-items: center !important; }
.dg-hero-copy { position: relative; z-index: 2; }
.dg-hero-title {
  max-width: 10.5ch;
  margin-top: 1.2rem !important;
  margin-bottom: 1.5rem !important;
  font-size: clamp(3.35rem, 8.7vw, 8rem) !important;
  font-weight: 820 !important;
  line-height: .91 !important;
  letter-spacing: -.075em !important;
}
.dg-hero-lead {
  max-width: 650px;
  margin-bottom: 2rem !important;
  color: #c2bfce;
  font-size: clamp(1.05rem, 1.6vw, 1.25rem);
  line-height: 1.62;
}
.dg-hero-buttons { margin-bottom: 2rem; }
.dg-button-primary .wp-block-button__link {
  position: relative;
  overflow: hidden;
  min-width: 170px;
  background: linear-gradient(115deg, #fff 0%, #eeeaff 100%);
  color: #07070a;
}
.dg-button-primary .wp-block-button__link::after {
  content: "↗";
  display: inline-block;
  margin-left: .7rem;
  transition: transform .25s ease;
}
.dg-button-primary .wp-block-button__link:hover::after { transform: translate(3px,-3px); }
.dg-button-secondary .wp-block-button__link {
  min-width: 160px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.035);
  color: #fff;
  backdrop-filter: blur(12px);
}

.dg-command-card {
  position: relative;
  max-width: 520px;
  margin-left: auto;
  padding: 1rem;
  border-radius: 30px;
  transform: perspective(1200px) rotateY(-7deg) rotateX(3deg);
  transform-style: preserve-3d;
  transition: transform .25s ease;
}
.dg-command-card::before {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: -2;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(99,230,255,.38), rgba(139,92,246,.08) 35%, rgba(240,68,167,.42));
}
.dg-command-card::after {
  content: "";
  position: absolute;
  inset: 18% 10% -18%;
  z-index: -3;
  border-radius: 50%;
  background: rgba(139,92,246,.38);
  filter: blur(70px);
}
.dg-window {
  overflow: hidden;
  min-height: 500px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 22px;
  background: rgba(9,9,14,.9);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 25px 90px rgba(0,0,0,.5);
}
.dg-window-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .85rem 1rem;
  border-bottom: 1px solid var(--dg-line-soft);
  color: #8f8b9d;
  font-family: var(--wp--preset--font-family--mono);
  font-size: .68rem;
}
.dg-window-dots { display: flex; gap: .4rem; }
.dg-window-dots span { width: 7px; height: 7px; border-radius: 50%; background: #3a3845; }
.dg-window-dots span:nth-child(1) { background: #f044a7; }
.dg-window-dots span:nth-child(2) { background: #8b5cf6; }
.dg-window-dots span:nth-child(3) { background: #63e6ff; }
.dg-terminal { padding: clamp(1.1rem, 3vw, 1.8rem); font-family: var(--wp--preset--font-family--mono); }
.dg-terminal-label { margin-bottom: 1.5rem; color: var(--dg-green); font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; }
.dg-terminal-code { color: #dad7e5; font-size: clamp(.76rem, 1.2vw, .9rem); line-height: 1.9; }
.dg-terminal-code .muted { color: #686474; }
.dg-terminal-code .purple { color: #aa8aff; }
.dg-terminal-code .pink { color: #ff73be; }
.dg-terminal-code .cyan { color: #78edff; }
.dg-signal-chart {
  position: relative;
  height: 155px;
  margin-top: 2rem;
  overflow: hidden;
  border: 1px solid var(--dg-line-soft);
  border-radius: 16px;
  background:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
    rgba(255,255,255,.018);
  background-size: 24px 24px;
}
.dg-signal-chart svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.dg-status-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: .65rem; margin-top: .8rem; }
.dg-status-item { padding: .8rem; border: 1px solid var(--dg-line-soft); border-radius: 13px; background: rgba(255,255,255,.025); }
.dg-status-item strong { display: block; margin-bottom: .25rem; font-size: .8rem; }
.dg-status-item span { color: #777383; font-size: .62rem; }
.dg-hero-scroll {
  position: absolute;
  bottom: 1.6rem;
  left: 50%;
  display: flex;
  align-items: center;
  gap: .6rem;
  transform: translateX(-50%);
  color: #777382;
  font-family: var(--wp--preset--font-family--mono);
  font-size: .65rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.dg-hero-scroll::before { content: ""; width: 28px; height: 1px; background: linear-gradient(90deg, transparent, #777382); }

/* Marquee */
.dg-marquee-wrap {
  overflow: hidden;
  border-top: 1px solid var(--dg-line-soft);
  border-bottom: 1px solid var(--dg-line-soft);
  background: rgba(255,255,255,.018);
}
.dg-marquee {
  display: flex;
  width: max-content;
  padding: .95rem 0;
  animation: dg-marquee 32s linear infinite;
}
.dg-marquee span {
  display: inline-flex;
  align-items: center;
  gap: 1.6rem;
  padding-right: 1.6rem;
  color: #9894a5;
  font-family: var(--wp--preset--font-family--mono);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.dg-marquee span::after { content: "✦"; color: var(--dg-magenta); }

/* Services */
.dg-service-grid { margin-top: 3rem; gap: 1rem !important; }
.dg-service-card {
  position: relative;
  min-height: 340px;
  padding: clamp(1.4rem, 3vw, 2rem) !important;
  overflow: hidden;
  border: 1px solid var(--dg-line-soft);
  border-radius: var(--dg-radius);
  background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
  transition: transform .35s cubic-bezier(.2,.8,.2,1), border-color .35s ease, background .35s ease;
}
.dg-service-card::before {
  content: "";
  position: absolute;
  width: 240px;
  height: 240px;
  right: -120px;
  bottom: -130px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(139,92,246,.25), transparent 66%);
  transition: transform .45s ease, opacity .45s ease;
}
.dg-service-card:hover {
  transform: translateY(-8px);
  border-color: rgba(240,68,167,.34);
  background: linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.025));
}
.dg-service-card:hover::before { transform: scale(1.28) translate(-12px,-12px); }
.dg-service-index { color: #716d7c; font-family: var(--wp--preset--font-family--mono); font-size: .72rem; }
.dg-service-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  margin: 2.2rem 0 2.8rem;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(139,92,246,.28), rgba(201,61,123,.08));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 14px 36px rgba(0,0,0,.25);
  font-size: 1.2rem;
}
.dg-service-card h3 { margin-bottom: .75rem !important; }
.dg-service-card p { color: var(--dg-muted); font-size: .93rem; }
.dg-service-link { position: absolute; right: 1.5rem; bottom: 1.4rem; color: #fff; font-size: 1.2rem; transition: transform .25s ease; }
.dg-service-card:hover .dg-service-link { transform: translate(4px,-4px); color: var(--dg-pink); }

/* Statement / metric */
.dg-statement {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--dg-line-soft);
  border-radius: var(--dg-radius-lg);
  background:
    radial-gradient(circle at 80% 10%, rgba(240,68,167,.2), transparent 28rem),
    radial-gradient(circle at 15% 80%, rgba(99,230,255,.11), transparent 25rem),
    linear-gradient(145deg, #12121a, #09090d);
  box-shadow: var(--dg-shadow);
}
.dg-statement-inner { padding: clamp(2rem, 7vw, 6rem) !important; }
.dg-statement h2 { max-width: 13ch; }
.dg-metrics { gap: 1px !important; margin-top: 4rem; overflow: hidden; border: 1px solid var(--dg-line-soft); border-radius: 20px; background: var(--dg-line-soft); }
.dg-metric { min-height: 140px; padding: 1.4rem !important; background: rgba(10,10,15,.92); }
.dg-metric strong { display: block; margin-bottom: .35rem; font-size: clamp(2rem, 4vw, 3.7rem); line-height: 1; letter-spacing: -.06em; }
.dg-metric span { color: #8e8a9b; font-size: .78rem; }

/* Cases */
.dg-case-stack { margin-top: 3rem; }
.dg-case-card {
  position: sticky;
  top: 7rem;
  min-height: 560px;
  margin-bottom: 2rem;
  overflow: hidden;
  border: 1px solid var(--dg-line);
  border-radius: var(--dg-radius-lg);
  background: #101017;
  box-shadow: 0 38px 110px rgba(0,0,0,.5);
}
.dg-case-card:nth-child(2) { top: 8rem; }
.dg-case-card:nth-child(3) { top: 9rem; }
.dg-case-copy { padding: clamp(2rem, 5vw, 4rem) !important; }
.dg-case-copy h3 { margin-top: 1.3rem !important; margin-bottom: 1rem !important; font-size: clamp(2rem, 4vw, 3.8rem) !important; }
.dg-case-copy p { max-width: 560px; color: var(--dg-muted); }
.dg-case-visual {
  position: relative;
  min-height: 560px;
  overflow: hidden;
  border-left: 1px solid var(--dg-line-soft);
  background:
    radial-gradient(circle at 50% 35%, rgba(139,92,246,.28), transparent 35%),
    linear-gradient(145deg, #151522, #09090f);
}
.dg-case-visual--radio {
  background:
    radial-gradient(circle at 58% 38%, rgba(240,68,167,.25), transparent 34%),
    linear-gradient(145deg, #1a1020, #09090f);
}
.dg-case-visual--infra {
  background:
    radial-gradient(circle at 55% 35%, rgba(99,230,255,.17), transparent 35%),
    linear-gradient(145deg, #0d1820, #08090d);
}
.dg-case-screen {
  position: absolute;
  inset: 14% 9%;
  padding: 1rem;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 24px;
  background: rgba(8,8,13,.78);
  box-shadow: 0 30px 80px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.08);
  transform: perspective(1000px) rotateY(-7deg) rotateX(3deg);
}
.dg-case-screen::before { content: "DGLABS / LIVE SYSTEM"; display: block; padding: .5rem .25rem 1rem; color: #777382; font-family: var(--wp--preset--font-family--mono); font-size: .64rem; letter-spacing: .08em; }
.dg-ui-row { display: grid; grid-template-columns: 1.2fr .8fr; gap: .75rem; height: calc(100% - 2.2rem); }
.dg-ui-panel { position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,.07); border-radius: 16px; background: rgba(255,255,255,.035); }
.dg-ui-panel::after { content: ""; position: absolute; inset: 0; background: linear-gradient(120deg, transparent 35%, rgba(255,255,255,.06), transparent 65%); transform: translateX(-100%); animation: dg-shimmer 4.5s infinite; }
.dg-ui-bars { display: flex; align-items: end; gap: 6px; height: 55%; padding: 1rem; }
.dg-ui-bars span { flex: 1; min-width: 5px; border-radius: 999px 999px 3px 3px; background: linear-gradient(to top, var(--dg-purple), var(--dg-pink)); opacity: .8; }
.dg-ui-bars span:nth-child(1) { height: 28%; }.dg-ui-bars span:nth-child(2) { height: 64%; }.dg-ui-bars span:nth-child(3) { height: 42%; }.dg-ui-bars span:nth-child(4) { height: 88%; }.dg-ui-bars span:nth-child(5) { height: 57%; }.dg-ui-bars span:nth-child(6) { height: 76%; }.dg-ui-bars span:nth-child(7) { height: 48%; }
.dg-ui-lines { padding: 1rem; }
.dg-ui-lines span { display: block; height: 7px; margin-bottom: 10px; border-radius: 99px; background: rgba(255,255,255,.09); }
.dg-ui-lines span:nth-child(1) { width: 80%; }.dg-ui-lines span:nth-child(2) { width: 56%; }.dg-ui-lines span:nth-child(3) { width: 68%; }.dg-ui-lines span:nth-child(4) { width: 42%; }

/* Process */
.dg-process-grid { margin-top: 3rem; gap: 0 !important; counter-reset: dg-step; }
.dg-process-step {
  position: relative;
  min-height: 300px;
  padding: 1.7rem !important;
  border-top: 1px solid var(--dg-line-soft);
  border-right: 1px solid var(--dg-line-soft);
  counter-increment: dg-step;
}
.dg-process-step:last-child { border-right: 0; }
.dg-process-step::before { content: "0" counter(dg-step); display: block; margin-bottom: 5rem; color: #6f6b79; font-family: var(--wp--preset--font-family--mono); font-size: .75rem; }
.dg-process-step::after { content: ""; position: absolute; top: -4px; left: 0; width: 8px; height: 8px; border-radius: 50%; background: var(--dg-pink); box-shadow: 0 0 18px rgba(240,68,167,.55); }
.dg-process-step p { color: var(--dg-muted); font-size: .9rem; }

/* CTA */
.dg-cta {
  position: relative;
  overflow: hidden;
  padding: clamp(2rem, 7vw, 6rem) !important;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: var(--dg-radius-lg);
  background:
    radial-gradient(circle at 10% 10%, rgba(99,230,255,.22), transparent 24rem),
    radial-gradient(circle at 90% 90%, rgba(240,68,167,.35), transparent 28rem),
    linear-gradient(135deg, #181029, #170d1c 46%, #0d1118);
  box-shadow: 0 40px 120px rgba(79,27,91,.35), inset 0 1px 0 rgba(255,255,255,.11);
}
.dg-cta::after { content: "DG"; position: absolute; right: -2vw; bottom: -8vw; color: rgba(255,255,255,.035); font-size: clamp(12rem, 32vw, 34rem); font-weight: 900; line-height: .7; letter-spacing: -.13em; pointer-events: none; }
.dg-cta h2 { position: relative; z-index: 1; max-width: 13ch; margin-bottom: 1.3rem !important; }
.dg-cta p { position: relative; z-index: 1; max-width: 640px; color: #d0cddd; }
.dg-cta .wp-block-buttons { position: relative; z-index: 1; margin-top: 2rem; }

/* Footer */
.dg-footer { padding-top: 2rem; padding-bottom: 2rem; border-top: 1px solid var(--dg-line-soft); }
.dg-footer-main { padding: clamp(2rem, 5vw, 4rem) 0 !important; }
.dg-footer-title { max-width: 12ch; font-size: clamp(2rem, 4vw, 3.7rem) !important; }
.dg-footer-nav a { color: var(--dg-muted); }
.dg-footer-nav a:hover { color: #fff; }
.dg-footer-meta { padding-top: 1rem; border-top: 1px solid var(--dg-line-soft); color: #777382; font-family: var(--wp--preset--font-family--mono); font-size: .68rem; }

/* Standard content */
.dg-content-hero { padding-top: clamp(8rem, 14vw, 12rem); padding-bottom: clamp(3rem, 6vw, 5rem); }
.dg-content-hero .wp-block-post-title { max-width: 13ch; font-size: clamp(3rem, 8vw, 7rem); line-height: .94; }
.dg-content-shell { padding-bottom: clamp(5rem, 10vw, 9rem); }
.dg-content-shell > * { margin-block-start: 1.5rem; }
.dg-content-shell > h2, .dg-content-shell > h3 { margin-block-start: 3rem; }
.dg-content-shell img { border-radius: var(--dg-radius); }
.dg-post-card {
  height: 100%;
  overflow: hidden;
  border: 1px solid var(--dg-line-soft);
  border-radius: var(--dg-radius);
  background: rgba(255,255,255,.025);
  transition: transform .3s ease, border-color .3s ease;
}
.dg-post-card:hover { transform: translateY(-6px); border-color: rgba(240,68,167,.3); }
.dg-post-card .wp-block-post-featured-image img { aspect-ratio: 16/10; object-fit: cover; }
.dg-post-card-body { padding: 1.4rem !important; }
.dg-post-card .wp-block-post-title { font-size: 1.5rem; }
.dg-post-card .wp-block-post-excerpt { color: var(--dg-muted); font-size: .92rem; }
.dg-post-meta { color: #777382; font-family: var(--wp--preset--font-family--mono); font-size: .7rem; }
.wp-block-query-pagination { margin-top: 3rem; }
.wp-block-query-pagination a, .wp-block-query-pagination .current { padding: .6rem .85rem; border: 1px solid var(--dg-line); border-radius: 999px; }
.wp-block-search__inside-wrapper { padding: .4rem; border: 1px solid var(--dg-line) !important; border-radius: 999px; background: rgba(255,255,255,.035); }
.wp-block-search__input { border: 0; background: transparent; color: #fff; }
.wp-block-search__button { border-radius: 999px; }

/* 404 */
.dg-404 { min-height: 75svh; display: grid; place-items: center; text-align: center; }
.dg-404-code { margin: 0 !important; color: transparent; background: linear-gradient(135deg, #fff, var(--dg-purple), var(--dg-pink)); -webkit-background-clip: text; background-clip: text; font-size: clamp(8rem, 25vw, 20rem) !important; line-height: .8; }

/* Motion */
.dg-reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s cubic-bezier(.2,.8,.2,1), transform .8s cubic-bezier(.2,.8,.2,1); }
.dg-reveal.is-visible { opacity: 1; transform: translateY(0); }
.dg-reveal:nth-child(2) { transition-delay: .08s; }
.dg-reveal:nth-child(3) { transition-delay: .16s; }
.dg-reveal:nth-child(4) { transition-delay: .24s; }
.dg-spotlight {
  position: fixed;
  z-index: -1;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  pointer-events: none;
  opacity: 0;
  background: radial-gradient(circle, rgba(139,92,246,.11), transparent 68%);
  transform: translate(-50%,-50%);
  transition: opacity .25s ease;
}
body:hover .dg-spotlight { opacity: 1; }
@keyframes dg-float { to { transform: translate(-4%, 4%) scale(1.06); } }
@keyframes dg-marquee { to { transform: translateX(-50%); } }
@keyframes dg-shimmer { 55%,100% { transform: translateX(100%); } }

/* Responsive */
@media (max-width: 980px) {
  .dg-header-cta { display: none; }
  .dg-hero { min-height: auto; }
  .dg-command-card { max-width: 680px; margin: 1rem auto 0; transform: none; }
  .dg-window { min-height: 430px; }
  .dg-case-card { position: relative; top: auto !important; }
  .dg-case-visual { min-height: 430px; border-top: 1px solid var(--dg-line-soft); border-left: 0; }
  .dg-process-step:nth-child(2) { border-right: 0; }
}
@media (max-width: 781px) {
  .dg-header-shell { width: calc(100% - 1rem); margin-top: .5rem; padding-left: .7rem; border-radius: 20px; }
  .dg-header-shell .wp-block-navigation { order: 3; }
  .dg-hero { padding-top: 7rem; }
  .dg-hero-title { max-width: 11ch; }
  .dg-hero-scroll { display: none; }
  .dg-command-card { padding: .65rem; border-radius: 24px; }
  .dg-window { min-height: 390px; }
  .dg-status-row { grid-template-columns: 1fr; }
  .dg-service-card { min-height: 290px; }
  .dg-metric { min-height: 110px; }
  .dg-case-card { min-height: auto; }
  .dg-case-visual { min-height: 360px; }
  .dg-case-screen { inset: 10% 5%; transform: none; }
  .dg-process-step { min-height: 240px; border-right: 0; }
  .dg-process-step::before { margin-bottom: 3rem; }
  .dg-footer-main { gap: 2.5rem !important; }
}
@media (max-width: 480px) {
  .dg-brand-lockup .wp-block-site-title { display: none; }
  .dg-hero-title { font-size: clamp(3.15rem, 17vw, 5rem) !important; }
  .dg-button-primary, .dg-button-secondary { width: 100%; }
  .dg-button-primary .wp-block-button__link, .dg-button-secondary .wp-block-button__link { width: 100%; }
  .dg-window { min-height: 340px; }
  .dg-signal-chart { height: 115px; }
  .dg-case-visual { min-height: 300px; }
  .dg-ui-row { grid-template-columns: 1fr; }
  .dg-ui-panel:last-child { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .001ms !important; }
  .dg-reveal { opacity: 1; transform: none; }
  .dg-command-card { transform: none !important; }
  .dg-spotlight { display: none; }
}
