@import url('https://fonts.googleapis.com/css?family=Nunito:300,300i,400,400i,600,600i,700,700i');
@import url('https://fonts.googleapis.com/css?family=Roboto:400,700');
* {
    margin: 0px;
    padding: 0px;
    -webkit-font-smoothing: antialiased;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -webkit-text-size-adjust: none;
}
html, body {
    width: 100%;
    font-size: 16px;
    line-height: 22px;
    color: #000;
    font-family: 'Nunito', sans-serif;
    background: #fff;
}

*::-webkit-input-placeholder {
    opacity:0.80;
}
*::-moz-placeholder {
    opacity:0.80;
}
*:-ms-input-placeholder {
    opacity:0.80;
}

input[type=checkbox]{
    -webkit-appearance: checkbox; /*margin: 5px 0 0 5px;*/
    display: inline-block;
    vertical-align: top;
}
button, input, textarea, select {
    -webkit-appearance: none;
    -webkit-border-radius: 0px;
    font-family: 'Nunito', sans-serif;
}
.form-control, .e-form-control { /*width: 100%;*/
    width: 98.5% !important;
    float: left;
    height: 60px;
    border: 1px solid #e6f1ff;
    font-size: 16px;
    padding: 20px 25px;
    color: #999;
}
.input-group {
    width: 98.5% !important;
}
.form-control.half {/* width: 48%;*/
    width: 48.5% !important;
}
.form-control.quarter {/* width: 48%;*/
    width: 24.5% !important;
}
/*.form-control.half + .half { float: right; }*/
.form-control.half:nth-child(odd){ /*float: right;*/
    float: left;
}
.form-control.half:not([required]){
    margin-right:10px;
}
textarea.form-control {
    height: 190px;
    resize:none;
}
.form-control.error {
    border-color: #f00;
}


:focus,input:focus, textarea:focus {
    outline: none;
}
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;
    vertical-align: baseline;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}
:focus {
    outline: none;
}
[href^="tel"] {
    cursor: default;
}

/* common */
a {
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -ms-transition: all 0.3s;
    text-decoration: none;
    outline: none;
}
ul {
    list-style: none;
}
.clear {
    clear: both;
    overflow: hidden;
}
img {
    border: 0px;
    outline: none;
    display: block;
    max-width: 100%;
}

h1,h2,h3,h4,h5,h6 {
    font-weight:600;
    padding-bottom: 15px;
    font-family: 'Nunito', sans-serif;
}
h1 {
    font-size: 50px;
    line-height: 55px;
}
h2 {
    font-size: 36px;
    line-height: 40px;
}
h3 {
    font-size: 30px;
    line-height: 35px;
}
h4 {
    font-size: 24px;
    line-height: 30px;
}
h5 {
    font-size: 18px;
    line-height: 22px;
}
h6 {
    font-size: 16px;
    line-height: 20px;
}
p {
    font-family: 'Roboto', sans-serif !important;
    line-height: 28px;
    padding-bottom: 5px;
}

#back-to-top {
    position: fixed;
    bottom: 60px;
    display: none;
    right: 15px;
    z-index: 9999;
    width: 34px;
    height: 34px;
    cursor: pointer;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    transition: opacity 0.2s ease-out;
    -webkit-transition: opacity 0.2s ease-out;
    opacity: 0;
    background: #8b7e9b;
}
#back-to-top:after {
    width: 0px;
    height: 0px;
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    border: 10px solid transparent;
    border-bottom-color: #fff;
    margin: -15px 0 0 -10px;
}
#back-to-top.show {
    opacity: 0.8;
}
#back-to-top.show:hover {
    opacity: 1;
}
a.close, a.mobilemenu {
    display: none;
}

