html {
    -webkit-font-smoothing: antialiased;
}

body {
    background: #F9F9F9;
    font-family: 'Montserrat', sans-serif;
    color: #333333;
    text-shadow: 0 0 1px rgba(51,51,51,0.2);
}

::selection {
    background: #2BB673; /* Safari */
    color: #fff;

}

p {
    margin: 0;
}

a,a:visited,a:hover {
    color: #4D4D4D;
    text-decoration: none;
}

#wrapper {
    width: 100%;
    margin: 0 auto;
}

header {
    width: 100%;
    height: 80px;
    /*border-bottom: 4px solid #666666;*/
    padding: 20px 0;
    transition: height 0.4s ease-in-out; 
    -webkit-transition: height 0.4s ease-in-out; 
}

.header-content {
    width: 1100px;
    margin: 0 auto;
}

header.fixed-header {
    position: fixed;
    z-index: 5000;
    width: 1100px;
    top: 0;
    height: 54px;
}

header.fixed-header #logo {
    background: url('../images/logo_smaller.svg') no-repeat; 
    width: 50px;
    height: 50px;
}

header.fixed-header ul#menu {
     margin-top: 32px;
}

#logo {
	width: 360px;
	height: 90px;
	background: url('../images/logo.svg') no-repeat;
	background-size: contain;
    float: left;
}

.header-divider {
    height: 6px solid #666666;

}


#content {
    width: 100%;
    position: relative;
}

ul#menu {
    list-style: none;
    float: right;
    margin-top: 55px;
}

ul#menu li {
    display: inline-block;
    margin-left: 6px;
    float: left;
    height: 20px;
}

ul#menu li:hover, li.active {
    border-bottom: solid 2px #ED4724;
}

.section-title {
    color: #4D4E4E;    
    font-size: 36px;
    letter-spacing: 1px;
    text-transform: uppercase;
    text-align: center;
    width: 1109px;
    margin-bottom: 20px;
}


article {
    width: 356px;
    background: none;
    display: inline-block;
    margin-bottom: 36px;
    position: relative;
    overflow: hidden;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: none;
    padding: 8px;
    transition: background 0.2s ease-in-out;    
    -webkit-transition: background 0.2s ease-in-out;    
}

article.content-open {
    overflow: visible;
}

article.color {
    background: #ED4724; 
}

article.inline-block {
    display: inline-block;
}


.project-img {
    width: 340px;
    height: 259px;
    cursor:pointer;
    background-size: cover;
    /*box-shadow: 5px 5px 0px #AAAAAA;*/
}

.project-img > img{
    width: 100%;
    height: 100%;
   }

.article-margin {
    margin-right: 20px;
}

.no-margin.right {
    margin-right: 0;
}

#overlay {
    opacity: 0.6;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    background-image: radial-gradient(#515151, rgba(0,0,0,.7));
}


.project-content {
    position: absolute;
    z-index: 50;
    width: 348px;
    left: 0;
    padding: 8px 0 0 8px;
    visibility: hidden;
    opacity: 0;
        transition: all 0.2s ease-in-out; 
    -webkit-transition: all 0.2s ease-in-out; 
}

.project-content.open {
    visibility: visible;
    opacity: 1;
    background: #ED4724;
    transition: all 0.2s ease-in-out; 
        -webkit-transition: all 0.2s ease-in-out; 
}

.project-preview {
    width: 340px;
    height: 259px; 
    position: absolute;
    top: 8px;
    left: -500px;
    background-image: url('../images/preview_overlay.svg');
    background-repeat: no-repeat;
    background-size: cover;    
    font-size: 16px;
    transition: left 0.4s ease-in-out; 
}

.project-preview.on {
    left: 8px;
    display: block;   
}


article.big-view {
    width: 356px;;
    position: absolute;
    overflow: auto;
    display: block;
    background: #ED4724;
    z-index: 50;
    /*box-shadow: 5px 5px 0px #AAAAAA;*/
    opacity: 1;
    top: 0;
    left: 0;
}

article.big-view.hidden {
}

article.big-view > .project-content {
    background: none;
}

article.big-view .project-img {
    box-shadow: none;
}


article.big-view {

}

.project-img.big ,.project-img.big img{
    width: 466px;
    height: 349px;
    float: left;
}


.project-title {
    bottom: 7px;
    position: absolute;
    color: white;
    font-weight: 700;
    font-size: 20px;
    padding-left: 10px;
    max-width: 220px;  
    transition: left 0.4s ease-in-out; 
}

.project-content-title {
    position: relative;
    bottom: 0;
    color: white;
    font-weight: 700;
    font-size: 20px;
    max-width: 220px;  
    transition: left 0.4s ease-in-out; 
}

.title-arrow {
    font-size: 24px;
    letter-spacing: -3px;
}

.project-content-text {
    padding-top: 8px;
/*    width: 240px;
*/  
    width: 90%;
    color: #fff;
    background: #ED4724;
}

.project-content-text p {
    margin-bottom: 10px;
}

.project-action-buttons {
    float: right;
    margin: 10px 8px 10px 0;
    height: 30px;
}


.project-content-visit-btn {
    height: 30px;
    background: #00A99D;
    color: #fff;
    line-height: 30px;
    text-align: center;
    float: left;
    padding: 0 6px;
    cursor: pointer;
    color: #E5D8D6;
    transition: all 0.2s ease-in;
    -webkit-backface-visibility: hidden;
    -webkit-transform:translate3d(0,0,0);
}

