.hcmc-loc-wrapper {
	--loc-text: #0f172a;
	--loc-muted: #475569;
	--loc-brand: #0d5e95;
	--loc-brand-dk: #0a4b78;
	--loc-brand-lt: #eef7ff;
	--loc-accent-green: #25d366;
	--loc-accent-green-dk: #146f3a;
	--loc-border: #dbe7f3;
	--loc-shadow-sm: 0 1px 3px rgba(0,0,0,0.05), 0 1px 2px rgba(0,0,0,0.03);
	--loc-shadow-md: 0 4px 6px -1px rgba(0,0,0,0.05), 0 2px 4px -2px rgba(0,0,0,0.05);
	--loc-shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.08), 0 4px 6px -4px rgba(0,0,0,0.08);
	--loc-bg-alt: #f8fafc;
	color: var(--loc-text);
	background: #fff;
	font-family: 'Inter', -apple-system, sans-serif;
	line-height: 1.65;
}

.hcmc-loc-full { width: 100%; }
.hcmc-loc-container { width: min(1200px, 100% - 40px); margin: 0 auto; }

/* Global Section Header */
.hcmc-loc-head { text-align: center; max-width: 860px; margin: 0 auto 40px; }
.hcmc-loc-head .hcmc-loc-label {
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	color: var(--loc-brand);
	text-transform: uppercase;
	letter-spacing: .08em;
	margin-bottom: 12px;
	background: rgba(13, 94, 149, 0.08);
	padding: 4px 14px;
	border-radius: 999px;
}
.hcmc-loc-head h2 {
	margin: 0 0 12px;
	font-size: clamp(28px, 3.5vw, 40px);
	line-height: 1.25;
	font-weight: 800;
	letter-spacing: -0.02em;
}
.hcmc-loc-head p { margin: 0; color: var(--loc-muted); font-size: clamp(15px, 1.8vw, 17px); line-height: 1.7; }

