/* ==========================================================================
   Dr. Manish Mehta -- ENT Clinic, public site
   --------------------------------------------------------------------------
   Ye file frontend/header.php me SABSE AAKHIR me load hoti hai, isliye
   template ki style.css / menu.css / vendors.css ko override karti hai.
   Rollback: header.php se iska <link> nikal do.

   Rang admin panel se hi mel khate hain (#3f4079), taaki patient ko site aur
   panel ek hi cheez lage. Teal accent ENT/medical ke liye -- saaf aur shaant.
   ========================================================================== */

:root {
	--s-brand:      #3f4079;
	--s-brand-700:  #33345f;
	--s-brand-300:  #8385cc;
	--s-accent:     #15A38C;
	--s-accent-700: #0f8672;
	--s-accent-50:  #e4f6f2;

	--s-ink:        #14172a;
	--s-ink-2:      #39405c;
	--s-body:       #565d74;
	--s-muted:      #838aa1;
	--s-faint:      #a9afc1;

	--s-line:       #e7eaf2;
	--s-line-2:     #f1f3f8;
	--s-bg:         #f6f8fc;
	--s-card:       #ffffff;

	--s-r:          18px;
	--s-r-sm:       12px;
	--s-r-xs:       9px;

	--s-sh:         0 1px 2px rgba(20,23,42,.04), 0 4px 14px rgba(20,23,42,.06);
	--s-sh-md:      0 2px 6px rgba(20,23,42,.05), 0 12px 30px rgba(20,23,42,.09);
	--s-sh-lg:      0 6px 16px rgba(20,23,42,.07), 0 24px 60px rgba(20,23,42,.13);

	--s-font:       "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI",
	                Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* ---------- Base ---------------------------------------------------------- */

body {
	font-family: var(--s-font) !important;
	color: var(--s-body) !important;
	background: var(--s-card);
	font-size: 15px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
h1, h2, h3, h4, h5, h6 {
	font-family: var(--s-font) !important;
	color: var(--s-ink) !important;
	font-weight: 650;
	letter-spacing: -.02em;
	line-height: 1.25;
}
a { color: var(--s-brand); }
a:hover { color: var(--s-brand-700); }
main { display: block; }

/* ---------- Header -------------------------------------------------------- */

header.header_sticky {
	background: rgba(255,255,255,.92) !important;
	backdrop-filter: saturate(180%) blur(12px);
	-webkit-backdrop-filter: saturate(180%) blur(12px);
	border-bottom: 1px solid var(--s-line);
	box-shadow: none !important;
	padding: .55rem 0;
	position: sticky; top: 0; z-index: 900;
}
header.header_sticky h4 { margin: 0 !important; }
.site-brand {
	display: inline-flex; align-items: center; gap: .65rem;
	text-decoration: none;
}
.site-brand .mark {
	width: 40px; height: 40px; flex: 0 0 40px;
	border-radius: 12px;
	background: linear-gradient(140deg, #5254a5 0%, var(--s-brand) 100%);
	color: #fff;
	display: flex; align-items: center; justify-content: center;
	font-size: 17px;
	box-shadow: 0 2px 8px rgba(63,64,121,.28);
}
.site-brand .tx { line-height: 1.15; }
.site-brand .nm {
	display: block; font-size: 1.02rem; font-weight: 700;
	color: var(--s-ink); letter-spacing: -.02em;
}
.site-brand .sb {
	display: block; font-size: .68rem; font-weight: 600;
	letter-spacing: .13em; text-transform: uppercase; color: var(--s-accent);
}

ul#top_access { display: flex; align-items: center; gap: .35rem; margin: 0; list-style: none; }
ul#top_access > li { display: inline-flex; align-items: center; }
ul#top_access a {
	font-size: .9rem !important;
	font-weight: 550;
	color: var(--s-ink-2) !important;
	padding: .5rem .8rem;
	border-radius: var(--s-r-xs);
	transition: background .15s ease, color .15s ease;
}
ul#top_access a:hover { background: var(--s-line-2); color: var(--s-brand) !important; }
ul#top_access span { color: var(--s-faint); }
ul#top_access .btn-primary {
	background: var(--s-accent) !important;
	border-color: var(--s-accent) !important;
	color: #fff !important;
	border-radius: 999px !important;
	padding: .5rem 1.05rem !important;
	font-weight: 600;
	box-shadow: 0 2px 10px rgba(21,163,140,.3);
}
ul#top_access .btn-primary:hover { background: var(--s-accent-700) !important; color: #fff !important; }
ul#top_access .btn-secondary {
	background: var(--s-line-2) !important;
	border-color: var(--s-line) !important;
	color: var(--s-ink-2) !important;
	border-radius: 999px !important;
	font-weight: 600;
	padding: .5rem 1rem !important;
}

