html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    box-sizing: border-box;
}
.cke_editable ol {padding-left:initial!important;}
strong, b {
    font-weight: 700;
}
body {
    line-height: 1;
    font-family: Catamaran;
    line-height: 1.4em;
}
a {
	 -webkit-user-select: none;
     -moz-user-select: -moz-none;
      -ms-user-select: none;
          user-select: none;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

nav ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}
input, a {
    transition:all 300ms ease;
}
/*.content img,*/
/*#content img {*/
/*max-width: 100%;*/
/*}*/

blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    color: #ff512f;
    text-decoration: none;
}

a:hover {
    color: #e0316f;
}

/* change colours to suit your needs */
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}

/* change colours to suit your needs */
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}

input, select {
    vertical-align: middle;
}

.clear {
    clear: both;
}

.pageWidth {
    width: 1200px;
    max-width: 100%;
    position: relative;
    margin: 0 auto;
}
.content img {max-width:100%;}
#hamburger,
#mobilemenu {
    display: none;
}

h1.pageTitle {
    margin: 20px 0;
    font-size: 36px;
}

h1.pageTitle.colorline:after {
    margin-top: 20px;
}

.offer h3:after, h1.colorline:after {
    margin-top: 8px;
    display: block;
    content: '';
    background: url(grafika/h2-colorline.png);
    height: 4px;
    width: 39px;
}
.technologies-box h2 {
    font-size: 36px;
    font-weight: 900;
    text-transform: uppercase;
    color:#000;
}
.technologies-box {
    padding: 40px 0;
}

.technologies {
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
}

.technologies .titem {
    height:60px;
}

.technologies .titem img {
    vertical-align: middle;
}

.helper {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.page-offer {
    margin-top:80px;
    padding: 80px 0;
    background: #f9f9f9;
    border-top: 1px solid #ececec;
}

.page-offer .oitem {
    width: 50%;
    padding: 0 20px;
    float: left;
    height: 80px;
}

.page-offer .oitem .oimg img {
    vertical-align: middle;
}

.page-offer .oitem .otext {
    max-width: calc(100% - 110px);
}

.page-offer .oitem .oimg,
.page-offer .oitem .otext {
    display: inline-block;
    height: 100%;
}

.page-offer .oitem .otext a {
    color: #28282a;
    text-transform: uppercase;
    font-weight: 400;
    font-size: 22px;
    margin-top: 20px;
    display: block;
}

.page-offer .oitem .otext a:hover {
    color: #e0316f;
}

.page-offer .oitem .oimg {
    height: 80px;
}

.page-offer .oitem .oimg {
    width: 90px;
    text-align: center;
}

.page-offer .oitem:nth-of-type(even) .oimg {
    float: left;
    margin-right: 20px;
}

.page-offer .oitem:nth-of-type(even) {
    text-align: left;
}

.page-offer .oitem:nth-of-type(odd) {
    clear: both;
}

.page-offer .oitem:nth-of-type(odd) .oimg {
    float: right;
    margin-left: 20px;
}

.page-offer .oitem:nth-of-type(odd) {
    text-align: right;
}

.subpage-content {
    color: #6a6a6a;
    max-width: 970px;
    margin: 0 auto;
}
.cke ol, .subpage-content ol, .subpage-content ol {padding-left:15px;}
.cke ol li, .subpage-content ol li {padding-left:7px;}
.cke ul, .subpage-content ul {padding-left:30px;}
.cke ul li, .subpage-content ul li {
    list-style-image: url(/grafika/li-item.png);
    margin: 4px 0 3px 0;
    padding-left: 6px;
    font-size: 17px;
    line-height: 1.6em;
    font-weight: 300;
}
.contact-right h3.h3 strong,
.subpage-content h2, h2.h2 {
    color: #000;
    font-size: 34px;
    font-weight: 100;
    text-transform: none;
    margin: 5px 0 24px 0;
    line-height: 1.1em;
}

h2.h2plus {
    color: #28282a;
    margin: 20px 0;
    font-size: 36px;
    font-weight: 900;
    text-transform: uppercase
}

h2.h2plus:after {
    margin-top: 20px;
    display: block;
    content: '';
    background: url(grafika/h2-colorline.png);
    height: 4px;
    width: 39px;
}

.subpage-content h3, h3.h3 {
    color: #000;
    font-size: 20px;
    font-weight: 500;
    text-transform: uppercase;
    margin: 5px 0 15px 0;
    line-height: 1.2em;
}

.subpage-content h4, h4.h4 {
    color: #000;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    margin: 5px 0 15px 0;
}

.subpage-content p {
    color: #6a6a6a;
    font-size: 17px;
    line-height: 1.6em;
    font-weight: 300;
    margin-bottom: 15px;
}

blockquote {
    background: url(/grafika/quote-bg.png);
    background-repeat: no-repeat;
    top: 0;
    left: 0;
    padding-top: 25px;
    padding-left: 36px;
    margin: 20px 0;
    font-style: italic;
    min-height: 62px;
}

div.blockquote-podpis {
    background: url('/grafika/linka-podpis.png');
    background-repeat: no-repeat;
    padding-top: 35px;
}

.subpage-content table {
    border-collapse: separate;
}

.subpage-content table th,
.subpage-content table td {
    border: 3px solid #fff;
}

.subpage-content table {
    border-radius: 14px;
}

.subpage-content table thead th:first-of-type {
    border-radius: 14px 0 0 0;
    border-left: 0;
    border-top: 0;
}

.subpage-content table thead th:last-of-type {
    border-radius: 0 14px 0 0;
    border-top: 0;
    border-right: 0;
}

.subpage-content table tr td:first-of-type {

    border-left: 0;
}

.subpage-content table tr td:last-of-type {
    border-right: 0;
}

.subpage-content table th,
.subpage-content table thead tr {
    background: #28282a;
    color: #fff;
    font-size: 20px;
    font-weight: 300;
    padding: 15px 30px;
    text-transform: uppercase;
    text-align: left;
}

.subpage-content table td {
    padding: 15px 30px;
    background: #f9f9f9;
}

/* HEADER */
header {
    position:fixed;
    width: 100%;
    height: 75px;
    background: #28282a;
    z-index: 10000000000000000;
    top:0;
}

header > .pageWidth {
    position: initial;
}

header .logo {
    margin-top: 3px;
    margin-left: 15px;
}

#topmenu ul li a {
    text-transform: uppercase;
    color: #fff;
    text-decoration: none;
    font-weight: 500;
    transition: none;
}

