/* ibm-plex-sans-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/ibm-plex-sans-v23-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 300;
  src: url('../fonts/ibm-plex-sans-v23-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/ibm-plex-sans-v23-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/ibm-plex-sans-v23-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/ibm-plex-sans-v23-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 500;
  src: url('../fonts/ibm-plex-sans-v23-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/ibm-plex-sans-v23-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 600;
  src: url('../fonts/ibm-plex-sans-v23-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* space-grotesk-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/space-grotesk-v22-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* space-grotesk-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/space-grotesk-v22-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* space-grotesk-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/space-grotesk-v22-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* space-grotesk-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/space-grotesk-v22-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* space-grotesk-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/space-grotesk-v22-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
:root {
    --clr-white: white;
    --clr-black: black;
	--clr-gray: #F6F6F6;
	--clr-blue-dark: #040028;
	--clr-green: #55ffd2;
	--clr-green-darker: #00CD96;

    --clr-burger: var(--clr-white);
    --clr-burger-open: var(--clr-white);
    --clr-navbarMobileBackground: white;    

    --clr-navLink: var(--clr-blue);
    --clr-navLinkActive : var(--clr-white);
    --clr-navLinkHover : var(--clr-navLinkActive);
    
    --clr-btn: var(--clr-gold);
    --clr-btnHover : var(--clr-gold-dark);
    --clr-btnActive : var(--clr-gold-darkest);

    --clr-tableBorder: rgba(255, 255, 255, .4);

    --wp--preset--color--background: rgba(4, 0, 40, .8);

	--ff-open_sans: 'Open Sans';
	--ff-IBMPlexSans: 'IBM Plex Sans';
	--ff-SpaceGrotesk: 'Space Grotesk';

    --fs-h1: clamp(32px,5vw,52px);
    --fs-h2: clamp(25px,4vw,32px);
    --fs-h3: clamp(20px,4vw,24px);
    --fs-h4: clamp(18px,4vw,20px);
    --fs-p: clamp(15px,2vw,17px);

    --textShadow: 0 0 20px var(--clr-green);
}


/* GLOBAL STYLES
-------------------------------------------------- */

*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html {
   /* font-size: 18px;*/
   overflow-x: hidden;
}

body {
    position: relative;
    isolation: isolate;
    font-family: var(--ff-SpaceGrotesk) !important;
    font-weight: 400;
    background-color: var(--clr-blue-dark) !important;    
    background: center 100dvh repeat-y url(/wp-content/themes/wptheme/assets/img/deepen-background.png);
    color: white !important;
    overflow-x: hidden;
}
html.noScroll {
    height: 100% !important;
    overflow-y: hidden !important;
}
body.noScroll {
    height: 100% !important;
    overflow-y: hidden !important;
}
body.noScroll .keyvisual{
    transform: translateX(-617px);
    transition: transform 0.5s ease-in-out;
}
body .keyvisual{
    transform: translateX(0);
    transition: transform 0.5s ease-in-out;
}
h1 p,
h1 {
    font-size: var(--fs-h1);
    font-family: var(--ff-SpaceGrotesk) !important;
    font-weight: 300;
    margin-bottom: 17px;
    color: var(--clr-white);
}
h2 p,
h2 {
    position: relative;
    font-size: var(--fs-h2);
    font-family: var(--ff-SpaceGrotesk) !important;
    font-weight: 300;
    margin-top: 25px;
    margin-bottom: 18px;
    color: var(--clr-green);
}
h1 p, h2 p{
    margin-bottom: 0;
    margin-top: 0;
}
h3 {
    font-size: var(--fs-h3);
    font-family: var(--ff-SpaceGrotesk) !important;
    font-weight: 300;
    color: var(--clr-green);
    margin-top: 25px;
    margin-bottom: 18px;
}
h4 {
    font-size: var(--fs-h4);
    font-family: var(--ff-SpaceGrotesk) !important;
    font-weight: 300;
    color: var(--clr-green);
    margin-top: 25px;
    margin-bottom: 18px;
}
h1, h2, h3, h4{
    letter-spacing: -3%;
    line-height: 1.1;
}
h2, h3, h4{
    text-shadow: var(--textShadow);
}
h4{
    line-height: 1.2;
}
p {
    font-size: var(--fs-p);
    font-family: var(--ff-SpaceGrotesk);
    max-width: 100ch;
}
li{
    font-size: var(--fs-p);
}

