/*------------------------------------*\
   Compass Img URL Pre-fixes  
\*------------------------------------*/
/*------------------------------------*\
   Colors 
\*------------------------------------*/
/*------------------------------------*\
   Fonts 
\*------------------------------------*/
/*** Font Families ***/
/*** Font Includes ***/
table tr td.heading {
  color: #333;
  font: bold 16px/21px "Arial", sans-serif;
}

table tr th, table tr td {
  color: #666666;
  font: normal 14px/20px "Arial", sans-serif;
  margin: 5px 0 15px;
}

/*------------------------------------*\
   Accessibility
\*------------------------------------*/
/*** screen reader text ***/
.srt {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/*------------------------------------*\
   Layout
\*------------------------------------*/
.clearfix:after, .pricing-wizard .pricing-wizard__display .nextprevbuttons:after, .pricing-wizard .pricing-wizard__display-body:after, .pricing-wizard .pricing-wizard-product footer:after, .site-row__container:after {
  content: "";
  display: table;
  clear: both;
}

/*------------------------------------*\
   Typography
\*------------------------------------*/
/*** string break ***/
/*------------------------------------*\
   Image Path Directory  
\*------------------------------------*/
/*** Retina Background Mixin ***/
/*------------------------------------*\
   Material Card Shadows 
\*------------------------------------*/
/*** Documentation ***/
/*** Top Shadow Function ***/
/*** Bottom Shadow Function ***/
/*** Mixin Declared ***/
/*------------------------------------*\
   Respond Min 
\*------------------------------------*/
/* Mixin to set a min-width and min-height without needing to declare 
   the media screen sizes. It also sets IE8 to use this override.
   used with MOBILE FIRST. */
/*------------------------------------*\
    Retina Sprite and background-image Mixin
\*------------------------------------*/
/*** targeting icon folder and setting compass sprite layout to smart ***/
/*** Sprite Mixin ***/
/*------------------------------------*\
   Media Query Break Points 
\*------------------------------------*/
.js-window-width {
  text-indent: 979px;
}
@media screen and (min-width: 768px) {
  .js-window-width {
    text-indent: 979px;
  }
}
@media screen and (max-width: 767px) {
  .js-window-width {
    text-indent: 767px;
  }
}
@media screen and (max-width: 600px) {
  .js-window-width {
    text-indent: 600px;
  }
}
@media screen and (max-width: 480px) {
  .js-window-width {
    text-indent: 480px;
  }
}
@media screen and (max-width: 320px) {
  .js-window-width {
    text-indent: 320px;
  }
}

/*------------------------------------*\
   Personalization Visibility (pv)
\*------------------------------------*/
/*** Public View ***/
.is-signed-out .pv-member,
.is-signed-out .pv-non-member {
  display: none !important;
}

.is-signed-in {
  /*** Member View ***/
  /*** Non-member View ***/
}
.is-signed-in.is-member .pv-member {
  display: block;
}
.is-signed-in.is-member .pv-public,
.is-signed-in.is-member .pv-non-member {
  display: none !important;
}
.is-signed-in.is-non-member .pv-non-member {
  display: block;
}
.is-signed-in.is-non-member .pv-public,
.is-signed-in.is-non-member .pv-member {
  display: none !important;
}

/*------------------------------------*\
  Setup
\*------------------------------------*/
/*** Susy Map ***/
/*** Susy Global Border Box Activation ***/
/*------------------------------------*\
  Page Wrap Grid
\*------------------------------------*/
.page-wrap {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}
.page-wrap:after {
  content: " ";
  display: block;
  clear: both;
}
head {
  display: block;
  position: fixed;
  left: 10px;
  top: 10px;
  z-index: 999;
  color: #333;
  background: rgba(255, 255, 255, 0.25);
}
head:before {
  content:"|||";display:none;
  padding: 5px 10px;
  font-family: sans-serif;
  font-size: 16px;
  font-weight: bold;
}
head:hover {
  background: rgba(255, 255, 255, 0.5);
  color: red;
}
head:hover ~ .page-wrap, head:hover ~ body .page-wrap {
  position: relative;
}
head:hover ~ .page-wrap:before, head:hover ~ body .page-wrap:before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  content: " ";
  z-index: 998;
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzY2NjZmZiIgc3RvcC1vcGFjaXR5PSIwLjI1Ii8+PHN0b3Agb2Zmc2V0PSI3MS40Mjg1NyUiIHN0b3AtY29sb3I9IiNiM2IzZmYiIHN0b3Atb3BhY2l0eT0iMC4yNSIvPjxzdG9wIG9mZnNldD0iNzEuNDI4NTclIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, rgba(102, 102, 255, 0.25)), color-stop(71.42857%, rgba(179, 179, 255, 0.25)), color-stop(71.42857%, rgba(0, 0, 0, 0)));
  background-image: -moz-linear-gradient(left, rgba(102, 102, 255, 0.25), rgba(179, 179, 255, 0.25) 71.42857%, rgba(0, 0, 0, 0) 71.42857%);
  background-image: -webkit-linear-gradient(left, rgba(102, 102, 255, 0.25), rgba(179, 179, 255, 0.25) 71.42857%, rgba(0, 0, 0, 0) 71.42857%);
  background-image: linear-gradient(to right, rgba(102, 102, 255, 0.25), rgba(179, 179, 255, 0.25) 71.42857%, rgba(0, 0, 0, 0) 71.42857%);
  background-size: 8.53659%;
  background-origin: content-box;
  background-clip: content-box;
  background-position: left top;
}

/*------------------------------------*\
  Page Row Template
\*------------------------------------*/
.template-pagerows .page-wrap:before {
  display: none !important;
}
.template-pagerows .page-row__container {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
  /*** Column Declarations ***/
  /*** Row Declarations ***/
  /*** Mobile Gridblock Stacking ***/
}
.template-pagerows .page-row__container:after {
  content: " ";
  display: block;
  clear: both;
}
head:hover ~ .template-pagerows .page-row__container, head:hover ~ body .template-pagerows .page-row__container {
  position: relative;
}
head:hover ~ .template-pagerows .page-row__container:before, head:hover ~ body .template-pagerows .page-row__container:before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  content: " ";
  z-index: 998;
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzY2NjZmZiIgc3RvcC1vcGFjaXR5PSIwLjI1Ii8+PHN0b3Agb2Zmc2V0PSI3MS40Mjg1NyUiIHN0b3AtY29sb3I9IiNiM2IzZmYiIHN0b3Atb3BhY2l0eT0iMC4yNSIvPjxzdG9wIG9mZnNldD0iNzEuNDI4NTclIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, rgba(102, 102, 255, 0.25)), color-stop(71.42857%, rgba(179, 179, 255, 0.25)), color-stop(71.42857%, rgba(0, 0, 0, 0)));
  background-image: -moz-linear-gradient(left, rgba(102, 102, 255, 0.25), rgba(179, 179, 255, 0.25) 71.42857%, rgba(0, 0, 0, 0) 71.42857%);
  background-image: -webkit-linear-gradient(left, rgba(102, 102, 255, 0.25), rgba(179, 179, 255, 0.25) 71.42857%, rgba(0, 0, 0, 0) 71.42857%);
  background-image: linear-gradient(to right, rgba(102, 102, 255, 0.25), rgba(179, 179, 255, 0.25) 71.42857%, rgba(0, 0, 0, 0) 71.42857%);
  background-size: 8.53659%;
  background-origin: content-box;
  background-clip: content-box;
  background-position: left top;
}
.template-pagerows .page-row__container .one-column {
  width: 6.09756%;
  float: left;
  margin-right: 2.43902%;
}
.template-pagerows .page-row__container .two-column {
  width: 14.63415%;
  float: left;
  margin-right: 2.43902%;
}
.template-pagerows .page-row__container .three-column {
  width: 23.17073%;
  float: left;
  margin-right: 2.43902%;
}
.template-pagerows .page-row__container .four-column {
  width: 31.70732%;
  float: left;
  margin-right: 2.43902%;
}
.template-pagerows .page-row__container .five-column {
  width: 40.2439%;
  float: left;
  margin-right: 2.43902%;
}
.template-pagerows .page-row__container .six-column {
  width: 48.78049%;
  float: left;
  margin-right: 2.43902%;
}
.template-pagerows .page-row__container .seven-column {
  width: 57.31707%;
  float: left;
  margin-right: 2.43902%;
}
.template-pagerows .page-row__container .eight-column {
  width: 65.85366%;
  float: left;
  margin-right: 2.43902%;
}
.template-pagerows .page-row__container .nine-column {
  width: 74.39024%;
  float: left;
  margin-right: 2.43902%;
}
.template-pagerows .page-row__container .ten-column {
  width: 82.92683%;
  float: left;
  margin-right: 2.43902%;
}
.template-pagerows .page-row__container .eleven-column {
  width: 91.46341%;
  float: left;
  margin-right: 2.43902%;
}
.template-pagerows .page-row__container .full {
  width: 100%;
  float: right;
  margin-right: 0;
}
.template-pagerows .page-row__container .gridblock {
  margin-left: 0;
}
.template-pagerows .page-row__container .alpha {
  clear: both;
}
.template-pagerows .page-row__container .omega {
  float: right;
  margin-right: 0;
}
@media (max-width: 767px) {
  .template-pagerows .page-row__container .gridblock {
    width: 100%;
    margin-left: none;
    margin-right: none;
  }
}
.template-pagerows .gridcolparsys {
  margin: 0;
}

.data {
  /*** START overrides / hacks ***/
  /*** END overrides / hacks ***/
}
.data .line-items {
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /*------------------------------------*\
     2 Column Layout
  \*------------------------------------*/
}
.data .line-items * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.data .line-items.-col-2.-layout-justified li {
  margin: 0 0 10px;
  padding: 0 75px 0 0;
  list-style: none;
}
.data .line-items.-col-2.-layout-justified li.last-line-item {
  padding-bottom: 10px;
  border-bottom: 1px solid #aaaaaa;
}
.data .line-items.-col-2.-layout-justified .data__entry {
  position: absolute;
  right: 0;
  top: 0;
  font-weight: bold;
}
#main .data ul li {
  left: 0;
  margin-right: 0;
  margin-left: 0;
  position: relative;
}

/*------------------------------------*\
   Print Styles
\*------------------------------------*/
@media print {
  .data ul li {
    list-style: none !important;
  }
}
.form * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.form input[type=checkbox] {
  margin-right: 3px;
}
.form input[type=radio] {
  margin-right: 5px;
}
#main .form {
  /*------------------------------------*\
     Form Element Widths
  \*------------------------------------*/
}
#main .form input[type=text], #main .form select, #main .form textarea {
  margin: 0 0 5px;
}
#main .form input[type=checkbox] {
  margin: 3px 5px 0 0;
}
#main .form input[type=radio] {
  margin: 5px 5px 0 0;
}
@media screen and (min-width: 600px) {
  #main .form .-width-xxs {
    width: 100%;
    max-width: 10%;
  }
  #main .form .-width-xs {
    width: 100%;
    max-width: 20%;
  }
  #main .form .-width-s {
    width: 100%;
    max-width: 40%;
  }
  #main .form .-width-m {
    width: 100%;
    max-width: 60%;
  }
  #main .form .-width-l {
    width: 100%;
    max-width: 80%;
  }
  #main .form .-width-xl {
    width: 100%;
  }
}
#main .form .-width-auto {
  width: auto;
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  #main .form input, #main .form select, #main .form textarea {
    margin: 0;
  }
}
@media screen and (max-width: 599px) {
  #main .form input[type=text], #main .form textarea {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .form .form__rows {
    margin: 0;
    padding: 0;
  }
}

/*------------------------------------*\
   Rows
\*------------------------------------*/
.form__rows {
  margin-top: 0;
}
.form__rows li {
  list-style: none;
  margin-bottom: 5px;
}
.form__rows li:after {
  clear: both;
  content: ".";
  display: block;
  height: 0;
  visibility: hidden;
}
.form__rows .form-row__title {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;
}
.form__rows.-layout-stacked fieldset label {
  display: block;
}
#main .form__rows {
  /*------------------------------------*\
     Font Styles
  \*------------------------------------*/
}
#main .form__rows li {
  left: 0;
  margin-right: 0;
  margin-left: 0;
}
@media screen and (max-width: 767px) {
  #main .form__rows li {
    margin-left: 0;
    padding-left: 0;
    padding-right: 0;
  }
}
#main .form__rows.-layout-center .error {
  display: block;
}
@media screen and (min-width: 600px) {
  #main .form__rows.-layout-center label {
    float: left;
    text-align: right;
    margin-right: 1em;
  }
  #main .form__rows.-layout-center div {
    float: left;
  }
  #main .form__rows.-layout-center input[type="checkbox"], #main .form__rows.-layout-center input[type="radio"] {
    float: none;
  }
}
#main .form__rows fieldset.-display-inline input, #main .form__rows fieldset.-display-inline select {
  clear: none;
  padding-left: 0;
}
#main .form__rows fieldset.-display-inline input[type="text"], #main .form__rows fieldset.-display-inline select {
  margin-right: 10px;
}
@media screen and (max-width: 599px) {
  #main .form__rows fieldset.-display-inline input[type="text"], #main .form__rows fieldset.-display-inline select {
    margin-bottom: 10px;
  }
}
#main .form__rows fieldset.-display-inline legend {
  clear: none;
}
#main .form__rows fieldset.-display-inline input[type="radio"] + label {
  margin-right: 10px;
  padding-left: 0px;
}
#main .form__rows fieldset.-display-inline input[type="checkbox"] + label {
  margin-right: 10px;
  padding-left: 0px;
}
#main .form__rows .form-row__title {
  font-weight: bold;
  font-size: 1em;
  line-height: 1.4em;
  color: #666666;
}
#main .form__rows label {
  font-weight: normal;
  color: #666666;
  font-size: 1em;
  line-height: 1.4em;
  width: 100%;
}
#main .form__rows label .instructions {
  font-weight: normal;
  font-size: 0.85em;
  display: inline-block;
  max-width: 80%;
}
#main .form__rows label, #main .form__rows input {
  margin-right: 0;
  margin-left: 0;
}

/*** Required Asterisk ***/
.form__ast-req {
  color: #9e2a2f;
}

/*** Disabled States ***/
.form select:disabled,
.form textarea:disabled,
.form input[type="checkbox"]:disabled,
.form input[type="date"]:disabled,
.form input[type="datetime"]:disabled,
.form input[type="file"]:disabled,
.form input[type="email"]:disabled,
.form input[type="month"]:disabled,
.form input[type="number"]:disabled,
.form input[type="password"]:disabled,
.form input[type="radio"]:disabled,
.form input[type="range"]:disabled,
.form input[type="search"]:disabled,
.form input[type="tel"]:disabled,
.form input[type="text"]:disabled,
.form input[type="time"]:disabled,
.form input[type="url"]:disabled,
.form input[type="week"]:disabled {
  background-color: #e3e3e3;
  cursor: default;
}

/*------------------------------------*\
   Credit Card
\*------------------------------------*/
.icon--credit-card {
  width: 25px;
  height: 16px;
  display: block;
  background-repeat: no-repeat;
  background-image: url('//img.aafp.net/aafp/sprites-s9e24000914.png');
  background-position: 0 -32px;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon--credit-card {
    background-image: url('//img.aafp.net/aafp/sprites-retina-sa18a99679b.png');
    background-size: 44px 132px;
    background-position: 0 -32px;
  }
}
.icon--credit-card.-type-amex {
  background-image: url('//img.aafp.net/aafp/sprites-s9e24000914.png');
  background-position: 0 0;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon--credit-card.-type-amex {
    background-image: url('//img.aafp.net/aafp/sprites-retina-sa18a99679b.png');
    background-size: 44px 132px;
    background-position: 0 0;
  }
}
.icon--credit-card.-type-discover {
  background-image: url('//img.aafp.net/aafp/sprites-s9e24000914.png');
  background-position: 0 -16px;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon--credit-card.-type-discover {
    background-image: url('//img.aafp.net/aafp/sprites-retina-sa18a99679b.png');
    background-size: 44px 132px;
    background-position: 0 -16px;
  }
}
.icon--credit-card.-type-generic {
  background-image: url('//img.aafp.net/aafp/sprites-s9e24000914.png');
  background-position: 0 -32px;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon--credit-card.-type-generic {
    background-image: url('//img.aafp.net/aafp/sprites-retina-sa18a99679b.png');
    background-size: 44px 132px;
    background-position: 0 -32px;
  }
}
.icon--credit-card.-type-master {
  background-image: url('//img.aafp.net/aafp/sprites-s9e24000914.png');
  background-position: 0 -48px;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon--credit-card.-type-master {
    background-image: url('//img.aafp.net/aafp/sprites-retina-sa18a99679b.png');
    background-size: 44px 132px;
    background-position: 0 -48px;
  }
}
.icon--credit-card.-type-visa {
  background-image: url('//img.aafp.net/aafp/sprites-s9e24000914.png');
  background-position: 0 -64px;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .icon--credit-card.-type-visa {
    background-image: url('//img.aafp.net/aafp/sprites-retina-sa18a99679b.png');
    background-size: 44px 132px;
    background-position: 0 -64px;
  }
}

/*------------------------------------*\
   Indicator
\*------------------------------------*/
.icon--indicator {
  width: 20px;
  height: 20px;
  background: #CCCCCC;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  border-radius: 100%;
}
.icon--indicator.-is-on {
  background: #789d4a;
}

/*------------------------------------*\
   Calendar Icon
\*------------------------------------*/
.cal-icon {
  background: url("//img.aafp.net/global/icons/calendar-datepicker.png") no-repeat scroll 98% white;
  min-height: 1em;
  cursor: pointer;
}

.cal-icon::-webkit-calendar-picker-indicator {
  margin-right: 18px;
}

.cal-icon::-ms-clear {
  margin-right: 18px;
}

.cal-icon {
  -webkit-appearance: none;
}

/*------------------------------------*\
    Globals  
\*------------------------------------*/
.img-block__wrap img {
  max-width: 100%;
  height: auto;
  display: block;
  position: relative;
}

/*------------------------------------*\
    Aspect Ratio Cropping
\*------------------------------------*/
.aspect-ratio-via-crop .img-block__wrap, .-ratio-1-1 .img-block__wrap, .-ratio-2-1 .img-block__wrap, .-ratio-4-3 .img-block__wrap, .-ratio-16-9 .img-block__wrap {
  overflow: hidden;
  position: relative;
  width: 100%;
}
.aspect-ratio-via-crop .img-block__wrap img, .-ratio-1-1 .img-block__wrap img, .-ratio-2-1 .img-block__wrap img, .-ratio-4-3 .img-block__wrap img, .-ratio-16-9 .img-block__wrap img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
.aspect-ratio-via-crop .img-block__wrap:before, .-ratio-1-1 .img-block__wrap:before, .-ratio-2-1 .img-block__wrap:before, .-ratio-4-3 .img-block__wrap:before, .-ratio-16-9 .img-block__wrap:before {
  content: "";
  display: block;
}

@media screen and (min-width: 768px) {
  .-force-enlarge img {
    width: 100%;
    margin-top: -25%;
  }
}

.-ratio-1-1 .img-block__wrap:before {
  padding-top: 100%;
}

.-ratio-2-1 .img-block__wrap:before {
  padding-top: 50%;
}

.-ratio-4-3 .img-block__wrap:before {
  padding-top: 75%;
}

.-ratio-16-9 .img-block__wrap:before {
  padding-top: 56.25%;
}

/*------------------------------------*\
    Img Controls (lightbox, zoom, etc)
\*------------------------------------*/
.img-block__control {
  display: block;
  content: "";
  position: absolute;
  right: 15px;
  bottom: 15px;
  width: 32px;
  height: 32px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.img-block__control:hover {
  cursor: pointer;
}
.img-block__control.-icon--lightbox {
  background-color: #cf7f00;
  background-color: rgba(0, 0, 0, 0.3);
  background-image: url("//img.aafp.net/global/icons/expand-white.png");
  background-repeat: no-repeat;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .img-block__control.-icon--lightbox {
    background-image: url("//img.aafp.net/global/icons-retina/expand-white.png");
    background-size: 100% auto;
  }
}

/*------------------------------------*\
   .invoice
\*------------------------------------*/
.invoice {
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 30px;
  /*** START Overrides / Hacks ***/
  /*** END Overrides / Hacks ***/
}
@media screen and (max-width: 767px) {
  .invoice {
    margin-top: 15px;
  }
}
.invoice .invoice__banner, .invoice li.line-item, .invoice .invoice__summary {
  padding: 15px;
  width: 100%;
}
.invoice * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#main .invoice .invoice__title {
  font-size: 1em;
  line-height: 1.4em;
  font-weight: 1.2em;
}
@media screen and (max-width: 767px) {
  #main .invoice ul {
    margin: 0;
    padding: 0;
  }
}
#main .invoice ul li {
  left: 0;
  margin-right: 0;
  margin-left: 0;
}
@media screen and (max-width: 767px) {
  #main .invoice ul li {
    margin-left: 0;
  }
}

.invoice__banner {
  background: #4f758b;
  color: #FFFFFF;
  font-family: "Arial", sans-serif;
  clear: both;
}

.invoice__title {
  margin: 0;
  padding: 0;
  font-family: "Arial", sans-serif;
  font-size: 1em;
  line-height: 1.4em;
  font-weight: 1.2em;
}

ul.line-items {
  margin: 0;
  clear: both;
}

li.line-item {
  background: #f6f6f6;
  list-style: none;
  float: left;
}
li.line-item:nth-child(2n+1) {
  background: #e3e3e3;
}

.line-item__name {
  float: left;
  margin: 0;
  width: 70%;
  font-weight: normal;
  font-size: 1em;
}

.line-item__charge {
  float: right;
  width: 25%;
  text-align: right;
}

.line-item__options {
  clear: both;
  float: left;
  margin-top: 10px;
  border-top: 1px solid #aaaaaa;
  padding-top: 10px;
}

