/*
Theme Name:     Gridlove Child
Theme URI:      https://mekshq.com/theme/gridlove
Description:    Child theme for Gridlove theme
Author:         meks
Author URI:     https://mekshq.com
Template:       gridlove
Version:        0.1.0
*/

.ma-content {
	z-index: 99;
	position: relative;
}

.gridlove-cover-img {
	width: 1500px !important;
}

#content.custom-homepage {
	max-width: none;
	padding-left: 0;
	padding-right: 0;
}

.ma-box-inner {
	padding: 15px 15px 5px;
	height: 500px;
	display: flex;
	flex-direction: column;
}

.ma-box-inner-company {
	height: 575px;
}

.ma-agency-wrapper {
	height: 350px;
}

@media (max-width: 782px) {
	.ma-agency-wrapper {
		height: 400px;
	}

	.ma-box-inner-company {
		height: 900px;
	}

	.gridlove-cover-img {
		object-fit: initial !important;
	}
}

.ma-box-inner-service {
	padding: 15px 15px 15px;
	display: flex;
	flex-direction: column;
	height: 100px;
	justify-content: center;
}

.ma-box {
	margin-top: 15px;
	border-radius: 5px;
}

.ma-title-wrapper {
	width: 100%;
	padding-bottom: 10px;
	border-bottom: 1px solid #bbbbbb;
	text-align: center;
}

.ma-title {
	font-size: 22px;
	margin-bottom: 0;
	margin-top: 10px;
}

.ma-subtitle {
	margin-top: 30px;
	margin-left: 0;
}

.ma-content {
	flex: 1;
}

.ma-footer {
	text-align: center;
	font-size: 20px;
}

.badge {
	margin-bottom: 5px;
}

.badge span {
	border-radius: 20px;
	text-transform: uppercase;
	font-size: 10px;
	padding: 7px 11px 6px;
}

a:hover {
	color: inherit;
}

.link-wrapper {
	margin: 0;
	padding: 0;
	border: 0;
	display: block;
}

.featured-list-wrapper {
	display: flex;
	flex-direction: column;
	padding-top: 15px;
}

.featured-list-wrapper .list {
	padding: 0 10px;
	list-style: none;
}

.featured-list-wrapper .list li {
	font-size: 20px;
	line-height: 2em;
}

.star {
	position: relative;
	display: inline-block;
	width: 0;
	height: 0;
	margin-left: 0.9em;
	margin-right: 0.9em;
	margin-bottom: 1.2em;
	border-right: 0.3em solid transparent;
	border-bottom: 0.7em solid #2b3a97;
	border-left: 0.3em solid transparent;
	font-size: 8px;
}

.star:before, .star:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	top: 0.6em;
	left: -1em;
	border-right: 1em solid transparent;
	border-bottom: 0.7em solid #2b3a97;
	border-left: 1em solid transparent;
	transform: rotate(-35deg);
}

.star:after {
	transform: rotate(35deg);
}

.company-header {
	display: flex;
	padding: 10px 20px 10px;
	border-bottom: 1px solid #bbbbbb;
}

.company-links {
	padding: 10px 20px 10px;
	border-bottom: 1px solid #bbbbbb;
}

.company-clients {
	display: flex;
	padding: 10px 25px 10px;
}

.company-header .logo-wrapper {
	display: flex;
	width: 95px;
	margin-right: 15px;
	align-items: center;
}

@media (max-width: 782px) {
	.company-header .logo-wrapper {
		display: none;
	}
}

