/*
Theme Name: click5 Interactive Theme
Theme URI: https://www.click5interactive.com/
Author: click5 Interactive
Author URI: https://www.click5interactive.com/
Description: click5 Interactive WordPress Theme
Version: 3.0.13
*/

:root {
    --main: #2b73ab;
    --font2: "Playfair Display";
}

/* HEADER */

#header {
    width: 100%;
    padding-top: 50px;
    padding-bottom: 50px;
    padding-left: 50px;
    padding-right: 70px;
    background-color: #FFF;
    transition: all .3s;
}
#header.hello-bar {
    top: 39px;
}
#header.sticky {
    padding-top: 20px;
    padding-bottom: 20px;
    box-shadow: 0 15px 25px rgba(0, 0, 0, .05);
}

#header .logo img {
    max-height: 106px;
    transition: all .3s;
}
#header.sticky .logo img {
    max-height: 94px;
}

#header .phone {
    position: relative;
    padding: 41px 0 36px 80px;
    border-left: 1px solid #e8e8e8;
}
#header.sticky .phone {
    padding-top: 31px;
    padding-bottom: 26px;
}
#header .phone::before {
    content: "";
    display: block;
    width: 57px;
    height: 57px;
    background-color: #f3f6f9;
    border-radius: 50%;
    position: absolute;
    top: 23px;
    left: 55px;
}
#header.sticky .phone::before {
    top: 13px;
}
#header .phone a {
    position: relative;
    display: inline-block;
    color: #444;
    font-size: 19px;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: 1.7px;
    padding: 2px 0 3px 0;
    margin: 0;
    border-bottom: 2px solid transparent;
}
#header .phone a i {
    position: relative;
    color: var(--main);
    font-size: 13px;
    padding-right: 2px;
    top: -1px;
}
#header .phone a:hover {
    text-decoration: none;
    border-color: var(--main);
}

#header .contact a {
    display: inline-block;
    height: 58px;
    color: #FFF;
    font-family: var(--font2);
    font-size: 17px;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: 0;
    padding: 0 40px;
    margin: 0 0 0 27px;
    background-color: var(--main);
    border: 2px solid var(--main);
}
#header .contact a::before {
    content: "";
    display: inline-block;
    height: 58px;
    vertical-align: middle;
}
#header .contact a:hover {
    color: var(--main);
    text-decoration: none;
    background-color: transparent;
}

/* HERO */

#hero {
    position: relative;
    height: 655px;
    padding-bottom: 115px;
    z-index: 4;
}
#hero.spage {
    height: 555px;
}
#hero::before {
    content: "";
    display: block;
    width: 100%;
    height: 50px;
    background-color: #f4f1ef;
    position: absolute;
    bottom: 0; left: 0;
}
.page-template-contact #hero::before {
    width: calc(100% - 50px);
    background-color: #f3f6f9;
    left: 25px;
}

#hero .content {
    margin-left: -30px;
}
#hero .content > span {
    display: block;
    color: #9b8b7b;
    font-size: 16px;
    font-weight: 300;
    line-height: 100%;
    letter-spacing: 2.4px;
    text-transform: uppercase;
    padding: 0 0 30px 4px;
    margin: 0;
}
#hero .content h2,
#hero .content h1 {
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 53px;
    font-weight: 400;
    line-height: 63px;
    letter-spacing: -1.06px;
    padding: 0;
    margin: 0;
}
#hero .content h2 span,
#hero .content h1 span {
    position: relative;
    font-weight: 600;
    font-style: italic;
}
#hero .content h2 span::before,
#hero .content h1 span::before {
    content: "";
    display: inline-block;
    width: 104%;
    height: 17px;
    background-color: #f4f1ef;
    position: absolute;
    bottom: 4px; left: -2%;
}
#hero .content h2 span i,
#hero .content h1 span i {
    position: relative;
    z-index: 4;
}
#hero .content p {
    color: #222;
    font-size: 22px;
    font-weight: 300;
    line-height: 34px;
    letter-spacing: -0.22px;
    padding: 27px 0 0 0;
    margin: 0;
}
#hero .content a {
    display: inline-block;
    height: 72px;
    color: #FFF;
    font-family: var(--font2);
    font-size: 19px;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: 0;
    padding: 0 90px;
    margin: 30px 0 0 0;
    background-color: var(--main);
    border: 2px solid var(--main);
}
#hero .content a::before {
    content: "";
    display: inline-block;
    height: 72px;
    vertical-align: middle;
}
#hero .content a:hover {
    color: var(--main);
    text-decoration: none;
    background-color: transparent;
}

