table.mainMenu.menuHorizontal > tbody tr > td
{
  /* do not allow menu items to wrap for this template */
  display: table-cell !important;
}

body
{
  font-family: Arial,Helvetica,sans-serif;
  font-size: 14px;
  line-height: 18px;

  margin: 0px;
  padding: 0px;
}

    #msgList {margin-top:7px;}
    .msgBody, .mainMessages
    {
    margin-top: 7px;
    margin-bottom: 7px;
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #514333;
    background-color: #f6fab6;
    width: 100%;
    }

    TD.msgText, .innerMessage
    {
    padding:2px;
    font-size: 80%;
    font-weight: bold;
    color: #293451;
    background-color: #f6fab6;
    }

    .classDescriptionHint
    {
    position:absolute;
    z-index:999;
    width:220px;
    background-color:#F2F2F2;
    color: #000;
    padding:10px;
    border:1px solid #E5E5E5;
    display: none;
    font-size: 90%;
    }


.content_container
{
   width: 100%;
   padding: 0px;
}

.page_content
{
  font-size: 12px;

  width: 100%;
  max-width: 960px;
  margin: 0px auto !important;

}

H1
{
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 15px;
}

H2 
{
  font-size: 14px;
  font-weight:bold;
  margin-bottom: 10px;
}

A,
A:link, 
A:visited,
A:hover  
{
    color:#216593;
}

.header_bg .header
{
    min-height: 100px;
    margin: 0px !important;
}

A.logo_link
{
  text-decoration: none;
}

.logo
{
    float: left;
    margin-left: 20px;
}

.top_links
{
    margin-top: 15px !important;
    float: right;
}

.top_links_inner
{
   padding-right: 10px;
   float: left;
}


.top_links A.icon_links
{
    font-size: 11px;
}

.top_links UL
{
    margin: 0px;
}

.top_links UL LI A
{
    width:  80px;
    height: 53px;
    display: block;
}

.footer_bg
{
  min-height: 100px;
  margin: 0px 0px 20px;
  pading-top: 5px;
}



.pageBody UL
{
  line-height:20px;
  list-style-position: outside;
  padding: 0px;
  margin: 1em 0px 1em 20px;
}

.pageBody .header
{
  font-size: 20px;
  font-weight: bold;
  height: auto;

  margin-bottom: 0.5em !important;
}

.pageBody .header P
{
  margin: 0px;
}

.bodyContainer
{
}

.leftColumn
{
  vertical-align:top;
  text-align:left;
  width:1px;
  padding-left: 5px;
  padding-right: 0px;
}

.bodyColumn
{
  vertical-align:top;
  text-align:left;
}

.rightColumn
{
  vertical-align:top;
  text-align:left;
  width:230px;
}

.rightColumn .images
{
  text-align: center;
}

div.tab_news
{
  color: #FFF;
  padding: 0px;
  border-radius: 0px !important;
  text-align: center;
}

div.tab_news .glyphicon 
{
  position: relative;
  top: 10px;
  right: 5px;
  font-size: 150%;
}

.news
{
  font-size: 12px;
}

.news B
{
  font-size: 12px;
}

.tab_sep_bg
{
    background-repeat:repeat-x;
    height:53px;
}

.tab_subs
{
    font-weight:bold;
}

.rightSection
{
    margin-top: 15px;
}

.address
{
    font-size:11px;
    text-align:right;
}

.subscribeContainer TABLE TR TD
{
   font-weight: bold;
}

.subscribeContainer .submitBtn,
.contactUsControls .submitBtn,
.tellAFriendControls .submitBtn
{
    background-repeat:none;
    min-width: 70px !important;
    width:  70px !important;
    height: 22px !important;
    border: none;
    background-color: transparent;
    cursor: hand;
    cursor: pointer;
}

.contactUsControls .captionLabel,
.tellAFriendControls .captionLabel
{
   font-weight: bold;
}

.contactUsControls .captionLabel .required,
.tellAFriendControls .captionLabel .required
{
   font-weight: normal;
}

.contactUsControls .buttonContainer TABLE,
.tellAFriendControls .buttonContainer TABLE 
{
  width: 90%;
}

.contactUsControls .buttonContainer TABLE TR TD,
.tellAFriendControls .buttonContainer TABLE TR TD
{
   text-align: right !important;
}

.copyright
{
  text-align: left;
}


/*
  Menu Styles
*/

.menu_bg
{
  height: 34px;
  vertical-align: middle;
}

.menu_bg .contant_container,
.menu_bg .page_content,
.menu_bg TABLE.menu_container
{
  height: 34px;
  vertical-align: middle;
}


SPAN.menu_item
{
  padding-left: 17px;
  padding-right: 17px;
}

.menu_item A,
.menu_item A:hover,
.menu_item A:active,
.menu_item A:visited,
.menu_item A:hover
{
    font-size:12px;
    font-weight:bold;
    text-decoration: none;
    text-transform:uppercase;
}

