/* breakpoints */
.component.container {
  box-sizing: border-box;
}

.component.container > .component-content:after {
  content: "";
  display: table;
  clear: both;
}

.component.container.container-fluid {
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.component.container.container-fluid > .component-content[style*="background"] {
  margin-left: -15px;
  margin-right: -15px;
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-size: cover;
  background-position: center center;
}

.component.container.container-fluid > .component-content[style*="background"] > .row {
  margin-left: 0;
  margin-right: 0;
}

.row .container-fluid.col {
  -ms-flex: 0 0 100%;
  -webkit-box-flex: 0;
  flex: 0 0 100%;
}

[class*='col-'] > .component-content > .container,
[class='col'] > .component-content > .container {
  padding-left: 0;
  padding-right: 0;
}

.column-splitter > [class*='col-'] > .row > .container.component > .component-content,
.column-splitter > [class='col'] > .row > .container.component > .component-content {
  padding: 3rem;
}

.column-splitter > [class*='col-'] > .row > .container.component[class*='bg-'],
.column-splitter > [class='col'] > .row > .container.component[class*='bg-'] {
  background-color: transparent !important;
}

.column-splitter > [class*='col-'] > .row > .container.component[class*='border-'],
.column-splitter > [class='col'] > .row > .container.component[class*='border-'] {
  border: 0 !important;
}

/* breakpoints */
.sxa-bordered {
  padding: 15px 15px 15px 15px;
  box-sizing: border-box;
}

.sxa-bordered > .component-content {
  padding: 0;
  border-width: 1px;
  border-style: solid;
  border-color: #d6d6d6;
  border-radius: 5px;
}

.column-splitter,
.row-splitter {
  box-sizing: border-box;
}

.column-splitter .sxa-bordered,
.row-splitter .sxa-bordered {
  padding: 15px !important;
}

.column-splitter .sxa-bordered > .component,
.column-splitter .sxa-bordered .scEmptyPlaceholder,
.row-splitter .sxa-bordered > .component,
.row-splitter .sxa-bordered .scEmptyPlaceholder {
  border-width: 1px;
  border-style: solid;
  border-color: #d6d6d6;
  border-radius: 5px;
}

.container {
  position: relative;
}

@media (max-width: 767.9px) {
  .container,
  .container-wd,
  .container-xl,
  .container-lg,
  .container-md,
  .container-sm,
  .container-fluid {
    max-width: 100% !important;
  }
}

/* SXA fix for containers having col- classes applied to them */
@media (min-width: 576px) {
  .container[class*='col-'], .container[class='col'],
  .container-sm[class*='col-'],
  .container-sm[class='col'] {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container[class*='col-'], .container[class='col'],
  .container-md[class*='col-'],
  .container-md[class='col'],
  .container-sm[class*='col-'],
  .container-sm[class='col'] {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container[class*='col'], .container[class='col'],
  .container-lg[class*='col'],
  .container-lg[class='col'],
  .container-md[class*='col'],
  .container-md[class='col'],
  .container-sm[class*='col'],
  .container-sm[class='col'] {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container[class*='col'], .container[class='col'],
  .container-xl[class*='col'],
  .container-xl[class='col'],
  .container-lg[class*='col'],
  .container-lg[class='col'],
  .container-md[class*='col'],
  .container-md[class='col'],
  .container-sm[class*='col'],
  .container-sm[class='col'] {
    max-width: 1140px;
  }
}

@media (min-width: 1440px) {
  .container,
  .container-wd,
  .container-xl,
  .container-lg,
  .container-md,
  .container-sm {
    max-width: 1380px;
  }
  .container[class*='col'], .container[class='col'],
  .container-wd[class*='col'],
  .container-wd[class='col'],
  .container-xl[class*='col'],
  .container-xl[class='col'],
  .container-lg[class*='col'],
  .container-lg[class='col'],
  .container-md[class*='col'],
  .container-md[class='col'],
  .container-sm[class*='col'],
  .container-sm[class='col'] {
    max-width: 1380px;
  }
}

.full-width-background-overlap {
  position: relative;
  padding-top: 160px !important;
  width: 100% !important;
  max-width: 100% !important;
}

.full-width-background-overlap > .component-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.full-width-background-overlap > .component-content .row .container[class*="col"] {
  padding-left: 15px;
  padding-right: 15px;
}

.full-width-background-overlap .container {
  width: 100%;
  max-width: 100%;
}

.full-width-background-overlap .container .component-content {
  height: 715px;
  background-size: cover;
  background-position: center center;
}

@media screen and (max-width: 767.9px) {
  .full-width-background-overlap .container .component-content {
    height: 480px;
  }
}

.full-width-background-overlap .container[class*='col'] .component-content {
  margin-left: -15px;
  margin-right: -15px;
}

/* fix margin for snippets that don't get wrapped by a container */
.row > .full-width-background-overlap[class*="col"] {
  padding-left: 15px;
  padding-right: 15px;
}

.row > .component.snippet > .component-content > .snippet-inner > .snippet-container > .snippet > .row {
  margin-left: 0;
  margin-right: 0;
}

.container.container-fluid .responsive-bg-container-content {
  margin-left: -15px;
  margin-right: -15px;
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-size: cover;
  background-position: center center;
}

/* breakpoints */
.title-row-box {
  border-width: 1px;
  border-style: solid;
  border-color: #d6d6d6;
  box-sizing: border-box;
  width: 100%;
  height: 87px;
  margin: 0;
  padding: 0;
  background: #e3e3e3;
}

.title-row-box > .component-content {
  max-width: 960px;
  margin: 0 auto !important;
}

.title-row-box > .component-content .title {
  display: inline-block;
  vertical-align: middle;
  box-sizing: border-box;
  margin: 23px 0 0 0;
  padding: 0;
}

.title-row-box > .component-content .title h1 {
  font-size: 22px;
  font-size: 2.2rem;
  border: none;
}

@media only screen and (max-width: 959px) {
  .title-row-box > .component-content .title {
    margin: 23px 0 0 20px;
  }
}

.title-row-box > .component-content .rich-text {
  margin: 0;
}

.title-row-box > .component-content .rich-text h1, .title-row-box > .component-content .rich-text h2, .title-row-box > .component-content .rich-text h3, .title-row-box > .component-content .rich-text h4 {
  margin: 0;
  padding: 0;
}

.title-row-box > .component-content .breadcrumb {
  display: inline-block;
  vertical-align: middle;
  box-sizing: border-box;
  font-size: 14px;
  font-size: 1.4rem;
  margin: 23px 0 0 0;
  padding: 0;
  float: right;
  clear: both;
}

@media only screen and (min-width: 381px) and (max-width: 959px) {
  .title-row-box > .component-content .breadcrumb {
    margin: 23px 20px 0 0;
  }
}

@media only screen and (max-width: 380px) {
  .title-row-box > .component-content .breadcrumb {
    display: none;
  }
}

@media only screen and (max-width: 959px) {
  .title-row-box .alpha {
    vertical-align: middle;
    box-sizing: border-box;
    width: auto !important;
    float: left;
  }
  .title-row-box .omega {
    vertical-align: middle;
    box-sizing: border-box;
    width: auto !important;
    float: right;
  }
}

.vertical-center-align .row.column-splitter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
