/* v71: restrained detail refinements within the approved v70 composition. */

/* The four nodes follow the four existing team/process chapters. */
.why-orbit-track {
  fill: none;
  stroke: #a17c2738;
  stroke-width: .45;
}
.why-orbit-arc {
  stroke: url(#why-orbit-gold);
  stroke-width: 1.05;
  stroke-linecap: round;
  transition: stroke-dasharray 650ms var(--v70-ease), stroke-dashoffset 650ms var(--v70-ease);
}
.why-orbit-arc.why-orbit-ribbon {
  stroke-width: 3.2;
  opacity: .14;
}
.why-orbit-nodes circle {
  r: 1.8;
  fill: var(--v70-paper, #f3ecdf);
  stroke: #a17c27;
  stroke-width: .6;
  transition: fill .35s, r .35s, stroke .35s, stroke-width .35s;
}
.why-orbit-nodes circle.is-on {
  r: 1.9;
  fill: #e3bc52;
  stroke: #a17c27;
  stroke-width: .6;
}
.why-orbit-nodes circle.is-current {
  r: 2.6;
  fill: #e3bc52;
  stroke: #8b6a27;
  stroke-width: .85;
}
.why-photo-frame img {
  outline: 1px solid #a17c272e;
  outline-offset: -1px;
}
.why-tag::before { content: none; }

/* Muted service colors retain the existing Lucide mask artwork. */
.models .deliverables li:nth-child(1) { --svc-color: #a9c7ae; --svc-rgb: 169 199 174; }
.models .deliverables li:nth-child(2) { --svc-color: #d5c7a9; --svc-rgb: 213 199 169; }
.models .deliverables li:nth-child(3) { --svc-color: #d9ba78; --svc-rgb: 217 186 120; }
.models .deliverables li:nth-child(4) { --svc-color: #b6a7cd; --svc-rgb: 182 167 205; }
.models .deliverables li:nth-child(5) { --svc-color: #91bcb1; --svc-rgb: 145 188 177; }
.models .deliverables li:nth-child(6) { --svc-color: #9ab5d4; --svc-rgb: 154 181 212; }
.models .deliverables li:nth-child(7) { --svc-color: #b4c18f; --svc-rgb: 180 193 143; }
.models .deliverables li:nth-child(8) { --svc-color: #d7ae91; --svc-rgb: 215 174 145; }
.models .deliverables li:nth-child(9) { --svc-color: #c7bc98; --svc-rgb: 199 188 152; }
.models .deliverables li:nth-child(10) { --svc-color: #9eacca; --svc-rgb: 158 172 202; }
.models .deliverables li:nth-child(11) { --svc-color: #c7a7ba; --svc-rgb: 199 167 186; }
.models .deliverables .svc-ico {
  width: 58px;
  height: 58px;
  color: var(--svc-color);
  border-color: rgb(var(--svc-rgb) / .28);
  background: rgb(var(--svc-rgb) / .10);
  transform: none;
  transition: background-color .3s, border-color .3s, transform .35s var(--v70-ease);
}
.models .deliverables .svc-ico::before {
  width: 26px;
  height: 26px;
  background: var(--svc-color);
}
@media (hover: hover) {
  .models .deliverables li:not(.svc-cta):hover .svc-ico {
    background: rgb(var(--svc-rgb) / .18);
    border-color: rgb(var(--svc-rgb) / .55);
    transform: translateY(-2px);
  }
  .models .deliverables li:not(.svc-cta):hover .svc-ico::before {
    background: var(--svc-color);
  }
}

/* The twelfth grid item gives the service list one clear next action. */
.models .deliverables .svc-cta {
  align-items: stretch;
  padding: 0;
  border: 0;
}
.models .deliverables .svc-cta a {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
  width: 100%;
  height: 100%;
  min-height: 202px;
  padding: 24px;
  border-radius: 22px;
  background: #f3ecdf;
  color: #030a17;
  text-decoration: none;
}
.models .deliverables .svc-cta a span {
  max-width: 17ch;
  color: #030a17;
  font: 400 clamp(20px, 1.45vw, 22px)/1.25 var(--font-sans);
  letter-spacing: -.025em;
  text-wrap: pretty;
}
.models .deliverables .svc-cta a b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  align-self: flex-start;
  width: auto;
  height: 48px;
  margin-top: auto;
  padding: 0 18px;
  border-radius: 99px;
  background: #f5bf00;
  color: #030a17;
  font: 600 14px/1 var(--font-sans);
  white-space: nowrap;
  transition: background-color .3s, transform .35s var(--v70-ease);
}
.models .deliverables .svc-cta .arrow-icon { display: none; }
.models .deliverables .svc-cta a:focus-visible {
  outline: 2px solid #f5bf00;
  outline-offset: 5px;
}
@media (hover: hover) {
  .models .deliverables .svc-cta a:hover b {
    background: #ffd23a;
    transform: translateY(-2px);
  }
}
@media (max-width: 720px) {
  .models .deliverables .svc-ico { width: 50px; height: 50px; }
  .models .deliverables .svc-ico::before { width: 22px; height: 22px; }
  .models .deliverables .svc-cta { grid-column: 1 / -1; }
  .models .deliverables .svc-cta a {
    min-height: 0;
    gap: 24px;
    padding: 22px;
  }
  .models .deliverables .svc-cta a span {
    max-width: 20ch;
    font-size: 22px;
  }
  .models .deliverables .svc-cta a b {
    align-self: stretch;
    width: 100%;
    height: 54px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .why-orbit-arc,
  .why-orbit-nodes circle,
  .models .deliverables .svc-ico,
  .models .deliverables .svc-cta a b { transition: none !important; }
}
