/**
* Styles / Responsive
*/

@media only screen and (max-width: 1679px )  {

	.wpgmza_map {
		height: 464px !important;
	}

	.states-list {
		padding-left: 25px;
	}

	.states-list h4 {
	    margin: 0 0 15px;
	    padding: 0;
	}

	.states-list ul {
	    margin: 0;
	    padding: 0;
	}

	.states-list li {
	    padding: 3px 0 6px 0;
	    background-size: 15px auto;
	    background-position: 0 4px;
	}

}

@media only screen and (max-width: 1365px )  {

	.hero { 
		height: 600px; 
		padding-top: 86px;
		background-size: auto; 
	}

	.hero.hero-sub {
		padding-top: 136px;
		background-position: 50% 50%;
	}

	.hero .headline h1 {
		margin-bottom: 30px;
		padding: 0;
		font-size: 32px;
	}

	.hero .headline h2 {
		font-size: 60px;
	}

	.hero .headline p {
		font-size: 30px;
		line-height: 34px;
	}

	.hero.hero-sub.center h1 {
		font-size: 45px;
		line-height: 48px;
	}

	.hero.hero-sub.center p {
		font-size: 45px;
		line-height: 48px;
	}

	.wpgmza_map {
		height: 450px !important;
	}

}

@media only screen and (max-width: 1279px )  {

	.wrap { 
		width:980px; 
	}

	.topbar .logo,
	.topbar.small .logo {
		max-width: 160px;
		margin: 37px 0 0;
	}

	.topbar.small .logo {
		margin: 31px 0 0;
	}

	#nav ul { 
		margin-right: 10px;
	}

	#nav ul li a,
	.topbar.small #nav ul li a {
		padding: 39px 8px 41px;
		font-size: 16px;
	}

	.topbar.small #nav ul li a {
		padding: 32px 8px 33px;
	}

	#phone {
		padding-left: 15px;
		font-size: 16px;
	}

	.topbar.small #phone {
	    padding-top: 26px;
	}

	/* Home */

	.states-list li {
		background-position: 0 0;
		font-size: 14px;
		line-height: 20px;
	}

	.states-list ul ul li {
		font-size: 14px;
		line-height: 20px;
	}

	.our-press {
		padding: 67px 0 105px;
	}

	.our-press h2 {
		font-size: 35px;
	}

	.about-atm {
	    padding: 164px 0 78px;
	}

	.about-atm .col-6 {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.about-atm .inner {
		padding-left: 160px;
	}

	.about-atm .inner p {
		font-size: 24px;
	}

	.about-atm .inner p:first-of-type {
		font-size: 17px;
	}

	.about-atm .inner img {
		left: 20px;
		max-width: 100px;
		margin-top: -35px;
	}

	/* Subpages */

	.hero.hero-sub.center {
	    padding-top: 117px;
	    padding-bottom: 94px;
	}

	.hero.hero-sub.center h1 {
		font-size: 35px;
		line-height: 38px;
	}

	.hero.hero-sub.center p {
		font-size: 35px;
		line-height: 38px;
	}

	.pagebody {
    	padding: 60px 0 60px;
    }

    .icons .row {
		margin-right: -15px;
		margin-left: -15px;
	}

	.icons .row > div {
		margin-bottom: 35px;
		padding: 0 15px;
	}

	.icons br {
		display: none;
	}

}

