/* open-sans-regular - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: url('/resources/base/fonts/open-sans-v18-latin-regular.eot'); /* IE9 Compat Modes */
    src: local(''),
    url('/resources/base/fonts/open-sans-v18-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('/resources/base/fonts/open-sans-v18-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
    url('/resources/base/fonts/open-sans-v18-latin-regular.woff') format('woff'), /* Modern Browsers */
    url('/resources/base/fonts/open-sans-v18-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
    url('/resources/base/fonts/open-sans-v18-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}
@font-face {
    font-family: "AvenirLight";
    src: url("/resources/base/fonts/AvenirLTStd-Light.eot");
    src: url("/resources/base/fonts/AvenirLTStd-Light.eot?#iefix") format("embedded-opentype"), url("/resources/base/fonts/AvenirLTStd-Light.woff2") format("woff2"), url("/resources/base/fonts/AvenirLTStd-Light.woff") format("woff"), url("/resources/base/fonts/AvenirLTStd-Light.svg#AvenirLTStd-Light") format("svg");
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
}
@font-face {
    font-family: "AvenirMedium";
    src: url("/resources/base/fonts/AvenirLTStd-Medium.eot");
    src: url("/resources/base/fonts/AvenirLTStd-Medium.eot?#iefix") format("embedded-opentype"), url("/resources/base/fonts/AvenirLTStd-Medium.woff2") format("woff2"), url("/resources/base/fonts/AvenirLTStd-Medium.woff") format("woff"), url("/resources/base/fonts/AvenirLTStd-Medium.svg#AvenirLTStd-Medium") format("svg");
    font-weight: 600;
    font-style: normal;
    font-stretch: normal;
}
@font-face {
    font-family: "AvenirHeavy";
    src: url("/resources/base/fonts/Avenir-Heavy.eot");
    src: url("/resources/base/fonts/Avenir-Heavy.eot?#iefix") format("embedded-opentype"), url("/resources/base/fonts/Avenir-Heavy.woff2") format("woff2"), url("/resources/base/fonts/Avenir-Heavy.woff") format("woff"), url("/resources/base/fonts/Avenir-Heavy.svg#Avenir-Heavy") format("svg");
    font-weight: 500;
    font-style: normal;
    font-stretch: normal;
}

root {
    display: block;
}

/******************************************************************************
Login Window
******************************************************************************/
.errorblock {
    color: #ff0000;
    background-color: #dbd9d8;
    border: 3px solid #ff0000;
    padding: 8px;
    margin: 16px;
}

/*********************************************************************************
    Keep mobile devices (namely mobile Safari and Chrome) from zooming in when entering info in a text field
**********************************************************************************/
body.mobile input[type="color"],
body.mobile input[type="date"],
body.mobile input[type="datetime"],
body.mobile input[type="datetime-local"],
body.mobile input[type="email"],
body.mobile input[type="month"],
body.mobile input[type="number"],
body.mobile input[type="password"],
body.mobile input[type="search"],
body.mobile input[type="tel"],
body.mobile input[type="text"],
body.mobile input[type="time"],
body.mobile input[type="url"],
body.mobile input[type="week"],
body.mobile select,
body.mobile select:focus,
body.mobile textarea {
    font-size: 16px;
}

/******************************************************************************
    Public
******************************************************************************/

html { overflow-y: scroll; }
body { margin-top: 0px; font-family: "Open Sans", "Avenir Light","AvenirLight","Avenir","Helvetica Neue",Helvetica,Arial,sans-serif; font-size: 16px !important; line-height: 23px; }
#main { margin: 0 auto; display: block; }
#header { position: relative; text-align: center; background: white }
#header > img { width: 100%; height: auto; }
#navigation .navbar { margin-bottom: 0; font-size: 18px;}
.navbar-inner { border-radius: 0; filter: none !important; }
#content { clear: both; position: relative; padding-bottom: 10px; }
#content > h1 { text-align: center; padding: 36px 0 24px; margin: 0; }
#content > h4 { margin: 20px 10%; }
#content > div > h1 { margin-top: 0; }

label, input, button, select, textarea {
    font-size: 16px !important;
    /*line-height: 20px;*/
}


body.mobile h1 { font-size: 20px; line-height: 22px; }

/* Keep webkit browsers from using yellowish background on autofill form fields */
input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px #ffffff inset;
}

/* Override some of the bootstrap 2 button styling to make it look for flat */
.btn {
    filter:progid:DXImageTransform.Microsoft.Gradient(enabled='false');
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    background-image:none;
    border:0;
}
.btn:focus {
    outline: none;
}

.btn-primary, .btn-primary.disabled, .btn-primary:focus {
    background-color: #0062B3;
}
.btn-primary:hover {
    background-color: #0085f3;
}

.btn-info, .btn-info.disabled, .btn-info:focus {
    background-color: #FFB500;
    color: white;
}
.btn-info:hover {
    background-color: #dc9d02;
    color: white;
}

/* So buttons aren't stacked right top of each other on mobile */
body.mobile .button-padded {
    margin-bottom: 5px;
}

.constrainer {
    background-color: white;
    max-width: 1200px;
    margin: 0 auto;
    height: 100%;
}

form label.required:before { content: ' * '; color: red; }

/* Take up the whole viewport on tablet and mobile */
body.tablet,
body.mobile { padding-left: 0; padding-right: 0 }
body.tablet #main,
body.mobile #main { width: 100% }

/* Push the ribbon down since the menu jumps to the top */
body.tablet #ribbonTop,
body.mobile #ribbonTop { margin-top: 40px; }

/* Center the nav */
#navigation .navbar .nav,
#navigation .navbar .nav > li {
    float: none;
    display: inline-block;
    vertical-align: top;
}

#navigation .navbar-inner {
    text-align: center;
}

