@charset "UTF-8";

@import url("reset.css");
@import url("fonts.css");
@import url("swiper-bundle.min.css");


:root{

	--app-height: 100vh;
	--headroom-height: auto;


	--c0: #FFFFFF; 
	--c1: #3D3D3D;
	--c2: #F1E8DB;
	--c3: #D7BF9D;
	--c4: #10111C;
	--c5: #100F0F;

	--c6: #0C3351; 
	--c7: #F7EDDB; 
	--c8: #001E35; 
	--c9: #F5F5F5; 
	--c10: #ECECEB; 
	--c11: #A28B6A; 
	--c12: #E02424; 
	--c13: #CEDEF0; 


	--wr: 25rem;
	--awr: calc(-1 * var(--wr));

	--iwr: 65rem;

	--gap: 10rem;
	--sl: max(1px, 1rem);

	--br1: 4rem;


	--f-xs: max(14px, 14rem);
	--f-s: max(14px, 16rem);
	--f-d: max(14px, 18rem);
	--f-m: max(14px, 22rem);
	--f-b: max(14px, 24rem);
	--f-l: max(14px, 32rem);
	--f-xl: max(14px, 46rem);
	--f-xxl: max(14px, 56rem);
	--f-xxxl: max(14px, 64rem);
	--f-xxxxl: max(14px, 80rem);
	--f-xxxxxl: max(14px, 285rem);

	--mw: 4000px; 

	--swiper-pagination-bottom: 60rem;
	--swiper-pagination-bullet-horizontal-gap: 0;
	--swiper-pagination-bullet-width: 40rem;
	--swiper-pagination-bullet-height: 40rem;
	--swiper-pagination-bullet-inactive: .6;
	--swiper-pagination-bullet-inactive-color: var(--c9);
	--swiper-pagination-color: var(--c9);
	--swiper-scrollbar-drag-bg-color: var(--c6);

	--map-width: 1871;
	--map-height: 1425;

}

@keyframes music {

	to {
		transform: scaleY(1);
	}

}

/* globals */

