/* ============================================================
   DIGITAL GROWTHSCALE — SERVICES PAGE-SPECIFIC STYLES
   Load order: dgs-common.css FIRST, then this file.
   ============================================================ */

#dgs-services-hero {
  padding-top: 9rem;
  padding-bottom: 6rem;
  text-align: center;
  background: var(--bg-deep-navy);
  position: relative;
}

#dgs-services-hero .dgs-hero-content {
  max-width: 1140px;
  margin: 0 auto;
}

#dgs-services-hero h1 {
  max-width: 1140px;
  margin: 0 auto 1.5rem;
}

/* Pillar Cards Row */
.dgs-services-pillars-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.2rem;
  margin-top: 4rem;
  margin-bottom: 6rem;
}

@media (min-width: 768px) {
  .dgs-services-pillars-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* Custom Pillar Cards */
.dgs-pillar-card {
  position: relative;
  background: var(--bg-dark-navy);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-xl);
  padding: 3rem 2.2rem 2.8rem;
  transition: transform 0.4s var(--ease-out), border-color 0.4s var(--ease-out), box-shadow 0.4s var(--ease-out);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 380px;
}

.dgs-pillar-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 40px -15px rgba(10, 31, 51, 0.5);
}

.dgs-pillar-card[data-accent="teal"]:hover { border-color: rgba(0, 179, 159, 0.35); }
.dgs-pillar-card[data-accent="blue"]:hover { border-color: rgba(45, 127, 249, 0.35); }
.dgs-pillar-card[data-accent="amber"]:hover { border-color: rgba(245, 166, 35, 0.35); }

.dgs-pillar-card-eyebrow {
  font-family: var(--font-body);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 1.25rem;
  display: block;
}

.dgs-pillar-card[data-accent="teal"] .dgs-pillar-card-eyebrow { color: var(--action-teal); }
.dgs-pillar-card[data-accent="blue"] .dgs-pillar-card-eyebrow { color: var(--dgs-blue); }
.dgs-pillar-card[data-accent="amber"] .dgs-pillar-card-eyebrow { color: var(--dgs-amber); }

.dgs-pillar-card h3 {
  font-family: var(--font-heading);
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--text-white);
  margin: 0 0 0.8rem 0;
  line-height: 1.25;
}

.dgs-pillar-card p {
  font-family: var(--font-body);
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--text-secondary);
  margin-bottom: 2rem;
}

.dgs-pillar-card .dgs-promise-link {
  margin-top: auto;
}

/* Detailed Solutions Grid Block */
.dgs-service-detail-section {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  padding: 6rem 0;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

@media (min-width: 900px) {
  .dgs-service-detail-section {
    grid-template-columns: 1.15fr 0.85fr;
  }
  .dgs-service-detail-section.alternate {
    grid-template-columns: 0.85fr 1.15fr;
  }
}

/* Media Column styling */
.dgs-service-img-col {
  position: relative;
  border-radius: var(--radius-xl) var(--radius-md) var(--radius-xl) var(--radius-xl);
  overflow: hidden;
  height: 380px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 20px 40px rgba(10, 31, 51, 0.4);
}

@media (max-width: 768px) {
  .dgs-service-img-col {
    height: 250px;
  }
}

.dgs-service-img-col img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  mix-blend-mode: luminosity;
  filter: grayscale(1) contrast(1.1);
  transition: filter 0.6s ease, mix-blend-mode 0.6s ease, transform 0.6s ease;
}

.dgs-service-img-col:hover img {
  filter: grayscale(0) contrast(1.05);
  mix-blend-mode: normal;
  transform: scale(1.03);
}

/* Diagonal Overlay on Image */
.dgs-service-img-col::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(135deg, rgba(10, 31, 51, 0.3) 0%, rgba(10, 31, 51, 0.8) 100%);
  pointer-events: none;
}

/* Content Column styling */
.dgs-service-content-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.dgs-service-number-row {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-bottom: 1.25rem;
}

.dgs-service-num {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--action-teal);
  line-height: 1;
}

