@charset "UTF-8";
/*
 * Styles for blocks also needed backend
 */
/**
 * ACF Block: Core Fullscreen Banner
 */
.core_fsb {
	overflow:hidden;
}
.core_fsb .container {
	padding-bottom: 160px;
    padding-top: 100px;
}
.core_fsb_overlay {
    width: 100%;
    height: calc(100% + 4em);
    position: absolute;
    top: -2em;
    bottom: -2em;
	z-index:0;
}
.core_fsb_bgimage {}
.core_fsb_bgimage img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
	top:0;
}
.core_fsb h1 {
  font-size: clamp(3rem, -6.0811rem + 18.9189vw, 5.625rem);
  line-height: 1.2em;
	text-shadow:0 1px 2px rgba(0, 0, 0, .5);
}
.core_fsb p {
  font-size: clamp(1.25rem, -0.2635rem + 3.1532vw, 1.6875rem);
  line-height: 2.7rem;
  font-weight: 300;
  margin-bottom: 30px;
}
.core_fsb_button {
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  font-size: 1.125rem;
  padding: 1em 3em;
  background-color: rgba(255, 255, 255, .3);
  border-radius: 200px;
  color: white; 
	display: inline-block;
    margin-bottom: 1em;
}
.core_fsb_button:hover, .core_fsb_button:focus {
  background-color: rgba(255, 255, 255, 1);
  color: #003b33;
}
@media only screen and (max-width: 780px) {
	.core_fsb .wp-block-columns .wp-block-column {
		width:100%;
	}
	.core_fsb .wp-block-columns .wp-block-column {
		justify-content:flex-start!important;
	}
	.core_fsb .wp-block-columns .wp-block-column:first-child {
		justify-content:flex-end!important;
	}
}
.acf-block-preview .core_fsb {
	margin-left:0!important;
	margin-right:0!important;
}


/**
 * Core Slick Slider
 */
.core-slick-slider {}
.core-slick-slider {}

.core-slick-slider .slick-slider {
	margin:0 -10px;
}
.core-slick-slider .slick-list {
  padding: 2em 0 0 0;
}
	.core-slick-slider .slick-track {
	  display: flex;
	}
		.core-slick-slider .slick-slide {
		  height: auto;
		  display: flex;
		}

@media only screen and ( max-width: 990px ) {
		.core-slick-slider .slick-list {
		  width:125vw;
		}
}
@media only screen and ( max-width: 10240px ) {
		.core-slick-slider .slick-slider {
		  padding-left:0;
			padding-right:0;
		}
}

.core-slick-slider button.slick-arrow {
	position:absolute;
	top: 0;
	width: 50px;
	height: 50px;
	margin-top: -50px;
	border: 1px solid #ccc;
	background-color: white;
	border-radius: 200px;
	transition: all .2s ease-in-out;
	color:var(--core-color-theme);
	font-size:1.2em;
}
	.core-slick-slider button.slick-arrow:before {
		display:inline-block;
	}
	.core-slick-slider button.slick-prev {
	  right: 80px;
	}
	.core-slick-slider button.slick-next {
	  right: 10px;
	}

	.core-slick-slider button:hover {
		color:white;
		background-color: var(--core-color-theme);
	}

.acf-block-preview .core-slick-slider .row {
	display:flex;
}
/**
 * Core Section Header
 **/


.core-section-header h1 {
    display: inline-block;
	margin:0;
	padding:0;
	padding-right:135px;
}
.core-section-header h1 a {
	position:relative;
    color: black;
    letter-spacing: 2px;
    text-transform: uppercase;
    align-self: center;
    margin-top: 0;
    margin-bottom: 0;
    font-family: var(--core-font-family-condensed);
    font-size: clamp(1.1rem, -2.0135rem + 6.4865vw, 2rem);
    font-weight: 400;
    line-height: 1.2em;
	padding:0;
	display:flex;
	align-items:center;
	background-color:none;
	
}

