#hero {
height:100vh
}

.normal .hero-image {
width:51%;
background:#333;
height:calc(100% - 130px);
position:absolute;
overflow:hidden;
right:10px;
border-radius:20px;
margin-top:120px
}

.tag-line {
width:31%;
position:absolute;
top:calc(50% + 30px);
transform:translateY(-50%);
left:10%
}

.tag-line.alt {
position:relative;
left:0;
transform:inherit;
top:auto;
width:60%;
max-width:750px
}

#hero .tag-line a:link, #hero .tag-line a:visited {
    color: #97416e;
    border-bottom: 2px solid #e3e3e3;
}

.tag-line h1 {
    font-size: 44px;
    line-height: 1;
    margin-bottom: 30px;
    color: #9b4b74;
    font-weight: 600;
}

.tag-line .small-tag-line {
    font-size: 32px;
    line-height: 1.4;
    color: #747474;
    margin-bottom: 25px;
    font-weight: 500;
}

.alt #hero {
height:auto
}

.alt .hero-image {
width:80%;
background:#333;
height:650px;
position:relative;
top:0;
overflow:hidden;
right:0;
border-radius:40px;
margin:0 auto
}

.alt .tag-line {
width:50%;
position:relative;
top:inherit;
transform:inherit;
left:13%;
margin-top:230px;
margin-bottom:100px
}

.vimeo-wrapper {
background:#333;
position:absolute;
width:100%;
height:100%;
z-index:9;
right:0;
overflow:hidden;
border-radius:30px 0 0 30px
}

.vimeo-wrapper iframe {
height:56.25vw;
position:absolute
}

.hero-image:before {
content:"";
position:absolute;
height:100%;
width:100%;
background:#0000003b;
z-index:9
}

body.smaller .hero-image:before {
background:#000000b0
}

.alt .hero-image:before {
content:"";
position:absolute;
height:100%;
width:100%;
background:#000000b0;
z-index:99
}

body.smaller .alt .hero-image:before {
background:#00000078
}

.margin-bottom {
margin-bottom:80px
}

.page-container {
padding:20px 0 0
}

#background-box {
background:#2b2b2b;
padding:40px 0;
display:block;
width:100%;
clear:both;
position:relative;
border-radius:30px 0 0 30px;
z-index:9
}

#background-box .container {
margin:0 auto;
width:86%
}

#background-box.slide .container {
margin:0 0 0 7%;
width:102%
}

#background-box h2 {
color:#FFF;
text-align:left;
font-weight:600;
position:relative;
z-index:1;
font-size:60px
}

#background-box h3,#background-box p {
color:#FFF
}

#background-box .row {
padding:70px 0 0;
display:flex;
flex-wrap:wrap
}

#background-box .more-features-box {
float:left;
width:27%;
margin:0 9% 40px 0;
position:relative;
z-index:2;
height:auto
}

#background-box .more-features-box:nth-child(3n) {
margin-right:0
}

#background-box .more-features-box h3 {
font-size:22px;
line-height:1.3
}

#background-box .more-features-box p {
font-size:19px; line-height: 1.7;
}

#background-box .more-features-box .svg-holder {
height:40px;
margin-bottom:30px
}

#background-box .more-features-box .svg-holder svg {
height:40px;
width:auto;
fill:#FFF
}

.slick-next,.slick-prev {
background:#97426e!important;
border-radius:100%;
height:70px;
width:70px;
top:0
}

.slick-prev {
right:150px
}

.slick-prev:before {
content:'‹'
}

.slick-next {
right:55px
}

#features p.large {
width:800px
}

#features .row {
padding:60px 0;
display:flex;
justify-content:space-between;
align-items:center
}

#features .project-image {
float:left;
width:45%;
background:#333;
height:370px;
border-radius:15px;
position:relative
}

#features .project-image a {
width:100%;
height:100%;
position:absolute;
left:0;
top:0;
z-index:9
}

#features .project-image img {
height:100%;
width:100%;
object-fit:cover;
max-width:100%;
max-height:100%;
border-radius:15px
}

#features .project-image h2 {
font-size:19px;
margin-bottom:0
}

#features .alt .project-image {
float:right
}

#features .content {
width:40%;
margin-right:7%
}

#features .alt .content {
right:auto;
left:7%;
text-align:left;
margin-right:0!important;
margin-left:5%
}

#features h2,#features-2 h2 {
font-size:34px;
line-height:1.3
}

#features p,#features-2 p {
font-size:19px
}

#features-2 {
margin-bottom:120px
}

#features-2 .container {
display:flex;
flex-direction:row;
flex-wrap:nowrap;
align-content:center;
justify-content:space-between
}

#features-2 .container .column {
width:30%
}

#features,#features-2 {
width:90%
}

#features-2 {
margin-top:-40px
}

#features .project-image {
overflow:hidden
}

#features .project-image:before {
content:"";
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
z-index:1
}

#features .project-image iframe {
width:100vw;
min-height:100%;
min-width:177.77vh;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%)
}

.column-3 {
display:flex;
flex-direction:row;
flex-wrap:wrap
}

.column-3 .column {
width:28%;
margin-right:5%
}

#our-approach {
z-index:0;
position:relative;
padding:100px 0;
background:#EAEAEA;
padding-top:310px;
margin-top:-200px
}

#our-approach .container {
width:87%;
margin-left:13%
}

.our-approach-container {
padding-top:120px;
margin-top:-60px;
padding-right:100px
}

