/*
Theme Name:   MediCenter Child
Theme URI: https://1.envato.market/medicenter-responsive-medical-wordpress-theme
Description:  MediCenter Child Theme
Author: QuanticaLabs
Author URI: https://1.envato.market/quanticalabs
Template:     medicenter
Version:      1.2
Text Domain:  medicenter
*/

html {
  scroll-padding-top: 90px; 
  scroll-behavior: smooth; 
}
.slider-navigation {
	display:none;	
}
.elementor-nav-menu a:hover {
	text-decoration: none;
}
.main-nav {
	.elementor-nav-menu--main {
		li:last-child a::after {
			display:none;
		}
		.elementor-sub-item {
			padding-right: 30px;
		}
	}
}

selector .elementor-blockquote__content {
    white-space: pre-wrap;
}

/* SIDEBAR & SCROLL TO */
.sidebar-nav ul,
.cust-scrollto {
    list-style: none;
    margin: 0;
	  padding: 0;
    width: 100%;
	  font-family: "Roboto",  Sans-serif;
		background: #fff;
	  border-radius: 0 0 10px 10px;
		border: 1px solid #dce6f2;
	  border-top: none;
    
    li {
        padding: 15px 18px 15px 18px;
        font-size: 14px;
    font-weight: 500;
    border-left: 0px;
    border-bottom: 1px solid #eaf0f8;
    border-left: 3px solid transparent;
    
    &.current_page_item {
        border-left: 3px solid #0459a0;
        background: #eef4fb;
        a {
            color: #0459a0;
            
            &::after {
                color: #0459a0;
            }
        }
			&:last-child {
				border-radius: 0 0 10px 10px
					;
			}
    }
    
        a {
            color: #5b6b6c;
            display: flex;
            align-items: center;
            justify-content: space-between;
					  text-decoration: none;
            
						&:hover {
            	text-decoration: none;
            }
					
            &::after {
              content: "";
              display: inline-block;
              width: 4px;
              height: 4px;
              margin-left: 30px;
              border-right: 1px solid currentcolor;
              border-bottom: 1px solid currentcolor;
              transform: rotate(-45deg);
            }
            &:hover {
                color: #4ca0d9;
                &:after {
                color: #4ca0d9;
            }
            }
        }
    }
}
/* SCROLL TO */
html {
  scroll-padding-top: 90px; 
  scroll-behavior: smooth; 
}
.items-list.cust-scrollto {    
    li {
        padding: 11px 22px 11px 18px;
			
		a {
			width: 100%;
			padding: 0;
		}
	}
}

.cust-bullet, .cust-bullet-sml {
	.elementor-icon-list-icon {
		  background: #e3eefb;
			border-radius: 6px;
			border: none;
			padding: 10px;
		  padding-inline-end: 10px !important;
	}
	a {
		text-decoration: none;

		&:hover {
			color: #0459a0 !important;
			text-decoration: none;
		}
		span {
			&:hover {
				color: #0459a0 !important;
			}
		}
	}
}
.cust-bullet-sml {
	.elementor-icon-list-icon {
		  padding: 8px;
		  padding-inline-end: 8px !important;
	}
}
.accent-text {
	font-weight: 500;
}
.accent-link {
	font-weight: 500;
	color: #0459A0 !important;
	text-decoration: none;
	display: inline-block;
	max-width: 100%;
	overflow-wrap: break-word;
	word-break: break-all;

	&:hover {
		color: #2B3E66;
	}
}
.e-n-tabs-heading {
	border-bottom: 2px solid #dce6f2;
	
	.e-n-tab-title {
	    padding: 10px 20px;
	}
}

/* NESTED ACCORD */
.cust-accordion {
    .e-n-accordion-item {
        background: #fff;
        border: 1px solid #E2ECEC;
        border-radius: 10px;
        .e-n-accordion-item-title {
            align-items: center;
        }

        .e-n-accordion-item-title[aria-expanded="true"] {
            align-items: center;
        }
			.e-n-accordion-item-title[aria-expanded="false"] {
            padding: 20px !important;
        }
    }

    .e-n-accordion-item-title-icon {
        .e-opened, .e-closed {
            padding: 13px 8px;
            align-items: center;
            border-radius: 6px;
        }

        .e-opened {
            background: #0459a0;
        }

        .e-closed {
            background: #0459a0;
        }
    }
}

