/* Rochester - Driving School HTML Template */

@media only screen and (max-width: 1400px) {
	.fullwidth-section .section-outer .image-column {
		width: 40%;
	}

	.fullwidth-section .section-outer .right-column {
		width: 60%;
	}

	.course-section .timing-column .column-inner {
		margin-right: 0px;
	}
}

@media only screen and (max-width: 1340px) {

	.page-wrapper {
		overflow: hidden;
	}
}

@media only screen and (max-width: 1140px) {

	.main-header.header-style-three .header-upper .upper-right .main-menu {
		text-align: left;
	}

	.main-header .info-box {
		margin-left: 30px;
	}

	.featured-block .inner-box h3 {
		font-size: 16px;
	}

	.featured-section .column .inner-column:before,
	.featured-section .column .inner-column:after,
	.fullwidth-section-two .outer-box .image-column:before {
		display: none;
	}

	.featured-section .image-column .image {
		margin-top: 0px;
	}

	.price-column .inner-box ul {
		padding: 28px 0px 20px;
	}

	.btn-style-three {
		padding: 9px 20px;
	}

	.price-column .inner-box {
		padding: 0 15px 30px;
	}

	.fullwidth-section-three .outer-box .image-column,
	.course-section .image {
		display: none;
	}

	.fullwidth-section-three .outer-box {
		padding-left: 0px;
	}

	.course-section .content-column .inner-box {
		margin-left: 0px;
	}

	.fullwidth-section .section-outer .image-column {
		width: 100%;
		position: relative;
		height: auto;
	}

	.fullwidth-section .section-outer .image-column .hidden-image {
		display: block;
	}

	.fullwidth-section .section-outer .right-column {
		width: 100%;
	}
}

@media only screen and (min-width: 768px) {

	.main-menu .navigation>li>ul,
	.main-menu .navigation>li>ul>li>ul {
		display: block !important;
		visibility: hidden;
		opacity: 0;
	}
}

@media only screen and (max-width: 1023px) {

	.main-header.light-version {
		position: relative;
		background-color: #222222;
	}

	.fullwidth-section-two .outer-box .left-column {
		width: 100%;
	}

	.main-header .header-upper .upper-column {
		margin-left: 0px;
		padding-right: 10px;
	}

	.sticky-header {
		display: none;
	}

	.main-menu .navigation>li,
	.main-footer .footer-upper-outer .form-column {
		margin: 0px;
	}

	.main-header.light-version .nav-outer {
		padding-right: 50px;
	}

	.main-header.light-version .nav-outer .main-menu .navigation>li {
		margin-right: 25px;
		margin-left: 0px;
	}

	.main-header.light-version .nav-outer .main-menu .navigation>li>a {
		padding-top: 15px;
		padding-bottom: 25px;
	}

	.main-header.light-version .nav-outer {
		width: 100%;
		margin-top: 0px;
	}

	.main-menu .navigation>li>a {
		margin-right: 14px;
	}

	.fullwidth-section-two .outer-box .image-column {
		position: relative;
		background-image: none !important;
	}

	.main-footer .footer-upper-outer .form-column .content,
	.fullwidth-section-two .outer-box .left-column .content {
		max-width: 100%;
	}

	.main-footer .footer-upper-outer .form-column,
	.main-footer .footer-upper-outer .map-column,
	.fullwidth-section-two .outer-box .image-column {
		width: 100%;
	}

	.fullwidth-section-three .outer-box .image-column .image-box,
	.fullwidth-section-two .outer-box .image-column .hidden-image {
		display: block;
	}

	.counter-column.left-aligned:before,
	.counter-column.right-aligned:after,
	.featured-section .image-column,
	.default-section .side-image,
	.main-footer .footer-upper-outer .map-column:before,
	.main-header .info-box {
		display: none;
	}

	.main-header .info-box.search-btn-box {
		display: block;
	}

	.about-section .counter-column.left-aligned,
	.about-section .counter-column.right-aligned,
	.featured-block .inner-box {
		padding-top: 0px;
	}

	.counter-column.left-aligned .fact-counter .countbox-outer .inner,
	.counter-column.right-aligned .fact-counter .countbox-outer .inner {
		text-align: center;
	}

	.fact-counter .countbox-outer .inner:before,
	.counter-column.right-aligned .fact-counter .countbox-outer .inner:before {
		width: 40px;
		left: 50%;
		right: auto;
		margin-left: -20px;
	}

	.fact-counter .countbox-outer .inner:after {
		display: none;
	}

	.featured-section .column .inner-column,
	.main-footer .footer-upper-outer .form-column {
		padding: 40px 20px 30px;
	}

	.testimonial-column .inner-box,
	.contact-section .form-column .inner-box {
		padding-right: 0px;
	}

	.news-style-one .inner-box .lower-content .upper-box,
	.news-style-one .inner-box .lower-content .lower-box {
		padding-left: 0px;
	}

	.news-style-one .inner-box .lower-content .date-box {
		position: relative;
	}

	.main-footer .footer-upper-outer .map-column {
		position: relative;
		height: 300px;
	}

	.fullwidth-section-two .outer-box .left-column {
		padding-right: 15px;
	}

	.header-style-two .main-menu .navigation>li {
		margin-right: 0px;
	}

	.gallery-section.fullwidth-gallery .gallery-block {
		width: 50%;
	}

	.services-block-three .inner-box {
		margin-left: 0px;
	}

	.services-block-three .inner-box {
		padding: 28px 15px 30px 15px;
	}

	.services-block-three .inner-box .image-box {
		left: auto;
		top: 0px;
		margin-top: 0px;
		margin-bottom: 15px;
		position: relative;
	}

	.info-block .inner {
		padding: 0px 35px 22px;
		text-align: center;
	}

	.info-block .inner .icon-box {
		position: relative;
		margin: 0 auto;
		left: 0px;
		margin-bottom: 15px;
		margin-top: -30px;
	}

	.info-block {
		margin-bottom: 65px;
	}

}