/* Buttons & CTAs */
.hcmc-loc-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.hcmc-loc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 14px 24px;
	border-radius: 12px;
	font-weight: 700;
	font-size: 15px;
	text-decoration: none !important;
	cursor: pointer;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: var(--loc-shadow-sm);
}
.hcmc-loc-btn svg { width: 18px; height: 18px; fill: currentColor; }
.hcmc-loc-btn--wa { background: var(--loc-accent-green); color: #fff !important; border: 1px solid var(--loc-accent-green-dk); }
.hcmc-loc-btn--wa:hover { background: var(--loc-accent-green-dk) !important; box-shadow: var(--loc-shadow-md); transform: translateY(-1px); }
.hcmc-loc-btn--ms { background: linear-gradient(135deg, #0084ff 0%, #00b6ff 100%); color: #fff !important; border: 1px solid #006ad4; }
.hcmc-loc-btn--ms:hover { background: linear-gradient(135deg, #0057a9 0%, #007de6 100%) !important; box-shadow: var(--loc-shadow-md); transform: translateY(-1px); }
.hcmc-loc-btn--outline { background: #fff; color: var(--loc-brand-dk) !important; border: 1px solid var(--loc-border); }
.hcmc-loc-btn--outline:hover { background: var(--loc-brand-lt) !important; border-color: var(--loc-brand); transform: translateY(-1px); }

/* Section: Hero */
.hcmc-loc-hero {
	padding: 80px 0 60px;
	background: linear-gradient(180deg, #f0f7ff 0%, #ffffff 100%);
	border-bottom: 1px solid var(--loc-border);
}
.hcmc-loc-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr);
	gap: 40px;
	align-items: center;
}
@media (max-width: 991px) {
	.hcmc-loc-hero__grid { grid-template-columns: 1fr; gap: 30px; }
}
.hcmc-loc-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0 0 14px;
	font-size: 13px;
	font-weight: 700;
	color: var(--loc-brand-dk);
	letter-spacing: .06em;
	text-transform: uppercase;
	background: rgba(13, 94, 149, 0.06);
	padding: 4px 12px;
	border-radius: 999px;
}
.hcmc-loc-hero h1 {
	font-size: clamp(32px, 4vw, 48px);
	line-height: 1.15;
	font-weight: 800;
	letter-spacing: -0.03em;
	margin: 0 0 16px;
}
.hcmc-loc-hero__tagline {
	font-size: clamp(16px, 2vw, 19px);
	line-height: 1.6;
	color: var(--loc-muted);
	margin: 0 0 24px;
}
.hcmc-loc-hero__photo-wrap { position: relative; }
.hcmc-loc-hero__photo {
	width: 100%;
	border-radius: 20px;
	box-shadow: var(--loc-shadow-lg);
	border: 1px solid var(--loc-border);
}

/* Key Facts Box */
.hcmc-loc-facts {
	background: #fff;
	border: 1px solid var(--loc-border);
	border-left: 5px solid var(--loc-brand);
	border-radius: 8px 16px 16px 8px;
	padding: 24px;
	margin: 32px 0 0 0;
	box-shadow: var(--loc-shadow-md);
}
.hcmc-loc-facts__title {
	font-size: 16px;
	font-weight: 800;
	margin: 0 0 16px 0;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--loc-brand-dk);
}
.hcmc-loc-facts__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 16px;
}
.hcmc-loc-facts__item { display: flex; flex-direction: column; }
.hcmc-loc-facts__item span:first-child {
	font-size: 12px;
	font-weight: 700;
	color: var(--loc-muted);
	text-transform: uppercase;
	margin-bottom: 2px;
}
.hcmc-loc-facts__item span:last-child {
	font-size: 15px;
	font-weight: 600;
	color: var(--loc-text);
}

/* Generic Section styling */
.hcmc-loc-sec { padding: 80px 0; border-bottom: 1px solid var(--loc-border); }
.hcmc-loc-sec:nth-child(even) { background: var(--loc-bg-alt); }

/* Map & Access Section */
.hcmc-loc-map__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
	gap: 40px;
}
@media (max-width: 991px) {
	.hcmc-loc-map__grid { grid-template-columns: 1fr; gap: 30px; }
}
.hcmc-loc-map__iframe {
	width: 100%;
	height: 400px;
	border-radius: 16px;
	box-shadow: var(--loc-shadow-md);
	border: 1px solid var(--loc-border);
}
.hcmc-loc-table {
	width: 100%;
	border-collapse: collapse;
	margin-top: 16px;
}
.hcmc-loc-table th, .hcmc-loc-table td {
	padding: 12px 16px;
	text-align: left;
	border-bottom: 1px solid var(--loc-border);
}
.hcmc-loc-table th {
	font-weight: 700;
	background: rgba(13, 94, 149, 0.04);
	color: var(--loc-brand-dk);
}
.hcmc-loc-table tr:last-child td { border-bottom: none; }

/* Services Grid */
.hcmc-loc-srv__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 24px;
}
.hcmc-loc-srv__card {
	background: #fff;
	border: 1px solid var(--loc-border);
	border-radius: 16px;
	padding: 24px;
	box-shadow: var(--loc-shadow-sm);
	transition: all 0.2s ease;
}
.hcmc-loc-srv__card:hover { transform: translateY(-2px); box-shadow: var(--loc-shadow-md); }
.hcmc-loc-srv__card h3 {
	margin: 0 0 8px;
	font-size: 18px;
	font-weight: 800;
	color: var(--loc-brand-dk);
}
.hcmc-loc-srv__card p { margin: 0 0 16px; color: var(--loc-muted); font-size: 14px; }
.hcmc-loc-srv__price {
	font-size: 15px;
	font-weight: 700;
	color: var(--loc-text);
	display: block;
	margin-bottom: 12px;
}
.hcmc-loc-srv__link {
	font-weight: 600;
	font-size: 14px;
	color: var(--loc-brand);
	text-decoration: none;
}