/* HOMEPAGE SERVICES */
#homepage-services {
	.services-list.services-spacing li li a img{
		border: 1px solid rgb(220, 230, 242);
		border-bottom: 0;
		border-radius: 10px 10px 0 0;
	}
	.service-details {
		background: rgb(255, 255, 255);
    	border-radius: 0 0 10px 10px;
    	overflow: hidden;
    	border: 1px solid rgb(220, 230, 242);
		border-top: 0;
		padding: 25px 25px;
	
		h4 {
			font-family: "Vend Sans", Sans-serif;
    		font-size: 18px;
    		font-weight: 600;
			text-transform: none;
			padding: 0;
			
			a {
				color: #2b3e66;
			}
		}
		p {
			padding: 8px 0 0;
			font-family: "Roboto", Sans-serif;
    		font-size: 14px;
    		font-weight: 400;
    		line-height: 22px;
    		color: #57647a;
		}
	}
}

/* PDH - custom Download Monitor row: title left, styled button right */
.dlm-downloads {
	padding: 0;

	li:has(.pdh-download-row) {
		list-style: none;
	}
	.pdh-download-row {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 16px;
		background: #ffffff;
		border-radius: 8px;
		padding: 16px 20px;
		margin-bottom: 0;
		border: 1px solid #DCE6F2;
		
		.pdh-download-title {
			font-weight: 500;
			font-size: 0.95rem;
			font-family: 'Vend Sans';
			color: #2B3E66;
		}
		.pdh-download-btn {
			display: inline-flex;
			flex-direction: row;
			align-items: center;
			gap: 10px;
			background-color: #0459A0;
			color: #FFFFFF !important;
			font-family: "Roboto", Sans-serif;
			font-size: 0.9rem;
			font-weight: 500;
			text-decoration: none;
			border: 1px solid #FFFFFF29;
			border-radius: 6px;
			padding: 5px 15px;
			white-space: nowrap;
			transition: background-color 0.2s ease;
			
			.pdh-download-btn-icon {
				font-size: 14px;
				line-height: 1;
			}
			&:hover, &:focus {
				background-color: #2B3E66;
				color: #FFFFFF !important;
			}
			&:hover {
				text-decoration: none;
			}
		}
	}
}

