/*--- css/utility_style_sheet.css ---*/
@font-face {
  font-family: 'fe-icons';
  src: url("/sr/fonts/fe-icons.eot?f68u01");
  src: url("/sr/fonts/fe-icons.eot?#iefixf68u01") format("embedded-opentype"), url("/sr/fonts/fe-icons.svg?f68u01#fe-icons") format("svg"), url("/sr/fonts/fe-icons.woff?f68u01") format("woff"), url("/sr/fonts/fe-icons.ttf?f68u01") format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fe-social';
  src: url("/sr/fonts/fe-social.eot?f68u01");
  src: url("/sr/fonts/fe-social.eot?#iefixf68u01") format("embedded-opentype"), url("/sr/fonts/fe-social.svg?f68u01#fe-icons") format("svg"), url("/sr/fonts/fe-social.woff?f68u01") format("woff"), url("/sr/fonts/fe-social.ttf?f68u01") format("truetype");
  font-weight: normal;
  font-style: normal;
}

/*----------------------------------------------
    fe-icons character codes
  
  \61 (a) - podcast
  \62 (b) - mobile phone
  \63 (c) - printer
  \64 (d) - music (itunes)
  \65 (e) - newspaper
  \66 (f) - calendar
  \67 (g) - rss
  \68 (h) - list/agenda view
  \69 (i) - disk/save
  \6a (j) - play arrow
  \6b (k) - arrow left
  \6c (l) - arrow right
  \6d (m) - checkmark
  \6e (n) - info bubble
  \6f (o) - arrow down
  \70 (p) - arrow up
  \71 (q) - email
  \72 (r) - sort arrow default
  \73 (s) - sort arrow down
  \74 (t) - sort arrow up
  \75 (u) - search glass
  \76 (v) - twitter bird
  \77 (w) - rwd menu
  \78 (x) - close X
  \79 (y) - location marker
  \7a (z) - user head/shoulders
  \7b ({) - pencil
  \7c (|) - fc logo
  \7d (}) - squared arrow left
  \7e (~) - squared arrow right
  \21 (!) - gear
  \22 (") - download tray
  \23 (#) - video
  \24 ($) - fullscreen
  \25 (%) - pause
  \26 (&) - volume on
  \27 (') - volume mute
  \28 (() - chain link
  \29 ()) - translate
  \30 (0) - export
  \31 (1) - move handle
  
  fe-social character codes
  
  \61 (a) - facebook
  \62 (b) - twitter
  \63 (c) - pinterest
  \64 (d) - instagram
  \65 (e) - googleplus
  \66 (f) - linkedin
  \67 (g) - myspace
  \68 (h) - flickr
  \69 (i) - youtube
  \6a (j) - vimeo
  \6b (k) - blog
  \6c (l) - rss
  \6d (m) - email
  \6e (n) - qr
  \6f (o) - itunes
  \70 (p) - foursquare
  \71 (q) - tumblr
  \72 (r) - ccb
  
  color palette classes
  
  .cs_accent_bg, .cs_accent_fg, .cs_accent_border
  .cs_line_bg, .cs_line_fg, .cs_line_border
  .cs_light_bg, .cs_light_fg, .cs_light_border
  .cs_dark_bg, .cs_dark_fg, .cs_dark_border
  
----------------------------------------------*/
/* fix bulky font rendering in OSX */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Make IE10 "snap-mode" behave with RWD */
@-ms-viewport {
  width: device-width;
}

/* disable text increase in iOS */
body {
  -webkit-text-size-adjust: none;
}

a:active {
  outline: none;
}

:focus {
  -moz-outline-style: none;
  outline: none;
}

::-moz-focus-inner {
  border: 0;
  padding: 0;
}

a img {
  border: 0;
}

/* remove default border in IE */
/* disable hand pointer if link does not point to a page */
a[href="javascript:void(null)"] {
  cursor: default;
}

cite {
  width: 100%;
}

.clear {
  clear: both;
  height: 1px;
}

.floatright {
  float: right;
}

.floatleft {
  float: left;
}

/* new clearfix */
.cfix:before, .cfix:after {
  content: " ";
  display: table;
}

.cfix:after {
  clear: both;
}

.inline {
  display: inline;
}

.inline-block {
  display: inline-block;
  zoom: 1;
}

.alignleft {
  text-align: left;
}

.alignright {
  text-align: right;
}

.aligncenter {
  text-align: center;
}

.alignverticalmiddle {
  vertical-align: middle;
}