@media screen {

	html{font-size: 0.052vw;background-color: var(--c0);}

	.document{font-weight: 400;font-family: 'DM Sans', sans-serif;font-size: var(--f-d);line-height: 1.25;color: var(--c1);background-color: var(--c0);letter-spacing: -.03em;}

	.popup-active{}

	.wrapper{width: 100%;margin: 0 auto;padding: 0 var(--wr);max-width: var(--mw);}

	.preloader{background-color: var(--c0);position: fixed;top: 0;left: 0;right: 0;bottom: 0;z-index: 9999;visibility: hidden;opacity: 0;transition: all .25s 1s;display: flex;color: var(--c1);will-change: transform;}

	.loading{pointer-events: none;}
	.loading .preloader{transition-duration: 0s;opacity: 1;visibility: visible;}

	.icon{display: flex;max-height: 100%;align-items:center;justify-content:center;line-height: 0;max-width: 100%;width: auto;height: auto;}
	.cover,
	.contain{position: absolute;top: 0;left: 0;width: 100%;height: 100%;object-position: center;pointer-events: none;}
	.cover{object-fit: cover;}
	.contain{object-fit: contain;}
	.fill::after{content: "";position: absolute;top: 0;left: 0;right: 0;bottom: 0;z-index: 1;}

	.button{display: inline-flex;justify-content: center;max-width: 100%;user-select: none;cursor: pointer;align-items: center;z-index: 1;padding: 0 35rem;height: max(50px, 55rem);position: relative;border-radius: var(--br1);background-clip: padding-box;border: var(--sl) solid;}
	.button:not(.fill){overflow: hidden;}
	.button-text{overflow: hidden;text-overflow: ellipsis;white-space: nowrap;text-align: center;position: relative;z-index: 2;min-width: 0;padding: 0 .1em;}

	.button__default{background-color: var(--c8);border-color: var(--c8);color: var(--c0);}
	.button__secondary{color: var(--c10);}
	.button__default-contrast{background-color: var(--c10);border-color: var(--c10);color: var(--c1);}

	.button__wide{width: 100%;}

	.title{line-height: 1.15;font-weight: 500;letter-spacing: -.04em;width: 100%;}
	.title__small{font-size: var(--f-xl);}
	.title__default{font-size: var(--f-xxxl);}
	.title__large{font-size: var(--f-xxxxl);}
	.title__xlarge{font-size: var(--f-xxxxxl);}

	.title b{opacity: .5;font-weight: inherit;}

	.mask-appear{position: relative;display: inline-block;}
	.mask-appear-wrapper{display: block;position: relative;overflow: hidden;white-space: nowrap;z-index: 1;}
	.mask-appear-inner{display: block;transition: transform 1s 0s;will-change: transform;}

	.mask-appear.hidden .mask-appear-inner{transform: translateY(100%);transition: all 0s 0s;} 


	.crop-appear .s0-1,
	.crop-appear .s5-1,
	.crop-appear .s11-3{transition: clip-path 1s;clip-path: inset(0%);} 
	.crop-appear.hidden .s0-1,
	.crop-appear.hidden .s5-1,
	.crop-appear.hidden .s11-3{transition-duration: 0s;clip-path: inset(3%);}

	.fade-appear{transition: opacity .5s 1s;} 
	.fade-appear.hidden{opacity: 0!important;transition: all 0s 0s;}

	.container{display: flex;flex-direction: column;min-height: var(--app-height);padding: var(--wr) 0;}

	.topbar{display: grid;grid-template-columns: 1fr auto 1fr;grid-gap: 20rem 100rem;align-items: flex-start;}
	.topbar-logo{width: 120rem;}
	.topbar-nav{display: flex;align-items: flex-start;position: relative;}
	.topbar-nav__right{margin-left: auto;}
	.topbar-nav ul{display: grid;grid-auto-flow: column;grid-gap: 40rem;}
	.topbar-nav .current{cursor: default;}
	.topbar-sound-control{grid-column: 1/-1;display: flex;align-items: center;justify-content: center;}
	.topbar-sound-button{display: flex;align-items: center;justify-content: space-between;width: max(29px, 29rem);height: max(20px, 25rem);cursor: pointer;position: relative;}

	.topbar-sound-disabled{position: absolute;width: 100%;top: 0;left: 0;height: max(2px, 2rem);z-index: 1;pointer-events: none;}

	.topbar-sound-bar{background-color: currentColor;width: max(2px, 2rem);flex: none;height: 100%;animation: music 1.5s linear infinite alternate-reverse;animation-play-state: running;}
	.topbar-sound-bar:nth-child(1){transform: scaleY(calc(6/20));height: 20rem;}
	.topbar-sound-bar:nth-child(2){transform: scaleY(calc(15/12));height: 12rem;opacity: .7;}
	.topbar-sound-bar:nth-child(3){transform: scaleY(calc(16/7));height: 7rem;opacity: .7;}
	.topbar-sound-bar:nth-child(4){transform: scaleY(calc(8/22));height: 22rem;}
	.topbar-sound-bar:nth-child(5){transform: scaleY(calc(7/12));height: 12rem;opacity: .7;}
	.topbar-sound-bar:nth-child(6){transform: scaleY(calc(17/9));height: 9rem;opacity: .7;}
	.topbar-sound-bar:nth-child(7){transform: scaleY(calc(9/15));height: 15rem;}
	.topbar-sound-bar:nth-child(8){transform: scaleY(calc(9/5));height: 5rem;opacity: .7;}
	.topbar-sound-bar:nth-child(9){transform: scaleY(calc(20/14));height: 14rem;}
	.topbar-sound-bar:nth-child(10){transform: scaleY(calc(8/16));height: 16rem;}


	.topbar-nav-runner{position: absolute;left: 0;top: 100%;width: 1rem;height: 1rem;display: flex;align-items: center;justify-content: center;margin-top: 10rem;opacity: 0;transition-duration: 0s;}
	.topbar-nav-runner.active{transition: all .5s;opacity: 1;}
	.topbar-nav-runner:not(.active){display: none;}
	.topbar-nav-runner::after{content: "";width: max(5px, 6rem);height: max(5px, 6rem);border-radius: 50%;flex: none;background-color: var(--c0);}

	.main{margin-top: 0;flex: auto;display: flex;flex-direction: column;}

	.section{position: relative;z-index: 1;overflow: hidden;margin-bottom: 160rem;}
	.section:first-child{z-index: 2;}
	.section:last-child{margin-bottom: 0;}
	.section:only-child{flex: auto;}

	.sm-0{margin-bottom: 0;}
	.sm-1{margin-bottom: var(--wr);}

	.section-header{display: flex;flex-direction: column;}
	.section-header .pretitle{max-width: 360rem;opacity: .6;font-size: var(--f-b);}
	.section-header .pretitle:not(:last-child){margin-bottom: 15rem;}
	.section-header .title{max-width: 640rem;}
	.section-header .subtitle{max-width: 360rem;}
	.section-header .subtitle:not(:first-child){margin-top: 25rem;}
	.section-header .action{display: inline-grid;grid-auto-flow: column;grid-gap: 15rem;margin-top: 35rem;}
	.section-header .action-button{overflow: hidden;}

	.footer{overflow: hidden;margin-top: var(--wr);}
	.footer-grid{background-color: var(--c6);color: var(--c0);padding: 50rem var(--iwr) 55rem;border-radius: var(--br1);display: grid;grid-template-columns: 1fr 1fr;grid-gap: 20rem var(--gap);}
	.f1-1{font-size: var(--f-l);}
	.f1-2{margin-top: 5rem;color: var(--c10);}
	.f1-3{margin-top: 75rem;}
	.f2{display: grid;grid-template-columns: 1fr 1fr;grid-gap: 50rem;}
	.f2-1-1{margin-bottom: 20rem;font-size: var(--f-b);font-weight: 500;}
	.f2-1-1::after{content: "";width: 100%;height: var(--sl);background-color: currentColor;opacity: .2;display: block;line-height: 1;margin-top: 5rem;}
	.f2-1-2{
		max-width: 200rem;    
		z-index: 3;
		position: relative;
	}
	.f2-1-2:not(:first-child){margin-top: 1em;}
	.f2-1-2 ul{display: grid;grid-template-columns: auto;grid-gap: 5rem;}
	.f3{color: var(--c7);}
	.f4{/*margin-top: auto;margin-left: auto;*/ display:flex;}
	.f4-1 img {width: 100%;max-width: 80px;object-fit: contain;}
	.f4-1 {display: flex;gap: 2em;}
	.f4 ul{display: grid;grid-auto-flow: column;grid-gap: 15rem;}

	.footer-form{display: flex;align-items: center;border-bottom: var(--sl) solid;max-width: 485rem;}
	.footer-form-input{flex: auto;overflow: hidden;text-overflow: ellipsis;padding: 15rem 0;}
	.footer-form-button{flex: none;padding: 0 20rem;display: flex;align-items: center;justify-content: center;width: max(60px, 65rem);height: 30rem;}

	.bottombar{margin-top: 15rem;display: grid;grid-template-columns: repeat(4, 1fr);grid-gap: var(--gap);color: rgba(12, 51, 81, .6);align-items: baseline;}
	.bottombar-copyright{grid-column: 1/3;}
	.bottombar-author{margin-right: auto;display: flex;align-items: baseline;}
	.bottombar-policy{/*margin-left: auto;*/}

	.dd-icon{width: 1em;height: 1.2em;margin: 0 .3em;color: var(--c6);opacity: 1;display: inline-flex;align-items: center;justify-content: center;}
	.dd-icon .icon{width: 100%;}

	.textbox{max-width: 910rem;}
	.textbox h2{margin: 55rem 0 35rem;font-size: var(--f-l);font-weight: 500;}
	.textbox h2:first-child{margin-top: 0;}
	.textbox h3{margin: 35rem 0 20rem;font-size: var(--f-b);font-weight: 500;}
	.textbox h3:first-child{margin-top: 0;}
	.textbox ul{display: grid;grid-template-columns: auto;grid-gap: 0;}
	.textbox ul:not(:first-child){margin-top: .75em;}
	.textbox ul li{padding-left: 2em;position: relative;}
	.textbox ul li::before{content: "\2022";position: absolute;left: 0;top: 0;text-align: center;width: 2em;}

	.map-button{display: inline-flex;flex-direction: column;padding: 20rem;border: var(--sl) solid;border-radius: 50%;align-items: center;justify-content: center;aspect-ratio: 1/1;background-color: rgba(217, 217, 217, .1);}
	.map-button-icon{display: flex;align-items: center;justify-content: center;width: max(20px, 25rem);height: max(20px, 25rem);}
	.map-button-text{text-transform: capitalize;text-align: center;}

	.carousel-button{position: absolute;z-index: 1;cursor: pointer;top: 50%;transform: translateY(-50%);width: max(60px, 65rem);height: max(80px, 85rem);display: flex;align-items: center;justify-content: center;padding: 20rem;color: var(--c0);}
	.carousel-button::before{content: "";position: absolute;left: 0;top: 0;width: 100%;height: 100%;z-index: -1;background-color: var(--c10);opacity: .2;}
	.carousel-button__prev{left: 0;}
	.carousel-button__next{right: 0;}

	.carousel-dots{position: absolute;left: 0;width: 100%;z-index: 1;display: flex;justify-content: center;}
	.carousel-dots .swiper-pagination-bullet{position: relative;padding: 15rem;background-clip: content-box;}
	.carousel-dots .swiper-pagination-bullet::after{content: "";position: absolute;top: 0;width: 100%;height: 100%;left: 0;z-index: 1;border-radius: 50%;border: var(--sl) solid var(--swiper-pagination-color);will-change: transform;transition: transform .15s;}
	.carousel-dots .swiper-pagination-bullet:not(.swiper-pagination-bullet-active)::after{transform: scale(0);}
	.carousel-dots .swiper-pagination-bullet-active{pointer-events: none;}

	.carousel-scrollbar{height: 3rem;background-color: rgba(12, 51, 81, .1);}
	.carousel-scrollbar .swiper-scrollbar-drag{cursor: grab;}
	.carousel-scrollbar .swiper-scrollbar-drag:active{cursor: grabbing;}

	.expand-list{display: grid;grid-template-columns: auto;grid-gap: 25rem;counter-reset: index;}
	.expand{user-select: none;}
	.expand::after{content: "";display: block;height: var(--sl);background-color: currentColor;opacity: .2;margin-top: 25rem;width: 100%;line-height: 1;}
	.expand-header{display: grid;grid-template-columns: auto 1fr auto;align-items: baseline;grid-gap: 15rem;cursor: pointer;}
	.expand-header::before{content: counter(index, decimal-leading-zero);counter-increment: index;width: 60rem;font-size: var(--f-s);opacity: .3;color: var(--c4);}
	.expand-header-title{font-size: var(--f-l);line-height: 1;font-weight: 500;}
	.expand-header-icon{width: max(30px, 32rem);height: var(--f-l);display: flex;align-items: center;justify-content: center;will-change: transform;align-self: flex-start;}
	.expand-content{width: 100%;max-width: 940rem;height: 0;overflow: hidden;opacity: 0;transition: all .5s;margin-left: 75rem;}

	.expand.active .expand-header-icon{transform: scaleY(-1);}
	.expand.active .expand-content{padding-top: 20rem;height: auto;opacity: 1;}

	.feedback-wrapper{display: grid;grid-template-columns: 1fr 1fr;grid-gap: var(--gap);}
	.feedback-container{grid-column: 2/3;width: 100%;max-width: 600rem;background-color: var(--c0);color: var(--c1);padding: 45rem;border-radius: var(--br1);position: relative;}
	.feedback{width: 100%;position: relative;}
	.feedback-caption{max-width: 400rem;}
	.feedback-form{margin-top: 35rem;}

	.feedback-success{position: absolute;top: 0;left: 0;display: flex;align-items: center;height: 100%;width: 100%;visibility: hidden;pointer-events: none;background-color: var(--c0);z-index: 1;}

	.feedback-container.success .feedback{pointer-events: none;}
	.feedback-container.success .feedback-success{visibility: visible;}

	.formbox{display: grid;grid-template-columns: auto;grid-gap: 10rem;}

	.textfield-input{width: 100%;border: var(--sl) solid rgba(0, 30, 53, .1);border-radius: var(--br1);padding: 15rem 20rem;resize: none;transition: border-bottom-color .15s;}
	.textfield-input:focus{border-bottom-color: var(--c6);}
	.textfield-input:invalid:not(:placeholder-shown):not(:focus){color: var(--c12);}

	.popup{position: fixed;top: 0;left: 0;width: 100%;height: 100%;z-index: 999;padding: var(--wr);display: flex;overflow: auto;flex-direction: column;opacity: 0;visibility: hidden;background-color: var(--c0);}
	.popup.active{visibility: visible;opacity: 1;}

}

