/******************************************************************************************************************************//*
 * Site layout.
 * Begin with the main elements: #page, .header, #navigation, .main.
*********************************************************************************************************************************/

#page {
  width: 100%;
  overflow: hidden;
  background: #fff;
}
#page,
.region-sidebar-first,
.region-sidebar-floating,
.region-sidebar-floating.sticky .block,
.sidebar-first #content,
.two-sidebars #content {
  box-sizing: border-box;
}
.header,
#navigation,
.main,
#bottom {
  clear: both;
  *zoom: 1;
}
#header:before, #header:after,
#navigation:before,
#navigation:after,
#bottom:before,
#bottom:after {
  content: "";
  display: table;
}
.header:after,
#navigation:after,
.main:after,
#bottom:after {
  clear: both;
}
.main > .inner {
  background: #fff;
  padding-top: 2rem;
}
.page-node-type-landing-page .main > .inner {
  padding-top: 0;
}

/* Handle constrained-width items. */
.normal-width .main,
.constrained,
.constrained .constrained.important {
  max-width: 1250px;
  width: 90%;
  margin-left: auto !important;
  margin-right: auto !important;
}
@media (min-width: 560px) {
  .normal-width .main,
  .constrained,
  .constrained .constrained.important {
    width: 92%;
  }
}
@media (min-width: 640px) {
  .wide .main > .inner,
  .landing-page .main > .inner {
    padding-top: 3rem;
  }
}
@media (min-width: 800px) {
  .normal-width .main,
  .constrained,
  .constrained .constrained.important {
    width: 94%;
  }
}

@media (min-width: 1100px) {
  .normal-width .main > .inner {
    padding-top: 5rem;
  }
}

/* Make sure a Constrained inside another doesn't cause the child item to shrink. */
.normal-width .main .constrained,
.constrained .constrained {
  width: 100%;
}

#main #messages_tabs_area {
  background-color: #fff;
  padding: 0 3%;
  *zoom: 1;
}
#main #messages_tabs_area:before,
#main #messages_tabs_area:after {
  content: "";
  display: table;
}
#main #messages_tabs_area:after {
  clear: both;
}

/**
 * Titles.
 */
.node__title,
.block__title,
.comments__title,
.comments__form-title,
.comment__title {
  /* Comment title. */
  margin: 0;
}

/**
 * Blocks.
 */
.block {
  margin-bottom: 0;
}

/******************************************************************************************************************************//*
* The content region begins as a full-width item on small screens, then narrows to allow
* one sidebar (if there is one) on medium screens, and finally to allow two sidebars
* (if there are two) on largest screen sizes.
********************************************************************************************************************************/

#content {
  *zoom: 1;
  font-family: "Merriweather", Georgia, "Times New Roman", Times, serif;
  width: 100%;
}
#content .breadcrumb {
  font-family: "Merriweather", Georgia, "Times New Roman", Times, serif;
  font-size: 0.733333333em;
  padding: 0 0 24px 0;
  text-transform: uppercase;
  line-height: 150%;
}
#content .breadcrumb a {
  padding: 0.25em 0;
}
#content:before,
#content:after {
  content: "";
  display: table;
}
#content:after {
  clear: both;
}
.narrow-layout #content {
  max-width: 740px;
  margin: 0 auto;
}
.normal-width #content {
  padding-bottom: 2em;
  position: relative;
}
#content-bottom .region:has(div) {
  padding-bottom: 2rem;
}
.content-inner:before,
.content-inner:after {
  content: "";
  display: table;
}
.content-inner:after {
  clear: both;
}
@media (min-width: 800px) {
  .normal-width #content {
    padding-bottom: 4em;
  }
  #content-bottom .region:has(div) {
    padding-bottom: 4em;
  }
  .no-sidebars .content-inner {
    width: 100%;
  }
}

/******************************************************************************************************************************//*
* We have two sidebars possible, both to the right of the content on large screens
* (the "secondary", or close right, and "tertiary", or far right). On smaller screens,
* the sidebars will either be below the content, or at least the tertiary sidebar will.
********************************************************************************************************************************/

.sidebar {
  box-sizing: border-box;
  width: 100%;
  float: left;
}
.sidebar .block {
  border: 1px solid #fff;
  border-left: none;
  width: 100%;
  padding: 1em 5%;
  box-sizing: border-box;
  *zoom: 1;
}
.sidebar .block:before,
.sidebar .block:after {
  content: "";
  display: table;
}
.sidebar .block:after {
  clear: both;
}
.sidebar .block p {
  margin-top: 0;
}

/******************************************************************************************************************************//*
* Set up the breakpoint, starting with mobile first. This will help prevent unexpected
* results when, later, we use sass_media_query_combiner. It combines media queries in
* the order it finds them, so we're doing it mobile-first.
********************************************************************************************************************************/

.region-sidebar-first,
.region-sidebar-floating {
  padding-top: 2rem;
}

@media all and (min-width: 640px) {
  #footer .inner {
    display: grid;
    grid-template-columns: 48% 48%;
    grid-column-gap: 4%;
  }
}

@media all and (min-width: 800px) {
  #footer .inner {
    grid-template-columns: 33% 67%;
    grid-column-gap: 0;
  }
}

@media all and (min-width: 1000px) {
  .region-sidebar-first,
  .region-sidebar-floating {
    padding-top: 0;
  }
  .one-sidebar .main > .inner,
  .sidebar-first .main > .inner,
  .two-sidebars .main > .inner {
    display: grid;
    grid-template-columns: 70% 25%;
    grid-column-gap: 5%;
  }
}

@media all and (min-width: 1100px) {
  #footer > .inner {
    grid-template-columns: 25% 75%;
  }
}

/**
 * Sidebar Ads
 */

#block-dfptagcontent1,
#block-dfptagcontent2-2 {
  display: inline-block;
  width: 100%;
  text-align: center;
  margin-top: 1rem;
}
