/* ==============================
   OEM INQUIRY PAGE
============================== */
.oem_inquiry_page {
   width: 100%;
   color: var(--color-text-primary);
}


/* ==============================
   OEM INQUIRY VISUAL
============================== */
.oem_inquiry_visual {
   width: 100%;
   padding: 200px 0 160px;
}

.oem_inquiry_visual_inner {
   width: calc(100% - 200px);
   max-width: 1720px;
   margin: 0 auto;
}

.oem_inquiry_visual_head {
   text-align: center;
   margin-bottom: 100px;
   overflow: hidden;
}

.oem_inquiry_visual_head_inner {
   transform: translateY(120%);
   animation: oemInquiryTitleUp 2s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.oem_inquiry_visual_label {
   display: block;
   margin-bottom: 20px;
   font-size: 24px;
   font-weight: 300;
   letter-spacing: 0.18em;
   color: var(--color-text-muted);
}

.oem_inquiry_visual_title {
   margin: 0;
   font-size: 64px;
   font-weight: 700;
   line-height: 1.2;
}

@keyframes oemInquiryTitleUp {
   0% {
      transform: translateY(120%);
   }

   100% {
      transform: translateY(0);
   }
}

.oem_inquiry_visual_box {
   position: relative;
   width: 100%;
   height: 420px;
   max-height: 420px;
   margin: 0 auto;
   overflow: hidden;
   opacity: 1;
   transform: translateY(0);

   --oem-inquiry-clip-x: 41%;
   clip-path: inset(0 var(--oem-inquiry-clip-x) 0 var(--oem-inquiry-clip-x));
   -webkit-clip-path: inset(0 var(--oem-inquiry-clip-x) 0 var(--oem-inquiry-clip-x));

   will-change: clip-path;
}

.oem_inquiry_visual_box::after {
   content: "";
   position: absolute;
   inset: 0;
   background: rgba(0, 0, 0, 0.06);
   pointer-events: none;
   z-index: 2;
}

.oem_inquiry_visual_img {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center 55%;
   transform: scale(1);
}




/*------------------------------------
   Responsive
------------------------------------*/
@media (max-width: 1400px) {
   .oem_inquiry_visual_inner {
      width: calc(100% - 120px);
   }
}




/*------------------------------------
   탭 버전
------------------------------------*/
@media screen and (min-width: 600px) and (max-width: 1024px) {
   .header_inner {
      background-color: #fff;
   }

   .oem_inquiry_visual {
      background: var(--color-bg-base);
      padding: 200px 0 60px;
   }

   .oem_inquiry_visual_inner {
      width: calc(100% - 48px);
   }

   .oem_inquiry_visual_head {
      margin-bottom: 80px;
   }

   .oem_inquiry_visual_label {
      font-size: 22px;
   }

   .oem_inquiry_visual_title {
      font-size: 58px;
   }

   .oem_inquiry_visual_box {
      height: clamp(300px, 36vw, 360px);
   }

   .oem_inquiry_visual_img {
      object-position: 90% 55%;
   }
}




/*------------------------------------
   모바일 버전
------------------------------------*/
@media screen and (min-width: 300px) and (max-width: 599px) {
   /* .header_inner {
      background-color: #fff;
   } */

   .oem_inquiry_visual {
      background: var(--color-bg-base);
      padding: 120px 0 55px;
   }

   .oem_inquiry_visual_inner {
      width: calc(100% - 40px);
   }

   .oem_inquiry_visual_head {
      margin-bottom: 55px;
   }

   .oem_inquiry_visual_label {
      margin-bottom: 12px;
      font-size: 14px;
   }

   .oem_inquiry_visual_title {
      font-size: 36px;
   }

   .oem_inquiry_visual_box {
      height: clamp(200px, 55vw, 240px);
   }

   .oem_inquiry_visual_img {
      object-position: 88% center;
   }
}




/* ==============================
   OEM INQUIRY CONTENT
============================== */
.oem_inquiry_inner {
   width: calc(100% - 200px);
   max-width: 1400px;
   margin: 0 auto;
}

.oem_inquiry_section_label {
   display: block;
   margin-bottom: 18px;
   font-family: "Roboto", sans-serif;
   font-size: 14px;
   font-weight: 400;
   line-height: 1;
   letter-spacing: 0.08em;
   color: var(--color-brand);
   text-transform: uppercase;
}

.oem_inquiry_intro {
   padding: 120px 0 90px;
   background: var(--color-bg-base);
}

.oem_inquiry_intro_grid {
   display: grid;
   grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
   gap: 80px;
   align-items: end;
}

.oem_inquiry_intro_title {
   margin: 0;
   font-size: clamp(42px, 3.2vw, 64px);
   font-weight: 700;
   line-height: 1.18;
   letter-spacing: 0;
   color: var(--color-text-primary);
}

.oem_inquiry_intro_desc {
   margin: 0;
   font-size: 20px;
   font-weight: 400;
   line-height: 1.75;
   color: var(--color-text-secondary);
   word-break: keep-all;
   text-align: right;
}

.oem_inquiry_form_wrap {
   display: block;
   background: var(--color-bg-base);
}

.oem_inquiry_honeypot {
   position: absolute;
   left: -9999px;
   width: 1px;
   height: 1px;
   overflow: hidden;
   opacity: 0;
   pointer-events: none;
}

.oem_inquiry_form_section {
   padding: 100px 0;
}

.oem_inquiry_section_head {
   display: flex;
   justify-content: space-between;
   align-items: flex-end;
   gap: 40px;
   margin-bottom: 48px;
   padding-top: 40px;
   border-top: 1px solid var(--color-line);
   flex-direction: row-reverse;
}

.oem_inquiry_section_head h2 {
   margin: 0;
   font-size: 40px;
   font-weight: 700;
   line-height: 1.2;
   color: var(--color-text-primary);
}

.oem_inquiry_form_grid {
   display: grid;
   grid-template-columns: repeat(2, minmax(0, 1fr));
   gap: 28px 32px;
}

.oem_inquiry_field {
   display: flex;
   flex-direction: column;
   gap: 12px;
}

.oem_inquiry_field_full {
   grid-column: 1 / -1;
}

.oem_inquiry_field label {
   font-size: 17px;
   font-weight: 600;
   line-height: 1.35;
   color: var(--color-text-primary);
}

.oem_inquiry_field label span {
   margin-left: 8px;
   font-size: 12px;
   font-weight: 700;
   color: var(--color-brand);
   vertical-align: middle;
}

.oem_inquiry_field input,
.oem_inquiry_field select,
.oem_inquiry_field textarea {
   width: 100%;
   min-height: 58px;
   padding: 0 18px;
   border: 1px solid var(--color-line);
   border-radius: 0;
   background-color: #fff;
   color: var(--color-text-primary);
   font-size: 16px;
   font-weight: 400;
   line-height: 1.5;
   transition: border-color 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease;
}

.oem_inquiry_field textarea {
   min-height: 190px;
   padding: 18px;
   line-height: 1.65;
   resize: vertical;
   letter-spacing: -0.025em;
}

.oem_inquiry_field select {
   padding-right: 44px;
   appearance: none;
   background-image:
      linear-gradient(45deg, transparent 50%, var(--color-text-secondary) 50%),
      linear-gradient(135deg, var(--color-text-secondary) 50%, transparent 50%);
   background-position:
      calc(100% - 22px) 50%,
      calc(100% - 16px) 50%;
   background-size: 6px 6px, 6px 6px;
   background-repeat: no-repeat;
}

.oem_inquiry_field input[type="file"] {
   padding: 16px 18px;
   cursor: pointer;
}

.oem_inquiry_file_control {
   position: relative;
   display: flex;
   align-items: center;
   gap: 14px;
   width: 100%;
   min-height: 58px;
   padding: 8px 14px;
   border: 1px solid var(--color-line);
   background: #fff;
}

.oem_inquiry_file_control input[type="file"] {
   position: absolute;
   width: 1px;
   height: 1px;
   min-height: 1px;
   padding: 0;
   overflow: hidden;
   clip: rect(0, 0, 0, 0);
   clip-path: inset(50%);
   white-space: nowrap;
}

.oem_inquiry_field .oem_inquiry_file_button {
   display: inline-flex;
   flex: 0 0 auto;
   align-items: center;
   justify-content: center;
   min-height: 38px;
   padding: 0 16px;
   border: 1px solid var(--color-line);
   background: var(--color-bg-base);
   color: var(--color-text-primary);
   font-size: 14px;
   font-weight: 600;
   line-height: 1;
   cursor: pointer;
   transition: border-color 0.25s ease, background-color 0.25s ease;
}

.oem_inquiry_field .oem_inquiry_file_button:hover {
   border-color: var(--color-brand);
   background: #fff;
}

.oem_inquiry_file_control input[type="file"]:focus-visible + .oem_inquiry_file_button {
   outline: 2px solid var(--color-brand);
   outline-offset: 2px;
}

.oem_inquiry_file_name {
   min-width: 0;
   overflow: hidden;
   color: var(--color-text-secondary);
   font-size: 15px;
   line-height: 1.4;
   text-overflow: ellipsis;
   white-space: nowrap;
}

.oem_inquiry_field.is_error .oem_inquiry_file_control {
   border-color: #b8473d;
}

.oem_inquiry_field input:focus,
.oem_inquiry_field select:focus,
.oem_inquiry_field textarea:focus {
   outline: none;
   border-color: var(--color-brand);
   box-shadow: 0 0 0 3px rgba(102, 155, 69, 0.12);
}

.oem_inquiry_field.is_error input,
.oem_inquiry_field.is_error select,
.oem_inquiry_field.is_error textarea,
.oem_inquiry_privacy_check.is_error {
   border-color: #b8473d;
}

.oem_inquiry_error {
   min-height: 18px;
   margin: 0;
   color: #b8473d;
   font-size: 13px;
   font-weight: 400;
   line-height: 1.4;
}

.oem_inquiry_file_note,
.oem_inquiry_phone_note {
   margin: 0;
   color: var(--color-text-muted);
   font-size: 14px;
   line-height: 1.5;
}

.oem_inquiry_phone_note {
   margin-block: -6px;
}

.oem_inquiry_prepare {
   padding: 100px 0;
   background: #fff;
}

.oem_inquiry_prepare_grid {
   display: grid;
   grid-template-columns: repeat(3, minmax(0, 1fr));
   margin: 0;
   padding: 0;
   border-top: 1px solid #dfdfd8;
   border-left: 1px solid #dfdfd8;
   list-style: none;
}

.oem_inquiry_prepare_card {
   min-height: 230px;
   padding: 34px 32px;
   border-right: 1px solid #dfdfd8;
   border-bottom: 1px solid #dfdfd8;
   background: #fff;
}

.oem_inquiry_prepare_card span {
   display: block;
   margin-bottom: 28px;
   font-family: "Roboto", sans-serif;
   color: var(--color-brand);
   font-size: 14px;
   font-weight: 700;
   line-height: 1;
}

.oem_inquiry_prepare_card h3 {
   margin: 0 0 18px;
   color: var(--color-text-primary);
   font-size: 24px;
   font-weight: 700;
   line-height: 1.3;
}

.oem_inquiry_prepare_card p {
   margin: 0;
   color: var(--color-text-secondary);
   font-size: 16px;
   font-weight: 400;
   line-height: 1.7;
   word-break: keep-all;
}

.oem_inquiry_privacy_section {
   padding: 100px 0 140px;
   background: var(--color-bg-base);
}

.oem_inquiry_privacy_box {
   display: grid;
   grid-template-columns: minmax(0, 1.25fr) minmax(340px, 0.75fr);
   gap: 60px;
   padding: 48px;
   border: 1px solid var(--color-line);
   background: #fff;
}

.oem_inquiry_privacy_text h2 {
   margin: 0 0 28px;
   color: var(--color-text-primary);
   font-size: 34px;
   font-weight: 700;
   line-height: 1.25;
}

.oem_inquiry_privacy_text p {
   margin: 0 0 12px;
   color: var(--color-text-secondary);
   font-size: 16px;
   font-weight: 400;
   line-height: 1.75;
   word-break: keep-all;
   letter-spacing: -0.035em;
}

.oem_inquiry_no_wrap {
   white-space: nowrap;
}

.oem_inquiry_privacy_action {
   display: flex;
   flex-direction: column;
   justify-content: flex-end;
   gap: 18px;
}

.oem_inquiry_privacy_check {
   display: flex;
   align-items: center;
   gap: 12px;
   min-height: 58px;
   padding: 0 18px;
   border: 1px solid var(--color-line);
   background: var(--color-bg-base);
   color: var(--color-text-primary);
   font-size: 16px;
   font-weight: 600;
   line-height: 1.45;
   cursor: pointer;
}

.oem_inquiry_privacy_check input {
   flex: 0 0 auto;
   width: 18px;
   height: 18px;
   accent-color: var(--color-brand);
}

.oem_inquiry_submit {
   width: 100%;
   min-height: 64px;
   border: 0;
   background: var(--color-brand);
   color: var(--color-text-light);
   font-size: 18px;
   font-weight: 700;
   line-height: 1;
   cursor: pointer;
   transition: background-color 0.25s ease, transform 0.25s ease;
}

.oem_inquiry_submit:hover {
   background: #57883a;
   transform: translateY(-2px);
}

.oem_inquiry_submit:disabled {
   opacity: 0.75;
   cursor: wait;
   transform: none;
}

.oem_inquiry_status {
   min-height: 22px;
   margin: 0;
   color: var(--color-brand);
   font-size: 15px;
   font-weight: 600;
   line-height: 1.45;
}

.oem_inquiry_status.is_error {
   color: #b8473d;
}

.oem_inquiry_modal_open {
   overflow: hidden;
}

.oem_inquiry_result_modal {
   position: fixed;
   inset: 0;
   z-index: 20000;
   display: flex;
   align-items: center;
   justify-content: center;
   padding: 24px;
   background: rgba(18, 24, 21, 0.52);
   opacity: 0;
   pointer-events: none;
   transition: opacity 0.25s ease;
}

.oem_inquiry_result_modal.is_show {
   opacity: 1;
   pointer-events: auto;
}

.oem_inquiry_result_dialog {
   width: min(100%, 480px);
   padding: 46px 44px 42px;
   border: 1px solid #d8d8d2;
   background: #fff;
   text-align: center;
   box-shadow: 0 26px 80px rgba(0, 0, 0, 0.18);
   transform: translateY(18px);
   transition: transform 0.25s ease;
}

.oem_inquiry_result_dialog:focus,
.oem_inquiry_result_close:focus {
   outline: none;
}

.oem_inquiry_result_close:focus-visible {
   outline: 2px solid #3f6f2c;
   outline-offset: 3px;
}

.oem_inquiry_result_modal.is_show .oem_inquiry_result_dialog {
   transform: translateY(0);
}

.oem_inquiry_result_badge {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 56px;
   height: 56px;
   margin-bottom: 22px;
   border: 1px solid currentColor;
   color: var(--color-brand);
   font-size: 15px;
   font-weight: 800;
   letter-spacing: 0;
}

.oem_inquiry_result_modal.is_fail .oem_inquiry_result_badge {
   color: #b8473d;
}

.oem_inquiry_result_title {
   margin: 0;
   color: var(--color-text-primary);
   font-size: 30px;
   font-weight: 800;
   line-height: 1.3;
   letter-spacing: 0;
}

.oem_inquiry_result_desc {
   margin: 18px 0 30px;
   color: var(--color-text-secondary);
   font-size: 17px;
   font-weight: 400;
   line-height: 1.7;
}

.oem_inquiry_result_close {
   width: 100%;
   min-height: 56px;
   border: 0;
   background: var(--color-brand);
   color: var(--color-text-light);
   font-size: 17px;
   font-weight: 700;
   cursor: pointer;
   transition: background-color 0.25s ease, transform 0.25s ease;
}

.oem_inquiry_result_close:hover {
   background: #57883a;
   transform: translateY(-2px);
}

.oem_inquiry_result_modal.is_fail .oem_inquiry_result_close {
   background: var(--color-text-primary);
}

.oem_inquiry_result_modal.is_fail .oem_inquiry_result_close:hover {
   background: var(--color-bg-dark);
}

.mo_br {
   display: none;
}




@media (max-width: 1400px) {
   .oem_inquiry_inner {
      width: calc(100% - 120px);
   }
}


@media screen and (min-width: 600px) and (max-width: 1024px) {
   .oem_inquiry_inner {
      width: calc(100% - 48px);
   }

   .oem_inquiry_intro {
      padding: 90px 0 70px;
   }

   .oem_inquiry_intro_grid {
      grid-template-columns: 1fr;
      gap: 28px;
   }

   .oem_inquiry_intro_title {
      font-size: 48px;
   }

   .oem_inquiry_intro_desc {
      font-size: 18px;
      text-align: left;
   }

   .oem_inquiry_form_section,
   .oem_inquiry_prepare,
   .oem_inquiry_privacy_section {
      padding: 80px 0;
   }

   .oem_inquiry_section_head {
      margin-bottom: 36px;
      padding-top: 32px;
   }

   .oem_inquiry_section_head h2 {
      font-size: 34px;
   }

   .oem_inquiry_form_grid {
      gap: 24px;
   }

   .oem_inquiry_prepare_grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
   }

   .oem_inquiry_privacy_box {
      grid-template-columns: 1fr;
      gap: 34px;
      padding: 36px;
   }
}


