/* ============================================================
   Clinic Info (hidden client welcome) pages
   ============================================================ */

.ci-hero {
	min-height: 620px;
	display: flex;
	align-items: flex-end;
	background-size: cover;
	background-position: center;
	color: var(--lb-white);
	padding: 60px 0 64px;
}
.ci-hero__inner { max-width: var(--lb-content-max); margin: 0 auto; padding: 0 var(--lb-container-pad-x); width: 100%; }
.ci-hero__brand { font-family: var(--lb-font-heading); font-weight: 300; letter-spacing: .24em; font-size: 14px; text-transform: uppercase; color: var(--lb-cream); margin-bottom: 14px; }
.ci-hero__city { font-family: var(--lb-font-display); font-size: clamp(40px, 6vw, 76px); line-height: 1; font-weight: 500; margin-bottom: 14px; }
.ci-hero__addr { font-family: var(--lb-font-body); font-weight: 300; font-size: 16px; color: var(--lb-white-90); margin-bottom: 28px; }
.ci-hero__welcome-label { font-family: var(--lb-font-heading); font-weight: 600; letter-spacing: .14em; font-size: 13px; text-transform: uppercase; color: var(--lb-cream); margin-bottom: 12px; }
.ci-hero__welcome { font-family: var(--lb-font-body); font-weight: 300; font-size: 17px; line-height: 1.75; max-width: 760px; color: var(--lb-white); }

/* generic section */
.ci-section { padding-block: 72px; }
.ci-section--cream { background: var(--lb-cream); }
.ci-section--off { background: var(--lb-off-white); }
.ci-wrap { max-width: 880px; margin: 0 auto; padding: 0 var(--lb-container-pad-x); }
.ci-eyebrow { font-family: var(--lb-font-heading); font-weight: 600; letter-spacing: .16em; font-size: 12.5px; text-transform: uppercase; color: var(--lb-gold); margin-bottom: 10px; }
.ci-h2 { font-family: var(--lb-font-heading); font-weight: 300; font-size: clamp(26px, 3.2vw, 40px); line-height: 1.12; color: var(--lb-ink); margin-bottom: 24px; }
.ci-h2 em { font-style: normal; font-weight: 700; }
.ci-h3 { font-family: var(--lb-font-heading); font-weight: 600; font-size: 20px; color: var(--lb-ink); margin: 30px 0 12px; }
.ci-p { font-family: var(--lb-font-body); font-weight: 300; font-size: 16.5px; line-height: 1.8; color: var(--lb-grey-500); margin-bottom: 16px; }
.ci-p strong { font-weight: 600; color: var(--lb-ink); }

/* checklist with bold lead */
.ci-list { list-style: none; padding: 0; margin: 8px 0 16px; display: flex; flex-direction: column; gap: 14px; }
.ci-list li { position: relative; padding-left: 30px; font-family: var(--lb-font-body); font-weight: 300; font-size: 16px; line-height: 1.7; color: var(--lb-grey-700); }
.ci-list li::before { content: ""; position: absolute; left: 0; top: 9px; width: 9px; height: 9px; border-radius: 50%; background: var(--lb-gold); }
.ci-list li b { font-weight: 600; color: var(--lb-ink); }

/* plain bullet list */
.ci-bullets { list-style: none; padding: 0; margin: 8px 0 16px; display: flex; flex-direction: column; gap: 9px; }
.ci-bullets li { position: relative; padding-left: 24px; font-family: var(--lb-font-body); font-weight: 300; font-size: 16px; line-height: 1.7; color: var(--lb-grey-700); }
.ci-bullets li::before { content: "✓"; position: absolute; left: 0; top: 0; color: var(--lb-gold); font-weight: 700; font-size: 14px; }

