/*================================================================
	1. BASE STYLES
================================================================*/

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

body {
	font-weight: 300;
}

img {
	max-width: 100%;
	height: auto;
}

/* Typography
----------------------------------------------------------------*/

a {
	-webkit-transition: all .2s ease-in-out;
	moz-transition: all .2s ease-in-out;
	-webkit-transition: all .2s ease-in-out;
	        transition: all .2s ease-in-out;
}
p {
  margin-top: 10px;
  margin-bottom: 15px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: 15px;
  text-transform: uppercase;
}

/* Utility Classes
----------------------------------------------------------------*/

/* Spacing */

.mb-0 {
	margin-bottom: 0;
}
.mb-15 {
	margin-bottom: 15px;
}
.mb-30 {
	margin-bottom: 30px;
}
.mb-45 {
	margin-bottom: 45px;
}
.mb-60 {
	margin-bottom: 60px;
}

/* Colors */

.white {
	color: #fff;
}
.gold {
	color: #eaa523;
}

/* Backgrounds */

.bg-gray {
	background-color: #f1f1f1;
}

/* Bootstrap Overrides
----------------------------------------------------------------*/

.no-gutter > [class*='col-'] {
	padding-right: 0;
	padding-left: 0;
}

/*================================================================
	2. STRUCTURE
================================================================*/

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

header {}

/* Content
----------------------------------------------------------------*/

.content {
	padding: 60px 0;
}
.content-md {
	padding: 60px 0;
}
.content-sm {
	padding: 30px 0;
}

/* Sidebar
----------------------------------------------------------------*/

.sidebar {}

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

footer {
	position: relative;
	padding: 30px 0;
	background-color: #f1f1f1;
}
.angle {
	bottom: 100%;
	position: absolute;
	width: 100%;
	height: 20px;
	left: 0;
}
.angle-svg {
	fill: #f1f1f1;
}
.affiliate-icons {
	width: 52px;
	height: auto;
	margin-right: 7px;
	-webkit-filter: grayscale(50%);
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
}
.affiliate-icons:hover {
	-webkit-filter: grayscale(0%);
}

/*================================================================
	3. Navigation
================================================================*/

.navbar-default {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	margin: 0;
}
.ccm-toolbar-visible .navbar-default {
	top: 48px;
}
.navbar-brand {
	position: relative;
	z-index: 100;
	padding: 10px 15px;
}
.navbar-brand img {
	height: 40px;
	width: 139px;
}
.navbar-default .navbar-collapse {
	position: relative;
	z-index: 99;
	background: #fff;
	border-bottom: 1px solid #ccc;
}
.navbar-default  .navbar-nav>li>a {
	position: relative;
	display: block;
	padding: 5px 15px;
	color: #333;
	font-size: 14px;
	text-transform: uppercase;
}
.navbar-default .navbar-nav .open .dropdown-menu>li>a {
	color: #333;
	background: none;
}
.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover, .navbar-default .navbar-nav .open .dropdown-menu>li.active >a {
	color: #f0a523;
}
.navbar-default .navbar-nav .dropdown-menu {
	margin: 0;
	padding: 0;
  background: #f1f1f1;
	box-shadow: none;
	border: 0;
}
.navbar-default .navbar-nav .dropdown-menu>li>a {
	padding: 3px 15px;
	color: #fff;
	font-size: 14px;
	font-weight: 300;
	text-transform: uppercase;
}
.navbar-default .navbar-nav>li:last-of-type a {
	margin: 10px 15px;
	padding: 0 15px;
	background: #f0a523;
	color: #fff;
}
.navbar-default .navbar-nav>li:last-of-type a:hover {
	background-color: #d28a0e;
}

.logo {
	width: auto;
	height: 40px;
}

/* Breadcrumb */

.breadcrumb {
	padding: 10px 0;
	margin-bottom: 0;
	background-color: transparent;
}

/*================================================================
	4. FORMS AND BUTTONS
================================================================*/