a{
    font-family: var(--ff-SpaceGrotesk);
    font-weight: 700;
    text-decoration: none;
    color: var(--clr-blue);
}
a:hover, a:focus, a:active {
    color: var(--clr-green);
}
main p a{
    text-decoration: underline;
}
strong{
    font-weight: 600;
}
em,
i{
    font-style: italic;
    font-family: var(--ff-IBMPlexSans);
    width: fit-content;
}

.bg_glow{
    box-shadow: 0 0 50px #00a2ff4d;
    width: fit-content;
}
.wp-block-gallery{
    gap: 10px;
}
.wp-block-image,
.wp-block-columns{
    margin-bottom: 50px;
}
img{
    max-width: 100%;
    height: auto;
    display: block;
}
header{
    z-index: 1000;
    position: absolute;
    width: 100%;
    margin-inline: auto;
    margin-top: 68px;
}
@property --btn-glow-color-1 {
    syntax: "<color>";
    inherits: true;
    initial-value: #00CD96;
}
@property --btn-glow-color-2 {
    syntax: "<color>";
    inherits: true;
    initial-value: #040028ff;
}
@property --glow-angle {
    syntax: "<angle>";
    inherits: true;
    initial-value: 0deg;
}
.btn{
    isolation: isolate;
    z-index: 1;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px 30px;
    font-size: 18px;
    width: fit-content;
    color: #fff;
    border-radius: 100vmax;
    cursor: pointer;
    border: 2px solid var(--clr-green-darker);
    background-color: var(--clr-blue-dark);
    box-shadow: 0 0 25px 0 rgba(0, 161 , 255, .5);
}
.btn.glow-anim:hover,
.btn:hover{
    box-shadow: 0 0 40px 0 rgba(0, 205 , 150, .7);
    color: var(--clr-green);
}