#topmenu .sub-menu {
    display: none;
}

.sub-menu {
    position: absolute;
    overflow: hidden;
    z-index: 100000000000;
    width: 100%;
    left: 0;
    padding-top: 16px;

}

.sub-list, .submenu-bg {
    background: #28282a;
}

.sub-list {
    padding: 20px 50px;
}

.sub-list li {
    display: inline-block;
    width: 33%;
    padding: 2px;
}

.sub-list li a {
    border: 2px solid #28282a;
    padding: 10px 20px;
    display: inline-block;
    width: auto;
    margin: 0 auto;
    border-radius: 30px;
    color: #fff;
    padding-right: 40px;
    vertical-align: top;
}

#topmenu ul li.level1 > a:hover,
#topmenu ul li.level1 > a.active,
#topmenu ul li.level1 .sub-list li a.active{
    color: #989594;
}

.sub-list li a:hover {
    border: 2px solid #ff512f;
    color: #ff512f !important;
    background-image: url(grafika/li-item.png);
    background-repeat: no-repeat;
    background-position: right 16px center;

}

.hasChild {
}

#topmenu .level1 > .sub-menu.active {
    display: block;

}

#topmenu {
    margin-top: 20px;
}

.item-16, .item-89, .item-31, .item-8 ul {
    display: none !important;
}

/* HOME SLIDER */
.home-slider {
    height: 55.4vw;
    position: relative;
    margin-top:75px;
}

.background-slider,
.background-video {
    position: absolute !important;
    width: 100%;
}

.slider-text {
    padding-top: 50px;
}

.background-video {
    overflow: hidden;
}

.background-video {
    max-height: calc(100vh - 75px);
}

.background-video video {
    width: 100%;
    height: 100%;
}

/* YOUTUBE BACKGROUND */

.video-background {
    overflow: hidden;
    position: relative;
}

.video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
}

.video-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.animated-img {
    width: 1000px;
    height: 700px;
    max-height:100%;
    position: relative;
    margin: 0 auto;
    padding-left: 150px;
}

.animated-img .animate-text {
    display: inline-block;
    margin-top: 55px;
}

.animated-img .text-first-line {
    width: 100%;
    text-align: center;
    font-size: 81px;
    color: #fff;
    font-weight: 900;
    height: 90px;
    line-height: 1em;
}

.animated-img .text-second-line {
    width: 100%;
    text-align: center;
    font-size: 99px;
    color: #fff;
    font-weight: 900;
    line-height: 0.9em;
}

.animated-img .text-third-line {
    width: 100%;
    text-align: center;
    font-size: 136px;
    color: #28282a;
    font-weight: 900;
    line-height: 0.70em;
}

.animated-img .text-third-line small {
    font-size: 62px;
}

.animated-img .text-third-line span {
    font-size: 111px;
}
.footer2 a {
    color:#a8a8a8;
}
.footer2 a:hover,
.animated-img .competence-circle .competence-text a {
    color:#fff;
}

.animated-img .bg-circle {
    width: 550px;
    margin-left: 45px;
    top: 0;
    position: absolute;
    background: rgba(255, 255, 255, .2);
    opacity: 0.6;
    border-radius: 500px;
}

