@charset "utf-8";
/* CSS Document */

/* TOYOTA DEMO 05 *************************************/
footer .inner_content {
	padding: 0 3%;
	width: 100%;
	max-width: 2000px;
	display: block;
	box-sizing: border-box;
	line-height: 1.2em;
}

footer h1 {
	line-height: 1.25em;
}

footer a {
	color: inherit;
	text-decoration: none;
}

/* FOOTER INFO HOME SECTION - HOME PAGE STYLING *****************************************/
#custom_page_1 .footer_info_section > .inner_content > .us_seo_text,
#custom_page_1 .footer_info_section > .inner_content > .canadian_seo_text {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

#custom_page_1 .footer_info_section {
	padding: 0;
}

#custom_page_1 .footer_info_section > .inner_content {
	padding: 2%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	background-color: #fff;
	color: #000;
}

#custom_page_1 .footer_info_section a {
	color: #000;
	text-decoration: underline;
}

#custom_page_1 .footer_info_section > .inner_content br {
	display: none;
}

#custom_page_1 .footer_info_section > .inner_content span {
	width: 48%;
}

#custom_page_1 .footer_info_section > .inner_content span > span {
	display: inline-block;
	width: 100%;
	box-sizing: border-box;
}

#custom_page_1 .footer_info_section > .inner_content span > span > h2 {
	margin-bottom: 1em;
	font-weight: bold;
}

#custom_page_1 .footer_info_section > .inner_content span > span > p {
	line-height: 1.2em;
}

#custom_page_1 .footer_info_section > .inner_content span > img {
	width: 100%;
	height: auto;
	object-fit: contain;
	aspect-ratio: auto 902/451;
	border-radius: 1em;
	overflow: hidden;
}

#custom_page_1 .footer_info_section > .inner_content .footer_seo_mobile_image {
	display: none;
}

/* FOOTER INFO SECTION *****************************************/
.footer_info_section {
	margin: 0 auto;
	padding: 2em 0;
	width: 100%;
	max-width: 2000px;
	clear: both;
	background-color: #fff;
	color: #000;
	box-sizing: border-box;
	font-size: 0.85em;
}

.footer_info_section .inner_content {
	padding: 0 2%;
	margin: 0 auto;
}

.footer_info_section h1 {
	width: 100%;
	font-size: 1.25em;
	line-height: 1.25em;
}

.footer_info_section h2 {
	width: 100%;
	margin-bottom: 1em;
	font-size: 1.2em;
	font-weight: normal;
	line-height: 1.25em;
}

.footer_info_section h3 {
	width: 100%;
	margin-bottom: 0.25em;
	font-size: 1em;
	font-weight: normal;
	line-height: 1.25em;
}

.footer_info_section p {
	margin-bottom: 1em;
}

.footer_info_section .seo_site_makes_models > br {
	display: none;
}

.footer_info_section .inner_content ul.cities {
	width: 100%;
	display: inline-block;
}

/* FOOTER DEALER SECTION **********************************************/
.footer_dealer_section .inner_content {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	background-color: #F2F2F2;
	padding: 3% 2% 0;
}

/*.footer_address_hours_section {
	margin: 0 auto;
	padding: 2% 0;
	background-color: #fff;
	color: #000;
	font-size: 0.9em;
}

#footer .footer_address_hours_section .inner_content {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
}*/

.footer_address_hours_column {
	padding: 2%;
	border-radius: 1em;
	box-sizing: border-box;
	width: 25%;
	background-color: #fff;
	text-align: left;
}

.footer_address_hours_column:first-child {
	padding: 0;
	width: 16%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	background-color: transparent;
}

#footer .footer_address_hours_column .footer_col {
	padding: 0;
	width: 100%;
	border: none;
	font-size: inherit;
}

.footer_address_hours_title {
	display: block;
	/*text-transform: uppercase;*/
	font-size: 1.25em;
	font-weight: bold;
}

.footer_address_hours_address {
	margin: 1em 0;
}

.footer_address_hours_column li {
	list-style: none;
}

.footer_address_hours_column li.parent {
	position: relative;
	/*text-transform: uppercase;*/
	font-size: 1.25em;
	font-weight: bold;
}

.footer_address_hours_column li .subnav {
	margin-top: 1em;
	text-transform: capitalize;
	font-size: 0.8em;
	font-weight: normal;
}

