/* main.css - Deferred styles */

/* ==============================
   Links
   ============================== */

.link-hover-anim{    
    position: relative;
    display: inline-block;
    padding: 6px 0;
    overflow: hidden;    
    font-size: 17px;    
    font-weight: 500;
    letter-spacing: normal;
    line-height: 1;
    text-decoration: none;
    vertical-align: middle;
    color: currentColor;
    background: none;
    border: none;
    cursor: pointer;
}
.link-hover-anim:hover{
    text-decoration: none !important;
}
.main-nav .link-hover-anim{
    top: 1px;
}
.link-strong{
    position: relative;
    display: inline-block;
    overflow: hidden;
    padding: 7px 0;
    transition: transform 0.5s var(--ease-elastic-1), opacity 0.5s var(--ease-elastic-1), color 0.2s var(--ease-default);
}
.underline .link-strong{
    border-bottom: 2px solid currentColor;
}
.underline .link-strong i{
    position: relative;
    top: 0.075em;
}
.link-hover-anim:not(.underline) .link-strong i:not([class^="icon-"]){
    position: relative;
    top: -0.05em;
    vertical-align: middle;
}
.link-strong svg{
    position: relative;
    top: -0.1em;
    margin-right: 0.2em;
}
.link-strong-hovered{
    display: block;
    position: absolute;
    top: 6px;
    left: 0;
    opacity: 0;
    transform: translateY(150%) translateZ(0.001px) skewY(10deg);
}
.link-hover-anim:hover{
    color: inherit;
}
.link-strong-unhovered{
    display: block;
}
.link-hover-anim:hover .link-strong-unhovered{ 
    opacity: 0;
    transform: translateY(-150%) translateZ(0.001px) skewY(-10deg);
}

.link-hover-anim:hover .link-strong-hovered{;
    opacity: 1;
    transform: translateY(0) translateZ(0.001px) skewY(0);
}
.light-content .link-strong,
.light-content .link-hover-anim{
    color: #fff;
}

.link-hover-anim.link-gradient .link-strong{
    background: var(--gradient-primary-1-a);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.link-hover-anim.link-gradient .link-strong i{
    -webkit-text-fill-color: var(--color-primary-1);
}

.link-circle{
    padding-right: 22px;
}
.link-circle:before{
    content: "";
    position: absolute;
    top: calc(50% - 2px);
    right: 7px;
    transform: translate3d(0, -50%, 0.001px);
    display: block;
    width: 51px;
    height: 51px;    
    border: 1px solid currentColor;
    border-radius: 50%;
    transition: all .5s var(--ease-elastic-2);
}
.link-circle:hover:before{
    transform: translate3d(0, -50%, 0.001px) scale(1.1);
}
.link-circle .link-strong{
    padding: 20px 0;
}

.link-circle-1{
    margin-left: -7px;
    padding-left: 27px;
}
.link-circle-1:before{
    content: "";
    position: absolute;
    top: calc(50%);
    left: 7px;
    transform: translate3d(0, -50%, 0.001px);
    display: block;
    width: 60px;
    height: 60px;    
    border: 2px solid var(--color-dark-1);
    border-radius: 50%;
    opacity: .15;
    transition: all .5s var(--ease-elastic-2);
}
.link-circle-1 .link-strong-hovered{
    left: 27px;
}
.light-content .link-circle-1:before{
    border-color: #fff;
    opacity: .25;
}
.link-circle-1:hover:before{
    transform: translate3d(0, -50%, 0.001px) scale(0.88);
}
.link-circle-1 .link-strong{
    padding: 24px 0;
}

  
/* ==============================
   Buttons
   ============================== */
  
.btn-mod,
a.btn-mod{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 3px 13px;
    color: #fff;
    background: var(--color-dark-1);
    border: 1px solid transparent;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: .065em;
    border-radius: 0;
    box-shadow: none;
    transition: var(--transition-default);
    cursor: pointer;
}
.btn-mod:hover,
.btn-mod:focus,
a.btn-mod:hover,
a.btn-mod:focus{
    color: #fff;
    text-decoration: none;
    outline: none;
    border-color: transparent;
    box-shadow: none;
}
.btn-mod:active{
    cursor: pointer !important;
    outline: none !important;
}

.btn-mod i.align-center:before{
    display: block;
    margin: -0.275em 0;
    transform: translateY(0.14em);
}

.btn-mod.btn-small{
    height: auto;
    padding: 6px 15px;
    font-size: 13px;
    letter-spacing: 0.05em;
} 
.btn-mod.btn-medium{
    height: auto;
    padding: 13px 20px 12px;
    font-size: 13px;
    letter-spacing: 0.085em;
} 
.btn-mod.btn-large{
    height: auto;
    padding: 16px 32px 15px;
    font-size: 13px;
    letter-spacing: 0.085em;
} 

.btn-mod.btn-w{
    color: var(--color-dark-1);
    background: #fff;    
}
.btn-mod.btn-w:hover,
.btn-mod.btn-w:focus{
    color: var(--color-dark-1);
    background: rgba(255,255,255, 1);
}

.btn-mod.btn-w-c{
    color: var(--color-primary-1);
    background: #fff;    
}
.btn-mod.btn-w-c:hover,
.btn-mod.btn-w-c:focus{
    color: var(--color-primary-1);
    background: #fff;
}

.btn-mod.btn-border{
    color: var(--color-dark-1);
    border: 1px solid var(--color-dark-1);
    background: transparent;
}
.btn-mod.btn-border:hover,
.btn-mod.btn-border:focus{
    color: var(--color-dark-1);
    border-color: var(--color-dark-1);
}

.btn-mod.btn-border-c{
    color: var(--color-primary-1);
    border: 1px solid var(--color-primary-1);
    background: transparent;
}
.btn-mod.btn-border-c:hover,
.btn-mod.btn-border-c:focus{
    color: #fff;
    border-color: transparent;
    background: var(--color-primary-1);
}

.btn-mod.btn-border-w{
    color: #fff;
    border: 1px solid #fff;
    background: transparent;
}
.btn-mod.btn-border-w:hover,
.btn-mod.btn-border-w:focus{
    border-color: #fff;
}

.btn-mod.btn-border-w-light{
    color: rgba(255,255,255, .8);
    border: 1px solid rgba(255,255,255, .5);
    background: transparent;
}
.btn-mod.btn-border-w-light:hover,
.btn-mod.btn-border-w-light:focus{
    color: #fff;
    border-color: rgba(255,255,255, .8);
}

.btn-mod.btn-gray{
    color: var(--color-dark-4);
    background: var(--color-gray-light-3);
}
.btn-mod.btn-gray:hover,
.btn-mod.btn-gray:focus{
    color: var(--color-dark-3);
    background: var(--color-gray-light-4);
}

.btn-mod.btn-color{
    color: #fff;
    background: var(--color-primary-1);
}
.btn-mod.btn-color-light{
    color: var(--color-primary-1);
    background: var(--color-primary-light-1);
}

.btn-mod.btn-dark,
.btn-mod.btn-dark:hover,
.btn-mod.btn-dark:focus{
    background: var(--color-dark-3) !important;
    border: 1px solid var(--color-dark-mode-gray-2) !important;
    box-shadow: none !important;
}

.btn-mod.btn-circle{
    border-radius: 30px;
}
.btn-circle-alt{
    border-radius: 50%;
}
.btn-circle-alt:hover{
    border-radius: 10px;
}
.btn-mod.btn-round{
    border-radius: var(--border-radius-default);
}
.btn-full{
    width: 100%;
}

.btn-mod.btn-with-icon{
    display: inline-flex;
    align-items: center;    
    height: 42px;
    padding: 0 17px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.2;
    text-transform: none;
    letter-spacing: normal;
    border: none;
    box-shadow: var(--box-shadow-block);
}
.btn-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    margin-left: -10px;
    margin-right: 8px;
    font-size: 16px;
    border-radius: 50%;
}
.btn-icon.color-1{
    color: #fff;
    background: var(--color-primary-1);
}
.btn-icon.color-2{
    color: #fff;
    background: var(--color-primary-2);
}
.btn-icon.color-3{
    color: #fff;
    background: var(--color-primary-3);
}
.btn-icon.color-4{
    color: #fff;
    background: var(--color-primary-4);
}
.btn-mod.btn-with-icon:hover{
    background: #fff;
    box-shadow: var(--box-shadow-block-strong);
}
.btn-mod.btn-with-icon i:not(.btn-icon i){
    position: relative;
    top: 0.05em;
    font-size: 20px;
}

.btn-mod.btn-hover-anim{
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transform: translateZ(0);
}
.btn-mod.btn-hover-anim > span{
    position: relative;
}
.btn-mod.btn-hover-anim:before{
    content: "";
    display: block;
    width: 100%;
    height: 200%;
    position: absolute;
    top: 0;
    left: 0;
    transform: scale(.7) translateY(55%);
    background: var(--color-dark-3a);
    border-radius: 100%;
    transition: all 0.25s cubic-bezier(0,0,.31,.99);
}
.btn-mod.btn-hover-anim:hover{
   opacity: 1;
   border-color: var(--color-dark-3a);
}
.btn-mod.btn-hover-anim:hover:before{
   transform: scaleX(2) scaleY(1) translateY(-15%);
}
.btn-mod.btn-w.btn-hover-anim:before{
    background: #ddd;
}
.btn-mod.btn-w.btn-hover-anim:hover{
   border-color: #ddd;
}
.btn-mod.btn-w-c.btn-hover-anim:before{
    background: var(--color-primary-light-1);
}
.btn-mod.btn-w-c.btn-hover-anim:hover{
   border-color: var(--color-primary-light-1);
}
.btn-mod.btn-color.btn-hover-anim:before{
    background: var(--color-primary-1-a);
}
.btn-mod.btn-color.btn-hover-anim:hover{
    border-color: var(--color-primary-1-a);
}

.btn-mod.btn-ellipse,
.btn-mod.btn-ellipse:focus{
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 170px;
    height: 170px;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.22;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    background: none;
    transform: rotate(-15deg);
}
.btn-mod.btn-ellipse:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: var(--color-dark-1);
    border-radius: 50%;
    opacity: 97%;
    transition: all .37s var(--ease-out-short);
}
.btn-mod.btn-ellipse > *{
    z-index: 1;
}
.btn-mod.btn-ellipse:hover{
    background: none;
    opacity: 1;
}
.btn-mod.btn-ellipse:hover:before{
    transform: scale(1.1);
}
.btn-mod.btn-ellipse.btn-w:before{
    background: #fff;
}

.btn-mod.btn-ellipse-inner{
    position: relative;
}
.btn-ellipse-inner{
    position: relative;
    overflow: hidden;
}
.btn-ellipse-unhovered{
    display: block;
    padding: 10px;
    transition: all .37s var(--ease-out-short);
}
.btn-ellipse-hovered{
    position: absolute;
    top: 100%;
    left: 0;
    display: block;
    padding: 10px;
    opacity: 0;
    transition: all .37s var(--ease-out-short);
}
.btn-mod.btn-ellipse:hover .btn-ellipse-unhovered{
    opacity: 0;
    transform: translate(0,-100%);
}
.btn-mod.btn-ellipse:hover .btn-ellipse-hovered{
    opacity: 1;
    transform: translate(0,-100%);
}

.btn-animate-y{
    position: relative;
    display: block;
    overflow: hidden;
}
.btn-animate-y-1{
    display: block;
    transition: all .37s var(--ease-out-short), opacity .37s linear;
}
.btn-animate-y-2{
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    transform: translate(0,100%);
    transition: all .37s var(--ease-out-short), opacity .37s linear;
}
.btn-mod:hover .btn-animate-y-1,
a:not(.no-hover):hover .btn-animate-y-1{
    opacity: 0;
    transform: translate(0,-100%);
}
.btn-mod:hover .btn-animate-y-2,
a:not(.no-hover):hover .btn-animate-y-2{
    opacity: 1;
    transform: translate(0,0);
}