.animated-img .bg-circle:before {
    content: "";
    display: block;
    padding-top: 100%;
}

.animated-img .competence-circle {
    width: 44%;
    background: #28282a;
    border-radius: 200px;
    float: right;
    margin-top: -65px;
    box-sizing: border-box;
    position: relative;
}

.animated-img .competence-circle:before {
    content: "";
    display: block;
    padding-top: 100%;
}

.animated-img .competence-circle h2 {
    font-size: 35px;
    font-weight: 900;
    line-height: 38px;
    margin-bottom: 15px;
    color:#fff;
}

.animated-img .competence-circle span {
    line-height: 28px;
}

.animated-img .competence-circle .competence-text {
    color: #fff;
    position: absolute;
    top: 75px;
    bottom: 70px;
    left: 50px;
    right: 30px;

}

.home-slider .slider-text .owl-item .item img {
    width: initial;
    margin: 0 auto;
    max-width: 80vw;
    max-height: 50vw;
}

.lower-icon {
    background: url(grafika/lower.png);
    width: 78px;
    height: 41px;
    position: absolute;
    bottom: 20px;
    left: calc(50% - 39px);
    cursor: pointer;
    z-index: 1100000000;
}

/* FOOTER */
.bottom-image img {
    max-width: 100%;
    margin-top: 80px;
}
.bottom-contact.bottom-image img  {margin-top:0;
    display: block;}

.page-contact {
    margin: 20px 0 0 0;
    padding: 60px 0;
    overflow-x: hidden;
}

.page-11 .page-contact {
    margin: 20px 0 0 0;
    padding: 60px 0;
}

.page-contact .pc1,
.page-contact .pc2 {
    width: 50%;
    float: left;
}
.portfolio-button input:focus,
.portfolio-form select:focus,
.portfolio-form input:focus,
.page-contact form.cmxform li input:focus,
.page-contact form.cmxform li select:focus,
.page-contact form.cmxform li textarea:focus {
    border-radius: 33px;
    outline: none;
    border-color: #ffc7bf;
}

.page-contact form.cmxform ol li {
    list-style: none;
    margin: 0 0 15px 0px;
}



/*.page-contact form.cmxform li label:not(.submitlabel) {*/
/*display: none;*/
/*}*/
#module_form form.cmxform .flabel {text-align: left;
    margin-left:53px;margin-top:13px;}
form.cmxform li .flabel .req-marker {
    display:none;
}

#module_form form.cmxform .form-element {
    position: relative;
    border-radius: 33px;
    background: #fff;

}
#module_form form.cmxform .form-element .flabel {
    position:absolute;
    transition: all 300ms ease-out;
    width:auto;
    padding:0 3px;
}
#module_form form.cmxform .form-element.form-type-select .flabel {
    opacity:0;
}

#module_form form.cmxform li.form-element .flabel.focused {
    margin-top:-10px;
    font-size:13px;
    z-index: 200!important;
    background:#fff;
    opacity:1!important;
}
.portfolio-form select,
.page-contact form.cmxform li input[type="submit"],
.page-contact form.cmxform li input[type="text"],
.page-contact form.cmxform li input[type="email"],
.page-contact form.cmxform li select,
.page-contact form.cmxform li textarea {
    cursor: pointer;
    -webkit-appearance: button;
    -moz-appearance: button;
    color: #6a6a6a;
    font-size: 16px;
    font-family: Catamaran;
    padding: 11px 15px 11px 50px;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100% !important;
    color: #6a6a6a;
    background-color: #fff;
    border: 2px solid #efefef;
    -webkit-border-radius: 33px;
    -webkit-border-radius: 33px;
    -moz-border-radius: 33px;
    border-radius: 33px;
    box-sizing: border-box;
    background-repeat: no-repeat;
    background-color:transparent;
    z-index: 100;
    position: relative;
}



.page-contact form.cmxform li input[type="email"] {
    background-image: url('grafika/email-icon.png');
    background-position: left 17px center;

}
.portfolio-form select,
.page-contact form.cmxform li select {
    background: url('grafika/select-icon.png') left 17px center no-repeat, url('grafika/select-arrow.png') right 25px center no-repeat;

}

.page-contact form.cmxform li input[type="text"],
.page-contact form.cmxform li textarea {
    background-image: url('grafika/textarea-icon.png');
    background-position: left 17px top 14px;;
}


.page-contact form.cmxform li input[type="submit"] {
    color: #ff512f;
    border: 2px solid #ff512f;
    padding: 15px 30px 12px 30px;
    border-radius: 60px;
    text-decoration: none;
    text-transform: uppercase;
    display: inline-block;
    margin-top: 10px;
    font-size: 12px;
    font-weight: 600;
}

.page-contact form.cmxform li input[type="submit"]:hover {
    border-color: #e0316f;
    color: #e0316f;
}