.menu_item A:hover
{
    text-decoration: underline;
}

/****** Custom Menu *******/

.mainMenuContainer
{
  width: 100%;
}

.menuTopItem
{
  vertical-align:top;
}

.mainMenu
{
  width: 100%;
}

.menuTopItem
{
  padding-left: 10px;
  padding-right: 10px;
}

.menuTopItem TD
{
   height: 34px;
}

.menuTopItem A,
.menuTopItem A:hover,
.menuTopItem A:visited
{
  color:#FFF;
  font-size:12px !important;
  font-weight:bold;
  text-decoration: none;

  padding-left: 17px;

  text-transform:uppercase;
}

.menuTopItem A:hover
{
  text-decoration: none;
}

.menuItemL2 TABLE
{
  width: 200px;   
  margin : 0px 0px 0px 0px;  
}

.menuItemL2 A,
.menuItemL2 A:hover,
.menuItemL2 A:visited
{
    cursor: pointer !important;

    font-size:12px !important;
    font-weight:bold;
    text-decoration: none;

    padding-left:17px;
}

.menuItemL2 TABLE TR TD
{
  text-decoration: none;
  border-bottom:solid 1px #ffffff;
  padding: 2px 0px 1px 0px;
}

.menuItemL2 TABLE TR TD TABLE,
.menuItemL2 TABLE TR TD TABLE TR TD
{
  border: none;
  text-align: left !important;
}

.menuItemL2 TABLE TR TD TABLE TR TD
{

}

.menuItemL2 A
{
  display: block;    
  width: 198px;

  padding-top:  5px;
  padding-bottom:  5px;
}

.menuItemL2 A:hover
{
}

/****** Menu Buttons *******/
.MenuButton
{
  width:150px;
  height:110px;
  cursor: hand;
  cursor: pointer;
  text-align:center;
  vertical-align:middle;
}
.MenuButton TD
{
  padding:15px;
}
.MenuButton TD A,
.MenuButton TD A:hover,
.MenuButton TD A:active,
.MenuButton TD A:visited
{
  text-decoration:none !important;
  color:#fff;
}

.MenuButtonHover
{
}


/*
  TABS AND BORDERS
*/

DIV.TableHeader,
.TableHeader TD,
.TableHeader TH
{
  font-weight: bold;
}

.TableHeader A,
.TableHeader A:active,
.TableHeader A:visited,
.TableHeader A:hover
{
  font-weight: bold;
}

.spaceBox
{
  padding: 15px;
}

TD.tabbedpaneliteminactive, TD.tabbedpaneliteminactive A, TD.tabbedpaneliteminactive A:hover, TD.tabbedpaneliteminactive A:visited 
{
  text-decoration:none;
}

TD.tabbedpanelitemhover, TD.tabbedpanelitemhover A, TD.tabbedpanelitemhover A:hover, TD.tabbedpanelitemhover A:visited 
{
  text-decoration:none;
  cursor:hand;
}

TD.tabbedpanelitemactive, TD.tabbedpanelitemactive A, TD.tabbedpanelitemactive A:hover, TD.tabbedpanelitemactive A:visited 
{
  text-decoration:none;
}

/*
  Calendar styles
*/

.calendarLink,
.calendarLinkHighlighted
{
  padding: 3px 10px 10px 3px;
}

A.calendarLink,
A:hover.calendarLink,
A:visited.calendarLink
{
  font-weight: normal;
  text-decoration: underline;
}

A:hover.calendarLink
{
  text-decoration: none;
}

A.calendarLinkHighlighted,
A:hover.calendarLinkHighlighted,
A:visited.calendarLinkHighlighted
{
  font-weight: bold;
  text-decoration: underline;
}

A:hover.calendarLinkHighlighted
{
  text-decoration: none;
}

.CalendarTable TD
{
  width: 14%;
  text-align:left;
}


TD.CalendarWeekCell A:hover
TD.CalendarWeekCellHighlighted A:hover
{
   text-decoration:none;     
}

TD.CalendarEntry,
TD.calendarEntryHighlighted,
TD.calendarEntryOutOfRange
{
  height: 45px;
}

.calendarDayContentBtn.TableWithBorders.active
{
  color: #FFF;
}

/* POPUP styles */

.popup_body
{
  background-color: #FFF;
  text-align: left;
}

DIV.poweredByContainer
{
  filter: alpha(opacity=40);
  opacity: 0.4;

  margin-top: 5px;
}

DIV.poweredByContainer A
{
  color: #5d5c5c !important;
}

.shoppingCartIconMain
{
  position: static !important;
  height: auto !important;
}

.shoppingCartIcon
{
  position: static !important;
  margin-top: 0px;
}

A#icon-sc
{
   background: url(img/top-menu.png) no-repeat -266px -6px;
}