.big-icon{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    margin: 0 auto 20px;
    font-size: 30px;
    color: var(--color-dark-1);
    background: #fff;
    border-radius: 50%;
    transition: var(--transition-default);
}
.big-icon i{
    position: relative;
    left: 0.1em;
}
.big-icon-gradient{
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    margin: 0 auto 12px;
    overflow: hidden;
    font-size: 30px;
    color: var(--color-dark-1);
    background: #fff;
    border-radius: 50%;
    box-shadow: 0px 0px 100px 0px rgba(185, 71, 217, 0.5);
    transition: transform .2s var(--ease-default);
    isolation: isolate;
    transform: translateZ(0);
}
.big-icon-gradient:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--gradient-primary-1-b);
    opacity: .225;
    transition: opacity .1s var(--ease-default);
}
.big-icon-gradient:hover:before{
    opacity: .15;
}
.big-icon-gradient i{
    position: relative;
    left: 0.1em;
}
.big-icon-gradient i:before{
    background: var(--gradient-primary-1-b);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.big-icon-border{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    margin: 0 auto 20px;
    border: 3px solid var(--color-dark-1);
    text-align: center;
    font-size: 30px;
    color: var(--color-dark-1);
    border-radius: 50%;
    transition: var(--transition-default);
}
.big-icon-border i{
    position: relative;
    left: 0.1em;
}
.big-icon-link{
    display: inline-block;
    font-size: 48px;
    font-weight: 500;
    line-height: 1.3;
    text-decoration: none;
    letter-spacing: -0.02em;
}
.big-icon-link:hover{
    text-decoration: none;
}
.light-content .big-icon-link{
    color: #fff;
}
.big-icon-link-gradient{
    display: inline-block;
    font-size: 48px;
    font-weight: 500;
    line-height: 1.3;
    text-decoration: none;
    letter-spacing: -0.02em;
}
.big-icon-link-gradient:hover{
    text-decoration: none;
}
.light-content .big-icon-link-gradient{
    background: var(--gradient-primary-1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: rgba(255,255,255, .8);
}
.light-content .big-icon-link-gradient:hover{
    -webkit-text-fill-color: rgba(255,255,255, .9);
}
.light-content .big-icon-border{
    color: #fff;
    border-color: #fff;
}

.btn-mod.btn-grad{
    color: #fff !important;
    background-image: var(--gradient-primary-1);
    background-repeat: no-repeat;
    border: none;
}
.btn-mod.btn-border-grad{
	border: 1px solid transparent;
	background:	linear-gradient(to right, white, white), var(--gradient-primary-1-b); 
	-webkit-background-clip: padding-box, border-box;
	background-origin: padding-box, border-box;
    color: var(--color-primary-1);
}
.btn-mod.btn-border-grad > span{
    position: relative;
    display: block;
	background: var(--gradient-primary-1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.btn-mod.btn-border-grad > span i{
    -webkit-text-fill-color: var(--color-primary-1);
}
.btn-mod.btn-border-grad .btn-animate-y-1,
.btn-mod.btn-border-grad .btn-animate-y-2{
    background: var(--gradient-primary-1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.main-nav.dark .btn-border-grad{
    background:	linear-gradient(to right, var(--color-dark-1), var(--color-dark-1)), var(--gradient-primary-1-b); 
	-webkit-background-clip: padding-box, border-box;
	background-origin: padding-box, border-box;
}

/* 
 * Mobile menu button fix 
 */

.mobile-on .link-hover-anim{
    top: 0;
}
.mobile-on .btn-border,
.mobile-on .btn-border:hover{
    color: #fff !important;
    border-color: #fff !important;
}


/* ==============================
   Forms fields
   ============================== */

.form input[type="text"],
.form input[type="email"],
.form input[type="number"],
.form input[type="url"],
.form input[type="search"],
.form input[type="tel"],
.form input[type="password"],
.form input[type="date"],
.form input[type="color"],
.form select{
    display: inline-block;
    height: 27px;
    vertical-align: middle;
    font-size: 13px;
    font-weight: 400;
    color: var(--color-dark-1);
    border: 1px solid rgba(0,0,0, .183);
    padding-top: 0;
    padding-bottom: 2px;
    padding-left: 7px;
    padding-right: 7px;
    border-radius: 0;
    box-shadow: none;    
    transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000); 
}
.form select:not([multiple]){
    padding-right: 24px !important;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="9px" height="5px"><path fill-rule="evenodd" fill="rgb(17, 17, 17)" d="M8.886,0.631 L8.336,0.117 C8.263,0.049 8.178,0.015 8.083,0.015 C7.988,0.015 7.903,0.049 7.830,0.117 L4.506,3.155 L1.183,0.117 C1.109,0.049 1.025,0.015 0.930,0.015 C0.834,0.015 0.750,0.049 0.677,0.117 L0.127,0.631 C0.053,0.699 0.017,0.778 0.017,0.867 C0.017,0.956 0.053,1.035 0.127,1.103 L4.253,4.892 C4.327,4.960 4.411,4.994 4.506,4.994 C4.602,4.994 4.686,4.960 4.759,4.892 L8.886,1.103 C8.959,1.035 8.996,0.956 8.996,0.867 C8.996,0.778 8.959,0.699 8.886,0.631 L8.886,0.631 Z"/></svg>');
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-size: 9px 5px;    
}
.form select[multiple]{
    height: auto;
}
.form input[type="text"]::placeholder,
.form input[type="email"]::placeholder,
.form input[type="number"]::placeholder,
.form input[type="url"]::placeholder,
.form input[type="search"]::placeholder,
.form input[type="tel"]::placeholder,
.form input[type="password"]::placeholder,
.form input[type="date"]::placeholder,
.form input[type="color"]::placeholder,
.form select::placeholder{
    color: var(--color-gray-2);
    transition: var(--transition-default), font-size 0s;
}
.form input[type="text"]:hover::placeholder,
.form input[type="email"]:hover::placeholder,
.form input[type="number"]:hover::placeholder,
.form input[type="url"]:hover::placeholder,
.form input[type="search"]:hover::placeholder,
.form input[type="tel"]:hover::placeholder,
.form input[type="password"]:hover::placeholder,
.form input[type="date"]:hover::placeholder,
.form input[type="color"]:hover::placeholder,
.form select::placeholder{
    color: var(--color-gray-1);
}
.form input[type="text"]:hover,
.form input[type="email"]:hover,
.form input[type="number"]:hover,
.form input[type="url"]:hover,
.form input[type="search"]:hover,
.form input[type="tel"]:hover,
.form input[type="password"]:hover,
.form input[type="date"]:hover,
.form input[type="color"]:hover,
.form select:hover{
    border-color: rgba(0,0,0, .38);
}
.form input[type="text"]:focus,
.form input[type="email"]:focus,
.form input[type="number"]:focus,
.form input[type="url"]:focus,
.form input[type="search"]:focus,
.form input[type="tel"]:focus,
.form input[type="password"]:focus,
.form input[type="date"]:focus,
.form input[type="color"]:focus,
.form select:focus{
    color: var(--color-dark-1);
    border-color: rgba(0,0,0, .7);
    box-shadow: 0 0 3px rgba(0,0,0, .3);
    outline: none;
}
input[type="text"]:-webkit-autofill,
input[type="email"]:-webkit-autofill,
input[type="number"]:-webkit-autofill,
input[type="url"]:-webkit-autofill,
input[type="search"]:-webkit-autofill,
input[type="tel"]:-webkit-autofill,
input[type="password"]:-webkit-autofill,
input[type="date"]:-webkit-autofill,
input[type="color"]:-webkit-autofill,
textarea:-webkit-autofill,
input[type="text"]:-webkit-autofill:hover,
input[type="email"]:-webkit-autofill:hover,
input[type="number"]:-webkit-autofill:hover,
input[type="url"]:-webkit-autofill:hover,
input[type="search"]:-webkit-autofill:hover,
input[type="tel"]:-webkit-autofill:hover,
input[type="password"]:-webkit-autofill:hover,
input[type="date"]:-webkit-autofill:hover,
input[type="color"]:-webkit-autofill:hover,
textarea:-webkit-autofill:hover,
input[type="text"]:-webkit-autofill:focus,
input[type="email"]:-webkit-autofill:focus,
input[type="number"]:-webkit-autofill:focus,
input[type="url"]:-webkit-autofill:focus,
input[type="search"]:-webkit-autofill:focus,
input[type="tel"]:-webkit-autofill:focus,
input[type="password"]:-webkit-autofill:focus,
input[type="date"]:-webkit-autofill:focus,
input[type="color"]:-webkit-autofill:focus,
textarea:-webkit-autofill:focus{
    transition: all 0.2s cubic-bezier(0.000, 0.000, 0.580, 1.000), background-color 1s 900000s ease;
    -webkit-text-fill-color: var(--color-dark-1);
}
.light-content input[type="text"],
.light-content input[type="email"],
.light-content input[type="number"],
.light-content input[type="url"],
.light-content input[type="search"],
.light-content input[type="tel"],
.light-content input[type="password"],
.light-content input[type="date"],
.light-content input[type="color"],
.light-content select{
    color: #fff;
    background: none;
    border-color: rgba(255,255,255, .35);
}
.light-content input[type="text"]:hover,
.light-content input[type="email"]:hover,
.light-content input[type="number"]:hover,
.light-content input[type="url"]:hover,
.light-content input[type="search"]:hover,
.light-content input[type="tel"]:hover,
.light-content input[type="password"]:hover,
.light-content input[type="date"]:hover,
.light-content input[type="color"]:hover,
.light-content select:hover{
    border-color: rgba(255,255,255, .5);
}
.light-content input[type="text"]:focus,
.light-content input[type="email"]:focus,
.light-content input[type="number"]:focus,
.light-content input[type="url"]:focus,
.light-content input[type="search"]:focus,
.light-content input[type="tel"]:focus,
.light-content input[type="password"]:focus,
.light-content input[type="date"]:focus,
.light-content input[type="color"]:focus,
.light-content select:focus{
    color: #fff;
    border-color: rgba(255,255,255, .75);
    background-color: transparent !important;
}
.light-content .form select:not([multiple]){
    background-color: transparent: !important;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="9px" height="5px"><path fill-rule="evenodd" fill="rgb(255, 255, 255)" d="M8.886,0.631 L8.336,0.117 C8.263,0.049 8.178,0.015 8.083,0.015 C7.988,0.015 7.903,0.049 7.830,0.117 L4.506,3.155 L1.183,0.117 C1.109,0.049 1.025,0.015 0.930,0.015 C0.834,0.015 0.750,0.049 0.677,0.117 L0.127,0.631 C0.053,0.699 0.017,0.778 0.017,0.867 C0.017,0.956 0.053,1.035 0.127,1.103 L4.253,4.892 C4.327,4.960 4.411,4.994 4.506,4.994 C4.602,4.994 4.686,4.960 4.759,4.892 L8.886,1.103 C8.959,1.035 8.996,0.956 8.996,0.867 C8.996,0.778 8.959,0.699 8.886,0.631 L8.886,0.631 Z"/></svg>');
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-size: 9px 5px;    
}
.light-content .form select option{
    background: var(--color-dark-1);
}
.light-content .form input[type="text"]::placeholder,
.light-content .form input[type="email"]::placeholder,
.light-content .form input[type="number"]::placeholder,
.light-content .form input[type="url"]::placeholder,
.light-content .form input[type="search"]::placeholder,
.light-content .form input[type="tel"]::placeholder,
.light-content .form input[type="password"]::placeholder,
.light-content .form input[type="date"]::placeholder,
.light-content .form input[type="color"]::placeholder,
.light-content .form select::placeholder{
    color: rgba(255,255,255, .6);
}
.light-content .form input[type="text"]:hover::placeholder,
.light-content .form input[type="email"]:hover::placeholder,
.light-content .form input[type="number"]:hover::placeholder,
.light-content .form input[type="url"]:hover::placeholder,
.light-content .form input[type="search"]:hover::placeholder,
.light-content .form input[type="tel"]:hover::placeholder,
.light-content .form input[type="password"]:hover::placeholder,
.light-content .form input[type="date"]:hover::placeholder,
.light-content .form input[type="color"]:hover::placeholder,
.light-content .form select::placeholder{
    color: rgba(255,255,255, .75);
}
.light-content input[type="text"]:-webkit-autofill,
.light-content input[type="email"]:-webkit-autofill,
.light-content input[type="number"]:-webkit-autofill,
.light-content input[type="url"]:-webkit-autofill,
.light-content input[type="search"]:-webkit-autofill,
.light-content input[type="tel"]:-webkit-autofill,
.light-content input[type="password"]:-webkit-autofill,
.light-content input[type="date"]:-webkit-autofill,
.light-content input[type="color"]:-webkit-autofill,
.light-content textarea:-webkit-autofill,
.light-content input[type="text"]:-webkit-autofill:hover,
.light-content input[type="email"]:-webkit-autofill:hover,
.light-content input[type="number"]:-webkit-autofill:hover,
.light-content input[type="url"]:-webkit-autofill:hover,
.light-content input[type="search"]:-webkit-autofill:hover,
.light-content input[type="tel"]:-webkit-autofill:hover,
.light-content input[type="password"]:-webkit-autofill:hover,
.light-content input[type="date"]:-webkit-autofill:hover,
.light-content input[type="color"]:-webkit-autofill:hover,
.light-content textarea:-webkit-autofill:hover,
.light-content input[type="text"]:-webkit-autofill:focus,
.light-content input[type="email"]:-webkit-autofill:focus,
.light-content input[type="number"]:-webkit-autofill:focus,
.light-content input[type="url"]:-webkit-autofill:focus,
.light-content input[type="search"]:-webkit-autofill:focus,
.light-content input[type="tel"]:-webkit-autofill:focus,
.light-content input[type="password"]:-webkit-autofill:focus,
.light-content input[type="date"]:-webkit-autofill:focus,
.light-content input[type="color"]:-webkit-autofill:focus,
.light-content textarea:-webkit-autofill:focus{
    -webkit-text-fill-color: #fff;
}
.form input[type="text"].input-lg,
.form input[type="email"].input-lg,
.form input[type="number"].input-lg,
.form input[type="url"].input-lg,
.form input[type="search"].input-lg,
.form input[type="tel"].input-lg,
.form input[type="password"].input-lg,
.form input[type="date"].input-lg,
.form input[type="color"].input-lg,
.form select.input-lg{
    height: 52.5px;
    padding-left: 20px;
    padding-right: 20px;
    font-size: 16px;
}
.form input[type="text"].input-md,
.form input[type="email"].input-md,
.form input[type="number"].input-md,
.form input[type="url"].input-md,
.form input[type="search"].input-md,
.form input[type="tel"].input-md,
.form input[type="password"].input-md,
.form input[type="date"].input-md,
.form input[type="color"].input-md,
.form select.input-md{
    height: 46px;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 15px;
}
.form input[type="text"].input-sm,
.form input[type="email"].input-sm,
.form input[type="number"].input-sm,
.form input[type="url"].input-sm,
.form input[type="search"].input-sm,
.form input[type="tel"].input-sm,
.form input[type="password"].input-sm,
.form input[type="date"].input-sm,
.form input[type="color"].input-sm,
.form select.input-sm{
    height: 37px;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 14px;
}
.form input[type=color]{
    padding: 3px !important;
}
.form input.form-check-input{
    border: 1px solid var(--color-gray-1);
}
.form .form-check-label{
    font-weight: 400;
}
.form textarea{
    font-size: 13px;
    font-weight: 400;
    color: var(--color-dark-1);
    border-color: rgba(0,0,0, .183);
    padding: 0 7px;
    outline: none;
    
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    
    -webkit-appearance: none;
}
.form textarea::placeholder{
    color: var(--color-gray-2);
    transition: var(--transition-default);
}
.form textarea:hover::placeholder{
    color: var(--color-gray-1);
}
.form textarea:hover{
    border-color: rgba(0,0,0, .38);
}
.form textarea:focus{
    color: var(--color-dark-1);
    border-color: rgba(0,0,0, .7);
    box-shadow: 0 0 3px rgba(0,0,0, .3);
}
.light-content textarea{
    color: #fff;
    background: none;
    border-color: rgba(255,255,255, .35);
}
.light-content textarea:hover{
    background: none;
    border-color: rgba(255,255,255, .5);
}
.light-content textarea:focus{
    color: #fff;
    background: none;
    border-color: rgba(255,255,255, .75);
}
.light-content .form textarea::placeholder{
    color: rgba(255,255,255, .6);
}
.light-content .form textarea:hover::placeholder{
    color: rgba(255,255,255, .75);
}
.form textarea.input-lg{
    padding: 12px 20px;
    font-size: 16px;
}
.form textarea.input-md{
    padding: 8px 15px;
    font-size: 15px;
    
}
.form textarea.input-sm{
    padding: 5px 10px;
    font-size: 14px;
}
.form input.input-circle,
.form select.input-circle,
.form textarea.input-circle{
    border-radius: 27px;
}
.form label{
    display: inline-block;
    margin-bottom: 7px;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.3;
}
.form .form-group{
    margin-bottom: 21px;
}

.form div.error{
    margin-top: 20px;
    padding: 13px 20px;
    text-align: center;
    background: var(--bs-danger);
    color: #fff;
    border-radius: var(--border-radius-default);
}
.form div.error a,
.form div.error a:hover{
    color: #fff;
}
.form div.error label,
.form div.success label{
    margin: 0;
    font-size: 18px;
    font-weight: 400;
    text-transform: none;    
}
.form div.success{
    margin-top: 20px;
    padding: 13px 20px;
    text-align: center;
    background: rgba(50,178,95, .75);
    color: #fff;
    border-radius: var(--border-radius-default);
}

.form-tip,
.form-tip a{
    font-size: 14px;
    line-height: 1.43;
    color: var(--color-gray-1);
}
.form-tip a:hover{
    color: var(--color-dark-1);
}
.form-tip .fa{
    font-size: 12px;
}
.light-content .form-tip,
.light-content .form-tip a{
    color: var(--color-dark-mode-gray-1);
}

.form-control{
    border-radius: 0;
}

/*
 * Input underline
 */

.form input[type="text"].underline,
.form input[type="email"].underline,
.form input[type="number"].underline,
.form input[type="url"].underline,
.form input[type="search"].underline,
.form input[type="tel"].underline,
.form input[type="password"].underline,
.form input[type="date"].underline,
.form input[type="color"].underline,
.form textarea.underline,
.form select.underline{
    border-top: none;
    border-left: none;
    border-right: none;
    padding-left: 0;
    border-width: 2px;
    border-color: var(--color-dark-1);
    border-radius: 0;
}
.form input[type="text"].underline,
.form input[type="email"].underline,
.form input[type="number"].underline,
.form input[type="url"].underline,
.form input[type="search"].underline,
.form input[type="tel"].underline,
.form input[type="password"].underline,
.form input[type="date"].underline,
.form input[type="color"].underline,
.form textarea.underline{
    padding-right: 0;
}
.form input[type="text"].underline:focus,
.form input[type="email"].underline:focus,
.form input[type="number"].underline:focus,
.form input[type="url"].underline:focus,
.form input[type="search"].underline:focus,
.form input[type="tel"].underline:focus,
.form input[type="password"].underline:focus,
.form input[type="date"].underline:focus,
.form input[type="color"].underline:focus,
.form textarea.underline:focus,
.form select.underline:focus{
    box-shadow: none;
}
.light-content .form input[type="text"].underline,
.light-content .form input[type="email"].underline,
.light-content .form input[type="number"].underline,
.light-content .form input[type="url"].underline,
.light-content .form input[type="search"].underline,
.light-content .form input[type="tel"].underline,
.light-content .form input[type="password"].underline,
.light-content .form input[type="date"].underline,
.light-content .form input[type="color"].underline,
.light-content .form textarea.underline,
.light-content .form select.underline{
    border-color: #fff;
}

/*
 * Input Gradient
 */

.input-grad-wrap{
    border: 1px solid transparent;
	background:	linear-gradient(to right, white, white), var(--gradient-primary-1-b); 
	-webkit-background-clip: padding-box, border-box;
	background-origin: padding-box, border-box;
}
.form input[type="text"].input-grad,
.form input[type="email"].input-grad,
.form input[type="number"].input-grad,
.form input[type="url"].input-grad,
.form input[type="search"].input-grad,
.form input[type="tel"].input-grad,
.form input[type="password"].input-grad,
.form input[type="date"].input-grad,
.form input[type="color"].input-grad,
.form textarea.input-grad,
.form select.input-grad{
    border: none;
}
.form input[type="text"].input-grad:focus,
.form input[type="email"].input-grad:focus,
.form input[type="number"].input-grad:focus,
.form input[type="url"].input-grad:focus,
.form input[type="search"].input-grad:focus,
.form input[type="tel"].input-grad:focus,
.form input[type="password"].input-grad:focus,
.form input[type="date"].input-grad:focus,
.form input[type="color"].input-grad:focus,
.form textarea.input-grad:focus,
.form select.input-grad:focus{
    border: none;
    box-shadow: none;
}
.light-content .input-grad-wrap{
	background:	linear-gradient(to right, var(--color-dark-1), var(--color-dark-1)), var(--gradient-primary-1-b); 
	-webkit-background-clip: padding-box, border-box;
	background-origin: padding-box, border-box;
}


/* ==============================
   Home sections
   ============================== */
  
/*
 * Header common styles
 */

.home-section{
    width: 100%;
    display: block;    
    position: relative;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;    
}
.home-content{
    width: 100%;
    position: relative;
    text-align: center;
}

/*
 * Scroll down icon
 */

@keyframes scroll-down-anim {
    0%{ transform: translateY(-5px); }
    50%{ transform: translateY(5px); }
    100%{ transform: translateY(-5px); }
}

.scroll-down-wrap{
    position: absolute;
    bottom: 25px;
    left: 50%;
    width: 48px;
    height: 48px;
    margin-left: -24px;    
}
.scroll-down{
    display: flex;
	justify-content: center;
	align-items: center;
    width: 100%;
    height: 100%;
    color: var(--color-dark-1) !important;
    font-size: 22px;   
    text-decoration: none;    
    transition: all 500ms cubic-bezier(0.250, 0.460, 0.450, 0.940);    
    animation: scroll-down-anim 1.15s infinite; 
}
.scroll-down:before{
    display: block;
    content: "";
    width: 38px;
    height: 38px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: #fff;
    box-shadow: var(--box-shadow); 
    z-index: 1;
    transition: all 0.4s var(--ease-elastic-2);
}
.scroll-down:hover{
    text-decoration: none;
}
.scroll-down:hover:before{
    box-shadow: var(--box-shadow-strong);
    transform: translate(-50%, -50%) scale(1.25);
}
.scroll-down i{
    position: relative;
    top: 1px;
    z-index: 2;
}

/*
 * Scroll down icon type 1
 */

.scroll-down-wrap-type-1{
    position: absolute;
    bottom: 30px;
    left: 0;
    width: 100%; 
}
.scroll-down-1{
    display: inline-flex;
    justify-content: center;
	align-items: center;
    text-decoration: none; 
}
.scroll-down-1-icon{
    position: relative;
    display: inline-flex;
    justify-content: center;
	align-items: center;
    width: 36px;
    height: 36px;
    margin-right: 8px;
    font-size: 24px;    
}
.scroll-down-1-icon:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 1px solid var(--color-dark-1);
    border-radius: 50%;
    opacity: .38;
    transition: opacity 0.4s ease, transform 0.4s var(--ease-elastic-2);
}
.scroll-down-1-icon svg,
.scroll-down-1-icon img{
    width: 24px;
    height: 24px;
    opacity: .43;
    transition: all 0.4s ease;
}
.scroll-down-1-icon i{
    opacity: .43;
    transition: all 0.4s ease;
}
.scroll-down-1-text{
    font-size: 14px;
    opacity: .6;
    transition: opacity 0.4s ease, transform 0.4s var(--ease-elastic-2);
}
.scroll-down-1:hover{
    text-decoration: none; 
    color: inherit;
}
.scroll-down-1:hover .scroll-down-1-icon:before{
    opacity: 1;
    transform: scale(1.25);
}
.scroll-down-1:hover .scroll-down-1-icon svg,
.scroll-down-1:hover .scroll-down-1-icon img,
.scroll-down-1:hover .scroll-down-1-icon i{
    opacity: 1;
}
.scroll-down-1:hover .scroll-down-1-text{
    opacity: 1;
    transform: translateX(7px);
}
.light-content .scroll-down-1-icon{
    color: #fff;
}
.light-content .scroll-down-1-icon svg,
.light-content .scroll-down-1-icon img{
    opacity: .65;
}
.light-content .scroll-down-1-icon i{
    opacity: .65;
}
.light-content .scroll-down-1-icon:before{
    border-color: #fff;
    opacity: .5;
}
.light-content .scroll-down-1-text{
    color: #fff;
    opacity: .7;
}

/*
 * Scroll down icon type 2
 */

.scroll-down-wrap-2{
    position: absolute;
    bottom: 30px;
    left: 0;
    width: 100%; 
    line-height: 0;
}
.scroll-down-2,
.scroll-down-2:hover{
    display: inline-flex;
    justify-content: center;
	align-items: center;
    text-decoration: none;
    color: var(--color-dark-1);
    animation: scroll-down-2 1.5s infinite ease-out;
}
@keyframes scroll-down-2 {
  0% {
    transform: translateY(-10px);
  }
  50% {
    transform: translateY(10px);
    animation-timing-function: ease-in;
  }
  100% {
    transform: translateY(-10px);
  }
}
.light-content .scroll-down-2,
.light-content .scroll-down-2:hover{
    color: #fff;
}

/*
 * Scroll down type 3
 */

.scroll-down-3-wrap{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: center;  
}
.scroll-down-3{
    position: relative; 
    color: var(--color-dark-1);   
    font-size: 10px;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: 0.1em;
    transition: letter-spacing .27s var(--ease-out-medium);
}
.scroll-down-3:hover{    
    color: unset;
    text-decoration: none;
    letter-spacing: 0.2em;
}
.scroll-down-3:after{
    content: "";
    display: block;
    width: 1px;
    height: 106px;
    margin: 6px auto -53px;
    background: var(--color-dark-1);
}
.light-content .scroll-down-3{
    color: #fff;
}
.light-content .scroll-down-3:after{
    background: rgba(193,193, 193, .9);
}

/*
 * Scroll down icon type 4
 */

.scroll-down-wrap-4{
    position: absolute;
    bottom: 30px;
    left: 0;
    width: 100%; 
}
.scroll-down-4{
    position: relative;
    display: inline-flex;
    justify-content: center;
	align-items: center;
    width: 38px;
    height: 38px;
    text-decoration: none;
    color: var(--color-dark-1);
    border: 2px solid var(--color-dark-1);
    border-radius: 50%;
    transition: all .27s var(--ease-default);
}
.scroll-down-4:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;    
    display: block;
    width: 100%;
    height: 100%;
    background: var(--color-dark-1);
    border-radius: 50%;
    z-index: -1;
    opacity: 0;
    transform: scale(0.3);
    transition: all .27s var(--ease-out-medium);
}
.scroll-down-4:hover{
    color: #fff;
    border-color: transparent;
    text-decoration: none;
}
.scroll-down-4:hover:before{
    opacity: 1;
    transform: scale(1.2);
}
.light-content .scroll-down-4{
    color: #fff;
    border-color: #fff;
}
.light-content .scroll-down-4:hover{
    color: var(--color-dark-1);
    border-color: transparent;
}
.light-content .scroll-down-4:before{
    background: #fff;
}


/*
 * Home section status
 */

.hs-status{
    position: absolute;
    bottom: 30px;
    left: var(--full-wrapper-margin-x);
    width: 180px;
    font-size: 16px;
    line-height: 1.375;
    padding-left: 10px;
    border-left: 2px solid currentColor;
}

/*
 * Home section social media links  
 */

.hs-social{
    position: absolute;
    bottom: 30px;
    right: var(--full-wrapper-margin-x);
}
.hs-social.left{
    left: var(--full-wrapper-margin-x);
    right: auto;
}
.hs-social-link{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin-top: 8px;
    font-size: 16px;
    color: var(--color-dark-1);
    text-decoration: none;
    border: 1px solid var(--color-dark-1);
    border-radius: 50%;
    transition: var(--transition-default);
}
.hs-social-link:hover{
    color: #fff;
    background: var(--color-dark-1);
    text-decoration: none;  
}
.hs-social-link svg{
    display: block;
    width: 1em;
    height: 1em;
    fill: currentColor;
}
.light-content .hs-social-link{
    color: #fff;
    border-color: #fff;
}
.light-content .hs-social-link:hover{
    color: var(--color-dark-1);
    background: #fff;  
}


/*
 * HTML5 BG Video
 */

.bg-video-wrapper{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
}
.bg-video-overlay{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
}
.bg-video{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.bg-video::-webkit-media-controls,
.bg-video::-webkit-media-controls-panel,
.bg-video::-webkit-media-controls-play-button,
.bg-video::-webkit-media-controls-start-playback-button{
  display: none !important;
  -webkit-appearance: none;
}
a.bg-video-button-muted{
    display: block;
    width: 1em;
    height: 1em;
    position: absolute;
    bottom: 20px;
    left: 20px;    
    font-size: 24px;
    line-height: 1;
    color: var(--color-dark-1);   
    z-index: 1000;
}
a.bg-video-button-pause{
    display:block;
    width: 1em;
    height: 1em;
    position: absolute;
    bottom: 20px;
    left: 60px;    
    font-size: 24px;
    line-height: 1;
    color: var(--color-dark-1);   
    z-index: 1000;
}
.light-content a.bg-video-button-muted,
.light-content a.bg-video-button-pause{
    color: #fff;
}

/*
 * Section edge figure
 */

.edge-top-figure-1{
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    padding-top: 15%;
    overflow: hidden;
    background: #fff;
}
.edge-top-figure-1:before{
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 160%;
    height: 520%;
    background: var(--color-dark-1);
    border-radius: 100%;
}
.edge-top-figure-2{
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    padding-top: 15%;
    overflow: hidden;
    background: var(--color-dark-1);
}
.edge-top-figure-2:before{
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 160%;
    height: 520%;
    background: var(--color-dark-2);
    border-radius: 100%;
}

/*
 * Section BG svg shape
 */

.bg-shape-1{
    position: absolute;
    top: 0;
    right: 0;
    width: 90.1875%;
}
.bg-shape-1 img{
    width: 100%;
}

.bg-shape-2{
    position: absolute;
    top: 0;
    left: 0;
    width: 53.625%;
}
.bg-shape-2 img{
    width: 100%;
}

.bg-shape-3{
    position: absolute;
    top: 0;
    left: 0;
    width: 90.1875%;
}
.bg-shape-3 img{
    width: 100%;
}

.bg-shape-4{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.bg-shape-4 img{
    width: 100%;
}

.bg-shape-5{
    position: absolute;
    top: 0;
    right: 0;
    width: 34.375%;
    height: 100%;
    background: var(--gradient-primary-1-b);
    opacity: .15;
}

.bg-shape-6{
    position: absolute;
    top: 50%;
    right: 100%;
    width: 35.325%;
    padding-top: 35.325%;
    background: var(--gradient-primary-1);
    border-radius: 100%;
    opacity: .15;
    transform: translate(9.7%,-50%) rotate(90deg);
}

.bg-shape-7{
    position: absolute;
    top: -10%;
    left: 0;
    width: 187%;
}
.bg-shape-7 img{
    width: 100%;
}

.bg-line-1{
    position: absolute;
    bottom: 45px;
    left: 0;
    width: 100%;   
}
.bg-line-1 img{
    width: 100%;
}
.bg-line-2 img{
    width: 100%;
}
.bg-line-3 img{
    width: 100%;
}

/*
 * Fullwidth gallery
 */

.fullwidth-gallery-wrapper{
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: stretch;
    width: 100%;
    height: 100%;
}
.fullwidth-galley-content{
    position: relative;
    z-index: 25;
}
.fullwidth-gallery{
    display: flex !important;
    align-items: stretch;
}
.fullwidth-gallery .owl-wrapper-outer{
    display: flex;
    align-items: stretch;
    height: auto !important;
}
.fullwidth-gallery .owl-wrapper{
    display: flex !important;
    align-items: stretch;
}
.fullwidth-gallery .owl-item{
    display: flex !important;
    align-items: stretch;
    height: 100% !important;
}

/*
 * Typed text
 */

.typewrite .wrap:after{
    animation: blink 1s infinite;
}
@keyframes blink{
	0% { opacity:1; }
	50% { opacity:0; }
	100% { opacity:1; }
}

/* 
 * Stack Images
 */

.stack-images{
    position: relative;
    margin: 0 auto;
    padding: 19.2307% 0;
}
.stack-images-1{
    max-width: 57.692%;
    position: absolute;
    top: 0;
    right: 0;
}
.stack-images-2{
    position: relative;
    max-width: 57.692%;
    margin: 0 auto;
}
.stack-images-3{
    max-width: 57.692%;
    position: absolute;
    bottom: 0;
    left: 0;
}

/* ==============================
   Features
   ============================== */

.features-item{
    padding: 0 15px;
    text-align: center;
}
.features-icon{
    font-size: 72px;
    margin-bottom: 20px;
    line-height: 1.3;
}
.features-icon svg{
    width: 1em;
    height: 1em;
}
.features-title{
    margin-bottom: 5px;
    font-size: 22px;
    font-weight: 400; 
}
.features-descr{
    font-size: 16px;
    font-weight: 400;
    opacity: .75;
}

/* ==============================
   Features 1
   ============================== */

.features-1-number{
    position: absolute;
    top: 7px;
    left: -40px;
    font-size: 20px;
    font-weight: 500;
    text-align: right;
}
.features-1-icon{
    font-size: 64px;
    margin-bottom: 5px;
    line-height: 1;
}
.features-1-icon svg{
    width: 1em;
    height: 1em;
    fill: currentColor;
}
.features-1-title{
    font-size: 56px;
    font-weight: 500; 
    line-height: 1.1;
    letter-spacing: -0.05em;
}
.features-1-descr{
    font-size: 17px;
    line-height: 1.6470;
    letter-spacing: 0;
}

/* ==============================
   Features 2
   ============================== */

.features-2-item{
    position: relative;
    padding: 60px 40px;
    text-align: center;
}
.features-2-item:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: var(--border-radius-default);
    border: 1px solid transparent;
	background:	linear-gradient(to right, white, white), var(--gradient-primary-1-b); 
	-webkit-background-clip: padding-box, border-box;
	background-origin: padding-box, border-box;
    opacity: .3;
    transition: opacity .27s var(--ease-default);
    z-index: -1;
}
.features-2-item:hover:before{
    opacity: .57;
}
.features-2-label{
    position: absolute;
    top: 18px;
    left: 20px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
    background: var(--gradient-primary-1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.features-2-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 94px;
    height: 94px;
    margin: 0 auto 30px;
    overflow: hidden;
    font-size: 48px;
    line-height: 1;
    color: var(--color-primary-3);
    border-radius: 100%;
    isolation: isolate;
    transform: translateZ(0);
}
.features-2-icon:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--gradient-primary-1-b);
    opacity: .15;
    z-index: -1;
}
.features-2-icon i:before{
    background: var(--gradient-primary-1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.features-2-icon svg{
    width: 1em;
    height: 1em;
    fill: url(#gradient-horizontal) var(--color-primary-3);   
}
.features-2-title{
    margin-bottom: 15px;
    font-size: 19px;
    font-weight: 500; 
}
.features-2-descr{
    font-size: 16px;
    color: var(--color-gray-1);
}
.light-content .features-2-item:before{
	background:	linear-gradient(to right, var(--color-dark-1), var(--color-dark-1)), var(--gradient-primary-1-b); 
	-webkit-background-clip: padding-box, border-box;
	background-origin: padding-box, border-box;
    opacity: .5;
}
.light-content .features-2-item:hover:before{
    opacity: .75;
}
.light-content .features-2-descr{
    color: var(--color-dark-mode-gray-1);
}


/* ==============================
   Portfolio
   ============================== */

/*
 * Works filter
 */

.works-filter{
    position: relative;
    list-style: none;
    padding: 0;
    margin: 0;
    cursor: default;
}
.works-filter a{
    display: inline-block;
    position: relative;
    margin-left: 48px;
    color: var(--color-gray-1);
    text-decoration: none;
    -webkit-transition: var(--transition-default);
    transition: var(--transition-default);
    cursor: pointer;
}
.works-filter a:first-child{
    margin-left: 0;
}
.works-filter a:hover{
    color: var(--color-dark-1);
    text-decoration: none;
}
.works-filter a.active{
    color: var(--color-dark-1);
    cursor: default;
}
.works-filter a.active:hover{
    color: var(--color-dark-1);
}
.works-filter a:after{
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 100%;
    height: 2px;
    background-color: var(--color-dark-1);
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
    -webkit-transition: transform .25s ease-out;
    transition: transform .25s ease-out;
}
.works-filter a.active:after{
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}
.works-filter a:hover:after{
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left center;
    transform-origin: left center;
}
.light-content .works-filter a{
    color: #fff;
    opacity: .72;
}
.light-content .works-filter a:hover,
.light-content .works-filter a.active{
    color: #fff;
    opacity: 1;
}
.light-content .works-filter a:after{
    background-color: #fff;
}

/* Works filter elegant */
.works-filter.works-filter-elegant{
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.works-filter.works-filter-elegant a{
    margin-left: 27px;
    padding: 4px 13px;
}
.works-filter.works-filter-elegant a:before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 2px solid var(--color-dark-1);
    border-radius: 30px;
    opacity: 0;
    transition: var(--transition-default);
}
.works-filter.works-filter-elegant a.active:before{
    opacity: .15;
}
.works-filter.works-filter-elegant a:after{
    display: none;
}
.light-content .works-filter.works-filter-elegant a:before{
    border-color: #fff;
}

/* Works filter fancy */
.works-filter.works-filter-fancy{
    display: flex;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.059em;
    text-transform: uppercase;
}
.works-filter.works-filter-fancy a,
.works-filter.works-filter-fancy a:hover{
    margin: 0;
    padding: 10px 20px;
    color: var(--color-gray-1);
    isolation: isolate;
}
.works-filter.works-filter-fancy a:before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid var(--color-dark-1);
    opacity: .3;
    transition: var(--transition-default);
    z-index: -1;
}
.works-filter.works-filter-fancy a:after,
.works-filter.works-filter-fancy a:hover:after{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    background: var(--color-primary-1);
    transform: none;
    transition: all .2s var(--ease-out-short);
    z-index: -1;
}
.works-filter.works-filter-fancy a:not(:first-child):before,
.works-filter.works-filter-fancy a:not(:first-child):after{
    width: calc(100% + 1px);
    margin-left: -1px;
    border-left: none;
}
.works-filter.works-filter-fancy a:first-child:before,
.works-filter.works-filter-fancy a:first-child:after{
    border-top-left-radius: var(--border-radius-default);
    border-bottom-left-radius: var(--border-radius-default);
}
.works-filter.works-filter-fancy a:last-child:before,
.works-filter.works-filter-fancy a:last-child:after{
    border-top-right-radius: var(--border-radius-default);
    border-bottom-right-radius: var(--border-radius-default);
}
.works-filter.works-filter-fancy a.active,
.works-filter.works-filter-fancy a.active:hover{
    color: #fff;
}
.works-filter.works-filter-fancy a.active:after{
    opacity: 1;
}
.light-content .works-filter.works-filter-fancy a{
    opacity: 1;
}
.light-content .works-filter.works-filter-fancy a:before{
    border-color: #fff;
}
.light-content .works-filter.works-filter-fancy a{
    color: #fff !important;
}
.light-content .works-filter.works-filter-fancy a:hover{
    color: #fff;
}
.light-content .works-filter.works-filter-fancy a.active{
    color: #fff;
}

/* Works filter gradient */
.works-filter.works-filter-gradient{
    font-size: 15px;
    font-weight: 500;
    letter-spacing: normal;
    z-index: 1;
}
.works-filter.works-filter-gradient a{
    margin-left: 10px;
    padding: 5px 17px;
    transition: none;
}
.works-filter.works-filter-gradient a:before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid var(--color-dark-1);
    border-radius: 30px;
    opacity: .15;
    transition: opacity .17s var(--ease-default);
    z-index: -1;
}
.works-filter.works-filter-gradient a:hover{
    color: var(--color-gray-1);
}
.works-filter.works-filter-gradient a:hover:before{
    opacity: .3;
}
.works-filter.works-filter-gradient a.active:before{
    border: 1px solid transparent;
	background:	linear-gradient(to right, white, white), var(--gradient-primary-1-b); 
	-webkit-background-clip: padding-box, border-box;
	background-origin: padding-box, border-box;
    opacity: 1;
}
.works-filter.works-filter-gradient a.active{
    background: var(--gradient-primary-1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.works-filter.works-filter-gradient a:after{
    display: none;
}
.light-content .works-filter.works-filter-gradient a,
.light-content .works-filter.works-filter-gradient a:hover{
    color: var(--color-dark-mode-gray-1);
    opacity: 1;
}
.light-content .works-filter.works-filter-gradient a:before{
    border-color: #fff;
    opacity: .25;
}
.light-content .works-filter.works-filter-gradient a:hover:before{
    border-color: #fff;
    opacity: .5;
}
.light-content .works-filter.works-filter-gradient a.active:before{
    border-color: transparent;
	background:	linear-gradient(to right, var(--color-dark-1), var(--color-dark-1)), var(--gradient-primary-1-b); 
	-webkit-background-clip: padding-box, border-box;
	background-origin: padding-box, border-box;
    opacity: 1;
}

/* Works filter slick */
.works-filter.works-filter-slick{
    display: inline-block;
    padding: 0 13px;
    font-size: 17px;
    font-weight: 400;
    letter-spacing: normal;
    background: #fff;
    border-radius: 100px;
    box-shadow: var(--box-shadow-block);
}
.works-filter.works-filter-slick a{
    margin: 0;
    padding: 14px 17px;
    color: var(--color-gray-1);
}
.works-filter.works-filter-slick a:hover{
    color: var(--color-dark-1);
}
.works-filter.works-filter-slick a:after{
    display: none;
}
.works-filter.works-filter-slick a.active,
.works-filter.works-filter-slick a.active:hover{
    color: var(--color-dark-1);
}
.works-filter.works-filter-slick a.active:after{
    opacity: 1;
}
.light-content .works-filter.works-filter-slick{
    background: var(--color-dark-3);
    border: 1px solid var(--color-dark-mode-gray-2);
}
.light-content .works-filter.works-filter-slick a{
    color: var(--color-dark-mode-gray-1);
}
.light-content .works-filter.works-filter-slick a:hover,
.light-content .works-filter.works-filter-slick a.active,
.light-content .works-filter.works-filter-slick a.active:hover{
    color: #fff;
}

/* Work filter bold */
.works-filter.works-filter-bold{
    font-family: var(--font-alt);
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.works-filter.works-filter-bold a{
    margin-top: 7px;
    margin-left: 27px;
    padding: 4px 13px;
    color: var(--color-dark-1);
    isolation: isolate;
}
.works-filter.works-filter-bold a:before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--color-dark-1);
    border: none;
    border-radius: 30px;
    opacity: 0;
    transition: var(--transition-default);
    z-index: -1;    
}
.works-filter.works-filter-bold a.active,
.works-filter.works-filter-bold a.active:hover{
    color: #fff;    
}
.works-filter.works-filter-bold a.active:before{
    opacity: 1;
}
.works-filter.works-filter-bold a:after{
    display: none;
}
.light-content .works-filter.works-filter-bold a{
    color: #fff;
    opacity: 1;
}
.light-content .works-filter.works-filter-bold a:before{
    background: #fff;
}
.light-content .works-filter.works-filter-bold a.active,
.light-content .works-filter.works-filter-bold a.active:hover{
    color: var(--color-dark-1);    
}

/*
 * Works grid 
 */

.works-grid{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
}
.work-item{
    width: 25%;;
    margin: 0;  
}
.work-grid-2 .work-item{
    width: 49.99%;
}
.work-grid-3 .work-item{
    width: 33.333%;
}

.works-grid.work-grid-gut{
    margin: -30px 0 0 -30px;
}
.works-grid.work-grid-gut .work-item{
    padding: 30px 0 0 30px;
}
.works-grid.work-grid-gut-sm{
    margin: 0 10px 10px 0;
}
.works-grid.work-grid-gut-sm .work-item{
    padding: 10px 0 0 10px;
}
.works-grid.work-grid-gut-lg{
    margin: -80px 0 0 -70px;
}
.works-grid.work-grid-gut-lg .work-item{
    padding: 80px 0 0 70px;
}
.works-grid.work-grid-gut-xl{
    margin: -80px 0 0 -90px;
}
.works-grid.work-grid-gut-xl .work-item{
    padding: 80px 0 0 90px;
}

.work-item a{
    display: block;    
    padding: 0;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
}
.work-item a,
.work-item a:hover{
    color: var(--color-dark-1);
    border: none;
}
.light-content .work-item a,
.light-content .work-item a:hover{
    color: #fff;
}
.work-img{
    position: relative;
    overflow: hidden;
    transform: rotate(0.001deg) translateZ(0);
}
.work-img-bg{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--color-gray-light-2);
}
.light-content .work-img-bg{
    background-color: var(--color-dark-3);
}
.work-img img{
    display: block;
    position: relative;
    width: 100%;    
    overflow: hidden;
    transform: rotate(0.001deg) translateZ(0);
}
.work-intro{
    width: 100%;
    padding-top: 18px;       
    text-align: center;
    transform: translateZ(0);
}
.work-title{
    margin: 0 0 3px 0;
    padding: 0;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: -0.007em;
    line-height: 1.4;
    text-transform: none;
    transform: translateZ(0);
}
.work-descr{   
    display: block; 
    color: var(--color-gray-1);
    font-size: 15px;
    line-height: 1.4;
    text-transform: none;
    transform: translateZ(0);
}
.light-content .work-descr{    
    color: var(--color-dark-mode-gray-1);
}

/* Work item hover state */
.work-item .work-img,
.work-item .work-img > img{    
    transition: all 2s var(--ease-out-medium);
}
.work-item .work-img{
   clip-path: inset(-1px);
   will-change: clip-path;
}
.work-item a:hover .work-img{
   clip-path: inset(10px);
}
.work-item a:hover .work-img > img{
    transform: scale(1.05) rotate(0.001deg) translateZ(0);
}
.work-item .work-intro{
    transition: all 2s var(--ease-out-medium);
}
.work-item .work-intro.text-start{
    padding-right: 10px;
}
.work-item a:hover .work-intro{
    transform: translate(10px, -10px);
}

/* Work item hover state alt */
.works-grid.work-grid-hover-alt .work-item .work-img{ 
    overflow: hidden;
    transition: all .2s var(--ease-default);  
}
.works-grid.work-grid-hover-alt .work-item .work-img img{ 
    transition: all .27s var(--ease-default);
}
.works-grid.work-grid-hover-alt .work-item a:hover .work-img{
   clip-path: none;
   transform: translateY(-7px) rotate(0.001deg) translateZ(0);
}
.works-grid.work-grid-hover-alt .work-item a:hover .work-img img{
   transform: scale(1) rotate(0.001deg) translateZ(0);
}
.works-grid.work-grid-hover-alt .work-item a:hover .work-intro{
    transform: none;
    opacity: 1;
}

/* Work item round */
.works-grid.work-grid-round .work-item .work-img{ 
    overflow: hidden;
    border-radius: var(--border-radius-default);
    isolation: isolate;
    transform: translateZ(0);
}
.works-grid.work-grid-round .work-item .work-img-bg{ 
    border-radius: var(--border-radius-default);
}

/* Work item with hidden title */
.works-grid.hide-titles .work-item a{
    overflow: hidden;    
}
.works-grid.hide-titles .work-item .work-img{    
    transition: all .37s var(--ease-out-short);
}
.works-grid.hide-titles .work-item a:hover .work-img > img{
    transform: none;
}
.works-grid.hide-titles .work-intro{
    position: absolute;
    left: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 100%;
    height: 100%;
    padding: 30px;    
    opacity: 0;
    transition: all .37s var(--ease-default);
}
.works-grid.hide-titles .work-intro:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--color-dark-1);
    opacity: 0.85;
}
.works-grid.hide-titles .work-intro > *{
    position: relative;
    transform: translateY(25px);
    transition: transform .37s var(--ease-out-short), opacity .37s var(--ease-default);
}
.works-grid.hide-titles .work-title{
    margin-bottom: 5px;
    color: #fff;
    font-size: 21px;
    line-height: 1.2;
}
.works-grid.hide-titles:not(.work-grid-2, .work-grid-3) .work-title{
    font-size: 19px;
}
.works-grid.hide-titles .work-descr{
    color: #fff;
    opacity: .7;
}
.works-grid.hide-titles .work-item a:hover .work-img,
.works-grid.hide-titles .work-item a.focus-visible .work-img{
   clip-path: none;
   transform: scale(1.05) translateZ(0.1px);
}
.works-grid.hide-titles .work-item a:hover .work-intro > *,
.works-grid.hide-titles .work-item a:focus-visible .work-intro > *{
    transform: none;
}
.works-grid.hide-titles .work-item a:hover .work-intro,
.works-grid.hide-titles .work-item a:focus-visible .work-intro{
    transform: none;
    opacity: 1;
}
/* Work item with hidden title hover white */
.works-grid.hide-titles.hover-white .work-intro:before{
    background: #fff;
}
.works-grid.hide-titles.hover-white .work-title{
    color: var(--color-dark-1);
}
.works-grid.hide-titles.hover-white .work-descr{
    color: var(--color-gray-1);
    opacity: 1;
}

/* Work item fancy */
.works-grid.work-grid-fancy .work-item a{
    overflow: hidden;   
    border-radius: var(--border-radius-default);
    box-shadow: var(--box-shadow-block); 
    transition: all .27s var(--ease-default);
    isolation: isolate;
    transform: translateZ(0);
}
.works-grid.work-grid-fancy .work-item a:hover{
    box-shadow: var(--box-shadow-block-strong);
    transform: translateY(-7px);
}
.works-grid.work-grid-fancy .work-item a:hover .work-img > img{
    transform: none;
}
.works-grid.work-grid-fancy .work-intro{
    padding: 30px;
}
.works-grid.work-grid-fancy .work-title{
    font-size: 20px;
}
.works-grid.work-grid-fancy .work-item a:hover .work-img{
   clip-path: none;
}
.works-grid.work-grid-fancy .work-item a:hover .work-intro{
    transform: none;
    opacity: 1;
}
.light-content .works-grid.work-grid-fancy .work-item a{
    background: var(--color-dark-3);
    border: 1px solid var(--color-dark-mode-gray-2);
}

/* Works navigation */
.work-navigation{
    width: 100%;
    background: #fff;    
    font-size: 16px; 
    font-weight: 500;   
    z-index: 99;
}
.work-navigation i{
    position: relative;
    top: -1px;
}
.work-navigation a{
    display: block;
    float: left;
    width: 33.33333%;
    overflow: hidden;
    vertical-align: middle;
    text-decoration: none;
    white-space: nowrap;
    cursor: default;
}
.work-navigation a,
.work-navigation a:visited{ 
    color: var(--color-gray-1); 
}
.work-navigation a span:hover{ 
    color: var(--color-dark-1); 
}
.work-navigation a span{
    display: inline-block;
    height: 80px;
    line-height: 79px;
    padding: 0 4%;
    background: #fff;
    cursor: pointer;
    -webkit-transition: all 0.27s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    transition: all 0.27s cubic-bezier(0.300, 0.100, 0.580, 1.000);
}
.work-navigation span:hover{
    background: var(--color-gray-light-2);
}
.work-prev{
    text-align: left;
}
.work-all{
    text-align: center;
}
.work-next{
    text-align: right;
}
.work-full-media img{
    max-width: 100%;
    height: auto;
}
.work-navigation.light-content a,
.work-navigation.light-content a:visited{ 
    color: var(--color-dark-mode-gray-1); 
}
.work-navigation.light-content a span:hover{ 
    color: #fff; 
}
.work-navigation.light-content a span{
    background-color: transparent;
}
.work-navigation.light-content span:hover{
    background-color: rgba(255,255,255, .05);
}


/* ==============================
   Contact 
   ============================== */

.contact-item{
    position: relative;
    padding: 0 0 0 74px;
    color: var(--color-dark-1);
}
.contact-item a{    
    color: currentColor;
    text-decoration: none;
    transition: var(--transition-default);  
}
.contact-item a:hover{
    color: var(--color-dark-1);
    text-decoration: none;
}

.ci-icon{
    position: absolute;
    top: 4px;
    left: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;    
    font-size: 24px;
    color: #fff;
    text-align: center;
}
.ci-icon:before{
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: var(--color-dark-1);
    border-radius: 50%;    
}
.ci-icon svg,
.ci-icon img,
.ci-icon i{
    position: relative;
    vertical-align: middle;
}
.ci-icon.ci-icon-grad:before{
    background: var(--gradient-primary-1-b);
    opacity: .15; 
}
.ci-icon.ci-icon-grad i:before{
    background: var(--gradient-primary-1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.ci-title{
    margin-bottom: 7px;
    color: var(--color-dark-1);
    font-size: 18px;
    font-weight: 500;
    line-height: 1.3;
}
.ci-text{
    font-size: 18px;
    line-height: 1.625;
    color: var(--color-gray-1);
}
.ci-text.large{
    font-size: 21px;
    line-height: 1.467;
}
.ci-link{
    margin-top: 11px;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
.ci-link a{
    position: relative;
    text-decoration: none;
    -webkit-transition: all 0.27s cubic-bezier(0.300, 0.100, 0.580, 1.000);
    transition: all 0.27s cubic-bezier(0.300, 0.100, 0.580, 1.000); 
}
.ci-link a:after{
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 100%;
    height: 1px;
    background-color: currentColor;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left center;
    transform-origin: left center;
    -webkit-transition: transform .25s ease-out;
    transition: transform .25s ease-out;
    opacity: .9;
}
.ci-link a:hover{
    text-decoration: none;
    opacity: .9;
}
.ci-link a:hover:after{
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
}
.light-content .ci-icon{
    color: #fff !important;
}
.light-content .ci-icon:before{
    background-color: #fff;
    opacity: .15;  
}
.light-content .ci-title{
    color: #fff;
}
.light-content .ci-text{
    color: var(--color-dark-mode-gray-1);
}
.light-content .ci-link a{
    color: #fff;
}
.light-content .ci-link a:after{
    background-color: #fff;
}


/* ==============================
   Footer
   ============================== */

.footer{
     font-size: 16px;
}
.footer a{
    transition: all 0.17s var(--ease-default);
}
.footer:not(.light-content) a:hover{
    text-decoration: none;
    color: var(--color-dark-3a) !important;
}
.footer-text a{
    text-decoration: none;
}
footer:not(.light-content) .text-gray a{
    color: var(--color-gray-1);
    transition: all 0.17s var(--ease-default);
}
footer:not(.light-content) .text-gray a:hover{
    color: var(--color-dark-1);
}
.light-content .footer-text{
    color: var(--color-gray-light-3);
}
.footer.light-content a:hover{
    color: #fff !important;
    text-decoration: none;    
}
.footer-social-links{
    font-size: 16px;
}
.footer-social-links a{
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;    
    margin: 3px 10px;
    overflow: hidden; 
    font-size: 20px;
    text-align: center;
    text-decoration: none;
    color: #fff;
    transition: all .27s var(--ease-out-medium);
}
.footer-social-links a:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    border-radius: 50%;
    opacity: 0;
    transform: scale(.3);
    transition: all .27s var(--ease-out-medium);
}
.footer-social-links a svg{
    position: relative;
    display: block;
    width: 1em;
    height: 1em;
    fill: currentColor;
}
.footer-social-links a i{
    position: relative;
}
.footer-social-links a:hover,
.footer.light-content .footer-social-links a:hover,
.light-content .footer-social-links a:hover{
    color: var(--color-dark-1) !important;
}
.footer-social-links a:hover:before{
    opacity: 1;
    transform: none;
}

.fw-title{
    margin-bottom: 16px;
    font-size: 18px;
    letter-spacing: -0.02em;
}
.fw-menu li:not(:last-child){
    margin-bottom: 3px;
}
.fw-menu li a{
    text-decoration: none;
    color: var(--color-gray-1);
}
.fw-menu svg{
    position: relative;
    top: -0.05em;
    width: 1em;
    height: 1em;
    fill: currentColor;
}
.light-content .fw-menu li a{
    text-decoration: none;
    color: rgba(255,255,255, 0.7);
}

.fw-menu-large{
    font-size: 28px;
    line-height: 1.3;
}
.fw-menu-large li:not(:last-child){
    margin-bottom: 10px;
}
.fw-menu-large li a{
    text-decoration: none;
    color: var(--color-dark-1);
    background-image: linear-gradient(currentColor, currentColor);
    background-size: 0 1px;
    background-position: 0 100%;
    background-repeat: no-repeat;
    transition: background-size .5s var(--ease-out-medium);
    will-change: background-size;
}
.fw-menu-large li a:hover{
    text-decoration: none;
    color: var(--color-dark-1);
    background-size: 100% 1px;
}
.fw-menu-large svg{
    position: relative;
    top: -0.05em;
    width: 1em;
    height: 1em;
    fill: currentColor;
}
.light-content .fw-menu-large li a,
.light-content .fw-menu-large li a:hover{
    color: #fff;
}

/* Link to top */
a.link-to-top,
footer .text-gray a.link-to-top{
    position: relative;
    display: flex;
	justify-content: center;
	align-items: center;    
    width: 48px;
    height: 48px;
    color: var(--color-dark-1);
    font-size: 24px;   
    text-decoration: none;
    transition: all 500ms cubic-bezier(0.250, 0.460, 0.450, 0.940);    
}
.link-to-top:before{
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 50%;
    background: #fff;
    box-shadow: var(--box-shadow); 
    z-index: 1;
    transition: all 0.4s var(--ease-elastic-2);
}
.link-to-top svg{
    position: relative;
    width: 1em;
    height: 1em;
    z-index: 1;
}
.link-to-top i,
.link-to-top span{
    position: relative;
    transform: rotate(0.001deg) translateZ(0);
    z-index: 1;
}
.link-to-top:hover{
    text-decoration: none;
}
.link-to-top:hover:before{
    transform: scale(1.25);
}
.light-content a.link-to-top,
.light-content a.link-to-top:hover{
    color: var(--color-dark-1) !important;   
}

a.link-to-top.gradient,
a.link-to-top.gradient:hover{
    color: #fff !important;
}
a.link-to-top.gradient:before{
    background: var(--gradient-primary-1-b);
    box-shadow: none;  
}

a.link-to-top.color-light,
a.link-to-top.color-light:hover{
    color: var(--color-primary-1) !important;
}
a.link-to-top.color-light:before{
    background: var(--color-primary-light-1);
    box-shadow: none;  
}

a.link-to-top.color,
a.link-to-top.color:hover{
    color: #fff !important;
}
a.link-to-top.color:before{
    background: var(--color-primary-1);
    box-shadow: none;  
}

/* Link to top 2 */
.link-to-top-2-wrap{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.link-to-top-2{
    position: relative; 
    display: block;
    width: 120px;
    margin: 0 auto;
    color: var(--color-dark-1);   
    font-size: 10px;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: 0.1em;
    transition: letter-spacing .27s var(--ease-out-medium);
}
.link-to-top-2:hover{    
    color: unset;
    text-decoration: none;
    letter-spacing: 0.2em;
}
.link-to-top-2:before{
    content: "";
    display: block;
    width: 1px;
    height: 106px;
    margin: -53px auto 6px;
    background: rgba(193,193, 193, .9);
}


/* ==============================
   Skip to content link
   ============================== */
  
.skip-to-content{
    position: absolute;
    top: 3px;
    left: 3px;
    padding: 20px 40px;
    color: #ffffff;
    background: var(--color-dark-1);
    -webkit-transform: translateY(-150%);
    -moz-transform: translateY(-150%);
    transform: translateY(-150%);
    z-index:100000;
}
.skip-to-content:hover,
.skip-to-content:focus,
.skip-to-content.focus-visible{
    color: #ffffff;
    opacity: 1;
    background: #000;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    transform: translateY(0);
}


/* === style-responsive.css === */
@charset "utf-8";

/* ==============================
   Small desktop
   ============================== */

@media only screen and (max-width: 1440px) {
    
    .decoration-1{
        left: -30px;
    }
    
}
@media only screen and (max-width: 1366px) {	
    
    root{
        --full-wrapper-margin-x: 30px;
    }
    .container{
        max-width: 1260px;
    }
    .row.gx-huge{
        --bs-gutter-x: calc(-6.527rem + 27.85vw);
    }
    .inner-nav ul li{
        margin: 0 16px;
    }
    .mn-has-multi{
        padding: 7px;
    }
    .mn-sub-multi {
        width: 196px !important;
    }
    .inner-nav ul li .mn-sub li a{
        padding: 10px 14px;
    }
    .stack-images{
        position: relative;
        padding: 12.5% 0;
    }
    .lead-alt{
        font-size: calc(1.896rem + 1.15vw);
    }
    .hs-line{
        height: 87vh;
    }
    .hs-title-1{
        font-size: calc(1.5rem + 3vw);
    }
    .hs-title-2{
        font-size: 8.78477vw;
    }
    .hs-title-2a{
        font-size: 7.5vw;
    }
    .hs-title-3{
        font-size: calc(1.559rem + 0.96vw);
    }
    .hs-title-3a{
        font-size: calc(1.559rem + 0.96vw);
    }
    .hs-title-4{
        font-size: calc(1.19rem + 5.93vw);
    }
    .hs-title-4a{
        font-size: calc(0.39rem + 6.86vw);
    }
    .hs-title-5{
        font-size: 10.9809vw;
    }
    .hs-title-7{
        font-size: 11.7129vw;
    }
    .hs-title-8{
        font-size: calc(1.587rem + 2.53vw);
    }
    .hs-title-9{
        font-size: calc(1.614rem + 2.87vw);
    }
    .hs-title-10{
        font-size: calc(1.827rem + 1.96vw);
    }
    .hs-title-11{
        font-size: calc(0.76rem + 0.57vw);
    }
    .hs-title-12{
        font-size: calc(1.294rem + 4.78vw);
    }
    .hs-title-13{
        font-size: calc(1.37rem + 4.4vw);
    }
    .hs-title-13a{
        font-size: calc(0.717rem + 5.16vw);
    }
    .hs-line-14{
        font-size: calc(1.297rem + 7.27vw);
    }
    .hs-paragraph-1{
        top: 11.713vw;
    }
    .hs-paragraph-2{
        top: 11.7130vw;
        right: 3.66vw;
    }
    .hs-descr{
        font-size:  calc(1.227rem + 1.05vw);
    }
    .section-title{
        font-size: calc(1.179rem + 2.5vw);
    }
    .section-title-small{
         font-size: calc(1.136rem + 1.82vw);
    }
    .section-title-medium{
        font-size: calc(1.735rem + 3.82vw);
    }
    .section-title-large{
        font-size: calc(0.50887rem + 5.99vw);
    }    
    .section-title-repeat{
        font-size: calc(0.358rem + 8.37vw);
    }
    .section-title-strong{
        font-size: calc(1.409rem + 4.21vw);
    }
    .section-descr{
        font-size: calc(1.152rem + 0.33vw);
    }
    .section-descr-large{
        font-size: calc(1.23rem + 0.76vw)
    }
    .section-descr-extralarge{
        font-size: calc(1.156rem + 1.72vw);
    }
    .section-text{
        font-size: calc(1.157rem + 0.4vw);
    }
    
    .services-2-button{
        padding: 4.2459vw;
    }
    .services-2-title{
        font-size: 6.0029vw;
    }
    .services-2-number{
        font-size: 1.9vw;
    }
    .services-2-image{
        max-width: 15.959vw;
    }
    .services-2-descr{
        max-height: 2.1962vw;
        margin-top: -2.1962vw;
        margin-left: 7.3206vw;
        padding: 0 2.9282vw;
        font-size: calc(0.83rem + 0.2vw);
    }
    .services-2-button-close{
        width: 4.39238vw;
        height: 4.39238vw;
    }
    .services-3-item{
        padding: 40px calc(0.868rem + 1.91vw);
    }
    .services-4-title > b{
        font-size: calc(0.521rem + 1.15vw);
    }
    .services-tabs{
        font-size: calc(1.194rem + 1.53vw);
    }
    .services-tabs > li{
        margin-bottom: 0.1em;
    }
    .services-text{
        bottom: 30px;
    }
    .post-prev-title{
        padding-top: calc(0.459rem + 2.39vw);
    }
    .post-prev-title,
    .post-prev-text,
    .post-prev-info{
        padding-left: calc(0.459rem + 2.39vw);
        padding-right: calc(0.459rem + 2.39vw);
    }
    .post-prev-container > *:last-child{
        padding-bottom: calc(0.459rem + 2.39vw);
    }
    
    .portfolio-1-title{
        margin-left: -7.6867vw;
        font-size: calc(0.297rem + 5.65vw);
    }
    .portfolio-1-title a{
        margin-left: -0.19vw;
    }
    
    .post-prev-1-title{
        font-size: calc(0.684rem + 0.96vw);
    }
    .post-prev-1-title.large{
        font-size: calc(0.789rem + 1.27vw);
    }
    
    .post-prev-2-title{
        font-size: calc(0.98rem + 1.2vw);
    }
    
    .contact-1-text{
        font-size: calc(0.692rem + 1.39vw);
    }
    
    .marquee-style-1{
        font-size: calc(0.779rem + 0.48vw);
    }
    .marquee-style-2{
        font-size: calc(0.398rem + 1.73vw);
    }
    .marquee-style-3{
        font-size: 10.9809vw;
    }
    .marquee-style-4{
        font-size: 5.1244vw;
    }
    .marquee-style-5{
        font-size: 14.6412vw;
    }
    .accordion-1 > dt{
        font-size: calc(0.632rem + 1.53vw);
    }
    .portfolio-2-title{
        font-size: calc(1.463rem + 1.43vw);
    }
    .portfolio-3-title{
        font-size: calc(0.975rem + 3.25vw);
    }
    .testimonial,
    .testimonial p,
    .testimonials-slider-1 blockquote {
        font-size: calc(1.079rem + 2.1vw);
    }
    .testimonials-slider-2 blockquote{
        padding-left: 16.1054vw;
    }
    .testimonials-slider-2 .blockquote-icon{
        width: 13.9092vw;
        height: 7.3206vw;;
        font-size: 20.4978vw;
    }
    .testimonials-slider-2 blockquote p{
        font-size: calc(0.81rem + 2.2vw);
    }
    .testimonials-3-text p{
        font-size: calc(1.214rem + 0.33vw);
    }
    .services-5-title{
        font-size: calc(1.26rem + 0.57vw);
    }
    .big-icon-link,
    .big-icon-link-gradient{
        font-size: calc(1.653rem + 1.58vw);
    }
    .testimonials-6-item,
    .testimonials-6-text{
        font-size: calc(0.915rem + 1.05vw);
    }    
    .ci-text.large{
        font-size: calc(0.904rem + 0.48vw);
    }
    .fw-menu-large{
        font-size: calc(0.915rem + 1.05vw);
    }    
    .newsletter-elegant input.newsletter-field{
        font-size: calc(1.472rem + 0.76vw) !important;
    }
    .form.newsletter-modern input.newsletter-field,
    .form.newsletter-modern input.newsletter-field:hover,
    .form.newsletter-modern input.newsletter-field::placeholder,
    .form.newsletter-modern input.newsletter-field:hover::placeholder{
        font-size: calc(1.398rem + 1.29vw);  
    }
    .features-1-title{
        font-size: calc(1.541rem + 2.29vw);
    }
    
    .testimonials-5-text{
        font-size: calc(1.174rem + 0.38vw);
    }
    
    .form.newsletter-elegant input.newsletter-field {
        font-size: calc(1.309rem + 0.96vw) !important;
    }
    
}
@media only screen and (max-width: 1200px) {
    
    .hs-paragraph-1{
        font-size: 15px;
    }
    .hs-paragraph-2{
        max-width: 300px;
        font-size: 12px;
    }
    .inner-nav ul{
        font-size: 16px;
    }	
    .inner-nav ul li{
        margin: 0 11px;
    }
    .inner-nav ul li .mn-sub li a{
        padding: 8px 10px;
        font-size: 14px;
    }
    .mn-sub-multi {
        width: 180px !important;
    }
    .team-social-links a{
        width: 30px;
        height: 30px;
    }    
    
    .mod-breadcrumbs-mini{
        text-align: right;
    }
    
    .decoration-1{
        bottom: -20px;
    }
    
    .number-title{
        font-size: calc(2.273rem + 3.64vw);
    }
    
    .item-carousel .owl-item{
        padding: 0 3vw;
    }
    
    .works-grid:not(.work-grid-3) .work-item{
        width: 49.9%;
    } 
     
}
@media only screen and (max-width: 1199px) {
    
    main{
        overflow: hidden;
    }    
    .tpl-alt-tabs{
        font-size: 13px;
        letter-spacing: 0.2em;
    }
    .tpl-alt-tabs > li{
        width: 170px;
    }
    
    .services-tabs > li > a > .number{
        top: .3em;
    }
    :root{
        --services-text-overlap: 135px;
    }
    
    .team-1-column-sticky{    
        position: static;
        height: auto;
    }
    
}

/* ==============================
   Tablet landskape
   ============================== */

@media only screen and (max-width: 1024px) {
    
    .hs-paragraph-1{
        position: static;
        top: 0;
        max-width: 400px;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }
    .hs-paragraph-2{
        position: static;
        top: 0;
        max-width: 600px;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        text-indent: 0;
    }
    .scroll-down-alt{
        width: 62px;
        height: 62px;
        line-height: 52px;
        margin-left: -31px;
        font-size: 15px;
    }
    .testimonials-slider-1 blockquote p{
        font-size: 18px;
    }
    .benefit-item{
        width: 300px;
        padding: 15px 32px;
    }

    .page-section,
    .split-column-left,
    .split-column-right{
        padding-top: 120px; 
        padding-bottom: 120px;       
    }
    
    .owl-pagination{
        bottom: 25px;
    }  
    
    .lp-item{
        width: 50%;
    }
    .lp-item:nth-child(4n + 5) { 
        clear: none; 
    }
    .lp-item:nth-child(2n + 3) {        
        clear:left;
    }
    .lp-title, .lp-author{
        font-size: 13px;
    }
    
    .fa-examples > li{
        width: 33.3%;
    }
    
    .services-2-descr.js-visible{
        max-height: 800px;  
    }
    
    .works-filter.works-filter-bold a{
        margin-left: 12px;
    }
    
    .section-showcases{
        border-radius: 30px;
    }

}
  
@media only screen and (max-width: 991px) {
     
    .works-grid.work-grid-gut-lg{
        margin: -40px 0 0 -30px;
    }
    .works-grid.work-grid-gut-lg .work-item{
        padding: 40px 0 0 30px;
    }
    .works-grid.work-grid-gut-xl{
        margin: -40px 0 0 -30px;
    }
    .works-grid.work-grid-gut-xl .work-item{
        padding: 40px 0 0 30px;
    }
    .owl-prev,
    .owl-next{
        height: 37px;
        font-size: 37px;
    }
    
    :root{
        --services-text-overlap: 0;
    }
    .services-content-item{
        min-height: 200px;
    }
    .services-text{
        padding: 0;
    }
    img.services-image{
        align-self: flex-end;
        width: 60%;
        max-width: 520px;
        margin: 0 0 0 35%;
    }
    
    .mod-breadcrumbs:not(.align-center):not(.mod-breadcrumbs-mini) {
        text-align: left !important;
    }
    
    .tpl-alt-tabs > li{
        width: 200px;
    } 
    
    .team-item-name{
        font-size: 18px;
    }
    
    .features-icon{
        font-size: 64px;
    } 
    .features-title{
        font-size: 20px;
    }
    .features-descr{
        font-size: 16px;
    }
    .alt-features-grid{
        margin-top: -30px;
    } 
    .alt-features-item{
        margin-top: 30px;
    }
    .work-item,
    .work-grid-3 .work-item,
    .container .work-grid-3 .work-item{
        width: 49.9%;
    }      
    
    .contact-1-left,
    .contact-1-right{
        border-radius: 20px;
    }
    
    .split-column-left{
        padding-right: 30px;
        border-radius: 0;
    }
    .split-column-right{
        padding-left: 30px;
        border-radius: 0;
    }
    .split-image-left,
    .split-image-right{
        overflow: visible;
        border-radius: 0;
    }
    .split-image-left img,
    .split-image-right img{
        position: relative;
        height: auto;
    }
    
    .call-action-2-images {
        margin: 0;
    }
    .call-action-3-image-2-wrap{
        left: 0;
    }

}
  
  
/* ==============================
   Tablet Portrait
   ============================== */
  
@media only screen and (max-width: 768px) {
    
    .page-section,
    .split-column-left,
    .split-column-right{
        padding-top: 80px;
        padding-bottom: 80px;
    }    
    .small-section{
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .small-title{
        font-size: 18px;
    }
    
    .section-features li{
        font-size: 11px;
        padding: 8px 8px 6px 8px;
     }
    
    .owl-pagination{
        bottom: 17px;
    }  
    
    .tpl-minimal-tabs > li{
        padding: 0 5px;
    }    
        
    .benefit-item{
        width: 264px;
    }
    .alt-service-grid{
        margin-top: -30px;
    }
    .alt-service-item{
        margin-top: 30px;
    }

    .works-filter a{
        margin: 4px 12px 4px 0;
    }    
    .blog-item{
        margin-bottom: 50px;
    }
    .blog-item-title{
        font-size: 28px;
    }
    .blog-item-title .small{
        font-size: 15px;
    }
    .blog-media{
        margin-bottom: 15px;
    }
    .blog-item-body .small{
        font-size: 13px;
    }
    .google-map > iframe{
        height: 300px;
    }
    
    .decoration-3{
        bottom: -125px;
        right: -35px;
    }
    
    .portfolio-3-image{
        border-radius: 30px;
    }
    
}

@media only screen and (max-width: 767px) {
    
    .fixed-height-small{
        height: 300px;
        min-height: 300px;
    }
    .fixed-height-medium{
        height: 350px;
        min-height: 350px;
    }
    .fixed-height-large{
        height: 400px;
        min-height: 400px;
    }
    .mark-decoration-1 > svg{
        bottom: -0.55em;
    }
    .services-text{
        position: relative;
        bottom: 0;
        left: 0;
        max-width: 100%;
        margin-bottom: 10px;
    }
    .services-text-container{
        padding: 30px;
    }
    img.services-image{
        max-width: unset;
        width: 100%;
        margin: 0;
    }
    .benefit-item{
        width: 230px;
        padding: 0;
    }    
    .benefit-item:hover:after{
        display: none;
    }       
    .wide-heading{
        font-size: 32px;
        letter-spacing: 2px;
    }    
    .works-filter a{
        margin: 4px 4px 4px 0;
        width: 46%;
    }
    .works-filter a.active:after,
    .works-filter a:hover:after{
        transform: scaleX(0);
    }
    .works-filter.works-filter-elegant a{
        margin: 4px 4px 4px 0;
        width: 48%;
    }
    .works-filter.works-filter-fancy{
        display: block;
    }
    .works-filter.works-filter-fancy a,
    .works-filter.works-filter-fancy a:hover,
    .works-filter.works-filter-fancy a.active{
        margin: 2px !important;
        width: 46%;
    }
    .works-filter.works-filter-fancy a.active:after,
    .works-filter.works-filter-fancy a:hover:after{
        transform: none;
    }
    .works-filter.works-filter-fancy a:before,
    .works-filter.works-filter-fancy a:after{
        width: 100%;
        margin-left: 0;
    }
    .works-filter.works-filter-fancy a:before{
        border: 1px solid var(--color-dark-1) !important;
    }
    .works-filter.works-filter-fancy a:before,
    .works-filter.works-filter-fancy a:after{
        border-radius: var(--border-radius-default);
    }
    .works-filter.works-filter-gradient a{
        margin: 4px 4px 4px 0;
        width: 47.5%;
    }
    .works-filter.works-filter-slick{
        display: block;
        padding: 0;
        background: transparent;
        border-radius: 0;
        box-shadow: none;
    }
    .works-filter.works-filter-slick a,
    .works-filter.works-filter-slick a:hover,
    .works-filter.works-filter-slick a.active{        
        width: 46%;
        margin: 2px !important;
        padding-top: 10px;
        padding-bottom: 10px;
        background: #fff;
        border-radius: 100px;
        box-shadow: var(--box-shadow-block);
    }
    .works-filter.works-filter-bold a,
    .works-filter.works-filter-bold a:first-child{
        margin: 4px;
        font-size: 14px;
    }
    .work-item,
    .work-grid-2 .work-item,
    .work-grid-3 .work-item,
    .container .work-grid-3 .work-item,
    .work-grid-4 .work-item{
        width: 100% !important;
    }   
    .big-icon{
        width: 60px;
        height: 60px;
        line-height: 52px;
        font-size: 24px;
        margin-bottom: 0;
    }
    .text-mobile{
        font-size: 110%;
        line-height: 1.2;
    }
    .portfolio-1-title{
        margin-left: 0;
    }
    
    .fw-social-inline-item{
        display: block;
    }
    
    .map-boxed-1{
        min-height: 50vh;
        aspect-ratio: 9/12;
        padding: 5px;
        border-radius: var(--border-radius-default);
    }
    .map-boxed-1 iframe,
    .map-boxed-1 img{        
        border-radius: calc(var(--border-radius-default) - 5px);
    }
    
    .composition-7{
        margin-top: -30px;
    }
    .composition-7-image-1,
    .composition-7-image-2,
    .composition-7-image-3,
    .composition-7-image-4{
        width: 46.5%;
        margin-top: 30px;
    }
    .testimonials-6-icon{
        font-size: 7em;
    }
    .services-8-icon{
        margin-bottom: 25px;
    }
    
}


/* ==============================
   Phone
   ============================== */
  
@media only screen and (max-width: 575px) { 

    .form input.newsletter-field,
    .form .newsletter-field-wrap{
        display: block;
        width: 100%;
        margin-right: 0;
        margin-bottom: 10px;
    }
    .form .newsletter-button{
        display: block;
        width: 100%;
    }
    
    .works-filter a{
        margin: 4px 4px 4px 0;
    } 
    
    .hs-wrap{
        padding: 30px 20px;
    }
    
    .scroll-down-2,
    .scroll-down-2:hover{
        animation: none;
    }
    
    .contact-2-icon{
        width: 36px;
    }
    .contat-2-intro{
        padding: 15px 10px;
    }
    .contact-2-text{
        font-size: 16px;
    }
     
}
    
@media only screen and (max-width: 480px) {
    
    .full-wrapper{
        --full-wrapper-margin-x: 20px;
    }
    .container{
        padding-left: 20px;
        padding-right: 20px;
    }
    .lead{
        font-size: 120%;
    }
    .form textarea{
        min-height: 200px !important; 
    }
    .tpl-tabs {
        border: none;
    }
    .tpl-tabs li .nav-link.active{
        border-color: var(--color-gray-light-5);
        border-radius: var(--border-radius-default);
    }
    .blog-item-body blockquote p:before{
        display: block;
        margin-top: 1em;
        position: static;
        top: 0;
        left: 0;
        font-size: 2.58em;
        line-height: 0;
        opacity: 1;
    }
    .page-section,
    .split-column-left,
    .split-column-right{
        padding-top: 70px;
        padding-bottom: 70px;
    }
    .small-section{
        padding: 30px 0;
    }    
    .owl-pagination{
        bottom: 5px !important;
    }    
    .owl-page{
        padding-left: 8px;
        padding-right: 8px;
    }
    .owl-prev{
        left: 0;
    }
    .owl-next{
        right: 0;
    }
    
    .tpl-minimal-tabs > li{
        padding: 0;
    }
    .tpl-minimal-tabs > li > a{
        padding: 6px 10px 5px;
    }
    .tpl-alt-tabs{
        font-size: 12px;
        letter-spacing: 0.1em;
    }
    .tpl-alt-tabs > li{
        width: 120px;
        font-size: 16px;
    }
    .alt-tabs-icon{
        font-size: 32px;
    }
    
    .work-container{
        padding: 30px 0;
    }     
    .works-filter a{
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }    
    .work-full-text{
        margin-top: 30px;
    }
    .work-full-title{
        font-size: 20px;
    }    
    .works-filter.works-filter-elegant a{
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    .works-filter.works-filter-fancy a,
    .works-filter.works-filter-fancy a:hover,
    .works-filter.works-filter-fancy a.active{
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .works-filter.works-filter-gradient a{
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    .works-filter.works-filter-slick a,
    .works-filter.works-filter-slick a:hover,
    .works-filter.works-filter-slick a.active{
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    } 
    .call-action-2-image-2{
        margin: 60px auto;
    }
    .post-prev-3-intro{
        padding: 25px 20px;
    }
    .composition-8-image{
        margin-bottom: 60px;
        border-radius: 50px;        
    }
    .composition-8-decoration-2{
        bottom: -60px;
    }
    .blog-container{
        margin-top: 30px;
        margin-bottom: 30px;
    }    
    .blog-item-q p{
        font-size: 20px;
    }
    .pagination a{
        min-width: 32px;
        margin-right: 3px;
        padding: 6px 8px;
        font-size: 16px;
    }
    .comment-avatar{
        width: 30px;
        margin-top: 7px;
    }    
    .comment-item{
        font-size: 15px;
    }    
    .separ-space{
        display: block;
        height: 10px;
    }
    .google-map > iframe{
        height: 300px;
    }
    .tpl-tabs > li{
        display: block;
        float: none;
        width: 100%;
    }
    .tpl-tabs > li.active a{
        background: #f5f5f5 !important;
    }
    
    .mark-decoration-1:before{
        bottom: -0.27em;
    }
    
    .blog-item-title{
        font-size: 22px;
    }
    .blog-item-body{
        margin-bottom: 37px;
        font-size: 18px;
    }
}


/* ==============================
   Max Height 768
   ============================== */

@media only screen and (max-height: 768px) {
    
    .stack-images{
        padding: 16% 0;
    }
    
}


/* ==============================
   Max Height 374
   ============================== */

@media only screen and (max-height: 374px) {
    
    .min-height-80vh,
    .min-height-90vh,
    .min-height-100vh{
        min-height: 374px;
    }
    
}


/* ==============================
   IOS Background Fix
   ============================== */
  
.mobile .page-section, .mobile .home-section, .mobile .small-section{
    background-attachment: scroll !important;
}

/*
 * iPad Pro
 */

@media only screen and (max-height: 1366px) and (-webkit-min-device-pixel-ratio: 1.5) {
    
    html:not(.no-touch) .page-section, html:not(.no-touch) .home-section, html:not(.no-touch) .small-section{
        background-attachment: scroll !important;
    }
    
}

/* ==============================
   Print Styles Fix
   ============================== */
  
@media print {
    
    *{
        color: #000 !important;
        background: #fff !important;
    }
    .main-nav{
        display: none;
    }
    .buy-button{
        display: none;
    }
    img{
        display: block;
    }    
    
}
/* === demo-fancy.css === */
:root{
    --font-global: 'Inter', sans-serif;
    --font-alt: 'Inter', sans-serif;
    --color-dark-1: #343d55;
    --color-dark-2: #3f4963;
    --color-dark-3: #3f485e;
    --color-dark-3a: #4e5a76;
    --color-dark-4: #555960;    
    --color-gray-1: #697582;
    --color-gray-2: #747f8c;
    --color-gray-3: #8a95a2;    
    --color-primary-1: #335cd6;
    --color-primary-1-a: #316be2;    
    --color-primary-light-1: #eaf0fd;
    --color-primary-light-1-a: #bccaf1;
    --color-primary-2: #7752e7;
    --color-primary-light-2: #e7defe;
    --color-primary-3: #b947d9;
    --color-primary-light-3: #f7defe;
    --color-primary-4: #e748b1;
    --color-primary-light-4: #ffe1f5; 
    --color-secondary-1: #fbe3a1;
    --color-gray-light-1: #f1f3f6;
    --color-gray-light-2: #f7f9fc;
    --color-gray-light-3: #cad0d7;
    --color-gray-light-4: #d5d7d8;
    --color-gray-light-5: #cccdcf;
    --color-gray-light-6: #bbbdbf;
    --gradient-gray-light-1: linear-gradient(0deg, #f7f9fc 0%, #fff 100%);
    --gradient-gray-light-2: linear-gradient(0deg, #fff 0%, #f7f9fc 100%); 
    --border-radius-default: 10px;
    --box-shadow: 0px 5px 10px 0px rgba(42, 54, 79, 0.05),0px 1px 1px 0px rgba(42, 54, 79, 0.03),0px 3px 5px 0px rgba(42, 54, 79, 0.03);
    --box-shadow-strong: 0px 5px 10px 0px rgba(42, 54, 79, 0.08),0px 1px 1px 0px rgba(42, 54, 79, 0.06),0px 3px 5px 0px rgba(42, 54, 79, 0.06);
    --box-shadow-block: 0px 1px 1px 0px rgba(42, 54, 79, 0.02),0px 2px 4px 0px rgba(42, 54, 79, 0.02),0px 4px 8px 0px rgba(42, 54, 79, 0.02),0px 0px 20px 0px rgba(42, 54, 79, 0.08);
    --box-shadow-block-strong: 0px 1px 1px 0px rgba(42, 54, 79, 0.05),0px 4px 12px 0px rgba(42, 54, 79, 0.05),0px 10px 20px 0px rgba(42, 54, 79, 0.05),0px 10px 38px 0px rgba(42, 54, 79, 0.12);
}
.dark-mode{
    --color-primary-1: #5d86fe;
    --color-primary-2: #a080ff;
    --color-primary-3: #dc5fff;
    --color-primary-4: #ff68cc;
    --gradient-primary-1: linear-gradient( 90deg, var(--color-primary-4) 0%, var(--color-primary-3) 33%, var(--color-primary-2) 67%, var(--color-primary-1) 100%);
    --gradient-primary-1-a: linear-gradient( 90deg, var(--color-primary-4) 25%, var(--color-primary-3) 40%, var(--color-primary-2) 60%, var(--color-primary-1) 75%);
    --gradient-primary-1-b: linear-gradient( 45deg, var(--color-primary-4) 0%, var(--color-primary-3) 33%, var(--color-primary-2) 67%, var(--color-primary-1) 100%);
    --gradient-primary-1-c: linear-gradient( 0deg, var(--color-primary-4) 0%, var(--color-primary-3) 33%, var(--color-primary-2) 67%, var(--color-primary-1) 100%);
    --gradient-dark-alpha-1: linear-gradient( 90deg, var(--color-dark-1) 40%, transparent 87%);
    --gradient-dark-alpha-2: linear-gradient( 90deg, transparent 13%, var(--color-dark-1) 60%);
    --gradient-primary-alpha-1: linear-gradient( 90deg, var(--color-primary-1) 40%, transparent 87%);
    --gradient-primary-alpha-2: linear-gradient( 90deg, transparent 13%, var(--color-primary-1) 60%);
}
body{
    color: var(--color-dark-1);
    font-family: var(--font-global);
    font-size: 18px;
    font-weight: 400; 
    line-height: 1.625;
    letter-spacing: -0.0025em;
}
h1,h2,h3,h4,h5,h6,
.h1,.h2,.h3,.h4,.h5,.h6{
    font-weight: 700;
}
h3, .h3{
    font-size: 28px;
    letter-spacing: -0.03em;
}
b, strong{
    font-weight: 600;
}
.small{
    font-size: 0.8em;
}
blockquote p {
    position: relative;
    letter-spacing: -0.0225em;
}
hr:not([size]){
    background: var(--color-dark-1);
    height: 2px;
    opacity: .055;
}
.dark-mode hr.white{
    background-color: #fff;
    opacity: .0557;
}
.bg-dark-alpha:before,
.bg-dark-alpha .YTPOverlay:before{
    background: #101828;
    opacity: .97;
}
.bg-dark-alpha-30:before,
.bg-dark-alpha-30 .YTPOverlay:before{
    background: #101828;
    opacity: .3;
}
.bg-dark-alpha-50:before,
.bg-dark-alpha-50 .YTPOverlay:before{
    background: #101828;
    opacity: .5;
}
.bg-dark-alpha-60:before,
.bg-dark-alpha-60 .YTPOverlay:before{
    background: #101828;
    opacity: .6;
}
.bg-dark-alpha-70:before,
.bg-dark-alpha-70 .YTPOverlay:before{
    background: #101828;
    opacity: .7;
}
.bg-dark-alpha-80:before,
.bg-dark-alpha-80 .YTPOverlay:before{
    background: #101828;
    opacity: .8;
}
.bg-dark-alpha-90:before,
.bg-dark-alpha-90 .YTPOverlay:before{
    background: #101828;
    opacity: .9;
}
.light-content .section-caption-fancy{   
    background-image: linear-gradient(15deg, rgba(18,29,51, .75) 0%, transparent 100%);
}
.light-content .section-caption-slick{
    color: #fff;  
    background-image: linear-gradient( 45deg, rgba(18,29,51, .75) 0%, transparent 100%);
}
.main-nav.dark{
    background-color: rgba(16,24,40, .8777);
}
.main-nav.dark-mode{
    background-color: rgba(69,77,102, .9);
}
.inner-nav ul{
    letter-spacing: -0.01em;
}
.inner-nav ul li {
    margin: 0 18.5px;
}
.inner-nav > ul > li > a{
    position: relative;
    opacity: .7;
}
.inner-nav > ul > li > a:not(.no-hover):before{
    content: "";
    position: absolute;
    top: calc(50% - 0.5em);
    right: -0.39em;
    display: block;
    width: 3px;
    height: 3px;
    background: var(--color-primary-1);
    border-radius: 50%;
    opacity: 0;
    transform: scale(0);
    transition: var(--transition-default);
}
.inner-nav ul li a:hover:before,
.inner-nav ul li a.active:before{
    opacity: 1;
    transform: scale(1);
}
.main-nav.dark .inner-nav ul li a:not(.no-hover):before{
    background: var(--color-primary-1-a);
}
.mn-sub{
    background: rgba(74,82,107, .9927);
}
.mobile-on .desktop-nav ul{
    background: rgba(74,82,107, .9927);
}
.mobile-on .desktop-nav ul li a,
.inner-nav ul li .mn-sub li a,
.mn-group-title{
    color: rgba(255,255,255, .9) !important;
 
}
.form label{
    margin-bottom: 15px;
    font-size: 20px;
    font-weight: 700;
}
.form .form-group{
    margin-bottom: 25px;
}
.form-tip,
.form-tip a{
    font-size: 13px;
    line-height: 1.53;
}
.form input[type="text"],
.form input[type="email"],
.form input[type="number"],
.form input[type="url"],
.form input[type="search"],
.form input[type="tel"],
.form input[type="password"],
.form input[type="date"],
.form input[type="color"],
.form select,
.form textarea{
    border-color: rgba(52,61,85, .183);
}
.form select:not([multiple]){
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="9px" height="5px"><path fill-rule="evenodd" fill="#343d55" d="M8.886,0.631 L8.336,0.117 C8.263,0.049 8.178,0.015 8.083,0.015 C7.988,0.015 7.903,0.049 7.830,0.117 L4.506,3.155 L1.183,0.117 C1.109,0.049 1.025,0.015 0.930,0.015 C0.834,0.015 0.750,0.049 0.677,0.117 L0.127,0.631 C0.053,0.699 0.017,0.778 0.017,0.867 C0.017,0.956 0.053,1.035 0.127,1.103 L4.253,4.892 C4.327,4.960 4.411,4.994 4.506,4.994 C4.602,4.994 4.686,4.960 4.759,4.892 L8.886,1.103 C8.959,1.035 8.996,0.956 8.996,0.867 C8.996,0.778 8.959,0.699 8.886,0.631 L8.886,0.631 Z"/></svg>');  
}
.form input[type="text"]:hover,
.form input[type="email"]:hover,
.form input[type="number"]:hover,
.form input[type="url"]:hover,
.form input[type="search"]:hover,
.form input[type="tel"]:hover,
.form input[type="password"]:hover,
.form input[type="date"]:hover,
.form input[type="color"]:hover,
.form select:hover,
.form textarea:hover{
    border-color: rgba(52,61,85, .38);
}
.form input[type="text"]:focus,
.form input[type="email"]:focus,
.form input[type="number"]:focus,
.form input[type="url"]:focus,
.form input[type="search"]:focus,
.form input[type="tel"]:focus,
.form input[type="password"]:focus,
.form input[type="date"]:focus,
.form input[type="color"]:focus,
.form select:focus,
.form textarea:focus{
    border-color: rgba(52,61,85, .7);
    box-shadow: 0 0 3px rgba(52,61,85, .3);
}
.form input[type="text"]::placeholder,
.form input[type="email"]::placeholder,
.form input[type="number"]::placeholder,
.form input[type="url"]::placeholder,
.form input[type="search"]::placeholder,
.form input[type="tel"]::placeholder,
.form input[type="password"]::placeholder,
.form input[type="date"]::placeholder,
.form input[type="color"]::placeholder,
.form select::placeholder,
.form textarea::placeholder{
    color: var(--color-gray-3);
}
.form input[type="text"].input-md,
.form input[type="email"].input-md,
.form input[type="number"].input-md,
.form input[type="url"].input-md,
.form input[type="search"].input-md,
.form input[type="tel"].input-md,
.form input[type="password"].input-md,
.form input[type="date"].input-md,
.form input[type="color"].input-md,
.form select.input-md{
    height: 47px;
    font-size: 16px;
}
.form textarea.input-md{
    font-size: 16px;
}
.form input[type="text"].input-lg,
.form input[type="email"].input-lg,
.form input[type="number"].input-lg,
.form input[type="url"].input-lg,
.form input[type="search"].input-lg,
.form input[type="tel"].input-lg,
.form input[type="password"].input-lg,
.form input[type="date"].input-lg,
.form input[type="color"].input-lg,
.form select.input-lg{
    height: 52px;
    font-size: 17px;
}
.form textarea.input-lg{
    font-size: 17px;
}
.icon-info {
    top: 0.07em;
}
.light-content input[type="text"],
.light-content input[type="email"],
.light-content input[type="number"],
.light-content input[type="url"],
.light-content input[type="search"],
.light-content input[type="tel"],
.light-content input[type="password"],
.light-content input[type="date"],
.light-content input[type="color"],
.light-content select,
.light-content textarea{
    border-color: rgba(255,255,255, .25);
}
.light-content input[type="text"]:hover,
.light-content input[type="email"]:hover,
.light-content input[type="number"]:hover,
.light-content input[type="url"]:hover,
.light-content input[type="search"]:hover,
.light-content input[type="tel"]:hover,
.light-content input[type="password"]:hover,
.light-content input[type="date"]:hover,
.light-content input[type="color"]:hover,
.light-content select:hover,
.light-content textarea:hover{
    border-color: rgba(255,255,255, .35);
}
.light-content input[type="text"]:focus,
.light-content input[type="email"]:focus,
.light-content input[type="number"]:focus,
.light-content input[type="url"]:focus,
.light-content input[type="search"]:focus,
.light-content input[type="tel"]:focus,
.light-content input[type="password"]:focus,
.light-content input[type="date"]:focus,
.light-content input[type="color"]:focus,
.light-content select:focus,
.light-content textarea:focus{
    border-color: rgba(255,255,255, .75);
}
.btn-mod,
a.btn-mod{
    font-weight: 700;
}
.btn-mod.btn-border-c{
    border-color: var(--color-primary-light-1-a);
}
.btn-mod.btn-border-c:hover,
.btn-mod.btn-border-c:focus{
    background: transparent;
    color: var(--color-primary-1);
    border-color: var(--color-primary-light-1-a);
}
.btn-mod.btn-small{
    padding: 12px 22px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.085em;
}
.btn-mod.btn-medium{
    padding: 12px 22px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.085em;
}
.btn-mod.btn-large{
    padding: 15px 36px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.085em;
}
.big-icon{
    color: var(--color-primary-1);
}
.inner-nav > ul > li > a .btn-mod.btn-w{
    background: #fff;
}
.hs-title-1,
.hs-title-9,
.hs-title-8,
.hs-title-10{
    font-weight: 700;    
    letter-spacing: -0.0399em;
}
.composition-4-image-1{
    border-color: var(--color-gray-light-3);
}
.composition-4-image-2{
    border-color: var(--color-gray-light-3);
}
.scroll-down-1-icon:before{
    opacity: .7;
}
.scroll-down-1-icon svg,
.scroll-down-1-icon img{
    opacity: .7;
}
.scroll-down-1-icon i{
    opacity: .7;
}
.scroll-down-1-text{
    font-weight: 500;
    opacity: .7;
    transition: opacity 0.4s ease, transform 0.4s var(--ease-elastic-2);
}
.section-title{
    font-size: 48px;
    font-weight: 700;
    line-height: 1.25;
}
.section-title-small{
    font-size: 40px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -0.0285em;
}
.section-title-tiny{
    font-size: 22px;
    font-weight: 700;
}
.section-descr{
    font-size: 20px;
    line-height: 1.625;
    letter-spacing: -0.01239em;
}
.light-content .section-descr{
    color: var(--color-dark-mode-gray-1);
}
.light-content .toggle,
.light-content .toggle > dt > a,
.light-content .accordion,
.light-content .accordion > dt > a{
    border-color: rgba(255,255,255, .25);
}
.accordion > dt > a:after,
.toggle > dt > a:after{
    color: var(--color-primary-1);
}
.light-content .accordion > dt > a:after,
.light-content .toggle > dt > a:after{
    color: var(--color-primary-1);
}
a.link-hover-anim,
a.link-hover-anim:hover{
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    color: var(--color-primary-1);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;   
}
.link-strong i{
    position: relative;
    top: -0.1em;
    vertical-align: middle;
}
.link-strong-hovered{
    top: 0;
}
.light-content .link-strong,
.light-content .link-hover-anim{
    color: var(--color-primary-1);
}
.services-5-title{
    font-weight: 700;
}
.features-list{
    font-size: 18px;
}
.features-list-icon{
    color: var(--color-primary-1);
    background-image: linear-gradient( 45deg, var(--color-primary-light-1) 0%, #fff 100%);
}
.light-content .features-list-icon{
    color: #fff;
    background: var(--color-primary-1);
}
.works-grid.work-grid-fancy .work-title{
    margin-bottom: 5px;
    font-size: 22px;
    font-weight: 600;
}
.works-grid.work-grid-fancy .work-descr{
    font-size: 16px;
}
.work-img-bg{
    background: var(--color-gray-light-2);
}
.number-1-title{
    font-weight: 700;
}
.testimonials-4-text p{
    color: var(--color-gray-1);
}
.testimonials-4-author{
    font-weight: 600;
}
.testimonials-4-author .small{
    font-size: 15px;
    font-weight: 400;
}
.post-prev-container{
    overflow: hidden;
    background: #fff;
    border-radius: var(--border-radius-default); 
    box-shadow: var(--box-shadow-block);
    isolation: isolate;
    transform: translateZ(0);
    transition: all .27s var(--ease-default);
}
.post-prev-container:before{
    display: none;
}
.post-prev-container:hover{
    transform: translateY(-5px);
    box-shadow: var(--box-shadow-block-strong);
}
.post-prev-title{
    font-size: 22px;
    font-weight: 600;
}
.post-prev-img a:hover{
    opacity: 1;
}
.post-prev-img a:hover img{
    transform: translateZ(0.1px);
}
.post-prev-title{
    padding-top: 30px;
}
.post-prev-title a:hover{
    opacity: .85;
}
.post-prev-text{
    line-height: 1.625;
}
.post-prev-info,
.post-prev-info a{
    font-size: 14px;
}
.post-prev-title,
.post-prev-text,
.post-prev-info{
    padding-left: 30px;
    padding-right: 30px;
}
.post-prev-container > *:last-child{
    padding-bottom: 30px;
}
.post-prev-author-img{
    margin-top: -5px;
}
.light-content .post-prev-container{
    background: var(--color-dark-3);
    border: 1px solid var(--color-dark-mode-gray-2);
}
.pagination a.active,
.pagination a.active:hover{
    border-color: var(--color-primary-1);
    color: var(--color-primary-1);
}
.widget-menu li a{
    color: var(--color-gray-1);
}
.blog-item-body {
    font-size: 18px;
}
.widget-body img{
    border-radius: var(--border-radius-default);
}
.tpl-minimal-tabs{
    display: flex;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.059em;
    text-transform: uppercase;
}
.tpl-minimal-tabs li{
    padding: 0;
}
.tpl-minimal-tabs > li > a,
.tpl-minimal-tabs > li > a:hover,
.tpl-minimal-tabs > li > a:focus{
    position: relative;
    margin: 0 !important;
    padding: 10px 20px;
    color: var(--color-gray-1);
    border: none !important;
    border-radius: 0 !important; 
    isolation: isolate;   
}
.tpl-minimal-tabs > li > a:before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid var(--color-dark-1);
    opacity: .3;
    transition: var(--transition-default);
    z-index: -1;
}
.tpl-minimal-tabs > li > a:after,
.tpl-minimal-tabs > li > a:hover:after{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    background: var(--color-primary-1);
    transform: none;
    transition: all .2s var(--ease-out-short);
    z-index: -1;
}
.tpl-minimal-tabs > li:not(:first-child) > a:before,
.tpl-minimal-tabs > li:not(:first-child) > a:after{
    width: calc(100% + 1px);
    margin-left: -1px;
    border-left: none;
}
.tpl-minimal-tabs > li:first-child > a:before,
.tpl-minimal-tabs > li:first-child > a:after{
    border-top-left-radius: var(--border-radius-default);
    border-bottom-left-radius: var(--border-radius-default);
}
.tpl-minimal-tabs > li:last-child > a:before,
.tpl-minimal-tabs > li:last-child > a:after{
    border-top-right-radius: var(--border-radius-default);
    border-bottom-right-radius: var(--border-radius-default);
}
.tpl-minimal-tabs > li > a.active,
.tpl-minimal-tabs > li > a.active:hover{
    color: #fff !important;
    border: none !important;
}
.tpl-minimal-tabs > li > a.active:after{
    opacity: 1;
}
.light-content .tpl-minimal-tabs > li > a,
.light-content .tpl-minimal-tabs > li > a:hover,
.light-content .tpl-minimal-tabs > li > a:focus{
    color: #fff;
}
.light-content .tpl-minimal-tabs > li > a:before{
    border-color: #fff;
}
.light-content .tpl-minimal-tabs li a.active,
.light-content .tpl-minimal-tabs li a.active:hover{
    color: #fff;
    border: none !important;    
}
.pricing-title{
    font-weight: 700;
    letter-spacing: -0.0175em;
}
.pricing-num{
    font-weight: 700;
}
.contact-item{
    padding-left: 69px;
}
.contact-item a.link-hover-anim,
.contact-item a.link-hover-anim:hover{
    font-size: 13px;   
}
a.link-hover-anim i{
    top: -0.05em;   
}
.ci-icon{
    width: 48px;
    height: 48px;
    line-height: 46px;
    color: var(--color-primary-1);
}
.ci-icon:before{
    background-image: linear-gradient( 45deg, var(--color-primary-light-1) 0%, #fff 100%);    
}
.ci-text{
    margin-bottom: 2px;
    font-size: 16px;
}
.mt-icon:before{
    background: var(--color-primary-1);
}
.light-content .ci-icon{
    color: var(--color-primary-1) !important;
}
.light-content .ci-icon:before{
    background: var(--color-primary-1);
    opacity: .25;  
}

.footer b,
.footer strong{
    font-weight: 500;
}
.fw-title {
    margin-bottom: 20px;
    font-size: 14px;
    font-weight: 600;    
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.fw-menu li:not(:last-child){
    margin-bottom: 9px;
}
.footer a.link-to-top,
.footer a.link-to-top:hover{
    color: var(--color-primary-1) !important;   
}
.mfp-bg {
    background: var(--color-dark-1);
}
.steps-1-number{
    background: var(--color-primary-1);
}
.light-content .steps-1-number{
    color: #fff;
    background: var(--color-primary-1);
}
.light-content .map-section{
    background: rgba(16,24,40, .92);
}
.light-content .map-section:hover{
    background: rgba(16,24,40, .88);
}
@media only screen and (max-width: 1366px) {
    .container{
        max-width: var(--container-width);
    }
    .hs-title-1{
        font-size: calc(1.253rem + 2.49vw);
    }
    .section-title{
        font-size: calc(1.041rem + 2.29vw);
    }
    .section-title-small{
        font-size: calc(1.521rem + 1.15vw);
    }
    .section-descr{
        font-size:  calc(1.005rem + 0.29vw);
    }
    .features-list,
    .number-1-descr{
        font-size: calc(0.962rem + 0.19vw);
    }
    .works-grid.work-grid-fancy .work-title,
    .post-prev-title{
        font-size: calc(0.967rem + 0.48vw);
    }
}
@media only screen and (max-width: 1200px) {
    .inner-nav ul li{
        margin: 0 12px;
    }
}
@media only screen and (max-width: 767px) {
    
    .tpl-minimal-tabs > li{
        margin: 2px !important;
        width: 46%;
    }
    .tpl-minimal-tabs > li > a.active:after,
    .tpl-minimal-tabs > li > a:hover:after{
        transform: none;
    }
    .tpl-minimal-tabs > li > a:before,
    .tpl-minimal-tabs > li > a:after{
        width: 100%;
        margin-left: 0;
    }
    .tpl-minimal-tabs > li > a:before{
        border: 1px solid var(--color-dark-1) !important;
    }
    .tpl-minimal-tabs > li > a:before,
    .tpl-minimal-tabs > li > a:after{
        border-radius: var(--border-radius-default);
    }
}
@media only screen and (max-width: 480px) {    
    
    .tpl-minimal-tabs > li{
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }   
}

/* === magnific-popup.css === */
.mfp-bg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1042;
    overflow: hidden;
    position: fixed;
    background: #0b0b0b;
    opacity: 0.8;
    filter: alpha( opacity = 80)
}.mfp-wrap {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1043;
    position: fixed;
    outline: none !important;
    -webkit-backface-visibility: hidden
}.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0 8px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}.mfp-container:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle
}.mfp-align-top .mfp-container:before {
    display: none
}.mfp-content {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    text-align: left;
    z-index: 1045
}.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
    width: 100%;
    cursor: auto
}
.dark-mode .mfp-inline-holder .mfp-content, .dark-mode .mfp-ajax-holder .mfp-content {
    background: var(--color-dark-3);
    border: 1px solid var(--color-dark-mode-gray-2);
}
.dark-mode .mfp-inline-holder .mfp-content .mfp-close,
.dark-mode .mfp-ajax-holder .mfp-content .mfp-close{
    color: #fff;
}
.mfp-inline-holder .mfp-content{
    padding: 50px;
    border-radius: var(--border-radius-default);
    animation: mfp-appear 0.39s var(--ease-out-medium);
}
@media only screen and (max-width: 768px) {
    .mfp-inline-holder .mfp-content{
        padding: 30px;
    }
}
@keyframes mfp-appear{
	0%{
	    opacity: 0;
	    transform: translateY(60px);
	}
	100%{
	    opacity: 1;
        transform: none;
	}
}
.mfp-image-holder .mfp-content,
.mfp-iframe-holder .mfp-content{
    animation: mfp-image-appear 0.39s var(--ease-out-medium);
}
@keyframes mfp-image-appear{
	0%{
	    opacity: 0;
	    transform: scale(.9);
	}
	100%{
	    opacity: 1;
        transform: none;
	}
}
.mfp-ajax-cur {
    cursor: progress
}.mfp-zoom-out-cur {
    cursor: -moz-zoom-out;
    cursor: -webkit-zoom-out;
    cursor: zoom-out
}.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: pointer
}.mfp-zoom {
    cursor: pointer;
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in
}.mfp-auto-cursor .mfp-content {
    cursor: auto
}.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}.mfp-loading.mfp-figure {
    display: none
}.mfp-hide {
    display: none !important
}.mfp-preloader {
    color: #CCC;
    position: absolute;
    top: 50%;
    width: auto;
    text-align: center;
    margin-top: -0.8em;
    left: 8px;
    right: 8px;
    z-index: 1044
}.mfp-preloader a {
    color: #CCC
}.mfp-preloader a:hover {
    color: #FFF
}.mfp-s-ready .mfp-preloader {
    display: none
}.mfp-s-error .mfp-content {
    display: none
}

button.mfp-close, button.mfp-arrow {
    overflow: visible;
    cursor: pointer;
    background: transparent;
    border: 0;
    -webkit-appearance: none;
    display: block;
    outline: none;
    padding: 0;
    z-index: 1046;
    -webkit-box-shadow: none;
    box-shadow: none
}

button::

-moz-focus-inner {
    padding: 0;
    border: 0
}.mfp-close {
    width: 44px;
    height: 44px;
    line-height: 44px;
    position: absolute;
    right: 0;
    top: 0;
    text-decoration: none;
    text-align: center;
    opacity: 0.65;
    filter: alpha( opacity = 65);

padding:
    0 0 18px 10px;

color:
    #FFF;

font-style:normal;

font-size:
    28px;

font-family:Arial, Baskerville, monospace
}.mfp-close:hover, .mfp-close:focus {
    opacity: 1;
    filter: alpha( opacity = 100)
}.mfp-close:active {
    top: 1px
}.mfp-close-btn-in .mfp-close {
    color: #333
}.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
    color: #FFF;
    right: -6px;
    text-align: right;
    padding-right: 6px;
    width: 40px
}.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #CCC;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap
}.mfp-arrow {
    position: absolute;
    opacity: 0.65;
    filter: alpha( opacity = 65);
    margin: 0;
    top: 50%;
    margin-top: -55px;
    padding: 0;
    width: 90px;
    height: 110px;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}.mfp-arrow:active {
    margin-top: -54px
}.mfp-arrow:hover, .mfp-arrow:focus {
    opacity: 1;
    filter: alpha( opacity = 100)
}.mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent
}.mfp-arrow:after, .mfp-arrow .mfp-a {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px
}.mfp-arrow:before, .mfp-arrow .mfp-b {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7
}.mfp-arrow-left {
    left: 0
}.mfp-arrow-left:after, .mfp-arrow-left .mfp-a {
    border-right: 17px solid #FFF;
    margin-left: 31px
}.mfp-arrow-left:before, .mfp-arrow-left .mfp-b {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F
}.mfp-arrow-right {
    right: 0
}.mfp-arrow-right:after, .mfp-arrow-right .mfp-a {
    border-left: 17px solid #FFF;
    margin-left: 39px
}.mfp-arrow-right:before, .mfp-arrow-right .mfp-b {
    border-left: 27px solid #3F3F3F
}.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px
}.mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 90%;
    max-width: 66vw
}.mfp-iframe-holder .mfp-close {
    top: -40px
}
@media all and (max-width: 768px) {.mfp-iframe-holder .mfp-content {
        max-width: 80vw
}
}.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%
}.mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.2), 0 0 10px rgba(0, 0, 0, 0.2), 0 0 20px rgba(0, 0, 0, 0.2), 0 0 30px rgba(0, 0, 0, 0.2), 0 0 50px rgba(0, 0, 0, 0.2);
    background: #000
}

