
/* Standard text styles and ELEMENTS*/
DIV,
P,
BLOCKQUOTE,
LI,
TD,
INPUT,
SELECT {
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  line-height: 150%;
}
A {
  color: #005db1;
  text-decoration: none;
}

TABLE {
  border-spacing: 0px;
  border: 0px;
}
TD {
  padding: 0px;
}
H1,
H2,
H3,
H4 {
  font-family: "Kreon", Georgia, Times, Serif;
  line-height: 120%;
  margin-top: 0px;
}
H1 {
  font-size: 30px;
}
H2 {
  font-size: 24px;
}
H3 {
  font-size: 20px;
}
H4 {
  font-size: 16px;
}
.headlinetype {
  font-family: "Open Sans", sans-serif;
  font-size: 13px;
  font-weight: bold;
}
.headlinetype.commentary {
  color: #009ece;
}
.headlinetype.news {
  color: #cc0000;
}
.headlinetype.news {
  color: #cc0000;
}
.headlinetype.lityear {
  color: #48bd00;
}
.headlinetype.library {
  color: #7813bb;
}
.headlinetype.sitereview {
  color: #f38000;
}

/* Clearfix */
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}

/* Major layout elements */
body {
  margin: 0;
  padding: 62px 0 0;
  background-color: #eeeeee;

  @media screen and (max-width: 1135px) {
    padding: 50px 0;
  }
}
.header,
.promospot_horizontal,
.content,
.footer {
  width: 100%;
}
.header {
  position: fixed;
  top: 0px;
  z-index: 10000;
}
.container {
  display: -webkit-flex;
  display: flex;
  flex-flow: row wrap;
  max-width: 1155px;
  margin-left: auto;
  margin-right: auto;
}
:where(.home, .news, .news_archive) .container {
  max-width: 1400px;
}
.container div {
  box-sizing: border-box;
}
@media screen and (min-width: 1024px) {
  .primary_row {
    display: flex;
    justify-content: center;
    gap: 40px;
  }
  :where(.home, .news, .news_archive) .primary_row {
    padding: 0 1rem;
  }
}
.content {
  background-color: #fff;
  margin: 20px 0px 0px 0px;
  padding: 30px;
  position: relative;
}
.content LI {
  margin-bottom: 6px;
}
.content TABLE {
  border-color: #b7b7b7 !important;
}
.content TD {
  padding: 8px;
}
.content iframe[src*="youtube.com"] {
  max-width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
.main_column_content {
  display: flex;
  flex-direction: column;
  gap: 1rem;

  /* Reset inherited box sizing */
  &,
  & * {
    box-sizing: border-box;
  }
}
.main_grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  grid-auto-rows: minmax(125px, min-content);
  gap: 16px;
}
.sidebar_right {
  width: 300px;
  margin-top: 20px;
  text-align: center;
  flex-shrink: 0;
}
.sidebar_right img {
  max-width: 100%;
}
.footer {
  margin: 20px 0px 80px 0px;
  background-color: #fff;
  padding: 10px 20px;
}
@media screen and (min-width: 1024px) {
  :where(.home, .news, .news_archive) .footer {
    margin: 20px 1rem 80px;
  }
}
.relatedcontent {
  margin: 0px -30px 10px 30px;
  padding: 20px;
  background-color: #ebf3fb;
  width: 260px;
  float: right;
  box-shadow: -10px 10px 10px rgba(92, 92, 92, 0.3);
}
.relatedcontent H2 {
  font-size: 16px;
  text-transform: uppercase;
  border-bottom: solid 1px rgba(92, 92, 92, 0.2);
}
.relatedcontent ul {
  margin: 0px 0px 20px 20px;
  padding: 0px;
}
.relatedcontent .image img {
  background: none repeat scroll 0 0 #fff;
  border: 2px solid #cbd2d7;
  display: block;
  margin: 0 auto 15px;
  padding: 5px;
  text-align: center;
}

/* Advertising */
#promospot_horizontal_desktop {
  text-align: center;
  margin-top: 20px;
}
#promospot_horizontal_mobile {
  display: none;
  margin-top: 20px;
}
#promospot_horizontal_desktop DIV {
  margin: 0 auto !important;
}
#promospot_horizontal_mobile DIV {
  margin: 0 auto !important;
}
#promospot_horizontal_mobile img {
  width: 380px;
  height: auto;
  max-width: 100%;
}

#promospot_300x250A_desktop,
#promospot_300x250B_desktop {
  margin: 0px 0px 10px 0px;
  width: 100%;
  text-align: center;
}
#promospot_300x250A_desktop DIV {
  margin: 0 auto !important;
}
#promospot_300x250A_mobile {
  display: none;
}
#promospot_300x250A_mobile DIV {
  margin: 0 auto !important;
}
#adalert {
  position: absolute;
  margin: 0;
  width: 100%;
  background-color: #7eaa56;
  padding: 10px;
  display: none;
  z-index: 1000;
}
#adalertmessage {
  width: 80%;
  margin: 0 auto;
  color: #fff;
  font-size: 12px;
  cursor: pointer;
}

