/*
 Theme Name:   Findus Child
 Theme URI:    http://wordpress.com
 Description:  Findus Child Theme
 Author:       ApusTheme
 Author URI:   http://apusthemes.com
 Template:     findus
 Version:      1.0.0
 Text Domain:  findus-child
*/

.mb-20 {
    margin-bottom: 20px;
}
.loadercontainer{
    display: none;
}
.d-block-i{
    display: block !important;
}
.loader {
  border: 5px solid #f3f3f3;
  border-radius: 50%;
  border-top: 5px solid #006FC0;
  width: 20px;
  height: 20px;
  -webkit-animation: spin 2s linear infinite; /* Safari */
  animation: spin 2s linear infinite;
}
/* Safari */
@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

p a, .link{
  color:#006FC0 !important;
}
.single-post #main-content a{
  color: #006FC0 !important;
}
.single .apus-single-listing a{
  color: #006FC0 !important;
}
.gmw-field-label {
    display: none !important;
}

/*archive page card design*/
.archive-eqheight {
    background: #F1F2FA;
    margin: 10px;
    padding: 20px;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s linear;

}
.archive-eqheight:hover {
    -webkit-box-shadow: 0 0px 10px #ddd;
    -moz-box-shadow: 0 0px 10px #ddd;
    box-shadow: 0 0px 10px #ddd;
    -webkit-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -ms-transition: all 0.2s linear;
    -kthtml-transition: all 0.2s linear;
    transition: all 0.2s linear;
}
.archive-eqheight .entry-title {
    font-size: 25px;
    margin-bottom: 15px;
}

.btn-themebtn {
    background: #F9BE09;
    color: #000 !important;
    margin-top: 45px;
}
.btn-themebtn:hover{
    background: #006FC0;
    color: #fff !important;
}
.archive-eqheight .whitetext a {
    color: #fff;
}
.archive-eqheight a {
    color: #1e90ff;
}


@media only screen and (max-width: 800px){
  .archive-eqheight{
    text-align: center !important;
  }
  .archive-eqheight .grid-contact-inner {
    display: inline-block !important;
}
}

/* Customizer Css */
@media only screen and (max-width: 767px){
	#apus-main-content{
		padding-top:72px !important;
	}
	.container{
		padding-left:0px !important;
		padding-right:0px !important;
	}
	div.gmw-form-wrapper.horizontal-gray select{
		width:100% !important;
	}
	
/* 	Sidebar Lawyer Type */

/* aside#block-5 {
    display: none;
} */
}

@media only screen and (min-width: 767px){
	.archive .col-md-4.eqheight {
    height: 450px;
}
.archive .image-wrapper {
    height: 150px;
}
	.archive .post-grid-v1 .entry-title {
    margin: 10px 0;
    min-height: 70px;
}
	.archive .listing-contact {
    min-height: 45px;
}
	
}
.listing-contact .grid-contact-inner .listing-location a {
    display: none;
}
.gmw-form-wrapper.horizontal-gray.gmw-pt-horizontal-gray-form-wrapper.pt {
   display: flex;
  justify-content: center;
  align-items: center;
	margin-top: 20px;
}
.gmw-form {
     text-align: left;
}

.menu-footer-menu-container .menu-item p {
    cursor: pointer;
	margin:0;
}


/* Today  v3 */
body, h1, h2, h3, h4, h5, h6, p, a, div, input, button {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}
/*single profile card tabs practice area*/
div#costavailability .practiceareali li {
    width: 100%;
}

.mt-3{
  margin: 30px;
}

.primary-content-area {
    margin: 50px 0;
}


.job-listing-search-filter {
    display: flex;
    justify-content: center;
}

@media (max-width: 768px){
	.elementor-shortcode #job-listing-search-form {
		flex-direction: column;
		width: 570px;
	}

}


@media (max-width: 575px){
	.elementor-shortcode #job-listing-search-form {
		width: 490px;
	}

}

@media (max-width: 495px){
	.elementor-shortcode #job-listing-search-form {
		width: 300px;
	}

}

@media (min-width: 992px) {
.listing-suggestions .col-md-3 {
    width: 23%;
}
}