.dgs-service-content-col h3 {
  font-family: var(--font-heading);
  font-size: clamp(1.8rem, 3.5vw, 2.4rem);
  font-weight: 700;
  color: var(--text-white);
  line-height: 1.2;
  margin: 0 0 1rem 0;
  letter-spacing: -0.02em;
}

.dgs-service-tagline {
  font-family: var(--font-body);
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.5;
  color: var(--action-teal);
  margin-bottom: 1.25rem;
}

.dgs-service-desc {
  font-family: var(--font-body);
  font-size: 0.98rem;
  line-height: 1.7;
  color: var(--text-secondary);
  margin-bottom: 2rem;
}

/* Best For box */
.dgs-service-best-box {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: var(--radius-lg);
  padding: 1.5rem;
  width: 100%;
}

.dgs-best-label {
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--action-teal);
  margin-bottom: 0.5rem;
}

.dgs-best-text {
  font-family: var(--font-body);
  font-size: 0.92rem;
  line-height: 1.6;
  color: var(--text-secondary);
  margin: 0;
}

/* Checklist box */
.dgs-pillar-list {
  list-style: none;
  margin: 0 0 1.5rem 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  width: 100%;
}

.dgs-pillar-list li {
  display: block;
}

.dgs-pillar-list li a {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding: 0.55rem 0.8rem;
  border-radius: var(--radius-md);
  font-family: var(--font-body);
  font-size: 0.92rem;
  font-weight: 550;
  color: rgba(255, 255, 255, 0.82);
  line-height: 1.55;
  text-decoration: none;
  background-color: transparent;
  transition: all 0.25s var(--ease-out);
}

.dgs-pillar-list li a::before {
  content: '';
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: var(--radius-sm);
  border: 1.5px solid rgba(255, 255, 255, 0.35);
  background-color: rgba(255, 255, 255, 0.08);
  flex-shrink: 0;
  transition: all 0.25s var(--ease-out);
}

/* Checklist items with colored indicators */
.dgs-pillar-card[data-accent="teal"] .dgs-pillar-list li a::before {
  border-color: rgba(0, 179, 159, 0.6);
  background-color: rgba(0, 179, 159, 0.15);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300b39f' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
  background-size: 10px 10px;
  background-position: center;
  background-repeat: no-repeat;
}

.dgs-pillar-card[data-accent="blue"] .dgs-pillar-list li a::before {
  border-color: rgba(45, 127, 249, 0.6);
  background-color: rgba(45, 127, 249, 0.15);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232d7ff9' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
  background-size: 10px 10px;
  background-position: center;
  background-repeat: no-repeat;
}

.dgs-pillar-card[data-accent="amber"] .dgs-pillar-list li a::before {
  border-color: rgba(245, 166, 35, 0.6);
  background-color: rgba(245, 166, 35, 0.15);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5a623' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
  background-size: 10px 10px;
  background-position: center;
  background-repeat: no-repeat;
}

.dgs-pillar-card[data-accent="teal"] .dgs-pillar-list li a:hover {
  color: #ffffff;
  background-color: rgba(0, 179, 159, 0.08);
  border-left-color: var(--action-teal);
  padding-left: 1rem;
}

.dgs-pillar-card[data-accent="blue"] .dgs-pillar-list li a:hover {
  color: #ffffff;
  background-color: rgba(45, 127, 249, 0.08);
  border-left-color: var(--dgs-blue);
  padding-left: 1rem;
}

.dgs-pillar-card[data-accent="amber"] .dgs-pillar-list li a:hover {
  color: #ffffff;
  background-color: rgba(245, 166, 35, 0.08);
  border-left-color: var(--dgs-amber);
  padding-left: 1rem;
}

/* AEO Snippet Callout Styles */
.dgs-aeo-snippet {
  background: rgba(0, 179, 159, 0.04);
  border-left: 4px solid var(--action-teal);
  padding: 1.8rem 2.2rem;
  border-radius: 0 var(--radius-xl) var(--radius-xl) 0;
  margin: 3rem 0;
  text-align: left;
}

.dgs-aeo-snippet p {
  font-size: 1.15rem;
  line-height: 1.65;
  color: var(--text-white);
  font-weight: 500;
  margin: 0;
}

