@charset "utf-8";

/*
Apple iPhone 4 & 4S
Apple iPod Touch (4th generation)
Sony Xperia
LG Optimus
Blackberry Storm 3, Torch 9850 & Torch 9860
Nokia Lumia 610, 710 & 800
HTC Desire, Desire Z, Desire S & One V
Samsung Galaxy
*/
@media (max-width: 1024px) {
	html,
	body {font-size: 16px;}
	h1 {font-size: 2.9em;}
	h2 {font-size: 2.1em;}
	h3 {font-size: 2em;}
	h4 {font-size: 1.25em;}
	h5 {font-size: 1.2em;}
	h6 {font-size: 1em;}

	.side-nav {
		display: none;
	}

	.header_mobile {
		position: relative;
		display: block;
		margin-bottom: 80px;
		z-index: 5;
	}

	.header_mobile--fixed {
		position: fixed;
		top: 0px;
		width: 100%;
		left: 0px;
		box-shadow: 1px 0px 10px 2px rgba(0, 0, 0, 0.15);
		background-color: #fff;
		z-index: 10;
	}

	.content_wrap {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		padding: 10px 20px;
	}

	.logo {
		width: 30%;
		margin: 0;
	}

	.hamburger {
		display: block;
		cursor: pointer;
	}

	.side_wrap {
		position: fixed;
		left: -100%;
		top: 80px;
		background-color: #fff;
		width: 100%;
		text-align: center;
		transition: 0.3s;
		box-shadow: 0 10px 27px rgba(0, 0, 0, 0.05);
		z-index: 10;
		background-position: center;
		background-repeat: no-repeat;
		background-size: 500px;
	}

	.side_wrap.active {
		left: 0;
	}

	.mobile_nav_area {
		padding: 10px 0;
		text-align: left;
	}

	.menu_mobile_nav {
		text-align: left;
		list-style: none;
		border: none;
	}

	.menu_mobile_nav li {
		font-size: 10px;
		font-weight: 900;
		text-transform: uppercase;
		line-height: 40px;
		letter-spacing: 2px;
	}

	.menu_mobile_nav li a {
		color: #1F1F1F;
		text-decoration: none;
		padding: 5px;
	}

	.menu_mobile_nav li.current-menu-item a,
	li a:hover {
		color: #C11C1B;
	}

	.main-content {
		width: 100vw;
	}

	.hero-banner__image img {
		height: inherit;
	}

	.hero-banner__content {
		margin-top: -200px;
		padding: 0 0 100px 50px;
	}
	
	.hero-content {
        width: 90%;
    }

	.hero-content h2 {
		font-size: 30px;
		line-height: 40px;
	}

	.hero-overlay {
		width: 500px;
		right: 100px;
	}

	.content-overlay {
		width: 130px;
		height: 330px;
		top: 370px;
	}

	.team-overlay {
		top: -200px;
		left: 100px;
		height: 550px;
	}

	.cta-overlay {
		left: 0;
		height: 370px;
	}

	.team-column__content {
		padding: 20px 15px 20px 15px;
	}

	.team-column__content--team {
		padding: 20px 50px 20px 25px;
	}

	.team-content__title h2 {
		font-size: 30px;
	}

	.team-content__info h3 {
		font-size: 18px;
	}

	.team-button:link,
	.team-button:visited {
		font-size: 14px;
	}

	.page__team-content__title h2 {
		font-size: 30px;
	}

	.page__team-content__info p {
		font-size: 18px;
		line-height: 23px;
		margin-bottom: 10px;
	}

	.single-block__img {
		width: 30%;
	}

	.display-image {
		display: none !important;
	}

	.single-block__content {
		width: 70%;
		padding: 30px 30px 0px 20px;
	}

	.block__content-title {
		margin-top: 10px;
	}

	.block__content-details {
		font-size: 18px;
		line-height: 25px;
	}

	.news-banner {
		display: flex;
		align-items: center;
		min-height: 400px;
		padding: 0 0 0 30px;
	}

	.news-banner__title {
		margin: 0;
	}

	.news-banner__title h3 {
		font-size: 40px;
	}

	.post-banner {
		min-height: 400px;
		background-size: cover;
		background-attachment: inherit;
	}

	.post-banner__heading {
		top: 300px;
		padding-left: 30px;
	}
	
	.post-banner__heading h1 {
		font-size: 40px;
		line-height: 40px;
	}

	.post-content {
		padding: 0px 30px;
		margin: 50px 0;
		width: 100%;
	}

	.post-content__content p {
		font-size: 20px;
	}

	.post-content__details {
		justify-content: space-between;
	}

	.post-page a {
		font-size: 12px;
	}

	.post-contact {
		padding: 20px 20px 70px 20px;
		width: 100%;
	}

	.contact-info {
		margin-right: 200px;
	}

	.contact-info h2 {
		font-size: 30px;
		line-height: 35px;
	}

	.contact-button a {
		padding: 20px 40px;
	}

	.cta-banner__content {
		right: 3%;
		width: 42%;
	}

	.practice-section {
		padding: 50px 0 50px;
	}
	
	.practice-block {
		width: auto;
	}
	
	.practice-block__title {
		margin: 0 0 50px;
		padding: 0 0 0 20px;
	}

	.accordion-header, .service-header {
		font-size: 22px;
	}

	.accordion-wrap {
		padding: 30px 30px 50px;
	}

	.service-overlay {
		display: none;
	}

	.service-overlay-1 {
		display: none;
	}

	.service-overlay-2 {
		display: none;
	}

	.value-head p {
		font-size: 22px;
		padding: 0px 20px;
		line-height: inherit;
	}

	.value-list li {
		font-size: 22px;
		padding: 0 0 10px 10px;
		letter-spacing: 1.2px;
		line-height: inherit;
	}

	.value-list span {
		height: 25px;
		margin: 10px 5px;
	}

	.form-section {
		padding-top: 60px;
	}

	.form-block {
		width: 80%;
	}

	.footer-wrap_column {
		flex-wrap: wrap;
	}

	.footer-column {
		width: 33.3%;
		padding: 0 0 0 40px;
	}
}

