@charset "utf-8";
/* ══════════════════════════════════════════════════════════════
   2026-10-13 전면 개편 (대표님: 레퍼런스와 비교해 디자인·오류·간격·여백 전면 개편)
   custom.css 다음에 읽힌다. 이 파일은 그 위에 덮는 층이다.
   ══════════════════════════════════════════════════════════════ */

.nowrap{ white-space:nowrap; }

/* ── 1) 메인 히어로 ───────────────────────────────────────────
   레퍼런스: 큰 제목 → 선 → 세 줄 포인트가 순서대로 등장.
   우리: 영문 머리말 → 제목 두 줄이 아래에서 올라옴 → 금색 선 → 포인트 */
.section_hero .hero_bg::after{
  background:
    linear-gradient(180deg, rgba(10,14,30,.50) 0%, rgba(10,14,30,0) 24%),
    linear-gradient(100deg, rgba(10,14,30,.66) 0%, rgba(10,14,30,.36) 40%, rgba(10,14,30,0) 70%) !important;
}
.section_hero .hero_inner{ padding-bottom:6vh; }
.section_hero .hero_eyebrow{
  margin:0 0 22px; overflow:hidden;
  font-family:var(--font-en); font-weight:400;
  font-size:clamp(12px,1vw,17px); letter-spacing:.34em; line-height:1.4;
  color:rgba(255,255,255,.86);
}
.section_hero .hero_eyebrow span{ display:inline-block; transform:translateY(110%); }
.hero_title--text{ font-size:clamp(36px,4.3vw,82px) !important; line-height:1.14 !important; }
.hero_title--text .hero_title_ln{ display:block; overflow:hidden; padding-bottom:.05em; }
.hero_title--text .hero_title_in{ display:inline-block; transform:translateY(108%); }
.is-main .section_hero .hero_eyebrow span{ animation:svRise .9s cubic-bezier(.22,1,.36,1) .1s forwards; }
.is-main .section_hero .hero_title_ln:nth-child(1) .hero_title_in{ animation:svRise 1s cubic-bezier(.22,1,.36,1) .25s forwards; }
.is-main .section_hero .hero_title_ln:nth-child(2) .hero_title_in{ animation:svRise 1s cubic-bezier(.22,1,.36,1) .42s forwards; }
@keyframes svRise{ to{ transform:none; } }

.section_hero .hero_copy{ margin-top:28px !important; }
.section_hero .hero_copy_line{
  display:block !important; width:64px !important; height:2px !important;
  margin:0 0 24px !important; background:var(--brand-gold) !important;
  transform:scaleX(0); transform-origin:left center;
}
.is-hero-copy .section_hero .hero_copy_line{ animation:hero-copy-line-in .8s cubic-bezier(.4,0,.2,1) .95s forwards !important; }
.section_hero .hero_points li{ opacity:0; transform:translateY(12px); }
.is-hero-copy .section_hero .hero_points li{ animation:svFadeUp .7s cubic-bezier(.22,1,.36,1) forwards !important; }
.is-hero-copy .section_hero .hero_points li:nth-child(1){ animation-delay:1.15s !important; }
.is-hero-copy .section_hero .hero_points li:nth-child(2){ animation-delay:1.3s !important; }
.is-hero-copy .section_hero .hero_points li:nth-child(3){ animation-delay:1.45s !important; }
@keyframes svFadeUp{ to{ opacity:1; transform:none; } }
@media (max-width:1024px){
  .hero_title--text{ font-size:clamp(30px,8.4vw,46px) !important; }
  .section_hero .hero_eyebrow{ font-size:11px; letter-spacing:.24em; margin-bottom:14px; }
  .section_hero .hero_copy{ margin-top:20px !important; }
  .section_hero .hero_copy_line{ width:48px !important; margin-bottom:18px !important; }
}
@media (prefers-reduced-motion:reduce){
  .section_hero .hero_eyebrow span, .hero_title--text .hero_title_in{ transform:none; animation:none !important; }
  .section_hero .hero_copy_line{ transform:none; animation:none !important; }
  .section_hero .hero_points li{ opacity:1; transform:none; animation:none !important; }
}

/* ── 2) 분양일정 구간 — 임시 남색 이미지(금색 선 박힘) → 흰 실크 ──
   레퍼런스 템플릿은 흰 바탕 기준 색(제목 #111·반투명 흰 카드)이라
   남색 바탕 위에서 제목·카드·버튼이 전부 묻혀 있었다 */