.footer_address_hours_column li .subnav .sub_item > .hrs {
	text-transform: lowercase;
}

.footer_address_hours_social {
	margin: 1em 0 0 0;
}

.footer_address_hours_social a svg {
	margin: 0 1em 0 0;
	width: 1.5em;
	height: 1.5em;
	fill: #000;
}

/* FOOTER BOTTOM SECTION **********************************************/
.footer_bottom {
	box-sizing: border-box;
	font-size: 1em;
}

#footer .footer_bottom .inner_content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background-color: #F2F2F2;
	padding: 4% 2%;
}

.footer_bottom_left {
	width: 49%;
}

.footer_bottom_right {
	width: 49%;
	text-align: right;
}

.footer_bottom_right > span {
	display: block;
}	



/* RESPONSIVE MEDIA QUERIES *******************************************************/
/* SMALLER THAN 1350px */
@media only screen and (max-width: 1350px) {
	/* FOOTER INFO SECTION *****************************************************/
	#custom_page_1 .footer_info_section > .inner_content span {
		width: 100%;
	}
	
	#custom_page_1 .footer_info_section > .inner_content span > span {
		padding: 4% 0;
	}
	
	#custom_page_1 .footer_info_section > .inner_content .footer_seo_desktop_image {
		display: none;
	}
	
	#custom_page_1 .footer_info_section > .inner_content .footer_seo_mobile_image {
		display: block;
	}
	
	/* FOOTER DEALER INFO */	
	.footer_dealer_section {
		font-size: 0.75em;
	}
	
	/* FOOTER BOTTOM */	
	.footer_bottom {
		font-size: 0.75em;
	}
}

/* SMALLER THAN 960px */
@media only screen and (max-width: 960px) {
	/* FOOTER INFO SECTION *****************************************************/
	..footer_info_section {
		font-size: 0.75em;
	}
	
	/* FOOTER DEALER SECTION *****************************************************/
	.footer_dealer_section {
		font-size: 1em;
	}
	
	.footer_dealer_section .inner_content {
		flex-wrap: wrap;
	}
	
	.footer_address_hours_column:first-child {
		width: 100%;
		text-align: center;
	}
	
	.footer_address_hours_column li.parent {
		margin: 0.8em 0 0 0;
		cursor: pointer;
	}
	
	.footer_address_hours_column li .subnav {
		height: 0;
		overflow: hidden;
		transition: all 0.5s;
	}
	
	.footer_address_hours_column li.parent.active .subnav {
		height: 10em;
	}	
	
	.footer_address_hours_column {
		margin: 0.5em 0;
		padding: 1em 2em;
		width: 100%;
		border-radius: 0.5em;
		box-sizing: border-box;
	}
	
	.footer_address_hours_column li.parent:after {		
		content: '';
		position: absolute;
		top: -0.5em;
		right: 0;
		display: block;
		width: 1.5em;
		height: 1.5em;
		border: 2px solid #000;
		border-radius: 1.5em;
		background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle%3EArrow%3C/title%3E%3Cg stroke-width='0'%3E%3C/g%3E%3Cg stroke-linecap='round' stroke-linejoin='round'%3E%3C/g%3E%3Cg%3E%3Cpath d='M10 7L15 12L10 17' stroke='%23000000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
		background-position: center center;
		background-repeat: no-repeat;
		background-size: contain;
		transition: all 0.5s;
	}
	
	.footer_address_hours_column li.parent.active::after {
		content: '';
		transform: rotate(90deg);
	}
	
	/* FOOTER BOTTOM */
	.footer_bottom {
		font-size: 1em;
	}
	
	#footer .footer_bottom .inner_content {
		flex-wrap: wrap;
	}
	
	.footer_bottom_left,
	.footer_bottom_middle,
	.footer_bottom_right {
		width: 100%;
		margin: 0.5em 0;
		text-align: center;
	}
	
	.footer_bottom_middle a svg {
		margin: 0 0.5em;
	}
}

/* SMALLER THAN 768px */
@media only screen and (max-width: 768px) {
	/* FOOTER DEALER INFO SECTION */
	
	
	/* FOOTER BOTTOM */
	.footer_bottom {
		font-size: 0.8em;
	}
	
	.footer_bottom_middle a svg {
		width: 2em;
		height: 2em;
	}
}