.has-glow-background img{
    filter: drop-shadow(0 0 25px #00a2ff4d);
}

.btn.glow-anim {
    --gradient: 
    var(--btn-glow-color-1),
    var(--btn-glow-color-2),
    var(--btn-glow-color-1),
    var(--btn-glow-color-2),
    var(--btn-glow-color-1);

    border: 4px solid transparent;
    background: 
        linear-gradient(var(--clr-blue-dark) 0 0) padding-box,
        conic-gradient(from var(--glow-angle) at 50% 50%, var(--gradient)) border-box;
    animation: btn_glow_animation 5s forwards linear infinite;
    box-shadow: unset;
}
.btn.glow-anim::before {
    content: '';
    position: absolute;
    display: inline-flex;
    z-index: -1;
    border-radius: inherit;
    width: 100%;
    height: 100%;
    justify-self: center;
    align-self: center;
    top: 0;
    left: 0;
    padding: 0;
    background: linear-gradient(var(--clr-blue-dark) 0 0) padding-box;
}
.btn.glow-anim::after {
    content: "";
    position: absolute;
    z-index: -2;
    border-radius: inherit;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    padding: 0;
    scale: 1.05;
    background: 
        conic-gradient(from var(--glow-angle) at 50% 50%, var(--gradient)) border-box;
    filter: blur(10px);
    animation: btn_glow_animation 5s forwards linear infinite;
    -webkit-transform: translate3d(0, 0, 0);
}

.home .key-title .btn {display:none !important;}

@keyframes btn_glow_animation {
    0% {
        --glow-angle: 0deg;
    }
    50% {
        --glow-angle: 180deg;
    }
    100% {
        --glow-angle: 360deg;
    }
}

.wp-lightbox-container button:focus, .wp-lightbox-container button:hover, .wp-lightbox-container button:not(:hover):not(:active):not(.has-background) {
  background-color: var(--clr-blue-dark);
  box-shadow: 0 0 40px 0 rgba(0, 205 , 150, .7);
}
.lightbox-trigger svg path{
    fill : var(--clr-green);
}

.error404 main{
    margin-top: 200px;
}

.wp-block-media-text > .wp-block-media-text__content{
    padding-left: 0;
}
.wp-block-media-text > .wp-block-media-text__media + .wp-block-media-text__content{
    padding-left: 8%;
    padding-right: 0;
}
@media (max-width: 600px){
    .wp-block-media-text > .wp-block-media-text__content{
        padding-left: 0;
        padding-top: 25px;
    }
    .wp-block-media-text > .wp-block-media-text__media + .wp-block-media-text__content{
        padding-left: 0;
        padding-top: 25px;
    }
}

figure.wp-block-video{
    margin-block: 0;
}


.wp-block-image.aligncenter.size-full.is-resized{
    margin-inline: auto;
}



.wp-block-columns[class*="columns-"]{
    --width: 1188px;
    display: grid;
    column-gap: 25px;
    row-gap: 25px;
    justify-content: center;
}
.wp-block-columns[class*="columns-"] figure{
    width: unset !important;
    margin-block: 0;
}
.wp-block-columns figure.wp-block-image{
    cursor: pointer;
}
.wp-block-columns.columns-1{
    --column: 1;
    grid-template-columns: repeat(var(--column), 1fr);
}
.wp-block-columns.columns-1 figure.wp-block-image,
.wp-block-columns.columns-1 figure.wp-block-image img{
    max-width: 100%;
}
.wp-block-columns.columns-2{
    --column: 2;
    grid-template-columns: repeat(var(--column), 1fr);
}
.wp-block-columns.columns-2 figure.wp-block-image,
.wp-block-columns.columns-2 figure.wp-block-image img{
    max-width: 100%;
}
.wp-block-columns.columns-3{
    --column: 3;
    grid-template-columns: repeat(var(--column), 1fr);    
}
.wp-block-columns.columns-4{
    --column: 4;
    grid-template-columns: repeat(var(--column), 1fr);
}
.wp-block-columns.columns-5{
    --column: 5;
    grid-template-columns: repeat(var(--column), 1fr);
}
.wp-block-columns.columns-6{
    --column: 6;
    grid-template-columns: repeat(var(--column), 1fr);
}
.wp-block-columns.columns-7{
    --column: 7;
    grid-template-columns: repeat(var(--column), 1fr);
}

.wp-block-columns.columns-8{
    --column: 8;
    grid-template-columns: repeat(var(--column), 1fr);
}
@media (max-width: 900px){
    .wp-block-columns.columns-4{
        --column: 3;
        grid-template-columns: repeat(var(--column), 1fr);
    }
    
}
@media (max-width: 600px){
    .wp-block-columns.columns-2{
        --column: 1;
        grid-template-columns: repeat(var(--column), 1fr);
    }
    .wp-block-columns.columns-3{
        --column: 2;
        grid-template-columns: repeat(var(--column), 1fr);
    }
    .wp-block-columns.columns-4{
        --column: 2;
        grid-template-columns: repeat(var(--column), 1fr);
    }

}




main .entry-content > .wp-block-heading:first-child,
main .entry-content > div:not(.keyvisual, .image_text_container):first-child{
    margin-top: 196px;
}

.keyvisual{
    position: relative;
    width: 100%;
    height: 100dvh;
    overflow: hidden;
    margin-bottom: 70px;
}
.keyvisual img, .keyvisual video{
    width: 100%;
    height: 100dvh;
    object-fit: cover;
    object-position: center center;
}
.keyvisual .btn{
    margin-bottom: 40px;
}
.keyvisual_content{
    position: absolute;
    display: flex;
    flex-direction: column;
    bottom: clamp(15%, 30vw, 30%);
    left: 0;
    padding: clamp(18px,10vw,58px) clamp(18px,10vw,58px) clamp(18px,10vw,58px) clamp(18px , 10vw, 200px);
    background-color: rgba(4, 0, 40, .3);
    backdrop-filter: blur(10px);
    color: var(--clr-white);
}
@media (pointer:coarse) {
    .keyvisual_content{
        position: absolute;
        display: flex;
        flex-direction: column;
        bottom: clamp(5%, 10vw, 40%);
        left: 0;
        padding: clamp(18px,10vw,58px) clamp(18px,10vw,58px) clamp(18px,10vw,58px) clamp(18px , 10vw, 200px);
        background-color: rgba(4, 0, 40, .3);
        backdrop-filter: blur(10px);
        color: var(--clr-white);
    }
}
.keyvisual::before{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 138px;
    background-image: linear-gradient(to top, #040028 30%, transparent);
}
.home .keyvisual{
    margin-bottom: 0;
}
.home .keyvisual_content{
    position: absolute;
    display: flex;
    flex-direction: column;
    bottom: clamp(5%, 10vw, 40%);
    left: 0;
    padding: clamp(18px,10vw,58px) clamp(18px,10vw,58px) clamp(18px,10vw,58px) clamp(18px , 10vw, 200px);
    background-color: transparent;
    backdrop-filter: blur(0);
    color: var(--clr-white);
}
.home .keyvisual_content::before{
    display: none;
}
.home .key-title{
    display: flex;
    flex-direction: column;
    bottom: clamp(30%, 1vw, 60%);
    left: 0;
    color: var(--clr-white);
}
.home .key-title .btn{
    color: var(--clr-green);
}

@media (max-width: 1100px){
    .keyvisual.imageFullSize{
        height: auto;
        margin-bottom: 0;
    }
    .keyvisual.imageFullSize img, .keyvisual.imageFullSize video {
        height: auto;
    }
    .keyvisual.imageFullSize .keyvisual_content {
        position: relative;
        display: flex;
        flex-direction: column;
        bottom: clamp(10%, 30vw, 30%);
        left: 0;
        padding: clamp(18px,10vw,58px) clamp(18px,10vw,58px) clamp(18px,10vw,58px) clamp(18px , 10vw, 200px);
        background-color: rgba(4, 0, 40, .3);
        backdrop-filter: blur(10px);
        color: var(--clr-white);
    }
    .keyvisual.imageFullSize::after {
        background-image: linear-gradient(to top, transparent 30%, transparent);
    }
}

/* START
-------------------------------------------------- */
/* ################# CONTAINER ###################### */
main .container{
    /* max-width: 964px; */
}

.entry-content,
.fullWidth{
    --contentMaxWidth: 1238px;
    --breakoutWidth: 45px;
    --padding: 18px; 
    
    position: relative;
    display: grid;
    grid-template-columns: [full-width-start] 1fr var(--padding) [content-start] minmax(1px ,var(--contentMaxWidth)) [content-end] var(--padding) 1fr [full-width-end];
    /* justify-items: center; */
}

.site-header .entry-content{
    --contentMaxWidth: 1345px;
}

.entry-content > .fullWidth{
    --padding: 0;
    grid-template-columns: [full-width-start] var(--padding) [content-start] 1fr [content-end] var(--padding) [full-width-end];
    width: 100%;
    max-width: 100%;
    grid-column: full-width;
    margin-inline: auto;
    
}
.entry-content > *,
.fullWidth > *{
    grid-column: content;
}
.entry-content > .breakout{
    display: grid;
    grid-column: breakout;
    grid-template-columns: [full-width-start] 1fr [breakout-start] var(--padding) [content-start] minmax(1px ,var(--contentMaxWidth)) [content-end] var(--padding) [breakout-end] 1fr [full-width-end];
}
.breakout > *{
    grid-column: content;
}

@media (max-width: 1000px){
    .entry-content{
        grid-template-columns: [full-width-start] 1fr var(--padding) [content-start] minmax(1px ,var(--contentMaxWidth)) [content-end] var(--padding) 1fr [full-width-end];
    }
    /* .entry-content > .fullWidth{
        grid-template-columns: var(--padding) 1fr var(--padding);
    } */
    /* .entry-content > .fullWidth > *{
        grid-column: 2;
    } */
}

.has-grey-background{
    background-color: var(--clr-gray);
    margin-top: 50px;
}
.has-grey-background > div{
    max-width: calc(980px + var(--padding) * 2);
    margin-inline: auto;
    padding-inline: var(--padding);
}

/* #################################################### */





/* CONTENT STYLES
-------------------------------------------------- */
main p a:hover{
    color: var(--clr-green);
}



.foundedby_container{
    z-index: 2;
    position: relative;
    width: 100%;
    max-height: 330px;
    margin-inline: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: clamp(30px, 10vw, 130px);
}
.foundedby_container::before{
    z-index: -1;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: clamp(10px, 15.5vw, 270px);
    background-color: var(--clr-white);
}
.foundedby{
    width: 100%;
    height: 100%;
    max-height: 330px;
    object-fit: contain;
    object-position: center center;
}
@media (max-width: 600px) {
    .foundedby_container{
        width: calc(100% + 360px);
        margin-left: -178px;
    }
    .foundedby_container::before{
        display: none;
    }
}


/* Image/Text Block Styles */
.image_text_container{
    container: imageTextContainer / inline-size;
    margin-bottom: 100px;
}
.image_text_left, .image_text_right, .image_text_bottom {
    display: flex;
    gap: 63px;
    margin-bottom: 40px;
}
.image_text_bottom.no_text {
    gap: 0;
}
.image_text_container.withBackground{
    background-color: rgba(0, 30, 255, .07);
    padding: 100px;
    backdrop-filter: blur(8px);
}
.image_text_container.withBackground .image_text_left,
.image_text_container.withBackground .image_text_right,
.image_text_container.withBackground .image_text_bottom {
    margin-bottom: 0;
}
.image_text_left {
    flex-direction: row;
}
.image_text_right {
    flex-direction: row-reverse;
}
.image_text_bottom {
    flex-direction: column-reverse;
}
[class*="image_text_"] > div{
    flex-basis: 50%; 
    height: fit-content;
}
[class*="image_text_"] .content .text{
    width: 100%;
    max-width: 527px;    
}
[class*="image_text_"] .content h2{
    margin-top: 0;
}
[class*="image_text_"] .content ul{
    margin-left: 15px;
}
[class*="image_text_"] .img_full img{
    max-width: 100%;
}
[class*="image_text_"] .img_full video{
    max-width: 100%;
}
[class*="image_text_"] img{
    width: 100%;
    height: 100%;
    max-width: 610px;
}
[class*="image_text_"] video{
    position: relative;
    height: 100%;
    width: 100%;
    max-width: 610px;
    /* max-height: 407px; */
}
[class*="image_text_"] .image_wrapper{
    display: flex;
    flex-direction: column;
    gap: 19px;
}
[class*="image_text_"] .content.chkmrk ul{
    margin-left: 0;
}
[class*="image_text_"] .content.chkmrk ul li{
    position: relative;
    margin-bottom: 10px;
    list-style: none;
    margin-left: 50px;
}
[class*="image_text_"] .content.chkmrk ul li::before{
    content: url(/wp-content/themes/wptheme/assets/img/chkmrk.svg);
    width: 30px;
    height: 30px;
    position: absolute;
    left: -50px;
}
[class*="image_text_"] .image_caption{
    font-size: 16px;
    font-weight: 300;
    color: var(--clr-white);
}
[class*="image_text_"] .btn{
    margin-top: 40px;
}
@media (max-width: 600px) {
    .image_text_container.withBackground{
        padding: 18px;
    }
}
@container imageTextContainer (max-width: 600px) {    
    .image_text_left, .image_text_right {
        flex-direction: column;
    }
}



/* Posts Swiper Styles */
.posts-swiper-container{
    display: flex;
    flex-direction: column;
    margin-bottom: 170px;
    width: 100%;
}
.posts-swiper{
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 70px;
}
.posts-swiper .card a:hover{
    color: inherit;
}
.posts-swiper .card a:hover h3{
    text-shadow: var(--textShadow);
}
.posts-swiper img{
    padding-bottom: 43px;
    filter: drop-shadow(0 0 25px #00a2ff4d);
    height: 235px;
    object-fit: cover;
    object-position: center center;
}
.posts-swiper .card-date{
    font-size: 14px;
    margin-bottom: 16px;
}
.posts-swiper h3{
    font-size: var(--fs-h3);
    font-weight: 700;
    text-shadow: none;
}
.btnPostsList{
    align-self: center;
}

.no-image{
    width: 100%;
    height: 235px;
    margin-bottom: 43px;
}
.postsList .list_container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(250px, 376px), 1fr));
    justify-items: center;
    gap: 80px;
    margin-bottom: 50px;
}
.postsList .list_container .card{
    width: 100%;
}
.postsList .list_container .card h3{
    text-shadow: none;
}
.postsList .list_container .card img{
    width: 100%;
    height: 235px;
    object-fit: cover;
    object-position: center center;
    margin-bottom: 43px;
}
.postsList .list_container .card .card-date{
    margin-bottom: 16px;
}
.postsList .card a:hover .card-date{
    color: white;
}
.postsList .card a:hover h3{
    text-shadow: var(--textShadow);
}






