/**
 * TheAnhLive homepage DC parity overlay
 * SoT: reference/theanhlive-homepage-dc.html
 * Scope: body.home.tal-ds-saas
 */
body.home.tal-ds-saas {
  --tal-dc-bg: #F6F8FC;
  --tal-dc-text: #0B1A33;
  --tal-dc-muted: #5B6B84;
  --tal-dc-soft: #8494AC;
  --tal-dc-border: #E3E8F0;
  --tal-dc-accent: #0F62FE;
  --tal-dc-accent-hover: #0A4ACB;
  --tal-dc-accent-soft: #63A0FF;
  --tal-dc-green: #22A45D;
  --tal-dc-live: #3DDC84;
  --tal-dc-dark: #0A1733;
  --tal-dc-darker: #071227;
  --tal-dc-panel: #0D1B36;
  --tal-dc-max: 1240px;
  --tal-dc-font: "Be Vietnam Pro", system-ui, sans-serif;
  --tal-dc-mono: "IBM Plex Mono", ui-monospace, monospace;
  background: var(--tal-dc-bg);
  color: var(--tal-dc-text);
  font-family: var(--tal-dc-font);
  -webkit-font-smoothing: antialiased;
}

body.home.tal-ds-saas #main,
body.home.tal-ds-saas .page-wrapper,
body.home.tal-ds-saas .content-area {
  background: var(--tal-dc-bg);
}

body.home.tal-ds-saas a {
  color: var(--tal-dc-accent);
  text-decoration: none;
}
body.home.tal-ds-saas a:hover {
  color: var(--tal-dc-accent-hover);
}

/* Nav is in #wide-nav — overlay as one row (do NOT hide desktop nav) */
body.home.tal-ds-saas .header-wrapper {
  position: sticky;
  top: 0;
  z-index: 60;
  background: rgba(246, 248, 252, 0.86) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--tal-dc-border);
  box-shadow: none !important;
  height: 56px;
}
body.home.tal-ds-saas .header-main {
  min-height: 56px !important;
  height: 56px !important;
  position: relative;
  z-index: 2;
}
body.home.tal-ds-saas .header-main .header-inner.container {
  max-width: var(--tal-dc-max);
  padding: 0 24px !important;
  min-height: 56px;
  height: 56px;
  align-items: center;
}
body.home.tal-ds-saas .header-main .logo img,
body.home.tal-ds-saas .header-main .header-logo img {
  max-height: 30px !important;
  width: auto;
}
body.home.tal-ds-saas .header-bottom,
body.home.tal-ds-saas #wide-nav.header-bottom,
body.home.tal-ds-saas .header-wrapper .header-bottom {
  display: flex !important;
  visibility: visible !important;
  pointer-events: auto !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 56px !important;
  min-height: 56px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  z-index: 3;
  align-items: center;
}
body.home.tal-ds-saas .header-bottom .flex-row.container {
  max-width: var(--tal-dc-max);
  height: 56px;
  align-items: center;
  justify-content: center;
  padding: 0 200px 0 170px !important;
}
body.home.tal-ds-saas .header-bottom .nav > li > a {
  font-size: 14.5px !important;
  font-weight: 500 !important;
  color: #42536B !important;
  padding: 8px 0 !important;
}
body.home.tal-ds-saas .header-bottom .nav > li > a:hover,
body.home.tal-ds-saas .header-bottom .nav > li.active > a {
  color: var(--tal-dc-accent) !important;
}
@media (min-width: 850px) {
  body.home.tal-ds-saas .header-nav-main > li > a {
    font-size: 14.5px !important;
    font-weight: 500 !important;
    color: #42536B !important;
    padding: 8px 0 !important;
  }
  body.home.tal-ds-saas .header-nav-main > li > a:hover {
    color: var(--tal-dc-accent) !important;
  }
}
@media (max-width: 849px) {
  body.home.tal-ds-saas .header-bottom,
  body.home.tal-ds-saas #wide-nav.header-bottom {
    display: none !important;
  }
  body.home.tal-ds-saas .header-main {
    height: auto !important;
    min-height: 56px !important;
  }
}
body.home.tal-ds-saas .header-button .button,
body.home.tal-ds-saas .header-button a.button,
body.home.tal-ds-saas li.header-button-1 a.button,
body.home.tal-ds-saas .header-wrapper a.button.primary,
body.home.tal-ds-saas .header .header-button .button,
body.home.tal-ds-saas .header .header-button .button.success,
body.home.tal-ds-saas .header .header-button .button.primary,
body.home.tal-ds-saas .header .header-button-1 .button,
body.home.tal-ds-saas.tal-ds-v4 .header .header-button .button.primary {
  background: #0F62FE !important;
  background-color: #0F62FE !important;
  background-image: none !important;
  border-color: #0F62FE !important;
  color: #fff !important;
  border-radius: 9px !important;
  padding: 10px 18px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  box-shadow: 0 6px 18px rgba(15, 98, 254, 0.28) !important;
  white-space: nowrap;
  line-height: 1.2 !important;
}
body.home.tal-ds-saas .header-button .button:hover,
body.home.tal-ds-saas .header-wrapper a.button.primary:hover,
body.home.tal-ds-saas .header .header-button .button:hover,
body.home.tal-ds-saas .header .header-button .button.success:hover,
body.home.tal-ds-saas .header .header-button .button.primary:hover {
  background: #0A4ACB !important;
  background-color: #0A4ACB !important;
  background-image: none !important;
  border-color: #0A4ACB !important;
  color: #fff !important;
}