/**
 * ACF Block: Core Post Slider
 */
.core-ps {
	background-color:whitesmoke;
}
.core-ps .container {
	padding:70px 30px 0px 15px;
	margin-top:-100px;
	position:relative;
	z-index:999
}
.core-ps .container:before {
	content:'';
	width:100vw;
	position:absolute;
	right:0;
	top:0;
	height:100%;
	background-color:inherit;
}
.core-ps .card-column {
  height: 100%;
  padding: 0 15px;
  margin-bottom: 30px;
}
	.core-ps .card-column a {
	  text-decoration: none;
	  color: black;
	  font-size: 0.9375em;
	  display: block;
	  height: 100%;
		width:100%;
	}
	.core-ps .card-column a:focus {
	  outline-color: black;
	}

		.core-ps .card-column .card-wrapper {
		  height: 100%;
		  overflow: hidden;
		  background-color: white;
		  position: relative;
		  transition: all .2s ease-in-out;
		}
		.core-ps .card-column .card-header {
		  position: relative;
		  overflow: hidden;
		  background-color: black;
		  transition: all .2s ease-in-out;
		  border-radius: 10px;
			aspect-ratio: 436 / 246;
		}

			.core-ps .card-column img {
			  top: 0;
			  right: 0;
			  bottom: 0;
			  left: 0;
			  position: absolute;
			  object-fit: cover;
			  object-position: center;
			  transition: all .2s ease-in-out;
				width:auto;
				height:auto;
				min-width:100%;
				min-height:100%;
			}

	.core-ps .card-column a:hover img,
	.core-ps .card-column a:focus img{
			  opacity: 0.4;
			  transform: scale(1.04);
			  transition: all .5s ease-in-out;
	}
			.core-ps .card-column img:hover {
			}
			/* date wrap */
			.core-ps .card-column .date-image-wrapper {
			  position: absolute;
			  left: 0;
			  bottom: 0;
			  width: 100%;
			  height: 100%;
			  padding: 40px 40px 30px;
			  background-image: linear-gradient(10deg, rgba(0, 0, 0, 0.8) 17%, rgba(0, 0, 0, 0.2) 50%, transparent);
			  display: flex;
			  justify-content: flex-end;
			  flex-direction: column;
			}
			.core-ps .card-column .date-day {
			  color: white;
			  font-size: 1.875rem;
			  line-height: 40px;
			  font-weight: 300;
			  text-shadow: 1px 1px 6px rgba(0, 0, 0, 0.5);
			}
			.core-ps .card-column .date-span {
			  position: relative;
			  color: white;
			  top: -5px;
			}
			.core-ps .card-column .date-month {
			  color: white;
			  font-size: 1rem;
			  letter-spacing: 2px;
			  padding-left: 4px;
			  text-transform: uppercase;
			}

.core-ps .text-wrapper {
  padding: 2.5rem 1rem 0rem 0;
}
	.core-ps .text-wrapper p.meta {
		margin: 0;
		font-size: 15px;
		font-weight:700;
		line-height: 24px;
		letter-spacing: .5px;
		text-transform: uppercase;
		color:var(--core-color-theme)!important;
	}
		.core-ps .text-wrapper p.meta .meta-place{
			color:#666;
			font-weight:normal;
		}
			.core-ps .text-wrapper p.meta .meta-place .zmdi{
				display:none;
			}
	.core-ps .text-wrapper h1 {
		/*margin-bottom: 1rem;
		font-family: var(--core-font-family-condensed);
		font-size: 1.4rem;
		font-size: clamp(1rem, -2.0135rem + 6.4865vw, 1.4rem);
		line-height: 1.3;
		font-weight:normal; */
		
		margin: 0;
		font-size: 15px;
		font-weight:700;
		line-height: 24px;
		letter-spacing: .5px;
		text-transform: uppercase;
		color:var(--core-color-theme)!important;
	}