/*
Portrait orientation
Sony Xperia
LG Optimus
Blackberry Storm 3, Torch 9850 & Torch 9860
Nokia Lumia 610, 710 & 800
HTC Desire, Desire Z, Desire S & One V
Samsung Galaxy
Very common low res
*/
@media (max-width: 767px) {
	html,
	body {font-size: 16px;}
	h1 {font-size: 2.5em;}
	h2 {font-size: 1.8em;}
	h3 {font-size: 1.6em;}
	h4 {font-size: 1.2em;}
	h5 {font-size: 1.15em;}
	h6 {font-size: 1em;}

	.side-nav {
		display: none;
	}

	.header_mobile {
		position: relative;
		display: block;
		margin-bottom: 65px;
		z-index: 5;
	}

	.header_mobile--fixed {
		position: fixed;
		top: 0px;
		width: 100%;
		left: 0px;
		box-shadow: 1px 0px 10px 2px rgba(0, 0, 0, 0.15);
		background-color: #fff;
		z-index: 10;
	}

	.content_wrap {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		padding: 10px 20px;
	}

	.logo {
		width: 40%;
		margin: 0;
	}

	.hamburger {
		display: block;
		cursor: pointer;
	}

	.side_wrap {
		position: fixed;
		left: -100%;
		top: 65px;
		background-color: #fff;
		width: 100%;
		text-align: center;
		transition: 0.3s;
		box-shadow: 0 10px 27px rgba(0, 0, 0, 0.05);
		z-index: 10;
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
	}

	.side_wrap.active {
		left: 0;
	}

	.mobile_nav_area {
		padding: 10px 0;
		text-align: left;
	}

	.menu_mobile_nav {
		text-align: left;
		list-style: none;
		border: none;
	}

	.menu_mobile_nav li {
		font-size: 10px;
		font-weight: 900;
		text-transform: uppercase;
		line-height: 40px;
		letter-spacing: 2px;
	}

	.menu_mobile_nav li a {
		color: #1F1F1F;
		text-decoration: none;
		padding: 5px;
	}

	.menu_mobile_nav li.current-menu-item a,
	li a:hover {
		color: #C11C1B;
	}

	.main-content {
		width: 100%;
	}

	.hero-banner__image img {
		width: 100%;
		max-width: 100%;
		height: inherit;
	}

	.hero-banner__content {
		display: inline-block;
		margin-top: -100px;
		padding: 0 20px 50px 20px;
	}

	.hero-content {
		width: 100%;
	}

	.hero-content h2 {
		font-size: 20px;
		font-weight: 200;
		line-height: 25px;
	}

	.hero-button:link {
		font-size: 12px;
		color: #fff;
		padding: 15px 20px;
	}

	.hero-overlay {
		width: 399px;
		height: 200px;
		right: 0;
	}

	.content-overlay {
		width: 111px;
		height: 260px;
		top: 186px;
		right: 0px;
	}

	.team-overlay {
		top: -140px;
		left: 0px;
		width: 100%;
		height: 400px;
	}

	.team-column__image {
		width: 33.33%;
		padding: 0;
	}

	.team-column__image img {
		width: initial;
	}

	.team-column__content {
		width: 100vw;
		padding: 30px 20px 70px 20px;
	}

	.team-content__title h2 {
		font-size: 30px;
	}

	.team-content__info h3 {
		font-size: 15px;
	}

	.team-button:link {
		font-size: 12px;
		color: initial;
		padding: 15px 30px;
	}

	.team-column__content--team {
		flex-direction: column;
		align-items: flex-start;
		width: 100vw;
		padding: 50px 30px;
	}

	.team-column__content--display {
		width: 100%;
	}

	.page__team-content__title,
	.page__team-content__info {
		margin-bottom: 20px;
	}

	.page__team-content__info p {
		margin-bottom: 15px;
	}

	.page__team-content__title h2 {
		font-size: 30px;
	}

	.single-block {
		flex-direction: column;
	}

	.single-block__img {
		width: 100%;
		margin: 0px;
	}

	.profile-image {
		display: none !important;
	}

	.display-image {
		display: block !important;
	}

	.single-block__content {
		width: 100%;
		padding: 30px 15px 40px 15px;
	}

	.block__content-link {
		font-size: 16px;
	}

	.block__content-title {
		margin-top: 0;
	}

	.block__content-details {
		font-size: inherit;
	}

	.news-banner {
		display: flex;
		align-items: center;
		min-height: 300px;
		padding: 0 0 0 30px;
	}

	.news-banner__title {
		margin: 0;
	}

	.news-banner__title h3 {
		font-size: 30px;
	}

	.post-block {
		padding: 0 0 50px;
	}

	.post-block__content {
		grid-template-columns: repeat(1, 1fr);
	}

	.post-image {
		width: 100%;
		height: 200px;
	}

	.post-banner {
		min-height: 200px;
		background-size: cover;
		background-attachment: inherit;
	}

	.post-banner__heading {
		top: 150px;
		padding-left: 20px;
	}
	
	.post-banner__heading h1 {
		font-size: 20px;
		line-height: 20px;
	}

	.post-content {
		padding: 0 20px;
		margin: 30px 0;
		width: 100%;
	}

	.post-content__content p {
		font-size: 18px;
	}

	.post-content__details {
		flex-direction: column;
	}

	.post-info {
		display: flex;
		justify-content: space-between;
		margin: 0;
	}

	.post-page {
		width: 100%;
		margin-top: 20px;
	}

	.post-page a {
		font-size: 12px;
	}

	.post-contact {
		padding: 20px 20px 70px 20px;
		width: 100%;
	}

	.contact-info {
		margin-right: 0;
	}

	.contact-info h2 {
		font-size: 20px;
		line-height: 28px;
	}

	.contact-button a {
		padding: 20px 40px;
	}

	.cta-banner {
		min-height: 480px;
	}

	.cta-overlay {
		left: 0;
		width: 200px;
		height: 250px;
	}

	.cta-banner__content {
		right: 0;
		width: 45%;
	}

	.cta-banner__content h3 {
		font-size: 20px;
		line-height: 30px;
	}

	.cta-banner__button {
		margin-top: 20px;
	}

	.cta-button:link {
		font-size: 12px;
		color: #fff;
		padding: 15px 20px;
		border-color: #C11C1B;
	}

	.practice-section {
		padding: 50px 0 50px;
	}
	
	.practice-block {
		width: auto;
	}
	
	.practice-block__title {
		margin: 0 0 20px;
		padding: 0 0 0 20px;
	}
	
	.practice-title {
		font-size: 28px;
	}

	.accordion-header {
	  font-size: 18px;
	  padding: 0 0 10px 10px;
	}
	
	.accordion-content {
	  font-size: 16px;
	}

	.accordion-wrap {
		padding: 10px 20px 20px;
	}

	.service-header {
		font-size: 18px;
		padding: 0 0 0px 10px;
	}

	.service-overlay {
		display: none;
	}

	.service-overlay-1 {
		display: none;
	}

	.service-overlay-2 {
		display: none;
	}

	.value-head p {
		font-size: 18px;
		padding: 0px 20px;
		line-height: inherit;
	}

	.value-list li {
		font-size: 18px;
		padding: 0 0 5px 10px;
		letter-spacing: 1.2px;
		line-height: inherit;
	}

	.value-list span {
		height: 20px;
		margin: 10px 5px;
	}

	.contact-banner__image {
		height: 250px;
	}

	.contact-banner__image img {
		min-height: 250px;
	}

	.form-section {
		padding-top: 50px;
	}

	.form-block {
		width: 100%;
		padding: 0 20px;
		margin: 0;
	}

	.footer-wrap_column {
		flex-wrap: wrap;
		padding-top: 70px;
	}

	.footer-column {
		width: 100%;
		padding: 0 0 20px 40px;
	}

	.footer-column__title {
		margin-bottom: 20px;
	}

	.footer-column__title h2 {
		margin: 0;
	}

	.footer-inner__content {
		line-height: 25px;
	}
}