.btn2{
    padding: 10px 25px !important;
}
.section-mod{
    padding: 120px 0;
}
nav.navbar.navbar-default ul.nav > li > a:before
{
    -webkit-transition: all !important;
    -webkit-transition-timing-function: ease-out !important;
    -webkit-transition-duration: 300ms !important;
    -moz-transition: all !important;
    -moz-transition-timing-function: ease-out !important;
    -moz-transition-duration: 300ms !important;
}
.p0{padding: 0 !important}
.mb-20{margin-bottom: 20px;}
.mb-10{margin-bottom: 10px;}
.mb-30{margin-bottom: 30px;}
.mb-40{margin-bottom: 40px;}
.mb-50{margin-bottom: 50px;}
.mb-60{margin-bottom: 60px;}
.mb-70{margin-bottom: 70px;}


.boxcontainer{
    position: relative;
    display: flex;
    height: 17rem;
    overflow: hidden;
    width: 100%;
    padding-top: 15px;
}
.boxcontainer .scrolling{
    width: 100%;;
    position: absolute;
    transition-duration: 9s;

}
.boxcontainer .thebg{
    position: absolute;
    top: 0;
    z-index: 9999
}

.boxcontainer:hover .scrolling {
    transform: translate3d(0,-1500px,0);
}
.responsiveness {
    height: 46.5rem;
}
.responsiveness .xxl {
    width: 50rem;
}
.responsiveness .xxl {
    position: absolute;
    left: 50%;
    width: 56rem;
    bottom: 0;
    transform: translateX(-50%);
}
.responsiveness .xl {
    position: absolute;
    left: 0%;
    width: 32rem;
    bottom: 0;
}
.responsiveness .md {
    position: absolute;
    width: 21rem;
    right: 0%;
    bottom: 0;
}
.responsiveness .sm {
    width: 6rem;
    right: 31%;
    bottom: 0;
    position: absolute;
}
.videoframe{
    width:100%;
    height: 600px
}
.videoplay{
    width: 100%;
    display: flex;
    height: 100%;
}
.col-center{
    margin: auto;float: none;
}
.subscribe-wrapper .subscribe-input {
    width: 100%;
    border: 0;
    font-size: 20px;
    outline: 0;
    font-weight: 300;
    background: center;
    line-height: 1.6em;
    color: #7a7a84;
    padding: 5px 0;
    border-bottom: 1px solid;
    letter-spacing: 2px;
}
.subscribe-wrapper .subscribe-input-send {
    position: absolute;
    width: auto;
    right: 15px;
    bottom: 5px;
    border: 0;
    background: 0 0;
    padding-right: 0;
    cursor: pointer;
    font-size: 25px;
    text-transform: capitalize;
    color: #7a7a84;
    letter-spacing: .05em;
}
.videoplay100{
    background-color: #000;
        height: auto;
        left: 50%;
        min-height: 100%;
        min-width: 100%;
        position: absolute;
        top: 50%;
        -ms-transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        width: auto;
        z-index: -3;
}

 .ddd_1{
     line-height: 1 !important;
     margin-bottom: 0 !important;
     position: absolute;
     color: transparent;
     -webkit-text-stroke: 2px #7a7a84;
     font-size: 130px;
     left:140px;

     transform: translate(0px, 0px);
     transition-duration: 1s;

 }
 .boxrotator{
    min-height: 420px;
     position: relative;
     overflow: hidden;
     background:white;padding:40px
 }
 .rotator_text{

     height: 20vh;

 }
 .col-md-4.e:hover .ddd_1{
     transition-duration: 4s;
    transform: translate3d(-420px,0px, 0px);
 }

 .col-md-4.e:hover .boxrotator{
     background-color: #3b3d44;
 }
.col-md-4.e a:hover h6,
.col-md-4.e:hover h6,
.col-md-4.e:hover p{
    color: #fff !important;
}