/* PDH - Other Services widget ([related_services] shortcode) */
.related-services-widget {
	background: #fff;
	border: 1px solid #e5e8ee;
	border-radius: 10px;
	max-width: 320px;
	
	.related-services-title {
		font-size: 13px;
		font-weight: 700;
		letter-spacing: .06em;
		text-transform: uppercase;
		color: #8a94a6;
		padding: 12px 25px;
	}
	.related-services-list {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	.related-services-item {
		border-top: 1px solid #eef0f4;
		padding: 2px 15px 2px 25px;
		
		a {
			display: flex;
			align-items: center;
			justify-content: space-between;
			padding: 12px 0;
			color: #57647a;
			text-decoration: none;
			
			&:hover {
				color: #2b3e66;

				span {
					color: #2b3e66;
				}
			}
		}
	}
	.related-services-viewall {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 15px 15px 15px 25px;
		border-top: 1px solid #eef0f4;
		color: #0459a0;
		font-weight: 600;
		text-decoration: none;

			&:hover {
				color: #2b3e66;
				text-decoration: none;

				.related-services-arrow {
					color: #2b3e66;
				}
			}
	}
	.related-services-arrow {
		color: #b7bfcc;
	}
}

/* PDH - /services/ directory page ([alphalisting] shortcode, a-z-listing.php template override) */
.az-listing {
	.az-listing-card {
		background: #fff;
		border: 1px solid #dce6f2;
		border-radius: 10px;
		padding: 32px;
		margin-bottom: 32px;
	}
	.az-listing-card-title {
		font-size: 1.2rem;
		font-weight: 600;
		color: #2b3e66;
		margin: 0px 0px 10px;
        font-family: 'Vend Sans';
	}
	.az-search-row {
		margin-bottom: 24px;
	}
	.az-search-input {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
		font-family: inherit;
		font-size: .85rem;
		color: #2b3e66;
		background: #f5f8fc url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a94a6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") no-repeat 14px center;
		background-size: 16px 16px;
		border: 1px solid #dce6f2;
		border-radius: 6px;
		padding: 10px 14px 10px 40px;

		&:focus {
			outline: none;
			border-color: #0459a0;
		}
	}
	.az-letters-wrap {
		.az-letters > ul.az-links {
			justify-content: flex-start;
			font-family: 'Vend Sans';
            font-size: 1rem;
            font-weight: 500;

			> li a {
				color: #0459a0;
			}
			> li:has(> a):hover {
				border-color: #dce6f2;
			}
		}
	}
	div.letter-section {
		margin-bottom: 2rem;
		
		h2.letter-title {
			border-bottom: 2px solid #eef0f4;

			span {
				font-size: 1.2rem;
				font-weight: 700;
				color: #0459a0;
                padding-left: 10px;
			}
		}
		> ul.az-columns {
			display: grid;
			grid-template-columns: repeat(2, 1fr);
			column-gap: 40px;

			> li {
				margin: 0;
				border-top: 1px solid #eef0f4;

				&:nth-child(-n+2) {
					border-top: none;
				}

				a {
					display: flex;
					align-items: center;
					justify-content: space-between;
					gap: 12px;
					padding: 14px 10px;
					color: #57647a;
					text-decoration: none;

					&:hover {
						color: #0459a0;

						.az-item-arrow {
							color: #0459a0;
						}
					}
				}
			}
		}
	}
	.az-no-results {
		color: #8a94a6;
		padding: 24px 0;
		text-align: center;
	}
}
.az-item-arrow {
	color: #b7bfcc;
	font-size: 1.2em;
	line-height: 1;
}

@media (max-width: 767px) {
	.az-listing {
		.az-listing-card {
			padding: 20px;
		}
		div.letter-section > ul.az-columns {
			grid-template-columns: 1fr;
		

			> li:nth-child(2) {
				border-top: 1px solid #eef0f4;
			}
		}
	}
}

/* PDH - Service tiles grid ([service_tiles] shortcode) */
.service-tiles-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;

    @media (max-width: 1024px) {
        grid-template-columns: repeat(2, 1fr);
    }

    @media (max-width: 480px) {
        grid-template-columns: 1fr;
    }

    .service-tile {
/*         aspect-ratio: 1 / 1; */
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: stretch;
        gap: 5px;
        background: #FFFFFF;
        border: 1px solid #DCE6F2;
        border-radius: 10px;
        padding: 22px;
        text-decoration: none;
        transition: box-shadow .2s ease, transform .2s ease;

        &:hover {
            box-shadow: 0 6px 18px rgba(20, 40, 80, 0.08);
            transform: translateY(-2px);
			text-decoration: none;
        }

        .service-tile-icon {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: fit-content;
            background: #E3EEFB;
            border-radius: 6px;
            padding: 11px 12px 10px;
            margin: 0 0 10px;

            i {
                font-size: 20px;
                color: #0459a0;
            }
        }

        .service-tile-title {
            font-family: "Vend Sans", sans-serif;
            font-weight: 600;
            font-size: 17px;
			line-height: 1.3rem;
            color: #1a2b4b;
			margin-bottom:5px;
        }

        .service-tile-desc {
            font-family: "Vend Sans", sans-serif;
            font-size: 14px;
            line-height: 1.2rem;
            color: #57647AB5;
            display: -webkit-box;
            -webkit-line-clamp: 3;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }
    }
}
.staff-tile {
	&:hover {
		box-shadow: 0 6px 18px rgba(20, 40, 80, 0.08);
		transform: translateY(-2px);
		text-decoration: none !important;

	}
}
/* Fix: nav dropdown submenus were each auto-sizing to their own longest
   item, so the box visibly jumped/resized as you hovered between
   different top-level menu items. Force a single consistent width. */