body.home.tal-ds-saas .header-nav-main.nav-dark > li > a {
  color: #42536B !important;
}

/* Hide cart / search chrome if present */
body.home.tal-ds-saas .header-cart,
body.home.tal-ds-saas .cart-item,
body.home.tal-ds-saas .header-search {
  display: none !important;
}

/* ---- DC shell ---- */
.tal-dc {
  background: var(--tal-dc-bg);
  color: var(--tal-dc-text);
  font-family: var(--tal-dc-font);
}
.tal-dc * { box-sizing: border-box; }
.tal-dc-wrap {
  max-width: var(--tal-dc-max);
  margin: 0 auto;
  padding-left: 24px;
  padding-right: 24px;
}
.tal-dc-mono { font-family: var(--tal-dc-mono); }
.tal-dc [data-reveal] {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .7s cubic-bezier(.16,1,.3,1), transform .7s cubic-bezier(.16,1,.3,1);
}
.tal-dc [data-reveal].is-in { opacity: 1; transform: none; }
.tal-dc [data-grow] {
  transform: scaleY(.04);
  transform-origin: bottom;
  transition: transform .9s cubic-bezier(.16,1,.3,1);
}
.tal-dc [data-grow].is-in { transform: scaleY(1); }

@keyframes tal-dc-dash { to { stroke-dashoffset: -220; } }
@keyframes tal-dc-pulse {
  0%,100% { opacity: 1; transform: scale(1); }
  50% { opacity: .35; transform: scale(1.6); }
}
@keyframes tal-dc-float {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
@keyframes tal-dc-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@keyframes tal-dc-sheen {
  0% { transform: translateX(-120%); }
  60%,100% { transform: translateX(220%); }
}

/* ---- Hero ---- */
.tal-dc-hero {
  background: linear-gradient(170deg, #071227 0%, #0B1E42 55%, #0A1733 100%);
  color: #fff;
  position: relative;
  overflow: hidden;
}
.tal-dc-hero__glow {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(900px 420px at 78% 8%, rgba(15,98,254,.34), transparent 65%),
    radial-gradient(620px 360px at 8% 92%, rgba(34,164,93,.22), transparent 70%);
  pointer-events: none;
}
.tal-dc-hero__grid {
  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: 64px 64px;
  -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,.7), transparent 85%);
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.7), transparent 85%);
  pointer-events: none;
}
.tal-dc-hero__inner {
  position: relative;
  max-width: var(--tal-dc-max);
  margin: 0 auto;
  padding: 64px 24px 72px;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: 56px;
  align-items: center;
}
.tal-dc-pill {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
  padding: 6px 13px;
  border-radius: 999px;
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #BFD4FF;
}
.tal-dc-pill__dot {
  position: relative;
  display: inline-block;
  width: 7px;
  height: 7px;
}
.tal-dc-pill__dot::before,
.tal-dc-pill__dot::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 99px;
  background: var(--tal-dc-live);
}
.tal-dc-pill__dot::before { animation: tal-dc-pulse 2.4s ease-in-out infinite; }
body.home.tal-ds-saas .tal-dc-hero h1,
body.home.tal-ds-saas .tal-dc .tal-dc-hero h1 {
  font-size: 60px !important;
  line-height: 1.04 !important;
  letter-spacing: -.03em;
  font-weight: 800 !important;
  margin: 20px 0 0 !important;
  color: #fff !important;
}
body.home.tal-ds-saas .tal-dc-hero h1 span {
  color: #63A0FF !important;
}
body.home.tal-ds-saas .tal-dc-flow h2,
body.home.tal-ds-saas .tal-dc-flow .tal-dc-h2,
body.home.tal-ds-saas .tal-dc-quote,
body.home.tal-ds-saas .tal-dc-cta h2,
body.home.tal-ds-saas .tal-dc-svc--blue h3,
body.home.tal-ds-saas .tal-dc-svc--dark h3 {
  color: #fff !important;
}
body.home.tal-ds-saas .tal-dc-flow .tal-dc-step h3 {
  color: #fff !important;
}
.tal-dc-hero__sub {
  font-size: 17.5px;
  line-height: 1.6;
  color: #B8C6DC;
  margin: 18px 0 0;
  max-width: 520px;
}
.tal-dc-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}
.tal-dc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 24px;
  border-radius: 10px;
  font-weight: 600;
  font-size: 15.5px;
  transition: background .2s, color .2s;
}
.tal-dc-btn--primary {
  background: var(--tal-dc-accent);
  color: #fff !important;
  box-shadow: 0 12px 30px rgba(15,98,254,.4);
}
.tal-dc-btn--primary:hover { background: #2C77FF; color: #fff !important; }
.tal-dc-btn--ghost {
  border: 1px solid rgba(255,255,255,.26);
  color: #fff !important;
  background: transparent;
}
.tal-dc-btn--ghost:hover { background: rgba(255,255,255,.08); color: #fff !important; }
.tal-dc-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 26px;
  margin-top: 34px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,.12);
}
.tal-dc-stats__v {
  font-family: var(--tal-dc-mono);
  font-size: 26px;
  font-weight: 600;
  color: #fff;
  letter-spacing: -.02em;
}
.tal-dc-stats__k {
  font-size: 12.5px;
  color: #8FA3C0;
  margin-top: 2px;
}

