@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;700&family=Roboto+Slab&display=swap');

.site-branding, 
#content,
.container, 
.site-info {
	width: 920px;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
}
body {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: #4d4d4f;
}
h1 {
	font-family: 'Roboto Slab', serif;
	font-size: 44px;
	font-weight: 400;
	color: #522145;
}
h2 {
	font-family: 'Roboto Slab', serif;
	font-size: 44px;
	font-weight: 400;
	color: #522145;
    border-bottom: 2.5px solid #baa6b5;
    padding-bottom: 25px;
    margin-top: 0;
}
h3 {
	font-family: 'Roboto Slab', serif;
	font-size: 25px;
	font-weight: 400;
}
h4 {
	font-family: 'Roboto Slab', serif;
	font-size: 18px;
	font-weight: 400;
}

/*   Header Styles   */

.widget, 
.widget p {
    margin: 0;
}
#topbar {
    font-family: 'Roboto Slab', serif;
    text-align: right;
    border-bottom: 2.5px solid #dfdfdf;
    padding: 10px 0;
}
#topbar a {
	text-decoration: none;
	color: #808285;
}
#topbar img {
    width: 14px;
    height: 14px;
    margin-left: 15px;
    margin-right: 5px;
    position: relative;
    top: 2px;
}
#main-header {
    padding: 30px 0 24px;
}
.custom-logo {
    width: 343px;
}
.main-navigation {
    float: right;
    margin-top: 21px;
}
.main-navigation li {
    margin-left: 35px;
}
.main-navigation li:first-child {
    margin-left: 0;
}
.main-navigation a {
    text-transform: uppercase;
    font-weight: 700;
    color: #522145;
    letter-spacing: 1px;
}

/*   Footer Styles   */

footer#colophon {
    background: #522145;
    color: #fff;
    display: flex;
    padding: 30px 0 24px;
    clear: both;
}
#f1 {
    width: 30%;
    float: left;
}
#f2 {
    width: 70%;
    float: right;
    text-align: right;
}
#f1 img {
    width: 273px;
}
#f2 a {
    text-decoration: none;
    font-weight: 700;
    margin-left: 20px;
    letter-spacing: 1px;
}
#f2 p:first-child {
    padding-bottom: 10px;
}

/*   Home Page Styles   */

.first-row {
    padding: 20px 0 50px;
}
.first-row h2 {
    margin-bottom: 50px;
}
.first-row p {
    font-size: 24px;
}
.first-row .p-btn {
    margin-top: 60px;
}
.p-btn {
    font-size: 18px;
    text-decoration: none;
    background: #744d6a;
    color: #fff;
    padding: 13px 28px;
    border-radius: 35px;
    font-weight: 700;
    letter-spacing: 2px;
    display: inline-block;
    transition: 0.3s ease-in-out;
}
.p-btn:hover, 
.cs-right a:hover, 
.cs-btn:hover {
    opacity: 0.8;
}
.what-row {
    padding: 20px 0 50px;
}
.what-row .wpb_single_image {
    margin-bottom: 0 !important;
}
.what-row img {
	width: 100px;
	height: 100px !important;
	margin-top: 5px;
}
.what-row h3 {
	margin: 15px 0 0;
    color: #522145;
    line-height: 1.2;
}
.what-row .p-btn {
    margin-top: 15px;
}
.cs-row {
    padding: 20px 0 40px;
}
.cs-container {
    clear: both;
    border-bottom: 2.5px solid #baa6b5;
    display: inline-block;
    width: 100%;
    padding-bottom: 36px;
}
.cs2, 
.cs3 {
    padding-top: 30px;
}
.cs1 .cs-left, 
.cs3 .cs-left {
    width: 50%;
    float: left;
    height: 274px;
    background-size: cover !important;
    background-position: center center !important;
}
.cs2 .cs-left {
    width: 50%;
    float: right;
    height: 274px;
    background-size: cover !important;
    background-position: center center !important;
}
.cs1 .cs-right, 
.cs3 .cs-right {
    float: right;
    width: 50%;
    padding: 0 35px;
    font-size: 16px;
    text-align: center;
}
.cs2 .cs-right {
    float: left;
    width: 50%;
    padding: 0 35px;
    font-size: 16px;
    text-align: center;
}
.cs-row h3 {
    margin: -9px 0 20px;
}
.cs-right p {
    margin: 0;
}
.cs-right a {
    font-size: 18px;
    text-decoration: none;
    background: #744d6a;
    color: #fff;
    padding: 13px 28px;
    border-radius: 35px;
    font-weight: 700;
    letter-spacing: 2px;
    display: inline-block;
    margin-top: 29px;
    transition: 0.3s ease-in-out;
}
.who-row {
	padding: 20px 0 30px;
	color: #fff;
    font-size: 25px;
}
.who-row h2 {
	color: #fff;
}
.who-row img {
    height: 100px !important;
    width: 100px;
}