.line-item__fine-print {
  font-size: 0.8em;
  line-height: 1.4em;
  font-style: italic;
}

.invoice__summary {
  background: #666666;
  color: #FFFFFF;
  clear: both;
}

.invoice__summary-title {
  float: left;
  width: 70%;
  margin: 0;
  font-size: 1em;
}

.invoice__total {
  float: right;
  width: 25%;
  text-align: right;
}

@media print {
  .invoice header {
    border-top: 1px solid;
    border-bottom: 1px solid;
  }
  .invoice .invoice__banner, .invoice .invoice__summary {
    padding-left: 0px;
  }
  .invoice footer {
    display: block !important;
    border-bottom: 1px solid;
  }
  .invoice ul li {
    list-style: none !important;
    border-bottom: 1px dotted;
  }
}
.member-services {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  border: 1px solid #e3e3e3;
  padding: 15px 20px;
  background-color: #FFFFFF;
}
@media screen and (min-width: 48em) and (max-width: 61.24em) {
  .member-services {
    padding: 10px 20px 3px 13px;
    margin-right: 10px;
  }
}
@media screen and (max-width: 479px) {
  .member-services {
    width: 90%;
    margin: 0 5% 20px;
  }
}
.member-services h1 {
  padding: 0;
  margin: 0 0 5px;
  color: #444444;
  font-weight: 400;
  font-size: 1.4em;
  line-height: 1.1em;
}
@media screen and (min-width: 48em) and (max-width: 61.24em) {
  .member-services h1 {
    font-size: 1.1em;
  }
}
.member-services nav a {
  display: block;
  border-top: 1px solid #e3e3e3;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 20px;
  font-weight: bold;
  font-size: .88em;
  line-height: 1.4em;
  color: #4f758b;
}
.member-services nav a:hover {
  text-decoration: none;
  color: #cf7f00;
}
@media screen and (min-width: 48em) and (max-width: 61.24em) {
  .member-services nav a {
    font-size: .78em;
    padding: 8px 20px 8px 0;
  }
}
.member-services nav.-nav-arrows a {
  background-position: center right;
  background-repeat: no-repeat;
  background-image: url('//img.aafp.net/global/icons/arrow-right-orange.png');
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .member-services nav.-nav-arrows a {
    background-image: url('//img.aafp.net/global/icons-retina/arrow-right-orange.png');
    background-size: 8px 13px;
  }
}

.link-list-arrows__link {
  background-position: center right;
  background-repeat: no-repeat;
  background-image: url('//img.aafp.net/global/icons/arrow-right-orange.png');
  display: block;
  border-top: 1px solid #e3e3e3;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 20px;
  font-weight: bold;
  font-size: .88em;
  line-height: 1.4em;
  margin: 0 20px;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .link-list-arrows__link {
    background-image: url('//img.aafp.net/global/icons-retina/arrow-right-orange.png');
    background-size: 8px 13px;
  }
}
@media screen and (min-width: 48em) and (max-width: 61.24em) {
  .link-list-arrows__link {
    font-size: .78em;
    padding: 8px 20px 8px 0;
  }
}
@media screen and (min-width: 48em) {
  .link-list-arrows__link {
    margin: 0;
  }
}
.link-list-arrows--gray .link-list-arrows__link {
  background-image: url('//img.aafp.net/global/icons/arrow-right-gray.png');
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .link-list-arrows--gray .link-list-arrows__link {
    background-image: url('//img.aafp.net/global/icons-retina/arrow-right-gray.png');
    background-size: 8px 13px;
  }
}

.setting {
  width: 100%;
  float: left;
  margin-bottom: 15px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /*** Credit Card Icon ***/
  /*** Indicator Icon ***/
  /*** START Overrides & Hacks ***/
  /*** END Overrides & Hacks ***/
}
.setting * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.setting .setting__title {
  margin: 0;
  line-height: 24px;
  color: #444444;
}
.setting .setting__description {
  color: #666666;
}
.setting .icon--credit-card {
  margin-right: 5px;
}
.setting .icon--indicator {
  margin-right: 5px;
}
.setting.-layout-row .setting__left-col {
  width: 70%;
  float: left;
  padding-left: 35px;
  position: relative;
}
.setting.-layout-row .setting__left-col .icon {
  position: absolute;
  left: 0;
  top: 3px;
}
.setting.-layout-row .setting__right-col {
  width: 25%;
  float: right;
}
.setting.-layout-row .setting__right-col .button, .setting.-layout-row .setting__right-col button {
  margin-left: 0;
}
@media screen and (min-width: 768px) {
  .setting.-layout-row .setting__right-col .button, .setting.-layout-row .setting__right-col button {
    float: right;
  }
}
@media screen and (max-width: 767px) {
  .setting.-layout-row .setting__left-col, .setting.-layout-row .setting__right-col {
    width: 100%;
    padding-left: 35px;
  }
}
@media screen and (max-width: 767px) {
  .setting .setting__title, .setting p, .setting .button {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0;
  }
}

.shim {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .shim.-mobile-padding {
    padding-left: 20px;
    padding-right: 20px;
  }
}

/*------------------------------------*\
   Global inline alert box
\*------------------------------------*/
.alert-box {
  background: #FFF;
  margin: 1em 0;
  border: 3px solid;
  position: relative;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  /*** Message content ***/
  /*** Icon Background ***/
  /*** Close Button ***/
  /** Warning Style **/
  /** Info Style **/
  /** Success Style **/
}
.alert-box__content {
  display: inline-block;
  margin-left: 5em;
  max-width: 75%;
}
@media screen and (max-width: 767px) {
  .alert-box__content {
    margin-left: 4em;
  }
}
.alert-box__icon {
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: 0;
  padding: 1em;
  width: 2em;
  text-align: center;
}
.alert-box__close {
  display: block;
  float: right;
  color: #FFF;
  font-size: 12px;
  text-indent: -9999px;
  direction: ltr;
  height: 22px;
  width: 22px;
  line-height: 22px;
  vertical-align: middle;
  text-align: center;
  margin: .5em;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  border-radius: 100%;
  background-image: url('//img.aafp.net/aafp/sprites-s9e24000914.png');
  background-position: 0 -80px;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .alert-box__close {
    background-image: url('//img.aafp.net/aafp/sprites-retina-sa18a99679b.png');
    background-size: 44px 132px;
    background-position: 0 -80px;
  }
}
.alert-box__close:hover {
  color: #FFF;
  text-decoration: none;
  cursor: pointer;
}
.alert-box.-warning {
  border-color: #9e2a2f;
}
.alert-box.-warning .alert-box__icon {
  background-color: #9e2a2f;
}
.alert-box.-info {
  border-color: #4f758b;
}
.alert-box.-info .alert-box__icon {
  background-color: #4f758b;
}
.alert-box.-success {
  border-color: #789d4a;
}
.alert-box.-success .alert-box__icon {
  background-color: #789d4a;
}

/*------------------------------------*\
   Progress indicator
\*------------------------------------*/
.progress {
  display: block;
  /*** title ***/
  /*** individual step ***/
  /** current Style **/
  /** done Style **/
  /*------------------------------------*\
     Mobile Display
  \*------------------------------------*/
  /** Auto Width using Flext Box**/
}
.progress__title {
  width: 100%;
}
.progress__step {
  display: inline-block;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .progress__step {
    vertical-align: top;
  }
}
.progress__step .step-name {
  width: 5em;
  display: inline-block;
  font-family: "Times New Roman", serif;
  font-weight: bold;
  color: #777777;
  vertical-align: middle;
  text-align: left;
}
@media screen and (max-width: 600px) {
  .progress__step .step-name {
    display: none;
  }
}
.progress__ind {
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  text-align: center;
  color: white;
  font-weight: bold;
  font-size: 1.5em;
  vertical-align: middle;
  background: #777777;
}
@media screen and (max-width: 767px) {
  .progress__ind {
    width: 1.25em;
    height: 1.25em;
    font-size: 1em;
    vertical-align: top;
  }
}
.progress__arrow {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: .5em 0 .5em .75em;
  border-color: transparent transparent transparent #777777;
  display: inline-block;
  vertical-align: middle;
  margin: auto .5em;
}
@media screen and (max-width: 767px) {
  .progress__arrow {
    vertical-align: top;
  }
}
.progress .-current .step-name {
  color: #789d4a;
}
@media screen and (max-width: 600px) {
  .progress .-current .step-name {
    display: inline-block;
  }
}
.progress .-current .progress__ind {
  background-color: #789d4a;
}
.progress .-current .progress__arrow {
  border-color: transparent transparent transparent #789d4a;
}
.progress .-done .step-name {
  color: #4f758b;
}
.progress .-done .progress__ind {
  background-color: #4f758b;
}
.progress .-done .progress__arrow {
  border-color: transparent transparent transparent #4f758b;
}
@media screen and (max-width: 767px) {
  .progress {
    margin-top: 20px;
  }
}
.progress--auto-width {
  display: -webkit-flex;
  display: flex;
  align-content: space-between;
  flex-wrap: wrap;
}
.progress--auto-width .progress__step {
  margin: auto;
  display: -webkit-flex;
  display: flex;
  align-content: space-between;
  align-items: center;
}
.progress--auto-width .progress__step .progress__ind {
  width: 22px;
  height: 22px;
  flex: none;
}
@media screen and (min-width: 767px) {
  .progress--auto-width .progress__step .progress__ind {
    width: 30px;
    height: 30px;
    line-height: 30px;
  }
}
.progress--auto-width .progress__step .step-name {
  min-width: 8em;
  width: auto;
  margin: auto;
  padding: .5em;
}

/* Creditcard.js v0.10.13 | Copyright (c) 2016 Creditcard.js | creditcardjs.com/licensing */
#main .ccjs-card input::-webkit-input-placeholder, #main .ccjs-card-style input::-webkit-input-placeholder {
  letter-spacing: .15em;
  color: #999;
}
#main .ccjs-card input:-moz-placeholder, #main .ccjs-card-style input:-moz-placeholder {
  letter-spacing: .15em;
  color: #999;
  line-height: 1.75;
}
#main .ccjs-card input::-moz-placeholder, #main .ccjs-card-style input::-moz-placeholder {
  letter-spacing: .15em;
  color: #999;
  line-height: 1.75;
}
#main .ccjs-card div, #main .ccjs-card-style div {
  margin: 0;
  padding: 0;
}
#main .ccjs-card input, #main .ccjs-card-style input, #main .ccjs-card select, #main .ccjs-card-style select, #main .ccjs-card label, #main .ccjs-card-style label, #main .ccjs-card fieldset, #main .ccjs-card-style fieldset, #main .ccjs-card legend, #main .ccjs-card-style legend, #main .ccjs-card button, #main .ccjs-card-style button {
  position: relative;
  padding: 0;
  margin: 0;
  float: none;
  display: block;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  -ms-box-sizing: content-box;
  box-sizing: content-box;
  font-family: "Arial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1em;
  z-index: 2;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#main .ccjs-card fieldset, #main .ccjs-card-style fieldset {
  border: 0;
}
#main .ccjs-card label, #main .ccjs-card-style label, #main .ccjs-card legend, #main .ccjs-card-style legend, #main .ccjs-card fieldset, #main .ccjs-card-style fieldset {
  line-height: 1.5em;
  height: 1.5em;
  color: #5e656b;
  border: 0;
}
#main .ccjs-card input, #main .ccjs-card-style input, #main .ccjs-card select, #main .ccjs-card-style select, #main .ccjs-card button, #main .ccjs-card-style button {
  border: 1px solid #c7cbce;
}
#main .ccjs-card input:focus, #main .ccjs-card-style input:focus, #main .ccjs-card select:focus, #main .ccjs-card-style select:focus, #main .ccjs-card button:focus, #main .ccjs-card-style button:focus {
  outline: 0;
  border: 1px solid #ffcd78;
  -webkit-box-shadow: inset 0 0 3px rgba(255, 195, 94, 0.9);
  -moz-box-shadow: inset 0 0 3px rgba(255, 195, 94, 0.9);
  box-shadow: inset 0 0 3px rgba(255, 195, 94, 0.9);
}
#main .ccjs-card input, #main .ccjs-card-style input, #main .ccjs-card select, #main .ccjs-card-style select {
  background-color: #fff;
  color: #5e656b;
  font-size: 1.1em;
  line-height: 1;
  height: 36px;
}
#main .ccjs-card input, #main .ccjs-card-style input {
  padding-left: .25em;
  line-height: 2em\9;
}
#main .ccjs-card input::-ms-clear, #main .ccjs-card-style input::-ms-clear {
  display: none;
}
#main .ccjs-card select, #main .ccjs-card-style select {
  color: #767f86;
  height: 1.5em\9;
  padding: .25em 0\9;
}
#main .ccjs-card input::-webkit-autofill, #main .ccjs-card-style input::-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #fff inset;
  box-shadow: 0 0 0 1000px #fff inset;
}
#main .ccjs-card .ccjs-csc-diagram, #main .ccjs-card-style .ccjs-csc-diagram, #main .ccjs-card .ccjs-csc-diagram-amex, #main .ccjs-card-style .ccjs-csc-diagram-amex {
  opacity: 0;
  filter: alpha(opacity=0);
  visibility: hidden;
  -webkit-transition: opacity .3s 0s, visibility 0s .3s;
  -moz-transition: opacity .3s 0s, visibility 0s .3s;
  -o-transition: opacity .3s 0s, visibility 0s .3s;
  transition: opacity .3s 0s, visibility 0s .3s;
  z-index: 1;
  font-size: .6875em;
  background-color: #fafafa;
  position: absolute;
  left: 100%;
  margin-left: 1em;
  -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.05);
  -moz-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.05);
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.05);
  color: #767f86;
  z-index: 1000000;
}
#main .ccjs-card .ccjs-csc-diagram .ccjs-card-code, #main .ccjs-card-style .ccjs-csc-diagram .ccjs-card-code, #main .ccjs-card .ccjs-csc-diagram-amex .ccjs-card-code, #main .ccjs-card-style .ccjs-csc-diagram-amex .ccjs-card-code {
  color: #78d216;
}
#main .ccjs-card .ccjs-csc-diagram .ccjs-explanation, #main .ccjs-card-style .ccjs-csc-diagram .ccjs-explanation, #main .ccjs-card .ccjs-csc-diagram-amex .ccjs-explanation, #main .ccjs-card-style .ccjs-csc-diagram-amex .ccjs-explanation {
  padding: .5em;
  font-size: 1.2em;
}
#main .ccjs-card .ccjs-csc-diagram .ccjs-close, #main .ccjs-card-style .ccjs-csc-diagram .ccjs-close, #main .ccjs-card .ccjs-csc-diagram-amex .ccjs-close, #main .ccjs-card-style .ccjs-csc-diagram-amex .ccjs-close {
  color: rgba(0, 0, 0, 0.4);
  font-size: 2.25em;
  top: 0;
  left: 100%;
  width: .9em;
  margin-left: -.45em;
  margin-top: -.45em;
  height: .9em;
  line-height: .9em;
  background: #fff;
  -webkit-border-radius: .2em;
  -moz-border-radius: .2em;
  border-radius: .2em;
  border: 0;
  position: absolute;
  -webkit-box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.2);
}
#main .ccjs-card .ccjs-csc-diagram .ccjs-close:hover, #main .ccjs-card-style .ccjs-csc-diagram .ccjs-close:hover, #main .ccjs-card .ccjs-csc-diagram-amex .ccjs-close:hover, #main .ccjs-card-style .ccjs-csc-diagram-amex .ccjs-close:hover {
  cursor: pointer;
}
#main .ccjs-card .ccjs-csc-diagram .ccjs-close:active, #main .ccjs-card-style .ccjs-csc-diagram .ccjs-close:active, #main .ccjs-card .ccjs-csc-diagram-amex .ccjs-close:active, #main .ccjs-card-style .ccjs-csc-diagram-amex .ccjs-close:active {
  background: #e6e6e6;
}
#main .ccjs-card .ccjs-csc-diagram-amex .ccjs-close, #main .ccjs-card-style .ccjs-csc-diagram-amex .ccjs-close {
  display: none;
}
#main .ccjs-card .ccjs-csc-diagram, #main .ccjs-card-style .ccjs-csc-diagram {
  bottom: 52%;
}
#main .ccjs-card .ccjs-csc-diagram .ccjs-barcode, #main .ccjs-card-style .ccjs-csc-diagram .ccjs-barcode {
  height: 2em;
  width: 100%;
  background-color: #5e656b;
  margin-top: 2em;
}
#main .ccjs-card .ccjs-csc-diagram .ccjs-signature, #main .ccjs-card-style .ccjs-csc-diagram .ccjs-signature {
  background-color: #fafafa;
  display: inline-block;
  padding: .5em;
  margin-top: 1em;
  margin-left: 1em;
}
#main .ccjs-card .ccjs-csc-diagram .ccjs-card-code, #main .ccjs-card-style .ccjs-csc-diagram .ccjs-card-code {
  padding: .5em 1em;
  display: inline-block;
  background-color: #fff;
}
#main .ccjs-card .ccjs-csc-diagram-amex, #main .ccjs-card-style .ccjs-csc-diagram-amex {
  top: 52%;
}
#main .ccjs-card .ccjs-csc-diagram-amex .ccjs-card-number, #main .ccjs-card-style .ccjs-csc-diagram-amex .ccjs-card-number {
  margin-top: 3.85em;
  text-align: center;
  width: 100%;
  font-size: 1.5em;
  letter-spacing: .15em;
}
#main .ccjs-card .ccjs-csc-diagram-amex .ccjs-card-code, #main .ccjs-card-style .ccjs-csc-diagram-amex .ccjs-card-code {
  position: absolute;
  top: 0;
  margin-top: 4.8125em;
  margin-right: 3em;
  right: 0;
}
#main .ccjs-card label.ccjs-csc, #main .ccjs-card-style label.ccjs-csc {
  position: absolute;
  right: 1.5em;
  bottom: 4.75em;
  text-align: right;
  z-index: 3;
  width: 7.5em;
  white-space: nowrap;
}
#main .ccjs-card label.ccjs-csc input, #main .ccjs-card-style label.ccjs-csc input {
  right: 25px;
  top: 25px;
  position: absolute;
  width: 60px;
  min-width: 60px;
}
#main .ccjs-card .ccjs-csc-diagram-wrapper.ccjs-active .ccjs-csc-diagram, #main .ccjs-card-style .ccjs-csc-diagram-wrapper.ccjs-active .ccjs-csc-diagram, #main .ccjs-card .ccjs-csc-diagram-wrapper.ccjs-active .ccjs-csc-diagram-amex, #main .ccjs-card-style .ccjs-csc-diagram-wrapper.ccjs-active .ccjs-csc-diagram-amex {
  opacity: 1;
  filter: alpha(opacity=100);
  visibility: visible;
  -webkit-transition: opacity .3s 0s, visibility 0s 0s;
  -moz-transition: opacity .3s 0s, visibility 0s 0s;
  -o-transition: opacity .3s 0s, visibility 0s 0s;
  transition: opacity .3s 0s, visibility 0s 0s;
}
#main .ccjs-card button.ccjs-csc-help, #main .ccjs-card-style button.ccjs-csc-help, #main .ccjs-card label.ccjs-csc-help, #main .ccjs-card-style label.ccjs-csc-help {
  display: block;
  font-size: 1em;
  background-color: #f2f2f2;
  color: #5e656b;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 1.5em;
  height: 36px;
  line-height: 2.5em;
  *height: 2.6em;
  text-align: center;
  position: absolute;
  right: 1.5em;
  bottom: 37px;
}
#main .ccjs-card button.ccjs-csc-help:focus, #main .ccjs-card-style button.ccjs-csc-help:focus, #main .ccjs-card label.ccjs-csc-help:focus, #main .ccjs-card-style label.ccjs-csc-help:focus {
  z-index: 4;
}
#main .ccjs-card button.ccjs-csc-help:active, #main .ccjs-card-style button.ccjs-csc-help:active, #main .ccjs-card label.ccjs-csc-help:active, #main .ccjs-card-style label.ccjs-csc-help:active, #main .ccjs-card button.ccjs-csc-help.ccjs-active, #main .ccjs-card-style button.ccjs-csc-help.ccjs-active, #main .ccjs-card label.ccjs-csc-help.ccjs-active, #main .ccjs-card-style label.ccjs-csc-help.ccjs-active {
  background-color: #e6e6e6;
  background-image: -moz-linear-gradient(top, #e6e6e6, #f2f2f2);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, left, right);
  background-image: -webkit-linear-gradient(top, #e6e6e6, #f2f2f2);
  background-image: -o-linear-gradient(top, #e6e6e6, #f2f2f2);
  background-image: linear-gradient(to bottom, #e6e6e6, #f2f2f2);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe6e6e6', endColorstr='#fff2f2f2', GradientType=0);
  -webkit-box-shadow: inset 0 2px 3px #ccc;
  -moz-box-shadow: inset 0 2px 3px #ccc;
  box-shadow: inset 0 2px 3px #ccc;
}
#main .ccjs-card button.ccjs-csc-help:active:after, #main .ccjs-card-style button.ccjs-csc-help:active:after, #main .ccjs-card label.ccjs-csc-help:active:after, #main .ccjs-card-style label.ccjs-csc-help:active:after, #main .ccjs-card button.ccjs-csc-help.ccjs-active:after, #main .ccjs-card-style button.ccjs-csc-help.ccjs-active:after, #main .ccjs-card label.ccjs-csc-help.ccjs-active:after, #main .ccjs-card-style label.ccjs-csc-help.ccjs-active:after {
  display: block;
}
#main .ccjs-card button.ccjs-csc-help:hover, #main .ccjs-card-style button.ccjs-csc-help:hover, #main .ccjs-card label.ccjs-csc-help:hover, #main .ccjs-card-style label.ccjs-csc-help:hover {
  cursor: pointer;
}
#main .ccjs-card.ccjs-card-type-set .ccjs-csc-diagram, #main .ccjs-card-style.ccjs-card-type-set .ccjs-csc-diagram {
  display: block;
  top: 3.18181818em;
}
#main .ccjs-card.ccjs-card-type-set .ccjs-csc-diagram-amex, #main .ccjs-card-style.ccjs-card-type-set .ccjs-csc-diagram-amex {
  display: none;
}
#main .ccjs-card.ccjs-amex .ccjs-csc-diagram, #main .ccjs-card-style.ccjs-amex .ccjs-csc-diagram {
  display: none;
}
#main .ccjs-card.ccjs-amex .ccjs-csc-diagram-amex, #main .ccjs-card-style.ccjs-amex .ccjs-csc-diagram-amex {
  display: block;
  top: 3.18181818em;
}
#main .ccjs-card.ccjs-amex .ccjs-csc-diagram-amex .ccjs-close, #main .ccjs-card-style.ccjs-amex .ccjs-csc-diagram-amex .ccjs-close {
  display: block;
}
@media (max-width: 57.2em) {
  #main .ccjs-card .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled) .ccjs-csc-diagram, #main .ccjs-card-style .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled) .ccjs-csc-diagram, #main .ccjs-card .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled) .ccjs-csc-diagram-amex, #main .ccjs-card-style .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled) .ccjs-csc-diagram-amex {
    margin-left: 0;
    right: 0;
    left: auto;
  }
  #main .ccjs-card .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled) .ccjs-csc-diagram-amex, #main .ccjs-card-style .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled) .ccjs-csc-diagram-amex {
    top: 100%;
    margin-top: 1em;
  }
  #main .ccjs-card .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled) .ccjs-csc-diagram, #main .ccjs-card-style .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled) .ccjs-csc-diagram {
    top: auto;
    bottom: 100%;
    margin-bottom: 1em;
  }
  #main .ccjs-card .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled).ccjs-card-type-set .ccjs-csc-diagram, #main .ccjs-card-style .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled).ccjs-card-type-set .ccjs-csc-diagram, #main .ccjs-card .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled).ccjs-card-type-set .ccjs-csc-diagram-amex, #main .ccjs-card-style .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled).ccjs-card-type-set .ccjs-csc-diagram-amex {
    top: auto;
    bottom: 100%;
    margin-bottom: 1em;
  }
}
#main .ccjs-card.ccjs-card-type-error .ccjs-type-read-only, #main .ccjs-card-style.ccjs-card-type-error .ccjs-type-read-only {
  color: #f54828;
  opacity: 1;
  filter: alpha(opacity=100);
}
#main .ccjs-card.ccjs-visa .ccjs-type-read-only, #main .ccjs-card-style.ccjs-visa .ccjs-type-read-only, #main .ccjs-card.ccjs-visa-electron .ccjs-type-read-only, #main .ccjs-card-style.ccjs-visa-electron .ccjs-type-read-only {
  color: #1261cd;
  background-color: rgba(18, 97, 205, 0.05);
  border: 1px solid rgba(18, 97, 205, 0.15);
  border-bottom: 0;
  opacity: 1;
  filter: alpha(opacity=100);
}
#main .ccjs-card.ccjs-laser .ccjs-type-read-only, #main .ccjs-card-style.ccjs-laser .ccjs-type-read-only {
  color: #b266ff;
  background-color: rgba(178, 102, 255, 0.05);
  border: 1px solid rgba(178, 102, 255, 0.15);
  border-bottom: 0;
  opacity: 1;
  filter: alpha(opacity=100);
}
#main .ccjs-card.ccjs-maestro .ccjs-type-read-only, #main .ccjs-card-style.ccjs-maestro .ccjs-type-read-only {
  color: #0066cb;
  background-color: rgba(0, 102, 203, 0.05);
  border: 1px solid rgba(0, 102, 203, 0.15);
  border-bottom: 0;
  opacity: 1;
  filter: alpha(opacity=100);
}
#main .ccjs-card.ccjs-unionpay .ccjs-type-read-only, #main .ccjs-card-style.ccjs-unionpay .ccjs-type-read-only {
  color: #f03;
  background-color: rgba(255, 0, 51, 0.05);
  border: 1px solid rgba(255, 0, 51, 0.15);
  border-bottom: 0;
  opacity: 1;
  filter: alpha(opacity=100);
}
#main .ccjs-card.ccjs-jcb .ccjs-type-read-only, #main .ccjs-card-style.ccjs-jcb .ccjs-type-read-only {
  color: #2b9738;
  background-color: rgba(42, 151, 56, 0.05);
  border: 1px solid rgba(42, 151, 56, 0.15);
  border-bottom: 0;
  opacity: 1;
  filter: alpha(opacity=100);
}
#main .ccjs-card.ccjs-diners-club .ccjs-type-read-only, #main .ccjs-card-style.ccjs-diners-club .ccjs-type-read-only {
  color: #0079be;
  background-color: rgba(0, 121, 190, 0.05);
  border: 1px solid rgba(0, 121, 190, 0.15);
  border-bottom: 0;
  opacity: 1;
  filter: alpha(opacity=100);
}
#main .ccjs-card.ccjs-amex .ccjs-type-read-only, #main .ccjs-card-style.ccjs-amex .ccjs-type-read-only {
  color: #2e77bc;
  background-color: rgba(46, 119, 188, 0.05);
  border: 1px solid rgba(46, 119, 188, 0.15);
  border-bottom: 0;
  opacity: 1;
  filter: alpha(opacity=100);
}
#main .ccjs-card.ccjs-discover .ccjs-type-read-only, #main .ccjs-card-style.ccjs-discover .ccjs-type-read-only {
  color: #f79b00;
  background-color: rgba(247, 155, 0, 0.05);
  border: 1px solid rgba(247, 155, 0, 0.15);
  border-bottom: 0;
  opacity: 1;
  filter: alpha(opacity=100);
}
#main .ccjs-card.ccjs-mastercard .ccjs-type-read-only, #main .ccjs-card-style.ccjs-mastercard .ccjs-type-read-only {
  color: #f67214;
  background-color: rgba(246, 114, 20, 0.05);
  border: 1px solid rgba(246, 114, 20, 0.15);
  border-bottom: 0;
  opacity: 1;
  filter: alpha(opacity=100);
}
#main .ccjs-card.ccjs-dankort .ccjs-type-read-only, #main .ccjs-card-style.ccjs-dankort .ccjs-type-read-only {
  color: #ed1c24;
  background-color: rgba(237, 28, 36, 0.05);
  border: 1px solid rgba(237, 28, 36, 0.15);
  border-bottom: 0;
  opacity: 1;
  filter: alpha(opacity=100);
}
#main .ccjs-card .ccjs-type-read-only, #main .ccjs-card-style .ccjs-type-read-only {
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all .5s;
  -moz-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
  content: ' ';
  position: absolute;
  bottom: 0;
  right: 1.36363636em;
  color: #fff;
  background: 0;
  font-size: 1.1em;
  padding: .18181818em .45454545em;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-bottom: 0;
  z-index: 1;
  width: auto !important;
  margin: 0;
}
#main .ccjs-card .ccjs-hidden-card-type, #main .ccjs-card-style .ccjs-hidden-card-type {
  position: absolute;
  bottom: 0;
  right: 1.5em;
  font-size: 1em;
  display: none !important;
}
#main .ccjs-card.ccjs-center-csc-diagram .ccjs-csc-diagram, #main .ccjs-card-style.ccjs-center-csc-diagram .ccjs-csc-diagram, #main .ccjs-card.ccjs-center-csc-diagram .ccjs-csc-diagram-amex, #main .ccjs-card-style.ccjs-center-csc-diagram .ccjs-csc-diagram-amex {
  left: auto !important;
  top: auto !important;
  bottom: auto !important;
  margin: 0 !important;
  right: 6em !important;
}
#main .ccjs-card.ccjs-center-csc-diagram .ccjs-csc-diagram, #main .ccjs-card-style.ccjs-center-csc-diagram .ccjs-csc-diagram {
  bottom: 52% !important;
}
#main .ccjs-card.ccjs-center-csc-diagram .ccjs-csc-diagram-amex, #main .ccjs-card-style.ccjs-center-csc-diagram .ccjs-csc-diagram-amex {
  top: 52% !important;
}
#main .ccjs-card.ccjs-center-csc-diagram.ccjs-card-type-set .ccjs-csc-diagram, #main .ccjs-card-style.ccjs-center-csc-diagram.ccjs-card-type-set .ccjs-csc-diagram {
  display: block;
  top: 3.18182em !important;
}
#main .ccjs-card.ccjs-center-csc-diagram.ccjs-card-type-set .ccjs-csc-diagram-amex, #main .ccjs-card-style.ccjs-center-csc-diagram.ccjs-card-type-set .ccjs-csc-diagram-amex {
  display: none;
}
#main .ccjs-card.ccjs-center-csc-diagram.ccjs-amex .ccjs-csc-diagram, #main .ccjs-card-style.ccjs-center-csc-diagram.ccjs-amex .ccjs-csc-diagram {
  display: none;
}
#main .ccjs-card.ccjs-center-csc-diagram.ccjs-amex .ccjs-csc-diagram-amex, #main .ccjs-card-style.ccjs-center-csc-diagram.ccjs-amex .ccjs-csc-diagram-amex {
  display: block;
  top: 3.18182em !important;
}
#main .ccjs-card {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  -ms-box-sizing: content-box;
  box-sizing: content-box;
  background: #fafafa;
  font-size: 16px;
  font-family: 'Source Sans Pro', Helvtica, Arial, san-serif;
  text-align: left;
  position: relative;
  z-index: 10000;
  margin: 1em auto;
  border: 1px solid #dbdbdb;
}
#main .ccjs-card, #main .ccjs-card .ccjs-csc-diagram, #main .ccjs-card .ccjs-csc-diagram-amex {
  width: 23em !important;
  height: 14em !important;
  -webkit-border-radius: .75em;
  -moz-border-radius: .75em;
  border-radius: .75em;
}
#main .ccjs-card .ccjs-csc-diagram, #main .ccjs-card .ccjs-csc-diagram-amex {
  border: 1px solid #c2c2c2;
}
#main .ccjs-card label.ccjs-number {
  top: 2.25em;
  left: 1.5em;
  width: 13.25em;
  position: relative;
}
#main .ccjs-card label.ccjs-number input {
  width: 175px;
  position: absolute;
  z-index: 0;
  top: 25px;
  left: 0;
}
#main .ccjs-card label.ccjs-number input.ccjs-hidden {
  visibility: hidden;
}
#main .ccjs-card label.ccjs-number input.ccjs-number-formatted {
  z-index: 1;
}
#main .ccjs-card .ccjs-expiration {
  position: absolute;
  top: 2.25em;
  right: 1.5em;
  width: 8em;
}
#main .ccjs-card .ccjs-expiration select {
  font-size: 1em;
  *font-size: 1.5em;
  height: 2.5 em;
}
#main .ccjs-card .ccjs-expiration legend {
  *left: -.5em;
}
#main .ccjs-card .ccjs-expiration .ccjs-month, #main .ccjs-card .ccjs-expiration .ccjs-year {
  width: 3.5em;
  min-width: 3.5em;
  *width: 2.8333333333333335em;
  position: absolute;
  *margin-top: 1px;
  height: 2.5em;
}
#main .ccjs-card .ccjs-expiration .ccjs-year {
  right: 0;
}
#main .ccjs-card .ccjs-expiration:after {
  content: '/';
  position: absolute;
  line-height: 2;
  left: 3.5em;
  width: 1em;
  text-align: center;
}
#main .ccjs-card label.ccjs-name {
  position: absolute;
  bottom: 4.75em;
  left: 1.5em;
  width: 13.5em;
}
#main .ccjs-card label.ccjs-name input {
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  top: 25px;
  font-size: 1em;
  height: 36px;
}
#main .ccjs-card:not(:-moz-handler-blocked) select {
  padding: .25em 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
