.ws-hero h1 { font-family: var(--display); font-weight: 500; font-size: clamp(2.6rem, 4.6vw, 4.2rem); line-height: 1.04; color: var(--on-field); }
.ws-promise { margin-top: 14px; font-family: var(--display); font-style: italic; font-size: clamp(1.4rem, 2.2vw, 1.9rem); line-height: 1.25; color: var(--mark); max-width: none; }
.ws-hero .btn { margin-top: 28px; }
.ws-center { text-align: center; padding-block: clamp(64px, 8vw, 112px); }

.sec h2 { font-size: clamp(1.8rem, 2.6vw, 2.3rem); color: var(--ink); }
.sec h3 { font-family: var(--display); font-weight: 500; font-size: 1.55rem; line-height: 1.15; color: var(--ink); }
.ws-center-head { text-align: center; }
.steps3 { list-style: none; margin: clamp(32px, 4vw, 48px) 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); text-align: left; border-top: 1px solid var(--hair); }
.steps3 li { padding: 26px 26px 6px 0; }
.steps3 li + li { padding-left: 26px; border-left: 1px solid var(--hair); }
.st-n { display: block; font-family: var(--display); font-size: 1.15rem; color: var(--clay, #9A4F38); margin-bottom: 8px; }
.steps3 p { margin-top: 8px; color: var(--soft); font-size: 1.05rem; line-height: 1.55; }

.ws-band { background: var(--band); }
.fw-sub { margin-top: 10px; font-size: 1.15rem; line-height: 1.55; color: var(--soft); max-width: 40em; }
.lvs { margin-top: clamp(28px, 3.5vw, 44px); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.lv { background: var(--surface); padding: 28px 26px 30px; border-top: 4px solid var(--plum); }
.lv-what { margin-top: 10px; font-size: 1.08rem; color: var(--ink); }
.lv-eg { margin-top: 12px; font-family: var(--display); font-style: italic; font-size: 1.15rem; line-height: 1.4; color: var(--clay, #9A4F38); }
.lv-eg span { display: block; margin-bottom: 2px; font-family: var(--text); font-style: normal; font-size: 0.85rem; font-weight: 600; color: var(--mid); }
.fw-close { margin-top: 26px; font-size: 1.1rem; line-height: 1.6; color: var(--ink); max-width: 40em; }
.ws-fw .btn { margin-top: 26px; }

@media (max-width: 900px) {
  .steps3, .lvs { grid-template-columns: minmax(0, 1fr); }
  .steps3 li, .steps3 li + li { padding: 22px 0; border-left: 0; }
  .steps3 li + li { border-top: 1px solid var(--hair); }
}