#hero .photo {
    height: 100%;
    padding: 0;
    position: absolute;
    top: 0;
    right: 0;
}
#hero .photo > div {
    display: block;
    width: 100%;
    height: 100%;
    background-color: #EEE;
    background-size: cover;
    border-top-left-radius: 330px;
}

/* INTRO */

#intro {
    background-color: #f4f1ef;
}

#intro .content p {
    color: #222;
    font-family: var(--font2);
    font-size: 26px;
    font-weight: 400;
    line-height: 44px;
    letter-spacing: -0.26px;
    padding: 0;
    margin: 0;
}
#intro .content a {
    display: inline-block;
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 19px;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: -0.38px;
    padding: 0;
    margin: 36px 0 0 0;
}
#intro .content a:hover {
    color: var(--main);
    text-decoration: none;
}
#intro .content a::before,
#intro .content a::after {
    content: "—";
    padding-right: 10px;
}
#intro .content a::after {
    padding-right: 0;
    padding-left: 10px;
}
#intro .content a span {
    text-decoration: underline;
    text-underline-offset: 4px;
}
#intro .content a:hover span {
    text-decoration: none;
}

/* SERVICES */

#services {
    position: relative;
}
#services::before {
    content: "";
    display: block;
    width: 100%;
    height: 348px;
    background-color: #f4f1ef;
    position: absolute;
    top: 0; left: 0;
}

#services .headline p,
#about-team .headline p {
    color: #9b8b7b;
    font-size: 16px;
    font-weight: 300;
    line-height: 100%;
    letter-spacing: 5.6px;
    text-transform: uppercase;
    padding: 0 0 19px 0;
    margin: 0;
}
#services .headline h2,
#about-team .headline h2 {
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 67px;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: -0.67px;
    padding: 0;
    margin: 0;
}
#services .headline h2 strong,
#about-team .headline h2 strong {
    font-weight: 700;
    font-style: italic;
}
#services .headline h2::after,
#about-team .headline h2::after {
    content: "";
    display: block;
    width: 120px;
    height: 1px;
    margin: 34px auto 25px;
    background-color: #9b8b7b;
}

#services .box {
    padding-top: 20px;
}
#services .box a {
    position: relative;
    height: 100%;
    display: flex;
    padding: 60px 60px 35px 60px;
    background-color: #FFF;
    border: 1px solid #c1c1c1;
}
#services .box a:hover {
    text-decoration: none;
    border-color: var(--main);
}
#services .box a::before {
    content: "";
    display: block;
    width: 210px;
    height: 165px;
    background-color: #f3f6f9;
    border-bottom-right-radius: 100px;
    position: absolute;
    top: 0; left: 0;
}
#services .box a > * {
    position: relative;
    z-index: 4;
}

.page-template-solutions #services .box .icon img {
    max-width: 170px;
}
#services .box .content {
    width: calc(100% - 66px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-left: 50px;
}
#services .box .content > div {
    flex: 1;
}
#services .box .content h3 {
    color: var(--main);
    font-family: var(--font2);
    font-size: 31px;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: -0.62px;
    padding: 0;
    margin: 0;
}
#services .box .content ul {
    list-style: none;
    padding: 39px 0 0 5px;
    margin: 0;
}
#services .box .content ul li {
    position: relative;
    color: #222;
    font-size: 18px;
    font-weight: 300;
    line-height: 25px;
    letter-spacing: 0;
    padding: 0 0 0 25px;
    margin: 8px 0 0 0;
}
#services .box .content ul li::before {
    content: "\f061";
    color: var(--main);
    font-family: "Font Awesome 6 Free";
    font-size: 10px;
    font-weight: 700;
    position: absolute;
    left: 0;
}
#services .box .content span {
    position: relative;
    display: inline-block;
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 17px;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: 0;
    text-decoration: underline;
    text-underline-offset: 4px;
    padding: 0;
    margin: 25px 0 0 0;
    transition: all .3s;
}
#services .box .content span::after {
    content: "→";
    font-family: "Arial";
    position: absolute;
    right: -27px;
    transition: all .3s;
}
#services .box a:hover .content span {
    text-decoration: none;
}
#services .box a:hover .content span::after {
    color: var(--main);
    right: -35px;
}

/* CTA */

