/* [애니팜 2026-11-04] 펫보험 안내 — 목업(mockups/db-pet-insurance/index.html)의 꼴을 .ap-ins 안으로 가둠. 머리 · 바닥은 몰 레이아웃 것.
   몰 레이아웃 피하기: 머리는 붙어 다님(--ap-sticky-top) · 휴대폰 아래 탭 막대 60px · 문의 버튼(PC 아래 28~88px, 휴대폰 아래 74px) */
.ap-ins {
	/* 보험 쪽 강조 = DB 초록 계열 (11/4 사장님 "DB 느낌도") · 애니팜 쪽 = --anp-* 파랑 */
	--ap-blue: #00854a; --ap-blue-700: #006b3c; --ap-blue-900: #0c3f2a; --ap-blue-50: #ecf8f1; --ap-blue-100: #cdeedb;
	--anp-blue: #008cd6; --anp-blue-700: #0270b0; --anp-blue-900: #0b3a5b; --anp-blue-50: #eef7fd; --anp-blue-100: #d8eefb;
	--db-orange: #f5821f; --db-mint: #e3f5ea;
	--ap-ink: #191f28; --ap-ink-2: #4e5968; --ap-ink-3: #8b95a1; --ap-line: #eceef1; --ap-fill: #f2f4f6; --ap-bg: #f8f9fa;
	--ap-red: #f04452; --ok: #12a26b; --ok-50: #e7f7f0; --warn: #b26a00; --warn-50: #fff4e0;
	--max: 1200px; --r: 20px;
	color: var(--ap-ink); font-size: 16px; line-height: 1.55; letter-spacing: -0.02em; word-break: keep-all;
}
.ap-ins *, .ap-ins *::before, .ap-ins *::after { box-sizing: border-box; }
.ap-ins img { max-width: 100%; display: block; }
.ap-ins a { color: inherit; }
.ap-ins button { font: inherit; }
.ap-ins section { scroll-margin-top: calc(var(--ap-sticky-top, 64px) + 64px); }

