/* 
  ------------------------------------------------
  Custom CSS by Schafer Creative LLC
  Web fonts - Google FONT API
  ------------------------------------------------
    font-family: 'Noto Serif SC', serif;
    font-family: 'Cinzel Decorative', cursive;
    font-family: 'Assistant', sans-serif;
	
9A819E purple - 154, 129, 158
C6C5B9 gray - 198,197,185
EFF1ED lt gray - 239,241,237
DAD2D8 lavender - 218,210,216
000000 black
Bright Purple #333366 51, 51, 102
*/

body {
	margin:0;
	top:0;
	background-color:#FFF; /* EFF1ED */
	font-size:100%;
	font-family:'Assistant', 'Arial Narrow', Arial, sans-serif;
text-rendering: optimizeLegibility !important; /*  applies kerning to the font */
 -webkit-font-smoothing: antialiased !important; /* for webkit browsers such as chrome */
 -moz-osx-font-smoothing:grayscale !important; /* FF on OS X */
}

div, img { margin:0; padding:0; }
img { vertical-align:bottom; }
img a { margin:0; padding:0; border:0; cursor:pointer; }

/* reduce firefox font size - bug fix */
@-moz-document url-prefix() {body {font-size:88%;}}

/* ----------------- ROW ------------------*/
.row { 
	margin:0 auto; 
	padding:0; 
	max-width:none !important;
	text-align:center; 
}
.row:after {
	visibility: hidden;
	display: block;
	content: "\0020";
	clear: both;
	height: 0;
}

/* ------------- Layout Wrap --------------*/
#layout {max-width:none; margin:0px auto; background-color: #FFF;}
.column-contain { 
	margin:0 auto; 
	padding:0; 
	display:block; 
	width:100%; 
	max-width:1240px; 
	height:auto; 
	box-sizing:border-box;
}
/*  ------------------------  */
.column-half,
.column-third, 
.column-fourth, 
.column-fifth, 
.column-twothirds, 
.column-threefourths, 
.column-full {box-sizing:border-box; float:left;}

.column-half {width:50%;}
.column-third {width:33.3333%;}
.column-fourth {width:25%;}
.column-fifth {width:20%;}
.column-twothirds {width:66.6666%;}
.column-threefourths {width:75%;}
.column-full {width:100%;}
/*  ------------------------  */
.column-content { padding:30px 30px; text-align:left; background-color:transparent!important; }
/*  ---------------------  */


#logo {
	margin:0;
	padding:10px 0 18px 30px;
	width:35%;
	height:auto;
	display:block;
	box-sizing:border-box;
	float:left;
	text-align:left;
	position: relative;
	z-index:20000;
	background-color:transparent;
}


#tagline {
	margin:0;
	padding:40px 30px 0 0;
	display:block;
	box-sizing:border-box;
	width:auto;
	height:auto;
	float:right;
	position:relative;
	font-family:'Noto Serif SC', Times New Roman, serif !important;
}
#tagline p {
	margin:0; 
	padding:4px 4px 5px 4px; 
	color:#99809D; 
	font-size:140%; 
	text-transform:uppercase; 
	letter-spacing:0.06;
	border-top:2px solid #99809D;
	border-bottom:2px dotted #99809D;
}

#mainmenu {
	margin:0;
	padding:0;
	display:block;
	box-sizing:border-box;
	width:65%;
	height:auto;
	vertical-align:bottom;
	position:relative;
	float:left;
	border:0;
	background-color:#369;
}


/*  --------------------  */
img.scalable {
	height: auto !important;
	width: auto !important;
	max-width: 100%;
	vertical-align: bottom;
}

/*Headings*/
h1, h2, h3, h4 {
	margin:0;
	padding:5px 0 5px 0;
	line-height:1.2;
	font-family:'Noto Serif SC', Times New Roman, serif !important;
	letter-spacing:0.04em !important;
	text-transform:uppercase;
	font-weight:300!important;  
}