.gt-row {
    padding: 20px 0 70px;
}
.gt-row .wpb_single_image {
    margin-bottom: 0 !important;
}
.nf-before-form-content, .nf-field-label {
    display: none;
}
.nf-field-container {
    margin-bottom: 10px !important;
}
.nf-field-container input[type="text"],
.nf-field-container input[type="email"], 
.nf-field-container input[type="tel"] {
    border: 0 !important;
    font-family: 'Monsterrat', sans-serif;
    font-weight: 700;
    padding: 12px 10px 9px !important;
    height: auto !important;
}
.nf-field-container textarea {
	border: 0 !important;
    font-family: 'Monsterrat', sans-serif;
    font-weight: 700;
    padding: 12px 10px 9px !important;
	height: 125px;
}
.nf-field-element input[type="submit"] {
    font-size: 16px;
    text-decoration: none;
    background: #744d6a !important;
    color: #fff !important;
    padding: 15px 20px;
    border-radius: 35px !important;
    font-weight: 700;
    letter-spacing: 2px;
    height: auto !important;
    width: auto !important;
    cursor: pointer;
    margin-top: 10px;
}
.nf-field-element input[type="submit"]:hover {
    background: #744d6a;
    color: #fff;
    opacity: 0.8;
}
.gt-phone, 
.gt-email, 
.gt-address {
    padding-left: 90px;
    position: relative;
}
.gt-phone:before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    width: 72px;
    height: 72px;
    background: url(/wp-content/uploads/2023/03/gt-phone.svg);
}
.gt-email:before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    width: 72px;
    height: 72px;
    background: url(/wp-content/uploads/2023/03/gt-email.svg);
}
.gt-address:before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    width: 72px;
    height: 72px;
    background: url(/wp-content/uploads/2023/03/gt-address.svg);
}
.gt-right h3 {
    margin: 0;
    padding-top: 15px;
    padding-bottom: 2px;
    color: #522145;
    line-height: 1.2;
}
.gt-right p {
	margin: 0;
	color: #522145;
}
.gt-right a {
	text-decoration: none;
}

/*   Contact Styles   */

.map-row .vc_column-inner {
    padding-top: 0 !important;
}
.map-row .wpb_gmaps_widget {
    margin-bottom: 0 !important;
}

/*   Service Styles   */

.service-row {
    padding: 25px 0;
}
.service-row h2 {
    font-size: 33px;
    padding-bottom: 22px;
    margin-bottom: 18px;
    line-height: 1;
}
.service-row img {
    width: 136px;
    height: 136px;
}
.service-row p {
    margin-bottom: 0;
}
.service-row strong {
    font-size: 18px;
}
.service-row ul {
    padding-left: 14px;
    padding-top: 15px;
}
.service-row ul li {
    margin-bottom: 15px;
}

/*   About Styles   */

