

/* ==========================================================================
   Chrome Frame prompt
   ========================================================================== */

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

#loader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
}
#loader {
    display: block;
    position: relative;
    left: 50%;
    top: 50%;
    width: 150px;
    height: 150px;
    margin: -75px 0 0 -75px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: #FFF;

    -webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */
    animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */

    z-index: 1001;
}

    #loader:before {
        content: "";
        position: absolute;
        top: 5px;
        left: 5px;
        right: 5px;
        bottom: 5px;
        border-radius: 50%;
        border: 3px solid transparent;
        border-top-color: #eb0909;

        -webkit-animation: spin 3s linear infinite; /* Chrome, Opera 15+, Safari 5+ */
        animation: spin 3s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */
    }

    #loader:after {
        content: "";
        position: absolute;
        top: 15px;
        left: 15px;
        right: 15px;
        bottom: 15px;
        border-radius: 50%;
        border: 3px solid transparent;
        border-top-color: #000;

        -webkit-animation: spin 1.5s linear infinite; /* Chrome, Opera 15+, Safari 5+ */
          animation: spin 1.5s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */
    }

    @-webkit-keyframes spin {
        0%   { 
            -webkit-transform: rotate(0deg);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: rotate(0deg);  /* IE 9 */
            transform: rotate(0deg);  /* Firefox 16+, IE 10+, Opera */
        }
        100% {
            -webkit-transform: rotate(360deg);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: rotate(360deg);  /* IE 9 */
            transform: rotate(360deg);  /* Firefox 16+, IE 10+, Opera */
        }
    }
    @keyframes spin {
        0%   { 
            -webkit-transform: rotate(0deg);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: rotate(0deg);  /* IE 9 */
            transform: rotate(0deg);  /* Firefox 16+, IE 10+, Opera */
        }
        100% {
            -webkit-transform: rotate(360deg);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: rotate(360deg);  /* IE 9 */
            transform: rotate(360deg);  /* Firefox 16+, IE 10+, Opera */
        }
    }

    #loader-wrapper .loader-section {
        position: fixed;
        top: 0;
        width: 51%;
        height: 100%;
        background: #FFF;
        z-index: 1000;
        -webkit-transform: translateX(0);  /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: translateX(0);  /* IE 9 */
        transform: translateX(0);  /* Firefox 16+, IE 10+, Opera */
    }

    #loader-wrapper .loader-section.section-left {
        left: 0;
    }

    #loader-wrapper .loader-section.section-right {
        right: 0;
    }

    /* Loaded */
    .loaded #loader-wrapper .loader-section.section-left {
        -webkit-transform: translateX(-100%);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: translateX(-100%);  /* IE 9 */
                transform: translateX(-100%);  /* Firefox 16+, IE 10+, Opera */

        -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);  
                transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
    }

    .loaded #loader-wrapper .loader-section.section-right {
        -webkit-transform: translateX(100%);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: translateX(100%);  /* IE 9 */
                transform: translateX(100%);  /* Firefox 16+, IE 10+, Opera */

-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);  
        transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
    }
    
    .loaded #loader {
        opacity: 0;
        -webkit-transition: all 0.3s ease-out;  
                transition: all 0.3s ease-out;
    }
    .loaded #loader-wrapper {
        visibility: hidden;

        -webkit-transform: translateY(-100%);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: translateY(-100%);  /* IE 9 */
                transform: translateY(-100%);  /* Firefox 16+, IE 10+, Opera */

        -webkit-transition: all 0.3s 1s ease-out;  
                transition: all 0.3s 1s ease-out;
    }
    
    /* JavaScript Turned Off */
    .no-js #loader-wrapper {
        display: none;
    }
    .no-js h1 {
        color: #FFF;
    }

    #content {
        margin: 0 auto;
        padding-bottom: 50px;
        width: 80%;
        max-width: 978px;
    }  






/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */



#loader_image {
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 9999;
    right: 0;
    margin: 0 auto;
    display: block;
    text-align: center;
    margin-top: -40px;
}

.loaded #loader-wrapper #loader_image {
        -webkit-transform: translateY(-1000%);  /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: translateY(-1000%);  /* IE 9 */
        transform: translateY(-1000%);  /* Firefox 16+, IE 10+, Opera */
    -webkit-transition: all 1.5s ease;
    transition: all 1.5s ease;
}


#loader_image  img {
  animation: scale 1.5s linear infinite;
}
  
@keyframes scale {
  50% {
    -webkit-transform:scale(1.1);
    -moz-transform:scale(1.1);
    -ms-transform:scale(1.1);
    -o-transform:scale(1.1);
    transform:scale(1.1);
  }
}