#our-approach .our-approach-box {
background:#f7f7f7;
border-radius:20px;
padding:40px 40px 20px;
text-align:left;
width:86%!important;
margin:0;
min-height:440px
}

#our-approach .slick-current .our-approach-box {
background:#4a4a4a!important
}

#our-approach .our-approach-box .svg-holder svg,#our-approach .our-approach-box svg {
height:50px
}

#our-approach .our-approach-box svg {
fill:#96426d
}

#our-approach .our-approach-box h3 {
line-height:1.4;
font-size:26px;
color:#404040;
margin:0 0 20px
}

#our-approach .our-approach-box p {
font-size:17px;
color:#404040
}

#our-approach .our-approach-box .svg-holder {
color:#97426d;
font-weight:800;
letter-spacing:4px
}

#our-approach .slick-current .svg-holder,#our-approach .slick-current .our-approach-box h3,#our-approach .slick-current .our-approach-box p {
color:#FFF
}

.what-we-do .box {
width:90%;
padding-bottom:70%;
margin-bottom:40px;
border-radius:20px;
position:relative;
overflow:hidden
}

.what-we-do .box img {
height:100%;
width:100%;
object-fit:cover;
max-width:100%;
max-height:100%;
position:absolute;
border-radius:15px
}

.what-we-do .box:before {
content:"";
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
background:linear-gradient(180deg,#00000061 0%,#00000054 100%);
z-index:1
}

.what-we-do .box a {
position:absolute;
width:100%;
height:100%;
z-index:999
}

.what-we-do .play-button {
position:absolute;
top:50%;
left:50%;
text-align:center;
transform:translate(-50%,-50%);
width:90%;
z-index:99
}

.what-we-do .play-button svg {
width:70px;
height:auto
}

.what-we-do .box h3 {
text-align:center;
margin:0;
padding:0;
position:relative;
top:inherit;
left:0;
transform:none;
margin-top:10px;
width:100%;
font-size:20px;
line-height:1.5
}

.what-we-do.slider .slick-prev {
right:150px;
top:95px;
z-index:99
}

.what-we-do.slider .slick-next {
right:55px;
top:95px;
z-index:99
}

.fancybox-content {
background:none!important
}

.fancybox-content iframe {
border:0
}

.fancybox-slide--html .fancybox-close-small {
background:#FFF;
border-radius:100px;
opacity:1;
width:65px;
height:65px;
padding:15px;
right:11px;
top:11px;
box-shadow:0 0 4px 3px #33333329
}

.tour iframe {
width:1000px
}

@media (max-width: 1100px) {
.tour iframe {
width:1000px
}
}

@media (max-width: 1000px) {
.tour iframe {
width:900px
}
}

@media (max-width: 900px) {
.tour iframe {
width:800px
}
}

@media (max-width: 800px) {
.tour iframe {
width:700px
}
}

@media (max-width: 700px) {
.tour iframe {
width:550px
}
}

@media (max-width: 600px) {
.tour iframe {
width:400px
}
}

@media (max-width: 500px) {
.tour iframe {
width:300px
}
}

.play-button {
position:absolute;
top:50%;
left:50%;
text-align:center;
transform:translate(-50%,-50%);
z-index:99
}

.play-button h2 {
width:100%;
color:#FFF;
font-size:20px
}

.play-button svg {
width:70px;
height:auto
}

.small-tag-line {
font-size:29px;
line-height:1.6;
color:#747474
}

.content span {
color:#A4A4A4;
font-size:16px;
text-transform:uppercase;
letter-spacing:2px;
font-weight:800
}

.content .nf-field-labelspan {
    font-size: 18px;
    line-height: 20px; color: #4e4e4e ; text-transform: none; letter-spacing: 0px;
}

.listcheckbox-wrap .nf-field-element label:after {
border-radius: 30px; background: none !important; border-width: 2px !important;
}

.content.alt {
display:flex;
flex-direction:column;
width:60%;
margin-top:75px;
max-width:900px;
margin-bottom:-20px
}

.content.alt h2 {
color:#747474;
font-weight:500;
line-height:1.1
}

.content.alt p.large {
font-weight:500;
font-size:24px;
line-height:1.8
}

.tagline {
width:70%
}

#page .content h2 {
margin-top:0
}

.button-price a {
padding:0 0 10px!important;
font-size:20px;
color:#97416e;
border-bottom:2px solid #e3e3e3;
text-decoration:none;
cursor:pointer;
font-weight:500
}

.hero-image img {
height:100%;
width:100%;
object-fit:cover;
max-width:100%;
max-height:100%
}

.hero-image img,.project-image img,.box img {
transform:scale(1)
}

.hero-image:hover img,.project-image:hover img,.box:hover img {
transform:scale(1.04)
}

.hero-image a {
width:100%;
height:100%;
position:absolute;
left:0;
top:0;
z-index:99
}

.nf-form-content .list-select-wrap .nf-field-element>div, .nf-form-content input:not([type=button]), .nf-form-content textarea {
background: #FFF !important;
    border: 2px solid #c4c4c4;
    border-radius: 10px !important; 
}

.nf-field-label {
color: #4e4e4e;
}

.nf-form-fields-required {
display: none;
}

.nf-error.field-wrap .nf-field-element:after {
border-radius: 10px;
}

.nf-form-content button, .nf-form-content input[type=button], .nf-form-content input[type=submit] {
background: #9d4c76 !important;
    border: 0;
    font-weight: 600;
    padding: 10px 50px;    border-radius: 40px !important; color: #FFF !important;
}

