/*  ====  WARNING: NEVER EDIT THIS FILE!  ====  */
/* This file is minified & concatenated for optimum performance, so edit the original source files in /src instead! */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

main {
    display: block
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b, strong {
    font-weight: 700
}

code, kbd, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

button, input, optgroup, select, textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button, input {
    overflow: visible
}

button, select {
    text-transform: none
}

[type=button], [type=reset], [type=submit], button {
    appearance: button
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=checkbox], [type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details {
    display: block
}

summary {
    display: list-item
}

template {
    display: none
}

[hidden] {
    display: none
}

body {
    max-width: 155rem;
    margin: 0 auto;
    background: #b9b8be
}

#page {
    background: #fff
}

.container {
    max-width: 1212px;
    margin-right: auto;
    margin-left: auto;
    padding-left: 25px;
    padding-right: 25px
}

.container:after {
    clear: both
}

.page-template-template-content article {
    max-width: 50.625rem;
    margin: 2rem auto 4rem
}

.row {
    margin-left: -25px;
    margin-right: -25px
}

.row:after, .row:before {
    display: table;
    content: ' '
}

.row:after {
    clear: both
}

.panel-row-style.pp-row-space-above {
    padding-top: 4rem
}

.panel-row-style.pp-row-space-below {
    padding-bottom: 4rem
}

@media only screen and (min-width:768px) {
    .panel-row-style.pp-row-space-above {
        padding-top: 5rem
    }

    .panel-row-style.pp-row-space-below {
        padding-bottom: 5rem
    }
}

.hidden-all {
    display: none !important
}

@media only screen and (max-width:767px) {
    .hidden-xs {
        display: none !important
    }
}

@media only screen and (min-width:768px) and (max-width:991px) {
    .hidden-sm {
        display: none !important
    }
}

@media only screen and (min-width:992px) and (max-width:1159px) {
    .hidden-lg {
        display: none !important
    }
}

@media only screen and (min-width:1160px) {
    .hidden-xl {
        display: none !important
    }
}

@font-face {
    font-family: PPLit;
    src: url(../fonts/PP-lit.eot);
    src: url(../fonts/PP-lit.eot?#iefix) format("embedded-opentype"), url(../fonts/PP-lit.ttf) format("truetype"), url(../fonts/PP-lit.svg) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Flama;
    src: url(../fonts/Flama-Light.eot);
    src: url(../fonts/Flama-Light.eot?#iefix) format("embedded-opentype"), url(../fonts/Flama-Light.woff) format("woff"), url(../fonts/Flama-Light.ttf) format("truetype"), url(../fonts/Flama-Light.svg#FlamaLight) format("svg");
    font-weight: 300;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Flama;
    src: url(../fonts/Flama-Medium.eot);
    src: url(../fonts/Flama-Medium.eot?#iefix) format("embedded-opentype"), url(../fonts/Flama-Medium.woff) format("woff"), url(../fonts/Flama-Medium.ttf) format("truetype"), url(../fonts/Flama-Medium.svg#FlamaMedium) format("svg");
    font-weight: 600;
    font-style: normal;
    font-display: swap
}
@font-face {
    font-family: Flama;
    src: url(../fonts/Flama-Basic2.woff) format("woff"), url(../fonts/Flama-Basic2.woff2) format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: block
}

@font-face {
    font-family: pp-ui;
    src: url(../fonts/pp-ui.ttf?30lam6) format("truetype"), url(../fonts/pp-ui.woff?30lam6) format("woff"), url(../fonts/pp-ui.svg?30lam6#pp-ui) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: block
}

[class*=" icon-pp-"], [class^=icon-pp-] {
    font-family: pp-ui !important;
    speak-as: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.test {
    font-family: pp-ui !important;
    speak-as: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: ""
}

.icon-pp-doublebars:before {
    content: ""
}

.icon-pp-facebook:before {
    content: ""
}

.icon-pp-chevron-up:before {
    content: ""
}

.icon-pp-instagram:before {
    content: ""
}

.icon-pp-pinterest:before {
    content: ""
}

body {
    font-family: Flama, Helvetica, Arial, sans-serif;
    font-weight: 300;
    font-size: 1.125rem;
    line-height: 1.333;
    color: #000
}

@media only screen and (min-width:768px) {
    body {
        font-size: 1.375rem;
        line-height: 1.25
    }
}

@media only screen and (min-width:1160px) {
    body {
        line-height: 1.5
    }
}

.title-h1 {
    margin: -2rem auto 1.875rem;
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.41;
    text-transform: uppercase
}

@media only screen and (min-width:768px) {
    .title-h1 {
        line-height: 1
    }
}

@media only screen and (min-width:1160px) {
    .title-h1 {
        font-size: 1.875rem;
        line-height: 1.5
    }
}

.title-h1:before {
    display: block;
    margin: 1.25rem 0 1.375rem;
    text-align: center;
    font-family: pp-ui !important;
    speak-as: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: ""
}

.styled-subtitle {
    margin: -1.8rem 0 1.5rem;
    font-weight: 300;
    font-size: 1.5rem;
    line-height: 1.41;
    text-transform: uppercase
}

@media only screen and (min-width:768px) {
    .styled-subtitle {
        line-height: 1
    }
}

@media only screen and (min-width:1160px) {
    .styled-subtitle {
        font-size: 1.875rem;
        line-height: 1.5
    }
}

.title-h2 {
    margin: 0 auto;
    font-weight: 600;
    font-size: 1.125rem;
    line-height: 1.333;
    text-transform: uppercase;
    letter-spacing: .0625rem
}

@media only screen and (min-width:768px) {
    .title-h2 {
        font-size: 1.25rem;
        line-height: 1.25
    }
}

@media only screen and (min-width:1160px) {
    .title-h2 {
        font-size: 1.375rem;
        line-height: 1.5
    }
}

.page-portfolio .title-h2 {
    text-transform: none
}

.title-h3 {
    margin: 0 auto .875rem;
    font-weight: 600;
    font-size: 1.125rem;
    line-height: 1.333;
    text-transform: uppercase;
    letter-spacing: .0625rem
}

@media only screen and (min-width:768px) {
    .title-h3 {
        font-size: 1.5rem;
        line-height: 1.4
    }
}

.title-h6 {
    font-size: 1rem;
    line-height: 1.35
}

@media only screen and (min-width:1160px) {
    .title-h6 {
        line-height: 1.55
    }
}

h1, h2, h3, h4, h5, h6, p {
    margin: 0 auto .625rem auto;
    max-width: 50.625rem;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    font-size: 1.125rem;
    font-weight: 300
}

h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child, p:last-child {
    margin-bottom: 0
}

@media only screen and (min-width:768px) {
    h1, h2, h3, h4, h5, h6, p {
        font-size: 1.375rem
    }
}

@media only screen and (min-width:1160px) {
    h1, h2, h3, h4, h5, h6, p {
        margin-bottom: 1rem
    }
}

.page-template-template-content h1, .page-template-template-content h2, .page-template-template-content h3, .page-template-template-content h4, .page-template-template-content h5, .page-template-template-content h6, .page-template-template-content p {
    font-size: 1.125rem;
    line-height: 1.4
}

@media only screen and (min-width:1160px) {
    .page-template-template-content h1, .page-template-template-content h2, .page-template-template-content h3, .page-template-template-content h4, .page-template-template-content h5, .page-template-template-content h6, .page-template-template-content p {
        font-size: 1rem
    }
}

.flmed {
    font-weight: 600
}

a {
    text-decoration: none;
    color: #00689c;
    -webkit-transition: color .3s;
    transition: color .3s
}

a:hover {
    color: #308fc1
}

.textwidget>ul {
    max-width: 50.625rem;
    margin: 0 auto 1rem;
    padding-left: 1.3rem;
    box-sizing: border-box
}

.textwidget>ul li {
    list-style-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowOTQ4MTU1Mi01OTQ5LTRjYjItOGI0My1jOGRlMDRlZGQ0YTAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OTBENTgzRkE0NzNEMTFFOTk1RDhBRjlENUFGMjgwREUiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OTBENTgzRjk0NzNEMTFFOTk1RDhBRjlENUFGMjgwREUiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowOTQ4MTU1Mi01OTQ5LTRjYjItOGI0My1jOGRlMDRlZGQ0YTAiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDk0ODE1NTItNTk0OS00Y2IyLThiNDMtYzhkZTA0ZWRkNGEwIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+kwfthgAAAC1JREFUeNpi/P//PwMxgImBSEC0QhZkDjMzM4o7/v79y0g7q4lWyDhwwQMQYABTRAoPY8shOwAAAABJRU5ErkJggg==);
    padding-bottom: .9375rem;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto
}

.single-pp_portfolio_item h2 {
  font-weight: 500;
  margin: 0 auto 0 auto;
}

.pp-row-shaded {
    background: #ebecee
}

.pp-row-dark {
    background: #000;
    color: #fff
}

.site-header {
    position: fixed;
    left: 0;
    right: 0;
    z-index: 1000;
    background: rgba(255, 255, 255, .8);
    box-sizing: border-box;
    max-width: 155rem;
    margin: 0 auto;
    padding: 0 1.3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: -webkit-transform .5s;
    transition: -webkit-transform .5s;
    transition: transform .5s;
    transition: transform .5s, -webkit-transform .5s
}

@media only screen and (max-width:767px) {
    .site-header.site-header--hidden:not(.site-header--mobilenavigation) {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%)
    }

    body.admin-bar .site-header.site-header--hidden:not(.site-header--mobilenavigation) {
        -webkit-transform: translateY(-200%);
        transform: translateY(-200%)
    }
}

@media only screen and (min-width:768px) {
    .site-header {
        padding: 0 2.3125rem
    }
}

.site-logo {
    display: block;
    width: 6.0625rem;
    padding: .9375rem 0;
    -webkit-transition: width .5s;
    transition: width .5s
}

@media only screen and (min-width:768px) {
    .site-logo {
        width: 7.875rem;
        padding: 0
    }

    .site-header--scrolled .site-logo {
        width: 6.0625rem
    }
}

.nav-menu {
    list-style: none;
    padding: 0;
    margin: 0
}

@media only screen and (min-width:768px) {
    .nav-menu {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin-right: -1.25rem
    }
}

.nav-menu a {
    display: block;
    margin-bottom: 1px;
    padding: .8125rem 3.75rem .9375rem 1.875rem;
    background: #fff;
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.25;
    color: #000;
    text-transform: uppercase
}

.nav-menu a:active, .nav-menu a:focus, .nav-menu a:hover {
    color: #308fc1;
    outline: 0;
    border: 0
}

@media only screen and (min-width:768px) {
    .nav-menu a {
        margin: 0;
        padding: 2.1875rem 1rem;
        background: 0 0;
        font-size: .9375rem;
        line-height: 1.6;
        -webkit-transition: padding .5s;
        transition: padding .5s
    }

    .site-header--scrolled .nav-menu a {
        padding-top: 1.125rem;
        padding-bottom: 1.125rem
    }
}

@media only screen and (min-width:992px) {
    .nav-menu a {
        padding-left: 1.25rem;
        padding-right: 1.25rem
    }
}

.navigation-mobile-wrapper {
    position: absolute;
    left: 0;
    top: 0;
    width: 21.875rem;
    max-width: 100vw;
    height: 100vh;
    padding-top: 5.875rem;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
    background: #ebecee
}

.site-header--mobilenavigation .navigation-mobile-wrapper {
    -webkit-transform: none;
    transform: none
}

@media only screen and (min-width:768px) {
    .navigation-mobile-wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: static;
        width: auto;
        height: auto;
        padding: 0;
        overflow: visible;
        -webkit-transform: none;
        transform: none;
        background: 0 0
    }
}

.navigation-mobile-wrapper .social-links {
    position: absolute;
    top: 1.75rem;
    right: 4.375rem;
    left: 1.625rem
}

.navigation-mobile-wrapper .social-link-item {
    color: #ebecee
}

.wpml-ls-legacy-list-horizontal {
    background: #fff;
    padding: 3rem 0 0;
    border: 0
}

@media only screen and (min-width:768px) {
    .wpml-ls-legacy-list-horizontal {
        background: 0 0;
        margin: 0 -1.25rem 0 2rem;
        padding: 0
    }
}

@media only screen and (min-width:992px) {
    .wpml-ls-legacy-list-horizontal {
        margin: 0 -1.25rem 0 3rem
    }
}

.wpml-ls-legacy-list-horizontal>ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: .8125rem 3.75rem .9375rem 1.875rem;
    border-top: 1px solid #ebecee
}

@media only screen and (min-width:768px) {
    .wpml-ls-legacy-list-horizontal>ul {
        padding: 2.1875rem 1.25rem;
        -webkit-transition: padding .5s;
        transition: padding .5s
    }

    .site-header--scrolled .wpml-ls-legacy-list-horizontal>ul {
        padding-top: 1.125rem;
        padding-bottom: 1.125rem
    }
}

.wpml-ls-legacy-list-horizontal .wpml-ls-item:not(:first-child):before {
    content: '/';
    float: left;
    position: relative;
    top: 1px;
    font-size: 1rem
}

@media only screen and (min-width:768px) {
    .wpml-ls-legacy-list-horizontal .wpml-ls-item:not(:first-child):before {
        top: -1px
    }
}

.wpml-ls-legacy-list-horizontal a {
    float: left;
    padding: 0;
    font-size: 1rem;
    line-height: 1.25;
    color: #000;
    text-transform: uppercase
}

@media only screen and (min-width:768px) {
    .wpml-ls-legacy-list-horizontal a {
        font-size: .9375rem
    }
}

.wpml-ls-legacy-list-horizontal a:active, .wpml-ls-legacy-list-horizontal a:focus, .wpml-ls-legacy-list-horizontal a:hover {
    color: #308fc1;
    outline: 0;
    border: 0
}

.wpml-ls-legacy-list-horizontal .wpml-ls-current-language a {
    font-weight: 600
}

.menu-toggle {
    border: none;
    outline: 0;
    background: 0 0;
    width: 2.25rem;
    height: 1.875rem;
    cursor: pointer;
    position: relative
}

.menu-toggle .menu-line-1, .menu-toggle .menu-line-2, .menu-toggle .menu-line-3 {
    position: absolute;
    left: .3125rem;
    width: 1.625rem;
    height: .1875rem;
    background: #99a9b5
}

.menu-toggle .menu-line-1 {
    top: .375rem
}

.menu-toggle .menu-line-2 {
    top: .8125rem
}

.menu-toggle .menu-line-3 {
    top: 1.25rem
}

.menu-close {
    border: none;
    outline: 0;
    background: 0 0;
    width: 2.25rem;
    height: 1.875rem;
    cursor: pointer;
    position: absolute;
    top: 1.25rem;
    right: 1.1875rem
}

.menu-close:after, .menu-close:before {
    display: block;
    content: '';
    position: absolute;
    height: .25rem;
    width: 100%;
    top: .8125rem;
    left: 0;
    background: #3c3950
}

.menu-close:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.menu-close:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.site-main {
    padding-top: 3.7rem
}

@media only screen and (min-width:768px) {
    .site-main {
        padding-top: 5rem
    }
}

.site-footer {
    background: #ece81a;
    padding: 2.5rem 0;
    text-align: center;
    font-size: 1rem
}

@media only screen and (min-width:992px) {
    .site-footer {
        text-align: left
    }

    .site-footer .container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: distribute;
        justify-content: space-around;
        -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
        justify-content: space-evenly;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .site-footer .container .footer-branding {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }

    .site-footer .container .footer-links {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .site-footer .container .footer-links .footer-navigation {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }

    .site-footer .container .footer-links .social-links {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }
}

.site-footer .social-links {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.site-footer .social-link-item {
    color: #ece81a
}

.site-footer .social-link-item:hover {
    background: #fff
}

.footer-menu {
    margin: 1rem 0;
    padding: 0;
    list-style: none
}

@media only screen and (min-width:992px) {
    .footer-menu {
        margin: 0
    }

    .footer-menu li {
        display: inline-block;
        margin: 0 .5rem
    }
}

.footer-menu a {
    font-weight: 600;
    color: #000;
    text-transform: uppercase
}

.footer-menu a:active, .footer-menu a:focus, .footer-menu a:hover {
    color: #fff;
    outline: 0;
    border: 0
}

.scroll-top-button {
    position: fixed;
    right: 1.9375rem;
    bottom: 4.6875rem;
    z-index: 1000;
    border: 1px solid #fff;
    border-radius: 50%;
    background: #000;
    opacity: 0
}

.scroll-top-button:before {
    width: 3.125rem;
    height: 3.125rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
    color: #99a9b5;
    font-family: pp-ui !important;
    speak-as: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: ""
}

.scroll-top-button.scroll-top-button--visible {
    opacity: .5
}

.social-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.social-link-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 1.7rem;
    height: 1.7rem;
    margin: 0 .5rem;
    border-radius: 50%;
    background: #000;
    color: #fff;
    font-size: 1rem
}

.portfolio-wrapper {
    padding: 0 1.5rem
}

@media only screen and (min-width:768px) {
    .portfolio-wrapper {
        padding: 0 4.25rem
    }
}

.portfolio-set {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media only screen and (min-width:768px) {
    .portfolio-set {
        margin: 0 -1rem
    }
}

.portfolio-filters {
    padding: 1rem 0 1.5rem;
    text-align: center
}

.portfolio-filters button {
    border: none;
    outline: 0;
    background: 0 0;
    padding: .5rem 1.125rem;
    font-weight: 300;
    font-size: 1rem;
    text-transform: uppercase;
    cursor: pointer
}

.portfolio-filters button:active .portfolio-filters button.active, .portfolio-filters button:focus, .portfolio-filters button:hover {
    color: #308fc1;
    outline: 0;
    border: 0
}

.portfolio-filters-resp {
    position: relative
}

.portfolio-filters-resp .menu-toggle {
    border: none;
    outline: 0;
    background: 0 0;
    width: 2rem;
    height: 1.875rem;
    margin: 0 auto 1rem;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.portfolio-filters-resp .menu-toggle .menu-dot {
    width: .5rem;
    height: .5rem;
    background: #308fc1;
    border-radius: 50%
}

.portfolio-filters-resp ul {
    display: none;
    position: absolute;
    top: 2.1875rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 10;
    width: 70vw;
    margin: 0;
    border: 1px solid #dfe5e8;
    padding: 0;
    background: #fff;
    list-style: none;
    box-shadow: 0 .625rem .375rem -.375rem #777
}

.portfolio-filters-resp ul li {
    border-bottom: 1px solid #dfe5e8
}

.portfolio-filters-resp ul li:last-child {
    border-bottom: 0
}

.portfolio-filters-resp ul li button {
    border: none;
    outline: 0;
    background: 0 0;
    width: 100%;
    padding: .875rem 2.125rem 1.0625rem;
    font-weight: 300;
    font-size: 1rem;
    line-height: 1.25;
    text-transform: uppercase;
    text-align: left
}

.portfolio-filters-resp ul li button:active .portfolio-filters-resp ul li button.active, .portfolio-filters-resp ul li button:focus, .portfolio-filters-resp ul li button:hover {
    color: #308fc1;
    outline: 0;
    border: 0
}

.portfolio-item {
    position: relative;
    overflow: hidden;
    margin-bottom: 1.6rem
}

@media only screen and (min-width:768px) {
    .portfolio-item {
        width: calc(50% - 2rem);
        margin-bottom: 2.2rem;
        margin-left: 1rem;
        margin-right: 1rem
    }
}

@media only screen and (min-width:992px) {
    .portfolio-item {
        width: calc(33% - 2rem)
    }
}

.portfolio-item img {
    width: 100%;
    height: auto
}

.portfolio-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
    height: 28%;
    max-height: 7rem;
    padding: 0 1rem 0 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.portfolio-caption-title {
    margin: 0;
    font-weight: 600;
    font-size: .9375rem;
    line-height: 1;
    text-transform: uppercase;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

@media only screen and (min-width:1340px) {
    .portfolio-caption-title {
        font-size: 1.375rem;
        line-height: 1.18
    }
}

.portfolio-caption-title:before {
    display: block;
    height: 1rem;
    margin-right: .125rem;
    font-family: pp-ui !important;
    speak-as: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "";
    font-size: .8rem
}

@media only screen and (min-width:1340px) {
    .portfolio-caption-title:before {
        margin-bottom: .1875rem;
        font-size: 1rem
    }
}

.portfolio-caption-subtitle {
    margin: 0;
    font-size: .8125rem;
    line-height: 1.84;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

@media only screen and (min-width:1340px) {
    .portfolio-caption-subtitle {
        font-size: 1.0625rem;
        line-height: 1.41
    }
}

.portfolio-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #308fc1;
    color: #fff;
    opacity: 0;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

@media only screen and (min-width:768px) {
    .portfolio-overlay:hover {
        color: #fff;
        opacity: 1
    }
}

.portfolio-excerpt {
    font-family: PPLit, serif;
    font-size: 3vw;
    line-height: 1.1;
    padding: 0 1.5rem 2.8rem 2.2rem;
    -webkit-transition: opacity .5s, -webkit-transform .5s;
    transition: opacity .5s, -webkit-transform .5s;
    transition: transform .5s, opacity .5s;
    transition: transform .5s, opacity .5s, -webkit-transform .5s;
    -webkit-transform: translateY(-12rem);
    transform: translateY(-12rem);
    opacity: 0
}

.portfolio-overlay:hover .portfolio-excerpt {
    -webkit-transform: none;
    transform: none;
    opacity: 1
}

.portfolio-excerpt p {
    margin: 0;
    font-size: 3vw
}

.type-pp_portfolio_item .title-h2 {
    max-width: 50.625rem;
    margin: 0 auto 1rem;
    text-transform: none;
    letter-spacing: 0
}

.type-pp_portfolio_item .title-h3 {
    max-width: 50.625rem;
    margin: 0 auto
}

.sow-image-container {
    padding: .8rem 0
}

.panel-layout .panel-grid:not(:first-child):not(:nth-child(2)) .forcefullwidth_wrapper_tp_banner {
    padding-bottom: .8rem
}

.so-widget-image {
    width: 100%
}

.pp-widget-hp2col {
    margin: 0 auto;
    max-width: 25rem;
    margin-bottom: 4rem
}

#kontakt ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 3rem;
    padding: 0;
    list-style: none
}

@media only screen and (min-width:992px) {
    #kontakt ul {
        max-width: none;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

#kontakt ul li {
    width: 17.5rem;
    height: 5.3125rem;
    padding: 0;
    list-style: none;
    font-size: 1rem
}

#kontakt ul li a {
    color: #fff
}

#kontakt ul li a:hover {
    color: #308fc1
}

#kontakt ul img {
    float: left;
    width: 3.125rem;
    margin-right: .5rem
}

#BorlabsCookieBox #CookiePrefSave {
    background: #3099c1;
    color: #fff
}

@media only screen and (min-width:155rem) {
    .rev_slider_wrapper {
        max-width: 155rem !important;
        margin-left: calc((100vw - var(--scrollbar-width) - 155rem)/ 2) !important
    }
}

.sow-slider-image-cover {
    background-repeat: no-repeat !important;
    background-position: center bottom !important
}

@media only screen and (min-width:768px) {
    .sow-slider-image-cover {
        background-size: contain !important
    }
}

.sow-slider-image-cover .textwidget {
    padding: 1.5625rem 0 65%;
    min-height: 11.25rem
}

@media only screen and (min-width:768px) {
    .sow-slider-image-cover .textwidget {
        padding-bottom: 26%
    }
}

@media only screen and (max-width:767px) {
    .so-panel .sow-slider-base .sow-slide-nav {
        display: none !important
    }
}

.so-panel .sow-slider-base .sow-slide-nav a {
    width: 40px;
    height: 40px;
    padding: 0;
    color: #444 !important
}

.so-panel .sow-slider-base .sow-slide-nav a em {
    display: block;
    width: 40px;
    height: 40px;
    font-family: revicons;
    font-size: 36px;
    line-height: 40px
}

.so-panel .sow-slider-base .sow-sld-icon-ultra-thin-rounded-left::before {
    content: '\e824'
}

.so-panel .sow-slider-base .sow-sld-icon-ultra-thin-rounded-right::before {
    content: '\e825'
}

.so-panel .sow-slider-base .sow-slider-pagination {
    text-align: center
}

.so-panel .sow-slider-base .sow-slider-pagination li {
    margin-right: .75rem
}

.so-panel .sow-slider-base .sow-slider-pagination li a {
    background: 0 0 !important;
    border: 1px solid #000
}

.so-panel .sow-slider-base .sow-slider-pagination li.sow-active a {
    opacity: 1;
    background: #ebecee !important;
    border-color: #ebecee
}