:root{
  /* Light, clean palette (still "manufacturing/professional") */
  --dsi-bg: #F6F8FC;
  --dsi-bg2:#EEF3FA;
  --dsi-card:#FFFFFF;
  --dsi-card2:#FFFFFF;

  --dsi-border: rgba(15, 23, 42, .10);
  --dsi-text: rgba(15, 23, 42, .92);
  --dsi-muted: rgba(15, 23, 42, .68);

  --dsi-brand: #1E5AA8;   /* calmer, less neon blue */
  --dsi-brand2:#2B8BCB;
}

*{ box-sizing: border-box; }

.dsi-body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background:
    radial-gradient(1200px 600px at 15% 10%, rgba(30, 90, 168, .10), transparent 60%),
    radial-gradient(900px 500px at 80% 0%, rgba(43, 139, 203, .08), transparent 55%),
    linear-gradient(180deg, var(--dsi-bg) 0%, var(--dsi-bg2) 60%, #FFFFFF 100%);
  color: var(--dsi-text);
}

.dsi-nav{
  background: rgba(255,255,255,.75);
  border-bottom: 1px solid var(--dsi-border);
  backdrop-filter: blur(14px);
}

.dsi-mark{
  width: 14px; height: 14px; border-radius: 4px;
  background: linear-gradient(135deg, var(--dsi-brand), var(--dsi-brand2));
  box-shadow: 0 0 0 3px rgba(124,92,255,.18);
  display:inline-block;
}

.dsi-eyebrow{
  display:inline-flex;
  gap:.5rem;
  align-items:center;
  padding: .35rem .6rem;
  border: 1px solid rgba(15, 23, 42, .10);
  border-radius: 999px;
  font-size: .85rem;
  color: rgba(15, 23, 42, .70);
  background: rgba(255,255,255,.65);
}

.dsi-btn{
  background: linear-gradient(135deg, var(--dsi-brand), #5C86C4);
  border: 0;
  box-shadow: 0 10px 30px rgba(124,92,255,.22);
}
.dsi-btn:hover{ filter: brightness(1.05); }

.dsi-btn-outline{
  border: 1px solid rgba(30, 90, 168, .28);
  color: rgba(30, 90, 168, .95);
  background: rgba(255,255,255,.70);
}
.dsi-btn-outline:hover{
  border-color: rgba(30, 90, 168, .45);
  background: rgba(255,255,255,.90);
  color: rgba(30, 90, 168, 1);
}

.dsi-hero{
  position: relative;
  padding-top: 1rem;
}

.dsi-card, .dsi-card-glass, .dsi-mini-card{
  border: 1px solid var(--dsi-border);
  border-radius: 18px;
}

.dsi-card{
  background: var(--dsi-card);
}

.dsi-card-muted{
  background: rgba(15, 23, 42, .03);
}

.dsi-card-glass{
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(15, 23, 42, .10);
  border-radius: 22px;
  backdrop-filter: blur(18px);
}

.dsi-card-kicker{
  font-size: .8rem;
  color: rgba(255,255,255,.70);
  text-transform: uppercase;
  letter-spacing: .08em;
  margin-bottom: .5rem;
}

.dsi-checklist{ list-style:none; padding-left:0; margin:0; }
.dsi-checklist li{ display:flex; gap:.65rem; align-items:flex-start; padding:.45rem 0; color: rgba(15, 23, 42, .86);} 
.dsi-check{
  width: 20px; height: 20px; border-radius: 6px;
  background: rgba(34,211,238,.12);
  border: 1px solid rgba(34,211,238,.25);
  position: relative;
  margin-top: .12rem;
}
.dsi-check::after{
  content:"";
  position:absolute;
  left:6px; top:4px;
  width:7px; height:10px;
  border-right:2px solid rgba(34,211,238,.9);
  border-bottom:2px solid rgba(34,211,238,.9);
  transform: rotate(40deg);
}

.dsi-section{ border-top: 1px solid rgba(15, 23, 42, .06); }
.dsi-section-alt{ border-top: 1px solid rgba(15, 23, 42, .06); background: rgba(15, 23, 42, .02); }

.dsi-tile{
  display:block;
  height: 100%;
  padding: 1.25rem;
  border-radius: 18px;
  border: 1px solid rgba(15, 23, 42, .10);
  background: rgba(255,255,255,.80);
  text-decoration:none;
  color: var(--dsi-text);
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.dsi-tile:hover{
  transform: translateY(-2px);
  border-color: rgba(30, 90, 168, .25);
  box-shadow: 0 14px 40px rgba(15, 23, 42, .10);
}

.dsi-tile-title{ font-weight: 650; font-size: 1.15rem; }
.dsi-tile-sub{ color: rgba(15, 23, 42, .62); font-size: .95rem; }
.dsi-tile-body{ margin-top: .9rem; color: rgba(15, 23, 42, .76); }
.dsi-tile-cta{ margin-top: 1rem; color: rgba(30, 90, 168, .95); font-weight: 600; }

.dsi-mini-card{ background: rgba(255,255,255,.80); border: 1px solid rgba(15, 23, 42, .08); padding: 1.15rem 1.1rem; }
.dsi-mini-title{ font-weight: 650; margin-bottom: .25rem; }

.dsi-page-hero{ border-bottom: 1px solid rgba(255,255,255,.06); }

.dsi-metrics{ display:flex; gap: 1rem; flex-wrap: wrap; }
.dsi-metric{ padding: .75rem 1rem; border: 1px solid rgba(15, 23, 42, .10); border-radius: 16px; background: rgba(255,255,255,.70);} 
.dsi-metric-num{ font-weight: 650; }
.dsi-metric-label{ color: rgba(15, 23, 42, .60); font-size: .9rem; }

.dsi-cta-inner{
  border-radius: 22px;
  border: 1px solid rgba(15, 23, 42, .10);
  background:
    radial-gradient(700px 250px at 20% 30%, rgba(30, 90, 168, .12), transparent 65%),
    radial-gradient(700px 250px at 80% 10%, rgba(43, 139, 203, .10), transparent 60%),
    rgba(255,255,255,.85);
}

.dsi-footer{
  border-top: 1px solid rgba(15, 23, 42, .06);
  background: rgba(255,255,255,.75);
}

.dsi-link{ color: rgba(15, 23, 42, .72); text-decoration:none; }
.dsi-link:hover{ color: rgba(15, 23, 42, .92); text-decoration: underline; }

.dsi-input{
  background: rgba(255,255,255,.90);
  border: 1px solid rgba(15, 23, 42, .12);
  color: rgba(15, 23, 42, .92);
}
.dsi-input:focus{
  background: rgba(255,255,255,1);
  border-color: rgba(30, 90, 168, .45);
  box-shadow: 0 0 0 .25rem rgba(30, 90, 168, .12);
  color: rgba(15, 23, 42, .95);
}


.dsi-figure{ margin: 0; }
.dsi-figure-frame{
  border-radius: 18px;
  border: 1px solid rgba(15, 23, 42, .10);
  background: rgba(255,255,255,.85);
  overflow: hidden;
  box-shadow: 0 18px 50px rgba(15, 23, 42, .14);
}
.dsi-figure-img{ width: 100%; height: auto; display: block; }
.dsi-figure-caption{ margin-top: .5rem; color: rgba(15, 23, 42, .60); font-size: .9rem; }
