@charset "utf-8";

/* ==========================================================================
   s8.css — 어린이치과 서브페이지 전용 스타일
   --------------------------------------------------------------------------
   - 색상 팔레트는 default.css / s3.css / s5.css 와 동일
     (#1c4103 진한그린 / #2c4f15 메인그린 / #8b9e70 세이지 / #5c7f3a accent
      / #f4f3ee 베이지 / 인용박스 #fbf6e9 크림)
   - 시안(★m_어린이치과 시안.jpg)은 모바일형 1컬럼. 콘텐츠 최대폭 850px 기준.
   ========================================================================== */
/* 팝업 */
.pop_wrap{position:absolute;top:0;left:10px;width:auto;height:auto;background:transparent;display:flex;align-items:flex-start;justify-content:center;gap:10px;z-index:100;flex-wrap:wrap;}
.pop_wrap .pop01{width:550px;height:635px;background:#fff;flex:0 0 auto;}
.pop_wrap .sub_popup{width:490px;         /* 기존 wrap 폭과 동일하게 */background:#fff;flex:0 0 auto;}
.pop_wrap .pop01 img{width:100%;display:block;}
.pop_wrap .sub_footer{padding: 0;background:#000;color:#fff;text-align:left;position:relative;font-size:13px;}
.pop_wrap .sub_footer button {padding: 10px;border:0;color:#fff}
.pop_wrap .sub_footer .pop01_reject{background:#000;text-align:left}
.pop_wrap .sub_footer .pop01_close{background:#393939;position:absolute;top:0;right:0}


@media (max-width:768px){
.pop_wrap .pop01{width:95%;height:auto;background:#fff;flex:0 0 auto;margin: 0 auto;left:0;}
}



/* 공통 컨테이너 */
.s8_wrap { max-width:850px; margin:0 auto; background:#fff; color:#222; word-break:keep-all; }
.s8_wrap * { box-sizing:border-box; }
.s8_wrap img { max-width:100%; display:block; }

.s8_sec_label { margin:0 0 10px; font-size:14px; font-weight:600; color:#8b9e70; letter-spacing:0.3px; }
.s8_sec_tit { margin:0 0 14px; font-size:26px; font-weight:800; line-height:1.35; letter-spacing:-1px; color:#222; }
.s8_sec_tit .pt { color:#5c7f3a; }


/* ===== 1. 히어로 ===== */
.s8_hero { background:#F4F6F1; padding:46px 24px 50px; }
.s8_hero_badge { display:inline-block; margin-bottom:22px; padding:8px 18px; border-radius:20px;
	background:#2c4f15; color:#fff; font-size:14px; font-weight:700; }
.s8_hero_tit { margin:0 0 22px; font-size:30px; font-weight:800; line-height:1.3; letter-spacing:-1px; color:#222; }
.s8_hero_tit b { color:#1c4103; }
.s8_hero_tit .pt { color:#5c7f3a; }
.s8_hero_desc { margin:0 0 30px; font-size:16px; font-weight:400; line-height:1.7; color:#555; }

.s8_hero_badges { margin:0; padding:24px 22px; list-style:none; border-radius:16px; background:#2c4f15; }
.s8_hero_badges li { display:flex; align-items:center; gap:12px; padding:10px 0;
	font-size:16px; font-weight:600; color:#fff; }
.s8_hero_badges li i { width:22px; font-size:18px; color:#b6c79a; text-align:center; }


/* ===== 2. 부모님 고민 FAQ ===== */
.s8_worry { padding:54px 24px 50px; background:#f7f7f4; }
.s8_worry_tit { margin:0 0 10px; font-size:26px; font-weight:800; line-height:1.35; letter-spacing:-1px; color:#222; }
.s8_worry_sub { margin:0 0 30px; font-size:15px; color:#8b9e70; font-weight:600; }
.s8_worry_list { display:flex; flex-direction:column; gap:14px; }
.s8_worry_card { padding:24px 22px; border-radius:16px; background:#fff; box-shadow:0 4px 14px rgba(0,0,0,.04); }
.s8_worry_q { display:flex; align-items:flex-start; gap:8px; margin:0 0 12px; font-size:16px; font-weight:700; color:#333; }
.s8_worry_a { display:flex; align-items:flex-start; gap:8px; margin:0; font-size:14px; line-height:1.65; color:#5c7f3a; font-weight:500; }
.s8_worry_q .emj, .s8_worry_a .emj { flex:0 0 auto; }


/* ===== 3. 선택하는 이유 ===== */
.s8_reason { padding:54px 24px 50px; background:#F4F6F1; }
.s8_reason .s8_sec_label { text-align:left; }
.s8_reason .s8_sec_tit { margin-bottom:30px; }

.s8_grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.s8_card { background:#f4f3ee; border-radius:18px; padding:26px 22px; }

.s8_card--wide { grid-column:1 / -1; display:flex; align-items:center; justify-content:space-between; gap:14px;background:#fff }
.s8_wide_txt .s8_sub { margin:0; font-size:14px; font-weight:500; color:#7a7a6a; }
.s8_wide_txt .s8_big { margin:6px 0; font-size:26px; font-weight:800; line-height:1.25; color:#1c4103; }
.s8_wide_txt .s8_big .accent {  }
.s8_wide_img { flex:0 0 120px; }
.s8_wide_img img { width:120px; height:auto; margin-left:auto; }

.s8_card--text { display:flex; flex-direction:column; justify-content:center; text-align:center; min-height:150px;background:#fff }
.s8_card--text .s8_cap { margin:0 0 10px; font-size:14px; font-weight:500; line-height:1.5; color:#777; }
.s8_card--text .s8_point { margin:0; font-size:24px; font-weight:800; color:#1c4103; }
.s8_card--text .s8_point .accent {  }
.s8_card--text .s8_ico { margin-top:10px; font-size:26px; color:#8b9e70; }

.s8_card--photo { padding:0; overflow:hidden; background:#fff}
.s8_card--photo .s8_cap { margin:0; padding:22px 22px 14px; font-size:15px; font-weight:600; line-height:1.45; color:#333; }
.s8_card--photo .s8_photo img { width:100%; height:170px; object-fit:cover; }


/* ===== 4. 친근한 공간 ===== */
.s8_space { padding:54px 24px 50px; background:#fff; }
.s8_space_tit { margin:0 0 12px; font-size:26px; font-weight:800; line-height:1.35; letter-spacing:-1px; color:#222; }
.s8_space_desc { margin:0 0 28px; font-size:15px; line-height:1.7; color:#8B9E6E; }
.s8_space_photos { display:grid; justify-items: center; grid-template-rows: repeat(2); grid-template-columns: repeat(2, 1fr); gap:18px; }
.s8_space_photos figure { margin:0; border-radius:16px; overflow:hidden; background:#eef0ea; }
.s8_space_photos figure:nth-child(1),
.s8_space_photos .kids_desc,
.s8_space_photos figure:nth-child(5) {grid-column: span 2;}
.s8_space_photos .kids_desc {position: relative; width: 100%; text-align: center; border-radius: 16px; padding: 30px 20px; background: url(../img/sub/s8/dental_icon.png) no-repeat right bottom -15% #fff0cc;}
.s8_space_photos .kids_desc p {font-size: clamp(16px, 2vw, 20px); font-weight: 600; color: #2D5016;}
.s8_space_photos img { width:100%; height:auto; }


/* ===== 5. 단계별 진행과정 (베이지, watermark 숫자 + 인용박스) ===== */
.s8_step { padding:54px 24px 50px; background:#f4f3ee; text-align:center; }
.s8_step_ico { margin:0 0 14px; font-size:34px; color:#8b9e70; }
.s8_step_tit { margin-bottom:8px; }
.s8_step_sub { margin:0 0 30px; font-size:15px; line-height:1.6; color:#777; }

.s8_step_list { margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:16px; }
.s8_step_card { position:relative; overflow:hidden; padding:28px 24px; border-radius:18px;
	background:#fff; text-align:left; box-shadow:0 4px 14px rgba(0,0,0,.04); }
.s8_step_num { position:absolute; right:16px; top:-6px; font-size:110px; font-weight:800;
	line-height:1; color:rgba(139,158,112,.10); font-family:"Arial",sans-serif; pointer-events:none; }
.s8_step_head { margin:0 0 14px; }
.s8_step_badge { display:inline-flex; align-items:center; justify-content:center;
	width:46px; height:46px; border-radius:12px; background:#2c4f15; color:#fff; font-size:20px; }
.s8_step_name { display:block; margin:0 0 8px; font-size:20px; font-weight:800; color:#1c4103; }
.s8_step_desc { margin:0 0 16px; font-size:14px; line-height:1.7; color:#666; }
.s8_step_tags { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px; }
.s8_step_tags span { display:inline-flex; align-items:center; gap:5px; padding:7px 12px; border-radius:8px;
	background:#2c4f15; color:#fff; font-size:12px; font-weight:600; }
.s8_step_tags span i { color:#b6c79a; }
.s8_step_quote { margin:0; padding:14px 16px; border-radius:10px; background:#fbf6e9;
	font-size:13px; line-height:1.65; color:#7a6a3a; }
.s8_step_quote i { margin-right:6px; color:#5c7f3a; }


/* ===== 6. 인용 블록 (베이지) ===== */
.s8_quote { padding:50px 24px; background:#f4f3ee; text-align:center; }
.s8_quote_txt { margin:0 0 26px; font-size:22px; font-weight:800; line-height:1.5; color:#1c4103; }
.s8_quote_btn { display:inline-flex; align-items:center; gap:8px; padding:14px 28px; border-radius:30px;
	border:1px solid #2c4f15; background:#fff; color:#2c4f15; font-size:15px; font-weight:700; transition:.2s; }
.s8_quote_btn:hover { background:#2c4f15; color:#fff; }





/* ===== 600px 이하 미세 조정 ===== */
@media (max-width:600px){
	.s8_sec_tit, .s8_hero_tit, .s8_worry_tit, .s8_space_tit, .s8_form_tit { font-size:24px; }
	.s8_hero_tit { font-size:26px; }
	.s8_grid { gap:10px; }
	.s8_card { padding:20px 16px; }
	.s8_card--wide { flex-direction:column; align-items:flex-start; }
	.s8_wide_img { flex:none; }
	.s8_wide_img img { margin:0; }
	.s8_card--text { min-height:120px; }
	.s8_card--text .s8_point { font-size:21px; }
	.s8_quote_txt { font-size:19px; }
	.s8_callbox_num { font-size:21px; }
	.s8_step_num { font-size:90px; }
}