/* cards */

@media screen {

	.card{position: relative;overflow: hidden;display: flex;min-height: 100%;flex-direction: column;user-select: none;}

	.card-1{border-radius: var(--br1);}
	.card-1 .card-content{position: relative;z-index: 1;display: flex;align-items: flex-end;/*background-image: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,.65));*/color: var(--c0);}
	.card-1 .card-content::before{content: "";flex: none;width: 0;padding-top: 100%;}
	.card-1 .card-media{position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
	.card-1 .card-title{padding: 40rem 50rem;font-size: var(--f-b);display: flex;align-items: center;}
	.card-1 .card-title::before{content: "";margin-right: 15rem;width: 1em;height: var(--sl);background-color: currentColor;}

	.card-2{border-radius: var(--br1);}
	.card-2 .card-content{position: relative;z-index: 1;display: flex;align-items: flex-end;background-image: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,.65));color: var(--c0);}
	.card-2 .card-content::before{content: "";flex: none;width: 0;padding-top: 50%;}
	.card-2 .card-media{position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
	.card-2 .card-title{padding: 40rem 50rem;font-size: var(--f-b);display: flex;align-items: center;}
	.card-2 .card-title::before{content: "";margin-right: 15rem;width: 1em;height: var(--sl);background-color: currentColor;}

	.card-3{border-radius: var(--br1);background-color: var(--c0);padding: 25rem;display: grid;grid-template-columns: 1fr 1fr;grid-gap: 15rem;box-shadow: 0 18rem 45rem 0 rgba(0,0,0,.09);}
	.card-3 .card-header{border-radius: var(--br1);background-color: var(--c9);display: flex;overflow: hidden;position: relative;max-height: 280rem;}
	.card-3 .card-header::before{content: "";flex: none;width: 0;padding-top: 100%;}
	.card-3 .card-media{position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
	.card-3 .card-content{display: flex;flex-direction: column;}
	.card-3 .card-title{font-size: var(--f-m);}
	.card-3 .card-subtitle{margin-top: 10rem;opacity: .6;font-size: var(--f-xs);}
	.card-3 .card-info{padding-top: 25rem;margin-top: auto;display: grid;grid-template-columns: auto;grid-gap: 10rem;}
	.card-3 .card-info-row{display: flex;justify-content: space-between;flex-wrap: wrap;}
	.card-3 .card-info-row::after{content: "";display: block;height: var(--sl);background-color: currentColor;opacity: .1;width: 100%;line-height: 1;margin-top: 10rem;}
	.card-3 .card-info-title{margin-right: 15rem;}
	.card-3 .card-info-value{}


}

/* sections */

@media screen {


	.s0-1{background-color: var(--c6);color: var(--c9);border-radius: var(--br1);overflow: hidden;position: relative;display: flex;min-height: calc(var(--app-height) - 2 * var(--wr));}
	.s0-1::before{content: "";flex: none;width: 0;padding-top: 45%;}
	.s0-2{display: flex;flex-direction: column;width: 100%;position: relative;z-index: 1;padding: 30rem var(--iwr) var(--iwr);}
	.s0-3:not(:last-child){margin-bottom: 60rem;}
	.s0-4{padding: 50rem 0;width: 100%;margin: auto;}
	.s0-5{margin-top: 60rem;}
	.s0-6::after{content: "";position: absolute;top: 0;left: 0;width: 100%;height: 100%;background-image: radial-gradient(rgba(0,0,0,.35), rgba(0,0,0,0));}


	.s1-1{background-color: var(--c6);color: var(--c0);border-radius: var(--br1);padding: 30rem var(--iwr) 160rem;overflow: hidden;position: relative;}
	.s1-2:not(:last-child){margin-bottom: 200rem;}
	.s1-3{display: grid;grid-template-columns: repeat(4, 1fr);grid-gap: 0 var(--gap);}
	.s1-4{grid-column: 1/-1;}
	.s1-5{grid-column: 2/5;padding-left: 200rem;}

	.s2-2{display: grid;grid-template-columns: repeat(3, 1fr);grid-gap: var(--gap);}
	.s2-2:not(:first-child){margin-top: 50rem;}

	.s3:last-child{margin-bottom: 70rem;}
	.s3-4{position: relative;width: 100%;}
	.s3-5-1{max-width: 550rem;}

	.s4-1{border-radius: var(--br1);padding: 140rem var(--iwr) 100rem;overflow: hidden;position: relative;}
	.s4-2{position: relative;z-index: 1;}

	.s5-1{background-color: var(--c6);color: var(--c10);border-radius: var(--br1);overflow: hidden;position: relative;display: flex;}
	.s5-1::before{content: "";flex: none;width: 0;padding-top: 50%;}
	.s5-2{display: flex;flex-direction: column;width: 100%;position: relative;z-index: 1;padding: 250rem var(--iwr);}
	.s5-4::after{content: "";position: absolute;top: 0;left: 0;width: 100%;height: 100%;background-image: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), radial-gradient(rgba(0, 0, 0, .35), rgba(0, 0, 0, 0));}

	.s6-2{border-radius: var(--br1);overflow: hidden;}
	.s6-2:not(:first-child){margin-top: 50rem;}
	.s6-2 .swiper-slide{position: relative;display: flex;}
	.s6-2 .swiper-slide::before{content: "";flex: none;width: 0;padding-top: 56.25%;}

	.s7-2:not(:first-child){margin-top: 80rem;}

	.s8-2{display: grid;grid-template-columns: repeat(3, 1fr);grid-gap: 60rem 150rem;}
	.s8-2:not(:first-child){margin-top: 60rem;}
	.s8-3{display: grid;grid-template-columns: auto;grid-gap: 35rem;}
	.s8-3,
	.s8-4{grid-column: 2/4;}
	.s8-5{position: relative;user-select: none;}
	.s8-5::after{content: "";display: block;height: var(--sl);background-color: currentColor;opacity: .2;margin-top: 5rem;width: 100%;line-height: 1;}
	.s8-5-1{position: absolute;right: 100%;width: 100%;max-width: 550rem;display: flex;opacity: 0;transition: all .15s;transform: translateY(-50%);visibility: hidden;border-radius: var(--br1);margin-right: 25rem;overflow: hidden;top: 100%;}
	.s8-5-1::before{content: "";flex: none;width: 0;padding-top: 65%;}
	.s8-5-2{font-size: var(--f-l);max-width: 1015rem;padding-left: 1em;position: relative;}
	.s8-5-2::before{content: "\2022";position: absolute;left: 0;top: 0;text-align: left;width: 1em;color: var(--c11);}

	.s9-2:not(:first-child){margin-top: 30rem;}
	.s9-2::before,
	.s9-2::after{content: "";display: block;height: var(--sl);background-color: currentColor;opacity: .2;width: 100%;line-height: 1;}
	.s9-3{padding: 55rem 0;}
	.s9-3 .swiper{overflow: visible;}
	.s9-3 .swiper-wrapper{transition-timing-function: linear !important;}
	.s9-3 .swiper-slide{padding: 0 50rem;display: flex;max-width: 300rem;height: auto;justify-content: center;align-items: center;}

	.s10-2{margin-top: 60rem;}
	.s10-3{margin: 0 calc(var(--gap) / -2);}
	.s10-3 .swiper{overflow: visible;width: 100%;}
	.s10-3 .swiper-slide{padding: 0 calc(var(--gap) / 2);}
	.s10-4{margin-top: 60rem;}

	.s11-2{margin-top: 75rem;/*display: flex;*/ display: grid; grid-template-columns: repeat(9, 1fr); }
	@media (min-width: 1023.98px) {
		.s11-4:nth-child(9n + 1)::before {
			content: none;
		}
	}
	.s11-3{margin-top: 40rem;overflow: hidden;border-radius: var(--br1);}
	.s11-4{display: flex;flex-direction: column;align-items: center;flex: 1;text-align: center;padding: 25rem 20rem;position: relative;}
	.s11-4-1{width: 64rem;height: 64rem;margin-bottom: 20rem;position: relative;}
	.s11-4-2{font-size: var(--f-s);}

	.s12-1{display: grid;grid-template-columns: repeat(4, 1fr);grid-gap: 0 40rem;}
	.s12-2{border-radius: var(--br1);overflow: hidden;}
	.s12-5{display: grid;grid-template-columns: 1.2fr 1fr;grid-gap: 40rem;align-items: flex-start;}
	.s12-5-1,
	.s12-5-2{border-radius: var(--br1);overflow: hidden;}

	.s13-1{padding: 50rem 0;}
	.s13-2{width: 100%;max-width: 1210rem;text-align: center;margin: 0 auto;}

}

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

	:root{

		--f-xs: 12rem;
		--f-s: 14rem;
		--f-d: 16rem;
		--f-m: 18rem;
		--f-b: 20rem;
		--f-l: 24rem;
		--f-xl: 28rem;
		--f-xxl: 34rem;
		--f-xxxl: 28rem;
		--f-xxxxl: 40rem;
		--f-xxxxxl: 160rem;

		--gap: 8rem;

		--wr: 10rem;
		--iwr: 16rem;

		--swiper-pagination-bottom: 20rem;
		--swiper-pagination-bullet-width: 24rem;
		--swiper-pagination-bullet-height: 24rem;

	}

	html{font-size: 1px;}

	.desktop{display: none!important;}

	.button{width: 100%;padding: 0 25rem;}

	.title br{}

	.mask-appear{min-width: 100%!important;}

	.topbar{grid-gap: 0 20rem;align-items: center;}
	.topbar-nav{display: none;}
	.topbar-sound-control{grid-column: auto;order: -1;align-items: flex-start;justify-content: flex-start;}
	.topbar-menu{margin-left: auto;}
	.topbar-logo{width: 80rem;}

	.header{height: var(--headroom-height);}

	/*
	.header.init .topbar-fixed{position: fixed;z-index: 10;background-color: rgba(0,0,0,0);border-radius: var(--br1);left: 0;right: 0;top: var(--wr);margin: 0 var(--wr);padding: var(--iwr);transition: background-color .15s;}
	.header.active .topbar-fixed{background-color: var(--c8);}
	*/

	.map-button{padding: 8rem;}
	.map-button-icon{width: 15rem;height: 15rem;}
	.map-button-text{font-size: 10rem;}

	.section{margin-bottom: 85rem;}

	.section-header{text-align: left;align-items: flex-start;}
	.section-header .pretitle{font-size: var(--f-m);}
	.section-header .pretitle:not(:last-child){margin-bottom: 10rem;}
	.section-header .title__default{font-size: var(--f-xxl);}
	.section-header .subtitle:not(:first-child){margin-top: 10rem;}
	.section-header .action{margin-top: 20rem;width: 100%;grid-auto-flow: row;grid-gap: var(--gap);}

	.footer-grid{padding: 70rem var(--iwr) var(--iwr);grid-template-columns: auto;grid-gap: 0;}
	.f1-3{margin-top: 15rem;}
	.f2{grid-template-columns: auto;grid-gap: 35rem;margin-top: 55rem;}
	.f2-1-1{max-width: 180rem;margin-bottom: 15rem;}
	.f3{order: 1;margin: 65rem auto 0 0;overflow: hidden;}
	.f3 .title{font-size: var(--f-xxxxl);}
	.f4{margin-top: 15rem;margin-left: 0;}
	.f4 ul{grid-auto-flow: row;grid-gap: 5rem;}

	.footer-form-input{padding: 10rem 0;}
	.footer-form-button{width: 20rem;padding: 0;margin-left: 10rem;}

	.bottombar{margin-top: 10rem;grid-template-columns: auto;grid-gap: 0;font-size: var(--f-s);}
	.bottombar-copyright{grid-column: 1/-1;margin-top: 15rem;}
	.bottombar-policy{order: -1;margin-left: 0;}
	.bottombar-author{margin-top: 25rem;}

	.textbox h2{margin: 25rem 0 15rem;}
	.textbox h3{margin: 20rem 0 15rem;}

	.feedback-wrapper{grid-template-columns: auto;}
	.feedback-container{grid-column: 1/-1;padding: 25rem;}
	.feedback-form{margin-top: 25rem;}

	.carousel-button{display: none;}
	.carousel-dots .swiper-pagination-bullet{padding: 9rem;}

	.expand-list{grid-gap: 15rem;}
	.expand::after{margin-top: 10rem;}
	.expand-header{grid-gap: 10rem;}
	.expand-header::before{width: 20rem;}
	.expand-header-title{font-size: var(--f-m);}
	.expand-header-icon{width: 24rem;height: var(--f-m);}
	.expand-content{margin-left: 0;}

	.card-1 .card-title,
	.card-2 .card-title{font-size: var(--f-m);padding: var(--iwr);}

	.card-2 .card-content::before{padding-top: 100%;}

	.card-3{padding: 15rem;grid-template-columns: 1.4fr 1.6fr;grid-gap: 10rem;box-shadow: 0 0 var(--wr) 0 rgba(0,0,0,.09);}
	.card-3 .card-info{font-size: var(--f-xs);grid-gap: .5em;}
	.card-3 .card-info-row::after{margin-top: .5em;}

	.s0 .section-header:not(.section-header__alt),
	.s5 .section-header:not(.section-header__alt){text-align: center;align-items: center;}

	.s0-1{}

	.s0-2{padding: var(--iwr);flex: auto;}
	.s0-3:not(:last-child){margin-bottom: 50rem;}
	.s0-4{max-width: 300rem;}
	.s0-5{margin-top: 50rem;}

	.s1-1{padding: var(--iwr) var(--iwr) 55rem;}
	.s1-2:not(:last-child){margin-bottom: 75rem;}
	.s1-3{grid-template-columns: auto;grid-gap: 80rem;}
	.s1-5{grid-column: 1/-1;padding: 0;}

	.s2-2{grid-template-columns: auto;}
	.s2-2:not(:first-child){margin-top: 45rem;}

	.s3:last-child{margin-bottom: 85rem;}
	.s3-3,
	.s3-6{position: absolute;left: 50%;top: 0;height: 100%;transform: translateX(-50%);aspect-ratio: calc(var(--map-width) / var(--map-height))/1;}
	.s3-5{padding: var(--wr) calc(var(--wr) / 2);margin: 0 var(--awr);}
	.s3-5 .swiper{overflow: visible;}
	.s3-5 .swiper-slide{padding: 0 calc(var(--wr) / 2);}
	.s3-6 [data-index]{transition: opacity .25s;}
	.s3-6 [data-index]:not(.active){opacity: 0;}
	.s3-7{position: relative;margin: 0 var(--awr);display: flex;height: 600rem;}
	.s3-8{margin-top: 10rem;position: relative;z-index: 1;}

	.s4-1{padding: 100rem var(--iwr) var(--iwr);}

	.s5-2{padding: 165rem var(--iwr);}

	.s6-2:not(:first-child){margin-top: 25rem;}
	.s6-2 .swiper-slide::before{padding-top: 100%;}

	.s7-2:not(:first-child){margin-top: 25rem;}

	.s8-2{grid-template-columns: auto;grid-gap: 35rem 0;}
	.s8-2:not(:first-child){margin-top: 20rem;}
	.s8-3{grid-gap: 15rem;}
	.s8-3, 
	.s8-4{grid-column: 1/-1;}
	.s8-5-1{display: none;}
	.s8-5-2{font-size: var(--f-d);}

	.s9-1 .section-header{text-align: center;align-items: center;}
	.s9-2{margin-left: var(--awr);margin-right: var(--awr);}
	.s9-3{padding: 30rem 0;}
	.s9-3 .swiper-slide{max-width: 200rem;padding: 0 40rem;}

	.s10-2{margin-top: 35rem;}
	.s10-3{margin: 0 calc(var(--wr) / -4);}
	.s10-3 .swiper-slide{padding: 0 calc(var(--wr) / 4);}
	.s10-4{margin-top: 20rem;pointer-events: none;}

	.s11-2{margin-top: 20rem;display: grid;grid-template-columns: 1fr 1fr;grid-gap: 31rem 0;}
	.s11-3{margin-top: 20rem;display: flex;position: relative;}
	.s11-3::before{content: "";flex: none;width: 0;padding-top: 100%;}
	.s11-3 img{position: absolute;top: 0;left: 0;width: 100%;height: 100%;object-fit: cover;object-position: center;}
	.s11-4{padding: 25rem 10rem;position: relative;}
	.s11-4:nth-child(even)::before{content: "";width: var(--sl);background-color: currentColor;opacity: .2;top: 0;bottom: 0;right: 100%;position: absolute;transform: translateX(50%);}
	.s11-4::after{content: "";height: var(--sl);background-color: currentColor;opacity: .2;top: 100%;left: 0;width: 100%;position: absolute;margin-top: 15rem;}
	.s11-4:last-child::after,
	.s11-4:nth-last-child(2):nth-child(odd)::after{display: none;}

	.s12-1{grid-template-columns: auto;grid-gap: 25rem;}
	.s12-5{grid-gap: var(--gap);grid-template-columns: 1.5fr 1fr;align-items: flex-end;}
	.s12-5-1{margin-bottom: 50rem;}
	.s12-4{order: 1;}

	.s13-1{padding: 0 20rem;}


	.popup-inner{background-color: var(--c8);color: var(--c0);border-radius: var(--br1);flex: auto;display: flex;flex-direction: column;padding: var(--iwr)}
	.popup-menu{margin: 55rem 0 auto;flex: auto;}
	.popup-menu ul{display: grid;grid-template-columns: auto;grid-gap: 20rem;}
	.popup-menu li{text-align: center;font-size: var(--f-l);color: var(--c9);opacity: .5;}
	.popup-menu li::after{content: "";height: var(--sl);background-color: var(--c0);opacity: .2;width: 100%;display: block;line-height: 1;margin-top: 10rem;}

	.popup-menu li.active{pointer-events: none;opacity: 1;}
	.popup-menu li.active::after{opacity: 1;}

	.popup-footer{margin-top: 35rem;}

	.popup-active{overflow: hidden!important;}

}


