
/* General Settings */
.fwr-bold{
    font-weight:700 !important
}
.fwr-bolder{
    font-weight:bolder !important
}


.m-center
{
	margin-left: auto !important;
	margin-right: auto !important;
	display:table !important;
}

a.a-light
{
	color:#007bff;
}

.hidden
{
	display:none !important;
}


.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}

.fs-7
{
	font-size:.75rem !important;
}
.fs-8
{
	font-size:.50rem !important;
}
.lh-6
{
	line-height: 1rem !important;
}

/* Blur System*/
.blurry-loading
{
    -webkit-filter: blur(10px);


  animation-duration: 1.5s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-name: placeHolderShimmer;
  animation-timing-function: linear;

  background: linear-gradient(to right, #eeeeee 8%, #bbbbbb 18%, #eeeeee 33%);
  background-size: 800px 104px;

	
	
}


@keyframes placeHolderShimmer {
  0% {
    background-position: -800px 0
  }
  100% {
    background-position: 800px 0
  }
}

.loading-animated {
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-name: placeHolderShimmer;
  animation-timing-function: linear;

  background: linear-gradient(to right, #eeeeee 8%, #bbbbbb 18%, #eeeeee 33%);
  background-size: 800px 104px;


}


.FeaturedPlacePreview:hover
{
	box-shadow: -5px 5px 20px 5px rgb(50 50 50 / 50%) !important;
}




/* Colors */
.text-dark-a a
{
	--bs-text-opacity: 1;
    color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
}


/* Font Awesome */
.fa-large
{
	font-size: 32px;
    vertical-align: middle;
}



/* Site Loader */ 
.loaderholder {
  position: fixed; /* Sit on top of the page content */
  display: none; /* Hidden by default */
  width: 100%; /* Full width (cover the whole page) */
  height: 100%; /* Full height (cover the whole page) */
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.7); /* Black background with opacity */
  z-index: 20000; /* Specify a stack order in case you're using a different order for other elements */
  cursor: no-drop; /* Add a pointer on hover */
}
.loader {
  border: 16px solid #f3f3f3; /* Light grey */
  border-top: 16px solid #3498db; /* Blue */
  border-radius: 50%;
  width: 120px;
  height: 120px;
  animation: spin 2s linear infinite;
  margin:0 auto;
   position: absolute;
  left: 50%;
  top: 50%;
  
  background: white;
  border-top: 16px solid #295d8c;
  border-right: 16px solid #a5212c;
  border-bottom: 16px solid #295d8c;
  border-left: 16px solid #a5212c;
}
.loaderholder h5
{
	font-size:36px;
	width: 100%;
    position: absolute;
    left: 0;
    top: 50%;
    text-align: center;
    margin-top: 125px;
    margin-left: 60px;
    color: white;
    font-weight: bold;
}
.loaderholder img 
{
	position: absolute;
	left: 50%;
	top: 50%;
	margin: 35px 20px;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* loading dots */

.loading:after 
{
	content: ' .';
	animation: dots 1s steps(5, end) infinite;
	font-size: 48px;
    line-height: 0;
}
  

@keyframes dots {
  0%, 20% {
    color: rgba(0,0,0,0);
    text-shadow:
      .25em 0 0 rgba(0,0,0,0),
      .5em 0 0 rgba(0,0,0,0);}
  40% {
    color: white;
    text-shadow:
      .25em 0 0 rgba(0,0,0,0),
      .5em 0 0 rgba(0,0,0,0);}
  60% {
    text-shadow:
      .25em 0 0 white,
      .5em 0 0 rgba(0,0,0,0);}
  80%, 100% {
    text-shadow:
      .25em 0 0 white,
      .5em 0 0 white;}}


/* Layout Concepts */
.main-container
{
	margin-top:2rem;
	padding-bottom: 3rem !important;
}
.white-card
{
	--bs-bg-opacity: 1;
    background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
    --bs-text-opacity: 1;
	border:0;
	padding:1.5rem;
	box-shadow: -5px 5px 20px 5px rgb(50 50 50 / 10%) !important;


}
.blue-card
{
	--bs-bg-opacity: 1;
    background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
    --bs-text-opacity: 1;
    color: rgba(var(--bs-white-rgb), var(--bs-text-opacity));
	padding:1.5rem;
    box-shadow: -5px 5px 20px 5px rgb(50 50 50 / 10%) !important;
	border: 0;
}
.light-blue-card
{
	--bs-bg-opacity: 1;
    background-color: #e7f1f3  !important;
    --bs-text-opacity: 1;
    color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity));
	padding:1.5rem;
    box-shadow: -5px 5px 20px 5px rgb(50 50 50 / 10%) !important;
	border: 0;
}