.alignverticalbottom {
  vertical-align: bottom;
}

.SmallNote {
  line-height: 1em !important;
}

.fullwidth {
  width: 100%;
}

.nowrap {
  white-space: nowrap;
}

.breakword {
  word-break: break-word;
}

.layout_borderbox {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.semantic, .contextual, .seo_content {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/* Visually hidden but available for screenreaders */
.hidden {
  display: none !important;
  visibility: hidden;
}

/* Hide for both screenreaders and browsers */
/* Display hand cursor for clickable form elements */
button, input[type="button"], input[type="reset"], input[type="submit"] {
  cursor: pointer;
}

/* Remove default vertical scrollbar in IE6/7/8/9 */
textarea {
  overflow: auto;
  vertical-align: top;
}

/* Remove underline from .iconlink container */
.SmallNavigation, .SmallNavigation:hover {
  text-decoration: none;
  font-weight: normal;
}

.iconlink {
  margin: 0 2px !important;
}

input, select, textarea {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

input.site_search_field {
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

.details_text {
  font-size: .875em;
}

.itemTable {
  clear: both;
}

.email_link:after {
  content: ' \71';
  display: inline;
  font-family: 'fe-icons';
  font-size: .875em;
}

.fe_icon_font {
  font-family: 'fe-icons' !important;
}

/* Add arrow to submenu items that have children */
.menu b {
  float: right;
}

.menu b:after {
  content: '\7e';
  display: inline-block;
  font-family: 'fe-icons';
}

.back-to-top {
  background: rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  cursor: pointer;
  display: none;
  margin: 15px;
  padding: 7px;
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 9999;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
}

.back-to-top img {
  display: none;
}

.back-to-top:before {
  color: #fff;
  content: '\70';
  display: block;
  font-family: 'fe-icons';
  font-size: 1.25em;
  line-height: 1 !important;
}

/* CMS Editor and Notification Classes */
#editorbg > td {
  background: #fff;
}

#editorbg td {
  color: #000;
}

#help, .help, #error, .error, #success, .success {
  margin-bottom: 20px;
  padding: 10px 12px;
}

#help, .help {
  background: #ffffd9 !important;
  border: 1px solid #f3f3ba !important;
  color: #444 !important;
}

#help ol, .help ol {
  list-style-position: inside;
  margin: 0;
  padding: 0;
}

#error, .error {
  background-color: #fbe3e4 !important;
  border: 1px solid #f4d2d3 !important;
  color: #BB0000 !important;
}

#error ul, .error ul {
  font-size: 11px;
  list-style-position: inside;
  margin: 0;
  padding: 0;
}

#success, .success {
  background-color: #E6EFC2 !important;
  border: 1px solid #d5e593 !important;
  color: #528400 !important;
}

.table_entry_new {
  color: #FF0000;
  font-size: 8px;
}

/*--------------------------------------------
  Marquee Description/Content
--------------------------------------------*/
.banner-rotator .br-layers .br-layer-bin .br-layer {
  line-height: 1.5 !important;
}

.banner-rotator .br-layer img {
  height: auto !important;
  max-width: 100% !important;
}

.banner-rotator .br-layer iframe {
  max-width: 100% !important;
}

/*--------------------------------------------
  Front-end Icons
  --> Colors applied retroactively using utility classes
--------------------------------------------*/
.fe_font_icon {
  display: inline-block;
  text-decoration: none !important;
  -webkit-transition: background 0.2s, color 0.2s;
  -moz-transition: background 0.2s, color 0.2s;
  transition: background 0.2s, color 0.2s;
}

.fe_font_icon:hover {
  text-decoration: none !important;
}

.fe_font_icon img {
  display: none !important;
}

.fe_font_icon:before {
  display: block;
  font-family: 'fe-icons';
  font-weight: normal;
  line-height: 1;
  padding: .5em;
}

/* ANNOUNCEMENTS */
.announcement_rss:before {
  content: '\67';
}

/* BLOGS */
.blog_rss:before {
  content: '\67';
}

/* BREADCRUMBS */
#breadcrumbs_facebook:before {
  background: #425F9C;
  color: #fff;
  content: '\61';
  font-family: 'fe-social';
  padding: .375em;
  -webkit-transition: background 0.2s, color 0.2s;
  -moz-transition: background 0.2s, color 0.2s;
  transition: background 0.2s, color 0.2s;
}

#breadcrumbs_facebook:hover:before {
  background: #6a88c9;
}

