#store {
	margin-top:3em;
}

#dimming-element {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background-color:rgba(0, 0, 0, 0.2);
	opacity: 0;
	display: none;
}

.pricing {
	display: none;
	background-color: white;
	width: 30em;
	padding-top: 1em;
	padding-bottom: 2em;
	padding-left: 1em;
	padding-right: 1em;	
	z-index: 10000;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2em;
	border-radius: 1em;
	box-shadow: 0px 8px 18px rgba(0, 0, 0, 0.2);
}

.pricing h3 {
	font-size: 30pt;
	font-weight: 100;
	text-align: center;
	margin-top: 0;
}

.pricing .table {
	border-collapse: collapse;
}

.pricing .table .cell {
	padding-left: 2em;
	padding-right: 2em;
	padding-top: 0.2em;
	padding-bottom: 0.2em;
	text-align: right;
	white-space: nowrap;
	border: 1px solid #d4d4d4;
}

.pricing .table .quantity p {
	text-align: right;
}

.pricing .table .price p {
	text-align: right;
	font-weight: 400;
}

.pricing p {
	font-size: 17pt;
}

.pricing button {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	display: block;
	margin-top: 2em;
}

#store h2 {
	margin-bottom: 0.5em;
}

#store h3 {
	font-weight: 200;
	margin-top: 0em;
	margin-bottom: 0em;
}

#store a {
	margin-top: 1em;
	display: block;
	text-align: center;	
	font-size: 11pt;
}

#store p {
	font-size: 16pt;
}

#store #store-title p{
	width: 36em;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2em;
}

#store .price {
	font-weight: 500;
}

#store .table {
	margin-top: 3em;
	table-layout: fixed;
}

#store #discounts {
	margin-top: 1.6em;
	margin-bottom: 4em;
}

#store #discounts .cell a {
	padding-left: 1em;
	padding-right: 1em;
}

#store #discounts .cell a {
	text-align: center;
}

.quantity {
	font-weight: 300;
	font-size: 16pt;
	font-variant: normal;
	width: 3em;
}

.quantity-cell {
	 width: 29em;
}

#store form {
	margin-bottom: 4em;
}

#store form img {
	display: block;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2em;
}

#store form a {
	padding-top: 0.3em;
	font-size: 11pt;
	margin-top: 0em;
}

#store input[type="radio"] {
	border: 1px solid #bfbfbf;
	vertical-align: 4px;
}

#store input[type="radio"]:checked {
	background-color: #0096ff;
}

#store input[type="text"] {
	display: inline-block;
	font-weight: 300;
	color:#222;
	text-align: right;
	border: 1px solid #d6d4d4;
	padding: 0.1em;
	border-radius: 0;
	-webkit-appearance: none;
	margin-left: 0.2em;
	margin-right: 0.2em;
	width: 2em;
}

#store textarea {
	border-radius: 0;
}

#store label[for=license-key ]{
	display: inline-block;
	margin-top: 1em;
	margin-bottom: 0.2em;
	font-size: 14pt;
	color: #929292;
}

#license-info {
	display: none;
}

#cornerstone3-upgrade .cell:nth-child(3) {
	width: 35em;
}

#license-key {
	display: block;
	font-family: "Menlo", "Monaco", "Courier", monospace;
	font-size: 11pt;
	width: 35em;
	color:#3f3f3f;
	border: 1px solid #d6d4d4;
	resize: none;
	-webkit-appearance: none;
	padding: 0.3em;
}

#store #status-info {
	position: relative;
	display: inline-block;
	margin-top: 0.4em;
	height: 1.4em;
	font-size: 14pt;
	color:#797979;
	font-weight: 200;
}

#store #status-info p {
	position: absolute;
	font-size: 14pt;
}

#store .error {
	color:red;
}

#store .table {
	margin-top: 3em;
}

#store .table h3 {
	font-size: 28pt;
	text-align: right;
}

#store .table a {
	text-align: right;
}

#store .table p {
	text-align: left;
}

#store .table .cell:first-of-type {
	padding-right: 2em;
}

#store .table .cell {
	padding-left: 0.5em;
	padding-right: 0.5em;
	white-space: nowrap;
}

#store .table .cell a {
	padding-top: 0em;
	margin-top: -0.1em;
}

#store .table {
	margin-bottom: 1em;
}

#store .table .quantity-cell p {
	font-size: 18pt;
	font-weight: 200;
}

#total-price .cell {
	padding-top: 3em;
	padding-right: 20px;
}

#total-price-cell {
	margin-right: 1.2em;
}

#total-price .cell p {
	text-align: right;
	font-size: 26pt;
}

#total-price button {
	margin-top: 1.2em;
	float: right;
}

#store .table .divider-row {
	height: 2em;
}

#store #total-price #total-price-cell p {
	font-weight: 200;
}