/* ---------- Hero ---------------------------------------------------------- */

.ent-hero {
	position: relative;
	min-height: 520px;
	display: flex; align-items: center;
	overflow: hidden;
	background: var(--s-brand);
}
.ent-hero__bg { position: absolute; inset: 0; z-index: 0; }
.ent-hero__bg .sl {
	position: absolute; inset: 0;
	background-size: cover; background-position: center;
	opacity: 0;
	animation: entFade 16s infinite;
	transform: scale(1.04);
}
@keyframes entFade {
	0%, 42% { opacity: .30; transform: scale(1.04); }
	50%, 92% { opacity: 0;   transform: scale(1.09); }
	100%    { opacity: .30; transform: scale(1.04); }
}
/* jinhe animation pasand nahi (ya OS me band hai) unke liye sthir */
@media (prefers-reduced-motion: reduce) {
	.ent-hero__bg .sl { animation: none; opacity: .28; }
	.ent-hero__bg .sl:not(:first-child) { display: none; }
}
.ent-hero::after {
	content: ""; position: absolute; inset: 0; z-index: 1;
	background:
		radial-gradient(1100px 460px at 12% 18%, rgba(255,255,255,.12), transparent 60%),
		linear-gradient(105deg, rgba(35,36,72,.95) 0%, rgba(46,47,92,.86) 42%, rgba(63,64,121,.62) 100%);
}
.ent-hero__in { position: relative; z-index: 2; width: 100%; padding: 4.5rem 0; }