.history-row {
    padding: 20px 0 50px;
}
.history-row img {
	width: 900px;
	margin-top: 5px;
}
.team-row {
    padding: 20px 0 40px;
}
.team-column {
    padding: 10px 0 20px;
}
.team-group {
	text-align: center;
}
.t-image {
    width: 150px;
    height: 150px;
    margin: 0 auto;
    background-size: cover !important;
    background-position: center center !important;
    border-radius: 50%;
}
.t-name {
    color: #522145;
    margin: 15px 0 0;
}
.t-title {
    font-weight: 700;
    text-transform: uppercase;
    width: 55%;
    margin: 5px auto 0;
    border-bottom: 2px solid #baa6b5;
    padding-bottom: 10px;
    color: #a890a2;
}
.t-content {
    margin-top: 10px;
    color: #404042;
}
.owl-nav img {
    width: 40px;
}
button.owl-prev {
    position: absolute;
    top: 50%;
    left: -10%;
    transform: translate(-50%, -50%);
}
button.owl-next {
    position: absolute;
    top: 50%;
    right: -15%;
    transform: translate(-50%, -50%);
}
.owl-nav.disabled {
    display: block !important;
}
.of-row {
	padding: 20px 0 80px;
    color: #fff;
    font-size: 16px;
}
.of-row h2 {
	color: #fff;
}
.of-left {
    padding: 0 15px !important;
}
.of-txt p:first-child {
    margin-top: -6px;
}
.of-address {
    position: relative;
    padding-left: 100px;
}
.of-address:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 80px;
    height: 80px;
    background: url(/wp-content/uploads/2023/03/location.svg);
}
.of-address h3 {
    margin: 0;
    padding-top: 0px;
    padding-bottom: 2px;
    line-height: 1.2;
    color: #baa6b5;
}
.of-address p {
    margin: 0;
}
.image-row {
    padding: 50px 0;
}
.image-row .wpb_single_image {
    margin-bottom: 25px !important;
}
.image-row img {
    width: 136px;
    height: 136px;
}
.image-row h2 {
    font-size: 32px;
    line-height: 1.2;
}
.image-row p {
    color: #522145;
    width: 88%;
    margin: 0 auto;
}

/*   Examples Styles   */

.top-row {
    padding: 20px 0 30px;
    font-size: 25px;
}
.post-section {
    padding: 90px 0 50px !important;
    display: inline-block;
    width: 100%;
}
.post-section article {
    margin-bottom: 35px;
}
.post-section article:nth-child(odd) {
    width: 48%;
    float: left;
}
.post-section article:nth-child(even) {
    width: 48%;
    float: right;
}
.casestudy-block {
	position: relative;
	overflow: hidden;
	transition: 0.6s ease-in-out;
}
.casestudy-block:hover .casestudy-inner {
    bottom: 0;
}
.casestudy-image {
    height: 380px;
    background-size: cover !important;
    background-position: center center !important;
}
.casestudy-inner {
    background: #522145;
    height: 100%;
    width: 100%;
    position: absolute;
    bottom: -304px;
    color: #fff;
    padding: 20px 25px;
    transition: 0.6s ease-in-out;
}
.casestudy-inner h3 {
    margin-top: 0;
    border-bottom: 2.5px solid #baa6b5;
    padding-bottom: 20px;
}
.casestudy-inner p {
    font-size: 18px;
}
.cs-btn {
    font-size: 18px;
    text-decoration: none;
    background: #744d6a;
    color: #fff;
    padding: 13px 28px;
    border-radius: 35px;
    font-weight: 700;
    letter-spacing: 2px;
    display: inline-block;
    transition: 0.3s ease-in-out;
}
.post-inner {
	padding: 55px 0 27px;
	background: #522145;
	color: #fff;
	font-size: 25px;
	text-align: center;
}
.post-inner h2 {
	color: #fff;
}
.overview-row {
    padding: 50px 0 70px;
}
.cs-client, 
.cs-location, 
.cs-contract, 
.cs-project {
    padding-left: 120px;
    position: relative;
}
.cs-client:before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    width: 101px;
    height: 101px;
    background: url(/wp-content/uploads/2023/03/client.svg);
}
.cs-location:before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    width: 101px;
    height: 101px;
    background: url(/wp-content/uploads/2023/03/cs-location.svg);
}
.cs-contract:before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    width: 101px;
    height: 101px;
    background: url(/wp-content/uploads/2023/03/contract.svg);
}
.cs-project:before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    width: 101px;
    height: 101px;
    background: url(/wp-content/uploads/2023/03/project.svg);
}
.cs-details h3 {
    margin: 0;
    padding-top: 29px;
    padding-bottom: 2px;
    color: #522145;
    line-height: 1.2;
}
.cs-details p {
	margin: 0;
    color: #522145;
}
.cs-overview {
    color: #522145;
}
.cs-overview h2 {
    margin-bottom: 25px;
    padding-bottom: 20px;
    margin-top: -10px;
}
.cs-overview strong {
    font-size: 18px;
    font-weight: 700;
    font-family: 'Roboto Slab', serif;
}
.cs-overview p {
    margin-bottom: 0;
}
.cs-images {
    padding: 50px 0 55px;
}
.cs-images .wpb_single_image {
    margin-bottom: 30px !important;
}
.cs-quote {
    padding: 0 80px;
    color: #522145;
    position: relative;
    display: inline-block;
}
.cs-quote h4 {
    font-size: 25px;
    line-height: 1.3;
}
.cs-quote p {
    font-size: 20px;
}
.cs-quote:before {
    content: "";
    position: absolute;
    left: 0;
    top: 40px;
    width: 77px;
    height: 52px;
    background: url(/wp-content/uploads/2023/03/quote-left.svg);
    background-repeat: no-repeat;
}
.cs-quote:after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 15px;
    width: 77px;
    height: 52px;
    background: url(/wp-content/uploads/2023/03/quote-right.svg);
    background-repeat: no-repeat;
}
.cs-quote .wpb_text_column {
    margin-bottom: 10px !important;
}
.quote-row {
    padding: 20px 0 52px;
}
.quote-row p {
    font-size: 20px;
    color: #522245;
}
button#rmp_menu_trigger-109 {
    margin-top: -35px !important;
}
.service-row .wpb_single_image {
    margin-bottom: 5px !important;
}
.service-main {
    font-size: 18px;
}
.about-subrow {
    padding: 30px 0 50px;
}
.about-subrow h2 {
    font-size: 33px;
    padding-bottom: 22px;
    margin-bottom: 30px;
    line-height: 1.4;
}
.about-subrow p {
    font-size: 16px;
}