/* Dashboard */
.tal-dc-dash-wrap { position: relative; }
.tal-dc-dash-glow {
  position: absolute;
  inset: -14px;
  border-radius: 24px;
  background: linear-gradient(140deg, rgba(15,98,254,.35), rgba(34,164,93,.18));
  filter: blur(28px);
}
.tal-dc-dash {
  position: relative;
  background: var(--tal-dc-panel);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  padding: 20px;
  box-shadow: 0 30px 70px rgba(2,8,23,.55);
}
.tal-dc-dash__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.tal-dc-dash__title {
  font-size: 13.5px;
  font-weight: 600;
  color: #D6E2F5;
}
.tal-dc-live {
  display: flex;
  align-items: center;
  gap: 7px;
  font-family: var(--tal-dc-mono);
  font-size: 11.5px;
  color: var(--tal-dc-live);
  background: rgba(61,220,132,.12);
  padding: 4px 9px;
  border-radius: 99px;
}
.tal-dc-live i {
  width: 6px;
  height: 6px;
  border-radius: 99px;
  background: var(--tal-dc-live);
  animation: tal-dc-pulse 2s ease-in-out infinite;
  display: block;
}
.tal-dc-kpis {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 16px;
}
.tal-dc-kpi {
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 11px;
  padding: 11px 12px;
}
.tal-dc-kpi__l { font-size: 11.5px; color: #8FA3C0; }
.tal-dc-kpi__v {
  font-family: var(--tal-dc-mono);
  font-size: 20px;
  font-weight: 600;
  color: #fff;
  margin-top: 4px;
  letter-spacing: -.02em;
}
.tal-dc-kpi__d { font-size: 11px; color: var(--tal-dc-live); margin-top: 2px; }
.tal-dc-chart {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 13px;
  padding: 14px 14px 10px;
  margin-top: 12px;
}
.tal-dc-chart__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  font-size: 12.5px;
  color: #B8C6DC;
  font-weight: 500;
}
.tal-dc-chart__head b {
  font-family: var(--tal-dc-mono);
  font-weight: 600;
  color: var(--tal-dc-live);
}
.tal-dc-bars {
  display: flex;
  align-items: flex-end;
  gap: 7px;
  height: 104px;
  margin-top: 12px;
}
.tal-dc-bars__col {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  gap: 3px;
}
.tal-dc-bars__a {
  border-radius: 4px 4px 2px 2px;
  background: linear-gradient(180deg, #4C8DFF, #0F62FE);
}
.tal-dc-bars__g {
  border-radius: 2px;
  background: #22A45D;
}
.tal-dc-legend {
  display: flex;
  gap: 16px;
  margin-top: 10px;
  font-size: 11px;
  color: #8FA3C0;
}
.tal-dc-legend span {
  display: flex;
  align-items: center;
  gap: 6px;
}
.tal-dc-legend i {
  width: 8px;
  height: 8px;
  border-radius: 2px;
  display: block;
}
.tal-dc-ai {
  display: flex;
  align-items: center;
  gap: 10px;
  background: rgba(15,98,254,.12);
  border: 1px solid rgba(15,98,254,.3);
  border-radius: 11px;
  padding: 11px 13px;
  margin-top: 12px;
  animation: tal-dc-float 6s ease-in-out infinite;
  font-size: 12.5px;
  color: #D6E2F5;
  line-height: 1.45;
}
.tal-dc-ai__badge {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: var(--tal-dc-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  flex: 0 0 auto;
}

/* Ticker */
.tal-dc-ticker {
  position: relative;
  border-top: 1px solid rgba(255,255,255,.1);
  overflow: hidden;
}
.tal-dc-ticker__track {
  display: flex;
  width: max-content;
  animation: tal-dc-marquee 34s linear infinite;
}
.tal-dc-ticker__item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 26px;
  font-family: var(--tal-dc-mono);
  font-size: 12.5px;
  color: #7F94B4;
  white-space: nowrap;
}
.tal-dc-ticker__item i {
  width: 4px;
  height: 4px;
  border-radius: 99px;
  background: var(--tal-dc-accent);
  display: block;
}

/* ---- Sections shared ---- */
.tal-dc-sec {
  max-width: var(--tal-dc-max);
  margin: 0 auto;
  padding: 76px 24px 0;
}
.tal-dc-eyebrow {
  font-family: var(--tal-dc-mono);
  font-size: 12px;
  letter-spacing: .14em;
  color: var(--tal-dc-accent);
  font-weight: 600;
}
.tal-dc-eyebrow--light { color: var(--tal-dc-accent-soft); }
.tal-dc-h2 {
  font-size: 40px;
  line-height: 1.12;
  letter-spacing: -.025em;
  font-weight: 700;
  margin: 12px 0 0;
  color: inherit;
}
.tal-dc-lead {
  font-size: 16px;
  line-height: 1.65;
  color: var(--tal-dc-muted);
  margin: 0 0 6px;
}
.tal-dc-head-2 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  gap: 40px;
  align-items: end;
}

