/* Extensions du site existant : mêmes grilles, espacements et typographies. */
.workable-feature,
.factory-feature { margin-top: 20px; }
.workable-feature > *,
.factory-feature > * { min-width: 0; }
.project-visual {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 400px;
  padding: 85px 30px 45px;
  position: relative;
}
.workable-visual { background: #10263a; color: #f5f3ec; }
.project-visual .image-tag { color: var(--navy); }
.workable-visual img { height: auto; max-width: 65%; width: 210px; }
.workable-visual p { font-size: 15px; margin: 24px 0 0; text-align: center; }
.project-status { border-top: 1px solid var(--line); font: 500 11px/1.7 var(--mono); padding-top: 16px; }
.factory-visual { background: var(--navy); color: var(--paper); }
.factory-flow { display: grid; gap: 10px; max-width: 300px; width: 100%; }
.factory-flow span { border-left: 3px solid var(--coral); background: rgba(220,229,255,.08); font: 500 12px/1.5 var(--mono); padding: 14px 18px; }
.factory-flow span:last-child { border-color: var(--blue); }
.factory-feature .feature-copy { background: var(--blue); }
.workable-feature .product-title h3,
.factory-feature .product-title h3 { overflow-wrap: anywhere; }
.workable-feature .arrow-link,
.factory-feature .arrow-link { align-items: center; display: inline-flex; gap: 8px; line-height: 1.6; min-height: 44px; padding: 10px 0; }
.workable-feature a:focus-visible,
.factory-feature a:focus-visible { outline: 3px solid currentColor; outline-offset: 5px; }
@media (max-width: 760px) {
  .workable-visual { order: -1; }
  .project-visual { min-height: 320px; }
}