@media only screen and ( max-width: 990px ) {
	.core-ps .container {
	  padding-top:35px;
	}
	.core-ps .card-column {
		margin-bottom:0;
	}
}
/**
 * ACF Block: Core Content Slider
 **/
.core-cs {
	padding:70px 0;
	background-color:whitesmoke;
}
.core-cs .card-column {
  height: 100%;
  padding: 0 15px;
  margin-bottom: 30px;
}
	.core-cs .card-column a {
	  text-decoration: none;
	  color: black;
	  font-size: 0.9375em;
	  display: block;
	  height: 100%;
		width:100%;
	}
	.core-cs .card-column a:focus {
	  outline-color: black;
	}

		.core-cs .card-column .card-wrapper {
		  height: 100%;
		  overflow: hidden;
		  background-color: white;
		  position: relative;
		  transition: all .2s ease-in-out;
		}
		.core-cs .card-column .card-header {
		  position: relative;
		  overflow: hidden;
		  background-color: black;
		  transition: all .2s ease-in-out;
		  border-radius: 10px;
			aspect-ratio: 446 / 625;
		}
		.core-cs .card-column .card-header svg{
			position:absolute;
			right:20px;
			bottom:-30%;
			opacity:0;
			max-width:65%;
				transition: all 1s ease-in-out;
		}

			.core-cs .card-column img {
				top: 0;
				right: 0;
				bottom: 0;
				left: 0;
				position: absolute;
				object-fit: cover;
				object-position: center;
				transition: all 1s ease-in-out;
				width:auto;
				height:auto;
				min-width:100%;
				min-height:100%;
			}

			.core-cs .text-wrapper {
				width: 100%;
				height: 100%;
				background-image: linear-gradient(to top, rgba(0, 0, 0, .5) 10%, rgba(0, 0, 0, 0) 47%);
				align-items: flex-end;
				padding: 40px;
				transition: all .5s;
				display: flex;
				position: absolute;
				top: 0%;
				bottom: auto;
				left: 0%;
				right: auto;
			}
			.core-cs .text-wrapper .inner {
				flex: 1;
				transition: all 1s ease-in-out;
				transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
				transform-style: preserve-3d;
				position:absolute;
				padding: 40px;
				padding-top: 0;
				top: 100%;
				left:0;
			}
				.core-cs .text-wrapper p.meta {
					margin: 0;
					font-size: 15px;
					font-weight:700;
					line-height: 24px;
					letter-spacing: .5px;
					text-transform: uppercase;
					color:var(--core-color-theme)!important;
				}
					.core-cs .text-wrapper p.meta .meta-place{
						color:#666;
						font-weight:normal;
					}
						.core-cs .text-wrapper p.meta .meta-place .zmdi{
							display:none;
						}
				.core-cs .text-wrapper h1 {
					color: #fff;
					text-shadow: 0 1px 10px rgba(0, 0, 0, .5);
					margin-bottom: 0;
					font-size: clamp(1rem, -1.5946rem + 5.4054vw, 1.75rem);
					font-weight: 400;
					line-height: 28px;
				transform:translateY(0);
					transition: all 1s ease-in-out;
					will-change:auto;
					transform: translateY(calc(-100% - 40px))
				}
			.core-cs .text-wrapper .card-excerpt {
				color: #fff;
				text-shadow: 0 1px 6px rgba(0, 0, 0, .4);
				font-size: 1.1rem;
				opacity: 0;
				overflow:hidden;
				transition: all 1s ease-in-out;
				padding:0;
				top:100%;
				position:relative;
			}

			.core-cs a:hover .text-wrapper .card-excerpt {
				opacity: 1;
				transition: all 1s ease-in-out;
				top:0;
			}
			.core-cs a:hover .text-wrapper h1 {
				transform:translateY(0);
				transition: all 1s ease-in-out;
			}

			.core-cs .card-column a:hover img {
				opacity: 0.75;
				transform: scale(1.04);
				transition: all 1s ease-in-out;
			}
			.core-cs .card-column a:hover .text-wrapper .inner {
				transform: translate3d(0px, -100%, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
				transform-style: preserve-3d;
			}
			.core-cs .card-column a:hover .card-header svg{
				right:25px;
				bottom:-15%;
				opacity:.25;
				transition: all 1s ease-in-out;
			}

.acf-block-preview .core-cs .row {
	display:flex;
}
.acf-block-preview .core-cs .row .card-column {
	flex: auto;
}

@media only screen and ( max-width: 990px ) {
	.core-cs {
    	padding: 35px 0;
	}
}
/*
 * ACF Block: Core Custom News (core-grid)
 */
.core-grid {
	background-color:whitesmoke;
	padding-bottom:100px;
}
.core-grid .row {
	padding:70px 0;
	display: grid;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
	grid-template-rows: repeat(4, 1fr);
	grid-gap:20px;
}
.core-grid .row .card-column a {
	height:100%;
	display:block;
}
.core-grid .row .card-column .card-wrapper {
	height:100%;
	display:block;
	border-radius:10px;
	overflow:hidden;
}
.core-grid .row .card-column .card-wrapper .card-header {
	height:100%;
	display:block;
	position:relative;
}
.core-grid .row .card-column:first-child {
	grid-row: span 4;
	background-color:whitesmoke;
}
.core-grid .row .card-column:first-child .card-wrapper .card-header {
	position:relative;
}
.core-grid .row .card-column:first-child .card-wrapper .card-header img {
	
}
.core-grid .row .card-column:first-child .card-wrapper .text-wrapper {
z-index: 200;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(255, 255, 255, 0) 40%);
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    padding: 40px;
    display: flex;
    position: absolute;
    top: 0%;
    bottom: auto;
    left: 0%;
    right: auto;
}
.core-grid .row .card-column:first-child .card-wrapper .text-wrapper h1 {
	    color: white;
    font-family: var(--core-font-family-condensed);
    font-size: 2.1rem;
	font-size: clamp(1.4rem, -2.0595rem + 7.2072vw, 2.4rem);
    font-weight: 500;
    line-height: 2rem;
	margin:0;
	padding:0;
}
.core-grid .row .card-column:first-child .card-wrapper .text-wrapper .card-tag {
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    color: var(--primary);
    letter-spacing: 1px;
    text-transform: uppercase;
    border-radius: 200px;
    margin-bottom: 20px;
    padding: 4px 15px;
    font-size: .8rem;
	font-size: clamp(0.6rem, -0.0919rem + 1.4414vw, 0.8rem);
	display:inline-block;
}