@media only screen and (max-width: 767px) {

	.contact-info-box {
		display: block !important;
	}

	.main-header .nav-outer {
		padding-right: 0px;
		padding-left: 0px;
		float: none;
	}

	.main-header .btn-outer {
		border: 0 none;
		right: auto;
		text-align: left;
		top: 0;
		width: auto;
		z-index: 14;
	}

	.main-header .btn-outer .quote-btn {
		margin-top: 8px;
	}

	.header-main-box .nav-outer .search-box-btn {
		top: 15px;
		right: 60px;
		margin-top: 0px;
		z-index: 20;
	}

	.main-header .header-lower {
		position: relative;
		background-color: #333333;
	}

	.main-header.light-version .nav-outer {
		padding-right: 0px;
		width: 100%;
	}

	.main-header.light-version .nav-outer .main-menu {
		margin-top: -90px;
	}

	.main-header.light-version {
		position: relative;
		background-color: #222222;
	}

	.main-header .header-top .top-right ul,
	.main-header .header-top .top-left ul,
	.call-to-action .column {
		text-align: center !important;
	}

	.main-header .header-top .top-right ul li,
	.main-header .header-top .top-left ul li {
		display: inline-block;
		margin: 0px 8px;
		float: none;
	}

	.main-header.header-style-two .top-right ul li {
		margin-left: 0px;
		margin-right: 0px;
	}

	.main-header .header-upper .upper-column {
		margin-left: 0px;
		width: 100%;
	}

	.main-header .header-upper .upper-right {
		padding: 10px 0;
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}

	.main-header .header-upper .upper-column {
		padding-right: 0px;
	}

	.main-header .header-upper .upper-column.info-box {
		width: auto !important;
		display: inline-block !important;
		text-align: center;
		padding: 5px 10px;
		margin: 0;
		border: none;
		float: none;
	}

	.main-header .info-box {
		display: inline-block !important;
		width: auto !important;
		margin: 0 5px !important;
		padding: 0 !important;
		vertical-align: top;
	}

	.main-header .info-box .icon-box {
		display: none !important;
	}

	.main-header .info-box li,
	.main-header .info-box li a {
		font-size: 11px;
		line-height: 1.4;
		white-space: nowrap;
	}

	.main-header .info-box li a {
		font-size: 11px;
	}

	.main-header .main-menu {
		padding-top: 0px;
		width: 100%;
		margin: 0px;
	}

	.main-menu .collapse {
		max-height: 300px;
		overflow: auto;
		float: none;
		width: 100%;
		padding: 0px 0px 0px;
		border: none;
		margin: 0px;
		-ms-border-radius: 3px;
		-moz-border-radius: 3px;
		-webkit-border-radius: 3px;
		-o-border-radius: 3px;
		border-radius: 3px;
	}

	.main-menu .collapse.in,
	.main-menu .collapsing {
		padding: 0px 0px 0px;
		border: none;
		margin: 0px 0px 15px;
		-ms-border-radius: 3px;
		-moz-border-radius: 3px;
		-webkit-border-radius: 3px;
		-o-border-radius: 3px;
		border-radius: 3px;
	}

	.main-menu .navbar-header {
		position: relative;
		float: none;
		display: block;
		text-align: right;
		width: 100%;
		right: 0px;
		z-index: 12;
	}

	.main-menu .navbar-header .navbar-toggle {
		display: inline-block;
		z-index: 7;
		border: 1px solid #005dbe;
		margin: 28px 0px 0px 0px;
		border-radius: 0px;
		background: #005dbe;
	}

	.main-menu .navbar-header .navbar-toggle .icon-bar {
		background: #ffffff;
	}

	.main-menu .navbar-collapse>.navigation {
		float: none !important;
		margin: 0px !important;
		width: 100% !important;
		background: #005dbe;
		border: 1px solid #ffffff;
		border-top: none;
	}

	.main-menu .navbar-collapse>.navigation>li {
		margin: 0px !important;
		float: none !important;
		width: 100%;
	}

	.main-menu .navigation>li>a,
	.main-menu .navigation>li>ul:before {
		border: none;
	}

	.main-menu .navbar-collapse>.navigation>li>a {
		padding: 10px 15px !important;
		border: none !important;
		color: #ffffff !important;
		font-size: 14px !important;
	}

	.main-menu .navigation li.dropdown>a:after,
	.main-menu .navigation>li.dropdown>a:before,
	.main-menu .navigation>li>ul>li>a::before,
	.main-menu .navigation>li>ul>li>ul>li>a::before {
		color: #ffffff !important;
		right: 15px;
		font-size: 16px;
		display: none !important;
	}

	.main-menu .navbar-collapse>.navigation>li>ul,
	.main-menu .navbar-collapse>.navigation>li>ul>li>ul {
		position: relative;
		border: none;
		float: none;
		visibility: visible;
		opacity: 1;
		display: none;
		margin: 0px;
		left: auto !important;
		right: auto !important;
		top: auto !important;
		width: 100%;
		background: #005dbe;
		-webkit-border-radius: 0px;
		-ms-border-radius: 0px;
		-o-border-radius: 0px;
		-moz-border-radius: 0px;
		border-radius: 0px;
		transition: none !important;
		-webkit-transition: none !important;
		-ms-transition: none !important;
		-o-transition: none !important;
		-moz-transition: none !important;
		-webkit-box-shadow: none;
		-ms-box-shadow: none;
		-o-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
	}

	.main-menu .navbar-collapse>.navigation>li>ul,
	.main-menu .navbar-collapse>.navigation>li>ul>li>ul {
		padding: 0px;
	}

	.main-menu .navbar-collapse>.navigation>li,
	.main-menu .navbar-collapse>.navigation>li>ul>li,
	.main-menu .navbar-collapse>.navigation>li>ul>li>ul>li {
		border-top: 1px solid rgba(255, 255, 255, 1) !important;
		opacity: 1 !important;
		top: 0px !important;
		left: 0px !important;
		visibility: visible !important;
	}

	.main-menu .navbar-collapse>.navigation>li:first-child {
		border: none;
	}

	.main-menu .navbar-collapse>.navigation>li>a,
	.main-menu .navbar-collapse>.navigation>li>ul>li>a,
	.main-menu .navbar-collapse>.navigation>li>ul>li>ul>li>a {
		padding: 10px 10px !important;
		line-height: 22px;
		color: #ffffff;
		background: #005dbe;
		text-align: left;
	}

	.main-menu .navbar-collapse>.navigation>li>a:hover,
	.main-menu .navbar-collapse>.navigation>li>a:active,
	.main-menu .navbar-collapse>.navigation>li>a:focus {
		background: #005dbe;
	}

	.main-menu .navbar-collapse>.navigation>li:hover>a,
	.main-menu .navbar-collapse>.navigation>li>ul>li:hover>a,
	.main-menu .navbar-collapse>.navigation>li>ul>li>ul>li:hover>a,
	.main-menu .navbar-collapse>.navigation>li.current>a,
	.main-menu .navbar-collapse>.navigation>li.current-menu-item>a {
		background: #005dbe;
		color: #ffffff !important;
	}

	.main-menu .navbar-collapse>.navigation li.dropdown .dropdown-btn {
		display: block;
	}

	.main-menu .navbar-collapse>.navigation li.dropdown:after,
	.main-menu .navigation>li>ul:before {
		display: none !important;
	}

	.main-slider {
		margin-top: 0px !important;
	}

	.main-slider .tp-caption,
	.main-header .social-block,
	.main-header .info-options {
		display: block !important;
	}

	.main-header .links-nav li {
		margin: 5px 10px;
	}

	.main-header .top-right .links-nav li {
		margin-left: 5px;
	}

	.main-header .search-box-outer .dropdown-menu {
		z-index: 999999;
		overflow: hidden;
	}

	.comments-area .comment .comment-inner,
	.sidebar-page-container .comments-area .comment,
	.sidebar-page-container .comments-area .reply-comment,
	.blog-post .content-column .inner .upper-box .news-time,
	.news-block .inner-box .content-box .upper-box .post-time,
	.testimonial-block .inner .author-info,
	.testimonial-block-two .testimonial-inner,
	.services-block-two .inner-box,
	.course-item .inner,
	.testimonial-block-three .inner {
		padding-left: 0px;
	}

	.comments-area .comment .author-thumb,
	.sidebar-page-container .comments-area .comment-box .author-thumb,
	.testimonial-block .inner .author-info .author-image,
	.testimonial-block-two .testimonial-inner .icon-box,
	.services-block-two .inner-box .service-number,
	.course-item .inner .icon-box,
	.testimonial-block-three .inner .quote-icon {
		position: relative;
	}

	.comments-area .reply-comment,
	.fullwidth-section-three .services-column .owl-dots {
		margin-left: 0px;
	}

	.sec-title-two h2,
	.sec-title h2 {
		font-size: 24px;
	}

	.main-header .other-options {
		left: 0px;
		right: auto;
		z-index: 12;
	}

	.page-title h1 {
		font-size: 28px;
	}

	.main-header .links-nav li a,
	.info-boxed .inner {
		border: 0px;
	}

	.blog-post .content-column .inner .upper-box h3 {
		font-size: 18px;
	}

	.museum-block .inner-box {
		margin-left: 0px;
		padding: 30px;
		text-align: center;
	}

	.museum-block .inner-box .icon-box {
		position: relative;
		left: auto;
		top: auto;
		margin: 0 auto;
	}

	.about-section .column .image .video-popup:before,
	.about-section .column .image .video-popup:after {
		display: none;
	}

	.main-footer .footer-bottom .copyright,
	.main-footer .footer-bottom .social-links-two,
	.featured-block-two .inner-box {
		text-align: center;
	}

	.header-style-two .nav-outer .social-box {
		left: 0px;
		top: 16px;
		right: auto;
	}

	.header-style-two .main-menu .navbar-header .navbar-toggle {
		margin: 12px 0px 12px 0px;
	}

	.fullwidth-section-three .outer-box .services-column,
	.fullwidth-section-three .outer-box .form-column,
	.fullwidth-section-three .outer-box .image-column,
	.main-header .header-upper .upper-right {
		width: 100%;
	}

	.featured-block-two .inner-box .icon-box {
		position: relative;
		right: auto;
		margin: 0 auto;
		margin-bottom: -12px;
	}

	.featured-block-two .inner-box {
		padding: 0px 25px 25px;
	}

	.fun-facts-section .column .inner {
		border-right: 1px solid #ffffff;
		border-top: 0px;
	}

	.fun-facts-section .column .inner::before {
		width: 60px;
		height: 1px;
		left: 0px;
		top: 0px;
	}

	.fun-facts-section .column .inner::after {
		width: 60px;
		height: 1px;
		right: 0px;
		top: 0px;
	}

	.fun-facts-section .column .icon-box {
		left: 50%;
		top: -20px;
		right: auto;
		margin-top: 0px;
		margin-left: -18px;
	}

	.fun-facts-section .column .inner {
		padding: 35px 15px 24px;
	}

	.gallery-section.fullwidth-gallery .gallery-block {
		width: 100%;
	}

	.services-block .inner h3 {
		padding-left: 0px;
	}

	.services-block .inner h3 .icon {
		position: relative;
		display: block;
		text-align: center;
	}

	.services-block .inner {
		text-align: center;
	}

	.main-header .header-top .top-left,
	.main-header .header-top .top-right,
	.main-header .social-icon {
		float: none !important;
		text-align: center;
	}

	.main-header .header-top .contact-number {
		border: 0px;
		margin: 0px;
		padding: 0px;
	}

	.main-header.header-style-two .header-upper .upper-right {
		width: auto;
		top: 30px;
	}

	.page-title {
		background-attachment: scroll;
		background-size: contain;
		min-height: 200px;
		height: auto;
		background-color: #f8f8f8;
	}

	.page-title h2 {
		font-size: 36px;
		padding: 150px 0px 50px;
	}

	.page-title .bread-crumb li {
		font-size: 14px;
	}

	.courses-tabs {
		min-height: 0px;
		padding: 0px;
		height: auto;
	}

	.courses-tabs .buttons-outer {
		position: relative;
		height: auto;
		min-height: 0px;
		width: 100%;
		padding: 70px 20px;
	}

	.courses-tabs .buttons-outer .tab-buttons {
		display: block;
	}

	.fullwidth-section .right-column .content-box {
		display: block;
		padding: 0px 20px 70px;
		min-height: 0px;
		height: auto;
	}

	.fullwidth-section .right-column .content-box .data {
		display: block;
	}

	.team-detail .image-column .image {
		text-align: left;
	}

	.main-header .logo-outer {
		width: 100%;
		text-align: center;
		padding: 20px 0;
	}

	.counter-column.left-aligned:before,
	.counter-column.right-aligned:after,
	.featured-section .image-column,
	.default-section .side-image,
	.main-footer .footer-upper-outer .map-column:before {
		display: none;
	}

	/* Hide contact info in header */
	.main-header .header-upper .upper-right {
		display: none !important;
	}

	/* Hide Kelly Sikkema image */
	.subscription-image {
		display: none !important;
	}

	/* Adjust the subscription content to full width since image is hidden */
	.online-subscription-section .subscription-content {
		width: 100% !important;
	}

	.col-md-8.col-sm-12 {
		width: 100%;
	}

	/* Hide "Pour nous joindre" section by default on all screens */
	.default-section {
		display: none;
	}

	@media only screen and (max-width: 767px) {

		/* Show "Pour nous joindre" section only on mobile */
		.default-section {
			display: block;
		}

		/* Hide contact info in header */
		.main-header .header-upper .upper-right {
			display: none !important;
		}

		/* Hide Kelly Sikkema image */
		.subscription-image {
			display: none !important;
		}

		/* Adjust the subscription content to full width since image is hidden */
		.online-subscription-section .subscription-content {
			width: 100% !important;
		}

		.col-md-8.col-sm-12 {
			width: 100%;
		}
	}
}

@media only screen and (max-width: 599px) {

	.why-us-section .btns-box .btn-style-four {
		padding: 9px 26px;
	}
}

@media only screen and (max-width: 479px) {

	.skill-progress .skill .box-title {
		position: relative;
		top: 0px;
		margin-top: 18px;
	}

	.skill-progress .skill {
		margin-bottom: 5px;
	}

	.skill-progress .skill .inner {
		max-width: 100%;
	}

	.course-section .timing-column .column-inner ul li {
		padding: 10px 15px;
	}

	.comments-area .comment .reply {
		position: relative;
		margin-bottom: 20px;
		margin-top: 10px;
	}

	.main-header .info-box.search-btn-box {
		display: none;
	}

	.main-header .info-box li {
		font-size: 11px;
	}

	.main-header .info-box li a {
		font-size: 11px;
	}

	.main-header .info-box .icon-box {
		font-size: 20px;
	}
}