@media (max-width: 1224px) {
	.container {
		width: 100%;
		padding: 0 25px;
	}

	.strategy-container {
		padding: 25px 0 0;
	}

	.contact-faqs .container {
		padding: 25px;
	}

	.main-menu ul li {
		padding: 0 0 50px 25px;
	}
	.main-menu ul li:first-child {
		padding-left: 0;
	}
	.main-menu .sub-menu {
		top: 75px;
		padding: 0 75px 50px;
	}

	.filter-type {
		width: 200px;
	}
}

@media (max-width: 1024px) {
	body {
		font-size: 20px;
		line-height: 34px;
		/*padding-top: 150px;*/
	}

	body > .container,
	body > .our-clients {
		padding-top: 125px;
	}

	body > .container-m {
		padding-top: 75px;
	}

	h1,
	h2 {
		font-size: 60px;
		line-height: 72px;
		margin-bottom: 25px;
	}

	h3,
	.blog-post-heading h1 {
		font-size: 40px;
		line-height: 50px;
		margin-bottom: 25px;
	}

	h4 {
		font-size: 20px;
		line-height: 28px;
	}

	h5 {
		font-size: 24px;
		line-height: 34px;
		margin-bottom: 25px;
	}

	header {
		padding: 20px 0;
	}

	.logo img {
		width: 123px;
	}

	.burger-menu {
		display: block;
		position: absolute;
		right: 25px;
		top: 4px;
	}

	.burger-menu .closer {
		display: none;
	}

	.burger-menu.open .opener {
		display: none;
	}

	.burger-menu.open .closer {
		display: inline-block;
	}

	.main-menu {
		display: none;
		left: 0;
		top: 100%;
		position: absolute;
		padding: 24px;
		background: #fff;
		width: 100%;
	}

	.main-menu.displaying {
		height: calc(100vh - 100px);
		overflow: auto;
		display: block;
	}

	.main-menu ul li {
		display: block;
		padding: 25px 0;
		font-size: 24px;
		line-height: 34px;
		border-bottom: 1px solid #D4D3D3;
	}

	.main-menu ul li a {
		display: inline-block;
	}

	.main-menu > .menu-main-container > ul > li.current_page_item > a,
	.main-menu > .menu-main-container > ul > li.current_page_ancestor > a {
		border-bottom: none;
	}

	.main-menu .menu > li:first-child {
		border-top: 1px solid #D4D3D3;
	}

	.main-menu .menu > li.visiting > a {
		color: #013FFF;
	}

	.main-menu .menu > li .sub-menu {
		width: 100%;
		padding: 25px 0 0;
		position: static;
		background: transparent;
	}

	.main-menu .sub-menu li.empty-slot,
	.main-menu ul li:hover .sub-menu {
		display: none;
	}

	.main-menu .menu > li.visiting .sub-menu {
		display: block;
		z-index: 8;
	}

	.main-menu .sub-menu li {
		float: none;
		width: 100%;
		max-width: 100%;
		padding: 25px 0 0;
		border-bottom: none;
		background: url('img/arrow-right.svg') no-repeat right 40px;
	}

	.menu-item-description {
		color: #413D3D;
		font-size: 16px;
		line-height: 26px;
	}

	.main-menu .menu-item-has-children {
		position: relative;
	}

	.main-menu .menu-item-has-children:after {
		position: absolute;
		right: 0;
		top: 40px;
		width: 12px;
		height: 8px;
		content: " ";
		background: url('img/arrow-bottom.svg') no-repeat center;
	}

	.main-menu .menu-item-has-children.visiting:after {
		background: url('img/arrow-up.svg') no-repeat center;
	}

	/*.logged-in .filters-container.fixed.secondary {
		top: 146px;
	}*/

	.approach-point .three-quarters {
		padding-bottom: 50px;
	}

	.featured-image {
		padding: 0;
		margin: 50px 0 0;
	}

	.featured-image img {
		display: block;
	}
}