/* Muhibul CSS */

.listing-photos.box-inner {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.listing-photos.box-inner .image-wrapper img {
    width: 100%;
    height: 150px;
    object-fit: cover;
}

/* Practice Area */

.listing-amenity-list .practiceareali {
		height: 45px;
    line-height: 1.2;
    display: block;
}

/*  Lawyer Type Style*/

.lawyer_firm_terms {
    list-style: none; /* Remove bullet points */
    padding: 0;
    margin: 0;
}

.lawyer_firm_terms li {
    display: inline; /* Display items inline */
    margin-right: 5px; /* Add some spacing between items */
}

.lawyer_firm_terms li:not(:last-child)::after {
    content: ' ,'; /* Add comma after each item except the last */
    margin-right: 5px; /* Add some spacing after the comma */
}


/* Editor */

ul.cmb2-checkbox-list.cmb2-list {
    text-transform: capitalize;
}


@media (max-width: 992px) {
	.listing-suggestions {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
	}
	
	.mobile-sidebar-btn {
    display: inline-block;
    margin: 15px 7px 0px;
	}
}

/* Tablet devices (768px and below) */
@media (max-width: 768px) {
    .listing-photos.box-inner {
        grid-template-columns: repeat(2, 1fr); /* 2 images per row */
    }
	
	.listing-heading h2 {
    margin-left: 30px;
	}
		
	.job-listing-item p {
    line-height: 1.3;
    margin: 0;
	}
	.archive-eqheight {
    margin: 5px!important;
	}
	.job-listing-search-filter {
    margin: 10px;
	}
}

/* Mobile devices (480px and below) */
@media (max-width: 480px) {
    .listing-photos.box-inner {
        grid-template-columns: 1fr; /* 1 image per row */
    }
	
		.listing-suggestions {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin: 15px;
	}
}


/*  Widget Style */
@media (max-width: 768px) {

	
.sidebar.sidebar-right {
/* 			-webkit-transform: translateX(0%)!important;
			-ms-transform: translateX(0%)!important;
			-o-transform: translateX(0%)!important;
			transform: translateX(0%)!important; */
	}
	
	.sidebar.sidebar-right.active{
		        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
	} 
	
/* 	.sidebar {
    position: initial !important; 
		width:100%;
		max-width:100%;
	}  */

	
	.entry-header-left {
    padding: 20px;
	}
	
	.tab-content {
    padding: 10px;
	}
	
	.nav-tabs {
    padding-left: 10px;
	}
		
	.taxonomy-description p, .taxonomy-description h2, .taxonomy-description h3 {
    margin: 10px;
	}
}

/* Video Gallery Style */
.video-container {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    height: 0;
    overflow: hidden;
    max-width: 100%;
    background: #000;
}

.responsive-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.video-item {
    padding-bottom: 20px;
}

/* Pricing Table, Listing Gallery*/

@media only screen and (min-width: 1140px){
	.awards-badges {
		display: grid;
    justify-items: center;
    grid-template-columns: repeat(4,1fr);
	}
}

.awards-badges {
	display: grid;
	justify-items: center;
	align-items: center;
	gap: 10px;
}

@media only screen and (max-width: 1140px){
	ul.elementor-price-table__features-list {
    min-height: 585px;
	}	
		.awards-badges {
grid-template-columns: repeat(4, 1fr);
	}
}

@media only screen and (max-width: 992px){
	ul.elementor-price-table__features-list {
    min-height: 640px;
	}
		.awards-badges {
    grid-template-columns: repeat(4,1fr);
	}
}

@media only screen and (max-width: 768px){
	ul.elementor-price-table__features-list {
    min-height: 495px;
	}
	.awards-badges {
    grid-template-columns: repeat(3,1fr);
	}
}

@media only screen and (max-width: 420px){
		.awards-badges {
    grid-template-columns: repeat(2,1fr);
	}
	
}

/* Fitler */
.show-filter2, span.show-filter.show-filter1.hidden-lg.btn.btn-xs.btn-theme {
    display: none;
}

/* Sidebar Scroll Problem */
.ps-container {
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    overflow: hidden !important;
    -ms-overflow-style: none;
}

/*  Sidebar Related Lawyers*/
.joblisting-single-item {
    display: flex;
    gap: 10px;
    background: #fefee5;
		padding:15px;
    border-bottom: 1px solid #eee;
}

.joblisting-single-item:hover {
	background:#fefed8;
}

.joblisting-name {
    font-size: 1.6rem;
    line-height: 1;
    margin: 0 0 5px 0;
    color: #26354e;
    font-weight: 500;
}

.joblisting-location {
    color: #999;
    line-height: 1.4;
}

.joblistings-container .joblisting-item .joblisting-single-item .joblisting-logo img {
    height: auto;
    max-width: 65px;
}

/*  Hide Sidebar Show/Hide Button in Mobile  */

/* a.mobile-sidebar-btn.hidden-lg.hidden-md {
    display: none;
}

.close-sidebar-btn.hidden-lg.hidden-md {
    display: none;
} */

/*  Remove Tags from Single Listing Page. */

div#listing-tags {
    display: none;
}