#navigation .navbar .nav .subPage {
    text-align: left;
}

body.tablet #navigation .navbar { font-size: 14px;}
body.mobile #navigation .navbar { font-size: 14px;}

body.tablet #navigation .navbar ul.nav ul,
body.mobile #navigation .navbar ul.nav ul { display: block; }
body.tablet #navigation .navbar ul.nav a,
body.mobile #navigation .navbar ul.nav a { padding: 4px 8px; }
body.tablet #navigation .navbar ul.nav > li > a,
body.mobile #navigation .navbar ul.nav > li > a { font-size: 16px; }
body.tablet #navigation .navbar ul.nav strong.caret,
body.mobile #navigation .navbar ul.nav strong.caret { display: none; }
body.tablet #navigation .navbar ul.nav ul.dropdown-menu,
body.mobile #navigation .navbar ul.nav ul.dropdown-menu { margin-left: 25px; }
body.tablet #navigation,
body.mobile #navigation { position: fixed; top: 0; left: 0; z-index: 1000; }
body.mobile #navigation .nav-collapse .dropdown-menu a,
body.tablet #navigation .nav-collapse .dropdown-menu a { color: white; }

/* Uncenter the navbar for smaller viewports */
body.tablet #navigation .navbar-inner,
body.mobile #navigation .navbar-inner { text-align: left; }
body.tablet #navigation .navbar .nav,
body.mobile #navigation .navbar .nav,
body.tablet #navigation .navbar .nav > li,
body.mobile #navigation .navbar .nav > li { display: inherit; }


/* This modal overlaps the nav menu on mobile layout, making the nav button unclickable */
body.mobile #system_actionMessage_Modal { top: -25%; }

/******************************************************************************
    Templating
******************************************************************************/

.template-header { text-align: center; padding: 15px 0; margin-left: 5px; margin-right: 5px; }
.template-subheader { }
.template-subheader { }
.template-body { }
.template-body .form-actions { margin-bottom: 10px; }
.form-horizontal .template-body .form-actions { padding-left: 20px; }


body.mobile-small .form-horizontal .template-body .form-actions { padding-left: 10px; }

/******************************************************************************
    Site root page
******************************************************************************/

#eventListings{ margin: 0 40px; border: 1px solid #dbc59e; }
#eventListings div span { display: inline-block; padding: 0 5px; }
#eventListings div span:first-child { width: 220px; }
#eventListings div:nth-child(odd) { background-color: #faf2cc; }
#eventListings div { padding: 2px; }
#eventListings a{text-decoration: none;}

/******************************************************************************
    Home page
******************************************************************************/

#content .home-info { }
#content .home-info h5 { }
#content .home-carousel .carousel-caption { background: #0062B3; }
#content .home-carousel #carousel { margin-top: 15px; margin-left:25px; }
#content .home-carousel ol.carousel-indicators li:hover { cursor: pointer; }
/*#content .home-widgets .widget { width: 50%; }*/
#content .home-widgets .widget ul { padding: 0 1em; }
#content .home-widgets .widget ul span { display: inline-block; float: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#content .home-widgets .widget h5 { margin: 0; text-align: center; padding: 1em 0;  }
#content .home-widgets .widget .registrantName { width: 70%; }
#content .home-widgets .widget .registrantRaised { width: 30%; text-align: right;}
#content .home-widgets .widget .teamName { width: 70%; }
#content .home-widgets .widget .teamRaised { width: 30%; text-align: right; }

body.mobile #content .home-info { }
body.desktop #content .home-info { }
body.tablet #content .home-info {  height: 274px; }
body.desktop #content .home-info,
body.tablet #content .home-info { float: right; min-width: 320px; position: relative;}
body.desktop #content .home-carousel { margin-left: 0;}
body.mobile #content .home-carousel #carousel { margin-left: auto; margin-right: auto; }

#ndss-logo{display: block;top: -17px;margin: 0 auto;position: relative;}

/******************************************************************************
    Profiles
******************************************************************************/
#profile { position: absolute; right: 10px; top: 12px; font-weight: bold; }
body.tablet #profile,
body.mobile #profile { right: auto; left: 10px; }