.core-grid .row .card-column:nth-child(n+2) {
	grid-row: span 1;
}
.core-grid .row .card-column:nth-child(n+2) .card-wrapper {
	display:flex;
	background-color:white;
}
.core-grid .row .card-column:nth-child(n+2) .card-wrapper .card-header {
	width:30%;
}
.core-grid .row .card-column:nth-child(n+2) .card-wrapper .text-wrapper {
	width:70%;
	    flex: 1;
    align-self: center;
    padding: 20px 30px 20px 20px;
}
.core-grid .row .card-column:nth-child(n+2) .card-wrapper .text-wrapper .card-tag {
	letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 0;
	padding-bottom:.5em;
    font-size: .8rem;
	font-size: clamp(0.6rem, -0.0919rem + 1.4414vw, 0.8rem);
}
.core-grid .row .card-column:nth-child(n+2) .card-wrapper .text-wrapper .card-tag .card-tag-bullet {
	width:.75em;
	height:.75em;
	background-color:inherit;
	display:inline-block;
	border-radius:.75em;
	margin-right:.75em;
}
.core-grid .row .card-column:nth-child(n+2) .card-wrapper .text-wrapper h1{
	 padding:0;
	margin:0;
    font-family: var(--core-font-family-condensed);
    font-size: 1.4rem;
	font-size: clamp(1rem, -0.3838rem + 2.8829vw, 1.4rem);
    line-height: 1.3;
	font-weight:normal;
	color:var(--core-color-text);
}

