/* pages */

.nb4p-about-page .cs-entry__header-full .cs-video-controls,
.nb4p-about-page .cs-video-wrapper .cs-video-loader { 
    display: none;
}
.nb4p-about-page .cs-entry__header-full .cs-video-wrapper {
    transform: scale(1.3);
    background-image: url(../img/about-header.svg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
@media (min-width: 920px) {
    .nb4p-about-page .cs-entry__header-full .cs-video-wrapper {
        transform: scale(1.2);
    }
}
.nb4p-about-page .cs-entry__overlay-bg {
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    margin-bottom: 0;
}
.nb4p-about-page .cs-video-wrapper .cs-video-inner {
    transition: opacity 0.33s;
}
.nb4p-about-page .cs-entry__header-full .cs-entry__post-media::after {
    display: block;
    background: var(--cs-color-overlay-secondary-background);
}

.nb4p-about-page h1.cs-entry__title {
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    mix-blend-mode: difference;
    font-size: 3rem;
    color: #fff !important;
}

.nb4p-about-page .cs-entry__header,
.nb4p-about-page .cs-entry__header:not(:last-child) {
    margin-bottom: 0;
}
.nb4p-about-page .cs-entry__header-full .cs-entry__header-wrap {
    flex-direction: column;
}
.nb4p-about-page .cs-entry__header-full .cs-ratio-wide::before {
    content: "";
    display: block;
    padding-bottom: 30%;
}
@media (max-height: 500px) {
    .nb4p-about-page.cs-entry-type-full.page .cs-site-content {
        margin-top: calc(-30px - var(--cs-header-initial-height));
    }
    .nb4p-about-page .cs-entry__header-full .cs-ratio-wide::before {
        min-height: auto;
        padding-bottom: 0;
    }
    .nb4p-about-page .cs-entry__header {
        height: 100vh;
    }
    .nb4p-about-page
    .cs-site-primary
    > .cs-site-content
    .cs-entry__header-full:first-child {
        margin-top: 0;
    }
    .nb4p-about-page .cs-entry__header .cs-entry__header-inner,
    .nb4p-about-page .cs-entry__header .cs-entry__header-wrap {
        height: 100%;
    }
    .nb4p-about-page .cs-entry__header .cs-entry__header-wrap > .cs-container {
        margin-top: auto;
    }
}

.nb4p-about-page #main > .cs-site-content > .cs-container {
    max-width: none;
    padding: 0;
}

.nb4p-about-page .cs-site-content {
    margin-bottom: 0;
}

.nb4p-about-page h3 {
    font-size: 1.2rem;
    font-weight: 600;
    text-align: left;
}
.nb4p-about-block li a {
    color: var(--cs-color-link);
    text-decoration: underline;
}
.nb4p-about-block li a:hover,
.nb4p-about-block li a:focus-visible {
    color: var(--cs-color-link-hover);
    text-decoration: none;
}
@media (max-width: 768px) {
    .nb4p-about-page .wp-block-buttons {
        flex-direction: column;
    }
    .nb4p-about-page .wp-block-button {
        min-width: 100%;
    }
}

.nb4p-link-emphasis a,
.nb4p-footer-links-list a {
    display: inline-block;
    position: relative;
    padding-left: 1.3em;
}
.nb4p-link-emphasis a::before,
.nb4p-footer-links-list a::before {
    content: '\e906';
    font-family: 'cs-icons';
    position: absolute;
    left: 0;
    top: 0;
    color: var(--cs-color-contrast-400);
}
.nb4p-footer-links-list {
    columns: 2;
    list-style: none;
    padding: 0;
}
.nb4p-footer-links-list li {
    line-height: var(--cs-font-base-line-height);
    margin: 0;
    padding: 0;
}
.nb4p-footer-links-list li + li {
    margin: 18px 0 0;
}
@media (max-width: 768px) {
    .nb4p-footer-links-list {
        columns: 1;
    }
}

/* blocks */

.nb4p-about-container {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}
.nb4p-about-container * {
    box-sizing: border-box;
}
.nb4p-about-menu-pos {
    height: 0 !important;
    margin: 0 !important;
}
.nb4p-about-menu {
    position: sticky;
    top: 0;
    margin: 0;
    padding: 0;
    background: rgba(255, 255, 255, 0.75);
    z-index: 9;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    transition: top 0.3s ease-in-out;
}
body[data-scheme=dark] .nb4p-about-menu {
    background: rgba(0, 0, 0, 0.75);
}
body.admin-bar .nb4p-about-menu {
    top: 32px;
}
.nb4p-about-menu::before {
    content: '';
    position: absolute;
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.nb4p-about-menu.nb4p-stuck {
    box-shadow: 0 0 15px rgba(0, 0, 0, .1);
}
body[data-scheme=dark] .nb4p-about-menu.nb4p-stuck {
    box-shadow: 0 0 15px rgba(255, 255, 255, .1);

}
.nb4p-about-menu ul {
    display: flex;
    list-style: none;
    padding: 9px 0;
    margin: 0 auto;
    max-width: 700px;
    flex-wrap: wrap;
    justify-content: center;
    white-space: nowrap;
}
.nb4p-about-menu a {
    color: var(--cs-color-primary);
    text-decoration: none;
    display: inline-block;
    padding: 9px 18px;
    opacity: 1;
    transition: .25s;
}
.nb4p-about-menu.nb4p-stuck a {
    opacity: .4;
}
.nb4p-about-menu.nb4p-stuck a.nb4p-current {
    opacity: 1;
}
.nb4p-about-menu.nb4p-stuck a:hover,
.nb4p-about-menu.nb4p-stuck a:focus-visible {
    opacity: 1;
}
.nb4p-about-menu:not(.nb4p-stuck):has(a:hover) a,
.nb4p-about-menu:not(.nb4p-stuck):has(a:focus-visible) a {
    opacity: .4;
}
.nb4p-about-menu:not(.nb4p-stuck):has(a:hover) a:hover,
.nb4p-about-menu:not(.nb4p-stuck):has(a:focus-visible) a:focus-visible {
    opacity: 1;
}

.nb4p-about-menu-dd {
    display: none;
}

.nb4p-about-block {
    padding: 75px 50px;
    margin: 0;
    background: #f7f7f7;
    display: flex;
    flex-direction: column;
}
.nb4p-about-block[data-odd] {
    background: #fff;
}
body[data-scheme=dark] .nb4p-about-block {
    background: #1c1c1c;
}
body[data-scheme=dark] .nb4p-about-block[data-odd] {
    background: #292929;
}
.nb4p-about-block > *,
.nb4p-about-block .pk-lightbox-container {
    width: 100%;
    max-width: 700px;
    margin: 0 auto;
}
.nb4p-about-block > * + * {
    margin: 25px auto 0;
}
.nb4p-about-block > h2 {
    font-size: 2rem;
    font-weight: 600;
    text-align: center;
    margin: 0 auto 25px;
}

.nb4p-numbers {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    justify-content: center;
}
.nb4p-numbers-item {
    display: flex;
    flex-direction: column;
    flex: 0 0 100%;
    max-width: 300px;
    text-align: center;
    margin: 0 auto;
}
.nb4p-numbers-item-number {
    font-size: 2rem;
    font-weight: 700;
}
.nb4p-numbers-item-label {
    line-height: 1.2;
}

.nb4p-projects {
    display: grid;
    grid-template-columns: 1fr;
    align-items: start;
    gap: 25px;
}
.nb4p-projects-item {
    display: flex;
    flex-direction: column;
    padding: 2px;
    background: #fff;
	text-decoration: none;
    color: var(--cs-color-primary);
    transition: .25s;
    /* flex: 1; */
    width: 100%;
    position: relative;
}
[data-odd] .nb4p-projects-item {
    background: #f7f7f7;
}
body[data-scheme=dark] .nb4p-projects-item {
    background: #292929;
}
body[data-scheme=dark] [data-odd] .nb4p-projects-item {
    background: #1c1c1c;
}
.nb4p-projects-item:hover,
.nb4p-projects-item:focus-visible {
	box-shadow: var(--nb4p-projects-item-hover-shadow);
}
.nb4p-projects-item-bg {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 0;
    opacity: 0;
    transition: .25s;
	background-position: center;
	background-size: cover;
}
.nb4p-projects-item:hover .nb4p-projects-item-bg,
.nb4p-projects-item:focus-visible .nb4p-projects-item-bg {
    opacity: 1;
}
.nb4p-projects-item-logo {
	padding-bottom: 42%;
    z-index: 1;
    position: relative;
}
.nb4p-projects-item-logo-l,
.nb4p-projects-item-logo-d,
.nb4p-projects-item-logo-h {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 10%;
    background-origin: content-box;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: .25s;
}
.nb4p-projects-item-logo-d {
    display: none;
}
body[data-scheme=dark] .nb4p-projects-item-logo-d {
    display: block;
}
body[data-scheme=dark] .nb4p-projects-item-logo-l {
    display: none;
}
.nb4p-projects-item-logo-h {
	opacity: 0;
}
.nb4p-projects-item:hover .nb4p-projects-item-logo-l,
.nb4p-projects-item:hover .nb4p-projects-item-logo-d,
.nb4p-projects-item:focus-visible .nb4p-projects-item-logo-l,
.nb4p-projects-item:focus-visible .nb4p-projects-item-logo-d {
	opacity: 0;
}
.nb4p-projects-item:hover .nb4p-projects-item-logo-h,
.nb4p-projects-item:focus-visible .nb4p-projects-item-logo-h {
	opacity: .9;
}
.nb4p-projects-item-description {
	padding: 18px;
    background: #fff;
    z-index: 1;
    transition: .25s;
}
body[data-scheme=dark] .nb4p-projects-item-description {
    background: #000;
}
.nb4p-projects-item:hover .nb4p-projects-item-description,
.nb4p-projects-item:focus-visible .nb4p-projects-item-description {
	background: rgba(255, 255, 255, 0.9);
}
body[data-scheme=dark] .nb4p-projects-item:hover .nb4p-projects-item-description,
body[data-scheme=dark] .nb4p-projects-item:focus-visible .nb4p-projects-item-description {
    background: rgba(0, 0, 0, 0.8);
}
.nb4p-projects-item-description > * {
    margin: 0;
}
.nb4p-projects-item-description > * + * {
    margin: 9px 0 0;
}

.nb4p-cards {
    display: grid;
    gap: 25px;
}
.nb4p-cards-item {
    padding: 25px;
    background: #fff;
    flex: 1;
    min-width: 100%;
}
[data-odd] .nb4p-cards-item {
    background: #f7f7f7;
}
body[data-scheme=dark] .nb4p-cards-item {
    background: #000;
}
/* .nb4p-cards[data-2cols] .nb4p-cards-item {
    min-width: 40%;
} */
.nb4p-cards-item > * {
    margin: 0;
}
.nb4p-cards-item > * + * {
    margin: 9px 0 0;
}

@media (min-width: 480px) {
    .nb4p-numbers-item {
        flex: 0 0 calc(50% - 9px);
        text-align: left;
        max-width: none;
    }
}
@media (min-width: 680px) {
    .nb4p-projects,
    .nb4p-cards[data-2cols] {
        grid-template-columns: 1fr 1fr;
    }
}
@media (max-width: 768px) {
    h1 {
        font-size: 1.5rem;
    }
    .nb4p-about-block {
        padding: 50px 30px;
    }
    .nb4p-about-block > h2 {
        font-size: 1.75rem;
    }
    .nb4p-about-menu {
        padding: 0 30px;
    }
    .nb4p-about-menu li {
        width: 100%;
    }
    .nb4p-about-menu a {
        display: none;
        padding: 9px 0;
        width: 100%;
    }
    .nb4p-about-menu:not(.nb4p-stuck) li:first-child a {
        display: block;
    }
    .nb4p-about-menu.nb4p-stuck a.nb4p-current {
        display: block;
    }
    .nb4p-about-menu.nb4p-open a {
        display: inline-block;
    }
    .nb4p-about-menu-dd {
        display: flex;
        align-items: center;
        justify-content: end;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        padding: 0 30px;
        cursor: pointer;
    }
    .nb4p-about-menu-dd::after {
        content: '\e90c';
        font-family: 'cs-icons';
        display: block;
        width: 1.2rem;
        height: 1.2rem;
        /* background: no-repeat center / contain url(img/dropdown.svg); */
    }
    .nb4p-about-menu.nb4p-open .nb4p-about-menu-dd {
        display: none;
    }
    .nb4p-numbers-item-number {
        font-size: 1.75rem;
    }
}

@media (min-width: 1020px) {
    .nb4p-about-menu ul,
    .nb4p-about-block > *,
    .nb4p-about-block .pk-lightbox-container {
        max-width: 972px;
    }
    .nb4p-numbers-item {
        flex: 0 0 calc(25% - 13.5px);
    }
}