/*
 Table Of Contents 
 
 1.) Default Styles

 2.)  Home - page
 2.1)  Header
 2.2)  Content - Main
 2.3)  Footer

 3.)  Inner - page

===============================================*/

/*
 1.) Default Styles
 ----------------------------------------*/

* {
	margin: 0;
	padding: 0;
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* render html5 elements as block */
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
	display: block;
}

html {
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

sub, sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
	font-size:20px;
}

sub {
	bottom: -0.25em;
}

img {
	width:auto;
	height:auto;
	max-width: 100%;
	vertical-align: middle;
	border: 0;
	-ms-interpolation-mode: bicubic;
	line-height:.5em;
}

/*  Custom animations
/*-------------------------------------------------- */
@-webkit-keyframes 
reveal {
 0% {
 opacity: 0;
}
 1% {
 opacity: 0;
 -webkit-transform: scale(0.98) translateY(-15px);
}
 80% {
 -webkit-transform: scale(1);
}
 100% {
 -webkit-transform: translateY(0);
}
}
 @-moz-keyframes 
reveal {
 0% {
 opacity: 0;
}
 1% {
 opacity: 0;
 -moz-transform: scale(0.98) translateY(-15px);
}
 80% {
 -moz-transform: scale(1);
}
 100% {
 -moz-transform: translateY(0);
}
}

/* #Basic Styles
================================================== */

body {
	font-family: 'Nunito', sans-serif; 
	font-weight: 400;
	font-size:16px;
	color:#999999; 
	line-height:19px;
	background:#e8e8e8;
}


/* #Links
================================================== */

a {
	color:#523583;
	outline:0;
	-webkit-transition: all .4s ease;
	-moz-transition: all .4s ease;
	-o-transition: all .4s ease;
	transition: all .4s ease;
	cursor:pointer;
	text-decoration:underline;
}

a:hover {
	color:#000000;
	text-decoration:underline;
	outline:0;
	-webkit-transition: all .4s ease;
	-moz-transition: all .4s ease;
	-o-transition: all .4s ease;
	transition: all .4s ease;
}

a:focus, a:active, a:visited {
	outline:0;
	text-decoration:underline;
}


/* #Typography
================================================== */

h1, h2, h3, h4, h5, h6 { 
	font-weight:700;
	line-height:1.1em; 
	padding:0 0 30px 0; 
	margin:0; 
}

h1, h2, h3 { 
	font-size:24px; 
}

h4 {
	font-size:18px;	
}

p {
	padding:0 0 20px 0;
}

p:last-child { 
	padding-bottom:0;
}

em {
	font-style:italic;
}

strong {
	font-weight:700;
}

.bold { 
	font-weight:700;
}

.upper {
	text-transform:uppercase
}


@media only screen and (max-width:767px) {
h1, h2, h3, h4, h5, h6 { 
	padding:0 0 20px 0; 
}

h1, h2, h3 { 
	font-size:22px; 
}

h4 {
	font-size:18px;	
}
}



/* #Order and Unorder Styles
================================================= */

ul, li, ol {
	list-style:none;
}

ul { 
	padding:0 0 50px 30px;
}

ul:last-child { 
	padding-bottom:0;
}

li {
	padding:0 0 8px 24px; 
	position:relative;
}

li:last-child { 
	padding-bottom:0;
}

li:before { 
	content:"";	
	width:11px; 
	height:17px; 
	float:left; 
	background:url(../images/arrow01.png) no-repeat left center; 
	position:absolute;
	top:1px;
	left:0;
}

ol { 
	counter-reset:item;
	padding:0 0 50px 47px;
}

ol:last-child { 
	padding-bottom:0;
}

ol li { 
	list-style:decimal outside; 
	padding-left:8px;
}

ol li:before { 
	display:none;
}


@media only screen and (max-width: 1023px) {
ul { 
	padding:0 0 40px 30px;
}

ol { 
	padding:0 0 40px 47px;
}
}

@media only screen and (max-width: 767px) {
ul { 
	padding:0 0 30px 20px;
}

li {
	padding:0 0 8px 24px; 
	position:relative;
}

ol { 
	padding:0 0 30px 37px;
}
}


/* #Show-Hide Responsive Options
================================================== */

.show_mobile {
	display:none;
}

.hide_mobile {
	display:block;
}

.show_both {
	display:none;
}

.hide_both {
	display:block;
}


@media only screen and (max-width: 979px) {
.show_both {
	display:block;
}

.hide_both {
	display:none;
}
}

@media only screen and (max-width: 767px) {
.show_mobile {
	display:block
}
.hide_mobile {
	display:none
}
}