/* ============================================================
   SOLUTIONS 3.0 — ECOSYSTEM OVERVIEW (LIGHT) + SOLUTION GROUP CARDS
   Ecosystem intro is a WHITE section with a connected product map.
   Solution groups reuse the index.html .dgs-fsol-card component in a
   static grid (no carousel).
   ============================================================ */

/* ---------- Ecosystem overview (white section) ---------- */
.dgs-eco {
  background: var(--bg-white);
  padding-top: clamp(9rem, 14vw, 13rem);
  padding-block: clamp(9rem, 14vw, 13rem) clamp(3.5rem, 7vw, 6rem);
  position: relative;
}

.dgs-eco-head {
  max-width: 820px;
}

.dgs-eco-eyebrow {
  display: inline-block;
  font-family: var(--font-body);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--action-teal);
  margin-bottom: 1.1rem;
}

.dgs-eco-title {
  font-family: var(--font-heading);
  font-size: clamp(1.9rem, 4vw, 2.9rem);
  font-weight: 700;
  line-height: 1.18;
  letter-spacing: -0.02em;
  color: var(--text-dark-primary);
  margin: 0 0 1.4rem 0;
}

.dgs-eco-lead {
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.7;
  color: var(--text-dark-muted);
  max-width: 62ch;
  margin: 0;
}

/* Connected product map */
.dgs-eco-map {
  margin: clamp(3rem, 6vw, 4.5rem) 0 clamp(2.5rem, 5vw, 3.5rem);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
}

.dgs-eco-tier {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  padding: 1.8rem;
  border: 1px solid var(--surface-border-neutral);
  border-radius: var(--radius-xl);
  background: #ffffff;
  box-shadow: 0 12px 30px -20px rgba(10, 31, 51, 0.28);
  position: relative;
}

@media (min-width: 860px) {
  .dgs-eco-tier {
    grid-template-columns: 0.62fr 1.38fr;
    gap: 2.5rem;
    align-items: center;
    padding: 2rem 2.4rem;
  }
}

.dgs-eco-tier[data-accent="teal"] { border-left: 3px solid var(--action-teal); }
.dgs-eco-tier[data-accent="blue"] { border-left: 3px solid var(--dgs-blue); }
.dgs-eco-tier[data-accent="amber"] { border-left: 3px solid var(--dgs-amber); }

.dgs-eco-tier-label {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.dgs-eco-tier-step {
  font-family: var(--font-display);
  font-size: 0.85rem;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.dgs-eco-tier[data-accent="teal"] .dgs-eco-tier-step { color: var(--action-teal); }
.dgs-eco-tier[data-accent="blue"] .dgs-eco-tier-step { color: var(--dgs-blue); }
.dgs-eco-tier[data-accent="amber"] .dgs-eco-tier-step { color: var(--dgs-amber); }

.dgs-eco-tier-name {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--text-dark-primary);
  line-height: 1.1;
}

.dgs-eco-tier-verb {
  font-family: var(--font-body);
  font-size: 0.9rem;
  color: var(--text-dark-muted);
}

.dgs-eco-nodes {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.dgs-eco-node {
  display: inline-flex;
  align-items: center;
  padding: 0.6rem 1rem;
  border-radius: var(--radius-full);
  font-family: var(--font-body);
  font-size: 0.86rem;
  font-weight: 550;
  line-height: 1.3;
  color: var(--text-dark-primary);
  text-decoration: none;
  background: #F0F4F8;
  border: 1px solid var(--surface-border-neutral);
  transition: transform 0.35s var(--ease-out), border-color 0.35s var(--ease-out), background 0.35s var(--ease-out), color 0.35s var(--ease-out);
}

.dgs-eco .dgs-eco-node { color: var(--text-dark-primary); }

.dgs-eco-tier[data-accent="teal"] .dgs-eco-node:hover { border-color: var(--action-teal); background: rgba(0, 179, 159, 0.1); color: var(--text-dark-primary); transform: translateY(-2px); }
.dgs-eco-tier[data-accent="blue"] .dgs-eco-node:hover { border-color: var(--dgs-blue); background: rgba(45, 127, 249, 0.1); color: var(--text-dark-primary); transform: translateY(-2px); }
.dgs-eco-tier[data-accent="amber"] .dgs-eco-node:hover { border-color: var(--dgs-amber); background: rgba(245, 166, 35, 0.12); color: var(--text-dark-primary); transform: translateY(-2px); }

/* Flow connector between tiers */
.dgs-eco-flow {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 46px;
  color: var(--dgs-steel);
  opacity: 0.55;
}

.dgs-eco-flow svg {
  width: 22px;
  height: 22px;
}

/* AEO snippet re-styled for the white section */
.dgs-eco .dgs-aeo-snippet {
  max-width: 900px;
  background: rgba(0, 179, 159, 0.06);
  border-left: 4px solid var(--action-teal);
}


.dgs-sol-groups-head .dgs-eyebrow {
  display: inline-block;
  font-family: var(--font-body);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--action-teal);
  margin-bottom: 0.9rem;
}

.dgs-sol-groups-head h2 {
  font-family: var(--font-heading);
  font-size: clamp(1.9rem, 4vw, 2.8rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--text-dark-primary);
  margin: 0;
}

.dgs-sol-groups-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}