#main .ccjs-incomplete.ccjs-startedProgress {
  border: 1px solid #ffa712;
}
#main fieldset.ccjs-incomplete.ccjs-startedProgress {
  border: 0;
}
#main .ccjs-show-warnings input.ccjs-incomplete, #main .ccjs-show-warnings select.ccjs-incomplete, #main .ccjs-show-warnings fieldset.ccjs-incomplete select, #main .ccjs-show-warnings fieldset.ccjs-incomplete input {
  border: 1px solid #ffa712;
  -webkit-box-shadow: 0 0 3px #f79b00;
  -moz-box-shadow: 0 0 3px #f79b00;
  box-shadow: 0 0 3px #f79b00;
}
#main .ccjs-always-show-warnings input.ccjs-incomplete, #main .ccjs-always-show-warnings select.ccjs-incomplete, #main .ccjs-always-show-warnings fieldset.ccjs-incomplete select, #main .ccjs-always-show-warnings fieldset.ccjs-incomplete input {
  border: 1px solid #ffa712;
}
#main input.ccjs-complete, #main select.ccjs-complete, #main fieldset.ccjs-complete select, #main fieldset.ccjs-complete input {
  border: 1px solid #78d216 !important;
}
#main input.ccjs-complete:focus, #main select.ccjs-complete:focus, #main fieldset.ccjs-complete select:focus, #main fieldset.ccjs-complete input:focus {
  -webkit-box-shadow: inset 0 0 3px rgba(107, 187, 20, 0.5);
  -moz-box-shadow: inset 0 0 3px rgba(107, 187, 20, 0.5);
  box-shadow: inset 0 0 3px rgba(107, 187, 20, 0.5);
}
#main input.ccjs-error, #main select.ccjs-error, #main fieldset.ccjs-error select, #main fieldset.ccjs-error input {
  border: 1px solid #fa9b89 !important;
}
#main input.ccjs-error:focus, #main select.ccjs-error:focus, #main fieldset.ccjs-error select:focus, #main fieldset.ccjs-error input:focus {
  -webkit-box-shadow: inset 0 0 3px #f54828;
  -moz-box-shadow: inset 0 0 3px #f54828;
  box-shadow: inset 0 0 3px #f54828;
}
@media screen and (max-width: 480px) {
  #main .ccjs-card {
    height: 23em !important;
    width: auto !important;
    min-width: 278px;
  }
  #main .ccjs-card .ccjs-expiration {
    top: 7.0em;
    left: 1.5em;
  }
  #main .ccjs-card label.ccjs-name {
    top: 12.25em;
    left: 1.5em;
  }
  #main .ccjs-card label.ccjs-csc {
    text-align: left;
    left: 1.5em;
    top: 16.75em;
  }
  #main .ccjs-card label.ccjs-csc input {
    left: 0;
  }
  #main .ccjs-card button.ccjs-csc-help {
    left: 6.5em;
  }
  #main .ccjs-card .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled) .ccjs-csc-diagram,
  #main .ccjs-card .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled) .ccjs-csc-diagram-amex,
  #main .ccjs-card-style .ccjs-csc-diagram-wrapper:not(.ccjs-media-query-disabled) .ccjs-csc-diagram-amex {
    position: fixed;
    left: 1em;
    top: 2em;
  }
}

.spinner__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 20;
  background-color: rgba(68, 68, 68, 0.8);
  /*dim the background*/
}

.spinner__wrapper {
  box-sizing: border-box;
  width: 300px;
  padding: 3em 0 6em;
  border-radius: 5px;
  text-align: center;
  margin: 25px auto;
  color: white;
}
@media screen and (min-height: 500px) {
  .spinner__wrapper {
    margin: 50px auto;
  }
}
.spinner__inline .spinner__wrapper {
  margin-top: 0;
  padding-top: 0;
}
.spinner--white .spinner__wrapper {
  color: #aaaaaa;
}

.spinner {
  width: 108px;
  height: 92px;
  margin: 30px auto;
  position: relative;
  -webkit-animation: rotateit 2s linear infinite;
  animation: rotateit 2s linear infinite;
}

