.case-visual {
  min-width: 0;
  height: 240px;
  margin: 2rem 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
  color: var(--ink);
  font-family: var(--font-detail);
}
.case-visual svg { width: 24px; height: 24px; flex: none; }
.workflow-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.workflow-step {
  position: relative;
  min-width: 0;
  padding: 16px 10px;
  background: var(--panel);
  border: 1px solid var(--rule-strong);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  gap: 9px;
}
.workflow-step > svg { color: var(--lime); margin-bottom: 5px; }
.workflow-step:not(:last-child)::after {
  content: "→";
  position: absolute;
  left: 100%;
  top: 50%;
  width: 19px;
  text-align: center;
  color: var(--lime);
  transform: translateY(-50%);
}
.workflow-title { font-size: 14px; font-weight: 650; line-height: 1.3; }
.workflow-detail { font-size: 12px; color: var(--muted); line-height: 1.35; }
.workflow-note { display: flex; align-items: center; gap: 9px; font-size: 12px; color: var(--muted); line-height: 1.4; }
.workflow-note svg { color: var(--lime); width: 17px; height: 17px; }
.website-window { border: 1px solid var(--rule-strong); border-radius: 10px; background: var(--panel); overflow: hidden; }
.website-toolbar { display: flex; align-items: center; gap: 5px; border-bottom: 1px solid var(--rule); padding: 9px 12px; }
.website-dot { width: 4px; height: 4px; border-radius: 50%; background: var(--dim); }
.website-address { margin-left: 7px; color: var(--muted); font-size: 11px; line-height: 1; }
.website-content { padding: 18px 16px; display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 16px; }
.website-copy { display: flex; flex-direction: column; gap: 7px; }
.website-title { font-family: var(--font-display); font-size: 17px; line-height: 1.3; letter-spacing: -.03em; }
.website-subtitle { font-size: 11px; line-height: 1.4; color: var(--muted); }
.website-form { display: flex; flex-direction: column; gap: 7px; }
.website-field { border: 1px solid var(--rule-strong); border-radius: 4px; padding: 7px 8px; color: var(--muted); font-size: 10px; line-height: 1.3; }
.website-submit { border-radius: 4px; padding: 7px; background: var(--coral); color: var(--ground); font-size: 11px; font-weight: 750; text-align: center; line-height: 1.3; }
.website-result { align-self: flex-end; display: flex; align-items: center; gap: 9px; margin-top: -6px; font-size: 12px; line-height: 1.4; }
.website-result > svg:first-child { width: 18px; height: 18px; color: var(--coral); }
.website-result-label { display: flex; align-items: center; gap: 7px; padding: 8px 11px; border: 1px solid var(--coral); border-radius: 6px; background: var(--panel); }
.website-result-label svg { width: 17px; height: 17px; color: var(--coral); }
@media (max-width: 600px) {
  .case-visual { height: auto; min-height: 210px; margin: 1.5rem 0; }
  .workflow-flow { gap: 13px; }
  .workflow-step { padding: 14px 8px; gap: 8px; }
  .workflow-step:not(:last-child)::after { width: 14px; }
  .workflow-title { font-size: 12px; }
  .workflow-detail { font-size: 11px; }
  .workflow-note { font-size: 11px; }
  .website-content { padding: 16px 12px; gap: 12px; }
}