ul.elementor-nav-menu--dropdown {
    width: 235px !important;
}

/* Fix: Elementor's icon-list widget CSS sets display:flex on ANY <a>
   nested inside an icon-list item (meant for items where the whole
   icon+text is itself a clickable link). That same rule also catches
   links embedded inline inside the item's text (e.g. a mailto: link),
   forcing them onto their own line instead of flowing with the text.
   Restore normal inline flow for links inside the icon-list text specifically. */
.elementor-icon-list-item .elementor-icon-list-text a {
    display: inline !important;
}

.elementor-location-single {
	width: 100%;
}


/* News archive pagination */
nav.elementor-pagination {
	margin: 30px 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
	justify-content: center;
	font-family: "Vend Sans", Sans-serif !important;
}
nav.elementor-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 14px;
    border-radius: 8px;
    border: 1px solid #D5DCE3;
    background: #FFFFFF;
    color: #2B3E66;
    font-weight: 600;
    text-decoration: none;
}
nav.elementor-pagination a.page-numbers:hover {
    border-color: #0459A0;
    color: #0459A0;
}
nav.elementor-pagination .page-numbers.current {
    background: #0459A0;
    border-color: #0459A0;
    color: #FFFFFF;
}
nav.elementor-pagination .page-numbers.dots {
    border: none;
    background: transparent;
}
nav.elementor-pagination span.page-numbers.prev,
nav.elementor-pagination span.page-numbers.next {
    display: none;
}

/* CURRENT VACANCIES - SCOUT EMBED */
#scout-jobs-iframe body {
	a.job_title {
		font-size: 15px;
		font-weight: bold;
		font-family: "Vend Sans", Sans-serif !important;
	}
}

[data-elementor-type="wp-page"] > .e-con-full:first-child .e-con-boxed > .e-con-inner > .e-con-full {
	padding-left: 0;
	padding-right: 0;
}
.e-con:has(> .elementor-widget-spacer):not(:has(> :not(.elementor-widget-spacer))) {
    padding-left: 0 !important;
    padding-right: 0 !important;
}


/* PDH - Contact page (id 3003): make the Google map run edge to edge by
   removing the left/right padding on its container (8aca040) at all widths.
   The container is a full-width e-con with no .e-con-inner, so it picks up
   Elementor's default 10px padding through custom properties. */