@-webkit-keyframes rotateit {
  from {
    -webkit-transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes rotateit {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.spinner__dots div {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: white;
  position: absolute;
  top: 35px;
  left: 45px;
}
.spinner--white .spinner__dots div {
  background: #aaaaaa;
}

.spinner__dots div:nth-child(10) {
  -webkit-transform: rotate(0deg) translate(0, -35px) scale(1.1);
  transform: rotate(0deg) translate(0, -35px) scale(1.1);
}

.spinner__dots div:nth-child(9) {
  -webkit-transform: rotate(-36deg) translate(0, -35px) scale(1);
  transform: rotate(-36deg) translate(0, -35px) scale(1);
}

.spinner__dots div:nth-child(8) {
  -webkit-transform: rotate(-72deg) translate(35px, 0) scale(0.9);
  transform: rotate(-72deg) translate(0, -35px) scale(0.95);
}

.spinner__dots div:nth-child(7) {
  -webkit-transform: rotate(-108deg) translate(0, -35px) scale(0.85);
  transform: rotate(-108deg) translate(0, -35px) scale(0.85);
}

.spinner__dots div:nth-child(6) {
  -webkit-transform: rotate(-144deg) translate(0, -35px) scale(0.8);
  transform: rotate(-144deg) translate(0, -35px) scale(0.8);
}

.spinner__dots div:nth-child(5) {
  -webkit-transform: rotate(-180deg) translate(0, -35px) scale(0.75);
  transform: rotate(-180deg) translate(0, -35px) scale(0.75);
}

.spinner__dots div:nth-child(4) {
  -webkit-transform: rotate(-216deg) translate(0, -35px) scale(0.7);
  transform: rotate(-216deg) translate(0, -35px) scale(0.7);
}

.spinner__dots div:nth-child(3) {
  -webkit-transform: rotate(-252deg) translate(0, -35px) scale(0.65);
  transform: rotate(-252deg) translate(0, -35px) scale(0.65);
}

.spinner__dots div:nth-child(2) {
  -webkit-transform: rotate(-288deg) translate(0, -35px) scale(0.5);
  transform: rotate(-288deg) translate(0, -35px) scale(0.5);
}

.spinner__dots div:nth-child(1) {
  -webkit-transform: rotate(-324deg) translate(0, -35px) scale(0.4);
  transform: rotate(-324deg) translate(0, -35px) scale(0.4);
}

.gbl-note__wrapper {
  bottom: 0;
  position: fixed;
  text-align: center;
  display: block;
  z-index: 9000;
}
@media screen and (min-width: 768px) {
  .gbl-note__wrapper {
    width: 100%;
  }
}
@media screen and (min-width: 600px) and (max-width: 767px) {
  .gbl-note__wrapper {
    width: 585px;
  }
}
@media screen and (min-width: 480px) and (max-width: 599px) {
  .gbl-note__wrapper {
    width: 480px;
  }
}
@media screen and (max-width: 479px) {
  .gbl-note__wrapper {
    width: 320px;
  }
}

.global-notification, .gbl-note {
  position: relative;
  padding: 10px 20px 0;
  background-color: #666666;
  margin: 0 auto;
  max-width: 700px;
}
@media screen and (min-width: 768px) {
  .global-notification, .gbl-note {
    width: 75%;
  }
}
@media screen and (max-width: 767px) {
  .global-notification, .gbl-note {
    margin: 0px;
  }
}

.gbl-note__message {
  color: white;
  font-weight: bold;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .gbl-note__message {
    float: left;
    width: 60%;
  }
}

.gbl-note__action {
  float: left;
}
@media screen and (min-width: 768px) {
  .gbl-note__action {
    float: right;
    margin-top: 10px;
    margin-right: 1em;
  }
}

.gbl-note__close {
  float: right;
  margin-left: 1.5em;
  color: white !important;
  font-size: .9em;
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .gbl-note__close {
    margin-top: 12px;
  }
}

/** States **/
.gbl-note--danger {
  background-color: #9e2a2f;
}

.gbl-note--info {
  background-color: #4f758b;
}

.gbl-note--good {
  background-color: #789d4a;
}

.gbl-note--warning {
  background-color: #cf7f00;
}

.tabs {
  border-bottom: 1px solid #aaaaaa;
  background-color: white;
}

.tab {
  display: inline-block;
  background: white;
  padding: 0.7em 2em;
  margin: 0;
  position: relative;
  font-size: 1em;
  color: #999999;
  border-right: 1px solid white;
  border-left: 1px solid white;
}
.tab:hover {
  border-top: 3px solid #db9f40;
  border-right: 1px solid #ececec;
  border-left: 1px solid #ececec;
  text-decoration: none;
  color: #666666;
}
.tab__current {
  border-top: 3px solid #cf7f00;
  border-right: 1px solid #aaaaaa;
  border-left: 1px solid #aaaaaa;
  border-bottom-color: transparent;
  margin-bottom: -2px;
  color: #444444;
  cursor: initial;
}
.tab__current:hover {
  border-top: 3px solid #cf7f00;
  border-right: 1px solid #aaaaaa;
  border-left: 1px solid #aaaaaa;
  border-bottom: 2px solid white;
  background-color: #d3d3d3;
}

/** Hacks and Overrides **/
a.tab, a.tab:visited {
  color: #999999;
}
a.tab:hover, a.tab:visited:hover {
  color: #666666;
}
a.tab.tab__current, a.tab:visited.tab__current {
  color: #444444;
}

.mini-dashboard {
  background: white;
  border: 1px solid #dadada;
  max-width: 500px;
  margin: 1em auto;
  padding: 1em;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .mini-dashboard {
    margin-top: 0;
  }
}
.mini-dashboard__title {
  color: #444444;
  font-size: 1.6em;
  font-weight: 400;
  line-height: 1.1em;
  margin: 0 0 5px;
  padding: 0;
}
.mini-dashboard__more {
  font-size: .7em;
  margin-left: .5em;
  text-decoration: underline;
  display: none;
}
@media only screen and (min-width: 480px) {
  .mini-dashboard__more {
    display: inline;
  }
}
.mini-dashboard__wrapper {
  display: flex;
  flex-flow: row wrap;
}
@media only screen and (min-width: 480px) {
  .mini-dashboard__wrapper {
    align-items: center;
  }
}
@media only screen and (min-width: 768px) {
  .mini-dashboard__wrapper {
    align-items: initial;
  }
}
@media only screen and (min-width: 980px) {
  .mini-dashboard__wrapper {
    align-items: center;
  }
}

.dashboard-numeric {
  color: #666666;
  padding: .5em .5em 0 0;
  flex-grow: 1;
}
.dashboard-numeric__numeral {
  font-size: 2em;
}
.dashboard-numeric__desc {
  display: block;
  text-decoration: underline;
  padding: 0;
  margin: 0;
}

.dashboard-alpha {
  color: #666666;
  padding: .5em .5em 0 0;
  flex-grow: 1;
}
.dashboard-alpha__label {
  font-size: .8em;
}
@media only screen and (min-width: 480px) {
  .dashboard-alpha__label {
    font-size: 1em;
  }
}
@media only screen and (min-width: 768px) {
  .dashboard-alpha__label {
    font-size: .8em;
  }
}
@media only screen and (min-width: 980px) {
  .dashboard-alpha__label {
    font-size: 1em;
  }
}
.dashboard-alpha__value {
  font-weight: bold;
  display: block;
}
@media only screen and (min-width: 480px) {
  .dashboard-alpha__value {
    font-size: 1.5em;
    font-weight: normal;
  }
}
@media only screen and (min-width: 768px) {
  .dashboard-alpha__value {
    font-size: 1em;
  }
}
@media only screen and (min-width: 980px) {
  .dashboard-alpha__value {
    font-size: 2em;
  }
}
.dashboard-alpha__value--good, .dashboard-alpha__value--good:hover {
  color: #789d4a;
}
.dashboard-alpha__value--warning, .dashboard-alpha__value--warning:hover {
  color: #cf7f00;
}
.dashboard-alpha__value--danger, .dashboard-alpha__value--danger:hover {
  color: #9e2a2f;
}
.dashboard-alpha__button {
  float: left;
  clear: both;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 10px;
}
@media only screen and (min-width: 980px) {
  .dashboard-alpha__button {
    clear: both;
    width: 90% !important;
    text-align: center;
    margin-bottom: 0 !important;
    margin-top: 1em;
    margin-right: 0;
  }
  .dashboard-alpha__button:first-child {
    margin-top: 0;
  }
}

/* Template Specific Changes */
.my-quizzes-and-courses .mini-dashboard {
  border: 0;
}
@media only screen and (min-width: 768px) {
  .my-quizzes-and-courses .mini-dashboard {
    float: left;
    width: 50%;
  }
}
.my-quizzes-and-courses .mini-dashboard--hidable {
  display: none;
}
.my-quizzes-and-courses .mini-dashboard--mobile-hide {
  display: none;
}
@media only screen and (min-width: 768px) {
  .my-quizzes-and-courses .mini-dashboard--mobile-hide {
    display: block;
  }
}
@media only screen and (min-width: 480px) {
  .my-quizzes-and-courses .mini-dashboard__data.mini-dashboard--hidable {
    display: block;
  }
}
.my-quizzes-and-courses .dashboard-numeric {
  margin-top: -0.5em;
}
@media only screen and (min-width: 768px) {
  .my-quizzes-and-courses .dashboard-numeric {
    margin-bottom: 1em;
  }
}
@media only screen and (min-width: 980px) {
  .my-quizzes-and-courses .dashboard-numeric {
    text-align: center;
    padding-top: 0;
    margin-bottom: 0;
  }
  .my-quizzes-and-courses .dashboard-numeric__numeral {
    font-size: 3em;
  }
  .my-quizzes-and-courses .dashboard-numeric__units {
    display: block;
  }
}

/** Hacks **/
#main a.dashboard-alpha__button {
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 10px;
}

.favorite-btn {
  clear: none;
  float: left;
  display: block;
  font: 400 13px/20px Arial, serif;
  margin: 10px 20px;
  border-radius: 5px;
  background: transparent linear-gradient(to bottom, #ffffff 0px, #f6f6f6 100%) repeat scroll 0% 0%;
  border: 1px solid #D8D9DB;
  padding: 0 10px;
  text-transform: uppercase;
  height: auto;
  white-space: nowrap;
}

.favorite-btn .fa {
  font-size: 22px;
  border-right: 1px solid #D8D9DB;
  padding-right: 5px;
  color: #cf7f00;
  padding: 10px 10px 10px 0;
}

.favorite-btn ._text {
  padding: 10px 0 10px 10px;
  color: grey;
}

.favorite-btn:hover, .favorite-btn:focus {
  text-decoration: none;
  background: #eee;
  -webkit-box-shadow: 3px 3px 5px -2px #444444;
  -moz-box-shadow: 3px 3px 5px -2px #444444;
  box-shadow: 1px 1px 5px -2px #444444;
}

.favorite-btn-msg {
  clear: none;
  float: left;
  padding: 10px 10px;
  text-transform: uppercase;
  height: auto;
  white-space: nowrap;
  font: 400 13px/20px Arial, serif;
  margin: 10px 20px;
}

.favoriteslink {
  display: block;
  float: left;
  min-height: 65px;
}
@media screen and (max-width: 61.25em) {
  .favoriteslink {
    clear: left;
  }
}

/*------------------------------------*\
   THIS IS AN OVERRIDE FOR THE SEMANTIC GRID - ONLY INCLUDE WHERE APPROPRIATE
\*------------------------------------*/
.calloutbox .video-embed {
  padding: 0 20px;
}

#main .session-scheduler, .session-scheduler {
  margin: auto;
  max-width: 960px;
  margin-bottom: 30px;
  color: #666666;
  /* NAVIGATION TABS */
}
#main .session-scheduler .nav-tabs, .session-scheduler .nav-tabs {
  margin: 0px;
}
#main .session-scheduler .list-group, .session-scheduler .list-group {
  margin-top: 15px;
}
#main .session-scheduler .nav-tabs a, .session-scheduler .nav-tabs a {
  box-sizing: border-box;
  width: 100%;
  text-decoration: none;
  padding: 10px 15px;
  border: 1px solid #ddd;
  margin: 0 0 0 0;
  float: left;
}
@media (min-width: 767px) {
  #main .session-scheduler .nav-tabs a, .session-scheduler .nav-tabs a {
    width: auto;
  }
}
#main .session-scheduler .nav-tabs div, .session-scheduler .nav-tabs div {
  list-style: none;
}
#main .session-scheduler .nav-tabs div > a:hover, #main .session-scheduler .nav-tabs div.active > a, .session-scheduler .nav-tabs div > a:hover, .session-scheduler .nav-tabs div.active > a {
  background-color: #eee;
}
#main .session-scheduler .panel, .session-scheduler .panel {
  clear: both;
  border: 1px solid #ddd;
  /* 	SEARCH */
}
#main .session-scheduler .panel .row, .session-scheduler .panel .row {
  padding: 0 15px;
}
#main .session-scheduler .panel .submit-row, .session-scheduler .panel .submit-row {
  box-sizing: border-box;
  clear: both;
  text-align: left;
  margin-top: 25px;
  margin-right: 2px;
  margin-bottom: 25px;
  padding-top: 25px;
}
#main .session-scheduler .panel .submit-row input, .session-scheduler .panel .submit-row input {
  margin: 0 !important;
}
#main .session-scheduler .panel .form-control, .session-scheduler .panel .form-control {
  margin: 0px;
  margin-bottom: 10px;
  box-sizing: border-box;
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  clear: left;
}
#main .session-scheduler .panel form, .session-scheduler .panel form {
  clear: both;
  margin-top: 25px;
}
@media (min-width: 767px) {
  #main .session-scheduler .panel form, .session-scheduler .panel form {
    margin-top: 0px;
  }
}
@media (min-width: 767px) {
  #main .session-scheduler .panel form .form-control, .session-scheduler .panel form .form-control {
    float: left;
    margin-right: 15px;
    max-width: 200px;
  }
}
#main .session-scheduler .panel form .refine-results, .session-scheduler .panel form .refine-results {
  margin-left: 10px;
}
#main .session-scheduler .panel form .form-unit, .session-scheduler .panel form .form-unit {
  float: left;
  width: 100%;
}
@media (min-width: 767px) {
  #main .session-scheduler .panel form .form-unit, .session-scheduler .panel form .form-unit {
    width: auto;
    padding-right: 15px;
  }
}
#main .session-scheduler .panel form .form-unit label, .session-scheduler .panel form .form-unit label {
  width: 100%;
  clear: right;
  font-weight: bold;
}
@media (min-width: 767px) {
  #main .session-scheduler .panel form .form-unit label, .session-scheduler .panel form .form-unit label {
    width: auto;
  }
}
#main .session-scheduler .panel .heading, .session-scheduler .panel .heading {
  width: 100%;
}
@media (min-width: 767px) {
  #main .session-scheduler .panel .heading, .session-scheduler .panel .heading {
    float: left;
    width: 60%;
  }
}
#main .session-scheduler .panel .search-wrap, .session-scheduler .panel .search-wrap {
  position: relative;
  overflow: hidden;
  padding-right: 0;
  width: 100%;
}
@media (min-width: 767px) {
  #main .session-scheduler .panel .search-wrap, .session-scheduler .panel .search-wrap {
    float: right;
    width: auto;
    margin-top: 20px;
  }
}
#main .session-scheduler .panel .search-wrap a, .session-scheduler .panel .search-wrap a {
  text-decoration: none;
}
#main .session-scheduler .panel .search-wrap .fa-search, .session-scheduler .panel .search-wrap .fa-search {
  position: absolute;
  left: 10px;
  top: 10px;
  color: #9F9999;
  font-size: 14px;
  z-index: 1000;
}
#main .session-scheduler .panel .search-wrap .form-control, .session-scheduler .panel .search-wrap .form-control {
  text-indent: 16px;
  outline: none;
}
#main .session-scheduler .panel .search-wrap .fa-times-circle, .session-scheduler .panel .search-wrap .fa-times-circle {
  position: absolute;
  right: -26px;
  font-size: 24px;
  top: 5px;
  color: #B3B3B3;
  cursor: pointer;
  -webkit-transition: all 0.1s ease-in-out;
  -moz-transition: all 0.1s ease-in-out;
  -o-transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
}
#main .session-scheduler .dayrow, .session-scheduler .dayrow {
  font-size: 16px;
  padding: 8px 10px;
  color: #fff;
  margin: 0;
  background-color: #aaaaaa;
}
#main .session-scheduler .sortby-banner-row, .session-scheduler .sortby-banner-row {
  font-weight: bold;
  font-size: 16px;
  padding: 8px 10px;
  color: #fff;
  margin: 0;
  background-color: #666666;
}
#main .session-scheduler .list-group-item, .session-scheduler .list-group-item {
  clear: both;
  overflow: hidden;
  padding: 10px;
  margin: 0px;
  border: 1px solid #ddd;
}
#main .session-scheduler .list-group-item .prestime, .session-scheduler .list-group-item .prestime {
  float: left;
  font-size: 14px;
  width: 100%;
}
@media (min-width: 767px) {
  #main .session-scheduler .list-group-item .prestime, .session-scheduler .list-group-item .prestime {
    width: 18%;
  }
}
#main .session-scheduler .list-group-item .presitem, .session-scheduler .list-group-item .presitem {
  float: left;
  width: 100%;
}
@media (min-width: 767px) {
  #main .session-scheduler .list-group-item .presitem, .session-scheduler .list-group-item .presitem {
    float: right;
    width: 82%;
  }
}
#main .session-scheduler .list-group-item .presitem .prestitle > a, .session-scheduler .list-group-item .presitem .prestitle > a {
  text-decoration: none;
  font-weight: bold;
  font-size: 16px;
}
#main .session-scheduler .list-group-item .presitem .presinfo, .session-scheduler .list-group-item .presitem .presinfo {
  font-size: 14px;
  padding-top: 7px;
  font-style: italic;
}
#main .session-scheduler .list-group-item .presitem .course, .session-scheduler .list-group-item .presitem .course {
  font-size: 14px;
  display: none;
  padding-top: 20px;
}
#main .session-scheduler .list-view .list-group-item a:hover, .session-scheduler .list-view .list-group-item a:hover {
  text-decoration: underline;
}
#main .session-scheduler .clear_input_div, .session-scheduler .clear_input_div {
  height: auto;
  width: 100%;
}
@media (min-width: 767px) {
  #main .session-scheduler .clear_input_div, .session-scheduler .clear_input_div {
    width: 275px;
  }
}
#main .session-scheduler .clear_input_div a.clear_input, .session-scheduler .clear_input_div a.clear_input {
  background: #c7c7c7;
  color: #FFF;
  font-size: 12px;
  right: 7px;
  height: 22px;
  width: 22px;
  line-height: 22px;
  vertical-align: middle;
  text-align: center;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  border-radius: 100%;
}
#main .session-scheduler .clear_input_div a.clear_input:hover, .session-scheduler .clear_input_div a.clear_input:hover {
  text-decoration: none;
}

/*------------------------------------*\
   Globals  
\*------------------------------------*/
/*------------------------------------*\
   Globals  
\*------------------------------------*/
.gallery {
  /*------------------------------------*\
     Grid Layout  
  \*------------------------------------*/
  /*------------------------------------*\
     Slideshow Layout  
  \*------------------------------------*/
  /*------------------------------------*\
     hack: section#content override 
  \*------------------------------------*/
  /*------------------------------------*\
     hack: mobile grid fix 
  \*------------------------------------*/
  /*------------------------------------*\
     hack: .nine-column .image-container 
  \*------------------------------------*/
}
.gallery ul.gallery__slides {
  list-style: none;
  padding: 0;
}
.gallery ul.gallery__slides {
  margin-left: -2%;
  margin-bottom: -2%;
  font-size: 0px;
}
.gallery ul.gallery__slides.-col-2 li.gallery__slide {
  width: 48%;
}
.gallery ul.gallery__slides.-col-3 li.gallery__slide {
  width: 31.33333%;
}
.gallery ul.gallery__slides.-col-4 li.gallery__slide {
  width: 23%;
}
.gallery ul.gallery__slides.-col-5 li.gallery__slide {
  width: 18%;
}
.gallery ul.gallery__slides.-col-6 li.gallery__slide {
  width: 14.66667%;
}
.gallery ul.gallery__slides.-col-7 li.gallery__slide {
  width: 12.28571%;
}
.gallery ul.gallery__slides.-col-8 li.gallery__slide {
  width: 10.5%;
}
.gallery li.gallery__slide {
  margin-left: 2%;
  margin-bottom: 2%;
  zoom: 1;
  *display: inline;
  display: inline-block;
  font-size: 16px;
  font-size: 1rem;
  vertical-align: top;
}
.gallery li.gallery__slide a:hover {
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .gallery.-layout-grid ul.gallery__slides li.gallery__slide {
    width: 48%;
  }
}
@media screen and (max-width: 375px) {
  .gallery.-layout-grid ul.gallery__slides li.gallery__slide {
    width: 100%;
  }
}
.gallery.-layout-slideshow .gallery__hero {
  margin-bottom: 2%;
}
.gallery.-layout-slideshow .gallery__hero a:hover {
  cursor: default;
}
.gallery.-layout-slideshow .gallery__hero img {
  width: 100%;
}
.gallery.-layout-slideshow .gallery__hero .img-block__text {
  display: none;
}
.gallery.-layout-slideshow li.gallery__slide .img-block__text {
  display: none;
}
@media screen and (max-width: 767px) {
  section#content .gallery ul {
    margin-right: 0;
  }
}
section#content .gallery ul li {
  left: 0;
  margin-right: 0;
}
@media screen and (max-width: 767px) {
  section#content .gallery ul li {
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .gallery {
    padding-left: 2%;
    padding-right: 2%;
  }
}
@media screen and (max-width: 375px) {
  .gallery.-layout-grid ul.gallery__slides {
    margin-left: 0;
  }
  .gallery.-layout-grid li.gallery__slide {
    margin-left: 0;
  }
}
.nine-column .gallery .image-container {
  max-width: 100%;
}
.nine-column .gallery .image-container img {
  max-width: 100%;
}

.gallery {
  /*------------------------------------*\
     Grid Layout  
  \*------------------------------------*/
}
.gallery .__title {
  color: #444444;
  display: inline-block;
  font-size: 1.25em;
  margin-left: 0;
  margin-top: 0;
  width: auto;
}
@media screen and (min-width: 48em) {
  .gallery .__title {
    font-size: 1.5em;
  }
}
.gallery .__title a {
  color: #444444;
}
.gallery .__title a:after {
  content: "\00a0\203A";
  color: #4f758b;
}
.gallery.-layout-small-grid ul.gallery__slides .img-block .img-block__text h3 {
  display: block;
  padding: .25em;
  font-weight: bold;
  height: auto;
  padding-bottom: .5em;
  text-align: left;
  vertical-align: middle;
  overflow: hidden;
  font-size: 14px;
  margin-top: .25em;
  margin-bottom: 0;
}
@media screen and (min-width: 48em) {
  .gallery.-layout-small-grid ul.gallery__slides .img-block .img-block__text h3 {
    font-size: 16px;
  }
}
.gallery.-layout-small-grid ul.gallery__slides .img-block .img-block__text h3:after {
  content: "\00a0\203A";
  color: #4f758b;
}
@media screen and (min-width: 20em) and (max-width: 37.5em) {
  .gallery.-layout-small-grid ul.gallery__slides li.gallery__slide {
    width: 31%;
  }
}

/*------------------------------------*\
   hack: section#content override 
\*------------------------------------*/
section#content .gallery ul li {
  margin-left: 2%;
}

/* Global Import */
.procedure-step {
  border-radius: 0;
  margin: 0 0 1px 0;
  padding: 0;
  position: relative;
}
@media screen and (min-width: 48em) and (min-height: 1px) {
  .procedure-step {
    padding-left: 20px;
  }
}
.lt-ie9 .procedure-step {
  padding-left: 20px;
}
.cq-wcm-edit .procedure-step {
  padding-left: 20px;
}

.procedure-step__num {
  background-color: #444;
  color: #fff;
  font: 400 12px/20px 'Arial', sans-serif;
  height: 1.6em;
  position: absolute;
  text-align: center;
  width: 1.6em;
  left: 10px;
  top: 8px;
}
@media screen and (min-width: 48em) and (min-height: 1px) {
  .procedure-step__num {
    margin-top: 5px;
    top: 0;
    left: 0;
  }
}
.lt-ie9 .procedure-step__num {
  margin-top: 5px;
  top: 0;
  left: 0;
}
.cq-wcm-edit .procedure-step__num {
  margin-top: 5px;
  top: 0;
  left: 0;
}

.procedure-step__title, section#content .block p.procedure-step__title {
  text-shadow: 0 0 0;
  border: 0;
  color: #fff;
  display: block;
  font: 300 13px/17px 'Arial', sans-serif;
  padding: 8px 60px 12px 3em;
  background: url("//img.aafp.net/global/icons/circle-close.png") no-repeat 97% 7px #666666;
}
.procedure-step__title:hover, section#content .block p.procedure-step__title:hover {
  cursor: pointer;
}
.procedure-step__title.active, section#content .block p.active.procedure-step__title {
  background: url("//img.aafp.net/global/icons/circle-open.png") no-repeat 97% 7px #666666;
}
@media screen and (min-width: 48em) and (min-height: 1px) {
  .procedure-step__title, section#content .block p.procedure-step__title {
    display: none;
  }
}
.lt-ie9 .procedure-step__title, .lt-ie9 section#content .block p.procedure-step__title, section#content .block .lt-ie9 p.procedure-step__title {
  display: none;
}
.cq-wcm-edit .procedure-step__title, .cq-wcm-edit section#content .block p.procedure-step__title, section#content .block .cq-wcm-edit p.procedure-step__title {
  display: none;
}

/*------------------------------------*\
   hack: section#content override 
\*------------------------------------*/
/* Local overrides */
.procedure-step__num {
  background-color: #789d4a;
  color: #fff;
}

.procedure-step__title, section#content .block p.procedure-step__title {
  background-color: #8cac65;
  color: #fff;
}
.procedure-step__title.active, section#content .block p.active.procedure-step__title {
  background-color: #8cac65;
}

/*------------------------------------*\
   Page Layout
\*------------------------------------*/
/*** Page Loading Setup ***/
.ptt {
  position: relative;
  background-color: #FFF;
}

.ptt-form {
  position: relative;
  background-color: #FFF;
}

.ptt-loading {
  position: absolute;
  left: 45%;
  top: 80px;
}

/* mobile */
.app-ptt .main-content {
  position: relative;
}
@media screen and (max-width: 767px) {
  .app-ptt .main-content {
    min-height: 250px !important;
  }
}

/*------------------------------------*\
   Main Menu Controls
\*------------------------------------*/
.ptt-controls__menu {
  padding-top: 10px;
  margin-bottom: 30px;
  overflow: visible;
}

.ptt-controls__primary {
  float: left;
}

.ptt-controls__secondary button {
  clear: none !important;
}

.ptt-controls__settings {
  float: right;
  width: 40%;
}

