:root {
	
	--animationDuration_Sky:		120s;
	--animationDelay_Sky:			0s;
	
	--animationDuration_PDPSlide:	0.4s;
	--animationDuration_PDPHide:	0.2s;
	
	--animationDuration_MobilePageOpen:		0.4s;
	--animationDuration_MobilePageClose:	0.3s;
	
	--color_Black_90p:			rgba(0,0,0,0.9);
	--color_Black_85p:			rgba(0,0,0,0.85);
	--color_Black_80p:			rgba(0,0,0,0.80);
	--color_Black_75p:			rgba(0,0,0,0.75);
	--color_Black_70p:			rgba(0,0,0,0.7);
	--color_Black_60p:			rgba(0,0,0,0.6);
	--color_Black_50p:			rgba(0,0,0,0.5);
	--color_Black_45p:			rgba(0,0,0,0.45);
	--color_Black_40p:			rgba(0,0,0,0.4);
	--color_Black_35p:			rgba(0,0,0,0.35);
	--color_Black_30p:			rgba(0,0,0,0.30);
	--color_Black_25p:			rgba(0,0,0,0.25);
	--color_Black_10p:			rgba(0,0,0,0.10);
	
	/* ---------------------------------------- */
	
	--tiprColor: 					rgba(255,255,255,0.95);
	
	
	--bundleColor-Yellow: 			rgb(249, 200, 43);
	--bundleColor-Yellow_p40: 		rgba(249, 200, 43, 0.4);
	--bundleColor-YellowLight: 		rgb(251, 222, 128);
	
	--bundleColor-Purple: 			rgb(159, 47, 208);
	
	--bundleColor-Gray06: 			rgba(0, 0, 0, 0.06);
	--bundleColor-Gray08: 			rgba(0, 0, 0, 0.08);
	--bundleColor-Gray32: 			rgba(0, 0, 0, 0.32);
	--bundleColor-Gray45: 			rgba(0, 0, 0, 0.45);
	--bundleColor-Gray40: 			rgba(0, 0, 0, 0.40);
	
	--bundleColor-Black85: 			rgba(0, 0, 0, 0.85);
	--bundleColor-Black90: 			rgba(0, 0, 0, 0.90);
	
	
	--fontFamily_Mono:				'SF_Mono', 'sf mono', 'Roboto Mono', sans-serif;
	--fontFamily_Global:			-apple-system, "sf pro display", "Helvetica Neue", system-ui, BlinkMacSystemFont, Helvetica, Roboto, Arial, sans-serif;
}



/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/* ----- CUSTOM FONT FOR EDCH2025 BUNDLE ----- */
@font-face {
	font-family: 'RoundBFFont';
	src: url('../../../files/fonts/RoundedFont-BLACKFRIDAY.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}




/* ----- COMMON ----- */

body, * { font-family: var(--fontFamily_Global) !important; }

img { border: 0; vertical-align: top; /* removes extra space around */ }
a { outline: none; }

html { background-color: white; }
body {
	background-color: white;
	padding: 0px;
	margin: 0px;
	font-size: 14px;
	
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

table {
	border: 0px;
	border-collapse: collapse;
	padding: 0px;
	border-spacing: 0px;
}

td {
	border: 0px;
	padding: 0px;
	border-spacing: 0px;
}

.hidden { display: none !important; }
.forceDisabled { pointer-events: none !important; }

.mainContainer { min-width: 1100px; position: relative; min-height: 400px; }

/*.mainContainer.mobile {
	min-height: 2000px;
	height: 2000px;
}*/

.pageBlock { position: relative; width: 1100px; margin: 0 auto; }

a { outline: none; text-decoration: none; color: #1284D7; }
a.ref { text-decoration: underline; }

.wrapText {
	white-space: normal;
	overflow-wrap: anywhere;
	word-break: break-word;
}

strong { font-weight: bold; }

.fw-light		{ font-weight: 300; }
.fw-normal		{ font-weight: normal; }
.fw-medium		{ font-weight: 500; }
.fw-semibold	{ font-weight: 600; }
.fw-bold		{ font-weight: bold; }

.nowrap { white-space:nowrap; }

.ta-center	{ text-align: center !important; }
.ta-left	{ text-align: left !important; }
.ta-right	{ text-align: right !important; }

.monoFont { font-family: var(--fontFamily_Mono) !important; }
.monoFontR, .monoFontR *  { font-family: var(--fontFamily_Mono) !important; }
.zeroFont { font-size: 0; line-height: 0; }

.animated-control-05s {
	-webkit-transition: all 0.08s linear;
	-moz-transition: all 0.08s linear;
	-o-transition: all 0.08s linear;
	transition: all 0.08s linear;
}

.animated-control-10s {
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.sR2 { margin-right: 2px; } /* right space for $ sign */

.caps { text-transform: uppercase; }





/* ------------------------------------------- */
/* !- BUTTONS */
/* !- */

.buyButton_big { display: inline-block; position: relative; width: 164px; }
.buyButton_big .title {
	position: relative;
	font-size: 22px;
	font-weight: 500;
	text-align: center;
	line-height: 51px;
	padding-top: 1px;
	z-index: 110;
	color: white;
	/* letter-spacing: -0.2pt; */
}

.buyButton_big .back {
	position: absolute;
	display: inline-block;

	padding: 0;
	width: 100%;
	height: 100%;
	z-index: 100;
	
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	
	border-radius: 30px;
	
	background-image: linear-gradient(#1CBEF8, #17A4F6, #1493F4, #138DF3, #1492F4);
	box-shadow:
		0 1px 2px 0 rgba(16,150,225,0.2),
		0 2px 4px 0 rgba(16,150,225,0.2),
		#0988E9 0px -1px 0px inset;	
}


.smallButton { display: inline-block; position: relative; width: 90px; }

.smallButton .title {
	position: relative;
	font-size: 20px;
	text-align: center;
	line-height: 37px;
	/* padding-top: 1px; */
	z-index: 110;
	color: white;
}

.smallButton .back {
	position: absolute;
	display: inline-block;

	padding: 0;
	width: 100%;
	height: 100%;
	z-index: 100;
	
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	
	border-radius: 30px;
}


.smallButton.buy .back {
	background-image: linear-gradient(#1AB2F7, #17A3F6, #1494F4, #1289F3, #1182F2);
	box-shadow:
		0 1px 2px 0 rgba(17,130,242, 0.2),
		0 2px 4px 0 rgba(17,130,242, 0.2),
		#0677E7 0px -1px 0px inset;
}

.smallButton.info { margin-right: 12px; }
.smallButton.info .title { color: #1493F4; }
.smallButton.info .back {
	background: transparent;
	box-shadow: inset 0 0 0 1px #1493F4;
}







/* ------------------------------------------- */
/* !- BUNDLE */
/* !- */

.bundleHeader { text-align: center; }

.blueBadge {
	margin: 25px 0;
	
	display: inline-block;
	font-size: 16px;
	line-height: 40px;
	letter-spacing: 0.2pt;
	
	color: #0F8AEE;
	background-color: #EAF6FF;
	
	border-radius: 50px;
	padding: 1px 40px 0 40px;
}

.heroBlock {
	position: relative;
	overflow: visible;
	width: 100%;
	height: 370px;
	
	display: flex;
	justify-content: center;
}

.heroBlock .bluePanelContainer {
	position: relative;
	overflow: visible;
	text-align: center;
	
	width: 1200px;
	min-width: 1200px;
	flex: 0 0 auto; /* no shrinking */
}

.heroBlock .bluePanelContainer .shadow {
	position: absolute;
	bottom: -3px;
	left: 30px;
	right: 30px;
	height: 100px;
	
	border-radius: 26px;
	background: #217CFA;
	opacity: 0.50;
	filter: blur(5px);
	z-index: 0;
	pointer-events: none;
}

.heroBlock .bluePanelContainer .shadow.big {
	bottom: -15px;
	left: 50px;
	right: 50px;
		
	opacity: 0.25;
	filter: blur(15px);
}

.heroBlock .bluePanel {
	isolation: isolate; /* create local color-mix context */
	position: relative;
	overflow: hidden !important;
	z-index: 10;
	
	height: 370px;

	border-radius: 30px;
	
	background-color: #2D88FA;
	background-image:
		radial-gradient(ellipse 50% 50% at 50% 100%, rgba(255,255,255,0.60) 0%, rgba(255,255,255,0.00) 100%),
		radial-gradient(circle at 0% 0%,     rgba(0, 255, 252, 0.20) 0%, rgba(0, 255, 252, 0.00) 50%),
		radial-gradient(circle at 100% 0%,   rgba(0, 255, 252, 0.20) 0%, rgba(0, 255, 252, 0.00) 50%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.40) 0%,  rgba(0, 0, 0, 0.40) 100%);
	
	background-blend-mode: overlay, normal, normal, overlay;
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
}

.heroBlock .bluePanel .bfBackText {
	position: absolute;
	box-sizing: border-box;
	padding-right: 30px;
	
	left: 50%;
	transform: translateX(-50%);
	top: -106px;
	width: 100%;
	
	text-align: center;
	pointer-events: none;
	user-select: none;
	
	font-family: 'RoundBFFont', var(--fontFamily_Global) !important;
	font-size: 390px;
	line-height: 288px;
	
	letter-spacing: -0.054em;
	
	background-image: linear-gradient(109deg,
		#FFFFFF 0%,
		#FFFFFF 22%,
		#000000 42%,
		#000000 48%,
		#FFFFFF 78%,
		#FFFFFF 100%);
	
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-position: 50% 50%;
	
	color: transparent;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	mix-blend-mode: overlay;
	
	opacity: 0.08;
	z-index: 1;
}
	
.heroBlock .bluePanel .frame {
	position: absolute;
	z-index: 2;
	pointer-events: none;
	user-select: none;
	
	top: 1px;
	right: 1px;
	bottom: 1px;
	left: 1px;
	
	border-radius: 29px;
	
	border: 1px solid #ffffff;
	opacity: 0.38;
	mix-blend-mode: overlay;
}

@supports (corner-shape: squircle) {
	
	.heroBlock .bluePanel {
		border-radius: 70px;
		corner-shape: squircle;
	}
	
	.heroBlock .bluePanel .frame {
		border-radius: 68px;
		corner-shape: squircle;
	}
}

/* ---------- */

.heroBlock .bluePanel .title {
	position: absolute;
	z-index: 4;
	
	left: 0;
	top: 75px;
	width: 100%;
	
	font-size: 96px;
	font-weight: bold;
	
	line-height: 96px;
	letter-spacing: -1pt;
	
	color: #FFFFFF;
	text-align: center;
	
	text-shadow:
		0 1px 2px rgba(0, 0, 0, 0.20),
		0 4px 6px rgba(12, 83, 219, 1.0);
}

.heroBlock .bluePanel .titleShadow {
	position: absolute;
	z-index: 3;
	
	left: 0;
	top: 91px;
	width: 100%;
	
	font-size: 93px;
	font-weight: bold;
	
	line-height: 96px;
	letter-spacing: -1pt;
	
	color: rgb(12, 83, 219);
	text-align: center;
	
	filter: blur(9px);
	pointer-events: none;
	user-select: none;
}







/* ------------------------------------------- */
/* !- HEADER - DOCK */
/* !- */

#heroBlock .imDockWrapper {
	position:absolute;
	left: 60px;
	right: 60px;
	bottom: 10px;
	height: 110px;
	text-align: center;
	overflow: visible;
}

#heroBlock #dock {
	position: relative;
	display: inline-flex;
	justify-content: center;
	align-items: flex-start;
	height: 100%;
	
	border-radius: 30px;
	
	padding: 0 15px;
	overflow: visible;
}

#heroBlock #dock .imDockBlur {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(255,255,255,0.08);
	/*background-image: 
		linear-gradient(90deg,
			rgba(255,255,255,0.25) 0%,
			rgba(255,255,255,0.0) 40%,
			rgba(255,255,255,0.0) 60%,
			rgba(255,255,255,0.25) 100%);*/
	
	
	border-radius: inherit;
	corner-shape: inherit;
	
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	
	box-shadow: 
		inset 1px 1px 0 0 rgba(255,255,255,0.25), 
		inset -1px -1px 0 0 rgba(255,255,255,0.25); /*, 
		inset 0 0 0 1px rgba(255,255,255,0.05);*/
	
	z-index: 1;
}

#heroBlock #dock::before {
	content: '';
	position: absolute;
	pointer-events: none;
	top: 0; left: 0; right: 0; bottom: 0;
	border-radius: inherit;
	corner-shape: inherit;
	
	box-shadow: 0 1px 2px 0 rgba(0,0,0,0.12);
	mix-blend-mode: darken;
}

#heroBlock #dock::after {
	content: '';
	position: absolute;
	pointer-events: none;
	top: 0; left: 0; right: 0; bottom: 0;
	border-radius: inherit;
	corner-shape: inherit;
	
	box-shadow: 0 -4px 16px 0 rgba(0,0,0,0.3);
	mix-blend-mode: overlay;
}

#heroBlock #dock a {
	display: inline-block;
	width: 80px;
	height: 80px;
	margin: 15px 8px;
	position: relative;
	text-align: center;
	text-decoration: none;
	z-index: 10;
}

#heroBlock #dock a img {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
	height: auto;
	z-index: 1;
}
#heroBlock #dock a img.icon {
	-webkit-filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.15));
	filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.15));
}
#heroBlock #dock a img.icon.sh-20 {
	-webkit-filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.20));
	filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.20));
}
#heroBlock #dock a img.icon.sh-25 {
	-webkit-filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.25));
	filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.25));
}