.core-grid .row .card-column .card-wrapper .card-header {
	background-color:black;
	overflow:hidden;
}
.core-grid .row .card-column .card-wrapper .card-header img {
	min-width:100%;
	min-height:100%;
	object-fit:cover;
			  transition: all .5s ease-in-out;
	position:absolute;
}
.core-grid .row .card-column a:hover .card-wrapper .card-header img,
.core-grid .row .card-column a:focus .card-wrapper .card-header img {
			  opacity: 0.4;
			  transform: scale(1.04);
			  transition: all .5s ease-in-out;
}
.core-grid .core-grid-ctas a {
    border: 1px solid var(--core-color-theme);
    background-color: var(--core-color-theme);
    color: #fff;
    text-transform: none;
    border-radius: 200px;
    margin-bottom: 2rem;
    padding: 0.625rem 2.5rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.85rem;
    text-decoration: none;
    transition: all .3s;
    display: inline-block;
}
.core-grid .core-grid-ctas a:hover, .core-grid .core-grid-ctas a:focus {
    color: var(--core-color-theme);
    background-color: rgba(0, 0, 0, 0);
}
@media only screen and ( max-width: 990px ) {
	.core-grid {
		padding-bottom: 35px;
	}
	.core-grid .row {
		grid-template-columns: calc(100% - 10px);
		grid-template-rows: auto;
		padding: 35px 0;
	}
	.core-grid .row .card-column:first-child {
		grid-row: span 1;
		aspect-ratio: 3 / 2;
	}
}

/*
 * ACF Block: Core Entrances
 */
.core-entrances {
	background-color:whitesmoke;
}
.core-entrances .container{
	background-color:white;
	position:relative;
	margin-bottom:-160px;
	z-index:999;
}
.core-entrances .container:before{
	content:'';
	background-color:white;
	position:absolute;
	top:0;
	left:0;
	width:100vw;
	height:100%;
}
.core-entrances .row {
	position:relative;
	padding:0;
	display: flex;
	gap:20px;
}
.core-entrances .column {
	padding:80px 40px;
}
.core-entrances h1 {
    color: var(--primary-text-color);
    letter-spacing: 2px;
    text-transform: uppercase;
    align-self: center;
    margin-top: 0;
    margin-bottom: 0;
    font-family: var(--core-font-family-condensed);
    font-size: 2rem;
    font-weight: 400;
    line-height: 50px;
    display: inline-block;
}
.core-entrances a {
	
    border: 1px solid  var(--core-color-theme);
    background-color:  var(--core-color-theme);
    color: #fff;
    text-transform: none;
    border-radius: 200px;
    margin-bottom: 2rem;
    padding: 0.625rem 2.5rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.85rem;
    text-decoration: none;
    transition: all .3s;
    display: inline-block;
}
.core-entrances a:hover,
.core-entrances a:focus {
	color: var(--core-color-theme);
    background-color: rgba(0, 0, 0, 0);
}

.core-entrances .text-wrapper > *:last-child {
	margin-bottom:0;
}

@media only screen and ( max-width: 990px ) {
	
	.core-entrances .row {
		flex-wrap:wrap;
	}
	.core-entrances .column {
		width:100%;
		padding:35px 15px;
	}
}

/*
 * ACF Block: Core Numbers
 */