img.mfp-img {
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
    line-height: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 40px 0 40px;
    margin: 0 auto
}.mfp-figure {
    line-height: 0
}.mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.2), 0 0 10px rgba(0, 0, 0, 0.2), 0 0 20px rgba(0, 0, 0, 0.2), 0 0 30px rgba(0, 0, 0, 0.2), 0 0 50px rgba(0, 0, 0, 0.2);
    background: #444
}.mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px
}.mfp-figure figure {
    margin: 0
}.mfp-bottom-bar {
    margin-top: -36px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    cursor: auto
}.mfp-title {
    text-align: left;
    line-height: 18px;
    color: #F3F3F3;
    word-wrap: break-word;
    padding-right: 36px
}.mfp-image-holder .mfp-content {
    max-width: 100%
}.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer
}
@media screen and (max-width: 800px)

and (orientation: landscape), screen and (max-height: 300px) {.mfp-img-mobile .mfp-image-holder {
        padding-left: 0;
        padding-right: 0
}.mfp-img-mobile img.mfp-img {
        padding: 0
}.mfp-img-mobile .mfp-figure:after {
        top: 0;
        bottom: 0
}.mfp-img-mobile .mfp-figure small {
        display: inline;
        margin-left: 5px
}.mfp-img-mobile .mfp-bottom-bar {
        background: rgba(0, 0, 0, 0.6);
        bottom: 0;
        margin: 0;
        top: auto;
        padding: 3px 5px;
        position: fixed;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box
}.mfp-img-mobile .mfp-bottom-bar:empty {
        padding: 0
}.mfp-img-mobile .mfp-counter {
        right: 5px;
        top: 3px
}.mfp-img-mobile .mfp-close {
        top: 0;
        right: 0;
        width: 35px;
        height: 35px;
        line-height: 35px;
        background: rgba(0, 0, 0, 0.6);
        position: fixed;
        text-align: center;
        padding: 0
}
}
@media all and (max-width: 900px) {.mfp-arrow {
        -webkit-transform: scale(0.75);
        transform: scale(0.75)
}.mfp-arrow-left {
        -webkit-transform-origin: 0;
        transform-origin: 0
}.mfp-arrow-right {
        -webkit-transform-origin: 100%;
        transform-origin: 100%
}.mfp-container {
        padding-left: 6px;
        padding-right: 6px
}
}.mfp-ie7 .mfp-img {
    padding: 0
}.mfp-ie7 .mfp-bottom-bar {
    width: 600px;
    left: 50%;
    margin-left: -300px;
    margin-top: 5px;
    padding-bottom: 5px
}.mfp-ie7 .mfp-container {
    padding: 0
}.mfp-ie7 .mfp-content {
    padding-top: 44px
}.mfp-ie7 .mfp-close {
    top: 0;
    right: 0;
    padding-top: 0
}.mfp-fade.mfp-bg {
    opacity: 0;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out
}.mfp-fade.mfp-bg.mfp-ready {
    opacity: 0.9677
}.mfp-fade.mfp-bg.mfp-removing {
    opacity: 0
}.mfp-fade.mfp-wrap .mfp-content {
    opacity: 0;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out
}.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
    opacity: 1
}.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
    opacity: 0
}
/* === splitting.css === */
/* Recommended styles for Splitting */
.splitting .word,
.splitting .char {
  display: inline-block;
}

