@font-face {
    font-family: 'LatoBlackItalic';
    src: url('/sup/fonts/Lato-BlaIta-webfont.eot');
    src: url('/sup/fonts/Lato-BlaIta-webfont.eot?#iefix') format('embedded-opentype'),
         url('/sup/fonts/Lato-BlaIta-webfont.woff') format('woff'),
         url('/sup/fonts/Lato-BlaIta-webfont.ttf') format('truetype'),
         url('/sup/fonts/Lato-BlaIta-webfont.svg#LatoBlackItalic') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'LatoBlack';
    src: url('/sup/fonts/Lato-Bla-webfont.eot');
    src: url('/sup/fonts/Lato-Bla-webfont.eot?#iefix') format('embedded-opentype'),
         url('/sup/fonts/Lato-Bla-webfont.woff') format('woff'),
         url('/sup/fonts/Lato-Bla-webfont.ttf') format('truetype'),
         url('/sup/fonts/Lato-Bla-webfont.svg#LatoBlack') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'LatoBoldItalic';
    src: url('/sup/fonts/Lato-BolIta-webfont.eot');
    src: url('/sup/fonts/Lato-BolIta-webfont.eot?#iefix') format('embedded-opentype'),
         url('/sup/fonts/Lato-BolIta-webfont.woff') format('woff'),
         url('/sup/fonts/Lato-BolIta-webfont.ttf') format('truetype'),
         url('/sup/fonts/Lato-BolIta-webfont.svg#LatoBoldItalic') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'LatoBold';
    src: url('/sup/fonts/Lato-Bol-webfont.eot');
    src: url('/sup/fonts/Lato-Bol-webfont.eot?#iefix') format('embedded-opentype'),
         url('/sup/fonts/Lato-Bol-webfont.woff') format('woff'),
         url('/sup/fonts/Lato-Bol-webfont.ttf') format('truetype'),
         url('/sup/fonts/Lato-Bol-webfont.svg#LatoBold') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'LatoItalic';
    src: url('/sup/fonts/Lato-RegIta-webfont.eot');
    src: url('/sup/fonts/Lato-RegIta-webfont.eot?#iefix') format('embedded-opentype'),
         url('/sup/fonts/Lato-RegIta-webfont.woff') format('woff'),
         url('/sup/fonts/Lato-RegIta-webfont.ttf') format('truetype'),
         url('/sup/fonts/Lato-RegIta-webfont.svg#LatoItalic') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'LatoRegular';
    src: url('/sup/fonts/Lato-Reg-webfont.eot');
    src: url('/sup/fonts/Lato-Reg-webfont.eot?#iefix') format('embedded-opentype'),
         url('/sup/fonts/Lato-Reg-webfont.woff') format('woff'),
         url('/sup/fonts/Lato-Reg-webfont.ttf') format('truetype'),
         url('/sup/fonts/Lato-Reg-webfont.svg#LatoRegular') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'LatoLightItalic';
    src: url('/sup/fonts/Lato-LigIta-webfont.eot');
    src: url('/sup/fonts/Lato-LigIta-webfont.eot?#iefix') format('embedded-opentype'),
         url('/sup/fonts/Lato-LigIta-webfont.woff') format('woff'),
         url('/sup/fonts/Lato-LigIta-webfont.ttf') format('truetype'),
         url('/sup/fonts/Lato-LigIta-webfont.svg#LatoLightItalic') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'LatoLight';
    src: url('/sup/fonts/Lato-Lig-webfont.eot');
    src: url('/sup/fonts/Lato-Lig-webfont.eot?#iefix') format('embedded-opentype'),
         url('/sup/fonts/Lato-Lig-webfont.woff') format('woff'),
         url('/sup/fonts/Lato-Lig-webfont.ttf') format('truetype'),
         url('/sup/fonts/Lato-Lig-webfont.svg#LatoLight') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'LatoHairlineItalic';
    src: url('/sup/fonts/Lato-HaiIta-webfont.eot');
    src: url('/sup/fonts/Lato-HaiIta-webfont.eot?#iefix') format('embedded-opentype'),
         url('/sup/fonts/Lato-HaiIta-webfont.woff') format('woff'),
         url('/sup/fonts/Lato-HaiIta-webfont.ttf') format('truetype'),
         url('/sup/fonts/Lato-HaiIta-webfont.svg#LatoHairlineItalic') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'LatoHairline';
    src: url('/sup/fonts/Lato-Hai-webfont.eot');
    src: url('/sup/fonts/Lato-Hai-webfont.eot?#iefix') format('embedded-opentype'),
         url('/sup/fonts/Lato-Hai-webfont.woff') format('woff'),
         url('/sup/fonts/Lato-Hai-webfont.ttf') format('truetype'),
         url('/sup/fonts/Lato-Hai-webfont.svg#LatoHairline') format('svg');
    font-weight: normal;
    font-style: normal;

}