.project-content-visit-btn:hover, .project-content-dismiss:hover {
    color: #fff;
}

.project-content-dismiss {
    height: 30px;
    width: 31px;
    background: #00A99D;
    border-radius: 20px;
    margin-left: 10px;
    float: right;
    color: #E5D8D6;
    line-height: 30px;
    text-align: center;
    cursor: default;
    z-index: 200;
    transition: all 0.3s ease-in-out;  
    font-size: 20px;
    cursor: pointer;
}

.content-popup {
    width: 359px;
    height: 259px;
    background: url('../images/content_overlay.png');
    display: none;
    position: absolute;
    top: 0;
    left: 356px;
    z-index: 50;
}

.section-contents {
    width: 1140px;
    margin: 0 auto;
    padding: 30px 0 30px 40px;
}

.section-design {
/*    background: #73F49E;
*/
    background: #CAFCF2;
}

.section-works {
    background:#BFFECD;
}

.section-about {
/*    background: #FC5965;

*/
    background: #F6FEA9;
}

.about-content {
}

.about-content-text {
    width: 70%;
    text-align: left;
    font-size: 24px;
    line-height: 40px;
    display: inline-block;
}

.skills-container {
    width: 166px;
    height: 40px;
    overflow: hidden;
    display: inline-block;
    vertical-align: bottom;
}

ul.skills {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 1000px;
    height: 40px;
}

ul.skills li {
    display: inline-block;
    width: 166px;
    opacity: 0;
    -webkit-transition: all 0.4s ease-in;
    transition: all 0.4s ease-in;
}

ul.skills li.active-skill {
    opacity: 1;
}

ul.skills li.push-back {
    margin-left: -150px;
    opacity: 0;
}

.social-icons {
    width: 4%;
    float: right;
    display: inline-block;
    vertical-align: top;
    font-size: 25px;
    padding-right: 20px;
}

.social-circle {
    background: #333333;
    height: 36px;
    width: 40px;
    border-radius: 100%;
    margin-bottom: 30%;
    padding-top:4px;
    text-align: center;
    transition: all 0.2s ease-in-out;
    color: #E8E8E8;
    cursor: pointer;
}

.social-circle:hover {
   -webkit-transform:scale(1.18,1.18);
}

a.social-link {
    color: #E8E8E8;
}

.social-circle:hover a.social-link {
   color: #fff;
}

.contact-input, .contact-textarea {
    background: #22B573;
    border: none;
    color: #fff;
    font-size: 20px;
    line-height: 24px;
    padding-left: 8px;
    font-weight: 400;
}

::-webkit-input-placeholder {
   color: #fff;
}

.contact-input {
    height: 30px;
    width: 260px;
}

.contact-textarea {
    height:200px;
    width: 530px;
}

.magnified-img {
    position: fixed;
    top: 5%;
    left: 50%;
    margin-left: -400px;
    z-index: 1000;
    -webkit-transform: scale(0.7);
    -moz-transform: scale(0.7);
    -ms-transform: scale(0.7);
    transform: scale(0.7);
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.magnified-img img {
    box-shadow: 5px 5px 0px #AAAAAA; 
}

.magnified-img.modal-show {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}

.section.footer {
    padding: 20px 0;
    text-align: center
}

.footer-logo {
    width: 100px;
    height: 100px;
    background: url('../images/logo_small.svg') no-repeat;
    background-size: cover;
    margin: 0 auto;
    cursor: pointer;
}

.footer-text {
    font-size: 11px;
    padding-top: 5px;
}

@media only screen and (max-width : 480px) {
    header {
        padding: 10px 0 0 0;
    }

    #logo {
        float: none;
        margin: 0 auto;
    }

    .section-contents, .header-content {
        width: 90%;
        margin: 0 auto;
        padding-left: 0;
        padding-right: 0;
    }

    article, .article-margin {
        margin-right: 0;
        width: 100%;
    }

    .section-title, #logo {
        width: 100%;
    }

    .project-content-visit-btn.magnify, .project-preview {
        display: none;
    }

    .about-content-text {
        font-size: 1.2em;
        width: 95%;
    }

    .social-circle {
        margin: 0 0 0 0.4em;
    }

    .social-icons {
        float: none;
        height: 40px;
        margin-top: 25px;
        display:-webkit-box;
        -webkit-box-pack:center;
        -webkit-box-align:center;
        width: auto;
    }

    .project-img {
        width: 100%;
        height: auto;
        padding-top: 78.24%;
    }

    .project-content {
        width: 97.3%;
        -webkit-transition: 0;
    }

    .section-about {
        padding-bottom: 0;
    }

    .project-content-visit-btn, .project-content-dismiss {
        color: #fff;
    }

}


/* iPads (portrait and landscape) ----------- */
@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) {
    header {
        padding: 20px 0;
    }

    #logo {
        float: none;
        margin: 0 auto;
    }

    .section-contents, .header-content {
        width: 95%;
        margin: 0 auto;
        padding-left: 0;
        padding-right: 0;
    }

    article {
        width: 31%;
    }

    .section-title, #logo {
        width: 100%;
    }

    .project-content-visit-btn.magnify, .project-preview {
        display: none;
    }

    .project-img {
        width: 100%;
        height: auto;
        padding-top: 78.24%;
    }

    .project-content {
        width: 97.3%;
        -webkit-transition: 0;
    }

    .project-content-visit-btn, .project-content-dismiss {
        color: #fff;
    }
}