.grey-card
{
	background-color: #f8f8f8 !important;
	box-shadow: -5px 5px 20px 5px rgb(50 50 50 / 10%) !important;
	border: 0;
	 color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity));
}
.red-card
{
	--bs-bg-opacity: 1;
    background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;
    --bs-text-opacity: 1;
    color: rgba(var(--bs-white-rgb), var(--bs-text-opacity));
	padding:1.5rem ;
	box-shadow: -5px 5px 20px 5px rgb(50 50 50 / 10%) !important;
	border: 0;

}

.white-box
{
    background: #fff;
    border-radius: 5px;
    padding: 40px;
    padding-bottom: 20px !important;
    max-height: 100%;
    height: 91%;
}


.thin-card
{
	padding:0.5rem;
}

.card-spacing
{
	margin-bottom: 3rem;
}
.card-spacing-thin
{
	margin-bottom: 1.5rem ;
}
.card-padding-extra-thin
{
	padding: .5rem ;
}
.card-padding-large
{
	padding: 2.5rem ;
}
.form-bg-light
{
	background: #fff;
    padding: 20px;
    border-radius: 4px;
	--bs-text-opacity: 1;
    color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
	padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
	margin-bottom:0;
}



/* Gold Borders */ 
.premium_member_holder {
    max-width: 100%;
    padding: 3px;
    position: relative;
    z-index: 1;
    background-color: #4158D0;
	border-radius: 7px;
	background-image:linear-gradient(to right, #BF953F, #FCF6BA, #B38728, #FBF5B7, #AA771C);
  
}
.premium_member_holder:before {
  z-index:-1;
  position: absolute;
  content:"";
  width:99%;
  height:100%;
  left:10px;
  top:0;
  background-image:linear-gradient(to right, #BF953F, #FCF6BA, #B38728, #FBF5B7, #AA771C);
  filter: blur(15px);
  
}

.bronze_member_holder {
    max-width: 100%;
    padding: 2px;
    position: relative;
    z-index: 1;
    background-color: #4158D0;
	border-radius: 7px;
	background-image: linear-gradient(0deg, rgba(169, 113, 66, 1) 20%, rgba(169, 104, 49, 1) 40%, rgba(169, 95, 32, 1) 60%, rgba(169, 85, 15, 1) 80%, rgba(169, 77, 0, 1) 100%);
  
}
.bronze_member_holder:before {
  z-index:-1;
  position: absolute;
  content:"";
  width:99%;
  height:100%;
  left:10px;
  top:0;
background-image: linear-gradient(0deg, rgba(169, 113, 66, 1) 20%, rgba(169, 104, 49, 1) 40%, rgba(169, 95, 32, 1) 60%, rgba(169, 85, 15, 1) 80%, rgba(169, 77, 0, 1) 100%);
  filter: blur(5px);
  
}


#BusinessProfile .premium_member:before
{

 
}


/* Special Sizing Classes */ 

.small-1
{
	font-size: 0.7em;
}




/* Image Lightbox */
  #lightbox {
      position:fixed; /* keeps the lightbox window in the current viewport */
      top:0; 
      left:0; 
      width:100%; 
      height:100%; 
      background:url(https://assets.codepen.io/210284/overlay.png) repeat; 
      text-align:center;
	  z-index:999999999999;
    }
    #lightbox p {
      text-align:right; 
      color:#fff; 
      margin-right:20px; 
      font-size:12px; 
    }
    #lightbox img {
      box-shadow:0 0 25px #111;
      max-width:90%;
	  max-height: 90vh;
    }