@media (min-width: 720px) {
  .dgs-sol-groups-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1040px) {
  .dgs-sol-groups-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* ============================================================
   FEATURED SOLUTIONS CARD GRID — duplicated verbatim from dgs-index.css
   so this page no longer depends on dgs-index.css being loaded.
   ============================================================ */

/* ---- Growth-hub-style expanding accordion (light / white theme) ---- */
.dgs-fsol-grid {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 100%;
}

@media (min-width: 900px) {
  .dgs-fsol-grid {
    flex-direction: row;
    height: 560px;
    gap: 1.5rem;
  }
}

/* Panel — dark navy card, image washed with navy gradient, content anchored to the bottom */
.dgs-fsol-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: var(--radius-xl);
  background: #0A1F33;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 10px 30px -18px rgba(0, 0, 0, 0.4);
  padding: 2.4rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 340px;
  transition: border-color 0.4s ease,
              box-shadow 0.4s ease;
  z-index: 1;
}

/* Decorative top accent line that grows on hover */
.dgs-fsol-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 4px;
  transition: width 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  z-index: 10;
}
.dgs-fsol-card[data-accent="teal"]::before { background: var(--action-teal); }
.dgs-fsol-card[data-accent="blue"]::before { background: var(--dgs-blue); }
.dgs-fsol-card[data-accent="amber"]::before { background: var(--dgs-amber); }

@media (min-width: 900px) {
  .dgs-fsol-card {
    flex: 1;
    min-height: auto;
  }
}

/* Compact padding at tablet/narrow desktop widths to prevent text wrap issues */
@media (min-width: 900px) and (max-width: 1099px) {
  .dgs-fsol-card {
    padding: 1.8rem 1.4rem;
  }
}

/* Hover styles for non-touch pointer devices */
@media (hover: hover) {
  html:not(.dgs-is-touch) .dgs-fsol-card:hover {
    border-color: var(--action-teal);
    box-shadow: 0 24px 48px -20px rgba(0, 179, 159, 0.28);
  }
  html:not(.dgs-is-touch) .dgs-fsol-card[data-accent="blue"]:hover {
    border-color: var(--dgs-blue);
    box-shadow: 0 24px 48px -20px rgba(45, 127, 249, 0.28);
  }
  html:not(.dgs-is-touch) .dgs-fsol-card[data-accent="amber"]:hover {
    border-color: var(--dgs-amber);
    box-shadow: 0 24px 48px -20px rgba(245, 166, 35, 0.28);
  }
  html:not(.dgs-is-touch) .dgs-fsol-card:hover::before {
    width: 100%;
  }
}

/* Full-bleed image behind the content, washed dark navy so the image fades gracefully into dark navy */
.dgs-fsol-card-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.dgs-fsol-card-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0 !important;
  filter: grayscale(1) contrast(1.05);
  transition: filter 0.65s ease, transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.dgs-fsol-card-bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom,
    rgba(10, 31, 51, 0.25) 0%,
    rgba(10, 31, 51, 0.75) 40%,
    rgba(10, 31, 51, 0.95) 75%,
    #0A1F33 100%);
}

