/* Doctor page design. The IDs outrank the theme so its layout rules do not leak in. */
body.mdp-on { --mdp-ink: #14233f; --mdp-muted: #5b6b84; --mdp-line: #e3e9f2; --mdp-tint: #eaf2fd; background: var(--mdp-bg); }

body.mdp-on #c27-single-listing { background: var(--mdp-bg); color: var(--mdp-ink); font-family: "Cairo", "Segoe UI", Tahoma, sans-serif; }
body.mdp-on #c27-single-listing h1, body.mdp-on #c27-single-listing h2, body.mdp-on #c27-single-listing h3, body.mdp-on #c27-single-listing h5, body.mdp-on #c27-single-listing p, body.mdp-on #c27-single-listing a, body.mdp-on #c27-single-listing li, body.mdp-on #c27-single-listing button, body.mdp-on #c27-single-listing input, body.mdp-on #c27-single-listing textarea, body.mdp-on #c27-single-listing label { font-family: "Cairo", "Segoe UI", Tahoma, sans-serif; }
body.mdp-on #c27-single-listing .container { width: 100%; max-width: 1240px; margin-right: auto; margin-left: auto; padding-right: 20px; padding-left: 20px; }
body.mdp-on #c27-single-listing .container::before, body.mdp-on #c27-single-listing .container::after, body.mdp-on #c27-single-listing .row::before, body.mdp-on #c27-single-listing .row::after { content: none; }

/* ------------------------------------------------------------------ cover */
body.mdp-on #c27-single-listing .featured-section.profile-cover { position: relative; display: block; height: auto; min-height: var(--mdp-cover); margin: 0; padding: 0 !important; overflow: visible; background: transparent; }
body.mdp-on #c27-single-listing .featured-section.profile-cover > img { position: absolute; top: 0; right: 0; bottom: auto; left: 0; width: 100% !important; height: var(--mdp-cover) !important; max-height: none; aspect-ratio: auto !important; object-fit: cover; }
body.mdp-on #c27-single-listing .featured-section.profile-cover > .overlay { position: absolute; top: 0; right: 0; bottom: auto; left: 0; z-index: 1; height: var(--mdp-cover);  background: linear-gradient(255deg, var(--mdp-deep) 8%, color-mix(in srgb, var(--mdp-deep) 62%, transparent) 62%, color-mix(in srgb, var(--mdp-deep) 30%, transparent)) !important; opacity: 1 !important; }
body.mdp-on.mdp-pulse #c27-single-listing .featured-section.profile-cover::after {
	content: "";
	position: absolute;
	right: 0;
	left: 0;
	top: calc(var(--mdp-cover) - 250px);
	z-index: 1;
	height: 90px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 90' preserveAspectRatio='none'%3E%3Cpath d='M0 60H210l14-8 14 8h14l10 12 20-66 22 76 14-22h20l18-12 18 12h226' fill='none' stroke='white' stroke-opacity='.3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
	pointer-events: none;
}

/* ----------------------------------------------------------- identity card */
body.mdp-on #c27-single-listing .main-info-desktop { position: relative; z-index: 3; display: block !important; padding: calc(var(--mdp-cover) - 150px) 0 0; }
body.mdp-on #c27-single-listing .main-info-mobile { position: relative; z-index: 3; display: block !important; }
body.mdp-on #c27-single-listing .listing-main-info {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px 28px;
	width: calc(100% - 40px);
	max-width: 1200px;
	margin: 0 auto;
	padding: 24px 28px;
	border: 1px solid var(--mdp-line);
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 18px 44px rgba(10, 42, 92, .14);
}
body.mdp-on #c27-single-listing .listing-main-info > .col-md-6 { float: none; width: auto; min-width: 0; padding: 0; }

body.mdp-on #c27-single-listing .profile-name { position: static; display: grid; grid-template-columns: 124px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 22px; align-items: center; margin: 0; padding: 0; text-align: right; }
body.mdp-on #c27-single-listing .profile-name > link { display: none; }
body.mdp-on #c27-single-listing .profile-name .profile-avatar {
	position: relative;
	top: auto;
	right: auto;
	left: auto;
	grid-column: 1;
	grid-row: 1 / span 2;
	display: block;
	width: 124px;
	height: 124px;
	margin: -56px 0 0;
	border: 5px solid #fff;
	border-radius: 50%;
	background-color: var(--mdp-tint);
	background-position: center;
	background-size: cover;
	box-shadow: 0 8px 22px rgba(10, 42, 92, .22);
}
body.mdp-on #c27-single-listing .profile-name h1.case27-primary-text { grid-column: 2; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 8px; padding: 0; color: var(--mdp-ink); font-size: clamp(23px, 2.5vw, 31px); font-weight: 800; line-height: 1.35; text-shadow: none; }
body.mdp-on #c27-single-listing .profile-name .pa-below-title { grid-column: 2; margin: 0; padding: 0; }
body.mdp-on #c27-single-listing .profile-tagline { margin: 0; padding: 0; color: var(--mdp-muted); font-size: 15px; font-weight: 600; line-height: 1.7; text-shadow: none; }
body.mdp-on #c27-single-listing .profile-tagline.mdp-pills { display: flex; flex-wrap: wrap; gap: 6px; }
.mdp-pill { padding: 3px 12px; border-radius: 999px; background: var(--mdp-tint); color: var(--mdp-primary); font-size: 13.5px; font-weight: 700; line-height: 1.7; }

