@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;
}

.mh300 {
	min-height: 300px;
}
.mh360 {
	min-height: 360px;
}
.mh380 {
	min-height: 380px;
}
.mh400 {
	min-height: 400px;
}
.mh430 {
	min-height: 430px;
}
.mh500 {
	min-height: 500px;
}
.mh530 {
	min-height: 530px;
}
.mxh30{
	max-height: 30px;
	min-height: 30px;
}
p {
	line-height: 1.4em;
}
.link1 a {
	color: #4A3787;
	text-decoration: none;
	border-bottom: dotted 1px;
}
.link1 a:hover {
	color: #00879F;
}
.link2 a {
	color: #761BC7;
	text-decoration: none;
	border-bottom: dotted 1px;
}
.link2 a:hover {
	color: #048086;
	text-decoration: none;
}
/*=================== accept cookie link ---------------------*/
.link-ac a {
	color: #444;
	text-decoration: none;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}
	.link-ac a:hover {
	color: #888;
	text-decoration: none;
}
/*-----------------------------------*/
body {
	color: #555555;
	font-size: 1em;
	font-weight: normal;
	font-family: "Helvetica Neue", "Helvetica Light", Verdana, Arial, sans-serif;
	margin: 0px;
	background-color: #FFFFFF;
}
/*============================================= backgrounds -------------------------*/
.bg-01 {
	background-image: url(../backs/026alt.jpg);
}
.bg-02 {
	background-image: url(../images/012base.jpg);
}
.bgc-01 {
	/* [disabled]background-color: rgba(237,232,245,0.46); */
	background-image: -webkit-linear-gradient(270deg,rgba(255,255,255,0.40) 65.45%,rgba(255,255,255,0.00) 100%);
	background-image: -moz-linear-gradient(270deg,rgba(255,255,255,0.40) 65.45%,rgba(255,255,255,0.00) 100%);
	background-image: -o-linear-gradient(270deg,rgba(255,255,255,0.40) 65.45%,rgba(255,255,255,0.00) 100%);
	background-image: linear-gradient(180deg,rgba(255,255,255,0.40) 65.45%,rgba(255,255,255,0.00) 100%);
}
.bg-fixed {
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
@media only screen and (min-width: 0px) and (max-width: 1080px) {
.bg-fixed {
	background-attachment: scroll;
}
}
@media only screen and (min-device-width : 0px) and (max-device-width : 1150px) and (orientation : landscape) {
.bg-fixed {
	background-attachment: scroll;
}
}

/*============================================= tables -------------------------*/
.table {
	border-collapse: collapse;
	border-spacing: 0;
}
.tablestyle table, .tablestyle tr, .tablestyle td {
font-family: 'Rubik', sans-serif;
	font-size: 0.925em;
	line-height: 1.2em;
	padding: 6px;
	border: 1px solid rgba(0,153,255,1);
}
/* ========================================== 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 ------------------------------------*/
/* form button */
.button {
	color: #FFFFFF;
	background-color: rgba(74,55,135,1.00);
	margin-top: 6px;
	margin-bottom: 2px;
	padding: 10px 30px;
	border: 1px solid rgba(74,55,135,1.00);
	-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: rgba(74,55,135,1.00);
	background-color: #FFFFFF;
	cursor: pointer;
}
/* end form button */

a.button-link {
	display: block;
	color: #fff;
	background-color: rgba(74,55,135,1.00);
	border-radius: 4px;
	padding-top: 0.8em;
	padding-right: 0.8em;
	padding-left: 0.8em;
	padding-bottom: 0.8em;
	font-size: 1.1em;
	text-decoration: none;
	-webkit-box-shadow: 1px 1px 8px rgba(0,0,0,0.20);
	box-shadow: 1px 1px 8px rgba(0,0,0,0.20);
	transition: all 0.4s;
	max-width: 200px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0px;
}
a.button-link:hover {
	color: rgba(249,250,251,0.90);
	background-color: rgba(122,101,192,1.00);
	cursor: pointer;
}


/* ====================================== padding 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;
}
/*============================================== text styles --------------------------------*/
.headtxt {
	color: rgba(57,37,115,1.00);
	font-size: 4em;
	line-height: 1.5em;
	font-family: 'Public Sans', sans-serif;
	text-decoration: none;
	font-weight: 400;
	padding-top: 8px;
	text-shadow: 2px 2px 4px rgba(255,255,255,1.00);
	padding-bottom: 8px;
}
.headsubtxt {
	font-size: 1.9em;
	font-weight: 400;
	color: #4A3F80;
	font-family: 'Public Sans', sans-serif;
	text-shadow: 2px 2px 2px rgba(255,255,255,1.00);
}
.headsubtxt2 {
	font-size: 1.4em;
	font-weight: normal;
	color: rgba(0,118,111,1.00);
	font-family: 'Public Sans', sans-serif;
	text-shadow: 2px 2px 2px rgba(255,255,255,1.00);
}
.pageheadtxt {
	color: #5E3583;
	font-size: 1.6em;
	line-height: 1.4em;
	font-family: 'Public Sans', sans-serif;
	font-weight: normal;
}
.pageheadtxt a {
	color: rgba(139,136,186,1.00);
	text-decoration: none;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}
.pageheadtxt a:hover {
	color: rgba(148,117,175,1.00);	
}
.pagesubtxt {
	color: #A1A1A1;
	font-size: 1.2em;
	line-height: 1.3em;
	font-weight: normal;
	font-family: 'Public Sans', sans-serif;
}
.intro {
	font-style: normal;
	font-weight: 400;
	font-size: 1.2em;
	line-height: 1.4em;
	color: #4A3787;
}
.justify {
	text-align: justify;
}
.reducetxt {
	font-size: 0.85em;
}
.enlargetxt {
	font-size: 1.18em;
}
.txtred {
	color: #BD4F34;
}
.txtblue {
	color: #4A6883;
}
em {
	color: #A358D6;
}
/*--------------- for php reply --------------*/
.thnxlist {
	color: #444;
	line-height: 1.4em;
}
.thnxresult {
	color: #84629F;
	line-height: 1.4em;
}

/*============== 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 {
	-moz-border-radius: 3px 3px 2px 2px;
	-webkit-border-radius: 3px 3px 2px 2px;
	border-radius: 3px 3px 2px 2px;
	border: 1px solid #fff;
	padding: 0px 10px 6px;
	background-color: cccccc; 
}
.contact-box {
	-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;
}
.img-shad {
	-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);
}
.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 {
	-moz-box-shadow: 0px 1px 8px #333!important;
	-webkit-box-shadow: 0px 1px 8px rgba(0,0,0,0.20)!important;
	box-shadow: 0px 1px 8px rgba(0,0,0,0.20)!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;
}
.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;
}
.no-border {
	border: none !important;
}
.img-left {
	float: left;
	margin-right: 12px;
}
.img-right {
	float: right;
	margin-left: 12px;
}
.img50 {
max-width: 100%;
max-height: 50px;
}
.img70 {
max-width: 100%;
max-height: 70px;
}
.img100 {
max-width: 100%;
max-height: 100px;
}
.icons-front {
	max-width: 100%;
	max-height: 40px;
	margin-bottom: -6px;
	opacity: .8;
}
/* ======================= 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;
	width: auto !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);
	transition: all 0.25s ease;}
.bright img:hover {
	filter:brightness(1.1);
	cursor: pointer;
}

.fadeimg {
	opacity: 1;
	transition: opacity .25s ease;}
.fadeimg:hover {
	opacity: .6;
}

.grow { transition: all .25s ease; }
.grow:hover {
	transform: scale(1.1);
	cursor: pointer;
	filter: brightness(120%);
}
/* ================================================= 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: 6px;
}
.bullet-list ol li{
	margin-left: 30px;
	line-height: 1.5em;
	list-style-type: georgian;
	padding-bottom: 10px;
}
/*==================================================== footers-----------------------*/
.footertxt {
	font-style: normal;
	letter-spacing: 0.06em;
	color: #BBBBBB;
	text-align: right;
	font-size: 0.9em;
}
.footertxt a {
	color: #BBBBBB;
	text-decoration: none;
}
.footertxt a:hover {
	color: #fff;
	border-bottom: dotted 1px;
}
.copyright {
	color: #FFFFFF;
	font-size: 0.7em;
	text-align: right;
	letter-spacing: 0.1em;
	width: 100%;
	clear: both;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: auto;
	text-transform: uppercase;
}
.copyright a {
	color: #666;
}
.copyright a:hover {
	color: #fff;
}
.base-logo {
	float:left;
	max-width: 100%;
	max-height: 90px;
	opacity: 0.8;
}
.base-contact {
	font-style: normal;
	letter-spacing: 0.06em;
	color: #BBBBBB;
	text-align: right;
	font-size: 0.9em;
}
/* ================================================= forms ---------------------------------*/
.formbox {
	margin-top: 0;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
.field {
	color: #666666;
	background-color: #FFFFFF;
	margin-top: 4px;
	margin-bottom: 12px;
	padding-top: 8px;
	padding-right: 8px;
	padding-left: 8px;
	padding-bottom: 8px;
	border: 1px solid #E2E2E2;
	width: 100%;
	max-width: 400px;
	font-size: 0.95em;
	border-radius: 3px;
	-webkit-box-shadow: 0px 0px 16px rgba(0,0,0,0.10);
	box-shadow: 0px 0px 16px rgba(0,0,0,0.10);
}
.fieldsm {
	width: 100%;
	max-width: 50px;
}
.field:hover, .fieldsm:hover {
	color: #444;
	background-color: #FFFFFF;
	border: 1px solid #DDBD98;
}
.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;
}

.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: 33%;
	/* [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 {
	border: none!important;
	max-width: 50px!important;
}

/* ======================================== 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: 780px) {
.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;
}
}