@media screen and (min-width: 300px) and (max-width: 599px) {
   .mo_br {
      display: inline;
   }
   
   .pc_br {
      display: none;
   }


   .oem_inquiry_inner {
      width: calc(100% - 40px);
   }

   .oem_inquiry_intro {
      padding: 70px 0 55px;
   }

   .oem_inquiry_intro_grid {
      grid-template-columns: 1fr;
      gap: 24px;
   }

   .oem_inquiry_intro_title {
      font-size: 34px;
   }

   .oem_inquiry_intro_desc {
      font-size: 15px;
      line-height: 1.75;
      text-align: left;
   }

   .oem_inquiry_form_section,
   .oem_inquiry_prepare,
   .oem_inquiry_privacy_section {
      padding: 64px 0;
   }

   .oem_inquiry_section_head {
      display: block;
      margin-bottom: 28px;
      padding-top: 28px;
   }

   .oem_inquiry_section_head h2 {
      font-size: 28px;
   }

   .oem_inquiry_form_grid {
      grid-template-columns: 1fr;
      gap: 20px;
   }

   .oem_inquiry_field {
      gap: 10px;
   }

   .oem_inquiry_field label {
      font-size: 15px;
   }

   .oem_inquiry_field input,
   .oem_inquiry_field select,
   .oem_inquiry_field textarea {
      min-height: 54px;
      padding: 0 14px;
      font-size: 15px;
   }

   .oem_inquiry_field textarea {
      min-height: 170px;
      padding: 14px;
   }

   .oem_inquiry_file_control {
      min-height: 54px;
      padding: 7px 10px;
   }

   .oem_inquiry_field .oem_inquiry_file_button {
      min-height: 36px;
      padding: 0 12px;
      font-size: 13px;
   }

   .oem_inquiry_file_name {
      font-size: 14px;
   }

   .oem_inquiry_prepare_grid {
      grid-template-columns: 1fr;
   }

   .oem_inquiry_prepare_card {
      min-height: auto;
      padding: 28px 24px;
   }

   .oem_inquiry_prepare_card h3 {
      font-size: 21px;
   }

   .oem_inquiry_prepare_card p {
      font-size: 15px;
   }

   .oem_inquiry_privacy_box {
      grid-template-columns: 1fr;
      gap: 26px;
      padding: 26px 20px;
   }

   .oem_inquiry_privacy_text h2 {
      font-size: 24px;
   }

   .oem_inquiry_privacy_text p {
      font-size: 14px;
   }

   .oem_inquiry_privacy_check {
      align-items: flex-start;
      min-height: 54px;
      padding: 16px 14px;
      font-size: 14px;
   }

   .oem_inquiry_submit {
      min-height: 58px;
      font-size: 16px;
   }

   .oem_inquiry_result_modal {
      padding: 20px;
   }

   .oem_inquiry_result_dialog {
      padding: 34px 24px 30px;
   }

   .oem_inquiry_result_badge {
      width: 48px;
      height: 48px;
      margin-bottom: 18px;
      font-size: 13px;
   }

   .oem_inquiry_result_title {
      font-size: 23px;
   }

   .oem_inquiry_result_desc {
      margin: 14px 0 24px;
      font-size: 15px;
   }

   .oem_inquiry_result_close {
      min-height: 52px;
      font-size: 15px;
   }
}
