@charset "utf-8";
/* ======================================
   신청 페이지(특허·상표·디자인·저작권 registerForm) 리뉴얼 (2026-10-23)
   - 상단 비주얼은 서비스 페이지와 같은 .pat-hero(patent_svc.css) 사용
   - 입력 영역: 흰 박스 3단(신청 유형 / 신청인 정보 / 신청 내용), 둥근 입력칸, 포인트 컬러 버튼
   - 포인트 컬러: --pat-point(특허 #14335A · 상표 #4E1D60 · 디자인 #1E5542)
   - 모든 규칙은 .rfPage 아래로 한정, 입력 항목·이름·스크립트는 그대로
   ====================================== */
.rfPage{--rf-line:#E3E8EF; --rf-field:#F6F6F6;}
.rfPage .lnbContainer{padding:10rem 2rem 12rem 2rem;}
.rfPage .lnbContainer *{box-sizing:border-box;}

/* 제목 */
.rfPage .lnbContainer_titWrap{margin-bottom:3.2rem;}
.rfPage .lnb_titWrap{margin:0;}
.rfPage .lnb_titWrap02{margin-bottom:0 !important;}
.rfPage .lnb_titWrap:before{content:'APPLICATION FORM'; display:block; margin-bottom:1.2rem; font-family:'Pretendard-Bold'; font-size:1.4rem; line-height:2rem; letter-spacing:0.16em; color:var(--pat-point);}
.rfPage .lnb_tit{margin:0; font-family:'Pretendard-Bold'; font-weight:normal; font-size:4rem; line-height:5.2rem; letter-spacing:-0.02em; color:#111;}
.rfPage .lnb_desc{padding-top:1.2rem; font-family:'Pretendard-Medium'; font-weight:normal; font-size:1.8rem; line-height:3rem; color:#555;}
.rfPage .breadScrumbs{top:auto; bottom:0;}
.rfPage .breadScrumbs small{color:#888;}

/* 안내 박스 */
.rfPage .lnbInfoBox{margin-bottom:4rem; padding:2.2rem 3.2rem; border-radius:1.6rem; background:var(--pat-soft) !important;}
.rfPage .lnbInfoList{font-family:'Pretendard-Medium'; font-size:1.6rem; line-height:2.4rem; color:#333;}
.rfPage .lnbInfoList::before{top:0.7rem;}

/* 입력 박스 3단 */
.rfPage .lnbformWrap00,
.rfPage .lnbformWrap01{position:relative; margin:0 0 2.4rem 0; padding:6.4rem 4rem 1.2rem 4rem; border:1px solid var(--rf-line); border-top:1px solid var(--rf-line); border-radius:2.4rem; background:#fff;}
.rfPage .lnbformWrap00:before,
.rfPage .lnbformWrap01:before{position:absolute; left:4rem; top:3.2rem; font-family:'Pretendard-Bold'; font-size:2rem; line-height:2.8rem; color:#111;}
.rfPage .lnbformWrap00:before{content:'신청 유형';}
.rfPage .lnbformWrap01.mg_b80:before{content:'신청인 정보';}
.rfPage .lnbformWrap01:not(.mg_b80):before{content:'신청 내용';}
.rfPage .lnbformWrap00:after,
.rfPage .lnbformWrap01:after{content:''; position:absolute; left:4rem; right:4rem; top:7.2rem; height:2px; background:var(--pat-point);}
.rfPage .lnbformWrap00{padding-top:7.6rem;}
.rfPage .lnbformWrap01{padding-top:7.6rem;}
.rfPage .lnbformWrap01 .formWrap,
.rfPage .lnbformWrap00 .topCheckWrap,
.rfPage .lnbformWrap01 .txtBoxWrap,
.rfPage .lnbformWrap01 .fileBoxWrap{border-bottom:1px solid #EEF1F5;}
.rfPage .lnbformWrap00 > div:last-of-type,
.rfPage .lnbformWrap01 > div:last-of-type{border-bottom:0;}
.rfPage .formBox,
.rfPage .topCheckBox,
.rfPage .lnbformWrap01 .txtBox,
.rfPage .lnbformWrap01 .fileBox{margin:0; padding:2.2rem 0 2.2rem 16rem;}
.rfPage .formBox + .formBox{margin-left:4.8rem;}
.rfPage .formWrap .comper{margin:0 !important;}

/* 항목 이름 */
.rfPage .lnbformWrap01 .formWrap label,
.rfPage .fileBox strong,
.rfPage .lnbformWrap00 .topCheckBox strong,
.rfPage .lnbformWrap01 .txtBox label{font-family:'Pretendard-SemiBold'; font-weight:normal; font-size:1.6rem; line-height:2.4rem; color:#111;}
.rfPage .lnbformWrap01 .txtBox label{top:3.6rem;}
.rfPage .fileBox strong{top:4.4rem;}

/* 입력칸 */
.rfPage .lnbformWrap01 .formWrap input[type=text],
.rfPage .lnbformWrap01 .formWrap input[type=password],
.rfPage .custom-select select{height:5.2rem; min-height:5.2rem; padding:0 1.8rem; border:1px solid transparent; border-radius:1rem; background-color:var(--rf-field); font-family:'Pretendard-Medium'; font-size:1.5rem; color:#111; transition:border-color .2s, background-color .2s;}
.rfPage .lnbformWrap01 textarea{display:block; padding:1.6rem 1.8rem; border:1px solid transparent; border-radius:1.2rem; background-color:var(--rf-field); font-family:'Pretendard-Medium'; font-size:1.5rem; line-height:2.4rem; color:#111; resize:vertical; transition:border-color .2s, background-color .2s;}
.rfPage .lnbformWrap01 .formWrap input[type=text]:focus,
.rfPage .lnbformWrap01 .formWrap input[type=password]:focus,
.rfPage .custom-select select:focus,
.rfPage .lnbformWrap01 textarea:focus{border-color:var(--pat-point); background-color:#fff; outline:0;}
.rfPage .formBox input::placeholder,
.rfPage .lnbformWrap01 textarea::placeholder{font-family:'Pretendard-Regular','Pretendard'; font-size:1.4rem !important; color:#999;}
.rfPage .txtBox00 textarea{height:8.8rem;}
.rfPage .txtBox01 textarea{height:14rem;}
.rfPage .txtBox02 textarea{height:18rem;}
.rfPage .txtBox03 textarea{height:28rem;}

/* 선택(라디오): 둥근 선택 버튼 */
.rfPage .topCheckBox strong{top:3.4rem; transform:none;}
.rfPage .lnbformWrap00 .topCheckBox label,
.rfPage .topCheckBox input[type="radio"] + label,
.rfPage .topCheckBox input[type="radio"].iplong + label{width:auto; margin:0.4rem 0.8rem 0.4rem 0; padding:1.1rem 2.2rem 1.1rem 4.6rem; border:1px solid var(--rf-line); border-radius:99px; background:#fff; font-family:'Pretendard-SemiBold'; font-size:1.5rem; line-height:2.2rem; color:#444; transition:border-color .2s, background-color .2s, color .2s;}
.rfPage .topCheckBox label + label{margin-left:0;}
.rfPage .topCheckBox input[type="radio"] + label:before{left:1.8rem; width:1.8rem; height:1.8rem; border:1px solid #BFC7D2;}
.rfPage .topCheckBox input[type="radio"] + label:after{top:50%; left:2.3rem; width:0.8rem; height:0.8rem; margin-top:-0.4rem; background:#fff;}
.rfPage .topCheckBox input[type="radio"]:checked + label{border-color:var(--pat-point); background:var(--pat-soft); color:var(--pat-point);}
.rfPage .topCheckBox input[type="radio"] + label:before{box-sizing:border-box;}
/* 선택 표시: 바깥 원 테두리를 두껍게 해 흰 원이 정확히 가운데 오도록(별도 점 사용 안 함) */
.rfPage .topCheckBox input[type="radio"]:checked + label:before{border:0.5rem solid var(--pat-point); background:#fff;}
.rfPage .topCheckBox input[type="radio"] + label:after{display:none;}
.rfPage .topCheckBox input[type="radio"]:focus-visible + label{outline:2px solid var(--pat-point); outline-offset:2px;}

/* 첨부파일 */
.rfPage .btcd-f-input{width:100%; max-width:64rem; margin-bottom:0.8rem;}
.rfPage .file_up_load_box{height:4.8rem;}
.rfPage .file_up_load_box input{height:4.8rem !important; width:calc(100% - 9.2rem); margin-left:9.2rem !important; padding-left:1.8rem !important; border-radius:1rem; background-color:var(--rf-field); font-family:'Pretendard-Medium'; font-size:1.4rem;}
.rfPage .file_input_div{width:8.4rem; height:4.8rem; border-radius:1rem;}
.rfPage .file_input_div::before{width:8.4rem; line-height:4.8rem; border-radius:1rem; background-color:var(--pat-point); font-family:'Pretendard-SemiBold'; font-size:1.4rem;}

/* 개인정보 동의 */
.rfPage .inbAgreeWrap{margin-top:4rem;}
.rfPage .agreeBox{padding:2.8rem 3.2rem; border:1px solid var(--rf-line); border-radius:2rem; background:#FAFBFC;}
.rfPage .agreeBox_tit{font-family:'Pretendard-Bold'; font-size:1.6rem; line-height:2.4rem; color:#111;}
.rfPage .agreeBox_desc{font-family:'Pretendard-Regular','Pretendard'; font-size:1.4rem; line-height:2.4rem; color:#777;}
.rfPage .checkWrap{padding-top:2rem;}
.rfPage .checkBox{padding-left:3rem; font-family:'Pretendard-SemiBold'; font-size:1.5rem; line-height:2.4rem; color:#222;}
.rfPage .checkmark{width:2rem; height:2rem; border:1px solid #BFC7D2; border-radius:0.5rem; background:#fff;}
.rfPage .checkBox input:checked ~ .checkmark{border-color:var(--pat-point); background-color:var(--pat-point);}
.rfPage .checkBox .checkmark:after{left:0.65rem; top:0.25rem; width:0.5rem; height:1rem; border-color:#fff;}

/* 신청 버튼 */
.rfPage .registerBtn_wrap{margin-top:4.8rem;}
.rfPage .registerBtn{width:30rem; height:6.4rem; border-radius:99px; background-color:var(--pat-point) !important; font-family:'Pretendard-Bold'; font-size:1.8rem; box-shadow:0 1.2rem 2.4rem rgba(20,51,90,0.18); transition:transform .2s, box-shadow .2s;}
.rfPage .registerBtn:hover{transform:translateY(-0.2rem); box-shadow:0 1.6rem 3.2rem rgba(20,51,90,0.24);}

@media (max-width:991px){
	.rfPage .lnbContainer{padding:8rem 2rem 10rem 2rem;}
	.rfPage .lnb_tit{font-size:3.4rem; line-height:4.6rem;}
	.rfPage .lnbformWrap00,
	.rfPage .lnbformWrap01{padding-left:3.2rem; padding-right:3.2rem;}
	.rfPage .lnbformWrap00:before,
	.rfPage .lnbformWrap01:before{left:3.2rem;}
	.rfPage .lnbformWrap00:after,
	.rfPage .lnbformWrap01:after{left:3.2rem; right:3.2rem;}
	.rfPage .formBox,
	.rfPage .topCheckBox,
	.rfPage .lnbformWrap01 .txtBox,
	.rfPage .lnbformWrap01 .fileBox{padding-left:12rem;}
	.rfPage .formBox + .formBox{margin-left:2.4rem;}
}
@media (max-width:767px){
	.rfPage .lnbContainer{padding:5.6rem 2rem 6.4rem 2rem;}
	.rfPage .lnbContainer_titWrap{margin-bottom:2.4rem;}
	.rfPage .lnb_titWrap:before{margin-bottom:0.8rem; font-size:1.2rem; line-height:1.8rem;}
	.rfPage .lnb_tit{font-size:2.6rem; line-height:3.6rem;}
	.rfPage .lnb_desc{padding-top:0.8rem; font-size:1.4rem; line-height:2.3rem;}
	.rfPage .breadScrumbs{display:none;}
	.rfPage .lnbInfoBox{margin-bottom:2.4rem; padding:1.6rem 2rem; border-radius:1.2rem;}
	.rfPage .lnbInfoList{font-size:1.4rem; line-height:2.2rem;}
	.rfPage .lnbInfoList::before{top:0.6rem;}
	.rfPage .lnbformWrap00,
	.rfPage .lnbformWrap01{margin-bottom:1.6rem; padding:6rem 2rem 0.8rem 2rem; border-radius:1.6rem;}
	.rfPage .lnbformWrap00:before,
	.rfPage .lnbformWrap01:before{left:2rem; top:2.4rem; font-size:1.7rem; line-height:2.4rem;}
	.rfPage .lnbformWrap00:after,
	.rfPage .lnbformWrap01:after{left:2rem; right:2rem; top:5.6rem;}
	.rfPage .formBox,
	.rfPage .topCheckBox,
	.rfPage .lnbformWrap01 .txtBox,
	.rfPage .lnbformWrap01 .fileBox{padding:1.8rem 0;}
	.rfPage .formBox + .formBox{margin-left:0;}
	.rfPage .formBox{border-bottom:1px solid #EEF1F5;}
	.rfPage .lnbformWrap01 .formWrap{border-bottom:0;}
	.rfPage .lnbformWrap01 > div:last-of-type .formBox:last-child{border-bottom:0;}
	.rfPage .lnbformWrap01 .formWrap label,
	.rfPage .lnbformWrap01 .txtBox label,
	.rfPage .fileBox strong,
	.rfPage .lnbformWrap00 .topCheckBox strong{display:block; margin-bottom:1rem; padding-bottom:0; font-size:1.5rem; line-height:2.2rem;}
	.rfPage .lnbformWrap00 .topCheckBox strong{position:static !important;}
	.rfPage .lnbformWrap01 .formWrap input[type=text],
	.rfPage .lnbformWrap01 .formWrap input[type=password],
	.rfPage .custom-select select{height:4.8rem; min-height:4.8rem; font-size:1.4rem;}
	.rfPage .topCheckBox input[type="radio"] + label,
	.rfPage .topCheckBox input[type="radio"].iplong + label{margin:0.3rem 0.6rem 0.3rem 0; padding:0.9rem 1.6rem 0.9rem 4rem; font-size:1.4rem;}
	.rfPage .topCheckBox input[type="radio"] + label:before{left:1.4rem; width:1.6rem; height:1.6rem;}
	.rfPage .topCheckBox input[type="radio"] + label:after{left:1.8rem;}
	.rfPage .txtBox00 textarea{height:10rem;}
	.rfPage .txtBox03 textarea{height:22rem;}
	.rfPage .file_up_load_box input{font-size:1.3rem;}
	.rfPage .agreeBox{padding:2rem; border-radius:1.6rem;}
	.rfPage .agreeBox_tit{font-size:1.5rem;}
	.rfPage .agreeBox_desc{font-size:1.3rem; line-height:2.2rem;}
	.rfPage .inbAgreeWrap{margin-top:2.4rem;}
	.rfPage .registerBtn_wrap{margin-top:3.2rem;}
	.rfPage .registerBtn{width:100%; height:5.6rem; font-size:1.6rem;}
}