@media (max-width: 963px) {
	.quarter {
		width: 49%;
		float: left;
		margin-left: 2%;
	}
	.quarter:nth-child(2n+1) {
		margin-left: 0;
	}

	.intro {
		padding: 125px 0 75px;
	}

	.row.project-journey .quarter {
		margin-bottom: 50px;
	}

	.cs-details .quarter {
		width: 32%;
		margin-bottom: 50px;
	}
	.cs-details .three-quarters {
		width: 68%;
	}

	.cs-point {
		padding-bottom: 50px;
	}

	.cs-point-no {
		display: inline-block;
	}

	.cs-icon {
		max-height: 100px;
	}

	.contact-reasons .container {
		padding-left: 10%;
	}

	.service-finder {
		padding-top: 50px;
	}

	.service-screen.screen-1 .questions li {
		width: 33%;
	}

	.questions li {
		min-height: 0;
		margin-bottom: 24px;
	}

	.client-popup {
		width: 100%;
		-webkit-transform: translate(0, 0);
		-moz-transform: translate(0, 0);
		transform: translate(0, 0);
		z-index: 999;
	}

	.logged-in .client-popup {
		top: 32px;
	}

	.client-popup .row {
		margin-bottom: 50px;
	}

	.dual-column {
		grid-template-columns: 1fr;
	}

	.points-sidebar {
		display: none !important;
	}

	.apply-form .quarter,
	.apply-form .quarter:nth-child(2n+1) {
		width: 25%;
	}
}

