
* { padding: 0; margin: 0 }


/*body, text and heading defaults
=================================*/

body {
	/* background:#F9F9F9 url('../images/header-bg.png') repeat-x 0 20px; */
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12pt;
	color: #000;
	background-color: antiquewhite;
	text-align: center;
	margin: 0 auto;
	/* 2 lines added for stick-to-bottom */
	/* height: 100%; 
	min-height: 100%; */
}
p {
	padding: 10px 20px;
	line-height: 140%;
	font-size: 18px;
}
strong {
	font-weight: bold;
}
em {
	font-style: italic;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'AmbleRegular', Arial, Helvetica, sans-serif;
	font-weight: normal;
	margin: 20px 0;
	text-align: center;
}
h1 {
	font-size: 2.25em;
}
h2 {
	font-size: 1.75em;
}
h3 {
	font-size: 1.5em;
}
h4 {
	font-size: 1.25em;
}
h5 {
	font-size: 1.1em;
}
a {
	color: #2251D8;
	text-decoration: underline;
}
a:hover {
	color: #333333;
	text-decoration: none;
}

/* 
    html, body { max-width: 900px; min-width: 850px; overflow-x: hidden; margin: 0 auto } 
    
    @media screen and (max-width: 850px) {
    
        html, body { width: 850px; max-width: 850px; overflow: auto }
            
    }
*/


/* layout
===================*/

header, section, footer {
	clear: both;
	padding: 20px 0;
	display: inline-block;
    /* max-width: 1000px; */
    /* min-width: 800px; */
}

footer {
    max-width: 900px
}

/* apply a natural box layout model to elements
http://paulirish.com/2012/box-sizing-border-box-ftw/ */

section article, footer article {
	float: left;
	display: inline-block; 
	box-sizing: border-box
}
.fullWidth {
    min-height: calc(100vh - 480px);
    max-width: 1000px;
}
.fullWidth article {
	width: 100%;
}
.twoColumns article {
	width: 47%;
}
.threeColumns article {
	width: 33%;
}
@media screen and (max-width: 600px) {
    .footerBox { text-align: center }
	.threeColumns { width: 120% }
	.threeColumns article { width: 40% }
	footer.threeColumns article:nth-child(2) { display: none }
}
.threeColumns article.twoThirds {
	width: 66.6%;
}
.fourColumns article {
	width: 25%;
}
.fourColumns article.halfWidth {
	width: 50%;
}
.fourColumns article.threeQuarters {
	width: 75%;
}
.fullwidth, .twoColumns {
	/* 	border: 1px solid lightgrey */
}

section article h1 span {
	clear: both;
	display: block;
	font-family: Georgia, "Times New Roman", Times, serif;
	font-size: 0.44444em;
	padding: 0 0 20px 0;
	color: #999;
	font-style: italic;
}

section.spacer { margin-top: 40px }

article ul {
	margin: 0 0 20px 20px;
/* 	list-style: disc; */
}
article ol {
	margin: 0 0 20px 20px;
	list-style: decimal;
}
article li {
	margin: 0 0 0 20px;
	padding: 0 0 10px 10px;
	font-size: 18px;
}

/*  add 'section' to remove dots from footer links  */
section article ul li::before {
  content: "\2022";     /* Add content: \2022 is the CSS Code/unicode for a bullet */
  color: black;         /* Change the color */
  font-weight: bold;    /* If you want it to be bold */
  display: inline-block; /* Needed to add space between the bullet and the text */ 
  width: 1em;           /* Also needed for space (tweak if needed) */
  margin-left: -1.0em;  /* Also needed for space (tweak if needed) */
}

/*
#form_content_article, #content_article {
	min-height: 400px;
}
*/

footer ul, footer li, footer ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

/*image alignment and styling*/
img.alignright {
	float: right;
	margin: 0 0 20px 20px;
}
img.alignleft {
	float: left;
	margin: 0 20px 20px 0;
}
img.alignnone {
	float: left;
	margin: 0 0 20px 0;
}