@media screen and (max-width: 599px) {
  .ptt-btn_desktop-text {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
}

/*------------------------------------*\
   Filter Controls
\*------------------------------------*/
.ptt-controls__filters {
  width: 100%;
  float: left;
  clear: both;
  margin-bottom: -36px;
}
@media screen and (max-width: 479px) {
  .ptt-controls__filters {
    margin-bottom: 30px;
  }
}

.ptt-filter__date-range {
  margin-top: 10px;
}
@media screen and (max-width: 599px) {
  .ptt-filter__date-range {
    font-size: 14px;
  }
}
@media screen and (max-width: 479px) {
  .ptt-filter__date-range {
    border: 1px solid #CCC;
    padding: 6px 12px;
    color: #333;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
  }
  .ptt-filter__date-range:hover, .ptt-filter__date-range:focus {
    background-color: #E6E6E6;
  }
  .ptt-filter__date-range:active {
    background-color: #D4D4D4;
  }
}

/*------------------------------------*\
   Text Links
\*------------------------------------*/
.ptt-controls__text-link {
  display: block;
  float: right;
  clear: both;
}
.ptt-controls__text-link .fa, .ptt-controls__text-link span {
  float: right;
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  margin-left: 8px;
  line-height: 1.4;
}
.ptt-controls__text-link:hover .fa, .ptt-controls__text-link:hover span {
  color: #7aa0b6;
}
@media screen and (max-width: 479px) {
  .ptt-controls__filters .ptt-controls__text-link {
    float: left;
  }
  .ptt-controls__filters .ptt-controls__text-link .fa, .ptt-controls__filters .ptt-controls__text-link span {
    float: left;
  }
  .ptt-controls__filters .ptt-controls__text-link .fa {
    margin-left: 0;
  }
}

/*------------------------------------*\
   Procedure Interactions
\*------------------------------------*/
/*** Keyword Filter ***/
.ptt-controls__keyword-filter {
  /* width */
  width: 60%;
  /* AAFP Framework Overrides */
  /* clear input icon placement */
}
@media screen and (max-width: 479px) {
  .ptt-controls__keyword-filter {
    width: 80%;
  }
}
.ptt-controls__keyword-filter input[type="text"] {
  width: 100% !important;
  padding-right: 42.5px !important;
}
.ptt-controls__keyword-filter .form-control-feedback {
  line-height: 34px;
  z-index: 3;
}

/*** expand & collapse ***/
@media screen and (max-width: 479px) {
  .ptt-controls__expand-collapse {
    float: right;
  }

  .ptt-control__expand-collapse {
    /*** hide text ***/
    /*** turn icon into button ***/
    width: 32px;
    height: 32px;
    line-height: 32px;
    -moz-border-radius: 100%;
    -webkit-border-radius: 100%;
    border-radius: 100%;
    border: 1px solid #CCC;
    text-align: center;
  }
  .ptt-control__expand-collapse span {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  .ptt-control__expand-collapse .fa {
    margin: 0;
    height: 28px;
    float: none;
  }
}
/*------------------------------------*\
   Mobile
\*------------------------------------*/
@media screen and (max-width: 479px) {
  /*** Dashboard Column Collapse ***/
  .ptt-controls__filters,
  .ptt-controls__sort-by {
    float: left;
    width: 100%;
  }

  .ptt-controls__text-link {
    float: left;
  }
  .ptt-controls__text-link i, .ptt-controls__text-link span {
    float: left;
    margin-left: 0;
    margin-right: 8px;
  }
}
/*------------------------------------*\
   Modals
\*------------------------------------*/
.app-ptt.modal-open {
  position: fixed;
}
@media screen and (max-width: 479px) {
  .app-ptt .ptt__modal .modal-body h3 {
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
  }
}

/*** Add New Procedure ***/
.ptt__modal--log .ptt-btn__cancel {
  float: left;
}

/*** Edit Procedure ***/
.ptt__modal--edit .modal-footer .btn-toolbar.pull-right .btn, .ptt__modal--log .modal-footer .btn-toolbar.pull-right .btn {
  float: right;
}
@media screen and (max-width: 419px) {
  .ptt__modal--edit .modal-footer .btn-toolbar, .ptt__modal--log .modal-footer .btn-toolbar {
    width: 100%;
    margin-left: 0;
  }
  .ptt__modal--edit .modal-footer .btn, .ptt__modal--log .modal-footer .btn {
    width: 100%;
    float: left;
    margin: 0 0 10px;
  }
  .ptt__modal--edit .modal-footer .btn.ptt-btn__cancel, .ptt__modal--edit .modal-footer .btn.ptt-btn__delete, .ptt__modal--log .modal-footer .btn.ptt-btn__cancel, .ptt__modal--log .modal-footer .btn.ptt-btn__delete {
    margin-top: 30px;
  }
}

/*** Settings ***/
@media screen and (min-width: 768px) {
  .ptt__modal--settings .ptt-btn__edit,
  .ptt__modal--settings .ptt-btn__delete {
    width: 100%;
  }
  .ptt__modal--settings .ptt-btn__edit {
    margin-bottom: 15px;
  }
}

/*** Terms and Conditions for Primary+ ***/
.ptt__modal--terms-conditions {
  /* footer */
}
@media screen and (max-width: 479px) {
  .ptt__modal--terms-conditions .pre-scrollable {
    max-height: 180px;
  }
}
@media screen and (max-width: 374px) {
  .ptt__modal--terms-conditions .pre-scrollable {
    max-height: 120px;
  }
}
.ptt__modal--terms-conditions .modal-footer .checkbox label {
  text-align: left;
}
@media screen and (max-width: 550px) {
  .ptt__modal--terms-conditions .modal-footer .btn {
    float: left;
    clear: both;
  }
}
@media screen and (max-width: 479px) {
  .ptt__modal--terms-conditions .modal-footer .btn {
    width: 100%;
  }
}

/*------------------------------------*\
   Procedure Table Pattern
\*------------------------------------*/
/*** Global Procedures (My and All) ***/
.ptt {
  /* cursor on clickable rows */
}
.ptt .flexTable__row a {
  cursor: pointer;
}

.ptt-row__count span {
  padding-right: 7px;
  padding-left: 7px;
}

.app-ptt .flexTable__row a i.fa-chevron-right {
  color: #cf7f00;
  font-size: 12px;
}
.app-ptt .flexTable__row a:hover i.fa-chevron-right {
  color: #db9f40;
}

/*** My Procedures ***/
/* add elispese to longer strings */
.ptt-procedures--my .flexTable__mobile-col--1 .flexTable__cell {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/*** All Procedures ***/
.ptt-procedures--all .ptt-row__title {
  font-size: 16px;
  font-weight: bold;
}

/*** Mobile Flex Table Stacking ***/
.ptt {
  /*** Mobile ***/
}
.ptt .flexTable__mobile-col--2 .flexTable__cell {
  text-align: right;
}
@media screen and (max-width: 599px) {
  .ptt {
    /*** Hide specific Chevron Indicators ***/
  }
  .ptt .flexTable .flexTable__cell {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    padding: 10px 15px;
  }
  .ptt .flexTable__mobile-col--1 {
    float: left;
    display: block;
    width: 80%;
  }
  .ptt .flexTable__mobile-col--1 .ptt-row__meta {
    @inlclude inline-block;
    width: auto;
    float: left;
    font-style: italic;
    padding-top: 0;
  }
  .ptt .ptt-row__meta, .ptt .ptt-row__meta i.fa {
    color: #858585;
  }
  .ptt .ptt-row__title, .ptt .ptt-row__count {
    font-size: 16px;
    font-weight: bold;
  }
  .ptt .flexTable__mobile-col--2 {
    float: right;
    width: 15%;
    display: block;
  }
  .ptt .ptt-procedures--my .ptt-group__chevron,
  .ptt .ptt-procedures--all .flexTable__header .ptt-group__chevron {
    display: none;
  }
}

/*------------------------------------*\
   Bootstrap Overrides
\*------------------------------------*/
.ptt {
  /*** tabs ***/
  /*** Accordion Panel Reset ***/
  /*** forms ***/
}
@media screen and (max-width: 767px) {
  .ptt .nav-tabs {
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 20px;
  }
}
.ptt .nav-tabs li {
  margin-left: 0 !important;
}
@media screen and (max-width: 767px) {
  .ptt .nav-tabs li {
    margin-right: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}
.ptt .nav-link {
  text-decoration: none !important;
}
.ptt .panel-heading, .ptt .panel-body {
  padding: 0;
  border: none;
}
.ptt .panel-default > .panel-heading {
  background-color: #FFF;
}
.ptt .panel-group .panel {
  border-radius: 0;
  border: none;
}
.ptt .btn-group button {
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.ptt .panel-group .panel + .panel {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .ptt h4.panel-title {
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
  }
}
#main .ptt .input-group input {
  margin: 0 !important;
  -moz-border-radius-topleft: 0px;
  -webkit-border-top-left-radius: 0px;
  border-top-left-radius: 0px;
  -moz-border-radius-bottomleft: 0px;
  -webkit-border-bottom-left-radius: 0px;
  border-bottom-left-radius: 0px;
  border-color: #CCC !important;
}

.app-ptt {
  /*** buttons ***/
  /* Global */
  /* Primary */
  /* Danger */
  /* disabled */
  /* Close */
  /*** Button Dropdown Menu ***/
}
.app-ptt .btn:active {
  -moz-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.7) outset;
  -webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.7) outset;
  box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.7) outset;
}
.app-ptt .btn-primary {
  background-color: #cf7f00;
  border-color: #cf7f00;
  /* icon */
}
.app-ptt .btn-primary:active, .app-ptt .btn-primary:focus {
  background-color: #cf7f00;
  border-color: #cf7f00;
}
.app-ptt .btn-primary:hover {
  background-color: #db9f40;
  border-color: #db9f40;
}
.app-ptt .btn-primary .fa {
  color: #FFF;
}
.app-ptt .btn-danger {
  background-color: #9e2a2f;
  border-color: #9e2a2f;
  /* icon */
}
.app-ptt .btn-danger:active, .app-ptt .btn-danger:focus {
  background-color: #9e2a2f;
  border-color: #9e2a2f;
}
.app-ptt .btn-danger:hover {
  background-color: #b65f63;
  border-color: #b65f63;
}
.app-ptt .btn-danger .fa {
  color: #FFF;
}
.app-ptt .btn[disabled] {
  font-size: 16px !important;
  line-height: 20px !important;
}
.app-ptt button.close {
  -moz-border-radius: none;
  -webkit-border-radius: none;
  border-radius: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.app-ptt .ptt-controls__secondary .dropdown-menu {
  /* position for mobile first */
  left: auto;
  right: 0;
  /* AAFP framework hacks */
}
.app-ptt .ptt-controls__secondary .dropdown-menu li {
  margin-right: 0 !important;
  margin-left: 0 !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}
.app-ptt .ptt-controls__secondary .dropdown-menu li a {
  text-decoration: none !important;
  color: #4f758b;
}
.app-ptt .ptt-controls__secondary .dropdown-menu li a .fa-file-pdf-o {
  color: #b65f63;
}
.app-ptt .ptt-controls__secondary .dropdown-menu li a .fa-file-excel-o {
  color: #8cac65;
}

/*------------------------------------*\
   AAFP Framework Overrides
\*------------------------------------*/
@media screen and (max-width: 767px) {
  .ptt button {
    margin-right: 0;
    margin-left: 0;
  }
}
.ptt button[disabled],
.ptt .button[disabled] {
  line-height: 20px !important;
  font-size: 14px !important;
}

.app-ptt {
  /*** UIB Date Picker ***/
}
.app-ptt .uib-datepicker table tr td, .app-ptt .uib-datepicker table tr th {
  padding: 0;
}
.app-ptt .uib-datepicker .text-center {
  text-align: center !important;
}

/*** Global Import ***/
/*------------------------------------*\
   Variables Declared
\*------------------------------------*/
.search-box {
  position: relative;
  width: 100%;
  max-width: 350px;
  /*** mobile search  ***/
  /*** jQuery UI override of auto-generated inline css ***/
}
.search-box * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .search-box {
    max-width: 100%;
  }
}
.search-box .ui-autocomplete {
  width: 98% !important;
  left: 1% !important;
  top: 30px !important;
}
.search-box .ui-menu .ui-menu-item a {
  line-height: 2.2;
  border-bottom: 1px solid #eaeaea;
}
.search-box .ui-state-hover, .search-box .ui-widget-content .ui-state-hover, .search-box .ui-widget-header .ui-state-hover, .search-box .ui-state-focus, .search-box .ui-widget-content .ui-state-focus, .search-box .ui-widget-header .ui-state-focus {
  background: #cf7f00;
  color: white;
  cursor: pointer;
}

.search-box__container {
  width: 100%;
  position: relative;
  height: 30px;
  border: 1px solid #cf7f00;
  border-right: 0px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  overflow: hidden;
}

.search-box__input {
  border: none;
  height: 30px;
  width: 100%;
  padding-left: 10px;
  padding-right: 84px;
  line-height: 30px;
  color: #666666;
  font-size: .9em;
  /** IE native search clear disablement  **/
  /*** HACK / OVERRIDE ***/
}
.search-box__input::-ms-clear {
  display: none;
}
@media screen and (max-width: 767px) {
  .search-box__input {
    margin: 0;
    width: 100%;
  }
}

/*------------------------------------*\
   Input Clear
\*------------------------------------*/
.search-box__input-clear {
  display: block;
  position: absolute;
  color: #FFF;
  font-size: 12px;
  text-indent: -9999px;
  direction: ltr;
  height: 22px;
  width: 22px;
  line-height: 22px;
  vertical-align: middle;
  text-align: center;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  border-radius: 100%;
  background-image: url('//img.aafp.net/aafp/sprites-s9e24000914.png');
  background-position: 0 -80px;
  /*** Positioning ***/
  right: 54px;
  top: 4px;
  /*** Overrides ***/
  box-shadow: none;
  padding: 0;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .search-box__input-clear {
    background-image: url('//img.aafp.net/aafp/sprites-retina-sa18a99679b.png');
    background-size: 44px 132px;
    background-position: 0 -80px;
  }
}
.search-box__input-clear:hover {
  color: #FFF;
  text-decoration: none;
  cursor: pointer;
}

/*** IE native search clear disablement ***/
input.main-search::-ms-clear {
  display: none;
}

/*------------------------------------*\
   Size Styles
\*------------------------------------*/
#main .search-box--size-large {
  max-width: 100%;
  box-sizing: border-box;
  padding: 0 20px;
  min-height: 100px;
}
@media screen and (min-width: 768px) {
  #main .search-box--size-large {
    min-height: auto;
    padding: 0;
  }
}
#main .search-box--size-large .search-box__container {
  height: 45px;
  overflow: visible;
  border-right: 1px solid;
}
@media screen and (min-width: 600px) {
  #main .search-box--size-large .search-box__container {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    border-right: 0;
  }
}
#main .search-box--size-large .search-box__input {
  font-size: 16px;
  height: 43px;
  padding: 10px;
}
#main .search-box--size-large .search-box__text-button {
  float: none;
  font-size: 18px;
  height: 45px;
  margin: 0 !important;
  white-space: nowrap;
}
@media screen and (min-width: 600px) {
  #main .search-box--size-large .search-box__text-button {
    border-radius: 0 4px 4px 0;
    box-shadow: 0 0 0;
    margin-top: -1px;
  }
}

/*------------------------------------*\
   Color Styles
\*------------------------------------*/
.search-box--color-grey {
  border-color: #aaaaaa;
}

/*------------------------------------*\
   Button Styles
\*------------------------------------*/
.search-box__button {
  position: absolute;
  right: 0;
  top: 0;
  width: 44px;
  height: 30px;
  background-color: #cf7f00;
  text-indent: -9999px;
  direction: ltr;
  background-image: url('//img.aafp.net/aafp/sprites-s9e24000914.png');
  background-position: 0 -102px;
  /*** HACK / OVERRIDE ***/
  box-shadow: none;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .search-box__button {
    background-image: url('//img.aafp.net/aafp/sprites-retina-sa18a99679b.png');
    background-size: 44px 132px;
    background-position: 0 -102px;
  }
}

.search-box__text-button {
  width: 44px;
  height: 30px;
  background-color: #cf7f00;
}

/*------------------------------------*\
   Advanced Search Box
\*------------------------------------*/
.search-box__advanced {
  width: 82%;
  background: #db9f40;
  position: absolute;
  top: 30px;
  left: 3%;
  -moz-border-radius: 0px 0px 4px 4px;
  -webkit-border-radius: 0px;
  border-radius: 0px 0px 4px 4px;
  padding: 0 10px;
  line-height: 30px;
  color: #FFF;
  font-size: .9em;
  z-index: 99;
}
.search-box__advanced label {
  display: block;
}

.search-box--advanced {
  /* mobile.less form input override */
}
.search-box--advanced input[type='radio'] {
  width: auto;
  margin-left: 0;
}

/*------------------------------------*\
  Search Results Hacks 
\*------------------------------------*/
#main {
  /*** positioning ***/
}
#main .search-box {
  margin-bottom: 20px;
}
#main .search-box__input {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  border-radius: none !important;
  border: none !important;
}
#main .search-box__button {
  clear: none !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 44px !important;
}

/*------------------------------------*\
   Container Setup
\*------------------------------------*/
.flexTable {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.flexTable *, .flexTable *:before, .flexTable *:after {
  box-sizing: inherit;
}

.flexTable__header,
.flexTable__rows,
.flexTable__row {
  float: left;
  display: block;
  width: 100%;
}

.flexTable__header {
  font-weight: bold;
}

.flexTable__row {
  float: left;
  width: 100%;
  font-size: 14px;
}

.flexTable__cell {
  padding: 10px 2%;
}

/*------------------------------------*\
   12 Column Grid
\*------------------------------------*/
/*** Desktop ***/
.flexTable-group {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
  /* Row Declarations */
}
.flexTable-group:after {
  content: " ";
  display: block;
  clear: both;
}
head:hover ~ .flexTable-group, head:hover ~ body .flexTable-group {
  position: relative;
}
head:hover ~ .flexTable-group:before, head:hover ~ body .flexTable-group:before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  content: " ";
  z-index: 998;
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzY2NjZmZiIgc3RvcC1vcGFjaXR5PSIwLjI1Ii8+PHN0b3Agb2Zmc2V0PSI3MS40Mjg1NyUiIHN0b3AtY29sb3I9IiNiM2IzZmYiIHN0b3Atb3BhY2l0eT0iMC4yNSIvPjxzdG9wIG9mZnNldD0iNzEuNDI4NTclIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, rgba(102, 102, 255, 0.25)), color-stop(71.42857%, rgba(179, 179, 255, 0.25)), color-stop(71.42857%, rgba(0, 0, 0, 0)));
  background-image: -moz-linear-gradient(left, rgba(102, 102, 255, 0.25), rgba(179, 179, 255, 0.25) 71.42857%, rgba(0, 0, 0, 0) 71.42857%);
  background-image: -webkit-linear-gradient(left, rgba(102, 102, 255, 0.25), rgba(179, 179, 255, 0.25) 71.42857%, rgba(0, 0, 0, 0) 71.42857%);
  background-image: linear-gradient(to right, rgba(102, 102, 255, 0.25), rgba(179, 179, 255, 0.25) 71.42857%, rgba(0, 0, 0, 0) 71.42857%);
  background-size: 8.53659%;
  background-origin: content-box;
  background-clip: content-box;
  background-position: left top;
}
.flexTable-group .-col-1 {
  width: 6.09756%;
  float: left;
  margin-right: 2.43902%;
}
.flexTable-group .-col-2 {
  width: 14.63415%;
  float: left;
  margin-right: 2.43902%;
}
.flexTable-group .-col-3 {
  width: 23.17073%;
  float: left;
  margin-right: 2.43902%;
}
.flexTable-group .-col-4 {
  width: 31.70732%;
  float: left;
  margin-right: 2.43902%;
}
.flexTable-group .-col-5 {
  width: 40.2439%;
  float: left;
  margin-right: 2.43902%;
}
.flexTable-group .-col-6 {
  width: 48.78049%;
  float: left;
  margin-right: 2.43902%;
}
.flexTable-group .-col-7 {
  width: 57.31707%;
  float: left;
  margin-right: 2.43902%;
}
.flexTable-group .-col-8 {
  width: 65.85366%;
  float: left;
  margin-right: 2.43902%;
}
.flexTable-group .-col-9 {
  width: 74.39024%;
  float: left;
  margin-right: 2.43902%;
}
.flexTable-group .-col-10 {
  width: 82.92683%;
  float: left;
  margin-right: 2.43902%;
}
.flexTable-group .-col-11 {
  width: 91.46341%;
  float: left;
  margin-right: 2.43902%;
}
.flexTable-group .-col-12 {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}
.flexTable-group .alpha {
  clear: both;
}
.flexTable-group .omega {
  float: right;
  margin-right: 0;
}

/*** mobile default ***/
/*------------------------------------*\
   Interactions
\*------------------------------------*/
/*** Icon Setup  ***/
.flexTable.-is-collapsible .flexTable__header {
  background-repeat: no-repeat;
  background-position: 98% center;
  cursor: pointer;
  padding-right: 6%;
}

.flexTable.-has-link-arrows .flexTable__row {
  padding-right: 6%;
  background-position: 98% center;
  background-repeat: no-repeat;
  background-image: url('//img.aafp.net/global/icons/arrow-right-orange.png');
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .flexTable.-has-link-arrows .flexTable__row {
    background-image: url('//img.aafp.net/global/icons-retina/arrow-right-orange.png');
    background-size: 8px 13px;
  }
}

/*------------------------------------*\
   Color Themes
\*------------------------------------*/
/*** Default ***/
.flexTable__header {
  border-bottom: 1px solid #FFF;
}

.flexTable__row {
  color: #666666;
  border-bottom: 1px solid #E3E3E3;
}
.flexTable__row:last-child {
  border-bottom: none;
}