h1 { color:#99809D; font-size:220%; font-family:'Cinzel Decorative', cursive, Times New Roman, serif!important; }
h2 { color:#99809D; font-size:140%; padding-top:12px!important; }
h3 { color:#9A819E; font-size:115%;}

h3 a { 
	display:block; 
	box-sizing:border-box; 
	margin:0 auto 0 auto!important; 
	width:84%;
	padding:12px 0!important; 
	border:2px dotted #EFF1ED;
	text-decoration:none!important;
	text-align:center!important;
}
h3 a:link, h3 a:visited {background-color:rgba(255,255,255,0.3);}
h3 a:hover, h3 a:active, h3 a:focus {color:#EFF1ED!important; background-color:rgba(255,255,255,0.7);}


.column-content p { margin:10px 0px; }
.column-content p, 
.column-content li { font-size:105%; line-height:1.5; color:#000; }
.column-content a:link, .column-content a:visited { color:#9A819E; }
.column-content a:hover, .column-content a:active, .column-content a:focus { color:#000; }

/*Current Mark*/
.column-content a.nodecor {font-weight:normal; text-decoration:none;}
.column-content .imgctr {}
.column-content ul { margin:10px 0px 5px 10px; padding-left:15px; }
.column-content li { margin:5px 0px; padding:0; }



/* -------------- FOOTER ----------- */
#footer {
	padding:10px 0;
	background-color:#333366;
}
#footer p { padding:3px 0; font-size:100%; color:#DAD2D8;}
#footer h2 { padding-top:0; font-size:300%!important; color:#DAD2D8!important; font-family:'Cinzel Decorative', cursive, serif !important;}
#footer ul { margin:0; padding:0; margin-top:6px; }
#footer li {
	list-style-type: none;
	padding: 7px 0 4px 0;
	line-height:1;
	border-top:1px dashed #DAD2D8;
}
#footer a:link, #footer a:visited { text-decoration:none; white-space:nowrap; text-transform:uppercase; color:#DAD2D8!important; } 
#footer a:hover, .footer a:active, .footer a:focus { color:#9A819E!important; }
/* ------------------------------------ */


/* ---------------- BANNERS AND BACKGROUNDS -------------- */
#banner {margin:0; padding:0; border:0; background-color:transparent!important; }

.bannerall, #banner .bannerall,
#banner .bannerhome,
#banner .pageheader,
#banner .homeheader {
	display:block;
	box-sizing:border-box;
	width:100%;
	height:auto;
	position:relative;
	background-size:cover;
	background-attachment: scroll;
	background-repeat:no-repeat;
	background-position:center center;
	z-index:200;
	overflow:hidden; /* fix for IE6 box bug */
-webkit-background-size:cover;
-moz-background-size:cover;
-o-background-size:cover;
}
#banner .bannerhome {background-position:top center!important;}

/* ----- HEADER - SUB-PAGE HEADER - MSG ROW ----- */
#banner .homeheader, 
#banner .pageheader {
	margin:0 auto;
	padding:0;
	width:100%;
	max-width:1280px;
	font-family:'Noto Serif SC', Times New Roman, serif !important;
	font-weight:300!important;
	text-align:center!important;
}

#banner .homeheader {
	margin:545px 0 0 0 !important;
	padding:30px 20px 0 20px!important;
	float:right; 
	width:52%!important;
	max-width:800px !important;
	height:135px;
	background-color:rgba(84,59,88,0.60)!important;
}
#banner .homeheader h1, #banner .homeheader p {
	margin:0;
	line-height:1.1 !important;
	color:#FFF!important;
}
#banner .homeheader h1 {
	text-transform:uppercase!important;
	font-size:200%!important;
}
#banner .homeheader p {
	padding:2px 10px 20px 10px;
	font-size:150%!important;
}

#banner .pageheader h1 {
	margin:0 auto;
	line-height:1.1 !important;
	text-transform:uppercase!important;
	padding:25px!important; 
	font-size:200%!important; 
	color:#333366!important;
}