html {
	padding: 0;
	margin: 0;
}

body {
    background: #fff;
	margin: 0;
	padding: 0;
	color: #444;
	font: 14px/1.5 "Cabin", arial, helvetica, sans-serif;
}

body#tinymce {
	padding: 10px;
	background-image: none;
}

#container {
    width: 950px;
    background-color: #fff;
    margin: 0 auto;
}

.fpo {
	background-color: #eee;
	border: 1px solid #ccc;
	color: #999;
	text-align: center;
	font-size: 1em;
}

a {
	text-decoration: none;
	color: #7bc4c5;
	font-weight: bold;
}

a:hover {
	text-decoration: underline;
	color: #7bc4c5;
}

a img {
    border: none;
}

big a {
    font-weight: normal;
}

h1, h2, h3, h4, h5, h6 {
    margin: 1.2em 0 .5em;
    padding: 0;
    line-height: 1;
    font-weight: normal;
	font-family: 'Riffic Free', Arial, sans-serif;
}

h1 {
    margin-top: 0;
	font-weight: normal;
    padding-top: .8em;
    font-size: 3em;
	color: #804196;
}

h1 sup, h2 sup, h3 sup, h4 sup, h1 small, h2 small, h3 small, h4 small {
	font-size: 11px;
	font-family: helvetica, arial, sans-serif;
	font-weight: normal;
}

h1 em, h2 em, h3 em, h4 em {
	font-weight: normal;
}

h2 {
    font-size: 2.1em;
	color: #804196;
}

h3 {
    font-size: 1.6em;
    margin-bottom: 4px;
	color: #a3cd39;
}

h4 {
	font-weight: bold;
    font-size: 1.1em;
    margin-top: 1.4em;
	color: #a3cd39;
}

h4 a {
	color: #804196;
}

ul, ol {
    margin: .8em 0 .8em 20px;
    padding: 0;
}

li {
    line-height: 1.1;
    padding: .1em 0;
    margin: .15em 0;
}

dl {
    margin: .8em 0;
}

dt {
    float: left;
    clear: left;
    margin: 0;
    padding: .5em 10px 0 0;
}

dd {
    margin: 0;
    padding: .5em 10px 0 0;
}

p {
    margin: .8em 0;
}

.read_more {
	font-size: .9em;
	border-bottom: 1px solid #aaa;
	border-top: 1px dotted #ccc;
	background-color: #eee;
	padding: .3em 10px;
	margin: .5em -10px 1em;
}

.read_more a {
	font-weight: normal;
}

img.icon {
    vertical-align: middle;
}

blockquote {
    padding: 0;
    margin: 1em;
}

#logo a {
	display: block;
	text-indent: -999px;
	overflow: hidden;
	background: url(/sup/img/logo-banner.png) top no-repeat;
	background-size: contain;
	height: 120px;
	width: auto;
}

#logo {
	margin: 0;
	padding: 0 0 15px;
}

#primary_nav {
	margin: 0;
	padding: 0 0 0 5px;
	border: 1px solid #ccc;
	border-bottom: none;
	height: 2.1em;
	list-style: none;
	background-color: #804196;
}

#primary_nav li {
	float: left;
	padding: 0;
	margin: 0;
	position: relative;
}