/* Pillars */
.tal-dc-pillars {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 30px;
}
.tal-dc-pillar {
  position: relative;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--tal-dc-border);
  border-radius: 16px;
  padding: 24px;
  display: block;
  color: inherit !important;
  transition: transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s, border-color .35s;
}
.tal-dc-pillar:hover {
  transform: translateY(-5px);
  box-shadow: 0 22px 44px rgba(11,26,51,.1);
  border-color: #C9D8F5;
  color: inherit !important;
}
.tal-dc-pillar__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.tal-dc-pillar__n {
  width: 40px;
  height: 40px;
  border-radius: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--tal-dc-mono);
  font-size: 15px;
  font-weight: 600;
}
.tal-dc-pillar__tag {
  font-family: var(--tal-dc-mono);
  font-size: 11px;
  letter-spacing: .12em;
  color: var(--tal-dc-soft);
}
.tal-dc-pillar h3 {
  font-size: 21px;
  font-weight: 700;
  margin: 18px 0 0;
  letter-spacing: -.015em;
}
.tal-dc-pillar p {
  font-size: 14.5px;
  line-height: 1.6;
  color: var(--tal-dc-muted);
  margin: 8px 0 0;
}
.tal-dc-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 16px;
}
.tal-dc-chips span {
  font-size: 12px;
  font-weight: 500;
  color: #42536B;
  background: #F2F5FA;
  border: 1px solid var(--tal-dc-border);
  padding: 4px 10px;
  border-radius: 99px;
}
.tal-dc-pillar__foot {
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px dashed var(--tal-dc-border);
  display: flex;
  align-items: baseline;
  justify-content: space-between;
}
.tal-dc-pillar__foot span { font-size: 12.5px; color: var(--tal-dc-soft); }
.tal-dc-pillar__foot b {
  font-family: var(--tal-dc-mono);
  font-size: 17px;
  font-weight: 600;
}