img.alignnone, img.alignleft, img.alignright {
	padding: 10px;
	background:#FFF;
	border-radius: 10px;
	box-shadow: 1px 1px 4px 0 #333;
}
article img {
	max-width: 98%;
}

/*navigation
===================*/

header {
    /* display: inline; */
    display: block;
    /* text-align: justify; */
    height: 6em;
    color: #fff;
	font-family: 'AmbleRegular', Arial, Helvetica, sans-serif;
}

header::after {
    content: '';
    /* display: inline-block; */
    display: contents;
    width: 100%;
}

header > div,
header > div::before,
header nav,
header > div h1 {
    display: inline-block;
    /* vertical-align: middle; */
    text-align: left;
    text-transform: uppercase;
}

header nav {
    font-size: 1.25em;
    padding-top: 16px;
}

/*
header > div {
    height: 90%;
}

header > div::before {
    content: '';
    height: 100%;
}
*/

header > div h1 {
    font-size: 3em;
    font-style: italic;
    color: #E6B705  /* #FFCD0F */;
}

.smaller { font-size: 70%; font-weight: bold }
.tiny { font-size: 45%; font-weight: bolder }

header nav a {
    padding: 0 0.6em;
    white-space: nowrap;
    cursor: pointer;
	color:  #333;
	font-size: 92%;
	text-decoration: none;
}

header nav a:last-child {
    padding: 15px 10px 5px 10px;
}

header nav a:hover {
	font-family: 'AmbleRegular', Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	color:  #2251D8;
    border-bottom: 3px solid #2251D8;
}

@media screen and (max-width: 1100px) {
    
    header {
        height: auto;
    }
    
    header > div,
    header > div h1,
    header nav {
        height: auto;
        width: auto;
        display: block;
        text-align: center;
    }
    header nav {
        margin-top: -10px
    }
    
    .title { margin-top: 40px !important }
}


/* footer
===================*/

.footerBox {
	background: #404040;
    min-width: 100vw;
    /* 4 lines added for stick-to-bottom */
    /* clear: both;
    position: relative;
    height: 330px;
    margin-bottom: 330px; */    
}
footer {
	color: #F9F9F9;
	font-family: 'AmbleRegular', Arial, Helvetica, sans-serif;
	font-size: 1em;
	padding: 20px 0;
}
footer a {
	color: #FFD32A;
}
footer a:hover {
	color: #FFF;
}
footer small {
	text-align: center;
	clear: both;
	display: block;
}
footer h1 {
	font-size: 1.625em;
}
footer li a {
	padding: 10px;
	display: inline-block;
}

@media screen and (max-width: 800px) {
    /* .footerBox { min-width: 800px } */
}


/* wordpress comment and simple contact form styling */