/*  Search Page Responsive. */

@media (max-width: 800px) {
    div.gmw-results-wrapper.grid-gray ul.posts-list-wrapper .post-content {
        display: flex!important;
        flex-direction: column;
        align-items: center;
    }
	
	.post-content .col-sm-3, .post-content .col-sm-6, .post-content .col-sm-4, .post-content .col-sm-8 {
    width: 100%;
 }

}

/* Normal Desktop Styles */
div#main-content {
    padding-top: 0px;
}

aside.sidebar.sidebar-right.ps-container.ps-theme-default {
    padding-top: 25px;
}


/*  Listing Archive CSS  */

/* Styling the form */
#job-listing-search-form {
    display: flex;
    flex-direction: row;
		width: 810px;
    gap: 10px;
    margin: 0 auto;
    padding: 10px;
    background: #f7f7f7;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Input and select fields */
#job-listing-search-form input[type="text"],
#job-listing-search-form select {
    width: 100%;
    padding: 14px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 12px;
    transition: border-color 0.3s ease;
}

/* Input focus styles */
#job-listing-search-form input[type="text"]:focus,
#job-listing-search-form select:focus {
    border-color: #0073aa;
    outline: none;
}

/* Search button */
#job-listing-search-form button {
    padding: 10px 55px;
    font-size: 16px;
    background-color: #1e90ff;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

#job-listing-search-form button:hover {
    background-color: #2b97ff;
}

#region-suggestions, #city-suggestions {
    background-color: white;
    border: 1px solid #ddd;
    list-style: none;
    margin: 0;
    padding: 0;
    position: absolute;
    z-index: 9999;
    max-height: 200px;
    overflow: hidden;
    width: 305px;
    border-radius: 4px;
    top: 65px;
}

/* Styling the suggestion items */
.suggestion-item, .city-suggestion-item {
    padding: 10px;
	  border-bottom: 1px solid #ddd;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.suggestion-item:hover, .city-suggestion-item:hover {
    background-color: #f1f1f1;
}

/* Hide city dropdown by default (when no city is available) */
#city-select[style*="display: none;"] {
    visibility: hidden;
    height: 0;
}

/* Disabled select field styles */
select[disabled] {
    background-color: #f1f1f1;
    color: #aaa;
    pointer-events: none;
}

/* Responsiveness */
@media (max-width: 600px) {
    #job-listing-search-form {
        width: 100%;
        padding: 15px;
    }
    
    #job-listing-search-form button {
        width: 100%;
    }
}


/*  Loader  */

div#lex-spinner, div#city-spinner{
	    width: 100%;
}

.loading {
    position: relative;
}

.loading::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);
    width: 44px;
    height: 45px;
    background: url('../svg/spinner.svg') no-repeat center;
    background-size: contain;
    z-index: 10;
}

/*  Listing Archive CSS End. */


/*  Listing from Rest API Style Start  */

.listing-item-main{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap: 25px;
	margin-bottom: 25px;
}

.listing-single-item{
	border-radius: 6px;
  overflow: hidden;
	position:relative;
	display:inline-block;
	box-shadow: 0 0 20px 0 rgba(62, 28, 131, 0.1);
}

