@import url(https://fonts.googleapis.com/css?family=Montserrat:400,500,700&display=swap);
@import url(https://fonts.googleapis.com/css?family=Barlow+Condensed:500,700&display=swap);
*,
:after,
:before {
    box-sizing: border-box;
    outline: none
}

html {
    font-family: Montserrat, sans-serif;
    font-weight: 500;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.container {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto
}

a {
    text-decoration: none
}

@media (min-width:576px) {
    .container {
        max-width: 540px
    }
}

@media (min-width:768px) {
    .container {
        max-width: 720px
    }
}

@media (min-width:992px) {
    .container {
        max-width: 960px
    }
}

@media (min-width:1200px) {
    .container {
        max-width: 1140px
    }
}

body {
    font-family: Montserrat, sans-serif;
    font-weight: 500;
    padding: 0;
    margin: 0
}

button {
    font-size: 16px;
    cursor: pointer
}

button:hover {
    color: #a70b0c
}

p {
    color: #777
}

.button,
.nav__toggle {
    padding: 0 20px
}

img {
    vertical-align: middle
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 600;
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    text-transform: uppercase
}

h1 {
    font-size: 36px
}

h2 {
    font-size: 32px
}

h3 {
    font-size: 26px
}

h4 {
    font-size: 22px
}

input {
    height: 40px;
    border: none;
    width: 100%;
    font-size: 16px;
    padding: 0 10px
}

.ul-reset {
    padding: 0;
    margin: 0;
    list-style: none
}

p {
    font-size: 16px;
    line-height: 26px
}

a {
    color: #a70b0c
}

a:hover {
    color: #222
}

.button,
.nav__toggle {
    border: none;
    height: 45px;
    line-height: 45px;
    text-align: center;
    background: #a70b0c;
    color: #fff;
    padding: 0 40px
}

.button:hover,
.nav__toggle:hover {
    background: #222;
    color: #fff
}

.section {
    padding: 40px 0;
    position: relative
}

.title {
    margin: 0 0 10px;
    color: #222;
    display: inline-block;
    background: #ffc107;
    padding: 10px 20px;
    box-shadow: 10px 10px 0 0 #252525
}

.header {
    width: 100%;
    background: #fff;
    z-index: 99;
    top: 0
}

.nav {
    justify-content: space-between;
    padding: 0
}

.nav__logo {
    height: 70px;
    padding: 5px 0
}

.nav__logo>img {
    height: 100%
}

.nav__menu {
    display: flex;
    align-items: center
}

.nav__menu>li {
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 600;
    height: 100%
}

.nav__menu>li a {
    
    height: 100%;
    line-height: 70px;
    padding: 0 10px;
    display: flex;
    align-items: center;
}
.nav__menu>li a i{
    margin: 0 10px 0 0;
}

.nav__menu>li a:hover {
    background: #a70b0c;
    color: #fff
}

.nav__menu>li+li {
    margin-left: 20px
}

.nav__toggle {
    padding: 0;
    width: 45px;
    height: 45px;
    background: #a70b0c;
    text-align: center;
    display: flex;
    justify-content: center;
    color: #fff;
    display: none
}

.nav__toggle:hover {
    background: #222
}

@media (max-width:1200px) {
    .header {
        position: fixed;
        box-shadow: 0 20px 40px -10px rgba(0, 0, 0, .15)
    }
    .nav__toggle {
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .nav__menu {
        display: none;
        align-items: center;
        position: absolute;
        background: #801e20;
        top: 55px;
        flex-direction: column;
        right: 15px;
        width: 280px
    }
    .nav__menu.open {
        display: flex
    }
    .nav__menu>li {
        width: 100%
    }
    .nav__menu>li a {
        color: #fff;
        width: 100%;
        display: flex;
        padding: 0 20px;
        line-height: 45px;
        cursor: pointer
    }
    .nav__menu>li a:hover {
        background: rgba(0, 0, 0, .1)
    }
    .nav__menu>li+li {
        margin: 0;
        border-top: 1px solid rgba(0, 0, 0, .1)
    }
    .header .container {
        position: relative
    }
    .nav__logo {
        height: 50px;
        padding: 0
    }
    .nav {
        padding: 10px 0
    }
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.section--cover {
    background: linear-gradient(to bottom right, #a70b0c 0, #222);
    padding: 20px 0 0;
    overflow: hidden;
    background-attachment: fixed;
    position: relative
}

.section--cover .overlay {
    background-image: url(images/cover.jpg);
    opacity: .1
}

.cover {
    z-index: 1
}

.cover,
.owner {
    display: flex;
    align-items: center;
    position: relative
}

.owner {
    color: #fff
}

.owner__photo {
    width: 300px;
    flex-shrink: 0;
    border-radius: 10px;
    overflow: hidden;
    margin: 0 -150px 0 0;
    position: relative;
    z-index: 2
}

.owner__photo img {
    width: 100%
}

.owner__text {
    padding: 70px 20px 70px 150px;
    background: #222;
    position: relative;
    z-index: 1;
}

.owner__text:before {
    content: "";
    position: absolute;
    left: 0;
    width: 130px;
    height: 5px;
    background: #ffc107;
    top: 82px
}

.owner__text h3 {
    margin: 0 0 10px;
    color: #ffc107
}

.owner__text p {
    margin: 0;
    color: #fff
}

.form {
    width: 280px;
    flex-shrink: 0;
    padding: 20px;
    background: #fff;
    box-shadow: 0 20px 40px -10px rgba(0, 0, 0, .15)
}

.form .button,
.form .nav__toggle,
.form input, .form textarea {
    font-size: 14px
}

input, textarea {
    border: 1px solid #dadada;
    font-family: 'Montserrat';
}
textarea{
    padding: 10px;
    width: 100%;
}

.form__title {
    margin: 0 0 10px;
    font-size: 18px;
    border-bottom: 1px solid #a70b0c;
    padding: 0 0 10px
}

.ul-form>li+li {
    margin-top: 10px
}

.section--why {
    background: #f7f7f7
}

.ul-services {
    display: flex;
    margin: 40px -20px 0
}

.ul-services>li {
    padding: 0 20px;
    width: 50%
}

.service__img>img {
    width: 100%
}

.service__item {
    background: #fff;
    padding: 20px;
    box-shadow: 0 20px 40px -10px rgba(0, 0, 0, .15)
}

.service__item h4 {
    margin: 0 0 10px
}

.service__item p {
    margin: 0
}

.service__item p+.read-more {
    margin-top: 10px
}

.highlight {
    color: #a70b0c;
    font-weight: 700
}

.read-more {
    display: block;
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700;
    font-weight: 400;
    text-transform: uppercase;
    display: flex;
    align-items: center
}

.read-more i {
    transition: all .3s ease-in-out
}

.read-more:hover i {
    -webkit-transform: translateX(5px);
    transform: translateX(5px)
}

.on-hover {
    display: none
}

.nav-wrap {
    align-items: center;
    justify-content: space-between
}

.nav,
.nav-wrap {
    display: flex
}

.nav>li {
    text-transform: uppercase
}

.nav>li a {
    height: 80px;
    display: flex;
    align-items: center;
    font-size: 14px;
    padding: 0 20px
}

.nav>li a:hover {
    background: #a70b0c;
    color: #fff
}

.starfield {
    right: 0;
    bottom: 0;
    display: block;
    overflow: hidden;
    z-index: 0
}

.starfield,
.starfield>* {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.starfield>* {
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    background-image: radial-gradient(2px 2px at 40px 60px, #ccc, transparent), radial-gradient(2px 2px at 20px 50px, #ddd, transparent), radial-gradient(2px 2px at 30px 100px, #eee, transparent), radial-gradient(2px 2px at 40px 60px, #fff, transparent), radial-gradient(2px 2px at 110px 90px, #ccc, transparent), radial-gradient(2px 2px at 190px 150px, #ddd, transparent);
    background-repeat: repeat;
    background-size: 200px 200px;
    -webkit-animation-name: starfieldRotate;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear
}

.starfield>:first-child {
    -webkit-animation-duration: 18s
}

.starfield>:nth-child(2) {
    -webkit-animation-duration: 22s
}

.starfield>:nth-child(3) {
    -webkit-animation-duration: 36s
}

.starfield>:nth-child(4) {
    -webkit-animation-duration: 40s
}

@-webkit-keyframes starfieldRotate {
    0% {
        -webkit-transform: rotate(0deg)
    }
    to {
        -webkit-transform: rotate(1turn)
    }
}

.ast_waves {
    position: absolute;
    width: 800px;
    bottom: -75px;
    left: 0;
    margin-left: -400px
}

.ast_waves2 {
    position: absolute;
    width: 100%;
    top: 385px;
    right: 0;
    margin: 0 auto;
    left: -50%;
    z-index: 1
}

.ast_waves3 {
    position: absolute;
    width: 900px;
    bottom: 15px;
    right: -400px
}

.ast_wave {
    width: 700px;
    height: 700px;
    background: rgba(0, 0, 0, .03);
    border: 1px solid hsla(0, 0%, 100%, .5);
    border-radius: 50%;
    margin-left: 50%;
    left: -350px;
    position: absolute;
    bottom: -350px;
    z-index: -1;
    -webkit-transform: scale(.1);
    transform: scale(.1);
    opacity: 0;
    -webkit-animation: pulse 3s ease-out infinite;
    animation: pulse 3s ease-out infinite
}

.ast_wave:nth-of-type(2) {
    -webkit-animation-delay: .6s;
    animation-delay: .6s
}

.ast_wave:nth-of-type(3) {
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s
}

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(.1);
        transform: scale(.1);
        opacity: 0
    }
    50% {
        opacity: 1
    }
    to {
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
        opacity: 0
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: scale(.1);
        transform: scale(.1);
        opacity: 0
    }
    50% {
        opacity: 1
    }
    to {
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
        opacity: 0
    }
}

@-webkit-keyframes pulse-text {
    0% {
        opacity: 1
    }
    50% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@keyframes pulse-text {
    0% {
        opacity: 1
    }
    50% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

.why {
    margin-top: 40px
}

.why>li {
    position: relative;
    padding: 30px;
    background: #fff;
    box-shadow: 0 20px 40px -10px rgba(0, 0, 0, .15)
}

.why>li h4 {
    margin: 0 0 10px;
    position: relative
}

.why>li p {
    margin: 0;
    position: relative
}

.why>li p+p {
    margin: 10px 0 0
}

.why>li+li {
    margin-top: 30px
}

.why>li+li:after {
    content: "";
    position: absolute;
    z-index: 3;
    top: -45px;
    left: 40px;
    height: 60px;
    border: 1px dashed #ffc107
}

.why>li:before {
    font-size: 182px;
    line-height: 102px;
    position: absolute;
    color: #ececec;
    z-index: 0;
    left: 5px;
    top: 10px;
    font-family: Barlow Condensed, sans-serif;
    font-weight: 700
}

.why>li:first-child:before {
    content: "1"
}

.why>li:nth-child(2):before {
    content: "2"
}

.why>li:nth-child(3):before {
    content: "3"
}

.section--testi {
    background-image: url(images/mirrored-squares.png);
    background-attachment: fixed;
    background-position: 50%;
    background-color: #222
}

.testi {
    display: flex;
    margin: 30px -20px
}

.testi>li {
    width: 33.3%;
    padding: 0 20px
}

.testi__name {
    font-size: 20px;
    color: #ffc107;
    z-index: inherit;
    position: relative
}

.testi__item {
    padding: 80px 20px 20px;
    box-shadow: -5px 0 0 0 #ffc107;
    background-size: 100px;
    background-repeat: no-repeat;
    position: relative;
    z-index: 2
}

.testi__item:after {
    content: "";
    background: url(images/quote.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 70px;
    height: 70px;
    display: block;
    position: absolute;
    top: 0;
    z-index: 0
}

.testi__item p {
    color: hsla(0, 0%, 100%, .7);
    margin: 10px 0 0;
    position: relative;
    z-index: inherit
}

.section--at {
    background: #333;
    height: 100vh;
    display: flex;
    align-items: center;
    background: url(images/at-bg.jpg);
    background-attachment: fixed;
    background-size: cover
}

.at p {
    color: #fff
}

.footer__text {
    font-size: 12px;
    padding: 10px 0;
    text-align: center;
    color: #777
}

.modal-title {
    background: #222;
    display: block;
    margin: 0;
    padding: 0 20px;
    color: #fff;
    line-height: 45px
}

button.close {
    position: absolute;
    right: 0;
    top: 0;
    width: 45px;
    height: 45px;
    border: none;
    background: #f44336;
    color: #fff
}

.modal-body {
    padding: 20px
}

.modal-body p {
    margin: 0 0 20px
}

.modal-scrollable {
    background: rgba(0, 0, 0, .7)
}

.modal.fade {
    top: -500%
}

@media (max-width:1200px) {
    .section--cover {
        padding-top: 100px
    }
    .cover {
        flex-direction: column;
        margin: 0 0 40px
    }
    .form {
        width: 100%;
        position: relative;
        z-index: 3
    }
}

@media (max-width:992px) {
    .testi {
        flex-wrap: wrap
    }
    .testi>li {
        width: 50%
    }
    .section--at{
        height: auto;
    }
}

@media (max-width:992px) {
    .owner__photo {
        width: 222px
    }
    .owner__text {
        padding: 40px 20px 40px 160px
    }
    .owner__text:before {
        top: 52px
    }
}

@media (max-width:768px) {
    .ul-services {
        margin: 30px 0 0;
        flex-direction: column
    }
    .ul-services>li {
        width: 100%;
        padding: 0
    }
    .ul-services>li+li {
        margin-top: 20px
    }
    .testi {
        margin: 30px 0 0
    }
    .testi>li {
        width: 100%;
        padding: 0
    }
    .owner {
        flex-direction: column
    }
    .owner__photo {
        width: 170px;
        margin: 0 auto
    }
    .owner__text {
        padding: 20px;
        margin: 0 0 20px
    }
    .owner__text:before {
        height: 2px;
        width: 100%;
        top: 60px
    }
    .owner__text p {
        margin: 20px 0 0
    }
    .ast_waves2 {
        left: 0
    }
    .testi__item {
        box-shadow: none;
        padding: 80px 0 0
    }
    .testi>li+li {
        margin-top: 30px;
        border-top: 1px solid hsla(0, 0%, 100%, .22);
        padding-top: 30px
    }
}

.error {
    color: red;
    font-size: 12px;
}