@charset "UTF-8";

/*!
Theme Name: Kampus
Author: jake / dekiru
Author URI: https://dekiru.uk
Description: WP theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: dekiru
*/
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

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

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

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

a {
    background-color: transparent
}

a:visited{
    color: #000;
}

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

b,
strong {
    font-weight: bolder
}

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 {
    -webkit-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 {
    -webkit-box-sizing: border-box;
    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] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0
}

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

[type=search] {
    -webkit-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
}

.mfp-bg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1042;
    overflow: hidden;
    position: fixed;
    background: #0b0b0b;
    opacity: .8
}

.mfp-wrap {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1043;
    position: fixed;
    outline: 0 !important;
    -webkit-backface-visibility: hidden
}

.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0 8px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.mfp-container:before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle
}

.mfp-align-top .mfp-container:before {
    display: none
}

.mfp-content {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    text-align: left;
    z-index: 1045
}

.mfp-ajax-holder .mfp-content,
.mfp-inline-holder .mfp-content {
    width: 100%;
    cursor: auto
}

.mfp-ajax-cur {
    cursor: progress
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: -webkit-zoom-out;
    cursor: zoom-out
}

.mfp-zoom {
    cursor: pointer;
    cursor: -webkit-zoom-in;
    cursor: zoom-in
}

.mfp-auto-cursor .mfp-content {
    cursor: auto
}

.mfp-arrow,
.mfp-close,
.mfp-counter,
.mfp-preloader {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.mfp-loading.mfp-figure {
    display: none
}

.mfp-hide {
    display: none !important
}

.mfp-preloader {
    color: #ccc;
    position: absolute;
    top: 50%;
    width: auto;
    text-align: center;
    margin-top: -.8em;
    left: 8px;
    right: 8px;
    z-index: 1044
}

.mfp-preloader a {
    color: #ccc
}

.mfp-preloader a:hover {
    color: #fff
}

.mfp-s-ready .mfp-preloader {
    display: none
}

.mfp-s-error .mfp-content {
    display: none
}

button.mfp-arrow,
button.mfp-close {
    overflow: visible;
    cursor: pointer;
    background: 0 0;
    border: 0;
    -webkit-appearance: none;
    display: block;
    outline: 0;
    padding: 0;
    z-index: 1046;
    -webkit-box-shadow: none;
    box-shadow: none;
    -ms-touch-action: manipulation;
    touch-action: manipulation
}

button::-moz-focus-inner {
    padding: 0;
    border: 0
}

.mfp-close {
    width: 44px;
    height: 44px;
    line-height: 44px;
    position: absolute;
    right: 0;
    top: 0;
    text-decoration: none;
    text-align: center;
    opacity: .65;
    padding: 0 0 18px 10px;
    color: #fff;
    font-style: normal;
    font-size: 28px;
    font-family: Arial, Baskerville, monospace
}

.mfp-close:focus,
.mfp-close:hover {
    opacity: 1
}

.mfp-close:active {
    top: 1px
}

.mfp-close-btn-in .mfp-close {
    color: #333
}

.mfp-iframe-holder .mfp-close,
.mfp-image-holder .mfp-close {
    color: #fff;
    right: -6px;
    text-align: right;
    padding-right: 6px;
    width: 100%
}

.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #ccc;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap
}

.mfp-arrow {
    position: absolute;
    opacity: .65;
    margin: 0;
    top: 50%;
    margin-top: -55px;
    padding: 0;
    width: 90px;
    height: 110px;
    -webkit-tap-highlight-color: transparent
}

.mfp-arrow:active {
    margin-top: -54px
}

.mfp-arrow:focus,
.mfp-arrow:hover {
    opacity: 1
}

.mfp-arrow:after,
.mfp-arrow:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent
}

.mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px
}

.mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: .7
}

.mfp-arrow-left {
    left: 0
}

.mfp-arrow-left:after {
    border-right: 17px solid #fff;
    margin-left: 31px
}

.mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3f3f3f
}

.mfp-arrow-right {
    right: 0
}

.mfp-arrow-right:after {
    border-left: 17px solid #fff;
    margin-left: 39px
}

.mfp-arrow-right:before {
    border-left: 27px solid #3f3f3f
}

.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px
}

.mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px
}

.mfp-iframe-holder .mfp-close {
    top: -40px
}

.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%
}

.mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, .6);
    box-shadow: 0 0 8px rgba(0, 0, 0, .6);
    background: #000
}

img.mfp-img {
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
    line-height: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 40px 0 40px;
    margin: 0 auto
}

.mfp-figure {
    line-height: 0
}

.mfp-figure:after {
    content: "";
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, .6);
    box-shadow: 0 0 8px rgba(0, 0, 0, .6);
    background: #444
}

.mfp-figure small {
    color: #bdbdbd;
    display: block;
    font-size: 12px;
    line-height: 14px
}

.mfp-figure figure {
    margin: 0
}

.mfp-bottom-bar {
    margin-top: -36px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    cursor: auto
}

.mfp-title {
    text-align: left;
    line-height: 18px;
    color: #f3f3f3;
    word-wrap: break-word;
    padding-right: 36px
}

.mfp-image-holder .mfp-content {
    max-width: 100%
}

.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer
}