/*
 2.) Home page
 ----------------------------------------*/

.container-main {
	width:100%; 
	float:left; 
	overflow:hidden; 
}

.container {
	width:100%;
	max-width:1185px;
	margin:0 auto;
	padding:0 20px;
}

.container-box { 
	width:100%; 
	float:left; 
	background:#ffffff; 
	padding:0 28px;
}


@media only screen and (max-width: 1023px) {
.container-box { 
	padding:0 20px;
}
}

@media only screen and (max-width: 767px) {
.container {
	max-width:100%;
	padding:0;
}

.container-box { 
	padding:0 15px;
}
}


.outer-bg {
	width:100%;
	height:100%;
	float:none;
	display:table;
	margin:0 auto;
}

.inner-bg {
	width:100%;
	height:100%;
	float:none;
	display:table-cell;
	vertical-align:middle;
}


/* Menu - Btn */

.menu-btn {
	width:100%;
	height:44px; 
	font-size:18px; 
	color:#000000;
	line-height:44px; 
	text-align:center; 
	text-decoration:none; 
	background:#cccccc;
	display:none;
	-webkit-transition:all 0.8s; 
	-moz-transition:all 0.8s; 
	transition:all 0.8s; 
	padding:0 15px; margin:0 0 9px 0; 
	position:relative; 
}

.menu-btn:hover { 
	text-decoration:none;
}

.menu-btn.active { 
	color:#523583; 
}

@media only screen and (max-width: 767px) {
.menu-btn {
	display: block;
}
}


/*
 2.1) Header
 ----------------------------------------*/

.header-main {
	width:100%;
	height:147px;
	float:left;
	border-bottom:1px solid #cccccc;
	padding:26px 0;
}

.header-main .logo {
	width:100%;
	max-width:410px;
	float:left;
}

.header-main .logo .icon {
	width:89px;
	float:left;
	margin:0 -89px 0 0;
}

.header-main .logo .logo-txt {
	width:100%;
	float:left;
	padding:0 0 0 110px;
}

.header-main .logo .lrg-txt {
	float:left; 
	font-weight:700;
	font-size:40px;
	color:#523583;
	line-height:42px;
	padding:0 0 6px 0;
}

.header-main .logo .sml-txt {
	float:left;
	font-weight:700;
	font-size:20px;
	color:#d21e5e;
	line-height:22px;
	padding:0 27px 0 0;
}

.header-main .logo .yello-txt {
	color:#f0ad1d;
}

.header-main .logo .green-txt {
	color:#23b3ac;
}

.header-main .mail-txt {
	width:100%;
	max-width:315px;
	float:right;
	text-align:right;
	padding:24px 0 0 0;
}

.header-main .mail-txt p {
	font-size:18px;
	color:#23b3ac;
	line-height:22px;
	padding:0;
}

.header-main .mail-txt p a {
	color:#999999;
	text-decoration:none;
}

.header-main .mail-txt p a:hover {
	text-decoration:underline;
}


@media only screen and (max-width:1023px) {
.header-main {
	height:130px;
}

.header-main .logo {
	max-width:365px;
}

.header-main .logo .icon {
	width:65px;
}

.header-main .logo .logo-txt {
	padding:0 0 0 80px;
}

.header-main .logo .lrg-txt {
	font-size:32px;
	line-height:38px;
}

.header-main .logo .sml-txt {
	font-size:18px;
	line-height:20px;
	padding:0 18px 0 0;
}

.header-main .mail-txt {
	max-width:285px;
	padding:17px 0 0 0;
}

.header-main .mail-txt p {
	font-size:17px;
	line-height:20px;
}
}

@media only screen and (max-width:767px) {
.header-main {
	height:auto;
	text-align:center;
	padding:26px 0;
}

.header-main .logo {
	max-width:290px;
	float:none;
	display:inline-block;
	padding:0 0 12px 0;
}

.header-main .logo .icon {
	width:60px;
}

.header-main .logo .logo-txt {
	text-align:left;
	padding:0 0 0 75px;
}

.header-main .logo .lrg-txt {
	font-size:29px;
	line-height:30px;
}

.header-main .logo .sml-txt {
	font-size:16px;
	line-height:18px;
	padding:0 16px 0 0;
}

.header-main .mail-txt {
	max-width:100%;
	padding:0;
	text-align:center;
}

.header-main .mail-txt p {
	font-size:15px;
}
}


 /*
 2.2) Content - Main
 ----------------------------------------*/
 
.content-main { 
	width:100%; 
	float:left; 
	padding:40px 0; 
} 