#breadcrumbs_twitter:before {
  background: #55ACEE;
  color: #fff;
  content: '\62';
  font-family: 'fe-social';
  padding: .375em;
  -webkit-transition: background 0.2s, color 0.2s;
  -moz-transition: background 0.2s, color 0.2s;
  transition: background 0.2s, color 0.2s;
}

#breadcrumbs_twitter:hover:before {
  background: #78c1f9;
}

.breadcrumbs_qr:before {
  content: '\6e';
  font-family: 'fe-social';
  padding: .375em;
}

.breadcrumbs_print:before {
  content: '\63';
  padding: .375em;
}

/* CALENDAR */
.cal_nav_prev:before {
  content: '\6b';
}

.cal_nav_next:before {
  content: '\6c';
}

.toggle_agenda_view:before {
  content: '\68';
}

.toggle_month_view:before {
  content: '\66';
}

.cal_rss:before {
  content: '\67';
}

.cal_print:before {
  content: '\63';
}

.cal_export:before {
  content: '\30';
}

/* DOWNLOADS */
.download_play:before {
  content: '\6a';
}

.download_save:before {
  content: '\69';
}

.download_notes:before {
  content: '\65';
}

.download_qr:before {
  content: '\6e';
  font-family: 'fe-social';
}

.download_rss:before {
  content: '\67';
}

.download_podcast:before {
  content: '\61';
}

.download_itunes:before {
  content: '\64';
}

.pagination_prev:before {
  content: '\6b';
  padding: .25em;
}

.pagination_next:before {
  content: '\6c';
  padding: .25em;
}

/* STAFF */
.staff_list_email:before {
  content: '\71';
  font-family: 'fe-icons';
  margin-right: .25em;
  vertical-align: middle;
}

.staff_facebook:before {
  content: '\61';
  font-family: 'fe-social';
}

.staff_twitter:before {
  content: '\62';
  font-family: 'fe-social';
}

.staff_linkedin:before {
  content: '\66';
  font-family: 'fe-social';
}

.staff_facebook, .staff_twitter, .staff_linkedin {
  margin-top: 1em;
}

/*----------------------------------------------
  Forms
----------------------------------------------*/
.fe_form {
  clear: both;
  float: left;
  margin-bottom: 1em;
  padding: 0;
  width: 100%;
}

.fe_form ul, .fe_form_block {
  clear: both;
  float: left;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.fe_form li {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  margin: 0 0.25em 0.75em 0;
  vertical-align: top;
  width: 100%;
}

.fe_form li.fe_form_control_group {
  margin-bottom: 0;
}

.fe_form li.fe_form_control_group li {
  width: auto;
}

.fe_form li.fe_form_control_group li:last-child {
  margin-right: 0;
}

.block_label {
  display: block;
  margin-bottom: .25em;
}

.lg_field {
  width: 21em;
}

.md_field {
  width: 14em;
}

.ms_field {
  width: 10em;
}

/* best for phone number */
.sm_field {
  width: 7em;
}

.xs_field {
  width: 4em;
}

/* Add an "or" between two grouped field */
.or_field div {
  margin: 0 0.25em 0.75em 0;
  padding: 0.5em 0.5em 0.5em 0;
}

@media screen and (max-width: 480px) {
  .or_field label {
    display: none;
  }
  .or_field div {
    margin-bottom: 0;
    padding: 0;
    text-align: center;
  }
}

/* Hide section to be animated with JS */
.section_hidden {
  clear: both;
  display: none;
  float: left;
  width: 100%;
}

/* list with bulleted items inside an fe_form */
ul.fe_form_list {
  list-style: disc inside;
}

ul.fe_form_list li {
  display: list-item;
  margin-bottom: 0;
}

/*------------- Errors / Notifications --------------*/
#form_error,
.fe_form .fe_form_error {
  background: #ffecec;
  border: 1px solid #ffc8c8;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  clear: both;
  color: #c40808;
  list-style-position: inside;
  margin-bottom: 1.5em;
  padding: 1em;
}

#form_error li {
  display: list-item;
  list-style-type: disc;
  margin-bottom: .75em;
}

#form_error li:last-child {
  margin-bottom: 0;
}

#form_error label,
.fe_form .fe_form_error label {
  color: inherit;
}

.fe_field_hint {
  clear: both;
  font-size: .875em;
  font-style: italic;
  margin-bottom: 1.25em;
  margin-top: -.25em;
}