/*** Blue ***/
.flexTable.-theme-blue .flexTable__header {
  background-color: #dce3e8;
  color: #4f758b;
}
.flexTable.-theme-blue.-is-collapsible .flexTable__header.-is-uncollapsed {
  background-image: url('//img.aafp.net/global/icons/arrow-up-white.png');
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .flexTable.-theme-blue.-is-collapsible .flexTable__header.-is-uncollapsed {
    background-image: url('//img.aafp.net/global/icons-retina/arrow-up-white.png');
    background-size: 13px 8px;
  }
}
.flexTable.-theme-blue.-is-collapsible .flexTable__header.-is-collapsed {
  background-image: url('//img.aafp.net/global/icons/arrow-down-white.png');
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .flexTable.-theme-blue.-is-collapsible .flexTable__header.-is-collapsed {
    background-image: url('//img.aafp.net/global/icons-retina/arrow-down-white.png');
    background-size: 13px 8px;
  }
}
.flexTable.-theme-blue.-has-link-arrows .flexTable__row {
  background-image: url('//img.aafp.net/global/icons/arrow-right-orange.png');
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .flexTable.-theme-blue.-has-link-arrows .flexTable__row {
    background-image: url('//img.aafp.net/global/icons-retina/arrow-right-orange.png');
    background-size: 8px 13px;
  }
}

/* Global Import */
/*------------------------------------*\
   Global Table Styles
\*------------------------------------*/
table {
  border-color: transparent;
}
table tr {
  border-color: transparent;
}
table tr.highlight {
  background-color: #e4ebdb;
}
table tr th {
  background: none repeat scroll 0 0 #dadada;
  color: #444444;
  text-transform: uppercase;
  text-align: left;
  padding-right: 1em;
  font-weight: normal;
  border: 0;
}
table tr th:first-child {
  padding-left: 1em;
}
table tr td {
  border: 0px;
  border-bottom: 1px dotted #aaaaaa;
  padding: .7em 1em .7em .2em;
}
table tr td[valign=top] {
  vertical-align: top;
}
table tr td[valign=middle] {
  vertical-align: middle;
}
table tr td[valign=bottom] {
  vertical-align: bottom;
}
table tr td[valign=baseline] {
  vertical-align: baseline;
}
table tr td.heading {
  font-size: 16px;
  font-weight: bold;
  line-height: 22px;
  margin: 0;
  border-bottom: 1px dotted #aaaaaa;
  font-weight: bold;
}
table tr td.heading span.table-head-mobile {
  font-weight: bold;
}
table tr td.last {
  margin-bottom: 1.5em;
}
table tr td p {
  margin: 0;
}
table tr td ul, table tr td ol {
  padding-bottom: 0;
  margin: 0;
}
table tr td .table-head-mobile {
  display: none;
}
table tr td.grand-total {
  background-color: #f6f6f6;
  border-color: #aaaaaa;
  font-size: 16px;
  font-weight: bold;
  line-height: 22px;
}
table tr td.grand-total span {
  font-weight: bold;
}

/*------------------------------------*\
   Mobile Styles
\*------------------------------------*/
@media screen and (max-width: 767px) {
  table, thead, tbody, th, td, tr {
    display: block;
    width: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    clear: left;
    text-align: left !important;
  }

  table {
    width: 100%;
    border-collapse: collapse;
    border-top: 1px solid #dadada;
  }
  table th, table .table-head {
    display: none;
  }
  table tr {
    border: 1px dotted #dadada;
    border-top: 0px;
  }
  table tr td {
    border: none;
    position: relative;
    padding: 0 .5em;
    margin: 0;
    font-weight: bold;
    height: auto;
  }
  table tr td .table-head-mobile {
    display: inline;
    color: #666666;
    font-weight: normal;
  }
  table tr td ol, table tr td ul, table tr td li, table tr td span, table tr td div {
    font-weight: bold;
  }
  table tr td b, table tr td strong {
    color: black;
  }
}
/*------------------------------------*\
   Table in a Callout Box 
\*------------------------------------*/
/*** margin / padding / width ***/
.tables {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (min-width: 980px) {
  .calloutbox .tables {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 979px) {
  .calloutbox .tables {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media screen and (max-width: 767px) {
  .tables {
    padding-left: 20px;
    padding-right: 20px;
  }
  .tables table {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
  }
}

/*** Secondary TH color ***/
.calloutbox .secondary table {
  border-top: 1px solid #666666;
}
.calloutbox .secondary th {
  background-color: #666666;
  color: #FFF;
}
.calloutbox .secondary tr {
  border-color: #666666;
}

/*------------------------------------*\
   Header Color Removal
\*------------------------------------*/
.table--th-no-color {
  /*** Primary Callout Box ***/
  /*** Secondary Callout Box ***/
}
.table--th-no-color .table-head {
  border-bottom: 1px dotted #aaaaaa;
}
.table--th-no-color th {
  background-color: transparent;
}
.calloutbox .primary .table--th-no-color th {
  color: #FFF;
}
.calloutbox .secondary .table--th-no-color {
  /* Desktop Border Removal */
}
@media screen and (min-width: 768px) {
  .calloutbox .secondary .table--th-no-color {
    border-top: none;
  }
}
.calloutbox .secondary .table--th-no-color .table-head {
  border-bottom: 1px dotted #aaaaaa;
}
.calloutbox .secondary .table--th-no-color th {
  background-color: transparent;
  color: #666666;
}

/* Local overrides */
/*------------------------------------*\
   Globals  
\*------------------------------------*/
/*------------------------------------*\
   Globals  
\*------------------------------------*/
.card-tools {
  width: 100%;
}
.card-tools .__totalcards {
  display: inline;
}
.card-tools .__sortby {
  float: right;
}

.img-cards {
  text-align: center;
  margin-left: -1.5%;
}

.img-card {
  float: left;
  position: relative;
  border: 1px #666666 solid;
  max-width: 300px;
  width: 97.75%;
  height: 30em;
  margin: 1.5% 0 0 1.5%;
  background-color: #dadada;
  color: #666666;
  display: inline-block;
  text-align: left;
  overflow: hidden;
  -webkit-box-shadow: 3px 3px 9px -2px rgba(68, 68, 68, 0.58);
  -moz-box-shadow: 3px 3px 9px -2px rgba(68, 68, 68, 0.58);
  box-shadow: 3px 3px 9px -2px rgba(68, 68, 68, 0.58);
}
@media screen and (min-width: 30em) {
  .img-card {
    width: 47%;
  }
}
@media screen and (min-width: 48em) {
  .img-card {
    width: 30.33333%;
  }
}
.img-card .__image {
  background: white;
}
.img-card .__data {
  margin: 10px;
}
.img-card .__title {
  display: block;
  overflow: hidden;
  position: relative;
  font-size: 16px;
}
.img-card .__title a {
  font-size: 16px;
  display: inline-block;
}
.img-card .__credit {
  margin-bottom: 0;
  font-weight: bold;
  padding-left: 1px;
  font-size: 1em;
}
.img-card .__credit .__value.__pending {
  color: #858585;
}
.img-card .__description {
  color: #444444;
  display: block;
  overflow: hidden;
  position: relative;
  max-height: 12.5em;
  margin-top: .5em;
  clear: both;
}
@media screen and (min-width: 48em) {
  .img-card .__description {
    max-height: 10em;
  }
}
.img-card .__description .__desc-text {
  display: inline;
}
.img-card .__date, .img-card .__location, .img-card .__format {
  color: #444444;
  padding-bottom: 0;
  margin-bottom: 0;
  font-weight: bold;
}
.img-card .button {
  position: absolute;
  right: 10px;
  bottom: 10px;
}
.img-card .__full-span-buttons {
  position: absolute;
  bottom: 0;
  width: calc(100% - 20px);
  margin-top: 2em;
  display: flex;
  flex-direction: row-reverse;
  align-content: space-between;
}
.img-card .__full-span-buttons .button {
  flex-grow: 2;
  max-width: 50%;
  margin-left: 10px;
  position: relative;
  right: 0;
  text-align: center;
}
.img-card .__full-span-buttons .button:last-child {
  margin-left: 0;
}

.img-card.-featured {
  background-color: #444444;
  border: 1px black solid;
  top: -4px;
  box-shadow: 3px 8px 17px 0px rgba(68, 68, 68, 0.98);
}
.img-card.-featured .__image {
  position: relative;
  display: inline-block;
}
.img-card.-featured .__featured-tag {
  display: inline;
}
.img-card.-featured .__featured-tag span {
  position: absolute;
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  position: absolute;
  text-overflow: ellipsis;
  right: -28px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2), inset 0px 5px 30px rgba(255, 255, 255, 0.2);
  text-align: center;
  text-transform: uppercase;
  top: 20px;
  background: #cf7f00;
  width: 100px;
  padding: 3px 10px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  color: white;
}
.img-card.-featured .__title a {
  color: #db9f40;
  text-decoration: underline;
}
.img-card.-featured .__format {
  color: #dadada;
}
.img-card.-featured .__credit {
  color: #eaeaea;
}
.img-card.-featured .__desc-text {
  color: #eaeaea;
}
.img-card.-featured .__date, .img-card.-featured .__location {
  color: #eaeaea;
}

.img-card.-short {
  height: 26em;
}
.img-card.-short .__title {
  height: auto;
}
.img-card.-short .__details {
  margin-top: 1.5em;
}
.img-card.-short .__details .__status,
.img-card.-short .__details .__credits,
.img-card.-short .__details .__expires,
.img-card.-short .__details .__purchased {
  color: #666666;
  padding-left: 0;
  margin-left: 0;
}
.img-card.-short .__details .__status .fa,
.img-card.-short .__details .__credits .fa,
.img-card.-short .__details .__expires .fa,
.img-card.-short .__details .__purchased .fa {
  color: #666666;
  padding-right: .5em;
}

.img-card.-expiring .__status-tag span {
  background: #9e2a2f;
}
.img-card.-expiring .__details .__expires, .img-card.-expiring .__details .__expires .fa {
  color: #9e2a2f;
  font-weight: bold;
}

.img-card.-completed .__details .__credits, .img-card.-completed .__details .__credits .fa {
  color: #789d4a;
  font-weight: bold;
}

/** Status **/
.__status-tag {
  display: inline;
}
.__status-tag span {
  position: absolute;
  font-weight: bold;
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  position: absolute;
  text-overflow: ellipsis;
  right: -36px;
  text-align: center;
  top: 34px;
  background: #444444;
  width: 142px;
  padding: 3px 10px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  color: white;
}

.cme-category {
  margin: 10px;
}

/*------------------------------------*\
   Mobile Card Modification
\*------------------------------------*/
@media screen and (max-width: 767px) {
  .img-card.-mobile-card-dissolve {
    width: 92.5%;
    max-width: none;
    margin-top: 0;
    margin-left: 4.5%;
    margin-bottom: 15px;
    height: auto;
    box-shadow: none;
    padding-bottom: 15px;
    border: none;
    border-bottom: 1px solid #e3e3e3;
    background-color: transparent;
    /*** Column Layout inside Card ***/
    /*** Details ***/
    /* remove description and more button */
    /*** featured ***/
  }
  .img-card.-mobile-card-dissolve.img-card.-short {
    height: auto;
  }
  .img-card.-mobile-card-dissolve.img-card.-short .__title {
    margin-bottom: 0;
  }
  .img-card.-mobile-card-dissolve.img-card.-short .__details {
    margin-top: 0;
  }
  .img-card.-mobile-card-dissolve.img-card.-short .__details .__status,
  .img-card.-mobile-card-dissolve.img-card.-short .__details .__credits,
  .img-card.-mobile-card-dissolve.img-card.-short .__details .__expires,
  .img-card.-mobile-card-dissolve.img-card.-short .__details .__purchased {
    padding-top: .4em;
  }
  .img-card.-mobile-card-dissolve .__image {
    width: 25%;
    overflow: visible;
    float: left;
  }
  .img-card.-mobile-card-dissolve .__image:before {
    padding-top: 0;
  }
  .img-card.-mobile-card-dissolve .__image img {
    position: relative;
  }
  .img-card.-mobile-card-dissolve .__data {
    width: 72%;
    float: right;
    margin: 0;
  }
  .img-card.-mobile-card-dissolve .__title {
    margin-top: 0;
    height: auto;
  }
  .img-card.-mobile-card-dissolve .__credit {
    text-align: left;
    float: none;
    padding: 0;
    margin: 0;
  }
  .img-card.-mobile-card-dissolve .__credit .__value, .img-card.-mobile-card-dissolve .__credit .__label {
    display: inline;
    font-weight: normal;
    font-size: 1em;
    color: #789d4a;
  }
  .img-card.-mobile-card-dissolve .__format, .img-card.-mobile-card-dissolve .__date, .img-card.-mobile-card-dissolve .__location {
    font-weight: normal;
  }
  .img-card.-mobile-card-dissolve .__data p {
    margin-top: 0;
    margin-bottom: 0;
  }
  .img-card.-mobile-card-dissolve .__data p.__credit {
    margin-bottom: .5em;
  }
  .img-card.-mobile-card-dissolve .__desc-text, .img-card.-mobile-card-dissolve .button {
    display: none;
  }
  .img-card.-mobile-card-dissolve .__status-tag {
    display: block;
    margin: 0;
    padding: 0;
  }
  .img-card.-mobile-card-dissolve .__status-tag span {
    position: relative;
    transform: none;
    right: auto;
    top: auto;
    width: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    box-shadow: none;
    font-size: 1em;
  }
  .img-card.-mobile-card-dissolve .__full-span-buttons {
    position: relative;
    margin-top: 0;
    bottom: 0;
    display: block;
  }
  .img-card.-mobile-card-dissolve .__get-credit {
    display: inline-block;
    flex-grow: 0;
    font-size: 0.9em;
    margin-top: 0;
    margin-left: .5em;
    padding-top: 5px;
    padding-bottom: 5px;
    position: relative;
    width: auto;
    right: 0;
    bottom: 0;
  }
  .img-card.-mobile-card-dissolve.-featured {
    background-color: transparent;
    border-top: none;
    border-right: none;
    border-left: none;
    border-bottom: 1px solid #e3e3e3;
  }
  .img-card.-mobile-card-dissolve.-featured .__title a {
    color: #4f758b;
  }
  .img-card.-mobile-card-dissolve.-featured .__featured-tag {
    display: block;
    margin: 0;
    padding: 0;
  }
  .img-card.-mobile-card-dissolve.-featured .__featured-tag span {
    position: relative;
    transform: none;
    right: auto;
    top: auto;
    width: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    box-shadow: none;
  }
  .img-card.-mobile-card-dissolve.-featured .__format, .img-card.-mobile-card-dissolve.-featured .__date, .img-card.-mobile-card-dissolve.-featured .__location {
    color: #444;
  }
}
@media screen and (max-width: 767px) and (max-width: 479px) {
  .img-card.-mobile-card-dissolve.-featured .__image, .img-card.-mobile-card-dissolve.-featured .__data {
    width: 100%;
    float: left;
  }
}

/*------------------------------------*\
   HACKS 
\*------------------------------------*/
section#content .img-card .button {
  margin-bottom: 0 !important;
}

@media screen and (max-width: 767px) {
  .img-card .__title, .img-card .__location, .img-card .__desc-text, .img-card .__date, .img-card .__format {
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }

  section .img-card a.button {
    margin: 0;
  }
}
#main .card-tools .__sortby label {
  width: auto;
  margin-right: .5em;
  height: 2em;
  line-height: 2em;
  color: #777777;
}
#main .card-tools .__sortby select {
  width: auto;
  height: 2em;
}

@media screen and (max-width: 767px) {
  #main .img-card.-mobile-card-dissolve .button {
    display: none;
  }
  #main .img-card.-mobile-card-dissolve .button.__get-credit {
    display: inline-block;
    flex-grow: 0;
    font-size: 0.9em;
    margin-top: 1em;
    margin-left: 0;
    padding-top: 5px;
    padding-bottom: 5px;
    position: relative;
    width: auto;
    right: 0;
    bottom: 0;
  }
}

/*------------------------------------*\
   Globals
\*------------------------------------*/
.img-card {
  border: 1px #aaaaaa solid;
  background-color: #eaeaea;
  color: #666666;
  height: 24em;
}
@media screen and (min-width: 767px) and (max-width: 979px) {
  .img-card {
    height: 22em;
  }
}
.img-card .__data {
  height: 12em;
  overflow: hidden;
}
.img-card .__title {
  margin: 0 0 5px 0;
}
.img-card .__credit {
  color: #444444;
  font-size: .9em;
  font-weight: normal;
}
.img-card .__description {
  color: #444444;
  max-height: 4.5em;
}
.img-card .__date, .img-card .__location, .img-card .__format {
  color: #444444;
  font-weight: normal;
}

.img-card.-featured {
  background-color: #444444;
  border: 1px #444 solid;
}
.img-card.-featured .__featured-tag span {
  background: #cf7f00;
  color: white;
}
.img-card.-featured .__title a {
  color: #db9f40;
}
.img-card.-featured .__format {
  color: #dadada;
}
.img-card.-featured .__credit {
  color: #eaeaea;
}
.img-card.-featured .__description {
  color: #eaeaea;
}
.img-card.-featured .__date, .img-card.-featured .__location {
  color: #eaeaea;
}

@media screen and (max-width: 767px) {
  .img-card.-mobile-card-dissolve .__data {
    height: auto;
  }
}

/*------------------------------------*\
   hack: section#content override 
\*------------------------------------*/
section#content .img-card .__credit {
  color: #444444 !important;
}
section#content .img-card.-featured .__credit {
  color: #eaeaea !important;
}

/*** Global import ***/
.image-simple {
  /*------------------------------------*\
    Floats
  \*------------------------------------*/
  /*------------------------------------*\
    Stretch
  \*------------------------------------*/
}
.image-simple .img-block {
  max-width: 100%;
}
.image-simple .img-block img {
  max-width: 100%;
}
.image-simple .cutline {
  font-size: em(12px);
  line-height: 1.4em;
  font-style: italic;
}
.image-simple .cutline i {
  font-style: normal;
}
.image-simple .-position-center {
  margin-right: auto;
  margin-left: auto;
}
.image-simple .-position-right {
  float: right;
  margin-left: 2%;
}
.image-simple .-position-left {
  float: left;
  margin-right: 2%;
}
.image-simple .-span-full img {
  width: 100%;
}

