/* reset defaults */
* {
    margin: 0;
    padding: 0;
}
img {
    border: 0;    
}

body {
    font-size: 62.5%;
    font-family: Arial, sans-serif;
    color: #152c51;
    background: white url('../img/background-gradient.png') top left repeat-x;
}


#frame {
    width: 860px;
    margin: 25px auto;
}

#header {
    height: 185px;
}
#header #logo {
    float: left;
    width: 134px;
    height: 187px;
}
#header #banner {
    float: right;
    width: 726px;
    height: 162px;
}

#header #nav {
    list-style-type: none;
    width: 650px;
    float: right;
}
#header #nav li {
    display: inline;
}
#header #nav li a {
    display: block;
    float: left;
    text-decoration: none;
    padding: 1em 0em 0 0em;
    width: 140px;
    margin-left: 5px;
    height: 2em;
    background: url('../img/menu-background-gradient-blue.png') top left repeat-x;
    color: white;
    font-weight: bolder;
    font-size: 1.1em;
    text-align: center;
    -moz-border-radius-topleft: 5px;
    -moz-border-radius-topright: 5px;
    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
    /*
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
    */
}
#header #nav li a:hover {
        background: url('../img/menu-background-gradient-blue-hover.png') top left repeat-x;
}
#header #nav li.first a {
        width: 70px;
        margin-left: 0;
        margin-right: 0px;
}
#header #nav li.active a {
        background: white;
        color: #152c51;
}

#main {
    width: 620px; /* 650px overall */
    padding: 15px;
    float: right;
    background: white;
}
#main h1, #main h2 {
    margin-bottom: 0.5em;
    /* clear: both; */
}
#main h1 {
    font-size: 1.8em;
    border-bottom: 1px solid silver;
    margin-right:10px;
    padding: 0.3em 0;
}
#main h2 {
    font-size: 1.6em;
}

#main p {
    font-size: 1.2em;
    line-height: 1.5em;
    margin-bottom: 1.5em;
}
#main #buttonsblock {
        margin-bottom: 1em;
}
#main #buttonsblock .button {
        float: left;
        width: 229px;
        height: 69px;
        background: #284980;
        color: white;
        margin-right: 5px;
        margin-bottom: 5px;
        padding: 3px;
        cursor: pointer;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
}
#main #buttonsblock .button img {
        float: left;
        width: 71px;
}
#main #buttonsblock .button .text {
        float: right;
        width: 153px;
}
#main #buttonsblock .button p {
        font-size: 1.1em;
        margin-bottom: 0;
        padding-left: 5px;

}
#main #buttonsblock .button p.header {
        background: url('../img/menu-background-gradient-light.png') bottom left repeat-x;
        color: #142c61;
        padding: 2px 5px;
        -moz-border-radius-topright: 5px;
        -webkit-border-top-right-radius: 5px;
}
#main #buttonsblock .button p.header a {
        text-decoration: none;
        color: #142c61;
}

#main #buttonsblock #otheractivities {
        float: right;
        width: 134px;
        height: 149px;
        background: #284980;
        color: white;
        padding: 3px;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
}
#main #buttonsblock #otheractivities {
        text-align: center;
}
#main #buttonsblock #otheractivities p {
        margin-bottom: 1em;
}
#main #buttonsblock #otheractivities ul {
    list-style-type: none;
    border-top: 1px solid #c9d6e0;
    border-right: 1px solid #c9d6e0;
    border-left: 1px solid #c9d6e0;
    margin-bottom: 10px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}
#main #buttonsblock #otheractivities ul li {
        display: inline;
}
#main #buttonsblock #otheractivities ul li a {
        display: block;
        border-bottom: 1px solid #c9d6e0;
        height: 11px;
        padding: 4px;
        background: url('../img/menu-background-gradient-light.png') top left repeat-x;
        color: #152c51;
        font-weight: bolder;
        font-size: 1.1em;
        text-decoration: none;
}


