
:root {
  --bg: url('../images/wargame-backdrop.webp') center center / cover no-repeat;
}


/* CSS reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;
	padding:0;

}
html,body {
  margin:0;
  padding:0;
  font-family: 'Geist Mono';
  font-weight:500;
  font-size:1em;
  line-height:1em;
  color:#fff;
  -webkit-text-size-adjust:100%;
  background: var(--bg);
  height: 100vh;     /* fallback */
  height: 100dvh;    /* moderní prohlížeče */
}


html 		{ overflow-x:hidden;  }


h1, h2, h3, h4, h5, h6 { font-weight: normal; }
a           { color:#311B92; text-decoration: none; outline: none; -webkit-tap-highlight-color: transparent;}
a:focus		{ outline: none; -webkit-tap-highlight-color: transparent; }

.clearboth  { clear: both; }
.floatleft  { float: left; }
.uppercase  { text-transform: uppercase; }
.capitalize { text-transform: capitalize; }
.black		{ color:black }
img         { border: none; }
p           { clear:both; }
ul          { margin:0; }
b           { font-weight:700 }
strong      { font-weight:700 }
hr          { height:1px; border:0; background-color: black; }
.tisic      { margin-left: 0.3em;	}
.nonselectable { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; 
				 -moz-user-select: none; -ms-user-select: none; -o-user-select: none; user-select: none;}
.nopadding  { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
input,textarea { border:none; outline:none; resize:none; font-weight:700;  font-family: 'Geist Mono'; letter-spacing:0;
				font-size:16px; border:solid 1px #404040; -webkit-appearance: none; -webkit-border-radius:0px;  }
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {

  -webkit-box-shadow: 0 0 0 1000px transparent inset !important;
  -webkit-text-fill-color: #fff !important; /* barva textu, ať je čitelný */
  background-color: transparent !important;
  transition: background-color 9999s ease-in-out 0s; /* další hack */
}
.border100  { -webkit-border-radius:100px; -moz-border-radius:100px; border-radius:100px;  }

.table-cell	{ display: table-cell; vertical-align: middle;  }

li 			{ list-style-position:inside; }
hr 			{ padding:0; margin:0; background-color:#404040; }



main        { position: relative; display:block; width:100%; height:100%; }
nav         { position: relative; width:100%; } 
.container  { position: relative; display:block; width:calc(100% - 48px); max-width:1280px; margin:auto; }


.fontGeist { font-family: 'Geist'; }

.fontWeight600 { font-weight: 600; }
.fontWeight700 { font-weight: 700; }

.font14	{ font-size: 14px; line-height: 1.15em; }
.font16	{ font-size: 16px; line-height: 1.5em; }
.font24 { font-size: 24px; line-height: 1.15em; }
.font28 { font-size: 28px; line-height: 1.15em; }
.font32 { font-size: 32px; line-height: 1em; }
.font40 { font-size: 40px; line-height: 1.1em; }
.font64 { font-size: 64px; line-height: 1.1em; }
.font128 { font-size: 128px; line-height: 1em; }


#app {
  position: fixed;
  inset: 0;
}

/* Vignette only */
.cinema-overlay {
  pointer-events: none;
  position: fixed;
  inset: 0;
  background:radial-gradient(120% 100% at 50% 60%, rgba(0,0,0,0) 0%, rgba(0,0,0,.25) 60%, rgba(0,0,0,.6) 100%);
}


.header { position:absolute; width:calc(100% - 56px); margin-left:28px; margin-top:24px; text-transform: uppercase; z-index:10}
.menu { float:right; width:50%}
.menu-inner { float:right}
.menu-item { display:inline-block; cursor:pointer; margin-right:24px; outline: none; -webkit-tap-highlight-color: transparent; }
.social { float:right}
.social a { margin-left:14px}
.yt { position:relative; top:-2px }

.header-hide { display:none; }


.hamburger		{ display:none; position:relative; float:right;  width:42px; height:16px;  cursor:pointer;
				  transform: rotate(0deg); transition: .5s ease-in-out; pointer-events:auto; outline: none; -webkit-tap-highlight-color: transparent; } 
.hamburger span { position:absolute; display:block; height:2px; width:100%; background:#fff; opacity:1; left:0; 
				  transition: width 0.5s ease-in-out, height 0.5s ease-in-out, left 0.5s ease-in-out, top 0.5s ease-in-out, transform 0.5s ease-in-out; }
.hamburger span:nth-child(1) { top: 0px; transform-origin: left center;}
.hamburger span:nth-child(2) { top: 8px; transform-origin: left center;}
.hamburger span:nth-child(3) { top: 16px; transform-origin: left center;}

.menu-close { display:none; position:absolute; top:20px; right:28px; z-index:10; cursor:pointer; outline: none; -webkit-tap-highlight-color: transparent;}



.container-center { text-align: center; width:100%; height: 100vh; height: 100dvh; display:table; }

.claim { margin:24px 0; letter-spacing:-0.03em; margin-top:calc(25vh - 250px); }
#countdown { color:#FF1111; font-size: 0; }
.countdown-item { display:inline-block; letter-spacing:-0.05em; }
.doubledot { display:inline-block;  }
.countdown-text { display:none; letter-spacing:0; color:#fff; text-transform:uppercase; }


.claim-text { letter-spacing:-0.05em; max-width:514px; margin:auto; color:rgba(255, 255, 255, 0.8); margin-top:24px }


.form { position:absolute; width:100%; bottom:80px;}
.form-inner { position: relative; width:100%; max-width:564px; margin:auto;}
.form input { display:inline-block; width:100%; max-width:320px; background-color:transparent; border:solid 2px #F4E2DB; color:#fff; 
			  padding:28px 38px; text-transform:uppercase; transition: max-width 0.3s ease-in-out, background-color 0.3s ease-in-out;  }
.form input::placeholder { color:#F4E2DB; }
.form input:focus::placeholder		{ opacity:0.3 }
.form input.error { border-color:rgba(255,0,0,0.5) }
.form .email.open { max-width:49px; border:solid 2px #F4E2DB; background:url('../images/ok.svg') no-repeat center; }
.form .email.open::placeholder		{ opacity:0 }
.form .send { max-width:244px;  cursor:pointer;  border:1px solid rgba(255,255,255,0.2); backdrop-filter: blur(6px); padding:29px 38px;
			 outline: none; -webkit-tap-highlight-color: transparent; text-shadow:0px 4px 4px rgba(0, 0, 0, 0.25); }
.form .send:hover { background-color:rgba(255,0,0,0.1); border-color: rgba(255,255,255,0.2); }
.form .send.open { max-width:150px;  cursor:default;  }
.form .send.open:hover { background-color:inherit  }
.form-hide { display:none; position:absolute; width:100%; max-width:530px; margin:auto; margin-top:20px; text-align:center; left:0; right:0; }


.souhlas-inner { margin:auto; margin-top:25px; max-width:566px; color:rgba(255, 255, 255, 0.8);  text-align:center; }


.form a { color:#fff; border-bottom:1px solid #fff }



.sign { position:absolute; right:30px; bottom:30px; color: #8B8B8B; text-transform:uppercase; letter-spacing:0; }
.sign a { color: #8B8B8B; }






.section-info { position:relative; background-color:#1E0D10; color:#FF1111; padding:200px 0 80px 0; letter-spacing: -0.05em; }
.info-inner 	{ width:calc(100% - 48px); max-width:840px; margin:auto }


.section-actors { position:relative; background-color:#141414; color:#FF1111; padding:200px 0 80px 0; letter-spacing: -0.05em; }
.actors-text { position:absolute; top:calc(50% - 70px); width:calc(100% - 80px); max-width:393px; padding:0 160px; z-index:10  }

.section2-title { color:#fff; text-transform:uppercase; text-align:center; margin-bottom:40px }
.section2-title-mobile { display:none; }

.dragscroll { cursor:pointer; outline: none; -webkit-tap-highlight-color: transparent; }
.dragscroll-outer	{ position:relative; margin-left:-160px; overflow-x:visible; overflow-y:hidden; scrollbar-width: none;}
.dragscroll-outer::-webkit-scrollbar { display:none; }


.scroll-inner { position:relative; float:left; background-color:#141414; height:100%; z-index:100}

.gallery-scroll .scroll-item				{ position:relative; float:left; width:100%; max-width:404px; border:solid 1px #FF0000;
											  margin-right:24px; overflow:hidden;  }
.gallery-scroll .scroll-item.noborder				{ border:0; }
.gallery-scroll .scroll-item img			{ width:100%; object-fit:cover; }


.scroll-item-hide { position:absolute; top:-100%; width:100%; height:100%; background-color:#FF0000; color:#000; padding:24px;
					letter-spacing:-0.01em; line-height: 1.25em; transition: all 0.25s ease-in-out }
.scroll-item-hide.active { top:0; }

.dragscroll-outer .dragscroll-inner { width:100000px; }  /* Podle počtu */
.name	{ position:absolute; width:calc(100% - 48px); left:24px; bottom:28px; color:#fff; text-transform:uppercase; letter-spacing:0;}
.function { color:rgba(255, 255, 255, 0.75); margin-top:4px; line-height:1.2em }
.function-mobile { display:none; margin-top:4px; color:rgba(255, 255, 255, 0.75); line-height:1.2em  }


.gallery-scroll-cont { position:relative; width:100%; margin:40px 0 160px 0 }
.gallery-scroll-button	{ position:absolute; width:68px; height:68px; background: #FF1111 url(../images/arrow.svg?rand=1);  
						  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); background-size:18px; background-position: 27px center; 
						  background-repeat:no-repeat; cursor:pointer; border:solid 2px #FF1111; border-radius:36px; z-index:10; transition:all .3s ease-in-out;}
.gallery-scroll-prev	{ position:absolute; top:0; left:-90px; right:0; margin:auto; transform:rotate(180deg)}
.gallery-scroll-prev:hover	{ border-color:#fff; background-color:#fff; }
.gallery-scroll-prev.nonactive { background-color:transparent; background-image: url(../images/arrow2.svg?rand=1); }
.gallery-scroll-prev.nonactive:hover	{ border-color:var(--bg); }
.gallery-scroll-next	{ position:absolute; top:0; left:90px; right:0; margin:auto;  }
.gallery-scroll-next:hover	{ border-color:#fff; background-color:#fff; }



.section-about-us { position:relative; background-color:#141414; color:#fff; letter-spacing: -0.05em; }
.section-about-us-container { width:calc(100% - 80px); margin:auto;}
.section-about-us-inner { border-top:1px solid rgba(255, 255, 255, 0.5); padding:32px 0 24px 0;  }
.section-about-us-left { float:left; width:calc(100% - 500px)  }
.section-about-us-right { float:left; width:500px; text-align:right; margin-top:-8px;  }
.section-about-us-right .font64 { line-height: 0.9em;  }
.section-about-us-info { max-width:800px; letter-spacing:-0.01em; }
.section-about-us-text { max-width:640px; letter-spacing:-0.01em; margin-top:60px; color:rgba(255, 255, 255, 0.8) }
.section-about-us .font28 { line-height: 1.1em; }
.section-about-us .font16 { line-height: 1.25em; }

.nwcmrs { color:rgba(255, 255, 255, 0.5); letter-spacing: -0.05em; }
.white { color:#fff}

.footer-links { position:absolute; bottom:24px; right:40px; color:#8B8B8B; text-transform:uppercase; letter-spacing:0; }
.footer-links a { color:#8B8B8B }
.footer-link { float:left; margin-left:40px; cursor:pointer;  outline: none; -webkit-tap-highlight-color: transparent; }


.uline {
    background-image: linear-gradient(currentColor, currentColor);
	padding-bottom:2px;
	background-size: 0 0.08em;
    background-position: 0 calc(100%);
    background-repeat: no-repeat;
    transition: all 0.75s cubic-bezier(0.19, 1, 0.22, 1);
}


.uline:hover {
   background-size: 100% 0.08em; /* Plná délka podtržení */
}




/* Cookies */
.gdpr-font40 { font-size:40px; line-height: 1.25em; letter-spacing:-0.02em; }
.gdpr-font21 { font-size:21px; line-height: 1.35em; letter-spacing:0.005em; }

.gdpr				{ position:fixed; bottom: 24px; width:calc(100%); right:0px;  margin:auto; z-index:101; color:#fff }
.gdpr-y				{ position:relative; max-height:calc(100vh - 160px); background: rgba(20, 20, 20, 0.9); padding:48px; text-align: center; overflow:hidden;  }
.gdpr-close			{ position:absolute; top:0; right:0; background:url(../images/zavrit.svg); width:30px; height:30px; background-size:30px 30px; cursor:pointer; margin:24px; }
.gdpr-nadpis		{ width:calc(100% - 80px) }
.gdpr-text			{ text-align:left; margin-bottom:40px; padding-right:40px; max-width:902px; }
.gdpr-text a		{ color: #FF1111; border-bottom:1px solid #FF1111; }
.gdpr-buttons  		{ float:right }
.gdpr .button 		{ color: #FF1111; margin-left:12px; cursor:pointer; padding:28px 38px; border:solid 1px #FF1111; text-shadow:none; 
					  letter-spacing: 0.005em; transition: background 0.2s ease; outline: none; -webkit-tap-highlight-color: transparent;}

.gdpr-left { float:left; width:calc(50% - 40px); margin-right:40px; text-align:left;}
.gdpr-right { float:left; width:50%;  }

.gdpr .button.gdpr-odmitnout { text-shadow:0px 4px 4px rgba(0,0,0,0.25); }
.gdpr .button.gdpr-odmitnout:hover		{ background-color:#FF1111; backdrop-filter: blur(6px);  color:#000;  }


 
.gdpr .button.gdpr-prijmout		{ background:#E20000; color:#000; border: 1px solid rgba(255, 255, 255, 0.2); text-shadow:0px 4px 4px rgba(0, 0, 0, 0.25);}
.gdpr .button.gdpr-prijmout:hover { background-color:#FF1111; backdrop-filter: blur(6px);  }

.gdpr-button		{ float:right; margin-top:20px!important; cursor:pointer; text-transform:uppercase;  }

.gdpr-nastaveni 	{ float:left; cursor:pointer; margin-top:48px; color:#FF1111; text-transform:uppercase;  border-bottom:solid 2px transparent;
					  outline: none; -webkit-tap-highlight-color: transparent; }
.gdpr-nastaveni:hover 	{ border-bottom:solid 2px #FF1111; }



.overlay		{ display:none; position:fixed; width:100%; height:100vh; z-index:10001;    }
.overlay-gdpr 	{ top:0; background:rgba(0,0,0,0.75); }



.gdpr-info			{ position:fixed; top:0; width:100%; max-width:500px; height:100%; right:-500px; background: #000;
					  color:#fff; overflow-y:auto; z-index:100000000; }
.gdpr-info-prostor  { position: relative; width: 100%; padding:24px; min-height:calc(100% - 120px); } 

.gdpr-info-close	{ position:absolute; right:24px; margin-left:24px; width:40px; height:40px; cursor:pointer; z-index:10000;
				  	  transform: rotate(0deg); transition: .5s ease-in-out; pointer-events:auto;
				  	  outline: none; -webkit-tap-highlight-color: transparent; } 
.gdpr-info-close span { position:absolute; display:block; height:2px; width:100%; background:#fff; opacity:1; left:0;  
				  	 	transition: width 0.25s ease-in-out, height 0.25s ease-in-out, left 0.25s ease-in-out, top 0.25s ease-in-out, transform 0.25s ease-in-out; }

.gdpr-info .font16 { line-height:1.25em; }

.gdpr-info-close span:nth-child(1) { top: 16px; left: 3px; transform: rotate(45deg);}
.gdpr-info-close span:nth-child(2) { top: 16px; left: 3px; transform: rotate(-45deg);}
.gdpr-info hr		{ background:rgba(234, 245, 237, 0.95); margin-top:10px; height:1px }
.gdpr-info-nadpis	{ margin-top:20px;  }

.gdpr-subnadpis		{ margin:30px 0 20px 0 }
.gdpr-info-uvod-text{ margin:24px 70px 30px 0; }
.gdpr-info-polozka	{ background:transparent; border-bottom:1px solid #fff; border-top:1px solid #fff; margin-bottom:16px }
.gdpr-info-button	{ margin:0 0 30px 0  }
.gdpr-info-checkbox input[type="checkbox"]  { position:absolute; opacity:0; cursor:pointer; border:0; width:0; height:0; padding:0; outline: none; }
.gdpr-info-checkbox input[type="checkbox"] + label	{ float:right; cursor:pointer; width:48px; height:24px; margin-top:19px; margin-right:15px; 
													  background:url(../images/checkbox-cookie.svg?rand=1); 
													  background-size:96px 24px; outline: none; outline: none; -webkit-tap-highlight-color: transparent;  } 
.gdpr-info-checkbox input[type="checkbox"]:checked + label  { background-position: -48px  }
.gdpr-info-click	{ float:left; width:calc(100% - 158px); cursor:pointer; margin-bottom:18px; outline: none; -webkit-tap-highlight-color: transparent;}
.gdpr-info-click-aktivni	{ width:calc(100% - 150px); }
.gdpr-info-minus	{ display:none; float:left; background:url(../images/arrow-cookie.svg); background-size:24px 24px; width:24px; height:24px; margin-left:12px; transform: rotate(-180deg); margin-top:18px }
.gdpr-info-plus		{ float:left; background:url(../images/arrow-cookie.svg); background-size:24px 24px; width:24px; height:24px; margin-left:12px; margin-top:18px; }
.gdpr-info-cookies	{ float:left; width:calc(100% - 70px); margin:20px 0 0 20px; }

.gdpr-info-vyp-zap	{ float:right; margin:24px 8px 0 0 }
.gdpr-info-zap		{ display:none;  }

.gdpr-info-aktivni	{ float:right; margin-top:24px; margin-right:15px; color: #fff;}
.gdpr-info-text		{ display:none; margin:10px 0 30px 0; padding:12px }
.gdpr-info-text.font18		{ line-height:1.35em }
.gdpr-info hr		{ margin-bottom:16px }
.gdpr-info-potvrdit { float:none; margin:50px auto 30px auto; width:180px; text-align:center;}

.gdpr-souhlas-desktop	{ position: sticky; width:100%; height:120px; bottom:0px; padding: 24px 0; background: #000; text-align:center; }

.gdpr-info .button {  margin-right:12px; cursor:pointer; padding:0; text-shadow:none; color:#000; transition: background 0.2s ease; }

.gdpr-prijmout2	{ background:#000; border:solid 1px #000; color:#fff; margin-left:12px;}
.gdpr-info .button.gdpr-potvrdit	{ float:none; display:inline-block; border:solid 1px #FF1111; background:#E20000; color:#000; padding:28px 38px; 
									 letter-spacing: 0.005em; outline: none; -webkit-tap-highlight-color: transparent; text-shadow:0px 4px 4px rgba(0, 0, 0, 0.25);  }
.gdpr-info .button.gdpr-potvrdit:hover	{ background:#FF1111; backdrop-filter: blur(6px);   }




.players { margin-top: 80px; }
.episodes { color:#fff }
.episode { margin-top:20px }
.episode-title { color:#4D4D4D; letter-spacing: -0.05em; }
.episode-inner { border:1px solid #4D4D4D; width:100%; margin:8px 0; }
.episode-play { float:left; background:#4D4D4D url(../images/triangle.svg) no-repeat center; width:56px; height:56px; cursor:pointer }
.episode-social { float:right; margin:16px 16px 0 0; width:100px; }
.episode-social path { fill:#4D4D4D }
.episode-info { text-transform: uppercase; }
.episode-axis { float:left; width:calc(100% - 210px); margin-left:20px; margin-top:28px; height:4px; background-color:rgba(77, 77, 77, 0.3) }




