html,
body { font-weight: 400; font-size: 16px; }
body { overflow-x: hidden; }
p { line-height: 26px; }
.p-section { padding: 60px 0 80px; }
.aqua-color { color: #0abcbf; }
.sl { text-decoration: underline; }
.sl:hover { opacity: .8; }
.btn { border-radius: 0; }
@media screen and (max-width: 524px) {
.cut-text {
    display: block;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    -webkit-text-overflow: ellipsis;
    width: 100px;
    white-space: nowrap;
    overflow: hidden;
}
}
.alert-primary { border-color: #eee; }
.alert-primary .close:hover { color: #ccc }

.greyscale {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
    filter: url(../img/grayscale.svg#greyscale);
    filter: gray;
}

/***************** NAWIGACJA *****************/
@media(min-width:768px) {
    .navbar-fixed-top {
        padding: 25px 0;
        -webkit-transition: padding .3s;
        -moz-transition: padding .3s;
        transition: padding .3s;
    }
    .navbar-fixed-top.navbar-shrink { padding: 10px 0; }
    .navbar .navbar-nav { display: inline-block; float: none; vertical-align: top; }
    .navbar .navbar-collapse { text-align: center; }
    .navbar-default { background: none; }
    .navbar-default.navbar-shrink { background-color: #2c3e50; }
    .navbar-fixed-top .navbar-brand { display: none; }
    .navbar-default .navbar-nav > .active > a,
    .navbar-default .navbar-nav > .active > a:hover,
    .navbar-default .navbar-nav > .active > a:focus {
        background: rgba(26,36,47,.2);
    }
    .navbar-default.navbar-shrink .navbar-nav > .active > a,
    .navbar-default.navbar-shrink .navbar-nav > .active > a:hover,
    .navbar-default.navbar-shrink .navbar-nav > .active > a:focus {
        background: rgba(26,36,47,1);
    }
    .navbar .collapse {
        border-bottom: 1px solid rgba(255,255,255, .2);
        padding-bottom: 20px;
    }
    .navbar.navbar-shrink .collapse {
        border-bottom: none;
        padding-bottom: 0;
    }
    .navbar.navbar-shrink .navbar-nav > li > a {
        padding-bottom: 10px;
        padding-top: 10px;
    }
    .navbar * {
        -webkit-transition: all 200ms ease;
        -moz-transition: all 200ms ease;
        -ms-transition: all 200ms ease;
        -o-transition: all 200ms ease;
        transition: all 200ms ease;
    }
}

.navbar { text-transform: uppercase; font-size: 15px; font-weight: 300; }
.navbar a:focus,
.navbar .navbar-nav li a:focus { outline: 0; }
.navbar .navbar-nav li a:focus { color: #fff; }
.navbar-fixed-top .navbar-brand { font-size: 14px; }
.navbar-fixed-top .navbar-brand img {
    width: 40px;
    margin: -10px 10px 0 0;
    display: inline-block;
}

/***************** HEADER *****************/
#Header {
    background: #003b40 url(../img/header-bg.jpg) no-repeat center top;
    background-size: cover;
    margin: 0 0 100px;
}
#Header .header-gradient { 
    background: -moz-linear-gradient(-45deg,  rgba(0,68,74,0.9) 0%, rgba(10,188,191,0.9) 100%);
    background: -webkit-linear-gradient(-45deg,  rgba(0,68,74,0.9) 0%,rgba(10,188,191,0.9) 100%);
    background: linear-gradient(135deg,  rgba(0,68,74,0.9) 0%,rgba(10,188,191,0.9) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e600444a', endColorstr='#e60abcbf',GradientType=1 );
}
.header-box { margin: 180px 0 0; color: #fff; }
.text-name {
    line-height: 52px;
    font-size: 60px;
    font-weight: 700;
    text-shadow: 2px 2px 0px rgba(0,0,0,.3);
    padding: 20px 0 0;
    color: #fff;
    text-transform: capitalize;
    font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.text-spec {
    font-size: 24px;
    font-weight: 300;
    padding: 0 0 20px;
    color: #fff;
    text-transform: capitalize;
    font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.img-profile {
    width: 250px;
    margin: 0 0 -80px;
    border: 10px solid rgba(0,0,0,.1);
}
@media(max-width:767px) {
    #Header {
        margin: 0 0 50px;
    }
    .header-box { margin: 100px 0 0; }
    .text-name {
        font-size: 40px;
    }
    .text-spec {
        font-size: 18px;
    }
    .img-profile {
        width: 180px;
        border-width: 8px;
    }
}

/***************** AboutMe *****************/
#AboutMe {}
.img-about {
    width: 100px;
    border: 4px solid rgba(0,0,0, .1);
}
ul.about-list {
    margin-top: 10px;
    display:inline-block;
}
ul.about-list li {
    width: 100%;
    float: left;
}
@media(max-width:767px) {
    ul.about-list li {
        width: 100%;
    } 
}
ul.list-check {
    list-style: none;
    list-style-type: none;
}
ul.list-check li {
    position: relative;
    font-size: 18px;
    line-height: 32px;
    padding-left: 30px;
}
ul.list-check li:before {
    content: "\f00c";
    font-family: fontawesome;
    color: #0abcbf;
    position: absolute;
    top: 0;
    left: 0;
}

/***************** MySkills *****************/
#MySkills {
    background: #003b40 url(../img/skills-bg.jpg) no-repeat center top;
    background-size: cover;
    color: #fff;
}
#MySkills .skills-gradient { 
    background: -moz-linear-gradient(-45deg,  rgba(44,62,80,0.9) 0%, rgba(32,55,79,0.9) 100%);
    background: -webkit-linear-gradient(-45deg,  rgba(44,62,80,0.9) 0%,rgba(32,55,79,0.9) 100%);
    background: linear-gradient(135deg,  rgba(44,62,80,0.9) 0%,rgba(32,55,79,0.9) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e62c3e50', endColorstr='#e620374f',GradientType=1 );
}
#MySkills h2 { color: #fff; }
#MySkills .skill-box {
    border: 4px solid #0abcbf;
    padding: 15px;
    position: relative;
    display: inline-block;
    width: 130px;
    height: 130px;
    margin: 0 auto;
    margin-top: 35px;
    text-align: center;
}
#MySkills .skill-text span {
    font-size: 14px;
    font-weight: 400;
    text-transform: capitalize;
    display: block;
    margin-top: 5px;
}
@media(max-width:480px) {
    #MySkills .skill-box {
        width: 100px;
        height: 100px;
    }
}

/***************** CV *****************/
.resume-title h2 { text-align: center; }
.resume-section > div > div { margin-bottom: 60px; }
.resume-section > div > div:nth-of-type(2) { margin-bottom: 0; }
.resume-title { margin-bottom: 30px; }
.timeline { position: relative; padding: 0; list-style: none; }
.resume { position: relative; }
.timeline:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 2px;
    margin-left: -1.5px;
    background-color: #e1e1e1;
}
.timeline>li { position: relative; margin-bottom: 50px; min-height: 50px; }
.timeline>li:before,
.timeline>li:after { content: " "; display: table; }
.timeline>li:after { clear: both; }
.timeline>li .timeline-panel { float: left; position: relative; width: 100%; }
.timeline-content { padding:5px 20px 0 20px; }
.timeline>li .timeline-panel:before {
    right: auto;
    left: -15px;
    border-right-width: 15px;
    border-left-width: 0;
}
.timeline>li .timeline-panel:after {
    right: auto;
    left: -14px;
    border-right-width: 14px;
    border-left-width: 0;
}
.timeline>li .posted-date {
    position: relative;
    text-align: center;
    background-color: #fff;
    left: 20px;
}
.timeline>li .posted-date .month {
    font-size: 18px;
    line-height: 20px;
    font-weight: 700;
    display: block;
    color: #2c3e50;
    top: 0;
    float: left;
}
.timeline>li.timeline-inverted>.timeline-panel {
    float: right;
    text-align: left;
}
.timeline>li.timeline-inverted>.timeline-panel:before {
    right: auto;
    left: -15px;
    border-right-width: 15px;
    border-left-width: 0;
}
.timeline>li.timeline-inverted>.timeline-panel:after {
    right: auto;
    left: -14px;
    border-right-width: 14px;
    border-left-width: 0;
}
.timeline>li:last-child { margin-bottom: 0; }
.timeline-heading h3 { font-size: 20px; line-height: 28px; }
.timeline-heading span{
    display: block;
    font-weight: 700;
    margin-bottom: 20px;
}
@media(min-width:992px) {
    .timeline:before { left: 50%; }
    .timeline>li { margin-bottom: 15px; min-height: 100px;}
    .timeline>li .posted-date {
        position: absolute;
        text-align: center;
        background-color: #fff;
    }
    .timeline>li .timeline-panel {
        float: left;
        width: 43%;
        text-align: right;
        border: 1px solid #eee;
        position: relative;
    }
    .timeline-content{
        position: relative;
        padding: 24px;
        background-color: #fff;
        -webkit-transition:all 400ms;
        -moz-transition:all 400ms;
        -o-transition:all 400ms;
        transition: all 400ms;
    }
    .timeline>li .timeline-content:hover { background: #2c3e50; color: #fff; }
    .timeline>li .timeline-content:hover h3 { color: #fff; }
    .timeline>li .timeline-panel::before,
    .timeline>li.timeline-inverted .timeline-panel::before {
        content: "";
        top: 25px;
        position: absolute;
        border-top: 10px solid transparent;
        border-bottom: 10px solid transparent;
    }
    .timeline>li .timeline-panel::before {
        left: 100%;
        border-left: 12px solid #ECECEC;
        -webkit-transition:all 400ms;
        -moz-transition:all 400ms;
        -o-transition:all 400ms;
        transition: all 400ms;
    }
    .timeline>li .timeline-panel:hover::before {
        border-left: 12px solid #2c3e50;
    }
    .timeline>li.timeline-inverted .timeline-panel::before {
        right: 100%;
        border-right: 12px solid #ECECEC;
        -webkit-transition:all 400ms;
        -moz-transition:all 400ms;
        -o-transition:all 400ms;
        transition: all 400ms;
    }
    .timeline>li.timeline-inverted .timeline-panel:hover::before {
        border-right: 12px solid #2c3e50;
        border-left: 0;
    }
    .timeline>li .timeline-panel::after,
    .timeline>li.timeline-inverted .timeline-panel::after {
        content: "";
        top: 25px;
        position: absolute;
        border-top: 10px solid transparent;
        border-bottom: 10px solid transparent;
    }
    .timeline>li .timeline-panel::after {
        left: 100%;
        margin-left: -2px;
        border-left: 12px solid #FFFFFF;
        -webkit-transition:all 400ms;
        -moz-transition:all 400ms;
        -o-transition:all 400ms;
        transition: all 400ms;
    }
    .timeline>li .timeline-panel:hover::after {
        border-left: 12px solid #2c3e50;
    }
    .timeline>li.timeline-inverted .timeline-panel::after {
        right: 100%;
        margin-right:-2px;
        border-right: 12px solid #fff;
        -webkit-transition:all 400ms;
        -moz-transition:all 400ms;
        -o-transition:all 400ms;
        transition: all 400ms;
    }
    .timeline>li.timeline-inverted .timeline-panel:hover::after {
        border-right: 12px solid #2c3e50;
        border-left: 0;
    }
    .timeline>li .posted-date {
        left: 50%;
        width: 120px;
        margin-left: -60px;
        margin-top: 28px;
    }
    .timeline>li .posted-date .month {
        float: none;
    }
}

/***************** Training *****************/
#Training {
    background: url(../img/training-bg.jpg) no-repeat center center;
    background-size: cover;
}

/***************** Portfolio *****************/
.portfolio-section {
    position: relative;
}
.portfolio-section:before {
    content: "";
    width: 50%;
    background: #F9F9F9;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
}
.project-description {
    font-size: 16px;
    padding: 80px 0 20px 40px;
}
.project-description .list-check li {
    font-size: 16px; 
}
.project-description .project-title,
.project-description .project-heading {
    line-height: 1.1;
    color: #2c3e50;
    text-transform: uppercase;
    font-weight: 300;
    font-family: 'Oswald', sans-serif;
}
.project-description .project-title {
    font-size: 36px;
    margin-bottom: 50px;
}
.project-description .project-link {
    font-size: 16px;
    font-weight: 400;
    font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
    text-transform: none;
    margin-top: 5px;
}
.project-description .project-heading {
    font-size: 24px;
    margin: 35px 0 15px;
}
.project-description .project-technics {}
.project-description .project-technics .pt-item {
    width: 50px;
    height: 50px;
    background: #0abcbf;
    border-radius: 100%;
    padding: 5px;
    margin-bottom: 10px;
}
.project-description .project-technics .pt-item img {
    width: 100%;
    height: auto;
}
.project-description .project-from {}
.project-description .project-from .roxart-logo,
.project-description .project-from .idea4web-logo {
    max-width: 80px;
    height: auto;
    margin-left: 10px;
}
.project-description .project-from .idea4web-logo {
    max-width: 120px;
    margin-top: -8px;
}
.project-description .project-from .roxart-logo:not(:hover),
.project-description .project-from .idea4web-logo:not(:hover) {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
    filter: url(../img/grayscale.svg#greyscale);
    filter: gray;
}

@media (max-width: 1199px) {
    .project-description {
        padding: 40px 0 20px 40px;
    }
}
@media (max-width: 991px) {
    .project-description {
        font-size: 14px;
        padding: 20px 0 20px 40px;
    }
    .project-description .list-check li {
        font-size: 14px; 
    }
    .project-description .project-title {
        font-size: 26px;
        margin-bottom: 20px;
    }
    .project-description .project-heading {
        font-size: 18px;
        margin: 15px 0;
    }
}
@media (max-width: 767px) {
    .portfolio-section:before {
        display: none;
    }
    .project-description {
        padding: 20px 0;
    }
    .project-description .project-title {
        font-size: 18px;
        text-align: center
    }
    .project-description *:not(.project-title) { display: none; }
}

#portfolio-carousel {
    padding-bottom: 80px;
}
.portfolio-section .container-fluid { position: relative; }
.portfolio-section .carousel-control {
    background-color: transparent;
    bottom: 0;
    color: #0abcbf;
    font-size: 70px;
    left: auto;
    right: auto;
    opacity: 1;
    position: absolute;
    text-align: center;
    text-shadow: none;
    top: auto;
    width: 70px;
    height: 70px;
    line-height: 50px;
    overflow: hidden;
}
.portfolio-section .carousel-control.right,
.portfolio-section .carousel-control.left {
    background-image: none;
}
.portfolio-section .carousel-control.left {
    left: 50%;
    transform: translateX(-100%);
}
.portfolio-section .carousel-control.right {
    right: 50%;
    transform: translateX(100%);
}
.portfolio-section .p-i {
    -webkit-animation-delay: .1s;
    animation-delay: .1s;
}
.portfolio-section .p-d {
    -webkit-animation-delay: .4s;
    animation-delay: .4s;
}

.carousel-fade .carousel-inner .item {
    -webkit-transition-property: opacity;
    transition-property: opacity;
}
.carousel-fade .carousel-inner .item,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
    opacity: 0;
}
.carousel-fade .carousel-inner .active,
.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right {
    opacity: 1;
}
.carousel-fade .carousel-inner .next,
.carousel-fade .carousel-inner .prev,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
    left: 0;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.carousel-fade .carousel-control {
    z-index: 2;
}

/***************** Footer *****************/
#Footer {
    background: url(../img/footer-bg.jpg) no-repeat bottom center;
    background-size: cover;
    color: #fff;
}
.footer-gradient {
    background: rgba(44, 62, 80, .9);
}
#Footer hr {
    opacity: .15;
}
#Footer h2 { color: #fff; }