@charset "UTF-8";
/* CSS Document - Moonburst.com*/
/*resets */
html, body, div, span, object, a, iframe, h1, h2, h3, h4, h5, h6, blockquote, pre, abbr, address, cite, code, del, dfn, img, ins, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, caption, thead, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	background:transparent;
	vertical-align:baseline;
}
.mw1200 {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.mw1000 {
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
.mw900 {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}
.mw800 {
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}
.mh520 {
	min-height: 520px;
}
.mh480 {
	min-height: 480px;
}
.mh280 {
	min-height: 280px;
}
.mh300 {
	min-height: 300px;
}
.mh360 {
	min-height: 360px;
}
.mh380 {
	min-height: 380px;
}
.mh280 {
	min-height: 280px;
}
p {
	margin-top: 6px;
	margin-right: 0px;
	margin-left: 0px;
	margin-bottom: 12px;
}
a {
	color: #2E42C7;
	text-decoration: none;
}
a:hover {
}
.link2 a {
	color: rgba(158, 66, 62, 1.0);
	margin: 0;
	padding: 0;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}
.link2 a:hover {
	color: rgba(192,98,94,1.00);
	text-decoration: none;
}
.link2 a img {
	border :none!important;
}
body {
	color: #555;
	font-size: 1em;
	font-weight: normal;
	font-family: "Helvetica Neue", "Helvetica Light", Verdana, Arial, sans-serif;
	margin: 0px;
	background-color: rgba(242,241,236,1.00);
}
/*============================================= backgrounds -------------------------*/

/*============================================= tables -------------------------*/
.table {
	border-collapse: collapse;
	border-spacing: 0;
}
.tablestyle table, .tablestyle tr, .tablestyle td {
	font-family: "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	font-size: 1em;
	line-height: 1.2em;
	padding-top: 8px;
	padding-right: 8px;
	padding-left: 8px;
	padding-bottom: 8px;
	border: 1px solid rgba(206,215,209,1.00);
}
/* ========================================== tiny header ------------------------- */
.tiny-header {
	color: #6176B3;
	font-size: 0.6em;
	text-align: right;
	letter-spacing: 0.2em;
	width: 98%;
	/* [disabled]padding-top: 10px; */
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 10px;
	margin-top: 10px;
}
.tiny-header a {
	color: #6176B3;
	text-decoration: none;
}
.tiny-header a:hover {
	color:      #ccc;
	text-decoration: underline;
}
.tinyright {
	color: #FFFFFF;
	font-size: .9em;
}
/*=============================================== button links ------------------------------------*/
a.button-link {
	display: block;
	color: #fff;
	background-color: rgba(107,135,116,1.00);
	border-radius: 10px;
	padding-top: 0.6em;
	padding-right: 0.5em;
	padding-left: 0.5em;
	padding-bottom: 0.8em;
	cursor: pointer;
	font-weight: normal;
	font-size: 0.8em;
	-webkit-box-shadow: 1px 1px 10px rgba(0,0,0,0.20);
	box-shadow: 1px 1px 10px rgba(0,0,0,0.20);
	transition: all 0.4s;
}
a.button-link:hover {
	color: #FFFFFF;
	text-shadow: 0px 0px 3px rgba(255,255,255,1.00);
	background-color: rgba(165,189,173,1.00);
}

a.button-link2 {
	display: block;
	color: #546A5B;
	background-color: rgba(242,241,236,1.00);
	border-radius: 14px 0px;
	padding-top: 0.6em;
	padding-right: 0.5em;
	padding-left: 0.5em;
	padding-bottom: 0.8em;
	cursor: pointer;
	font-weight: normal;
	font-size: 0.8em;
	-webkit-box-shadow: 1px 1px 10px rgba(0,0,0,0.20);
	box-shadow: 1px 1px 10px rgba(0,0,0,0.20);
	transition: all 0.4s;
}
a.button-link2:hover {
	color: #546A5B;
	text-shadow: 0px 0px 4px rgba(255,255,255,1.00);
	background-color: rgba(255,255,255,1.00);
}

/* ====================================== padding & contrast boxes ------------------------- */
.reducepad {
	padding: 5px!important;
}
.nopadleft {
	padding-left: 0px!important;
}
.nopadright {
	padding-right: 0px!important;
}
.nopadtop {
	padding-top: 0px!important;
}
.nopadbot {
	padding-bottom: 0px!important;
}
.nopad {
	padding: 0px!important;
}
.morepad {
	padding: 55px 20px!important;
}
.contrast01 {
	background-color: #F3F4F9;
}
.contrast02 {
	background-color: #FAFAFA;
}

/*============================================== text styles --------------------------------*/
.headtxt {
	color: #FFFFFF;
	line-height: 1.5em;
	/* [disabled]text-shadow: 1px 1px 4px #454545; */
	text-decoration: none;
	font-size: 2.8em;
	font-family: 'EB Garamond', serif;
	font-weight: 500;
}
.headsubtxt {
	color: #FFFFFF;
	font-family: 'EB Garamond', serif;
	font-size: 1.8em;
	font-weight: 500;
}
.pageheadtxt {
	color: #4A2E41;
	line-height: 1.4em;
	font-family: 'EB Garamond', serif;
	font-size: 2em;
}
.pagesubtxt {
	color: #643F59;
	line-height: 1.4em;
	font-family: 'EB Garamond', serif;
	font-size: 1.2em;
}
.reducetxt {
	font-size: 0.85em;
}
.enlargetxt {
	font-size: 1.18em;
}
.intro {
	font-style: normal;
	font-weight: 400;
	font-size: 1.2em;
	line-height: 1.4em;
	color: #30513C;
	font-family: 'EB Garamond', serif;
}
.justify {
	text-align: justify;
}
.txtred {
	color: #BD4F34;
}
.txtblue {
	color: #4A6883;
}
em {
	color: #546F5E;
}
h1 {
	/* [disabled]letter-spacing: 0.1em; */
}
h2 {
	color: #4A2E41;
	font-family: 'EB Garamond', serif;
	font-size: 1.6em;
}
h3 {
	color: #33C;
	font-size:    1.1em;
	font-weight:  bold;
	letter-spacing: 0.1em; 
}
	.strut-foot {
	font-family: 'EB Garamond', serif;
	color: #FFFFFF;
	font-size: 1.1em;
	}
.tel a {
	color: #FFFFFF;
}
.tel a:hover {
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	color: #FFFFFF;
}
/*--------------- for php reply --------------*/
.thnxlist {
	color: #444;
	line-height: 1.4em;
}
.thnxresult {
	color: #84629F;
	line-height: 1.4em;
}
/*==================================================== footers-----------------------*/
.footertxt {
	font-style: normal;
	/* [disabled]font-weight: 400; */
	/* [disabled]letter-spacing: 0.06em; */
	color: #FFFFFF;
	text-align: right;
	font-size: 0.9em;
}
.footertxt a {
	color: #B0B0B0!important;
	text-decoration: none;
}
.footertxt a:hover {
	color: #FFFFFF !important;
	text-decoration: none;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}
.copyright {
	color: #B0B0B0;
	font-size: 0.7em;
	text-align: right;
	letter-spacing: 0.2em;
	width: 100%;
	clear: both;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: auto;
	text-transform: uppercase;
}
.copyright a {
	color: #FFFFFF;
	/* [disabled]border-bottom-width: 1px; */
	/* [disabled]border-bottom-style: dotted; */
}
.copyright a:hover {
	color: #7BB2A1;
}
.base-logo {
	float:left;
}
/*============== alignments ===============*/

.alignleft {
	text-align: left;
}
.alignright {
	text-align: right;
}
.aligncenter {
	text-align: center;
}
.clear {
	clear:both;
}
.spaceline {
	margin-bottom: 8px;
	width:         90%;
	border-bottom: 1px solid #CCC;
	margin-right: auto;
	margin-left: auto;
}
/*============================================== borders, boxes and shadows ------------------------------*/
.front-box-wrap {
	max-width: 100%;
	padding: 6px;
	overflow: hidden;
}
.front-box {
	font-style: normal;
	font-size: 1.3em;
	color: #643F59;
	font-family: 'EB Garamond', serif;
	margin-top: 20px;
	margin-bottom: 20px;
}
.img-shad {
	-moz-box-shadow: 0px 1px 2px rgba(0,0,0,0.3);
	-webkit-box-shadow: 0px 1px 3px rgba(0,0,0,0.3);
	box-shadow: 0px 1px 3px rgba(0,0,0,0.3);
}
.google-map-box {
	-moz-box-shadow: 0px 1px 2px rgba(0,0,0,0.3);
	-webkit-box-shadow: 0px 1px 2px rgba(0,0,0,0.3);
	box-shadow: 0px 1px 2px rgba(0,0,0,0.3);
}
.pageshadow-down {
	-moz-box-shadow: 0px 2px 8px rgba(0,0,0,0.40)!important;
	-webkit-box-shadow: 0px 2px 20px rgba(0,0,0,0.40)!important;
	box-shadow: 0px 2px 20px rgba(0,0,0,0.40)!important;
}
.pageshadow-up {
	-moz-box-shadow: 0px -2px 8px rgba(0,0,0,0.40)!important;
	-webkit-box-shadow: 0px -2px 20px rgba(0,0,0,0.40)!important;
	box-shadow: 0px -2px 20px rgba(0,0,0,0.40)!important;
}
.shadow {
	-moz-box-shadow: 0px 1px 8px #333!important;
	-webkit-box-shadow: 0px 1px 8px #A4A4A4!important;
	box-shadow: 0px 1px 8px #A4A4A4!important;
}
.footer-shad {
	-moz-box-shadow: 0px 1px 8px rgba(50,50,50,0.20);
	-webkit-box-shadow: 0px -3px 8px rgba(0,0,0,0.20);
	box-shadow: 0px -3px 8px rgba(0,0,0,0.20);
}
.round {
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	-khtml-border-radius: 3px;
}
.round-slide {
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-khtml-border-radius: 3px;
	margin-bottom: 35px;
	display: block;
	width: 100%;
	margin-top: 20px;
}
.contactbox {
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-khtml-border-radius: 3px;
	border: 1px solid #EFEFEF;
	margin-bottom: 30px;
	padding: 6px;
	display: block;
	text-align: center;
	overflow: hidden;
	margin-top: 20px;
	/* [disabled]margin-left: 4px; */
}
.quote {
	color: #868B17;
	font-size: 1.2em;
	padding: 26px 20px 20px 30px;
	background-image: url(../images/speechmarks.png);
	background-repeat: no-repeat;
	background-position: -4px 0px;
	line-height: 1.4em;
}
.w-border-top {
	border-top:solid 1px #FFFFFF;
}
.w-border-bot {
	border-bottom:solid 1px #FFFFFF;
}
/* ================================================== images -------------------------*/
.gallery {
	max-width: 320px;
	float: right;
	text-align: center;
	padding-bottom: 10px;
	padding-left: 0px;
	margin-left: 40px;
}
.gallery a {
	border-bottom:none!important;
}
img.scalable {
	height: auto !important;
	width: auto !important;
	max-width: 100%;
}
.no-border {
	border: none !important;
}
.img-left {
	float: left;
	margin-right: 12px;
}
.img-right {
	float: right;
	margin-left: 12px;
}
/* ======================= centre floated images on phone portrait - wrap img in div ---------------*/
@media only screen and (max-device-width: 480px) and (orientation : portrait) {

.img-left, .img-right
{
	margin-left: 0px !important;
	margin-right: 0px !important;
	float:none !important;
}
.img-wrap
{
	width: auto !important;
	text-align:center !important;
}
}
/* ================================================= floating images --------------------*/
.free-img-right {
	float:right;
	margin-left: 22px;
	margin-top: 6px;
	margin-bottom: 10px;
}
.free-img-left {
	float:left;
	margin-right: 22px;
	margin-top: 6px;
	margin-bottom: 10px;
}
.free-img-right img, .free-img-left img {
	padding: 3px;
	border: solid 1px #b7c6fa;
}
@media only screen and (max-device-width: 768px) and (orientation : portrait) {
.free-img-right, .free-img-left {
	float:none !important;
	width: auto !important;
	align-content:center!important;
	text-align:center!important;
	margin-left: 0px!important;
	margin-right: 0px!important;
	margin-top: 10px!important;
	margin-bottom: 10px!important;
}
}
/* ========================================= image fade and brightness rollover ----------*/
.bright img {
	filter:brightness(1);
	-webkit-filter: brightness(1);
	-moz-filter:brightness(1);
	-o-filter:brightness(1);
	-ms-filter:brightness(1);
	transition: all 0.4s;
}
.bright img:hover {
	filter:brightness(1.2);
	-webkit-filter: brightness(1.2);
	-moz-filter:brightness(1.2);
	-o-filter:brightness(1.2);
	-ms-filter:brightness(1.2);
	transition: all 0.4s;
}
.fadeimg {
	opacity: 1;
	transition: opacity 300ms ease-in-out;
	-moz-transition: opacity 300ms ease-in-out;
	-webkit-transition: opacity 300ms ease-in-out;
}
.fadeimg:hover {
	opacity: .6;
}
/* ================================================= lists --------------*/
.linklist ul li {
	list-style: none;
	color: #999;
	margin-bottom: 1px;
	width: 180px;
	display: block;
}
.linklist ul {
	margin-left: -28px;
}
.linklist ul li a {
	list-style: none;
	color: #06C;
	padding: 5px 5px 5px 1px;
	display: block;
	text-decoration: none;
	font-size: 0.85em;
}
.linklist ul li a:hover {
	color: #F90;
}
.bullet-list ul li{
	margin-left: 30px;
	line-height:1.6em;
	list-style-type: disc;
	padding-bottom: 10px;
}
.bullet-list ol li{
	margin-left: 30px;
	line-height: 1.5em;
	list-style-type: georgian;
	padding-bottom: 10px;
}
/* ================================================= forms ---------------------------------*/
.formbox {
	margin-top: 0;
	width: 60%;
	margin-left: auto;
	margin-right: auto;
}
.field {
	color: #404040;
	background-color: #FFFFFF;
	margin-top: 4px;
	margin-bottom: 12px;
	padding-top: 8px;
	padding-right: 8px;
	padding-left: 8px;
	padding-bottom: 8px;
	border: 1px solid #EEECE5;
	width: 100%;
	max-width: 380px;
	font-size: 1em;
	border-radius: 4px;
	-webkit-box-shadow: 0px 0px 10px rgba(214,214,214,1.00);
	box-shadow: 0px 0px 10px rgba(214,214,214,1.00);
}
.fieldsm {
	width: 100%;
	max-width: 200px;
}
.field:hover, fieldsm:hover {
	color: #444;
	background-color: #FFFFFF;
	border: 1px solid #A8C3B2;
}
.code {
	color: #DA0079;
	background-color: #FFEFF1;
	margin-top: 2px;
	margin-bottom: 4px;
	padding: 6px;
	border: 1px solid #C2005F;
	max-width: 36px;
}
.code:hover {
	background-color: #FFEFF1;
	border: 1px solid #C2005F;
}
.button {
	color: #FFFFFF;
	background-color: #30513C;
	margin-top: 2px;
	margin-bottom: 2px;
	padding: 10px 30px;
	border: 1px solid #30513C;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-khtml-border-radius: 3px;
	border-radius: 3px;
	font-weight: bold;
	font-size: 1.1em;
	-webkit-box-shadow: 0px 0px 10px rgba(190,190,190,1.00);
	box-shadow: 0px 0px 10px rgba(190,190,190,1.00);
}
.button:hover {
	color: #30513C;
	background-color: #FFFFFF;
	border: 1px solid #30513C;
	cursor: pointer;
}
textarea{
	overflow:auto;
}
.hph {
	visibility: hidden!important;
	height: 0px!important;
	width: 0px!important;
	padding: 0px!important;
	margin-left: -9000px;
	margin-top: -20px;
}

/* ============================================= responsive google map ---------------------*/
.google-map-box {
	/* [disabled]width: 410px; */
	margin-top: 0;
	border: 1px solid #DEDACE;
	padding: 5px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	position: relative;
	padding-top: 0px;
	height: 0px;
	overflow: hidden;
	padding-bottom: 40%;
	/* [disabled]margin-bottom: 20px; */
}
.google-map-box iframe, .map-wrapper object, .map-wrapper embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%; height: 100%;
}
@media only screen and (min-width: 0px) and (max-width: 700px) {
.google-map-box {
	padding-bottom:58%!important;
}
}
/* ======================================= social media icons ---------------------*/
.sm {
	width: auto;
}
.sm img {
	padding: 3px;
}
.twitbox {
	display: block;
	overflow: hidden;
	text-align: center;
}
.img-twit {
	margin-left: 6px;
	padding: 3px;
	float: right;
	border-width: 0;
}

/* ======================================== hidden on desktop ------------------------- */
.dt-hide {
	display:none;
}
@media only screen and (min-width: 0px) and (max-width: 780px) {
.dt-hide {
	display:block!important;
}
}
/* ======================================== hidden on mobile --------------------- */
.mob-hide {
}
@media only screen and (min-width: 0px) and (max-width: 768px) {
.mob-hide {
	display:none!important;
}
}

.mob-hide-plus {
}
@media only screen and (min-width: 0px) and (max-width: 1048px) {
.mob-hide-plus {
	display:none!important;
}
}
/* ======================================= hidden shadows mobile --------------------- */
.noshadmob {
}
@media only screen and (min-width: 0px) and (max-width: 780px) {
.noshadmob {
	-moz-box-shadow: none!important;
	-webkit-box-shadow: none!important;
	box-shadow: none!important;
}
}
/* ======================================= no pad on mobile --------------------- */
.nomobpad {
}
@media only screen and (min-width: 0px) and (max-width: 780px) {
.nomobpad {
	padding:none!important;
}
}
/* ======================================= hidden on large mobile landscape --------------------- */

.mobland-hide {
}
@media only screen and (min-width: 700px) and (max-width: 1000px) and (orientation : landscape) {
.mobland-hide {
	display:none!important;
}
}
/* ======================================= hidden on ipad portrait--------------------- */

.mobport-hide {
}
@media only screen and (min-width: 700px) and (max-width: 1000px) and (orientation : portrait) {
.mobport-hide {
	display:none!important;
}
}
/* ======================================= centre left aligned text on mobile ----------*/
.left-dt-center-mob {
	text-align:left;
}
@media only screen and (max-device-width: 768px) and (orientation : portrait) {
.left-dt-center-mob {
	text-align:center!important;
}
}

/*=================================== Smartphones ONLY special rules for smartphones only --------------*/

@media only screen and (max-device-width: 480px) {
}
@media only screen and (max-device-width: 700px) and (orientation : landscape) {
.tiny-header {
	padding-top: 8px!important;
}
body { -webkit-text-size-adjust: none;
}
}

/* ==================================== menu wrapping on ipad & large phones -----------------------------*/

@media only screen and (min-width: 700px) and (max-width: 1080px) {
.p7PM3 {
padding: 0px !important;
}
.p7PM3-01 ul li a {
font-size: 100%;
padding: 8px 5px;
}
.p7PM3-01 ul ul li a {
padding: 8px 16px;
}
.p7PM3-01 a.trig_closed, .p7PM3-02 a.trig_open {
padding-left: 1.2em;
}
}
@media only screen and (min-width: 700px) and (max-width: 1000px) {
.p7PM3-01 ul li a {
font-size: 92%;
}
}
@media only screen and (min-width: 700px) and (max-width: 840px) {
.p7PM3-01 ul li a {
font-size: 74%;
}
.p7PM3-02 a.trig_closed, .p7PM3-02 a.trig_open {
padding-left: 1.5em;
}
}
@media only screen and (min-width : 768px) and (max-width : 1024px) {
.p7PM3-01 ul li a {
font-size: 80%;
}
}
@media only screen and (min-width : 768px) and (max-width : 1024px) and (orientation : portrait) {
.p7PM3-02 ul li a {
font-size: .9em!important;
padding: 10px 6px!important;
}
}
@media only screen and (min-device-width : 0px) and (max-device-width : 776px) and (orientation : landscape) {
.p7PM3-02 ul li a {
font-size: .9em!important;
padding: 10px 5px!important;
}
}

/* ================================= fixed menu image & visibility --------------------*/
.p7pm3-fixed {
	background-color: #fff;
	text-align: center;
	background-image: url(../images/myp-menu.png);
	background-repeat: no-repeat;
	background-position: 16px 6px;
	box-shadow: 0px 0px 20px rgba(0,0,0,.5);
}
@media only screen and (max-device-width: 700px) and (orientation : landscape) {
.p7pm3-fixed {
	background-image: none!important;
}
}
@media only screen and (min-width: 700px) and (max-width: 1080px) and (orientation : portrait) {
.p7pm3-fixed {
	background-image: none!important;
}
}
@media only screen and (min-width: 700px) and (max-width: 1080px) and (orientation : landscape) {
.p7pm3-fixed {
	background-image: none!important;
}
}
@media only screen and (min-width: 700px) and (max-width: 1000px) and (orientation : landscape) {
.p7pm3-fixed {
	background-image: none!important;
}
}
/*Remove button shadows if any - change p7 css number if needed*/
.p7pm3-fixed.p7PM3-16.shadows ul li a {
	box-shadow: 5px 5px 10px rgba(0,0,0,0) !important;}