.page-contact form.cmxform li:last-of-type {
    padding-top: 0 !important;
    clear: both;
}

.page-contact form.cmxform li:last-of-type:after {
    content: '';
    display: block;
    clear: both;
}
.page-contact form.cmxform .checkboxBox {
    vertical-align: middle;
}
.page-contact form.cmxform li input.checkbox {
    margin:0;
    visibility: hidden;
}
.page-contact form.cmxform li .checkbox-view {
    vertical-align: middle;
    display:inline-block;
    visibility: visible;
    content:'';
    height:40px;
    width:40px;
    background:#fff;
    border:2px solid #efefef;
    border-radius:32px;
    cursor:pointer;
}

.page-contact form.cmxform li .checkbox-view.active {
    background:url(grafika/accept.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size:20px;
}
.page-contact form.cmxform li.form-type-checkbox .flabel {
    position:relative!important;
    display: inline-block;
    margin-left:0!important;
}
.page-contact .submitlabel {
    float: right;
}

footer > div {
    width: 100%;
}

footer {
    color: #a8a8a8;
}

.footer1 {
    padding: 30px 0;
    background: #323233;
    height: 295px;
}

.footer1-inner > div {
    float: left;
    box-sizing: border-box;
}
.footer1-1 h2 {
    margin-top:0;
    margin-bottom:0px;
}
.footer1-1 {
    width: 35%;
    padding-right: 20px;
}

.footer1-2 {
    width: 30%;
    padding-top:85px;
}

.footer1-3 {
    width: 35%;
    padding-left: 20px;
    padding-top:83px;
}

.footer1-3 table td {
    padding-right: 15px;
}

.footer2 {
    background: #28282a;
    padding: 30px 0;
}

.footer2-inner {
    display: flex;
    justify-content: space-between;
}

.button-footer {
    color: #ff512f;
    border: 2px solid #ff512f;
    padding: 15px 30px 12px 30px;
    border-radius: 60px;
    text-decoration: none;
    display: inline-block;
    margin-top: 10px;
    font-size: 12px;

}

.button-footer:hover {
    border-color: #e0316f;
    color: #e0316f;
}

.footer3 {
    border-top: 1px solid #3b3b3d;
    background: #28282a;
    height: 70px;
    text-align: center;
    padding-top: 25px;
    font-size: 13px;
}

.footer3 .separator {
    padding: 0 40px;
    display: inline-block;
}

.footer3 a {
    color: #a8a8a8;
    text-decoration: none;
}

h1, h2, h3, h4 {
    color: #28282a;
}

h1 {
    font-size: 36px;
    font-weight: 900;
    text-transform: uppercase;
}

h2 {
    font-size: 29px;
    font-weight: 900;
    text-transform: uppercase;
}

h2 {
    font-size: 24px;
    font-weight: 900;
    text-transform: uppercase;
}

/* OSTATNIE REALIZACJE */

.last {
    margin-top: -60px;
    position: relative;
    z-index: 1000000000;
}

.last h2 {
    margin-bottom: 80px;
    color: #fff;
    font-size: 36px;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 30px;
}

.last-items > div {
    float: left;
}

.last-items .el1,
.last-items .el2 {
    width: calc(40% - 40px);
    /*height: 390px;*/
    margin-right: 40px;
    margin-bottom: 40px;
}

.last-items .el3 {
    width: 20%;
    height: 820px;
    float: right;
}

.last-items .el4 {
    width: calc(80% - 40px);
    height: 390px;
    margin-right: 30px;
}

.last-items .img-box {
    width: 100%;
    overflow: hidden;
    position: relative;
    border-radius: 15px;
    margin-bottom: 20px;
}

.last-items .excerpt {color:#000;}

.last-items .img-box img {

    height: 100%;
    min-height: 100%;
    width: 100%;
    position: absolute;
    top: -999px;
    bottom: -999px;
    left: -999px;
    right: -999px;
    margin: auto;
    object-fit: cover;
}

.last-items .el1 .img-box,
.last-items .el2 .img-box {
    height: 250px;
}

.last-items .el3 .img-box {
    height: 585px;
}

.last-items .el4 .img-box {
    height: 270px;
}

.last-items * {
    word-wrap: normal;
}

.last-items .date {
    text-transform: uppercase;
    margin-bottom: 5px;
    display:none;
}

.last-items h3 {
    text-transform: uppercase;
    margin-bottom: 5px;
    color: #000;
    font-size: 24px;
    font-weight:900;
}

.offer {
    background: #f9f9f9;
    margin-top: 0;
    margin-bottom:20px;
    padding: 60px 0;
    background: #f9f9f9;
    border-top: 1px solid #ececec;
    border-bottom: 1px solid #ececec;
}

.offer h2 {
    font-size: 36px;
    font-weight: 900;
    text-transform: uppercase;
    color:#000;
}

.offer article {
    margin-top: 30px;
}

.offer h3 {
    font-weight: 300;
    text-transform: none;
    font-size: 28px;
    margin-bottom: 25px;
    padding-bottom: 5px;
    color:#000;
}

.offer h3:after, h3.colorline:after {
    margin-top: 8px;
    display: block;
    content: '';
    background: url(grafika/h2-colorline.png);
    height: 4px;
    width: 39px;
}

.offer h3 a {
    color: #28282a;
    text-decoration: none;
}

.shead.home-slider {
    height: 230px;
    max-height:230px;
    min-height:230px;
    background: url(grafika/header-submenu.jpg);

}

.subpage-title > span,
.subpage-title h1 {
    font-size: 85px;
    color: #fff;
    text-align: center;
    margin-top: 0vw;
    line-height: initial;
    padding-top: 61px;
    line-height: 78px;
    display:block;
    font-weight: 900;
    text-transform: uppercase;
}

.subpage-title .podpis {
    font-size: 24px;
    color: #000;
    text-align: center;
    font-weight: 900;
    text-transform: uppercase
}

.breadcrumbs {
    font-size: 14px;
    margin-top: 10px;
}

h1.pageTitle {
    margin: 20px 0 40px;
    font-size: 36px;
    line-height:36px;
}

h1.pageTitle.colorline:after {
    margin-top: 20px;
}

.subpage-contnet {
    margin: 30px 0;
}

.portfolio-form {
    margin-bottom: 10px;
    width: 1030px;
}

#portfolio {
    width: 1200px;
    margin-left: -115px;
}

#portfolio .meta{
	min-height: 88px;
}