#content .profile-bio { margin: 15px 0; }
/*body.desktop-large #content .profile-bio { max-height: 340px; }*/
#content .profile-section-main { height: 401px; position: relative; }
#content .profile-team .table-container { max-height: 150px; overflow-x: hidden; overflow-y: auto; border-bottom: 1px solid #DDDDDD; }
#content .profile-team .table-container table { margin-bottom: 0; }
#content .profile-team .table-container td { text-align: center; padding: 2px 5px; }
#content .profile-donations { margin-top: 1em; }
#content .profile-donations h5 { margin-top: 0; }
#content .profile-donations span { font-size: 16px; font-weight: bold; font-family: 'Lucida Console',monospace; }
#content .profile-donors { max-height: 250px; overflow-x: hidden; overflow-y: auto; border: 1px solid #DDDDDD; border-width: 1px 0 0; }
body.desktop-large #content .profile-donors { max-height: 375px; }
#content .profile-donors table { margin-bottom: 0; border-top: 0; }
#content .profile-donors table td { font-size: 12px; line-height: 16px; }
#content .profile-donors table .name { width: 65%; }
#content .profile-donors table .donation { width: 35%; text-align: center; }
/*#content .profile-buttons { position: absolute; bottom: 0; width: 100%; }*/
#content .profile-buttons { width: 100%; }
#content .profile-buttons a { display: block; font-weight: bold; width: 38% }
body.mobile #content .profile-buttons a { width: 35%; }
body.mobile-small #content .profile-buttons a { width: 34%; font-size: small; }
#content .profile-buttons a:first-of-type { margin-right: 2%; }
#content .profile-buttons button { width: 100%; font-size: 16px; }
#content .profile-icon{height: 16px; width: 16px;}
#content .profile-icon:hover{cursor: help;}

#content #ajaxLoading { color: #999999; display: none; font-size: 24px; font-weight: bold; height: 80px; position: absolute; bottom: 0; width: 100%; line-height: 80px;
    background: -moz-linear-gradient(top,  rgba(237,237,237,0.5) 0%, rgba(237,237,237,1) 50%, rgba(237,237,237,1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(237,237,237,0.5)), color-stop(50%,rgba(237,237,237,1)), color-stop(100%,rgba(237,237,237,1)));
    background: -webkit-linear-gradient(top,  rgba(237,237,237,0.5) 0%,rgba(237,237,237,1) 50%,rgba(237,237,237,1) 100%);
    background: -o-linear-gradient(top,  rgba(237,237,237,0.5) 0%,rgba(237,237,237,1) 50%,rgba(237,237,237,1) 100%);
    background: -ms-linear-gradient(top,  rgba(237,237,237,0.5) 0%,rgba(237,237,237,1) 50%,rgba(237,237,237,1) 100%);
    background: linear-gradient(to bottom,  rgba(237,237,237,0.5) 0%,rgba(237,237,237,1) 50%,rgba(237,237,237,1) 100%);
}

body.mobile #content .profile-section-main { height: auto; }
body.tablet #content .profile-buttons button,
body.mobile #content .profile-buttons button { font-size: 14px; padding-left: 0; padding-right: 0; }
body.mobile #content .profile-section-team { display: none }
body.mobile #content .profile-image-Mobile { float: left; }
body.mobile #content .profile-buttons { position: static; }

body.mobile #content .profile-donors{height: 100px !important}

#team-members tr:hover{cursor: pointer;background-color: #DDDDDD;}

/******************************************************************************
        HomePage FRONT ANNOUNCEMENTS
******************************************************************************/
.frontPageTextHolder{
    min-height: 50px;
    padding-left: 16px;
    /*padding-right: 16px;*/
    text-shadow: 0px 0px #000000;
}

#frontPageAnnouncementHolder{
    padding: 0 10px;
}

#frontPageAnnouncementHolder>div{
    margin-top: 20px;
    width: 98%;
}
#frontPageAnnouncementHolder .textHolder {
    color: black;
    font-weight: bold;
    /*font-size: smaller;*/
    text-align: center;
    overflow: hidden;
    max-width: 100%;
}

#frontPageAnnouncementHolder .textHolder h4 {
    padding: 0 5px;
    margin: 0 auto;
}

.frontPageSectionHeader {
    color: #0062B3;
    margin-bottom: 0;
}

.frontPageSection {
    margin: 20px;
}

/******************************************************************************
    Donate
******************************************************************************/
.donate-subheader { max-width: 800px; margin: 0 auto 20px; text-align: center; padding: 0 6px 0 6px; }
#submitErrors { width: 90%; max-width: 600px; margin: 10px auto; text-align: center; }

#donate-form  { box-sizing: border-box; width: 100%; padding: 0 20px; }
#donate-form select { max-width: 256px; }
#donate-form .control-group { margin-bottom: 10px; }
#donate-form .donate-tabs { width: 50%; float: left; }
#donate-form .donate-cart { width: 50%; float: left; box-sizing: border-box; padding: 0 20px; }
#donate-form .donate-error { color: red; }

#donate-form .control-label {
    /*font-size: 12px; */
}
#donate-form .input-append input { max-width: 150px; }
#donate-form .well {
    /*font-size: 12px; */
    padding: 4px 12px;
    margin-bottom: 0;
    cursor: default;
}
#donate-form [data-donateType] button {
    margin-left: 4px;
    /*font-size: 12px; */
}
#donate-form #donate-total { font-weight: bold; font-size: 16px; }