#primary_nav li a {
	font-weight: normal;
	display: block;
	padding: .5em 10px;
	line-height: 1.1;
	font-size: 1em;
	color: #fff;
	border-right: 1px solid #333;
	text-transform: uppercase;
	font-family: 'LatoBold', Arial, sans-serif;
}

#primary_nav li.last {
	float: right;
}

#primary_nav li.second a, #primary_nav li.last a {
	border-right: none;
}

#primary_nav li a:hover {
	background-color: #804196;
}

#primary_nav li a.nolink:hover {
	background-color: transparent;
}

#primary_nav li ul {
	display: none;
	position: absolute;
	top: 1.9em;
	left: -10px;
	width: 200px;
	list-style: none;
	margin: 0;
	padding: 0;
	border: 1px dotted #333;
	border-bottom: none;
	z-index: 100;
}

#primary_nav li:hover ul {
	display: block;
}

#primary_nav li ul li {
	float: none;
	border: none;
	margin: 0;
	padding: 0;
	border-bottom: 1px dotted #333;
	background-color: #804196;
}

#primary_nav li ul li a {
	padding: .5em;
	border-right: none;
}

#secondary_nav {
	float: right;
	border: 1px solid #333;
	border-bottom: none;
	margin: 10px 0 25px 25px;
	padding: 0;
	list-style: none;
}

#secondary_nav li {
	padding: 0;
	margin: 0;
}

#secondary_nav li.main {
	font-size: 1.2em;
}


#secondary_nav li a {
	display: block;
	padding: .5em;
	border-bottom: 1px solid #333;
}

#content {
	padding: 10px 25px;
	border: 1px solid #ccc;
	border-top: none;
}

#breadcrumbs {
	border-bottom: 1px dotted #ccc;
	padding: .4em 0;
	margin: .5em 0;
}

#end_content {
	clear: both;
}

#footer {
	padding: 1em 0;
	margin: 0;
	overflow: hidden;
	font-size: .8em;
	color: #888;
}

#copyright {
	float: right;
	padding-right: 50px;
	padding-top: 3px;
}

#footer_nav {
	float: right;
	width: 15%;
}

div.post_date {
	color: #555;
	font-style: italic;
	font-size: .8em;
	margin-top: -.4em;
}


#home {
	margin-top: -10px;
	font-family: 'LatoRegular', arial, sans-serif;
	font-size: 1.1em;
}

#home p {
	margin: 0;
	padding: 25px;
}

#home img {
	display: block;
	max-width: 100%;
	height: auto;
}

.homepage .news_and_events {
	float: left;
	margin-left: -25px;
	width: 498px;
}

.homepage .news_and_events .news,
.homepage .news_and_events .events {
	float: left;
	padding: 0 15px 0 25px;
	width: 208px;
}

.homepage .news_and_events .events {
	border-left: 2px solid #804196;
}

.homepage .news_and_events .news h2, .homepage .news_and_events .events h2 {
	margin: 0 -15px 0 -25px;
	background-color: #804196;
	color: #fff;
	line-height: .8;
	padding: 0 0 0 25px;
}

.homepage .coverage_area {
	float: right;
	width: 40%;
	padding: 15px 2% 0;
	border: 3px solid #804196;
	border-radius: 10px;
}

.homepage #map_bounds {
	border: 3px solid #804196;
}

.homepage .callout {
	font-size: 1.1em;
	padding: 0;
	clear: both;
	text-align: center;
}

.homepage .callout a {
	display: inline;
	border: none;
	background-color: none;
	padding: 0;
}

.homepage .callout a:hover {
	border-color: #595;
	background-color: #ded;
}

.homepage .facebook {
	margin: 1em;
	float: right;
	width: 39.5%;
}

#social {
	clear: both;
}

.news_column, .events_column {
	float: left;
	width: 38%;
}

.events_column {
	margin-left: 5%;
}

.callout strong {
	text-transform: uppercase;
}

.coverage_area ul {
	background: url(/sup/img/people.jpg) 50% 38% no-repeat;
	margin: 0 -18px;
	padding: 0;
	list-style: none;
	overflow: hidden;
}