body.mdp-on #c27-single-listing .listing-main-buttons { position: static; display: block; margin: 0; padding: 0; }
body.mdp-on #c27-single-listing .listing-main-buttons ul { display: flex; align-items: stretch; gap: 10px; margin: 0; padding: 0; }
body.mdp-on #c27-single-listing .listing-main-buttons li { float: none; width: auto; margin: 0; padding: 0; list-style: none; }
body.mdp-on #c27-single-listing .listing-main-buttons li a { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-width: 150px; height: 54px; padding: 0 24px; border: 0; border-radius: 14px; background: var(--mdp-primary); box-shadow: none; color: #fff; font-size: 16.5px; font-weight: 800; line-height: 1.4; text-decoration: none; transition: transform .15s ease; }
body.mdp-on #c27-single-listing .listing-main-buttons li a:hover { color: #fff; transform: translateY(-2px); }
body.mdp-on #c27-single-listing .listing-main-buttons li a span { color: inherit; font-size: inherit; font-weight: inherit; }
body.mdp-on #c27-single-listing .listing-main-buttons li a i { position: static; margin: 0; padding: 0; background: none; color: inherit; font-size: 19px; line-height: 1; }
body.mdp-on #c27-single-listing .listing-main-buttons li a[href*="wa.me"], body.mdp-on #c27-single-listing .listing-main-buttons li a[href*="whatsapp"] { background: var(--mdp-wa); }
body.mdp-on #c27-single-listing .listing-main-buttons li a:focus-visible { outline: 3px solid var(--mdp-ink); outline-offset: 2px; }