.ent-eyebrow {
	display: inline-flex; align-items: center; gap: .45rem;
	background: rgba(255,255,255,.13);
	border: 1px solid rgba(255,255,255,.18);
	color: #fff;
	border-radius: 999px;
	padding: .4rem .9rem;
	font-size: .74rem; font-weight: 650;
	letter-spacing: .1em; text-transform: uppercase;
	margin-bottom: 1.25rem;
	backdrop-filter: blur(6px);
}
.ent-eyebrow i { color: #7fe3d0; }

.ent-hero h1 {
	color: #fff !important;
	font-size: clamp(2rem, 4.4vw, 3.3rem);
	font-weight: 720;
	letter-spacing: -.035em;
	margin: 0 0 .5rem;
	line-height: 1.1;
}
.ent-hero .qual {
	color: #cfd2f0; font-size: 1.02rem; font-weight: 550;
	margin-bottom: 1rem; letter-spacing: .01em;
}
.ent-hero .lede {
	color: rgba(255,255,255,.84);
	font-size: 1.02rem; max-width: 42rem; margin-bottom: 1.6rem;
}
.ent-rating {
	display: inline-flex; align-items: center; gap: .55rem;
	margin-bottom: 1.7rem; color: #fff; font-size: .9rem;
}
.ent-rating .stars { color: #ffc247; letter-spacing: .08em; }
.ent-rating .sep { color: rgba(255,255,255,.35); }

.ent-cta { display: flex; flex-wrap: wrap; gap: .7rem; }
.ent-btn {
	display: inline-flex; align-items: center; gap: .5rem;
	border-radius: 999px;
	padding: .82rem 1.6rem;
	font-weight: 620; font-size: .95rem;
	text-decoration: none;
	transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
	border: 1px solid transparent;
}
.ent-btn--go {
	background: var(--s-accent); color: #fff;
	box-shadow: 0 4px 18px rgba(21,163,140,.42);
}
.ent-btn--go:hover { background: var(--s-accent-700); color: #fff; transform: translateY(-2px); box-shadow: 0 8px 26px rgba(21,163,140,.5); }
.ent-btn--ghost {
	background: rgba(255,255,255,.10); color: #fff;
	border-color: rgba(255,255,255,.28);
	backdrop-filter: blur(6px);
}
.ent-btn--ghost:hover { background: rgba(255,255,255,.19); color: #fff; transform: translateY(-2px); }

/* hero ke neeche pattiyan */
.ent-strip { background: #fff; border-bottom: 1px solid var(--s-line); }
.ent-strip .row-in {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	gap: 1px; background: var(--s-line);
}
.ent-strip .it {
	background: #fff; padding: 1.15rem 1.3rem;
	display: flex; align-items: center; gap: .8rem;
}
.ent-strip .ic {
	width: 38px; height: 38px; flex: 0 0 38px; border-radius: 11px;
	background: var(--s-accent-50); color: var(--s-accent);
	display: flex; align-items: center; justify-content: center; font-size: 15px;
}
.ent-strip .k { font-size: .7rem; font-weight: 650; letter-spacing: .09em; text-transform: uppercase; color: var(--s-muted); }
.ent-strip .v { font-size: .92rem; font-weight: 620; color: var(--s-ink); margin-top: .1rem; }

/* ---------- Section scaffolding ------------------------------------------ */

.ent-sec { padding: 4.2rem 0; }
.ent-sec.alt { background: var(--s-bg); }
.ent-head { text-align: center; max-width: 44rem; margin: 0 auto 2.8rem; }
.ent-head .kick {
	display: inline-block;
	font-size: .73rem; font-weight: 700; letter-spacing: .14em;
	text-transform: uppercase; color: var(--s-accent);
	margin-bottom: .7rem;
}
.ent-head h2 { font-size: clamp(1.5rem, 2.6vw, 2.05rem); margin: 0 0 .6rem; }
.ent-head p { color: var(--s-muted); font-size: 1rem; margin: 0; }

/* ---------- Doctor intro -------------------------------------------------- */

.doc-wrap {
	display: grid; grid-template-columns: 320px 1fr; gap: 2.6rem;
	align-items: start;
}
.doc-photo {
	position: relative; border-radius: var(--s-r);
	overflow: hidden; box-shadow: var(--s-sh-md);
	background: var(--s-line-2);
}
.doc-photo img { width: 100%; display: block; }
.doc-photo::after {
	content: ""; position: absolute; inset: auto 0 0 0; height: 45%;
	background: linear-gradient(to top, rgba(20,23,42,.5), transparent);
}
.doc-badge {
	position: absolute; z-index: 2; left: 1rem; right: 1rem; bottom: 1rem;
	background: rgba(255,255,255,.95);
	backdrop-filter: blur(8px);
	border-radius: var(--s-r-sm);
	padding: .7rem .9rem;
	display: flex; align-items: center; gap: .6rem;
	box-shadow: var(--s-sh);
}
.doc-badge .n { font-size: 1.05rem; font-weight: 700; color: var(--s-ink); line-height: 1; }
.doc-badge .l { font-size: .72rem; color: var(--s-muted); margin-top: .15rem; }

.doc-body h2 { font-size: clamp(1.5rem, 2.6vw, 2rem); margin: 0 0 .35rem; }
.doc-body .spec {
	font-size: .74rem; font-weight: 700; letter-spacing: .13em;
	text-transform: uppercase; color: var(--s-accent); margin-bottom: .9rem;
}
.doc-body p { color: var(--s-body); margin-bottom: 1rem; }

.doc-chips { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1.2rem; }
.doc-chips span {
	background: var(--s-line-2); border: 1px solid var(--s-line);
	color: var(--s-ink-2); border-radius: 999px;
	padding: .4rem .85rem; font-size: .82rem; font-weight: 550;
}

/* ---------- Services ------------------------------------------------------ */

.svc-grid {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(285px, 1fr));
	gap: 1.1rem;
}
.svc {
	background: var(--s-card);
	border: 1px solid var(--s-line);
	border-radius: var(--s-r);
	padding: 1.5rem 1.4rem;
	box-shadow: var(--s-sh);
	transition: transform .18s cubic-bezier(.2,.7,.3,1), box-shadow .18s ease, border-color .18s ease;
}
.svc:hover { transform: translateY(-4px); box-shadow: var(--s-sh-md); border-color: #d9deec; }
.svc .ic {
	width: 46px; height: 46px; border-radius: 13px;
	background: var(--s-accent-50); color: var(--s-accent);
	display: flex; align-items: center; justify-content: center;
	font-size: 19px; margin-bottom: 1rem;
}
.svc h3 { font-size: 1.01rem; margin: 0 0 .4rem; font-weight: 640; }
.svc p { font-size: .89rem; color: var(--s-muted); margin: 0; line-height: 1.55; }

/* ---------- Stats --------------------------------------------------------- */

.stat-band {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
	gap: 1.1rem;
}
.stat-band .b {
	background: var(--s-card); border: 1px solid var(--s-line);
	border-radius: var(--s-r); padding: 1.5rem 1.3rem; text-align: center;
	box-shadow: var(--s-sh);
}
.stat-band .n {
	font-size: 2rem; font-weight: 720; color: var(--s-brand);
	letter-spacing: -.03em; line-height: 1; font-variant-numeric: tabular-nums;
}
.stat-band .l {
	font-size: .76rem; font-weight: 650; letter-spacing: .09em;
	text-transform: uppercase; color: var(--s-muted); margin-top: .5rem;
}

/* ---------- Reviews ------------------------------------------------------- */

.rv-wrap { display: grid; grid-template-columns: 260px 1fr; gap: 2.2rem; align-items: start; }

.rv-score {
	background: linear-gradient(150deg, #4a4c93 0%, var(--s-brand) 100%);
	border-radius: var(--s-r); padding: 1.8rem 1.4rem; text-align: center;
	color: #fff; box-shadow: 0 8px 26px rgba(63,64,121,.28);
}
.rv-score .big { font-size: 3rem; font-weight: 730; line-height: 1; letter-spacing: -.04em; }
.rv-score .st { color: #ffc247; margin: .6rem 0 .35rem; font-size: 1rem; letter-spacing: .1em; }
.rv-score .sub { font-size: .76rem; color: rgba(255,255,255,.75); letter-spacing: .05em; text-transform: uppercase; font-weight: 600; }

.rv-bars { margin-top: 1.2rem; }
.rv-bar { display: flex; align-items: center; gap: .7rem; margin-bottom: .45rem; }
.rv-bar .lbl { font-size: .74rem; color: var(--s-muted); width: 3.6rem; flex: 0 0 3.6rem; font-weight: 600; }
.rv-bar .trk { flex: 1; height: 7px; background: var(--s-line); border-radius: 999px; overflow: hidden; }
.rv-bar .fil { height: 100%; background: var(--s-accent); border-radius: 999px; }

.rv-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 1rem; }
.rv-card {
	background: var(--s-card); border: 1px solid var(--s-line);
	border-radius: var(--s-r-sm); padding: 1.2rem 1.25rem;
	box-shadow: var(--s-sh);
	display: flex; flex-direction: column; gap: .7rem;
}
.rv-card .qt { font-size: .92rem; color: var(--s-ink-2); line-height: 1.6; flex: 1; }
.rv-card .who { display: flex; align-items: center; gap: .65rem; }
.rv-card .av {
	width: 36px; height: 36px; flex: 0 0 36px; border-radius: 50%;
	background: var(--s-brand); color: #fff;
	display: flex; align-items: center; justify-content: center;
	font-size: .82rem; font-weight: 700;
}
.rv-card .nm { font-size: .86rem; font-weight: 640; color: var(--s-ink); }
.rv-card .dt { font-size: .74rem; color: var(--s-faint); }
.rv-card .st { color: #ffc247; font-size: .82rem; letter-spacing: .08em; }

/* ---------- Location ------------------------------------------------------ */

.loc-wrap {
	display: grid; grid-template-columns: 340px 1fr; gap: 0;
	border: 1px solid var(--s-line); border-radius: var(--s-r);
	overflow: hidden; box-shadow: var(--s-sh); background: #fff;
}
.loc-info { padding: 2rem 1.8rem; }
.loc-info h3 { font-size: 1.15rem; margin: 0 0 1.2rem; }
.loc-row { display: flex; gap: .8rem; margin-bottom: 1.1rem; }
.loc-row .ic {
	width: 36px; height: 36px; flex: 0 0 36px; border-radius: 10px;
	background: var(--s-accent-50); color: var(--s-accent);
	display: flex; align-items: center; justify-content: center; font-size: 14px;
}
.loc-row .k { font-size: .7rem; font-weight: 650; letter-spacing: .09em; text-transform: uppercase; color: var(--s-muted); }
.loc-row .v { font-size: .9rem; color: var(--s-ink-2); margin-top: .15rem; line-height: 1.5; }
.loc-row .v a { color: var(--s-ink-2); }
.loc-row .v a:hover { color: var(--s-brand); }
.loc-map { min-height: 340px; }
.loc-map iframe { width: 100%; height: 100%; min-height: 340px; border: 0; display: block; }

/* ---------- Booking widget (structure nahi chhui, sirf skin) -------------- */

.box_general_2 {
	background: #fff;
	border: 1px solid var(--s-line);
	border-radius: var(--s-r);
	box-shadow: var(--s-sh);
	padding: 1.6rem;
}
.main_title_4 h3 {
	font-size: 1.1rem !important; font-weight: 640;
	display: flex; align-items: center; gap: .6rem;
}
.main_title_4 h3 i { color: var(--s-accent); }
.main_title h2 { font-size: clamp(1.4rem, 2.4vw, 1.9rem); }

.box_feat {
	background: #fff; border: 1px solid var(--s-line);
	border-radius: var(--s-r); padding: 1.6rem 1.3rem;
	box-shadow: var(--s-sh); text-align: center;
	transition: transform .18s ease, box-shadow .18s ease;
}
.box_feat:hover { transform: translateY(-3px); box-shadow: var(--s-sh-md); }
.box_feat h3 { font-size: 1rem; margin-top: .8rem; }

/* ---------- Buttons ------------------------------------------------------- */

.btn_1, a.btn_1 {
	background: var(--s-accent) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 999px !important;
	padding: .78rem 1.6rem !important;
	font-weight: 620 !important;
	font-size: .93rem !important;
	box-shadow: 0 3px 14px rgba(21,163,140,.32);
	transition: all .16s ease !important;
	line-height: 1.4 !important;
}
.btn_1:hover, a.btn_1:hover {
	background: var(--s-accent-700) !important; color: #fff !important;
	transform: translateY(-2px);
	box-shadow: 0 7px 22px rgba(21,163,140,.42);
}
.btn_1.gray, a.btn_1.gray {
	background: var(--s-line-2) !important; color: var(--s-ink-2) !important;
	box-shadow: none;
}

/* ---------- Forms --------------------------------------------------------- */

.form-control {
	border: 1px solid #dfe3ee; border-radius: var(--s-r-xs);
	padding: .68rem .85rem; font-size: .92rem; color: var(--s-ink);
	transition: border-color .15s ease, box-shadow .15s ease;
}
.form-control:focus {
	border-color: var(--s-brand-300);
	box-shadow: 0 0 0 3px rgba(63,64,121,.13);
	outline: 0;
}
label { font-weight: 600; color: var(--s-ink-2); font-size: .87rem; }

/* ---------- Footer -------------------------------------------------------- */

footer {
	background: #1b1d38 !important;
	color: rgba(255,255,255,.68) !important;
	padding-top: 3.2rem !important;
	margin-top: 0 !important;
}
footer h5 {
	color: #fff !important; font-size: .76rem !important; font-weight: 700 !important;
	letter-spacing: .13em; text-transform: uppercase; margin-bottom: 1.1rem !important;
}
footer a { color: rgba(255,255,255,.68) !important; transition: color .15s ease; }
footer a:hover { color: #fff !important; }
footer ul { list-style: none; padding: 0; }
footer ul.links li, footer ul.contacts li { margin-bottom: .55rem; font-size: .9rem; }
footer .follow_us ul { display: flex; gap: .5rem; margin-top: .3rem; }
footer .follow_us ul li a {
	width: 36px; height: 36px; border-radius: 50%;
	background: rgba(255,255,255,.09);
	display: flex; align-items: center; justify-content: center;
	transition: background .15s ease;
}
footer .follow_us ul li a:hover { background: var(--s-accent); }
#copy, footer .copy {
	border-top: 1px solid rgba(255,255,255,.10);
	margin-top: 2.4rem; padding: 1.3rem 0;
	font-size: .83rem; color: rgba(255,255,255,.5);
}
.foot-brand {
	display: inline-flex; align-items: center; gap: .7rem;
	text-decoration: none; margin-bottom: 1rem;
}
.foot-brand .mark {
	width: 42px; height: 42px; flex: 0 0 42px; border-radius: 12px;
	background: linear-gradient(140deg, #5254a5 0%, var(--s-brand) 100%);
	color: #fff; display: flex; align-items: center; justify-content: center; font-size: 18px;
}
.foot-brand .nm { color: #fff !important; font-size: 1.1rem; font-weight: 700; letter-spacing: -.02em; }
.foot-brand .sb { display: block; font-size: .67rem; letter-spacing: .13em; text-transform: uppercase; color: var(--s-accent); font-weight: 650; }

/* ---------- Responsive ---------------------------------------------------- */

@media (max-width: 991px) {
	.doc-wrap { grid-template-columns: 1fr; gap: 1.8rem; }
	.doc-photo { max-width: 300px; }
	.rv-wrap   { grid-template-columns: 1fr; gap: 1.5rem; }
	.loc-wrap  { grid-template-columns: 1fr; }
	.ent-hero  { min-height: 440px; }
	.ent-sec   { padding: 3rem 0; }
}
@media (max-width: 575px) {
	.ent-hero__in { padding: 3rem 0; }
	.ent-cta .ent-btn { flex: 1 1 100%; justify-content: center; }
	ul#top_access a { padding: .45rem .55rem; font-size: .84rem !important; }
	.site-brand .sb { display: none; }
}

/* ==========================================================================
   Reviews -- markup nahi chhua (usme edit handlers aur barrating widget hai),
   sirf skin badli hai.
   ========================================================================== */

#review_summary {
	background: linear-gradient(150deg, #4a4c93 0%, var(--s-brand) 100%) !important;
	border-radius: var(--s-r) !important;
	padding: 1.9rem 1.2rem !important;
	text-align: center;
	color: #fff !important;
	box-shadow: 0 8px 26px rgba(63,64,121,.28);
}
#review_summary strong {
	font-size: 2.9rem !important; font-weight: 730 !important;
	color: #fff !important; line-height: 1 !important;
	letter-spacing: -.04em; display: block;
	font-variant-numeric: tabular-nums;
}
#review_summary .rating { margin: .55rem 0 .3rem; }
#review_summary .rating i { color: #ffc247 !important; font-size: .95rem; }
#review_summary small {
	color: rgba(255,255,255,.75) !important;
	font-size: .72rem !important; letter-spacing: .07em;
	text-transform: uppercase; font-weight: 600;
}

.reviews-container .progress {
	height: 8px !important; border-radius: 999px !important;
	background: var(--s-line) !important; box-shadow: none !important;
	overflow: hidden;
}
.reviews-container .progress-bar {
	background: var(--s-accent) !important; border-radius: 999px !important;
	box-shadow: none !important;
}

.review-box {
	background: var(--s-card);
	border: 1px solid var(--s-line);
	border-radius: var(--s-r-sm);
	padding: 1.15rem 1.25rem !important;
	margin-bottom: .85rem !important;
	box-shadow: var(--s-sh);
	display: flex; gap: 1rem; align-items: flex-start;
	position: relative;
	min-height: 0 !important;
}

/* generic placeholder image ki jagah ek saaf avatar */
.review-box .rev-thumb {
	position: static !important;
	width: 42px !important; height: 42px !important;
	flex: 0 0 42px; margin: 0 !important;
	border-radius: 50% !important;
	background: var(--s-brand);
	display: flex; align-items: center; justify-content: center;
	overflow: hidden;
}
.review-box .rev-thumb img { display: none !important; }
.review-box .rev-thumb::before {
	content: "\f007";                 /* FontAwesome user */
	font-family: FontAwesome;
	color: #fff; font-size: 16px; line-height: 1;
}

.review-box .rev-content { margin: 0 !important; flex: 1; min-width: 0; }
.review-box .rev-info {
	font-size: .84rem !important; color: var(--s-ink) !important;
	font-weight: 620; font-style: normal !important; margin: .3rem 0 0 !important;
}
.review-box .rev-text { margin-top: .35rem; }
.review-box .rev-text p { margin: 0 !important; color: var(--s-body); font-size: .9rem; line-height: 1.6; }
/* jin reviews me text hai hi nahi, unka khaali <p> jagah na ghere */
.review-box .rev-text p:empty { display: none; }
.review-box .rating i, .review-box .br-widget a { color: #ffc247 !important; }
.review-box .fedit { color: var(--s-muted); font-size: .85rem; }
.review-box .fedit:hover { color: var(--s-brand); }

/* review likhne wala box (logged-in patient) */
.review-box.prbox { background: var(--s-accent-50); border-color: #cfeae3; }
.review-box.prbox textarea.form-control { min-height: 72px; }

/* ---------- Gallery thumbs ------------------------------------------------ */

.dc_p_img { text-align: center; }
.dc_p_img > img:first-child {
	border-radius: var(--s-r-sm);
	box-shadow: var(--s-sh);
}
.dc_p_img .myImg, .dc_p_img img.myImg {
	border-radius: var(--s-r-xs) !important;
	object-fit: cover;
	box-shadow: var(--s-sh);
	transition: transform .16s ease, box-shadow .16s ease;
	margin: 0 3px 6px 0 !important;
	cursor: pointer;
}
.dc_p_img .myImg:hover { transform: translateY(-2px) scale(1.03); box-shadow: var(--s-sh-md); opacity: 1 !important; }
.dc_p_img hr { border-color: var(--s-line); margin: 1rem 0; }

/* ---------- Doctor card (homepage) --------------------------------------- */

.strip_list.dc_p {
	background: var(--s-card);
	border: 1px solid var(--s-line);
	border-radius: var(--s-r);
	box-shadow: var(--s-sh);
	padding: 1.8rem;
	margin-bottom: 1.6rem !important;
}
.dc_pinfo > small {
	display: block;
	font-size: .73rem !important; font-weight: 700;
	letter-spacing: .13em; text-transform: uppercase;
	color: var(--s-accent) !important; margin-bottom: .3rem;
}
.dc_pinfo > h3 { font-size: 1.55rem; margin: 0 0 .5rem; }
.dc_pinfo .rating i.voted, .dc_pinfo .rating i { color: #ffc247 !important; }
.dc_pinfo > p { color: var(--s-body); line-height: 1.7; margin-bottom: 1.5rem; }

.svc-block { border-top: 1px solid var(--s-line); padding-top: 1.6rem; margin-top: .5rem; }
.svc-title {
	font-size: .76rem !important; font-weight: 700 !important;
	letter-spacing: .13em; text-transform: uppercase;
	color: var(--s-muted) !important; margin-bottom: 1.1rem !important;
}
.svc-block .svc { padding: 1.15rem 1.1rem; }
.svc-block .svc .ic { width: 40px; height: 40px; border-radius: 11px; font-size: 16px; margin-bottom: .8rem; }
.svc-block .svc h3 { font-size: .92rem; margin: 0; font-weight: 600; line-height: 1.45; }

/* ---------- Booking CTA button (hero ke neeche) -------------------------- */

.bkap_btn_cont { display: flex; justify-content: center; margin-bottom: 1.5rem; }

/* ---------- Clinic location ---------------------------------------------- */

.box_general_2 h4 { font-size: 1.05rem !important; font-weight: 640 !important; margin-bottom: .9rem !important; }

/* ---------- Layout fixes -------------------------------------------------- */

/* review card ke andar template ka doosra border tha -- ab card khud .review-box hai */
.reviews-container .rev-content {
	border: 0 !important;
	padding: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
}
.reviews-container .review-box {
	padding-left: 1.25rem !important;
	min-height: 0 !important;
}
.reviews-container .rev-content::before,
.reviews-container .rev-content::after { display: none !important; }

/* photo column chhota hai aur content lamba -- photo saath-saath chale
   taaki neeche lambi khaali jagah na bache */
@media (min-width: 992px) {
	.dc_p_img {
		position: sticky;
		top: 92px;
		align-self: flex-start;
	}
}