@media only screen and (max-width: 991px )  {

	h1 { 
		font-size:50px; line-height:50px; 
	} 

	h2 { 
		font-size:35px;
	}

	h3 {
		font-size:23px; 
		letter-spacing:-1px; 
	}

	h4{ 
		font-size: 20px; 
		font-weight: 600;
	}

	.wrap {
		width: 768px;
	}

	#nav { 
		display:none; 
	}

	.slicknav_menu { 
		display:block;  
	}

	#phone {
		margin-right: 90px;
		border-left: 0;
	}

	.hero { 
		height: 600px; 
	}

	.hero.hero-sub {
		padding-top: 106px;
	}

	.hero.hero-sub.center {
	    padding-top: 87px;
	    padding-bottom: 64px;
	}

	.hero .headline h1 {
		font-size: 28px;
	}

	.hero .headline h2 {
		font-size: 45px;
	}

	.hero .headline p {
		font-size: 25px;
		line-height: 27px;
	}

	.our-sections #accordion {
	    padding-left: 15px;
	}

	.our-sections .section {
		padding: 0 20px;
	}

	.our-sections .row {
		margin-right: -20px;
		margin-left: -20px;
	}

	.our-sections .col-6 {
		padding: 40px 20px;
	}

	.our-sections .section + .section .row > div:first-child figure {
	    margin-top: 18px;
	}

	.our-sections .section + .section .row > div:first-child::after {
		right: -20px;
	}

	.our-sections .accordion-toggle {
    	padding: 8px 0 5px 35px;
    	font-size: 17px;
    }

	.our-sections h3 {
		font-size: 24px;
	}

	.our-sections .button {
		padding-top: 20px;
	}

	.our-press {
		padding: 37px 0 65px;
	}

	.our-press .btn-scroll-down {
		bottom: 40px;
	}

	.about-atm {
		padding-top: 80px;
		padding-bottom: 50px;
	}

	.about-atm .col-6 {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.about-atm .inner {
		padding-left: 130px;
	}

	.about-atm .inner p {
		font-size: 24px;
	}

	.about-atm .inner p:first-of-type {
		font-size: 17px;
	}

	.about-atm .inner img {
		top: -60px;
		left: 20px;
		max-width: 160px;
		margin-top: 0;
	}

	.entry .header {
		min-height: 80px;
		padding-right: 0;
	}

	.entry .header h2 {
		margin-top: 0;
		font-size: 22px;
	}

	.about-atm .col-6 img {
		top: -75px;
		left: 20px;
		margin-top: 0;
		max-width: 80px;
	}

	.states-list {
		width: 35%;
		padding-right: 15px;
		padding-left: 15px;
	}

	.wpgmaps_directions_outer_div {
	    width: 35% !important;
	    padding: 10px 15px;
	}

	#wpgmaps_directions_notification_1 {
	    left: 15px;
	}

	#directions_panel_1 {
	    width: 35%;
	    padding: 0 15px;
	}

	#wpgmaps_directions_reset_1 {
		width: 35%;
		padding: 8 10px;
	}

	#wpgmaps_directions_reset_1 a {
		font-size: 12px;
	}

	.wpgmza_map {
		width: 65% !important;
	}

	#directions_panel_1 {
		bottom: 40px;
	}

	#directions_panel_1 table tbody tr td, 
	#directions_panel_1 table tr td {
		font-size: 12px;
	}

	.wpgmza_markerbox h1, 
	.wpgmza_markerbox h2, 
	.wpgmza_markerbox h3, 
	.wpgmza_markerbox h4, 
	.wpgmza_markerbox h5, 
	.wpgmza_markerbox h6, 
	.wpgmza_markerbox h7, 
	.wpgmza_markerbox h8, 
	.wpgmza_markerbox strong, 
	.wpgmza_markerbox p, 
	.wpgmza_markerbox br {
		margin: 0 0 2px;
		padding: 0;
		color: #000 !important;
		font-size: 13px;
		line-height: 18px;
	}

	.nice-select {
		height: 40px;
	}

	.nice-select span {
		height: 40px;
		padding: 0 10px;
		font-size: 12px;
		line-height: 38px;
	}

	.nice-select .list {
		top: 39px;
	}

	.nice-select .option {
		padding-right: 10px;
		padding-left: 10px;
		font-size: 12px;
	}

	#wpgmaps_directions_editbox_1 input {
		height: 40px;
		padding: 0 10px;
		font-size: 12px;
	}

	.page-otc .col-1 {
		width: 65%;
	}

	.page-otc .col-2 {
		width: 35%;
		padding-right: 15px;
		padding-left: 30px;
	}

	.page-otc h2 {
		font-size: 26px;
		line-height: 32px;
	}

	.page-otc h3 {
		font-size: 20px;
		line-height: 32px;
	}

	.icons .col-6 {
		width: 100%;
	}

	.site-footer .contact p {
		font-size: 26px;
		line-height: 36px;
	}

	.site-footer .contact p:first-child {
		margin: 0 0 31px;
		font-size: 24px;
	}

	.site-footer .contact p:first-child + p {
		font-size: 50px;
	}

}