/* Apply to li, adds translucent black bg and border */
.inline_form_notification {
  background: rgba(0, 0, 0, 0.05);
  border: 1px solid #ddd;
  border-radius: 3px;
  float: left;
  padding: 0.75em 1em;
}

/* Password Meter */
div.score {
  display: block;
  white-space: nowrap;
  width: 175px !important;
  height: 5px;
}

div.score div {
  display: block;
  white-space: nowrap;
  height: 5px;
}

.badPass div.score div {
  background-color: #F4715B;
}

.goodPass div.score div {
  background-color: #EEF042;
}

.strongPass div.score div {
  background-color: #64FD58;
}

/*------------- Tooltips --------------*/
.fe_helptip {
  padding-left: .25em;
  position: relative;
  z-index: 1;
}

.fe_helptip:hover {
  cursor: help;
  z-index: 99999;
}

.fe_helptip span:before {
  content: '\6e';
  display: inline-block;
  font-family: 'fe-icons';
  font-size: 14px;
  font-weight: normal;
  line-height: 1.375em;
  opacity: .5;
}

.section_divider .fe_helptip span:before,
.fe_form_header .fe_helptip span:before {
  margin-top: 1.5em;
  margin-left: .5em;
}

.fe_helptip div {
  background: #fff;
  border-width: 1px;
  border-style: solid;
  border-radius: 3px;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: inherit;
  display: none;
  font-family: inherit;
  font-size: .875em;
  font-weight: normal;
  width: 320px;
  padding: 12px 15px;
  position: absolute;
  top: 0;
  left: 20px;
  z-index: 9999;
}

.fe_helptip span:hover ~ div {
  display: block;
}

.fe_helptip:hover span:before {
  opacity: 1;
}

/* make info bubble opaque */
.fe_helptip .boxoverbody {
  z-index: 10000;
}

/* credit card verification number tooltip */
/* mobile fe_helptip styles */
.mobile_tooltip {
  position: static;
}

.mobile_tooltip span:before {
  font-size: 20px !important;
  padding: 0 10px;
}

.mobile_tooltip div {
  display: none;
  padding: 12px 30px 12px 15px;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
}

.mobile_tooltip div:before {
  content: '\78';
  display: block;
  font-family: 'fe-icons';
  font-size: 1.25em;
  position: absolute;
  top: 10px;
  right: 10px;
}

/*------------- Field Styles --------------*/
.fe_form input, .fe_form select, .fe_form textarea {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: inherit;
  margin: 0 0.5em 0.75em 0;
  outline: none;
  padding: .5em;
  vertical-align: middle;
}

/* Remove controls on number field */
.fe_form input[type="number"]::-webkit-inner-spin-button,
.fe_form input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.fe_form input[type="submit"],
.fe_form input.submitbutton {
  margin-top: .75em;
}

.fe_form input[type="submit"].inline_submit_button {
  margin-top: 0;
}

.fe_form textarea {
  height: 10em;
  overflow: auto;
  width: 380px;
}

/* Custom CSS checkbox/radio buttons */
.backgroundsize .fe_form input[type="checkbox"],
.backgroundsize .fe_form input[type="radio"] {
  position: absolute;
  left: -9999em;
}

/* IE8 */
.no-backgroundsize .fe_form input[type="radio"] {
  float: left;
}

.backgroundsize .fe_form input[type="checkbox"] + label,
.backgroundsize .fe_form input[type="radio"] + label {
  cursor: pointer;
  line-height: 1.375em;
  padding: 0 0 0 1.75em;
  position: relative;
}

.backgroundsize .fe_form input[type="checkbox"] + label:before,
.backgroundsize .fe_form input[type="radio"] + label:before {
  background: #fff;
  box-shadow: inset 0 2px 3px rgba(0, 0, 0, 0.1);
  border: 1px solid #ccc;
  content: "";
  height: 1.25em;
  width: 1.25em;
  position: absolute;
  top: 0;
  left: 0;
}

.backgroundsize .fe_form input[type="checkbox"]:focus + label:before,
.backgroundsize .fe_form input[type="radio"]:focus + label:before {
  border: 1px solid #333;
}

.backgroundsize .fe_form input[type="checkbox"] + label:before {
  border-radius: .25em;
}

.backgroundsize .fe_form input[type="radio"] + label:before {
  border-radius: 50%;
}

.backgroundsize .fe_form input[type="checkbox"]:checked + label:after {
  color: #333;
  content: '\6D';
  display: block;
  font-family: 'fe-icons';
  font-size: 1em;
  line-height: 1.375em;
  position: absolute;
  top: 0;
  left: .2em;
}

