/* =============================================================
  2step leadform 스타일 분리
  --------------------------------------------------------------
  관련 파일 : contact/summer2026_contact1.php
              contact/summer2026_contact.php
  작성자    : jh.roh
  작성일    : 2026-07-21
  수정일    :
============================================================= */

.formtype_step {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  overflow: hidden;
  padding: 90px 20px;
  background: #ebf2fc;
}

.formtype_step .step_leadform {
  position: relative;
  z-index: 1;
  width: 100%;
}

.formtype_step .step_leadform .contact-box {
  max-width: 446px;
  margin: 0 auto;
}

/* .formtype_step .step_leadform .contact-box { width: 100%; } */
.formtype_step .step_leadform .form-box {
  width: 100%;
  background: #fff;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 50px;
  border-radius: 24px;
}

.formtype_step .step_leadform .leadforms_box {
  width: 100%;
}
.formtype_step .step_leadform .leadforms_box .wpforms-container {
  margin: 0 auto !important;
}
.formtype_step .step_leadform .leadforms_box .wpforms-submit-container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  border-top: 0 !important;
}
.formtype_step .step_leadform .wpforms-field .wpforms-field-label {
  font-size: 18px;
}
.formtype_step .step_leadform .check_small input:checked + label::after {
  background-color: var(--form-point);
  top: 2px;
}
.formtype_step .step_leadform .check_round input:checked + label::after {
  background-color: var(--form-point);
  border-color: var(--form-point);
}
.formtype_step
  .step_leadform
  div.wpforms-container-full
  .wpforms-form
  button[type="submit"] {
  height: 56px;
  border-radius: 8px;
  font-weight: 600;
  letter-spacing: 0;
  font-size: 18px !important;
}
.formtype_step
  .step_leadform
  div.wpforms-container-full
  .wpforms-form
  button[type="submit"]:not(:disabled),
.formtype_step
  .step_leadform
  div.wpforms-container-full
  .wpforms-form
  button[type="submit"]:not(:disabled):hover {
  background: var(--submit-bg) !important;
}
.formtype_step .step_leadform input[type="text"],
.formtype_step .step_leadform input[type="number"],
.formtype_step .step_leadform input[type="email"] {
  border-radius: 0 !important;
}
.formtype_step
  .step_leadform
  div.wpforms-container-full
  .wpforms-form
  label.wpforms-error,
.formtype_step
  .step_leadform
  div.wpforms-container-full
  .wpforms-form
  em.wpforms-error {
  margin-top: 0 !important;
}

.formtype_step .lead_agree_form {
  margin-top: 42px !important;
}
.formtype_step .leadforms_box .wpforms-field-container {
  padding: 0 !important;
}
.formtype_step
  div.wpforms-container-full
  .wpforms-form
  .wpforms-submit-container {
  margin-top: 50px !important;
  padding: 0 !important;
}
.formtype_step
  .leadforms_box
  div.wpforms-container-full
  .wpforms-form
  .wpforms-field,
.formtype_step
  div.wpforms-container
  .wpforms-form
  .wpforms-field-layout
  .wpforms-layout-column-50,
.formtype_step
  div.wpforms-container
  .wpforms-form
  .wpforms-field-repeater
  .wpforms-layout-column-50 {
  width: 100%;
}
.formtype_step[data-step="2"]
  .leadforms_box
  div.wpforms-container-full
  .wpforms-form
  .wpforms-field
  + .wpforms-field {
  margin-top: 42px;
}

/* layout 래퍼 평탄화: 1·2단계 모두 한 줄에 한 필드 */
.formtype_step .wpforms-field.wpforms-field-layout,
.formtype_step .wpforms-field-layout-columns,
.formtype_step .wpforms-layout-column {
  display: contents !important;
}

/* 1단계 기본: 사용인원만 노출 */
.formtype_step[data-step="1"] .step2,
.formtype_step[data-step="1"] .lead_agree_form,
.formtype_step[data-step="1"]
  .wpforms-field:not(.number-of-users):not(.wpforms-field-layout),
.formtype_step[data-step="1"] .wpforms-submit-container,
.formtype_step[data-step="1"]
  .step_leadform
  .wpforms-field
  .wpforms-field-label {
  display: none;
}

