body {
	margin: 0em;
	font-family: "Trebuchet MS", Trebuchet, Verdana, Helvetica, sans-serif;
	font-size:12pt;
}

h1, h2, h3, h4 {
	/*font-family: "Quintessential", "Comic Sans MS", "Lucida Grande", "Lucida Sans Unicode", Verdana, Helvetica, sans-serif;*/
	font-family: "Quintessential", "Comic Sans MS", "Lucida Grande", "Lucida Sans Unicode", Verdana, Helvetica, sans-serif;
	font-weight:bold;
	margin-top:0em;
	margin-bottom:.5em;
	text-transform: uppercase;
	text-shadow: 0 0 1px #667;
}

h1 {
	font-size:26pt;
}

h2 {
	font-size:22pt;
}

h3 {
	font-size:18pt;
}

h4 {
	font-size:14pt;
}

p,td {font-size:12pt; margin-top:0em;}
dt,th {font-size:12pt; font-weight:bold;}
dd,ol,ul {font-size:11pt;}
pre {font-family: "Menlo", "Monaco", "Courier New", "Courier", monospace; font-size:11pt;}
.floatMenu {font-family: Verdana, Helvetica, sans-serif; font-size:90%; margin:0em;}
.hmenu {font-family: Verdana, Helvetica, sans-serif; font-size:9pt; color:#FFFFFF; font-weight:bold;}
.menuSubhead {font-family: Verdana, Helvetica, sans-serif; font-size:9pt; color:#000000; font-weight:bold;}
.menuOption {font-family: Verdana, Helvetica, sans-serif; font-size:9pt; font-weight:normal;}
.form {font-family: Verdana, Helvetica, sans-serif; font-size:10pt; color:#000000;}
.foot {font-family: Verdana, Helvetica, sans-serif; font-size:9pt; color:#666666;}
.warn {color:#ff3333; font-weight:bold}
.clickText {color:#000066; text-decoration:none;}
/*A:link {text-decoration:underline; Color:#000066;}
A:active {text-decoration:underline; Color:#009900;}
A:visited {text-decoration:underline; Color:#003300;}
A:hover {text-decoration:underline; Color:#AA0000;}*/
A:link IMG {border-style: none}
A:active IMG {border-style: none}
A:visited IMG {border-style: none}
A:hover IMG {border-color: #AA0000}

li.homePage {
	margin-bottom:0.4em; 
	margin-left:-1em
	}
	
.homePage li {
	margin-bottom:0.4em; 
	margin-left:-1em	
}

.customRosaryPart {
	display:block;
	margin-left:auto;
	margin-right:auto;
	cursor:pointer;
	}
	
.divShadow {
	box-shadow:20px 20px 40px 10px #666666;
}

button, submit {font-family: Verdana, Helvetica, sans-serif; font-size:10pt;}
select, textarea, input {
	/*font-family: courier, "courier new", monospace;*/
	font-size: 11pt;
	font-family: monospace;
	}
	
.mono {
	font-family: "Menlo", "Monaco", "Courier New", "Courier", monospace;
	font-size: 80%;
	}
	
.cDiv {
	-webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
	padding-bottom: 1em;
	overflow: auto;
}

img, input, text-area {
	max-width:100%;
}


header, section, article, aside, nav, footer {
	display: block;
}

A:link {text-decoration:underline; Color: var(--darkTone);}
A:active {text-decoration:underline; background-color: var(--halfTone);}
A:visited {text-decoration:underline; Color: var(--darkTone2);}
A:hover {text-decoration:underline; background-color: var(--halfTone);}		
.hideInput {
	border: none;
	background:  var(--baseTone);
	text-align: right;
}
.highlightCell {
	background-color: var(--contrast1);
}
img.center {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.cartDiv {
	-moz-box-shadow: 3px 3px 5px 0 #000000;
	-webkit-box-shadow: 3px 3px 5px 0 #000000;
	box-shadow: 3px 3px 5px 0 #000000;
	background-color: var(--contrast1); 
	position:absolute; 
	top:1em; 
	left:1em;
	border:2px solid black;
	opacity:0.6;
	filter:alpha(opacity=60);
	display:block;
	transition: opacity 0.5s;
}
.cartDiv:hover {
	opacity:1;
	filter:alpha(opacity=100);
}
	

/* IE ignores z-index declarations for relatively-positioned items. */
/* Use margin instead of relative positioning to accomodate IE's weird handling of z-index layers. */
/* Must force IE8 to emulate 7 due to CSS inconsistencies. */

.menu * {
	font-size:11px;
	font-family:verdana,arial,helvetica,san-serif;
	z-index:90;
	background: var(--darkTone);
	opacity: 1;
	transition: opacity 0.25s, background 0.25s, color 0.25s;
	transition-delay: 0s;
}
	
.menu ul {
	display: block;
	padding:0;
	margin:0;
	list-style-type:none;
	-moz-box-shadow: 3px 3px 15px 3px #000000; 
	-webkit-box-shadow: 3px 3px 15px 3px #000000;
	box-shadow: 3px 3px 15px 3px #000000; 
}	

.dropshadow {
	border-top: 1px solid black;
	border-right: 2px solid black;
	border-bottom: 2px solid black;
	border-left: 1px solid black;
}
	
.menu a, menu a:visited {
	display:block;
	text-decoration:none; 
	color:white; 
	/*background: var(--darkTone);*/
	padding-top:0.4em;
	padding-bottom: 0.4em;
	padding-left: 0.5em;
	padding-right: 0.5em;
	width: 13em;
	/*font-weight:bold;
	text-align:center;*/
	}

.menu a:hover {
	color: var(--darkTone2); 
	background: var(--halfTone);
	}
	
/* Adjust position of drop-down menus */
.menu ul ul {
	visibility:hidden;
	position:absolute;
	margin-top: -3em;
	margin-left: 12.5em;
	opacity: 0;
	transition:visibility 0s linear 0.25s;
}

@media only screen and (max-width: 768px) {
	.colCount {
		columns: 1;
	}
	html, body {
		overflow-x: hidden;
	}
	#mobileNav {
		display: block;
		position: fixed;
		top: 7em;
		left: 1.5em;
	}
	.menu > ul {
		display: block;
		position: fixed; 
		top:5em;
		left:2.5em;
		visibility:hidden;
		-moz-box-shadow: 3px 3px 15px 3px #000000; 
		-webkit-box-shadow: 3px 3px 15px 3px #000000;
		box-shadow: 3px 3px 15px 3px #000000; 
	}
	.menu > ul > li {
		display: block;
	}
	.menu div:hover + ul,
	.menu > ul:hover {
		visibility:visible;
	}
	.menu * {
		font-size:12px;
	}
}

@media only screen and (min-width: 768px) {
	.colCount {
		columns: 3 18em;
	}
	#mobileNav {
		display: none;
	}
	.menu > ul {
		display:table;
		margin-right: auto;
		margin-left: auto;
		border-left: 1px solid white;
		box-shadow: unset;
	}
	.menu > ul > li {
		display: table-cell;
		max-width: 13em;
		vertical-align:middle;
		border-right:1px solid white;
	}
	.menu > ul a {
		font-weight:bold;
		text-align:center;
		width: unset;
	}
	.menu ul ul {
		margin-left:1em;
		margin-top:-0.3em;
	}
}
	
/* Maintains "crumb" trail */
.menu :hover > a {
	color: var(--darkTone2); 
	background: var(--halfTone);
}

.menu ul ul a {
	font-weight:normal;
	text-align:left;
	width:13em;
	border-right: 2px solid black;
	border-left: 1px solid black;
}

	
/* Adjust position of fly-out menus */
.menu ul ul ul {
	margin-left:12.5em; 
	margin-top:-3em;
}

.ieTable table {
	/*position:absolute; 
	top:0; 
	left:0; */
	float:left;
	border-collapse:collapse;
	border: 0;
	padding: 0;
	margin-bottom: 0px;
	}
	
.menu ul {z-index:91;}
.menu ul ul {z-index:92;}
.menu ul ul ul {z-index:93;}	
.menu ul ul ul ul {z-index:94;}	

/* Control appearance of different levels */	
.menu ul :hover ul, 
.menu ul :hover ul :hover ul,
.menu ul :hover ul :hover ul :hover ul {
	visibility:visible;
	opacity: 1;
}

.menu ul :hover ul ul,
.menu ul :hover ul :hover ul ul {
	visibility:hidden;
	opacity: 0;
	transition:visibility 0s linear 0.25s;
}

div.payment label {
	display: block;
	text-indent: -2em;
	padding-left: 3em;
	margin-bottom: .5em;
}


/* Add this to index.php <head> or styleTemplate.css */
.mainButtonLink {
    display: inline-block;
    width: 10em; /* Adjust as needed */
    height: 6em; /* Adjust as needed */
    font-size: 12pt; /* Adjust base size */
    line-height: 1.4;
    border-radius: 1em;
    background-color: #e0e0e0;
    color: #333;
    text-decoration: none;
    text-align: center;
    margin: 0.5em;
    padding: 1em;
    border: 1px solid #ccc;
    vertical-align: top;
    box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
    transition: background-color 0.2s ease, box-shadow 0.2s ease;
}
.mainButtonLink:hover {
    background-color: #d0d0d0;
    box-shadow: 3px 3px 7px rgba(0,0,0,0.2);
}
.mainButtonLink .buttonText {
    display: inline-block;
    vertical-align: middle;
    font-weight: bold;
}

/* Basic responsiveness for buttons */
@media (max-width: 600px) {
    .mainButtonLink {
        width: 80%; /* Stack buttons on small screens */
        margin: 0.5em auto;
        display: block;
        height: auto; /* Allow height to adjust */
        padding: 1.5em 1em;
    }
}