#cta {
    position: relative;
}
.home #cta,
.page-template-about #cta {
    background: rgb(255,255,255);
    background: -moz-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(244,246,249,1) 100%);
    background: -webkit-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(244,246,249,1) 100%);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(244,246,249,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#f4f6f9",GradientType=1);
}

#cta .content h3 {
    color: #222;
    font-family: var(--font2);
    font-size: 26px;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: -0.26px;
    padding: 0 0 45px 0;
    margin: 0;
}
#cta .content h3 strong {
    font-weight: 600;
}

#cta .content a {
    display: inline-block;
    width: 375px;
    height: 84px;
    color: #FFF;
    font-family: var(--font2);
    font-size: 19px;
    font-weight: 500;
    line-height: 100%;
    letter-spacing: 0.27px;
    padding: 0;
    margin: 5px 5px 0 5px;
    border-width: 2px;
    border-style: solid;
}
#cta .content a::before {
    content: "";
    display: inline-block;
    height: 84px;
    vertical-align: middle;
}
#cta .content a:hover {
    text-decoration: none;
    background-color: transparent !important;
}

#cta .content a.phone {
    color: #000;
    background-color: #f4f1ef;
    border-color: #f4f1ef;
}
#cta .content a.phone span {
    color: #9b8b7b;
}

#cta .content a.contact {
    background-color: var(--main);
    border-color: var(--main);
}
#cta .content a.contact:hover {
    color: var(--main);
}

/* WHY */

#why {
    position: relative;
    background: rgb(244,246,249);
    background: -moz-linear-gradient(180deg, rgba(244,246,249,1) 0%, rgba(243,246,249,1) 100%);
    background: -webkit-linear-gradient(180deg, rgba(244,246,249,1) 0%, rgba(243,246,249,1) 100%);
    background: linear-gradient(180deg, rgba(244,246,249,1) 0%, rgba(243,246,249,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f4f6f9",endColorstr="#f3f6f9",GradientType=1);
}

#why .row.row-1 {
    position: relative;
    height: 665px;
}

#why .photo {
    width: 55%;
    height: 100%;
    padding: 0;
    position: absolute;
    top: 0; left: 0;
}
#why .photo > div {
    display: block;
    width: 100%;
    height: 100%;
    background-color: #EEE;
    background-size: cover;
    background-position: top right;
    border-top-right-radius: 280px;
}

#why .headline {
    padding-bottom: 190px;
    left: -25px;
}
#why .headline h2 {
    color: #9b8b7b;
    font-size: 16px;
    font-weight: 300;
    line-height: 100%;
    letter-spacing: 5.6px;
    text-transform: uppercase;
    padding: 0 0 19px 0;
    margin: 0;
}
#why .headline p {
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 55px;
    font-weight: 400;
    line-height: 63px;
    letter-spacing: -0.55px;
    padding: 0;
    margin: 0;
}
#why .headline p strong {
    font-weight: 700;
    font-style: italic;
}
#why .headline p::after {
    content: "";
    display: block;
    width: 195px;
    height: 1px;
    margin: 34px 0 0 0;
    background-color: #9b8b7b;
}

#why .container {
    margin-top: -135px;
}

#why .box {
    padding-top: 25px;
}
#why .box a {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 45px 40px 33px 40px;
    background-color: #FFF;
}
#why .box a:hover {
    text-decoration: none;
}

#why .box .content {
    display: flex;
    flex-direction: column;
    height: calc(100% - 60px);
}
#why .box .content > div {
    flex: 1;
}
#why .box .content h3 {
    color: var(--main);
    font-family: var(--font2);
    font-size: 26px;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: -0.52px;
    padding: 30px 0 22px 0;
    margin: 0;
    border-bottom: 4px solid #f3f6f9;
    transition: all .3s;
}
#why .box a[href]:hover .content h3 {
    border-bottom-color: var(--main);
}
#why .box .content p {
    color: #222;
    font-size: 17.5px;
    font-weight: 400;
    line-height: 27px;
    letter-spacing: -0.17px;
    padding: 19px 0 31px 0;
    margin: 0;
}
#why .box .content span {
    position: relative;
    color: var(--main);
    font-family: "Arial";
    font-size: 24px;
    transition: all .3s;
}
#why .box a:hover .content span {
    transform: translateX(calc(100% - 25px));
}

/* HELP */