#heroBlock #dock a img.iconBorder {
	z-index: 2;
	mix-blend-mode: normal;
	opacity: 0.4;
}
@supports (mix-blend-mode: plus-lighter) {
	#heroBlock #dock a img.iconBorder { mix-blend-mode: plus-lighter; opacity: 0.25; }
	#heroBlock #dock a img.iconBorder.bop35 { opacity: 0.35; }
	#heroBlock #dock a img.iconBorder.bop40 { opacity: 0.40; }
	#heroBlock #dock a img.iconBorder.bop50 { opacity: 0.50; }
	#heroBlock #dock a img.iconBorder.bop60 { opacity: 0.60; }
}


#heroBlock #dock a span {
	display: none;
	position: absolute;
	bottom: 100%;     
	left: 50%;
	transform: translateX(-50%);
	margin-bottom: 46px; 
	
	font-size: 15px;
	font-weight: 400;
	color: rgba(0,0,0,0.75);
	background-color: var(--tiprColor);
	padding: 5px 14px 6px 14px;
	border-radius: 50px;
	
	filter: drop-shadow(0 1px 3px rgba(0,0,0,0.4));
	white-space: nowrap;
}

#heroBlock #dock a span::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 6px solid transparent;
  border-top-color: var(--tiprColor);
  z-index: auto;
}















/* ------------------------------------------- */
/* !- DOCK - COMING SOON/SOLD OUT
/* !- */
/*
.header .dock .comingSoon {
	text-align: center;
	font-size: 24px;
	line-height: 108px;
	margin-top: 1px;
	color: #FFCCB9;
	font-weight: 300;
	letter-spacing: -0.2pt;
}

.header .text {
	position: absolute;
	left: 50px;
	right: 50px;
	bottom: 15px;
	
	font-size: 24px;
	line-height: 32px;
	color: var(--color_Black_70p);
}

.header .text .framed {
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
	
	border: 1px solid rgba(0,0,0,0.5);
	padding: 1px 8px 1px 8px;
	margin-right: 3px;
}
*/



/* ------------------------------------------- */
/* !- PRICES - TOP */
/* !- */

.priceBlock { text-align: center; padding-top: 8px; }

.priceBlock .text {
	padding-top: 42px;
	padding-bottom: 15px;
	
	font-size: 24px;
	line-height: 32px;
	color: var(--color_Black_75p);
}

.priceBlock .text .framed {
	border-radius: 8px;
	
	border: 1px solid rgba(0,0,0,0.5);
	padding: 1px 8px 1px 8px;
	margin-right: 3px;
}

/* --------------- */

.priceBlock .priceTable {
	/* display: inline-block; */
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	width: 630px;
	height: 130px;
	margin: 0 auto;
}

.priceBlock .priceTable .column {
	position: absolute;
	text-align: center;
	width: 210px;
	height: 130px;
	flex-grow: 1;
}
.priceBlock .priceTable .column .divider {
	position: absolute;
	width: 1px;
	top: 10px;
	bottom: 0;
	
	background: linear-gradient(
		to bottom,
		rgba(0, 0, 0, 0) 0%,
		rgba(0, 0, 0, 0.15) 50%,
		rgba(0, 0, 0, 0) 100%
	);
}

.priceBlock .priceTable .column .title {
	font-size: 16px;
	line-height: 30px;
	text-transform: uppercase;
	color: var(--color_Black_40p);
	padding-top: 20px;
	padding-bottom: 8px;
}

.priceBlock .priceTable .column .number {
	position: relative;
	font-size: 36px;
	line-height: 36px;
	letter-spacing: -1.0pt;
}

.priceBlock .priceTable .column .number .strokedValue { position: relative; display: inline-block; }

.priceBlock .priceTable .column .number .strokedValue .stroke {
	font-size: 1px;
	height: 19px;
	border-bottom: 2px solid #E43C44;
	position: absolute;
	left: -3px;
	right: -2px;
	top: 0;
}

.priceBlock .priceTable .totalValue .wrapper { text-align: right; padding-right: 57px; }
.priceBlock .priceTable .totalValue .number { color: rgba(0,0,0,0.38); }
.priceBlock .priceTable .totalValue .divider { right: 0; }

.priceBlock .priceTable .youPay { left: 210px; }
.priceBlock .priceTable .youPay .title { padding-bottom: 6px; }
.priceBlock .priceTable .youPay .number { 
	color: var(--color_Black_90p);
	font-size: 60px; 
	line-height: 60px; 
	letter-spacing: -2.6pt; 
	padding-right: 4px;
}