@media screen and (min-width: 1024px) {

	.mobile{display: none!important;}


	.section-header:not(.section-header__alt){text-align: center;align-items: center;}
	.section-header:not(.section-header__alt) .title{max-width: 640rem;display: flex;justify-content: center;}

	.s0 .section-header .subtitle{margin-top: 10rem;}
	.s0 .section-header .action{margin-top: 55rem;}

	.s3{overflow: visible;}
	.s3-1{display: flex;position: relative;}
	.s3-1::before{content: "";flex: none;width: 0;padding-top: calc(var(--map-height) * 100% / var(--map-width));}
	.s3-2{position: relative;z-index: 1;width: 100%;}
	.s3-3{}
	.s3-5{opacity: 0;transition: all .25s;}
	.s3-5 *{pointer-events: none!important;}
	.s3-5 .swiper{position: absolute;top: 0;left: 0;width: 100%;height: 100%;overflow: hidden;}
	.s3-5-1{position: absolute;z-index: 2;}
	.s3-5-1_1{left: 65%;top: 35%;}
	.s3-5-1_2{left: 53%;top: 58%;}
	.s3-5-1_3{left: 44%;top: 70%;}
	.s3-7{position: absolute;top: 0;left: 0;width: 100%;height: 100%;overflow: hidden;pointer-events: none;}


	.s10-1 .section-header{display: grid;grid-template-columns: 1fr 1fr;grid-gap: 0 var(--gap);text-align: left;align-items: flex-start;grid-template-rows: auto auto 1fr;}
	.s10-1 .section-header .pretitle{grid-column: 1/-1;}
	.s10-1 .section-header .title{grid-row-end: span 2;}
	.s10-1 .section-header .subtitle{margin-top: 0;max-width: 475rem;}

	.s11-4::before{content: "";position: absolute;right: 100%;width: var(--sl);height: 100%;background-color: currentColor;opacity: .2;top: 0;transform: translateX(50%);}

	.s12{overflow: visible;}
	.s12-1{grid-template-rows: auto 1fr;grid-template-areas: "a1 a2 a3 a3" "a1 a4 a3 a3";align-items: flex-start;}
	.s12-2{grid-area: a1;margin-top: 80rem;}
	.s12-3{grid-area: a2;margin-top: 80rem;}
	.s12-4{grid-area: a4;margin-top: 35rem;}
	.s12-5{grid-area: a3;}
	.s12-5-1{margin-top: 125rem;}


}