#help {
    position: relative;
    height: 645px;
    margin-top: 80px;
    z-index: 4;
}
#help::before {
    content: "";
    display: block;
    width: calc(100% - 50px);
    height: 60px;
    background-color: #f4f1ef;
    position: absolute;
    bottom: 0;
    left: 25px;
}

#help .photo {
    height: 100%;
    padding: 0;
    position: absolute;
    top: 0;
    right: 0;
}
#help .photo > div {
    display: block;
    width: 100%;
    height: 100%;
    background-color: #EEE;
    background-size: cover;
    border-top-left-radius: 330px;
}

#help .content {
    padding-top: 115px;
}
#help .content h2 {
    color: #9b8b7b;
    font-size: 16px;
    font-weight: 300;
    line-height: 100%;
    letter-spacing: 5.6px;
    text-transform: uppercase;
    padding: 0 0 19px 0;
    margin: 0;
}
#help .content p.highlight {
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 55px;
    font-weight: 400;
    line-height: 63px;
    letter-spacing: -0.55px;
    padding: 0;
    margin: 0;
}
#help .content p.highlight strong {
    font-weight: 600;
    font-style: italic;
}
#help .content p.highlight::after {
    content: "";
    display: block;
    width: 195px;
    height: 1px;
    margin: 31px 0;
    background-color: #9b8b7b;
}
#help .content p.text {
    max-width: 510px;
    color: #222;
    font-size: 18px;
    font-weight: 400;
    line-height: 33px;
    letter-spacing: -0.18px;
    padding: 0;
    margin: 0;
}
#help .content a {
    position: relative;
    display: inline-block;
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 17px;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: 0;
    text-decoration: underline;
    text-underline-offset: 4px;
    padding: 0;
    margin: 27px 0 0 0;
    transition: all .3s;
}
#help .content a::after {
    content: "→";
    font-family: "Arial";
    position: absolute;
    right: -27px;
    transition: all .3s;
}
#help .content a:hover {
    text-decoration: none;
}
#help .content a:hover::after {
    color: var(--main);
    right: -35px;
}

/* CONTACT */

#contact {
    position: relative;
    width: calc(100% - 50px);
    margin: 0 auto;
    background-color: #f4f1ef;
}

#contact .headline h2 {
    color: #9b8b7b;
    font-size: 16px;
    font-weight: 300;
    line-height: 100%;
    letter-spacing: 5.6px;
    text-transform: uppercase;
    padding: 0 0 19px 0;
    margin: 0;
}
#contact .headline p {
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 67px;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: -0.67px;
    padding: 0;
    margin: 0;
}
#contact .headline p strong {
    font-weight: 700;
    font-style: italic;
}
#contact .headline p::after {
    content: "";
    display: block;
    width: 180px;
    height: 1px;
    margin: 34px auto 25px;
    background-color: #9b8b7b;
}

#contact .form {
    padding-top: 5px;
}

/* FOOTER */

#footer .row {
    position: relative;
}
#footer .row.row-2 {
    padding-top: 40px;
    padding-bottom: 40px;
}
#footer .row.row-2::before {
    content: "";
    display: block;
    width: calc(100% - 30px);
    height: 1px;
    background-color: #e3e3e3;
    position: absolute;
    top: 0; left: 15px;
}

#footer .logo img {
    max-height: 90px;
}

#footer h4 {
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 18px;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: -0.36px;
    padding: 0 0 15px 0;
    margin: 0;
}

#footer .links ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
#footer .links ul li {
    color: #444;
    font-size: 16px;
    font-weight: 300;
    line-height: 28px;
    letter-spacing: 0;
    padding: 0;
    margin: 0;
}
#footer .links ul li a:hover {
    color: #2b2b2b;
    text-decoration: underline;
    text-underline-offset: 3px;
}

#footer .address address,
#footer .address a {
    display: block;
    color: #444;
    font-size: 16px;
    font-weight: 300;
    line-height: 24px;
    letter-spacing: 0;
    padding: 0;
    margin: 2px 0 0 0;
}
#footer .address a {
    margin-top: 12px;
}
#footer .address a span {
    color: var(--main);
}
#footer .address a:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

#footer .contact > a {
    display: block;
    height: 58px;
    color: #FFF;
    font-family: var(--font2);
    font-size: 17px;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: 0;
    text-align: center;
    padding: 0;
    margin: 0 0 25px 0;
    background-color: var(--main);
    border: 1px solid var(--main);
}
#footer .contact > a::before {
    content: "";
    display: inline-block;
    height: 58px;
    vertical-align: middle;
}
#footer .contact > a:hover {
    color: var(--main);
    background-color: transparent;
}