#main #howtofindus {
        background: #e2eaef;
        border: 2px solid #d3dee6;
        padding: 8px;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
}
#main #howtofindus #locationmap {
        float: left;
        width: 340px;
        margin-right: 8px;
}
#main #howtofindus #locationtext {
        float: right;
        width: 252px;
}
#main #howtofindus #locationtext #phone, #main #contact_layout #locationtext #phone {
        padding-left: 40px;
        background: url('../img/icon-phone.png') left top no-repeat;
}
#main #howtofindus #locationtext #phone img, #main #contact_layout #locationtext #phone img {
        float: right;
}
#main #contact_layout #locationtext #phone {
        padding-left: 40px;
        background: url('../img/PSC_contact_phone.gif') left top no-repeat;
}
#main #howtofindus #locationtext p {
        border-bottom: 1px solid  #d3dee6;
        margin-bottom: 0.5em;
        padding-bottom: 0.5em;
}
#main #howtofindus #locationtext p.last {
        border: 0;
}



#main #membership_rates {
        width: 100%;
        font-size: 1.2em;
        border: 2px solid #2b4c81;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
}
#main #membership_rates th {
        background: #2b4c81 url(../img/menu-background-gradient-blue.png) repeat-x left top;
        color: white;
        font-weight: bolder;
        text-align: left;
        padding: 0.5em;
}
#main #membership_rates td {
        padding: 0.5em;
        background: #e2eaef;
}

#main #events_table {
        width: 100%;
        font-size: 1.2em;
        margin-bottom: 1.8em;
        border-bottom: 1px solid silver;
}
#main #events_table td {
        padding: 0.5em;
}


#main #contact_layout #locationtext {
        float: right;
        width: 200px;
}

#main #contact_form {
        float: left;
        width: 405px;
        font-size: 1.2em;
        border: 2px solid #2b4c81;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
}
#main #contact_form th {
        background: #2b4c81 url(../img/menu-background-gradient-blue.png) repeat-x left top;
        color: white;
        font-weight: bolder;
        text-align: left;
        padding: 0.5em;
}
#main #contact_form td {
        padding: 0.5em;
        background: #e2eaef;
        vertical-align: top;
}
#main #contact_form .textinput, #main #contact_form textarea {
        width: 98%;
        border: 1px solid silver;
        padding: 0.2em;
        font-family: inherit;
        font-size: 1em;
}
#main #contact_form .shortinput {
        width: 40%;
        border: 1px solid silver;
        padding: 0.2em;
}
#main #contact_form select {
        border: 1px solid silver;
        padding: 0.2em;
}

#main .third {
        float: left;
        width: 193px;
        margin-right: 2em;
}
#main .third.last {
        margin-right: 0 !important;
}
#main .third img {
        margin: 2px;
}
#main .pictureBox {
        border: 2px solid #2b4c81;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        margin-bottom: 1em;
}
#main .pictureBox h2 {
        background: #2b4c81 url(../img/menu-background-gradient-blue.png) repeat-x left top;
        color: white;
        font-weight: bolder;
        padding: 0.5em;
        font-size: 1.2em;
        margin: 0;
}

#main #associatedImagesWrapper {margin-right:10px; width:200px; float:right; text-align:center}

#main #associatedImages {
	float: right;
	background:white;
	width: 185px;
	padding: 2px;
        border: 2px solid #2b4c81;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        margin-left: 2em;
}
#main .associatedImageBox {
	float: left;
	width: 185px;
	padding: 2px;
        border: 2px solid #2b4c81;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        margin-right: 1.2em;

}

#main #gallery_intro {
        float: left;
        width: 58%;
}
#main #gallery_albums {
        float: right;
        width: 40%;
        margin-left: 1em;
}
#main #gallery_albums ul {
        margin-left: 2em;
}
#main #gallery_albums li {
        font-size: 1.2em;
        line-height: 1.5em;
}
#main #gallery {
        clear: both;
        border: 2px solid #2b4c81;
        background: #e2eaef;
        color: inherit;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
}

#main #gallery h2 {
        background: #2b4c81 url(../img/menu-background-gradient-blue.png) repeat-x left top;
        color: white;
        font-weight: bolder;
        padding: 0.5em;
        font-size: 1.2em;
        margin: 0;
}

/* image gallery */
.table_gallery {
	width: 90%;
	margin: 2em auto 2em auto;
        background: #142c61;
}
.table_gallery td {
	height: 120px;
	width: 25%;
	text-align: center;
	border-right: 1px solid silver;
        border-bottom: 1px solid silver;
	vertical-align: middle;
}
.table_gallery td img {
	border: 1px solid #2c3f69;
}