.backgroundsize .fe_form input[type="radio"]:checked + label:after {
  background: #333;
  border-radius: 50%;
  content: '';
  display: block;
  height: .875em;
  width: .875em;
  line-height: 1.375em;
  position: absolute;
  top: .25em;
  left: .25em;
}

.fe_form_grp_title {
  margin-bottom: .5em;
}

/* Checkbox/Radio grouping */
li.fe_form_cbgrp_vert {
  margin-right: 1.5em;
}

.fe_form_cbgrp_vert label {
  clear: both;
  float: left;
  margin-bottom: .75em;
}

.no-backgroundsize .fe_form_cbgrp_vert label {
  float: none;
}

/* IE8 */
.fe_form_cbgrp_horiz label {
  float: left;
  margin-right: 1.25em;
  margin-bottom: .75em;
}

.fe_form_cbgrp_horiz label:last-child {
  margin-right: 0;
}

.no-backgroundsize .fe_form_cbgrp_horiz label {
  float: none;
}

/* IE8 */
li.fe_form_radiogrp_vert {
  margin-right: 1.5em;
}

.fe_form_radiogrp_vert label {
  clear: both;
  float: left;
  margin-bottom: .75em;
}

.fe_form_radiogrp_horiz label {
  float: left;
  margin-right: 1.25em;
  margin-bottom: .75em;
}

.fe_form_radiogrp_horiz label:last-child {
  margin-right: 0;
}

/*------------- Select2 --------------*/
/* Override default select2 styles */
.fe_form .select2-container {
  background: #fff;
  background-image: none !important;
  border-style: solid;
  border-width: 1px;
  border-radius: 3px;
  box-shadow: inset 0 2px 3px rgba(0, 0, 0, 0.1);
  margin: 0 0.75em 0.75em 0;
}

.select2-choice {
  background: none !important;
  border: 0 !important;
  font-size: inherit !important;
}

.select2-drop {
  font-size: 14px !important;
}

.select2-arrow {
  background: none !important;
  border: 0 !important;
}

.select2-highlighted {
  background: #333 !important;
}

.select2-results li:first-child {
  color: #aaa;
}

/*------------- Section Dividers --------------*/
.fe_form_header h2 {
  display: inline-block;
  float: left;
  line-height: 1.3;
  margin: 0 0 0.5em;
  width: auto;
}

.section_divider h2 {
  display: inline-block;
  float: left;
  line-height: 1.3;
  margin: 1em 0 0.5em;
  width: auto;
}

.section_divider hr, .fe_form_header hr {
  clear: both;
  height: 1px;
  margin: 0 0 1em;
}

.section_description li {
  margin: 0 0 1.5em;
}

/*------------- Buttons --------------*/
button, input[type="button"], input[type="reset"], input[type="submit"] {
  cursor: pointer;
}

.submitbutton, .submitbutton:active, .submitbutton:focus,
input.submitbutton, input.submitbutton:active, input.submitbutton:focus {
  font-size: 1.25em;
  overflow: visible;
  padding: 0.75em 1.25em;
  -webkit-appearance: none;
}

.smallbutton, .smallbutton:active, .smallbutton:focus,
input.smallbutton, input.smallbutton:active, input.smallbutton:focus,
.link_button, .link_button:active, .link_button:focus {
  overflow: visible;
  padding: 0.5em 0.75em;
  -webkit-appearance: none;
}

.section_divider_buttons {
  float: right;
  margin-top: 1.5em;
}

.fe_form_header .section_divider_buttons {
  margin-top: 0;
}

/* apply to <a class="link_button"> when inside .section_divider */
.section_divider_button {
  border-radius: 3px;
  float: left;
  font-size: .875em;
  line-height: 1;
  margin-left: .5em;
  padding: 0.5em 0.75em;
  text-decoration: none;
}

/*------------- QA Question Bubble --------------*/
.speech_bubble_block {
  background: #fff;
  border-radius: 1em;
  clear: both;
  margin-bottom: 1.5em;
  padding: 1.5em;
  position: relative;
}

.speech_bubble_block:after {
  border-left: .5em solid transparent;
  border-right: .5em solid transparent;
  border-top-style: solid;
  border-top-color: inherit;
  border-top-width: 1em;
  content: '';
  display: block;
  height: 0;
  width: 0;
  position: absolute;
  left: 1.5em;
  bottom: -1em;
}

.speech_bubble_block h2 {
  line-height: 1;
  margin: 0;
}