.section_schedule .schedule_inner{ background-image:url('/assets/img/main/schedule_bg_v2.jpg') !important; }
.section_schedule .schedule_item:not(.schedule_item--open){ background:rgba(255,255,255,.62); }
.section_schedule .schedule_link{ background:rgba(255,255,255,.66); }
.section_schedule .schedule_title{ color:#141a33; }

/* ── 3) 세대안내 구간 — 어두운 거실 사진 위 글자 대비 ── */
.section_unit .unit_dim{ background:rgba(10,8,6,.30); }

/* ── 4) 커뮤니티 — 밝은 사진 위 흰 제목이 묻히던 것 ── */
.section_community .community_dim{
  background:linear-gradient(180deg, rgba(10,12,22,.42) 0%, rgba(10,12,22,.40) 50%, rgba(10,12,22,.62) 100%) !important;
}

/* ── 5) 오시는길·관심고객 구간 — 밝은 벽 사진 + 검은 세리프 제목(레퍼런스 구성) ── */
.section_contact .contact_dim{ background:rgba(255,255,255,.10); }
.section_contact .contact_title,
.section_contact .contact_desc{ word-break:keep-all; }
.section_contact .contact_desc{ color:#2b2b2b; }

/* ── 6) 푸터 — 주소·전화가 번호 중간에서 끊기던 것 ── */
.footer_address .nowrap{ display:inline-block; }
.footer_address .footer_sep{ font-style:normal; opacity:.55; }
@media (max-width:600px){
  .footer_address .footer_sep{ display:none; }
  .footer_address .nowrap{ display:block; }
}
.footer_logo{ width:240px !important; max-height:none !important; height:auto !important; }
@media (max-width:1024px){ .footer_logo{ width:200px !important; } }

/* ── 7) 서브 상단 배너 — 임시 남색 이미지(가운데 금색 선이 제목을 가로지름) → 남색 실크 ── */
.sub_top_visual{
  background-image:url('/assets/img/sub/sub_top_v2.jpg') !important;
  background-color:#1E2A59;
}
.sub_top_visual .page_tit_en{ letter-spacing:.02em; }

/* ── 8) 단지배치도 페이지 — 레퍼런스 「단지설계」 카드 구성 ── */
.sansu_plan{ background:#f5f5f8; border-radius:18px; padding:56px 56px 48px; }
.sansu_plan_head{ text-align:center; margin-bottom:34px; }
.sansu_plan_eyebrow{
  margin:0 0 10px; padding-left:.32em;
  font-family:var(--font-en); font-size:15px; letter-spacing:.32em; color:var(--brand-navy); opacity:.75;
}
.sansu_plan_title{ margin:0; font-size:clamp(24px,2.3vw,34px); font-weight:800; letter-spacing:-.035em; color:var(--brand-navy); word-break:keep-all; }
.sansu_plan_desc{ margin:10px 0 0; font-size:16px; color:#5A5A63; }
.sansu_plan_grid{ display:grid; grid-template-columns:2.15fr 1fr; gap:14px; }
.sansu_plan_main{ position:relative; display:block; border-radius:12px; overflow:hidden; background:#0e130f; }
.sansu_plan_main img{ display:block; width:100%; height:auto; }
.sansu_plan_zoom{
  position:absolute; right:14px; top:14px; padding:6px 13px; border-radius:20px;
  background:rgba(18,22,40,.74); color:#fff; font-size:12.5px; font-weight:600; letter-spacing:-.01em;
}
.sansu_plan_sub{ display:grid; grid-template-rows:repeat(3,minmax(0,1fr)); gap:14px; margin:0; padding:0; list-style:none; }
.sansu_plan_sub li{ position:relative; min-height:0; border-radius:12px; overflow:hidden; background:#ddd; }
.sansu_plan_sub img{ display:block; width:100%; height:100%; object-fit:cover; }
.sansu_plan_tag{
  position:absolute; left:12px; bottom:12px; padding:5px 11px; border-radius:4px;
  background:rgba(18,22,40,.74); color:#fff; font-size:13px; font-weight:600;
}
.sansu_plan_points{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:28px 0 0; padding:0; list-style:none; }
.sansu_plan_points li{ display:flex; flex-direction:column; gap:6px; padding:18px 20px; background:#fff; border:1px solid #e4e4ec; border-radius:10px; }
.sansu_plan_points b{ font-size:17px; font-weight:800; color:var(--brand-navy); letter-spacing:-.02em; }
.sansu_plan_points span{ font-size:14px; line-height:1.6; color:#5A5A63; word-break:keep-all; }
@media (max-width:1024px){
  .sansu_plan{ padding:28px 16px 18px; border-radius:14px; }
  .sansu_plan_head{ margin-bottom:22px; }
  .sansu_plan_eyebrow{ font-size:12px; }
  .sansu_plan_desc{ font-size:14px; }
  .sansu_plan_grid{ grid-template-columns:1fr; gap:8px; }
  .sansu_plan_sub{ grid-template-rows:none; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  .sansu_plan_sub li{ aspect-ratio:1 / 1; border-radius:8px; }
  .sansu_plan_tag{ left:6px; bottom:6px; padding:3px 7px; font-size:11px; }
  .sansu_plan_zoom{ right:8px; top:8px; font-size:11px; padding:4px 9px; }
  .sansu_plan_points{ grid-template-columns:1fr; gap:8px; margin-top:16px; }
  .sansu_plan_points li{ padding:14px 16px; }
  .sansu_plan_points b{ font-size:15.5px; }
  .sansu_plan_points span{ font-size:13.5px; }
}

/* ── 9) 입지환경 — 여섯 가지 가치를 사진 카드로(레퍼런스 VISION 구성) ── */
.sansu_loc_list li{ padding:0 0 24px !important; overflow:hidden; background:#fff !important; }
.sansu_loc_img{ position:relative; margin:0 0 20px; aspect-ratio:16 / 9; overflow:hidden; background:#e9e9ee; }
.sansu_loc_img img{ display:block; width:100%; height:100%; object-fit:cover; transition:transform .7s cubic-bezier(.22,1,.36,1); }
.sansu_loc_list li:hover .sansu_loc_img img{ transform:scale(1.04); }
.sansu_loc_img .image_cut{ position:absolute; right:8px; bottom:8px; margin:0; }
.sansu_loc_list li > .sansu_loc_no,
.sansu_loc_list li > strong,
.sansu_loc_list li > p{ margin-left:22px; margin-right:22px; }
@media (max-width:1024px){
  .sansu_loc_list{ grid-template-columns:1fr 1fr !important; gap:12px !important; }
  .sansu_loc_list li{ padding-bottom:16px !important; }
  .sansu_loc_img{ margin-bottom:12px; }
  .sansu_loc_list li > .sansu_loc_no,
  .sansu_loc_list li > strong,
  .sansu_loc_list li > p{ margin-left:12px; margin-right:12px; }
  .sansu_loc_list strong{ font-size:14.5px !important; }
  .sansu_loc_list p{ font-size:12.5px !important; line-height:1.6 !important; }
}
@media (max-width:600px){
  .sansu_loc_list{ grid-template-columns:1fr !important; gap:14px !important; }
  .sansu_loc_list strong{ font-size:16px !important; }
  .sansu_loc_list p{ font-size:13.5px !important; }
}

/* ── 10) 입지 프리미엄 — 7번째 항목이 왼쪽에 혼자 남던 것 → 가운데 ── */
@media (min-width:1025px){
  .temp_premium_skin1 .premium_list > li:last-child:nth-child(odd){
    grid-column:1 / -1; width:calc(50% - 15px); justify-self:center;
  }
}
.temp_premium_skin1 .premium_foot_logo img{ width:240px !important; }

/* ── 11) 오시는 길 페이지 — 광역 약도가 444px 칸에 눌려 안 보이던 것 → 지도 크게, 주소는 아래 2열 ── */
@media (min-width:1025px){
  .temp_contactus_skin1 .page_cont_wrap{ padding:0 !important; }
  .temp_contactus_skin1 .contact_logo{ width:240px; margin-bottom:34px; }
  .temp_contactus_skin1 .contact_body{ flex-direction:column; align-items:stretch; gap:40px; padding-top:40px; }
  .temp_contactus_skin1 .contact_map{ flex:none; max-width:none; border-width:1px; border-radius:6px; }
  .temp_contactus_skin1 .contact_info_list{ flex-direction:row; max-width:none; gap:24px; }
  .temp_contactus_skin1 .contact_info_item{
    flex:1 1 0; min-width:0; padding:26px 28px; border:1px solid #e4e4ec; border-radius:10px; background:#fafafc;
  }
  .temp_contactus_skin1 .contact_info_txt strong{ font-size:24px; margin-bottom:8px; }
  .temp_contactus_skin1 .contact_info_txt p{ font-size:18px; }
}

/* ── 12) 평면안내 KEY MAP — 3D 투시도 대신 해당 타입이 있는 동을 표시한 배치도 ── */
.unit_keymap_image img{ border-radius:6px; }

/* ── 13) 평면 타입 탭 — 레퍼런스(7타입)용 7칸 그리드라 우리 4타입은 「113」 칸이 남은 폭을 다 먹은 것처럼 보였다 ── */
.unit_page .unit_tab .list{ grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
@media (max-width:1024px){
  .unit_page .unit_tab .list li{ border-left:0 !important; border-top:1px solid var(--primary-color) !important; }
  .unit_page .unit_tab .list li:first-child{ border-left:1px solid var(--primary-color) !important; }
}

/* ── 14) 모집공고·청약안내 — 글자를 구운 남색 이미지(어도비 다운로드로 연결돼 있었다) → HTML 안내 상자 ── */
.sansu_wait_box{
  display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center;
  width:100%; box-sizing:border-box; padding:54px 24px; margin-top:8px;
  background:#f5f5f8; border:1px solid #e4e4ec; border-radius:12px;
}
.sansu_wait_box--tall{ padding:96px 24px; }
.sansu_wait_title{ font-size:clamp(22px,2vw,30px); font-weight:800; color:var(--brand-navy); letter-spacing:-.03em; }
.sansu_wait_rule{ display:block; width:48px; height:2px; margin:16px auto; background:var(--brand-gold); }
.sansu_wait_desc{ margin:0; font-size:16px; color:#5A5A63; word-break:keep-all; }
.sansu_wait_btn{
  display:inline-flex; align-items:center; justify-content:center; margin-top:26px; height:50px; padding:0 30px;
  border-radius:25px; background:var(--brand-navy); color:#fff !important; font-size:15px; font-weight:700; text-decoration:none;
}
@media (max-width:1024px){
  .sansu_wait_box{ padding:36px 18px; margin-top:16px; }
  .sansu_wait_box--tall{ padding:56px 18px; }
  .sansu_wait_desc{ font-size:14px; }
}
/* 모집공고 카드 — 「공고 발표 후 게시」 밑줄은 링크처럼 보인다(누를 수 없는 글자) → 밑줄 제거 */
.sansu_gonggo_wait .gonggo_btn.is-wait h3{ text-decoration:none !important; opacity:.8; }
.sansu_gonggo_wait .gonggo_btn.is-wait h2 > span{ padding-right:12px; }

/* ── 15) 푸터 — 분양대행 00000(대표님 2026-10-13) 아래 줄에 사이트제작 표기 ── */
.footer_maker{ margin:6px 0 0; font-size:13px; font-weight:500; color:#c4c4c4; text-align:center; }
.footer_maker em{ font-style:normal; opacity:.72; margin-right:.25em; }

/* ── 16) 공급안내 표 — 390px 에서 오른쪽 여백을 12px 침범하던 것 → 표만 좌우로 밀어 보기 ── */
@media (max-width:600px){
  .sansu_supply{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .sansu_supply_tbl{ min-width:560px; }
  .sansu_supply::after{ content:'← 표를 좌우로 밀어 확인하세요'; display:block; margin-top:8px; font-size:12px; color:#6a6a73; }
}

/* ── 17) 한글이 단어 중간에서 끊기던 것(「교육환 / 경」「광주교육 / 대」「가까 / 이」) — 전 화면 어절 단위 줄바꿈 ── */
body{ word-break:keep-all; overflow-wrap:break-word; }

/* ── 18) 모집공고 카드(모바일) — 받을 파일이 없는데 다운로드 화살표가 보이던 것 ── */
@media (max-width:1024px){
  .sansu_gonggo_wait .gonggo_btn.is-wait h2:after{ display:none !important; }
}

/* ── 19) KEY MAP — 동 강조 배치도가 작아 안 보이던 것 ── */
.unit_page .unit_keymap_image img{ width:100%; max-width:260px; height:auto; display:block; margin:0 auto; }
@media (max-width:1024px){ .unit_page .unit_keymap_image img{ max-width:320px; } }
@media (min-width:1025px){ .unit_page .unit_keymap{ width:280px; } }

/* ── 20) 입지 4패널 — 우리 사진이 레퍼런스보다 밝아 본문이 사진에 묻혔다 → 글자 쪽을 더 어둡게
         PC: 1·3번은 글자가 아래, 2·4번은 위 / 모바일: 전부 아래 ── */
.environment_layer_inner .environment_layer_item::after{
  background:linear-gradient(0deg, rgba(8,10,20,.80) 0%, rgba(8,10,20,.50) 45%, rgba(8,10,20,.30) 100%) !important;
}
.environment_layer_inner .environment_layer_item:nth-child(even)::after{
  background:linear-gradient(180deg, rgba(8,10,20,.80) 0%, rgba(8,10,20,.50) 45%, rgba(8,10,20,.30) 100%) !important;
}
@media (max-width:1024px){
  .environment_layer_inner .environment_layer_item::after,
  .environment_layer_inner .environment_layer_item:nth-child(even)::after{
    background:linear-gradient(0deg, rgba(8,10,20,.84) 0%, rgba(8,10,20,.55) 55%, rgba(8,10,20,.30) 100%) !important;
  }
}

/* ── 21) 커뮤니티 — 밝은 사진 위 제목·설명이 약하던 것 → 레퍼런스 수준으로 어둡게 ── */
.section_community .community_dim{
  background:linear-gradient(180deg, rgba(10,12,22,.56) 0%, rgba(10,12,22,.50) 50%, rgba(10,12,22,.70) 100%) !important;
}

/* ══ 가독성 2차 (2026-10-13 대표님 「색깔 때문에 글씨들이 잘 안 보인다」) — 픽셀 대비 검사로 찾은 것 ══ */

/* 22) 모바일 하단 고정바 — 레퍼런스 보라(48,27,76)가 그대로 남아 있었다 → 우리 남색 */
.main-bottom-bar{ background:rgba(30,42,89,.97) !important; }

/* 23) 히어로 — 금색 작은 글씨(2.7)가 사진 밝은 곳에 묻힘 → 밝은 금색 + 글자 쪽 어둡게 */
.section_hero .hero_bg::after{
  background:
    linear-gradient(180deg, rgba(10,14,30,.50) 0%, rgba(10,14,30,0) 24%),
    linear-gradient(100deg, rgba(10,14,30,.74) 0%, rgba(10,14,30,.48) 42%, rgba(10,14,30,0) 72%) !important;
}
.section_hero .hero_points li b{ color:#FFD98A !important; }
@media (max-width:1024px){
  .section_hero .hero_bg::after{
    background:linear-gradient(180deg, rgba(10,14,30,.76) 0%, rgba(10,14,30,.66) 46%, rgba(10,14,30,.26) 66%, rgba(10,14,30,0) 84%) !important;
  }
  .hero_title--text em{ color:#FFD98A; }
}
/* GRAND OPEN 배지 — 흰 글자 on 금색 = 1.8 → 남색 글자 */
.section_hero .hero_badge-open .hero_badge_btn{ color:#1E2A59 !important; font-weight:700; }

/* 24) 메인 헤더 — 흰 헤더 구간(.bk)이 투명이라, 푸터 구간에서 메뉴 글씨가 아래 사진 패널과 겹쳤다(대비 1.0) → 반투명 흰 바탕 */
.main_wrap .temp_header_skin1{ transition:background .4s ease, transform .35s ease; }
.main_wrap .temp_header_skin1.bk{ background:rgba(255,255,255,.92); }

/* 25) 모집공고 준비중 카드 — 투명도 .72 가 글자 대비를 깎았다(3.3) → 불투명 */
.sansu_gonggo_wait .gonggo_btn.is-wait{ opacity:1 !important; }

/* 26) 입지 프리미엄 설명 — 회색 #656565 on 연회색 = 4.3 → 진하게 */
.temp_premium_skin1 .premium_item .premium_txt p{ color:#4a4a52 !important; }

/* 27) 공급표 단위 표기 — 남색 60% = 3.9 → 회색 진하게 */
.sansu_supply_tbl caption span{ opacity:1 !important; color:#5A5A63; }

/* ══ 3차 (2026-10-13 대표님 지적: 113 타입·모집공고 위치·관심등록) ══ */

/* 28) 평면 113 타입 — 왼쪽 타입 상자 색 규칙이 레퍼런스 타입(59A~84E)뿐이라 113 은 흰 바탕+흰 글자로 사라졌다 */
.unit_page .label_113{ background:var(--type-113); }

/* 29) 모집공고 카드 — 사진 위로 반쯤 걸쳐 있던 것(위 62px 튀어나옴·왼쪽 30px 어긋남) → 사진 안쪽 왼쪽 위에 같은 여백으로 */
@media (min-width:1025px){
  .temp_gonggo_skin1 .gonggo_box{ padding-top:0 !important; }
  .temp_gonggo_skin1 .btn_wrap{ top:36px !important; left:36px !important; gap:14px; }
  .temp_gonggo_skin1 .gonggo_btn ~ .gonggo_btn{ margin-left:0 !important; }
  .temp_gonggo_skin1 .gonggo_btn{ box-shadow:0 14px 34px rgba(10,14,30,.22); }
  .temp_gonggo_skin1 .gonggo_box > img{ display:block; width:100%; border-radius:10px; }
}

/* 30) 관심고객등록 페이지 */
.sansu_regist_wrap{
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);
  border:1px solid #e4e4ec; border-radius:16px; overflow:hidden; background:#fff;
  box-shadow:0 18px 50px rgba(20,26,56,.08);
}
.sansu_regist_visual{ position:relative; min-height:640px; overflow:hidden; color:#fff; }
.sansu_regist_bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:58% 50%; }
.sansu_regist_visual::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(14,20,46,.80) 0%, rgba(14,20,46,.55) 52%, rgba(14,20,46,.86) 100%);
}
.sansu_regist_vtxt{ position:relative; z-index:1; display:flex; flex-direction:column; height:100%; padding:56px 48px 48px; box-sizing:border-box; }
.sansu_regist_eyebrow{ margin:0 0 10px; font-family:var(--font-en); font-size:16px; letter-spacing:.32em; color:#FFD98A; }
.sansu_regist_title{ margin:0; font-size:38px; font-weight:800; letter-spacing:-.03em; line-height:1.2; color:#fff; }
.sansu_regist_lead{ margin:18px 0 0; font-size:17px; line-height:1.65; color:rgba(255,255,255,.92); }
.sansu_regist_info{ margin:auto 0 0; padding-top:28px; border-top:1px solid rgba(255,255,255,.28); display:grid; gap:12px; }
.sansu_regist_info > div{ display:flex; gap:16px; align-items:baseline; }
.sansu_regist_info dt{ flex:0 0 64px; font-size:14px; color:#FFD98A; font-weight:700; }
.sansu_regist_info dd{ margin:0; font-size:15px; color:#fff; line-height:1.5; }
.sansu_regist_info dd a{ color:#fff; font-size:22px; font-weight:800; letter-spacing:.01em; }
.sansu_regist_visual .image_cut{ position:absolute; right:12px; bottom:10px; z-index:2; margin:0; }
.sansu_regist_panel{ padding:52px 56px 44px; box-sizing:border-box; display:flex; flex-direction:column; justify-content:center; }
.sansu_regist_form .srf_row{ display:flex; flex-direction:column; gap:8px; margin:0 0 20px; padding:0; border:0; min-width:0; }
.sansu_regist_form label, .sansu_regist_form legend{ font-size:15px; font-weight:700; color:#1E2A59; padding:0; }
.sansu_regist_form label em, .sansu_regist_form legend em{ font-style:normal; color:#c0392b; }
.sansu_regist_form label span, .sansu_regist_form legend span{ font-weight:500; color:#5A5A63; font-size:13px; }
.sansu_regist_form input[type=text], .sansu_regist_form input[type=tel], .sansu_regist_form textarea{
  width:100%; box-sizing:border-box; height:52px; padding:0 16px; font-size:16px; color:#1c1c22;
  border:1px solid #d5d8e2; border-radius:8px; background:#fff; font-family:inherit;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.sansu_regist_form textarea{ height:auto; min-height:110px; padding:14px 16px; line-height:1.6; resize:vertical; }
.sansu_regist_form input:focus, .sansu_regist_form textarea:focus{ outline:none; border-color:#1E2A59; box-shadow:0 0 0 3px rgba(30,42,89,.12); }
.sansu_regist_form ::placeholder{ color:#8b8f9c; }
.srf_types legend{ margin-bottom:8px; }
.srf_chips{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.srf_chips label{ position:relative; display:block; cursor:pointer; }
.srf_chips input{ position:absolute; opacity:0; width:1px; height:1px; }
.sansu_regist_form .srf_chips span{
  display:flex; align-items:center; justify-content:center; height:46px; border-radius:8px;
  border:1px solid #d5d8e2; font-size:15px; font-weight:700; color:#1E2A59; background:#fff;
  transition:background .2s ease, color .2s ease, border-color .2s ease;
}
.sansu_regist_form .srf_chips input:checked + span{ background:#1E2A59; border-color:#1E2A59; color:#fff; }
.srf_chips input:focus-visible + span{ box-shadow:0 0 0 3px rgba(30,42,89,.18); }
.srf_agree{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin:4px 0 0; padding:14px 0; border-top:1px solid #ececf2; }
.sansu_regist_form .srf_check{ display:flex; align-items:center; gap:10px; cursor:pointer; font-weight:600; font-size:14.5px; color:#2b2b33; }
.srf_check input{ width:20px; height:20px; accent-color:#1E2A59; margin:0; flex:none; }
.sansu_regist_form .srf_check span{ font-weight:600; font-size:14.5px; color:#2b2b33; }
.srf_check span em{ font-style:normal; color:#c0392b; font-weight:700; }
.srf_more{ flex:none; padding:7px 12px; font-size:13px; color:#1E2A59; background:#f2f3f8; border:0; border-radius:6px; cursor:pointer; }
.srf_policy{ margin:0 0 6px; padding:16px 18px; background:#f7f7fa; border-radius:8px; font-size:13.5px; line-height:1.7; color:#4a4a52; }
.srf_policy[hidden]{ display:none !important; }
.srf_policy p{ margin:0 0 6px; }
.srf_policy b{ display:inline-block; min-width:96px; color:#1E2A59; margin-right:6px; }
.srf_policy_note a{ color:#1E2A59; text-decoration:underline; }
.srf_msg{ min-height:22px; margin:10px 0 6px; font-size:14px; font-weight:600; }
.srf_msg.is-err{ color:#c0392b; }
.srf_msg.is-ok{ color:#1E2A59; }
.srf_submit{
  width:100%; height:58px; border:0; border-radius:8px; background:#1E2A59; color:#fff;
  font-size:17px; font-weight:800; letter-spacing:-.01em; cursor:pointer; transition:background .2s ease;
}
.srf_submit:hover{ background:#141d40; }
.srf_submit:disabled{ opacity:.7; cursor:default; }
.srf_foot{ margin:12px 0 0; font-size:13px; color:#5A5A63; text-align:center; }
.srf_done[hidden], .sansu_regist_form[hidden]{ display:none !important; }
.srf_done{ display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; min-height:420px; }
.srf_done_mark{ width:64px; height:64px; border-radius:50%; background:#1E2A59; position:relative; margin-bottom:22px; }
.srf_done_mark::after{ content:''; position:absolute; left:24px; top:16px; width:14px; height:26px; border:solid #FFD98A; border-width:0 4px 4px 0; transform:rotate(45deg); }
.srf_done_title{ font-size:26px; font-weight:800; color:#1E2A59; }
.srf_done_msg{ margin:12px 0 26px; font-size:15.5px; color:#4a4a52; }
.srf_done_btn{ display:inline-flex; align-items:center; height:48px; padding:0 28px; border-radius:24px; border:1px solid #1E2A59; color:#1E2A59; font-weight:700; }
.sansu_regist .vue_summary{ margin-top:56px; }
@media (max-width:1024px){
  .sansu_regist_wrap{ grid-template-columns:1fr; border-radius:12px; }
  .sansu_regist_visual{ min-height:300px; }
  .sansu_regist_vtxt{ padding:30px 22px 24px; }
  .sansu_regist_eyebrow{ font-size:12px; }
  .sansu_regist_title{ font-size:28px; }
  .sansu_regist_lead{ font-size:14.5px; margin-top:12px; }
  .sansu_regist_info{ padding-top:18px; margin-top:22px; gap:8px; }
  .sansu_regist_info dd{ font-size:13.5px; }
  .sansu_regist_info dd a{ font-size:19px; }
  .sansu_regist_panel{ padding:28px 18px 26px; }
  .srf_chips{ gap:6px; }
  .sansu_regist_form .srf_chips span{ height:44px; font-size:14px; }
  .srf_agree{ flex-wrap:wrap; }
  .srf_policy b{ display:block; min-width:0; margin:0 0 2px; }
  .sansu_regist .vue_summary{ margin-top:34px; }
}

/* 31) 개인정보처리방침 페이지 */
.sansu_privacy_doc{ max-width:900px; margin:0 auto; padding:48px 56px 52px; border:1px solid #e4e4ec; border-radius:14px; background:#fff; color:#33333b; }
.sansu_privacy_intro{ margin:0 0 28px; padding-bottom:22px; border-bottom:1px solid #ececf2; font-size:16px; line-height:1.75; }
.sansu_privacy_doc h3{ margin:26px 0 8px; font-size:18px; font-weight:800; color:#1E2A59; }
.sansu_privacy_doc p{ margin:0 0 6px; font-size:15px; line-height:1.75; }
.sansu_privacy_doc p.sub{ font-size:13.5px; color:#5A5A63; }
.sansu_privacy_doc a{ color:#1E2A59; text-decoration:underline; }
.sansu_privacy_date{ margin-top:30px !important; padding-top:18px; border-top:1px solid #ececf2; font-size:14px !important; color:#5A5A63; }
@media (max-width:1024px){
  .sansu_privacy_doc{ padding:26px 18px 30px; border-radius:10px; }
  .sansu_privacy_intro{ font-size:14.5px; }
  .sansu_privacy_doc h3{ font-size:16px; }
  .sansu_privacy_doc p{ font-size:14px; }
}

/* ══ 4차 (2026-10-13 저녁) 대표님 「노란 글씨가 AI 느낌 — 색을 바꾸든 두께를 줄이든」 ══
   밝은 노랑(#FFD98A)·진한 금색(#E3B965) 글자 → 채도 낮춘 샴페인 베이지, 굵기 800 → 600 */
:root{ --accent-champagne:#E6D3AC; }
.hero_title--text{ font-weight:600 !important; letter-spacing:-.03em !important; }
.hero_title--text em{ color:var(--accent-champagne) !important; font-weight:600; }
.section_hero .hero_points li b{ color:var(--accent-champagne) !important; font-weight:600 !important; }
.section_hero .hero_badge-open .hero_badge_btn{ background:#DCC8A2 !important; }
.sansu_regist_eyebrow, .sansu_regist_info dt{ color:var(--accent-champagne) !important; }
/* 히어로 4줄(병원 줄 추가) — 모바일에서 줄 간격 조금 좁혀 화면 안에 */
.is-hero-copy .section_hero .hero_points li:nth-child(4){ animation-delay:1.6s !important; }
@media (max-width:1024px){ .section_hero .hero_points{ gap:7px !important; } }
.section_hero .hero_copy_line{ background:var(--accent-champagne) !important; }
/* 히어로 4번째 줄(병원)이 사진 밝은 곳에 걸려 대비 4.3 → 포인트 글자만 한 톤 밝은 샴페인, 모바일 어둡게 깔기 조금 아래로 */
.section_hero .hero_points li b{ color:#F1E3C6 !important; }
@media (max-width:1024px){
  .section_hero .hero_bg::after{
    background:linear-gradient(180deg, rgba(10,14,30,.76) 0%, rgba(10,14,30,.68) 50%, rgba(10,14,30,.30) 70%, rgba(10,14,30,0) 86%) !important;
  }
}

/* ══ 5차 (2026-10-13 저녁) ══ */
/* 32) 헤더 로고 — PC 에서 메뉴에 마우스를 올리면 헤더가 흰 바탕이 되는데 로고는 흰색판 그대로라
       흰 로고 글자가 사라지는 문제 → 흰 바탕일 때는 남색판 */
@media (min-width:1025px){
  .temp_header_skin1:hover:not(.active) .header_logo,
  .temp_header_skin1.hover:not(.active) .header_logo{ content:url('/assets/img/logo/logo_navy_v2_thehan.png') !important; }
}
/* 33) 포인트 색 — 옅은 샴페인이 오히려 AI 느낌(대표님) → 진한 앤티크 골드, 단색 */
:root{ --accent-gold-deep:#C9A14A; }
.hero_title--text em{ color:var(--accent-gold-deep) !important; }
.section_hero .hero_points li b{ color:var(--accent-gold-deep) !important; font-weight:700 !important; }
.section_hero .hero_copy_line{ background:var(--accent-gold-deep) !important; }
.section_hero .hero_badge-open .hero_badge_btn{ background:var(--accent-gold-deep) !important; color:#1E2A59 !important; }
.sansu_regist_eyebrow, .sansu_regist_info dt{ color:var(--accent-gold-deep) !important; }
/* 32-2) 모바일 메뉴를 열면(.active) 남색 메뉴판 위라 흰색판이어야 한다 — 9/29 규칙이 남색판을 넣어 「로고」만 보였다 */
.temp_header_skin1.active .header_logo{ content:url('/assets/img/logo/logo_white_v2_thehan.png') !important; }
/* 33-2) 진한 골드는 밝기가 낮아 사진 위 작은 글씨 대비가 모자랐다(2.7~4.4) → 색은 그대로 두고 글자 뒤 사진을 조금 더 어둡게 */
.section_hero .hero_bg::after{
  background:
    linear-gradient(180deg, rgba(10,14,30,.50) 0%, rgba(10,14,30,0) 24%),
    linear-gradient(100deg, rgba(10,14,30,.84) 0%, rgba(10,14,30,.66) 36%, rgba(10,14,30,.22) 60%, rgba(10,14,30,0) 74%) !important;
}
@media (max-width:1024px){
  .section_hero .hero_bg::after{
    background:linear-gradient(180deg, rgba(10,14,30,.82) 0%, rgba(10,14,30,.80) 54%, rgba(10,14,30,.36) 70%, rgba(10,14,30,0) 86%) !important;
  }
}
.sansu_regist_visual::after{
  background:linear-gradient(180deg, rgba(14,20,46,.86) 0%, rgba(14,20,46,.74) 50%, rgba(14,20,46,.92) 100%) !important;
}
