/* Anvil Child — Four ways we deliver (rejilla estática, clases del prototipo .v3-fb-*) */
.acm-four-ways { background: #fff; color: var(--p3); padding: 0 40px; }
.v3-fb-y { padding: 100px 0; }
.v3-fb-head {
  display: flex; justify-content: space-between; align-items: flex-end;
  flex-wrap: wrap; gap: 24px; margin-bottom: 50px;
  padding-bottom: 20px; border-bottom: 1px solid var(--rule);
}
.v3-fb-h2 { margin-top: 14px; }
.v3-fb-count { font-size: 11px; color: var(--ink-soft); }

.v3-fb-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.v3-fb-card {
  position: relative; display: block; height: 420px;
  text-decoration: none; overflow: hidden;
}
/* Card CON imagen: foto + overlay inferior + texto blanco (como el prototipo). */
.v3-fb-card.has-img { color: #fff; background: var(--p3); }
.v3-fb-card.no-img  { color: var(--p3); background: #fff; border: 1px solid var(--rule); }
.v3-fb-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.v3-fb-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5,40,64,0.10) 0%, rgba(5,40,64,0.85) 100%); }
.v3-fb-body { position: absolute; inset: 0; padding: 26px 24px; display: flex; flex-direction: column; justify-content: space-between; }
.v3-fb-top { display: flex; justify-content: space-between; align-items: center; }
.v3-fb-idx { font-size: 11px; color: var(--s1); }
.v3-fb-arrow { width: 32px; height: 32px; display: flex; align-items: center; justify-content: center; font-size: 13px; border: 1px solid currentColor; opacity: 0.85; }
.v3-fb-card.has-img .v3-fb-arrow { border-color: rgba(255,255,255,0.5); }
.v3-fb-title { font-family: var(--f-display); font-weight: 800; font-size: 26px; letter-spacing: -0.02em; line-height: 1.05; margin: 0 0 10px; color: inherit; }
.v3-fb-desc { font-family: var(--f-body); font-size: 13px; line-height: 1.5; margin: 0; }
.v3-fb-card.has-img .v3-fb-desc { color: rgba(255,255,255,0.82); }
.v3-fb-card.no-img .v3-fb-desc { color: var(--ink-soft); }
.v3-fb-card:hover .v3-fb-arrow { background: var(--s1); color: var(--p3); border-color: var(--s1); }

@media (max-width: 1023px) { .v3-fb-grid { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 600px) { .v3-fb-grid { grid-template-columns: 1fr !important; } .v3-fb-card { height: 360px; } .v3-fb-y { padding: 64px 0; } }