A#icon-sc:hover,
A.selected#icon-sc
{
   background: url(img/top-menu.png) no-repeat -266px -80px;
}

TABLE.menuTopItem
{
  margin-top: 0px !important;
}

TABLE.menuTopItem TD
{
  padding-bottom: 0px !important;
  padding-top: 0px !important;
}

.menuTopItem,
TABLE.menuTopItem TD
{
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.menuTopItem A,
.menuTopItem A:hover,
.menuTopItem A:visited
{
  padding-left: 17px !important;
}

/* responsive tabs */
.tabs {
  background-color: transparent;
  padding: 0 5px;

  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
}
.tabs div.menu-item 
{
  background-color: Transparent;  
  display: inline-block;      
  margin: 10px 0 -1px 5px;  
}
.tabs a {
  display: block;
  padding: 10px 15px;
  text-decoration :none;
  background-color: #999;
  color: #FFFFFF;  

  text-decoration:underline;
}
.tabs a:hover {

  text-decoration:none;

  background-color: #eee;
  colorX: #666;
  cursor:hand;
}

.tabs div.menu-item.active
{
}

.tabs .menu-item a.active,
.tabs .menu-item a.active:hover 
{
  /* 
     copied from the 
     tabbedpanelitemactive 
  */
  background-color: Transparent;
  color: #000000;

  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  -khtml-opacity: 1;
  opacity: 1;
    
  text-decoration: none !important; 
  cursor: text !important; 
}

/* Responsive styles */

.visible-mobile-block
{
  display: none;
}

@media all and (min-width:721px) {
  .bodyColumn
  {
    padding-left: 2px;
  }
}

@media all and (max-width:720px) {
  .header .sub-header TR TD
  {
      width: 100%;
      text-align: center;
      overflow: hidden;
  }

  .header .sub-header .logo
  {
    float: none;
    margin-left: auto;
    margin-right: auto;
  }

  .header .sub-header .top_links,
  .header .sub-header .top_links_inner,
  .header .sub-header .top_links_inner UL   
  {
    float: none;
    width: auto;
    overflow: hidden;
    margin: 0px;
    padding-left: 0px;
    text-align: center;
  }

  .header .sub-header .top_links_inner UL LI
  {
    float: none !important;
    display: inline-block;
    *display: inline;
    margin-right: 1px !important;
  }

  TD.rightColumn
  {
     border-left: none;
     overflow: hidden;
     padding-top: 0px;
  }

  TD.rightColumn .rightSection
  {
     max-width: 270px;
     margin-top: 0px;
     float:left;
  }

  .page_content
  {
    font-size: 14px;
  }
}

@media all and (max-width:400px) {
  .header .sub-header .top_links_inner UL LI.cart-container
  {
    display: block;
    margin: 0px auto !important;
    width: 80px;
  }
}

@media all and (max-width:600px) {
  TD.rightColumn .rightSection
  {
     max-width: 290px;
     margin-right: auto;     
     margin-left: auto;
     float:none;
  }
}

@media all and (max-width:767px) {
  .visible-mobile-block
  {
    display: block;
  }

  .hidden-mobile
  {
    display: none;
  }

  .body_top_bg
  {
    background-size: cover !important;
  }
}

#mobile-menu-actions
{
  border-bottom: solid 1px #FFF;
  cursor: pointer;
  cursor: hand;    
  line-height: 40px;
  overflow: hidden;
}

#mobile-menu-actions .menu-caption
{
  font-size: 110%;
  font-weight: bold;

  color: #FFF;
  padding-right: 5px;
}

.menu-btn
{
    position: absolute;
    top: 4px;
    left: 4px;
    padding: 6px 5px;
    background-color: transparent;
    background-image: none;

    border: solid 1px #FFF;

/*    border-radius: 3px;*/
}

.menu-btn .icon-bar {
    display: block;
    width: 22px;
    height: 3px;
    border-radius: 2px;
}

.menu-btn .icon-bar + .icon-bar
{
  margin-top: 4px;
}

.menu-btn .icon-bar {
    background-color: #fff;
}

.menu-btn:hover .icon-bar, .menu-btn:focus .icon-bar
{
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  -khtml-opacity: 0.6;
  opacity: 0.6;
}



div.topMessage.maintenanceMessage
{
  max-width: 940px;
}

.customLink {
}

input[type=submit],
input[type=button],
A.register, A.classDetails, A.dropin, A.schedule-btn,
a.customButton,
A.register:visited, A.classDetails:visited, A.dropin:visited, A.schedule-btn:visited,
a.customButton:visited {
    background-color: #4eb648;
    color: #fff;
}

    input[type=submit]:hover,
    input[type=button]:hover,
    A.register:hover, A.classDetails:hover, A.dropin:hover, A.schedule-btn:hover,
    a.customButton:hover {
        background-color: #ec8e1f;
        color: #fff;
    }