@media only screen and (max-width: 767px) {
.content-main { 
	padding:0 0 40px 0; 
} 
} 


/* Side - Nav */

.side-nav {
	width:250px;
	float:left;
	text-align:center;
	margin:0 -250px 0 0;
	position:relative;
	z-index:20;
}

.side-nav h3 {
	width:100%;
	float:left;
	font-size:18px;
	color:#000000;
	line-height:20px;
	background:#cccccc;
	padding:13px 0 12px 0;
	margin:0 0 9px 0;
}

.side-nav ul {
	width:100%;
	float:left;
	padding:0;
}

.side-nav ul li {
	width:100%;
	float:left;
	font-size:18px;
	color:#523583;
	line-height:20px;
	padding:0 0 9px 0;
	margin:0;
}

.side-nav ul li:last-child {
	padding-bottom:0;
}

.side-nav ul li:before {
	display:none;
}

.side-nav ul li a {
	width:100%;
	float:left;
	color:#523583;
	text-decoration:none;
	border:1px solid #cccccc;
	padding:11px 0;
	margin:0;
}

.side-nav ul li a:hover { 
	color:#523583;
	border-color:#523583;
}

.side-nav ul li a.active {
	color:#523583;
	border-color:#523583;
}


@media only screen and (max-width: 1023px) {
.side-nav { 
	width:230px; 
	margin:0 -230px 0 0;
}
}

@media only screen and (max-width: 767px) {
.side-nav { 
	width:100%; 
	float:left; 
	padding:0 0 40px 0; 
}

.side-nav h3 { 
	display:none;
}

.side-nav .collapse {
	height:0;
	overflow:hidden;
	-webkit-transition:height .35s ease;
	-moz-transition:height .35s ease;
	-o-transition:height .35s ease;
	transition:height .35s ease;
}

.side-nav .collapse.in {
	height:auto;
}
}


/* Cont - Txt */

.cont-txt { 
	width:100%; 
	float:left; 
	padding:0 0 0 280px;
}

@media only screen and (max-width: 1023px) {
.cont-txt { 
	padding:0 0 0 260px;
}
}

@media only screen and (max-width: 767px) {
.cont-txt { 
	text-align:left; 
	padding:0;
}
}


/* Cont - Top */

.cont-top {
	width:100%;
	float:left;
	text-align:center;
	padding:0 0 40px 0;
}

.cont-top p {
	font-size:18px;
	line-height:21px;
}

.cont-top aside {
	width:100%;
	max-width:620px;
	float:none;
	display:inline-block;
	vertical-align:top;
}

.cont-top2 aside {
	max-width:760px; 
}


@media only screen and (max-width: 767px) {
.cont-top { 
	padding:0 0 30px 0;
}
}


/* Blocks - Info */

.blocks-info {
	width:100%;
	float:left;
	text-align:center;
	padding:0 0 60px 0;
}

.blocks-info h4 {
	color:#01a481;
	text-transform:uppercase;
	padding:0 0 24px 0;
}

.blocks-info h4 a { 
	color:#01a481; 
	text-decoration:none;
}

.blocks-info h4 a:hover { 
	color:#01a481; 
	text-decoration:underline;
}

.blocks-info p {
	font-size:18px;
	color:#01a481;
	line-height:21px;
	padding:0 0 24px 0;
}

.blocks-info p:last-child {
	padding-bottom:0;
}

.blocks-info figure {
	width:100%;
	float:left;
}

.blocks-info figure img {
	width:100%;
}

.blocks-info aside {
	width:100%;
	float:left;
	border:1px solid #0eb598;
	border-top:none;
	padding:30px 15px;
}

.blocks-info article {
	width:29.83%;
	float:left;
	margin:0 1.75% 28px 1.75%;
}

.blocks-info article:nth-child(2) aside {
	border-color:#a98581
}

.blocks-info article:nth-child(2) h4 {
	color:#a98581;
}

.blocks-info article:nth-child(2) h4 a {
	color:#a98581;
}

.blocks-info article:nth-child(2) p {
	color:#a98581;
}

.blocks-info article:nth-child(3) aside {
	border-color:#000001
}

.blocks-info article:nth-child(3) h4 {
	color:#000001;
}

.blocks-info article:nth-child(3) h4 a {
	color:#000001;
}

.blocks-info article:nth-child(3) p {
	color:#000001;
}

.blocks-info .article-bg {
	width:103.50%;
	float:left;
	margin:0 -1.75% -28px -1.75%;
}


@media only screen and (max-width: 1023px) {
.blocks-info {
	padding:0 0 50px 0;
}

.blocks-info article {
	width:46.50%;
}
}