@font-face {
    font-family: Roobert;
    src: url(https://jimm0d906rdwycw.static2.studio/wp-content/themes/kampus/assets/fonts/Roobert-Light.woff2) format("woff2");
    font-style: normal;
    font-weight: 300;
    font-display: swap
}

@font-face {
    font-family: Roobert;
    src: url(https://jimm0d906rdwycw.static2.studio/wp-content/themes/kampus/assets/fonts/Roobert-LightItalic.woff2) format("woff2");
    font-style: italic;
    font-weight: 300;
    font-display: swap
}

@font-face {
    font-family: Roobert;
    src: url(https://jimm0d906rdwycw.static2.studio/wp-content/themes/kampus/assets/fonts/Roobert-Medium.woff2) format("woff2");
    font-style: normal;
    font-weight: 400;
    font-display: swap
}

@font-face {
    font-family: Roobert;
    src: url(https://jimm0d906rdwycw.static2.studio/wp-content/themes/kampus/assets/fonts/Roobert-Bold.woff2) format("woff2");
    font-style: normal;
    font-weight: 700;
    font-display: swap
}

body,
button,
input,
optgroup,
select,
textarea {
    color: #000;
    line-height: 1.1;
    font-family: Roobert, "Helvetica Neue", Arial, sans-serif;
    font-size: 18px;
    font-size: 1.125rem
}

h1,
h2,
h3,
h4,
h5,
h6 {
    clear: both;
    margin-top: 0;
    line-height: .9;
    font-weight: 700;
    letter-spacing: -.03em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 28.8px;
    font-size: 1.8rem
}

p {
    margin-top: 0;
    margin-bottom: .5em
}

cite,
dfn,
em,
i {
    font-style: italic
}

blockquote {
    margin: 0 1.5em
}

address {
    margin: 0 0 1.5em
}

pre {
    background: #eee;
    font-family: "Courier 10 Pitch", Courier, monospace;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.6;
    margin-bottom: 1.6em;
    max-width: 100%;
    overflow: auto;
    padding: 1.6em
}

code,
kbd,
tt,
var {
    font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
    font-size: 15px;
    font-size: .9375rem
}

abbr,
acronym {
    border-bottom: 1px dotted #666;
    cursor: help
}

ins,
mark {
    background: #fff9c0;
    text-decoration: none
}

big {
    font-size: 125%
}

html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

*,
:after,
:before {
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

body {
    background: #f2f2f2
}

hr {
    background-color: #ccc;
    border: 0;
    height: 1px;
    margin-bottom: 1.5em
}

ol,
ul {
    margin: 0 0 1.5em 3em
}

ul {
    list-style: disc
}

ol {
    list-style: decimal
}

li>ol,
li>ul {
    margin-bottom: 0;
    margin-left: 1.5em
}

dt {
    font-weight: 700
}

dd {
    margin: 0 1.5em 1.5em
}

img {
    height: auto;
    max-width: 100%
}

figure {
    margin: 1em 0
}

table {
    margin: 0 0 1.5em;
    width: 100%
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
    border: 1px solid;
    border-color: #ccc #ccc #bbb;
    border-radius: 3px;
    background: #e6e6e6;
    color: rgba(0, 0, 0, .8);
    font-size: 12px;
    font-size: .75rem;
    line-height: 1;
    padding: .6em 1em .4em
}

button:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover {
    border-color: #ccc #bbb #aaa
}

button:active,
button:focus,
input[type=button]:active,
input[type=button]:focus,
input[type=reset]:active,
input[type=reset]:focus,
input[type=submit]:active,
input[type=submit]:focus {
    border-color: #aaa #bbb #bbb
}

input[type=color],
input[type=date],
input[type=datetime-local],
input[type=datetime],
input[type=email],
input[type=month],
input[type=number],
input[type=password],
input[type=range],
input[type=search],
input[type=tel],
input[type=text],
input[type=time],
input[type=url],
input[type=week],
textarea {
    color: #666;
    border: 1px solid #ccc;
    border-radius: 3px;
    padding: 3px
}

input[type=color]:focus,
input[type=date]:focus,
input[type=datetime-local]:focus,
input[type=datetime]:focus,
input[type=email]:focus,
input[type=month]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=range]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=text]:focus,
input[type=time]:focus,
input[type=url]:focus,
input[type=week]:focus,
textarea:focus {
    color: #111
}

select {
    border: 1px solid #ccc
}

textarea {
    width: 100%
}

a {
    color: #000
}

a:visited {
    color: purple
}

a:active,
a:focus,
a:hover {
    color: #8af65a
}

a:focus {
    outline: thin dotted
}

a:active,
a:hover {
    outline: 0
}

.main-navigation {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 48px;
    font-size: 3rem;
    line-height: 1.2;
    display: block;
    background-color: rgba(26, 26, 26, .95);
    color: #fff;
    width: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    z-index: 100;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    -webkit-transition: -webkit-transform .25s ease-in-out;
    transition: -webkit-transform .25s ease-in-out;
    transition: transform .25s ease-in-out;
    transition: transform .25s ease-in-out, -webkit-transform .25s ease-in-out
}

.main-navigation.is-active {
    width: 100%;
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

.main-navigation a {
    color: #fff;
    text-decoration: none;
    -webkit-transition: all .2s;
    transition: all .2s
}

.main-navigation a:hover {
    color: #8af65a
}

.main-navigation .menu {
    padding: 120px 40px 40px;
    margin: 0;
    list-style-type: none;
    -webkit-transition: unset;
    transition: unset
}

.main-navigation .current-menu-ancestor>a,
.main-navigation .current-menu-item>a,
.main-navigation .current-page-ancestor>a,
.main-navigation .current_page_ancestor>a,
.main-navigation .current_page_item>a {
    color: #8af65a
}

.main-navigation .current-menu-ancestor>a:hover,
.main-navigation .current-menu-item>a:hover,
.main-navigation .current-page-ancestor>a:hover,
.main-navigation .current_page_ancestor>a:hover,
.main-navigation .current_page_item>a:hover {
    color: #000
}

.menu-toggle {
    display: inline-block;
    height: 43px;
    width: 43px;
    border: 0;
    padding: 0;
    background-color: transparent;
    position: absolute;
    right: clamp(20px, 6vw, 100px);
    z-index: 101
}

.menu-toggle span {
    display: none
}

.menu-toggle:after,
.menu-toggle:before {
    content: "";
    display: block;
    position: absolute;
    background-color: #000;
    -webkit-transition: all .25s;
    transition: all .25s
}

body.dark-display .menu-toggle:after,
body.dark-display .menu-toggle:before {
    background-color: #fff
}

body.menu-active .menu-toggle:after,
body.menu-active .menu-toggle:before {
    background-color: #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-right: -5px
}

.menu-toggle:before {
    top: 0;
    left: 50%;
    width: 2px;
    height: 100%
}

.menu-toggle:after {
    top: 50%;
    left: 0;
    width: 100%;
    height: 2px
}

.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important
}

.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
    clip: auto !important;
    -webkit-clip-path: none;
    clip-path: none;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: .875rem;
    font-weight: 700;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000
}

#content[tabindex="-1"]:focus {
    outline: 0
}

.alignleft {
    display: inline;
    float: left;
    margin-right: 1.5em
}

.alignright {
    display: inline;
    float: right;
    margin-left: 1.5em
}

.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

body,
html {
    margin: 0
}

body {
    color: #000;
    background: #fff
}

body.menu-active {
    overflow: hidden
}

::-moz-selection {
    color: #000;
    background: rgba(138, 246, 90, .5)
}

::selection {
    color: #000;
    background: rgba(138, 246, 90, .5)
}

a {
    color: #000;
    -webkit-transition: color .5s;
    transition: color .5s
}

a:hover {
    color: #8af65a
}

img {
    display: block;
    width: 100%;
    max-width: unset
}

video {
    width: 100%;
    height: auto;
    display: block
}

.hidden {
    display: none
}

.type-dark {
    color: #000
}

.type-dark a {
    color: #000 !important
}

.type-green {
    color: #8af65a
}

.type-green a {
    color: #8af65a !important
}

.back-to-top {
    background-color: rgba(0, 0, 0, .75);
    display: block;
    color: #fff;
    position: sticky;
    bottom: 20vh;
    left: 100%;
    height: 0;
    padding-top: 64px;
    width: 64px;
    overflow: hidden;
    opacity: 0;
    -webkit-transition: opacity 1s;
    transition: opacity 1s
}

.back-to-top.scrolled {
    opacity: 1
}

.back-to-top:before {
    content: "⌃";
    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;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    line-height: 1;
    font-size: 36px;
    padding-top: 10px
}

.to-fade-in {
    opacity: 0
}

.to-fade-in.fade-in {
    -webkit-animation: fade-in 1s forwards;
    animation: fade-in 1s forwards
}

@-webkit-keyframes fade-in {
    0% {
        -webkit-transform: translateY(200px);
        transform: translateY(200px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes fade-in {
    0% {
        -webkit-transform: translateY(200px);
        transform: translateY(200px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

.embed-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%
}

.embed-container embed,
.embed-container iframe,
.embed-container object {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.image-object-fit {
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat
}

.image-object-fit img {
    opacity: 0
}

.site-header {
    width: 100%;
    line-height: 1
}

.site-header .header-content {
    width: 100%;
    max-width: 1540px;
    margin: 0 auto;
    padding: 20px;
    height: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.site-header .logo {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex
}

.site-header .logo img {
    position: relative;
    max-width: 180px
}

.slick-dots {
    margin: 0;
    padding: 0;
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 20px;
    position: absolute;
    bottom: 160px;
    width: 100%
}

.slick-dots button {
    border: 0;
    padding: 0;
    border-radius: 50%;
    background-color: #000;
    width: 12px;
    height: 0;
    padding-top: 12px;
    display: block;
    overflow: hidden
}

.header-banner {
    position: relative;
    z-index: -1;
    margin: 0 0 -40px;
    margin-right: clamp(-20px, -6vw, -100px);
    margin-left: clamp(-20px, -6vw, -100px)
}

.header-banner.video {
    height: 50vh
}

.header-banner video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    display: block
}

.large-card {
    position: sticky;
    top: 0;
    color: #fff;
    max-width: 1540px;
    margin: auto
}

.large-card.set-height .overlay {
    position: relative
}

.large-card.set-height .image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.large-card.set-height .image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.large-card .background {
    position: relative;
    z-index: -1
}

.large-card .gradient {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #88fc6a;
    background: linear-gradient(135deg, rgba(136, 252, 106, .2) 10%, transparent 60%), linear-gradient(225deg, #b0fcff 10%, transparent 60%), linear-gradient(45deg, #bafe36 20%, transparent 60%), linear-gradient(312deg, #fff 100%, transparent 100%), radial-gradient(circle, #b0fdc0 50%, transparent 100%);
    background-size: 200% 200%
}

.large-card .gradient+.overlay {
    background-color: unset;
    position: relative
}

.large-card .colour-card {
    background-color: #fff
}

.large-card .colour-card+.overlay {
    background-color: #fff;
    position: relative
}

.large-card a {
    color: #fff;
    font-weight: 700
}

.large-card h1 {
    font-weight: 400;
    font-size: 192px;
    font-size: 12rem;
    font-size: clamp(1em, 4vw + 1rem, 7rem);
    line-height: .85;
    margin-bottom: 40px
}

.large-card .overlay {
    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-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    z-index: 1;
    padding: clamp(60px, 15vw, 200px);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1
}

.large-card .overlay h1 {
    display: block;
    text-align: center;
    font-weight: 700
}

.large-card .overlay p {
    font-size: clamp(1em, 4vw + 1rem, 1.6rem);
    letter-spacing: -.03em;
    text-align: center;
    margin-bottom: 40px;
    line-height: .9
}

.large-card .overlay.colour-card {
    position: relative
}

.large-card.video-card .background {
    all: initial;
    position: relative
}

.large-card.video-card .overlay {
    position: absolute;
    min-height: unset;
    height: 100%;
    width: 100%;
    left: 0;
    bottom: 0;
    background-color: unset
}

.large-card .alt-1 h1 {
    font-weight: 700;
    font-size: clamp(1.75em, 5vw + 1rem, 9rem)
}

.large-card .alt-2 p {
    font-size: clamp(1em, 5vw + .5rem, 5rem);
    font-weight: 700;
    text-align: center
}

.project-overview {
    color: #000;
    background-color: #fff;
    max-width: 1540px;
    margin: 0 auto;
    position: sticky;
    top: 0
}

.project-overview h1 {
    font-size: clamp(1em, 5vw + .5rem, 5rem);
    text-align: center
}

.project-overview .background {
    position: relative
}

.project-overview .overlay {
    padding: 5vh;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    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;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 1;
    color: #fff
}

.project-overview .overlay a {
    color: #fff;
    font-weight: 700
}

.project-overview .project-details {
    padding: 20px
}

.project-overview .project-details h2 {
    margin-bottom: 0;
    font-size: 22px;
    font-size: 1.375rem
}

.project-overview .project-details p:last-of-type {
    margin-bottom: 0
}

.project-overview .project-details a {
    text-decoration: none;
    color: #000
}

.project-overview .project-details a:hover {
    text-decoration: underline
}

.content-area.about .headline {
    font-size: 44px;
    font-size: 2.75rem
}

.partners,
.team {
    max-width: 1540px;
    width: 100%;
    margin: 0 auto;
    padding: 20px
}

.partners .partner,
.partners .team-member,
.team .partner,
.team .team-member {
    display: grid;
    grid-template-rows: 1fr auto;
    grid-template-columns: 1fr 1fr;
    height: 100%;
    gap: 20px;
    margin-bottom: 40px
}

.partners .logo,
.partners .photo,
.partners .photos,
.team .logo,
.team .photo,
.team .photos {
    grid-row-start: 1;
    grid-column-start: 1;
    grid-row-end: 2;
    grid-column-end: 2
}

.partners .profile,
.team .profile {
    grid-row-start: 1;
    grid-column-start: 2;
    grid-row-end: 2;
    grid-column-end: 3
}

.partners .about-partner,
.partners .bio,
.team .about-partner,
.team .bio {
    grid-row-start: 2;
    grid-column-start: 1;
    grid-row-end: 3;
    grid-column-end: 3
}

.partner,
.team-member {
    margin-bottom: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.partner.reversed,
.team-member.reversed {
    grid-auto-flow: dense;
    direction: rtl
}

.partner.reversed>*,
.team-member.reversed>* {
    direction: ltr
}

.partner.reversed .profile,
.team-member.reversed .profile {
    padding-right: 0
}

.partner.reversed .about-partner,
.partner.reversed .bio,
.team-member.reversed .about-partner,
.team-member.reversed .bio {
    text-align: left;
    padding-right: 0
}

.partner>*,
.team-member>* {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 calc(50% - 10px);
    flex: 0 1 calc(50% - 10px)
}

.partner .profile,
.team-member .profile {
    width: 100%
}

.partner .title,
.team-member .title {
    color: #8af65a;
    margin-bottom: .5rem
}

.partner .name,
.team-member .name {
    letter-spacing: -.03em;
    font-size: clamp(1.175em, 2vw + .25rem, 3rem);
    margin-bottom: .5em
}

.partner .role,
.team-member .role {
    font-size: 1.1rem;
    font-weight: 700
}

.partner .about-partner p:last-of-type,
.partner .bio p:last-of-type,
.team-member .about-partner p:last-of-type,
.team-member .bio p:last-of-type {
    margin-bottom: 0
}

.partner .photos,
.team-member .photos {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 20px
}

.partner .photos img,
.team-member .photos img {
    width: calc(50% - 10px);
    height: auto;
    aspect-ratio: 1/1;
    -o-object-fit: cover;
    object-fit: cover
}

.partner .profile img,
.team-member .profile img {
    max-height: 150px;
    height: auto;
    width: auto;
    margin-bottom: .5em
}

.partner .partner-link,
.team-member .partner-link {
    margin-top: auto
}

.partner .about-partner,
.team-member .about-partner {
    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: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%
}

.partner .about-partner a,
.team-member .about-partner a {
    color: #000
}

.partner .about-partner a:hover,
.team-member .about-partner a:hover {
    color: #8af65a
}

.partner-selection,
.team-selection {
    width: 100%;
    max-width: 1540px;
    margin: 0 auto;
    padding: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 20px
}

.partner-selection>*,
.team-selection>* {
    -webkit-box-flex: unset;
    -ms-flex: unset;
    flex: unset
}

.partner-selection img,
.team-selection img {
    -webkit-transition: all .2s;
    transition: all .2s
}

.partner-selection a,
.team-selection a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    text-decoration: none
}

.partner-selection a:hover img,
.team-selection a:hover img {
    mix-blend-mode: multiply
}

.partner-selection a>*,
.team-selection a>* {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 calc(50% - 10px);
    flex: 0 1 calc(50% - 10px)
}

.partner-selection .logo,
.partner-selection .photo,
.partner-selection .photos,
.team-selection .logo,
.team-selection .photo,
.team-selection .photos {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #88fc6a;
    background: linear-gradient(135deg, rgba(136, 252, 106, .2) 10%, transparent 60%), linear-gradient(225deg, #b0fcff 10%, transparent 60%), linear-gradient(45deg, #bafe36 20%, transparent 60%), linear-gradient(312deg, #fff 100%, transparent 100%), radial-gradient(circle, #b0fdc0 50%, transparent 100%);
    background-size: 200% 200%;
    display: none
}

.partner-selection .profile,
.team-selection .profile {
    padding-right: 0
}

.partner-selection .partner,
.partner-selection .team-member,
.team-selection .partner,
.team-selection .team-member {
    display: block;
    width: 40%;
    margin: 0;
    padding: 0;
    grid-auto-flow: unset;
    direction: initial
}

.partner-selection .partner.reversed,
.partner-selection .team-member.reversed,
.team-selection .partner.reversed,
.team-selection .team-member.reversed {
    text-align: right
}

.partner-selection .partner.reversed a,
.partner-selection .team-member.reversed a,
.team-selection .partner.reversed a,
.team-selection .team-member.reversed a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.partner-selection .partner.reversed .profile,
.partner-selection .team-member.reversed .profile,
.team-selection .partner.reversed .profile,
.team-selection .team-member.reversed .profile {
    text-align: left
}

.partner-selection .title,
.team-selection .title {
    font-size: clamp(1.5em, 2vw + .25rem, 2.75rem);
    margin-bottom: .15em
}

.partner-selection .name,
.team-selection .name {
    font-size: clamp(1em, 1vw + .25rem, 5rem);
    display: none
}

.header-image-title {
    position: relative
}

.header-image-title img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    z-index: -1
}

.header-image-title .overlay {
    color: #fff
}

.header-image-title .overlay.type-dark {
    color: #000
}

.header-image-title .overlay p:last-of-type {
    margin-bottom: 0
}

.header-image-title .overlay .content {
    max-width: 1540px;
    height: 100%;
    margin: 0 auto;
    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-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    z-index: 1;
    padding: 5vh 2vh;
    text-align: center
}

.project-details {
    padding: 20px
}

.project-details .content {
    max-width: 1540px;
    margin: 0 auto
}

.large-image-block {
    position: relative;
    max-width: 1540px;
    margin: 0 auto;
    color: #fff
}

.large-image-block .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    padding: 20px 0;
    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;
    text-align: center;
    font-size: clamp(1em, 5vw + .5rem, 5rem);
    letter-spacing: -.03em;
    line-height: .85
}

.large-image-block .overlay.vertical-top {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.large-image-block .overlay.vertical-bottom {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.two-image-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 1540px;
    margin: 0 auto
}

.two-image-block>div {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 50%;
    flex: 0 1 50%
}

.text-card-content {
    max-width: 1540px;
    margin: 0 auto;
    text-align: center;
    padding: 40px
}

.text-card-content p {
    font-size: clamp(1em, 3vw + .25rem, 4rem)
}

.text-card-content p:last-of-type {
    margin-bottom: 0
}

.text-card-content.size-small p {
    font-size: clamp(1em, 1.25vw + .25rem, 5rem)
}

.text-card-content.size-large p {
    font-size: clamp(1em, 5vw + .25rem, 5rem)
}

.text-columns {
    padding: 20px
}

.text-columns+.text-columns {
    margin-top: -30px
}

.text-columns .section-content {
    max-width: 1540px;
    width: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.text-columns .text-column {
    width: 75%
}

.text-columns .text-column h1 {
    font-weight: 400;
    font-size: 24px;
    font-size: 1.5rem
}

.image-text-block {
    max-width: 1540px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.image-text-block p:last-of-type {
    margin-bottom: 0
}

.image-text-block .text {
    padding: 20px
}

.exploded-width-image {
    padding: 20px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px
}

.exploded-width-image picture {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.exploded-width-image.double picture {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 50%;
    flex: 0 1 50%
}

.quote-card {
    max-width: 1540px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
    padding: 40px 10vw
}

.quote-card blockquote {
    margin: 0;
    font-weight: 700;
    line-height: .9;
    font-size: clamp(1em, 3vw + .25rem, 5rem)
}

.quote-card figcaption {
    font-size: clamp(1em, 1.25vw + .25rem, 5rem)
}

.site-main .contact {
    max-width: 1540px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #88fc6a;
    background: linear-gradient(135deg, rgba(136, 252, 106, .2) 10%, transparent 60%), linear-gradient(225deg, #b0fcff 10%, transparent 60%), linear-gradient(45deg, #bafe36 20%, transparent 60%), linear-gradient(312deg, #fff 100%, transparent 100%), radial-gradient(circle, #b0fdc0 50%, transparent 100%);
    background-size: 200% 200%;
    color: #000;
    padding: 20px
}

.site-main .contact a:hover {
    color: #fff
}

.site-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: relative
}

.site-footer p {
    margin: 0
}

.site-footer ul {
    padding: 0;
    margin: 0;
    list-style-type: none
}

.site-footer .logo {
    background: url(https://jimm0d906rdwycw.static2.studio/wp-content/themes/kampus/assets/images/logo.svg) center center no-repeat;
    background-size: contain;
    width: clamp(250px, 20vw, 300px);
    max-width: 200px;
    height: 0;
    padding-top: 34px;
    overflow: hidden;
    margin-bottom: 40px;
    display: block
}

.footer-content {
    width: 100%;
    max-width: 1540px;
    padding: 40px 20px;
    margin: 0 auto;
    position: relative
}

.footer-column {
    margin-bottom: 2rem;
    margin-right: 40px
}

.footer-column .emails {
    margin-bottom: 20px
}

.footer-column .emails p {
    margin-bottom: 10px
}

.footer-menu {
    margin-bottom: auto
}

.footer-menu .menu-menu-container {
    margin-bottom: 2rem
}

ul.social-links {
    margin: 40px 0;
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px
}

ul.social-links span {
    display: none
}

ul.social-links img {
    height: 25px;
    width: auto
}

ul.social-links a {
    -webkit-transition: all .25s;
    transition: all .25s
}

ul.social-links a:hover img {
    -webkit-filter: brightness(0) saturate(100%) invert(79%) sepia(49%) saturate(680%) hue-rotate(47deg) brightness(104%) contrast(99%);
    filter: brightness(0) saturate(100%) invert(79%) sepia(49%) saturate(680%) hue-rotate(47deg) brightness(104%) contrast(99%)
}

.contact p {
    margin-bottom: 1rem
}

.contact p:last-of-type {
    margin-bottom: 0
}

.copyright {
    margin-top: 100px;
    clear: both;
    width: 100%
}

@media (min-width:750px) {

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        font-size: 44px;
        font-size: 2.75rem;
        letter-spacing: -.05em
    }

    p {
        margin-bottom: 1.5em
    }
}

@media (min-width:960px) {

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        font-size: 80px;
        font-size: 5rem
    }

    .main-navigation {
        font-size: 26px;
        font-size: 1.625rem;
        line-height: 1
    }

    .main-navigation {
        overflow: visible
    }

    .main-navigation.is-active {
        width: clamp(300px, 50%, 500px)
    }

    .main-navigation .current-menu-ancestor>a,
    .main-navigation .current-menu-item>a,
    .main-navigation .current-page-ancestor>a,
    .main-navigation .current_page_ancestor>a,
    .main-navigation .current_page_item>a {
        color: #000;
        background-color: #8af65a
    }

    .main-navigation {
        width: unset;
        top: unset;
        right: unset;
        height: unset;
        -webkit-transform: unset;
        transform: unset;
        background-color: unset;
        position: relative
    }

    .main-navigation a {
        color: #000;
        position: relative;
        padding: 10px
    }

    .main-navigation a:hover {
        color: #8af65a
    }

    .main-navigation.is-active {
        width: unset
    }

    .main-navigation .menu {
        padding: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1px
    }

    .menu-toggle {
        top: 80px;
        right: 80px
    }

    .menu-toggle {
        display: none
    }

    .main-navigation ul {
        display: block
    }

    .site-header {
        position: relative
    }

    .site-header .header-content {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        height: unset;
        padding: 20px 40px
    }

    .header-banner {
        margin: 0 -100px -80px
    }

    .header-banner.video {
        height: unset;
        aspect-ratio: 16/9
    }

    .large-card h1 {
        margin-bottom: 60px
    }

    .large-card .overlay p {
        margin-bottom: 60px
    }

    .project-overview .project-details {
        padding: 20px 20px 60px
    }

    .project-overview .project-details h2 {
        font-size: 24px;
        font-size: 1.5rem
    }

    .content-area.about .two-columns {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 40px
    }

    .content-area.about .two-columns .column {
        width: calc(50% - 20px)
    }

    .partners,
    .team {
        padding: 40px 20px
    }

    .partners .partner,
    .partners .team-member,
    .team .partner,
    .team .team-member {
        grid-template-rows: auto 1fr;
        grid-template-columns: 1fr 1fr
    }

    .partners .logo,
    .partners .photo,
    .partners .photos,
    .team .logo,
    .team .photo,
    .team .photos {
        grid-row-start: 1;
        grid-column-start: 1;
        grid-row-end: 3;
        grid-column-end: 2
    }

    .partners .profile,
    .team .profile {
        grid-row-start: 1;
        grid-column-start: 2;
        grid-row-end: 2;
        grid-column-end: 3
    }

    .partners .about-partner,
    .partners .bio,
    .team .about-partner,
    .team .bio {
        grid-row-start: 2;
        grid-column-start: 2;
        grid-row-end: 3;
        grid-column-end: 3
    }

    .partner.reversed .about-partner,
    .partner.reversed .bio,
    .team-member.reversed .about-partner,
    .team-member.reversed .bio {
        text-align: right;
        padding-left: 10%
    }

    .partner .profile,
    .team-member .profile {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding-right: 10%;
        width: 100%
    }

    .partner .role,
    .team-member .role {
        font-size: 1.4rem
    }

    .partner .about-partner,
    .partner .bio,
    .team-member .about-partner,
    .team-member .bio {
        padding-right: 10%
    }

    .partner-selection,
    .team-selection {
        padding: 40px 20px
    }

    .partner-selection .logo,
    .partner-selection .photo,
    .partner-selection .photos,
    .team-selection .logo,
    .team-selection .photo,
    .team-selection .photos {
        display: block
    }

    .partner-selection .partner,
    .partner-selection .team-member,
    .team-selection .partner,
    .team-selection .team-member {
        width: calc(33.3333333333% - 20px + 6.6666666667px)
    }

    .partner-selection .partner:nth-of-type(8n+1),
    .partner-selection .team-member:nth-of-type(8n+1),
    .team-selection .partner:nth-of-type(8n+1),
    .team-selection .team-member:nth-of-type(8n+1) {
        margin-right: 16.6666666667%
    }

    .partner-selection .partner:nth-of-type(8n+2),
    .partner-selection .team-member:nth-of-type(8n+2),
    .team-selection .partner:nth-of-type(8n+2),
    .team-selection .team-member:nth-of-type(8n+2) {
        margin-right: 16.6666666667%
    }

    .partner-selection .partner:nth-of-type(8n+2) a,
    .partner-selection .team-member:nth-of-type(8n+2) a,
    .team-selection .partner:nth-of-type(8n+2) a,
    .team-selection .team-member:nth-of-type(8n+2) a {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }

    .partner-selection .partner:nth-of-type(8n+2) .profile,
    .partner-selection .team-member:nth-of-type(8n+2) .profile,
    .team-selection .partner:nth-of-type(8n+2) .profile,
    .team-selection .team-member:nth-of-type(8n+2) .profile {
        text-align: right
    }

    .partner-selection .partner:nth-of-type(8n+5) a,
    .partner-selection .team-member:nth-of-type(8n+5) a,
    .team-selection .partner:nth-of-type(8n+5) a,
    .team-selection .team-member:nth-of-type(8n+5) a {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }

    .partner-selection .partner:nth-of-type(8n+5) .profile,
    .partner-selection .team-member:nth-of-type(8n+5) .profile,
    .team-selection .partner:nth-of-type(8n+5) .profile,
    .team-selection .team-member:nth-of-type(8n+5) .profile {
        text-align: right
    }

    .partner-selection .partner:nth-of-type(8n+6),
    .partner-selection .team-member:nth-of-type(8n+6),
    .team-selection .partner:nth-of-type(8n+6),
    .team-selection .team-member:nth-of-type(8n+6) {
        margin-left: 16.6666666667%
    }

    .partner-selection .partner:nth-of-type(8n+7),
    .partner-selection .team-member:nth-of-type(8n+7),
    .team-selection .partner:nth-of-type(8n+7),
    .team-selection .team-member:nth-of-type(8n+7) {
        margin-right: 16.6666666667%
    }

    .partner-selection .partner.reversed a,
    .partner-selection .team-member.reversed a,
    .team-selection .partner.reversed a,
    .team-selection .team-member.reversed a {
        -webkit-box-orient: initial;
        -webkit-box-direction: initial;
        -ms-flex-direction: initial;
        flex-direction: initial
    }

    .partner-selection .name,
    .team-selection .name {
        display: unset
    }

    .header-image-title img {
        all: unset;
        display: block;
        width: 100%;
        height: auto
    }

    .header-image-title .overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1
    }

    .project-details {
        padding: 40px 20px
    }

    .large-image-block .overlay {
        padding: 60px 0
    }

    .text-card-content {
        padding: 60px clamp(60px, 15vw, 200px)
    }

    .text-card-content p {
        font-size: clamp(1em, 3vw + .5rem, 4rem);
        line-height: .9
    }

    .text-card-content.size-small p {
        font-size: clamp(1em, 1.25vw + .5rem, 5rem)
    }

    .text-card-content.size-large p {
        font-size: clamp(1em, 5vw + .5rem, 5rem)
    }

    .text-columns {
        padding: 40px 20px
    }

    .text-columns+.text-columns {
        margin-top: -80px
    }

    .text-columns .section-content {
        -webkit-column-gap: 40px;
        -moz-column-gap: 40px;
        column-gap: 40px
    }

    .text-columns .text-column {
        width: calc(33.3333333333% - 40px + 13.3333333333px)
    }

    .text-columns .text-column h1 {
        font-size: 32px;
        font-size: 2rem
    }

    .text-columns .column-1+.column-3 {
        margin-left: calc(33.3333333333% - 40px + 13.3333333333px)
    }

    .text-columns .section-content>.column-2:first-child {
        margin-left: calc(33.3333333333% + 13.3333333333px)
    }

    .image-text-block {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .image-text-block>* {
        -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto
    }

    .image-text-block.reversed {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .image-text-block .image {
        width: 50%
    }

    .image-text-block .image[data-width="66"] {
        width: 66%
    }

    .image-text-block .image[data-width="75"] {
        width: 75%
    }

    .image-text-block .text {
        padding: 40px
    }

    .exploded-width-image.double {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        gap: 0
    }

    .quote-card {
        padding: 60px 10vw
    }

    .quote-card blockquote {
        font-size: clamp(1em, 3vw + .5rem, 5rem)
    }

    .quote-card figcaption {
        font-size: clamp(1em, 1.25vw + .5rem, 5rem)
    }

    .site-main .contact {
        padding: 40px 20px
    }

    .footer-content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 20px;
        padding: 80px 40px
    }

    .footer-column {
        margin-right: 60px
    }

    .copyright {
        padding-left: calc(66.6666666667% - 13.3333333333px);
        margin-left: 20px
    }
}

@media (min-width:1200px) {

    body,
    button,
    input,
    optgroup,
    select,
    textarea {
        font-size: 22px;
        font-size: 1.375rem
    }

    .site-header .header-content {
        padding: 40px 80px
    }

    .partner,
    .team-member {
        margin-bottom: 40px
    }

    .large-image-block .overlay {
        padding: 80px 0
    }

    .text-columns .text-column h1 {
        font-size: 56px;
        font-size: 3.5rem
    }

    .footer-content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 20px;
        padding: 120px 80px
    }
}

@media (min-width:1600px) {
    .project-overview .project-details {
        padding: 20px 0 80px
    }

    .partners,
    .team {
        padding: 40px 0
    }

    .partner-selection,
    .team-selection {
        padding: 40px 0
    }

    .project-details {
        padding: 40px 0
    }

    .text-columns {
        padding: 40px 0
    }

    .site-main .contact {
        padding: 40px 80px
    }
}

@media all and (max-width:900px) {
    .mfp-arrow {
        -webkit-transform: scale(.75);
        transform: scale(.75)
    }

    .mfp-arrow-left {
        -webkit-transform-origin: 0;
        transform-origin: 0
    }

    .mfp-arrow-right {
        -webkit-transform-origin: 100%;
        transform-origin: 100%
    }

    .mfp-container {
        padding-left: 6px;
        padding-right: 6px
    }
}

@media screen and (max-width:800px) and (orientation:landscape),
screen and (max-height:300px) {
    .mfp-img-mobile .mfp-image-holder {
        padding-left: 0;
        padding-right: 0
    }

    .mfp-img-mobile img.mfp-img {
        padding: 0
    }

    .mfp-img-mobile .mfp-figure:after {
        top: 0;
        bottom: 0
    }

    .mfp-img-mobile .mfp-figure small {
        display: inline;
        margin-left: 5px
    }

    .mfp-img-mobile .mfp-bottom-bar {
        background: rgba(0, 0, 0, .6);
        bottom: 0;
        margin: 0;
        top: auto;
        padding: 3px 5px;
        position: fixed;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }

    .mfp-img-mobile .mfp-bottom-bar:empty {
        padding: 0
    }

    .mfp-img-mobile .mfp-counter {
        right: 5px;
        top: 3px
    }

    .mfp-img-mobile .mfp-close {
        top: 0;
        right: 0;
        width: 35px;
        height: 35px;
        line-height: 35px;
        background: rgba(0, 0, 0, .6);
        position: fixed;
        text-align: center;
        padding: 0
    }
}


/**/





.partner-selection {
    width: 100%;
    max-width: 1540px;
    margin: 0 auto;
    padding: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 20px

    
}

.partner-selection>* {
    -webkit-box-flex: unset;
    -ms-flex: unset;
    flex: unset
   
}

.partner-selection img
 {
    -webkit-transition: all .2s;
    transition: all .2s
}

.partner-selection a
 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    text-decoration: none
   
    
    
}

.partner-selection a:hover img {
    mix-blend-mode: multiply
}

.partner-selection a>*{
    -webkit-box-flex: 0;
    -ms-flex: 0 1 calc(50% - 10px);
    flex: 0 1 calc(50% - 10px)
}

.partner-selection .logo{
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #88fc6a;
    background: linear-gradient(135deg, rgba(136, 252, 106, .2) 10%, transparent 60%), linear-gradient(225deg, #b0fcff 10%, transparent 60%), linear-gradient(45deg, #bafe36 20%, transparent 60%), linear-gradient(312deg, #fff 100%, transparent 100%), radial-gradient(circle, #b0fdc0 50%, transparent 100%);
    background-size: 200% 200%;
    display: none

}





















/**/

.partner-selection a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    text-decoration: none;
    flex-direction: row-reverse;

    align-items: center; 
    }


    

    .partner .profile {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding-right: 20px;
        width: 100%;
        flex: 1;
        }


.partner-selection {
    padding: 40px 20px;
    max-width: 500px;
}

@media screen and (min-width: 974px){
.partner-selection {
    display: none;
}}

.partner-selection .logo {
    display: block;
    width: 85px;
    max-width: 85px;
    
    
}

.partner-selection .photo,
.partner-selection .photos {
    display: block;
    max-width: 150px;
}

.partner-selection .partner {
    width: 100%;
    
}

.partner-selection .partner:nth-of-type(8n+1) {
    margin-right: 0px;
    
}

.partner-selection .partner:nth-of-type(8n+2) {
    margin-right: 0px;
}

.partner-selection .partner:nth-of-type(8n+2) a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.partner-selection .partner:nth-of-type(8n+2) .profile {
    text-align: left;
}

.partner-selection .partner:nth-of-type(8n+5) a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.partner-selection .partner:nth-of-type(8n+5) .profile {
    text-align: left;
}

.partner-selection .partner:nth-of-type(8n+6) {
    margin-left: 0px;
}

.partner-selection .partner:nth-of-type(8n+7) {
    margin-right: 20px;
}





.partner-selection .partner.reversed a {
    -webkit-box-orient: initial;
    -webkit-box-direction: initial;
    -ms-flex-direction: initial;
    flex-direction: row-reverse;
}

.partner-selection .name {
    display: none;
}





.partner.reversed .about-partner, .partner.reversed .bio{
 text-align: left; 
 padding-left: 0%;
}






.team-selection .title {
        font-size: clamp(1.1em, 1.4vw + .25rem, 2.75rem);
        margin-bottom: .15em;
        }

    
.team-selection .team-member:nth-of-type(8n+2) .profile {
            text-align: right;
            padding-right: 0;
            }


.team-selection .team-member:nth-of-type(8n+5) .profile {
    text-align: right;
    padding-right: 0;
    }


.team-member.reversed {
    grid-auto-flow: dense;
    direction: rtl;
    text-align: right;
    }



    .team-member .profile {
        
        padding-right: 1%;
        
        }



                    

@media screen and (max-width: 974px) {

    .team-member.reversed {
    
        text-align: left;
        }

}
    
@media screen and (max-width: 974px) {
.team-selection .team-member {
    display: block;
    width: 40%;
    margin: 0;
    padding: 0;
    grid-auto-flow: unset;
    direction: initial;
    }
}

    
    
@media screen and (max-width: 974px) {     
.team-selection {
   
    display: none;
   
    }
}    


#silktide-banner a.silktide-logo, #silktide-cookie-icon {
    display: none!important;
    
    }

   .site-footer a:visited {
        color: black;
        }




.large-card h1:nth-of-type(){
            font-weight: 100;
            font-size: 192px;
            font-size: 12rem;
            font-size: clamp(1em, 4vw + 1rem, 7rem);
            line-height: .85;
            margin-bottom: 0px;
            }