/* 2단계: 사용인원 숨기고 나머지 + 제출 노출, 다음 버튼 숨김 */
.formtype_step[data-step="2"] .wpforms-field.number-of-users,
.formtype_step[data-step="2"] .step1 {
  display: none;
}

.formtype_step .btn_next {
  width: 100%;
  height: 56px;
  margin-top: 42px;
  border-radius: 8px;
  border: none;
  color: #fff;
  text-align: center;
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.54px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.formtype_step .btn_next.disabled {
  cursor: not-allowed;
  pointer-events: none;
  background: #bac0c6;
}
.formtype_step .btn_next:not(.disabled) {
  background: var(--color-primary);
}

.formtype_step div.wpforms-container-full:not(.wpforms-gutenberg-form-selector)
  :is(input[type="submit"], button[type="submit"], .wpforms-page-button):is(:disabled, .wpforms-disabled),
.formtype_step div.wpforms-container-full:not(.wpforms-gutenberg-form-selector)
  :is(input[type="submit"], button[type="submit"], .wpforms-page-button):disabled:hover {
	background: #BAC0C6 !important;
}
.formtype_step .step_leadform ._cautions_text {
  margin: 18px auto 0;
  text-align: center;
  font-size: 12px;
  color: #aaa;
  letter-spacing: 0;
  line-height: 170%;
}
.formtype_step .step_leadform ._cautions_text b {
  font-weight: 700;
  color: var(--secondary);
}

.formtype_step .alert {
  margin: 18px auto 0;
  color: #aaa;
  font-size: 12px;
  line-height: 1.7;
}

/* 텍스트 */
.formtype_step .step_leadform .desc {
  font-size: 16px;
  font-weight: 700;
}

@media screen and (min-width : 961px) {
  
} /* END : min-width : 961px */

@media screen and (max-width : 960px) {

  /* 퀵메뉴, 젠투 숨김 */
  body:has(.formtype_step) .quick_link_new,
  body:has(.formtype_step) .floating-container-fastfive {
    display: none !important; /* 마케팅 요청 */
  }



  /* 컨테이너 / 박스 */
  .formtype_step {
    padding: 50px 20px;
  }
  .formtype_step.contact1[data-step="2"] {
    padding: 24px 20px;
  }
  .formtype_step .step_leadform .form-box {
    padding: 24px 20px;
    border-radius: 14px;
  }

  /* 리드폼 (wpforms) */
  .formtype_step .step_leadform .has_error:not(.check_round),
  .formtype_step .step_leadform .wpforms-error:not(input) {
    top: 16px;
  }
  .formtype_step
    .step_leadform
    div.wpforms-container-full
    .wpforms-form
    .wpforms-field-label {
    font-size: 16px !important;
  }
  .formtype_step
    .step_leadform
    div.wpforms-container-full
    .wpforms-form
    button[type="submit"] {
    font-size: 16px !important;
    line-height: 1 !important;
  }
  .formtype_step .step_leadform .check_small label {
    font-size: 14px !important;
  }
  .formtype_step .step_leadform .check_small input + label,
  .formtype_step .step_leadform .check_small input:checked + label {
    padding-left: 24px !important;
  }

  .formtype_step
    div.wpforms-container-full
    .wpforms-form
    .wpforms-submit-container {
    margin-top: 46px !important;
  }
  .formtype_step .lead_agree_form,
  .formtype_step
    .leadforms_box
    div.wpforms-container-full
    .wpforms-form
    .wpforms-field
    + .wpforms-field {
    margin-top: 32px !important;
  }

  /* 버튼 */
  .formtype_step .btn_next {
    font-size: 16px;
  }

  /* 하단 안내 문구 */
  .formtype_step .step_leadform ._cautions_text {
    margin-top: 10px;
  }
  .formtype_step .alert {
    margin-top: 10px;
  }
} /* END : max-width: 960px */



/* contact1 */
.contact1 {
	--secondary: #FF5F68;
	--color-primary: #007FFF;
	--form-point: var(--color-primary);
	--submit-bg: var(--color-primary);

  /* 해더  */
  .step_leadform header {
    letter-spacing: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0;
  }
  .step_leadform header h2 {
    display: flex;
  }
  .step_leadform header h2 img:first-child {
    max-width: 332px;
    aspect-ratio: 332 / 38;
    margin: 0 auto;
  }

  .step_leadform .badge_txt {
    position: relative;
    width: fit-content;
    margin: 0 auto 20px;
    padding: 2px 16px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.7;
    border-radius: 100px;
    background: var(--color-primary);
  }
  .step_leadform .badge_txt::after {
    content: "";
    position: absolute;
    bottom: -12px;
    left: calc(50% - 7px);
    display: block;
    width: 14px;
    height: 12px;
    mask: url("data:image/svg+xml,%3Csvg width='14' height='12' viewBox='0 0 14 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.86378 10.5192C7.4779 11.1807 6.5221 11.1807 6.13622 10.5192L9.53988e-08 6.8343e-07L14 9.53674e-07L7.86378 10.5192Z' fill='%23F40066'/%3E%3C/svg%3E")
      no-repeat center / cover;
    background: var(--color-primary);
  }

  .step_leadform header .caution {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin: 14px 0 26px;
    color: #ff5f68;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.7;
  }
  .step_leadform header .caution::before,
  .step_leadform header .caution::after {
    content: "";
    display: block;
    width: 14px;
    aspect-ratio: 1 / 1;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cg clip-path='url(%23clip0_2055_19660)'%3E%3Cmask id='mask0_2055_19660' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='14' height='14'%3E%3Crect width='14' height='14' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_2055_19660)'%3E%3Cpath d='M1.57785 12.5C1.47068 12.5 1.37324 12.472 1.28555 12.416C1.19786 12.36 1.12966 12.2861 1.08094 12.1944C1.03223 12.1028 1.00543 12.0035 1.00056 11.8965C0.99569 11.7896 1.02248 11.6852 1.08094 11.5833L6.48848 1.80556C6.54694 1.7037 6.62245 1.62731 6.71501 1.57639C6.80757 1.52546 6.90257 1.5 7 1.5C7.09743 1.5 7.19243 1.52546 7.28499 1.57639C7.37755 1.62731 7.45306 1.7037 7.51152 1.80556L12.9191 11.5833C12.9775 11.6852 13.0043 11.7896 12.9994 11.8965C12.9946 12.0035 12.9678 12.1028 12.9191 12.1944C12.8703 12.2861 12.8021 12.36 12.7144 12.416C12.6268 12.472 12.5293 12.5 12.4221 12.5H1.57785ZM7.41653 10.491C7.52857 10.3738 7.5846 10.2287 7.5846 10.0556C7.5846 9.88241 7.52857 9.73727 7.41653 9.62014C7.30448 9.50301 7.16564 9.44444 7 9.44444C6.83436 9.44444 6.69552 9.50301 6.58347 9.62014C6.47143 9.73727 6.4154 9.88241 6.4154 10.0556C6.4154 10.2287 6.47143 10.3738 6.58347 10.491C6.69552 10.6081 6.83436 10.6667 7 10.6667C7.16564 10.6667 7.30448 10.6081 7.41653 10.491ZM7.41653 8.65764C7.52857 8.54051 7.5846 8.39537 7.5846 8.22222V6.38889C7.5846 6.21574 7.52857 6.0706 7.41653 5.95347C7.30448 5.83634 7.16564 5.77778 7 5.77778C6.83436 5.77778 6.69552 5.83634 6.58347 5.95347C6.47143 6.0706 6.4154 6.21574 6.4154 6.38889V8.22222C6.4154 8.39537 6.47143 8.54051 6.58347 8.65764C6.69552 8.77477 6.83436 8.83333 7 8.83333C7.16564 8.83333 7.30448 8.77477 7.41653 8.65764Z' fill='%23FF5F68'/%3E%3C/g%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_2055_19660'%3E%3Crect width='14' height='14' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E")
      no-repeat center / cover;
    background: #ff5f68;
  }

  /* 부가 텍스트, 설명 */
  .step_leadform .desc {
    color: #444;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.7;
  }
  .step_leadform .etc {
    display: block;
    margin-bottom: 18px;
    color: #777;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
  }
} /* //.contact1 */