.template-single{
    margin-top: 200px;
    margin-bottom: 50px;
}
.template-single article > *{
    margin-inline: auto;
    width: 100%;
    max-width: 1090px;
}
.template-single article h1{
    font-size: clamp(30px, 5vw, 40px);
    font-weight: 600;
    max-width: 1090px;
    color: var(--clr-green);
    margin-bottom: 48px;
}
.template-single .post-thumbnail{
    margin-inline: auto;
    width: 100%;
    max-width: 1090px;
}
.template-single .post-thumbnail img{
    width: 100%;
    max-width: 500px;
    height: auto;
    display: block;
    margin-bottom: 50px;
}
.template-single .post-date{
    font-family: var(--ff-SpaceGrotesk);
    font-weight: 300;
    font-size: 16px;
    margin-bottom: 10px;
    color: var(--clr-white);
}







/* COOKIE BANNER
-------------------------------------------------- */
.cookie-notice{
    top: unset !important;
    left: unset !important;
    bottom: 10px !important;
    right: 10px !important;
    max-width: 500px !important;
    max-height: 250px;    
}
.klaro .cookie-notice:not(.cookie-modal-notice) {
  background-color: var(--clr-blue-dark) !important;
}
.klaro .cookie-modal .cm-btn, .klaro .context-notice .cm-btn, .klaro .cookie-notice .cm-btn {
    font-size: 14px !important;
    padding: 10px 20px !important;  
    width: fit-content !important;
    color: white !important;
    border-radius: 100vmax !important;
    cursor: pointer !important;
    border: 3px solid red !important;
    background-color: var(--clr-blue-dark) !important;
}
.klaro .cookie-modal .cm-btn:hover, .klaro .context-notice .cm-btn:hover, .klaro .cookie-notice .cm-btn:hover {
    color: var(--clr-blue-dark) !important;
    border: 3px solid red !important;
    background-color: red !important;
    box-shadow: 0 0 25px 0 red !important;
}
.klaro .cookie-modal .cm-modal .cm-footer-buttons {
    flex-wrap: wrap !important;
    justify-content: space-around !important;
    gap: 20px;
}
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body span{
    font-size: 14px;
    color: white !important;
}
.klaro .cookie-modal .cm-list-input:checked + .cm-list-label .slider, .klaro .context-notice .cm-list-input:checked + .cm-list-label .slider, .klaro .cookie-notice .cm-list-input:checked + .cm-list-label .slider {
    background-color: var(--clr-blue) !important;
}
.klaro .cookie-modal .cm-list-input.only-required + .cm-list-label .slider, .klaro .context-notice .cm-list-input.only-required + .cm-list-label .slider, .klaro .cookie-notice .cm-list-input.only-required + .cm-list-label .slider {
    background-color: var(--clr-blue) !important;
}
.klaro .cookie-modal a, .klaro .context-notice a, .klaro .cookie-notice a {
    color: var(--clr-blue) !important;
}
.klaro .cookie-modal .cm-btn.cm-btn-success, .klaro .context-notice .cm-btn.cm-btn-success, .klaro .cookie-notice .cm-btn.cm-btn-success {
    padding: 10px 30px !important;
    font-size: 18px !important;
    width: fit-content !important;
    color: #fff !important;
    border-radius: 100vmax !important;
    cursor: pointer !important;
    border: 4px solid var(--clr-green-darker) !important;
    background-color: var(--clr-blue-dark) !important;
    box-shadow: 0 0 25px 0 var(--clr-green) !important;
}
.klaro .cookie-modal .cm-btn.cm-btn-success:hover, .klaro .context-notice .cm-btn.cm-btn-success:hover, .klaro .cookie-notice .cm-btn.cm-btn-success:hover {
    color: var(--clr-blue-dark) !important;
    background-color: var(--clr-green) !important;
    border: 4px solid var(--clr-green) !important;
}