/* Pain */
.tal-dc-pain {
  background: #fff;
  border: 1px solid var(--tal-dc-border);
  border-radius: 20px;
  overflow: hidden;
}
.tal-dc-pain__intro { padding: 26px 28px 0; }
.tal-dc-pain__intro h2 {
  font-size: 34px;
  line-height: 1.15;
  letter-spacing: -.025em;
  font-weight: 700;
  margin: 10px 0 0;
}
.tal-dc-pain__intro p {
  font-size: 15.5px;
  color: var(--tal-dc-muted);
  margin: 8px 0 0;
}
.tal-dc-pain__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid var(--tal-dc-border);
  margin-top: 22px;
}
.tal-dc-pain__card {
  padding: 24px 22px 26px;
  border-right: 1px solid var(--tal-dc-border);
  display: block;
  color: inherit !important;
  transition: background .3s;
}
.tal-dc-pain__card:last-child { border-right: 0; }
.tal-dc-pain__card:hover { background: #F4F8FF; color: inherit !important; }
.tal-dc-pain__n {
  font-family: var(--tal-dc-mono);
  font-size: 24px;
  font-weight: 600;
  color: #C3CFE2;
}
.tal-dc-pain__card h3 {
  font-size: 16.5px;
  font-weight: 700;
  margin: 14px 0 0;
  line-height: 1.35;
}
.tal-dc-pain__card p {
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--tal-dc-muted);
  margin: 7px 0 0;
}
.tal-dc-pain__cta {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--tal-dc-accent);
  margin-top: 14px;
}