#donate-form .form-buttons div { margin-top: 12px; }
#donate-form .form-buttons div.alert:empty { display: none; }
#donate-form .form-buttons div.alert p { margin-bottom: 0; }
#donate-form .form-buttons div button { display: block; width: 80%; max-width: 220px; margin: 0 auto;}

#donate-form .donate-cart h4 { text-align: center; }
#donate-form .donate-cart table { border: 1px solid #DDDDDD; }
#donate-form .donate-cart table tbody { background-color: white; }
#donate-form .donate-cart .donate-total { margin-bottom: 10px; font-size: 14px; }

#donate-form #billingZip { margin-left: 4px; max-width: 100px; }
#donate-form .billing-procfee label { line-height: 30px; display: inline-block; margin-right: 10px; }
#donate-form .billing-procfee input { margin: 0 3px; }

body.tablet #donate-form .donate-tabs,
body.tablet #donate-form .donate-cart,
body.mobile #donate-form .donate-tabs,
body.mobile #donate-form .donate-cart { width: 100%; max-width: 500px; margin: 0 auto; float: none; }
body.mobile #donate-form #billingZip { display: block; margin-left: 0px; margin-top: 5px; }

body.mobile #donation-encouragement-section { display: none }
body.mobile .donate-billing-section-separator { display: none }

/******************************************************************************
    Register
******************************************************************************/

#registerForm { margin: 0; }
#registerForm ul.nav { margin-bottom: 0; }
#registerForm .tab-title { margin: 0; line-height: 32px; padding: 7px 1em; border: 1px solid #DDDDDD; letter-spacing: 1px;
    background: rgb(255,255,255);
    background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(229,229,229,1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,1)), color-stop(100%,rgba(229,229,229,1)));
    background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(229,229,229,1) 100%);
    background: -o-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(229,229,229,1) 100%);
    background: -ms-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(229,229,229,1) 100%);
    background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(229,229,229,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e5e5e5',GradientType=0 );
}
#registerForm span.regCodeBox { font: bold 14px/1.25 monospace; background-color: #fed835; padding: 4px 8px; display: inline-block; border: 3px double #777777; border-radius: 4px; }
#registerForm .tab-content .form-actions { padding-left: 20px; margin: 0; border-top: 0; background-color: transparent; }
#registerForm .tab-content button.continue { width: 25%; min-width: 150px; }
#registerForm .new-login { border-right: 3px dashed #DDDDDD; }
#registerForm .third-party-login .btn-group { margin: 8px 0; display: block; }
#registerForm .third-party-login .btn-group a{ position: relative; }
#registerForm .third-party-login .btn-group button {width: 250px; padding: 8px 12px; /*font-size: 12px;*/ font-weight: bold; }
#registerForm .third-party-login .btn-group img { position: absolute; z-index: 10; left: 4px; top: -16px;}
#registerForm .team-type { border-right: 3px dashed #DDDDDD; padding-left: 1em; padding-right: 1em; }
#registerForm .team-name:before { content: 'Team: '; }
#registerForm .team-content.hidden { display: none; }
#registerForm .team-content .table-container { height: 132px; overflow-y: auto; }
#registerForm .team-content table { margin-bottom: 0; border-top: 0; }
#registerForm .team-content table td { /*font-size: 12px; */line-height: 16px; }
#registerForm .team-content table th { border-top: 0; }
#registerForm .team-content table th.count { width: 15%; }
#registerForm .team-content table th.name { width: 70%; }
#registerForm .team-content table th.donations { width: 15%; }
#registerForm .billing-info { border-right: 3px dashed #DDDDDD; padding-right: 1em; }
#registerForm .reg-waiver { max-height: 300px; overflow-y: auto; }
#registerForm .reg-waiver p, #registerForm .reg-waiver div { background-color: inherit !important; }
/*#registerForm #regAddRegistrantButton { position: absolute; right: 0; top: 0; }*/
#registerForm button.RemoveRegistrant { padding: 0 10px; border: 0; }
#regJoinTeam .regJoinTeamItem { display: block; margin-bottom: .5em; border-radius: 4px; }
#regJoinTeam .regJoinTeamItem a { display: block; cursor: pointer; }
#registerForm #regTeamJoinSearch,
#registerForm #regTeamJoinName { margin-left: 2em; }