.coverage_area ul li {
	margin: 0;
	padding: 0 0 8px 0;
}

.coverage_area ul li.left {
	clear: both;
	float: left;
}
.coverage_area ul li.right {
	clear: both;
	float: right;
}

.coverage_area ul li a {
	display: block;
	font-family: 'LatoBold', arial, sans-serif;
	font-weight: normal;
	color: #222;
	background-color: #99cc99;
	padding: 10px;
	width: 210px;
	text-align: center;
	border: 1px solid #99cc99;
	font-size: 1.1em;
}

.coverage_area ul li a:hover {
	background-color: #c7dec7;
}

.coverage_area ul li.left a {
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px;
}
.coverage_area ul li.right a {
	border-top-left-radius: 8px;
	border-bottom-left-radius: 8px;
}

.coverage_area h2 {
	text-align: center;
	text-transform: uppercase;
	margin: 0;
	padding: 8px 0 4px;
	font-size: 1.6em;
}

/* messaging */

.info, .error, .note, .warning, .success .exception {
    border: 1px solid #aaa;
    background-color: #eee;
    margin: 1em 0;
    border-radius: 5px;
}

p.info, p.error, p.note, p.warning, p.success, p.exception {
    padding: 1em 15px;
}
div.info, div.error, div.note, div.warning, div.success, div.exception {
    padding: 0 15px;
}

.info, .not_found_exception, .no_results_exception {
    color: #039;
    border-color: #039;
    background-color: #def;
}

.error, .validation_exception {
    color: #c00;
    border-color: #c00;
    background-color: #fee;
}

.inline_error {
	color: #c00;
}

.warning {
    color: #660;
    border-color: #660;
    background-color: #ffffdd;
}

.success {
    color: #390;
    border-color: #390;
    background-color: #eeffe0;
}

.inline_success {
	color: #390;
}

/* calendar */

h2#date_flipper {
	text-align: center;
}

#event_calendar table {
	width: 99.9%;
	border-collapse: collapse;
	margin: 1em 0 0 1px;
	padding: 0;
}

#event_calendar table tr {
	padding: 0;
	margin: 0;
}

#event_calendar table td {
	border: 1px solid #bbb;
	padding: 0;
	margin: 0;
	vertical-align: top;
	width: 14%;
}

#event_calendar table td .cell {
	min-height: 9em;
	height: 9em;
}
html>body #event_calendar table td .cell {
	height: auto;
}

#event_calendar .cal_day {
	padding: .5em 1em;
	background-color: #f6f6f6;
}
#event_calendar table td.today .cal_day {
	background-color: #cae7c3;
}
#event_calendar table td.not_this_month .cal_day {
	background-color: transparent;
}

#event_calendar .cell .title {
	font-weight: bold;
}

#event_calendar .event {
	font-size: .8em;
	padding: .5em 1em;
	margin-bottom: 1em;
	border-top: 1px dotted #bbb;
}

#event_calendar table td.today {
	background-color: #e1f4dc;
	border-color: #a7cf9e;
}

#event_calendar table td.not_this_month {
	background-color: #e9e9e9;
	color: #999;
}


/* forms */

/* form items */

fieldset {
    border: 1px solid #ddd;
    background-color: #f3f3f3;
    border-radius: 5px;
    padding: 10px 15px;
    margin: 1em 0;
}

#manage_needs, #manage_steps {
	margin: 0;
}

.form_object {
    margin: .5em 0;
    clear: both;
    overflow: hidden;
    _height: 0;
}

.form_object select, .form_object.text input, .form_object textarea {
    border: 1px solid #bbb;
    background-color: #fff;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    font-family: arial, helvetica, sans-serif;
    font-size: 1em;
    padding: 3px;
}

.form_object.select label, .form_object.text label, .form_object.textarea label, .form_object.radio .label, .form_object.checkbox .label {
    float: left;
    margin-right: 10px;
    width: 25%;
    text-align: right;
}

.form_object.textarea textarea {
    float: left;
    width: 72%;
}