.core-numbers {
	margin-top:-160px;
	padding:320px 0 160px 0;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
	position:relative;
	color:white;
}
.core-numbers:before {
	content:'';
	position:absolute;
	z-index:9;
	top:0;
	width:100%;
	height:100%;
	background:linear-gradient(rgba(0, 59, 51, .4), rgba(0, 59, 51, .4)), linear-gradient(rgba(0, 0, 0, .4), rgba(0, 0, 0, .4));
}
.core-numbers .container {
	position:relative;
	z-index:9;
}
.core-numbers h1 {	
    letter-spacing: 2px;
    text-transform: uppercase;
    font-family: var(--core-font-family-condensed);
    font-size: 2rem;
    font-weight: 400;
    line-height: 2rem;
}
.core-numbers ul {
	padding:0;
	margin:0;
	list-style:none;
    min-height: 200px;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    background-color: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .4);
    display: flex;
}
.core-numbers li {
	margin:0;
	padding:0;
    border-right: 1px solid rgba(255, 255, 255, .4);
    flex: 0 25%;
    align-self: stretch;
    align-items: center;
    display: flex;
	text-align:center;
}
.core-numbers p {
	width:100%;
	padding:1em;
}
.core-numbers p .core-number-item {
	display:block;
    margin-bottom: 15px;
    font-size: 4rem;
	font-size: clamp(2.3rem, -3.5811rem + 12.2523vw, 4rem);
    line-height: 1em;
}
.core-numbers p .core-number-text {
    letter-spacing: 2px;
    text-transform: uppercase;
    font-family: var(--core-font-family);
    font-size: 1.1rem;
	font-size: clamp(0.8rem, -0.2378rem + 2.1622vw, 1.1rem);
    font-weight: 300;
}

@media only screen and ( max-width: 990px ) {
	.core-numbers {
		padding:240px 0 80px 0;
	}
}
@media only screen and ( max-width: 680px ) {
	
	.core-numbers ul {
		flex-wrap:wrap;
	}
	.core-numbers li {
		flex: 0 50%;
    	border-bottom: 1px solid rgba(255, 255, 255, .4);
	}
}

@media only screen and ( max-width: 480px ) {
	.core-numbers li {
		flex: 0 100%;
	}
}

/*
 * Animation button arrow
 */
.core-scene {
	float:left;
	display:inline-block;
	margin-right:1em;
  min-width: 50px;
  height: 50px;
  perspective: 600px;
	border-radius:200px;
	overflow:hidden;
  background: var(--core-color-theme);
}

.core-scene .cube {
  width: 100%;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  transform: rotateY(0deg);
}
a:hover .core-scene .cube {
  animation: rotate .65s ease-in-out;
}

.core-scene .cube div {
  position: absolute;
  width: 50px;
  height: 50px;
	line-height:50px;
	text-align:center;
	color:white;
	backface-visibility:hidden;
	font-size:.5em;
}

.core-scene .front {
  transform: translateZ(25px);
}

.core-scene .back { transform: rotateY(180deg) translateZ(25px); }
.core-scene .left { transform: rotateY(-90deg) translateZ(25px); }
.core-scene .right { transform: rotateY(90deg) translateZ(25px); }
.core-scene .top { transform: rotateX(90deg) translateZ(25px); }
.core-scene .bottom { transform: rotateX(-90deg) translateZ(25px); }

@keyframes rotate {
	0% { transform: rotateX(0deg) rotateY(0deg); }
	5% { transform: rotateX(0deg) rotateY(-10deg); }
	90% { transform: rotateX(0deg) rotateY(370deg);	}
	95% { transform: rotateX(0deg) rotateY(350deg);	}
	100% { transform: rotateX(0deg) rotateY(360deg); }
}

.core_fsb .core-scene {
	position: absolute;
    bottom: 120px;
    left: 0;
    right: 0;
    margin: auto;
    display: inline-block;
    width: auto;
    width: 20px;
    z-index: 99999999999;
    transform: rotate(90deg);
	font-size:3em;
	background-color:transparent!important;
}
.core_fsb .core-scene .cube {
  animation: rotate .65s ease-in-out;
  animation-duration: 4s;
  animation-iteration-count: infinite;
}