.priceBlock .priceTable .youSave { left: 420px; }
.priceBlock .priceTable .youSave .wrapper { text-align: left; padding-left: 57px; }
.priceBlock .priceTable .youSave .number { color: #00C156; }
.priceBlock .priceTable .youSave .divider { left: 0; }

.priceBlock .mainButton { padding-top: 33px; padding-bottom: 100px; }
.priceBlock .mainButton .buyButton_big { width: 170px; }
















/* ------------------------------------------- */
/* !- PRODUCTS GRID */
/* !- */

.grayBlockBack { background-color: rgba(235, 229, 221, 0.5); }
.pageBlock.appGrid { text-align: center; width: 1100px; }
.pageBlock.appGrid.last { padding-bottom: 25px; }

.h2_Line_1 {
	text-align: center;
	display: inline-block;
	font-size: 60px;
	line-height: 70px;
	color: var(--color_Black_85p);	
	padding: 90px 0 2px 0;
	letter-spacing: -1.2pt;
}

.h2_Line_2 {
	text-align: center;
	display: inline-block;
	font-size: 40px;
	line-height: 55px;
	/* background: linear-gradient(45deg, #F28B58, #FDB72A); */
	background-color: #F08668;
	background-image: linear-gradient(45deg, #F08668, #FFAE34);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text; /* Firefox */
	color: transparent;
	letter-spacing: -0.6pt;
}


/* FLEX -- PRODUCTS GRID --------------- */

.productsLine_Container {
	position: relative;
	overflow: visible;
	width: 100%;
	display: flex;
	justify-content: center;
}

.productsLine_Flex {
	display: flex;
	justify-content: center;
	align-items: stretch;
	
	width: 1200px;
	min-width: 1200px;
	flex: 0 0 auto; /* no shrinking */
	
	padding: 40px 0 43px 0;
}

.productsLine_Flex .appCell { 
	text-align: left;
	position: relative;
	flex: 0 0 400px;
	
	box-sizing: border-box;
	padding: 36px 50px 0 50px;
}

@media (max-width: 1200px)
{
	.productsLine_Flex .appCell { 
		flex: 0 0 366px;
		padding: 27px 38px 0 38px;
	}
}

.productsLine_Flex .appCell .appIconLink { 
	position: relative;
	display: inline-block;
	width: 128px;
	height: 128px;	
	left: -13px;
}

.productsLine_Flex .appCell .appIconLink .icon {
	position: absolute;
	display: inline-block;
	width: 128px; height: 128px;
	
	top: 0;
	left: 0;
	
	-webkit-transition: top 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	transition: top 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.productsLine_Flex .appCell .appName {
	font-size: 30px;
	line-height: 30px;
	font-weight: 600; /* semibold */
	padding-top: 20px;
}
.productsLine_Flex .appCell .appNameLink {
	color: var(--color_Black_90p);
	letter-spacing: -0.2pt;
}

.productsLine_Flex .appCell .appDescription {
	font-size: 18px;
	line-height: 24px;
	
	height:74px;
	max-height: 74px;
	overflow: hidden;
	
	padding: 10px 0 23px 0;
	color: var(--color_Black_45p);
}

/* .......... */

.productsLine_Flex .appCell .price .priceDiscounted {
	display: inline-block;
	position: relative;
	
	font-weight: bold;
	font-size: 30px;
	line-height: 30px;
	
	letter-spacing: -0.6pt;
	padding-right: 4px;
	color: var(--color_Black_90p);
}

.productsLine_Flex .appCell .price .priceRegular {
	position: absolute;
	left: 100%;
	top: 2px;
	padding-left: 7px;
	font-weight: normal;
	
	font-size: 20px;
	line-height: 20px;
	color: var(--color_Black_30p);
	text-align: left;
	letter-spacing: -0.4pt;
}

.productsLine_Flex .appCell .price .priceRegular .strike {
	position: absolute;
	height: 11px;
	
	top:0;
	left:3px;
	right: -3px;
	
	font-size: 1px;
	line-height: 1px;
	border-bottom: 1px solid var(--color_Black_30p);
}

.productsLine_Flex .appCell .bButtons { margin-top: 30px; margin-bottom: 30px; position: relative; }

.productsLine_Flex .appCell .appTerms {
	padding-bottom: 32px;
	
	font-size: 13px;
	font-weight: normal;
	line-height: 19px;
	color: var(--color_Black_40p);
	letter-spacing: 0;
}

.productsLine_Flex .appCell .leftBorder {
	position: absolute;
	display: inline-block;
	width: 1px;
	
	left: 0;
	top: 48px;
	bottom: 32px;
	
	background-image: linear-gradient(rgba(0,0,0,0.15),rgba(0,0,0,0.05));
	
	pointer-events: none;
	user-select: none;
}
.productsLine_Flex .appCell:first-child .leftBorder { display: none; }








.appGridBottomText {
	text-align: center;
	font-size: 24px;
	line-height: 32px;
	color: var(--color_Black_70p);
	padding-top: 70px;
	padding-bottom: 110px;
}













/* ------------------------------------------- */
/* !- BOTTOM PRICE BLOCK - GET THEM ALL */
/* !- */


.pageBlock.getThemAll { text-align: center; width: 740px; }

.h3_Line_1 {
	display: inline-block;
	font-size: 60px;
	line-height: 70px;
	letter-spacing: -1.5pt;
	
	background-color: #EF8161;
	background-image: linear-gradient(45deg, #EF8161, #FAAF31);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text; /* Firefox */
	color: transparent;
	padding-right: 1px;
}

.h3_Line_2 {
	padding-top: 6px;
	display: inline-block;
	font-size: 24px;
	line-height: 32px;
	letter-spacing: -0.2pt;
	
	background: linear-gradient(45deg, #F79F43, #FAAF31);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text; /* Firefox */
	color: transparent;
}

.getThemAll .textWrapper {
	position: relative;
	padding: 30px 292px 0 0;
	height: 170px;
	text-align: right;
}

.getThemAll .textWrapper .giftbox {
	position: absolute;
	display: inline-block;
	width: 240px;
	height: 162px;
	top: 0;
	right: 30px;
}

.getThemAll .colorBack {
	position: absolute;
	display: inline-block;
	width: 740px;
	height: 280px;
	top: 200px;
	left: 0;
	z-index: 1;
}

.getThemAll .bottomPricesBlock {
	position: relative;
	text-align: center;
	height: 280px;
	z-index: 100;
}

.getThemAll .bottomPricesBlock .price { padding: 58px 0 32px 0; }

.getThemAll .bottomPricesBlock .offerPrice {
	text-align: center;
	position: relative;
	
	font-size: 60px;
	font-weight: bold;
	line-height: 60px;
	letter-spacing: -1.6pt;
	padding-right: 4px;
	display: inline-block;
}

.getThemAll .bottomPricesBlock .offerPrice .totalValue {
	position: absolute;
	right: -80px;
	top: 4px;
	
	font-size: 30px;
	line-height: 30px;
	font-weight: normal;
	color: var(--color_Black_35p);
	text-align: left;
	letter-spacing: 0pt;
}

.getThemAll .bottomPricesBlock .offerPrice .totalValue .strike {
	font-size: 1px;
	line-height: 1px;
	height: 16px;
	
	position: absolute;
	top:0;
	left:-4px;
	right: -4px;
	
	border-bottom: 2px solid #E43C44;
	opacity: 0.7;
}

.getThemAll .bottomPricesBlock .buyButton_big .title { font-weight: 400; }

.getThemAll .infoText {
	position: relative;
	font-size: 14px;
	line-height: 22px;
	color: var(--color_Black_70p);
	text-align: center;
	padding: 20px 60px 0 60px;
	z-index: 100;
}















/* ------------------------------------------- */
/* !- SHOPPING */
/* !- */


.pageBlock.shopping { width: 800px; padding-top: 160px; }

.shopping .spFlexContainer {
	display: flex;
	justify-content: center;
	align-items: flex-start;
}

.shopping .spFlexCell {
	position: relative;
	display: inline-block;
	flex: 0 0 400px;
	box-sizing: border-box;
	
	padding: 3px 30px 56px 96px;
	color: var(--color_Black_60p);
	text-align: left;
}

.shopping .spFlexCell .title {
	font-size: 18px;
	font-weight: bold;
	line-height: 25px;	
}

.shopping .spFlexCell .text {
	font-size: 14px;
	font-weight: normal;
	line-height: 22px;	
	padding-top: 2px;
}

.shopping .spFlexCell .icon {
	position: absolute;
	display: inline-block;
	width: 50px;
	height: 50px;
	
	top: 0;
	left: 30px;
	opacity: 0.5;
}

















/* ------------------------------------------- */
/* !- FOOTER */
/* !- */


.bundleFooter {
	text-align: center;
	margin-top: 104px;
	padding: 90px 0;
	
	font-size: 14px;
	line-height: 22px;
	color: var(--color_Black_40p);
}

.bundleFooter .footerLogo { padding-bottom: 30px; }
.bundleFooter .text a { color: #239BE0; }






/* --------------------------------------------------------------------------------------- */
/* !- PRODUCT DETAILS POPUP */

.productDetailsPopup {
	position: relative;	
	min-width: 1180px;
	
	/* Width 80% calculates from the 1920 (full width) - 8x2 (container paddings) = 1523.2 */
	/* To keep it integral, let's calculate 80% of the full width - paddings */
	/* width: 80%; */
	width: calc(80vw - 16px);
	
	background: white;
	color: black;
	padding: 0;
	margin: 30px auto 0 auto;
	
	border-radius: 24px 24px 0 0;
	overflow: hidden;
	
	box-shadow: 0px 10px 30px rgba(0,0,0,0.3);
}

/* scrollable product popup (desktop only) */
.productDetailsPopup .pdpScrollableContainer {
	position: relative;
	overflow-x: auto;
	overflow-y: scroll;
	max-height: calc(100vh - 30px);
}

.productDetailsPopup .pdpScrollableContainer .pdpBlock {
	min-width: 1180px;
	max-width: 1180px;
	width: 1180px;
	margin: 0 auto;
	box-sizing: border-box;
}

.productDetailsPopup .pdpScrollableContainer .pdpBlock.w100p {
	min-width: auto;
	max-width: 100%;
	width: auto;
	margin: 0;
}

.productDetailsPopup.pdpFixed { height: calc(100vh - 30px); }

/* .productDetailsPopup.small { width: 400px; min-width: 400px; background-color: white; } */
.productDetailsPopup .pdError {
	position: absolute;
	top:50%;
	transform:translateY(-50%);
	
	left:0;
	width: 100%;
	
	text-align: center;
	line-height: 30px;
	font-size: 20px;
	padding: 20px;
}

.productDetailsPopup .yellowTopBar {
	position: absolute;
	display: inline-block;
	top:0; right:0;
	width: 270px;
	height: 60px;
	z-index: 100;
}

.productDetailsPopup .yellowTopBar .closeButton {
	position: absolute;
	display: inline-block;
	width: 30px;
	height: 30px;
	
	top: 15px;
	right: 15px;
	z-index: 110;
}


.productDetailsPopup .pdpAppInfo { padding-top: 70px; }
.productDetailsPopup .pdpAppInfo .appDetails { position: relative; padding: 0 220px 110px 406px; }

.productDetailsPopup .pdpAppInfo .appDetails .appIconPriceBuy {
	position: absolute;
	top: 0;
	left: 162px;
	width: 244px;
	z-index: 10;
	text-align: center;
}

.appIconPriceBuy .appIcon {
	display: inline-block;
	width: 128px;
	height: 128px;
}

.appIconPriceBuy .prices { text-align: center; padding: 12px 0 24px 0; }
.appIconPriceBuy .prices .priceDiscounted {
	display: inline-block;
	position: relative;
	
	font-size: 34px;
	line-height: 48px;
	font-weight: bold;
	
	letter-spacing: -0.8pt;
	padding-right: 8px;
}

.appIconPriceBuy .prices .priceDiscounted .priceRegular {
	display: inline-block;
	position: absolute;
	/* right: 0; */
	top: 8px;
	left: 100%;
	
	font-size: 20px;
	line-height: 20px;
	font-weight: 400;
	color: var(--color_Black_30p);
	text-align: left;
	letter-spacing: -0.4pt;
	
	padding-left: 2px;
}

.appIconPriceBuy .prices .priceDiscounted .priceRegular .strike {
	font-size: 1px;
	line-height: 1px;
	height: 10px;
	
	display: inline-block;
	position: absolute;
	top:0;
	left: -1px;
	right: -3px;
	
	border-bottom: 1px solid var(--color_Black_30p);
}

.appIconPriceBuy .buyButton .buyButton_big { width: 120px !important; }
.appIconPriceBuy .buyButton .buyButton_big .title { line-height: 47px !important; }


/* ---------------- */


.productDetailsPopup .pdpAppInfo .appName {
	font-size: 60px;
	line-height: 64px;
	color: var(--bundleColor-Black90);
	font-weight: 600;
	letter-spacing: -1.0pt;
	padding: 28px 0 12px 0;
}

.productDetailsPopup .pdpAppInfo .appDescription {
	color: var(--color_Black_80p);
	font-size: 24px;
	line-height: 30px;
	
	padding: 0px 0 37px 2px;
	letter-spacing: -0.25pt;
}

.productDetailsPopup .pdpAppInfo .appTerms {
	font-size: 15px;
	line-height: 24px;
	color: var(--color_Black_50p);
	
	border-top: 1px solid var(--color_Black_10p);
	padding-top: 35px;
	padding-left: 2px;
}





















/* --------------------------------------------------------------------------------------- */
/* !- POPUP / SCREENSHOTS */

.productDetailsPopup .screenshots {
	position: relative;
	background-color: #F1EEEA;
	padding-top: 100px;
}
.productDetailsPopup .screenshots .currentView {
	position: relative;
	width: 100%;
	height: 550px;
	text-align: center;
}

.productDetailsPopup .screenshots .currentView img {
	margin: auto auto;
	max-width: 900px;
	max-height: 550px; /* 100%; */
	
	box-shadow: 0px 10px 30px rgba(0,0,0,0.12);
	border-radius: 6px;
}

.productDetailsPopup .screenshots .currentView img.dark {
	box-shadow: 0px 10px 30px rgba(0,0,0,0.24);
}

.productDetailsPopup .screenshots .currentView img.small-shadow {
	box-shadow: 0px 6px 12px rgba(0,0,0,0.16);
}

.productDetailsPopup .screenshots .currentView img.mini {
	box-shadow: 0px 3px 6px rgba(0,0,0,0.10);
}

.productDetailsPopup .screenshots .currentView img.no-shadow {
	box-shadow: none !important;
}

.productDetailsPopup .screenshots .currentView div.scrWrapper:has(> img.white-frame) {
	background-color: white;
	padding: 10px;
	display: inline-block;
	
	border-radius: 16px;
	box-shadow: 0px 6px 12px rgba(0,0,0,0.16);
}

.productDetailsPopup .screenshots .currentView img.white-frame {
	box-shadow: none !important;
}



.productDetailsPopup .screenshots .currentView.empty {
	height: auto;
	padding-bottom: 95px;
	
	font-size: 13px;
	font-weight: bold;
	line-height: 20px;
	color: var(--color_Black_30p);
	text-align: center;
	text-transform: uppercase;
}

.productDetailsPopup .screenshots .navigationArrow {
	position: absolute;
	display: inline-block;
	
	height: 90px;
	width: 90px;
	left: 0;
	
	top: 50%;
	transform:translateY(-50%);
	
	border-radius: 0 10px 10px 0;
}
.productDetailsPopup .screenshots .navigationArrow.right {
	left: auto; right: 0;
	
	border-radius: 10px 0 0 10px;
}

.productDetailsPopup .screenshots .navigationArrow svg { 
	position: absolute;
	display: inline-block;
	
	margin: auto;
	position: absolute;
	top:50%;
	left:43px;
	transform:translateY(-50%);
	
	fill: rgba(0,0,0,0.6); 
}
.productDetailsPopup .screenshots .navigationArrow.right svg { left: 23px; }


 
/* ---------------- */

.productDetailsPopup .screenshots .thumbnails {
	padding: 60px 0;
	height: 120px;
	display: flex;
	align-items: center;
	justify-content: center;
}


.productDetailsPopup .screenshots .thumb {
	position: relative;
	display: inline-block;
	
	width: 180px;
	min-width: 180px;
	height: 120px;
	
	margin: 5px;
	
	box-sizing: content-box;
	border-radius: 0px;
	
	flex-grow: 0;
	background-color: white;
	z-index: 20;
}


.productDetailsPopup .screenshots .thumb.selected {
	border: 5px solid #0D92FD;
	margin: 0;
	z-index: 30;
	border-radius: 6px;
}

.productDetailsPopup .screenshots .thumb img {
	display: inline-block;

	position: absolute;
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
	
	max-width: 150px;
	max-height: 100px; 
}














/* --------------------------------------------------------------------------------------- */
/* !- POPUP / TEXT CONTENT */


.productDetailsPopup .textContentBlock {
	position: relative;
	padding: 2px 80px 72px 80px; 
	
	font-size: 18px;
	line-height: 25px;
	color: var(--color_Black_60p);
	letter-spacing: 0;
}
.productDetailsPopup .textContentBlock.topPadding { padding-top: 72px; }

.productDetailsPopup .textContentBlock a { text-decoration: underline !important; }
.productDetailsPopup .textContentBlock a.wrapLink {
	white-space: normal;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.productDetailsPopup .textContentBlock h1 {
	font-size: 44px;
	line-height: 48px;
	font-weight: 600;
	color: var(--bundleColor-Black90);
	padding: 90px 0 20px 0;
	margin: 0;
	letter-spacing: -0.7pt;
}
.productDetailsPopup .textContentBlock h1.gray { color: rgba(0,0,0,0.2); }
.productDetailsPopup .textContentBlock h1.grayDark { color: var(--color_Black_60p); }
.productDetailsPopup .textContentBlock h1.blue { color: #199AD5; }
.productDetailsPopup .textContentBlock h1.blue2 { color: #118BE5; }
.productDetailsPopup .textContentBlock h1.orange { color: #F57D05; }

.productDetailsPopup .textContentBlock h1.bigBottom { padding-bottom: 80px; }
.productDetailsPopup .textContentBlock h1.farTop { padding-top: 160px; }

.productDetailsPopup .textContentBlock h1.line {
	padding-bottom: 10px;
	margin-bottom: 25px;
	border-bottom: 1px solid var(--color_Black_10p);
}

.productDetailsPopup .textContentBlock h1.caps {
	font-size: 32px;
	line-height: 36px;
	font-weight: bold;
	letter-spacing: -0.35pt;
}




.productDetailsPopup .textContentBlock .fw-normal { font-weight: 500; color: var(--bundleColor-Black90); }
.productDetailsPopup .textContentBlock strong { color: var(--bundleColor-Black90); }

.productDetailsPopup .textContentBlock h1 + ul { margin-block-start: 0; }

.productDetailsPopup .textContentBlock ul { padding-left: 17px; }
.productDetailsPopup .textContentBlock ul li { text-indent: 0; padding-left: 10px; }


.productDetailsPopup .textContentBlock ul li.padded { margin-bottom: 10px; }
.productDetailsPopup .textContentBlock ul li.padded-20 { margin-bottom: 20px; }


/* ---------------- */

.productDetailsPopup .textContentBlock .columns {
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}

.productDetailsPopup .textContentBlock .columns .left { width: 210px; min-width: 210px; max-width: 210px; flex-grow: 0; }
.productDetailsPopup .textContentBlock .columns .right { flex-grow: 100; }

.productDetailsPopup .textContentBlock .columns h2 {
	position: relative;
	font-size: 18px;
	line-height: 23px;
	font-weight: normal;
	color: var(--bundleColor-Black90);
	text-transform: uppercase;
	margin: 0;
}


.productDetailsPopup .textContentBlock .separatorBlock {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: auto;
	height: 2px;
	
	font-size: 0;
	line-height: 0;
	
	border-top: 2px solid rgba(0,0,0,0.1);
}

.productDetailsPopup .textContentBlock .separatorBlock.fullWidth {
	left: -80px;
	right: -80px;
}

/* ---------------- */

.productDetailsPopup .textContentBlock .quotesBlock {
	position: relative;
	margin-top: 90px;
}
.productDetailsPopup .textContentBlock .quotesBlock.mt100 { margin-top: 100px; }

.productDetailsPopup .textContentBlock .quotesBlock h1 { padding-bottom: 36px; }
.productDetailsPopup .textContentBlock .quotesBlock h2 { top: -4px; }
 
.productDetailsPopup .quotesBlock .quote {
	padding: 20px 40px 20px 35px; 
	
	color: var(--bundleColor-Black90);
	font-weight: normal;
	border-radius: 16px 0 16px 0;
	border-left: 5px solid var(--bundleColor-Yellow);
	
	background-color: #FDECAD; // var(--bundleColor-Yellow_p40);
	/*background-image: 
		linear-gradient(90deg, #FDEFAF 0%, #FDE9AA 50%, #FCE2A5 100%);*/
}
.productDetailsPopup .quotesBlock .quote.no-author { margin-bottom: 30px; }
.productDetailsPopup .quotesBlock .author {
	margin-top: 8px;
	margin-bottom: 30px;
	font-size: 16px;
}
 


/* ---------------- */

.productDetailsPopup .textContentBlock .linksBlock { margin-top: 80px; }
.productDetailsPopup .textContentBlock .linksBlock h2 { top: 2px; }

.productDetailsPopup .textContentBlock .linksBlock .linkIcon { display: none; }

.productDetailsPopup .textContentBlock .linksBlock .linkSeparator { color: #D9D9D9; padding: 0 6px; }
.productDetailsPopup .textContentBlock .linksBlock .right { font-size: 16px; padding-top: 1px; }

.productDetailsPopup .linksBlock .columns .right .linkSeparator:last-child { display: none; }


.productDetailsPopup .textContentBlock .linksBlock.noQuotes {
	margin-top: 90px;
	border-top: 2px solid rgba(0,0,0,0.1);
	padding-top: 70px;
}



.productDetailsPopup .textContentBlock .videoBlock {
	position: relative;
	
	/* by default 16x9 = 1120 x 630 */
	height: 630px;
}

.productDetailsPopup .textContentBlock .videoBlock.x16x9 { height: 630px; }

.productDetailsPopup .textContentBlock .videoBlock .videoContent {
	position: absolute;
	left: -80px;
	top: 0;
	width: 1120px;
	height: auto;
}

.productDetailsPopup .textContentBlock .videoRoundedCorners {
	border-radius: 10px;
	overflow: hidden;
}







/* !- END OF NEW STYLES --------------- */

.footer { text-align: center; }

.footer .logoSmall { width: 740px; margin: 0 auto; text-align: center; border-bottom: 1px solid #E0E0E0; padding-bottom: 28px; padding-right: 6px; }

.footer .text { 
	font-size: 14px;
	line-height: 22px;
	color: #7F7F7F;
	font-weight: 300;
	text-align: center;
	
	padding-top: 30px;
	padding-bottom: 34px;
}

.footer .fill {
	background: #001E50 url('../../../images/bundle/bot20/color-stripes-fill.png') repeat-x 50% 100%;
	font-size: 1px;
	height: 20px;
}




/* ----- CART ----- */

.addToCart {
	width: 800px;
	margin: auto auto;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	
	background: white;
	color: black;
	padding: 15px 0 20px 0;
	
	position: relative;
	box-shadow: 0px 10px 30px rgba(0,0,0,0.4);
}


.addToCart .title {
	text-align: center;
	font-size: 14px;
	line-height: 20px;
	
	color: rgba(0,0,0,0.3);
	text-transform: uppercase;
	letter-spacing: -0.3pt;
}

.addToCart .appData { position: relative; margin-top: 30px; text-align: left; }

.addToCart .appData .appIcon {
	position: absolute;
	top:0;
	left: 50px;
	width: 128px;
	height: 128px;
}

.addToCart .appData .appName {
	font-size: 36px;
	line-height: 43px;
	font-weight: 600;
	padding: 26px 220px 0 202px;
	text-align: left;
	color: var(--color_Black_90p);
	letter-spacing: -0.25pt;
}

.addToCart .appData .appDescription {
	font-size: 16px;
	line-height: 22px;
	color: rgba(0,0,0,0.4);
		
	padding: 7px 230px 0 202px;
	text-align: left;
}





.addToCart .appData .price {
	position: absolute;
	top:0;
	right: 0;
	
	border-left: 1px solid rgba(0,0,0,0.1);
	text-align: center;
	
	margin-top: 0;
	padding: 60px 50px 0 0;
}

.addToCart .appData .price .priceDiscounted {
	display: inline-block;
	position: relative;
	
	font-size: 36px;
	font-weight: 600;
	line-height: 36px;
	
	letter-spacing: -0.8pt;
	padding-left: 35px;
}

.addToCart .appData .price .priceRegular {
	display: none; /* inline-block; */
	position: absolute;
	right: 0;
	top: -25px;
	
	font-size: 20px;
	line-height: 20px;
	font-weight: 400;
	color: var(--color_Black_30p);
	text-align: left;
	letter-spacing: -0.4pt;
}

.addToCart .appData .price .priceRegular .strike {
	font-size: 1px;
	line-height: 1px;
	height: 11px;
	
	display: inline-block;
	position: absolute;
	top:0;
	left:-3px;
	right: -3px;
	
	border-bottom: 1px solid var(--color_Black_30p);
}

.addToCart .buttons { padding-top: 82px; position: relative; }
.addToCart .buttons table { width: 100%; }
.addToCart .buttons .leftCell { width: 50%; }
.addToCart .buttons .rightCell { width: 50%; }


.addToCart .buttons .continue,
.addToCart .buttons .checkout {
	display: block;
	text-decoration: none;
	
	font-size: 24px;
	line-height: 70px;
	
	padding: 0;
	text-align: center;
	border-radius: 5px;
}

.addToCart .buttons .checkout {
	margin-left: 10px;
	margin-right: 20px;
	
	background-color: #43C178;
	color: white;
	
	font-weight: bold;
}

.addToCart .buttons .continue {
	margin-left: 20px;
	margin-right: 10px;
	
	background-color: #EAEAEA;
	color: var(--color_Black_35p);
	letter-spacing: -0.25pt;
}

.addToCart .error {
	margin-top: 5px;
	text-align: center;
	line-height: 28px;
	font-size: 18px;
}

.addToCart .loading {
	margin-top: 5px;
	text-align: center;
	line-height: 28px;
	font-size: 18px;
}




/* ------------------------------------------- */
/* !- FLOATING CART */
/* !- */

.floatingCartViewport {
	position: fixed;
	top: -9px;
	right: 17px;
	width: 350px;
	
	box-sizing: border-box;
	padding-top: 25px;
	padding-bottom: 25px;
	
	z-index: 1500;
	height: 100vh;
}


.floatingCart {
	position: relative;
	max-height: 100%;
	display: flex;
	flex-direction: column;
	
	border-radius: 12px;
	background-color: white;
	color: black;
	padding: 0;
	
	box-shadow: 0px 1px 2px rgba(0,0,0,0.2), 0px 10px 30px rgba(0,0,0,0.3);
}

.floatingCart .cartTitle {
	padding-left: 20px;
	text-align: left;
	font-size: 16px;
	line-height: 59px;
	margin-top: 1px;
	font-weight: normal;
	color: rgba(0,0,0,0.4);
}
.floatingCart .cartIcon {
	position: absolute;
	top: 0;
	right:0;
	width: 60px;
	height: 60px;
}

.floatingCart .cartIcon svg { fill: rgba(0,0,0,0.7); }

.floatingCart .number {
	position: absolute;
	top: -12px;
	right: -15px;
	display: inline-block;
	width: 36px;
	height: 36px;
	background-color: #FF554A; /* rgba(242, 63, 52, 0.95); */
	
	-moz-border-radius: 18px;
	-webkit-border-radius: 18px;
	border-radius: 18px;
	color: white;
	
	font-size: 17px;
	line-height: 36px;
	font-weight: bold;
	text-align: center;
	
	box-shadow: 
		inset 0 -1px 0 0 rgba(0,0,0,0.10), 
		-1px 1.5px 3px 0 rgba(171,10,0,0.25), 
		0 2.5px 5px 0 rgba(171,10,0,0.15);
}

/* ----- */

.floatingCart .checkoutBlock { text-align: center; padding-bottom: 21px; }
.floatingCart .checkoutButton { display: inline-block; position: relative; width: 330px; }
.floatingCart .checkoutButton .title {
	position: relative;
	font-size: 20px;
	font-weight: 600;
	text-align: center;
	line-height: 51px;
	padding-top: 1px;
	z-index: 110;
	color: white;
}

.floatingCart .checkoutButton .back {
	position: absolute;
	display: inline-block;

	padding: 0;
	width: 100%;
	height: 100%;
	z-index: 100;
	
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	
	border-radius: 10px;
	background-color: #28BD54;
	background-image: linear-gradient(#2EC761, #22B449);
	box-shadow:
		0 1px 2px 0 rgba(0,105,35,0.15),
		0 2px 4px 0 rgba(0,105,35,0.15),
		#16A83D 0px -1px 0px inset;	
}

/* ----- */

.floatingCart .top,
.floatingCart .bottom {
	position: relative;
	flex: 0 0 auto; /* no resize */
}

.floatingCart .productsList {
	position: relative;
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}

/* ----- */

.floatingCart .shadowTop,
.floatingCart .shadowBottom {
	position: absolute;
	left: 0; right: 0;
	pointer-events: none;
	user-select: none;
	opacity: 0;
	transition: opacity .15s ease;
	z-index: 10;
}

.floatingCart .shadowTop.small {
	bottom: -3px; height: 3px;
	background: linear-gradient(to bottom, rgba(0,0,0,0.05), rgba(0,0,0,0));
}
.floatingCart .shadowTop.big {
	bottom: -8px; height: 8px;
	background: linear-gradient(to bottom, rgba(0,0,0,0.05), rgba(0,0,0,0));
}

.floatingCart .shadowBottom.small {
	top: -3px; height: 3px;
	background: linear-gradient(to top, rgba(0,0,0,.05), rgba(0,0,0,0));
}
.floatingCart .shadowBottom.big {
	top: -8px; height: 8px;
	background: linear-gradient(to top, rgba(0,0,0,.03), rgba(0,0,0,0));
}

.floatingCart.is-scrollable:not(.at-top) .shadowTop { opacity: 1; }
.floatingCart.is-scrollable:not(.at-bottom) .shadowBottom { opacity: 1; }


/* ----- */


.floatingCart .appData {
	padding: 19px 52px 19px 70px;
	
	font-size: 18px;
	line-height: 20px;
	color: var(--color_Black_85p);
	position: relative;
	
	border-bottom: 1px solid rgba(0,0,0,0.06);
	letter-spacing: -0.15pt;
}
.floatingCart .appData:last-child { border-bottom: none; }

.floatingCart .appData .appIcon {
	position: absolute;
	display: inline-block;
	width: 40px;
	height: 40px;
	left: 18px;
	top: 9px;
	
	-webkit-filter: drop-shadow(0px 1px 1px rgba(0,0,0,0.1));
	filter: drop-shadow(0px 1px 1px rgba(0,0,0,0.1));
}

.floatingCart .appData .restoreIcon,
.floatingCart .appData .removeIcon {
	position: absolute;
	top: 18px;
	right: 15px;
	
	display: inline-block;
	width: 22px;
	height: 22px;
	
	border-radius: 5px;
}
.floatingCart .appData .removeIcon svg { fill: #E9573F; }

.floatingCart .appData .restoreIcon { display: none; }
.floatingCart .appData .restoreIcon svg { fill: rgba(0,0,0,0.25); }

/* --- REMOVED APP --- */

.floatingCart .appData.removed { 
	color: rgba(0,0,0,0.30);
	text-decoration: line-through; 
}

.floatingCart .appData.removed .appIcon {
	filter:         url(~"data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
	-webkit-filter: grayscale(100%);
	-moz-filter:    grayscale(100%);
	-ms-filter:     grayscale(100%);
	-o-filter:      grayscale(100%);
	filter: gray;
	
	opacity: 0.3;
}

.floatingCart .appData.removed .removeIcon { display: none; }
.floatingCart .appData.removed .restoreIcon { display: inline-block; }





.floatingCart .bottom { padding: 30px 0 30px 0; text-align: center; }
.floatingCart .bottom a {
	display: inline-block;
	font-size: 15px;
	line-height: 32px;
	color: rgba(0,0,0,0.4);
	text-decoration: none;
	background-color: rgba(0,0,0,0.05);
	border-radius: 8px;
}

.floatingCart .bottom a.closeLink { margin-right: 10px; width: 80px; }
.floatingCart .bottom a.clearLink { width: 120px; }

/* ---------------------------------------------------------------------------------------------------------- */
/* THANK YOU PAGE */
/* ---------------------------------------------------------------------------------------------------------- */

.headerMin .fill {
	background: #001E50 url('../../../images/bundle/bot20/color-stripes-fill.png') repeat-x 50% 100%;
	font-size: 1px;
	height: 30px;
}

.headerLogoSmall { 
	text-align: center; 
	border-bottom: 1px solid var(--color_Black_10p);
	padding-top: 40px; 
	padding-bottom: 40px; 
}

.orderTitle_1 {
	text-align: center;
	padding-top: 79px;
}

.orderTitle_1 .text {
	font-size: 24px;
	line-height: 32px;
	font-weight: 300;
	letter-spacing: -0.3pt;
	padding-top: 14px;
}

.orderHeart {
	text-align: center;
	padding-top: 48px;
	padding-bottom: 44px;
}

.orderText {
	text-align: center;
	font-size: 18px;
	line-height: 26px;
	font-weight: 200;
	letter-spacing: 0.1pt;
	padding-bottom: 50px;
}

.orderText .registrationData { position: relative; }
.orderText .registrationData .left {
	padding-right: 50%;
	text-align: right;
}
.orderText .registrationData .left .container { margin-right: 10px; }

.orderText .registrationData .right {
	position: absolute;
	left: 50%;
	top: 0;
	width: 50%;
	text-align: left;
	font-weight: 400;
}
.orderText .registrationData .right .container { margin-left: 10px; }



.purchasedProductsList { padding-bottom: 50px; }

.purchasedProductsList .product {
	position: relative;
	background-color: #F2F2F2;
	border-radius: 10px;
	margin-bottom: 30px;
}

.purchasedProductsList .product .icon {
	display: inline-block;
	position: absolute;
	left: 36px;
	top: 35px;
}

.purchasedProductsList .product .icon img { width: 64px; height: 64px; }


.purchasedProductsList .product .name {
	font-size: 24px;
	line-height: 24px;
	font-weight: 500;
	letter-spacing: -0.2pt;
	color: #191919;
	
	padding: 40px 200px 0 116px;
}

.purchasedProductsList .product strong { font-weight: bold !important; }

.purchasedProductsList .product .licenseInfo {
	font-size: 14px;
	line-height: 20px;
	font-weight: 300;
	color: #797979;
	
	padding: 8px 200px 30px 116px;
}

.purchasedProductsList .product .instructions {
	border-top: 1px solid #DADADA;
	padding-top: 30px;
	padding: 30px 40px 40px 116px;
	
	font-size: 18px;
	font-weight: 300;
	line-height: 26px;
}

.purchasedProductsList .product a.downloadButton {	
	display: inline-block;
	background-color: #35BD6E;
	color: white;
	font-size: 18px;
	line-height: 18px;
	font-weight: bold;
	
	padding: 12px 28px;
	border-radius: 4px;
	
	text-decoration: none;
	
	position: absolute;
	right: 40px;
	top: 40px;
}



.header404 .fill {
	background: #001E50 url('../../../images/bundle/color-stripes-fill.png') repeat-x 50% 100%;
	font-size: 1px;
	height: 30px;
}

.page404 {
	text-align: center;
	padding-top: 100px;
}

.page404 .text {
	font-size: 24px;
	line-height: 34px;
	font-weight: 300;
	letter-spacing: -0.3pt;
	padding-top: 18px;
	padding-bottom: 50px;
}


/* ----- CART FLOATING ICON ----- */

.cart {
	position: fixed;
	top: 25px;
	right: 25px;
	display: inline-block;
	text-decoration: none;
	outline: none;
	z-index: 1000;
	width: 60px;
	height: 60px;
	background-color: white;
	
	box-shadow: 0px 4px 8px rgba(0,0,0,0.25);
	border-radius: 10px;
	opacity: 1;
}

.cart.hidden { display: none; }
.cart.backdrop { opacity: 0; }


/* .cart .cartIcon { width: 80px; height: 80px; } */
.cart svg { fill: rgba(0,0,0,0.7); }

.cart .number {
	position: absolute;
	top: -12px;
	right: -15px;
	display: inline-block;
	width: 36px;
	height: 36px;
	background-color: rgba(242, 63, 52, 0.95);
	border-radius: 18px;
	color: white;
	
	font-size: 17px;
	line-height: 36px;
	font-weight: bold;
	text-align: center;
	
	box-shadow: 
		inset 0 -1px 0 0 rgba(0,0,0,0.10), 
		-1px 1.5px 3px 0 rgba(171,10,0,0.25), 
		0 2.5px 5px 0 rgba(171,10,0,0.15);
}












/* !- SOLD OUT --------------- */

.soldOut .bundleTitle { padding: 44px 0 28px 0; }

.soldOut .bundleTitle .bTitle {
	font-size: 48px;
	line-height: 58px;
	letter-spacing: -0.75pt;
	color: var(--color_Black_80p);
}

.soldOut .bundleTitle .preHeader_SoldOut {
	display: inline-block;
	font-size: 20px;
	line-height: 24px;
	color: var(--color_Black_40p);
	padding-bottom: 0;
}

.soldOut .bundleTitle .datesBadge {
	margin-top: 28px;
	padding: 1px 28px 0 28px;
}

.soldOut #header { height: 320px; }


.soldOut .headerImage #hdrimBottom { padding-top: 244px; }
.soldOut .headerImage #hdrimTopContainer { height: 234px; }
.soldOut .headerImage #hdrimTop {
	display: inline-block;
	position: absolute;
	top: -25px;
	left: 0;
}
.soldOut .headerImage .hdrimPalms { top: 39px; }


/* --- KEEP IN TOUCH BLOCK --- */


.keepInTouch { height: 547px; position: relative; padding: 10px 270px 0 270px; }

.keepInTouch .title {
	font-size: 40px;
	line-height: 48px;
	font-weight: bold;
	letter-spacing: -0.8pt;
	color: #F18833;
	text-align: center;
}

.keepInTouch .text {
	text-align: center;
	font-size: 22px;
	line-height: 32px;
	letter-spacing: -0.2pt;
	color: rgba(0,0,0,0.9);
	margin: 7px 0 46px 0;
}




.keepInTouch .form #email {
	display: inline-block;
	width: 476px;
	
	color: var(--bundleColor-Black90);
	font-size: 20px;
	line-height: 26px;
	letter-spacing: -0.2pt;
	font-weight: normal;
	padding: 12px 16px;
	
	background-color: white !important;
	
	border: 1px solid rgba(0,0,0,0.2);
	box-sizing: content-box;
	
	-moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px;
}

.keepInTouch .form #email.blur { color: #B2B2B2; font-weight: 400; }
.keepInTouch .form #email.error {
	border-color: rgba(228,60,68, 0.6);
	box-shadow: 0 0 0 3px rgba(228,60,68, 0.3);
}







.keepInTouch .form .submitButton {
	position: absolute;
	top: 155px;
	right: 270px;
	width: 140px;
	height: 72px;	
	padding-top: 20px;
	z-index: 50;
}
.keepInTouch .buyButton_big { display: inline-block; position: relative; width: 140px; }
.keepInTouch .buyButton_big .title {
	position: relative;
	font-size: 22px;
	font-weight: 400;
	text-align: center;
	line-height: 51px;
	padding-top: 1px;
	z-index: 110;
	color: white;
	letter-spacing: -0.25pt;
}

.keepInTouch .buyButton_big .back {
	position: absolute;
	display: inline-block;

	padding: 0;
	width: 100%;
	height: 100%;
	z-index: 100;
	
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	
	border-radius: 10px;
	
	background-image: linear-gradient(#56DA6B, #48CD59, #3EC34D, #3BC049, #3DC24C);
	
	box-shadow: 
		0 1px 2px 0 rgba(62,195,77,0.2),
		0 2px 4px 0 rgba(62,195,77,0.2),
		#33B842 0px -1px 0px inset;	
}

.keepInTouch .buyButton_big.waiting .back { 
	background-image: linear-gradient(#4E4B47,#4E4B47) !important;
	opacity: 1 !important;
	box-shadow: 0 1px 2px 0 rgba(78,75,71, 0.2), 0 2px 4px 0 rgba(78,75,71, 0.2);
 }





.keepInTouch .form .message { display: none; text-align: center; }
.keepInTouch .form .message .done {
	display: inline-block;
	position: relative;
	text-align: left;
	color: #20AF31;
	font-weight: 500;
	font-size: 18px;
	line-height: 26px;
	padding: 12px 0 12px 52px;
	text-transform: uppercase;
}
.keepInTouch .form .message .done svg { position: absolute; left: 0; top: 5px; }


.keepInTouch .copyright {
	position: absolute;
	display: inline-block;
	left: 270px;
	top: 357px;
	
	font-size: 13px;
	line-height: 22px;
	color: rgba(0,0,0,0.45);
	text-align: left;
}












/* !- */
/* ----- RETINA ----- */
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (   min--moz-device-pixel-ratio: 2),
only screen and (     -o-min-device-pixel-ratio: 2/1),
only screen and (        min-device-pixel-ratio: 2),
only screen and (                min-resolution: 192dpi),
only screen and (                min-resolution: 2dppx) { 
	
	.footer .fill { background-image: url('../../../images/bundle/bot20/color-stripes-fill@2x.png'); background-size: 3900px 30px; }
	.headerMin .fill { background-image: url('../../../images/bundle/bot20/color-stripes-fill@2x.png'); background-size: 3900px 30px; }
	.header404 .fill { background-image: url('../../../images/bundle/color-stripes-fill@2x.png'); background-size: 3900px 30px; }
	
	.bottomPriceBlock .container { background-image: url('../../../images/bundle/bot20/prices-bottom-back@2x.png'); background-size: 740px 220px; }
}



/* ---------------------------------------------------------------------------------------------------------- */

.mfp-mobile {}

.mfp-unclutter{min-width:1180px}.mfp-bg{top:0;left:0;width:100%;height:100%;z-index:1042;overflow:hidden;position:fixed;background:#0b0b0b;opacity:.8}.mfp-wrap{top:0;left:0;width:100%;height:100%;z-index:1043;position:fixed;outline:0!important;-webkit-backface-visibility:hidden}.mfp-container{text-align:center;position:absolute;width:100%;height:100%;left:0;top:0;padding:0 8px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.mfp-container:before{content:'';display:inline-block;height:100%;vertical-align:middle}.mfp-align-top .mfp-container:before{display:none}.mfp-content{position:relative;display:inline-block;vertical-align:middle;margin:0 auto;text-align:left;z-index:1045}.mfp-ajax-holder .mfp-content,.mfp-inline-holder .mfp-content{width:100%;cursor:auto}.mfp-ajax-cur{cursor:progress}.mfp-zoom-out-cur,.mfp-zoom-out-cur .mfp-image-holder .mfp-close{cursor:-moz-zoom-out;cursor:-webkit-zoom-out;cursor:zoom-out}.mfp-zoom{cursor:pointer;cursor:-webkit-zoom-in;cursor:-moz-zoom-in;cursor:zoom-in}.mfp-auto-cursor .mfp-content{cursor:auto}.mfp-arrow,.mfp-close,.mfp-counter,.mfp-preloader{-webkit-user-select:none;-moz-user-select:none;user-select:none}.mfp-loading.mfp-figure{display:none}.mfp-hide{display:none!important}.mfp-preloader{color:#ccc;position:absolute;top:50%;width:auto;text-align:center;margin-top:-.8em;left:8px;right:8px;z-index:1044}.mfp-preloader a{color:#ccc}.mfp-preloader a:hover{color:#fff}.mfp-s-ready .mfp-preloader{display:none}.mfp-s-error .mfp-content{display:none}button.mfp-arrow,button.mfp-close{overflow:visible;cursor:pointer;background:0 0;border:0;-webkit-appearance:none;display:block;outline:0;padding:0;z-index:1046;-webkit-box-shadow:none;box-shadow:none}button::-moz-focus-inner{padding:0;border:0}.mfp-close{width:44px;height:44px;line-height:44px;position:absolute;right:0;top:0;text-decoration:none;text-align:center;opacity:.65;padding:0 0 18px 10px;color:#fff;font-style:normal;font-size:28px;font-family:Arial,Baskerville,monospace}.mfp-close:focus,.mfp-close:hover{opacity:1}.mfp-close:active{top:1px}.mfp-close-btn-in .mfp-close{color:#333}.mfp-iframe-holder .mfp-close,.mfp-image-holder .mfp-close{color:#fff;right:-6px;text-align:right;padding-right:6px;width:100%}.mfp-counter{position:absolute;top:0;right:0;color:#ccc;font-size:12px;line-height:18px;white-space:nowrap}.mfp-arrow{position:absolute;opacity:.65;margin:0;top:50%;margin-top:-55px;padding:0;width:90px;height:110px;-webkit-tap-highlight-color:transparent}.mfp-arrow:active{margin-top:-54px}.mfp-arrow:focus,.mfp-arrow:hover{opacity:1}.mfp-arrow .mfp-a,.mfp-arrow .mfp-b,.mfp-arrow:after,.mfp-arrow:before{content:'';display:block;width:0;height:0;position:absolute;left:0;top:0;margin-top:35px;margin-left:35px;border:medium inset transparent}.mfp-arrow .mfp-a,.mfp-arrow:after{border-top-width:13px;border-bottom-width:13px;top:8px}.mfp-arrow .mfp-b,.mfp-arrow:before{border-top-width:21px;border-bottom-width:21px;opacity:.7}.mfp-arrow-left{left:0}.mfp-arrow-left .mfp-a,.mfp-arrow-left:after{border-right:17px solid #fff;margin-left:31px}.mfp-arrow-left .mfp-b,.mfp-arrow-left:before{margin-left:25px;border-right:27px solid #3f3f3f}.mfp-arrow-right{right:0}.mfp-arrow-right .mfp-a,.mfp-arrow-right:after{border-left:17px solid #fff;margin-left:39px}.mfp-arrow-right .mfp-b,.mfp-arrow-right:before{border-left:27px solid #3f3f3f}.mfp-iframe-holder{padding-top:40px;padding-bottom:40px}.mfp-iframe-holder .mfp-content{line-height:0;width:100%;max-width:900px}.mfp-iframe-holder .mfp-close{top:-40px}.mfp-iframe-scaler{width:100%;height:0;overflow:hidden;padding-top:56.25%}.mfp-iframe-scaler iframe{position:absolute;display:block;top:0;left:0;width:100%;height:100%;box-shadow:0 0 8px rgba(0,0,0,.6);background:#000}img.mfp-img{width:auto;max-width:100%;height:auto;display:block;line-height:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:40px 0 40px;margin:0 auto}.mfp-figure{line-height:0}.mfp-figure:after{content:'';position:absolute;left:0;top:40px;bottom:40px;display:block;right:0;width:auto;height:auto;z-index:-1;box-shadow:0 0 8px rgba(0,0,0,.6);background:#444}.mfp-figure small{color:#bdbdbd;display:block;font-size:12px;line-height:14px}.mfp-figure figure{margin:0}.mfp-bottom-bar{margin-top:-36px;position:absolute;top:100%;left:0;width:100%;cursor:auto}.mfp-title{text-align:left;line-height:18px;color:#f3f3f3;word-wrap:break-word;padding-right:36px}.mfp-image-holder .mfp-content{max-width:100%}.mfp-gallery .mfp-image-holder .mfp-figure{cursor:pointer}@media screen and (max-width:800px) and (orientation:landscape),screen and (max-height:300px){.mfp-img-mobile .mfp-image-holder{padding-left:0;padding-right:0}.mfp-img-mobile img.mfp-img{padding:0}.mfp-img-mobile .mfp-figure:after{top:0;bottom:0}.mfp-img-mobile .mfp-figure small{display:inline;margin-left:5px}.mfp-img-mobile .mfp-bottom-bar{background:rgba(0,0,0,.6);bottom:0;margin:0;top:auto;padding:3px 5px;position:fixed;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.mfp-img-mobile .mfp-bottom-bar:empty{padding:0}.mfp-img-mobile .mfp-counter{right:5px;top:3px}.mfp-img-mobile .mfp-close{top:0;right:0;width:35px;height:35px;line-height:35px;background:rgba(0,0,0,.6);position:fixed;text-align:center;padding:0}}@media all and (max-width:900px){.mfp-arrow{-webkit-transform:scale(.75);transform:scale(.75)}.mfp-arrow-left{-webkit-transform-origin:0;transform-origin:0}.mfp-arrow-right{-webkit-transform-origin:100%;transform-origin:100%}.mfp-container{padding-left:6px;padding-right:6px}}.mfp-ie7 .mfp-img{padding:0}.mfp-ie7 .mfp-bottom-bar{width:600px;left:50%;margin-left:-300px;margin-top:5px;padding-bottom:5px}.mfp-ie7 .mfp-container{padding:0}.mfp-ie7 .mfp-content{padding-top:44px}.mfp-ie7 .mfp-close{top:0;right:0;padding-top:0}.my-mfp-zoom-in .zoom-anim-dialog{opacity:0;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;-webkit-transform:scale(.8);-moz-transform:scale(.8);-ms-transform:scale(.8);-o-transform:scale(.8);transform:scale(.8)}.my-mfp-zoom-in.mfp-ready .zoom-anim-dialog{opacity:1;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1)}.my-mfp-zoom-in.mfp-removing .zoom-anim-dialog{-webkit-transform:scale(.8);-moz-transform:scale(.8);-ms-transform:scale(.8);-o-transform:scale(.8);transform:scale(.8);opacity:0}.my-mfp-zoom-in.mfp-bg{opacity:0;-webkit-transition:opacity .3s ease-out;-moz-transition:opacity .3s ease-out;-o-transition:opacity .3s ease-out;transition:opacity .3s ease-out}.my-mfp-zoom-in.mfp-ready.mfp-bg{opacity:.7}.my-mfp-zoom-in.mfp-removing.mfp-bg{opacity:0}

/* background */
.mfp-zoom-in.mfp-bg {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;  
}
.mfp-zoom-in.mfp-bg.mfp-ready { opacity: 0.7; }
.mfp-zoom-in.mfp-bg.mfp-removing { opacity: 0; }

/* content */
.mfp-zoom-in.mfp-wrap .mfp-content {
  opacity: 0;
  transform: scale(0.8);
  transition: all 0.1s ease-out;
}

.mfp-zoom-in.mfp-wrap.mfp-ready .mfp-content {
	opacity: 1;
	transform: scale(1);
}
.mfp-zoom-in.mfp-wrap.mfp-removing .mfp-content {
	opacity: 0;
	transform: scale(0.8);
}
 
.mfp-zoom-in.leftTopPin.mfp-wrap .mfp-content { 
	transform-origin: 34px 40px;
	transition: all 0.1s ease-out;
}




.mfp-zoom-in.mfp-cart.mfp-bg.mfp-ready { opacity: 0.5; }
.mfp-zoom-in.mfp-cart.mfp-bg.mfp-removing { opacity: 0; }
.mfp-zoom-in.mfp-cart.mfp-wrap .mfp-content { 
	transform-origin: right top;
	transition: all 0.1s ease-out;
 }
 
 
/* ------------ */
 
/* background */
.mfp-slide-up.mfp-bg {
	opacity: 0;
	transition: all var(--animationDuration_PDPSlide) ease-out;  
}
.mfp-slide-up.mfp-bg.mfp-ready 		{ opacity: 0.7; }
.mfp-slide-up.mfp-bg.mfp-removing	{ opacity: 0; }

/* content */
.mfp-slide-up.mfp-wrap .mfp-content {
	opacity: 1.0;
	transform: translateY(100vh);
	transition: all var(--animationDuration_PDPSlide) cubic-bezier(0.165, 0.840, 0.440, 1.000);
}

.mfp-slide-up.mfp-wrap.mfp-ready .mfp-content {
	opacity: 1.0;
	transform: translateY(0);
}
.mfp-slide-up.mfp-wrap.mfp-removing .mfp-content {
	opacity: 0.0;
	transition: 		all var(--animationDuration_PDPHide) linear;
}



















/* ------------------------------------------- */
/* !- COMING SOON */
/* !- */

.pageBlock.comingSoon { padding: 40px 40px 80px 40px; }

.comingSoon .headerBlock {
	max-width: 1200px;
	background-color: #F5F2EE;
	border-radius: 30px;
	text-align: center;
	padding: 53px 0 64px 0;
}

@supports (corner-shape: squircle) {
	.comingSoon .headerBlock {
		border-radius: 70px;
		corner-shape: squircle;
	}
}

.comingSoon .headerBlock .image img {
	width: 294px;
	height: 170px;
}

.comingSoon .headerBlock .title_1 {
	font-size: 52px;
	line-height: 62px;
	font-weight: 600;
	color: var(--color_Black_90p);
	padding: 16px 0 5px 0;
	letter-spacing: -0.6pt;
}
/* .comingSoon .headerBlock .title_1 br  { display: none; } */

.comingSoon .headerBlock .title_2 {
	font-size: 34px;
	line-height: 40px;
	color: var(--color_Black_90p);
	letter-spacing: -0.5pt;
}

.comingSoon .subscribe .text {
	font-size: 20px;
	line-height: 28px;
	color: var(--color_Black_50p);
	font-weight: normal;
	padding: 60px 0 25px 0;
	text-align: center;
}


.comingSoon .subscribe .form { width: 700px; margin: 0 auto; text-align: center }
.comingSoon .subscribe .form .controls { 
	display: flex;
	justify-content: center;
	align-items: flex-start;
}
.comingSoon .subscribe .form #email {
	display: inline-block;
	color: black;
	font-size: 20px;
	line-height: 26px;
	padding: 12px 13px;
	
	background-color: white !important;
	border-radius: 8px;
	
	border: 1px solid var(--color_Black_30p);
	
	box-sizing: content-box;
	width: 482px;
	
	margin-right: 10px;
}

.comingSoon .subscribe .form #email.blur { color: var(--color_Black_30p); font-weight: normal; }
.comingSoon .subscribe .form #email.error {
	border-color: rgba(228,60,68, 0.6);
	box-shadow: 0 0 0 3px rgba(228,60,68, 0.3);
}

.comingSoon .subscribe .buyButton_big { width: 140px; }
.comingSoon .subscribe .buyButton_big .title { font-size: 20px; }
.comingSoon .subscribe .buyButton_big .back {
	border-radius: 10px;
	background-image: linear-gradient(#41D054, #39C64A, #32BE42, #2EB73B, #2AB337);
	box-shadow:
		0 1px 2px 0 rgba(42,179,55,0.2),
		0 2px 4px 0 rgba(42,179,55,0.2),
		#1FA82C 0px -1px 0px inset;	

}
.comingSoon .subscribe .buyButton_big.waiting .back {
	background-image: linear-gradient(#4E4B47,#4E4B47) !important;
	opacity: 1 !important;
	box-shadow: 0 1px 2px 0 rgba(78,75,71, 0.2), 0 2px 4px 0 rgba(78,75,71, 0.2);
}



.comingSoon .subscribe .form .message { text-align: center; display: none; }
.comingSoon .subscribe .form .message .done {
	display: inline-block;
	position: relative;
	text-align: left;
	color: #32BD41;
	font-weight: bold;
	font-size: 20px;
	line-height: 26px;
	padding: 12px 0 12px 54px;
	overflow: visible;
}
.comingSoon .subscribe .form .message .done img { position: absolute; left: -6px; top: -1px; }
































/* ------------------------------------------- */
/* !- BUNDLE CLOSED */
/* !- */

.expiredBlock { text-align: center; }
.expiredBlock .expHeader { position: relative; text-align: center; }

.expiredBlock .expHeader .expImage {
	position: absolute;
	top: 0;
	left:50%;
	transform:translateX(-50%);
	width: 506px;
	height: 506px;
	z-index: 1;
}

.expHeader .expTitle_01 {
	position: relative;
	z-index: 100;
	
	display: inline-block;
	font-size: 60px;
	line-height: 70px;
	letter-spacing: -1.2pt;
	padding-top: 459px;
	padding-bottom: 2px;
	
	/* gradient text */
	background: linear-gradient(to right, #1CC9B6, #13ACED);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text; /* For Firefox */
	color: transparent;
}

.expHeader .expTitle_02 {
	position: relative;
	z-index: 100;
	
	font-size: 32px;
	line-height: 32px;
	letter-spacing: -0.5pt;
	
	color: var(--color_Black_80p);
}

.expHeader .expLine {
	height: 40px;
	width: 520px;
	margin: 0 auto;
	border-bottom: 1px solid var(--color_Black_10p);
}

.expFooter {
	text-align: center;
	padding: 80px 0 90px 0;
	
	font-size: 14px;
	line-height: 22px;
	color: var(--color_Black_40p);
}






.expiredBlock .subscribe .text {
	font-size: 20px;
	line-height: 28px;
	color: var(--color_Black_45p);
	font-weight: normal;
	padding: 32px 0;
}

.expiredBlock .subscribe .form { width: 700px; margin: 0 auto; text-align: center }
.expiredBlock .subscribe .form .controls { 
	display: flex;
	justify-content: center;
	align-items: flex-start;
}
.expiredBlock .subscribe .form #email {
	display: inline-block;
	color: black;
	font-size: 20px;
	line-height: 26px;
	padding: 11px 13px;
	
	background-color: white !important;
	border-radius: 8px;
	
	border: 1px solid var(--color_Black_30p);
	
	box-sizing: content-box;
	width: 482px;
	
	margin-right: 10px;
}

.expiredBlock .subscribe .form #email.blur { color: var(--color_Black_30p); font-weight: normal; }
.expiredBlock .subscribe .form #email.error { /* border-color: #E43C44; */
	border-color: rgba(228,60,68, 0.6);
	box-shadow: 0 0 0 3px rgba(228,60,68, 0.3);
}

.expiredBlock .subscribe .form .submit {
	display: inline-block;
	background-color: #23B0E8;
	color: white;
	font-size: 20px;
	line-height: 26px;
	font-weight: 500; /* semibold */
	
	padding: 12px 0;
	text-align: center;
	width: 140px;
	
	border-radius: 8px;
	text-decoration: none;
	box-sizing: content-box;
}
.expiredBlock .subscribe .form .submit.waiting { background-color: #323232; }


.expiredBlock .subscribe .form .message { text-align: center; display: none; }
.expiredBlock .subscribe .form .message .done { display: inline-block; position: relative; text-align: left; color: #35BD6E; font-weight: bold; font-size: 20px; line-height: 26px; padding: 12px 0 12px 52px; }
.expiredBlock .subscribe .form .message .done img { position: absolute; left: 0; top: 5px; }













/* --------------------------------------------------------------------------------------- */
/* !- ORDER PAGE */
/* !- */

/*.orderHeader .bTitle {
	font-size: 48px;
	font-weight: bold;
	line-height: 58px;
	letter-spacing: -1.0pt;
	color: var(--color_Black_80p);
	text-align: center;
	padding-top: 44px;
}

.orderHeader .bSubtitle {
	font-size: 20px;
	font-weight: normal;
	line-height: 24px;
	color: var(--color_Black_80p);
	text-align: center;
	padding-bottom: 28px;
}*/

.orderHeader .topImage { text-align: center; padding-top: 60px; }

.orderHeader .thanksText {
	font-size: 70px;
	line-height: 64px;
	font-weight: bold;
	letter-spacing: -1.6pt;
	text-align: center;
	
	width: 540px;
	margin: 0 auto;
	padding-top: 35px;
	
	
	background-color: #F18833;
	background-image: linear-gradient(to right, #EF7826, #FCB118);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text; /* For Firefox */
	color: transparent;
}
/* .orderHeader .thanksText .ttLine_2 { margin-top: -7px; } */




.orderHeader, .orderPageData { padding: 0 40px; }

.orderHeader .centerColumn,
.orderPageData .centerColumn {
	width: 540px;
	margin: 0 auto;
	text-align: left;
}

.orderHeader .centerColumn.infoText {
	padding-top: 90px;
	color: var(--color_Black_90p);
	font-size: 20px;
	line-height: 26px;
}


/* ---------- */


.orderPageData .fieldsBlock { padding-top: 30px; }
.orderPageData .fieldsBlock .field { padding-top: 40px; }

.orderPageData .fieldsBlock .field .title {
	font-size: 18px;
	line-height: 25px;
	color: rgba(0,0,0,0.35);
}

.orderPageData .fieldsBlock .field .value {
	font-size: 26px;
	line-height: 26px;
	font-weight: 600;
	color: var(--bundleColor-Black90);
	
	padding: 14px 0 9px 0;
	border-bottom: 2px solid rgba(0,0,0,0.10);
}


/* ---------- */

.orderPageData .orderProducts { padding-top: 100px; }


.orderPageData .orderProducts .oProduct {
	position: relative;
	background-color: rgba(235, 229, 221, 0.5); /* var(--bundleColor-Gray06); */
	padding: 60px 60px 65px 240px;
	margin-top: 40px;
	border-radius: 20px;
}

.orderPageData .orderProducts .oProduct .icon {
	position: absolute;
	display: inline-block;
	
	top: 54px;
	left: 56px;
}
.orderPageData .orderProducts .oProduct .icon img { width: 128px; height: 128px; }

.orderPageData .orderProducts .oProduct .name {
	font-size: 40px;
	line-height: 52px;
	font-weight: bold;
	text-transform: uppercase;
}

.orderPageData .orderProducts .oProduct .licenseInfo {
	padding-top: 22px;
	font-size: 16px;
	line-height: 24px;
	color: var(--bundleColor-Black90);
	
	letter-spacing: -0.15pt;
	color: rgba(0,0,0,0.5);
}
.orderPageData .orderProducts .oProduct .licenseInfo strong { color: var(--bundleColor-Black90); }


.orderPageData .orderProducts .oProduct .downloadButton {
	position: absolute;
	left: 776px;
	top: 62px;
	width: 220px;
	height: 54px;
	text-align: left;
	overflow: visible;
}

.orderPageData .orderProducts .oProduct .buyButton_big { width: 190px; }
.orderPageData .orderProducts .oProduct .buyButton_big .title { font-size: 22px; line-height: 47px; }
.orderPageData .orderProducts .oProduct .buyButton_big .back {
	border-radius: 10px;
	background-image: linear-gradient(#41D054, #39C64A, #32BE42, #2EB73B, #2AB337);
	box-shadow:
		0 1px 2px 0 rgba(42,179,55,0.2),
		0 2px 4px 0 rgba(42,179,55,0.2),
		#1FA82C 0px -1px 0px inset;	

}


.orderPageData .orderProducts .oProduct .websiteLink .buyButton_big .back {
	background-image: linear-gradient(#1AB2F7, #17A3F6, #1494F4, #1289F3, #1182F2);
	box-shadow:
		0 1px 2px 0 rgba(17,130,242, 0.2),
		0 2px 4px 0 rgba(17,130,242, 0.2),
		#0677E7 0px -1px 0px inset;
}








/*.orderPageData .orderProducts .oProduct .downloadButton {
	position: absolute;
	left: 736px;
	top: 59px;
	width: 270px;
	height: 54px;	
}*/

/*.orderPageData .orderProducts .oProduct .downloadButton a {
	position: absolute;
	display: inline-block;
	
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto auto;
	width: 190px;
	height: 48px;
	
	border-width: 0;
	border-style: solid;
	border-color: #35BD6E;
	
	background-color: #35BD6E;
	color: white;
	font-size: 22px;
	line-height: 48px;
	font-weight: normal;
	letter-spacing: -0.2pt;
	text-align: center;
	text-decoration: none;
	
	border-radius: 12px;
	box-sizing: content-box;
}*/

/* .orderPageData .orderProducts .oProduct .downloadButton.websiteLink a {
	border-color: #229FFF;
	background-color: #229FFF;
}*/

.orderPageData .orderProducts .oProduct .compatibilityText {
	position: absolute;
	display: inline-block;
	left: 780px;
	top: 151px;
	
	font-size: 13px;
	line-height: 20px;
	width: 240px;
	letter-spacing: -0.15pt;
	
	color: rgba(0,0,0,0.45);
}

.orderPageData .orderProducts .oProduct .licenseInfo a { text-decoration: underline !important; }

.orderPageData .orderFooterText {
	padding: 150px 0 65px 290px;
	
	font-size: 13px;
	line-height: 20px;
	letter-spacing: -0.15pt;
	
	color: rgba(0,0,0,0.40);
}












/* --------------------------------------------------------------------------------------- */
/* !- PRESS KIT PAGE */

/*.pressKit .bundleTitle .bTitle {
	padding: 58px 0 75px 0;
	
	font-size: 80px;
	font-weight: 600;
	line-height: 80px;
	letter-spacing: -2.2pt;
}*/

/* .pressKit #header { height: 560px; } */

.pressKitBody .appIconPriceBuy .buyButton { pointer-events: none; } /* disable buy button on press-kit page */


.pressKit .intro { position: relative; margin-top: 80px; }

.pressKit .intro .title {
	position: absolute;
	display: inline-block;
	top: 0; /* 66px; */
	left: 50px;
	
	font-size: 56px;
	line-height: 56px;
	font-weight: 800;
	letter-spacing: -1.0pt;
	
	/* background: linear-gradient(45deg, #F18130, #FBB125); */
	background: linear-gradient(45deg, #F18130, #FEBC10);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text; /* Firefox */
	color: transparent;
}

.pressKit .intro .text {
	padding: 60px 40px 120px 40px;
	
	font-size: 20px;
	line-height: 29px;
	color: rgba(0,0,0,0.8);
}
.pressKit .intro .text strong { color: var(--color_Black_90p); }

.yellowTag {
	background-color:#FFE280;
	padding: 3px;
	border-radius: 6px;
}

.grayTag {
	background-color: var(--color_Black_10p);
	padding: 3px;
	border-radius: 6px;
}

.framedSpan {
	border: 1px solid rgba(0,0,0,0.7);
	padding: 2px 5px 2px 4px;
	border-radius: 6px;
}








/* ---------- */

.pressKitFlex {
	padding: 0 40px;
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
}

.pressKitFlex .contents {
	width: 290px;
	max-width: 290px;
	min-width: 290px;
	flex-grow: 0;
	padding-top: 103px;
	
}
.pressKitFlex .contents .stickyBlock {
	position: sticky;
	top: 50px;
	left: 0;
}

.pressKitFlex .contents .stickyBlock .cntLink {
	position: relative;
	display: inline-block;
	font-size: 20px;
	line-height: 38px;
	color: var(--bundleColor-Gray32);
	outline: none;
	text-decoration: none;
	letter-spacing: -0.1pt;
	
	padding-left: 34px;
}
.pressKitFlex .contents .stickyBlock .cntLink span { position: absolute; left: 0; }
.pressKitFlex .contents .stickyBlock .cntLink:hover { text-decoration: none; }
.pressKitFlex .contents .stickyBlock .cntLink.selected {
	font-weight: bold;
	color: var(--bundleColor-Black90);
}





/* --- PRESS KIT DATA --- */

.pressKitFlex .pressKitData { flex-grow: 100; }

.pressKitFlex .pressKitData h1 {
	font-size: 48px;
	line-height: 64px;
	letter-spacing: -0.3pt;
	color: var(--bundleColor-Black90);
	border-bottom: 1px solid rgba(0,0,0,0.15);
	margin: 0;
	text-align: left;
	padding: 0 0 10px 0;
	font-weight: 700;
}
.pressKitFlex .pressKitData h1.nextSection { padding-top: 100px; }


.pressKitFlex .pressKitData .text {
	font-size: 20px;
	line-height: 29px;
	color: rgba(0,0,0,0.8);
	padding: 50px 0 50px 0;
}
.pressKitFlex .pressKitData .text strong { color: var(--bundleColor-Black90); }


/* template for custom paddings */
.pressKitFlex .pressKitData .text.padTop_80 { padding-top: 80px;}
.pressKitFlex .pressKitData .text.padBottom_80 { padding-bottom: 80px;}

.pressKitFlex .pressKitData .sectionEnd { padding-bottom: 80px; }

.pressKitFlex .pressKitData .text .highlight {
	display: inline-block;
	padding: 0 6px;
	background-color: #FFDF81;
}



/* --- PRESS KIT APPS TABLE --- */

.pressKitData .appsTable th, .pressKitData .appsTable td {
	border-top: 1px solid rgba(0,0,0,0.1);
	border-bottom: 1px solid rgba(0,0,0,0.1);
	vertical-align: middle;
	
	color: var(--bundleColor-Black90);
}

.pressKitData .appsTable tr:last-child td { border-bottom: none; }

.pressKitData .appsTable th {
	font-size: 12px;
	line-height: 26px;
	text-align: left;
	font-weight: 400;
	height: 50px;
	text-transform: uppercase;
}
.pressKitData .appsTable th.appInfo { padding-left: 22px; }

.pressKitData .appsTable td.number {
	font-size: 24px;
	line-height: 26px;
	color: rgba(0,0,0,0.2);
	text-align: center;
	width: 58px;
}

.pressKitData .appsTable td.icon {
	text-align: center;
	width: 64px;
}

.pressKitData .appsTable .appIconLink { display: inline-block; width: 64px; height: 64px; vertical-align: middle; }
.pressKitData .appsTable .appIconLink .icon { width: 64px; height: 64px; }
.pressKitData .appsTable td.appInfo {
	text-align: left;
	height: 120px;
	padding-left: 22px;
}
.pressKitData .appsTable td.appInfo .appTitle .appLink {
	font-size: 22px;
	line-height: 34px;
	font-weight: bold;
	color: var(--bundleColor-Black90);
}
.pressKitData .appsTable td.appInfo .appDescription {
	font-size: 15px;
	line-height: 21px;
	padding-right: 60px;
	color: rgba(0,0,0,0.45);
}
.pressKitData .appsTable td.priceFull {
	position: relative;
	width: 112px;
	font-size: 24px;
	line-height: 26px;
	letter-spacing: -0.5pt;
	text-align: left;
}
.pressKitData .appsTable td.priceFull .arrow {
	position: absolute;
	display: inline-block;
	right: 26px;
	top: 50%;
	transform:translateY(-50%);
	color: rgba(0,0,0,0.2);
}




.pressKitData .appsTable td.priceSA {
	width: 90px;
	font-size: 24px;
	line-height: 26px;
	font-weight: bold;
	text-align: left;
	letter-spacing: -0.5pt;
}
.pressKitData .appsTable td.discountSA {
	width: 60px;
	font-size: 14px;
	line-height: 18px;
	text-align: right;
	letter-spacing: -0.2pt;	
	color: rgba(0,0,0,0.9);
}

.pressKitData .appsTable td.discountSA .line2Label {
	display: inline-block; 
	text-align: center;
	padding-left: 8px;
	padding-right: 8px;
}


/* ---------- */


.pressKitData a.affiliateJoinButton {	
	display: inline-block;
	background-color: #3FBB5D;
	
	color: white;
	font-size: 20px;
	line-height: 20px;
	font-weight: normal;
	
	padding: 12px 28px;
	border-radius: 6px;
	
	text-decoration: none;
	margin: 10px 0;
}


.pressKitData .yellowBox {
	padding: 30px 40px 30px 35px; 
	border-left: 5px solid var(--bundleColor-Yellow);
	color: var(--bundleColor-Black90);
	background-color: var(--bundleColor-Yellow_p40);
}


/* !- */

.pressKitData .graphicsList .item {
	text-align: left;
	margin-bottom: 50px;
}

.pressKitData .graphicsList .item .itemContainer {
	display: inline-block;
	border: 1px solid rgba(0,0,0,0.1);
}
.pressKitData .graphicsList .item img { margin: 20px; }

.pressKitData .graphicsList .item .download {
	font-size: 16px;
	padding: 30px;
	background-color: rgba(0,0,0,0.06);
	color: rgba(0,0,0,0.8);
}
.pressKitData .graphicsList .item .download a { font-weight: normal; }



/* !- */

.pressKitData .pressKitFooterText {
	padding: 150px 0 65px 0px;
	font-size: 14px;
	line-height: 22px;
	color: rgba(0,0,0,0.4);
}





/* !- INFO PAGES ----------------------- */

.infoPage .textContainer {
	text-align: center;
	font-size: 20px;
	line-height: 28px;
	font-weight: normal;

	padding: 40px;
	text-align: left;
	color: var(--color_Black_60p);
}

.infoPage .textContainer strong { color: var(--bundleColor-Black90); }

.infoPage h1 {
	font-size: 50px;
	line-height: 60px;
	font-weight: 600;
	margin: 0;
	letter-spacing: -0.1pt;
}











/* !- CONTACT LIST ----------------------- */

.contactList .bundleTitle .bTitle { opacity: 1.0; padding-top: 40px; padding-bottom: 48px; }

.contactList .intro { padding-top: 0; }

.contactList .intro .title {
	font-size: 50px;
	line-height: 50px;
}

.contactList .pressKitData .appsTable tr:first-child td { border-top: none !important; }
.contactList .pressKitData .appsTable tr:last-child  td { border-bottom: 1px solid rgba(0,0,0,0.1) !important; }

.contactList .pressKitData .appsTable td.appInfo .appDescription {
	font-size: 18px;
	line-height: 26px;
	letter-spacing: -0.25pt;
	padding-right: 60px;
	padding-bottom: 5px;
	color: rgba(0,0,0,0.5);
}

.contactList .pressKitData .appsTable td.appInfo { height: 140px; padding-left: 30px; }
.contactList .pressKitData .appsTable td.number {
	color: rgba(0,0,0,0.4);
	text-align: center;
	width: 78px;
}

.contactsListFooterText {
	padding: 65px 0 0 0px;
	font-size: 13px;
	line-height: 20px;
	color: rgba(0,0,0,0.45);
}