.form_object.textarea_full textarea {
	width: 96%;
}

.helper {
    color: #888;
    padding-bottom: 3px;
    font-size: .9em;
    font-style: italic;
}

div.helper, .current_file, .note {
    margin-left: 26%;
    padding-left: 5px;
    clear: left;
}


fieldset div .file, fieldset div .image {
    display: block;
    margin: 0 0 1em 25%;
    padding: 1em 1.5em 1em;
    border: 1px solid #cde;
    background-color: #f0f3ff;
}

fieldset div .image {
    border-left: 90px solid #e0e3ef;
    padding-left: 20px;
}

fieldset div .file .checkbox_row {
    padding-top: .8em;
}

fieldset .form_object .file label, fieldset div .image label {
    color: #444;
    font-weight: normal;
    float: none;
    width: auto;
}

fieldset div .image .current_image {
    font-size: .9em;
    font-style: italic;
    color: #123;
    float: left;
    text-align: center;
    margin: -4px 0 0 -90px;
}

fieldset div .image .current_image img {
    display: block;
    margin: 0 auto;
    border: 1px solid #fff;
}

fieldset div .image .checkbox_row, fieldset div .image .checkbox_row label {
    width: auto;
    float: none;
}

fieldset.multi_object {
	border: none;
	background-color: transparent;
	padding: 0;
}

fieldset.multi_object .goal_need,
fieldset.multi_object .goal_step
{
	border: 1px solid #ddd;
	background-color: #f3f3f3;
	border-radius: 3px;
	margin: .8em 0;
	padding: 5px 0;
}

fieldset .move {
	padding: 2px 0 0 25%;
	margin-left: 10px;
	font-size: 11px;
}

fieldset .move a {
	font-weight: normal;
}

p.add_line {
	margin-top: 0;
}

.form_action {
    margin: 1em 0 1.5em;
    padding: 1em;
    border: 1px solid #ace;
    background-color: #e0e9f3;
    border-radius: 5px;
}

.short_form .form_action {
	padding: 0;
	border: none;
	background: transparent;
}

.short_form .form_action .button {
	font-size: .9em;
	padding: 6px;
	margin-top: -.5em;
}

.form_action .button {
	color: #fff;
	background-color: #06c;
	border: 1px solid #04a;
	font-size: 1.1em;
	font-weight: bold;
}
.form_action .button:hover {
	background-color: #049;
}

.clear, .end {
	clear: both;
}

.button {
	padding: .7em;
	border-radius: 5px;
	cursor: pointer;
}

a.button {
	display: block;
}

form.filters div {
	float: left;
	margin-right: 20px;
	padding-top: 8px;
}

.filters .form_action {
	float: right;
	padding: 0;
	margin: 0;
	border: none;
	background-color: transparent;
}

.filters .form_action .button {
	font-size: 1em;
	font-weight: normal;
}


.center.list_item {
	overflow: hidden;
	padding-left: 175px;
	border-bottom: 1px dotted #ccc;
	clear: both;
}

.center.list_item .image {
	float: left;
	display: inline;
	margin: 30px 0 0 -175px;
}

.image {
	float: right;
	margin: 0 0 15px 25px;
	border: 1px solid #ccc;
	padding: 1px;
	background-color: #fff;
}

.image img {
	display: block;
}

.tours_available {
	border-top: 1px solid #69c;
	border-bottom: 1px solid #9cf;
	background-color: #def;
	padding: 0 25px .5em;
	margin-left: -25px;
}

select#location {
	max-width: 240px;
}

.required {
	color: #c00;
}

form.salesforce textarea {
	width: 90%;
}

#dev-alert {
	background-color: #fcc;
	color: #c00;
	border-bottom: 1px solid #c00;
	padding: 1em;
	text-align: center;
}

.admin_preview {
	margin: 1em 0;
	color: #c00;
	text-align: center;
	border-bottom: 1px dotted #c00;
}

.two-up .fiftyfifty {
	float: right;
	width: 48%
}

.two-up .fiftyfifty:first-child {
	float: left;
}