/* Workflow dark */
.tal-dc-flow {
  margin-top: 76px;
  background: var(--tal-dc-dark);
  color: #fff;
  position: relative;
  overflow: hidden;
}
.tal-dc-flow__glow {
  position: absolute;
  inset: 0;
  background: radial-gradient(700px 340px at 20% 0%, rgba(15,98,254,.26), transparent 70%);
  pointer-events: none;
}
.tal-dc-flow__inner {
  position: relative;
  max-width: var(--tal-dc-max);
  margin: 0 auto;
  padding: 68px 24px 72px;
}
.tal-dc-flow .tal-dc-lead { color: #A9BAD4; }
.tal-dc-steps-wrap { position: relative; margin-top: 38px; }
.tal-dc-pipeline {
  position: absolute;
  top: 26px;
  left: 0;
  width: 100%;
  height: 8px;
  overflow: visible;
}
.tal-dc-steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
}
.tal-dc-step__n {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  background: var(--tal-dc-panel);
  border: 1px solid rgba(255,255,255,.16);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--tal-dc-mono);
  font-size: 17px;
  font-weight: 600;
  color: var(--tal-dc-accent-soft);
}
.tal-dc-step h3 {
  font-size: 17px;
  font-weight: 700;
  margin: 16px 0 0;
  line-height: 1.3;
  color: #fff;
}
.tal-dc-step p {
  font-size: 13.5px;
  line-height: 1.6;
  color: #A9BAD4;
  margin: 7px 0 0;
}
.tal-dc-step__meta {
  font-family: var(--tal-dc-mono);
  font-size: 11.5px;
  color: var(--tal-dc-live);
  margin-top: 10px;
}
.tal-dc-flow-bottom {
  margin-top: 36px;
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
  gap: 16px;
}
.tal-dc-sheet {
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 16px;
  padding: 18px 20px;
}
.tal-dc-sheet__label {
  font-size: 13px;
  color: #8FA3C0;
  font-family: var(--tal-dc-mono);
  letter-spacing: .1em;
}
.tal-dc-sheet__table {
  margin-top: 14px;
  display: grid;
  gap: 1px;
  background: rgba(255,255,255,.08);
  border-radius: 9px;
  overflow: hidden;
  font-family: var(--tal-dc-mono);
  font-size: 12.5px;
}
.tal-dc-sheet__row {
  display: grid;
  grid-template-columns: 1.1fr 1fr .9fr .7fr;
  gap: 1px;
  background: rgba(255,255,255,.08);
}
.tal-dc-sheet__row > div {
  background: #0C1A34;
  padding: 9px 12px;
  color: #D6E2F5;
}
.tal-dc-sheet__row--head > div {
  background: #0F1F3E;
  color: #8FA3C0;
}
.tal-dc-outcome {
  background: linear-gradient(150deg, rgba(15,98,254,.2), rgba(34,164,93,.12));
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.tal-dc-outcome__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 16px;
}
.tal-dc-outcome__v {
  font-family: var(--tal-dc-mono);
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -.02em;
}
.tal-dc-outcome__k {
  font-size: 12.5px;
  color: #A9BAD4;
  margin-top: 2px;
  line-height: 1.35;
}
.tal-dc-outcome a {
  margin-top: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: var(--tal-dc-text) !important;
  padding: 12px 18px;
  border-radius: 10px;
  font-weight: 600;
  font-size: 14.5px;
}
.tal-dc-outcome a:hover { background: #E8F0FF; color: var(--tal-dc-text) !important; }

/* Services bento */
.tal-dc-services {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
  margin-top: 30px;
}
.tal-dc-svc {
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  transition: transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s;
  text-decoration: none !important;
}
.tal-dc-svc:hover {
  transform: translateY(-5px);
  box-shadow: 0 22px 44px rgba(11,26,51,.12);
}
.tal-dc-svc--span2 { grid-column: span 2; }
.tal-dc-svc--span3 { grid-column: span 3; }
.tal-dc-svc--light {
  background: #fff;
  border: 1px solid var(--tal-dc-border);
  color: var(--tal-dc-text) !important;
}
.tal-dc-svc--blue {
  background: var(--tal-dc-accent);
  border: 1px solid rgba(255,255,255,.28);
  color: #fff !important;
}
.tal-dc-svc--dark {
  background: var(--tal-dc-dark);
  border: 1px solid rgba(255,255,255,.16);
  color: #fff !important;
}
.tal-dc-svc__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.tal-dc-svc__tag {
  font-family: var(--tal-dc-mono);
  font-size: 11.5px;
  letter-spacing: .12em;
}
.tal-dc-svc__badge {
  font-size: 11.5px;
  font-weight: 600;
  padding: 3px 9px;
  border-radius: 99px;
}
.tal-dc-svc h3 {
  font-size: 20px;
  font-weight: 700;
  margin: 14px 0 0;
  letter-spacing: -.015em;
  color: inherit;
}
.tal-dc-svc p {
  font-size: 14.5px;
  line-height: 1.6;
  margin: 8px 0 0;
  flex: 1;
}
.tal-dc-svc__foot {
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid currentColor;
  border-top-color: inherit;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  opacity: .95;
}
.tal-dc-svc__foot span { font-size: 12.5px; }
.tal-dc-svc__foot b {
  font-family: var(--tal-dc-mono);
  font-size: 15px;
  font-weight: 600;
}
.tal-dc-note {
  font-size: 14px;
  color: var(--tal-dc-muted);
  margin: 18px 0 0;
}

/* Cases */
.tal-dc-cases {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 30px;
}
.tal-dc-case {
  background: #fff;
  border: 1px solid var(--tal-dc-border);
  border-radius: 16px;
  overflow: hidden;
  display: block;
  color: inherit !important;
  transition: transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s;
}
.tal-dc-case:hover {
  transform: translateY(-5px);
  box-shadow: 0 22px 44px rgba(11,26,51,.1);
  color: inherit !important;
}
.tal-dc-case__viz {
  position: relative;
  height: 132px;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  padding: 16px;
}
.tal-dc-case__sheen {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 60%;
  background: linear-gradient(100deg, transparent, rgba(255,255,255,.22), transparent);
  animation: tal-dc-sheen 5s ease-in-out infinite;
}
.tal-dc-spark {
  position: relative;
  display: flex;
  align-items: flex-end;
  gap: 6px;
  height: 74px;
  width: 100%;
}
.tal-dc-spark > i {
  flex: 1;
  background: rgba(255,255,255,.62);
  border-radius: 3px 3px 1px 1px;
  display: block;
}
.tal-dc-case__body { padding: 20px; }
.tal-dc-case__tag {
  font-family: var(--tal-dc-mono);
  font-size: 11.5px;
  letter-spacing: .12em;
  color: var(--tal-dc-accent);
}
.tal-dc-case h3 {
  font-size: 18px;
  font-weight: 700;
  margin: 10px 0 0;
  line-height: 1.3;
}
.tal-dc-case p {
  font-size: 14px;
  line-height: 1.55;
  color: var(--tal-dc-muted);
  margin: 8px 0 0;
}
.tal-dc-case__stats {
  display: flex;
  gap: 18px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px dashed var(--tal-dc-border);
}
.tal-dc-case__stats b {
  font-family: var(--tal-dc-mono);
  font-size: 16px;
  font-weight: 600;
  color: var(--tal-dc-text);
  display: block;
}
.tal-dc-case__stats span {
  font-size: 11.5px;
  color: var(--tal-dc-soft);
}

/* Method */
.tal-dc-method {
  background: #fff;
  border: 1px solid var(--tal-dc-border);
  border-radius: 20px;
  padding: 30px;
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 2fr);
  gap: 36px;
}
.tal-dc-method h2 {
  font-size: 32px;
  line-height: 1.15;
  letter-spacing: -.025em;
  font-weight: 700;
  margin: 12px 0 0;
}
.tal-dc-method > div > p {
  font-size: 15px;
  line-height: 1.6;
  color: var(--tal-dc-muted);
  margin: 12px 0 0;
}
.tal-dc-method .tal-dc-btn {
  margin-top: 20px;
  padding: 12px 20px;
  font-size: 14.5px;
  box-shadow: none;
}
.tal-dc-method-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  background: var(--tal-dc-border);
  border: 1px solid var(--tal-dc-border);
  border-radius: 14px;
  overflow: hidden;
}
.tal-dc-method-cell {
  background: #fff;
  padding: 22px;
}
.tal-dc-method-cell__meta {
  display: flex;
  align-items: center;
  gap: 10px;
}
.tal-dc-method-cell__n {
  font-family: var(--tal-dc-mono);
  font-size: 12px;
  font-weight: 600;
  color: var(--tal-dc-accent);
  background: #E8F0FF;
  padding: 3px 9px;
  border-radius: 6px;
}
.tal-dc-method-cell__t { font-size: 12px; color: var(--tal-dc-soft); }
.tal-dc-method-cell h3 {
  font-size: 17px;
  font-weight: 700;
  margin: 12px 0 0;
}
.tal-dc-method-cell p {
  font-size: 14px;
  line-height: 1.55;
  color: var(--tal-dc-muted);
  margin: 6px 0 0;
}

