
.index .agency-intro{grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);align-items:start;gap:30px}
.index .agency-numbers>div{padding:9px 0 0;border-left:0;border-top:1px solid var(--line)}
.index .agency-numbers strong{font-size:clamp(1.85rem,4vw,3.7rem);letter-spacing:-.065em;margin:0 0 8px;white-space:nowrap}
.agency-numbers strong span{color:var(--blue)}
.index .agency-numbers small{color:var(--ink);font-size:.75rem;font-weight:750;text-transform:uppercase;letter-spacing:.035em}
.index .agency-numbers p{font-size:.85rem;margin:7px 0 0;line-height:1.45}
.index .agency-image img{object-position:center 46%}
.index .nexus-rows{max-width:none}
.index .nexus-service{position:relative;grid-template-columns:58px minmax(0,1fr) minmax(0,.85fr) 48px;min-height:88px;padding:17px 16px}
.index .nexus-service h3{font-size:clamp(1.1rem,2vw,1.35rem)}
.nexus-service h3 a::after{content:'';position:absolute;inset:0}
.nexus-service:focus-within{outline:2px solid var(--blue);outline-offset:-2px}
.index .nexus-service:hover,.index .nexus-service:focus-within{background:#e8f0ff}
.service-end{display:grid;place-items:center;width:44px;height:44px;border:1px solid #aac4ec;border-radius:50%;color:var(--blue);transition:background .2s,color .2s,transform .2s}
.service-end svg{width:20px}
.nexus-service:hover .service-end,.nexus-service:focus-within .service-end{background:var(--blue);color:white;transform:scale(1.08)}
.index .case-section{color:var(--ink)}
.index .case-section .section-head{gap:28px;margin-bottom:24px}
.index .case-section .eyebrow{color:var(--deep)}
.index .case-section .section-head p{color:var(--muted);max-width:49ch}
.index .portfolio-grid{gap:20px}
.index .portfolio-grid .case{display:block;padding:8px;background:#f1f3f6;border-radius:18px;box-shadow:none}
.case-main{display:grid;grid-template-columns:1.06fr 1fr;min-height:235px;background:white;border-radius:13px;overflow:hidden}
.case-main .case-copy{align-self:center;padding:18px}
.case-channel{color:var(--muted);text-transform:uppercase;letter-spacing:.085em;font-size:.72rem}
.index .case-main h3{font-size:clamp(1.2rem,2.3vw,1.75rem);margin:9px 0}
.case-main img{width:100%;height:100%;object-fit:cover;aspect-ratio:1}
.index .case-result{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0;border:0;margin-top:10px}
.case-result>div{padding:9px 4px;background:white;border-radius:11px;text-align:center}
.case-result strong,.case-result small{display:block}
.case-result strong{font-size:clamp(.94rem,1.6vw,1.25rem);line-height:1.25;color:var(--ink)}
.case-result small{font-size:.73rem;color:var(--muted);margin-top:3px}
.vize-benefits, .process-timeline { background: #edf4ff; }
.vize-benefits>.wrap{display:grid;grid-template-columns:.65fr 1.35fr;gap:18px;align-items:center}
.benefit-list{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.benefit-list .reason{display:block;padding:12px;background:white;border:1px solid var(--line);border-radius:12px}
.benefit-list h3{margin:8px 0 4px;font-size:1rem}
.benefit-list p{font-size:.82rem}
.index .orbit-section{background:radial-gradient(ellipse at center,#dceaff 0%,#f5f8ff 56%,#f5f6f8 90%)}
.process-orbit.active::before{border:1px solid #9fbdf0;box-shadow:0 0 0 13px #bad2f327,0 0 0 27px #c9daf31f}
.process-orbit.active li button{transition:transform .2s,background .2s,box-shadow .2s}
.process-orbit.active li button:hover,.process-orbit.active li button:focus-visible{transform:scale(1.13);background:#164eaa;color:white;box-shadow:0 0 0 5px #bcd3fa,0 14px 25px #13397630}
.process-orbit.active #orbit-copy{padding:10px;border-radius:12px;background:#ffffffb5}
.review-deck .review-context{font-size:.96rem;margin-bottom:15px;max-width:47ch}
.index footer{background:radial-gradient(ellipse at 51% 112%,#24344e 0%,#101722 45%,#07090d 82%)}
.index .footer-signature{color:#a8c4ed15}
@media(max-width:900px){.index .agency-intro,.vize-benefits>.wrap{grid-template-columns:1fr}}
@media(max-width:700px){.index .nexus-service{grid-template-columns:28px minmax(0,1fr) 42px;gap:6px;padding:10px 4px;min-height:72px}.index .nexus-service p{grid-area:2/2/3/3}.service-end{grid-area:1/3/3/4;width:38px;height:38px}.case-main{min-height:0}.case-main .case-copy{padding:10px}.benefit-list{grid-template-columns:1fr}}

@media (min-width: 1180px) {
  .index .agency-intro { gap: 48px; }
  .index .agency-numbers { gap: 24px; }
  .index .nexus-service { padding-inline: 24px; }
  .index .portfolio-grid { gap: 24px; }
  .case-main .case-copy { padding: 24px; }
  .case-main .case-copy p { max-width: 34ch; }
  .vize-benefits > .wrap { gap: 32px; }
  .benefit-list { gap: 14px; }
  .benefit-list .reason { padding: 16px; }
  .index .v2-review { gap: 28px; }
  .review-deck { padding: 26px; }
  .index .insight-grid { gap: 20px; }
  .index .foot { gap: 30px; }
}


.index .portfolio-grid .case {
  display: block;
  padding: 0;
  border: 1px solid #dce5f2;
  background: white;
}
.case-main {
  grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr);
  height: 100%;
  border-radius: 0;
}
.case-main img { aspect-ratio: auto; min-height: 0; }
.case-summary {
  margin-top: 18px;
  padding-top: 12px;
  border-top: 1px solid #dce5f2;
}
.index .case-summary .case-result { gap: 8px; margin: 0; }
.case-summary .case-result > div { padding: 0; text-align: left; }
.case-summary .case-result strong { color: var(--blue); font-size: .95rem; }
@media (max-width: 480px) {
  .case-main { grid-template-columns: 1fr; }
  .case-main img { height: 155px; }
  .case-main .case-copy { padding: 16px; }
}

.index .case-summary .case-result {
  gap: 0;
  padding: 8px 0;
  background: #f1f6ff;
  border: 1px solid #dce7f8;
  border-radius: 8px;
}
.index .case-summary .case-result > div {
  background: transparent;
  border-radius: 0;
  padding: 0 4px;
  text-align: center;
}
.case-summary .case-result > div + div { border-left: 1px solid #d2dff4; }
.case-summary .case-result strong { font-variant-numeric: tabular-nums; }
.review-controls button {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
}

.process-timeline {
  border-bottom: 1px solid #dce5f2;
}
.process-timeline h2 { text-align: center; margin-bottom: 26px; }
.timeline-track {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  padding: 0;
  margin: 0;
  list-style: none;
}
.timeline-track li { position: relative; padding: 0 12px; text-align: center; }
.timeline-track li:not(:last-child)::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 20px;
  left: 50%;
  width: 100%;
  height: 2px;
  background: #c5d6f1;
}
.timeline-number {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin: 0 auto 12px;
  border: 1px solid #b9cdef;
  border-radius: 50%;
  background: #fff;
  color: var(--deep);
  font-weight: 750;
}
.timeline-track h3 { margin: 0 0 6px; }
.timeline-track p { margin: 0 auto; max-width: 23ch; font-size: .88rem; }
@media (max-width: 700px) {
  .timeline-track { grid-template-columns: 1fr; gap: 18px; }
  .timeline-track li { padding: 0 0 0 58px; text-align: left; }
  .timeline-track li:not(:last-child)::after {
    top: 21px;
    left: 20px;
    width: 2px;
    height: calc(100% + 18px);
  }
  .timeline-number { position: absolute; left: 0; top: 0; }
  .timeline-track p { max-width: none; margin: 0; }
}


.timeline-track li.is-active h3 { color: var(--blue); }
.timeline-track li.is-active p { color: var(--deep); background: #e4eeff; border-radius: 8px; }
.timeline-track p { padding: 4px 6px; }
.timeline-track li.is-active .timeline-number {
  color: white;
  background: var(--blue);
  box-shadow: 0 0 0 4px #dbe8ff;
}

.index .v2-review img {
  height: auto;
  max-height: none;
  aspect-ratio: auto;
  object-fit: contain;
}
.index #contact {
  background: radial-gradient(ellipse at 76% 100%, #285eb4, transparent 55%),
    linear-gradient(115deg, #0c2147, #153b78);
  color: #fff;
}
.index #contact .eyebrow,
.index #contact p { color: #e0ebff; }
.index #contact h2 em { color: #acd1ff; }
.index #contact .btn { color: #103367; background: #fff; }
.index #contact .btn:hover { background: #dceaff; }
.index #contact .btn:focus-visible { outline-color: #fff; }

/* Place the heading above the two matching testimonial panels. */
.index .v2-review { align-items: stretch; row-gap: 12px; }
.v2-review > :first-child { grid-column: 1 / -1; }
.v2-review > :first-child h2 { margin-bottom: 0; }
.review-image { min-width: 0; }
.index .v2-review .review-image img { display: block; }
.index .v2-review .review-deck { display: flex; flex-direction: column; justify-content: center; }
@media (min-width: 701px) {
  .review-image { position: relative; aspect-ratio: 440 / 294; }
  .index .v2-review .review-image img { position: absolute; inset: 0; height: 100%; }
}