.prtf-smooth-transition-loader.prtf-hide-spinner .prtf-st-loader { display:none}
.prtf-st-loader {
 position:absolute;
 top:60%;
 left:50%;
 z-index:2100;
 -webkit-transform:translate(-50%,-50%);
 -moz-transform:translate(-50%,-50%);
 transform:translate(-50%,-50%)
}
.prtf-st-loader1 {
 position:relative;
 height:100%
}
/*---MainCube----*/
.prtf-outline .prtf-line-1 {
 top:0;
 left:0;
 height:0;
 width:0;
 border-right:2px solid #c00;
 -webkit-animation-name:animateHeight;
 animation-name:animateHeight;
 animation-duration:1.5s;
 animation-iteration-count:infinite;
 animation-timing-function:ease;
 animation-delay:0s;
 animation-fill-mode:forwards
}
.prtf-outline .prtf-line-2 {
 bottom:0;
 right:0;
 border-top:2px solid #c00;
 -webkit-animation-name:animateWidth;
 animation-name:animateWidth;
 animation-duration:1.5s;
 animation-iteration-count:infinite;
 animation-timing-function:ease;
 animation-delay:0s;
 animation-fill-mode:forwards
}
.prtf-outline .prtf-line-3 {
 top:0;
 left:0;
 border-bottom:2px solid #c00;
 -webkit-animation-name:animateWidth;
 animation-name:animateWidth;
 animation-duration:1.5s;
 animation-iteration-count:infinite;
 animation-timing-function:ease;
 animation-delay:0s;
 animation-fill-mode:forwards
}
.prtf-outline .prtf-line-4 {
 bottom:0;
 right:0;
 height:0;
 width:0;
 border-left:2px solid #c00;
 -webkit-animation-name:animateHeight;
 -webkit-animation-duration:1.5s;
 -webkit-animation-iteration-count:infinite;
 -webkit-animation-timing-function:ease;
 -webkit-animation-delay:0s;
 -webkit-animation-fill-mode:forwards;
 animation-name:animateHeight;
 animation-duration:1.5s;
 animation-iteration-count:infinite;
 animation-timing-function:ease;
 animation-delay:0s;
 animation-fill-mode:forwards
}
/*.prtf-outline .prtf-line-1,.prtf-outline:after {
 -webkit-animation-duration:1.5s;
 -webkit-animation-iteration-count:infinite;
 -webkit-animation-timing-function:ease;
 -webkit-animation-delay:0s;
 -webkit-animation-fill-mode:forwards
}*/
.prtf-outline .prtf-line-2,.prtf-outline .prtf-line-3 {
 -webkit-animation-duration:1.5s;
 -webkit-animation-iteration-count:infinite;
 -webkit-animation-timing-function:ease;
 -webkit-animation-delay:0s;
 -webkit-animation-fill-mode:forwards;
 height:0;
 width:0
}
.prtf-outline .prtf-line-1,.prtf-outline .prtf-line-2,.prtf-outline .prtf-line-3,.prtf-outline .prtf-line-4,.prtf-outline .prtf-outline .prtf-portfolio-list-holder-outer.prtf-line-4,.prtf- portfolio-list-holder-outer {
 position:absolute;
 border-color: #1d7d4f;
 opacity:0;
}
/*---SecondCube. You can set cube size)---*/
.prtf-outline {
 position:absolute;
 top: calc(50% + 45px);
 left:calc(50% - 25px);
 width:75px;
 height:75px;
}
/*.prtf-outline:after {
 content:'';
 position:absolute;
 height:100%;
 width:100%;
 top:0;
 left:0;
 border:2px solid #7a7878;
 -webkit-animation-name:downRight;
 animation-name:downRight;
 animation-duration:1.5s;
 animation-iteration-count:infinite;
 animation-timing-function:ease;
 animation-delay:0s;
 animation-fill-mode:forwards;
 z-index:-1
}*/
/*---Animation function specisl for preloader----*/
@-webkit-keyframes animateWidth {
 0% {opacity:1;width:0}
 40%,80% {width:100%;opacity:1}
 100% { opacity:0;width:100%}
}
@keyframes animateWidth {
 0% {opacity:1;width:0}
 40%,80% {width:100%;opacity:1}
 100% {opacity:0;width:100%}
}
@-webkit-keyframes animateHeight {
 0% {opacity:1;height:0}
 40%,80% {height:100%;opacity:1}
 100% {height:100%; opacity:0}
}
@keyframes animateHeight {
 0% {opacity:1;height:0}
 40%,80% {height:100%;opacity:1 }
 100% { height:100%;opacity:0}
}
@-webkit-keyframes downRight {
 0%,20%,30% {opacity:0;top:0;left:0 }
 40%,80% {top:10%;left:10%;opacity:1}
 100% { top:10%;left:10%;opacity:0}
}
@keyframes downRight {
 0%,20%,30% {opacity:0;top:0; left:0 }
 40%,80% {top:10%;left:10%;opacity:1 }
 100% {top:10%;left:10%;opacity:0 }
}

