/* Isolated CSS for vyh-setup. Source: Design Library draft. */
.vyh-setup .wp-block-group.is-layout-flex { gap: unset; align-items: unset; }
.vyh-setup__body { display: grid !important; grid-template-columns: 1fr 1fr !important; }
.vyh-setup__body > .wp-block-group { width: auto !important; max-width: none !important; }
p.vyh-setup__badge { margin-block: 0px !important; }
.vyh-setup__body { gap: 52px !important; }
.vyh-setup__steps { display: flex !important; flex-direction: column !important; gap: 14px !important; }
.vyh-setup__steps > .wp-block-group { width: auto !important; }
.vyh-setup__step { display: flex !important; align-items: flex-start !important; gap: 16px !important; }
.vyh-setup__step > .wp-block-paragraph { flex-shrink: 0 !important; width: auto !important; margin-block: 0px !important; }
p.vyh-setup__badge { display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; width: 36px !important; height: 36px !important; }
.vyh-setup__step > .wp-block-group { min-width: 0px; flex: 1 1 0% !important; width: auto !important; }
.vyh-setup__step-content { display: flex !important; flex-direction: column !important; gap: 5px !important; }
.vyh-setup__step-content > .wp-block-heading, .vyh-setup__step-content > .wp-block-paragraph { width: auto !important; margin-block: 0px !important; }
.vyh-setup__visual { display: flex !important; justify-content: flex-end !important; align-items: center !important; }
.vyh-setup__visual > figure.wp-block-image, .vyh-setup__visual > .wp-block-image { width: 100% !important; max-width: 520px !important; margin: 0px !important; }
figure.vyh-setup__img { width: 100% !important; max-width: 520px !important; height: auto !important; border-radius: 40px !important; overflow: hidden !important; margin: 0px !important; }
figure.vyh-setup__img img { width: 100% !important; height: auto !important; display: block !important; border-radius: 40px !important; }
@media (max-width: 768px) {
.vyh-setup__body { grid-template-columns: 1fr !important; gap: 28px !important; }
.vyh-setup h2[class*="__heading"] { font-size: 25px !important; line-height: 1.25 !important; }
.vyh-setup [class*="__heading"], .vyh-setup [class*="__subtext"] { overflow-wrap: break-word !important; }
.vyh-setup[class*="vyh-"], .vyh-setup [class*="vyh-"] { min-width: 0px !important; }
.vyh-setup [class*="vyh-"][class*="__container"], .vyh-setup [class*="vyh-"][class*="__body"] { width: 100% !important; max-width: 100% !important; }
.vyh-setup { overflow-x: clip !important; }
}
.vyh-setup__video { width: 100%; max-width: 520px; height: auto; display: block; border-radius: 40px; }
.vyh-setup *, .vyh-setup ::before, .vyh-setup ::after { box-sizing: border-box; margin: 0px; padding: 0px; }
.vyh-setup { width: 100%; background: rgb(255, 255, 255); padding: 20px 0px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
.vyh-setup__container { max-width: 1200px; margin: 0px auto; padding: 0px 40px; }
.vyh-setup__header { text-align: center; margin-bottom: 52px; }
.vyh-setup__heading { font-size: 28px; font-weight: 800; color: rgb(17, 17, 17); line-height: 1.2; margin-bottom: 14px; letter-spacing: -0.3px; }
.vyh-setup__subtext { font-size: 16px; color: rgb(102, 102, 102); line-height: 1.6; }
.vyh-setup__body { display: grid; grid-template-columns: 1fr 1fr; gap: 52px; align-items: center; }
.vyh-setup__steps { display: flex; flex-direction: column; gap: 10px; }
.vyh-setup__step { margin-bottom: 20px; }
.vyh-setup__step > div { display: flex; gap: 14px; background: rgb(255, 255, 255); border: 1.5px solid rgb(232, 232, 232); border-radius: 14px; padding: 12px 18px; box-shadow: rgba(0, 0, 0, 0.05) 0px 2px 10px; transition: border-color 0.25s, box-shadow 0.25s; }
.vyh-setup__step:hover { border-color: rgb(237, 26, 59); }
.vyh-setup__badge { width: 36px; height: 36px; border-radius: 8px; background: rgb(237, 26, 59); color: rgb(255, 255, 255); font-size: 15px; font-weight: 800; display: flex; align-items: center; justify-content: center; flex-shrink: 0; line-height: 1; }
.vyh-setup__step-content { gap: 5px; padding-top: 2px; display: flex !important; flex-direction: column !important; }
.vyh-setup__step-title { font-weight: bold; color: rgb(17, 17, 17); line-height: 1.3; font-size: 15px !important; margin-top: 0px !important; }
.vyh-setup__step-desc { font-size: 13.5px; color: rgb(102, 102, 102); line-height: 1.55; }
.vyh-setup__visual { display: flex; justify-content: flex-end; align-items: center; }
.vyh-setup__img { width: 100%; max-width: 520px; height: auto; border-radius: 40px; display: block; }
@media (max-width: 992px) {
.vyh-setup__container { padding: 0px 24px; }
.vyh-setup__heading { font-size: 30px; }
.vyh-setup__body { gap: 36px; }
}
@media (max-width: 768px) {
.vyh-setup { padding: 20px 0px; }
.vyh-setup__container { padding: 0px 20px; }
.vyh-setup__heading { font-size: 26px; }
.vyh-setup__body { grid-template-columns: 1fr; gap: 36px; }
.vyh-setup__visual { justify-content: center; }
.vyh-setup__img { max-width: 100%; border-radius: 28px; }
}
@media (max-width: 480px) {
.vyh-setup__step-title { font-size: 14px; }
}
.vyh-setup__header { animation: 0.6s ease 0s 1 normal both running vyh-setup--vyhUp; }
.vyh-setup__visual { animation: 0.8s ease 0.15s 1 normal both running vyh-setup--vyhFade; }
@media (prefers-reduced-motion: reduce) {
.vyh-setup__header, .vyh-setup__visual { opacity: 1; animation: auto ease 0s 1 normal none running none; }
}
.vyh-setup, .vyh-setup * { -webkit-tap-highlight-color: transparent; }
@media (max-width: 768px) {
.vyh-setup [class*="vyh-"][class*="__heading"] { text-align: center !important; }
}

@keyframes vyh-setup--vyhUp { 
  0% { opacity: 0; transform: translateY(18px); }
  100% { opacity: 1; transform: none; }
}

@keyframes vyh-setup--vyhFade { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}

/* Four-step image carousel states are scoped to this section only. */
.vyh-setup__step {
  cursor: pointer;
}

.vyh-setup__step > .wp-block-group__inner-container {
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.vyh-setup__step--active > .wp-block-group__inner-container,
.vyh-setup__step:hover > .wp-block-group__inner-container,
.vyh-setup__step:focus-within > .wp-block-group__inner-container {
  border-color: #ed1a3b !important;
  box-shadow: 0 4px 14px rgba(237, 26, 59, 0.14) !important;
}

.vyh-setup__visual video {
  display: none !important;
}

.vyh-setup__visual .vyh-setup__img {
  display: none !important;
  width: 100% !important;
  max-width: 520px !important;
  height: auto !important;
  margin: 0 !important;
  border-radius: 40px !important;
  overflow: hidden !important;
}

.vyh-setup__visual .vyh-setup__img--active {
  display: block !important;
}

.vyh-setup__visual .vyh-setup__img img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  border-radius: inherit !important;
}

@media (max-width: 768px) {
  .vyh-setup__visual .vyh-setup__img {
    max-width: 100% !important;
    border-radius: 28px !important;
  }
}

/* WordPress adds an inner wrapper around editable images; constrain it to the original direct-child video slot. */
.vyh-setup__visual > .wp-block-group__inner-container {
  flex: 0 1 520px !important;
  width: 100% !important;
  max-width: 520px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.vyh-setup__visual .vyh-setup__img {
  width: 100% !important;
  max-width: 520px !important;
  aspect-ratio: 1 / 1 !important;
}

.vyh-setup__visual .vyh-setup__img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}