.button, .btn.btn-secondary  {
    padding: 8px 35px;
    cursor: pointer;
    transition:all 0.3s;
    -webkit-transition:all 0.3s;
    -ms-transition:all 0.3s;
    display: inline-block;
    vertical-align: top;
    font-size: 18px;
    line-height: 25px;
    color: #fff;
    font-weight:600;
    text-transform: capitalize;
    background:#002b47;
    border-radius: 25px !important;
    -webkit-border-radius: 25px !important;
    -ms-border-radius: 25px !important;
    border: 1px dashed #fff;
    box-shadow: 0 0 0 4px #002b47;
    -webkit-box-shadow: 0 0 0 4px #002b47;
    -ms-box-shadow: 0 0 0 4px #002b47;
    margin: 4px;
}
.button:hover,.button.purple {
    background: #8b7e9b;
    box-shadow: 0 0 0 4px #8b7e9b;
    -webkit-box-shadow: 0 0 0 4px #8b7e9b;
    -ms-box-shadow: 0 0 0 4px #8b7e9b;
}
.button.purple:hover {
    background: #22465d;
    box-shadow: 0 0 0 4px #22465d;
    -webkit-box-shadow: 0 0 0 4px #22465d;
    -ms-box-shadow: 0 0 0 4px #22465d;
}
.button.no-radius {
    border-radius:0;
    -webkit-border-radius:0;
    -ms-border-radius:0;
    padding: 10px 28px;
    font-family: 'Roboto', sans-serif;
    font-weight:500;
}
.button.no-border, .btn.btn-secondary {
    border:0;
    box-shadow:none;
    -webkit-box-shadow:none;
    -ms-box-shadow:none;
    padding: 12px 45px;
}


/* wrapper */
#wrapper {
    padding-top:78px;
    overflow: hidden;
    width: 100%;
    min-height: 100%;
    position: relative;
}
.centering {
    max-width: 1200px;
    padding: 0 15px;
    margin: auto;
    position: relative;
}

/* header-part */
header {
    padding: 16px 0;
    position: fixed;
    left:0;
    top:0;
    box-shadow: 0px 2px 2px rgba(0,0,0,0.05);
    z-index: 100;
    width: 100%;
    background: #fff;
}
header .logo {
    float: left;
    margin: 0 0 0 -158px;
}
header #menu {
    padding: 14px 0 0 0;
    float: right;
}
header #menu ul {
}
header #menu li {
    margin: 0 0 0 62px;
    font-size: 20px;
    line-height: 30px;
    float: left;
    font-weight:600;
}
header #menu li:first-child {
    margin:0;
}
header #menu li a {
    color: #3b2e4d;
}
header #menu li a.active,header #menu li a:hover {
    color: #8b7e9b;
    text-decoration: none !important;
}

/*banner_sec*/
.banner_sec {
    width: 100%;
    background-position: center center;
    background-size:cover;
    background-color: #fff;
    background-blend-mode: luminosity;
    -webkit-background-blend-mode: luminosity;
    -ms-background-blend-mode: luminosity;
}
/*.banner_sec:before {
    width: 100%;
    height: 100%;
    content:'';
    position:absolute;
    left:0;
    top:0;
    background: rgba(255,255,255,0.55) url(../images/banner-overlay.png) left top no-repeat;
}*/
.banner_sec .centering {
    min-height:515px;
    display: flex;
    flex-wrap:wrap;
    align-items:center;
}
.banner_sec h1 {
    width: 100%;
    color: #3b2e4d;
}