/*------------------------------------*\
  Grid Column Widths
\*------------------------------------*/
.image-simple {
  /*** one column ***/
  /*** two column ***/
  /*** three column ***/
  /*** four column ***/
  /*** five column ***/
  /*** six column ***/
  /*** seven column ***/
  /*** eight column ***/
  /*** nine column ***/
  /*** ten column ***/
  /*** eleven column ***/
  /*** twelve column ***/
  /*------------------------------------*\
    Mobile Gutter Hack / Shim / Override
  \*------------------------------------*/
}
.image-simple * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.one-column .image-simple {
  /* Desktop */
  /* Mobile */
}
.one-column .image-simple .-span-col-1 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .one-column .image-simple .-span-col-1 {
    width: 100%;
  }
}
.two-column .image-simple {
  /* Desktop */
  /* Mobile */
}
.two-column .image-simple .-span-col-1 {
  width: 41.66667%;
}
.two-column .image-simple .-span-col-2 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .two-column .image-simple .-span-col-1 {
    width: 100%;
  }
  .two-column .image-simple .-span-col-2 {
    width: 100%;
  }
}
.three-column .image-simple {
  /* Desktop */
  /* Mobile */
}
.three-column .image-simple .-span-col-1 {
  width: 26.31579%;
}
.three-column .image-simple .-span-col-2 {
  width: 63.15789%;
}
.three-column .image-simple .-span-col-3 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .three-column .image-simple .-span-col-1 {
    width: 100%;
  }
  .three-column .image-simple .-span-col-2 {
    width: 100%;
  }
  .three-column .image-simple .-span-col-3 {
    width: 100%;
  }
}
.four-column .image-simple {
  /* Desktop */
  /* Mobile */
}
.four-column .image-simple .-span-col-1 {
  width: 19.23077%;
}
.four-column .image-simple .-span-col-2 {
  width: 46.15385%;
}
.four-column .image-simple .-span-col-3 {
  width: 73.07692%;
}
.four-column .image-simple .-span-col-4 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .four-column .image-simple .-span-col-1 {
    width: 100%;
  }
  .four-column .image-simple .-span-col-2 {
    width: 100%;
  }
  .four-column .image-simple .-span-col-3 {
    width: 100%;
  }
  .four-column .image-simple .-span-col-4 {
    width: 100%;
  }
}
.five-column .image-simple {
  /* Desktop */
  /* Mobile */
}
.five-column .image-simple .-span-col-1 {
  width: 15.15152%;
}
.five-column .image-simple .-span-col-2 {
  width: 36.36364%;
}
.five-column .image-simple .-span-col-3 {
  width: 57.57576%;
}
.five-column .image-simple .-span-col-4 {
  width: 78.78788%;
}
.five-column .image-simple .-span-col-5 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .five-column .image-simple .-span-col-1 {
    width: 100%;
  }
  .five-column .image-simple .-span-col-2 {
    width: 100%;
  }
  .five-column .image-simple .-span-col-3 {
    width: 100%;
  }
  .five-column .image-simple .-span-col-4 {
    width: 100%;
  }
  .five-column .image-simple .-span-col-5 {
    width: 100%;
  }
}
.six-column .image-simple {
  /* Desktop */
  /* Mobile */
}
.six-column .image-simple .-span-col-1 {
  width: 12.5%;
}
.six-column .image-simple .-span-col-2 {
  width: 30%;
}
.six-column .image-simple .-span-col-3 {
  width: 47.5%;
}
.six-column .image-simple .-span-col-4 {
  width: 65%;
}
.six-column .image-simple .-span-col-5 {
  width: 82.5%;
}
.six-column .image-simple .-span-col-6 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .six-column .image-simple .-span-col-1 {
    width: 100%;
  }
  .six-column .image-simple .-span-col-2 {
    width: 100%;
  }
  .six-column .image-simple .-span-col-3 {
    width: 100%;
  }
  .six-column .image-simple .-span-col-4 {
    width: 100%;
  }
  .six-column .image-simple .-span-col-5 {
    width: 100%;
  }
  .six-column .image-simple .-span-col-6 {
    width: 100%;
  }
}
.seven-column .image-simple {
  /* Desktop */
  /* Mobile */
}
.seven-column .image-simple .-span-col-1 {
  width: 10.6383%;
}
.seven-column .image-simple .-span-col-2 {
  width: 25.53191%;
}
.seven-column .image-simple .-span-col-3 {
  width: 40.42553%;
}
.seven-column .image-simple .-span-col-4 {
  width: 55.31915%;
}
.seven-column .image-simple .-span-col-5 {
  width: 70.21277%;
}
.seven-column .image-simple .-span-col-6 {
  width: 85.10638%;
}
.seven-column .image-simple .-span-col-7 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .seven-column .image-simple .-span-col-1 {
    width: 100%;
  }
  .seven-column .image-simple .-span-col-2 {
    width: 100%;
  }
  .seven-column .image-simple .-span-col-3 {
    width: 100%;
  }
  .seven-column .image-simple .-span-col-4 {
    width: 100%;
  }
  .seven-column .image-simple .-span-col-5 {
    width: 100%;
  }
  .seven-column .image-simple .-span-col-6 {
    width: 100%;
  }
  .seven-column .image-simple .-span-col-7 {
    width: 100%;
  }
}
.eight-column .image-simple {
  /* Desktop */
  /* Mobile */
}
.eight-column .image-simple .-span-col-1 {
  width: 9.25926%;
}
.eight-column .image-simple .-span-col-2 {
  width: 22.22222%;
}
.eight-column .image-simple .-span-col-3 {
  width: 35.18519%;
}
.eight-column .image-simple .-span-col-4 {
  width: 48.14815%;
}
.eight-column .image-simple .-span-col-5 {
  width: 61.11111%;
}
.eight-column .image-simple .-span-col-6 {
  width: 74.07407%;
}
.eight-column .image-simple .-span-col-7 {
  width: 87.03704%;
}
.eight-column .image-simple .-span-col-8 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .eight-column .image-simple .-span-col-1 {
    width: 100%;
  }
  .eight-column .image-simple .-span-col-2 {
    width: 100%;
  }
  .eight-column .image-simple .-span-col-3 {
    width: 100%;
  }
  .eight-column .image-simple .-span-col-4 {
    width: 100%;
  }
  .eight-column .image-simple .-span-col-5 {
    width: 100%;
  }
  .eight-column .image-simple .-span-col-6 {
    width: 100%;
  }
  .eight-column .image-simple .-span-col-7 {
    width: 100%;
  }
  .eight-column .image-simple .-span-col-8 {
    width: 100%;
  }
}
.nine-column .image-simple {
  /* Desktop */
  /* Mobile */
}
.nine-column .image-simple .-span-col-1 {
  width: 8.19672%;
}
.nine-column .image-simple .-span-col-2 {
  width: 19.67213%;
}
.nine-column .image-simple .-span-col-3 {
  width: 31.14754%;
}
.nine-column .image-simple .-span-col-4 {
  width: 42.62295%;
}
.nine-column .image-simple .-span-col-5 {
  width: 54.09836%;
}
.nine-column .image-simple .-span-col-6 {
  width: 65.57377%;
}
.nine-column .image-simple .-span-col-7 {
  width: 77.04918%;
}
.nine-column .image-simple .-span-col-8 {
  width: 88.52459%;
}
.nine-column .image-simple .-span-col-9 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .nine-column .image-simple .-span-col-1 {
    width: 100%;
  }
  .nine-column .image-simple .-span-col-2 {
    width: 100%;
  }
  .nine-column .image-simple .-span-col-3 {
    width: 100%;
  }
  .nine-column .image-simple .-span-col-4 {
    width: 100%;
  }
  .nine-column .image-simple .-span-col-5 {
    width: 100%;
  }
  .nine-column .image-simple .-span-col-6 {
    width: 100%;
  }
  .nine-column .image-simple .-span-col-7 {
    width: 100%;
  }
  .nine-column .image-simple .-span-col-8 {
    width: 100%;
  }
  .nine-column .image-simple .-span-col-9 {
    width: 100%;
  }
}
.ten-column .image-simple {
  /* Desktop */
  /* Mobile */
}
.ten-column .image-simple .-span-col-1 {
  width: 7.35294%;
}
.ten-column .image-simple .-span-col-2 {
  width: 17.64706%;
}
.ten-column .image-simple .-span-col-3 {
  width: 27.94118%;
}
.ten-column .image-simple .-span-col-4 {
  width: 38.23529%;
}
.ten-column .image-simple .-span-col-5 {
  width: 48.52941%;
}
.ten-column .image-simple .-span-col-6 {
  width: 58.82353%;
}
.ten-column .image-simple .-span-col-7 {
  width: 69.11765%;
}
.ten-column .image-simple .-span-col-8 {
  width: 79.41176%;
}
.ten-column .image-simple .-span-col-9 {
  width: 89.70588%;
}
.ten-column .image-simple .-span-col-10 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .ten-column .image-simple .-span-col-1 {
    width: 100%;
  }
  .ten-column .image-simple .-span-col-2 {
    width: 100%;
  }
  .ten-column .image-simple .-span-col-3 {
    width: 100%;
  }
  .ten-column .image-simple .-span-col-4 {
    width: 100%;
  }
  .ten-column .image-simple .-span-col-5 {
    width: 100%;
  }
  .ten-column .image-simple .-span-col-6 {
    width: 100%;
  }
  .ten-column .image-simple .-span-col-7 {
    width: 100%;
  }
  .ten-column .image-simple .-span-col-8 {
    width: 100%;
  }
  .ten-column .image-simple .-span-col-9 {
    width: 100%;
  }
  .ten-column .image-simple .-span-col-10 {
    width: 100%;
  }
}
.eleven-column .image-simple {
  /* Desktop */
  /* Mobile */
}
.eleven-column .image-simple .-span-col-1 {
  width: 6.66667%;
}
.eleven-column .image-simple .-span-col-2 {
  width: 16%;
}
.eleven-column .image-simple .-span-col-3 {
  width: 25.33333%;
}
.eleven-column .image-simple .-span-col-4 {
  width: 34.66667%;
}
.eleven-column .image-simple .-span-col-5 {
  width: 44%;
}
.eleven-column .image-simple .-span-col-6 {
  width: 53.33333%;
}
.eleven-column .image-simple .-span-col-7 {
  width: 62.66667%;
}
.eleven-column .image-simple .-span-col-8 {
  width: 72%;
}
.eleven-column .image-simple .-span-col-9 {
  width: 81.33333%;
}
.eleven-column .image-simple .-span-col-10 {
  width: 90.66667%;
}
.eleven-column .image-simple .-span-col-11 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .eleven-column .image-simple .-span-col-1 {
    width: 100%;
  }
  .eleven-column .image-simple .-span-col-2 {
    width: 100%;
  }
  .eleven-column .image-simple .-span-col-3 {
    width: 100%;
  }
  .eleven-column .image-simple .-span-col-4 {
    width: 100%;
  }
  .eleven-column .image-simple .-span-col-5 {
    width: 100%;
  }
  .eleven-column .image-simple .-span-col-6 {
    width: 100%;
  }
  .eleven-column .image-simple .-span-col-7 {
    width: 100%;
  }
  .eleven-column .image-simple .-span-col-8 {
    width: 100%;
  }
  .eleven-column .image-simple .-span-col-9 {
    width: 100%;
  }
  .eleven-column .image-simple .-span-col-10 {
    width: 100%;
  }
  .eleven-column .image-simple .-span-col-11 {
    width: 100%;
  }
}
.full.gridblock .image-simple {
  /* Desktop */
  /* Mobile */
}
.full.gridblock .image-simple .-span-col-1 {
  width: 6.09756%;
}
.full.gridblock .image-simple .-span-col-2 {
  width: 14.63415%;
}
.full.gridblock .image-simple .-span-col-3 {
  width: 23.17073%;
}
.full.gridblock .image-simple .-span-col-4 {
  width: 31.70732%;
}
.full.gridblock .image-simple .-span-col-5 {
  width: 40.2439%;
}
.full.gridblock .image-simple .-span-col-6 {
  width: 48.78049%;
}
.full.gridblock .image-simple .-span-col-7 {
  width: 57.31707%;
}
.full.gridblock .image-simple .-span-col-8 {
  width: 65.85366%;
}
.full.gridblock .image-simple .-span-col-9 {
  width: 74.39024%;
}
.full.gridblock .image-simple .-span-col-10 {
  width: 82.92683%;
}
.full.gridblock .image-simple .-span-col-11 {
  width: 91.46341%;
}
.full.gridblock .image-simple .-span-col-12 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .full.gridblock .image-simple .-span-col-1 {
    width: 100%;
  }
  .full.gridblock .image-simple .-span-col-2 {
    width: 100%;
  }
  .full.gridblock .image-simple .-span-col-3 {
    width: 100%;
  }
  .full.gridblock .image-simple .-span-col-4 {
    width: 100%;
  }
  .full.gridblock .image-simple .-span-col-5 {
    width: 100%;
  }
  .full.gridblock .image-simple .-span-col-6 {
    width: 100%;
  }
  .full.gridblock .image-simple .-span-col-7 {
    width: 100%;
  }
  .full.gridblock .image-simple .-span-col-8 {
    width: 100%;
  }
  .full.gridblock .image-simple .-span-col-9 {
    width: 100%;
  }
  .full.gridblock .image-simple .-span-col-10 {
    width: 100%;
  }
  .full.gridblock .image-simple .-span-col-11 {
    width: 100%;
  }
  .full.gridblock .image-simple .-span-col-12 {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .image-simple .image-container {
    padding: 15px;
  }
}

.pricing-wizard {
  /*------------------------------------*\
     Pricing Wizard Container
  \*------------------------------------*/
  /*------------------------------------*\
     Questions 
  \*------------------------------------*/
  /*** Messages ***/
  /*------------------------------------*\
     Products
  \*------------------------------------*/
  /*** Card Container ***/
  /*** Cards ***/
  /*------------------------------------*\
     Hacks / Overrides
  \*------------------------------------*/
}
.pricing-wizard * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.pricing-wizard .pricing-wizard__title {
  margin-top: 0;
  padding: 0;
  color: #FFF;
  font-family: "Arial", sans-serif;
}
.pricing-wizard .pricing-wizard__button {
  display: block;
}
.pricing-wizard .pricing-wizard__display {
  clear: both;
  display: none;
  margin-bottom: 15px;
  /*** button stepper ***/
}
.pricing-wizard .pricing-wizard__display .nextprevbuttons {
  clear: both;
  display: block;
  margin-top: 25px;
}
.pricing-wizard .pricing-wizard__display .nextprevbuttons .button {
  margin-bottom: 0;
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
}
@media screen and (max-width: 767px) {
  .pricing-wizard .pricing-wizard__display .nextprevbuttons .button {
    margin-left: 0;
    margin-right: 0;
  }
}
.pricing-wizard .pricing-wizard__display .nextprevbuttons .button.-prev {
  float: left;
}
.pricing-wizard .pricing-wizard__display .nextprevbuttons .button.-next {
  float: right;
}
.pricing-wizard .pricing-wizard__display .nextprevbuttons .-steps {
  display: block;
  text-align: center;
  color: #666;
}
.wcmmode-edit .pricing-wizard .pricing-wizard__display {
  display: block;
}
.pricing-wizard .pricing-wizard__display li {
  list-style-type: none;
}
.pricing-wizard .pricing-wizard__display li span {
  padding-left: 3px;
  margin-top: 3px;
}
.pricing-wizard .pricing-wizard__display .pricing-wizard__close {
  display: block;
  width: 28px;
  height: 28px;
  margin-top: -6px;
  line-height: 28px;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  border-radius: 100%;
  text-align: center;
  text-decoration: none;
  background-color: #FFF;
  font-size: 14px;
  font-weight: bold;
  cursor: pointer;
  float: right;
}
.pricing-wizard .pricing-wizard__display .-componentheading {
  display: none;
}
.pricing-wizard .pricing-wizard__display .-startoverdiv {
  display: none;
  width: 100%;
  text-align: center;
  margin-top: 15px;
  clear: both;
}
.pricing-wizard .pricing-wizard__display .questions {
  clear: both;
}
.pricing-wizard .pricing-wizard__display .questions h2 {
  margin-top: 0;
  font-size: 18px;
  color: #333;
}
.pricing-wizard .pricing-wizard__display .questions .form .form__rows ul {
  padding-left: 20px;
}
.pricing-wizard .pricing-wizard__display .questions .pricing-wizard-question {
  display: none;
  /* author mode */
}
.pricing-wizard .pricing-wizard__display .questions .pricing-wizard-question .-answer ul {
  display: none;
}
.wcmmode-edit .pricing-wizard .pricing-wizard__display .questions .pricing-wizard-question .-answer ul {
  display: block;
}
.wcmmode-edit .pricing-wizard .pricing-wizard__display .questions .pricing-wizard-question {
  display: block;
  box-sizing: border-box;
  border-style: dotted;
  border-color: #fff;
  border-width: 2px;
  margin: 15px 0;
}
.wcmmode-edit .pricing-wizard .pricing-wizard__display .questions .pricing-wizard-question .-componentheading {
  display: block;
  width: 100%;
  padding: 5px;
  text-align: center;
  background-color: #e5e5ff;
  color: #000;
}
.pricing-wizard .pricing-wizard__display-header {
  padding: 20px;
  background-color: #4f758b;
  -moz-border-radius: 6px 6px 0 0;
  -webkit-border-radius: 6px;
  border-radius: 6px 6px 0 0;
}
.pricing-wizard .pricing-wizard__display-body {
  border: 1px solid #E3E3E3;
  background-color: #F7F7F7;
  border-top: none;
  padding: 20px;
  -moz-border-radius: 0 0 6px 6px;
  -webkit-border-radius: 0;
  border-radius: 0 0 6px 6px;
}
.pricing-wizard .pricing-wizard__no-results {
  color: #666;
}
.pricing-wizard .pricing-wizard__error {
  color: #b65f63;
}
.pricing-wizard .productdisplay {
  clear: both;
  display: none;
  /* author mode */
}
.pricing-wizard .productdisplay .products {
  float: left;
  width: 100%;
}
.wcmmode-edit .pricing-wizard .productdisplay {
  display: block;
}
.wcmmode-edit .pricing-wizard .productdisplay .pricing-wizard-product {
  display: block;
  margin-top: 15px;
}
.wcmmode-edit .pricing-wizard .productdisplay .pricing-wizard-product .-componentheading {
  display: block;
  width: 100%;
  padding: 5px;
  text-align: center;
  background-color: #E5E5FF;
  color: #000;
}
.pricing-wizard .pricing-wizard-product {
  box-shadow: 0 1.5px 4px rgba(0, 0, 0, 0.24), 0 1.5px 6px rgba(0, 0, 0, 0.12);
  float: left;
  background-color: #FFF;
  margin-bottom: 25px;
  /*** layout ***/
  width: 48%;
  margin-right: 1%;
  margin-left: 1%;
  /* mobile */
  /*** footer ***/
}
@media screen and (max-width: 599px) {
  .pricing-wizard .pricing-wizard-product {
    width: 100%;
    margin-right: 0;
  }
}
.pricing-wizard .pricing-wizard-product__img img {
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
.pricing-wizard .pricing-wizard-product__details {
  padding: 20px;
}
.pricing-wizard .pricing-wizard-product__title {
  color: #333;
  font-size: 24px;
  line-height: 1.4;
  font-weight: bold;
  font-family: "Arial", sans-serif;
  padding: 0;
  margin-top: 0;
}
.pricing-wizard .pricing-wizard-product__formats {
  color: #cf7f00;
  font-style: italic;
}
.pricing-wizard .pricing-wizard-product__additional-info {
  display: none;
}
.pricing-wizard .pricing-wizard-product__description {
  font-size: 14px;
  font-color: #333;
}
.pricing-wizard .pricing-wizard-product__description li {
  list-style: square;
}
.pricing-wizard .pricing-wizard-product footer {
  margin-top: 20px;
}
.pricing-wizard .pricing-wizard-product__prices {
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  float: left;
}
@media (min-width: 768px) and (max-width: 979px), (min-width: 601px) and (max-width: 767px), (max-width: 480px) {
  .pricing-wizard .pricing-wizard-product__prices {
    margin-bottom: 10px;
  }
}
.pricing-wizard .pricing-wizard-product__base-price {
  color: #CCC;
}
.pricing-wizard .pricing-wizard-product__user-price {
  color: #666;
  font-size: 24px;
  font-weight: bold;
}
.pricing-wizard .pricing-wizard-product__cta-button {
  /* Desktop */
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  float: right;
}
.pricing-wizard .pricing-wizard-product__cta-button .button {
  float: right;
  margin-bottom: 0;
  /* override global button margins on mobile */
}
@media screen and (max-width: 767px) {
  .pricing-wizard .pricing-wizard-product__cta-button .button {
    margin-right: 0;
    margin-left: 0;
  }
}
@media (min-width: 768px) and (max-width: 979px), (min-width: 601px) and (max-width: 767px), (max-width: 480px) {
  .pricing-wizard .pricing-wizard-product__cta-button {
    display: block;
    width: 100%;
    float: left;
  }
  .pricing-wizard .pricing-wizard-product__cta-button .button {
    float: left;
  }
}
.pricing-wizard .pricing-wizard-product__discount-msg {
  color: #B65F63;
}
#main .pricing-wizard .pricing-wizard__title {
  margin-right: 0;
  margin-left: 0;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: bold;
  line-height: 16px;
}
#main .pricing-wizard .form .form__rows.-layout-stacked input[type="radio"] {
  margin-top: 3px;
}
@media screen and (max-width: 767px) {
  #main .pricing-wizard .questions h2 {
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
  }
  #main .pricing-wizard .pricing-wizard-product h1, #main .pricing-wizard .pricing-wizard-product h2, #main .pricing-wizard .pricing-wizard-product h3, #main .pricing-wizard .pricing-wizard-product h4, #main .pricing-wizard .pricing-wizard-product h5, #main .pricing-wizard .pricing-wizard-product h6, #main .pricing-wizard .pricing-wizard-product p, #main .pricing-wizard .pricing-wizard-product ul, #main .pricing-wizard .pricing-wizard-product ol, #main .pricing-wizard .pricing-wizard-product li {
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
  }
  #main .pricing-wizard .pricing-wizard-product ul {
    padding-left: 10px;
  }
  #main .pricing-wizard .pricing-wizard-product li {
    list-style: square;
  }
}

.no-close .ui-dialog-titlebar-close {
  display: none;
}

.ajax-loader {
  background-position: center right;
  background-repeat: no-repeat;
  width: 50px;
  height: 50px;
  background-image: url("//img.aafp.net/ajax-loader.gif");
}

section#content .nomination-form h1, section#content .nomination-form h2, section#content .nomination-form h3, section#content .nomination-form h4, section#content .nomination-form p, #main .nomination-form h1, #main .nomination-form h2, #main .nomination-form h3, #main .nomination-form h4, #main .nomination-form p, .nomination-form h1, .nomination-form h2, .nomination-form h3, .nomination-form h4, .nomination-form p {
  margin-left: 0px;
  padding-left: 0px;
}
section#content .nomination-form a.button, #main .nomination-form a.button, .nomination-form a.button {
  margin-left: 0px;
  margin-right: 10px;
}
section#content .nomination-form .form-control, #main .nomination-form .form-control, .nomination-form .form-control {
  margin: 0px;
  margin-bottom: 10px;
  box-sizing: border-box;
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  clear: left;
}
section#content .nomination-form .prefill, #main .nomination-form .prefill, .nomination-form .prefill {
  margin-left: 5px;
}
section#content .nomination-form .prefill-address, #main .nomination-form .prefill-address, .nomination-form .prefill-address {
  margin-left: 20px;
}
section#content .nomination-form textarea, #main .nomination-form textarea, .nomination-form textarea {
  height: 100px;
}
section#content .nomination-form li, #main .nomination-form li, .nomination-form li {
  width: 90%;
  list-style-type: none;
}
section#content .nomination-form .nomination-category p, #main .nomination-form .nomination-category p, .nomination-form .nomination-category p {
  margin-left: 22px;
}
section#content .nomination-form .save-submit-buttons, #main .nomination-form .save-submit-buttons, .nomination-form .save-submit-buttons {
  display: none;
}
section#content .nomination-form .categorydiv, #main .nomination-form .categorydiv, .nomination-form .categorydiv {
  float: left;
  margin-left: 5px;
}
section#content .nomination-form .requireddiv, #main .nomination-form .requireddiv, .nomination-form .requireddiv {
  clear: both;
}
section#content .nomination-form .statelicensure, #main .nomination-form .statelicensure, .nomination-form .statelicensure {
  margin-left: 20px;
}
section#content .nomination-form .statelicensure span, #main .nomination-form .statelicensure span, .nomination-form .statelicensure span {
  margin-right: 10px;
}

/*------------------------------------*\
  Mobile 
\*------------------------------------*/
.mobilesearch {
  /*** mobile search box squeeze for 320px screen width and smaller ***/
}
@media screen and (max-width: 340px) {
  .mobilesearch {
    width: 96%;
    margin-left: 2%;
  }
}

html {
  height: calc(100% - 170px);
}
@media screen and (min-width: 768px) and (min-height: 1px) {
  html {
    height: calc(100% - 120px);
  }
}
.lt-ie9 html {
  height: calc(100% - 120px);
}
.cq-wcm-edit html {
  height: calc(100% - 120px);
}
@media screen and (min-width: 980px) and (min-height: 1px) {
  html {
    height: calc(100% - 100px);
  }
}
.lt-ie9 html {
  height: calc(100% - 100px);
}
.cq-wcm-edit html {
  height: calc(100% - 100px);
}