.company-header .name-wrapper {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.company-header .name-wrapper .name {
	margin-bottom: 0;
}

.company-header .name-wrapper .location {
	margin-bottom: 0;
	color: #5e5e5e;
	font-size: 15px;
}

.location {
	font-weight: 700;
}

.bio {
	font-size: 15px;
	margin: 0;
}

@media (max-width: 782px) {
	.bio {
		font-size: 12px;
	}
}

.ma-box-inner-company .company-links > a {
	color: #2b3a97;
	text-decoration: underline;
}

@media (any-hover: hover) {
	.ma-box-inner-company .company-links > a:hover {
		color: #2b3a97;
		text-decoration: none;
	}
}

/* *************************
  About page
************************* */
.about-page .entry-header{
	margin: 0 auto 30px;
	padding: 0 0 30px;
	border-bottom: 1px solid #DBDBDB;
	position: relative;
}

.about-page .entry-header:after{
	content: 'Featured in';
	position: absolute;
	padding: 5px 15px;
	background: #ffffff;
	top: calc(100% - 15px);
	left: 50%;
	transform: translateX(-50%);
	text-transform: uppercase;
	font-family: 'Lato', sans-serif;
	font-style: normal;
	font-weight: 600;
	font-size: 15px;
	line-height: 1.2;
}

.about-page .entry-header h1{
	margin: 0 auto!important;
	padding: 0!important;
	text-align: center;
	max-width: 560px;
	line-height: 1.3;
}

.about-page .company-wrap{
	margin: 0 auto 30px;
	padding: 0 0 20px;
	border-bottom: 1px solid #DBDBDB;
}

.company-image-group{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-column-gap: 30px;
	grid-row-gap: 25px;
	max-width: 660px;
	margin: 0 auto;
}

.about-page .company-image-group .company-image{
	display: flex;
	align-items: center;
	justify-content: center;
}

.about-page .company-image-group .company-image img{
	max-width: 100%;
	max-height: 32px;
	width: auto;
	height: auto;
}

.about-page .box-inner-p-bigger.box-single p a {
	color: #2b3a97 !important;
	border-color: rgba(43,58,151,0.8) !important;
}

.team-block .title-block{
	font-family: 'Lato', sans-serif;
	font-style: normal;
	font-weight: 700;

	color: #0A0000;
	font-size: 26px;
	line-height: 1.2;
	margin-bottom: 30px;
}

.team-block .team-layout{
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 30px;
}

.team-block .team-layout-item{
	border-radius: 12px;
	border: 1px solid #ECECEC;
	background: #FFF;
	box-shadow: 0px 15px 30px 0px rgba(0, 0, 0, 0.05);
	padding: 30px 20px;

	display: flex;
	flex-direction: column;
	gap: 20px;
}

.team-block .image{
	width: 100px;
	min-width: 100px;
	height: 100px;
	border-radius: 50%;
	overflow: hidden;
	background: #EDEFF8;
}

.team-block .image img{
	max-width: 100%;
	max-height: 100%;
	width: 100%;
	height: 100%;
	object-position: center;
	object-fit: cover;
}

.team-block .info-card{
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	gap: 13px;
}

.team-block .member-name{
	font-family: 'Lato', sans-serif;
	font-style: normal;
	font-weight: 700;

	font-size: 18px;
	line-height: 1.2;
	color: #060606;
	text-transform: uppercase;
}

.team-block .member-position{
	font-family: 'Lato', sans-serif;
	font-style: normal;
	font-weight: 300;

	color: #929292;
	font-size: 14px;
	line-height: 1.2;
	letter-spacing: 0.7px;
	text-transform: uppercase;
}

.team-block .member-info{
	font-family: 'Lato', sans-serif;
	font-style: normal;
	font-weight: 400;

	color: #060606;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.7px;
}

.team-block .link-details{
	font-family: 'Open Sans', sans-serif;
	font-style: normal;
	font-weight: 600;

	color: #FFF;
	font-size: 16px;
	line-height: 1;

	text-align: center;
	padding: 14px 22px;
	border-radius: 3px;
	text-transform: uppercase;
	background: #2B3A97;
	border: 1px solid #2B3A97;
	display: inline-block;
	width: fit-content;
	transition: all .3s ease-in-out!important;
}

.team-description {
	margin-top: 30px;
}

.team-description .note{
	background: #edeff7;
	border-left: 4px solid #cdd3ed;
	padding: 25px 20px;
	display: flex;
	flex-direction: column;
	gap: 13px;
}

.team-description .title{
	font-family: 'Lato', sans-serif;
	font-style: normal;
	font-weight: 700;

	color: #0A0000;
	font-size: 20px;
	line-height: 1.2;
}

.team-description p:last-child{
	margin: 0;
}

.team-description a{
	color: #2b3a97;
	transition: all .3s ease-in-out!important;
	border-bottom: 1px solid rgba(43,58,151,.8);
}

@media (min-width: 768px) {
	.about-page .entry-header:after{
		font-size: inherit;
	}

	.about-page .company-wrap{
		padding: 0 0 30px;
	}

	.company-image-group{
		grid-template-columns: repeat(3, 1fr);
		grid-column-gap: 40px;
	}

	.about-page .company-image-group .company-image img{
		max-height: 100%;
	}

	.team-block .team-layout-item{
		padding: 40px 30px;
		flex-direction: row;
	}

	.team-block .info-card{
		gap: 20px;
	}
}

@media (min-width: 992px) {
	.about-page .entry-header{
		margin: 0 auto 40px;
		padding: 0 0 40px;
	}

	.company-image-group{
		grid-column-gap: 60px;
		grid-row-gap: 30px;
	}

	.team-block .team-layout{
		grid-template-columns: repeat(2, 1fr);
	}

	.team-block .link-details:hover{
		background: #FFFFFF;
		color: #2B3A97;
	}

	.team-description a:hover{
		border-color: transparent;
	}
}

@media (min-width: 1200px) {
	.team-block .team-layout{
		grid-gap: 50px;
	}

	.team-block .team-layout-item{
		padding: 40px;
		gap: 40px;
	}

	.team-block .image{
		width: 160px;
		min-width: 160px;
		height: 160px;
	}
}


/* *************************
  Contact page
************************* */
.contact-page .title-wrap{
	margin: 0 0 20px;
	padding: 0 0 20px;
	border-bottom: 1px solid #DBDBDB;
}

.contact-page .entry-header {
	margin: 0 0 10px;
}

.contact-page .entry-header h1{
	margin: 0 auto!important;
	padding: 0!important;
	line-height: 1.2;
}

.contact-page .layout{
	display: grid;
	grid-template-columns: 1fr;
	grid-column-gap: 50px;
	grid-row-gap: 20px;
}

.item-contact{
	order: 2;
}

.item-content{
	order: 1;
}

.item-content p{
	margin: 0;
}

.contact-page form.form-valid .wpcf7-response-output{
	display: none;
}

.contact-page form p{
	margin: 0;
}

.contact-page form br{
	display: none;
}

.contact-page .wpcf7-form-control-wrap,
.contact-page .form-control-wrap{
	margin-bottom: 16px;
	display: block;
}

.contact-page input:not([type="submit"], [type="checkbox"]),
.contact-page textarea{
	display: block;
	margin: 0;
	background: #fff;
	box-shadow: 0px 0px 4px rgba(0,0,0,.13);
	border-radius: 5px;
	padding: 9px 20px;
	min-height: 48px;
	font-size: 14px;
	line-height: 1.7;
	border: solid 1px #95a1cf;
	transition: all .3s ease-in-out;
}

.contact-page input:not([type="submit"], [type="checkbox"])::placeholder,
.contact-page textarea::placeholder{
	color: #000000;
}

.contact-page input.wpcf7-not-valid{
	border-color: #dc3232;
}

.contact-page .wpcf7-not-valid-tip{
	font-size: 12px;
	padding-left: 20px;
	margin: 3px 0 0;
}

.contact-page textarea {
	min-height: 200px;
	height: 200px;
	resize: none;
	margin-bottom: 24px;
}

.contact-page .form-submit{
	display: block;
	min-width: 200px!important;
	background: #001450;
	box-shadow: 0 7px 12px rgba(0, 20, 80, 0.2);
	border-radius: 5px;
	padding: 11px 25px;
	font-size: 16px;
	line-height: 1.2;
	text-shadow: none;
	margin: 0 auto;
}

.contact-page .wpcf7-spinner{
	display: none;
}

.contact-page .addtoany_content{
	display: none;
}

.contact-page form .wpcf7-response-output{
	margin: 30px 0 0;
	font-size: 14px;
	padding: 15px 10px;
	text-align: center;
}

@media (min-width: 768px) {

	.contact-page .title-wrap{
		margin: 0 0 35px;
	}

	.contact-page .layout {
		grid-template-columns: 380px 1fr;
		grid-column-gap: 30px;
	}

	.item-contact{
		order: 1;
	}

	.item-content{
		order: 2;
	}

	.contact-page .form-submit{
		margin: 0;
	}
}

@media (min-width: 992px) {
	.contact-page .layout{
		grid-template-columns: 450px 1fr;
		grid-column-gap: 50px;
	}

	.contact-page input:not([type="submit"], [type="checkbox"]):hover,
	.contact-page textarea:hover{
		box-shadow: 0px 7px 12px rgba(0, 19, 84, 0.08);
	}

	.contact-page .form-submit:hover{
		color: #001450;
		background: #FFFFFF;
	}
}