@media (hover: hover) {
  html:not(.dgs-is-touch) .dgs-fsol-card:hover .dgs-fsol-card-bg img {
    filter: grayscale(0) contrast(1.02);
    transform: scale(1.04) translate(-4px, -4px);
  }
}

/* On touch devices, keep images colored and static */
html.dgs-is-touch .dgs-fsol-card-bg img {
  filter: grayscale(0) contrast(1.02);
}

/* Card body — anchored to the bottom of the panel, above the image wash */
.dgs-fsol-card-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.65rem;
  width: 100%;
  z-index: 2;
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

@media (hover: hover) {
  html:not(.dgs-is-touch) .dgs-fsol-card:hover .dgs-fsol-card-inner {
    transform: translateY(-4px);
  }
}

/* Collapsed detail (desc + solution list + CTA) — revealed on hover, like the
   Growth Hub panels. Grid-rows 0fr -> 1fr gives a smooth eased reveal. */
.dgs-fsol-reveal {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  width: 100%;
  transform: translateY(10px);
  transition: grid-template-rows 0.55s cubic-bezier(0.16, 1, 0.3, 1),
              opacity 0.45s cubic-bezier(0.16, 1, 0.3, 1) 0.05s,
              transform 0.5s cubic-bezier(0.16, 1, 0.3, 1) 0.05s;
}

.dgs-fsol-reveal-in {
  overflow: hidden;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  padding-top: 0.9rem;
}

@media (hover: hover) {
  html:not(.dgs-is-touch) .dgs-fsol-card:hover .dgs-fsol-reveal {
    grid-template-rows: 1fr;
    opacity: 1;
    transform: translateY(0);
  }
  /* Slide explore arrow to the right on card hover */
  html:not(.dgs-is-touch) .dgs-fsol-card:hover .dgs-promise-link .dgs-btn-icon {
    transform: translateX(6px);
  }
}

/* Keep detail always visible on touch-only devices */
html.dgs-is-touch .dgs-fsol-reveal {
  grid-template-rows: 1fr;
  opacity: 1;
  transform: none;
}

/* Keep active/manual class triggers */
.dgs-fsol-card.active .dgs-fsol-reveal {
  grid-template-rows: 1fr;
  opacity: 1;
  transform: translateY(0);
}

/* Mobile: stacked cards, detail always visible (no hover to trigger reveal) */
@media (max-width: 899px) {
  .dgs-fsol-card {
    min-height: 480px;
    padding-top: 18rem;
  }
  .dgs-fsol-reveal {
    grid-template-rows: 1fr;
    opacity: 1;
    transform: none;
  }
}

/* Eyebrow — accent per pillar */
.dgs-pillar-eyebrow {
  font-family: var(--font-body);
  font-size: 0.74rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.13em;
  color: var(--action-teal);
  margin-bottom: 0.1rem;
}

.dgs-fsol-card[data-accent="blue"] .dgs-pillar-eyebrow { color: var(--dgs-blue); }
.dgs-fsol-card[data-accent="amber"] .dgs-pillar-eyebrow { color: var(--dgs-amber); }

.dgs-fsol-title {
  font-family: var(--font-heading);
  font-weight: 700;
  color: #ffffff;
  font-size: 1.45rem;
  line-height: 1.2;
  letter-spacing: -0.01em;
  margin: 0;
  /* Prevent mid-word breaks for capability development title */
  word-break: keep-all;
  overflow-wrap: normal;
  hyphens: none;
}

.dgs-fsol-desc {
  font-family: var(--font-body);
  font-size: 0.9rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.82);
  margin: 0;
  max-width: 38ch;
}

/* Chevron marker, no container (fsol variant) — overrides the circular
   badge from the unscoped .dgs-pillar-list li a::before rule above via
   higher specificity, since .dgs-fsol-card shares that base rule with
   .dgs-pillar-card. */
.dgs-fsol-card .dgs-pillar-list li a::before {
  width: 14px;
  height: 14px;
  border: none;
  border-radius: 0;
  background-color: transparent;
  background-size: 14px 14px;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 0.25s var(--ease-out);
}