@media (max-width: 768px) {
	h1,
	h2,
	.contact-content h2 {
		font-size: 40px;
		line-height: 52px;
		margin-bottom: 20px;
	}

	h3,
	.blog-post-heading h1
	.contact-content h3 {
		font-size: 36px;
		line-height: 42px;
		margin-bottom: 15px;
	}

	h4,
	.strategy-tab-title {
		font-size: 24px;
		line-height: 32px;
	}

	h5 {
		font-size: 21px;
		font-weight: 600;
		line-height: 24px;
		margin-bottom: 10px;
	}

	.deliverable-title {
		font-size: 24px;
		line-height: 32px;
	}

	.half,
	.third,
	.two-thirds,
	.quarter,
	.three-quarters,
	.cs-details .quarter,
	.cs-details .three-quarters {
		width: 100%;
		float: none;
		margin-left: 0;
	}

	.member .half,
	.structure .half {
		float: left;
		width: 50%;
	}

	body > .container,
	body > .our-clients {
		padding-top: 75px;
	}

	body > .container-m {
		padding-top: 50px;
	}

	body > .container-s {
		padding: 0 25px;
	}

	.standard-box {
		padding: 50px 25px;
	}

	.standard-box .container {
		padding: 0;
	}

	.blog-post-date {
		margin-bottom: 7px;
	}

	.blog-post-author {
		font-size: 18px;
	}
	
	.author-archive-heading {
		padding-bottom: 50px;
	}

	.author-archive-intro {
		margin-top: 25px;
	}

	.author-archive-meta {
		padding-right: 0;
		margin-bottom: 40px;
	}

	.author-post-listing,
	.author-archive-no-posts {
		margin-top: 50px;
	}

	.author-post-card.has-thumbnail h5,
	.author-post-card.has-thumbnail .post-excerpt {
		padding-right: 10%;
	}

	.author-pagination ul {
		gap: 8px;
	}

	.contact-content h2 {
		margin-bottom: 50px;
	}

	.third.empty,
	.half.empty {
		display: none;
	}
	
	.half.strategy:first-child {
		margin-bottom: 50px;
	}

	.large-text {
		font-size: 48px;
		line-height: 54px;
		margin-bottom: 12px;
	}

	.larger-text {
		font-size: 21px;
	}

	.single-post-content h2 {
		font-size: 32px;
		line-height: 40px;
		margin-bottom: 25px;
	}

	.code-example__header {
		flex-wrap: wrap;
		padding: 14px 16px;
	}

	.code-example__copy {
		min-height: 44px;
		min-width: 72px;
	}

	.code-example__pre {
		padding: 16px;
	}

	.code-example__pre code,
	.code-example__code {
		font-size: 13px;
	}

	.code-example__toggle-row {
		padding: 12px 16px 16px;
	}

	.trustees.standard-box {
		padding: 50px 0;
	}

	.trustees.standard-box .container {
		padding: 0 25px;
	}

	#strategies p {
		line-height: 1.4;
	}

	.strategy-container {
		font-size: 17px;
	}

	.strategy-tab-title {
		padding-top: 30px;
	}

	.strategy-title {
		margin: 20px 0;
	}

	.timing {
		background: url(img/clock.svg) no-repeat 15px center #fff;
		padding: 12px 12px 12px 48px;
		margin-top: 30px;
		line-height: 1.25;
	}

	.finder-filtering a {
		margin-bottom: 20px;
		display: inline-block;
	}

	.screen-switcher {
		width: 100%;
		position: static;
		text-align: center;
	}

	.service-heading h1 {
		font-size: 36px;
		line-height: 42px;
		margin-bottom: 15px;
	}

	.service-screen.screen-1 .questions li {
		width: 50%;
	}

	.approach-heading h1 {
		font-size: 36px;
		line-height: 42px;
	}

	.approach h4 {
		min-height: 0;
		padding-right: 0;
	}

	.outcomes-grid .approach {
		flex-direction: column;
		gap: 20px;
	}

	.outcomes-grid .approach-media {
		flex: none;
		max-width: none;
	}

	.approach-points {
		padding: 25px;
	}

	.approach-points .bt-box {
		margin-bottom: 25px;
		overflow: hidden;
	}

	.page-approach .approach-points .third {
		float: left;
		width: 15%;
	}

	.page-approach .approach-points .two-thirds {
		float: left;
		width: 85%;
	}

	.approach-content-type {
		line-height: 34px;
		font-size: 24px;
	}

	.approach-point:not(:last-child) .three-quarters {
		padding-bottom: 50px;
	}

	.testimonials-slider__nav {
		top: 20px;
	}

	.testimonials-slider {
		padding: 0 25px;
	}

	.testimonials-wrapper {
		padding: 8px 0 50px;
	}

	.testimonials-wrapper h3 {
		margin-bottom: 0;
		border-bottom: 1px solid #D4D3D3;
		background: #fff;
		position: sticky;
		top: 0;
		z-index: 1;
		font-size: 32px;
		padding: 12px;
		padding-right: 20%;
	}

	.testimonial-slide {
		padding: 25px 0;
		border-top: none;
	}

	.testimonials-slider__nav.in-view {
		position: fixed;
		z-index: 2;
		top: 20px;
		right: 15px;
	}

	.slick-slide.testimonial-slide,
	.testimonials-slider:not(.slick-initialized) .testimonial-slide {
		flex-direction: column-reverse;
		padding-top: 0;
		gap: 0px;
	}

	.testimonial-roi .big-stat {
		font-size: 48px;
		line-height: 54px;
	}

	.testimonial-person {
		margin-bottom: 25px;
	}

	.testimonial-details {
		flex: none;
		padding-right: 0;
		border-right: none;
	}

	.testimonial-details h5 {
		margin-bottom: 15px;
	}

	.testimonial-details h4 {
		font-size: 32px;
		line-height: 1.2;
	}

	.testimonial-image {
		flex: 0 0 210px;
		width: auto;
		padding: 0;
		height: 190px;
		display: flex;
		align-items: center;
	}

	.testimonial-image img {
		width: 100%;
		max-width: none;
	}

	.see-more {
		display: block;
		padding-top: 25px;
	}

	.post-listing {
		margin-top: 50px;
		display: block;
	}

	.post-thumbnail {
		right: 50px;
	}

	.strat h4 {
		font-size: 24px;
		line-height: 34px;
		margin-bottom: 50px;
	}

	.strat img {
		margin-right: 5%;
		margin-top: 10px;
	}

	.filter-type {
		float: none;
		width: 100%;
	}

	.filters-container {
		padding: 10px 0 0;
		transition: top ease .4s;
	}
	.filters-container.go-down {
		top: 82px;
	}
	/*.logged-in .filters-container.go-down {
		top: 115px;
	}*/

	.filters-container .container {
		padding: 0 0 15px;
		position: relative;
	}

	.filters-container .empty-buttons,
	.filters-container .white-buttons {
		display: flex;
		flex-direction: row;
		overflow: scroll;
		scrollbar-color: transparent;
		scrollbar-width: 0;
	}
	.filters-container .empty-buttons::-webkit-scrollbar,
	.filters-container .white-buttons::-webkit-scrollbar {
		display: none;
	}
	.filters-container .empty-buttons:before,
	.filters-container .white-buttons:before,
	.filters-container .empty-buttons:after,
	.filters-container .white-buttons:after {
		position: absolute;
		height: 40px;
		bottom: 15px;
		content: "";
		width: 0;
		transition: width ease .24s;
	}
	.filters-container .empty-buttons.shadow-left:before,
	.filters-container .white-buttons.shadow-left:before,
	.filters-container .empty-buttons.shadow-right:after,
	.filters-container .white-buttons.shadow-right:after {
		width: 25px;
	}
	.filters-container .empty-buttons.shadow-left:before {
		background: linear-gradient(90deg, rgba(248,247,246,1) 0%, rgba(248,247,246,0) 100%);
		left: 0;
	}
	.filters-container .empty-buttons.shadow-right:after {
		background: linear-gradient(90deg, rgba(248,247,246,0) 0%, rgba(248,247,246,1) 100%);
		right: 0;
	}
	.filters-container .white-buttons.shadow-left:before {
		background: linear-gradient(90deg, rgba(38,34,34,1) 0%, rgba(38,34,34,0) 100%);
		left: 0;
	}
	.filters-container .white-buttons.shadow-right:after {
		background: linear-gradient(90deg, rgba(38,34,34,0) 0%, rgba(38,34,34,1) 100%);
		right: 0;
	}

	.filters-container .button {
		margin-right: 8px;
		flex: 1 0 auto;
		font-size: 16px;
		line-height: 1.2;
		padding: 8px 16px;
		text-align: center;
	}

	#cta .container {
		padding: 50px 25px;
		flex-direction: column;
		align-items: start;
		gap: 0;
	}

	.big-button {
		padding: 12px 25px;
		font-size: 24px;
	}

	.expanding-title {
		margin-bottom: 25px;
	}

	.expanding-title .order-no,
	.expanding-title h5 {
		font-size: 24px;
	}

	.expanding-title .title-plus,
	.expanding-title .title-minus {
		margin: 0;
		width: 28px;
	}

	.expanding-title .title-arrow {
		width: 20px;
	}

	.point-order {
		font-size: 24px;
	}

	.clients-row {
		grid-template-columns: 1fr;
	}

	.client {
		margin-bottom: 25px;
	}

	.client h4 {
		font-size: 32px;
		line-height: 44px;
	}

	.solution-main-content h5 {
		margin-top: 50px;
	}

	.solution-main-content p {
		margin-bottom: 12px;
	}

	.wpcf7 input,
	.wpcf7 select,
	.wpcf7 textarea {
		margin-bottom: 50px;
	}

	.cs-details li {
		margin-bottom: 25px;
	}

	.careers-content .button,
	.services-content .button,
	.about-content .button {
		width: 100%;
		text-align: center;
	}

	.client-words-heading {
		background-size: 100px;
		padding: 25px 0 50px;
		font-size: 36px;
		margin-bottom: 50px;
	}

	.client-words-content {
		padding: 0 8%;
		margin-bottom: 50px;
	}

	.the-client {
		padding: 0 10%;
	}

	.case-study-post-content {
		font-size: 21px;
		line-height: 32px;
	}

	.client-quote {
		background-size: 20%;
	}

	.client-quote blockquote {
		font-size: 32px;
	}

	.cs-data {
		margin: 50px 0;
	}

	.cs-point h5 {
		font-size: 24px;
		line-height: 32px;
	}

	.section-anchors {
		flex-direction: column;
	}


	.offices .quarter {
		margin-bottom: 50px;
	}

	.offices .row:not(:first-child) {
		padding-top: 25px;
	}

	.wpcf7 {
		padding: 25px;
	}

	.wpcf7 input,
	.wpcf7 select,
	.wpcf7 textarea {
		margin-bottom: 20px;
	}

	.contact-faqs {
		margin-top: 75px;
	}

	.share-post {
		margin-top: 50px;
		padding-top: 25px;
	}

	.share-post-links {
		gap: 10px;
	}

	.share-post-link {
		min-width: 0;
		width: calc(50% - 5px);
	}

	.medium-cta h2 {
		font-size: 36px;
	}

	#back_to_top {
		max-width: 48px;
	}

	#CybotCookiebotDialog {
		transform: translate(-50%, 0%) !important;
		max-height: 45% !important;
	}

	#CybotCookiebotDialogHeader {
		padding: .5em !important;
		display: none !important;
	}

	#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyButtonsWrapper {
		flex-direction: row !important;
		gap: 5px;
	}

	#CybotCookiebotDialogBodyContent {
		padding: .5em !important;
	}

	#CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogBodyEdgeMoreDetails {
		margin: .5em 1em .5em 0 !important;
	}

	#CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton {
		padding: .5em !important;
		margin-bottom: 0 !important;
	}
}