@media only screen and (min-width: 768px) and (max-width: 991px ) and (orientation: portrait) {

	.hero {
		height: 550px;
	}

}

@media only screen and (max-width: 767px )  {

	.wrap {
		width: 100%;
	}

	h1 { 
		font-size:35px; 
		line-height:35px;
	} 

	h2 { 
		font-size:30px; 
	} 

	h3 {
		font-size:18px; 
		letter-spacing:0px; 
	}

	h4 { 
		font-size: 17px; 
		line-height:23px; 
		font-weight: 600; 
	}

	.hero:not(.hero-sub) {
		padding-top: 56px;
	    padding-bottom: 40px;
	    height: auto;
	}

	.hero .headline h1 {
		margin-bottom: 20px;
		font-size: 22px;
	}

	.hero .headline h2 {
		font-size: 38px;
	}

	.hero .headline p {
		font-size: 22px;
		line-height: 24px;
	}

	.hero.hero-sub.center h1 {
		font-size: 30px;
		line-height: 33px;
	}

	.hero.hero-sub.center p {
		font-size: 30px;
		line-height: 33px;
	}

	.hero .buttons a,
	.hero .buttons a + a {
		width: 100%;
	}

	.hero .buttons a + a {
		margin: 10px 0 0;
	}

	.hero .buttons a {
    	height: 45px;
    }

    .hero .buttons .text {
	    font-size: 15px;
	}

	.topbar.small #phone {
	    margin-right: 75px;
	}

	.find-us {
	    padding: 5px 0 35px;
	}

	.states-list {
		position: relative;
		top: 0;
		width: 100%;
		padding-top: 25px;
	}

	.states-list li {
		width: 100%;
		float: none;
	}

	.states-list li + li {
		margin: 0 0 5px;
	}

	.wpgmza_map {
		width: 100% !important;
	}

	.our-sections .row > div {
		width: 100%;
		float: left;
	}

	.our-sections .image {
		position: relative;
	}

	.our-sections .section + .section .row > div:first-child::after {
		top: 100%;
		right: 0;
		bottom: -16px;
		left: 0;
		transform: rotate( 90deg );
	}

	.our-sections .bg {
		right: 0;
		background-position: 50% 0;
	}

	.our-sections .faq {
		position: relative;
	}

	.our-sections .faq::after {
		left: 0;
	}

	.latest-press .col-4 {
		width: 100%;
	}

	.our-press h2 {
		font-size: 25px;
		letter-spacing: -1px;
	}

	.latest-press {
		padding: 40px 0 30px;
	}

	.latest-press figure {
		height: 118px;
	}

	.about-atm {
		padding: 0;
	}

	.about-atm .col-6 {
		position: relative;
		width: 100%;
		padding-top: 40px;
		padding-bottom: 0;
		overflow: hidden;
		text-align: center;
	}

	.about-atm .col-6::after {
		left: 0;
		background-color: #349dce;
	}

	.about-atm .col-6:first-child::after {
		right: 0;
		left: 0;
		background-color: #e47931;
		border: 0;
		border-bottom: 1px solid #fff;
	}

	.about-atm .col-6 .inner,
	.about-atm .col-6:first-child .inner {
		width: 450px;
		padding-left: 0;
		margin: auto;
		text-align: left;
	}

	.about-atm .content {
		display: inline-block;
		vertical-align: middle;
		text-align: left;
	}

	.about-atm figure {
		display: inline-block;
		width: 200px;
		margin: 0;
		padding: 0 25px;
		vertical-align: middle;
		text-align: center;
	}

	.about-atm .inner img {
		position: relative;
		top: 0;
		right: 0;
		left: 0;
		display: inline-block;
		margin: 0;
		max-width: 150px;
	}

	.about-atm .col-6 figure {
		margin: 0 0 -40px;
	}

	.our-sections #accordion {
		padding-left: 0;
	}

	.wpgmaps_directions_outer_div {
		position: relative;
		top: 0;
		width: 100% !important;
	}

	#directions_panel_1 {
		position: relative;
		top: 20px;
		width: 100%;
	}

	#wpgmaps_directions_notification_1 {
		display: none !important;
	}

	#wpgmaps_directions_reset_1 {
		position: absolute;
		top: auto;
		bottom: 0;
		width: auto;
		display: block;
	}

	/* Subpages */

	.pagebody,
	.page-contact-us .pagebody {
    	padding: 40px 0 40px;
    }

    .page-otc .col-1 {
		width: 100%;
	}

	.page-otc .col-1::after {
		display: none;
	}

	.page-otc .col-2 {
		width: 100%;
		padding-left: 15px;
	}

	.page-otc .pagecontent {
		padding-top: 34px;
		padding-bottom: 30px;
	}

	.gm-style-iw .btn {
		height: 35px;
		padding: 0 12px;
		font-size: 11px;
	}

	.gm-style-iw .view-listing {
		margin-right: 10px;
	}

	.gm-style-iw .btn .text {
		font-size: 11px;
	}

	/* Site footer */

	.site-footer {
		padding: 50px 0 40px;
	}

	.site-footer .contact p {
		font-size: 20px;
		line-height: 28px;
	}

	.site-footer .contact p:first-child {
		font-size: 22px;
	}

	.site-footer .contact p:first-child + p {
		font-size: 40px;
	}

	.site-footer .get-app p {
	    margin: 0 0 12px;
	    font-size: 14px;
	    letter-spacing: -.2px;
	    line-height: 24px;
	}

	.site-footer .get-app a + a {
		margin-top: 15px;
		margin-left: 0;
	}

	.site-footer .about p {
		font-size: 17px;
	}

}

