.wf-photo-reasons { padding: 80px 40px 72px; background: #fff; color: #2c1e46; scroll-margin-top: 100px; }
.wf-photo-reasons__inner { max-width: 1200px; margin-inline: auto; }
.wf-photo-reasons__heading { text-align: center; margin-bottom: 54px; }
.wf-photo-reasons__heading h2 { margin: 0; font-size: clamp(32px, 3.5vw, 44px); line-height: 1.1; letter-spacing: .03em; font-weight: 900; }
.wf-photo-reasons__heading p { margin: 12px 0 0; font-size: 22px; font-weight: 600; }
.wf-photo-reasons__cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; gap: 20px; list-style: none; padding: 0; margin: 0; }
.wf-photo-reasons__card { position: relative; min-width: 0; border: 2px solid #a38ab4; border-radius: 10px; padding: 36px 20px 28px; background: #fff; text-align: center; }
.wf-photo-reasons__point { position: absolute; top: -19px; left: 50%; transform: translateX(-50%); width: 76%; max-width: 190px; padding: 6px 12px; border-radius: 30px; background: linear-gradient(100deg, #aa8cbc, #72538b); color: #fff; font-family: var(--en); font-size: 18px; font-weight: 600; line-height: 1.5; letter-spacing: .06em; }
.wf-photo-reasons__illustration { display: block; width: 100%; max-width: 220px; height: auto; aspect-ratio: 1; object-fit: contain; margin: 0 auto 18px; filter: url('#photo-illustration-palette'); }
.wf-photo-reasons__card h3 { margin: 0; font-size: 18px; font-weight: 600; line-height: 1.7; }
.wf-photo-reasons__card p { margin: 14px 0 0; font-size: 14px; line-height: 1.85; color: #6c6372; text-align: left; }
.wf-photo-reasons__note { margin: 28px 0 0; font-size: 13px; line-height: 1.9; color: #6c6372; text-align: center; }
@media (max-width: 1100px) {
  .wf-photo-reasons__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 42px 24px; max-width: 760px; margin-inline: auto; }
  .wf-photo-reasons__card { padding-inline: 28px; }
}
@media (max-width: 600px) {
  .wf-photo-reasons { padding: 60px 20px 52px; scroll-margin-top: 80px; }
  .wf-photo-reasons__heading { margin-bottom: 48px; }
  .wf-photo-reasons__heading p { font-size: 20px; }
  .wf-photo-reasons__cards { grid-template-columns: minmax(0, 1fr); max-width: 380px; gap: 42px; }
  .wf-photo-reasons__illustration { max-width: 220px; }
  .wf-photo-reasons__card { padding-bottom: 26px; }
  .wf-photo-reasons__note { text-align: left; }
}