/* video tour */
.ci-video-section { padding-block: 72px; background: var(--lb-ink); text-align: center; }
.ci-video-section .ci-eyebrow { color: var(--lb-cream); }
.ci-video-section .ci-h2 { color: var(--lb-white); }
.ci-video-wrap { max-width: 340px; margin: 0 auto; border-radius: 22px; overflow: hidden; box-shadow: 0 24px 60px rgba(0,0,0,0.4); border: 3px solid rgba(253,235,187,0.5); }
.ci-video-wrap video { display: block; width: 100%; aspect-ratio: 9 / 16; object-fit: cover; background: #000; }

/* contact cards */
.ci-contact-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px; margin-top: 22px; }
.ci-contact-card { background: var(--lb-white); border: 1px solid rgba(203,176,107,0.35); border-radius: 14px; padding: 26px 24px; }
.ci-contact-card h4 { font-family: var(--lb-font-heading); font-weight: 600; font-size: 18px; color: var(--lb-ink); margin-bottom: 8px; }
.ci-contact-card p { font-family: var(--lb-font-body); font-weight: 300; font-size: 15px; line-height: 1.6; color: var(--lb-grey-500); margin-bottom: 14px; }
.ci-wa-btn { display: inline-flex; align-items: center; gap: 9px; background: #25D366; color: #fff; font-family: var(--lb-font-body); font-weight: 600; font-size: 15px; padding: 11px 20px; border-radius: 999px; text-decoration: none; }
.ci-wa-btn svg { width: 18px; height: 18px; fill: #fff; }
.ci-call-btn { display: inline-flex; align-items: center; gap: 9px; background: var(--lb-ink); color: var(--lb-cream); font-family: var(--lb-font-body); font-weight: 600; font-size: 15px; padding: 11px 20px; border-radius: 999px; text-decoration: none; }

/* callout (important) */
.ci-callout { background: var(--lb-white); border-left: 5px solid var(--lb-gold); border-radius: 8px; padding: 24px 26px; margin: 18px 0; box-shadow: 0 8px 26px rgba(26,26,26,0.05); }
.ci-callout--warn { border-left-color: #c0392b; }

/* stat row */
.ci-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 18px; margin: 22px 0; }
.ci-stat { background: var(--lb-cream); border-radius: 14px; padding: 26px 22px; text-align: center; }
.ci-stat__big { font-family: var(--lb-font-heading); font-weight: 700; font-size: 30px; color: var(--lb-ink); line-height: 1.1; }
.ci-stat__label { font-family: var(--lb-font-body); font-weight: 400; font-size: 14.5px; color: var(--lb-grey-700); margin-top: 6px; }

/* figure */
.ci-figure { margin: 26px 0; border-radius: 16px; overflow: hidden; }
.ci-figure img { display: block; width: 100%; height: auto; }
.ci-figure--narrow { max-width: 520px; margin-left: auto; margin-right: auto; }

/* refreshments split */
.ci-refresh { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 20px; }
.ci-refresh__card { background: var(--lb-white); border-radius: 14px; padding: 24px; border: 1px solid rgba(203,176,107,0.3); }
.ci-refresh__card h4 { font-family: var(--lb-font-heading); font-weight: 600; font-size: 17px; color: var(--lb-ink); margin-bottom: 6px; }
.ci-refresh__card p { font-family: var(--lb-font-body); font-weight: 300; font-size: 15px; color: var(--lb-grey-500); }

/* app cta */
.ci-app { background: var(--lb-ink); color: var(--lb-white); padding-block: 72px; }
.ci-app .ci-eyebrow { color: var(--lb-cream); }
.ci-app .ci-h2 { color: var(--lb-white); }
.ci-app .ci-p { color: var(--lb-white-90); }
.ci-app .ci-bullets li { color: var(--lb-white-90); }

/* closing band */
.ci-closing { background: var(--lb-cream); text-align: center; padding-block: 54px; }
.ci-closing__brand { font-family: var(--lb-font-heading); font-weight: 700; letter-spacing: .16em; font-size: 22px; text-transform: uppercase; color: var(--lb-ink); }
.ci-closing__addr { font-family: var(--lb-font-body); font-weight: 300; font-size: 15px; color: var(--lb-grey-700); margin-top: 8px; }
.ci-closing__tag { font-family: var(--lb-font-heading); font-weight: 600; letter-spacing: .08em; font-size: 13px; text-transform: uppercase; color: var(--lb-gold); margin-top: 14px; }

@media (max-width: 600px) {
	.ci-hero { min-height: 480px; }
	.ci-refresh { grid-template-columns: 1fr; }
	.ci-section { padding-block: 54px; }
}
