@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Nanum+Brush+Script&display=swap');

/* ==========================================================================
   임플란트 공통 블록 — n_sub311(임플란트) / sub340(과잉진료 체크하기) 가 함께 쓴다
   마크업: /_inc/implant/ (hero, keep, warranty, tenyears, team, after)
   사용: n_sub311(임플란트) · sub340(과잉진료 체크하기) · sub311_2(SNS 임플란트 광고)
   가운데 850px 한 단 — 좁은 화면에서는 --u(= 화면폭/1000) 비율로 함께 줄어든다.
   ========================================================================== */
.imp-sec {
	--u:min(1px, calc(100vw / 1000));
	--imp-blue:#0054d1;
	--imp-gutter:max(16px, calc(40 * var(--u)));
	font-family:"Noto Sans KR",sans-serif;
	letter-spacing:-.03em;
	text-align:left;
	color:#111;
}
.imp-sec *, .imp-sec *::before, .imp-sec *::after {box-sizing:border-box;word-break:keep-all;}
.imp-sec :where(h2,h3,p,ul) {margin:0;padding:0;list-style:none;}
.imp-sec :where(b,strong) {font-weight:700;}
.imp-sec h2 {text-align:left;}
.imp-col {width:100%;max-width:850px;margin:0 auto;padding:0 var(--imp-gutter);}
.imp-col--wide {padding:0;}
.imp-center {text-align:center;}
.imp-blue {color:var(--imp-blue) !important;}