@media only screen and (max-width: 767px) {
.blocks-info {
	padding:0 0 40px 0;
}

.blocks-info article {
	width:100%;
	max-width:250px;
	float:none;
	display:inline-block;
	vertical-align:top;
	margin:0 13px 28px 13px;
}

.blocks-info .article-bg {
	width:100%;
	float:left;
	margin:0 0 -28px 0;
}
}


/* Cont - Txt2 */

.cont-txt2 {
	width:100%;
	float:left;
	padding:0 0 50px 0;
}

.cont-txt2 h2 {
	width:100%;
	float:left;
	text-align:center;
	padding:0 0 50px 0;
}

.cont-txt2 h2.left {
	text-align:left;
}

.cont-txt2 p:last-child {
	padding-bottom:0;
}


@media only screen and (max-width: 1023px) {
.cont-txt2 {
	padding:0 0 40px 0;
}

.cont-txt2 h2 {
	padding:0 0 40px 0;
}
}

@media only screen and (max-width: 767px) {
.cont-txt2 {
	padding:0 0 30px 0;
}

.cont-txt2 h2 {
	padding:0 0 30px 0;
}
}


/* Comments - Info */

.comments-info {
	width:100%;
	float:left;
}

.comments-info h3 {
	padding:0 0 50px 155px;
}

.comments-info aside {
	width:100%;
	float:left;
	padding:0 0 0 155px;
}

.comments-info aside p {
	font-weight:700;
	font-style:italic;
}

.comments-info .rating-bg {
	width:115px;
	float:left;
	margin:0 -115px 0 0;
}

.comments-info .rating-bg p {
	font-weight:700;
}

.comments-info .rating {
	width:100%;
	float:left;
	margin:0 0 14px 0;
}

.comments-info article {
	width:100%;
	float:left;
	border-top:1px solid #cccccc;
	padding:36px 50px 30px 0;
}

.comments-info article:last-child {
	border-bottom:1px solid #cccccc;
}


@media only screen and (max-width:1023px) {
.comments-info h3 {
	padding:0 0 40px 130px;
}

.comments-info aside {
	padding:0 0 0 130px;
}

.comments-info .rating-bg {
	width:100px;
}

.comments-info article {
	padding:30px 30px 25px 0;
}
}

@media only screen and (max-width:767px) {
.comments-info h3 {
	padding:0 0 30px 125px;
}

.comments-info aside {
	padding:0 0 0 125px;
}

.comments-info .rating-bg {
	width:100px;
}

.comments-info .rating {
	margin:0 0 9px 0;
}

.comments-info article {
	padding:25px 0 20px 0;
}
}

@media only screen and (max-width:479px) {
.comments-info {
	text-align:center;
}

.comments-info h3 {
	padding:0 0 30px 0px;
}

.comments-info aside {
	padding:0;
}

.comments-info .rating-bg {
	width:100%;
	float:left;
	padding:0 0 15px 0;
}
}


/*
 2.3) Footer
 ----------------------------------------*/

.footer-main {
	width:100%;
	float:left;
	background:#dedede;
	padding:40px 28px;
}

.footer-main p {
	float:left;
	font-size:20px;
	line-height:24px;
	padding:15px 0 0 0;
}

.footer-main aside {
	float:right;
}

.footer-main aside ul {
	float:none;
	display:inline-block;
	vertical-align:middle;
	padding:0;
	margin:0 -10px;
}

.footer-main aside ul li {
	float:none;
	display:inline-block;
	vertical-align:middle;
	padding:0;
	margin:0 10px;
}

.footer-main aside ul li:before {
	display:none;
}


@media only screen and (max-width:1023px) {
.footer-main {
	padding:40px 20px;
}

.footer-main p {
	font-size:18px;
	line-height:22px;
	padding:12px 0 0 0;
}

.footer-main aside ul li img {
	max-width:28px
}

.footer-main aside ul li.master img {
	max-width:70px;
}

.footer-main aside ul li.visa img {
	max-width:90px;
}
}
 
@media only screen and (max-width:767px) {
.footer-main {
	text-align:center;
	padding:30px 15px;
}

.footer-main p {
	float:none;
	font-size:16px;
	line-height:20px;
	padding:0;
}

.footer-main aside {
	width:100%;
	padding:0 0 20px 0;
}

.footer-main aside ul {
	float:none;
	display:inline-block;
	vertical-align:middle;
	padding:0;
	margin:0;
}

.footer-main aside ul li {
	float:none;
	display:inline-block;
	vertical-align:middle;
	padding:0;
	margin:0 7px;
}

.footer-main aside ul li img {
	max-width:24px
}

.footer-main aside ul li.master img {
	max-width:60px;
}

.footer-main aside ul li.visa img {
	max-width:75px;
}
}
 