.mdp-facts { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 10px 34px; padding-top: 16px; border-top: 1px solid var(--mdp-line); }
.mdp-fact { display: flex; align-items: center; gap: 10px; color: var(--mdp-ink); text-decoration: none; }
a.mdp-fact:hover .mdp-fact-text strong { color: var(--mdp-primary); }
.mdp-fact-icon { display: grid; flex: none; place-items: center; width: 38px; height: 38px; border-radius: 11px; background: var(--mdp-tint); color: var(--mdp-primary); }
.mdp-fact-icon svg { width: 18px; height: 18px; }
.mdp-fact-text { display: flex; flex-direction: column; line-height: 1.45; }
.mdp-fact-text small { color: var(--mdp-muted); font-size: 12.5px; font-weight: 600; }
.mdp-fact-text strong { color: var(--mdp-ink); font-size: 14.5px; font-weight: 700; }
.mdp-fact.is-open .mdp-fact-icon { background: #e4f7ec; color: #067647; }
.mdp-fact.is-open small { color: #067647; font-weight: 700; }
.mdp-fact.is-closed .mdp-fact-icon { background: #fdeceb; color: #b42318; }
.mdp-fact.is-closed small { color: #b42318; font-weight: 700; }

/* ---------------------------------------------------- tabs & quick actions */
body.mdp-on #c27-single-listing .main-info-mobile .listing-main-info { margin-top: -66px; }
body.mdp-on #c27-single-listing .profile-header { position: relative; z-index: 1; margin: 0; padding: 22px 0 0; border: 0; background: transparent; box-shadow: none; }
body.mdp-on #c27-single-listing .profile-menu { margin: 0; padding: 0; border-bottom: 1px solid var(--mdp-line); background: transparent; }
body.mdp-on #c27-single-listing .profile-menu li a { display: inline-flex; align-items: center; gap: 8px; padding: 12px 22px; border: 0; color: var(--mdp-muted); font-size: 16px; font-weight: 700; text-decoration: none; }
body.mdp-on #c27-single-listing .profile-menu li.active a, body.mdp-on #c27-single-listing .profile-menu li a:hover { color: var(--mdp-primary); box-shadow: inset 0 -3px 0 var(--mdp-primary); }
body.mdp-on #c27-single-listing .profile-menu .items-counter { min-width: 22px; padding: 0 6px; border-radius: 999px; background: var(--mdp-tint); color: var(--mdp-primary); font-size: 12.5px; line-height: 22px; text-align: center; }

body.mdp-on #c27-single-listing .qla-container { margin-top: 14px; margin-bottom: 18px; background: transparent; box-shadow: none; }
body.mdp-on #c27-single-listing .quick-listing-actions { margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
body.mdp-on #c27-single-listing .quick-listing-actions ul { justify-content: flex-start; }
body.mdp-on #c27-single-listing .quick-listing-actions li { margin: 0 0 0 8px; padding: 0; border: 0; }
body.mdp-on #c27-single-listing .quick-listing-actions li a { display: inline-flex; align-items: center; gap: 7px; height: 38px; padding: 0 14px; border: 1px solid var(--mdp-line); border-radius: 999px; background: #fff; color: var(--mdp-muted); font-size: 13.5px; font-weight: 600; text-decoration: none; }
body.mdp-on #c27-single-listing .quick-listing-actions li a:hover { border-color: var(--mdp-primary); color: var(--mdp-primary); }
body.mdp-on #c27-single-listing .quick-listing-actions li a i { position: static; margin: 0; color: inherit; font-size: 16px; }
body.mdp-hide-report #c27-single-listing .quick-listing-actions li:has(.error_outline) { display: none; }

/* ------------------------------------------------------------- body layout */
body.mdp-on #c27-single-listing .tab-content.listing-tabs { background: var(--mdp-bg); }
body.mdp-on #c27-single-listing .profile-body { padding: 0 0 36px; background: transparent; }
body.mdp-on #c27-single-listing .tab-template-two-columns > .row { display: block; margin: 0; }
body.mdp-on #c27-single-listing .tab-template-two-columns > .row > .col-md-6 { float: none; width: 100%; padding: 0; }
body.mdp-on #c27-single-listing .cts-column-wrapper { display: flex; flex-direction: column; margin: 0; }
body.mdp-on #c27-single-listing .cts-column-wrapper > [class*="col-md-"] { float: none; width: 100%; margin: 0 0 18px; padding: 0; }
body.mdp-on #c27-single-listing #vezeeta-smart-booking { order: -2; margin: 0 0 18px !important; }
body.mdp-on #c27-single-listing .block-type-qr_code { order: -1; margin: 0 0 18px !important; }

@media (min-width: 992px) {
	body.mdp-on #c27-single-listing .tab-template-two-columns > .row { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(340px, 1fr); align-items: start; gap: 22px; }
	body.mdp-on #c27-single-listing .cts-side-column { position: relative; }
}

/* ------------------------------------------------------------------- cards */
body.mdp-on #c27-single-listing .element { margin: 0; padding: 0; overflow: hidden; border: 1px solid var(--mdp-line) !important; border-radius: 18px !important; background: #fff; box-shadow: none !important; }
body.mdp-on #c27-single-listing .pf-head { display: flex; align-items: center; justify-content: space-between; margin: 0; padding: 16px 22px !important; border-bottom: 1px solid var(--mdp-line); background: #fff; }
body.mdp-on #c27-single-listing .title-style-1 { display: flex; align-items: center; gap: 11px; margin: 0; padding: 0; border: 0; }
body.mdp-on #c27-single-listing .title-style-1::before, body.mdp-on #c27-single-listing .title-style-1::after { content: none; }
body.mdp-on #c27-single-listing .title-style-1 > i { position: static; display: grid; place-items: center; width: 36px; height: 36px; margin: 0; border-radius: 10px; background: var(--mdp-tint); color: var(--mdp-primary); font-size: 18px; line-height: 1; }
body.mdp-on #c27-single-listing .title-style-1 h5 { margin: 0; color: var(--mdp-ink); font-size: 17px; font-weight: 800; line-height: 1.5; }
body.mdp-on #c27-single-listing .pf-body { padding: 18px 22px 20px; color: #33415c; font-size: 15.5px; line-height: 1.95; }
body.mdp-on #c27-single-listing .pf-body p { margin: 0 0 12px; color: inherit; font-size: inherit; line-height: inherit; }
body.mdp-on #c27-single-listing .pf-body p:last-child { margin-bottom: 0; }
body.mdp-on #c27-single-listing .pf-body strong { color: var(--mdp-ink); font-weight: 700; }

body.mdp-on #c27-single-listing .block-field-job_description .pf-body ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 8px; margin: 4px 0 14px; padding: 0; list-style: none; }
body.mdp-on #c27-single-listing .block-field-job_description .pf-body ul li { position: relative; margin: 0; padding: 9px 40px 9px 12px; border-radius: 12px; background: var(--mdp-bg); color: var(--mdp-ink); font-size: 14.5px; font-weight: 600; line-height: 1.6; list-style: none; }
body.mdp-on #c27-single-listing .block-field-job_description .pf-body ul li::before { content: ""; position: absolute; top: 12px; right: 12px; width: 18px; height: 18px; border-radius: 50%; background: var(--mdp-primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E") center / 11px no-repeat; }

body.mdp-on #c27-single-listing .block-field-clinic-address .pf-body strong, body.mdp-on #c27-single-listing .block-field-clinic-numbers .pf-body strong { font-size: 16px; }

body.mdp-on #c27-single-listing .details-list, body.mdp-on #c27-single-listing .listing-details ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
body.mdp-on #c27-single-listing .details-list li, body.mdp-on #c27-single-listing .listing-details li { float: none; width: auto; margin: 0; padding: 0; border: 0; list-style: none; }
body.mdp-on #c27-single-listing .details-list li a, body.mdp-on #c27-single-listing .listing-details li a { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 5px 14px; border: 1px solid var(--mdp-line); border-radius: 999px; background: #fff; color: var(--mdp-ink); font-size: 14px; font-weight: 600; line-height: 1.5; text-decoration: none; }
body.mdp-on #c27-single-listing .details-list li a:hover, body.mdp-on #c27-single-listing .listing-details li a:hover { border-color: var(--mdp-primary); color: var(--mdp-primary); }
body.mdp-on #c27-single-listing .details-list li a i { position: static; margin: 0; color: var(--mdp-primary); font-size: 15px; }
body.mdp-on #c27-single-listing .listing-details .cat-icon { display: grid; place-items: center; width: 28px; height: 28px; margin: 0; border-radius: 50%; overflow: hidden; }
body.mdp-on #c27-single-listing .listing-details .term-icon img { display: block; width: 22px; height: 22px; object-fit: contain; }
body.mdp-on #c27-single-listing .listing-details .category-name { color: inherit; font-size: inherit; }

/* ---------------------------------------------------------------- reviews */
body.mdp-on #c27-single-listing #listing_tab_reviews .row { display: block; margin: 0; }
body.mdp-on #c27-single-listing #listing_tab_reviews .row > [class*="col-md-"] { float: none; width: 100%; padding: 0; }
body.mdp-on #c27-single-listing .no-results-wrapper { margin: 0 0 18px; padding: 44px 20px; border: 1px dashed #c9d5e6; border-radius: 18px; background: #fff; color: var(--mdp-muted); text-align: center; }
body.mdp-on #c27-single-listing .no-results-wrapper .no_job_listings_found { color: var(--mdp-muted); font-size: 16px; font-weight: 600; list-style: none; }
body.mdp-on #c27-single-listing .no-results-wrapper .no-results-icon { display: block; margin: 0 auto 8px; color: #b9c6d9; font-size: 40px; }
body.mdp-on #c27-single-listing .comment-respond .comment-reply-title { margin: 0 0 12px; color: var(--mdp-ink); font-size: 16px; font-weight: 800; }
body.mdp-on #c27-single-listing .comment-form p.logged-in-as, body.mdp-on #c27-single-listing .comment-form p.comment-notes { margin: 0 0 14px; color: var(--mdp-muted); font-size: 13.5px; line-height: 1.8; }
body.mdp-on #c27-single-listing .comment-form a { color: var(--mdp-primary); }
body.mdp-on #c27-single-listing .form-group-review-ratings { display: grid; gap: 8px; margin: 0 0 14px; }
body.mdp-on #c27-single-listing .rating-category-field { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 12px; border-radius: 12px; background: var(--mdp-bg); }
body.mdp-on #c27-single-listing .rating-category-label { color: var(--mdp-ink); font-size: 14px; font-weight: 700; }
body.mdp-on #c27-single-listing .rating-category-field .form-group { margin: 0; }
body.mdp-on #c27-single-listing .comment-form label { color: var(--mdp-ink); font-size: 14px; font-weight: 700; }
body.mdp-on #c27-single-listing .comment-form input[type="text"], body.mdp-on #c27-single-listing .comment-form input[type="email"], body.mdp-on #c27-single-listing .comment-form input[type="url"], body.mdp-on #c27-single-listing .comment-form textarea { width: 100%; padding: 11px 13px; border: 1px solid #d3dceb; border-radius: 12px; background: #fff; box-shadow: none; color: var(--mdp-ink); font-size: 16px; line-height: 1.7; outline: 0; }
body.mdp-on #c27-single-listing .comment-form input:focus, body.mdp-on #c27-single-listing .comment-form textarea:focus { border-color: var(--mdp-primary); box-shadow: 0 0 0 3px var(--mdp-tint); }
body.mdp-on #c27-single-listing .comment-form .form-group { margin-bottom: 14px; }
body.mdp-on #c27-single-listing .comment-form button.buttons { display: flex; align-items: center; justify-content: center; width: 100%; height: 52px; border: 0; border-radius: 14px; background: var(--mdp-primary); color: #fff; font-size: 16px; font-weight: 800; }
body.mdp-on #c27-single-listing .review-gallery-add { display: inline-grid; place-items: center; width: 62px; height: 62px; border: 1px dashed #c0cde0; border-radius: 12px; background: var(--mdp-bg); color: var(--mdp-primary); cursor: pointer; }

@media (min-width: 992px) {
	body.mdp-on #c27-single-listing #listing_tab_reviews .container > .row { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(360px, 1fr); align-items: start; gap: 22px; }
}

/* -------------------------------------------------------------------- FAQ */
body.mdp-on .vezeeta-auto-faq-wrapper { width: calc(100% - 40px); max-width: 1200px; margin: 6px auto 44px; padding: 26px; border: 1px solid var(--mdp-line); border-radius: 18px; box-shadow: none; }
body.mdp-on .vezeeta-auto-faq-header { margin: 0 0 16px; padding: 0; border-radius: 0; background: none; color: var(--mdp-ink); font-size: 22px; letter-spacing: 0; text-align: right; }
body.mdp-on .vezeeta-faq-accordion { gap: 8px; }
body.mdp-on .vezeeta-faq-item { border: 1px solid var(--mdp-line); border-radius: 13px; background: #fff; }
body.mdp-on .vezeeta-faq-item.active { border-color: var(--mdp-primary); }
body.mdp-on .vezeeta-faq-question { min-height: 54px; color: var(--mdp-ink); font-size: 15.5px; }
body.mdp-on .vezeeta-faq-icon { background: var(--mdp-tint); color: var(--mdp-primary); }
body.mdp-on .vezeeta-faq-answer { color: #33415c; font-size: 15px; line-height: 1.9; }

/* ---------------------------------------------------------- mobile booking */
.mdp-bar { position: fixed; right: 0; bottom: var(--mgb-offset, 0px); left: 0; z-index: 9980; display: none; gap: 8px; padding: 9px 12px; border-top: 1px solid var(--mdp-line); background: #fff; box-shadow: 0 -8px 22px rgba(10, 42, 92, .1); font-family: "Cairo", "Segoe UI", Tahoma, sans-serif; transform: translateY(calc(100% + var(--mgb-offset, 0px))); transition: transform .22s ease; }
.mdp-bar.is-up { transform: none; }
.mdp-bar a { display: flex; flex: 1 1 0; align-items: center; justify-content: center; gap: 8px; height: 48px; border-radius: 12px; color: #fff; font-size: 15.5px; font-weight: 800; line-height: 1.4; text-decoration: none; }
.mdp-bar a:hover, .mdp-bar a:focus { color: #fff; }
.mdp-bar svg { width: 18px; height: 18px; }
.mdp-bar .mdp-bar-book { flex-grow: 2; background: var(--mdp-primary); }
.mdp-bar .mdp-bar-wa { background: var(--mdp-wa); }

@media (max-width: 991px) {
	.mdp-bar { display: flex; }
	body.mdp-bar-up .mgw { transform: translateY(-68px); transition: transform .22s ease; }
	body.mdp-on #c27-single-listing .listing-main-info { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 767px) {
	body.mdp-on { --mdp-cover: 170px; }
	body.mdp-on #c27-single-listing .featured-section.profile-cover { min-height: 170px; }
	body.mdp-on #c27-single-listing .main-info-desktop { padding: 104px 0 0; }
	body.mdp-on #c27-single-listing .listing-main-info { width: calc(100% - 24px); margin: 0 auto; padding: 18px 16px; text-align: center; }
	body.mdp-on.mdp-pulse #c27-single-listing .featured-section.profile-cover::after { top: 18px; height: 60px; }

	body.mdp-on #c27-single-listing .profile-name { display: block; text-align: center; }
	body.mdp-on #c27-single-listing .profile-name .profile-avatar { width: 108px; height: 108px; margin: -72px auto 12px; }
	body.mdp-on #c27-single-listing .profile-name h1.case27-primary-text { justify-content: center; font-size: 23px; }
	body.mdp-on #c27-single-listing .profile-tagline.mdp-pills { justify-content: center; }
	.mdp-pill { font-size: 13px; }

	body.mdp-on #c27-single-listing .listing-main-buttons li { flex: 1 1 0; min-width: 0; }
	body.mdp-on #c27-single-listing .listing-main-buttons li a { width: 100%; min-width: 0; height: 52px; padding: 0 10px; font-size: 16px; }

	.mdp-facts { justify-content: space-between; gap: 12px; text-align: right; }
	.mdp-fact { flex: 1 1 42%; min-width: 0; }

	body.mdp-on #c27-single-listing .profile-header { padding-top: 14px; }
	body.mdp-on #c27-single-listing .container { padding-right: 12px; padding-left: 12px; }
	body.mdp-on #c27-single-listing .profile-menu li a { padding: 11px 16px; }
	body.mdp-on #c27-single-listing .pf-head { padding: 13px 16px !important; }
	body.mdp-on #c27-single-listing .pf-body { padding: 15px 16px 17px; font-size: 15px; }
	body.mdp-on #c27-single-listing .block-field-job_description .pf-body ul { grid-template-columns: minmax(0, 1fr); }

	body.mdp-on .vezeeta-auto-faq-wrapper { width: calc(100% - 24px); padding: 18px 14px; }
}

/* The site's Custom CSS uses !important on these, so the new design has to as well. */
body.mdp-on .single-job-listing { background-color: var(--mdp-bg) !important; }
body.mdp-on #c27-single-listing .featured-section.profile-cover { border-radius: 0; box-shadow: none; }
body.mdp-on #c27-single-listing .profile-name .profile-avatar { border: 5px solid #fff !important; box-shadow: 0 8px 22px rgba(10, 42, 92, .22) !important; }
body.mdp-on #c27-single-listing .listing-main-buttons .lmb-calltoaction a { padding: 0 24px !important; border-radius: 14px !important; background: var(--mdp-primary) !important; box-shadow: none !important; color: #fff !important; font-weight: 800 !important; }
body.mdp-on #c27-single-listing .listing-main-buttons .lmb-calltoaction a[href*="wa.me"], body.mdp-on #c27-single-listing .listing-main-buttons .lmb-calltoaction a[href*="whatsapp"] { background: var(--mdp-wa) !important; }

body.mdp-on #c27-single-listing .profile-menu { border-radius: 0; box-shadow: none; }
body.mdp-on #c27-single-listing .profile-menu { border-width: 0 0 1px; border-color: var(--mdp-line); margin-top: 0; padding: 0; }
body.mdp-on #c27-single-listing .profile-menu ul, body.mdp-on #c27-single-listing .quick-listing-actions ul { display: flex; flex-wrap: wrap; width: 100%; margin: 0; padding: 0; overflow: visible; transform: none; }
body.mdp-on #c27-single-listing .profile-menu ul > li, body.mdp-on #c27-single-listing .quick-listing-actions ul > li { float: none; width: auto; list-style: none; }
body.mdp-on #c27-single-listing .profile-menu .cts-prev, body.mdp-on #c27-single-listing .profile-menu .cts-next, body.mdp-on #c27-single-listing .quick-listing-actions .cts-prev, body.mdp-on #c27-single-listing .quick-listing-actions .cts-next { display: none !important; }
body.mdp-on #c27-single-listing .profile-menu ul.cts-carousel li a { padding: 12px 22px !important; border-radius: 0 !important; background: transparent !important; color: var(--mdp-muted) !important; font-weight: 700 !important; }
body.mdp-on #c27-single-listing .profile-menu ul.cts-carousel li.active a, body.mdp-on #c27-single-listing .profile-menu ul.cts-carousel li a:hover { background: transparent !important; color: var(--mdp-primary) !important; }

body.mdp-on #c27-single-listing .quick-listing-actions { padding: 0; border-radius: 0; box-shadow: none; margin-bottom: 0; }
body.mdp-on #c27-single-listing .quick-listing-actions ul li a { padding: 0 14px !important; border: 1px solid var(--mdp-line) !important; border-radius: 999px !important; background: #fff !important; color: var(--mdp-muted) !important; font-weight: 600 !important; }
body.mdp-on #c27-single-listing .quick-listing-actions ul li a:hover { border-color: var(--mdp-primary) !important; background: #fff !important; color: var(--mdp-primary) !important; }

body.mdp-on #c27-single-listing .element, body.mdp-on #c27-single-listing .content-block { margin: 0 !important; padding: 0 !important; }
body.mdp-on #c27-single-listing .pf-head .title-style-1 { margin: 0; padding: 0; border: 0; }
body.mdp-on #c27-single-listing .pf-head .title-style-1 h5 { color: var(--mdp-ink) !important; font-size: 17px !important; font-weight: 800 !important; }
body.mdp-on #c27-single-listing .pf-head .title-style-1 > i { width: 36px; height: 36px; background: var(--mdp-tint); color: var(--mdp-primary); font-size: 18px; }
body.mdp-on #c27-single-listing .pf-body { color: #33415c !important; font-size: 15.5px !important; line-height: 1.95 !important; }

@media (max-width: 767px) {
	body.mdp-on #c27-single-listing .listing-main-buttons .lmb-calltoaction a { padding: 0 10px !important; }
	body.mdp-on #c27-single-listing .profile-menu ul.cts-carousel li a { padding: 11px 16px !important; }
	body.mdp-on #c27-single-listing .pf-body { font-size: 15px !important; }
}

/* Keeps the identity card centred whatever the theme does with its container. */
body.mdp-on #c27-single-listing .main-info-desktop, body.mdp-on #c27-single-listing .main-info-mobile { float: none !important; width: 100% !important; max-width: none !important; left: auto !important; right: auto !important; transform: none !important; }
body.mdp-on #c27-single-listing .main-info-mobile:empty { display: none !important; }
body.mdp-on #c27-single-listing .main-info-desktop .listing-main-info, body.mdp-on #c27-single-listing .main-info-mobile .listing-main-info { float: none !important; right: auto !important; left: auto !important; margin-right: auto !important; margin-left: auto !important; transform: none !important; }
body.mdp-on #c27-single-listing .featured-section.profile-cover { margin-bottom: 0 !important; }
body.mdp-on #c27-single-listing .featured-section.profile-cover > img { object-position: center 30%; }
body.mdp-on #c27-single-listing .featured-section.profile-cover > .overlay { background: linear-gradient(180deg, color-mix(in srgb, var(--mdp-deep) 58%, transparent), color-mix(in srgb, var(--mdp-deep) 88%, transparent)) !important; }
body.mdp-on #c27-single-listing .profile-name h1.case27-primary-text { font-weight: 800 !important; }

body.mdp-on #c27-single-listing .profile-header { height: auto !important; min-height: 0 !important; padding-top: 18px; }
body.mdp-on #c27-single-listing .profile-menu, body.mdp-on #c27-single-listing .profile-menu ul { margin-top: 0 !important; margin-bottom: 0 !important; }
body.mdp-on #c27-single-listing .profile-menu ul, body.mdp-on #c27-single-listing .quick-listing-actions ul { justify-content: center; }
body.mdp-on #c27-single-listing .quick-listing-actions li { margin: 0 4px 6px; }
body.mdp-on #c27-single-listing .qla-container { margin-top: 0; margin-bottom: 14px; padding-top: 12px; }

.mdp-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 0; }
.mdp-fact { justify-content: center; padding: 2px 16px; }
.mdp-fact + .mdp-fact { border-inline-start: 1px solid var(--mdp-line); }

@media (max-width: 767px) {
	.mdp-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 0; }
	.mdp-fact { justify-content: flex-start; padding: 0 8px; }
	.mdp-fact + .mdp-fact { border-inline-start: 0; }
	.mdp-fact.is-open, .mdp-fact.is-closed, .mdp-fact:only-child { grid-column: 1 / -1; justify-content: center; }
	.mdp-facts.no-hours .mdp-fact { justify-content: center; min-width: 0; padding: 0 6px; }
	.mdp-facts.no-hours .mdp-fact + .mdp-fact { border-inline-start: 1px solid var(--mdp-line); }
	.mdp-facts.no-hours .mdp-fact-icon { width: 34px; height: 34px; }
	.mdp-fact-text { min-width: 0; }
}

/* The card always sits above the cover, wherever the theme places it on phones. */
body.mdp-on #c27-single-listing .featured-section.profile-cover { position: relative !important; z-index: 0 !important; }
body.mdp-on #c27-single-listing .main-info-desktop, body.mdp-on #c27-single-listing .main-info-mobile { position: relative !important; z-index: 5 !important; overflow: visible !important; }
body.mdp-on #c27-single-listing .listing-main-info { position: relative !important; z-index: 5 !important; }

@media (max-width: 767px) {
	body.mdp-on #c27-single-listing { --mdp-cover: 54vw; }
	body.mdp-on #c27-single-listing .featured-section.profile-cover { min-height: var(--mdp-cover); }
	body.mdp-on #c27-single-listing .featured-section.profile-cover > img { object-position: center; }
	body.mdp-on #c27-single-listing .featured-section.profile-cover > .overlay { background: linear-gradient(180deg, color-mix(in srgb, var(--mdp-deep) 12%, transparent) 40%, color-mix(in srgb, var(--mdp-deep) 62%, transparent)) !important; }
	body.mdp-on #c27-single-listing .main-info-desktop { padding: calc(var(--mdp-cover) - 44px) 0 0; }
	body.mdp-on #c27-single-listing .main-info-mobile .listing-main-info { margin-top: -44px; }
	body.mdp-on #c27-single-listing .listing-main-info { padding: 0 16px 18px; }
	body.mdp-on #c27-single-listing .profile-name .profile-avatar { margin: -54px auto 10px; }
	body.mdp-on #c27-single-listing .listing-main-buttons { margin-top: 2px; }
}

/* Phone layout: full cover, one-line name, booking actions live in the fixed bar. */
@media (max-width: 991px) {
	body.mdp-on #c27-single-listing .tab-template-two-columns > .row { display: flex; flex-direction: column; }
	body.mdp-on #c27-single-listing .tab-template-two-columns > .row > .col-md-6, body.mdp-on #c27-single-listing .tab-template-two-columns .cts-column-wrapper { display: contents; }
	body.mdp-on #c27-single-listing .tab-template-two-columns .block-type-qr_code { order: 10; }
}

@media (max-width: 767px) {
	body.mdp-on #c27-single-listing .featured-section.profile-cover > .overlay { background: linear-gradient(180deg, transparent 72%, color-mix(in srgb, var(--mdp-deep) 45%, transparent)) !important; }
	body.mdp-on #c27-single-listing .main-info-desktop { padding-top: calc(var(--mdp-cover) - 12px); }
	body.mdp-on #c27-single-listing .main-info-mobile .listing-main-info { margin-top: -12px; }
	body.mdp-on #c27-single-listing .profile-name .profile-avatar { width: 92px; height: 92px; margin: -46px auto 8px; }
	body.mdp-on #c27-single-listing .profile-name h1.case27-primary-text { flex-wrap: nowrap; gap: 6px; font-size: 21px; white-space: nowrap; }
	body.mdp-on #c27-single-listing .profile-name h1.case27-primary-text.mdp-name-wrap { flex-wrap: wrap; white-space: normal; }
	body.mdp-on #c27-single-listing .profile-name h1.case27-primary-text > * { flex: none; }
}

/* Without the top buttons the name sits in the middle of the card. */
body.mdp-hide-top #c27-single-listing .listing-main-info > .col-md-6:has(.listing-main-buttons) { display: none !important; }
body.mdp-hide-top #c27-single-listing .listing-main-buttons { display: none !important; }
body.mdp-hide-top #c27-single-listing .listing-main-info { grid-template-columns: minmax(0, 1fr); }

@media (min-width: 992px) {
	/* Photo, name and specialties on the right; hours and area on the left. */
	body.mdp-hide-top #c27-single-listing .listing-main-info { grid-template-columns: minmax(0, 1fr) auto; }
	body.mdp-hide-top #c27-single-listing .profile-name { grid-template-columns: 124px fit-content(100%); justify-content: start; }
	body.mdp-hide-top .mdp-facts { display: flex; grid-column: auto; align-items: center; gap: 0; padding-top: 0; border-top: 0; }
	body.mdp-hide-top .mdp-fact { justify-content: flex-start; padding: 2px 22px; white-space: nowrap; }
	body.mdp-hide-top .mdp-fact:last-child { padding-left: 0; }
}

/* All the stars of a rating stay on one line, however narrow the column is. */
body.mdp-on #c27-single-listing .rating-category-field { flex-wrap: wrap; gap: 4px 12px; min-height: 48px; padding: 9px 14px; }
body.mdp-on #c27-single-listing .rating-category-label { flex: 1 1 120px; min-width: 0; line-height: 1.5; white-space: nowrap; }
body.mdp-on #c27-single-listing .rating-category-field .rating-number { flex: none; width: auto !important; max-width: none !important; margin: 0 !important; padding: 0; }
body.mdp-on #c27-single-listing .rating-category-field .clasificacion { display: flow-root; width: max-content !important; max-width: none !important; margin: 0 !important; padding: 0 !important; white-space: nowrap; }

/* Ratings sit two per row. */
body.mdp-on #c27-single-listing .form-group-review-ratings { grid-template-columns: repeat(2, minmax(0, 1fr)); }
body.mdp-on #c27-single-listing .rating-category-field { flex-direction: column; flex-wrap: nowrap; align-items: center; justify-content: center; gap: 4px; min-width: 0; padding: 10px 6px; text-align: center; }
body.mdp-on #c27-single-listing .rating-category-label { flex: none; font-size: 13.5px; white-space: nowrap; }

@media (max-width: 345px) {
	body.mdp-on #c27-single-listing .rating-category-label { font-size: 12.5px; }
	body.mdp-on #c27-single-listing .rating-category-field .rating-number { transform: scale(.85); }
}

/* Plain ratings: name above light outlined stars, no boxes. */
body.mdp-on #c27-single-listing .form-group-review-ratings { gap: 18px 16px; margin-bottom: 18px; }
body.mdp-on #c27-single-listing .rating-category-field { align-items: flex-start; gap: 6px; min-height: 0; padding: 0; border-radius: 0; background: transparent; text-align: right; }
body.mdp-on #c27-single-listing .rating-category-label { color: var(--mdp-muted); font-size: 14px; font-weight: 500; }
body.mdp-on #c27-single-listing .clasificacion label i { color: #d0d5dd; }
body.mdp-on #c27-single-listing .clasificacion input:checked ~ label i, body.mdp-on #c27-single-listing .clasificacion label:hover i, body.mdp-on #c27-single-listing .clasificacion label:hover ~ label i { color: #f5a623; }

@media (max-width: 345px) {
	body.mdp-on #c27-single-listing .form-group-review-ratings { column-gap: 8px; }
	body.mdp-on #c27-single-listing .rating-category-label { font-size: 12.5px; }
	body.mdp-on #c27-single-listing .rating-category-field .rating-number { transform-origin: right center; }
}

/* The cover ends at the middle of the card, whatever the card's height. */
@media (min-width: 768px) {
	body.mdp-on #c27-single-listing { --mdp-card-top: calc(var(--mdp-cover) - 70px); }
	body.mdp-on #c27-single-listing .featured-section.profile-cover { min-height: 0; }
	body.mdp-on #c27-single-listing .featured-section.profile-cover > img, body.mdp-on #c27-single-listing .featured-section.profile-cover > .overlay { height: calc(50% + var(--mdp-card-top) / 2) !important; }
	body.mdp-on #c27-single-listing .main-info-desktop { padding-top: var(--mdp-card-top); }
	body.mdp-on #c27-single-listing .profile-header { padding-top: 26px; }
}

/* Rating under the name and specialties; the theme's own rating is replaced. */
body.mdp-on #c27-single-listing .profile-name.has-rating .pa-below-title > :not(.profile-tagline):not(.mdp-rating) { display: none; }
body.mdp-on #c27-single-listing .mdp-rating { display: inline-flex; align-items: center; gap: 8px; margin: 10px 0 0; padding: 0; border: 0; background: none; box-shadow: none; color: var(--mdp-muted); font-size: 14px; font-weight: 600; line-height: 1.5; text-transform: none; cursor: pointer; }
body.mdp-on #c27-single-listing .mdp-rating:hover { background: none; color: var(--mdp-primary); }
body.mdp-on #c27-single-listing .mdp-rating:focus-visible { outline: 2px solid var(--mdp-primary); outline-offset: 3px; border-radius: 4px; }
body.mdp-on #c27-single-listing .mdp-rating strong { color: var(--mdp-ink); font-size: 15px; font-weight: 800; }
.mdp-stars { position: relative; display: inline-flex; color: #d0d5dd; direction: rtl; }
.mdp-stars svg { display: block; flex: none; width: 19px; height: 19px; }
.mdp-stars-on { position: absolute; top: 0; right: 0; display: flex; overflow: hidden; color: #f5a623; }

@media (max-width: 767px) {
	body.mdp-on #c27-single-listing .pa-below-title { text-align: center; }
	body.mdp-on #c27-single-listing .mdp-rating { justify-content: center; margin-top: 8px; }
}

/* Specialty in full on its own lines, with the rating underneath. */
body.mdp-on #c27-single-listing .pa-below-title { display: block !important; width: 100%; }
body.mdp-on #c27-single-listing .profile-tagline { display: block; max-width: none !important; overflow: visible !important; text-overflow: clip !important; white-space: normal !important; }
body.mdp-on #c27-single-listing .profile-tagline.mdp-pills { display: flex; }

/* Hospitals and centres: logos stay whole, and the map block matches the cards. */
body.mdp-on:not(.type-doctor) #c27-single-listing .profile-name .profile-avatar { background-color: #fff; background-repeat: no-repeat; background-size: 78%; }
body.mdp-on #c27-single-listing .block-type-categories { scroll-margin-top: 96px; }
body.mdp-on #c27-single-listing .contact-map { overflow: hidden; border: 1px solid var(--mdp-line); border-radius: 13px; }
body.mdp-on #c27-single-listing .map-block-address { margin-top: 12px; }
body.mdp-on #c27-single-listing .map-block-address ul { margin: 0; padding: 0; list-style: none; }
body.mdp-on #c27-single-listing .map-block-address li { margin: 0; padding: 0; list-style: none; }
body.mdp-on #c27-single-listing .map-block-address p { margin: 0 0 8px; color: var(--mdp-ink); font-weight: 600; }
body.mdp-on #c27-single-listing .location-address a { display: inline-flex; align-items: center; min-height: 40px; padding: 5px 16px; border-radius: 999px; background: var(--mdp-tint); color: var(--mdp-primary); font-size: 14px; font-weight: 700; text-decoration: none; }

body.mdp-on #c27-single-listing .pf-head { gap: 10px; }
body.mdp-on #c27-single-listing .pf-head > :not(.title-style-1) { flex: none; white-space: nowrap; }

/* Photo gallery as an even grid. */
body.mdp-on #c27-single-listing .gallery-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 8px; margin: 0; padding: 0; }
body.mdp-on #c27-single-listing .gallery-grid .gallery-item { position: relative; display: block; float: none; width: auto; height: auto; margin: 0; padding: 0; overflow: hidden; border-radius: 10px; aspect-ratio: 1; background: var(--mdp-tint); }
body.mdp-on #c27-single-listing .gallery-grid .gallery-item img { position: static; display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; }
body.mdp-on #c27-single-listing .gallery-grid .gallery-item i { display: none; }

/* Each address on its own row with a matching directions button. */
body.mdp-on #c27-single-listing .map-block-address li { display: flex !important; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0 !important; border-bottom: 1px solid var(--mdp-line); }
body.mdp-on #c27-single-listing .map-block-address li:first-child { padding-top: 2px !important; }
body.mdp-on #c27-single-listing .map-block-address li:last-child { padding-bottom: 0 !important; border-bottom: 0; }
body.mdp-on #c27-single-listing .map-block-address li p { flex: 1 1 auto; min-width: 0; margin: 0 !important; color: var(--mdp-ink) !important; font-size: 14.5px !important; font-weight: 600; line-height: 1.6 !important; }
body.mdp-on #c27-single-listing .location-address { position: static !important; float: none !important; flex: none; width: auto !important; margin: 0 !important; padding: 0 !important; }
body.mdp-on #c27-single-listing .location-address a { display: inline-flex !important; align-items: center; justify-content: center; gap: 6px; height: 36px; min-height: 0; padding: 0 13px !important; border: 1px solid var(--mdp-primary) !important; border-radius: 10px !important; background: #fff !important; box-shadow: none !important; color: var(--mdp-primary) !important; font-size: 13px !important; font-weight: 700 !important; line-height: 1 !important; white-space: nowrap; transition: background-color .15s ease, color .15s ease; }
body.mdp-on #c27-single-listing .location-address a::before { content: ""; flex: none; width: 13px; height: 13px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 11l19-9-9 19-2-8z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 11l19-9-9 19-2-8z'/%3E%3C/svg%3E") center / contain no-repeat; }
body.mdp-on #c27-single-listing .location-address a:hover, body.mdp-on #c27-single-listing .location-address a:focus-visible { background: var(--mdp-primary) !important; color: #fff !important; }

body.mdp-hide-phone #c27-single-listing .block-field-clinic-numbers { display: none !important; }

/* Phone order is fixed here so the theme's own block ordering cannot change it. */
@media (max-width: 991px) {
	body.mdp-on #c27-single-listing .tab-template-two-columns > .row { display: flex !important; flex-direction: column !important; }
	body.mdp-on #c27-single-listing .tab-template-two-columns > .row > .col-md-6, body.mdp-on #c27-single-listing .tab-template-two-columns .cts-column-wrapper { display: contents !important; }
	body.mdp-on #c27-single-listing .tab-template-two-columns .cts-column-wrapper > [class*="col-md-"] { order: 1 !important; }
	body.mdp-on #c27-single-listing .tab-template-two-columns .cts-column-wrapper > .block-field-job_description { order: -3 !important; }
	body.mdp-on #c27-single-listing .tab-template-two-columns .cts-column-wrapper > #vezeeta-smart-booking { order: -2 !important; }
	body.mdp-on #c27-single-listing .tab-template-two-columns .cts-column-wrapper > .block-type-social_networks { order: 6 !important; }
	body.mdp-on #c27-single-listing .tab-template-two-columns .cts-column-wrapper > .block-type-categories { order: 7 !important; }
	body.mdp-on #c27-single-listing .tab-template-two-columns .cts-column-wrapper > .block-type-qr_code { order: 10 !important; }
}

@media (max-width: 767px) {
	body.mdp-on #c27-single-listing .pa-below-title { display: block !important; width: 100%; text-align: center; }
	body.mdp-on #c27-single-listing .mdp-rating { display: flex !important; width: 100%; justify-content: center !important; margin-right: auto; margin-left: auto; }
}

.mdp-fact-icon img { display: block; width: 24px; height: 24px; object-fit: contain; }
.mdp-fact-icon i { color: var(--mdp-primary); font-size: 19px; line-height: 1; }

/* The reviews count sits exactly in the middle of its circle. */
body.mdp-on #c27-single-listing .profile-menu .items-counter { position: static !important; display: inline-flex !important; align-items: center; justify-content: center; box-sizing: border-box; flex: none; width: 24px !important; min-width: 24px; height: 24px !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 50% !important; background: var(--mdp-tint) !important; color: var(--mdp-primary) !important; font-size: 13px !important; font-weight: 800; line-height: 1 !important; text-align: center; transform: none !important; }

@media (prefers-reduced-motion: reduce) {
	.mdp-bar, body.mdp-bar-up .mgw, body.mdp-on #c27-single-listing .listing-main-buttons li a { transition: none; }
}