/* Team + quote */
.tal-dc-social {
  max-width: var(--tal-dc-max);
  margin: 0 auto;
  padding: 60px 24px 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr);
  gap: 18px;
}
.tal-dc-team {
  background: #fff;
  border: 1px solid var(--tal-dc-border);
  border-radius: 18px;
  padding: 26px;
}
.tal-dc-team__list {
  display: grid;
  gap: 14px;
  margin-top: 18px;
}
.tal-dc-person {
  display: flex;
  gap: 14px;
  align-items: center;
}
.tal-dc-person img {
  width: 72px;
  height: 72px;
  border-radius: 99px;
  object-fit: cover;
  flex: 0 0 72px;
}
.tal-dc-person__name { font-size: 16px; font-weight: 700; }
.tal-dc-person__role {
  font-size: 12.5px;
  color: var(--tal-dc-accent);
  font-weight: 600;
}
.tal-dc-person__desc {
  font-size: 13.5px;
  color: var(--tal-dc-muted);
  margin-top: 3px;
  line-height: 1.45;
}
.tal-dc-quote {
  background: var(--tal-dc-dark);
  color: #fff;
  border-radius: 18px;
  padding: 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
.tal-dc-quote__glow {
  position: absolute;
  inset: 0;
  background: radial-gradient(500px 240px at 90% 10%, rgba(34,164,93,.22), transparent 70%);
}
.tal-dc-quote__mark {
  font-size: 52px;
  line-height: .6;
  color: var(--tal-dc-accent-soft);
  font-weight: 800;
}
.tal-dc-quote p {
  font-size: 19px;
  line-height: 1.6;
  margin: 16px 0 0;
  position: relative;
}
.tal-dc-quote__who {
  font-size: 13.5px;
  color: #A9BAD4;
  margin-top: 18px;
  position: relative;
}

/* Final CTA */
.tal-dc-cta {
  max-width: var(--tal-dc-max);
  margin: 76px auto 0;
  padding: 0 24px;
}
.tal-dc-cta__box {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #0F62FE 0%, #0A3FB0 58%, #0B2A6B 100%);
  border-radius: 22px;
  padding: 52px 44px;
  color: #fff;
}
.tal-dc-cta__grid-bg {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.07) 1px, transparent 1px);
  background-size: 52px 52px;
  -webkit-mask-image: radial-gradient(600px 300px at 80% 20%, #000, transparent);
  mask-image: radial-gradient(600px 300px at 80% 20%, #000, transparent);
}
.tal-dc-cta__inner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: 40px;
  align-items: center;
}
.tal-dc-cta h2 {
  font-size: 38px;
  line-height: 1.12;
  letter-spacing: -.025em;
  font-weight: 800;
  margin: 0;
  color: #fff;
}
.tal-dc-cta__sub {
  font-size: 16.5px;
  line-height: 1.6;
  color: #D6E4FF;
  margin: 14px 0 0;
  max-width: 520px;
}
.tal-dc-btn--white {
  background: #fff;
  color: #0B2A6B !important;
  font-weight: 700;
}
.tal-dc-btn--white:hover { background: #E8F0FF; color: #0B2A6B !important; }
.tal-dc-btn--outline-w {
  border: 1px solid rgba(255,255,255,.45);
  color: #fff !important;
  background: transparent;
}
.tal-dc-btn--outline-w:hover { background: rgba(255,255,255,.12); color: #fff !important; }
.tal-dc-deliver {
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 16px;
  padding: 22px;
}
.tal-dc-deliver__label {
  font-family: var(--tal-dc-mono);
  font-size: 11.5px;
  letter-spacing: .12em;
  color: #D6E4FF;
}
.tal-dc-deliver__list {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}
.tal-dc-deliver__item {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  font-size: 14.5px;
  line-height: 1.45;
}
.tal-dc-deliver__item i {
  flex: 0 0 18px;
  height: 18px;
  margin-top: 2px;
  border-radius: 99px;
  background: var(--tal-dc-live);
  color: #08331B;
  font-size: 11px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  font-style: normal;
}

/* Footer polish */
body.home.tal-ds-saas .footer-wrapper,
body.home.tal-ds-saas #footer {
  background: var(--tal-dc-darker) !important;
  color: #A9BAD4;
}
body.home.tal-ds-saas .absolute-footer {
  background: var(--tal-dc-darker) !important;
  border-top: 1px solid rgba(255,255,255,.1);
  color: #A9BAD4;
}
body.home.tal-ds-saas .footer-wrapper a { color: #A9BAD4; }
body.home.tal-ds-saas .footer-wrapper a:hover { color: #fff; }

.tal-dc-spacer { height: 72px; }

/* Responsive */
@media (max-width: 1040px) {
  .tal-dc-hero__inner,
  .tal-dc-head-2,
  .tal-dc-flow-bottom,
  .tal-dc-method,
  .tal-dc-social,
  .tal-dc-cta__inner {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .tal-dc-pillars,
  .tal-dc-cases { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .tal-dc-pain__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .tal-dc-services { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .tal-dc-svc--span2,
  .tal-dc-svc--span3 { grid-column: span 1 !important; }
  .tal-dc-pipeline { display: none !important; }
  .tal-dc-steps { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 680px) {
  .tal-dc-hero h1 { font-size: 38px !important; }
  .tal-dc-h2 { font-size: 28px !important; }
  .tal-dc-pillars,
  .tal-dc-pain__grid,
  .tal-dc-cases,
  .tal-dc-services,
  .tal-dc-steps,
  .tal-dc-method-grid,
  .tal-dc-outcome__grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .tal-dc-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .tal-dc-cta__box { padding: 30px 20px !important; }
  .tal-dc-pain__card { border-right: 0; border-bottom: 1px solid var(--tal-dc-border); }
  .tal-dc-btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .tal-dc [data-reveal],
  .tal-dc [data-grow] {
    opacity: 1 !important;
    transform: none !important;
  }
  .tal-dc-ticker__track,
  .tal-dc-ai,
  .tal-dc-case__sheen,
  .tal-dc-pill__dot::before,
  .tal-dc-live i {
    animation: none !important;
  }
}