.btn {
	border: 0;
	text-transform: uppercase;
	white-space: inherit;
}
.btn-large {
	padding: 15px 30px;
}
.form-control {
	padding: 10px;
}

/*================================================================
	5. BLOCK SPECIFIC STYLES
================================================================*/

.social-icons a {
	display: inline-block;
	width: 50px;
	height: 50px;
	margin-right: 5px;
	background: #f0a523;
	background: rgba(240,165,35,.5);
	color: #fff;
	font-size: 30px;
	line-height: 50px;
	text-align: center;
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
}
.social-icons a:hover {
	background: #f0a523;
}

/* Service Icons */

.service-icons {
	position: relative;
}
.service-icons:after {
	content: '';
	display: block;
	clear: both;
}
.service-icon {
	display: block;
	float: left;
	width: 50%;
	text-align: center;
}
.service-icon img {
	height: 80px;
	width: auto;
	margin-bottom: 15px;
	transform: scale(.9);
	transition: all .2s ease;
}
.service-icon:hover img {
	transform: scale(1);
}
.service-icon h2 {
	font-size: 19px;
}

/* Meet Us */

.meet-dj {
	margin-top: 60px;
	text-align: center;
}
.meet-dj a {
	display: block;
	margin-bottom: 60px;
}
.bio-photo {
	margin-bottom: 15px;
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: 100% 100%;
}
.bio-photo img {
	-webkit-transition: all .1s ease;
	transition: all .1s ease;
}
.bio-photo:hover img {
	opacity: 0;
}

/* Pricing Tables */
.panel-default {
	text-align: center;
}
.panel-default>.panel-heading {
	position: relative;
	overflow: hidden;
	color: #fff;
	font-weight: 400;
	text-transform: uppercase;
}
.panel-default>.panel-heading:after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: -200px;
  -webkit-transform: skewX(-20deg);
  -ms-transform: skewX(-20deg);
  transform: skewX(-20deg);
  background-image: -webkit-linear-gradient(left, transparent, rgba(255,255,255,0.1), transparent);
  background-image: linear-gradient(to right, transparent, rgba(255,255,255,0.1), transparent);
}
.panel-default:hover>.panel-heading:after {
  -webkit-animation: shine 1s ease;
  -ms-animation: shine 1s ease;
  animation: shine 1s ease;
}
@-webkit-keyframes shine {
  100% {
    left: 200px;
  }
}
@keyframes shine {
  100% {
    left: 200px;
  }
}
.panel-default>.panel-heading.pearl {
	background: #aca593 url('../img/geometric-overlay.png') no-repeat 50% 65%;
}
.panel-default>.panel-heading.sapphire {
	background: #2d5da1 url('../img/geometric-overlay.png') no-repeat 50% 65%;
}
.panel-default>.panel-heading.ruby {
	background: #aa4069 url('../img/geometric-overlay.png') no-repeat 50% 65%;
}
.panel-default>.panel-heading.diamond {
	background: #a1a1a1 url('../img/geometric-overlay.png') no-repeat 50% 65%;
}
.panel-default>.panel-heading.gold {
	background: #ffd700 url('../img/geometric-overlay.png') no-repeat 50% 65%;
	color: #333;
}
.panel-default>.panel-heading.platinum {
	background: #e5e4e2 url('../img/geometric-overlay.png') no-repeat 50% 65%;
	color: #333;
}

/* Testimonial Slider */

.testimonial-slider {
	text-align: center;
}
.testimonial-name, .testimonial-title {
	display: block;
}
.testimonial-name {
	font-weight: 700;
}

/* Awards */

.awards {
	text-align: center;
}
.award {
	margin-bottom: 30px;
}

/*================================================================
	6. PAGE SPECIFIC STYLES
================================================================*/

/* Page Types
----------------------------------------------------------------*/

.page-template-home .jumbotron {
	padding: 150px 0 90px 0;
	color: #fff;
}

