::-moz-selection { background: #b3d4fc; text-shadow: none; }
::selection { background: #b3d4fc; text-shadow: none; }
audio, canvas, iframe, img, svg, video { vertical-align: middle; }
fieldset { border: 0; margin: 0; padding: 0; }
textarea { resize: vertical; }

/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: local('Montserrat Regular'), local('Montserrat-Regular'), url(https://fonts.gstatic.com/s/montserrat/v10/zhcz-_WihjSQC0oHJ9TCYAzyDMXhdD8sAj6OAJTFsBI.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}
/* sampled usage */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/stats/Montserrat/normal/400);
  unicode-range: U+20;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  src: local('Montserrat SemiBold'), local('Montserrat-SemiBold'), url(https://fonts.gstatic.com/s/montserrat/v10/q2OIMsAtXEkOulLQVdSl03XcDWh-RbO457623Zi1kyw.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}


/* ==========================================================================
   Custom styles
   ========================================================================== */

html, body { margin: 0; color: #555; font-size: 14px; line-height: 140%; min-height: 100%; }

body { margin: 0; text-align: center; max-width: 100%; overflow-x: hidden; }

body, p, ul, ol, td, th, form, input, select { font-family: 'Montserrat', sans-serif; font-weight: 400; }

p, ul, ol, td, th, form { margin: 0.8em 0; line-height: 145%; }
p strong, ul strong, ol strong, td strong, th strong { font-weight: 600; }

h1, h2, h3, h4, h5, h6, .h1style, .h2style, .h3style, .h4style, .h5style, .h6style { font-family: 'Montserrat', sans-serif; font-weight: 600; }

h1, .h1style { font-size: 2.00em; line-height: 115%; margin-top: 0.65em; margin-bottom: 0.65em; }
h2, .h2style { font-size: 1.85em; line-height: 120%; margin-top: 0.68em; margin-bottom: 0.68em; }
h3, .h3style { font-size: 1.60em; line-height: 125%; margin-top: 0.71em; margin-bottom: 0.71em; }
h4, .h4style { font-size: 1.45em; line-height: 130%; margin-top: 0.74em; margin-bottom: 0.74em; }
h5, .h5style { font-size: 1.30em; line-height: 135%; margin-top: 0.77em; margin-bottom: 0.77em; }
h6, .h6style { font-size: 1.15em; line-height: 140%; margin-top: 0.80em; margin-bottom: 0.80em; }

@media (min-width: 768px) {
	h1, .h1style { font-size: 2.7em; }
	h2, .h2style { font-size: 2.4em; }
	h3, .h3style { font-size: 2.1em; }
	h4, .h4style { font-size: 1.8em; }
	h5, .h5style { font-size: 1.5em; }
	h6, .h6style { font-size: 1.2em; }
}
@media (min-width: 992px) {
	h1, .h1style { font-size: 3.2em; }
	h2, .h2style { font-size: 2.8em; }
	h3, .h3style { font-size: 2.4em; }
	h4, .h4style { font-size: 2.0em; }
	h5, .h5style { font-size: 1.6em; }
	h6, .h6style { font-size: 1.2em; }
}

hr { display: block; height: 1px; border: 0; border-top: 1px solid #999; margin: 1em 0; padding: 0; }
img { max-width: 100%; }

a { color: #555; text-decoration: none; outline: 0; }
a:hover { color: #555; text-decoration: underline; outline: 0; }
a:focus { outline: 0; }
a.lblue { color: #168cc9; }
a.lblue:hover { color: #e72722; }
a.lblue:link, a.lblue:visited, a.lblue:hover, a.lblue:active { text-decoration: none; }
a.lblue:focus { outline: 0; }

a.reg_button { display: inline-block; color: #555; border: 1px solid #555; font-size: 1.05em; font-weight: 600; padding: 0.5em 2em 0.5em 0.7em; position: relative; }
a.reg_button i { font-size: 2em; position: absolute; right: 10px; top: 2px; }
a.reg_button:hover { background-color: #555; border-color: #555; color: #FFF; }
a.reg_button:link, a.reg_button:visited, a.reg_button:hover, a.reg_button:active { text-decoration: none; }
a.reg_button:focus { outline: 0; }

a.multi_button { display: inline-block; color: #FFF; font-size: 1.3em; font-weight: 600; background: #168cc9 url(../img/main/multi.jpg) no-repeat top left; background-size: 100% 100%; padding: 0.6em 2.1em 0.6em 0.8em; position: relative; }
a.multi_button i { font-size: 2em; position: absolute; right: 10px; top: 2px; }
a.multi_button:hover { background-image: none; text-decoration: none; }

.nm { margin: 0; }
.ntm { margin-top: 0; }
.nbm { margin-bottom: 0; }
.stm { margin-top: 0.5em; }
.sbm { margin-bottom: 0.5em; }
.btm { margin-top: 1.1em; }
.bbm { margin-bottom: 1.1em; }
.vbtm { margin-top: 1.6em; }
.vbbm { margin-bottom: 1.6em; }
.vvbtm { margin-top: 2em; }
.vvbbm { margin-bottom: 2em; }
.fl { float: left; }
.fr { float: right; }
.cll { clear: left; }
.clr { clear: right; }
.cl { clear: both; }

.alleft { text-align: left; }
.alcenter { text-align: center; }
.alright { text-align: right; }

.lblue { color: #168cc9; }
.yellow { color: #ffcf00; }
.orange { color: #fdb303; }
.red { color: #e72722; }
.purple { color: #ad3e8a; }
.bg_grey { background-color: #555; }
.bg_lgrey { background-color: #EAEAEA; }
.bg_grey2 { background-color: #CCC; }

.standout { font-size: 1.1em; }
.small { font-size: 0.9em; }

#logo { width: 180px; float: left; margin: 20px 0; }
#navmobile, #navclose { float: right; font-size: 1.7em; line-height: 120%; padding: 0.4em; }
#navmobile { margin-right: -15px; }
#navmain { display: none; position: fixed; height: 100%; top: 0; right: 0; background-color: rgba(0,0,0,0.8); color: #FFF; z-index: 9999; }
#navmain ul.navi { margin: 140px 30px 30px 30px; padding: 0; list-style: none; list-style-type: none; }
#navmain ul.navi li { text-align: right; }
#navmain ul.navi li a { display: block; color: #FFF; text-transform: uppercase; font-size: 1.2em; letter-spacing: 0.15em; font-weight: 500; line-height: 1em; padding: 1em 0; }
#navmain ul.navi li a:link, #navmain ul.navi li a:visited, #navmain ul.navi li a:hover, #navmain ul.navi li a:active { text-decoration: none; }
#navmain ul.navi li a:focus { outline: 0; }
#navmain ul.social { margin: 50px 30px 50px 30px; padding: 0; list-style: none; list-style-type: none; text-align: right; }
#navmain ul.social li { display: inline-block; }
#navmain ul.social li a { font-size: 30px; color: #FFF; }


@media (min-width: 768px) {
    #logo { width: 220px; margin: 25px 0; }
	#navmobile { display: none; }
    #navclose { display: none; }
    #navmain { display: block; float: right; position: static; top: auto; right: auto; background-color: transparent; }
    #navmain ul.navi { margin: 20px -17px; }
    #navmain ul.navi li { text-align: center; display: inline-block; padding: 0 17px; }
    #navmain ul.navi li a { display: inline-block; color: #555; font-size: 0.8em; letter-spacing: 0.2em; line-height: 130%; padding: 0; }
    #navmain ul.navi li a.sel { border-bottom: 2px solid #CC0000; }
    #navmain ul.social { display: none; }
}

.vspace2 { padding-top: 2em; padding-bottom: 2em; }
.vspace3 { padding-top: 3em; padding-bottom: 3em; }
@media (min-width: 992px) {
    .hspace1 { margin: 0 100px; }
}
@media (min-width: 1200px) {
    .hspace1 { margin: 0 180px; }
}

#partner_slider { margin: 0.8em -15px; }
#partner_slider .slide { float: left; width: 33.3333%; text-align: left; padding: 0 15px; }
#partner_slider .slide:focus { outline: 0; }
#partner_slider .slide .logo { height: 200px; }
#partner_slider .slide .image { height: 220px; background-color: #168cc9; background-repeat: no-repeat; background-size: cover; background-position: center center; }
#partner_slider .slide .content { min-height: 470px; padding: 1em 20px 1.5em 20px; background: #FFF url(../img/main/multi2.jpg) no-repeat bottom left; background-size: 100% 13px; }
#partner_slider .slide .content .title { font-size: 1.1em; line-height: 135%; }
@media (min-width: 768px) {
    #partner_slider .slide .content { min-height: 525px; }
}
@media (min-width: 1200px) {
    #partner_slider .slide .content { min-height: 470px; }
}

#event_slider { margin: 0.8em -15px; }
#event_slider .slide { float: left; width: 33.3333%; text-align: left; padding: 0 15px; }
#event_slider .slide:focus { outline: 0; }
#event_slider .slide .logo { height: 200px; }
#event_slider .slide .image { height: 220px; background-color: #168cc9; background-repeat: no-repeat; background-size: cover; background-position: center center; }
#event_slider .slide .content { min-height: 470px; padding: 1em 20px 1.5em 20px; background: #FFF url(../img/main/multi2.jpg) no-repeat bottom left; background-size: 100% 13px; }
#event_slider .slide .content .title { font-size: 1.1em; line-height: 135%; }
#event_slider .slide .content .title strong { line-height: 0%; }
@media (min-width: 768px) {
    #event_slider .slide .content { min-height: 470px; }
}
@media (min-width: 1200px) {
    #event_slider .slide .content { min-height: 410px; }
}

.supporter { margin: 30px 0; }
.supporter.tall { margin: 20px 0 }
.supporter img { max-height: 45px; }
.supporter.tall img { max-height: 65px; }
@media (min-width: 768px) {
    .supporter img { max-height: 55px; }
	.supporter.tall img { max-height: 75px; }
}
@media (min-width: 992px) {
    .supporter img { max-height: 60px; }
	.supporter.tall img { max-height: 80px; }
}

#support_logo { margin-top: 0; margin-bottom: 1.2em; text-align: center; }
#support_logo img { max-width: 180px; }
@media (min-width: 768px) {
    #support_logo { margin-top: 1.5em; }
    #support_logo img { max-width: 220px; }
}
@media (min-width: 992px) {
    #support_logo img { max-width: 240px; }
}
@media (min-width: 1200px) {
    #support_logo img { max-width: 250px; }
}

#contact { color: #FFF; background: #555 url(../img/main/multi2.jpg) no-repeat bottom left; background-size: 100% 13px; }
#contact a { color: #FFF; }
#contact a:hover { color: #168cc9; text-decoration: none; }

#social_footer { font-size: 30px; margin: 0.4em 0 0.8em 0; padding: 0; list-style: none; list-style-type: none; }
#social_footer li { display: inline-block; }
#social_footer li a {  }

.dt_divider { display: none; }
@media (min-width: 768px) {
    .dt_divider { display: inline-block; margin: 0 0.5em; }
}

#event { text-align: left; background: #FFF url(../img/main/multi2.jpg) no-repeat bottom left; background-size: 100% 13px; }
#event .images div { height: 200px; background-size: cover; background-position: center 40%; }
#event .content { padding: 10px 25px 35px 25px; }
#event .content p.date { font-size: 1.1em; margin-bottom: 0; line-height: 145%; }
#event .content h1 { font-size: 1.1em; line-height: 135%; font-weight: 600; margin: 0; }
#event .content p.titlesub { font-size: 1.1em; line-height: 135%; margin: 0; }
#event .content .body { margin: 1.5em 0; }
#event .content p.enquire { margin-bottom: 2.2em; }
@media (min-width: 450px) {
    #event .images div { height: 300px; }
}
@media (min-width: 768px) {
    #event .images div { height: 400px; }
}
@media (min-width: 992px) {
    #event .images div { height: 500px; }
}

.fancybox-slide--iframe .fancybox-content {
	max-width: 800px;
	margin: 0;
}

.banner { position: relative; }
.banner, .banner .banner_slide { height: 300px; overflow: hidden; }
.banner_slide h1 { color: #FFF; margin: 0 auto; font-weight: 400; display: block; }
.banner_slide { background-size: cover; background-repeat: no-repeat; }
.banner_slide h1 { max-width: 290px; padding-top: 70px; }
.banner_home_slide_4 { background-image: url(../img/main/header4_1000.jpg); background-position: 10% 40%; }
.banner_home_slide_6 { background-image: url(../img/main/header6_1000.jpg); background-position: 10% 40%; }
.banner_home_slide_7 { background-image: url(../img/main/header7_1000.jpg); background-position: 10% 40%; }
.banner_home_slide_8 { background-image: url(../img/main/header8_1000.jpg); background-position: 10% 40%; }

@media (min-width: 768px) {
    .banner, .banner .banner_slide { height: 400px; }
    .banner_slide h1 { max-width: 650px; padding-top: 135px; }
}
@media (min-width: 992px) {
    .banner_slide h1 { max-width: 750px; padding-top: 125px; }
}
@media (min-width: 1200px) {
    .banner, .banner .banner_slide { height: 430px; }
    .banner_slide h1 { padding-top: 140px; }
}

@media
only screen and (-webkit-min-device-pixel-ratio: 2) and (min-width: 992px),
only screen and (min--moz-device-pixel-ratio: 2) and (min-width: 992px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (min-width: 992px),
only screen and (min-device-pixel-ratio: 2) and (min-width: 992px),
only screen and (min-resolution: 192dpi) and (min-width: 992px),
only screen and (min-resolution: 2dppx) and (min-width: 992px) { 
    .banner_home_slide_4 { background-image: url(../img/main/header4_1450.jpg); }
    .banner_home_slide_6 { background-image: url(../img/main/header6_1850.jpg); }
    .banner_home_slide_7 { background-image: url(../img/main/header7_1850.jpg); }
    .banner_home_slide_8 { background-image: url(../img/main/header8_1850.jpg); }
}

/* ==========================================================================
   Gallery
   ========================================================================== */

.gallery_blocks { margin: 7px -7px; }
.gallery_block { width: 50%; float: left; }
.gallery_block a { display: block; height: 155px; margin: 7px; color: #FFF; background-color: #444; background-repeat: no-repeat; background-position: center center; background-size: cover; position: relative; }
.gallery_block a i { font-size: 60px; margin: -30px 0 0 -30px; color: #FFF; left: 50%; top: 50%; position: absolute; -webkit-filter: drop-shadow(0 0 8px #000); }
@media (min-width: 576px) {
	.gallery_block { width: 25%; }
	.gallery_block a { height: 130px; }
}
@media (min-width: 768px) {
	.gallery_block a { height: 160px; }
}
@media (min-width: 992px) {
	.gallery_block a { height: 220px; }
}
@media (min-width: 1200px) {
	.gallery_block a { height: 270px; }
}

/* ==========================================================================
   Extra Bootstrap
   ========================================================================== */

.col-xs-15, .col-sm-15, .col-md-15, .col-lg-15, .col-xs-24, .col-sm-24, .col-md-24, .col-lg-24, .col-xs-225, .col-sm-225, .col-md-225, .col-lg-225 { position: relative; min-height: 1px; padding-right: 15px; padding-left: 15px; }
.col-xs-15, .col-xs-24, .col-xs-225 { float: left; }
.col-xs-15 { width: 12.5%; }
.col-xs-24 { width: 20%; }
.col-xs-225 { width: 18.75%; }
@media (min-width: 768px) {
    .col-sm-15, .col-sm-24, .col-sm-225 { float: left; }
    .col-sm-15 { width: 12.5%; }
    .col-sm-24 { width: 20%; }
    .col-sm-225 { width: 18.75%; }
}
@media (min-width: 992px) {
    .col-md-15, .col-md-24, .col-md-225 { float: left; }
    .col-md-15 { width: 12.5%; }
    .col-md-24 { width: 20%; }
    .col-md-225 { width: 18.75%; }
}
@media (min-width: 1200px) {
    .col-lg-15, .col-lg-24, .col-lg-225 { float: left; }
    .col-lg-15 { width: 12.5%; }
    .col-lg-24 { width: 20%; }
    .col-lg-225 { width: 18.75%; }
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print { 
	*, *:before, *:after { background: transparent !important; color: #000 !important; box-shadow: none !important; text-shadow: none !important; }
	a, a:visited { text-decoration: underline; }
    a[href]:after { content: " (" attr(href) ")"; }
    abbr[title]:after { content: " (" attr(title) ")"; }
	a[href^="#"]:after, a[href^="javascript:"]:after { content: ""; }
	pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
	thead { display: table-header-group; }
    tr, img { page-break-inside: avoid; }
	img { max-width: 100% !important; }
    p, h2, h3 { orphans: 3; widows: 3; }
    h2, h3 { page-break-after: avoid; }
}