@media screen and (max-width: 768px) {
  .section_divider_buttons {
    clear: both;
    float: left;
    margin: 0.5em 0 2em;
  }
  .section_divider_button {
    margin-left: 0;
    margin-right: .5em;
    margin-bottom: .5em;
  }
  .section_header h2, .fe_form_header h2 {
    clear: both;
  }
}

@media screen and (max-width: 480px) {
  .fe_form li.fe_form_control_group li:not(.not_max),
  .fe_form input:not(.not_max),
  .fe_form select:not(.not_max),
  .fe_form textarea,
  .fe_form .select2-container:not(.not_max) {
    margin-right: 0;
    width: 100% !important;
  }
  /* .responsive li {float: none;} */
  .field_note {
    font-size: .875em;
  }
}

/*--------------------------------------------
  Pagination 
--------------------------------------------*/
.pagination {
  clear: both;
  float: right;
  margin-top: 1.25em;
}

#pagination a, #pagination a:hover {
  border: 0;
  padding: 0;
}

.pagination_prev {
  margin-right: .25em;
}

.pagination_next {
  margin-left: .25em;
}

.pagination_count {
  display: block;
  font-size: .75em;
  font-style: italic;
  text-align: center;
  margin-top: .25em;
}

.pagination_disabled {
  opacity: .3;
  pointer-events: none;
}

/*--------------------------------------------
  3 Column Responsive Grid 
--------------------------------------------*/
.fe_grid {
  list-style: none;
  margin: 0;
  padding: 0;
}

.fe_grid li {
  box-sizing: border-box;
  float: left;
  margin-bottom: 2%;
  width: calc(96% / 3);
}

.fe_grid li:nth-child(1),
.fe_grid li:nth-child(3n+1),
.fe_grid li:nth-child(3n+2) {
  margin-right: 2%;
}

@media screen and (max-width: 1023px) {
  .fe_grid li {
    margin-right: 0 !important;
    width: calc(96% / 2);
  }
  .fe_grid li:nth-child(1),
  .fe_grid li:nth-child(2n+1) {
    margin-right: 3% !important;
    margin-bottom: 3%;
  }
}

@media screen and (max-width: 700px) {
  .fe_grid li {
    margin-right: 0 !important;
    margin-bottom: 4% !important;
    width: 100%;
  }
}

/*--- note card metaphor ---*/
.fe_card {
  /* use cs_line_border class on element to pull border color */
  border-radius: 3px;
  border-style: solid;
  border-width: 1px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
  padding: 1em 1.25em;
}

/*--------------------------------------------
  Filters 
--------------------------------------------*/
.feature_filter_container {
  margin-bottom: 25px;
}

.feature_filter_toggle {
  display: inline;
  margin: 0 0 0 5px;
}

.feature_filters hr {
  margin: 10px 0;
}

.feature_search_filter {
  margin: 0 3px 0 0;
}

.feature_search_button {
  margin: 0;
}

/*----- RESPONSIVE TABLE/FILTER FUNCTIONALITY -----*/
@media screen and (max-width: 34em) {
  /* Remove non-critical table columns to better fit on small devices */
  .table_column_hide, .responsive_hide {
    display: none;
  }
  /* Stack items in features filter */
  .feature_filters {
    clear: both;
    overflow: hidden;
  }
  .feature_filters form, .feature_filters div {
    float: left;
    margin: 10px 0 5px;
  }
  .feature_filters hr {
    clear: both;
  }
}

/*--------------------------------------------
  Waiting Overlay  
--------------------------------------------*/
@-webkit-keyframes waitingOverlay {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}

@keyframes waitingOverlay {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.waiting_overlay {
  position: relative;
}

.waiting_overlay:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.waiting_overlay_button {
  display: inline-block;
  position: relative;
}

.waiting_overlay_button input {
  opacity: .1;
}

.waiting_overlay_button:before {
  border-top: 3px solid #999;
  border-right: 3px solid #999;
  border-bottom: 3px solid #999;
  border-left: 3px solid #000;
  border-radius: 50%;
  content: '';
  display: block;
  height: 15px;
  width: 15px;
  opacity: 1;
  margin-top: calc(-7px - .5em);
  margin-left: calc(-7px - .5em);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-animation: waitingOverlay 0.75s linear infinite;
  animation: waitingOverlay 0.75s linear infinite;
  z-index: 2;
}

@media screen and (max-width: 480px) {
  .waiting_overlay_button {
    width: 100%;
  }
}

/*--------------------------------------------
  Admin Notifications 
--------------------------------------------*/
#admin_notifications {
  display: none;
  list-style: none;
  margin: 0;
  padding: 0;
  position: fixed;
  top: 10px;
  right: 10px;
  width: 200px;
  z-index: 9999;
}