.dgs-fsol-card[data-accent="teal"] .dgs-pillar-list li a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300B39F' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 6 15 12 9 18'/%3E%3C/svg%3E");
}

.dgs-fsol-card[data-accent="blue"] .dgs-pillar-list li a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232D7FF9' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 6 15 12 9 18'/%3E%3C/svg%3E");
}

.dgs-fsol-card[data-accent="amber"] .dgs-pillar-list li a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F5A623' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 6 15 12 9 18'/%3E%3C/svg%3E");
}

/* Hover — chevron nudges forward (fsol variant) */
.dgs-fsol-card[data-accent="teal"] .dgs-pillar-list li a:hover::before,
.dgs-fsol-card[data-accent="blue"] .dgs-pillar-list li a:hover::before,
.dgs-fsol-card[data-accent="amber"] .dgs-pillar-list li a:hover::before {
  transform: translateX(3px);
}

/* Hover — plain list rows, accent text + slight shift (fsol variant, no container box) */
.dgs-fsol-card[data-accent="teal"] .dgs-pillar-list li a:hover {
  color: var(--action-teal);
  gap: 1rem;
}

.dgs-fsol-card[data-accent="blue"] .dgs-pillar-list li a:hover {
  color: var(--dgs-blue);
  gap: 1rem;
}

.dgs-fsol-card[data-accent="amber"] .dgs-pillar-list li a:hover {
  color: var(--dgs-amber);
  gap: 1rem;
}

/* Explore link pinned to the bottom, accent per pillar */
.dgs-fsol-card-inner .dgs-promise-link {
  align-self: flex-start;
}

.dgs-fsol-card[data-accent="blue"] .dgs-promise-link { color: var(--dgs-blue) !important; }
.dgs-fsol-card[data-accent="blue"] .dgs-promise-link::after { background-color: var(--dgs-blue); }
.dgs-fsol-card[data-accent="amber"] .dgs-promise-link { color: var(--dgs-amber) !important; }
.dgs-fsol-card[data-accent="amber"] .dgs-promise-link::after { background-color: var(--dgs-amber); }

/* ============================================================
   INLINE STYLES EXTRACTED FROM HTML (migrated from style="" attrs)
   ============================================================ */
.dgs-il-8718819c8b {
  --dgs-duotone-img:url('https://assets.cdn.filesafe.space/UAA13luwQZmtw8ObS1Su/media/6a7d6cb31eb55bdfc37b3b7a.png') !important;
}

.dgs-il-fc1acb5626 {
  color: var(--action-teal) !important;
  -webkit-text-fill-color: var(--action-teal) !important;
}

.dgs-il-78c360413a {
  color: var(--action-teal) !important;
}

.dgs-il-1432561cbb {
  background: #ffffff !important;
  padding: 6rem 0 !important;
  width: 100% !important;
}

.dgs-il-53c59cd9e8 {
  max-width: 900px !important;
  margin: 0 auto 2.5rem auto !important;
  text-align: center !important;
}

.dgs-il-ef2f100d49 {
  color: var(--action-teal) !important;
  display: inline-block !important;
  margin-bottom: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
}

.dgs-il-13f3f2750d {
  font-size: clamp(2rem, 3.8vw, 3.2rem) !important;
  font-weight: 800 !important;
  color: #0A1F33 !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 1.25rem !important;
}

.dgs-il-140f67013f {
  max-width: 760px !important;
  margin: 0 auto 3.5rem auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  text-align: center !important;
}

.dgs-il-4a8148a22c {
  font-size: 1.08rem !important;
  line-height: 1.8 !important;
  color: #0A1F33 !important;
  margin: 0 auto !important;
}

.dgs-il-0d07d6253e {
  color: var(--dgs-blue) !important;
}

.dgs-il-2dc6a749f4 {
  color: var(--dgs-amber) !important;
}

.dgs-il-77b46ad3b1 {
  background-image:url('https://assets.cdn.filesafe.space/UAA13luwQZmtw8ObS1Su/media/6a7d6cb3cf50f900f20521f1.png') !important;
}