@media screen and (min-width: 4000px) {


	html{font-size: 1px;}


}

/* hover animations */

@media (hover: hover) and (pointer: fine) and (min-width: 1024px) {

	.map-button{transition: background-color .15s;}
	.map-button:hover{background-color: rgba(217, 217, 217, .3);}

	.button{transition: all .15s;}

	.button__default:hover{background-color: transparent;color: var(--c8);}
	.button__secondary:hover{border-color: var(--c10);background-color: var(--c10);color: var(--c1);}
	.button__default-contrast:hover{color: var(--c10);background-color: transparent;}

	.card-media{will-change: transform;transition: transform .5s;}
	.card:not(.card-3):hover .card-media{transform: scale(1.1);}

	.carousel-button::before,
	.carousel-dots .swiper-pagination-bullet{transition: opacity .15s;}
	.carousel-button:hover::before,
	.carousel-dots .swiper-pagination-bullet:hover{opacity: .4;}

	.f2 a,
	.f3 a,
	.f4 a,
	.bottombar a{transition: color .15s;}
	.f2 a:hover,
	.f3 a:hover,
	.f4 a:hover{color: var(--c13);}
	.bottombar a:hover{color: var(--c6);}

	.s8-5::after{transition: opacity .15s;}

	.s8-5:hover .s8-5-1{opacity: 1;visibility: visible;}
	.s8-5:hover::after{opacity: 1;}

	.s3-7:hover ~ .s3-5{opacity: 1;}

	.s3-6 [data-index]{pointer-events: all;transition: opacity .25s;}
	.s3-6 [data-index]:not(:hover){opacity: 0;}

	.topbar-sound-button{transition: opacity .15s;}
	.topbar-sound-button:hover{opacity: .6;}
	.topbar-sound-button.active:hover .topbar-sound-bar{animation-play-state: paused;}

}