.klaro .cookie-modal .cm-modal.cm-klaro {
  background-color: var(--clr-blue-dark) !important;
}
.klaro .cookie-modal p, .klaro .cookie-modal strong, .klaro .cookie-modal h1, .klaro .cookie-modal h2, .klaro .cookie-modal ul, .klaro .cookie-modal li, .klaro .context-notice p, .klaro .context-notice strong, .klaro .context-notice h1, .klaro .context-notice h2, .klaro .context-notice ul, .klaro .context-notice li, .klaro .cookie-notice p, .klaro .cookie-notice strong, .klaro .cookie-notice h1, .klaro .cookie-notice h2, .klaro .cookie-notice ul, .klaro .cookie-notice li {
  color: #fff !important;
}
.klaro .cookie-modal a, .klaro .context-notice a, .klaro .cookie-notice a {
  color: white !important;
}
.klaro .cookie-modal .cm-list-label .slider, .klaro .context-notice .cm-list-label .slider, .klaro .cookie-notice .cm-list-label .slider {
  background-color: var(--clr-gray) !important;
}
.klaro .cookie-modal .cm-list-label .slider::before, .klaro .context-notice .cm-list-label .slider::before, .klaro .cookie-notice .cm-list-label .slider::before {
  background-color: var(--clr-blue-dark) !important;
}