/*home_banner_sec*/
.home_banner_sec {
    width: 100%;
    background:linear-gradient(90deg,#002b47 0% 50%, #b3abbe 50% 100%);
}
.home_banner_sec .row { /*height:670px;*/
    height:150px;
    display: flex;
    align-content: space-around;
    color: #fff;
}
.home_banner_sec .col2 {/* padding: 0 50px 100px 0px; */
    /*width: 50%;*/
    flex: 0 0 50%;
    display: flex;
    flex-flow: column wrap;
    align-content: space-around;
    align-items: center;
    padding: 0 20px;
    text-align: center;
}
/*.home_banner_sec .seeker {
    /*background:#002b47;
}
.home_banner_sec .seeker:before {
    width: 5000px;
    height: 100%;
    content:'';
    position:absolute;
    left:-5000px;
    top:0;
    background:#002b47;
}*/
.home_banner_sec .button {
    min-width:200px;
    max-width: 50%;
}
.home_banner_sec span.title {
    font-size: 45px;
    line-height: 50px;
    display: block;
    font-weight:600; /*padding-bottom: 75px;*/
    padding-bottom: 25px;
}
/*.home_banner_sec .benefactor {
    padding-left: 125px;
}*/

/*mission_sec*/
.mission_sec {
    position: relative;
    padding: 10px 0 10px 0;
    width: 100%;
    float: left;
    overflow: hidden;
    background: #fff;
    /*background: url(../images/mission-bg2.png) right bottom no-repeat;*/
}
.mission_sec:before {
    width: 100%;
    height: 100%;
    content:'';
/*    position:absolute;
    left:0;
    bottom: 0px;*/
    /*background:url(../images/mission_bg.png) calc(50% - 620px) 65px no-repeat;*/
}
.mission_sec .right {
    padding: 0 0px 0 25px;
    max-width: 51%;
    float: right;
}
.mission_sec .pic {
    margin: 0 10px;
    max-width: 49%;
    float: left;
    height: 500px;
}
.centering .subtitle {
    display: block;
    padding: 0 0 10px;
    text-transform: uppercase;
    font-weight:700;
    font-size: 38px;
    /*line-height: 20px;*/
    color: #b3a8bb;
    font-family: 'Roboto', sans-serif;
    width: 300px;
    margin: auto;
    text-align: center;
}
.mission_sec h1 {
    padding-bottom: 23px;
    font-size: 34px;
    font-weight:700;
    line-height: 40px;
    text-align: center;
}
.mission_sec h1 span {
    color: #b3a8bb;
}
.mission_sec p {
    color: #616161;
    padding-right:10px;
}
.mission_sec .button {
    margin: 12px 4px 4px 4px;
}

/*service_sec*/
.service_sec {
    padding: 40px 0 25px 0;
    position: relative;
    width: 100%;
    float: left;
    background:#f3f2f5;
}
.service_sec:before {
    width: 100%;
    max-width: 770px;
    height: 100%;
    content:'';
    position:absolute;
    left: 50%;
    top:0;
    margin-left:-740px;
    opacity: 0.07;
    background:url(../images/service-bg.png) repeat;
    background-size:44px auto;
}
.service_sec .row {
    width: 100%;
    display: flex;
    -webkit-display: flex;
    -ms-display: flex;
    flex-wrap:wrap;
    -webkit-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
}
.service_sec .col3 {
    width: 33.33%;
    padding: 0 50px 40px 30px;
    text-align: justify;
}
.service_sec h4 {
    text-align: center;
    color: #002b47;
    padding: 20px 0 15px;
}
.service_sec p {
    font-size: 14px;
    line-height: 20px;
    color: #86909b;
}
.service_sec figure {
    height:78px;
/*    display: flex;
    -webkit-display: flex;
    -ms-display: flex;
    align-items:center;*/
}
.service_sec figure img {
    margin: auto;
    max-height:78px;
}
.service_sec p a {
    color: #86909b;
    text-decoration:underline;
}
.service_sec p a:hover {
    color: #333;
    text-decoration:none;
}

/*partner_sec*/
.partner_sec {
    padding: 20px 0 30px;
    width: 100%;
    float: left;
}
.partner_sec ul {
    text-align:center;
}
.partner_sec li {
    margin: 10px 85px;
    display: inline-block;
    vertical-align: top;
}

/*contact_sec*/
.contact_sec {
    padding: 70px 0 120px;
    width: 100%;
    float: left;
    background: #f3f2f5 url(../images/contact-bg.png) right bottom no-repeat;
}
.contact_sec h2 {
    padding-bottom: 55px;
    color: #002b47;
    text-align: center;
    text-transform:uppercase;
}
.contact_sec .form {
    padding: 95px 60px 60px;
    box-shadow: 0px 0px 15px rgba(0,0,0,0.1);
    background:#fff;
}
.contact_sec form {
    max-width: 770px;
    margin: 0 auto;
}
.contact_sec .form-control, .bootstrap-filestyle.input-group {
    margin-bottom: 60px;
}
.contact_sec textarea.form-control {
    margin-bottom: 45px;
}
.contact_sec .button{
    font-size: 20px;
    line-height: 24px;
}

/*address_sec */
.address_sec {
    position: relative;
    overflow: hidden;
    padding: 90px 0;
    width: 100%;
    float: left;
}
.address_sec:before {
    width: 100%;
    max-width: 770px;
    height: 100%;
    content:'';
    position:absolute;
    left: 75px;
    top:35px;
    opacity: 0.07;
    background:url(../images/service-bg.png) repeat;
    background-size:44px auto;
}
.address_sec .map {
    width: 63%;
    float: left;
    height: 600px;
}
.address_sec .right {
    width: 37%;
    float: right;
    padding: 0 0 0 60px;
}
.address_sec li {
    margin-right:-50px;
    padding: 15px 0 0px 85px;
    margin-bottom: 20px;
    font-size: 15px;
    min-height: 58px;
    position: relative;
    color: #696969;
}
.address_sec li .icon {
    width: 58px;
    height: 58px;
    position:absolute;
    left:0;
    top:0;
    background-color:#f3f2f5;
    background-size: 100% 100%;
}
.address_sec li a {
    color: #696969;
}
.address_sec .map-icon {
    background-image:url(../images/map-icon.png);
}
.address_sec .mail-icon {
    background-image:url(../images/envelope-icon.png);
}
.address_sec .phone-icon {
    background-image:url(../images/phone-icon.png);
}
.address_sec li a:not([href^="tel"]):hover {
    color: #333;
}

/*bbv added*/
.user_msg {
    padding-bottom: 8px !important;
    margin-top: -50px !important;
    color:green !important;
}
.user_msg.json_error {
    color: red !important;
}
.event_form .user_msg {
    margin: 5px 10px !important;
    text-align: center;
}
.event_form .user_msg.json_error {
    color:red !important;
}
.btn.btn-secondary {
    width:235px;
    margin-right:5px !important;
}
input[required].form-control, textarea[required] {
    width:98.5%;
    float:left;
}
input[required].form-control.half{
    width:48.5%;
    float:left;
}
/*input[required]::after, .required::after { content:'<span class="req_span" style="color:red;font-weight:bold;font-size:20px;">*</span>'; }*/
/*input[required]:before, .required:before { content:" *"; }*/
/*bbv added end*/
/*footer*/
footer {
    width: 100%;
    float: left;
    background: #002b47 url(../images/footer-bg.png) calc(50% - 830px) 90px no-repeat;
}
footer .get_in_touch {
    padding: 50px 0;
    width: 100%;
    text-align:center;
    text-align: center;
    border-bottom: 1px solid #4a3d5b;
}
footer h3 {
    color: #fff;
    display: inline-block;
    vertical-align: middle;
    padding: 0 0 0 65px;
    max-width: calc(100% - 400px);
}
footer h3 span {
    color: #8b7e9b;
}
footer form {
    padding-right:50px;
    position: relative;
    position: relative;
    width: 100%;
    background:rgba(0,7,20,0.30);
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -ms-border-radius: 30px;
    max-width: 335px;
    display: inline-block;
    vertical-align: middle;
}
footer .field  {
    padding: 20px 0px 20px 35px;
    width: 100%;
    border:0;
    font-size: 16px;
    height: 60px;
    font-family: 'Roboto', sans-serif;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -ms-border-radius: 30px;
    color: #fff;
    background: none;
}
footer .submit {
    width: 40px;
    height: 60px;
    border:0;
    cursor: pointer;
    position:absolute;
    right:0;
    top:0;
    background:url(../images/footer-submit.png) left center no-repeat;
    background-size:10px auto;
}
footer .submit:hover {
    background-image:url(../images/footer-submit-hover.png);
}
footer .footer_sec {
    overflow: hidden;
    padding: 55px 0 25px 0;
    color: #fff;
    font-family: 'Roboto', sans-serif;
}
footer .col {
    padding: 0 50px 0 0;
    width: 34.5%;
    float: left;
}
footer .menu li {
    padding-bottom: 15px;
    font-size: 16px;
    line-height: 22px;
    color: #fff;
}
footer .menu li a {
    color: #fff;
}
footer .col2 {
    padding-top: 65px;
    width: 25.5%;
}
footer h5 {
    padding-bottom: 45px;
    text-transform:uppercase;
}
footer address {
    opacity: 0.70;
}
footer .contact , footer address {
    font-size: 16px;
    line-height: 22px;
    position: relative;
    font-style:normal;
    padding: 0 0 30px 40px;
    display: block;
}
footer .contact i, footer address i {
    position:absolute;
    left:0;
    top:0;
    line-height: 22px;
    color: #8b7e9b;
    font-size: 18px;
}
footer address i {
    font-size: 18px !important;
}
footer .col a {
    color: #fff;
}
footer .col a.active,footer .col a:not([href^="tel"]):hover {
    color: #8b7e9b;
}
footer .col1 {
    padding-top: 18px;
    padding-right:130px;
}
footer .logo {
    margin-bottom: 30px;
    display: table;
}
footer .footer_sec  p {
    line-height: 20px;
}
footer .copyright {
    padding: 28px 0;
    color: #fff;
    text-align:center;
    background: #062741;
}
footer .copyright p {
    font-size: 16px;
    line-height: 25px;
    padding:0;
}
footer .copyright a {
    font-weight:700;
    color: #fff;
}
footer .copyright a:hover {
    color: #8b7e9b;
}
footer .contact.social img {
    background-color: #fff;
    margin: 5px;
    display: inline-block;
    height: 50px;
}
footer .contact.social img:hover {
    border: 1px inset #fff;
}
.event_wrapper {
    background: #f3f2f5 url(../images/contact-bg.png) right bottom no-repeat;
}
.event_cont {
    display: flex;
    width: 1200px;
    max-width: 100vw;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    gap: 5px 50px;
    margin: 0 auto 20px;
}
@media only screen and (max-width: 1000px) {
    .event_cont {
        flex-wrap: wrap;
    }
}
.event_flyer, .event_form {
    flex: 1 1 49%;
}
.event_form {
    color:#666;
}
.event_form form, .event_form p, .event_form #cc_holder, .event_ticket {
    display: flex;
    gap: 5px;
    justify-content: space-between;
    flex-wrap: wrap;
}

