@charset "utf-8";
html{
    overflow-x:hidden;
    padding:0;
    margin:0
}
body{
    overflow-x:hidden;
    width:100%;
    font-family:open sans;
    font-size:16px;
    line-height:1.7;
    letter-spacing:0;
    word-wrap:break-word;
    font-weight:400;
    background-color:fff8ef;
    color:#7d7789
}
svg{
    fill:currentcolor;
    width:15px;
    height:15px
}
img.svg{
    width:15px;
    height:15px
}
::-webkit-input-placeholder{
    color:#aaa6b2
}
:-moz-placeholder{
    color:#aaa6b2;
    opacity:1
}
::-moz-placeholder{
    color:#aaa6b2;
    opacity:1
}
:-ms-input-placeholder{
    color:#aaa6b2
}
::-ms-input-placeholder{
    color:#aaa6b2
}
::placeholder{
    color:#aaa6b2
}
body.dark::-webkit-input-placeholder{
    color:#9e9ba3
}
body.dark:-moz-placeholder{
    color:#9e9ba3;
    opacity:1
}
body.dark::-moz-placeholder{
    color:#9e9ba3;
    opacity:1
}
body.dark:-ms-input-placeholder{
    color:#9e9ba3
}
body.dark::-ms-input-placeholder{
    color:#9e9ba3
}
body.dark::placeholder{
    color:#9e9ba3
}
body::-webkit-scrollbar{
    width:11px
}
body{
    scrollbar-width:thin;
    scrollbar-color:#999 #FFFFFF
}
body:-webkit-scrollbar-track{
    background:#FFFFFF
}
body::-webkit-scrollbar-thumb{
    background-color:#999;
    border-radius:6px;
    border:3px solid #FFFFFF
}
body.dark::-webkit-scrollbar{
    width:11px
}
h1,h2,h3,h4,h5,h6{
    font-weight:700;
    line-height:1.2;
    font-family:poppins;
    color:#333
}
h1{
    font-size:45px
}
h2{
    font-size:36px
}
h3{
    font-size:30px
}
h4{
    font-size:24px
}
h5{
    font-size:20px
}
h6{
    font-size:16px
}

.partnerslogo{
    font-size: 10px;
    color: #7d7789;
    font-weight: 700;
    text-decoration: none;
    margin-top: 50px;

}