/* grad blue sub-page titles */
.grad-blk {background: linear-gradient(90deg, #000 33%, #444); -webkit-transform-style:preserve-3d;}
.grad-gray180 {background: linear-gradient(180deg, #FFF, 80%, rgba(198,197,185,0.30)); -webkit-transform-style:preserve-3d;}
.grad-ltgray90 {background: linear-gradient(90deg, #FFF, 80%, rgba(239,241,237,1.0)); -webkit-transform-style:preserve-3d;}
#grad-gray {background-image: linear-gradient(rgba(198,197,185,0.60), white);}

.bgwht{background-color:#FFF;}
.bgpurple{background-color:#9A819E;}
.bglav{background-color:#DAD2D8;}
.bgdk{background-color:#333366;}
.bgnone {background-color:transparent!important;}
.bgltgray {background-color:#EFF1ED;}
.bggray {background-color:#C6C5B9;}


#banner .bnr650, .bnr650 {height:650px;}
#banner .bnr-home {background-image:url(../imgs/model-eyebrow.jpg);}
.bgbrush {background-image: url(../imgs/brush-stroke.png);}


/* -- COLUMN CONTENT adjustments -- */
	.padbtm20 {padding-bottom:20px!important;}
	.padbtm30 {padding-bottom:26px!important;}
	.padtop10 {padding-top:10px !important;}
	.padtop20 {padding-top:20px !important;}
	.padtop30 {padding-top:30px !important;}
	.padbox20 { padding:20px!important; }
	.padbox30 { padding:30px!important; }
	
	.vertnopad {padding-top:0px!important; padding-bottom:0px!important;}
	.vertnopad-top { padding-top:0px !important; }
	.vertnopad-btm { padding-bottom:0px !important; }
	.vertpad30 { padding-top:30px !important; padding-bottom:30px!important; }
	.vertpad40 { padding-top:40px !important; padding-bottom:40px!important; }
	.vertpad60 { padding-top:60px !important; padding-bottom:60px!important; }

.nowrap {text-wrap:none; white-space:nowrap; }
.shadow {box-shadow: 3px 2px 6px 2px rgba(22,22,22,.5); 
		-webkit-box-shadow: 3px 2px 6px 2px rgba(22,22,22,.5);
		-moz-box-shadow: 3px 2px 6px 2px rgba(22,22,22,.5);}
	
	/* add curves and border */
	.imgcrv { border:3px solid #EFF1ED; border-radius:12px; border-top-left-radius:36px; border-bottom-right-radius:36px; padding:0px; }

	.txtsm {font-size:90%!important;}
	.txtmed{font-size:115%!important;}
	.txtlg{font-size:130%!important;}
	.txtbig {font-size:150%!important; line-height:1.2!important;}
	.txtbigger {font-size:220%!important; line-height:1.2!important;}
	.txtmsv {font-size:320%!important; line-height:1.2!important;}
	.txtctr {text-align:center!important;}
	.txtrt {text-align:right!important;}
	.txtlt {text-align:left!important;}
	.upper {text-transform:uppercase !important;}

	.brdrlt { border:1px solid #EFF1ED; }
	.brdrlt3 { border:3px solid #EFF1ED; }
	.brdrdk3 {border:3px solid #C6C5B9;}
	
	.brdrwidemed { 
		border:30px solid;
		border-color:rgba(200,199,199,0.25);
		border-right:none;
		border-left:none;	
	}
	.brdrwidetoplav { 
		border:30px solid;
		border-top-color:rgba(154,129,158,0.90); /* 9A819E purple */
		border-bottom:none;
		border-right:none;
		border-left:none;	
	}
	.brdrtop2dk { 
		border:3px solid;
		border-color:rgba(1,1,1,0.15);
		border-right:none;
		border-bottom:none;
		border-left:none;	
	}


/* #top {margin:0 auto; padding:6px 0!important;}
#top p {margin:0!important; padding:0!important; color:#FFF!important; font-size:110%!important; text-transform:uppercase!important; letter-spacing:0.07em!important; line-height:1.1!important; }
#top .Tright {margin:0 20px!important; padding:0!important; float:right !important; text-align:right!important;} */

#txtclrwht p, #txtclrwht p ul, #txtclrwht ul, #txtclrwht p ul li, #txtclrwht ul li, #txtclrwht h1, #txtclrwht h2, #txtclrwht h3, #txtclrwht h4 {color:#FFF !important;}
#txtclrwht p a, #txtclrwht a, #txtclrwht a:link, #txtclrwht a:visited {color:#FFF!important;}
#txtclrwht a:hover, #txtclrwht a:active, #txtclrwht a:focus {color:#AAA!important;}

#txtlav p, #txtlav p ul, #txtlav ul, #txtlav p ul li, #txtlav ul li, #txtlav h1, #txtlav h2, #txtlav h3, #txtlav h4 {color:#DAD2D8 !important;}
#txtlav p a, #txtlav a, #txtlav a:link, #txtlav a:visited {color:#DAD2D8!important;}
#txtlav a:hover, #txtlav a:active, #txtlav a:focus {color:#FFF!important;}

#txtpurp p, #txtpurp p ul, #txtpurp ul, #txtpurp p ul li, #txtpurp ul li, #txtpurp h1, #txtpurp h2, #txtpurp h3, #txtpurp h4 {color:#333366 !important;}
#txtpurp p a, #txtpurp a, #txtpurp a:link, #txtpurp a:visited {color:#333366!important;}
#txtpurp a:hover, #txtpurp a:active, #txtpurp a:focus {color:#9A819E!important;}	

#txtclrblk p, #txtclrblk p ul, #txtclrblk ul, #txtclrblk p ul li, #txtclrblk ul li, #txtclrblk h1, #txtclrblk h2, #txtclrblk h3, #txtclrblk h4 {color:#000 !important;}
		

/* fix for floating div collapse */
.clearfloat {
	clear:both;
    height:0;
    font-size: 0px;
    line-height: 0;
	visibility: hidden;
	content: "\0020";
}

/* columns of equal height */
/* ---------------------------- */
.p7ehc-a, .p7ehc-b, .p7ehc-c, .p7ehc-d, .p7ehc-e { font-size: inherit; }



/* -------------- Mobile ---------------------------------- */
@media only screen and (min-width: 0px) and (max-width: 880px) {
#logo {margin:0 auto!important; padding:12px 0 5px 0!important; float:none!important; width:auto!important; text-align:center!important;}
#tagline {padding:15px !important; float:none!important;}
#tagline p {padding-top:0px!important; border-top:0px!important; border-bottom:0px!important;}
#layout {max-width:none!important;}
#mainmenu {margin:0px auto; padding:0 !important; float:none!important; width:auto!important; max-width:none!important; clear:both!important;}

.column-full, 
.column-half, 
.column-third, 
.column-fourth, 
.column-fifth, 
.column-twothirds, 
.column-threefourths {float:none!important; width:auto!important;}

/* MAIN CONTENT */
.column-contain {width:auto!important;}
.column-content {height:auto!important; max-height:888678px; border:none!important; padding:15px 30px!important;}
.column-content .imgctr {margin:0 auto!important; text-align:center!important;}

h2, h3, h4 {padding-top:10px!important;}

#banner .bnr650, .bnr650 {height:350px;}
#banner .bnr-home {background-image: url(../imgs/microblade-model.jpg);}
#banner .homeheader {
	padding:25px!important;
	float:none!important; 
	width:auto!important;
	max-width:none!important;
}
#banner .homeheader h1 {font-size:170%!important;}
#banner .homeheader p {font-size:140%!important;}

#banner .pageheader {text-align:center!important;}
#banner .pageheader h1 {font-size:180%!important; margin:0 auto!important; padding:30px!important;}

	.txtmed{ font-size:110% !important;}
	.txtlg{ font-size:120% !important;}
	.txtbig { font-size:130% !important;}
	.txtmsv { font-size:220% !important;}
	
	.txtctr { margin-left:auto!important; margin-right:auto!important;}

#top .Tright {float:none!important; margin:0 auto!important; text-align:center!important;}


/* footer */
.row .footer .column-content { width:auto!important; padding:0 25px !important; }
.footer ul { margin-top:0px; }
.footer li { font-size:100%!important; line-height:1.5!important;}

/*other*/
	.padbox20 { padding:0px!important; } /* keep */
	.padbtm20 { padding-bottom:15px!important; }
	.padbtm30 { padding-bottom:20px!important; }
	.padtop20 { padding-top:15px !important; }
	.padtop30 { padding-top:20px !important; }
	.vertpad30, .vertpad40, .vertpad60 { padding-top:15px!important; padding-bottom:15px!important; }
}


@media only screen and (min-width: 0px) and (max-width: 480px) {
	img { margin:0; overflow:hidden; }  /* iphone home img bug fix */
	.footer p {text-align:center!important;}

	#banner .bnr600, .bnr 600 {height:auto !important;}
}