.page-id-3003 .elementor-element-8aca040.e-con {
    --padding-left: 0px;
    --padding-right: 0px;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.page-id-3003 .elementor-element-8aca040 .elementor-widget-container {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0;
}
.elementor-widget-posts .elementor-post__read-more {
    color: #4ca0d9;
}
/* =====================================================
   PDH Responsive Fixes
   ===================================================== */
@media screen and (max-width: 1280px) {
 	/* Page header inner padding on tablet/mobile */
	[data-elementor-type="wp-page"] > .e-con-full:first-child .e-con-boxed > .e-con-inner,
	[data-elementor-type="single-post"] > .e-con-full:first-child .e-con-boxed > .e-con-inner,
	[data-elementor-type="wp-post"] > .e-con-full:first-child .e-con-boxed > .e-con-inner {
        padding-left: 20px;
        padding-right: 20px;
    } 
}

@media screen and (max-width: 1024px) {
	ul.services-list.services-spacing li li {
		margin-left: 15px;
	}
	ul.services-list.clearfix {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
	.why-pdh {
		.elementor-widget-icon {
			padding: 8px 8px 8px 10px;
		}
		.elementor-element .elementor-icon-wrapper .elementor-icon svg {
			height: 10px;
			width: 10px;
		}
	}
	/* Page header inner padding on tablet/mobile */
	[data-elementor-type="wp-page"] > .e-con-full:first-child .e-con-boxed > .e-con-inner {
        padding-left: 20px;
        padding-right: 20px;
    }
	[data-elementor-type="wp-page"] > .e-con-full:first-child .elementor-element {
        padding-left: 0;
        padding-right: 0;
    }
	[data-elementor-type="wp-page"] > .e-con-full:first-child .elementor-widget-heading {
        width: 100% !important;
        max-width: 100% !important;
        --container-widget-width: 100% !important;
        --container-widget-flex-grow: 1 !important;
		text-align: left;
    }
 	.elementor-grid-tablet-2 .elementor-grid {
		grid-column-gap: 15px;
    }
    .elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu,
    .elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu li,
    .elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu a.elementor-item {
        text-align: center !important;
        justify-content: center !important;
    }
    .elementor-location-footer .e-con:has(> .elementor-widget-nav-menu) .elementor-heading-title {
        text-align: center !important;
    }

}

@media screen and (max-width: 1009px) {
    .header, .header-top-sidebar,
    .site-container .vc_row,
    .home-box-container-list,
    .footer, .copyright-area {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }
    .site-container.boxed,
    .boxed .header-container.sticky.move {
        max-width: 100%;
    }
    .elementor-slide-heading,
    .elementor-slide-description,
    .elementor-slide-button,
    .elementor-slide-content {
        display: block;
        visibility: visible;
        opacity: 1;
    }
}

@media screen and (max-width: 767px) {
    .page-id-3756 .elementor-posts-container .elementor-grid-item:not(:first-child) {
        display: none !important;
    }
	.page-id-3756 .elementor-grid-tablet-2 .elementor-grid {
        grid-template-columns: repeat(1, 1fr) !important;
		grid-column-gap: 0;
    }
	ul.services-list.services-spacing li li {
		margin-left: 0;
	}
	.page-id-3756 .services-list.services-spacing li a img {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
	}
	.page-id-3756 .services-list.services-spacing li a {
		display: block !important;
		width: 100% !important;
	}
	[data-elementor-type="wp-page"]:not(.page-id-3756) .e-con-inner > .e-con.e-child, 
	[data-elementor-type="wp-post"][data-elementor-post-type="ql_services"] .e-con-inner > .e-con.e-child,
	.related-services-widget {
        width: 100% !important;
        max-width: 100% !important;
        flex-basis: 100% !important;
		margin-right: 0;
    }
	[data-elementor-type="wp-post"][data-elementor-post-type="ql_services"] .e-con-inner > .e-con.e-child {
		margin-left: 0;
	}
	[data-elementor-type="wp-post"][data-elementor-post-type="ql_services"] .e-con-boxed.e-parent > .e-con-inner {
        flex-wrap: wrap;
    }
    [data-elementor-type="wp-page"] > .e-con-full:first-child > .e-con:first-child > .e-con-inner,
    [data-elementor-type="wp-page"] > .e-con-full:first-child > .e-con:first-child .e-con-boxed > .e-con-inner {
        padding: 30px 12px;
    }

    :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"], [data-elementor-type="single-post"]) > .e-con-full:first-child > .e-con:first-child {
        --padding-top: 40px;
        --padding-bottom: 40px;
        --gap: 10px 5px;
        --row-gap: 10px;
        --column-gap: 5px;
    }
    :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"], [data-elementor-type="single-post"]) > .e-con-full:first-child > .e-con:first-child .elementor-widget-heading:nth-child(1) .elementor-heading-title {
        font-size: 13px !important;
        line-height: 1.2 !important;
    }
    :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"], [data-elementor-type="single-post"]) > .e-con-full:first-child > .e-con:first-child .elementor-widget-heading:nth-child(2) {
        margin-bottom: 0 !important;
    }
    :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"], [data-elementor-type="single-post"]) > .e-con-full:first-child > .e-con:first-child .elementor-widget-heading:nth-child(2) .elementor-heading-title {
        font-size: 22px !important;
		font-weight: 500;
        line-height: 1.3 !important;
    }
    :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"], [data-elementor-type="single-post"]) > .e-con-full:first-child > .e-con:first-child .elementor-widget-heading:nth-child(4) .elementor-heading-title {
        font-size: 15px !important;
        line-height: 1.5 !important;
    }
	
	/* PDH - custom Download Monitor row: title left, styled button right */
	.dlm-downloads {
		.pdh-download-row {
			.pdh-download-btn {
				justify-content: center;
				width: 100%;
			}
		}
	}
}