#main #memberUpdates {
	background: #e2eaef;
        color: inherit;
	border: 2px solid #2b4c81;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
}
#main #memberUpdates p {
	margin-left: 0.5em;
	margin-right: 0.5em;
}
#main #memberUpdates h2 {
        background: #2b4c81 url(../img/menu-background-gradient-blue.png) repeat-x left top;
        color: white;
        font-weight: bolder;
        text-align: left;
        padding: 0.5em;
}
#main #memberUpdates table {
	margin-left: 0.5em;
	margin-right: 0.5em;
	width: 75%;
	margin-bottom: 1.5em;
	line-height: 1.5em;
	font-size: 1.2em;
}
#main #memberUpdates table td {
	width: 33%;
}

#main #coaching table {
        width: 400px;
}
#main #coaching table td {
        width: 50%;
}


/* SIDE PANEL */

#side {
    width: 185px; /* 195px overall */
    padding: 5px;
    float: left;
    background: white;
    -moz-border-radius-topleft: 5px;
    -moz-border-radius-topright: 5px;
    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
}
#side #menu {
    list-style-type: none;
    border-top: 1px solid #c9d6e0;
    border-right: 1px solid #c9d6e0;
    border-left: 1px solid #c9d6e0;
    margin-bottom: 10px;
    -moz-border-radius-topleft: 5px;
    -moz-border-radius-topright: 5px;
    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
}
#side #menu li {
        display: inline;
}
#side #menu li a {
        display: block;
        border-bottom: 1px solid #c9d6e0;
        height: 13px;
        padding: 8px;
        background: url('../img/menu-background-gradient-light.png') top left repeat-x;
        color: #152c51;
        font-weight: bolder;
        font-size: 1.1em;
        text-decoration: none;
}
#side #menu li a:hover {
        background: url('../img/menu-background-gradient-light-hover.png') top left repeat-x;
}
#side #menu li a.active {
        background: white url('../img/menu-arrow.png') no-repeat 95% 50%;
        color: #152c51;
}
#side #menu li.first a {
        -moz-border-radius-topleft: 5px;
        -moz-border-radius-topright: 5px;
        -webkit-border-top-left-radius: 5px;
        -webkit-border-top-right-radius: 5px;
}
#side p {
        margin-bottom: 10px;
}
#side #calendar ul {
    list-style-type: none;
    border-top: 1px solid #c9d6e0;
    border-right: 1px solid #c9d6e0;
    border-left: 1px solid #c9d6e0;
    margin-bottom: 10px;
}
#side #calendar ul li {
        display: inline;
}
#side #calendar ul li a, #side #calendar ul li.first {
        display: block;
        border-bottom: 1px solid #c9d6e0;
        height: 13px;
        padding: 6px 8px;
        font-weight: bolder;
        font-size: 1.1em;
        text-decoration: none;
}
#side #calendar ul li.first {
        background: url('../img/calendar-background-gradient-blue.png') top right repeat-x;
        color: white;
        font-size: 1.2em;
}
#side #calendar ul li.last a {
        background: url('../img/menu-background-gradient-light.png') bottom left repeat-x;
        color: #152c51;
        height: 14px;
        padding: 8px 8px;
}
#side #calendar ul li.normal {
        display: block;
        border-bottom: 1px solid #c9d6e0;
        height: 26px;
        padding: 2px 8px;
        font-weight: bolder;
        font-size: 1em;
}




/* FOOTER */

#footer {
    clear: both;
}
#footer p {
    text-align: right;
}


/* GENERIC STYLES */

/* information and error message */
.info {
	background: #f8fafc url(../img/information.png) center no-repeat;
	background-position: 15px 50%;
	text-align: left;
	margin: 1em;
	padding: 5px 20px 5px 45px !important;
	border-top: 2px solid #b5d4fe;
	border-bottom: 2px solid #b5d4fe;
}
.alert {
	background: #fff6bf url(../img/exclamation.png) center no-repeat;
	background-position: 15px 50%;
	text-align: left;
	margin: 1em;
	padding: 5px 20px 5px 45px !important;
	border-top: 2px solid #ffd324;
	border-bottom: 2px solid #ffd324;
}

.spacer {
        clear: both;        
}
.center {
        text-align: center !important;
}

table td {
        vertical-align: top;        
}

hr {
        color: silver;
        background: silver;
        height: 1px;
}