body.mobile #registerForm .tab-title { text-align: center; border-top: 1px solid #E9E9E9; border-radius: 4px;
    -webkit-box-shadow: 0px 0px 4px rgba(150, 150, 150, 0.5) inset;
    -moz-box-shadow:    0px 0px 4px rgba(150, 150, 150, 0.5) inset;
    box-shadow:         0px 0px 4px rgba(150, 150, 150, 0.5) inset;
}
body.mobile #registerForm .tab-title .reg-code-holder { display: none; }
body.mobile #registerForm .new-login { border-right: 0; border-bottom: 3px dashed #DDDDDD; padding-bottom: 1em; margin-bottom: 1em; }
body.mobile-small #registerForm .tab-content .form-actions { padding-left: 10px; }
body.tablet #registerForm .control-label { width: 90px; }
body.tablet #registerForm .controls { margin-left: 110px; font-size: 12px; line-height: 16px; }
body.mobile #registerForm .team-type { border-right: 0; border-bottom: 3px dashed #DDDDDD; padding-bottom: 1em; margin-bottom: 1em; padding-right: 0; }
body.tablet #registerForm #regTeamName,
body.mobile #registerForm #regTeamName { width: 175px; }
body.desktop #registerForm #regTeamJoinSearch,
body.desktop #registerForm #regTeamJoinName { margin-left: 4em; }
body.tablet #registerForm #regTeamSearch,
body.mobile #registerForm #regTeamSearch { width: 185px; }
body.mobile #registerForm .billing-info { border-right: 0; border-bottom: 3px dashed #DDDDDD; padding-bottom: 1em; margin-bottom: 1em; padding-right: 0; }
body.mobile #registerForm #regAddRegistrantButton,
body.tablet #registerForm #regAddRegistrantButton { position: static; }
body.tablet #registerForm #team-name,
body.mobile #registerForm #team-name { max-width: 150px; }

body.mobile #registerForm ul.nav { border-bottom: 0; padding: 0 5em 1em; }
body.mobile #registerForm ul.nav li { display: block; float: none;  }
body.mobile #registerForm ul.nav li a { text-align: center; border: 1px solid rgba(1, 71, 141, .5); background-color: #f4f4f4; margin: 3px 0; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; }
body.mobile #registerForm ul.nav li a:before { content: 'Step '; }
body.mobile #registerForm ul.nav li a:hover { background-color: #e9e9e9; }
body.mobile #registerForm ul.nav li.disabled a:hover { background-color: inherit; }
body.mobile #registerForm ul.nav li.active a { background-color: white; font-weight: bold; }

body.desktop #registerForm .team-registrants{padding-right: 25px;}
body.tablet #registerForm .team-registrants{padding-right: 25px;}
body.mobile #registerForm .team-registrants{padding-right: 25px;padding-left: 25px;}

body.tablet .indLabelClear, body.tablet #matchingDonationContainer label,
body.tablet #matchingDonationOrganizationContainer label{clear:both !important; width: 250px !important; text-align:left;}
body.tablet .leftControls20{margin-left: 20px !important;}

/******************************************************************************
    Widgets
******************************************************************************/
.top-5{}
.top-5 a{text-decoration: none;}

/******************************************************************************
                Search page
******************************************************************************/
.searchProfiles li { width: 50%; margin: 8px 0;  }
.searchProfiles li div.thumbnail { margin: 0 10px; height: 64px;}
.searchProfiles li a, .searchProfiles li a small{
    font-weight: bold;
}

.searchProfiles .caption{
    /*width: 73%;*/
}

/******************************************************************************
                            Base Theme Layout
******************************************************************************/

/*---------------Header------------*/
#main #ribbonTop{
    height: 50px;
    width: 100%;
    background: #ffffff;
    border-bottom: 8px solid #f2f2f2;
}

#main #ribbonTop>div{
    margin: 0 auto;
}

#themes-bannerImage {
    width: 100%;
}

/*-----------------Body----------*/
#main{
    background: #f2f2f2;
    width: 100%;
}
#themes-bannerImage {
    /*max-width: 1100px;*/
}

body.tablet #themes-bannerImage,
body.mobile #themes-bannerImage {
    width: 100%;
}
#main #content{
    margin: 0 auto;
}
#content #eventListings{
    margin: 0 auto;
}

/*-----------Ribbon (Top of header) -----------*/
.ribbonActions {
    float: right;
    margin-top: 15px;
    margin-right: 5%;
}

.ribbonNav.navbar {
    margin-bottom: 0;
    display: inline;
}

#ribbonTop li.dropdown.open > a {
    background-color: inherit;
}

.ribbonDivider.divider-vertical {
    height: 20px;
    border-left: 1px solid #989898;
    border-right: none;
}

.ribbonNav.navbar .nav>li>a {
    padding: 0 0 0 10px;
    color: #0062B3;
}

body.mobile .nav-greeting { display: none; }

body.mobile-small .nav-name {
    max-width: 55px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-flex;
}

/*-----------Navigation-----------*/
#navigation .navbar .navbar-inner{
    background: #0062B3;
    border: none;
}

#navigation .navbar .nav > li > a {
    color: white;
    text-transform: uppercase;
    text-shadow: none;
}

#navigation .navbar .nav>.active>a, .navbar .nav>.active>a:hover, .navbar .nav>.active>a:focus,
#navigation .navbar .nav>li a:hover {
    color: white;
    background: #FFB500;
}

/*-- Appears in place of navigation when configuration dictates --*/
#navigation-replacement {
    height: 5px;
    min-height: 5px;
    background-color: #0062B3;
}

.dropdown-menu > li.subPage.active > a {
    background-color: #dc9d02;
    background-image: none;
}

.dropdown-menu > li > a:hover {
    background-color: #FFB500;
    background-image: none;
}