.col-md-4.e a h6,
.col-md-4.e h6,
.col-md-4.e p{
    color: #000 !important;
}
.vertical-align {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.overlay:before{
    content: "";
    position: absolute;
    background: rgba(0,0,0,0.45);
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.overlay{
    position: relative;
}

.listBox:before{
    content:"";
    width: 100%;
    position: absolute;
    height: 1px;
    background-color: black;
    bottom: -40px;
}
.listBox{
    position: relative;
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between;
}
.listBox li:before{
    content: "";
    height: 35px;
    width: 1px;
    background-color: black;
    position: absolute;
    bottom: -40px;
    left: calc(50% - 1px);
}
.listBox.d19 li{max-width: 19%;}
.listBox li{
    background-color: white;
    position: relative;
    width: 20%;
    height: 28vh;
    padding: 85px 20px 0px 20px;
}

.panel-title{
    font-size: 1rem !important;
    padding-bottom: 20px;
}
.panel-heading{position: relative;}
.panel-heading:after {
    transform: scaleX(0);
    transform-origin: right;
    background: #3b3d44;
}
.panel-heading:hover::after {
    transform: scaleX(1);
    transform-origin: left center;
}
.panel-heading:after{
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    content: '';
    position: absolute;
    transition: transform .75s ease-out;
}
.accordion-style1 .panel-heading i {
    font-size: 24px;
    color: #626262;
}
.mb-120{
    margin-bottom: 120px;
}

.swiper-slider-clients .swiper-slide {
    padding: 5px;
}
.whitebars{position: relative;}
.whitebars:before{
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 50px;
    background-color: white;
}
.whitebars:after{
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 50px;
    background-color: white;
}
.bubble.S:before{
    content: "S";
    right: -22px;
    top: -23px;
    background-color: #7f73e4;
}

.bubble.F:before{
    content: "F";
    left: -22px;
    bottom: -23px;
    background-color: #aee473;
}

.bubble.L:before{
    content: "L";
    left: -22px;
    bottom: -23px;
    background-color: #e47373;
}

.bubble.M:before{
    content: "M";
    right: -22px;
    top: -23px;
    background-color: #d873e4;
}
.bubble:before{
    content: "";
    position: absolute;
    width: 53px;
    height: 53px;

    color: white;
    border-radius: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bolder;
    font-size: 20px !important;

}
.bubble{
    display: inline-block;
    width: 100%;
    padding: 20px;
    background-color: white;
    border-radius: 15px;
    box-shadow: 2px 2px 8px 0px #d0d0d0;
    position: relative;
    margin-bottom: 40px;
}
.mb-0P{
    width: 80%;
    margin: auto;
    list-style: none;
}
.mb-0P li:before{
    content: "";
    left: -15px;
    position: absolute;
    top: 9px;
    width: 8px;
    height: 8px;
    background-color: #FF783C;
    border-radius: 100px;
}
.mb-0P li{margin-bottom: 20px;position: relative;}
.mb-0P p{margin-bottom: 0;}



body h2 {
    font-family: DM Serif Display !important;
    font-size: 70px !important;
    font-weight: 700 !important;
    letter-spacing: -0.5px !important;
    line-height: 1;
    color: #262626 !important;
}

body h1 {
    font-family: DM Serif Display !important;
    font-size: 140px !important;
    font-weight: 700 !important;
    letter-spacing: -0.5px !important;
    line-height: 1;
    color: #262626 !important;
}
.scroll-notice {
    position: absolute;
    display: inline-block;
    width: auto;
    transform: rotate(90deg);
    cursor: pointer;
    bottom: 45px;
    left: 50px;
}
.scroll-notice span { display: block; position: relative; width: auto; white-space: nowrap; font-size: 12px; font-weight: 600; color: rgb(255, 255, 255); }
.scroll-notice span::before { content: ""; display: block; position: absolute; top: 50%; background: rgb(255, 255, 255); width: 0px; height: 1px; right: 120%; transform: translateY(-50%); }
.scroll-notice span::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    background: rgba(255, 255, 255, 1);
    width: 40px;
    height: 1px;
    left: -105%;
    -webkit-transform: translatey(-50%);
    -ms-transform: translatey(-50%);
    transform: translatey(-43%);
    float: left;

    -webkit-animation: mymoveDos 3s infinite;
        animation: mymoveDos 3s infinite;
}

@-webkit-keyframes mymoveDos {
    0%,
    100% {
        width: 20px;
    }
    50% {
        width: 40px;
    }
}
.flex_between{justify-content: space-between;}
.lead{
    font-size: 30px;
    line-height: 1.4;
}
.fa-heart {
    animation: heartbeat 3s infinite;
}

@keyframes heartbeat {
    0% {
        transform: scale( .75);
    }
    20% {
        transform: scale( 1.3);
    }
    40% {
        transform: scale( .75);
    }
    60% {
        transform: scale( 1.3);
    }
    100% {
        transform: scale( .75);
    }
}
.portfolio-item-thumbnail h3{
    position: absolute;
    bottom:  40px;
    left: 60px;
    z-index: 99;
    color: white;
}
.portfolio-item-thumbnail:hover img{
    -webkit-transform: scale(1.1,1.1);
}
.portfolio-item-thumbnail a{
overflow: hidden;
display: block;
}
.portfolio-item-thumbnail img {
width: 100%;
height: auto;
display: block;
transition: all .2s ease; -webkit-transition: all .6s ease; -moz-transition: all .6s ease;
}
.hyperlink{position: relative;}
.hyperlink:hover:before{
    width:100%;
}
.hyperlink:before{
    content: "";
    width: 0%;
    height: 1px;
    background-color: #707070;
    left: 0;
    bottom: 0;
    z-index: 99999;
    position: absolute;
}
.hyperlink:before{

transition: all .2s ease; -webkit-transition: all .6s ease; -moz-transition: all .6s ease;
}
.boxd .col-md-4{height: 100%;margin-bottom: 40px;}
.boxd a:hover{
    background-color: #ADA02B;
}
.boxd .a{
    color: white;
    display: flex;
    align-items: center;
}
.boxd a:hover .card-display__icon {
    transform: rotate(0deg );
}
.boxd a{
    color: white;
    display: flex;
    height: 100%;
    justify-content: space-between;
    flex-direction: column;
    height: 25.25rem;
    border-radius: 20px;
    border: 1px solid rgba(255,255,255,0.4);
    padding: 40px;

    -webkit-transition: all !important;
    -webkit-transition-timing-function: ease-out !important;
    -webkit-transition-duration: 500ms !important;
    -moz-transition: all !important;
    -moz-transition-timing-function: ease-out !important;
    -moz-transition-duration: 500ms !important;
}
@-webkit-keyframes AnimationName {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@-moz-keyframes AnimationName {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@keyframes  AnimationName {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}


.boxd a h4 {
    height: 130px;
    line-height: 1.2;
    color: white;
}
.boxd p{min-height: 207px;}
.boxd.editedh p{min-height: 590px;}
.boxd hr{
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 0;
    border-top: 1px solid rgb(255 255 255 / 30%);
    float: left;
    width: 100%;
}
.card-display__icon {
    width: 45px;
    transform: rotate(-45deg );
    transition: transform .2s cubic-bezier(.5,.15,.5,.85) .1s;
}
.mb-80{margin-bottom: 80px;}
.mb-140{margin-bottom: 140px;}

.trazo span{position: relative;}
.trazo span img{position: absolute;width: 100%;left: 0}

.ai-image-carousel{
    padding-top: 70px;
}
.ai-image-carousel{
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    width: auto;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 30px;
}
.ai-image {
    display: block;
    margin-right: 30px;
    -ms-flex-preferred-size: 40vw;
    flex-basis: 40vw;
    min-width: 27vw;
    position: relative;
}

.ai-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

video {
    background-color: #000;
    height: auto;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    position: absolute;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    width: auto;
    z-index: -3;
    background-size: cover;
    display: table-cell;
    vertical-align: middle;
}

    .mayita:before{
        content: "";
        position: absolute;
        background: rgba(0,0,0,0.1);
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: url(../images/ptn2.png) repeat;
    }
    .mayita{
        position: relative;
    }

    /*13 inch retina*/
    @media (min-width: 799px) and (max-width: 1350px) {
        body .container{
            max-width: 1200px !important;
        }
    }