.cavani_tm_all_wrap{
    width:100%;
    min-height:100vh;
    clear:both;
    float:left;
    position:relative
}
.cavani_tm_all_wrap,.cavani_tm_all_wrap *{
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box
}
#preloader{
    position:fixed;
    left:0;
    top:0;
    height:100vh;
    width:100%;
    z-index:99999;
    display:flex
}
#preloader:before,#preloader:after{
    content:'';
    position:absolute;
    left:0;
    top:0;
    width:50%;
    height:100%;
    z-index:-1;
    background-color:#000;
    -webkit-transition:all .3s ease 0s;
    -o-transition:all .3s ease 0s;
    transition:all .3s ease 0s
}
#preloader:after{
    left:auto;
    right:0
}
#preloader .loader_line{
    margin:auto;
    width:1px;
    height:250px;
    position:relative;
    overflow:hidden;
    -webkit-transition:all .8s ease 0s;
    -o-transition:all .8s ease 0s;
    transition:all .8s ease 0s
}
.loader_line:before{
    content:'';
    position:absolute;
    left:0;
    top:50%;
    width:1px;
    height:0%;
    -webkit-transform:translateY(-50%);
    -ms-transform:translateY(-50%);
    -o-transform:translateY(-50%);
    transform:translateY(-50%);
    background-color:#FFFFFF;
    -webkit-animation:lineheight 1000ms ease-in-out 0s forwards;
    -o-animation:lineheight 1000ms ease-in-out 0s forwards;
    animation:lineheight 1000ms ease-in-out 0s forwards
}
.loader_line:after{
    content:'';
    position:absolute;
    left:0;
    top:0;
    width:1px;
    height:100%;
    background-color:#777;
    -webkit-transform:translateY(-100%);
    -ms-transform:translateY(-100%);
    -o-transform:translateY(-100%);
    transform:translateY(-100%);
    -webkit-animation:lineround 1200ms linear 0s infinite;
    -o-animation:lineround 1200ms linear 0s infinite;
    animation:lineround 1200ms linear 0s infinite;
    animation-delay:2000ms
}
@keyframes lineheight{
    0%{
        height:0%
    }
    100%{
        height:100%
    }
}
@keyframes lineround{
    0%{
        -webkit-transform:translateY(-100%);
        -ms-transform:translateY(-100%);
        -o-transform:translateY(-100%);
        transform:translateY(-100%)
    }
    100%{
        -webkit-transform:translateY(200%);
        -ms-transform:translateY(200%);
        -o-transform:translateY(200%);
        transform:translateY(200%)
    }
}
.preloaded .loader_line:after{
    opacity:0
}
.preloaded .loader_line{
    opacity:0;
    height:100%!important
}
.preloaded:before,.preloaded:after{
    -webkit-animation:preloadedzero 300ms ease-in-out 500ms forwards;
    -o-animation:preloadedzero 300ms ease-in-out 500ms forwards;
    animation:preloadedzero 300ms ease-in-out 500ms forwards
}
@keyframes preloadedzero{
    0%{
        width:50%
    }
    100%{
        width:0%
    }
}
.cavani_tm_header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    height:70px;
    line-height:70px;
    background-color:#FFFFFF;
    z-index:10;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 70px
}
.cavani_tm_header .logo[data-type=image] .image{
    display:inline-block
}
.cavani_tm_header .logo[data-type=image] .text{
    display:none
}
.cavani_tm_header .logo[data-type=text] .image{
    display:none
}
.cavani_tm_header .logo[data-type=text] .text{
    display:inline-block
}
.cavani_tm_header .logo .text{
    text-decoration:none;
    color:#000;
    text-transform:uppercase;
    font-family:poppins;
    font-size:25px;
    font-weight:800;
    letter-spacing:2px;
    line-height:70px
}
.cavani_tm_header .logo .text span{
    position:relative;
    top:2px
}
.cavani_tm_header .logo img{
    max-width:110px;
    max-height:65px
}
.cavani_tm_header .menu{
    position:relative
}
.cavani_tm_header .menu ul{
    margin:0;
    list-style-type:none
}
.cavani_tm_header .menu ul li{
    margin:0;
    float:left
}
.cavani_tm_header .menu ul li a{
    text-decoration:none;
    color:#333;
    font-family:poppins;
    font-weight:500;
    padding:0 30px;
    display:inline-block;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_header .menu .ccc{
    position:absolute;
    width:30px;
    display:block;
    top:15px;
    bottom:15px;
    background-color:#333;
    z-index:-1;
    /*
    -webkit-transition:all .8s ease;
    -moz-transition:all .8s ease;
    -ms-transition:all .8s ease;
    -o-transition:all .8s ease;
    transition:all .8s ease*/
}
.cavani_tm_header .menu ul li.mleave.active a{
    color:#333
}
.cavani_tm_header .menu ul li.active a{
    color:#FFFFFF
}
.cavani_tm_header .menu ul li a:hover{
    color:#FFFFFF
}
.cavani_tm_topbar{
    position:fixed;
    top:0;
    left:0;
    right:0;
    height:50px;
    background-color:#FFFFFF;
    z-index:15;
    display:none
}
.cavani_tm_topbar .topbar_inner{
    width:100%;
    height:100%;
    clear:both;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 20px
}
.cavani_tm_topbar .logo img{
    max-width:100px;
    max-height:40px
}
.cavani_tm_topbar .logo[data-type=image] .image{
    display:inline-block
}
.cavani_tm_topbar .logo[data-type=image] .text{
    display:none
}
.cavani_tm_topbar .logo[data-type=text] .image{
    display:none
}
.cavani_tm_topbar .logo[data-type=text] .text{
    display:inline-block
}
.cavani_tm_topbar .logo .text{
    text-decoration:none;
    color:#000;
    text-transform:uppercase;
    font-family:poppins;
    font-size:22px;
    font-weight:800;
    letter-spacing:2px;
    line-height:50px
}
.cavani_tm_topbar .hamburger{
    padding:0
}
.cavani_tm_topbar .hamburger-inner,.cavani_tm_topbar .hamburger-inner:after,.cavani_tm_topbar .hamburger-inner:before{
    width:30px;
    height:2px
}
.cavani_tm_topbar .trigger{
    position:relative;
    top:5px
}
.cavani_tm_topbar .hamburger-box{
    width:30px
}
.cavani_tm_mobile_menu{
    position:fixed;
    top:50px;
    right:-200px;
    height:100vh;
    width:200px;
    z-index:15;
    background-color:#FFFFFF;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_mobile_menu.opened{
    right:0
}
.cavani_tm_mobile_menu .inner{
    position:relative;
    width:100%;
    height:100%;
    text-align:right;
    padding:70px 20px 20px
}
.cavani_tm_mobile_menu .avatar{
    width:70px;
    height:70px;
    position:relative;
    float:right;
    margin-bottom:60px
}
.cavani_tm_mobile_menu .avatar .image{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center
}
.cavani_tm_mobile_menu .menu_list{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-bottom:50px
}
.cavani_tm_mobile_menu .menu_list ul{
    margin:0;
    list-style-type:none
}
.cavani_tm_mobile_menu .menu_list ul li{
    margin:0 0 7px
}
.cavani_tm_mobile_menu .menu_list ul li a{
    text-decoration:none;
    color:#333;
    font-family:poppins
}
.cavani_tm_mobile_menu .social{
    width:100%;
    float:left;
    margin-bottom:5px
}
.cavani_tm_mobile_menu .social ul{
    margin:0;
    list-style-type:none
}
.cavani_tm_mobile_menu .social ul li{
    margin:0 8px 0 0;
    display:inline-block
}
.cavani_tm_mobile_menu .social ul li:last-child{
    margin-right:0
}
.cavani_tm_mobile_menu .social ul li a{
    text-decoration:none;
    color:#333
}
.cavani_tm_mobile_menu .copyright{
    width:100%;
    float:left
}
.cavani_tm_mobile_menu .copyright p{
    color:#333;
    font-family:poppins
}
.cavani_tm_mainpart{
    position:absolute;
    top:70px;
    bottom:70px;
    left:70px;
    right:70px;
    overflow:hidden
}
.cavani_tm_mainpart .author_image{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    width:40%;
    z-index:15
}
.cavani_tm_mainpart .author_image .main{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center
}
.cavani_tm_mainpart .main_content{
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    width:60%
}
.cavani_tm_section{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0
}
.cavani_tm_section{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    overflow:hidden;
    overflow-y:scroll;
    opacity:0;
    visibility:hidden;
    z-index:8;
    transition:visibility 1s linear,opacity 0s linear;
    -moz-transition:visibility 1s linear,opacity 0s linear;
    -webkit-transition:visibility1s linear,opacity 0s linear;
    -o-transition:visibility 1s linear,opacity 0s linear
}
.cavani_tm_section.animated{
    opacity:1;
    visibility:visible;
    z-index:9
}
.cavani_tm_section.active{
    opacity:1;
    visibility:visible;
    z-index:10
}
.cavani_tm_section.hidden{
    opacity:0;
    visibility:hidden;
    z-index:9
}
.cavani_tm_section::-webkit-scrollbar{
    width:0
}
.cavani_tm_section .section_inner{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    position:relative;
    padding:92px 100px 0
}
.cavani_tm_section .section_inner:before{
    position:absolute;
    content:"";
    top:0;
    bottom:0;
    right:0;
    width:100px;
    background-color:#f6fbff
}
.cavani_tm_home{
    position:relative;
    width:100%;
    height:100%;
    display:flex;
    align-items:center
}
.cavani_tm_home .content{
    padding-left:100px
}
.cavani_tm_home .name{
    font-size:72px;
    font-weight:700;
    text-transform:uppercase;
    margin-bottom:30px
}
.cavani_tm_home .line{
    display:inline-block;
    width:70px;
    height:5px;
    background-color:#333;
    margin-bottom:30px
}
.cavani_tm_home .job{
    font-size:25px;
    margin-bottom:152x;
    font-weight:300
}
.cavani_tm_home .job span{
    color:#7d7789
}
.cavani_tm_home .job b{
    font-weight:600;
    color:#333
}
.cavani_tm_button{
    width:100%;
    height:auto;
    clear:both;
    float:left
}
.cavani_tm_button a{
    text-decoration:none;
    color:#FFFFFF;
    display:inline-block;
    background-color:#333;
    padding:13px 38px;
    border:2px solid #333;
    font-family:poppins;
    font-weight:500;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_button a:hover{
    background-color:transparent;
    color:#333
}
.cd-headline.clip .cd-words-wrapper::after{
    height:70%;
    top:50%;
    width:2px;
    transform:translateY(-50%);
    background-color:#999
}
.cd-headline.loading-bar .cd-words-wrapper::after{
    background:#333;
    height:2px
}
.cavani_tm_about{
    width:100%;
    height:auto;
    clear:both;
    float:left
}
.cavani_tm_about .biography{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-bottom:87px
}
.cavani_tm_title{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    overflow:hidden
}
.cavani_tm_title span{
    display:inline-block;
    position:relative;
    font-family:poppins;
    color:#333;
    text-transform:uppercase;
    font-weight:700;
    letter-spacing:8px
}
.cavani_tm_title span:after{
    position:absolute;
    content:"";
    width:5000px;
    height:1px;
    background-color:#7d7789;
    left:100%;
    top:50%;
    transform:translateY(-50%);
    margin-left:30px
}
.cavani_tm_about .biography .wrapper{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    display:flex;
    justify-content:space-between;
    margin-top:55px
}
.cavani_tm_about .biography .left{
    width:40%
}
.cavani_tm_about .biography .left p{
    margin-bottom:15px
}
.cavani_tm_about .biography .left p:last-child{
    margin-bottom:0
}
.cavani_tm_about .biography .right{
    width:50%
}
.cavani_tm_about .biography .right ul{
    margin:0;
    list-style-type:none
}
.cavani_tm_about .biography .right ul li{
    margin:0 0 8px;
    width:100%;
    float:left
}
.cavani_tm_about .biography .right ul li:last-child{
    margin-bottom:0
}
.cavani_tm_about .biography .right ul li span{
    display:inline-block
}
.cavani_tm_about .biography .right ul li .first{
    min-width:100px;
    font-weight:700
}
.cavani_tm_about .biography .right ul li a{
    text-decoration:none;
    color:#7d7789;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_about .biography .right ul li a:hover{
    color:#333
}
.cavani_tm_about .services{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-bottom:87px
}
.cavani_tm_about .services .wrapper{
    width:100%;
    height:auto;
    clear:both;
    display:flex;
    justify-content:space-between
}
.cavani_tm_about .services .list{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-top:55px
}
.cavani_tm_about .services .service_list{
    width:40%
}
.cavani_tm_about .services .service_list:nth-child(2){
    width:50%
}
.cavani_tm_about .services .service_list ul{
    margin:0;
    list-style-type:none
}
.cavani_tm_about .services .service_list ul li{
    margin:0 0 8px;
    width:100%;
    float:left;
    position:relative;
    padding-left:25px
}
.cavani_tm_about .services .service_list ul li:last-child{
    margin-bottom:0
}
.cavani_tm_about .services .service_list ul li:before{
    position:absolute;
    content:"";
    display:inline-block;
    width:0;
    height:0;
    border-style:solid;
    border-width:5.5px 0 5.5px 9.5px;
    border-color:transparent transparent transparent #7d7789;
    left:0;
    top:7px
}
.cavani_tm_about .skills{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-bottom:65px
}
.cavani_tm_about .skills .wrapper{
    width:100%;
    height:auto;
    clear:both;
    display:flex;
    justify-content:space-between
}
.cavani_tm_about .skills .programming{
    width:40%
}
.cavani_tm_about .skills .language{
    width:50%
}
.cavani_progress{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-top:55px
}
.progress_inner{
    width:100%;
    margin-bottom:25px
}
.progress_inner:last-child{
    margin-bottom:0
}
.progress_inner>span{
    margin:0 0 5px;
    width:100%;
    display:block;
    text-align:left
}
.progress_inner span.number{
    float:right
}
.progress_inner .background{
    background:rgba(0,0,0,.07);
    width:100%;
    min-width:100%;
    position:relative;
    height:3px
}
.progress_inner .background .bar_in{
    height:100%;
    background:#7d7789;
    width:0;
    overflow:hidden
}
.progress_inner .background .bar{
    width:0;
    height:100%
}
.progress_inner .background .bar.open{
    -webkit-animation:wow 2s cubic-bezier(.165,.84,.44,1);
    -moz-animation:wow 2s cubic-bezier(.165,.84,.44,1);
    animation:wow 2s cubic-bezier(.165,.84,.44,1);
    width:100%
}
@-webkit-keyframes wow{
    0%{
        width:0%
    }
    100%{
        width:100%
    }
}
@-moz-keyframes wow{
    0%{
        width:0%
    }
    100%{
        width:100%
    }
}
@keyframes wow{
    0%{
        width:0%
    }
    100%{
        width:100%
    }
}
.circular_progress_bar{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-top:62px
}
.circular_progress_bar ul{
    margin:0 0 0 -20px;
    list-style-type:none
}
.circular_progress_bar ul li{
    margin:0 0 20px;
    width:33.3333%;
    float:left;
    padding-left:20px
}
.circular_progress_bar .myCircle{
    position:relative;
    float:left
}
.circular_progress_bar .list_inner{
    width:100%;
    position:relative;
    text-align:center
}
.circular_progress_bar .list_inner:after{
    content:'';
    position:absolute;
    width:120px;
    height:120px;
    border:3px solid rgba(0,0,0,.07);
    left:0;
    top:0;
    border-radius:50%;
    box-sizing:border-box;
    z-index:-1
}
.circular_progress_bar .title{
    width:100%;
    max-width:120px;
    float:left
}
.circular_progress_bar .number{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%)
}
.cavani_tm_about .resume{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-bottom:75px
}
.cavani_tm_about .resume .wrapper{
    width:100%;
    height:auto;
    clear:both;
    display:flex;
    justify-content:space-between
}
.cavani_tm_about .resume .list{
    width:100%;
    height:auto;
    clear:both;
    float:left
}
.cavani_tm_about .resume .education{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-bottom:87px
}
/*.cavani_tm_about .resume .education .list{
    width:50%;
}*/
.cavani_tm_about .resume .experience{
    width:50%
}
.cavani_tm_about .univ{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-top:55px
}
.cavani_tm_about .univ ul{
    margin:0;
    list-style-type:none;
    position:relative;
    display:inline-block;
    padding-top:10px
}
.cavani_tm_about .univ ul:before{
    content:"";
    position:absolute;
    width:1px;
    height:100%;
    top:0;
    left:0;
    background-color:rgba(0,0,0,.07)
}
.cavani_tm_about .univ ul li{
    margin:0;
    width:100%;
    float:left;
    position:relative;
    padding-left:20px;
    padding-bottom:45px;
    padding-right:20px;
}
.cavani_tm_about .univ ul li:last-child{
    padding-bottom:0
}
.cavani_tm_about .univ ul li:before{
    content:"";
    position:absolute;
    height:18px;
    width:18px;
    background:#f6fbff;
    border-radius:100%;
    border:solid 1px #ccc;
    left:-9px;
    top:8px
}
.cavani_tm_about .univ ul li .list_inner{
    width:100%;
    height:auto;
    clear:both;
    display:flex;
    position:relative
}
.cavani_tm_about .univ ul li .time{
    width:50%;
    padding-right:20px
}
.cavani_tm_about .univ ul li .time span{
    display:inline-block;
    padding:5px 25px;
    background-color:rgba(0,0,0,.05);
    border-radius:50px;
    font-size:14px;
    white-space:nowrap
}
.cavani_tm_about .univ ul li .place{
    width:100%;
    padding-left:20px
}
.cavani_tm_about .univ ul li .place h3{
    font-size:16px;
    margin-bottom:2px;
    font-weight:600
}
.cavani_tm_about .univ ul li .place span{
    font-size:14px
}
.cavani_tm_about .partners{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-bottom:92px
}
.cavani_tm_about .partners .list{
    width:100%;
    float:left;
    clear:both;
    overflow:hidden;
    border:2px solid #e5edf4;
    margin-top:62px
}
.cavani_tm_about .partners .list ul{
    margin:-2px -10px -2px -2px;
    list-style-type:none;
    padding-top:2px;
    float:left;
    padding-left:2px;
    min-width:calc(100% + 12px)
}
.cavani_tm_about .partners .list ul li{
    margin:0;
    float:left;
    width:25%;
    border:2px solid #e5edf4;
    text-align:center;
    height:130px;
    line-height:130px;
    position:relative;
    margin-top:-2px;
    margin-left:-2px;
    overflow:hidden
}
.cavani_tm_about .partners .list ul li img{
    max-width:65%;
    max-height:65px
}
.cavani_tm_about .partners .list ul li .list_inner{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    opacity:.5;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_about .partners .list ul li .list_inner:hover{
    opacity:1
}
.cavani_tm_full_link{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    z-index:5
}
.cavani_tm_about .testimonials{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-bottom:90px
}
.cavani_tm_about .testimonials .list{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-top:75px
}
.cavani_tm_about .testimonials .list ul{
    margin:0;
    list-style-type:none;
    cursor:e-resize
}
.cavani_tm_about .testimonials .list ul li{
    margin:0
}
.cavani_tm_about .testimonials .list ul li .list_inner{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    position:relative
}
.cavani_tm_about .testimonials .list ul li .text{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    position:relative;
    border:2px solid #e5edf4;
    padding:40px;
    margin-bottom:30px
}
.cavani_tm_about .testimonials .list ul li .text:before{
    position:absolute;
    content:"";
    height:0;
    width:0;
    top:100%;
    left:50px;
    border:solid transparent;
    border-top-color:#e5edf4;
    border-width:18px 18px 0 0
}
.cavani_tm_about .testimonials .list ul li .text:after{
    position:absolute;
    content:"";
    top:100%;
    left:50px;
    height:0;
    width:0;
    border:solid transparent;
    border-top-color:#f6fbff;
    border-width:14px 13px 0 0;
    margin-left:2px
}
.cavani_tm_about .testimonials .list ul li .text i{
    position:absolute;
    z-index:1;
    font-size:30px;
    top:-29px;
    left:50px
}
.cavani_tm_about .testimonials .details{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    display:flex;
    align-items:center;
    padding-left:20px
}
.cavani_tm_about .testimonials .details .image{
    position:relative;
    width:60px;
    height:60px
}
.cavani_tm_about .testimonials .details .image .main{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center;
    border-radius:100%
}
.cavani_tm_about .testimonials .details .info{
    padding-left:20px
}
.cavani_tm_about .testimonials .details .info h3{
    font-size:16px;
    margin-bottom:2px;
    font-weight:600
}
.cavani_tm_about .testimonials .details .info span{
    font-size:14px
}
.cavani_tm_about .testimonials .owl-carousel .owl-stage-outer{
    overflow:hidden
}
.cavani_tm_about .testimonials .owl-carousel .owl-stage-outer{
    overflow:visible
}
.cavani_tm_about .testimonials .owl-item.active{
    opacity:1
}
.cavani_tm_about .testimonials .owl-item{
    opacity:0
}
.cavani_tm_portfolio{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-bottom:70px
}
.cavani_tm_portfolio .portfolio_filter{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    text-align:left;
    position:relative;
    padding:55px 0 42px
}
.cavani_tm_portfolio .portfolio_filter ul{
    margin:0;
    list-style-type:none
}
.cavani_tm_portfolio .portfolio_filter ul li{
    margin:0 40px 0 0;
    display:inline-block
}
.cavani_tm_portfolio .portfolio_filter ul li:last-child{
    margin-right:0
}
.cavani_tm_portfolio .portfolio_filter ul li a{
    text-decoration:none;
    color:#333;
    font-family:poppins;
    font-weight:500;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_portfolio .portfolio_list{
    width:100%;
    height:auto;
    clear:both;
    float:left
}
.cavani_tm_portfolio .portfolio_list ul{
    margin:0 0 0 -50px;
    list-style-type:none
}
.cavani_tm_portfolio .portfolio_list ul li{
    margin:0 0 50px;
    width:50%;
    float:left;
    padding-left:50px
}
.cavani_tm_portfolio .portfolio_list ul li .list_inner{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    position:relative;
    overflow:hidden
}
.cavani_tm_portfolio .portfolio_list ul li .image{
    position:relative
}
.cavani_tm_portfolio .portfolio_list ul li .image img{
    position:relative;
    opacity:0;
    min-width:100%
}
.cavani_tm_portfolio .portfolio_list ul li .image .main{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center
}
.cavani_tm_portfolio .portfolio_list ul li .details{
    position:absolute;
    left:20px;
    right:20px;
    bottom:0;
    background-color:#FFFFFF;
    box-shadow:0 0 10px rgba(0,0,0,.1);
    z-index:3;
    padding:15px;
    transform:translateY(102%);
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_portfolio .portfolio_list ul li .list_inner:hover .details{
    transform:translateY(0);
    bottom:20px
}
.cavani_tm_portfolio .portfolio_list ul li .details h3{
    font-size:16px;
    margin-bottom:2px;
    font-weight:600
}
.cavani_tm_portfolio .portfolio_list ul li .details span{
    font-size:14px
}
.cavani_tm_modalbox{
    position:fixed;
    top:0;
    left:0;
    right:0;
    height:100vh;
    z-index:20;
    background-color:rgba(0,0,0,.8);
    opacity:0;
    visibility:hidden;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_modalbox.opened{
    opacity:1;
    visibility:visible
}
.cavani_tm_modalbox .box_inner{
    position:absolute;
    top:70px;
    bottom:70px;
    width:968px;
    left:50%;
    transform:translateX(-50%);
    background-color:#FFFFFF;
    z-index:1;
    opacity:0;
    visibility:hidden;
    margin-top:-20px;
    transition-delay:.3s;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_modalbox.opened .box_inner{
    opacity:1;
    visibility:visible;
    margin-top:0
}
.cavani_tm_modalbox .close{
    position:fixed;
    left:100%;
    top:0;
    margin-left:30px;
    z-index:10
}
.cavani_tm_modalbox .close a{
    display:block;
    width:40px;
    height:40px;
    text-decoration:none;
    color:#FFFFFF;
    border:2px solid #FFFFFF;
    border-radius:10px;
    position:relative;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_modalbox .close a:hover{
    border-radius:100%
}
.cavani_tm_modalbox .close a i{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%)
}
.cavani_tm_modalbox .description_wrap{
    position:relative;
    width:100%;
    height:100%;
    float:left;
    overflow:hidden;
    padding:50px;
    overflow-y:scroll
}
.cavani_tm_modalbox .description_wrap::-webkit-scrollbar{
    width:11px
}
.aali_tm_modalbox .description_wrap{
    scrollbar-width:thin;
    scrollbar-color:#bbb #FFFFFF
}
.cavani_tm_modalbox .description_wrap:-webkit-scrollbar-track{
    background:#FFFFFF
}
.cavani_tm_modalbox .description_wrap::-webkit-scrollbar-thumb{
    background-color:#bbb;
    border-radius:10px;
    border:3px solid #FFFFFF
}
.cavani_tm_portfolio .hidden_content{
    display:none;
    opacity:0;
    visibility:hidden;
    position:absolute;
    z-index:-11
}
.cavani_tm_modalbox .popup_details{
    width:100%;
    height:auto;
    clear:both;
    float:left
}
.cavani_tm_modalbox .popup_details .top_image{
    position:relative;
    overflow:hidden;
    margin-bottom:37px
}
.cavani_tm_modalbox .popup_details .top_image img{
    position:relative;
    min-width:100%;
    opacity:0
}
.cavani_tm_modalbox .popup_details .top_image .main{
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat
}
.cavani_tm_modalbox .portfolio_main_title{
    width:100%;
    float:left;
    margin-bottom:20px
}
.cavani_tm_modalbox .portfolio_main_title span{
    display:inline-block
}
.cavani_tm_modalbox .portfolio_main_title h3{
    font-weight:700;
    font-size:22px;
    margin-bottom:5px
}
.cavani_tm_modalbox .main_details{
    width:100%;
    height:auto;
    clear:both;
    display:flex;
    margin-bottom:60px
}
.cavani_tm_modalbox .main_details .textbox{
    width:70%;
    padding-right:40px
}
.cavani_tm_modalbox .main_details .textbox p{
    margin-bottom:15px
}
.cavani_tm_modalbox .main_details .textbox p:last-child{
    margin-bottom:0
}
.cavani_tm_modalbox .main_details .detailbox{
    width:30%;
    padding-left:40px
}
.cavani_tm_modalbox .main_details .detailbox>ul{
    margin:0;
    list-style-type:none
}
.cavani_tm_modalbox .main_details .detailbox>ul>li{
    margin:0 0 10px;
    width:100%;
    float:left
}
.cavani_tm_modalbox .main_details .detailbox>ul>li:last-child{
    margin-bottom:0
}
.cavani_tm_modalbox .main_details .detailbox .first{
    font-weight:700;
    display:block
}
.cavani_tm_modalbox .main_details .detailbox span a{
    text-decoration:none;
    color:#7d7789
}
.cavani_tm_modalbox .main_details .detailbox .share{
    margin:0;
    list-style-type:none;
    position:relative;
    top:7px
}
.cavani_tm_modalbox .main_details .detailbox .share li{
    margin:0 13px 0 0;
    display:inline-block
}
.cavani_tm_modalbox .main_details .detailbox .share li:last-child{
    margin-right:0
}
.cavani_tm_modalbox .main_details .detailbox .share li a{
    text-decoration:none;
    color:#7d7789
}
.cavani_tm_modalbox .additional_images{
    width:100%;
    height:auto;
    clear:both;
    float:left
}
.cavani_tm_modalbox .additional_images ul{
    margin:0 0 0 -30px;
    list-style-type:none
}
.cavani_tm_modalbox .additional_images ul li{
    margin:0 0 30px;
    float:left;
    width:50%;
    padding-left:30px
}
.cavani_tm_modalbox .additional_images ul li:nth-child(3n-2){
    width:100%
}
.cavani_tm_modalbox .additional_images ul li .list_inner{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    position:relative
}
.cavani_tm_modalbox .additional_images ul li .my_image{
    position:relative
}
.cavani_tm_modalbox .additional_images ul li .my_image img{
    opacity:0;
    min-width:100%
}
.cavani_tm_modalbox .additional_images ul li .my_image .main{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center
}
.cavani_tm_service{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-bottom:70px
}
.cavani_tm_service .service_list{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-top:60px
}
.cavani_tm_service .service_list ul{
    margin:0 0 0 -50px;
    list-style-type:none;
    display:flex;
    flex-wrap:wrap
}
.cavani_tm_service .service_list ul li{
    margin:0 0 50px;
    width:50%;
    padding-left:50px
}
.cavani_tm_service .service_list ul li .list_inner{
    width:100%;
    height:100%;
    clear:both;
    float:left;
    position:relative;
    border:1px solid #b9b8c3;
    padding:70px 40px 63px;
    text-align:center;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_service .service_list ul li .list_inner:hover{
    background-color:#333
}
.cavani_tm_service .service_list ul li .svg{
    width:60px;
    height:60px;
    color:#333;
    margin-bottom:27px;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_service .service_list ul li .list_inner:hover .svg{
    color:#FFFFFF
}
.cavani_tm_service .service_list ul li .title{
    font-weight:500;
    font-size:24px;
    color:#322a2a;
    margin-bottom:15px;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_service .service_list ul li .list_inner:hover .title{
    color:#FFFFFF
}
.cavani_tm_service .service_list ul li .list_inner .text{
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_service .service_list ul li .list_inner .text{
    color:#272727;
}
.cavani_tm_service .service_list ul li .list_inner:hover .text{
    color:rgb(254, 255, 234)
}
.cavani_tm_service .popup_service_image{
    opacity:0;
    visibility:hidden;
    display:none;
    position:absolute;
    z-index:-111
}
.cavani_tm_service .service_hidden_details{
    opacity:0;
    visibility:hidden;
    display:none;
    position:absolute;
    z-index:-111
}
.cavani_tm_modalbox .service_popup_informations{
    width:100%;
    height:auto;
    clear:both;
    float:left
}
.cavani_tm_modalbox .service_popup_informations .image{
    width:100%;
    float:left;
    position:relative;
    margin-bottom:37px
}
.cavani_tm_modalbox .service_popup_informations .image img{
    position:relative;
    min-width:100%;
    opacity:0
}
.cavani_tm_modalbox .service_popup_informations .image .main{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center
}
.cavani_tm_modalbox .service_popup_informations .main_title{
    width:100%;
    float:left;
    margin-bottom:23px
}
.cavani_tm_modalbox .service_popup_informations .main_title h3{
    font-size:22px
}
.cavani_tm_modalbox .service_popup_informations .descriptions{
    width:100%;
    float:left
}
.cavani_tm_modalbox .service_popup_informations .descriptions p{
    margin-bottom:15px
}
.cavani_tm_modalbox .service_popup_informations .descriptions p:last-child{
    margin-bottom:0
}
.cavani_tm_news{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-bottom:70px
}
.cavani_tm_news .news_list{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-top:60px
}
.cavani_tm_news .news_list>ul{
    margin:0;
    padding:0;
    list-style-type:none;
    position:relative;
    z-index:2
}
.cavani_tm_news .news_list>ul>li{
    width:100%;
    margin:0;
    padding:29px 0
}
.cavani_tm_news .news_list>ul>li .list_inner{
    width:100%;
    height:auto;
    clear:both;
    position:relative;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:-o-flex;
    display:flex;
    -ms-align-items:center;
    align-items:center
}
.cavani_tm_news .news_list>ul>li .list_inner .number{
    width:50px;
    min-width:50px;
    height:50px;
    text-align:center;
    line-height:50px;
    display:inline-block;
    border-radius:100%;
    background-color:#b9b8c3;
    color:#333;
    font-size:16px;
    font-weight:600;
    font-family:poppins
}
.cavani_tm_news .news_list>ul>li .list_inner .details{
    position:relative;
    padding-left:30px;
    margin-left:29px;
    max-width:calc(100% - 80px)
}
.cavani_tm_news .news_list>ul>li .list_inner .details:before{
    position:absolute;
    content:"";
    top:-17px;
    bottom:-22px;
    left:0;
    background-color:#b9b8c3;
    width:2px;
    transform:rotate(8deg)
}
.cavani_tm_news .news_list>ul>li .extra_metas ul{
    margin:0;
    list-style:none;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:-o-flex;
    display:flex;
    -ms-align-items:center;
    align-items:center;
    flex-wrap:wrap;
    margin-bottom:2px
}
.cavani_tm_news .news_list>ul>li .extra_metas ul li{
    margin:0;
    position:relative;
    margin-right:10px
}
.cavani_tm_news .news_list>ul>li .extra_metas ul li:before{
    position:relative;
    content:"/";
    font-size:18px
}
.cavani_tm_news .news_list>ul>li .extra_metas ul li:first-child:before{
    display:none
}
.cavani_tm_news .news_list>ul>li .extra_metas ul li span{
    font-size:15px;
    color:#777;
    padding-left:10px
}
.cavani_tm_news .news_list>ul>li .extra_metas ul li span a{
    text-decoration:none;
    color:#777;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_news .news_list>ul>li .extra_metas ul li span a:hover{
    color:#000
}
.cavani_tm_news .news_list>ul>li .extra_metas ul li:first-child span{
    padding-left:0
}
.cavani_tm_news .news_list>ul>li .post_title h3{
    margin:0;
    padding:0;
    line-height:1;
    font-weight:600
}
.cavani_tm_news .news_list>ul>li .post_title h3 a{
    text-decoration:none;
    color:#333;
    font-size:24px;
    background-image:linear-gradient(currentColor,currentColor);
    background-position:0% 100%;
    background-repeat:no-repeat;
    background-size:0% 2px;
    transition:background-size .5s
}
.cavani_tm_news .news_list>ul>li .post_title h3 a:hover{
    background-size:100% 2px
}
.cavani_fn_moving_box{
    width:265px;
    height:198px;
    border:1px solid #FFFFFF;
    box-shadow:5px 0 30px rgb(0 0 0/10%);
    position:fixed;
    top:50%;
    right:170px;
    background-repeat:no-repeat;
    background-position:center;
    background-size:cover;
    opacity:0;
    visibility:hidden;
    z-index:1;
    transform:scale(.6);
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_fn_moving_box.opened{
    opacity:1;
    visibility:visible;
    transform:scale(1)
}
.cavani_tm_news .news_hidden_details{
    display:none;
    opacity:0;
    visibility:hidden;
    position:absolute;
    z-index:-11
}
.cavani_tm_modalbox .news_popup_informations{
    width:100%;
    height:auto;
    clear:both;
    float:left
}
.cavani_tm_modalbox .news_popup_informations .image{
    position:relative;
    margin-bottom:30px
}
.cavani_tm_modalbox .news_popup_informations .image img{
    position:relative;
    opacity:0;
    min-width:100%
}
.cavani_tm_modalbox .news_popup_informations .image .main{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center
}
.cavani_tm_modalbox .news_popup_informations .text{
    width:100%;
    float:left
}
.cavani_tm_modalbox .news_popup_informations .text p{
    margin-bottom:15px
}
.cavani_tm_modalbox .news_popup_informations .text p:last-child{
    margin-bottom:0
}
.cavani_tm_modalbox .meta{
    width:100%;
    float:left;
    margin-bottom:5px
}
.cavani_tm_modalbox .meta ul{
    margin:0;
    list-style:none;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:-o-flex;
    display:flex;
    -ms-align-items:center;
    align-items:center;
    flex-wrap:wrap;
    margin-bottom:2px
}
.cavani_tm_modalbox .meta ul li{
    margin:0;
    position:relative;
    margin-right:10px
}
.cavani_tm_modalbox .meta ul li:before{
    position:relative;
    content:"/";
    font-size:18px
}
.cavani_tm_modalbox .meta ul li:first-child:before{
    display:none
}
.cavani_tm_modalbox .meta ul li span{
    font-size:15px;
    color:#777;
    padding-left:10px
}
.cavani_tm_modalbox .meta ul li span a{
    text-decoration:none;
    color:#777;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_modalbox .meta ul li span a:hover{
    color:#000
}
.cavani_tm_modalbox .meta ul li:first-child span{
    padding-left:0
}
.cavani_tm_modalbox .news_popup_informations .title{
    width:100%;
    float:left;
    margin-bottom:25px
}
.cavani_tm_modalbox .news_popup_informations .title h3{
    font-size:22px
}
.cavani_tm_contact{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-bottom:100px
}
.cavani_tm_contact .short_info{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    margin-top:62px
}
.cavani_tm_contact .short_info ul{
    margin:0 0 0 -30px;
    list-style-type:none;
    display:flex;
    flex-wrap:wrap
}
.cavani_tm_contact .short_info ul li{
    margin:0 0 30px;
    width:33.3333%;
    padding-left:30px
}
.cavani_tm_contact .short_info ul li .list_inner{
    width:100%;
    height:100%;
    clear:both;
    float:left;
    position:relative;
    border:1px solid rgba(0,0,0,.07);
    text-align:center;
    padding:32px 25px
}
.cavani_tm_contact .short_info ul li .list_inner span{
    display:block
}
.cavani_tm_contact .short_info ul li .list_inner .svg{
    width:18px;
    height:18px;
    margin-bottom:5px
}
.cavani_tm_contact .short_info ul li .list_inner a{
    text-decoration:none;
    color:#7d7789;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    -ms-transition:all .3s ease;
    -o-transition:all .3s ease;
    transition:all .3s ease
}
.cavani_tm_contact .short_info ul li .list_inner a:hover{
    color:#333
}
.cavani_tm_contact .form{
    width:100%;
    height:auto;
    clear:both;
    display:flex
}
.cavani_tm_contact .form .left{
    width:50%;
    padding-right:15px
}
.cavani_tm_contact .form .fields{
    width:100%;
    height:auto;
    clear:both;
    float:left
}
.cavani_tm_contact .form .fields .first{
    width:100%;
    float:left
}
.cavani_tm_contact .form .fields ul{
    margin:0;
    list-style-type:none
}
.cavani_tm_contact .form .fields ul li{
    width:100%;
    margin:0 0 30px;
    float:left
}
.cavani_tm_contact .form .fields ul li input{
    width:100%;
    border:1px solid rgba(0,0,0,.07);
    background-color:transparent
}
.cavani_tm_contact .form .fields ul li input:focus{
    outline:none;
    border:1px solid rgba(0,0,0,.2)
}
.cavani_tm_contact .form .fields .last textarea{
    width:100%;
    border:1px solid rgba(0,0,0,.07);
    height:120px;
    resize:none;
    margin-bottom:20px;
    background-color:transparent
}
.cavani_tm_contact .form .fields .last textarea:focus{
    outline:none;
    border:1px solid rgba(0,0,0,.2)
}
.cavani_tm_contact .form .empty_notice{
    color:#f52225;
    margin-bottom:7px;
    display:none;
    text-align:left;
    font-weight:500
}
.cavani_tm_contact .form .contact_error{
    color:#f52225;
    text-align:left;
    font-weight:500
}
.cavani_tm_contact .form .returnmessage{
    color:#3a00ff;
    text-align:left;
    font-weight:500
}
.cavani_tm_contact .form .right{
    width:50%;
    padding-left:15px;
    position:relative
}
.cavani_tm_footer{
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    height:70px;
    background-color:#FFFFFF;
    z-index:10;
    line-height:70px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 70px
}
.cavani_tm_footer .copyright p{
    color:#333;
    font-family:poppins
}
.cavani_tm_footer .social ul{
    margin:0;
    list-style-type:none
}
.cavani_tm_footer .social ul li{
    margin:0 15px 0 0;
    display:inline-block
}
.cavani_tm_footer .social ul li:last-child{
    margin-right:0
}
.cavani_tm_footer .social ul li a{
    text-decoration:none;
    color:#333
}
.cavani_tm_left_border{
    position:fixed;
    top:0;
    left:0;
    bottom:0;
    width:70px;
    background-color:#FFFFFF;
    z-index:10
}
.cavani_tm_right_border{
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    width:70px;
    background-color:#FFFFFF;
    z-index:10
}
.mouse-cursor{
    position:fixed;
    left:0;
    top:0;
    pointer-events:none;
    border-radius:50%;
    -webkit-transform:translateZ(0);
    transform:translateZ(0);
    visibility:hidden
}
.cursor-inner{
    margin-left:-3px;
    margin-top:-3px;
    width:6px;
    height:6px;
    z-index:100;
    background-color:#333;
    -webkit-transition:width .3s ease-in-out,height .3s ease-in-out,margin .3s ease-in-out,opacity .3s ease-in-out;
    transition:width .3s ease-in-out,height .3s ease-in-out,margin .3s ease-in-out,opacity .3s ease-in-out
}
.cursor-inner.cursor-hover{
    margin-left:-40px;
    margin-top:-40px;
    width:80px;
    height:80px;
    background-color:#333;
    opacity:.3
}
.cursor-outer{
    margin-left:-15px;
    margin-top:-15px;
    width:30px;
    height:30px;
    border:2px solid #333;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    z-index:100;
    opacity:.5;
    -webkit-transition:all .08s ease-out;
    transition:all .08s ease-out
}
.cursor-outer.cursor-hover{
    opacity:0
}
.cavani_tm_all_wrap[data-magic-cursor=hide] .mouse-cursor{
    display:none;
    opacity:0;
    visibility:hidden;
    position:absolute;
    z-index:-1111
}
.cavani_tm_mainpart .author_image .glitch_wrap{
    position:relative;
    width:100%;
    height:100%;
    float:left;
    overflow:hidden
}
.glitch{
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background-image:url(..//img/about/2.jpg);
    background-size:cover;
    -webkit-background-size:cover;
    background-position:center;
    z-index:-1!important;
    opacity:1;
    transform:scale(1)
}
.cavani_tm_mainpart .author_image .particle_wrapper{
    position:relative;
    float:left;
    width:100%;
    height:100%
}
#particles-js{
    width:100%;
    height:100%;
    position:relative;
    z-index:2
}
.cavani_tm_mainpart .author_image .ripple{
    width:100%;
    height:100%;
    position:relative;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center;
    background-image:url(..//img/about/3.jpg)
}
.cavani_tm_intro{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    padding-bottom:50px
}
.cavani_tm_intro .main_title{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    text-align:center;
    padding:100px 0
}
.cavani_tm_intro .main_title img{
    max-width:200px;
    margin-bottom:20px
}
.cavani_tm_intro .main_title p{
    font-weight:500;
    font-size:18px
}
.cavani_tm_intro .demo_list{
    width:100%;
    max-width:1000px;
    clear:both;
    margin:0 auto;
    padding:0 20px
}
.cavani_tm_intro .demo_list ul{
    margin:0 0 0 -50px;
    list-style-type:none
}
.cavani_tm_intro .demo_list ul li{
    margin:0 0 50px;
    float:left;
    width:50%;
    padding-left:50px
}
.cavani_tm_intro .demo_list ul li .list_inner{
    width:100%;
    height:auto;
    clear:both;
    float:left;
    position:relative;
    text-align:center;
    top:0;
    transition:all .3s ease
}
.cavani_tm_intro .demo_list ul li .list_inner:hover{
    top:-5px
}
.cavani_tm_intro .demo_list ul li img{
    box-shadow:0 0 10px rgba(0,0,0,.15);
    margin-bottom:20px
}
.cavani_tm_intro .demo_list ul li h3{
    font-size:18px
}
.intro_copyright{
    width:100%;
    height:auto;
    float:left;
    text-align:center;
    padding:20px 0;
    background-color:#333
}
.intro_copyright p{
    color:#FFFFFF;
    font-family:poppins
}
@media(max-width:1600px){
    body{
        font-size:15px
    }
    .cavani_tm_header .logo .text{
        line-height:60px
    }
    .cavani_tm_header .logo img{
        max-width:95px
    }
    .cavani_tm_mainpart .author_image{
        width:35%
    }
    .cavani_tm_mainpart .main_content{
        width:65%
    }
    .cavani_tm_section .section_inner:before{
        width:50px
    }
    .cavani_tm_title span{
        letter-spacing:7px
    }
    .cavani_tm_title span:after{
        margin-left:25px
    }
    .cavani_tm_header{
        height:60px;
        line-height:60px;
        padding:0 60px
    }
    .cavani_tm_footer{
        height:60px;
        line-height:60px;
        padding:0 60px
    }
    .cavani_tm_left_border{
        width:60px
    }
    .cavani_tm_right_border{
        width:60px
    }
    .cavani_tm_mainpart{
        top:60px;
        left:60px;
        right:60px;
        bottom:60px
    }
    .cavani_tm_footer .social ul li{
        margin-right:10px
    }
    .cavani_tm_header .menu ul li a{
        padding:0 22px
    }
    .cavani_tm_home .content{
        padding-left:50px;
    }
    .cavani_tm_home .name{
        font-size:55px;
        margin-bottom:25px
    }
    .cavani_tm_home .line{
        width:60px;
        height:4px;
        margin-bottom:25px
    }
    .cavani_tm_home .job{
        font-size:23px;
        margin-bottom:10px
    }
    .cavani_tm_button a{
        padding:13px 32px
    }
    .cavani_tm_section .section_inner{
        padding:95px 50px 0
    }
    .circular_progress_bar .list_inner:after{
        width:100px;
        height:100px
    }
    .circular_progress_bar .title{
        max-width:100px
    }
    .progress_inner{
        margin-bottom:18px
    }
    .cavani_tm_about .univ ul li .time span{
        padding:3px 12px
    }
    .cavani_tm_about .univ ul li .place{
        padding-left:0
    }
    .cavani_tm_portfolio .portfolio_filter ul li{
        margin-right:30px
    }
    .cavani_tm_about .testimonials .list ul li .text{
        padding:30px
    }
    .cavani_tm_contact .short_info ul li .list_inner{
        padding:20px 10px
    }
    .cavani_tm_modalbox .box_inner{
        width:750px;
        top:45px;
        bottom:45px
    }
    .cavani_tm_modalbox .description_wrap{
        padding:30px
    }
}
@media(max-width:1040px){
    .mouse-cursor{
        display:none
    }
    #preloader{
        display:none
    }
    .cavani_tm_topbar{
        display:block
    }
    .cavani_tm_header{
        display:none
    }
    .cavani_tm_footer{
        display:none
    }
    .cavani_tm_left_border{
        display:none
    }
    .cavani_tm_right_border{
        display:none
    }
    .cavani_tm_section .section_inner:before{
        width:20px
    }
    .cavani_tm_mainpart .author_image{
        display:none
    }
    .cavani_tm_mainpart{
        top:55px;
        left:0;
        right:0;
        bottom:0
    }
    .cavani_tm_mainpart .main_content{
        width:100%
    }
    .cavani_tm_home .content{
        padding:0 20px
    }
    .cavani_tm_home .name{
        font-size:60px
    }
    .cavani_tm_home .job{
        font-size:22px
    }
    .cavani_tm_about .biography .wrapper{
        flex-direction:column;
        align-items:baseline
    }
    .cavani_tm_about .biography .left{
        width:100%;
        margin-bottom:55px
    }
    .cavani_tm_about .biography .right{
        width:100%
    }
    .cavani_tm_about .services .wrapper{
        flex-direction:column;
        align-items:baseline
    }
    .cavani_tm_about .services .service_list{
        width:100%;
        margin-bottom:55px
    }
    .cavani_tm_about .services .service_list:nth-child(2){
        width:100%
    }
    .cavani_tm_about .services .interests{
        width:100%
    }
    .cavani_tm_section .section_inner{
        padding:57px 20px 0
    }
    .cavani_tm_about .skills .wrapper{
        flex-direction:column;
        align-items:baseline
    }
    .cavani_tm_about .skills .programming{
        width:100%;
        margin-bottom:60px
    }
    .cavani_tm_about .skills .language{
        width:100%
    }
    .circular_progress_bar .title{
        float:none
    }
    .cavani_tm_about .resume .wrapper{
        flex-direction:column;
        align-items:baseline
    }
    .cavani_tm_about .resume .education{
        width:100%;
        margin-bottom:60px
    }
    .cavani_tm_about .resume .experience{
        width:100%
    }
    .cavani_tm_portfolio .portfolio_list ul li{
        width:50%
    }
    .cavani_tm_contact .short_info ul{
        margin:0
    }
    .cavani_tm_contact .short_info ul li{
        width:100%;
        padding-left:0
    }
    .cavani_tm_contact .form{
        flex-direction:column;
        align-items:baseline
    }
    .cavani_tm_contact .form .left{
        width:100%;
        padding:0;
        margin-bottom:30px
    }
    .cavani_tm_contact .form .right{
        width:100%;
        padding:0
    }
    .cavani_tm_modalbox .box_inner{
        width:550px
    }
    .cavani_tm_modalbox .description_wrap{
        padding:20px
    }
    .cavani_tm_modalbox .main_details{
        flex-direction:column;
        align-items:baseline
    }
    .cavani_tm_modalbox .main_details .textbox{
        width:100%;
        padding:0;
        margin-bottom:30px
    }
    .cavani_tm_modalbox .main_details .detailbox{
        width:100%;
        padding:0
    }
    .cavani_tm_modalbox .additional_images ul{
        margin:0
    }
    .cavani_tm_modalbox .additional_images ul li{
        width:100%;
        padding-left:0
    }
    .cavani_tm_modalbox .portfolio_main_title h3{
        font-size:20px
    }
    .cavani_tm_modalbox .news_popup_informations .title h3{
        font-size:20px
    }
    .cavani_tm_modalbox .service_popup_informations .main_title h3{
        font-size:20px
    }
    .cavani_tm_intro .demo_list ul{
        margin:0
    }
    .cavani_tm_intro .demo_list ul li{
        width:100%;
        padding-left:0
    }
}
@media(max-width:768px){
    .cavani_tm_home .name{
        font-size:40px
    }
    .cavani_tm_home .job{
        font-size:20px
    }
    .cavani_tm_home .line{
        height:3px;
        width:40px
    }
    .cavani_tm_button a{
        padding:10px 28px
    }
    .circular_progress_bar .list_inner:after{
        width:80px;
        height:80px
    }
    .circular_progress_bar .title{
        max-width:80px
    }
    .cavani_tm_about .partners .list ul li{
        width:50%
    }
    .cavani_tm_portfolio .portfolio_list ul{
        margin:0
    }
    .cavani_tm_portfolio .portfolio_list ul li{
        width:100%;
        padding-left:0
    }
    .cavani_tm_title span{
        letter-spacing:4px
    }
    .cavani_tm_title span:after{
        margin-left:15px
    }
    .cavani_tm_modalbox .box_inner{
        width:300px;
        top:60px;
        bottom:40px
    }
    .cavani_tm_modalbox .close{
        margin-left:-25px;
        top:-37px
    }
    .cavani_tm_modalbox .close a{
        width:28px;
        height:28px
    }
    .cavani_tm_service .service_list ul{
        margin:0
    }
    .cavani_tm_service .service_list ul li{
        width:100%;
        padding-left:0;
        margin-bottom:20px
    }
    .cavani_tm_service .service_list ul li .title{
        font-size:20px
    }
    .cavani_tm_news .news_list>ul>li .post_title h3 a{
        font-size:20px
    }
    .cavani_tm_news .news_list>ul>li .list_inner .number{
        display:none
    }
    .cavani_tm_news .news_list>ul>li .list_inner .details:before{
        display:none
    }
    .cavani_tm_news .news_list>ul>li .list_inner .details{
        margin:0;
        padding:0;
        max-width:100%!important
    }
    .cavani_tm_news .news_list>ul>li{
        padding:20px 0
    }
}


.blc {
    font-size: 18px;
}