.portfolio-cat {
    padding: 0 15px 0 0;
}

.portfolio-cms {
    padding: 0 15px 0 15px;
}

.portfolio-button {
    padding: 0 0 0 15px;
    display:none!important;
}
.bottom-pager {display:none;}
.portfolio-before, .portfolio-cat, .portfolio-cms, .portfolio-button {
    float: left;
    height: 62px;
    display: inline-block;

}

.portfolio-before {
    text-align: right;
}

.portfolio-cat {
    text-align: right;
}

.portfolio-cms {
}

.portfolio-button {
}

.portfolio-cms span, .portfolio-cat span {
    margin-right: 20px;
}

.portfolio-cms *, .portfolio-cat * {
    display: inline-block;
    vertical-align: middle
}

.portfolio-before span {
    height: 30px;
}
.portfolio-form select {
    width:280px!important;
}
.xportfolio-form select {
    cursor: pointer;
    -webkit-appearance: button;
    -moz-appearance: button;
    -webkit-border-radius: 33px;
    -webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
    -webkit-padding-end: 20px;
    -webkit-padding-start: 2px;
    -webkit-user-select: none;
    /*background-image: url(http://i62.tinypic.com/15xvbd5.png);*/
    background-position: 97% center;
    background-repeat: no-repeat;
    border: 1px solid #AAA;
    color: #555;
    font-size: inherit;
    overflow: hidden;
    padding: 16px 15px;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 255px;
}

.xportfolio-form select {
    color: #6a6a6a;
    background-color: #fff;
    border: 2px solid #efefef;
    -webkit-border-radius: 33px;
    -moz-border-radius: 33px;
    border-radius: 33px;
    padding-left: 15px;
    box-shadow: 0 0 0 0;
}

.xportfolio-form select:focus {
    border-radius: 33px;
    outline: none;
    border-color: #ffc7bf;
}

.portfolio-button input {
    border: 2px solid #ff512f;
    color: #ff512f;
    background: #fff;
    padding: 16px 25px 12px;
    border-radius: 33px;
    font-size: 14px;
    text-transform: uppercase;
    font-family: Catamaran;
    cursor: pointer;
}

.portfolio-button input:hover {
    border-color: #e0316f;
    color: #e0316f;
}

.grid {
    max-width: 1200px;
    counter-reset: grid-item;
}

/* clearfix */
.grid:after {
    content: '';
    display: block;
    clear: both;
}

/* ---- grid-item ---- */

.grid-item {
    width: 270px;

    float: left;
    border-radius: 5px;
    padding: 12px 12px 45px;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
    margin: 25px 12px;

}

.grid-item * {
    z-index: 1000;
}
.grid-item:hover {z-index:10000000;}
.grid-item .desc,.grid-item .desc * {
    font-size: 14px!important;
    line-height: 1.3em!important;

}
.grid-item:hover .desc,.grid-item:hover .desc * {
    background:transparent!important;
    color:#fff!important;
    margin:0!important;
    padding:0!important;

}
.grid-item .nohover {display:block;}
.grid-item .onhover {display:none;}
.grid-item:hover .nohover {display:none;}
.grid-item:hover .onhover {display:block;}

.grid-item b {
    font-size: 18px;
}