/* SUBPAGES */

#page-wrapper,
#index-wrapper,
#single-wrapper {
    position: relative;
    background: rgb(255,255,255);
    background: -moz-linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(244,241,239,1) 100%);
    background: -webkit-linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(244,241,239,1) 100%);
    background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(244,241,239,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#f4f1ef",GradientType=1);
}

#page-wrapper #main,
#single-wrapper #main {
    position: relative;
}
#page-wrapper #main::after,
#single-wrapper #main::after {
    content: "";
    display: block;
    width: calc(100% - 30px);
    height: 1px;
    background-color: #9b8b7b;
    position: absolute;
    bottom: 0; left: 15px;
}
.error404 #page-wrapper #main::after {
    display: none;
}

.entry-content > h1:first-child, 
.entry-content > h2:first-child, 
.entry-content > h3:first-child, 
.entry-content > h4:first-child, 
.entry-content > h5:first-child,
.entry-content > h6:first-child {
    padding-top: 0;
}

.entry-content h1, .entry-content h2, .post-title {
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 45px;
    font-weight: 400;
    line-height: 53px;
    letter-spacing: -0.45px;
}
.entry-content h1::after, .entry-content h2::after, .post-title::after {
    content: "";
    display: block;
    width: 180px;
    height: 1px;
    margin-top: 25px;
    background-color: #9b8b7b;
}
.entry-content h3, .sitemap_by_click5 h2 {
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 35px;
    font-weight: 400;
    line-height: 43px;
    letter-spacing: -0.35px;
}
.entry-content h4 {
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 30px;
    font-weight: 400;
    line-height: 38px;
    letter-spacing: -0.3px;
}
.entry-content h5, .entry-content h6 {
    color: #2b2b2b;
    font-family: var(--font2);
}

.entry-content a {
    text-decoration: underline;
    text-underline-offset: 3px;
}
.entry-content a:hover {
    text-decoration: none;
}

.entry-content p, .entry-content ul li, .entry-content ol li {
    color: #222;
    font-size: 18px;
    font-weight: 300;
    line-height: 30px;
    letter-spacing: -0.18px;
    padding: 0;
}
.entry-content p strong,
.entry-content ul li strong,
.entry-content ol li strong {
    font-weight: 500;
}
.entry-content p:last-of-type {
    margin-bottom: 0;
}

.entry-content img.aligncenter {
    display: block;
    height: auto;
    margin: 0 auto;
}
.entry-content img.alignright {
    float: right;
    margin-left: 30px;
    margin-bottom: 20px;
    margin-top: 20px;
}
.entry-content img.alignleft {
    float: left;
    margin-right: 30px;
    margin-bottom: 20px;
    margin-top: 20px;
}

.entry-content ul {
    list-style: none;
    padding-left: 20px;
}
.entry-content ul > li {
    position: relative;
    line-height: 28px;
    padding-left: 25px;
    margin-bottom: 10px;
}
.entry-content ul > li::before {
    content: "\f061";
    color: var(--main);
    font-family: "Font Awesome 6 Free";
    font-size: 10px;
    font-weight: 700;
    position: absolute;
    top: 1px;
    left: 0;
}

.entry-content ol {
    margin-left: 0;
}
.entry-content ol > li {
    padding-left: 7px;
    margin-top: 5px;
}

.entry-content blockquote {
    position: relative;
    padding-left: 50px;
    margin: 40px 0;
}
.entry-content blockquote:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 10px;
    height: 100%;
    background-color: var(--main);
    border-radius: 3px;
}
.entry-content blockquote p {
    font-size: 20px;
    font-weight: 600;
    line-height: 36px;
    margin: 0;
}

/* SITEMAP */

.sitemap_by_click5 h2::after {
    display: none;
}
.sitemap_by_click5 ul li a {
    text-decoration: none;
}
.sitemap_by_click5 ul li a:hover {
    text-decoration: underline;
}

/* CONTACT */

#contact-wrapper {
    position: relative;
    width: calc(100% - 50px);
    margin: 0 auto 20px;
    padding-top: 50px;
    background-color: #f3f6f9;
}

#contact-wrapper .box {
    display: flex;
}
#contact-wrapper .box .icon {
    width: 110px;
    height: 110px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #FFF;
    border-radius: 50%;
}