@media only screen and (max-width: 479px )  {

	.topbar .logo, 
	.topbar.small .logo {
	    max-width: 23px;
	    margin-top: 33px;
	    overflow: hidden;
	}

	.topbar.small .logo {
	    margin-top: 25px;
	}

	.topbar .logo img {
		max-width: 180px;
	}

	.topbar.small #phone {
	    margin-right: 80px;
	}

	.topbar.small #phone {
	    padding-top: 22px;
	}

	.find-us {
	    padding: 32px 0 0;
	}

	.wpgmza_sl_main_div {
		margin-bottom: 5px;
	}

	.about-atm .col-6 .inner,
	.about-atm .col-6:first-child .inner {
		width: 310px;
		padding-left: 0;
		margin: auto;
		text-align: left;
	}

	.about-atm .content {
		display: inline-block;
		vertical-align: middle;
		text-align: left;
	}

	.about-atm figure {
		width: 100px;
		margin: 0 0 -10px;
		vertical-align: middle;
		text-align: center;
	}

	.about-atm .inner {
		padding-bottom: 10px;
	}

	.about-atm .inner img {
		position: relative;
		top: 0;
		right: 20px;
		left: 0;
		display: inline-block;
		margin: 0;
		max-width: 100%;
	}

	.about-atm .inner p {
		margin-bottom: 15px;
		font-size: 19px;
	}

	.about-atm .inner p:first-of-type {
		margin: 0;
		font-size: 15px;
	}

	/* Site footer */

	.site-footer .contact p:first-child + p {
	    font-size: 31px;
	}

	.nav-footer li {
		float: none;
	}

	.nav-footer li + li {
	    margin-left: 0;
	}
	
	.nav-footer li + li::before {
		display: none;
	}

}