.event_form .event_space {
    width: 75%;
    margin: 15px auto;
    border: 0;
    height: 2px;
    background: #333;
    background-image: -webkit-linear-gradient(left, #c8c8c8, #666, #c8c8c8);
    background-image: -moz-linear-gradient(left, #c8c8c8, #666, #c8c8c8);
    background-image: -ms-linear-gradient(left, #c8c8c8, #666, #c8c8c8);
    background-image: -o-linear-gradient(left, #c8c8c8, #666, #c8c8c8);
    background-image: linear-gradient(left, #c8c8c8, #666, #c8c8c8);
}

.event_form p.pod, .event_ticket {
    justify-content: flex-start;
    flex-wrap: nowrap;
}
.event_ticket input {
    padding: 5px;
    text-align: center;
}
.event_ticket span {
    flex: 1 1 20%;
}
.event_ticket span:last-of-type:not(.min):not(.half) {
    flex: 1 1 50%;
}
.event_form span.min {
    flex: 0 0 10px;
}
.event_form .req_span {
    flex: 0 1 0px;
    padding: 0;
    margin: 0;
    margin-left: -1.5em;
}
.e-form-control {
    width: auto;
    color:#666;
    border-color: #c7c7c7;
}
.event_form * {
    flex: 0 1 100%;
    align-self: center;
}
.event_form .e-form-control.min {
    flex: 0 1 50px;
}
.event_form .e-form-control.half {
    flex: 0 1 50%;
    flex-basis: calc(50% - 5px);
}
.event_form .e-form-control.quarter {
    flex: 0 1 25%;
}
h2.error {
    text-align: center;
    background: #FBE3E4;
    color: #8a1f11;
    border-color: #FBC2C4;
    padding: 0.8em;
    margin: 1em 100px;
    border: 2px solid #ddd;
}

table.header {
	max-width: 870px;
	width: 100%;
	margin: auto;
}

table.header td {
	vertical-align: middle;
}

table.header td.image {
	height: 11%;
	width: 11%;
}
table.header td.text {
	width: auto;
	font-weight: 700;
	font-size: min(38px, max(20px, 2.7vw));
	color: #09234D;
	padding: .57%;
}
table.header td.spacer {
	width: 1.7%;
}

@media only screen and (max-width: 767px) {
    .register {
        position: relative;
        width: 100%;
        text-align: center;
        padding: 15px;
    }
}
@media only screen and (min-width: 768px) {
    .register {
        /* float: left; */
        width: 100%;
        position: absolute;
        text-align: center;
        height: 75px;
        margin-left: -2em;
        padding-top: 75px;
        display: block;
        clear: both;
        overflow: visible;
        /* background: green; */
        z-index: 10;
    }
    .register a {
        background:linear-gradient(90deg,#B3ABBE 0 50%, #002B47 50% 100%);
    }
    .register a:hover {
        background:linear-gradient(90deg, #8B7E9B 0 50%, #22465D 50% 100%);
    }
}
@media only screen and (min-width: 1600px) {
    .register a {
        width: 200px;
    }
}