/*
 Theme Name:   Ampersand Child
 Template:     ampersand
 Version: 	   2.0.1
*/

/*------------------------
 * GENERAL STYLES
 * ---------------------*/

/* Page formatting */
.title-container {background-color: #005a9c;}
.title-container #page-title {color: #fff; padding: 20px 0;}
img.alignleft {float: left; margin: 0 20px 20px 0;}

/* Typography */
body h1 {font-size: 48px;}
body :is(p, ul li, strong, a) {font-size: 18px;}
#main-content a {color: #005a9c;}

/* Buttons */
#main-content .vc_btn3-container .vc_general {background-color: #005a9c; color: #fff;}
#main-content .vc_btn3-container .vc_general:is(:hover, :focus, :active) {background-color: #398dca;}

/* Element: separator */
.vc_separator.vc_sep_color_grey .vc_sep_line {border-color: #d2d2d2;}

/* Element: blockquote + cite */
cite {display: block; font-size: 14px; font-style: unset; font-weight: bold; margin-bottom: 30px !important; margin-top: 10px;}
cite::before {content: '\2014'; margin-right: 5px;}





/*------------------------
 * HEADER STYLES
 * ---------------------*/
.header #nav-container #logo a img {max-width: 150px;}
.header #nav-container .nav-menu li {border-right: 1px solid #d2d2d2;}
.header #nav-container .nav-menu li:last-of-type {border-right: none;}
.header #nav-container .nav-menu li a {font-size: 16px;}
.header #nav-container .nav-menu :is(.current-menu-item, li:hover, li:focus, li:active) a {color: #0077cf;}





/*------------------------
 * FOOTER STYLES
 * ---------------------*/
.footer h4 {color: #4c4c4c; font-size: 16px; text-transform: uppercase;}
.footer :is(div, p, strong, a) {color: #808080; font-size: 14px;}
.footer a {color: #005a9c;}
.footer #searchform {margin-top: 10px;}
.footer #searchform input {padding: 7px;}
.footer #searchform div #searchsubmit {padding: 7px 0; width: 85px;}
.footer #footer-copyright {border-top-color: #808080;}
.footer #footer-copyright .vc_col-sm-6 {width: 100%;}
.footer #footer-copyright .vc_col-sm-6:last-of-type {display: none;}





/*------------------------
 * HOME STYLES
 * ---------------------*/

/* Testimonials */
#testimonials .ult-carousel-wrapper .slick-slide {height: auto; margin: 0 !important; padding: 10px 20px 20px 20px; text-align: center;}
#testimonials .ult-carousel-wrapper .slick-slide p {color: #fff; font-size: 24px; margin: 0 auto; max-width: 92%; position: relative; width: fit-content;}
#testimonials .ult-carousel-wrapper .slick-slide p::before {color: #fff; content: '\201C'; font-size: 80px; left: -50px; position: absolute; top: 10px; visibility: visible;}





/*------------------------
 * CONTACT STYLES
 * ---------------------*/
#contact-form form {display: flex; flex-wrap: wrap;}
#contact-form form label {margin: 0 10px 20px 10px; width: calc(50% - 20px);}
#contact-form form label.textarea {width: 100%;}
#contact-form form label :is(input, textarea) {width: 100%;}
#contact-form input[type="submit"] {margin: 0 10px 20px 10px; transition: 0.1s ease-in all;}
#contact-form input[type="submit"]:is(:focus, :hover, :active) {background-color: #398dca;}





/*------------------------
 * RESPONSIVE STYLES
 * ---------------------*/

@media only screen and (max-width: 955px) {
	/* Header */
	.header #nav-container #logo {width: 160px;}
	.header #nav-container nav {margin-right: 20px; width: calc(100% - 160px);}
}

@media only screen and (max-width: 850px) {
	/* Footer */
	.footer .vc_row {display: flex; flex-wrap: wrap;}
	.footer .vc_row .vc_col-sm-3 {float: none; margin-bottom: 40px; width: 50%;}
	.footer #searchform div {max-width: 250px;}
}

@media only screen and (max-width: 810px) {
	/* None yet */
}

@media only screen and (max-width: 769px) {
	/* Header */
	.header #nav-container nav {width: calc(100% - 210px);}
	#dropdown .menu-main-menu-container .nav-menu li {background-color: #ededed; border-right: none;}
	#dropdown .menu-main-menu-container .nav-menu li a {color: #000;}
	
	/* Footer */
	.footer .vc_row .vc_col-sm-3 {text-align: left;}
	
	/* Home */
	.home #main-content .vc_btn3-container .vc_general {margin-bottom: 40px;}
	
	/* Inner pages */
	.vc_column-gap-30 {display: flex; flex-wrap: wrap;}
	.vc_column-gap-30 .vc_col-sm-4 {border-top: 1px solid #d2d2d2; order: 2; width: 100%;}
	.vc_column-gap-30 .vc_col-sm-8 {order: 1; width: 100%;}
}

@media only screen and (max-width: 660px) {
	/* Typography */
	body h1 {font-size: 40px;}
	
	/* Home - testimonials */
	#testimonials .ult-carousel-wrapper .slick-slide p::before {left: -40px;}
}

@media only screen and (max-width: 600px) {
	/* None yet */
}

@media only screen and (max-width: 481px) {
	/* Typography */
	body h1 {font-size: 30px;}
	body h2 {font-size: 24px;}
	
	/* Header */
	.header #nav-container #logo {width: 100px;}
	.header #nav-container nav {width: calc(100% - 150px);}
	
	/* Home - testimonials */
	#testimonials .ult-carousel-wrapper .slick-slide p {font-size: 18px;}
	#testimonials .ult-carousel-wrapper .slick-slide p::before {font-size: 60px; left: -30px;}
	
	/* Contact */
	#contact-form form label {margin: 0 0 20px 0; width: 100%;}
	#contact-form input[type="submit"] {margin: 0 0 20px 0;}
}

@media only screen and (max-width: 420px) {
	/* Footer */
	.footer .vc_row .vc_col-sm-3 {text-align: center; width: 100%;}
	.footer .vc_row .vc_col-sm-3:last-of-type {margin-bottom: 0;}
	.footer #searchform div {justify-content: center; margin: 0 auto;}
}

@media only screen and (max-width: 360px) {
	/* Page formatting */
	img.alignleft {display: block; float: none; margin-bottom: 15px !important;}
	
	/* Typography */
	body :is(p, ul li, strong, a) {font-size: 16px;}
}