/* Remove caret */
.navbar .nav > li > .dropdown-menu::after,
.navbar .nav > li > .dropdown-menu::before {
    display:none;
}

/*---------Home Content Top---------------*/

/*-------------Home Content Top *--------------*/
#content .home-content .home-widgets{
    padding-left: 6px;
}
body.mobile #content .home-content .home-widgets{
    padding: 10px;
}
#content .home-content .home-widgets .widget h5{
    color: #0062B3;
    padding: 5px 0;
}
#content .home-content .home-widgets .widget{
    min-height: 155px;
}

#content .home-content .home-widgets .widget ul{
    padding-top: 10px;
}

#content .home-content .home-widgets .widget ul.top-5 span{
    font-weight: 500;
    color: #000;
}

.topFiveLeftPane, .topFiveRightPane {
    background: white;
    margin-bottom: 20px;
}

.ranking-header {
    background: #0062B3;
    color: white !important;
    text-transform: uppercase;
}

.top-team-padder {
    padding: 4px;
}

/*-------------Footer--------------*/
.publicFooter {
    text-align:center;
    background: #0062B3;
    min-height: 50px;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
}

body.mobile .publicFooter {
    flex-direction: column;
}

.publicFooter > div {
    font-weight: 300;
    color: #fff;
    font-size: 14px;
    line-height: 14px;
    padding: 0 10px;
}

.publicFooter .footerContent {
    width: 100%;
    padding: 10px;
}

.publicFooter .image {
    width: 80px;
    border-radius: 5px;
    margin: 4px;
}

body.mobile .publicFooter .image {
    margin: 10px;
}

.publicFooter .footer-icon {
    padding: 4px;
}

.publicFooter .footer-icon a, footer-icon a:hover, footer-icon a:visited, footer-icon a:active, footer-icon a:focus {
    color: white;
}

/* -----------------------------------------------------------------------------
    PROFILE PAGES
 -----------------------------------------------------------------------------*/
/*body.desktop
body.tablet
body.mobile */

body.desktop .profile-1{}
body.tablet .profile-1{}
body.mobile .profile-1{}
body.tablet .profile-1 .profile-info{width: 289px!important;}
body.mobile .profile-1 .profile-info{width: 100%!important;}
body.mobile .profile-1 .profile-info .span5{width: 159px;display:inline-block;margin-top: 44px;}
body.mobile .profile-1 .profile-info .span7{width: 142px;display:inline-block;margin-left: 20px;margin-top: 45px;vertical-align: top;}

body.mobile #profile-menu .dropdown-menu{display: block!important;}
body.mobile #profile-menu .dropdown-menu li{width: 96%;margin-left: 4%;}

.table-info{color: #000; border: 2px solid #000; padding: 5px 10px; background: #fff;-moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 5px; /* future proofing */
    -khtml-border-radius: 5px; /* for old Konqueror browsers */}
.table-info tr td{padding: 10px;}
.receiptTopTable{color: #00517e; font-weight: bold; }
.receiptTopTable tr td{ padding: 5px 20px; text-align: center;}

/******************************************************************************
    FrontPage Announcement
******************************************************************************/
body.mobile #frontPageAnnouncementHolder .textHolder, body.tablet  #frontPageAnnouncementHolder .textHolder  {font-size: 14px; line-height: 16px;}

.subtle-shadow {
    border: 1px solid #0062B3;
    -webkit-box-shadow: 6px 6px 11px 0px rgba(0,0,0,0.14);
    -moz-box-shadow: 6px 6px 11px 0px rgba(0,0,0,0.14);
    box-shadow: 6px 6px 11px 0px rgba(0,0,0,0.14);
}

/* Stuff for flatter bootstrap progress bars */
.progress .bar {
    background-image: none;
}

.progress-success .bar, .progress .bar-success {
    background-color: #FFB500;
}

/* Stuff for flatter bootstrap buttons */
.flat-button {
    text-align: center;
    text-transform: uppercase;
    font-size: small;
    font-weight: bold;
    margin: 5px;
    display: inline-block;
    width: 30%;
    padding: 6px 30px;
    border-radius: 6px;
    color: white;
    border: 2px solid #FFB500;
    background: #FFB500;
    -webkit-transition-duration: 0.15s;
    transition-duration: 0.15s;
}

.flat-button-nav {
    margin: 0 2px;
    display: inline;
}

.flat-button-wide {
    font-size: medium;
    width: 60%;
    padding: 9px 30px;
}

body.mobile-small .flat-button-nav {
    padding: 6px;
}
.flat-button:hover, .flat-button:focus {
    text-decoration: none;
    outline: none;
    background-color: inherit;
    color: #FFB500;
}
.flat-button:active, .flat-button:visited, .flat-button:link {
    text-decoration: none;
    outline: none;
}

.flat-button.outline-button {
    background: inherit;
    color: #0062B3;
    border: 2px solid #0062B3;
}

.flat-button.outline-button:hover {
    background-color: #0062B3;
    color: white;
}

/*------------------------------------------------------------------------*/

#twitter-widget-0 {
    height:350px !important;
}