@media screen and (max-width: 920px) {
    .site-branding, 
    #content, 
    .container,
    .site-info {
        width: 100%;
    }
    .custom-logo-link {
        display: block;
        width: 300px;
        margin: 0 auto;
    }
    .main-navigation {
        display: none;
    }
    .casestudy-inner p {
        font-size: 16px;
    }
    .owl-nav {
        position: relative;
    }
    .owl-nav img {
        width: 25px;
    }
    button.owl-prev {
        position: relative;
        top: 27px;
        transform: none;
        left: 0;
    }
    button.owl-next {
        position: absolute;
        bottom: 0;
        right: 0;
        transform: none;
        height: 48px;
    }
}
@media screen and (max-width: 767px) {
    .first-row p, 
    .post-inner, 
    .who-row, 
    .top-row {
        font-size: 20px;
    }
    h2 {
        font-size: 36px;
    }
    .cs1 .cs-left, .cs2 .cs-left, .cs3 .cs-left {
        width: 100%;
        float: none;
    }
    .cs1 .cs-right, .cs2 .cs-right, .cs3 .cs-right {
        float: none;
        width: 100%;
        padding: 30px 35px 0;
    }
    .gt-right {
        padding-top: 40px;
    }
    .who-row img {
        height: auto !important;
    }
    #f1 {
        width: 100%;
        float: none;
        text-align: center;
    }
    #f2 {
        width: 100%;
        float: none;
        text-align: center;
        margin-top: 25px;
    }
    .image-row h2 {
        font-size: 28px;
    }
    .service-row {
        text-align: center;
    }
    .post-section article:nth-child(odd), 
    .post-section article:nth-child(even) {
        width: 100%;
        float: none;
    }
    .cs-quote {
        padding: 0px 52px;
    }
    .cs-quote h4 {
        font-size: 20px;
    }
    .cs-quote:before {
        top: 34px;
        width: 50px;
    } 
    .cs-quote:after {
        bottom: 0;
        width: 50px;
    }
    .quote-row p {
        font-size: 18px;
    }
    .cs-overview {
        margin-top: 40px;
    }
    .of-left {
        height: 300px;
    }
    .of-right {
        padding-top: 40px;
    }
    .casestudy-inner {
        bottom: -313px;
    }
    h3 {
        font-size: 18px;
    }
}
@media screen and (max-width: 500px) {
    .custom-logo-link {
        width: 190px;
    }
    h2 {
        font-size: 30px;
    }
    #topbar a {
        text-align: center;
        display: block;
    }
    #f1 img {
        width: 200px;
    }
    #f2 a {
        margin: 0 5px;
        font-size: 12px;
    }
}