@charset "UTF-8";
/* =========================================================
   PREREGISTER — 온라인 사전접수 (about2.css 뒤에 로드)
   에디토리얼 폼 · 블루 악센트
========================================================= */

.pr-wrap{padding:clamp(60px,8vw,130px) 0 clamp(90px,12vw,180px)}
.pr-form{max-width:920px;margin:0 auto}

/* ---------- 섹션 구분 ---------- */
.pr-sec{margin-top:clamp(48px,6vw,84px)}
.pr-sec:first-child{margin-top:0}
.pr-sec__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--ink);margin-bottom:clamp(24px,3vw,40px)}
.pr-sec__head h2{font-size:clamp(1.35rem,2vw,1.75rem);font-weight:600;letter-spacing:-.02em}
.pr-sec__head p{font-size:.95rem;color:var(--gray)}
.pr-sec__head p em{font-style:normal;color:var(--accent);font-weight:700}

/* ---------- 필드 ---------- */
.pr-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,2.6vw,34px) clamp(18px,2.2vw,30px)}
.pr-field{display:flex;flex-direction:column;gap:10px}
.pr-field--full{grid-column:1/-1}
.pr-field>label{font-size:1rem;font-weight:600;color:var(--ink);letter-spacing:-.01em}
.pr-field>label em{font-style:normal;color:var(--accent);margin-left:3px}
.pr-field .hint{font-size:.9rem;color:var(--gray-l)}
.pr-input,.pr-select,.pr-textarea{width:100%;padding:15px 18px;border:1px solid var(--line);background:#fff;font-family:var(--kr);font-size:1.02rem;color:var(--ink);border-radius:0;transition:border-color .3s;-webkit-appearance:none;appearance:none}
.pr-input:focus,.pr-select:focus,.pr-textarea:focus{outline:none;border-color:var(--accent)}
.pr-input::placeholder,.pr-textarea::placeholder{color:var(--gray-l)}
.pr-textarea{min-height:130px;resize:vertical;line-height:1.7}
.pr-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%235B6675' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:18px}
.pr-tel{display:grid;grid-template-columns:110px 1fr 1fr;gap:10px;align-items:center}

/* ---------- 필독사항 ---------- */
.pr-notice{border:1px solid var(--line);border-bottom:0}
.pr-notice li{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:start;padding:clamp(18px,2.2vw,28px);border-bottom:1px solid var(--line);background:#fff;transition:background .3s}
.pr-notice li:nth-child(even){background:var(--cream)}
.pr-notice li.ok{background:#F0F6FF}
.pr-notice .tit{font-family:var(--eng);font-size:.82rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
.pr-notice .txt{margin-top:8px;font-size:.99rem;line-height:1.8;color:var(--gray);word-break:keep-all}
.pr-notice .txt b{color:var(--ink-2);font-weight:600}
.pr-notice .txt small{display:block;margin-top:8px;font-size:.93em;color:var(--gray);line-height:1.75}

/* 체크 토글 */
.pr-check{position:relative;display:inline-flex;align-items:center;gap:9px;cursor:pointer;user-select:none;white-space:nowrap;padding:9px 18px;border:1px solid var(--line);border-radius:999px;font-size:.94rem;font-weight:600;color:var(--gray);transition:border-color .3s,background .3s,color .3s}
.pr-check input{position:absolute;opacity:0;pointer-events:none}
.pr-check svg{width:15px;height:15px;flex:none}
.pr-check svg path{stroke-dasharray:20;stroke-dashoffset:20;transition:stroke-dashoffset .35s var(--ease)}
.pr-check:has(input:checked){border-color:var(--accent);background:var(--accent);color:#fff}
.pr-check:has(input:checked) svg path{stroke-dashoffset:0}

/* ---------- 개인정보 동의 ---------- */
.pr-privacy{border:1px solid var(--line);background:var(--cream);padding:clamp(20px,2.6vw,32px);max-height:280px;overflow-y:auto;font-size:.94rem;line-height:1.85;color:var(--gray)}
.pr-privacy h4{font-size:1rem;font-weight:700;color:var(--ink-2);margin:18px 0 6px}
.pr-privacy h4:first-child{margin-top:0}
.pr-agree{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.pr-agree label{display:inline-flex;align-items:center;gap:10px;padding:13px 24px;border:1px solid var(--line);border-radius:999px;font-size:.99rem;font-weight:600;color:var(--gray);cursor:pointer;transition:border-color .3s,background .3s,color .3s}
.pr-agree input{position:absolute;opacity:0;pointer-events:none}
.pr-agree label:has(input:checked){border-color:var(--accent);background:var(--accent);color:#fff}

/* ---------- 제출 ---------- */
.pr-submit{margin-top:clamp(40px,5vw,64px);text-align:center}
.pr-submit button{display:inline-flex;align-items:center;gap:12px;padding:19px 64px;border:0;border-radius:999px;background:var(--ink);color:#fff;font-family:var(--kr);font-size:1.1rem;font-weight:700;cursor:pointer;transition:background .4s,transform .4s var(--ease)}
.pr-submit button:hover{background:var(--accent);transform:translateY(-3px)}
.pr-submit .note{margin-top:16px;font-size:.95rem;color:var(--gray)}

/* 완료 메시지 */
.pr-done{display:none;text-align:center;padding:clamp(60px,8vw,110px) 20px}
.pr-done.show{display:block}
.pr-done .ico{display:grid;place-items:center;width:74px;height:74px;margin:0 auto 26px;border-radius:50%;background:var(--beige);color:var(--accent)}
.pr-done .ico svg{width:34px;height:34px}
.pr-done h3{font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:600;letter-spacing:-.03em}
.pr-done p{margin-top:14px;font-size:1.08rem;color:var(--gray);line-height:1.85;word-break:keep-all}
.pr-done p b{color:var(--accent);font-weight:700}

@media(max-width:700px){
  .pr-grid{grid-template-columns:1fr}
  .pr-tel{grid-template-columns:90px 1fr 1fr}
  .pr-notice li{grid-template-columns:1fr}
  .pr-notice .pr-check{justify-self:start}
}