#contact-wrapper .box .content {
    padding-top: 36px;
    margin-left: -10px;
}
#contact-wrapper .box .content h4 {
    color: var(--main);
    font-family: var(--font2);
    font-size: 26px;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: -0.52px;
    padding: 0 0 15px 0;
    margin: 0;
}

#contact-wrapper .box .content a {
    display: inline-block;
    color: #222;
    font-size: 25px;
    font-weight: 300;
    line-height: 100%;
    letter-spacing: -0.25px;
    padding: 0;
    margin: 4px 0 0 0;
}
#contact-wrapper .box .content a:hover {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}

#contact-wrapper .box .content address,
#contact-wrapper .box .content p {
    color: #222;
    font-size: 17.5px;
    font-weight: 300;
    line-height: 27px;
    letter-spacing: -0.17px;
    padding: 0;
    margin: 0;
}
#contact-wrapper .box .content p span {
    display: inline-block;
    width: 100px;
}

/* SERVICE */

#service-intro,
#about-intro {
    position: relative;
    background-color: #f4f1ef;
}
#service-intro .headline h2::after,
#service-boxes .headline h2::after {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 15px;
}
#service-intro .entry-content.ec-1 p:first-of-type {
    color: #222;
    font-family: var(--font2);
    font-size: 23px;
    font-weight: 400;
    line-height: 36px;
    letter-spacing: -0.23px;
}

#service-textbox .headline h2 {
    font-size: 42px;
}
#service-textbox .headline h2::after,
#service-steps .headline h2::after {
    display: none;
}

#service-faq .photo {
    flex: 0 0 calc(50% + 115px);
    max-width: calc(50% + 115px);
    margin-left: -115px;
}
#service-faq .photo .box {
    display: block;
    width: 100%;
    height: 670px;
    background-size: cover;
    background-position: top center;
    border-bottom-right-radius: 200px;
}

#service-faq #faq-wrapper .card {
    padding: 0;
}
#service-faq #faq-wrapper .card.active {
    margin-top: 0;
    border-width: 0;
    border-radius: 0;
}
#service-faq #faq-wrapper .card::after {
    width: 100%;
}
#service-faq #faq-wrapper .card.active::after {
    display: block;
}
#service-faq #faq-wrapper .card-header h3 {
    font-size: 18px;
    font-weight: 500;
    padding-top: 25px;
    padding-bottom: 27px;
}
#service-faq #faq-wrapper .card.active .card-header h3 {
    padding-bottom: 20px;
}
#service-faq #faq-wrapper .card-body {
    padding-bottom: 30px;
}

#service-boxes {
    position: relative;
    background-color: #f3f6f9;
}
#service-boxes .box {
    padding-top: 20px;
}
#service-boxes .box .content {
    height: 100%;
    padding: 60px 50px 55px 50px;
    background-color: #FFF;
    border: 1px solid #c1c1c1;
}
#service-boxes .box .content h3 {
    color: var(--main);
    font-size: 29px;
    line-height: 36px;
    letter-spacing: -0.58px;
    padding: 0 0 20px 0;
    margin: 0;
}
#service-boxes .box .content p {
    font-size: 17px;
}

#service-steps {
    position: relative;
    background: rgb(255,255,255);
    background: -moz-linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(243,246,249,1) 70%);
    background: -webkit-linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(243,246,249,1) 70%);
    background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(243,246,249,1) 70%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#f3f6f9",GradientType=1);
}
#service-steps .photo {
    flex: 0 0 calc(50% + 240px);
    max-width: calc(50% + 240px);
    margin-right: -240px;
}
#service-steps .photo .box {
    display: block;
    width: 100%;
    height: 705px;
    background-size: cover;
    background-position: top center;
    border-bottom-left-radius: 200px;
}
#service-steps .headline span {
    display: block;
    color: #9b8b7b;
    font-size: 16px;
    font-weight: 300;
    line-height: 100%;
    letter-spacing: 5.6px;
    text-transform: uppercase;
    padding: 15px 0 0 0;
    margin: 0;
}
#service-steps .step {
    position: relative;
    display: flex;
    padding-top: 50px;
}
#service-steps .step::before {
    content: "....";
    color: #b9cbdd;
    font-size: 24px;
    letter-spacing: 3.36px;
    position: absolute;
    top: 7px; left: 18px;
    transform: rotate(90deg);
}
#service-steps .step .number {
    width: 58px;
    height: 58px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #222;
    font-size: 17px;
    font-weight: 300;
    line-height: 100%;
    letter-spacing: 0;
    background-color: #FFF;
    border-radius: 50%;
    box-shadow: 0 10px 10px rgba(221, 228, 235, .15);
}
#service-steps .step .text {
    width: calc(100% - 58px);
    padding-left: 20px;
}
#service-steps .step .text h4 {
    color: var(--main);
    font-size: 20px;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: -0.4px;
    padding: 1px 0 10px 0;
    margin: 0;
}