/* 페이지 안 메뉴 (몰 머리 바로 아래 붙음) */
.ap-ins .ins-subnav { position: sticky; top: var(--ap-sticky-top, 64px); z-index: 30; background: rgba(255,255,255,.95); backdrop-filter: blur(8px); border-bottom: 1px solid var(--ap-line); }
.ap-ins .ins-subnav .wrap { height: 56px; display: flex; align-items: center; gap: 12px; }
.ap-ins .ins-lockup { display: flex; align-items: center; gap: 8px; font-weight: 800; font-size: 15px; white-space: nowrap; }
.ap-ins .ins-lockup .x { color: var(--ap-ink-3); font-weight: 500; }
.ap-ins .partner { display: inline-flex; align-items: center; height: 26px; padding: 0 10px; border: 1px dashed #b7c0cb; border-radius: 8px; font-size: 12px; font-weight: 700; color: var(--ap-ink-2); background: #fff; }
.ap-ins .ins-links { margin-left: auto; display: flex; gap: 2px; overflow-x: auto; scrollbar-width: none; }
.ap-ins .ins-links::-webkit-scrollbar { display: none; }
.ap-ins .ins-links a { text-decoration: none; font-size: 14px; font-weight: 600; color: var(--ap-ink-2); padding: 8px 10px; border-radius: 10px; white-space: nowrap; }
.ap-ins .ins-links a:hover { background: var(--ap-fill); color: var(--ap-ink); }
.ap-ins .ins-subnav .ins-btn { height: 38px; padding: 0 14px; font-size: 14px; border-radius: 10px; box-shadow: none; }

/* 판매 주체 · 목업 안내 (몰 바닥 바로 위) */
.ap-ins .ins-note { background: #f2f4f6; color: var(--ap-ink-2); font-size: 13px; padding: 28px 0 36px; }
.ap-ins .ins-note p { margin: 4px 0; }

/* 떠 있는 계산 버튼 (PC — 몰 문의 버튼 위) · 아래 고정 버튼 (휴대폰 — 몰 탭 막대 위)
   [11/10] PC 문의 버튼 = 아래 22px · 고양이 100px · 머리 위 '문의하기' 말풍선 약 20px → 위 끝이 아래에서 약 142px. 전엔 104px 에 놓여 말풍선 · 고양이 머리를 덮었음 → 164px */
.ap-ins .float-cta { position: fixed; right: 20px; bottom: 164px; z-index: 40; display: flex; flex-direction: column; align-items: center; gap: 4px; width: 104px; padding: 14px 10px; border-radius: 20px; background: var(--ap-blue); color: #fff; text-decoration: none; font-weight: 800; font-size: 14px; text-align: center; box-shadow: 0 12px 28px rgba(0,140,214,.35); }
.ap-ins .float-cta small { font-weight: 600; font-size: 11px; opacity: .85; }
.ap-ins .bottom-bar { display: none; }
.ap-ins .mock-ribbon { position: fixed; z-index: 45; left: 0; right: 0; bottom: 0; pointer-events: none; display: flex; justify-content: center; }
.ap-ins .mock-ribbon span { pointer-events: auto; margin: 0 0 10px; background: rgba(25,31,40,.86); color: #fff; font-size: 12px; padding: 6px 12px; border-radius: 999px; }
@media (max-width: 860px) {
	.ap-ins .ins-subnav .wrap { height: 48px; gap: 8px; }
	.ap-ins .ins-lockup, .ap-ins .ins-subnav .ins-btn { display: none; }
	.ap-ins .ins-links { margin-left: 0; }
	.ap-ins .float-cta { display: none; }
	.ap-ins .bottom-bar { display: flex; position: fixed; z-index: 55; left: 0; right: 0; bottom: calc(60px + env(safe-area-inset-bottom)); gap: 8px; padding: 8px 14px; background: #fff; border-top: 1px solid var(--ap-line); box-shadow: 0 -6px 18px rgba(0,0,0,.06); }
	.ap-ins .bottom-bar .ins-btn { height: 48px; font-size: 15px; }
	.ap-ins .bottom-bar .ins-btn-primary { flex: 1; }
	.ap-ins .mock-ribbon { bottom: calc(126px + env(safe-area-inset-bottom)); }
	.ap-ins .ins-note { padding-bottom: 96px; }
}
/* 휴대폰: 몰 문의 버튼을 아래 고정 버튼 위로 */
@media (max-width: 860px) { body:has(.ap-ins) pq-chat-widget { --ap-cs-bottom: calc(140px + env(safe-area-inset-bottom)); } }

.ap-ins .wrap {max-width: var(--max); margin: 0 auto; padding: 0 24px;}
.ap-ins section {padding: 96px 0;}
.ap-ins .eyebrow {display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 700; color: var(--ap-blue); background: var(--ap-blue-50); padding: 6px 12px; border-radius: 999px;}
.ap-ins h1, .ap-ins h2, .ap-ins h3 {margin: 0; letter-spacing: -0.04em;}
.ap-ins h2 {font-size: 36px; line-height: 1.3; margin-top: 14px;}
.ap-ins h2 em {font-style: normal; color: var(--ap-blue);}
.ap-ins .lead {color: var(--ap-ink-2); font-size: 18px; margin: 14px 0 0;}
.ap-ins .ex {display: inline-block; font-size: 11px; font-weight: 800; color: var(--warn); background: var(--warn-50); border: 1px solid #f3d7a6; padding: 1px 6px; border-radius: 6px; vertical-align: middle; letter-spacing: 0;}
.ap-ins .todo {display: inline-block; font-size: 11px; font-weight: 800; color: #7a3db8; background: #f4ecfb; border: 1px solid #e1cdf3; padding: 1px 6px; border-radius: 6px; vertical-align: middle; letter-spacing: 0;}
.ap-ins .ins-btn {display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 56px; padding: 0 28px; border-radius: 14px; font-size: 17px; font-weight: 800; text-decoration: none; border: 0; cursor: pointer;}
.ap-ins .ins-btn-primary {background: var(--ap-blue); color: #fff; box-shadow: 0 8px 20px rgba(0,140,214,.28);}
.ap-ins .ins-btn-primary:hover {background: var(--ap-blue-700);}
.ap-ins .ins-btn-line {background: #fff; color: var(--ap-ink); border: 1px solid #d5dae0;}
.ap-ins .ins-btn-line:hover {background: var(--ap-fill);}
.ap-ins .ph {margin: 0; position: relative; display: flex; flex-direction: column; justify-content: center; gap: 6px; padding: 18px; border: 2px dashed #9cc9e6; border-radius: var(--r); background: repeating-linear-gradient(135deg, #f5fbff 0 14px, #eef7fd 14px 28px); color: var(--ap-blue-900); font-size: 13px; line-height: 1.5; text-align: left; overflow: hidden;}
.ap-ins .ph b {font-size: 14px; color: var(--ap-blue-700);}
.ap-ins .ph .size {font-weight: 800; font-size: 12px; color: #fff; background: var(--ap-blue-700); align-self: flex-start; padding: 2px 8px; border-radius: 6px;}
.ap-ins .ph p {margin: 0; color: var(--ap-ink-2);}
.ap-ins .hero {padding: 56px 0 72px; background: linear-gradient(180deg, var(--ap-blue-50), #fff 78%);}
.ap-ins .hero .wrap {display: grid; grid-template-columns: 1.05fr 1fr; gap: 48px; align-items: center;}
.ap-ins .pet-tabs {display: inline-flex; padding: 4px; background: #fff; border: 1px solid var(--ap-line); border-radius: 999px; margin-bottom: 22px;}
.ap-ins .pet-tabs button {border: 0; background: none; padding: 8px 18px; border-radius: 999px; font-weight: 700; color: var(--ap-ink-3); cursor: pointer;}
.ap-ins .pet-tabs button[aria-pressed="true"] {background: var(--ap-blue); color: #fff;}
.ap-ins .hero h1 {font-size: 50px; line-height: 1.22;}
.ap-ins .hero h1 em {font-style: normal; color: var(--ap-blue);}
.ap-ins .hero .lead {font-size: 19px;}
.ap-ins .chips {display: flex; flex-wrap: wrap; gap: 8px; margin: 26px 0 30px; padding: 0; list-style: none;}
.ap-ins .chips li {background: #fff; border: 1px solid var(--ap-line); border-radius: 12px; padding: 10px 14px; font-size: 15px; font-weight: 700; box-shadow: 0 2px 8px rgba(0,0,0,.03);}
.ap-ins .chips li small {display: block; font-size: 12px; font-weight: 500; color: var(--ap-ink-3);}
.ap-ins .hero-cta {display: flex; flex-wrap: wrap; gap: 10px;}
.ap-ins .hero-note {margin-top: 16px; font-size: 13px; color: var(--ap-ink-3);}
.ap-ins .hero .ph {min-height: 520px;}
.ap-ins .price-peek {margin-top: 20px; display: inline-flex; align-items: baseline; gap: 8px; padding: 12px 16px; border-radius: 14px; background: #fff; border: 1px solid var(--ap-blue-100);}
.ap-ins .price-peek b {font-size: 24px; color: var(--ap-blue-700);}
.ap-ins .worry {background: var(--ap-bg);}
.ap-ins .worry-grid {margin-top: 40px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px;}
.ap-ins .worry-card {background: #fff; border-radius: var(--r); padding: 26px 22px; border: 1px solid var(--ap-line); display: flex; flex-direction: column; gap: 12px;}
.ap-ins .worry-card .q {font-size: 18px; font-weight: 800;}
.ap-ins .worry-card .q::before {content: "Q. "; color: var(--ap-blue);}
.ap-ins .worry-card .a {color: var(--ap-ink-2); font-size: 15px; margin: 0;}
.ap-ins .worry-card a {margin-top: auto; font-size: 14px; font-weight: 700; color: var(--ap-blue-700); text-decoration: none;}
.ap-ins .calc {display: grid; grid-template-columns: 1fr 1fr; gap: 28px; margin-top: 40px;}
.ap-ins .panel {background: #fff; border: 1px solid var(--ap-line); border-radius: var(--r); padding: 28px; box-shadow: 0 10px 30px rgba(11,58,91,.06);}
.ap-ins .field {margin-bottom: 22px;}
.ap-ins .field > span {display: block; font-weight: 800; margin-bottom: 10px;}
.ap-ins .seg {display: flex; flex-wrap: wrap; gap: 8px;}
.ap-ins .seg button {border: 1px solid #d5dae0; background: #fff; border-radius: 12px; padding: 10px 16px; font-weight: 700; color: var(--ap-ink-2); cursor: pointer; min-width: 64px;}
.ap-ins .seg button[aria-pressed="true"] {border-color: var(--ap-blue); background: var(--ap-blue-50); color: var(--ap-blue-700);}
.ap-ins .result {display: flex; flex-direction: column; justify-content: space-between; background: var(--ap-blue-900); color: #fff; border: 0;}
.ap-ins .result .amount {font-size: 48px; font-weight: 900; letter-spacing: -0.04em;}
.ap-ins .result .amount small {font-size: 20px; font-weight: 700;}
.ap-ins .result .sub {color: #b9d6ea; font-size: 14px;}
.ap-ins .result ul {list-style: none; padding: 0; margin: 18px 0; display: grid; gap: 8px;}
.ap-ins .result li {display: flex; justify-content: space-between; font-size: 15px; border-bottom: 1px dashed rgba(255,255,255,.18); padding-bottom: 8px;}
.ap-ins .result .ins-btn-primary {background: #fff; color: var(--ap-blue-900); box-shadow: none;}
.ap-ins .plans {margin-top: 40px; display: grid; grid-template-columns: 200px repeat(3, 1fr); border: 1px solid var(--ap-line); border-radius: var(--r); overflow: hidden;}
.ap-ins .plans > div {padding: 16px 18px; border-bottom: 1px solid var(--ap-line); font-size: 15px;}
.ap-ins .plans .h {font-weight: 800; color: var(--ap-ink-2); background: var(--ap-bg);}
.ap-ins .plans .col-head {background: #fff; text-align: center; padding: 24px 18px;}
.ap-ins .plans .col-head b {display: block; font-size: 20px;}
.ap-ins .plans .col-head small {color: var(--ap-ink-3);}
.ap-ins .plans .pick {background: var(--ap-blue-50);}
.ap-ins .plans .col-head.pick {border-top: 4px solid var(--ap-blue);}
.ap-ins .plans .c {text-align: center; font-weight: 700;}
.ap-ins .plans .badge {display: inline-block; font-size: 12px; font-weight: 800; color: #fff; background: var(--ap-blue); padding: 2px 8px; border-radius: 999px; margin-bottom: 6px;}
.ap-ins .cover-grid {margin-top: 40px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px;}
.ap-ins .cover {min-width: 0; background: #fff; border: 1px solid var(--ap-line); border-radius: var(--r); padding: 22px; display: flex; flex-direction: column; gap: 10px;}
.ap-ins .cover .ph {min-height: 150px; padding: 12px; font-size: 12px;}
.ap-ins .cover h3 {font-size: 18px;}
.ap-ins .cover p {margin: 0; color: var(--ap-ink-2); font-size: 14px;}
.ap-ins .tags {display: flex; gap: 6px;}
.ap-ins .tag {font-size: 12px; font-weight: 800; padding: 2px 8px; border-radius: 6px;}
.ap-ins .tag.base {color: var(--ok); background: var(--ok-50);}
.ap-ins .tag.rider {color: var(--ap-blue-700); background: var(--ap-blue-50);}
.ap-ins .cover.wide {grid-column: span 2; flex-direction: row; align-items: center; background: var(--ap-blue-900); color: #fff; border: 0;}
.ap-ins .cover.wide p {color: #cfe3f1;}
.ap-ins .cover.wide .ph {flex: 0 0 220px; border-color: rgba(255,255,255,.4); background: rgba(255,255,255,.06); color: #fff;}
.ap-ins .cover.wide .ph p {color: #cfe3f1;}
.ap-ins .disc {background: var(--ap-bg);}
.ap-ins .disc-box {margin-top: 40px; display: grid; grid-template-columns: 1.4fr 1fr; gap: 20px;}
.ap-ins .disc-list {display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px;}
.ap-ins .disc-item {display: flex; align-items: center; gap: 12px; background: #fff; border: 1px solid var(--ap-line); border-radius: 14px; padding: 14px 16px; cursor: pointer;}
.ap-ins .disc-item input {width: 20px; height: 20px; accent-color: var(--ap-blue);}
.ap-ins .disc-item span {flex: 1; font-weight: 700;}
.ap-ins .disc-item b {color: var(--ap-blue-700);}
.ap-ins .disc-item small {display: block; font-weight: 500; color: var(--ap-ink-3); font-size: 12px;}
.ap-ins .disc-sum {background: #fff; border-radius: var(--r); padding: 28px; border: 1px solid var(--ap-line); text-align: center; display: flex; flex-direction: column; justify-content: center; gap: 6px;}
.ap-ins .disc-sum .pct {font-size: 64px; font-weight: 900; color: var(--ap-blue); letter-spacing: -0.05em;}
.ap-ins .meter {height: 10px; background: var(--ap-fill); border-radius: 999px; overflow: hidden; margin: 6px 0;}
.ap-ins .meter i {display: block; height: 100%; width: 0; background: var(--ap-blue); border-radius: 999px; transition: width .2s;}
.ap-ins .why {background: linear-gradient(180deg, #fff, var(--ap-blue-50));}
.ap-ins .why-grid {margin-top: 40px; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; align-items: stretch;}
.ap-ins .why-list {display: grid; gap: 14px;}
.ap-ins .why-item {display: flex; gap: 16px; background: #fff; border-radius: var(--r); padding: 22px; border: 1px solid var(--ap-line);}
.ap-ins .why-item .n {flex: 0 0 40px; height: 40px; border-radius: 12px; background: var(--ap-blue); color: #fff; font-weight: 900; display: grid; place-items: center;}
.ap-ins .why-item h3 {font-size: 18px; margin-bottom: 4px;}
.ap-ins .why-item p {margin: 0; color: var(--ap-ink-2); font-size: 15px;}
.ap-ins .why .ph {min-height: 100%;}
.ap-ins .steps {margin-top: 40px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; counter-reset: s;}
.ap-ins .step {position: relative; background: #fff; border: 1px solid var(--ap-line); border-radius: var(--r); padding: 24px 20px;}
.ap-ins .step::before {counter-increment: s; content: "STEP " counter(s); font-size: 12px; font-weight: 900; color: var(--ap-blue);}
.ap-ins .step h3 {font-size: 18px; margin: 8px 0 6px;}
.ap-ins .step p {margin: 0; color: var(--ap-ink-2); font-size: 14px;}
.ap-ins .docs {margin-top: 16px; padding: 18px 20px; border-radius: 14px; background: var(--ap-bg); font-size: 14px; color: var(--ap-ink-2);}
.ap-ins .reviews {margin-top: 40px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;}
.ap-ins .review {border: 1px dashed #c6cdd5; border-radius: var(--r); padding: 22px; color: var(--ap-ink-3); background: var(--ap-bg); font-size: 14px;}
.ap-ins .faq {margin-top: 32px; border-top: 1px solid var(--ap-line);}
.ap-ins .faq details {border-bottom: 1px solid var(--ap-line);}
.ap-ins .faq summary {list-style: none; cursor: pointer; padding: 20px 4px; font-size: 18px; font-weight: 700; display: flex; justify-content: space-between; gap: 12px;}
.ap-ins .faq summary::-webkit-details-marker {display: none;}
.ap-ins .faq summary::after {content: "+"; color: var(--ap-ink-3); font-weight: 400; font-size: 24px; line-height: 1;}
.ap-ins .faq details[open] summary::after {content: "−";}
.ap-ins .faq .ans {padding: 0 4px 22px; color: var(--ap-ink-2);}
.ap-ins .legal {background: var(--ap-bg); padding: 56px 0;}
.ap-ins .legal details {background: #fff; border: 1px solid var(--ap-line); border-radius: 14px; padding: 4px 18px;}
.ap-ins .legal summary {cursor: pointer; padding: 14px 0; font-weight: 800;}
.ap-ins .legal ul {margin: 0 0 16px; padding-left: 18px; color: var(--ap-ink-2); font-size: 13px; line-height: 1.7;}
.ap-ins .legal .stamp {margin-top: 12px; font-size: 12px; color: var(--ap-ink-3);}
@media (max-width: 860px) {
	.ap-ins section {padding: 64px 0;}
	.ap-ins .wrap {padding: 0 20px;}
	.ap-ins h2 {font-size: 26px;}
	.ap-ins .lead {font-size: 16px;}
	.ap-ins .hero {padding: 28px 0 48px;}
	.ap-ins .hero .wrap {grid-template-columns: 1fr; gap: 24px;}
	.ap-ins .hero h1 {font-size: 32px;}
	.ap-ins .hero .lead {font-size: 16px;}
	.ap-ins .hero .ph {min-height: 380px; order: -1;}
	.ap-ins .hero-cta .ins-btn {flex: 1 1 100%;}
	.ap-ins .chips {margin: 20px 0 22px;}
	.ap-ins .chips li {flex: 1 1 calc(50% - 8px); font-size: 14px;}
	.ap-ins .worry-grid, .ap-ins .cover-grid, .ap-ins .steps, .ap-ins .reviews {grid-template-columns: 1fr;}
	.ap-ins .worry-grid {display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; margin: 28px -20px 0; padding: 0 20px 6px;}
	.ap-ins .worry-card {flex: 0 0 78%; scroll-snap-align: start;}
	.ap-ins .calc, .ap-ins .disc-box, .ap-ins .why-grid {grid-template-columns: 1fr;}
	.ap-ins .panel {padding: 22px;}
	.ap-ins .result .amount {font-size: 40px;}
	.ap-ins .plans {display: none;}
	.ap-ins .plan-cards {display: flex !important;}
	.ap-ins .cover-grid {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px;}
	.ap-ins .cover {padding: 16px;}
	.ap-ins .cover .ph {min-height: 110px;}
	.ap-ins .cover h3 {font-size: 16px;}
	.ap-ins .cover.wide {grid-column: span 2; flex-direction: column; align-items: stretch;}
	.ap-ins .cover.wide .ph {flex: none;}
	.ap-ins .disc-list {grid-template-columns: 1fr;}
	.ap-ins .disc-sum .pct {font-size: 52px;}
	.ap-ins .why .ph {min-height: 260px; order: -1;}
	.ap-ins .steps {grid-template-columns: 1fr 1fr; gap: 10px;}
	.ap-ins .faq summary {font-size: 16px;}
}
.ap-ins .hero-img {margin: 0;}
.ap-ins .hero-img img {width: 100%; height: auto; aspect-ratio: 1200 / 1040; object-fit: cover; border-radius: 28px; box-shadow: 0 20px 50px rgba(11,58,91,.12);}
.ap-ins .cover-img {width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 14px; background: var(--ap-blue-50);}
.ap-ins .cover.wide .cover-img.bite {flex: 0 0 220px; width: 220px; aspect-ratio: 1; background: none;}
.ap-ins .cover-pic {display: contents;} /* [11/10] webp 감싸개 — 그림이 그대로 줄 칸(flex)의 칸이 되게 */
.ap-ins .why-img {margin: 0; height: 100%;}
.ap-ins .why-img picture, .ap-ins .why-img img {display: block; width: 100%; height: 100%;}
.ap-ins .why-img img {object-fit: cover; border-radius: var(--r); min-height: 420px;}
@media (max-width: 860px) {
	.ap-ins .hero-img {order: -1;}
	.ap-ins .hero-img img {aspect-ratio: 750 / 760; border-radius: 22px;}
	.ap-ins .cover.wide .cover-img.bite {width: 100%; max-width: 260px; margin: 0 auto; flex: none;}
	.ap-ins .why-img {order: -1; height: auto;}
	.ap-ins .why-img img {aspect-ratio: 750 / 520; min-height: 0; height: auto;}
}
.ap-ins .plan-cards {display: none; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; margin: 28px -20px 0; padding: 0 20px 8px;}
.ap-ins .plan-card {flex: 0 0 82%; scroll-snap-align: start; border: 1px solid var(--ap-line); border-radius: var(--r); padding: 22px; background: #fff;}
.ap-ins .plan-card.pick {border: 2px solid var(--ap-blue); background: var(--ap-blue-50);}
.ap-ins .plan-card h3 {font-size: 20px;}
.ap-ins .plan-card dl {display: grid; grid-template-columns: auto 1fr; gap: 8px 12px; margin: 16px 0 0; font-size: 14px;}
.ap-ins .plan-card dt {color: var(--ap-ink-3);}
.ap-ins .plan-card dd {margin: 0; text-align: right; font-weight: 700;}

/* ── [11/4] DB 느낌 + 애니팜 자리 나누기 ── */
.ap-ins .hero { background: linear-gradient(180deg, var(--db-mint) 0%, #f4fbf7 46%, #fff 86%); }
.ap-ins .hero h1 em { color: var(--anp-blue); }                    /* '동네 약국' = 애니팜 */
.ap-ins .hero .eyebrow { color: var(--ap-blue-700); background: #fff; border: 1px solid var(--ap-blue-100); }
.ap-ins .chips li { border-color: var(--ap-blue-100); }
.ap-ins .chips li:nth-child(2) { border-color: #fbd3ad; background: #fff8f1; }   /* 할인 = DB 주황 포인트 */
.ap-ins .hero-img img { box-shadow: 0 20px 50px rgba(0, 107, 60, .14); }
.ap-ins .ins-btn-primary { box-shadow: 0 8px 20px rgba(0, 133, 74, .26); }
.ap-ins .ins-btn-line { border-color: var(--anp-blue-100); color: var(--anp-blue-700); }   /* '약국 상담' 버튼 = 애니팜 */
.ap-ins .ins-btn-line:hover { background: var(--anp-blue-50); }
.ap-ins .disc-sum .ins-btn-line, .ap-ins .result .ins-btn-line { border-color: #d5dae0; color: var(--ap-ink); }
.ap-ins .worry { background: #f6faf7; }
.ap-ins .worry-card .q::before { color: var(--ap-blue); }
.ap-ins .disc { background: #f6faf7; }
.ap-ins .disc-item b { color: var(--db-orange); }
.ap-ins .disc-sum .pct { color: var(--db-orange); }
.ap-ins .meter i { background: linear-gradient(90deg, var(--ap-blue), var(--db-orange)); }
.ap-ins .plans .col-head.pick { border-top-color: var(--ap-blue); }
.ap-ins .result { background: linear-gradient(160deg, #0c3f2a, #0f5a38); }
.ap-ins .result .sub { color: #bfe3cf; }
.ap-ins .cover.wide { background: linear-gradient(160deg, #0c3f2a, #0f5a38); }
.ap-ins .cover.wide p { color: #cfe9da; }
/* 애니팜이라서 좋은 점 = 애니팜 파랑 그대로 */
.ap-ins .why { --ap-blue: var(--anp-blue); --ap-blue-700: var(--anp-blue-700); --ap-blue-900: var(--anp-blue-900); --ap-blue-50: var(--anp-blue-50); --ap-blue-100: var(--anp-blue-100);
	background: linear-gradient(180deg, #fff, var(--anp-blue-50)); }
/* 안 메뉴 이름표: 애니팜(파랑) × DB(초록) */
.ap-ins .ins-lockup .anp { color: var(--anp-blue); }
.ap-ins .partner { border-color: #9fd3b6; color: var(--ap-blue-700); background: #f3fbf6; }
.ap-ins .ins-subnav .ins-links a[href="#why"] { color: var(--anp-blue-700); }
.ap-ins .bottom-bar .ins-btn-line { border-color: var(--anp-blue-100); color: var(--anp-blue-700); }