/* promotional elements */
.workshop_banner {
  width: 300px;
  padding: 4px 4px 4px 10px;
  text-align: left;
  margin-bottom: 4px;
  color: #fff;
}
.workshop_banner a {
  color: #fff;
}
#SM_area {
  text-align: center;
  margin: auto;
  margin-bottom: 10px;
  background: rgba(255, 255, 255, 0.5);
}
#SM_area_footer {
  display: none;
}
#SM_buttonbox {
  display: inline-block;
  padding: 5px 10px 5px 20px;
}
#SM_prompt {
  font-weight: bold;
  font-family: Kreon;
  font-size: 18px;
  color: #4273b0;
  margin: 4px 10px 0px 0px;
  float: left;
}

/*content previews and lists */
.story_preview_block {
  padding: 18px 0px 10px 0px;
  border-bottom: dashed 1px #cccccc;
}
.story_preview_block h3 {
  font-weight: normal;
}
.story_preview_block .byline {
  color: #666;
  font-family: "Open Sans", sans-serif;
  font-size: 11px;
  text-transform: uppercase;
}
.most_popular_number {
  float: left;
  background: #ddd;
  border: solid 1px #ccc;
  color: #888;
  font-size: 60px;
  line-height: 80px;
  width: 80px;
  text-align: center;
  margin: 0px 10px 10px 0px;
}
.sideletlisttoggle {
  display: block;
  float: right;
  cursor: pointer;
}
.home_headline {
  display: block;
  border: solid 1px #ccc;
  background-color: #ebf3fb; /*#EFEFEF */
  font-size: 16px;
  line-height: 1.4;
  padding: 12px 12px 24px;
  overflow: hidden;
  position: relative;

  a {
    i {
      margin-right: 0.25rem;
    }
  }

  .meta {
    margin-top: 0.25rem;
    font-size: 14px;
    color: #666;
  }
}
.author_home_small {
  height: 75px;
  float: right;
  margin-left: 1rem;
}

/* Content display conventions */
.creditline {
  margin-bottom: 0px;
}
#googlemap {
  float: right;
  padding-left: 10px;
}
.author_pic {
  float: right;
  width: 300px;
  text-align: inherit;
  vertical-align: middle;
}
.table_responsive {
  overflow-x: auto !important;
}

/* administrative controls */
.pin,
.unpin {
  position: absolute;
  bottom: -4px;
  right: 2px;
  z-index: 20;
  padding: 3px;
}
.unpin {
  transform: rotate(45deg);
}
.pin A,
.unpin A {
  color: rgba(80, 80, 80, 0.5);
}

#admin_container {
  position: fixed;
  bottom: 0;
  width: 100%;
  border-top: solid 1px rgba(80, 80, 80, 1);
  background-color: #fff;
  padding: 10px;
  text-align: left;
}
#admin_controls {
  width: 90%;
  max-width: 1232px;
  margin: 0 auto;
}
/* social media elements */
#socialbar {
  padding: 5px 0px 10px 0px;
}

/*Styles for screen 1088px and lower*/
@media screen and (max-width: 1088px) {
  #promospot_horizontal_desktop {
    display: none;
  }
  #promospot_horizontal_mobile {
    text-align: center;
    display: block;
    width: 100%;
  }
}
/*Styles for screen 770px and lower*/
@media screen and (max-width: 770px) {
  .relatedcontent {
    float: none;
    margin: 0px;
    padding: 10px;
    background-color: #ebf3fb;
    width: 100%;
    box-shadow: none;
  }
  .relatedcontent.optional {
    display: none;
  }
  #googlemap {
    float: none;
  }
  #cwnlogo {
    width: 100px;
  }
  .author_pic {
    width: 120px;
  }
  #blog_image {
    max-width: 400px;
  }
}
/*Smartphones and Phablets*/
@media only screen and (max-width: 650px) {
  .container {
    width: 100%;
    padding: 0 !important;
  }
  .main {
    width: 100%;
  }
  .content {
    padding: 20px;
  }
  .content IMG {
    max-width: 100%;
    height: auto !important;
  }
  img.author_home_small {
    height: 75px !important;
  }
  .content TD {
    padding: 4px;
  }
  .content TD,
  .content TD P,
  .content TD LI {
    font-size: 12px;
  }
  #blog_image {
    max-width: 300px;
    max-height: auto;
  }
  #SM_area {
    display: none;
  }
  #SM_area_footer {
    display: block;
    text-align: center;
    margin-bottom: 10px;
  }
  .sidebar_right {
    width: 100%;
    text-align: center;
    padding: 0px 0px 0px 0px;
  }

  .home_headline {
    width: 100%;
  }

  #promospot_300x250A_desktop {
    display: none;
  }
  #promospot_300x250A_mobile {
    display: block;
    text-align: center;
    width: 100%;
    margin-bottom: 10px;
  }
}

/* Updated home page styles */
.featured_content {
  .TTitle {
    display: flex;
    align-items: center;
    gap: 1.5rem;

    h1 {
      margin: 0;
    }

    hr {
      width: 100%;
      border-top: 2px dotted lightblue;
      margin-top: 12px;
    }
  }

  .main_grid {
    margin-top: 1.5rem;
  }

  .more_of_this {
    display: flex;
    margin-top: 1rem;
    justify-content: end;

    a {
      display: block;
      background: #4273b0;
      padding: 0.25rem 1rem;
      color: white;
      font-weight: bold;

      &:hover {
        background: #005db1;
      }
    }
  }
}

.daily_content .current_day {
  .day_preview {
    display: none;
  }

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

    .day_preview {
      display: block;
      margin-top: 0px;
    }
  }
}