.submit-full, .submit-email {
	position: absolute;
	top: 0;
	z-index: -1;
	visibility: hidden;
	opacity: 0;
}

span.wpcf7-spinner {
	display: none;
}

.footer-form {
	position: relative;
}

.footer-form .wpcf7-form-control-wrap {
	flex: auto;
}

.section.mps iframe {
	min-height: 100vh;
}

.topbar-nav a {
	font-size: max(14px, 20rem);
}

.f2-1-2 ul li a svg {
	fill: transparent;
}

.f2-1-2 ul.social-footer {
	grid-template-columns: repeat(2, 1fr);
	width: fit-content;
	grid-gap: 1em;
}

.card-1.no-hover:hover .card-media, .card.card-2.no-hover:hover .card-media {
	transform: none;
}

.subtitle a {
	text-decoration: underline;
}

.s0-3 {
	z-index: 2;
}

.s0-2 {
	position: relative;
}

.s0-2:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: max(80px, 160rem);
	background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
}

.doorway-wrapper.doorway-wrapper .doorway-launcher-button-wrapper {
	z-index: 2!important;
}

@media (min-width:1024px) {
	.section.mps .iframe {
		min-height: 2100rem;
	}
}

@media (max-width:1024px) {
	.s5-4 img {
		object-position: 80%;
	}
	.page-id-2 .s5-4 img {
		object-position: 45%;
	}
	.carousel-dots .swiper-pagination-bullet {
		display: none;
	}
	.carousel-dots .swiper-pagination-bullet:nth-child(-n+5) {
		display: inline-block;
	}
}