.page-template-service #why,
.page-template-solution #why {
    margin-bottom: 25px;
}
.page-template-service #why .box {
    padding-top: 0;
}

/* ABOUT */

#about-team {
    position: relative;
    background: rgb(255,255,255);
    background: -moz-linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(244,241,239,1) 100%);
    background: -webkit-linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(244,241,239,1) 100%);
    background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(244,241,239,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#f4f1ef",GradientType=1);
}

#about-team .box {
    padding-top: 20px;
}
#about-team .box .content {
    height: 100%;
    padding: 40px 45px;
    background-color: #FFF;
    border: 1px solid #c1c1c1;
}

#about-team .box .highlight {
    display: flex;
}
#about-team .box .content.d-flex .highlight {
    width: 46%;
}

#about-team .box .photo {
    width: 154px;
    height: 154px;
    background-color: #eee;
    background-size: cover;
    background-position: top center;
    border-radius: 50%;
}

#about-team .box .overview {
    width: calc(100% - 154px);
    padding-left: 30px;
}

#about-team .box .overview .name {
    color: var(--main);
    font-family: var(--font2);
    font-size: 32px;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: -0.64px;
    padding: 39px 0 16px 0;
    margin: 0;
}
#about-team .box .overview .title {
    color: #222;
    font-size: 15px;
    font-weight: 300;
    line-height: 100%;
    letter-spacing: -0.15px;
    padding: 0 0 32px 0;
    margin: 0 0 28px 0;
    border-bottom: 4px solid #f3f6f9;
}
#about-team .box .overview .intro {
    color: #222;
    font-size: 19px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -0.19px;
    padding: 0;
    margin: 0;
}

#about-team .box .bio {
    padding-top: 15px;
}
#about-team .box .content.d-flex .bio {
    width: 46%;
}
#about-team .box .bio p {
    color: #222;
    font-size: 17.5px;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: -0.17px;
    padding: 0;
}
#about-team .box .bio p:last-of-type {
    margin-bottom: 0;
}
#about-team .box .bio a {
    position: relative;
    display: inline-block;
    color: #2b2b2b;
    font-family: var(--font2);
    font-size: 17px;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: 0;
    text-decoration: underline;
    text-underline-offset: 4px;
    padding: 0;
    margin: 25px 0 0 0;
    cursor: pointer;
    transition: all .3s;
}
#about-team .box .bio a::after {
    content: "→";
    font-family: "Arial";
    position: absolute;
    right: -27px;
    transition: all .3s;
}
#about-team .box .bio a:hover {
    text-decoration: none;
}
#about-team .box .bio a:hover::after {
    color: var(--main);
    right: -35px;
}

/* SOLUTION */

#solution-textboxes .row {
    position: relative;
}
#solution-textboxes .row:nth-child(even) {
    flex-direction: row-reverse;
}
#solution-textboxes .row:nth-child(even)::before {
    content: "";
    display: block;
    width: calc(100% + 290px);
    height: 100%;
    background-color: #f3f6f9;
    border-radius: 10px;
    position: absolute;
    top: 0; left: -145px;
}
#solution-textboxes .row:nth-child(even):last-child:before {
    background-color: #f4f1ef;
}

#solution-textboxes .photo {
    flex: 0 0 calc(50% + 80px);
    max-width: calc(50% + 80px);
    margin-left: -80px;
}
#solution-textboxes .row:nth-child(even) .photo {
    margin-left: 0;
    margin-right: -80px;
}
#solution-textboxes .photo > div {
    padding-right: 1rem;
}
#solution-textboxes .row:nth-child(even) .photo > div {
    padding-right: 0;
    padding-left: 1rem;
}

#solution-textboxes .entry-content > div {
    padding-left: 1rem;
}
#solution-textboxes .row:nth-child(even) .entry-content > div {
    padding-left: 0;
    padding-right: 1rem;
}