@media (max-width: 640px) {
	/*marquee {
		display: none;
	}
	.client-list-mobile {
		display: block;
	}*/

	.service-title,
	.services-list ul {
		width: 100%;
		float: none;
	}

	.service-title {
		line-height: 1.25;
		margin-bottom: 0;
		padding: 12px 0 12px 54px;
		background-position: left 18px;
	}

	.service-item {
		margin-bottom: 50px;
	}

	.services-list ul {
		padding-left: 54px;
	}

	.services-list ul li {
		min-height: 46px;
		padding: 12px 0;
		line-height: 1.25;
	}

	.services-list ul li a {
		font-size: 18px;
		line-height: 1.25;
		background-position: right center;
	}

	.service-detail h4 {
		font-size: 24px;
		line-height: 34px;
	}

	.author-pagination a,
	.author-pagination span {
		padding: 8px 12px;
	}

	.info-boxes .center-content {
		text-align: left;
	}

	.post-thumbnail {
		position: static;
		display: block;
		max-width: 100px;
		margin: 25px 0;
	}

	.supply-demand-desktop {
		display: none;
	}

	.supply-demand-mobile {
		display: block;
		margin: 0 auto;
	}

	.values h3 {
		margin-bottom: 15px;
	}

	.structure {
		margin-top: 25px;
	}

	.user-challenges {
		padding-top: 0;
	}

	.user-challenges h5 {
		font-size: 40px;
		line-height: 50px;
	}

	.clients-list {
		font-size: 24px;
		line-height: 34px;
		margin: 50px 0 0;
	}

	.clients-list span {
		display: block;
	}

	.clients-list img {
		display: none;
	}

	.faqs .bt-box {
		padding: 25px 0;
	}

	.faqs h4 {
		overflow: hidden;
	}

	.faqs h4 img,
	.faqs h4 span {
		display: block;
		float: left;
	}

	.faqs h4 span {
		max-width: calc(100% - 50px);
	}

	.answer p {
		margin: 25px 0 0;
	}

	.standard-select {
		width: 100%;
	}

	.blog-post {
		background: url(img/arrow-right.svg) no-repeat right 95%;
		background-size: 20px auto;
	}

	.blog-post h5 {
		background: none;
		font-size: 24px;
		line-height: 1.5;
		padding-right: 10%;
	}

	.author-archive-avatar img {
		width: 96px;
		height: 96px;
	}

	.cs-details {
		margin-top: 50px;
	}

	footer ul {
		-webkit-column-count: 2;
		-moz-column-count: 2;
		column-count: 2;
	}

	footer ul li {
		margin-bottom: 10px;
	}
}

@media (max-width: 480px) {
	.share-post-link {
		width: 100%;
	}

	.service-screen.screen-1 .questions li {
		width: 100%;
		float: none;
	}

	.client-words-heading {
		background-size: 60px;
		padding: 12px 0;
		font-size: 32px;
    }
}