/* Meet Dr. Cuong Section */
.hcmc-loc-dr__grid {
	display: grid;
	grid-template-columns: 350px 1fr;
	gap: 40px;
	align-items: center;
}
@media (max-width: 991px) {
	.hcmc-loc-dr__grid { grid-template-columns: 1fr; gap: 30px; text-align: center; }
}
.hcmc-loc-dr__photo {
	width: 100%;
	max-width: 350px;
	border-radius: 20px;
	box-shadow: var(--loc-shadow-md);
	border: 1px solid var(--loc-border);
	margin: 0 auto;
}
.hcmc-loc-dr__details ul {
	margin: 20px 0;
	padding-left: 20px;
	list-style: none;
}
.hcmc-loc-dr__details li {
	margin-bottom: 10px;
	position: relative;
	padding-left: 24px;
	text-align: left;
}
.hcmc-loc-dr__details li::before {
	content: "✓";
	position: absolute;
	left: 0;
	color: var(--loc-brand);
	font-weight: bold;
}

/* FAQ Layout */
.hcmc-loc-faq__list { max-width: 800px; margin: 0 auto; display: flex; flex-direction: column; gap: 16px; }
.hcmc-loc-faq__item {
	border: 1px solid var(--loc-border);
	border-radius: 12px;
	background: #fff;
	overflow: hidden;
}
.hcmc-loc-faq__q {
	width: 100%;
	text-align: left;
	padding: 18px 24px;
	background: none;
	border: none;
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
	color: var(--loc-text);
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.hcmc-loc-faq__a {
	padding: 0 24px 18px;
	color: var(--loc-muted);
	font-size: 15px;
	line-height: 1.6;
}

/* Final CTA Section */
.hcmc-loc-final {
	padding: 80px 0;
	background: linear-gradient(135deg, var(--loc-brand-dk) 0%, var(--loc-brand) 100%);
	color: #fff;
	text-align: center;
}
.hcmc-loc-final h2 { font-size: clamp(26px, 3vw, 36px); margin: 0 0 16px; color: #fff; font-weight: 800; }
.hcmc-loc-final p { max-width: 700px; margin: 0 auto 24px; font-size: 16px; opacity: 0.9; }
.hcmc-loc-final .hcmc-loc-actions { justify-content: center; }
.hcmc-loc-final .hcmc-loc-btn--outline {
	background: rgba(255,255,255,0.08);
	border-color: rgba(255,255,255,0.3);
	color: #fff !important;
}
.hcmc-loc-final .hcmc-loc-btn--outline:hover { background: rgba(255,255,255,0.15) !important; }

/* Clinical AI Snapshot & Key Takeaways Boxes */
.ai-snapshot {
  background: #f0fdfa !important;
  border: 1px solid #ccfbf1 !important;
  border-left: 4px solid #0d9488 !important;
  border-radius: 4px 12px 12px 4px !important;
  padding: 20px 24px !important;
  margin-top: 24px !important;
  margin-bottom: 28px !important;
  text-align: left !important;
}
.ai-snapshot .summary-title {
  font-family: inherit !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  color: #0f766e !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin: 0 0 10px 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.ai-snapshot .summary-title::before {
  content: "📋" !important;
  font-size: 1rem !important;
}
.ai-snapshot p {
  font-family: inherit !important;
  font-size: 0.95rem !important;
  color: #115e59 !important;
  line-height: 1.75 !important;
  margin: 0 !important;
}
.ai-snapshot p:not(.summary-title) {
  margin-top: 8px !important;
}

.key-facts-block {
  background: #f0f9ff !important;
  border: 1px solid #e0f2fe !important;
  border-left: 4px solid #0284c7 !important;
  border-radius: 4px 12px 12px 4px !important;
  padding: 20px 24px !important;
  margin-bottom: 28px !important;
  text-align: left !important;
}
.key-facts-block .key-facts-title {
  font-family: inherit !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  color: #0369a1 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin: 0 0 10px 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.key-facts-block .key-facts-title::before {
  content: "💡" !important;
  font-size: 1rem !important;
}
.key-facts-block ul {
  margin: 0 !important;
  padding-left: 20px !important;
  list-style: disc !important;
}
.key-facts-block li {
  font-family: inherit !important;
  font-size: 0.95rem !important;
  color: #0369a1 !important;
  line-height: 1.75 !important;
  margin: 0 0 6px 0 !important;
}
.key-facts-block li:last-child {
  margin-bottom: 0 !important;
}