.imp-lead {font-size:max(14px, calc(30 * var(--u)));font-weight:400;line-height:1.28;color:#111;}
.imp-lead span {color:var(--imp-blue);}
.imp-lead--blue {font-size:max(15px, calc(38 * var(--u)));color:var(--imp-blue);}
.imp-h3 {font-size:max(16px, calc(38 * var(--u)));font-weight:500;line-height:1.3;color:#111;}
.imp-small {margin-top:1.2em !important;font-size:max(10px, calc(17 * var(--u)));font-weight:300;color:#555;}
/* 체크 목록 */
.imp-check li {position:relative;padding-left:1.45em;font-size:max(13px, calc(28 * var(--u)));font-weight:700;line-height:1.3;color:#111;}
.imp-check li + li {margin-top:.75em;}
.imp-check li::before {content:"";position:absolute;left:0;top:.08em;width:1em;height:1em;background:url('/img/sub/implant/con11_check.png') no-repeat center / contain;}
.imp-h2 {margin-top:.3em !important;font-size:max(20px, calc(58 * var(--u)));font-weight:700;line-height:1.24;color:#000;}
.imp-p {margin-top:1.4em !important;font-size:max(13px, calc(28 * var(--u)));font-weight:300;line-height:1.5;color:#222;}
.imp-p b {color:#111;}
.imp-img {display:block;width:100% !important;height:auto;margin-top:calc(60 * var(--u));}
.imp-box {margin-top:calc(40 * var(--u)) !important;padding:1.4em 1em;border-radius:max(8px, calc(14 * var(--u)));background:#000;font-size:max(12.5px, calc(28 * var(--u)));font-weight:300;line-height:1.35;color:#fff;text-align:center;}
.imp-box b {color:#fff;}

/* ---------- 내 가족이 받아야 할 임플란트 (검정) ---------- */
.imp-hero {background:#000;padding:calc(90 * var(--u)) 0 calc(120 * var(--u));}
.imp-hero .imp-h2 {margin-top:0 !important;font-size:max(20px, calc(52 * var(--u)));color:#fff;}
.imp-hero .imp-p, .imp-hero .imp-p b {color:#fff;}
.imp-hero__keys {display:grid;grid-template-columns:repeat(3,1fr);gap:calc(12 * var(--u));margin-top:calc(60 * var(--u)) !important;}
.imp-hero__keys li {padding:1.1em .4em;border-radius:max(8px, calc(14 * var(--u)));background:#0069e9;text-align:center;}
.imp-hero__keys strong {display:block;font-size:max(13px, calc(28 * var(--u)));color:#fff;line-height:1.25;}
.imp-hero__keys span {display:block;margin-top:.35em;font-size:max(10px, calc(18 * var(--u)));color:#fff;opacity:.9;}
.imp-hero__img {display:block;width:calc(100% + 2 * var(--imp-gutter)) !important;max-width:none !important;height:auto;margin:calc(40 * var(--u)) calc(-1 * var(--imp-gutter)) 0;}
.imp-hero__doc {display:flex;align-items:center;justify-content:flex-end;gap:.6em;margin-top:calc(50 * var(--u)) !important;}
.imp-hero__doc span {font-size:max(11px, calc(24 * var(--u)));font-weight:300;line-height:1.35;color:#fff;text-align:right;}
.imp-hero__doc strong {font-size:max(28px, calc(64 * var(--u)));font-weight:700;color:#fff;letter-spacing:-.02em;}
/* 손글씨 서명형 */
.imp-hero__doc--sign {gap:1em;}
.imp-hero__doc--sign strong {font-family:"Nanum Brush Script",cursive;font-size:max(46px, calc(110 * var(--u)));font-weight:400;line-height:.9;letter-spacing:0;transform:rotate(-4deg);}

/* ---------- 자연치아 보존 ---------- */
.imp-keep {padding:calc(150 * var(--u)) 0 calc(60 * var(--u));}
.imp-hero--box {width:100%;max-width:850px;margin:0 auto;}

/* ---------- 보증기간 최대 10년 ---------- */
.imp-warranty {padding:calc(120 * var(--u)) 0 calc(140 * var(--u));}
.imp-warranty__std {text-align:right;font-size:max(10px, calc(20 * var(--u)));font-weight:300;color:#333;}
.imp-warranty__img {display:block;width:min(507px,70%) !important;height:auto;margin:calc(90 * var(--u)) 0 calc(40 * var(--u)) calc(60 * var(--u));}
.imp-warranty__box {display:grid;grid-template-columns:1fr 1fr;gap:calc(10 * var(--u));margin-top:calc(60 * var(--u)) !important;}
.imp-warranty__box li {padding:1.3em .5em;border-radius:max(8px, calc(14 * var(--u)));background:#000;text-align:center;}
.imp-warranty__box span {display:block;font-size:max(11px, calc(28 * var(--u)));font-weight:300;color:#fff;}
.imp-warranty__box strong {display:block;margin-top:.2em;font-size:max(13px, calc(34 * var(--u)));color:#fff;}

/* ---------- 일산에서만 10년 ---------- */
.imp-10y {padding:0 0 calc(140 * var(--u));}
.imp-10y__photo img {display:block;width:100% !important;height:auto;}
.imp-10y__txt {position:relative;margin-top:calc(-230 * var(--u));padding:0 var(--imp-gutter);}
.imp-10y__txt .imp-h2 {margin-top:0 !important;}

/* ---------- 4인 의료진 ---------- */
.imp-team {padding:0 0 calc(120 * var(--u));}
.imp-team .imp-h2 {line-height:1.28;}
.imp-team__tags {display:grid;grid-template-columns:repeat(4,1fr);gap:calc(16 * var(--u));max-width:690px;margin:calc(80 * var(--u)) auto 0 !important;}
.imp-team__tags li {padding:.35em 0;border-radius:2em;background:var(--imp-blue);font-size:max(11px, calc(24 * var(--u)));font-weight:700;color:#fff;text-align:center;}
.imp-team .imp-center {margin-top:calc(70 * var(--u)) !important;}
.imp-team__img {display:block;width:min(788px,100%) !important;height:auto;margin:calc(70 * var(--u)) auto 0;}

/* ---------- 수술 후 관리 100% ---------- */
.imp-after {padding:calc(120 * var(--u)) 0 calc(60 * var(--u));}
.imp-after .imp-col--wide {margin-top:calc(50 * var(--u));}
.imp-after__photo {position:relative;}
.imp-after__photo img {display:block;width:100% !important;height:auto;}
.imp-after__photo::after {content:"";position:absolute;inset:auto 0 0 0;height:45%;background:linear-gradient(transparent,rgba(0,0,0,.45));}
.imp-after__photo p {position:absolute;left:var(--imp-gutter);bottom:calc(30 * var(--u));z-index:1;margin:0;font-size:max(20px, calc(50 * var(--u)));font-weight:300;line-height:1.25;color:#fff;}
.imp-after__photo b {font-weight:700;}
.imp-after__photo u {font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.2em;}
.imp-point {display:flex;align-items:center;margin-top:calc(70 * var(--u));}
.imp-point > strong {flex:0 0 50%;font-size:max(36px, calc(92 * var(--u)));font-weight:700;color:var(--imp-blue);text-align:center;letter-spacing:-.02em;line-height:1;}
.imp-point .imp-check {flex:1;}