#admin_notifications li {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1);
  font-size: 12px;
  line-height: 1.5;
  margin-bottom: 5px;
  padding: 10px;
  position: relative;
}

#admin_notifications .error {
  background: #CE3622;
  border: none !important;
  color: #fff;
}

/* Should remove from form engine */
#admin_notifications .close_notification {
  display: none;
}

#admin_notifications .success {
  background: #77B400 !important;
  border: none !important;
  color: #fff !important;
}

#admin_notifications .notify {
  background: #0077cc;
  border: none !important;
  color: #fff;
}

#admin_notifications .close_all {
  background: #f9f9f9 url(/sr/images/delete_item.png) no-repeat 170px center;
  border: 1px solid #e9e9e9;
  color: #444;
  cursor: pointer;
  font-weight: bold;
  padding: 10px 10px 10px 15px;
}

#admin_notifications .close_all:hover {
  color: #006cbf;
}

/*--------------------------------------------
  ckEditor Templates
--------------------------------------------*/
.template_image_left2 {
  clear: both;
  overflow: hidden;
}

.pullimage_left2 {
  float: left;
  line-height: 0;
  margin: 0 20px 15px 0;
  max-width: 40%;
}

.pullimage_left2 img {
  max-width: 100%;
}

@media screen and (max-width: 48em) {
  .pullimage_left2 {
    margin: 0 3% 2% 0;
  }
}

@media screen and (max-width: 30em) {
  .pullimage_left2 {
    max-width: 50%;
  }
}

.template_image_right2 {
  clear: both;
  overflow: hidden;
}

.pullimage_right2 {
  float: right;
  line-height: 0;
  margin: 0 0 15px 20px;
  max-width: 40%;
}

.pullimage_right2 img {
  max-width: 100%;
}

@media screen and (max-width: 48em) {
  .pullimage_right2 {
    margin: 0 0 2% 3%;
  }
}

@media screen and (max-width: 30em) {
  .pullimage_right2 {
    max-width: 50%;
  }
}

.template_pullquote_left2 {
  clear: both;
  overflow: hidden;
}

.pullquote_left2 {
  border-radius: 3px;
  display: block;
  float: left;
  font-size: 1.125em;
  font-style: italic;
  font-weight: bold;
  margin: 0 20px 15px 0;
  padding: 20px;
  width: 30%;
}

@media screen and (max-width: 48em) {
  .pullquote_left2 {
    margin: 0 3% 2% 0;
    padding: 3%;
    width: 40%;
  }
}

@media screen and (max-width: 36em) {
  .pullquote_left2 {
    margin: 0 4% 3% 0;
    padding: 4%;
    width: 50%;
  }
}

@media screen and (max-width: 30em) {
  .pullquote_left2 {
    margin: 0 0 3%;
    padding: 5%;
    width: 100%;
  }
}

.template_pullquote_right2 {
  clear: both;
  overflow: hidden;
}

.pullquote_right2 {
  border-radius: 3px;
  display: block;
  float: right;
  font-size: 1.125em;
  font-style: italic;
  font-weight: bold;
  margin: 0 0 15px 20px;
  padding: 20px;
  width: 30%;
}

@media screen and (max-width: 48em) {
  .pullquote_right2 {
    margin: 0 0 2% 3%;
    padding: 3%;
    width: 40%;
  }
}

@media screen and (max-width: 36em) {
  .pullquote_right2 {
    margin: 0 0 3% 4%;
    padding: 4%;
    width: 50%;
  }
}

@media screen and (max-width: 30em) {
  .pullquote_right2 {
    margin: 0 0 3%;
    padding: 5%;
    width: 100%;
  }
}

.template_gridrow3 {
  clear: both;
  margin: 0;
  overflow: hidden;
  padding: 0 0 2%;
  list-style: none;
}

.template_gridrow3 li {
  float: left;
  line-height: 0;
  margin-left: 2%;
  width: 32%;
}

.template_gridrow3 img {
  height: auto !important;
  max-width: 100% !important;
  /* width:100%!important */
}

li.template_gridrow3_1 {
  margin-left: 0;
}

@media screen and (max-width: 29em) {
  .template_gridrow3 li {
    margin: 2% 0 0;
    width: 100%;
  }
  li.template_gridrow3_1 {
    margin: 0;
  }
}