/* Individual Pages
----------------------------------------------------------------*/

/* Blog */

.blog-listing .ccm-block-page-list-thumbnail {
	position: relative;
	margin-bottom: 15px;
	overflow: hidden;
}
.blog-listing .ccm-block-page-list-thumbnail:after {
	position: absolute;
	content: '\f002';
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(0,0,0,.5);
	color: #fff;
	font-family: 'FontAwesome';
	font-size: 22px;
	opacity: 0;
	transition: all .3s ease;
}
.blog-listing .ccm-block-page-list-thumbnail img {
	transform: scale(1);
	transition: all .3s ease;
}
.blog-listing .ccm-block-page-list-title h3 {
	margin-bottom: 0;
}
.blog-listing .ccm-block-page-list-date, .blog-listing .ccm-block-page-list-description  {
	color: #4e4e4e;
}
.blog-listing .ccm-block-page-list-date {
	margin-bottom: 15px;
	font-size: 16px;
	font-style: italic;
	font-weight: 300;
}
.blog-listing .ccm-block-page-list-page-entry:hover .ccm-block-page-list-thumbnail:after {
	opacity: 1;
}
.blog-listing .ccm-block-page-list-page-entry:hover .ccm-block-page-list-thumbnail img {
	transform: scale(1.1);
}

/*================================================================
	7. MISCELLANOUS
================================================================*/

.jumbotron {
	margin: 0;
	padding: 200px 0 0 0;
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: cover;
}
.jumbotron .page-title {
	display: inline-block;
	margin: 0;
	padding: 7px 15px;
	background: #ffffff;
	font-size: 28px;
	font-weight: 300;
}
.jumbotron h1 {
	margin-bottom: 30px;
	font-weight: 700;
}
.jumbotron .btn {
	display: block;
	width: auto;
	margin: 5px 0;
	background: rgba(240,165,36,.8);
}
.jumbotron .btn:hover {
	background: rgba(240,165,36,1);
}

.narrow {
	max-width: 800px;
	margin: 0 auto;
}

.wow {
	visibility: hidden;
}

.featured-award {
	padding: 15px 0;
}

/*================================================================
	8. MEDIA QUERIES
================================================================*/

/* Extra small devices (phones, less than 768px) */
/* No media query since this is the default in Bootstrap */

@media (min-width: 768px) and (max-width: 992px) {
	.navbar .container {
		width: 100%;
	}
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
	.content {
		padding: 90px 0;
	}
	.jumbotron h1 {
		font-size: 42px;
	}
	.service-icons .ccm-block-page-list-page-entry {
		float: left;
		width: 50%;
	}
	.featured-awards {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.featured-award {
		padding: 0 15px;
	}
}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) {
	.navbar-default .navbar-collapse {
		background: transparent;
		border: 0;
	}
	.navbar-default .navbar-nav {
  	margin: 10px 0;
  }
	.navbar-default .navbar-nav>li>a {
		padding: 0 10px;
		color: #fff;
		line-height: 40px;
	}
	.navbar-default .navbar-nav>li:last-of-type a:last-of-type {
    margin: 0 10px;
    padding: 0 10px;
  }
  .navbar-default .navbar-nav>.open>a, .navbar-default .navbar-nav>.open>a:hover, .navbar-default .navbar-nav>.open>a:focus {
    background-color: #fff;
    color: #333;
	}
	.navbar-default .navbar-nav .dropdown-menu {
    left: 0;
    right: auto;
    padding: 10px 0;
    background: #fff;
	}
	.jumbotron .btn {
		display: inline-block;
		width: 280px;
		margin: 0 5px;
	}
	.service-icon {
		width: 25%;
	}
	.page-template-home .service-icon {
		width: 20%;
	}
}

/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
	.navbar-default .navbar-nav>li>a {
		padding: 0 15px;
	}
	.navbar-default .navbar-nav>li:last-of-type a:last-of-type {
    margin: 0 15px;
    padding: 0 15px;
  }
}