.s50-2 {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	grid-gap: 50rem;
	align-items: flex-end;
}

.s50-2-1 {
	grid-column: 2 / 3;
	text-align: center;
}

.s50-2-2 {
	grid-column: 3 / 4;
	margin-left: auto;
}

.s50-3 {
	margin-top: 55rem;
	width: 60vw;
}

.s50-3 .swiper {
	overflow: visible;
	margin: 0 calc(var(--gap) / -2);
}

.s50-3 .swiper-slide {
	padding: 0 calc(var(--gap) / 2);
	height: auto;
}

.s50-3 .card-2 .card-header {
	flex: auto;
	padding: 65rem 80rem 0 80rem;
}

.card-title_new {
	font-size: max(14px, 34rem);
}

.s50-3 .card-subtitle {
	margin-top: 10rem;
	max-width: 300rem;
	opacity: .8;
	font-size: var(--f-s);
}

.s50-3 .card-media_new {
	display: flex;
	position: relative;
	width: 100%;
	flex: none;
}

.s51-3 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-column-gap: 8px;
	grid-row-gap: 20px;
	margin-top: max(20px, 48rem);
}

.card-blog__header {  
	display: flex;
	position: relative;
	overflow: hidden;
	width: 100%;
	flex: none;
	border-radius: 4px;
}