#tweetHolder {
    background-color: white;
}

/*-----------------------------Stuff For Goal Tracker Area on Home Page -------------------------------------------*/
.goals-container {
    height: 90px;
    margin: 0 auto;
    background-color: white;
    padding: 20px 0 20px 0;
    border-bottom: 8px solid #f2f2f2;
}

/*.grey-bar {*/
/*    height: 5px;*/
/*    border-bottom: 8px solid #f2f2f2;*/
/*    padding: 10px;*/
/*}*/

.goal-row {
    padding: 4px 0 4px 0;
}

.goal-text {
    margin-bottom: 0;
    color: #0062B3;
}

.goal-number {
    margin-top: 0;
    font-size: x-large;
    color: #0062B3;
}

/* Make the font smaller on narrow viewports */
body.mobile-small .goal-number {
    font-size: large;
}
body.mobile-small .goal-text {
    font-size: 12px;
}

.goal-info ul li {
    padding-top: 0px;
    padding-bottom: 0px;
    float: left;
    text-align: center;
    text-transform: uppercase;
    color: black;
}

.goal-info ul li:not(:last-child) {
    border-right: 2px solid #0062B3;
    margin-right: 40px;
    padding-right: 40px;
}

body.mobile-small .goal-info ul li:not(:last-child) {
    margin-right: 10px;
    padding-right: 10px;
}

/* Slider */
body.mobile .progress-widget-row {
    width: 90%;
}

body.mobile-small .progress-widget-row {
    font-size: small;
}

.progress-widget-row {
    font-weight: bold;
    width: 70%; /* This can be sized independently of any of the cells that make it up */
    max-width: 700px;
    margin: 14px auto;
    font-size: large;
}

/* The cells widths and margins need to add up to 100% */
.progress-widget-left-cell {
    float: left;
    width: 5%;
    text-align: right;
    padding-top: 5px;
}

.progress-widget-right-cell {
    float: left;
    width: 10%;
    padding-top: 6px;
}

.progress-widget-middle-cell {
    margin-top: 2px;
    margin-left: 2%; /* push the numbers before and after the sliders away from it */
    margin-right: 2%;
    float: left;
    width: 81%;
}

#slider {
    width: 100%;
    background-color: #f2f2f2;
    border: none;
    /*border-top-right-radius: 4px;*/
    /*border-bottom-right-radius: 4px;*/
}

.progress-shadow {
    -webkit-box-shadow: 3px 3px 7px 0px rgba(176,170,176,1);
    -moz-box-shadow: 3px 3px 7px 0px rgba(176,170,176,1);
    box-shadow: 3px 3px 7px 0px rgba(176,170,176,1);
}

.noUi-connect {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}

.noUi-handle {
    width: 8px !important;
    height: 37px !important;
    left: 0 !important;
    top: -4px !important;
}

/* Height of the bar */
.noUi-horizontal {
    height: 30px;
}

/* Disable the "disabled" cursor, we don't need to people to know it's a slider */
[disabled] .noUi-handle, .noUi-handle[disabled], .noUi-target[disabled] {
    cursor: inherit;
}

/* This is the progress bar color */
[disabled] .noUi-connect {
    box-shadow: none;
    background: #FFB500;
}

/* Get rid of the tick marks on the slider control */
.noUi-handle::before, .noUi-handle::after {
    background: none;
}

/*--------------------------Search Teams and Participants--------------------*/
#searchHeaderHolder > div { width: 300px; float: left; }
#searchHeaderHolder > div > a { width: 270px; color: #777777; display: block; margin: 0 15px; text-align: center; height: 50px; line-height: 50px; font-size: 24px; text-shadow: 0 1px 1px rgba(100, 100, 100, .5); }
#searchHeaderHolder > div > a:hover { color: #232323; }
#searchHeaderHolder > div > a.active { color: #232323; position: relative; top: 1px;
    background-image: url(/resources/base/images/searchIcon.png);
    background-repeat:no-repeat;
    background-size: 40px;
    background-position: 10px 2px;
}
#searchHeaderHolder > div > a.active:hover { cursor: default; }
#searchHeaderHolder > div > a:hover,
#searchHeaderHolder > div > a:focus { text-decoration: none; outline: none; }

#searchResultsHolder { background-color: white; border-top: 1px solid #DDDDDD; min-height: 200px; }
#searchResultsHolder ul { padding-top: 12px; }
#searchResultsHolder ul li { width: 46%; height: 70px; margin: 4px 2%; float: left; }

/* On tablet and mobile, only show one result per row */
body.tablet #searchResultsHolder ul li,
body.mobile #searchResultsHolder ul li {
    width: 96%;
}

/* Alter the width of the team name and captain based on the viewport to force ellipses */
body.tablet #searchResultsHolder ul li a.caption div {
    max-width: 400px;
}
body.mobile-small #searchResultsHolder ul li a.caption div {
    max-width: 136px;
}

#searchResultsHolder .rightside  {
    text-align: right;
}
body.mobile-small #searchResultsHolder .rightside {
    padding-left: 0;
    padding-right: 0;
}