.grid-item:before {
    border-radius: 6px;
    transition: all 400ms;
    opacity: 0;
    content: '';
    z-index: -1;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #ff512f; /* Old browsers */
    background: -moz-linear-gradient(-45deg, #ff512f 48%, #ff512f 48%, #dd2476 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(-45deg, #ff512f 48%, #ff512f 48%, #dd2476 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(135deg, #ff512f 48%, #ff512f 48%, #dd2476 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff512f', endColorstr='#dd2476', GradientType=1); /* IE6-9 fallback on horizontal gradient */
}

.grid-item:hover:before {
    opacity: 1;
}

.grid-item:hover * {
    color: #fff;
}

.grid-item img {
    width: 246px;
    display:block;
    opacity:.98;
}
.grid-item:hover img {
    opacity:1;
}
.grid-item a.referencje {
    background: url(/grafika/referencje_icon.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    height: 25px;
    padding-left: 29px;
    line-height: 25px;
    display: block;
    margin-top: 20px;
}

.grid-item:hover a.referencje {
    background-position: 0 -25px;
}
.portfolio-shadow {background:#000;}
.portfolio-shadow.portfolio-border {
    border: 1px solid #fff!important;
}
.pager.withMargin {
    text-align: center;
}
span.pages {margin-left:5px;}
.pager a {
    text-decoration: none;
    color: #6a6a6a;
    width: 32px;
    display: inline-block;
    border-radius: 67px;
    height: 32px;
    box-sizing: border-box;
    padding-top: 5px;
    margin:0 1px;
}
.pager .pages a {display:inline-block;}
.pager a.active {
    color:#fff;
    background: #ff512f;
    background: -moz-linear-gradient(-45deg, #ff512f 48%, #ff512f 48%, #dd2476 100%);
    background: -webkit-linear-gradient(-45deg, #ff512f 48%, #ff512f 48%, #dd2476 100%);
    background: linear-gradient(135deg, #ff512f 48%, #ff512f 48%, #dd2476 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff512f', endColorstr='#dd2476', GradientType=1);
}
.pager a:hover {
    background: #6a6a6a;
    color: #fff;
}

.pager {
    color: #6a6a6a;
    margin: 20px 0;
}

.news_container {
    border-bottom: 1px solid #eee;
    padding-top: 30px;
    display: block;
}

.news_container .show_date {
    display: none;
}
.news_container .img {
    float:left;
    width:100px;
}
.news_container .img img {
    max-width:100px;
}
.news_container .text.with-img {
    padding-left:120px;
}
.news_container .news_title, .news_container .title {
    text-transform: uppercase;
    font-weight: 900;
    color: #282828;
    font-size: 25px;
    margin-bottom: 10px;
    display: inline-block;
}

.news_container .news_title {
    max-width: 800px;
    display: inline-block;
}

.news_container .more.anymore {
    display: inline-block;
    width: 150px;
}

.news_container:hover .title {
    color: #f5473c;
}

.news_text {
    margin-top: 30px;
}
.news_list .news_flash {
    color: #6a6a6a;
    font-size: 17px;
    line-height: 1.6em;
    font-weight: 300;
}
.news_list .more {
    background: url(/grafika/arrow-red.png);
    width: 76px;
    height: 22px;
    display: block;
    margin: 20px 0;
    background-position: right;
    background-repeat: no-repeat;
    color:#ff512f;
    line-height:20px;
    font-weight:500;
}

.news_list .more b{
    font-size: 0;
}

.more.antymore {
    background: url('/grafika/arrow-red-rev.png');
    background-position: left 50%;
    background-repeat: no-repeat;
    height: 22px;
    padding-left: 31px;
}
.more.antymore.bottom {margin-top:20px;}


.referencesList .references-item {
    display:inline-block;
    margin:10px;
    background:#000;
    vertical-align: middle;
    border:1px solid #eaeaea;
}
.referencesList .references-item img{
    opacity:0.98;
    display:block;
}

.referencesList .references-item:nth-of-type(6n+6) {
    clear:both;
}

.contact-left,.contact-right {
    width:50%;
    float:left;
}
.contact-right h3.h3 {margin-bottom:30px!important;}
.contact-right {
    padding-top:115px!important;
    margin:0!important;
}

.page-11 .page-contact > * {
    width:100%;
    float:none;
}

.kontakt-table td{
    background:transparent!important;
    padding:0!important;
}
@media (min-height: 850px)  {
    .animated-img .animate-text {margin-top:90px;}
}
@media (min-height: 950px)  {
    .animated-img .animate-text {margin-top:140px;}
}
@media (min-height: 1100px)  {
    .animated-img .animate-text {margin-top:240px;}
}

@media (max-width: 1240px) and (min-height: 850px)  {
    .animated-img .animate-text {margin-top:150px;}
}
@media (max-width: 1240px) and (min-height: 950px)  {
    .animated-img .animate-text {margin-top:200px;}
}
@media (max-width: 1240px) and (min-height: 1100px)  {
    .animated-img .animate-text {margin-top:300px;}
}


@media (max-width: 1240px), (max-height: 750px)  {
    .animated-img .text-first-line {
        font-size: 61px;
        height:auto;
    }

    .animated-img .text-second-line {
        font-size: 79px;
    }

    .animated-img .text-third-line {
        font-size: 116px;
    }

    .animated-img .text-third-line small {
        font-size: 42px;
    }

    .animated-img .text-third-line span {
        font-size: 91px;
    }

    .animated-img {
        width: 850px;
        height: 555px;
    }
    .animated-img .competence-circle {
        width:46%;
    }
    .animated-img .competence-circle .competence-text {
        top: 68px;
        bottom: 65px;
        left: 40px;
        right: 20px;
    }
    .animated-img .competence-circle .competence-text a {
        color:#fff;
    }
    .animated-img .competence-circle .competence-text a:hover {
        color:#e0316f;
    }
    .animated-img .competence-circle .competence-text span {
        line-height:23px;
        font-size:14px;
    }
}

@media  (max-height: 640px)  {
    /*.home-slider, .background-video {min-height:520px;}*/
    .animated-img {
        zoom:0.9;
        -ms-zoom: 0.9;
        -webkit-zoom: 0.9;
        -moz-transform:  scale(0.9,0.9);
        -moz-transform-origin: center top;
    }
}
@media (max-width: 1240px) {


    .shead.home-slider {
        height: 180px;
        max-height:180px;
        min-height:180px;
        background: url(grafika/header-submenu.jpg);

    }

    .subpage-title > span,
    .subpage-title h1 {
        font-size: 65px;
        padding-top: 22px;
    }
    .portfolio-form,#portfolio {width:95%;margin:0 auto;}

    .pageWidth {
        width: 95%;
    }

    .footer1-3 table td {
        padding-right: 15px;
    }

    .footer1-1 {
        width: 32%;
    }

    .footer1-2 {
        width: 30%;
    }

    .footer1-3 {
        width: 38%;
    }


}

@media (max-width: 1100px) {
    .animated-img .animate-text {
        margin-top: 35px;
    }
}

@media (max-width: 1023px) {
    #navBarId .navBarClass{position:fixed !important;}
    .lower-icon {display:none;}
    .background-video, .home-slider {
        height: 490px !important;
    }
    .background-video video {
        height: 590px!important;
        width: auto!important;
    }
    .page-contact .pc1, .page-contact .pc2 {
        width:80%;margin-left:10%;float:none;margin-bottom:20px;
        text-align:center;
    }
    .animated-img {
        width: 530px;
        padding:0;
    }
    .animated-img .competence-circle, .animated-img .bg-circle {display:none;}
    #mobilemenu {
        display: block;
        visibility: hidden;
    }
    .background-video video {height:auto;}
    .background-video, .home-slider {height:360px!important;width:100%;}
    .animated-img * {opacity:1!important;    transform: translate(0)!important;}
    #hamburger {
        display: block;
        background: url(grafika/hamburger.png);
        background-size: cover;
        width: 40px;
        height: 40px;
        position: absolute;
        right: 20px;
        top: 20px;
        cursor: pointer;
    }

    #mobilemenu.mm-menu_opened {
        visibility: visible
    }

    .footer1-1 {
        width: 50%;
    }

    .footer1-2 {
        width: 50%;
    }

    .footer1-3 {
        width: 400px;
        margin-left: calc(50% - 200px);
        margin-top: 30px;padding-top:0;
    }

    .footer1-3 table {
        width: 100%;
    }

    .footer1 {
        height: auto;
    }

    .last-items .el1, .last-items .el2 {
        width: calc(37% - 20px);
        margin-right: 20px;
        margin-bottom: 20px;
        height: 440px;
    }

    .last-items .el3 {
        width: 26%;
    }

    .last-items .el4 {
        width: calc(74% - 20px);
        height: 390px;
        margin-right: 20px;
    }

    .offer article {
        padding-right: 15px;
    }

    .offer article .text {
        font-size: 14px;
    }

    .footer2-inner {
        display: block;
    }

    .footer2-inner > div {
        float: left;
        width: 33%;
    }

    .footer2-inner .footer2-4 {
        clear: both;
    }

    .last h1 {
        font-size: 28px;
    }

    .lower-icon {
        width: 50px;
        height: 26px;
        background-size: contain;
    }

    #topmenu ul {
        display: none;
    }

    .slider-text {
        padding-top: 30px;
    }

    .page-offer .oitem {
        height: auto;
    }
}

@media (max-width: 800px) {
	.contact-left {
		width:40%;
	}
	.contact-right {
		width:60%;
	}
    .last .last-items > div {
        width: calc(50% - 10px);
        height: auto;
    }

    .last .last-items > div:nth-of-type(even) {
        margin-right: 0;
    }

    .last .last-items > div:nth-of-type(odd) {
        clear: both
    }

    .last-items .el3 .img-box {
        height: 270px;
    }


    .last h1 {
        color: #282828;
        margin-bottom: 30px;
    }

    .slider-text {
        padding-top: 20px;
    }
    .bottom-image img {
        max-width: 150%;
        margin-top: 80px;
        margin-left: -25%;
    }
    .bottom-image {overflow: hidden}

}

@media (max-width: 700px) {
    .portfolio-cat, .portfolio-cms, .portfolio-button {
        height:auto;
        padding:0;
        float:none;
        margin-bottom:20px;
        width:100%;
        text-align:left;
    }
    .portfolio-cat > span:first-of-type {display:block; margin-bottom:20px;}
    .portfolio-cat > span {margin:0; text-align:left;}
    .portfolio-cat > span:nth-of-type(2), .portfolio-cms > span:first-of-type {display:inline-block;width:100%; margin:0;}
    .portfolio-button {display:block;float:none;margin-bottom: 50px;}
    .portfolio-button input {width:150px;margin: 0 auto;display: block;}
    .portfolio-cms select, .portfolio-cat select {width:calc(100% - 104px)!important;}
    .page-contact .pc1, .page-contact .pc2 {
        width:94%;margin-left:3%;float:none;margin-bottom:20px;
        text-align:center;
    }

    .page-offer .oitem {
        width: 400px;
        text-align: left !important;
        margin-left: calc(50% - 200px);
    }

    .page-offer .oitem .oimg {
        float: left !important;
        margin-left: 0 !important;
        margin-right: 20px !important;
    }
    subpage-title > span,
    .subpage-title h1 {
        font-size: 50px;
        color: #fff;
        text-align: center;
        margin-top: 0vw;
        line-height: initial;
        padding-top: 40px;
    }

    .offer article {
        width: 300px;
        margin-bottom: 30px;
        margin-left: calc(50% - 150px);
    }

    .technologies {
        display: block;
        text-align: center;
    }

    .technologies .titem {
        display: inline-block;
        margin: 0 15px;
    }
}

@media (max-width:667px) {
	.contact-left,.contact-right {
		width:100%;
		float:none;
		
	}
	.page-11 .contact-left #text * {text-align:center}
	.page-11 .contact-right {
		padding-top:15px!important;
	}
    [data-aos] {
        opacity:1!important;
        transform: translate(0)!important;
    }
    [data-aos-delay] {
        transition-delay: 0s !important;
    }
    .subpage-content img {float:none!important;margin:0 0 20px 0;display:block;}
    .kontakt-table td {
        width:100%; display:block; margin-bottom:20px; text-align: left;
    }
    .bottom-image img {
        max-width: 200%;
        margin-top: 80px;
        margin-left: -50%;
    }
    .bottom-image {overflow: hidden}
    .animated-img {
        zoom: 0.8;
        -ms-zoom: 0.8;
        -webkit-zoom: 0.8;
        -moz-transform: scale(0.8,0.8);
        -moz-transform-origin: center top;
    }

    .animated-img .text-first-line {}

}

@media (max-width: 480px) {
    .portfolio-cms select, .portfolio-cat select {
        width: 100%!important;
    }
    .last {
        margin-top: -80px;
    }
    .animated-img .animate-text {margin-top:50px;}
    .animated-img {
        zoom: 0.6;
        -ms-zoom: 0.6;
        -webkit-zoom: 0.6;
        -moz-transform: scale(0.6,0.6);
        -moz-transform-origin: left top;
        overflow:hidden;
    }
    .background-video, .home-slider {
        height: 280px !important;
    }
    .background-video video {
        height: 390px!important;
        width: auto!important;
    }
    .subpage-title > span,
    .subpage-title h1 {
        font-size: 40px;
        padding-top: 10px;
    }
    .subpage-title .podpis {
        font-size:20px;
    }
    .shead.home-slider {
        height: 160px;
        max-height: 160px;
        min-height: 160px;
    }
    .footer2-inner > div {
        width: 240px;
        margin-left: calc(50% - 120px);
        margin-bottom: 20px;
    }

    .footer1-1,
    .footer1-2,
    .footer1-3,
    .last .last-items > div {
        width: 100%;
        margin-bottom: 20px;
        padding:0;
        margin-left:0;
        margin-right:0;
    }
    .footer1-3 table td {
        display:block;width:100%;text-align:center;
        margin-bottom:15px;
    }

    .footer3-inner a {display:block;text-align:center}
    .footer3-inner .separator {display:none;}
    .footer3 {
        height:auto;
        padding-bottom:15px;
    }
    .page-offer .oitem {
        width: 100%;
        margin-left: 0;
    }
}