/*
 3) Inner - Page
 ----------------------------------------*/
 
/* Blocks - Hours */

.blocks-hours {
	width:100%;
	float:left;
	padding:0 0 50px 0;
}

.blocks-hours h4 {
	color:#23b3ac;
	padding:0 0 20px 0;
}

.blocks-hours ul {
	width:100%;
	float:left;
	padding:0;
	margin:0;
}

.blocks-hours ul li {
	width:100%;
	float: left;
	font-size:18px;
	color:#23b3ac;
	line-height:22px;
	padding:0;
	margin:0;
}

.blocks-hours ul li:before {
	display:none;
}

.blocks-hours .day {
	width:50%;
	float:left;
}

.blocks-hours .time {
	width:50%;
	float:left;
	text-align:right;
}

.blocks-hours aside {
	width:28.33%;
	float:left;
	margin:0 2.5% 40px 2.5%;
}

.blocks-hours aside:nth-child(2) h4 {
	color:#a98581;
}

.blocks-hours aside:nth-child(2) ul li {
	color:#a98581;
}

.blocks-hours aside:nth-child(3) h4 {
	color:#010101;
}

.blocks-hours aside:nth-child(3) ul li {
	color:#010101;
}

.blocks-hours .aside-bg {
	width:105%;
	float:left;
	margin:0 -2.5% -40px -2.5%;
}


@media only screen and (max-width: 1144px) {
.blocks-hours {
	padding:0 0 40px 0;
}

.blocks-hours aside {
	width:45%;
}
}


@media only screen and (max-width: 979px) {
.blocks-hours {
	text-align:center;
	padding:0 0 40px 0;
}

.blocks-hours aside {
	width:100%;
	max-width:250px;
	float:none;
	display:inline-block;
	vertical-align:top;
	text-align:left;
	margin:0 13px 40px 13px;
}

.blocks-hours .aside-bg {
	width:100%;
	margin:0 0 -40px 0;
}
}

@media only screen and (max-width: 767px) {
.blocks-hours {
	padding:0 0 30px 0;
}

.blocks-hours aside {
	margin:0 13px 30px 13px;
}

.blocks-hours .aside-bg {
	width:100%;
	margin:0 0 -30px 0;
}
}


/* Image - justified  */

figure {
	width:100%;
	float:left; 
}

figure img { 
	width:100%;
}

figure.align-center { 
	text-align:center;
	margin:0 0 40px 0;
}

figure.align-center img { 
	max-width:52.30%;
} 

figure.align-right { 
	width:52.30%; 
	float:right; 
	margin:0 0 40px 40px;
}

figure.align-right img { 
	width:100%; 
} 

figure.align-left {
	width:52.30%; 
	float:left; 
	margin:0 40px 40px 0;
}

figure.align-left img {
	width:100%;
}


@media only screen and (max-width:767px) {
figure.align-center { 
	margin:0 0 30px 0;
}

figure.align-center img { 
	max-width:100%;
} 

figure.align-right { 
	width:100%; 
	margin:0 0 30px 0;
}

figure.align-left {
	width:100%; 
	margin:0 0 30px 0;
}
}


/* Link - List  */

.link-list { 
	width:100%; 
	float:left; 
	padding:0 0 50px 0;
}

@media only screen and (max-width:1023px) {
.link-list { 
	padding:0 0 40px 0;
}
}

@media only screen and (max-width:767px) {
.link-list { 
	padding:0 0 30px 0;
}
}


/* Event - Info */

.event-info {
	width:100%;
	float:left;
	border:1px solid #7f6c9f;
	background:#ede8f7;
	padding:40px 30px 45px 30px;
}

.event-info h3 {
	font-size:20px;
	color:#523583;
	text-align:center;
	padding:0 0 45px 0;
}

.event-info aside {
	width:100%;
	float:left;
	padding:0 0 40px 0;
}

.event-info aside:last-child {
	padding:0;
}

.event-info aside h4 {
	color:#523583;
	padding:0 0 13px 0;
}


@media only screen and (max-width:1023px) {
.event-info {
	padding:35px 25px 40px 25px;
}

.event-info h3 {
	padding:0 0 35px 0;
}

.event-info aside {
	padding:0 0 30px 0;
}
}

@media only screen and (max-width:767px) {
.event-info {
	padding:30px 20px 35px 20px;
}

.event-info h3 {
	padding:0 0 25px 0;
}

.event-info aside {
	padding:0 0 25px 0;
}
}