footer{
    position: relative;
    overflow: hidden;
}
footer .footer-1{
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 20px 0;
    gap: 20px;
    
    & + div{
        display: flex;
        justify-content: space-between;
    }

    & .content{
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        flex-wrap: wrap;
        width: 100%;
        max-width: 650px;
        gap: 20px;
    }

    h4{
        margin-bottom: 56px;
    }
    & .site-branding{
        margin-bottom: 36px;
    }
    & .icons{
        display: flex;
        gap: 20px;
    }
    & .navigation p, .content p{
        line-height: 2;
    }
    & .address img{
        width: 100%;
        max-width: 179px;
        margin-top: 39px;
    }
}
footer::after{
    content: '';
    position: absolute;
    bottom: -60%;
    justify-self: center;
    width: 2000px;
    height: 500px;
    background: radial-gradient(#00A1FF 50%, transparent 50%);
    filter: blur(50px);
    opacity: .7;
    pointer-events: none;
}
footer > p{
    margin-top: 50px;
    color: var(--clr-white);
    margin-bottom: 60px;
}
footer a:hover{
    color: var(--clr-green);
}
.footer_bottom_line{
    display: flex;
    width: fit-content;
    font-size: 16px;
    gap: 10px;
    opacity: .43;
    margin-top: 50px;
    margin-bottom: 60px;
}




/* SPACES
-------------------------------------------------- */





/* RESPONSIVE
-------------------------------------------------- */
@media only screen and (min-width: 1600px) {

}
@media only screen and (max-width: 1400px) {

}
@media only screen and (max-width: 1280px) {

}
@media only screen and (max-width: 990px) {

}
@media only screen and (max-width: 768px) {

}
@media only screen and (max-width: 600px) {
    header{
        margin-top: 30px;
    }
    .menu {
        margin-top: -60px;
    }    
    .keyvisual .btn {
        margin-bottom: 20px;
    }
    .image_text_container {
        margin-bottom: 0;
    }
    .image_text_container.withBackground {
        margin-bottom: 20px;
    }
    .image_text_left, .image_text_right, .image_text_bottom {
        gap: 30px;
        margin-bottom: 80px;
    }
    .posts-swiper-container {
        margin-bottom: 80px;
    }
    .posts-swiper {
        margin-bottom: 0;
    }
    footer .footer-1 {
        & h4 {
            margin-bottom: 15px;
        }
        & + div {
            flex-direction: column;
        }
        & + div span{
            display: none;
        }
    }
    .disclaimer{
        padding: 20px !important;
    }
}











/* ADMINBAR */
#wpadminbar {
    position: relative;
}
@media only screen and (max-width: 600px){
    #wpadminbar {
        position: relative;
    }
}
@media screen {
    html {
        margin-top: 0 !important;
    }
}

@media screen and ( max-width: 782px ) {
    html {
        margin-top: 0 !important;
    }
}

@media print {
    #wpadminbar {
        display: none;
    }
}