.card-blog__header:before {
	content: '';
	flex: none;
	width: 0;
	padding-top: 100%;
}

.card-blog__date {
	margin: max(16px, 24rem) 0 max(16px, 20rem);
	font-size: var(--f-d);
	color: var(--c1);
	opacity: .5;
}

.card-blog {
	position: relative;
}

.card-blog__title {
	font-size: var(--f-l);
	font-weight: 500;
}

.card-blog__description {
	margin-top: 12px;
	font-size: var(--f-d);
}

.card-blog__footer {
	position: relative;
}

.card-blog__header a svg {
	position: absolute;
	bottom: max(20px, 30rem);
	right: max(20px, 40rem);
	width: 26px;
	height: 20px;
}

.section.s52 .wrapper {
    max-width: 939rem;
}

.s52-1 h2 {
    font-size: var(--f-l);
    margin-bottom: max(16px, 24rem);
}

.s52-1 p {
	margin-top: 0;
	margin-bottom: max(16px, 24rem);
}

.s52-1 hr {
    border: 0;
    opacity: .2;
    margin: 24px 0;
    height: 1px;
    background-color: var(--c1);
}

.section.s51 {
    margin-bottom: 160rem;
}

.s61-4 {
    text-align: center;
    margin-top: max(24px, 48rem);
}

@media (max-width:1024px) {
	.s50-1_1 {
		width: 100%;
		text-align: center;
	}

	.s50-2 {
		width: 100%;
		display: flex;
	}

	.s50-2-1 {
		width: 100%;
	}

	.s50-3 {
		margin-top: 20rem;
		width: 80vw;
	}

	.s51-3 {
		grid-template-columns: repeat(1, 1fr);
		margin-top: 20px;
	}


}