/** Body class to make the footer stick to the bottom **/
body.layout-simple-footer {
  position: relative;
  padding-bottom: 170px;
  min-height: 100%;
}
@media screen and (min-width: 768px) and (min-height: 1px) {
  body.layout-simple-footer {
    padding-bottom: 120px;
  }
}
.lt-ie9 body.layout-simple-footer {
  padding-bottom: 120px;
}
.cq-wcm-edit body.layout-simple-footer {
  padding-bottom: 120px;
}
@media screen and (min-width: 980px) and (min-height: 1px) {
  body.layout-simple-footer {
    padding-bottom: 100px;
  }
}
.lt-ie9 body.layout-simple-footer {
  padding-bottom: 100px;
}
.cq-wcm-edit body.layout-simple-footer {
  padding-bottom: 100px;
}
body.layout-simple-footer #footer-container {
  position: unset;
  display: block;
}

.simple-footer {
  box-sizing: border-box;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 20px 20px 11px 20px;
  border-top: #cf7f00 4px solid;
  background-color: #e3e3e3;
}
@media screen and (min-width: 768px) and (min-height: 1px) {
  .simple-footer {
    width: 100%;
    margin-top: 0;
  }
}
.lt-ie9 .simple-footer {
  width: 100%;
  margin-top: 0;
}
.cq-wcm-edit .simple-footer {
  width: 100%;
  margin-top: 0;
}
.simple-footer__copyrights, .simple-footer__links {
  display: inline-block;
}
@media screen and (min-width: 980px) and (min-height: 1px) {
  .simple-footer__links {
    float: right;
  }
}
.lt-ie9 .simple-footer__links {
  float: right;
}
.cq-wcm-edit .simple-footer__links {
  float: right;
}
.simple-footer__container {
  text-align: center;
}
@media screen and (min-width: 980px) and (min-height: 1px) {
  .simple-footer__container {
    text-align: left;
  }
}
.lt-ie9 .simple-footer__container {
  text-align: left;
}
.cq-wcm-edit .simple-footer__container {
  text-align: left;
}

.site-header {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /*------------------------------------*\
     Mobile Display
  \*------------------------------------*/
  /*------------------------------------*\
     Tablet Display
  \*------------------------------------*/
  /*------------------------------------*\
     Row Styles
  \*------------------------------------*/
  background: #FFF;
  position: relative;
  /*** Secondary Navigation / Shopping Cart ***/
  /*** Branding / Search / Member Account ***/
  /*** Primary Navigation ***/
  /*------------------------------------*\
     Print Styles
  \*------------------------------------*/
}
.site-header * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .site-header {
    /*** parent container being utilized for layout ***/
    padding: 15px;
    border-bottom: 4px solid #cf7f00;
    min-height: 79px;
    /*** hide navigation ***/
  }
  .site-header .row--a, .site-header .row--c {
    display: none;
  }
}
@media screen and (min-width: 768px) and (max-width: 1000px) {
  .site-header .site-row__container {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.site-header .row--a {
  background: #444444;
  border-top: 4px solid #cf7f00;
}
.site-header .row--b {
  /* displays proper height of row before logo fully loads */
  min-height: 96px;
}
@media screen and (max-width: 767px) {
  .site-header .row--b {
    min-height: 0;
  }
}
.site-header .row--c {
  background: #eaeaea;
  border: 1px solid #dadada;
  border-right: none;
  border-left: none;
}
@media print {
  .site-header {
    /*** hide navigation ***/
    /*** hide targeted element of row B ***/
  }
  .site-header .row--a, .site-header .row--c {
    display: none !important;
  }
  .site-header .row--b .logo a,
  .site-header .row--b .globalsearch,
  .site-header .row--b .signin {
    display: none !important;
  }
}

/*------------------------------------*\
   Component Layout
\*------------------------------------*/
/*** Row A ***/
.nav-secondary {
  float: left;
  margin-left: -10px;
}

.shopping-cart {
  float: right;
  margin-right: -10px;
}

/*** Row B ***/
.logo {
  float: left;
  width: 150px;
  margin-top: 15px;
  margin-bottom: 15px;
  clear: both;
}
.logo #logo {
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .logo {
    width: 102px;
    margin: 0;
  }
}

.site-header .globalsearch {
  float: right;
  width: 300px;
  margin-top: 30px;
  /* Hide header search on Mobile */
}
@media screen and (max-width: 767px) {
  .site-header .globalsearch {
    display: none;
  }
}

.mobilenav {
  display: none;
}
@media screen and (max-width: 767px) {
  .mobilenav {
    display: block;
    float: right;
    margin-left: 15px;
  }
  .mobilenav .mobile-navigation {
    margin-top: 0;
  }
}

.account-portal {
  float: right;
  margin-top: 30px;
  margin-left: 30px;
  min-width: 185px;
}
@media screen and (max-width: 767px) {
  .account-portal {
    min-width: 1px;
    margin-top: 0;
    margin-left: 0;
  }
}

/*------------------------------------*\
   Component Styles
\*------------------------------------*/
/*** Secondary Nav ***/
.nav-secondary li {
  float: left;
  border-left: 1px solid #666666;
}
.nav-secondary li.first-child {
  border-left: none;
}

/*** Logo ***/
.logo img {
  max-width: 100%;
}

/*** account portal ***/
.account-portal {
  text-align: right;
  font: 14px/20px "Arial", sans-serif;
  /* Sign-in*/
  /* Greeting */
  /* Links / Nav */
  /* 
      Member Services Links
      -given four class specificity to override the .pv-member & .pv-nonmember specificity
  */
}
.account-portal__logged-in-utilities {
  display: none;
  position: relative;
  clear: both;
}
.is-signed-in .account-portal .account-portal__sign-in {
  display: none;
}
.is-signed-in .account-portal .account-portal__logged-in-utilities {
  display: block;
}
.account-portal__greeting {
  position: relative;
  color: #666666;
  z-index: 5;
}
.account-portal__greeting.-nav-active .account-portal__welcome {
  padding: 5px 10px 5px;
  border: 1px solid #ccc;
  border-bottom: none;
  background: #FBFBFB;
}
@media screen and (max-width: 767px) {
  .account-portal__greeting.-nav-active .full-name {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .account-portal__greeting {
    width: 100px;
    color: #4f758b;
  }
  .account-portal__greeting:hover {
    cursor: pointer;
  }
  .account-portal__greeting .full-name {
    display: block;
  }
}
.account-portal__links {
  z-index: 4;
}
.account-portal__links a {
  padding: 0 10px 0 3px;
  border-right: 1px solid #666666;
}
.account-portal__links a:first-child {
  padding-left: 0;
}
.account-portal__links a:last-child {
  border-right: none;
  padding-right: 0;
}
.account-portal__links a.account-portal__member-services {
  display: none;
}
@media screen and (max-width: 767px) {
  .account-portal__links {
    display: none;
    width: 200px;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid #ccc;
    background: #FBFBFB;
  }
  .account-portal__links a {
    display: block;
    text-align: left;
    border-right: none;
    border-bottom: 1px solid #e3e3e3;
    padding: 10px;
  }
  .account-portal__links a:first-child {
    padding-left: 10px;
  }
  .account-portal__links a:last-child {
    border-bottom: none;
    padding-right: 10px;
  }
  .account-portal__links a.account-portal__member-services {
    display: block;
  }
  .account-portal__links.-is-active {
    display: block;
    position: absolute;
    right: -7px;
    top: 22px;
  }
}
.account-portal .account-portal__logged-in-utilities .account-portal__links .account-portal__member-services {
  display: none;
}
@media screen and (max-width: 767px) {
  .account-portal .account-portal__logged-in-utilities .account-portal__links .account-portal__member-services {
    display: block;
  }
}

/*** shop ***/
.shopping-cart {
  max-width: 210px;
}
.shopping-cart li {
  float: right;
  border-right: 1px solid #666666;
}
.shopping-cart li:first-child {
  border-right: none;
}

/*** Primary Nav ***/
.nav-primary ul {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}
.nav-primary li {
  display: block;
  float: left;
  width: auto;
  border-left: 1px solid #dadada;
  vertical-align: middle;
  text-align: center;
}
.nav-primary li:last-child {
  border-right: 1px solid #dadada;
}
.nav-primary a {
  display: block;
  padding: 5px 10px;
  text-decoration: none;
  font: 18px/21px "Times New Roman", serif;
  color: #444444;
  /* Font shrink for tablet view to prevent link titles from line break */
}
.nav-primary a:hover, .nav-primary a.active {
  color: #eaeaea;
  background: #444444;
}
@media screen and (min-width: 768px) and (max-width: 979px) {
  .nav-primary a {
    font-size: 15px;
    padding: 5px 7px;
  }
}

/*** Secondary Nav / Shopping Cart shared styles ***/
.nav-secondary ul, .shopping-cart ul {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}
.nav-secondary li, .shopping-cart li {
  width: auto;
  vertical-align: middle;
  text-align: center;
}
.nav-secondary a, .shopping-cart a {
  display: block;
  padding: 5px 10px;
  text-decoration: none;
  color: #FFF;
}
.nav-secondary a:hover, .nav-secondary a.active, .shopping-cart a:hover, .shopping-cart a.active {
  background: #cf7f00;
}

header.site-header {
  /*------------------------------------*\
    Navigation  
  \*------------------------------------*/
}
header.site-header .secondary-nav a .fa-star {
  color: #cf7f00;
}
header.site-header .secondary-nav a:hover .fa-star, header.site-header .secondary-nav a.active .fa-star {
  color: white;
}

header.global {
  /*------------------------------------*\
    Search Box Positioning  
  \*------------------------------------*/
  /*------------------------------------*\
    Utility Nav (header v1.0)  
  \*------------------------------------*/
}
header.global .globalsearch {
  width: 350px;
  float: right;
  margin-top: 58px;
  /*** tablet view ***/
  /*** mobile view ***/
}
@media screen and (min-width: 768px) and (max-width: 979px) {
  header.global .globalsearch {
    clear: both;
    margin: 10px 0 0 10px;
  }
}
@media screen and (max-width: 767px) {
  header.global .globalsearch {
    display: none;
  }
}
header.global nav#utility-nav {
  margin-left: 40px;
}

/*------------------------------------*\
   Simple Header
\*------------------------------------*/
header.site-header.-simple-header {
  border-bottom: 4px solid #cf7f00;
  margin-bottom: 15px;
}
@media screen and (min-width: 768px) and (min-height: 1px) {
  header.site-header.-simple-header {
    margin-bottom: 0;
  }
}
.lt-ie9 header.site-header.-simple-header {
  margin-bottom: 0;
}
.cq-wcm-edit header.site-header.-simple-header {
  margin-bottom: 0;
}
header.site-header.-simple-header .account-portal__greeting .full-name {
  display: inline;
}

/*------------------------------------*\
  Full-width  
\*------------------------------------*/
/*------------------------------------*\
  Sidebar-left  
\*------------------------------------*/
.site-aafp.template-standardcontent.layout-sidebar,
.site-aafp.template-newsarticletemplate.layout-sidebar,
.site-aafp.template-standardlandingpage {
  /*** article text link underline ***/
}
.site-aafp.template-standardcontent.layout-sidebar .main-content a,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content a,
.site-aafp.template-standardlandingpage .main-content a {
  text-decoration: underline;
}
.site-aafp.template-standardcontent.layout-sidebar .main-content h1 a, .site-aafp.template-standardcontent.layout-sidebar .main-content h2 a, .site-aafp.template-standardcontent.layout-sidebar .main-content h3 a, .site-aafp.template-standardcontent.layout-sidebar .main-content h4 a, .site-aafp.template-standardcontent.layout-sidebar .main-content h5 a,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content h1 a,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content h2 a,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content h3 a,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content h4 a,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content h5 a,
.site-aafp.template-standardlandingpage .main-content h1 a,
.site-aafp.template-standardlandingpage .main-content h2 a,
.site-aafp.template-standardlandingpage .main-content h3 a,
.site-aafp.template-standardlandingpage .main-content h4 a,
.site-aafp.template-standardlandingpage .main-content h5 a {
  text-decoration: none;
}
.site-aafp.template-standardcontent.layout-sidebar .main-content h1 a:hover, .site-aafp.template-standardcontent.layout-sidebar .main-content h2 a:hover, .site-aafp.template-standardcontent.layout-sidebar .main-content h3 a:hover, .site-aafp.template-standardcontent.layout-sidebar .main-content h4 a:hover, .site-aafp.template-standardcontent.layout-sidebar .main-content h5 a:hover,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content h1 a:hover,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content h2 a:hover,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content h3 a:hover,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content h4 a:hover,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content h5 a:hover,
.site-aafp.template-standardlandingpage .main-content h1 a:hover,
.site-aafp.template-standardlandingpage .main-content h2 a:hover,
.site-aafp.template-standardlandingpage .main-content h3 a:hover,
.site-aafp.template-standardlandingpage .main-content h4 a:hover,
.site-aafp.template-standardlandingpage .main-content h5 a:hover {
  text-decoration: none;
}
.site-aafp.template-standardcontent.layout-sidebar .main-content .calloutbox a, .site-aafp.template-standardcontent.layout-sidebar .main-content .calltoactionbox a,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content .calloutbox a,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content .calltoactionbox a,
.site-aafp.template-standardlandingpage .main-content .calloutbox a,
.site-aafp.template-standardlandingpage .main-content .calltoactionbox a {
  text-decoration: none;
}
.site-aafp.template-standardcontent.layout-sidebar .main-content .calloutbox a:hover, .site-aafp.template-standardcontent.layout-sidebar .main-content .calltoactionbox a:hover,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content .calloutbox a:hover,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content .calltoactionbox a:hover,
.site-aafp.template-standardlandingpage .main-content .calloutbox a:hover,
.site-aafp.template-standardlandingpage .main-content .calltoactionbox a:hover {
  text-decoration: underline;
}
.site-aafp.template-standardcontent.layout-sidebar .main-content .calloutbox .button:hover, .site-aafp.template-standardcontent.layout-sidebar .main-content .calltoactionbox .button:hover,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content .calloutbox .button:hover,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content .calltoactionbox .button:hover,
.site-aafp.template-standardlandingpage .main-content .calloutbox .button:hover,
.site-aafp.template-standardlandingpage .main-content .calltoactionbox .button:hover {
  text-decoration: none;
}
.site-aafp.template-standardcontent.layout-sidebar .main-content .button, .site-aafp.template-standardcontent.layout-sidebar .main-content .deck .button,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content .button,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content .deck .button,
.site-aafp.template-standardlandingpage .main-content .button,
.site-aafp.template-standardlandingpage .main-content .deck .button {
  text-decoration: none;
}
.site-aafp.template-standardcontent.layout-sidebar .main-content .button:hover, .site-aafp.template-standardcontent.layout-sidebar .main-content .deck .button:hover,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content .button:hover,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content .deck .button:hover,
.site-aafp.template-standardlandingpage .main-content .button:hover,
.site-aafp.template-standardlandingpage .main-content .deck .button:hover {
  text-decoration: none;
}
.site-aafp.template-standardcontent.layout-sidebar .main-content .favorite-btn,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content .favorite-btn,
.site-aafp.template-standardlandingpage .main-content .favorite-btn {
  text-decoration: none;
}
.site-aafp.template-standardcontent.layout-sidebar .main-content .favorite-btn:hover,
.site-aafp.template-newsarticletemplate.layout-sidebar .main-content .favorite-btn:hover,
.site-aafp.template-standardlandingpage .main-content .favorite-btn:hover {
  text-decoration: none;
}

/*------------------------------------*\
	Site Rows (Syndicated Rows like Header & footer)
\*------------------------------------*/
.site-row {
  width: 100%;
}

.site-row__container {
  width: 100%;
  max-width: 979px;
  margin: 0 auto;
}
@media screen and (max-width: 979px) {
  .site-row__container {
    max-width: 767px;
  }
}

/*------------------------------------*\
	Page Rows (To be used with Page Row Template)
\*------------------------------------*/
.template-pagerows .page-wrap {
  max-width: none;
  width: 100%;
}

.page-row {
  width: 100%;
  position: relative;
  z-index: 1;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 30px;
}
@media screen and (max-width: 767px) {
  .page-row {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.page-row__color-overlay {
  content: "";
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  position: absolute;
  z-index: -1;
}

.page-row__container {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
}

/*** Layouts ***/
.page-row {
  /* Boxed */
  /* Contained (default) */
  /* Not Contained */
  /* Flush */
}
.page-row.container-layout-boxed {
  max-width: 979px;
  margin: 30px auto;
  padding-right: 20px;
  padding-left: 20px;
}
@media screen and (max-width: 979px) {
  .page-row.container-layout-boxed {
    max-width: 747px;
  }
}
@media (max-width: 767px) {
  .page-row.container-layout-boxed {
    margin-top: 0;
    margin-bottom: 0;
  }
}
.page-row.container-layout-contained .page-row__container {
  max-width: 979px;
}
@media screen and (max-width: 979px) {
  .page-row.container-layout-contained .page-row__container {
    max-width: 747px;
  }
}
.page-row.container-layout-unconfined .page-row__container {
  max-width: none;
  padding: 0;
}
.page-row.container-layout-flush {
  padding: 0;
}
.page-row.container-layout-flush .page-row__container {
  max-width: none;
  padding: 0;
}

/*** Color Themes ***/
.page-row.type-theme-light h1, .page-row.type-theme-light h2, .page-row.type-theme-light h3, .page-row.type-theme-light h4, .page-row.type-theme-light h5, .page-row.type-theme-light h6, .page-row.type-theme-light p, .page-row.type-theme-light li {
  color: #FFF;
}
.page-row.type-theme-dark h1, .page-row.type-theme-dark h2, .page-row.type-theme-dark h3, .page-row.type-theme-dark h4, .page-row.type-theme-dark h5, .page-row.type-theme-dark h6, .page-row.type-theme-dark p, .page-row.type-theme-dark li {
  color: #333;
}

.template-pagerows {
  /*------------------------------------*\
  	AAFP Header / Footer / Page Width Adjustments
  \*------------------------------------*/
  /*** Reset Page Layout so sections are flush with header & footer ***/
  /*** Mobile Footer adjustments to work better with template ***/
  /*------------------------------------*\
  	Base Styles
  \*------------------------------------*/
}
.template-pagerows #main {
  width: 100%;
}
.template-pagerows #main, .template-pagerows #breadcrumbs-container {
  margin-top: 0;
}
.template-pagerows .mobilesubnav {
  display: none;
}
.template-pagerows .mobilefooter, .template-pagerows #mobile-footer .globalsearch {
  background-color: #FFF;
  box-shadow: none;
}
.template-pagerows #mobile-footer {
  padding-top: 20px;
}
.template-pagerows #mobile-footer .logo {
  margin-bottom: 0;
}
.template-pagerows #mobile-footer .mobilesearch {
  padding: 20px 10px;
}
.template-pagerows .page-wrap {
  /*** reset ***/
  font-size: 16px;
  /*** Links ***/
  /*** Simple Image ***/
  /*** Buttons ***/
}
.template-pagerows .page-wrap h1, .template-pagerows .page-wrap h2, .template-pagerows .page-wrap h3, .template-pagerows .page-wrap h4, .template-pagerows .page-wrap p, .template-pagerows .page-wrap li, .template-pagerows .page-wrap img {
  padding: 0;
  margin: 0 0 15px;
}
@media screen and (max-width: 767px) {
  .template-pagerows .page-wrap {
    font-size: 14px;
  }
}
.template-pagerows .page-wrap h1 {
  font-size: 3em;
  line-height: 1.2em;
  font-family: "Arial", sans-serif;
}
@media screen and (max-width: 767px) {
  .template-pagerows .page-wrap h1 {
    font-size: 3em !important;
    line-height: 1.2em !important;
  }
}
.template-pagerows .page-wrap h2 {
  font-size: 1.8em;
  line-height: 1.2em;
  font-weight: bold;
}
.template-pagerows .page-wrap h3 {
  font-size: 1.4em;
  line-height: 1.1em;
}
.template-pagerows .page-wrap .type-theme-dark h3 {
  color: #666666;
}
.template-pagerows .page-wrap .type-theme-light h3 {
  color: #A3A3A3;
}
.template-pagerows .page-wrap h4 {
  font-weight: bold;
}
.template-pagerows .page-wrap h4, .template-pagerows .page-wrap p, .template-pagerows .page-wrap li, .template-pagerows .page-wrap .button {
  font-size: 1.1em;
  line-height: 1.4em;
}
.template-pagerows .page-wrap ul, .template-pagerows .page-wrap ol {
  padding-left: 30px;
}
@media screen and (max-width: 767px) {
  .template-pagerows .page-wrap ul, .template-pagerows .page-wrap ol {
    margin-left: 0;
    margin-right: 0;
    padding-right: 0;
  }
}
.template-pagerows .page-wrap hr {
  margin: 2em 0;
}
.template-pagerows .page-wrap li a, .template-pagerows .page-wrap p a {
  text-decoration: underline;
}
.template-pagerows .page-wrap .type-theme-light li a, .template-pagerows .page-wrap .type-theme-light p a {
  color: #698a9e;
}
.template-pagerows .page-wrap .type-theme-light li a:hover, .template-pagerows .page-wrap .type-theme-light li a:active, .template-pagerows .page-wrap .type-theme-light li a:focus, .template-pagerows .page-wrap .type-theme-light p a:hover, .template-pagerows .page-wrap .type-theme-light p a:active, .template-pagerows .page-wrap .type-theme-light p a:focus {
  color: #88a2b2;
}
@media screen and (max-width: 767px) {
  .template-pagerows .page-wrap .image-simple .image-container {
    padding: 0;
  }
}
.template-pagerows .page-wrap .cutline p {
  font-style: italic;
  font-size: .9em;
  line-height: 1.2em;
}
.template-pagerows .page-wrap .button {
  padding: 8px 24px;
  margin-top: 1.5em;
}
@media screen and (max-width: 767px) {
  .template-pagerows .page-wrap .button {
    margin-right: 0;
    margin-left: 0;
  }
}
.template-pagerows .page-wrap .button.simple, .template-pagerows .page-wrap .button.button-tertiary {
  color: #333333 !important;
}