/* Psuedo-element chars */
.splitting .char {
  position: relative;
}

/**
 * Populate the psuedo elements with the character to allow for expanded effects
 * Set to `display: none` by default; just add `display: block` when you want
 * to use the psuedo elements
 */
.splitting .char::before,
.splitting .char::after {
  content: attr(data-char);
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  transition: inherit;
  user-select: none;
}

/* Expanded CSS Variables */

.splitting {
  /* The center word index */
  --word-center: calc((var(--word-total) - 1) / 2);

  /* The center character index */
  --char-center: calc((var(--char-total) - 1) / 2);

  /* The center character index */
  --line-center: calc((var(--line-total) - 1) / 2);
}

.splitting .word {
  /* Pecent (0-1) of the word's position */
  --word-percent: calc(var(--word-index) / var(--word-total));

  /* Pecent (0-1) of the line's position */
  --line-percent: calc(var(--line-index) / var(--line-total));
}

.splitting .char {
  /* Percent (0-1) of the char's position */
  --char-percent: calc(var(--char-index) / var(--char-total));

  /* Offset from center, positive & negative */
  --char-offset: calc(var(--char-index) - var(--char-center));

  /* Absolute distance from center, only positive */
  --distance: calc(
     (var(--char-offset) * var(--char-offset)) / var(--char-center)
  );

  /* Distance from center where -1 is the far left, 0 is center, 1 is far right */
  --distance-sine: calc(var(--char-offset) / var(--char-center));

  /* Distance from center where 1 is far left/far right, 0 is center */
  --distance-percent: calc((var(--distance) / var(--char-center)));
}