#searchResultsHolder ul li a.caption div { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 260px; }
#searchResultsHolder ul li a.btn { font-weight: bold; width: 80px; clear: right; margin: 1px 0; }

/* Make the buttons smaller on mobile portait */
body.mobile-small #searchResultsHolder ul li a.btn { padding-left: 0; padding-right: 0; }

#login-box > a > i {
    color: white;
}

.custom-url {
    overflow-wrap: break-word;
}

body.desktop .no-desktop { display: none; }

body.mobile .desktop-only { display: none; }
body.tablet .desktop-only { display: none; }


/* Make the wells on the profile pages white to call attention to the contents better */
.profile-1.well {
    background-color: white;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    -o-border-radius: 0px;
    border-radius: 0px;
    border: 0px;
    box-shadow: none;
}

.gridtable {
    width: 100%;
    font-size: 14px;
    line-height: 14px;
}

body.mobile .gridtable {
    font-size: 12px;
}

.gridtable-row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.gridtable-row:last-child {
    border-bottom: 1px solid #ccc;
}

.gridtable-cell {
    padding:4px;
    border-right: 1px solid #ccc;
    text-align: left;
}

.gridtable-cell:first-child {
    border-left: 1px solid #ccc;
}


.gridtable-header {
    text-align: center;
    font-weight: bold;
}

body.mobile .gridtable-header {
    font-size: 10px;
}

.gridtable-highlight {
    background:#EEEEEE;
    /*border-left: 1px solid #ccc;*/
    border-top: 1px solid #ccc !important;
    border-bottom: 1px solid #ccc !important;
}

.gridtable-expandable-row {
    font-size: larger;
    padding-top: 6px;
    padding-bottom: 6px;
}

.cart-image {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 60px;
}

.secondary-color {
    color: #0062B3;
}

.secondary-color-background {
    background-color: #0062B3;
}

/* Start Polaroid Images Styles */
.personal-photo-area {
    background-color: #f2f2f2;
}
.personal-photo {
    max-height: 300px;
}
body.mobile .personal-photo { max-height: 200px; }

.polaroid {
    display: inline-block;
    margin: 15px 10px 15px 10px;
    position: relative;
    width: auto;
    -webkit-box-shadow: 0 4px 6px rgba(0, 0, 0, .3);
    -moz-box-shadow: 0 4px 6px rgba(0,0,0,.3);
    box-shadow: 0 4px 6px rgba(0,0,0,.3);
    -webkit-transition: all .15s linear;
    -moz-transition: all .15s linear;
    transition: all .15s linear;
}

.polaroid img {
    border: 12px solid #fff;
    border-bottom: 46px solid #fff;
    height: auto;
    max-width: 100%;
}

.polaroid p {
    color: #333;
    font-size: 18px;
    position: absolute;
    bottom: 0;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-left: 10px;
    width: 94%;
}
body.mobile .polaroid p {
    font-size: 14px;
    width: 88%;
}

.polaroid:hover{
    -webkit-transform: scale(1.005);
    -moz-transform: scale(1.005);
    transform: scale(1.005);
    z-index:10;
    -webkit-box-shadow: 3px 3px 21px 0 rgba(0,0,0,0.75);
    -moz-box-shadow: 3px 3px 21px 0 rgba(0,0,0,0.75);
    box-shadow: 3px 3px 21px 0 rgba(0,0,0,0.75);
}
/* End Polaroid Images Styles */

/* Radio Styling To Make Them More Like Large Buttons */
input.big-radio-button[type="radio"] {
    display: none;
}
input.big-radio-button[type="radio"]:not(:disabled) ~ label {
    cursor: pointer;
}
input.big-radio-button[type="radio"]:disabled ~ label {
    color: #bcc2bf;
    border-color: #bcc2bf;
    box-shadow: none;
}

label.big-radio-button {
    display: block;
    background: white;
    border: 1px solid #FFB500;
    border-radius: 4px;
    padding: 5px 5px 0 5px;
    margin-bottom: 8px;
    text-align: center;
    box-shadow: 0px 3px 10px -2px rgba(161, 170, 166, 0.5);
    position: relative;
}

input.big-radio-button[type="radio"]:checked + label {
    background: #FFB500;
    color: white;
}
input.big-radio-button[type="radio"]:checked + label::after {
    color: #3d3f43;
    font-family: FontAwesome;
    border: 2px solid #FFB500;
    content: "\f00c";
    font-size: 15px;
    position: absolute;
    top: 5%;
    left: 5%;
    transform: translateX(-50%);
    height: 20px;
    width: 20px;
    text-align: center;
    border-radius: 50%;
    background: white;
    box-shadow: 0px 2px 5px -2px rgba(0, 0, 0, 0.25);
}
/* End Radio Styling */

/* CKEditor related styles. */
.ck-editor__editable_inline {
    height: 250px;
    overflow-y: auto;
}

.ckeditor-status {
    margin: 10px;
    color: grey;
    background-color: inherit !important;
}

.ckeditor-status-warning {
    color: red;
}
/* End of CKEditor related styles. */