.template_gridrow3text {
  clear: both;
  margin: 0;
  overflow: hidden;
  padding: 0 0 2%;
  list-style: none;
}

.template_gridrow3text li {
  float: left;
  margin-left: 2%;
  width: 32%;
}

.template_gridrow3text img {
  height: auto !important;
  line-height: 0;
  margin-bottom: 2%;
  max-width: 100% !important;
  /* width:100%!important */
}

.template_gridrow3text li > div {
  margin-bottom: 2%;
}

li.template_gridrow3text_1 {
  margin-left: 0;
}

@media screen and (max-width: 47em) {
  .template_gridrow3text li {
    margin: 2% 0 0;
    width: 100%;
  }
  li.template_gridrow3text_1 {
    margin: 0;
  }
}

.template_gridrow4 {
  clear: both;
  margin: 0;
  overflow: hidden;
  padding: 0 0 2%;
  list-style: none;
}

.template_gridrow4 li {
  float: left;
  line-height: 0;
  margin-left: 2%;
  width: 23.5%;
}

.template_gridrow4 img {
  height: auto !important;
  max-width: 100% !important;
  /* width:100%!important */
}

li.template_gridrow4_1 {
  margin-left: 0;
}

@media screen and (max-width: 45em) {
  .template_gridrow4 li {
    width: 49%;
  }
  li.template_gridrow4_1 {
    margin: 0 2% 2% 0;
  }
  li.template_gridrow4_2 {
    margin: 0 0 2% 0;
  }
  li.template_gridrow4_3 {
    margin: 0 2% 0 0;
  }
  li.template_gridrow4_4 {
    margin: 0;
  }
}

@media screen and (max-width: 24em) {
  .template_gridrow4 li {
    margin: 2% 0 0;
    width: 100%;
  }
  li.template_gridrow4_1 {
    margin: 0;
  }
}

.template_2column {
  clear: both;
  overflow: hidden;
}

.template_2column img {
  height: auto !important;
  max-width: 100% !important;
}

.template_2column_1 {
  float: left;
  margin-right: 4%;
  width: 48%;
}

.template_2column_2 {
  float: left;
  width: 48%;
}

@media screen and (max-width: 40em) {
  .template_2column_1 {
    width: 100%;
    margin-right: 0;
    margin-bottom: 4%;
  }
  .template_2column_2 {
    width: 100%;
  }
}

.template_3column {
  clear: both;
  overflow: hidden;
}

.template_3column img {
  height: auto !important;
  max-width: 100% !important;
}

.template_3column_1 {
  float: left;
  margin-right: 4%;
  width: 30.6%;
}

.template_3column_2 {
  float: left;
  margin-right: 4%;
  width: 30.6%;
}

.template_3column_3 {
  float: left;
  width: 30.6%;
}

@media screen and (max-width: 44em) {
  .template_3column_1 {
    width: 100%;
    margin-right: 0;
    margin-bottom: 4%;
  }
  .template_3column_2 {
    width: 100%;
    margin-right: 0;
    margin-bottom: 4%;
  }
  .template_3column_3 {
    width: 100%;
  }
}

.template_staff_member {
  clear: both;
  overflow: hidden;
}

.template_staff_header img {
  float: left;
  height: auto !important;
  margin: 0 20px 15px 0;
  max-width: 30%;
}

.template_staff_header h2 {
  display: inline;
}

@media screen and (max-width: 30em) {
  .template_staff_header img {
    margin: 0 4% 3% 0;
  }
}

/*--------------------------------------------
  Popup Dialog
--------------------------------------------*/
.popup_dialog {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 5px;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
  display: none;
  width: 330px;
  margin-left: -185px;
  padding: 0px 20px 20px;
  position: fixed;
  top: 200px;
  left: 50%;
  z-index: 2000;
}

.popup_dialog ul {
  list-style: none;
  margin: 25px 0 0;
  padding: 0;
}

.popup_dialog li {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 20px;
  position: relative;
}

.popup_dialog ul.form_control_group {
  margin: 0;
  padding: 0;
}

.popup_dialog ul.form_control_group li {
  float: left;
  margin-right: 12px;
  width: auto;
}

.popup_dialog .radio_group {
  margin: 0;
}

.popup_dialog .radio_group li {
  display: inline;
  margin: 0 10px 0 0;
}

.popup_dialog_buttons {
  margin-top: 10px;
}

/*--- css/utility_style_sheet.css ---*/
