body {
  margin: 0;
  font-family: "Open Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif; }

/* Required */
/* Set up flexible containers */
.interactive-container,
.cnn-outbrain,
#comments,
#disqus_thread {
  margin: 0 auto;
  width: 95%;
  max-width: 980px; }

/* social buttons to right */
.c_share_container {
  float: right; }

h1 {
  font-size: 28px;
  line-height: 32px;
  padding: 10px 0 0;
  font-weight: bold; }

h2 {
  font-size: 18px;
  line-height: 22px;
  font-weight: 500; }

p {
  font-size: 14px;
  line-height: 18px;
  padding: 0 10px 18px 0; }

/*
    HEADER
*/
.cnn-skinny-header {
  background-color: #ca0002;
  color: #fff;
  margin: 0;
  padding: 0;
  height: 35px; }

.header-container {
  width: 95%;
  max-width: 980px;
  position: relative;
  text-align: center;
  margin: 0 auto;
  padding: 0;
  line-height: 100%; }

a.header-link {
  position: absolute;
  left: 0;
  top: 10px;
  color: #fff;
  font-size: 11px;
  font-weight: bold; }
  a.header-link:hover, a.header-link:active, a.header-link:visited {
    color: #fff; }

.logo-link img {
  width: 51px;
  height: 35px; }

/*
    FOOTER
*/
.footer {
  clear: both;
  margin: 20px 0 0 0;
  width: 100%;
  padding: 0;
  text-align: center; }

.footer-container {
  width: 95%;
  max-width: 980px;
  border-top: 10px solid #ca0002;
  margin: 0 auto;
  padding-top: 10px;
  padding-bottom: 20px;
  margin-bottom: 0;
  text-align: left; }
  .footer-container p {
    display: inline-block;
    color: #666666;
    font-size: 10px;
    padding: 0;
    margin: 0; }
  .footer-container p.footer-links {
    float: right;
    display: block; }
  @media screen and (max-width: 640px) {
    .footer-container {
      width: 100%;
      border: 0;
      background-color: #e6e1df;
      padding-top: 20px;
      margin-bottom: 0; }
      .footer-container p, .footer-container p.footer-links {
        display: block;
        font-size: 12px;
        float: none;
        text-align: center;
        padding: 0;
        margin: 0; } }

/* Optional (uncomment if needed) */
/* @import "buttons"; */
h1 {
  margin-bottom: 14px; }

img {
  max-width: 100%; }

.location-group {
  margin-bottom: 50px;
  clear: both;
  width: 100%;
  overflow: auto; }
  .location-group h2 {
    margin-bottom: 15px;
    font-size: 21px; }

@media screen and (min-width: 700px) {
  .group-photo {
    float: right;
    width: 66%; } }

.group-caption {
  position: relative;
  width: 100%; }
  @media screen and (min-width: 700px) {
    .group-caption {
      width: 33%;
      padding-right: 10px; } }
  @media screen and (min-width: 550px) and (max-width: 699px) {
    .group-caption {
      height: 250px; }
      .group-caption p {
        padding-right: 340px; } }

.group-map {
  width: 100%;
  max-width: 320px; }
  @media screen and (min-width: 550px) and (max-width: 699px) {
    .group-map {
      position: absolute;
      top: 0;
      right: 0; } }

.desktop {
  display: none; }
  @media screen and (min-width: 700px) {
    .desktop {
      display: block; } }

@media screen and (min-width: 700px) {
  .mobile {
    display: none; } }