form, input[type=text], input[type=password], textarea {
	box-sizing: border-box;
}
form {
	background: #F5D6AD;     /* rgb(245, 214, 173) */
	/* overflow: auto; */
	/* width: 100%; */
	border-radius: 5px;
	box-shadow: 0 0 10px #444;
	padding: 20px;
	margin-left: -25px;
}
form.noshadow {
	background-color: antiquewhite;
	box-shadow: none;
	padding: 0;
}
label {
	clear: right;
	padding: 0 0 10px 0;
	font-family: Georgia, "Times New Roman", Times, serif;
	text-transform: capitalize;
}
input[type=text], input[type=password], textarea {
	display: block;
	margin: 10px 0;
	background:#F9F9F9;
	padding: 10px 5px;
	border: 1px solid #CCC;
	color: #666;
	width: 100%;
	border-radius: 5px;
	box-shadow: 1px 1px 3px 0 #999;
}
textarea {
	height: 150px;
	max-width: 100%;
	min-width: 100%;
}
input, textarea {
	font-family: 'AmbleRegular', Arial, Helvetica, sans-serif;
	font-size: 1.1em;
}
input[type=submit] {
/* 	float: right; */
	padding: 5px 20px;
	margin: 15px;
	font-family: 'AmbleRegular', Arial, Helvetica, sans-serif;
	font-size: 1.3em;
	color: #FFD32A;
	text-transform: uppercase;
	/*	rgb(74, 74, 74)  */
	background-color: #4a4a4a;
	background-image: linear-gradient(to bottom, #000000 8%, #4a4a4a 65%);
/*
	background-image: -o-linear-gradient(bottom, #000000 8%, #4a4a4a 54%);
	background-image: -moz-linear-gradient(bottom, #000000 8%, #4a4a4a 54%);
	background-image: -webkit-linear-gradient(bottom, #000000 8%, #4a4a4a 54%);
	background-image: -ms-linear-gradient(bottom, #000000 8%, #4a4a4a 54%);
*/
	border-radius: 10px;
	border: 0;
	cursor: pointer;
}
/* .swal2-styled.swal2-confirm, .swal2-styled.swal2-cancel, */
button[type=button], button[type=submit], button[type=reset] {
	padding: 5px 20px;
	margin: 15px;
	font-family: 'AmbleRegular', Arial, Helvetica, sans-serif;
	font-size: 1.3em;
	color: #FFD32A;
	text-transform: uppercase;
	background-color: #4a4a4a;
	background-image: linear-gradient(to bottom, #000000 8%, #4a4a4a 65%);
	border-radius: 10px;
	border: 0;
	cursor: pointer;
}
/* .swal2-styled.swal2-confirm:hover, .swal2-styled.swal2-cancel:hover, */
button[type=button]:hover, button[type=submit]:hover, button[type=reset]:hover { 
    background: none; 
    background-color: #E1C5A0;
    color: #4a4a4a;
}
/* added to hide SweetAlert confirmButton ring */
/* button:focus, button:active { outline: 0 } */

input:focus, textarea:focus {
	background: #FFC;
}
form.nobackground {
	background: none;
	width: auto;
	border-radius: 0;
	box-shadow: none;
	padding: 0px;
    margin: 0px;
}

.title { margin-top: 0 }
.nohover { pointer-events: none }
#container { margin-top: 20px }
#outerFormWrapper { width: 700px; margin: 40px auto 30px; font-size: 17px; text-align: left }

/*	Site forms  */
#form_content {	margin: 0 auto; padding: 30px; width: 400px; /* display: flex */ }
#form_content input { text-align: center }
#form_content ul { text-align: left; font-size: 1.15em }

/* #form_content .table { display: table; table-layout: fixed; width: 100% } */
#form_content .table-row { display: table; table-layout: fixed; width: 100% }
#form_content .table-cell { display: table-cell; vertical-align: middle }

#form_content .fc { width: 35%; text-align: right; padding-right: 24px }
#form_content .sc { width: 64% }
#form_content .fw { width: 99% }
#form_content .cntr { text-align: center }
.eyeball { height: 22px; position: absolute; right: 30px; top: 22px; cursor: pointer }

.display-error { color: red; margin-left: 20px }
.display-success { color: green; margin: -20px 0 40px; width: 550px; height: 300px; line-height: 300px }
.allboxes { height: 40px; font-style: italic }

.display-error li span.grey { color: darkslategrey }

.notice { margin: 0 60px; padding: 0 100px; color: grey; font-size: 85%; font-style: italic }

.background_shadow { margin: 25px 0px; padding-top: 6px; background-color: #F5D6AD; box-shadow: 2px 2px 10px grey; -webkit-box-shadow: 2px 2px 10px grey; letter-spacing: 0.8px }

/*  Cart Summary  */
#sidebar { float: right; width: 260px; min-height: 250px; display: inline-block; margin: 40px 14px 40px 20px; padding: 8px 5px; border: 1px solid lightgrey; position: -webkit-sticky; position: sticky; top: 13px }
#sidebar tr td:nth-child(3) { width: 40% }               
#summarytable { margin: 10px auto; width: 100%; border: 0px solid lightgrey }
#summarytable tr { height: 30px }
#summarytable td, #summarytable th { padding: 3px 6px; vertical-align: middle; border: 0px solid grey }
/*  next makes #overline more important than the above (for the top border line)  */
#summarytable td#overline { padding: 20px 5px; text-align: center; border-top: 1px solid lightgrey }
#summarytable td:nth-child(3) { text-align: right }
#summary { height: 36px; padding: 0; text-align: center; font-size: 110%; font-weight: bold }
.sumtitle { text-align: left; padding-left: 20px; font-weight: bold }
.discdesc { margin: 0 12px; padding: 0; font-weight: normal }


/*  Stripe elements  */
.StripeElement {
    box-sizing: border-box;
    font-size: 20px;
    height: 40px;
    padding: 8px 12px;
    border: 1px solid transparent;
    border-radius: 5px;
    background-color: #F9F9F9;
    box-shadow: 1px 1px 3px 0 #999;  /* 0 1px 3px 0 #c3c8cf */
    transition: box-shadow 150ms ease;
}
    
.StripeElement--focus {
    box-shadow: 0 1px 3px 0 #cfd7df;
}
    
.StripeElement--invalid {
    border-color: #fa755a;
}
    
.StripeElement--webkit-autofill {
    background-color: #fefde5 !important;
}

#card-errors { padding: 10px; text-align: justify; color: darkred }
.poweredInfo { margin: 25px 10px 0; color: #666666 }
.center { text-align: center }
.congrats { margin-top: 30px; font-style: italic; color: #666666; padding-top: 10px }
button.font-1em { font-size: 1.1em }
.disabled { opacity: 0.25 }

.loading { width: 450px; line-height: 110px; height: 300px; text-align: center; border: 1px solid #404040; position: fixed; top: 50%; left: 50%; margin-top: -150px; margin-left: -225px; background-color: #fff }
.loading img { vertical-align: middle; width: 50px; height: 50px }

/*  red cart button  */
#cartbutton {  
    position: fixed;
    bottom: 0px;
    right: 0px;
    width: 65px;
    height: 60px;
    -webkit-backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    overflow-y: hidden;
    margin: 14px 20px;
    transform-origin-x: center;
    transform-origin-y: center;
    opacity: 0.0;
    -ms-transform: scale(0.0);
    -ms-transition: all 1.2s ease;
    -moz-transform: scale(0.0);
    -moz-transition: all 1.2s ease;
    -webkit-transform: scale(0.0);
    -webkit-transition: all 1.2s ease;
    transform: scale(0.0);
    transition: all 1.2s ease;
}
#cartbutton.active {
    opacity: 0.9;
    -mox-transform: scale(1.0);
    -webkit-transform: scale(1.0);
    transform: scale(1.0);
}
#cartimage, #clonedimg {
    width: 65px;
    height: 60px;
}
/* #clonedimg { animation-name: animate-cart; animation-direction: normal; /* animation-iteration-count: 1; * / animation-timing-function: ease-in-out; /* animation-fill-mode: forwards * / } */

.questioning { width: 20px; display: inline-block; padding-left: 20px; margin-top: -5px; vertical-align: middle; cursor: pointer }
.questioning { display: inline-block; padding-left: 10px; margin-top: -5px; cursor: pointer }
.questioning img { width: 19px; vertical-align: middle; opacity: 60% }

a.tip span { display: none }

/*  tool tip  */
/* .questioning:hover .tooltip_above, .questioning:hover .tooltip_below,  */
.tip:hover .tooltip_above, .tip:hover .tooltip_below { display: block }
.tooltip_above, .tooltip_below { display: none; border-radius: 6px; padding: 20px; line-height: 1.3; position: absolute; z-index: 10; text-align: justify; background-color: #c8c8c8; color: #333333 }
.tooltip_above:after, .tooltip_below:after { content: ''; position: absolute; bottom: 100%; left: calc(50% - 20px); border-width: 10px; border-style: solid }
