.dc-img-pair { display: flex; gap: 2%; margin: 0 0 25px; }
.dc-img-pair img { width: 49%; height: auto; display: block; }

.dc-steps { display: grid; gap: 20px; margin: 25px 0 30px; }
.dc-steps-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.dc-steps-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.dc-steps p:empty, .dc-steps > br, .dc-step > br, .dc-step-body > br { display: none; }

.dc-step { background: #f2f2f2; border-top: 3px solid #0067c6; display: flex; flex-direction: column; }
.dc-step-full { grid-column: 1 / -1; }

.dc-step-media { position: relative; display: block; overflow: hidden; background: #e6e6e6; }
.dc-step-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.dc-steps-3 .dc-step-media { aspect-ratio: 6 / 7; }
.dc-steps-2 .dc-step-media { aspect-ratio: 16 / 9; }
.dc-step-media-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; aspect-ratio: auto !important; background: #f2f2f2; padding: 6px; }
.dc-step-media-3 img { aspect-ratio: 3 / 4; }

a.dc-video { cursor: pointer; }
a.dc-video:focus-visible { outline: 3px solid #0067c6; outline-offset: 2px; }
.dc-play { position: absolute; top: 50%; left: 50%; width: 58px; height: 58px; margin: -29px 0 0 -29px; border-radius: 50%; background: rgba(0, 0, 0, .55); border: 3px solid #fff; box-shadow: 0 2px 10px rgba(0, 0, 0, .35); transition: transform .2s ease, background .2s ease; }
.dc-play:after { content: ""; position: absolute; top: 50%; left: 50%; margin: -11px 0 0 -7px; border-style: solid; border-width: 11px 0 11px 19px; border-color: transparent transparent transparent #fff; }
a.dc-video:hover .dc-play, a.dc-video:focus-visible .dc-play { transform: scale(1.08); background: rgba(0, 103, 198, .85); }
.dc-duration { position: absolute; right: 10px; bottom: 10px; background: rgba(0, 0, 0, .72); color: #fff; font: 13px/1 Arial, Helvetica, sans-serif; padding: 5px 7px; border-radius: 3px; letter-spacing: .3px; }

.dc-step-body { padding: 14px 14px 16px; }
.dc-step-label { display: block; color: #0067c6; font-family: 'HelveticaNeue75Bold', Arial, Helvetica, sans-serif; font-size: 12px; letter-spacing: 1px; text-transform: uppercase; margin: 0 0 4px; line-height: 1.2; }
.dc-step-title { display: block; color: #222; font-family: 'HelveticaNeue75Bold', Arial, Helvetica, sans-serif; font-size: 15px; line-height: 20px; margin: 0; }
.dc-step-note { display: block; color: #777; font-family: 'HelveticaNeue55Roman', Arial, Helvetica, sans-serif; font-size: 13px; line-height: 18px; margin: 4px 0 0; }
.home-sec-2-inner.inner-page .dc-step-text, .dc-step-text { color: #2b2b2b; font-family: 'HelveticaNeue55Roman', Arial, Helvetica, sans-serif; font-size: 14px; line-height: 21px; margin: 0; }

body.dc-lb-open { overflow: hidden; }
.dc-lb { position: fixed; inset: 0; z-index: 99999; background: rgba(0, 0, 0, .88); display: flex; align-items: center; justify-content: center; padding: 20px; opacity: 0; transition: opacity .2s ease; }
.dc-lb.is-open { opacity: 1; }
.dc-lb-inner { position: relative; max-width: 100%; max-height: 100%; display: flex; align-items: center; justify-content: center; }
.dc-lb video { display: block; max-width: min(92vw, 1100px); max-height: 86vh; width: auto; height: auto; background: #000; outline: none; box-shadow: 0 10px 40px rgba(0, 0, 0, .6); }
.dc-lb-close { position: absolute; top: -44px; right: -6px; width: 40px; height: 40px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .15); color: #fff; font: 28px/40px Arial, Helvetica, sans-serif; cursor: pointer; padding: 0; }
.dc-lb-close:hover, .dc-lb-close:focus-visible { background: #0067c6; outline: none; }
.dc-lb-title { position: absolute; left: 0; right: 50px; top: -38px; color: #fff; font: 15px/1.3 'HelveticaNeue75Bold', Arial, Helvetica, sans-serif; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

@media (max-width: 767px) {
  .dc-steps-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dc-steps { gap: 15px; }
}
@media (max-width: 479px) {
  .dc-steps-3, .dc-steps-2 { grid-template-columns: minmax(0, 1fr); }
  .dc-steps-3 .dc-step-media { aspect-ratio: 4 / 5; }
  .dc-step-media-3 { grid-template-columns: 1fr; }
  .dc-step-media-3 img { aspect-ratio: 4 / 3; }
  .dc-img-pair { flex-direction: column; gap: 10px; }
  .dc-img-pair img { width: 100%; }
  .dc-lb { padding: 12px; }
  .dc-lb video { max-width: 96vw; max-height: 80vh; }
  .dc-lb-close { top: -46px; right: 0; }
  .dc-lb-title { right: 48px; top: -40px; font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .dc-lb, .dc-play { transition: none; }
}