/* Search Dropdown */
.autocomplete{position:relative;margin-right:5px;display:inline}.autocomplete-container{left:0;width:100%;z-index:2}.autocomplete-container ul{background:none repeat scroll 0 0 #fff;border-top:1px solid #ccc;display:none;margin-top:0;padding-bottom:0;padding-left:0;position:relative;top:-1px;overflow-y:auto;max-height:300px;width:100%;margin-top: 5px;}.autocomplete-container ul li.selected{background:none repeat scroll 0 0 #ebebeb;cursor:pointer}.autocomplete-container ul li:last-child{border-radius:0 0 2px 2px;border-width:0 1px 1px}.autocomplete-container ul li,.autocomplete-container ul .eac-category{background:inherit;border-color:#ccc;border-image:none;border-style:solid;border-width:0 1px;display:block;font-size:16px;font-weight:normal;padding:5px 12px;cursor:pointer}.autocomplete-container ul li.selected{background:none repeat scroll 0 0 #ebebeb}.autocomplete-container ul li div{display:block;font-weight:normal;word-break:break-all}.eac-item span{color:#aaa;font-style:italic;font-size:.5em;width:100%;display:table}.input_margin{margin-top:-16px}



.autocomplete-rel
{
	position: relative;
    margin-right: 5px;
    display: flex;
}
.autocomplete-container-rel
{
	left: 0;
    position: absolute;
    width: 100%;
    z-index: 99999999;
}


/* Header */

.HeaderSearch
{
	max-width:900px;
	width:900px;
}




/* Bread Crumbs */ 
.breadcrumb-item+.breadcrumb-item::before 
{
	content: var(--bs-breadcrumb-divider, ">>") /* rtl: var(--bs-breadcrumb-divider, "-") */;
}






/* Sidebar Content */ 
.spr-mark 
{
    background: url(/images/css_sprites_testimonial.webp) -156px -10px;
}
.spr-mark 
{
    width: 126px;
    height: 126px;
}

.spr-niki 
{
    background: url(/images/css_sprites_testimonial.webp) -156px -156px;
}
.spr-niki 
{
    width: 126px;
    height: 126px;
}
.spr-laura
{
    background: url(/images/css_sprites_testimonial.webp) -10px -156px;
}
.spr-laura {
    width: 126px;
    height: 126px;
}

.spr-james 
{
    background: url(/images/css_sprites_testimonial.webp) -10px -10px;
}
.spr-james 
{
    width: 126px;
    height: 126px;
}



/* ReCaptcha System */ 
.g-recaptcha {
    margin: 0 auto;
    display: table;
}

/* Auto Complete System */
.autocomplete-container-inside {
	left: 0;
	/*position: absolute;*/
	width: 100%;
	z-index: 2
}

.autocomplete-container-inside ul {
	background: none repeat scroll 0 0 #fff;
	border-top: 1px dotted #ccc;
	display: none;
	margin-top: 0;
	margin-bottom:0;
	padding-bottom: 0;
	padding-left: 0;
	position: relative;
	top: -1px;
	overflow-y: auto;
	max-height: 300px;
	width: 100%
}

.autocomplete-container-inside ul li.selected {
	background: none repeat scroll 0 0 #ebebeb;
	cursor: pointer
}

.autocomplete-container-inside ul li:last-child {
	border-radius: 0 0 2px 2px;
	border-width: 0 1px 1px
}

.autocomplete-container-inside ul li,
.autocomplete-container-inside ul .eac-category {
	background: inherit;
	border-color: #ccc;
	border-image: none;
	border-style: solid;
	border-width: 0 1px;
	display: block;
	font-size: 16px;
	font-weight: normal;
	padding: 5px 12px;
	cursor: pointer
}

.autocomplete-container-inside ul li.selected {
	background: none repeat scroll 0 0 #ebebeb
}

.autocomplete-container-inside ul li div {
	display: block;
	font-weight: normal;
	word-break: break-all
}


/* Avatars */ 

.avatar {
    background-color: #f3f1f2;
    width: 50px;
    height: 50px;
    margin: 0 auto;
    border-radius: 50%;
	display: block;
}
.avatar i {
    font-size: 24px;
    line-height: 50px
}


/* Special List Styling */

ul.arrows li:before 
{
    content: "";
    padding-right: 10px;
    font-family: "Font Awesome 6 pro";
    font-weight: 900;

}


/* Search Pages */ 

.premium_member:before {
    content: url(https://d2es7zprsazehl.cloudfront.net/premium-member-small-strong.png);
    position: absolute;
    left: -7px;
    z-index: 9;
    top: 5px;
}
.bronze_member:before {
    content: url(https://d2es7zprsazehl.cloudfront.net/top-rated-bronze-small.png);
    position: absolute;
    left: -6px;
    z-index: 9;
    top: 5px;
}
.verified_member:before {
    content: url(https://d2es7zprsazehl.cloudfront.net/verified_member-small.png);
    position: absolute;
    left: -7px;
    z-index: 9;
    top: 5px;
}

.PlaceListings
{

}



.dynamic-list sup
{
    font-weight: bold;
    color: #961d24;
    top: 0;
}

.fake-link
{
	color: var(--bs-primary); 
	text-decoration: underline;
}
.star-opacity-light
{
	opacity:65%;
}




/* Profile Page */

.profile_claim_business a, 
.profile_claim_business button 
{
    border: 2px solid #fff;
    background: #a4202b;
    color: #fff;
    padding: 13px 35px;
    display: inline-block;
    border-radius: 5px;
    text-transform: uppercase;
    font-weight: 800;
    -webkit-box-shadow: 0 5px 25px 1px rgb(0 0 0 / 45%);
    -moz-box-shadow: 0 5px 25px 1px rgba(0,0,0,.45);
    box-shadow: 0 5px 25px 1px rgb(0 0 0 / 45%);
}
.profile_claim_business_small a, 
.profile_claim_business_small button 
{
	border: 2px solid #fff;
    background: #a4202b;
    color: #fff;
    padding: 10px 20px;
    display: inline-block;
    border-radius: 5px;
    text-transform: uppercase;
    font-weight: 800;
    -webkit-box-shadow: 0 5px 25px 1px rgb(0 0 0 / 45%);
    -moz-box-shadow: 0 5px 25px 1px rgba(0,0,0,.45);
    box-shadow: 0 5px 25px 1px rgb(0 0 0 / 45%);
}
.profile_claim_business_small.greyed-out
{
	opacity:50%;
}
.profile_claim_business_small.greyed-out:hover
{
	opacity:100%;
}


/* Score Card System */ 
.ScoreCard .badge
{
	
	padding:0;
	padding-right:10px;
	font-size:14px;
}
.ScoreCard .badge-low-grey
{
	background-color:#f3f1f2;
}
.ScoreCard .badge-inner
{
	
	padding:5px;
	margin-right:5px;
	
}

.ScoreCard .table-row
{
	display: table-row;
}
.ScoreCard .table-row
{
	display: table-row;
}
.ScoreCard .col-same-width
{
	display: table-cell;
	vertical-align:middle;
}
/* Review System */
#review-form .form-control.is-invalid
{
	border-color: #9a1e26 !important; 
}
#reviewRatingHolder
{
	background-color:white !important;
}
#StarSelector img 
{
    width: 25px;
    margin: 0;
    cursor: pointer;
} 

.ReviewSubtext
{
	bottom: 0;
    font-size: 10px;
	text-transform: none;
	color: #9a1e26;
}

.review .OwnerResponse
{
	background: #f7f7f7;
    padding: 5px 15px;
    border-radius: 5px;
    color: #333333;
}


/*Blogs... ETC */
.single_blog_descption img
{
	max-width:100%;
}
.card.single_blog_content
{
		
   
	border:0;
	padding:.25rem;
	box-shadow: -5px 5px 20px 5px rgb(50 50 50 / 10%) !important;
	
}


.FAQ-header {
    padding: 15px 20px;
    cursor: pointer;
}
.bg-chamber 
{
    background-color: #295e8c;
}
.FAQ-header h4 {
    margin: 0;
    text-align: left;
    color: white;
}

.FAQ-header.collapsed i 
{
	transform: rotate(-90deg);
}
.FAQ-header i {
    float: left;
    font-size: 28px;
    margin-right: 10px;
    margin-top: 2px;
    color: #a6222d;
    vertical-align: middle;
    transition-duration: .5s;
}
.FAQ-body 
{
    padding: 30px 20px;
    padding-top: 20px;
}
.box-shadow {
    -webkit-box-shadow: 0 2px 10px rgb(34 34 34 / 15%);
    box-shadow: 0 2px 10px rgb(34 34 34 / 15%);
}

.RedBox
{
	background:#a6222d;
	color:white;
}
.BlueBox
{
	background:#295e8c;
	color:white;
}
.RedBox h2,
.BlueBox h2
{
	color:white;
}
.RedBox ul li,
.RedBox ul li a,
.BlueBox ul li,
.BlueBox ul li a 
{
	color:white;
}
.advice_recent_box
{
	width:100%;
}
.advice_recent_box .article_caption
{
	padding:10px;
}

.advice_recent_box h3
{
	font-size:18px;
	
}
.advice_recent_box p
{
	font-size:12px;
	color:lightgrey;
}


/* Advice */ 
.advice-index .ul-holder 
{
    box-shadow: none;
    margin: 0;
    padding: 0;
    margin: 0 auto;
    display: table;
}



/* Pagination */
.pagination .page-item
{
	margin-left:0px;
	
}
.pagination .page-item a
{
	color: rgba(var(--bs-dark-rgb)) ;
}
.pagination .prev,
.pagination .next
{
	background-color: #e9ecef;
}
.pagination span.prev,
.pagination span.next
{
	color: rgba(var(--bs-secondary-rgb))!important;
}
.pagination .selected
{
	background-color: rgba(var(--bs-danger-rgb))!important;
	color:white !important;
}



/* Map Systems */
.sticky 
{
    position: -webkit-sticky;
    position: sticky; 
	top: 0;
	z-index:500;
}
.sticky-bottom 
{
    position: -webkit-sticky;
    position: sticky; 
	bottom: 0;
	z-index:500;
}


.PremiumMapIcon
{
	z-index:999999 !important;
}

.maplibregl-control-container,
.mapboxgl-control-container
{
	position: relative;
}
.mapboxgl-popup-content
{
    box-shadow: 0 0.5rem 1rem rgb(0 0 0 / 15%) !important; 
}
.MapSelectorToolBar
{
	padding:5px;
	text-align:center;
	background:#f3f1f2;
	border-radius: 4px !important;
	border: 1px solid #e1dee0 !important;
	
}
	
.MapSelectorToolBar div
{
	padding:3px;
	border-radius: 4px !important;
}

.MapSelectorToolBar a
{
	font-size:16px;
	font-weight:bolder;
	margin:0;
	cursor:pointer;
}
.MapSelectorToolBar .active
{
	background:white;
}


.MapSearchBox
{
	position: absolute;
    top: 25px;
    z-index: 99;
}

.WhiteLinks a
{
	color:#fff !important;
	text-decoration:underline;
	font-weight: 500;
}


.de-enhance-marker
{
	filter: grayscale(1);
	transition:  .25s;
}
.enhance-marker
{
	filter: drop-shadow(2px 3px 20px black);
	transition:  .25s;
	z-index: 999999999999999;
}
.enhance-marker.premium
{
	filter: drop-shadow(2px 3px 30px gold);
	transition:  .25s;
	z-index: 999999999999999;
}


.maplibregl-popup
{
	animation: fadeIn .5s;
}
@keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}


/*Franchise Pages */ 

.franchise-info 
{
    display: inline-block;
}
.franchise-icon {
    height: 91px;
    border: 1px solid #eee;
    width: 140px;
    display: inline-block;
    text-align: center;
    background: #fff;
    padding: 10px 12px;
    vertical-align: middle;
    line-height: 70px;
    border-radius: 5PX;
}
.profile-details {
    padding-left: 30px;
    padding-top: 14px;
}


/* Author Page */
.author-wrap .author-feature-box 
{
    padding: 20px;
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;

    border-top: 2px solid rgba(var(--bs-danger-rgb)) !important;
}
.author-wrap .author-feature-box h1 
{
    font-size: 24px;
    margin: 0;
    line-height: 24px;
    margin-top: 15px;
    text-align: center;
}
.author-wrap .author-feature-box .author-bio .author-role {
    color: #2a2a2a;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
}


/* Award System */


.Award-Source textarea
{
	width:100%;
	outline: none;
    resize: none;
    border: 3px solid #cccccc;
    padding: 5px;
    height: 250px;
	user-select: all;
    color: var(--text);
	font-size:14px;
}




/* Responsive Elements */
.Mobile-Only,.Mobile-Only-Inline,.Tablet-Only
{
	display:none;
}

@media(max-width: 991px)
{
	.Tablet-Hidden
	{
		display:none;
	}
	.Tablet-Only
	{
		display:block;
	}
	
	
	.maplibregl-ctrl
	{
		display:none;
	}
	
}

@media(max-width: 767px)
{
	/* Globals */
	.container
	{
		max-width:100%;
		padding-left:15px;
		padding-right:15px;
	}
	.Mobile-Hidden
	{
		display:none;
	}
	
	.Mobile-Only
	{
		display:block;
	}
	
	
	.Mobile-Center
	{
		text-align:center;
	}
	.Mobile-m-auto
	{
		margin-left:auto;
		margin-right:auto;
		display:table;
	}
	
	/* Nav Bar */ 
	.MainSearchBar
	{
		margin: 0 auto;
	}
	.MainSearchBar .searchbox
	{
		margin-top:5px;
		margin-bottom:5px;
		padding:0 !important;
	}
	
	/*  Home Page */ 
	.input-group .btn.FullWidthRoundedMobile,
	.input-group .FullWidthRoundedMobile,
	.FullWidthRoundedMobile
	{
		width: 100%;
		border-top-left-radius: 25px !important;
		border-top-right-radius: 25px !important;
		border-bottom-left-radius: 25px !important;
		border-bottom-right-radius: 25px !important;
		
		margin-top: 10px;
	}

	/* Geo Search - Matrix*/
	.FeaturedPlacePreview
	{
		/*text-align:center;*/
	}
	
	/* Profile Page */ 
	.profile-CTA .cta 
	{
		font-size: 14px;
	}
	
}

@media(max-width: 600px)
{
	/* Globals */
	
	
	.MainMenuDropDown
	{
		width:100%;
		text-align:center;
		margin-top:10px;
	}
	.MobileHeader
	{
		padding-bottom:0;
	}
	
	
	.verified_member:before, 
	.premium_member:before 
	{
   
		left: -25px;
		z-index: 9;
		top: -4px;
		transform: scale(.75);
	}
	
	
	.pagination .page-item
	{
		font-size:12px;

	}
	
	
}


/* Pricing Table */
.pricing_table i
{
	font-size:20px;
	
	
}

@media (max-width: 400px)
{
	.profile-CTA .cta 
	{
		font-size: 12px;
	}
	
	.pagination .page-item
	{
		font-size:10px;

	}
}