.listing-single-image{
	height:220px;
	width: auto;
	padding:20px;
	background-size: cover;
  background-position: center center;
  transition: transform 0.5s ease-in-out;
transform: scale(1);
}

.listing-single-image:hover {
    transform: scale(1.1);
}

.listing-single-image::before {
    background: linear-gradient(to bottom, transparent 17%, #464c63);
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    z-index: 1;
}

.listing-single-image-wrapper {
    display: block;
    overflow: hidden;
}

.listing-single-button {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 2;
    background-color: white;
    color: #505667;
    padding: 5px 20px;
		border:none;
    border-radius: 30px;
    font-size: 15px;
    box-shadow: 0px 0px 0px 5px rgba(255, 255, 255, 0.2);
}

.listing-single-bottom-logo {
    display: flex;
    justify-content: center;
    transform: translateY(-50%);
    margin-bottom: -25px;
}

.listing-single-bottom-logo img {
    border-radius: 50%;
    box-shadow: 0px 0px 0px 5px rgba(255, 255, 255, 0.3);
    height: auto;
    width: 65px;
}

span.listing-single-title {
    color: #26354e;
    transition: color 0.3s ease;
    font-size: 18px;
    font-weight: 600;
}

span.listing-single-title:hover {
    color: #006FC0;
}

h3.listing-single-bottom-title {
    display: flex;
    justify-content: center;
    gap: 10px;
}

.single-listing-contact {
    display: flex;
    justify-content: right;
    padding: 15px 20px;
    border-bottom: 1px dashed #bfbfbf;
}

.single-listing-content-bottom {
    padding: 10px 20px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.single-listing-content-bottom-left {
    font-weight: 600;
    color: #1c4969;
}

.single-listing-inner i {
    font-size: 20px;
    line-height: 1;
    margin-right: 5px;
}

.single-listing-inner {
    display: flex;
    gap: 5px;
    align-items: center;
}

.single-listing-item-open{
	color:green;
}

.single-listing-item-close{
	color:red;
}

span.single-listing-phone-show {
    display: inline-block;
    font-size: 11px;
    padding: 5px 10px;
    line-height: 1;
    border-radius: 4px;
    color: #fff;
    background: #006fc0;
	  cursor:pointer;
}

@media (max-width: 768px) {
	.listing-item-main{
		grid-template-columns: repeat(2, 1fr);
	}    
}

@media (max-width: 575px) {
	.listing-item-main{
		grid-template-columns: repeat(1, 1fr);
	}    
}
/*  Rest Api Style End*/

/*  For mobile header */
@media (max-width: 1199px) {
    .header-mobile .btn.dropdown-toggle, .header-mobile .btn.offcanvas {
        color: #ffffff;
    }

    div#apus-header-mobile {
        background: #0F1B31;
    }

    .navbar-nav > li > a {
        color: #fff;
    }
		.apus-offcanvas .navbar-nav .sub-menu li > a {
    		color: #fff;
		}
    div#apus-mobile-menu {
        background: #0F1B31;
    }

    .header-mobile {
        border-bottom: none;
    }

    .header-mobile .left-inner {
        border-right: none;
    }
	.elementor-element.elementor-element-f59a7e0.e-con-full.e-flex.e-con.e-parent.e-lazyloaded {
    padding: 50px 0;
}
}
.single .joblisting-single-item {
    display: flex
;
    gap: 10px;
    background: #f4f4f4;
    padding: 20px 10px;
    border-radius: 9px;
    margin-bottom: 15px;
}
.single .joblisting-logo {
    justify-content: center;
    display: flex
;
    align-items: center;
    width: 30% !important;
}
.single .joblisting-name {
    font-size: 1.5rem;
    line-height: 1;
    margin: 0 0 5px 0;
    color: #26354e;
    font-weight: 700;
}
.single .joblisting-location {
    color: #7d7d7d;
    line-height: 1.4;
    font-size: .9em;
}
.single .joblisting-logo img {
    border-radius: 50%;
    vertical-align: middle;
}
.single .joblisting-single-item {
    transition: all .3s ease;
}