@charset "UTF-8";
@font-face {
  font-family: 'icomoon';
  src: url("/panther-css/oc/assets/fonts/icomoon.ttf") format("truetype"), url("/panther-css/oc/assets/fonts/icomoon.woff") format("woff"), url("/panther-css/oc/assets/fonts/icomoon.svg") format("svg");
  font-weight: normal;
  font-style: normal; }

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-envelope:before {
  content: ""; }

.icon-checkbox-disabled:before {
  content: ""; }

.icon-hail:before {
  content: ""; }

.icon-nail:before {
  content: ""; }

.icon-eye:before {
  content: ""; }

.icon-shield:before {
  content: ""; }

.icon-energy-star:before {
  content: ""; }

.icon-document:before {
  content: ""; }

.icon-file-pdf:before {
  content: ""; }

.icon-wind-resistance:before {
  content: ""; }

.icon-average:before {
  content: ""; }

.icon-price-economy:before {
  content: ""; }

.icon-price-economy-plus:before {
  content: ""; }

.icon-price-premium:before {
  content: ""; }

.icon-price-topofline:before {
  content: ""; }

.icon-zoom-in:before {
  content: ""; }

.icon-shingle:before {
  content: ""; }

.icon-close:before {
  content: ""; }

.icon-chevron-left:before {
  content: ""; }

.icon-heart:before {
  content: ""; }

.icon-heart-filled:before {
  content: ""; }

.icon-share:before {
  content: ""; }

.icon-checkbox:before {
  content: ""; }

.icon-checkbox-checked:before {
  content: ""; }

.icon-chevron-right:before {
  content: ""; }

.icon-arrow-right:before {
  content: ""; }

.icon-surenail:before {
  content: ""; }

body {
  font-family: "Roboto", sans-serif;
  color: #333333;
  font-size: 16px;
  margin: 0; }

.skip-to-content.oc-cta-button {
  position: absolute;
  top: -45px;
  left: 15px;
  transition: .5s ease; }
  .skip-to-content.oc-cta-button:focus {
    top: 15px;
    color: white;
    text-decoration: underline; }
    .skip-to-content.oc-cta-button:focus:before {
      background-color: #d40f7d; }

.page {
  margin: 0 auto;
  font-family: 'Roboto', sans-serif;
  padding: 0 15px;
  position: relative; }
  @media (min-width: 768px) {
    .page {
      max-width: 800px; } }
  @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .page {
      max-width: 1340px; } }
  .page .link-text {
    color: black;
    text-decoration: underline; }
    .page .link-text:hover {
      color: #d40f7d;
      text-decoration: none; }
  .page li {
    margin-bottom: 10px; }

.bg-full-bleed {
  margin-right: -15px;
  margin-left: -15px;
  padding: 0 15px; }

@media (min-width: 768px) {
  .full-bleed {
    margin-right: -15px;
    margin-left: -15px; } }

.bg-shaded {
  background: #e6e6e6;
  overflow: hidden;
  padding-top: 70px; }
  .bg-shaded.not-full-bleed {
    padding-left: 15px;
    padding-right: 15px;
    margin: 0 -15px; }
    @media screen and (min-width: 768px) {
      .bg-shaded.not-full-bleed {
        margin: 0; } }
    @media screen and (min-width: 1200px) {
      .bg-shaded.not-full-bleed {
        padding-left: 0;
        padding-right: 0; } }
  .bg-shaded section {
    margin: 60px auto 0; }
  .col .bg-shaded {
    padding: 17px 10px; }
    @media (min-width: 768px) {
      .col .bg-shaded {
        padding: 35px; } }
  .bg-shaded.with-section {
    padding: 35px 15px; }
    @media (min-width: 1200px) {
      .bg-shaded.with-section {
        padding: 50px 0; } }
    .bg-shaded.with-section section {
      margin: 0 auto; }
      .bg-shaded.with-section section .oc-cards {
        margin: 0; }
  .bg-shaded + hr {
    margin-top: 30px; }

.no-margin-bottom {
  margin-bottom: 0 !important; }

.no-margin-top {
  margin-top: 0 !important; }

section {
  margin: 15px auto;
  max-width: 400px; }
  @media screen and (min-width: 768px) {
    section {
      margin: 30px auto;
      max-width: 768px; } }
  @media screen and (min-width: 1200px) {
    section {
      margin: 70px auto;
      max-width: 1170px; } }
  section.border {
    border-bottom: 2px solid black;
    padding-bottom: 20px; }
    @media screen and (min-width: 768px) {
      section.border {
        padding-bottom: 30px; } }
    @media screen and (min-width: 1200px) {
      section.border {
        padding-bottom: 70px; } }
    @media (max-width: 767px) {
      section.border.mobile-no-border {
        border-bottom: none; } }
  section.sr-layout {
    margin: 0;
    max-width: none; }

@media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .condensed-width-content {
    max-width: 970px;
    margin: 0 auto; } }

.standalone-content {
  padding: 0;
  margin: 0 auto;
  max-width: 400px; }
  @media (min-width: 768px) {
    .standalone-content {
      max-width: 768px; } }
  @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .standalone-content {
      max-width: 1170px; } }
  @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .standalone-content.condensed {
      max-width: 970px; } }
  .standalone-content.content-after {
    margin-bottom: 20px; }
    @media (min-width: 768px) {
      .standalone-content.content-after {
        margin-bottom: 40px; } }

.centered-content {
  text-align: center; }

.responsive-img {
  max-width: 100%;
  width: 100%; }

.vertical-padding {
  padding-top: 20px;
  padding-bottom: 20px; }
  @media screen and (min-width: 768px) {
    .vertical-padding {
      padding-top: 30px;
      padding-bottom: 30px; } }
  @media screen and (min-width: 1200px) {
    .vertical-padding {
      padding-top: 70px;
      padding-bottom: 70px; } }

.small {
  font-size: 12px !important; }

.uppercase {
  text-transform: uppercase; }

@media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .navbar-right {
    margin-right: -4px; } }

@media screen and (max-width: 767px) {
  .hidden-phone {
    display: none; } }

.footnote {
  font-size: 12px;
  color: black;
  line-height: 18px; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  display: block;
  white-space: nowrap; }

.section-divider {
  margin-top: 15px;
  margin-bottom: 15px; }
  @media (min-width: 768px) {
    .section-divider {
      margin-top: 30px;
      margin-bottom: 30px; } }
  @media (min-width: 1200px) {
    .section-divider {
      margin-top: 70px;
      margin-bottom: 70px; } }
  .section-divider + .h3 {
    margin-bottom: 20px; }
    .section-divider + .h3 + p {
      margin-bottom: 30px; }

.too-long {
  font-size: 85% !important;
  line-height: .85em; }
  @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .too-long {
      letter-spacing: -0.07em; } }

a:focus {
  outline-offset: 2px;
  outline-color: #d40f7d;
  outline-style: solid;
  outline-width: 2px; }

.oc-accordion .accordion {
  display: block;
  position: relative;
  border: 1px solid #f8f8f8; }
  .oc-accordion .accordion label {
    padding: 10px 15px;
    color: black;
    font-size: 16px;
    background: #f8f8f8;
    border-bottom: 1px solid #bcbcbc;
    position: relative;
    width: 100%;
    display: inline-block;
    margin: 0;
    cursor: pointer;
    font-weight: 500; }
    .oc-accordion .accordion label:after {
      content: '\f067';
      position: absolute;
      font-family: 'fontawesome';
      right: 15px;
      top: 50%;
      transform: translateY(-50%);
      font-size: 16px;
      font-weight: 700; }
  .oc-accordion .accordion .expand-collapse {
    transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
    max-height: 0;
    background: white;
    overflow: hidden; }
  .oc-accordion .accordion .content {
    padding: 10px 15px;
    font-size: 14px; }
  .oc-accordion .accordion input[type=checkbox] {
    display: none; }
    .oc-accordion .accordion input[type=checkbox]:checked ~ .expand-collapse {
      max-height: 800px;
      transition: max-height 1s ease-in-out; }
    .oc-accordion .accordion input[type=checkbox]:checked ~ label:after {
      content: '\f068'; }

.oc-big-dot-list {
  list-style: none;
  counter-reset: pinklist; }
  .oc-big-dot-list li {
    counter-increment: pinklist;
    position: relative; }
    .oc-big-dot-list li:before {
      content: counter(pinklist) "";
      color: white;
      background: #d40f7d;
      border-radius: 50%;
      font-size: 17px;
      font-weight: 700;
      left: calc(-1 * 24px - 10px);
      line-height: 24px;
      width: 24px;
      height: 24px;
      text-align: center;
      position: absolute;
      top: 0; }
      @media (min-width: 1200px) {
        .oc-big-dot-list li:before {
          left: calc(-1 * 32px - 10px);
          line-height: 32px;
          width: 32px;
          height: 32px; } }

.oc-block-links {
  max-width: 400px;
  margin: 0 auto 70px; }
  @media (min-width: 768px) {
    .oc-block-links {
      max-width: 768px;
      display: flex;
      justify-content: space-between;
      width: 738px;
      margin: 0 auto 30px; } }
  @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .oc-block-links {
      max-width: 1170px;
      width: 1170px;
      margin: 0 auto 70px; } }
  @media (max-width: 767px) {
    .oc-block-links.block-links-2-col {
      display: flex;
      flex-wrap: wrap;
      margin-bottom: 0; }
      .oc-block-links.block-links-2-col .block-link {
        flex-basis: 48%;
        margin-right: 4%; }
        .oc-block-links.block-links-2-col .block-link:nth-child(even) {
          margin-right: 0; } }
  .oc-block-links .block-link {
    flex-basis: 0%;
    flex-shrink: 1;
    display: block;
    color: black;
    border-top: 2px solid black;
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
    margin-bottom: 35px; }
    @media (min-width: 768px) {
      .oc-block-links .block-link {
        flex-grow: 1;
        margin: 0 15px; } }
    @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-block-links .block-link {
        font-size: 21px;
        margin: 0 15px; } }
    .oc-block-links .block-link:first-child {
      margin-left: 0; }
    .oc-block-links .block-link:last-child {
      margin-right: 0; }
    .oc-block-links .block-link:hover, .oc-block-links .block-link:focus, .oc-block-links .block-link:active {
      text-decoration: none; }
    .oc-block-links .block-link img {
      width: 100%;
      max-width: 100%; }
    .oc-block-links .block-link .text {
      color: black;
      padding: 10px 0;
      padding-left: 0;
      position: relative;
      overflow: hidden;
      transition: 0.25s ease-in-out; }
      @media (hover: none), (-moz-touch-enabled: 1) {
        .oc-block-links .block-link .text {
          transition: none; } }
      @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
        .oc-block-links .block-link .text {
          padding: 12px 0; } }
      .oc-block-links .block-link .text:before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background-color: black;
        transform: translateX(-100%);
        z-index: -1;
        transition: 0.25s ease-in-out; }
        @media (hover: none), (-moz-touch-enabled: 1) {
          .oc-block-links .block-link .text:before {
            transition: none; } }
      .oc-block-links .block-link .text:after {
        position: absolute;
        top: 50%;
        right: 10px;
        font-size: 20px;
        font-family: icomoon;
        transform: translateY(-50%);
        content: "\E608"; }
    .oc-block-links .block-link:hover .text,
    .oc-block-links .block-link:focus .text,
    .oc-block-links .block-link:active .text {
      padding-left: 10px;
      text-decoration: none;
      color: white; }
      .oc-block-links .block-link:hover .text:before,
      .oc-block-links .block-link:focus .text:before,
      .oc-block-links .block-link:active .text:before {
        right: 0;
        transform: translateX(0);
        transition: 0.25s ease-in-out; }
        @media (hover: none), (-moz-touch-enabled: 1) {
          .oc-block-links .block-link:hover .text:before,
          .oc-block-links .block-link:focus .text:before,
          .oc-block-links .block-link:active .text:before {
            transition: none; } }
    .oc-block-links .block-link img {
      display: block;
      max-width: 100%; }
  @media screen and (min-width: 768px) and (max-width: 1199px) {
    .oc-block-links .tablet-block {
      display: block; } }

.oc-cards-heading {
  position: relative;
  text-align: center;
  margin-top: 50px;
  margin-bottom: 10px;
  font-size: 14px;
  font-family: "Roboto", sans-serif;
  height: 30px; }
  .oc-cards-heading:before {
    content: '';
    display: block;
    border: 1px solid black;
    border-width: 1px 1px 0 1px;
    position: absolute;
    z-index: 0;
    top: 50%;
    right: 0;
    bottom: 0;
    left: 0; }
  .oc-cards-heading .heading-text {
    display: inline-block;
    position: relative;
    z-index: 1;
    background: white;
    padding: 0 10px;
    top: 50%;
    transform: translateY(-50%); }

.oc-cards {
  margin: 35px -15px 0; }
  @media (min-width: 768px) {
    .oc-cards {
      display: flex;
      flex-wrap: wrap; } }
  .oc-cards .oc-card {
    display: block;
    color: black;
    margin-bottom: 35px; }
    .oc-cards .oc-card > div {
      padding: 0 15px; }
    @media (min-width: 768px) {
      .oc-cards .oc-card.size-1-3 {
        width: calc(33% - 20px); } }
    .oc-cards .oc-card h5 {
      margin: 0 0 10px;
      font-weight: normal;
      text-transform: uppercase; }
    .oc-cards .oc-card .media {
      margin: 0 0 10px; }
      .oc-cards .oc-card .media img {
        width: 100%;
        max-width: 100%; }
    .oc-cards .oc-card .text h6 {
      color: #585858;
      font-size: 18px;
      text-transform: uppercase;
      line-height: 24px;
      margin: 0 0 5px;
      font-weight: 500; }
    .oc-cards .oc-card .text .subhead {
      font-size: 18px;
      font-weight: 700;
      margin-bottom: 10px; }
    .oc-cards .oc-card .text p {
      margin: 0; }
      .oc-cards .oc-card .text p + a {
        margin-top: 15px;
        display: inline-block; }
  @media (min-width: 768px) {
    .oc-cards.two-up > .oc-card {
      flex-basis: 50%; } }
  @media (min-width: 768px) {
    .oc-cards.three-up > .oc-card {
      flex-basis: 33.3333%; } }
  @media (min-width: 768px) {
    .oc-cards.four-up > .oc-card {
      flex-basis: 50%; } }
  @media (min-width: 1200px) {
    .oc-cards.four-up > .oc-card {
      flex-basis: 25%; } }
  .oc-cards.featured {
    justify-content: space-between; }
    @media (min-width: 768px) {
      .oc-cards.featured .oc-card {
        flex-direction: column; } }
    .oc-cards.featured .oc-card h5 {
      border-top: 2px solid black;
      padding: 15px 0;
      margin: 0; }
    .oc-cards.featured .oc-card .text {
      text-transform: capitalize;
      font-size: 16px; }
  .oc-cards.horizontal .oc-card {
    align-items: center; }
    .oc-cards.horizontal .oc-card .media {
      flex-basis: 50%; }
    .oc-cards.horizontal .oc-card .text {
      text-transform: none;
      color: black;
      flex-basis: 50%;
      font-size: 16px; }
      @media (min-width: 768px) {
        .oc-cards.horizontal .oc-card .text {
          padding-left: 0; } }
  .oc-cards.no-border .media {
    border: none; }

@charset "UTF-8";
.oc-chevron-text-link {
  font-size: 16px;
  color: black;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  text-decoration: none; }
  .oc-chevron-text-link:after {
    font-family: "icomoon";
    content: "";
    position: relative;
    align-self: center;
    margin-left: 10px; }
  .oc-chevron-text-link:hover {
    color: #d40f7d; }

.oc-contact-cards {
  display: block;
  margin: 15px 0; }
  @media (min-width: 768px) {
    .oc-contact-cards {
      flex-wrap: wrap;
      display: flex; } }
  @media (min-width: 1200px) {
    .oc-contact-cards {
      margin: 30px 0; } }
  .oc-contact-cards .contact-card {
    margin-right: 0;
    margin-bottom: 15px;
    display: inline-block;
    width: 100%; }
    @media (min-width: 768px) {
      .oc-contact-cards .contact-card {
        flex-basis: 50%; }
        .oc-contact-cards .contact-card:nth-child(even) .info-container {
          margin-right: 0; } }
    @media (min-width: 1200px) {
      .oc-contact-cards .contact-card {
        flex-basis: 33.3333%;
        margin-bottom: 30px; }
        .oc-contact-cards .contact-card:nth-child(even) .info-container {
          margin-right: 30px; }
        .oc-contact-cards .contact-card:nth-child(3n) .info-container {
          margin-right: 0; } }
    .oc-contact-cards .contact-card .contact-title {
      margin-top: 0;
      margin-bottom: 10px; }
    .oc-contact-cards .contact-card img {
      width: 75px;
      margin: 0 15px 0 0;
      float: left; }
      @media (min-width: 1200px) {
        .oc-contact-cards .contact-card img {
          width: 100px; } }
    .oc-contact-cards .contact-card .name {
      font-size: 18px;
      font-weight: 700;
      position: relative;
      display: block;
      margin-bottom: 5px; }
      @media (min-width: 1200px) {
        .oc-contact-cards .contact-card .name {
          font-size: 21px; } }
      .oc-contact-cards .contact-card .name .fa {
        position: absolute;
        right: 5px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 18px;
        color: black; }
    .oc-contact-cards .contact-card p {
      font-size: 14px; }
      @media (min-width: 1200px) {
        .oc-contact-cards .contact-card p {
          font-size: 16px; } }
    .oc-contact-cards .contact-card .info-container {
      margin-right: 30px;
      border-top: 2px solid black;
      padding: 15px 0; }
      @media (min-width: 768px) {
        .oc-contact-cards .contact-card .info-container {
          margin-right: 30px; } }

.oc-contact-us-feature {
  width: 100%;
  margin: 50px auto;
  display: flex;
  flex-direction: column;
  padding: 0 15px; }
  @media (min-width: 768px) {
    .oc-contact-us-feature {
      width: 50%; } }
  .oc-contact-us-feature p {
    margin-bottom: 15px; }
    @media (min-width: 1200px) {
      .oc-contact-us-feature p {
        margin-bottom: 30px; } }
  .oc-contact-us-feature .tel {
    color: #d40f7d;
    font-size: 28px;
    font-family: "Roboto", sans-serif;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase; }
    @media (min-width: 1200px) {
      .oc-contact-us-feature .tel {
        font-size: 32px; } }
    .oc-contact-us-feature .tel:hover {
      cursor: default; }

.contractor-level-key img {
  height: 50px;
  margin-bottom: 10px; }

.contractor-level-key p {
  margin: 0 0 20px; }

.oc-form {
  display: inline-block;
  margin: 7px 7px 0 0; }

.zip-picker {
  font-size: 13px; }

@charset "UTF-8";
.oc-cta-button {
  display: inline-flex;
  position: relative;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-transform: uppercase;
  background: #d40f7d;
  color: white;
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  text-decoration: none;
  padding: 0 1rem;
  min-width: 170px;
  min-height: 35px;
  cursor: pointer;
  font-size: 18px;
  border: 1px solid #d40f7d;
  overflow: hidden;
  z-index: 1;
  transition: 0.25s ease-in-out; }
  @media (hover: none), (-moz-touch-enabled: 1) {
    .oc-cta-button {
      transition: none; } }
  @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .oc-cta-button {
      line-height: 35px; } }
  .oc-cta-button:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: -1px;
    background-color: white;
    transform: translateX(-100%);
    z-index: -1;
    transition: 0.25s ease-in-out; }
    @media (hover: none), (-moz-touch-enabled: 1) {
      .oc-cta-button:before {
        transition: none; } }
  .oc-cta-button:hover, .oc-cta-button:focus {
    text-decoration: none;
    color: #d40f7d; }
    .oc-cta-button:hover:before, .oc-cta-button:focus:before {
      right: 0;
      transform: translateX(0);
      transition: 0.25s ease-in-out; }
      @media (hover: none), (-moz-touch-enabled: 1) {
        .oc-cta-button:hover:before, .oc-cta-button:focus:before {
          transition: none; } }
  .oc-cta-button.black {
    background: black;
    border-color: white; }
    .oc-cta-button.black:hover, .oc-cta-button.black:focus {
      color: black; }
  .oc-cta-button.transparent {
    background: transparent;
    border-color: black;
    color: black; }
    .oc-cta-button.transparent:before {
      background-color: black; }
    .oc-cta-button.transparent:hover, .oc-cta-button.transparent:focus {
      color: white; }
  .oc-cta-button.chevron-right {
    justify-content: space-between; }
    .oc-cta-button.chevron-right:after {
      font-family: "icomoon";
      content: "";
      position: relative;
      display: block;
      align-self: center;
      margin-left: 20px; }

.oc-document-download-list {
  list-style: none;
  padding-left: 0; }
  .oc-document-download-list .document-download {
    display: block;
    margin-bottom: 5px;
    color: black;
    text-decoration: none; }
    .oc-document-download-list .document-download .fa {
      margin-right: 5px; }
    .oc-document-download-list .document-download .title {
      font-size: 16px;
      font-weight: 500;
      margin-right: 5px; }
    .oc-document-download-list .document-download .doc-size {
      font-size: 13px; }
    .oc-document-download-list .document-download:hover {
      text-decoration: none; }
      .oc-document-download-list .document-download:hover .title {
        text-decoration: underline; }


.oc-footer {
  background: #cecece;
  padding: 20px 15px;
  margin: 0 auto; }
  @media (min-width: 768px) {
    .oc-footer {
      max-width: 800px; } }
  @media (min-width: 1200px) {
    .oc-footer {
      max-width: 1440px; } }
  .oc-footer .footer-content {
    margin: 0 auto; }
    @media (min-width: 768px) {
      .oc-footer .footer-content {
        max-width: 800px; } }
    @media (min-width: 1200px) {
      .oc-footer .footer-content {
        max-width: 1170px; } }
    .oc-footer .footer-content > ul {
      columns: 1;
      margin-top: 0;
      font-size: 18px; }
      @media (min-width: 768px) {
        .oc-footer .footer-content > ul {
          columns: 2;
          font-size: 16px; } }
      @media (min-width: 1200px) {
        .oc-footer .footer-content > ul {
          columns: 4; } }
      .oc-footer .footer-content > ul > li {
        margin-bottom: 0;
        border-bottom: 1px solid white;
        position: relative; }
        @media (min-width: 768px) {
          .oc-footer .footer-content > ul > li {
            margin-bottom: 20px;
            border-bottom: 0; } }
        @media (min-width: 1200px) {
          .oc-footer .footer-content > ul > li {
            margin-bottom: 0; } }
        .oc-footer .footer-content > ul > li li {
          margin-bottom: 7px; }
          @media (min-width: 768px) {
            .oc-footer .footer-content > ul > li li {
              margin-bottom: 5px; } }
      .oc-footer .footer-content > ul ul {
        padding-top: 10px; }
        @media screen {
          .oc-footer .footer-content > ul ul {
            padding-top: 0; } }
      .oc-footer .footer-content > ul input ~ ul {
        display: none; }
        @media (min-width: 768px) {
          .oc-footer .footer-content > ul input ~ ul {
            display: block; } }
      .oc-footer .footer-content > ul input {
        display: none; }
      .oc-footer .footer-content > ul input:checked ~ ul {
        display: block; }
  .oc-footer ul {
    list-style: none;
    padding-left: 0; }
  .oc-footer li {
    break-inside: avoid; }
  .oc-footer h3 {
    position: relative;
    margin-top: 0;
    padding: 20px 0;
    cursor: pointer;
    }
    @media (min-width: 768px) {
      .oc-footer h3 {
        padding: 0;
        cursor: default; } }
    @media (max-width: 767px) {
      .oc-footer h3.clickable:after {
        position: absolute;
        top: 50%;
        right: 10px;
        font-size: 20px;
        font-family: icomoon;
        transform: translateY(-50%) rotate(-90deg);
        content: "\E608"; } }
    @media (max-width: 767px) {
      .oc-footer h3 label {
        display: block;
        cursor: pointer; } }
  @media (max-width: 767px) {
    .oc-footer .footer-chevron:after {
      position: absolute;
      z-index: 10;
      top: 50%;
      right: 10px;
      font-size: 20px;
      font-family: icomoon;
      transform: translateY(-50%) rotate(90deg);
      content: "\E608";
      background: #cecece; } }
  .oc-footer input:checked + .footer-chevron,
  .oc-footer input:checked ~ label .footer-chevron {
    display: none; }
  .oc-footer a {
    color: black;
    text-decoration: none;
    display: block;
    padding: 10px 0; }
    @media (min-width: 768px) {
      .oc-footer a {
        padding: 0;
        display: inline-block; } }
    @media (min-width: 768px) {
      .oc-footer a.mobile {
        display: none !important; } }
    @media (max-width: 767px) {
      .oc-footer a.desktop {
        display: none !important; } }
    .oc-footer a:hover, .oc-footer a:focus, .oc-footer a:active {
      color: black;
      text-decoration: underline; }
  .oc-footer .social-media-links {
    display: flex; }
    .oc-footer .social-media-links a {
      font-size: 50px;
      display: inline-block;
      margin-right: 30px;
      transition: color .25s ease-out;
      color: #fff; }
      .oc-footer .social-media-links a:hover, .oc-footer .social-media-links a:focus, .oc-footer .social-media-links a:active {
        color: #ce1126; }
      @media (min-width: 768px) {
        .oc-footer .social-media-links a {
          font-size: 34px;
          margin-right: 10px; } }
      .oc-footer .social-media-links a i {
        width: 50px; }
        @media (min-width: 768px) {
          .oc-footer .social-media-links a i {
            width: 34px; } }
  .oc-footer p {
    margin: 10px 0 5px; }
  .oc-footer .footer-util {
    display: flex; }
    .oc-footer .footer-util ul {
      list-style-type: none; }
      .oc-footer .footer-util ul li {
        display: block; }
        @media (min-width: 768px) {
          .oc-footer .footer-util ul li {
            display: inline-block; }
            .oc-footer .footer-util ul li + li a {
              margin-left: 10px; } }
      .oc-footer .footer-util ul.full-bottom-links {
        width: calc(100% + 10px);
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-left: -10px; }
        .oc-footer .footer-util ul.full-bottom-links a {
          margin-left: 10px;
          margin-right: 0; }
    .oc-footer .footer-util .util1 {
      width: 50%; }
    .oc-footer .footer-util .util2 {
      width: 50%; }
      @media (min-width: 768px) {
        .oc-footer .footer-util .util2 {
          text-align: right; } }
      @media (min-width: 768px) {
        .oc-footer .footer-util .util2 a {
          margin-left: 10px; } }
  .oc-footer .copyright-statement {
    font-size: 12px; }

.oc-footnotes {
  font-size: 11px;
  line-height: 13px;
  margin-bottom: 20px; }
  @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .oc-footnotes {
      width: 1170px;
      margin: 0 auto 20px; } }
  .oc-footnotes a {
    color: black;
    text-decoration: underline; }
    .oc-footnotes a:hover, .oc-footnotes a:focus, .oc-footnotes a:active {
      color: #d40f7d;
      text-decoration: none; }

.oc-form .error {
  color: #d40f7d;
  font-weight: 700;
  margin-bottom: 30px; }

.oc-form fieldset {
  margin-bottom: 25px; }
  .oc-form fieldset.radio-check label {
    font-weight: normal;
    margin-bottom: 15px;
    display: flex; }
    .oc-form fieldset.radio-check label input {
      margin: 0 10px 0 0; }

.oc-form label {
  display: block;
  color: black;
  font-size: 16px;
  line-height: 16px;
  font-weight: 700;
  margin-bottom: 3px; }

.oc-form input[type="text"] {
  border: 1px solid black;
  height: 40px;
  padding: 5px;
  margin-bottom: 5px; }
  .oc-form input[type="text"]:focus {
    border-color: #d40f7d;
    outline: none; }

.oc-form input[type="submit"], .oc-form .form-submit {
  display: inline-flex;
  position: relative;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-transform: uppercase;
  background: #d40f7d;
  color: white;
  font-weight: 300;
  text-decoration: none;
  padding: 0 1rem;
  min-width: 170px;
  min-height: 35px;
  cursor: pointer;
  font-size: 18px;
  border: 1px solid #d40f7d;
  overflow: hidden;
  z-index: 1; }

.oc-form .column-1 {
  width: 100%;
  margin: 0 auto; }
  @media (min-width: 768px) {
    .oc-form .column-1 {
      width: 370px; } }
  .oc-form .column-1 input[type="text"] {
    width: 100%; }

.oc-form .column-2 {
  display: flex;
  flex-direction: row; }
  .oc-form .column-2 .column {
    flex-basis: 50%; }
    .oc-form .column-2 .column input[type="text"] {
      width: 90%; }

.oc-form .select-container {
  position: relative;
  display: inline-block; }
  .oc-form .select-container:after {
    content: '\f107';
    display: inline;
    font-family: 'fontawesome';
    font-size: 18px;
    color: #333;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px; }
  .oc-form .select-container select {
    color: #333;
    background: white;
    border: 1px solid #d1d1d1;
    padding: 5px 15px;
    font-size: 16px;
    line-height: 19px;
    border-radius: 0; }

.oc-full-bleed-content-and-image {
  background-image: none;
  position: relative;
  overflow: hidden;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border-top: 2px solid black;
  border-bottom: 2px solid black;
  margin-bottom: 35px; }
  @media (min-width: 768px) {
    .oc-full-bleed-content-and-image {
      background-size: cover;
      margin-bottom: 30px;
      padding-top: 30px; } }
  @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .oc-full-bleed-content-and-image {
      padding-top: 70px;
      margin-right: -15px;
      margin-left: -15px;
      margin-bottom: 70px;
      border: none; } }
  .oc-full-bleed-content-and-image .content-container {
    display: flex; }
    @media (min-width: 768px) {
      .oc-full-bleed-content-and-image .content-container {
        flex-direction: row;
        max-width: 768px;
        margin: 0 auto; } }
    @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-full-bleed-content-and-image .content-container {
        max-width: 1170px;
        padding: 0 0 0; } }
    .oc-full-bleed-content-and-image .content-container.content-right {
      flex-direction: row-reverse; }
  .oc-full-bleed-content-and-image .content {
    background: white;
    padding-top: 15px; }
    @media (min-width: 768px) {
      .oc-full-bleed-content-and-image .content {
        padding: 15px;
        width: 53%;
        margin: 0 15px 15px; } }
    @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-full-bleed-content-and-image .content {
        width: 50%;
        padding: 30px;
        margin: 0 0 30px; } }
    .oc-full-bleed-content-and-image .content .prehead {
      font-family: "Roboto", sans-serif;
      color: #636769;
      text-transform: uppercase;
      font-size: 16px;
      margin-bottom: 5px;
      text-align: left;
      display: block; }
      @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
        .oc-full-bleed-content-and-image .content .prehead {
          font-size: 18px; } }
    .oc-full-bleed-content-and-image .content p {
      margin-bottom: 15px;
      text-align: left; }
      @media (min-width: 768px) {
        .oc-full-bleed-content-and-image .content p {
          margin-bottom: 20px; } }
      @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
        .oc-full-bleed-content-and-image .content p {
          margin-bottom: 35px; } }
    .oc-full-bleed-content-and-image .content .mobile-img {
      display: block;
      max-width: 100%;
      margin-bottom: 15px; }
      @media (min-width: 768px) {
        .oc-full-bleed-content-and-image .content .mobile-img {
          display: none; } }
    .oc-full-bleed-content-and-image .content .heading-with-image {
      display: flex;
      flex-direction: column-reverse; }
      @media (min-width: 768px) {
        .oc-full-bleed-content-and-image .content .heading-with-image {
          flex-direction: row; } }
      .oc-full-bleed-content-and-image .content .heading-with-image h3 {
        font-size: 32px;
        width: 100%;
        text-align: center; }
        @media (min-width: 768px) {
          .oc-full-bleed-content-and-image .content .heading-with-image h3 {
            width: 60%;
            text-align: left; } }
        @media (min-width: 1200px) {
          .oc-full-bleed-content-and-image .content .heading-with-image h3 {
            font-size: 44px; } }
      .oc-full-bleed-content-and-image .content .heading-with-image img {
        width: 50%;
        height: auto;
        margin: 0 auto 15px; }
        @media (min-width: 768px) {
          .oc-full-bleed-content-and-image .content .heading-with-image img {
            width: auto;
            height: 100px;
            margin-left: 30px; } }
    .oc-full-bleed-content-and-image .content .posthead {
      font-size: 18px;
      margin-bottom: 20px;
      font-weight: 700; }
      @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
        .oc-full-bleed-content-and-image .content .posthead {
          font-size: 21px; } }
    .oc-full-bleed-content-and-image .content .cta-container {
      margin: 0 auto;
      max-width: 320px; }
      @media (min-width: 768px) {
        .oc-full-bleed-content-and-image .content .cta-container {
          max-width: none; } }
      .oc-full-bleed-content-and-image .content .cta-container a {
        margin: 0 0 10px; }
        @media (min-width: 768px) {
          .oc-full-bleed-content-and-image .content .cta-container a:first-child {
            margin: 0 10px 0 0; } }
    .oc-full-bleed-content-and-image .content.left-align {
      text-align: left; }
  .oc-full-bleed-content-and-image.no-border {
    border: none; }

hr {
  display: none;
  border-top: 2px solid black;
  padding: 0;
  margin: 0 auto; }
  @media (min-width: 768px) {
    hr {
      display: block; } }
  @media screen and (min-width: 1200px) {
    hr {
      max-width: 1170px; } }
  .bg-shaded + hr {
    margin-top: 20px;
    margin-bottom: 20px; }
    @media screen and (min-width: 1200px) {
      .bg-shaded + hr {
        margin-top: 70px;
        margin-bottom: 70px; } }
  .h5 + hr {
    margin-top: 35px;
    margin-bottom: 20px; }

@media (min-width: 768px) {
  .oc-key-features {
    display: flex;
    flex-direction: row;
    justify-content: center; } }

.oc-key-features .feature {
  text-align: center;
  border-bottom: 1px solid #ccc; }
  .oc-key-features .feature:last-child {
    border-bottom: none; }
  @media (min-width: 768px) {
    .oc-key-features .feature {
      border-right: 1px solid #ccc;
      border-bottom: none; } }
  .oc-key-features .feature:last-child {
    border-right: none; }
  .oc-key-features .feature:nth-last-child(1):first-child,
  .oc-key-features .feature:nth-last-child(1):first-child ~ * {
    border-right: none; }
  .oc-key-features .feature:nth-last-child(n + 2):first-child,
  .oc-key-features .feature:nth-last-child(n + 2):first-child ~ * {
    flex-basis: 25%; }
  .oc-key-features .feature:nth-last-child(3):first-child,
  .oc-key-features .feature:nth-last-child(3):first-child ~ * {
    flex-basis: 33.3333%; }
  .oc-key-features .feature:nth-last-child(4):first-child,
  .oc-key-features .feature:nth-last-child(4):first-child ~ * {
    flex-basis: 25%; }
  .oc-key-features .feature .content {
    padding: 25px 15px; }
    @media (min-width: 768px) {
      .oc-key-features .feature .content {
        padding: 35px 15px; } }
  .oc-key-features .feature img {
    margin-bottom: 20px;
    max-height: 75px; }
  .oc-key-features .feature .feature-title {
    font-weight: 700;
    margin: 0 0 10px;
    font-size: 18px;
    line-height: 18px;
    text-transform: uppercase;
    display: block;
    text-align: center; }

.oc-media-object {
  color: black;
  overflow: hidden;
  margin-bottom: 20px; }
  @media (min-width: 1200px) {
    .oc-media-object {
      margin-bottom: 30px; } }
  .oc-media-object > .h4 {
    margin-bottom: 20px; }
  .oc-media-object .image {
    float: left;
    margin-right: 15px;
    width: 60px;
    border: 1px solid #e6e6e6; }
    @media (min-width: 768px) {
      .oc-media-object .image {
        width: 75px; } }
    @media (min-width: 1200px) {
      .oc-media-object .image {
        width: 100px; } }
    .oc-media-object .image img {
      width: auto;
      max-width: 100%;
      height: auto;
      display: block; }
  .oc-media-object .content {
    overflow: hidden;
    padding-top: 0; }
    .oc-media-object .content .heading {
      font-weight: 700;
      margin: 0 0 10px;
      font-size: 18px;
      line-height: 18px;
      display: inline-block;
      font-family: "Roboto", sans-serif;
      text-transform: capitalize; }
      .oc-media-object .content .heading.lg {
        font-size: 28px;
        line-height: 28px; }
      .oc-media-object .content .heading .prehead {
        font-size: 13px;
        color: black;
        margin: 0 0 5px; }
      .oc-media-object .content .heading a {
        color: black;
        text-decoration: none; }
        .oc-media-object .content .heading a:hover {
          color: #d40f7d;
          text-decoration: none; }
    .oc-media-object .content p {
      margin-bottom: 15px;
      font-size: 14px; }
      .oc-media-object .content p:first-child, .oc-media-object .content p:first-of-type {
        margin-top: 0; }

.oc-modal {
  transform: translate3d(0, 100%, 0);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999;
  width: 0;
  height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  transition: opacity .4s; }
  .oc-modal:target {
    transform: translate(0, 0);
    width: auto;
    height: auto;
    opacity: 1;
    background: rgba(0, 0, 0, 0.4);
    visibility: visible; }
    .oc-modal:target .modal-body:not(:focus-within) {
      background-color: #fffffe;
      transition: background-color 0.01s; }
  .oc-modal .global-close {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    cursor: default; }
  .oc-modal .close {
    color: black;
    font-size: 24px;
    margin: 15px;
    font-weight: 700;
    line-height: 24px;
    float: right;
    text-decoration: none; }
    .oc-modal .close:hover, .oc-modal .close:focus {
      color: #d40f7d; }
    .oc-modal .close:focus {
      text-decoration: underline; }
  .oc-modal .modal-body {
    margin: 2em auto;
    z-index: 100;
    width: 95%;
    overflow-x: hidden;
    background: white;
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.75);
    position: relative; }
    @media (min-width: 768px) {
      .oc-modal .modal-body {
        width: 600px; } }
    @media (min-width: 1200px) {
      .oc-modal .modal-body {
        width: 900px; } }
    @media (min-width: 768px) {
      .oc-modal .modal-body.sm {
        width: 600px; } }
    .oc-modal .modal-body .modal-content {
      padding: 15px; }
      .oc-modal .modal-body .modal-content .heading {
        margin-bottom: 35px; }
    .oc-modal .modal-body img {
      max-width: 100%;
      margin: 0 auto; }
    .oc-modal .modal-body .cta-button + .cta-button {
      margin-top: 15px; }
    .oc-modal .modal-body hr {
      margin: 15px 0; }
    .oc-modal .modal-body:focus {
      outline-offset: 2px;
      outline-color: #d40f7d;
      outline-style: solid;
      outline-width: 2px; }

.oc-recent-news {
  display: block;
  padding: 35px 15px;
  margin-bottom: 35px; }
  @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .oc-recent-news {
      padding: 70px 85px;
      padding-left: 85px;
      padding-right: 85px;
      margin-bottom: 70px; } }
  .oc-recent-news .recent-news-heading-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 0; }
    @media screen and (min-width: 768px) {
      .oc-recent-news .recent-news-heading-grid {
        margin-bottom: 15px; } }
    @media screen and (min-width: 1200px) {
      .oc-recent-news .recent-news-heading-grid {
        margin-bottom: 35px; } }
    @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-recent-news .recent-news-heading-grid {
        display: flex;
        justify-content: space-between;
        margin-bottom: 0; } }
  .oc-recent-news h3 {
    font-weight: 900; }
  .oc-recent-news .news-link-container-grid {
    display: none; }
    @supports (display: contents) {
      .oc-recent-news .news-link-container-grid {
        display: none;
        grid-template-columns: repeat(3, 100%);
        grid-template-rows: auto auto auto auto;
        grid-column-gap: 30px;
        grid-row-gap: 20px;
        grid-auto-flow: column;
        max-width: 100%;
        margin: 0 auto; }
        @media screen and (min-width: 768px) {
          .oc-recent-news .news-link-container-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            grid-row-gap: 20px; } }
        @media screen and (min-width: 1200px) {
          .oc-recent-news .news-link-container-grid {
            grid-row-gap: 35px; } }
        @media screen and (min-width: 768px) {
          @supports (display: contents) {
            .oc-recent-news .news-link-container-grid .news-link {
              display: contents; } } } }
    @supports not (display: contents) {
      .oc-recent-news .news-link-container-grid {
        display: none;
        flex-direction: row;
        max-width: 320px;
        margin: 0 auto; }
        @media (min-width: 768px) {
          .oc-recent-news .news-link-container-grid {
            display: flex;
            max-width: none; } } }
  .oc-recent-news .news-link-container {
    display: none;
    flex-direction: row;
    max-width: 320px;
    margin: 0 auto; }
    @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-recent-news .news-link-container {
        overflow-x: hidden;
        display: flex; } }
    @supports (display: grid) {
      .oc-recent-news .news-link-container {
        display: none; } }
    @media (min-width: 768px) {
      .oc-recent-news .news-link-container {
        max-width: none; } }
    .oc-recent-news .news-link-container .news-link {
      flex-basis: 0%;
      flex-grow: 1; }
      .oc-recent-news .news-link-container .news-link h3 {
        margin-bottom: 30px; }
      .oc-recent-news .news-link-container .news-link a {
        margin: 15px auto 30px; }
  .oc-recent-news .news-link-container-mobile {
    display: block; }
    @media (min-width: 768px) {
      .oc-recent-news .news-link-container-mobile {
        display: none; } }
    .oc-recent-news .news-link-container-mobile .news-link {
      flex: none;
      width: 100%;
      margin: 20px 0 0;
      display: flex;
      flex-direction: column; }
    .oc-recent-news .news-link-container-mobile .prehead {
      margin-bottom: 20px; }
    .oc-recent-news .news-link-container-mobile h3 {
      margin-bottom: 20px; }
    .oc-recent-news .news-link-container-mobile a {
      margin: 15px auto 20px; }
    .oc-recent-news .news-link-container-mobile .slick-slide:focus {
      outline: none; }
    .oc-recent-news .news-link-container-mobile .slick-dots li {
      margin: 15px 10px 0; }
      .oc-recent-news .news-link-container-mobile .slick-dots li button:before {
        content: '';
        opacity: 1;
        border: 1px solid black;
        border-radius: 10px;
        background: transparent; }
      .oc-recent-news .news-link-container-mobile .slick-dots li.slick-active button:before {
        background: black; }
  .oc-recent-news h2 {
    color: #636769;
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    line-height: 16px;
    margin: 0;
    grid-column: 1 / 2; }
    @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-recent-news h2 {
        font-size: 18px;
        line-height: 18px; } }
  .oc-recent-news .more-news {
    color: black;
    font-size: 14px;
    line-height: 14px;
    margin-right: 15px;
    grid-column: 2 / 3;
    text-align: right; }
    @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-recent-news .more-news {
        font-size: 18px;
        line-height: 18px; } }
    .oc-recent-news .more-news:after {
      margin-left: 10px;
      font-size: 15px;
      font-family: icomoon;
      content: "\E608";
      text-decoration: none; }
    .oc-recent-news .more-news:hover {
      color: #d40f7d;
      text-decoration: none; }
      .oc-recent-news .more-news:hover:after {
        text-decoration: none; }
  .oc-recent-news .news-link {
    position: relative;
    display: block;
    color: black;
    font-size: 14px;
    margin: 20px 15px 0;
    flex: 0 0 290px; }
    .oc-recent-news .news-link:first-child {
      margin-left: 0; }
    .oc-recent-news .news-link:last-child {
      margin-right: 0; }
    @media screen and (min-width: 768px) {
      .oc-recent-news .news-link {
        margin: 15px 15px;
        flex: 1; } }
    @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-recent-news .news-link {
        font-size: 16px;
        margin: 35px 15px; } }
    .oc-recent-news .news-link a {
      justify-self: start; }
  .oc-recent-news .prehead {
    font-size: 18px;
    line-height: 18px;
    font-weight: 700;
    border-top: 2px solid black;
    border-bottom: 1px solid black;
    padding: 15px 0;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .oc-recent-news .prehead {
        scroll-snap-align: start; } }
    @supports (display: contents) {
      .oc-recent-news .prehead {
        margin-bottom: 0; } }
    @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-recent-news .prehead {
        font-size: 21px;
        line-height: 21px;
        padding: 20px 0;
        margin-bottom: 30px; }
        @supports (display: contents) {
          .oc-recent-news .prehead {
            margin-bottom: 0; } } }
  .oc-recent-news h3 {
    font-size: 28px;
    line-height: 32px;
    font-family: "Oswald", sans-serif;
    text-transform: uppercase;
    margin: 0; }
    @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-recent-news h3 {
        font-size: 40px;
        line-height: 44px;
        margin: 0; } }

.oc-resources {
  display: flex;
  flex-wrap: wrap;
  margin-top: 30px;
  margin-left: -15px;
  margin-right: -15px; }
  .oc-resources .resource {
    flex-basis: 100%;
    padding: 0 15px;
    margin-bottom: 15px; }
    @media (min-width: 768px) {
      .oc-resources .resource {
        flex-basis: 33.3333%;
        margin-bottom: 30px; } }
    @media (min-width: 1200px) {
      .oc-resources .resource {
        flex-basis: 25%; } }
    .oc-resources .resource a {
      display: inline-block;
      position: relative;
      max-height: 208.13px;
      overflow: hidden; }
      @media (min-width: 768px) {
        .oc-resources .resource a {
          max-height: 199.13px; } }
      @media (min-width: 1200px) {
        .oc-resources .resource a {
          max-height: 147.66px; } }
      .oc-resources .resource a:before {
        content: '';
        font-family: "fontawesome";
        color: white;
        font-size: 25px;
        text-shadow: 0 0 3px rgba(0, 0, 0, 0.75);
        position: absolute;
        top: 0;
        left: 0;
        z-index: 10;
        background: transparent;
        width: 64px;
        height: 64px;
        align-items: center;
        justify-content: center;
        display: flex; }
      .oc-resources .resource a:after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: transparent; }
      .oc-resources .resource a:hover:before {
        color: #d40f7d;
        background: white;
        text-shadow: none;
        text-decoration: none; }
      .oc-resources .resource a:hover:after {
        background: rgba(212, 15, 125, 0.5); }
      .oc-resources .resource a.image {
        border: 1px solid #e6e6e6; }
        .oc-resources .resource a.image:before {
          content: '\f0b2'; }
      .oc-resources .resource a.video {
        border: 1px solid #e6e6e6; }
        .oc-resources .resource a.video:before {
          content: '\f03d'; }
      .oc-resources .resource a img {
        width: 100%; }
    .oc-resources .resource p {
      margin: 0;
      font-size: 18px;
      color: #636769; }

@media (min-width: 768px) {
  .oc-image-modal {
    max-width: 600px; } }

@media (min-width: 1200px) {
  .oc-image-modal {
    max-width: 900px;
    width: auto !important; } }

.oc-image-modal img {
  width: 100%; }

.oc-spotlight {
  display: flex;
  flex-direction: column;
  padding: 20px 15px 20px;
  background: #e6e6e6; }
  @media (min-width: 768px) {
    .oc-spotlight {
      flex-direction: row;
      max-width: 768px;
      margin: 0 auto 70px; } }
  @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .oc-spotlight {
      max-width: 1170px;
      padding: 70px 100px; } }
  .oc-spotlight .content {
    flex-basis: 70%;
    border-top: 1px solid black;
    padding-top: 20px; }
  .oc-spotlight .prehead {
    font-family: "Roboto", sans-serif;
    color: #636769;
    text-transform: uppercase;
    font-size: 16px;
    margin-bottom: 15px; }
    @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-spotlight .prehead {
        font-size: 18px;
        margin-bottom: 20px; } }
  .oc-spotlight h3 {
    font-family: "Roboto", sans-serif;
    margin: 0 0 5px;
    font-size: 18px;
    font-weight: bold; }
    @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-spotlight h3 {
        font-size: 21px; } }
  .oc-spotlight .posthead {
    font-size: 18px;
    margin-bottom: 15px;
    font-style: italic; }
    .oc-spotlight .posthead a {
      color: black;
      text-decoration: underline; }
      .oc-spotlight .posthead a:hover, .oc-spotlight .posthead a:focus, .oc-spotlight .posthead a:active {
        color: #d40f7d;
        text-decoration: none; }
    @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-spotlight .posthead {
        font-size: 21px; } }
  .oc-spotlight .img {
    flex-basis: 30%;
    margin: 0 auto;
    max-width: 130px; }
    @media (min-width: 768px) {
      .oc-spotlight .img {
        margin-left: 30px;
        max-width: 100%; } }
    .oc-spotlight .img img {
      max-width: 100%; }

.oc-stickynav {
  background: white;
  padding: 10px 15px 0;
  width: auto;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 100;
  margin: 0 -15px;
  overflow-y: hidden; }
  @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .oc-stickynav {
      position: relative; } }
  @media (min-width: 768px) {
    .oc-stickynav {
      border-bottom: 2px solid black;
      padding: 8px 0;
      margin-top: 0;
      margin-bottom: 0; }
      .oc-stickynav:before {
        content: '';
        background: linear-gradient(to left, rgba(255, 255, 255, 0) 0%, white 75%);
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 2%;
        z-index: 10; }
      .oc-stickynav:after {
        content: '';
        background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, white 75%);
        position: absolute;
        right: 0;
        top: 0;
        height: 100%;
        width: 10%; } }
  @media (min-width: 768px) {
    .hero-video-background + .oc-stickynav {
      margin-top: -30px; } }
  @media (min-width: 1200px) {
    .hero-video-background + .oc-stickynav {
      margin-top: -35px; } }
  .oc-stickynav .stickynav-container {
    display: flex;
    align-content: center;
    flex-direction: column;
    padding: 0;
    margin: 0 auto;
    max-width: 400px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    overflow-y: hidden; }
    .oc-stickynav .stickynav-container::-webkit-scrollbar {
      width: 0 !important; }
    @media (min-width: 768px) {
      .oc-stickynav .stickynav-container {
        flex-direction: row;
        max-width: 800px;
        padding: 30px 15px; } }
    @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-stickynav .stickynav-container {
        max-width: 1200px;
        padding: 30px 15px; } }
    .oc-stickynav .stickynav-container .cta-group {
      margin: 0 auto 20px; }
      @media (min-width: 768px) {
        .oc-stickynav .stickynav-container .cta-group {
          margin: 0 15px 0 0; } }
      @media (min-width: 1200px) {
        .oc-stickynav .stickynav-container .cta-group {
          margin: 0 35px 0 0; } }
      .oc-stickynav .stickynav-container .cta-group a {
        min-width: 220px !important;
        padding: 0 .8rem; }
    .oc-stickynav .stickynav-container .mobile-stickynav-header {
      display: block;
      background-color: #F2F2F2;
      padding: 12px 30px;
      font-size: 14px;
      color: #585858;
      text-transform: uppercase;
      margin-bottom: 0;
      position: relative; }
      .oc-stickynav .stickynav-container .mobile-stickynav-header:after {
        content: '\f078';
        font-family: 'FontAwesome';
        position: absolute;
        right: 15px;
        color: black; }
      @media (min-width: 768px) {
        .oc-stickynav .stickynav-container .mobile-stickynav-header {
          display: none; } }
    .oc-stickynav .stickynav-container input[type=checkbox] {
      display: none; }
      .oc-stickynav .stickynav-container input[type=checkbox]:checked ~ .stickynav-links {
        max-height: 800px;
        transition: max-height 1s ease-in-out;
        border-bottom: 1px solid #D5D5D5; }
      .oc-stickynav .stickynav-container input[type=checkbox]:checked ~ .mobile-stickynav-header {
        background-color: #6D6D6D;
        color: white; }
        .oc-stickynav .stickynav-container input[type=checkbox]:checked ~ .mobile-stickynav-header:after {
          content: '\f077';
          color: white; }
    .oc-stickynav .stickynav-container .stickynav-links {
      list-style-type: none;
      margin: 0;
      padding: 0 35px 0 0;
      transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
      max-height: 0;
      background: white;
      white-space: nowrap; }
      @media (min-width: 768px) {
        .oc-stickynav .stickynav-container .stickynav-links {
          display: flex;
          align-items: center;
          max-height: none;
          border: none !important; } }
      .oc-stickynav .stickynav-container .stickynav-links li {
        display: block;
        margin: 10px 0 10px 25px; }
        @media (min-width: 768px) {
          .oc-stickynav .stickynav-container .stickynav-links li {
            margin: 0 3px;
            display: inline-block; }
            .oc-stickynav .stickynav-container .stickynav-links li:first-child {
              margin-left: 0; } }
        @media (min-width: 1200px) {
          .oc-stickynav .stickynav-container .stickynav-links li {
            margin: 0 8px; } }
        .oc-stickynav .stickynav-container .stickynav-links li a {
          color: #333;
          text-decoration: none;
          font-size: 14px;
          padding: 10px; }
          @media (hover: hover) {
            .oc-stickynav .stickynav-container .stickynav-links li a:hover {
              text-decoration: underline;
              color: #d40f7d; } }
          .oc-stickynav .stickynav-container .stickynav-links li a:focus, .oc-stickynav .stickynav-container .stickynav-links li a:active {
            text-decoration: none; }
          .oc-stickynav .stickynav-container .stickynav-links li a.active {
            color: #d40f7d; }

.oc-utility-bar {
  padding: 10px 0;
  margin: 0 auto;
  display: flex;
  align-items: center;
  max-width: 400px; }
  @media (min-width: 768px) {
    .oc-utility-bar {
      max-width: 768px; } }
  @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .oc-utility-bar {
      max-width: 1170px;
      padding: 10px 0; } }
  .oc-utility-bar.right-only {
    justify-content: flex-end; }
  .oc-utility-bar .oc-breadcrumbs {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: row; }
    @media (max-width: 767px) {
      .oc-utility-bar .oc-breadcrumbs {
        flex-wrap: wrap;
        max-width: 78%; } }
    .oc-utility-bar .oc-breadcrumbs li {
      font-size: 12px;
      display: flex;
      margin: 0; }
      .oc-utility-bar .oc-breadcrumbs li span:after {
        content: '>';
        padding: 0 5px; }
      @media (max-width: 767px) {
        .oc-utility-bar .oc-breadcrumbs li:nth-last-child(n + 3):first-child:first-child a,
        .oc-utility-bar .oc-breadcrumbs li:nth-last-child(n + 3):first-child ~ *:first-child a {
          width: 9px;
          overflow: hidden;
          white-space: nowrap;
          text-overflow: ellipsis;
          display: inline-block; } }
      .oc-utility-bar .oc-breadcrumbs li a {
        color: #585858;
        text-decoration: none; }
        .oc-utility-bar .oc-breadcrumbs li a:hover, .oc-utility-bar .oc-breadcrumbs li a:focus {
          color: #d40f7d; }
        .oc-utility-bar .oc-breadcrumbs li a:focus {
          text-decoration: underline; }

.oc-video-embed {
  width: 100%;
  position: relative; }
  .oc-video-embed:before {
    content: "";
    display: block;
    width: 100%;
    padding-bottom: 56.25%; }
  .oc-video-embed .video-iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }

.oc-region-selector {
  font-size: 13px;
  color: black;
  /* font-weight: 700; */
  display: flex;
  align-items: center;
  margin-left: auto; }
  .oc-region-selector > a:after {
    content: '\f078';
    font-family: 'FontAwesome';
    margin-left: 8px;
    font-size: 14px;
    display: inline-block; }
  .oc-region-selector a {
    color: black;
    text-decoration: none; }
    .oc-region-selector a:hover, .oc-region-selector a:focus {
      color: #d40f7d; }
    .oc-region-selector a:focus {
      text-decoration: underline; }
  /* .oc-region-selector.flags img { */
    /* width: 21px; */
    /* margin-right: 5px; } */

#region-picker h2 {
  margin: 0 0 15px; }

#region-picker p {
  font-size: 14px; }

.oc-region-selector-links {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap; }
  @media (min-width: 768px) {
    .oc-region-selector-links {
      flex-direction: row; } }
  .oc-region-selector-links a {
    font-size: 14px;
    text-transform: uppercase;
    color: #333;
    padding: 8px;
    text-decoration: none;
    position: relative;
    margin-bottom: 15px;
    width: 220px;
    display: flex;
    align-items: center;
    line-height: 14px; }
    @media (min-width: 768px) {
      .oc-region-selector-links a {
        flex-basis: 31.5%;
        margin-right: 15px; }
        .oc-region-selector-links a:nth-child(3n) {
          margin-right: 0; } }
    @media (min-width: 1200px) {
      .oc-region-selector-links a {
        flex-basis: 32.1%; } }
    @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .oc-region-selector-links a {
        flex-basis: 24.2%; } }
    .oc-region-selector-links a:before {
      content: '';
      background-size: 100%;
      position: absolute;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      width: 60px;
      height: 28px;
      display: inline-block; }
    .oc-region-selector-links a:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      border: 1px solid #E0E0E0; }
    .oc-region-selector-links a:hover:after, .oc-region-selector-links a:focus:after, .oc-region-selector-links a.active:after {
      border: 2px solid #d40f7d; }
    .oc-region-selector-links a .flag-img {
      margin: 0 8px 0 0;
      width: 40px; }
    .oc-region-selector-links a .locale {
      display: inline-block; }
    .oc-region-selector-links a .language {
      display: block;
      font-size: 12px;
      text-transform: none; }

.zip-picker {
  text-transform: uppercase; }

.oc-breadcrumbs {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: row; }
  @media (max-width: 767px) {
    .oc-breadcrumbs {
      flex-wrap: wrap;
      max-width: 78%; } }
  .oc-breadcrumbs li {
    font-size: 12px;
    display: flex; }
    .oc-breadcrumbs li span:after {
      content: '>';
      padding: 0 5px; }
    @media (max-width: 767px) {
      .oc-breadcrumbs li:nth-last-child(n + 3):first-child:first-child a,
      .oc-breadcrumbs li:nth-last-child(n + 3):first-child ~ *:first-child a {
        width: 9px;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        display: inline-block; } }
    .oc-breadcrumbs li a {
      color: #585858;
      text-decoration: none; }
      .oc-breadcrumbs li a:hover {
        color: #d40f7d; }

.oc-contractor-list .contractor-levels {
  background-color: #E6E6E6;
  padding: 15px;
  border-bottom: 2px solid black;
  position: sticky;
  top: 0;
  z-index: 1000; }
  .oc-contractor-list .contractor-levels input[type=checkbox] {
    display: none; }
    .oc-contractor-list .contractor-levels input[type=checkbox]:checked ~ .content {
      max-height: 800px;
      transition: all 1s ease-in-out; }
    .oc-contractor-list .contractor-levels input[type=checkbox]:checked ~ label:after {
      content: '\f078'; }
  .oc-contractor-list .contractor-levels label {
    text-transform: uppercase;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-right: 40px;
    position: relative; }
    .oc-contractor-list .contractor-levels label:after {
      content: '\f077';
      position: absolute;
      font-family: 'fontawesome';
      right: 15px;
      top: 50%;
      transform: translateY(-50%);
      font-size: 14px;
      font-weight: 500; }
    .oc-contractor-list .contractor-levels label img {
      margin: 0;
      max-height: 40px; }
  .oc-contractor-list .contractor-levels .content {
    transition: all 0.5s cubic-bezier(0, 1, 0, 1);
    max-height: 0;
    background: none;
    overflow: hidden;
    margin: 0; }
    .oc-contractor-list .contractor-levels .content p {
      margin: 15px 0 0; }

.oc-contractor-list .contractor {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid black;
  padding: 15px 10px; }
  @media (min-width: 768px) {
    .oc-contractor-list .contractor {
      flex-direction: row;
      align-items: center;
      justify-content: space-between; } }
  @media (min-width: 1200px) {
    .oc-contractor-list .contractor {
      padding: 20px 0; } }
  .oc-contractor-list .contractor .name-location {
    flex-basis: 100%;
    margin-bottom: 15px;
    margin-left: 18px; }
    @media (min-width: 768px) {
      .oc-contractor-list .contractor .name-location {
        margin-bottom: 0; } }
    .oc-contractor-list .contractor .name-location .name {
      font-size: 19px;
      font-weight: 700;
      line-height: 19px;
      text-transform: uppercase;
      display: block;
      margin-bottom: 7px; }
    .oc-contractor-list .contractor .name-location p {
      margin: 0 0 7px;
      font-size: 15px;
      color: #333; }
    .oc-contractor-list .contractor .name-location .contact-info p {
      margin: 0 0 15px; }
      .oc-contractor-list .contractor .name-location .contact-info p .phone {
        margin-right: 5px; }
      .oc-contractor-list .contractor .name-location .contact-info p a {
        margin: 0 5px; }
    .oc-contractor-list .contractor .name-location .professional-certs {
      margin-top: 12px;
      display: inline-flex;
      flex-direction: column;
      list-style-type: none;
      margin: 0;
      padding: 0; }
      @media (min-width: 768px) {
        .oc-contractor-list .contractor .name-location .professional-certs {
          flex-direction: row; } }
      .oc-contractor-list .contractor .name-location .professional-certs li {
        margin-bottom: 8px; }
        @media (min-width: 768px) {
          .oc-contractor-list .contractor .name-location .professional-certs li {
            margin: 0; } }
        .oc-contractor-list .contractor .name-location .professional-certs li img {
          height: 20px; }
        .oc-contractor-list .contractor .name-location .professional-certs li .cert-info {
          font-size: 14px;
          color: #333; }
          @media (min-width: 768px) {
            .oc-contractor-list .contractor .name-location .professional-certs li .cert-info {
              display: none; } }
          .oc-contractor-list .contractor .name-location .professional-certs li .cert-info a {
            color: #6d6d6d;
            margin-left: 8px; }
  .oc-contractor-list .contractor .reviews-quote {
    flex-basis: 100%;
    text-align: left; }
    @media (min-width: 768px) {
      .oc-contractor-list .contractor .reviews-quote {
        flex-basis: 40%;
        text-align: center; } }
    @media (min-width: 1200px) {
      .oc-contractor-list .contractor .reviews-quote {
        flex-basis: 25%; } }
    .oc-contractor-list .contractor .reviews-quote .cta-button {
      margin-bottom: 15px; }
  .oc-contractor-list .contractor:last-child {
    border-bottom: none; }

.certifications-container {
  display: none; }
  @media (min-width: 768px) {
    .certifications-container {
      display: block; } }

.certifications {
  list-style-type: none;
  margin: 0;
  padding: 0; }
  .certifications li {
    margin-bottom: 15px;
    display: inline-flex;
    flex-direction: row;
    align-items: center; }
    .certifications li img {
      height: 20px;
      margin-right: 5px; }
    .certifications li .fa {
      color: #6d6d6d;
      margin-left: 8px; }

.cert-description {
  display: flex;
  flex-direction: row;
  padding-bottom: 30px;
  border-bottom: 2px solid black;
  margin-bottom: 30px; }
  .cert-description:last-child {
    margin-bottom: 0;
    border-bottom: none; }
  .cert-description .logo {
    flex-basis: 15%;
    text-align: center;
    padding-right: 15px; }
    .cert-description .logo img {
      max-width: 50px; }
      @media (min-width: 768px) {
        .cert-description .logo img {
          max-width: 90px; } }
  .cert-description .info {
    flex-basis: 85%; }

.reviews {
  margin-bottom: 10px; }
  .reviews .star {
    font-size: 20px; }
  .reviews .review-count {
    font-size: 13px;
    color: #333;
    margin-left: 5px; }
  .reviews a {
    color: #6d6d6d;
    margin-left: 8px; }

.body {
  padding: 50px; }

.oc-info-popover {
  position: relative;
  display: inline-block;
  padding-right: 10px; }
  .oc-info-popover:hover, .oc-info-popover:focus {
    z-index: 100;
    color: #d40f7d;
    cursor: pointer; }
    .oc-info-popover:hover .popover, .oc-info-popover:focus .popover {
      opacity: 1;
      visibility: visible;
      height: auto; }
  .oc-info-popover .popover {
    font-family: "Roboto", sans-serif;
    padding: 10px;
    font-size: 14px;
    box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25);
    position: absolute;
    top: -25px;
    left: calc(100% + 12px);
    opacity: 0;
    visibility: hidden;
    width: 250px;
    transition: opacity .4s;
    color: black;
    background: white; }
    .oc-info-popover .popover:before {
      content: "";
      position: absolute;
      width: 0;
      height: 0;
      top: 20px;
      left: 1px;
      box-sizing: border-box;
      border: 12px solid black;
      border-color: transparent transparent white white;
      transform-origin: 0 0;
      transform: rotate(45deg);
      box-shadow: -4px 4px 9px 0 rgba(0, 0, 0, 0.1); }
    .oc-info-popover .popover h6 {
      margin: 0 0 5px; }
    .oc-info-popover .popover p {
      margin: 0 0 15px;
      line-height: 16px; }
      .oc-info-popover .popover p:last-child {
        margin: 0; }


.rotate {
  overflow: hidden; }
  .rotate span {
    position: absolute;
    opacity: 0;
    overflow: hidden;
    animation: rotateWord 30s linear infinite 0s; }
    .rotate span:nth-child(2) {
      animation-delay: 5s; }
    .rotate span:nth-child(3) {
      animation-delay: 10s; }
    .rotate span:nth-child(4) {
      animation-delay: 15s; }
    .rotate span:nth-child(5) {
      animation-delay: 20s; }
    .rotate span:nth-child(6) {
      animation-delay: 25s; }

@keyframes rotateWord {
  0% {
    opacity: 0; }
  8% {
    opacity: 1; }
  15% {
    opacity: 1; }
  20% {
    opacity: 0; }
  100% {
    opacity: 0; } }

* {
  box-sizing: border-box; }

.hero-bg.hero-bg-landing {
  background-size: 125px;
  margin-bottom: 15px; }
  @media screen and (max-width: 767px) {
    .hero-bg.hero-bg-landing {
      background: transparent; } }
  @media screen and (min-width: 768px) {
    .hero-bg.hero-bg-landing {
      background-size: cover !important; } }
  @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .hero-bg.hero-bg-landing {
      background-size: 1340px 450px !important; } }

.hero-bg.hero-bg-landing {
  background-position: bottom center !important;
  margin-bottom: 35px; }
  @media screen and (min-width: 768px) {
    .hero-bg.hero-bg-landing {
      background-size: 768px 280px !important; } }
  @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .hero-bg.hero-bg-landing {
      background-size: 1340px 450px !important;
      margin-bottom: 70px; } }

.hero-bg-landing .hero {
  background: transparent; }
  @supports (display: grid) {
    .hero-bg-landing .hero {
      grid-template-columns: repeat(1, auto);
      grid-template-rows: repeat(1, auto);
      grid-template-areas: "."; } }
  @media (min-width: 768px) {
    @supports (display: grid) {
      .hero-bg-landing .hero {
        grid-template-columns: 1fr repeat(12, 64px) 1fr;
        grid-template-rows: repeat(14, 20px);
        grid-template-areas: "tf tf tf tf . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . rf . ." ". . . lf . . . . . . . rf . ." ". . . lf . . . . . . . rf . ." ". . . lf . . . . . . . rf . ." ". . . lf . . . . . . . rf . ." ". . . lf . . . . . . . rf . ." ". . . lf . . . . . . . rf . ." ". . . lf . . . . . . . rbf rbf rbf" ". . . lf . . . . . . . rbf rbf rbf" ". . . lf . . . . . . . rbf rbf rbf"; } } }
  @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .hero-bg-landing .hero {
      -ms-grid-columns: 1fr 100px 100px 100px 100px 100px 100px 100px 100px 100px 100px 100px 100px 1fr;
      -ms-grid-rows: 41.5px 41.5px 41.5px 41.5px 41.5px 41.5px 41.5px 41.5px 41.5px 41.5px 1fr; }
      @supports (display: grid) {
        .hero-bg-landing .hero {
          grid-template-columns: 1fr repeat(12, 100px) 1fr;
          grid-template-rows: repeat(11, 40.9px);
          grid-template-areas: "tf tf tf tf tf tf . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . rf . ." ". . . . . lf . . . . . rf . ." ". . . . . lf . . . . . rf . ." ". . . . . lf . . . . . rf . ." ". . . . . lf . . . . . rf rbf rbf" ". . . . . lf . . . . . rf rbf rbf" ". . . . . lf . . . . . rf rbf rbf"; } } }
  .hero-bg-landing .hero .main {
    position: relative;
    grid-column: 1 / 1;
    grid-row: 1 / 1;
    padding-top: 0;
    padding-bottom: 0px;
    background: transparent; }
    @media screen and (min-width: 768px) {
      .hero-bg-landing .hero .main {
        background: white;
        position: relative;
        grid-column: 5 / 12;
        grid-row: 1 / 15;
        padding-top: 0; } }
    @media screen and (min-width: 1200px) {
      .hero-bg-landing .hero .main {
        position: relative;
        grid-column: 7 / 12;
        grid-row: 1 / 12;
        padding-top: 15px; } }
    @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .hero-bg-landing .hero .main {
        position: relative;
        -ms-grid-column: 7;
        -ms-grid-column-span: 5;
        -ms-grid-row: 1;
        -ms-grid-row-span: 12; } }
  @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .hero-bg-landing .hero .top-fill {
      -ms-grid-column: 1;
      -ms-grid-column-span: 6;
      -ms-grid-row: 1;
      -ms-grid-row-span: 1; }
    .hero-bg-landing .hero .left-fill {
      -ms-grid-column: 6;
      -ms-grid-column-span: 1;
      -ms-grid-row: 6;
      -ms-grid-row-span: 6; }
    .hero-bg-landing .hero .right-fill {
      -ms-grid-column: 12;
      -ms-grid-column-span: 1;
      -ms-grid-row: 5;
      -ms-grid-row-span: 7; }
    .hero-bg-landing .hero .right-bottom-fill {
      -ms-grid-column: 13;
      -ms-grid-column-span: 2;
      -ms-grid-row: 9;
      -ms-grid-row-span: 3; } }

.dot-ratings {
  border: 1px solid gray;
  width: 400px; }
  @media screen and (max-width: 768px) {
    .dot-ratings {
      width: 100%; } }
  .dot-ratings td:last-child {
    width: 160px; }
  .dot-ratings + .notes {
    font-size: 12px;
    color: black; }

.dot {
  display: inline-block;
  border: 1px solid black;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  margin-right: 5px;
  position: relative;
  overflow: hidden; }
  .dot.dot-full {
    background-color: black; }
  .dot.dot-one-fourth:before, .dot.dot-half:before, .dot.dot-three-fourths:before {
    content: '';
    position: absolute;
    height: 100%;
    top: 0;
    left: 0;
    background-color: black; }
  .dot.dot-one-fourth:before {
    width: 25%; }
  .dot.dot-half:before {
    width: 50%; }
  .dot.dot-three-fourths:before {
    width: 75%; }

.image-highlights {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  margin: 30px 0 20px; }
  @media (min-width: 768px) {
    .image-highlights {
      flex-direction: row; } }
  @media (min-width: 1200px) {
    .image-highlights {
      margin: 50px 0 40px; } }
  .image-highlights > .highlight {
    text-align: center;
    margin-bottom: 15px; }
    @media (min-width: 768px) {
      .image-highlights > .highlight {
        padding: 0 15px;
        margin-bottom: 0; } }
    .image-highlights > .highlight > :first-child {
      margin-top: 0; }
    @media (min-width: 768px) {
      .image-highlights > .highlight:first-child {
        padding-left: 0; } }
    @media (min-width: 768px) {
      .image-highlights > .highlight:last-child {
        padding-right: 0; } }
    .image-highlights > .highlight .content {
      position: relative;
      background-color: #f7f7f7;
      height: 100%; }
      .image-highlights > .highlight .content h5 {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        top: 20px;
        width: 90%;
        font-size: 18px;
        line-height: 22px; }
        @media (min-width: 1200px) {
          .image-highlights > .highlight .content h5 {
            font-size: 21px;
            line-height: 25px; } }
    .image-highlights > .highlight img {
      max-width: 100%;
      margin: 30px auto 0; }
      @media (min-width: 768px) {
        .image-highlights > .highlight img {
          margin: 50px auto 0; } }
      @media (min-width: 1200px) {
        .image-highlights > .highlight img {
          margin: 30px auto 0; } }
  @media (min-width: 768px) {
    .image-highlights.three-up > .highlight {
      width: 33%; } }

* {
  box-sizing: border-box; }

.retrofit .hero-bg.hero-bg-landing {
  background-position: top center !important;
  margin-bottom: 35px; }
  @media screen and (min-width: 768px) {
    .retrofit .hero-bg.hero-bg-landing {
      background-size: auto 240px !important; } }
  @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .retrofit .hero-bg.hero-bg-landing {
      background-size: 1340px 350px !important;
      margin-bottom: 70px; } }

.retrofit .hero-bg-landing .hero {
  background: transparent; }
  @supports (display: grid) {
    .retrofit .hero-bg-landing .hero {
      grid-template-columns: repeat(1, auto);
      grid-template-rows: repeat(2, 90px);
      grid-template-areas: "." "."; } }
  @media (min-width: 768px) {
    @supports (display: grid) {
      .retrofit .hero-bg-landing .hero {
        grid-template-columns: 1fr repeat(12, 64px) 1fr;
        grid-template-rows: repeat(12, 20px);
        grid-template-areas: "tf tf tf tf tf . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . lf . . . . . . . . ." ". . . . lf . . . . . . rf . ." ". . . . lf . . . . . . rf . ." ". . . . lf . . . . . . rf . ." ". . . . lf . . . . . . rf . ."; } } }
  @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .retrofit .hero-bg-landing .hero {
      -ms-grid-columns: 1fr 100px 100px 100px 100px 100px 100px 100px 100px 100px 100px 100px 100px 1fr;
      -ms-grid-rows: 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px; }
      @supports (display: grid) {
        .retrofit .hero-bg-landing .hero {
          grid-template-columns: 1fr repeat(12, 100px) 1fr;
          grid-template-rows: repeat(10, 35px);
          grid-template-areas: "tf tf tf tf tf . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . lf . . . . . . . . ." ". . . . lf . . . . . . rf . ." ". . . . lf . . . . . . rf . ." ". . . . lf . . . . . . rf . ."; } } }
  .retrofit .hero-bg-landing .hero .main {
    position: relative;
    grid-column: 1 / 1;
    grid-row: 1 / 2;
    padding-top: 0;
    background: transparent; }
    @media screen and (min-width: 768px) {
      .retrofit .hero-bg-landing .hero .main {
        background: white;
        position: relative;
        grid-column: 6 / 12;
        grid-row: 1 / 12;
        padding-top: 0; } }
    @media screen and (min-width: 1200px) {
      .retrofit .hero-bg-landing .hero .main {
        position: relative;
        grid-column: 6 / 12;
        grid-row: 1 / 11;
        padding-top: 15px;
        padding-left: 65px; } }
    @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .retrofit .hero-bg-landing .hero .main {
        position: relative;
        -ms-grid-column: 6;
        -ms-grid-column-span: 6;
        -ms-grid-row: 1;
        -ms-grid-row-span: 11; } }
  @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .retrofit .hero-bg-landing .hero .top-fill {
      -ms-grid-column: 1;
      -ms-grid-column-span: 5;
      -ms-grid-row: 1;
      -ms-grid-row-span: 1; }
    .retrofit .hero-bg-landing .hero .left-fill {
      -ms-grid-column: 5;
      -ms-grid-column-span: 1;
      -ms-grid-row: 7;
      -ms-grid-row-span: 4; }
    .retrofit .hero-bg-landing .hero .right-fill {
      -ms-grid-column: 12;
      -ms-grid-column-span: 1;
      -ms-grid-row: 8;
      -ms-grid-row-span: 3; } }

.retrofit .columns.reasons-columns .col {
  margin-bottom: 15px;
  display: flex;
  flex-direction: column;
  width: 100%; }
  .retrofit .columns.reasons-columns .col img {
    height: 130px;
    width: auto;
    margin: 0 auto; }

@media (min-width: 768px) {
  .retrofit .columns.reasons-columns .col {
    width: 33.333%; }
    .retrofit .columns.reasons-columns .col:first-child {
      width: 100%;
      margin-bottom: 30px; } }

@media (min-width: 1200px) {
  .retrofit .columns.reasons-columns .col {
    width: 25%;
    display: inline-block; }
    .retrofit .columns.reasons-columns .col:first-child {
      width: 25%; }
    .retrofit .columns.reasons-columns .col img {
      height: 150px; } }

.retrofit .checklist {
  padding: 15px; }
  @media (min-width: 768px) {
    .retrofit .checklist {
      padding: 35px; } }
  .retrofit .checklist ul {
    padding-left: 0;
    list-style-type: none; }
    .retrofit .checklist ul li {
      font-weight: 700;
      margin-bottom: 10px;
      position: relative;
      padding-left: 20px; }
      .retrofit .checklist ul li:before {
        font-family: "FontAwesome";
        content: '\f096';
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%); }

@supports (display: grid) {
  .insulation-main .hero {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, auto);
    grid-template-areas: "main main main" "panther text text"; } }

@media (min-width: 768px) {
  @supports (display: grid) {
    .insulation-main .hero {
      grid-template-columns: 1fr repeat(12, 64px) 1fr;
      grid-template-rows: repeat(14, 35px);
      grid-template-areas: "ltf ltf ltf ltf mf mf mf mf mf mf mf . . ." "ltf ltf ltf ltf mf mf mf mf mf mf mf . . ." "ltf ltf ltf ltf mf mf mf mf mf mf mf . . ." ". . lf lf mf mf mf mf mf mf mf . . ." ". . lf lf mf mf mf mf mf mf mf . . ." ". . lf lf mf mf mf mf mf mf mf . . ." ". . lf lf mf mf mf mf mf mf mf rf . ." ". . lf lf mf mf mf mf mf mf mf rf . ." ". . lf lf mf mf mf mf mf mf mf rf . ." ". . lf lf mf mf mf mf mf mf mf rf rbf rbf" ". . lf lf mf mf mf mf mf mf mf rf rbf rbf" ". . lf lf mf mf mf mf mf mf mf rf rbf rbf" ". . . . mf mf mf mf mf mf mf rf rbf rbf" ". . . . mf mf mf mf mf mf mf rf rbf rbf"; } } }

@media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .insulation-main .hero {
    -ms-grid-columns: 1fr 100px 100px 100px 100px 100px 100px 100px 100px 100px 100px 100px 100px 1fr;
    -ms-grid-rows: 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px; }
    @supports (display: grid) {
      .insulation-main .hero {
        grid-template-columns: 1fr repeat(12, 100px) 1fr;
        grid-template-rows: repeat(20, 35px);
        grid-template-areas: "ltf ltf ltf ltf mf mf mf mf mf mf mf . . ." "ltf ltf ltf ltf mf mf mf mf mf mf mf . . ." "ltf ltf ltf ltf mf mf mf mf mf mf mf . . ." "ltf ltf ltf ltf mf mf mf mf mf mf mf . . ." "ltf ltf ltf ltf mf mf mf mf mf mf mf . . ." ". . lf lf mf mf mf mf mf mf mf . . ." ". . lf lf mf mf mf mf mf mf mf . . ." ". . lf lf mf mf mf mf mf mf mf . . ." ". . lf lf mf mf mf mf mf mf mf rf . ." ". . lf lf mf mf mf mf mf mf mf rf . ." ". . lf lf mf mf mf mf mf mf mf rf . ." ". . lf lf mf mf mf mf mf mf mf rf . ." ". . lf lf mf mf mf mf mf mf mf rbf rbf rbf" ". . lf lf mf mf mf mf mf mf mf rbf rbf rbf" ". . lf lf mf mf mf mf mf mf mf rbf rbf rbf" ". . lf lf mf mf mf mf mf mf mf rbf rbf rbf" ". . lf lf mf mf mf mf mf mf mf rbf rbf rbf" ". . . . mf mf mf mf mf mf mf rbf rbf rbf" ". . . . mf mf mf mf mf mf mf rbf rbf rbf" ". . . . mf mf mf mf mf mf mf rbf rbf rbf"; } } }

.insulation-main .hero .main {
  position: relative;
  grid-column: 1 / 4;
  grid-row: 1 / 1;
  background: transparent; }
  @media screen and (min-width: 1200px) {
    .insulation-main .hero .main {
      grid-row: 1 / 14; } }
  @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .insulation-main .hero .main {
      position: relative;
      -ms-grid-column: 5;
      -ms-grid-column-span: 7;
      -ms-grid-row: 1;
      -ms-grid-row-span: 13; } }
  @media screen and (min-width: 768px) {
    .insulation-main .hero .main {
      position: relative;
      grid-column: 4 / 12;
      grid-row: 1 / 9;
      -ms-grid-column: 3;
      -ms-grid-column-span: 9;
      -ms-grid-row: 1;
      -ms-grid-row-span: 8; } }

.insulation-main .hero .panther {
  position: relative;
  background: transparent; }
  @supports (display: grid) {
    .insulation-main .hero .panther {
      width: auto;
      height: auto; } }
  @media screen and (min-width: 768px) {
    .insulation-main .hero .panther:before {
      background-size: 155px 180px;
      left: 19px; } }
  @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .insulation-main .hero .panther:before {
      background-size: 200px 232px;
      background-position: left bottom;
      left: 14px; } }
  @media (min-width: 768px) {
    .insulation-main .hero .panther {
      grid-column: 3 / 6;
      grid-row: 5 / 11; } }
  @media (min-width: 1200px) {
    .insulation-main .hero .panther {
      grid-column: 3 / 6;
      grid-row: 7 / 16; } }
  @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .insulation-main .hero .panther {
      -ms-grid-column: 3;
      -ms-grid-column-span: 3;
      -ms-grid-row: 7;
      -ms-grid-row-span: 9; } }

.insulation-main .hero .text-content {
  grid-area: text;
  background: white;
  padding: 0 15px;
  overflow: hidden;
  clear: both; }
  @media screen and (min-width: 768px) {
    .insulation-main .hero .text-content {
      position: relative;
      background: transparent;
      grid-column: 6 / 12;
      grid-row: 9 / 13; } }
  @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .insulation-main .hero .text-content {
      grid-column: 6 / 12;
      grid-row: 14 / 18;
      background: white; 
      margin-top: -12px;} }
  @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .insulation-main .hero .text-content {
      -ms-grid-column: 6;
      -ms-grid-column-span: 6;
      -ms-grid-row: 14;
      -ms-grid-row-span: 4; } }

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .insulation-main .hero .left-top-fill {
    -ms-grid-column: 1;
    -ms-grid-column-span: 4;
    -ms-grid-row: 1;
    -ms-grid-row-span: 5; }
  .insulation-main .hero .left-fill {
    -ms-grid-column: 3;
    -ms-grid-column-span: 2;
    -ms-grid-row: 6;
    -ms-grid-row-span: 12; }
  .insulation-main .hero .middle-fill {
    -ms-grid-column: 5;
    -ms-grid-column-span: 7;
    -ms-grid-row: 1;
    -ms-grid-row-span: 20; }
  .insulation-main .hero .right-fill {
    -ms-grid-column: 12;
    -ms-grid-column-span: 1;
    -ms-grid-row: 9;
    -ms-grid-row-span: 4; }
  .insulation-main .hero .right-bottom-fill {
    -ms-grid-column: 12;
    -ms-grid-column-span: 3;
    -ms-grid-row: 13;
    -ms-grid-row-span: 8; } }

.insulation-main .hero .button-wrapper {
  display: block; }
  
  .insulation-main .hero .button-wrapper.flex {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 1199px) {
      .insulation-main .hero .button-wrapper.flex {
        flex-direction: column;
        width: 100%; } }

@charset "UTF-8";
.commercial-ca .hero-bg {
  background-size: 370px;
  background-position: center 133px !important;
  margin: 0 0 35px; }
  @media screen and (min-width: 768px) {
    .commercial-ca .hero-bg {
      background-size: 768px 531px !important;
      background-position: bottom center !important;
      margin: 0 -15px 35px; } }
  @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .commercial-ca .hero-bg {
      background-size: 1340px 910px !important; } }

.commercial-ca .hero {
  background: transparent; }
  @supports (display: grid) {
    .commercial-ca .hero {
      grid-template-columns: repeat(1, auto);
      grid-template-rows: repeat(5, 90px) 63px;
      grid-template-areas: "." "." "." "." "." "tf"; } }
  @media (min-width: 768px) {
    @supports (display: grid) {
      .commercial-ca .hero {
        grid-template-columns: 1fr repeat(12, 64px) 1fr;
        grid-template-rows: repeat(26, 20px);
        grid-template-areas: "tf tf tf tf tf tf tf tf tf tf tf . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . lf lf . . . . . . . . ." ". . . lf lf . . . . . . . . ." ". . . lf lf . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ."; } } }
  @media (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .commercial-ca .hero {
      -ms-grid-columns: 1fr 100px 100px 100px 100px 100px 100px 100px 100px 100px 100px 100px 100px 1fr;
      -ms-grid-rows: 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px 35px; }
      @supports (display: grid) {
        .commercial-ca .hero {
          grid-template-columns: 1fr repeat(12, 100px) 1fr;
          grid-template-rows: repeat(26, 35px);
          grid-template-areas: "tf tf tf tf tf tf tf tf tf tf tf . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . lf lf lf . . . . . . . . ." ". . lf lf lf . . . . . . . . ." ". . lf lf lf . . . . . . . . rf" ". . . . . . . . . . . . . rf" ". . . . . . . . . . . . . rf" ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ." ". . . . . . . . . . . . . ."; } } }
  .commercial-ca .hero .main {
    position: relative;
    grid-column: 1 / 1;
    grid-row: 1 / 1;
    padding-top: 0;
    background: transparent; }
    @media screen and (min-width: 768px) {
      .commercial-ca .hero .main {
        background: white;
        position: relative;
        grid-column: 6 / 12;
        grid-row: 1 / 8;
        padding-top: 0; } }
    @media screen and (min-width: 1200px) {
      .commercial-ca .hero .main {
        position: relative;
        grid-column: 6 / 12;
        grid-row: 1 / 8;
        padding: 15px 30px 0; } }
    @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .commercial-ca .hero .main {
        position: relative;
        -ms-grid-column: 6;
        -ms-grid-column-span: 6;
        -ms-grid-row: 1;
        -ms-grid-row-span: 8; } }
  @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .commercial-ca .hero .top-fill {
      -ms-grid-column: 1;
      -ms-grid-column-span: 11;
      -ms-grid-row: 1;
      -ms-grid-row-span: 1; }
    .commercial-ca .hero .left-fill {
      -ms-grid-column: 3;
      -ms-grid-column-span: 3;
      -ms-grid-row: 5;
      -ms-grid-row-span: 3; }
    .commercial-ca .hero .right-fill {
      -ms-grid-column: 14;
      -ms-grid-column-span: 1;
      -ms-grid-row: 7;
      -ms-grid-row-span: 3; } }
  .commercial-ca .hero .button-wrapper {
    display: block; }
    @media screen and (min-width: 768px) {
      .commercial-ca .hero .button-wrapper {
        margin-top: 15px; } }
    @media screen and (min-width: 1200px), screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
      .commercial-ca .hero .button-wrapper {
        margin-top: 29px; } }

.commercial-ca .interactive-container {
  position: relative;
  grid-column: 1 / 1;
  grid-row: 2 / 6;
  padding: 0;
  margin-top: 15px; }
  @media screen and (min-width: 768px) {
    .commercial-ca .interactive-container {
      position: relative;
      grid-column: 2 / 14;
      grid-row: 11 / 27;
      margin: 0; } }
  @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
    .commercial-ca .interactive-container {
      position: relative;
      -ms-grid-column: 2;
      -ms-grid-column-span: 12;
      -ms-grid-row: 11;
      -ms-grid-row-span: 16;
      padding: 15px; } }
  .commercial-ca .interactive-container .highlight-point {
    color: black;
    background: white;
    font-weight: 700;
    position: absolute;
    border-radius: 15px;
    border: 2px solid white;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.75);
    display: none; }
    @media (min-width: 768px) {
      .commercial-ca .interactive-container .highlight-point {
        display: block;
        font-size: 12px;
        line-height: 12px;
        padding: 0 3px; } }
    @media (min-width: 1200px) {
      .commercial-ca .interactive-container .highlight-point {
        font-size: 26px;
        line-height: 26px;
        padding: 0 6px; } }
    .commercial-ca .interactive-container .highlight-point:hover, .commercial-ca .interactive-container .highlight-point.selected, .commercial-ca .interactive-container .highlight-point.hover, .commercial-ca .interactive-container .highlight-point:focus {
      color: white;
      background: #d40f7d;
      box-shadow: 0px 0px 17px #d40f7d;
      cursor: pointer; }
      @media (min-width: 1200px) {
        .commercial-ca .interactive-container .highlight-point:hover, .commercial-ca .interactive-container .highlight-point.selected, .commercial-ca .interactive-container .highlight-point.hover, .commercial-ca .interactive-container .highlight-point:focus {
          box-shadow: 0px 0px 35px #d40f7d; } }
    @media (min-width: 768px) {
      .commercial-ca .interactive-container .highlight-point.roofs {
        top: 0;
        left: 410px; } }
    @media (min-width: 1200px) {
      .commercial-ca .interactive-container .highlight-point.roofs {
        top: 0;
        left: 660px; } }
    @media (min-width: 768px) {
      .commercial-ca .interactive-container .highlight-point.perimeter-walls {
        top: 80px;
        left: 200px; } }
    @media (min-width: 1200px) {
      .commercial-ca .interactive-container .highlight-point.perimeter-walls {
        top: 130px;
        left: 225px; } }
    @media (min-width: 768px) {
      .commercial-ca .interactive-container .highlight-point.roof-decks {
        top: 0;
        left: 410px; } }
    @media (min-width: 1200px) {
      .commercial-ca .interactive-container .highlight-point.roof-decks {
        top: 0;
        left: 660px; } }
    @media (min-width: 768px) {
      .commercial-ca .interactive-container .highlight-point.walls {
        top: 80px;
        left: 200px; } }
    @media (min-width: 1200px) {
      .commercial-ca .interactive-container .highlight-point.walls {
        top: 130px;
        left: 225px; } }
    @media (min-width: 768px) {
      .commercial-ca .interactive-container .highlight-point.foundations {
        bottom: 10px;
        left: 375px; } }
    @media (min-width: 1200px) {
      .commercial-ca .interactive-container .highlight-point.foundations {
        bottom: 30px;
        left: 900px; } }
  .commercial-ca .interactive-container .highlight-link {
    display: block;
    line-height: 16px;
    font-size: 16px;
    font-weight: 500;
    padding: 8px 0;
    border-bottom: 1px solid #e6e6e6;
    text-decoration: none; }
    @media (min-width: 1200px) {
      .commercial-ca .interactive-container .highlight-link {
        line-height: 18px;
        font-size: 18px;
        padding: 10px 0; } }
    .commercial-ca .interactive-container .highlight-link:first-child {
      padding-top: 0; }
    .commercial-ca .interactive-container .highlight-link:last-child {
      border-bottom: none;
      padding-bottom: 0; }
    .commercial-ca .interactive-container .highlight-link:hover, .commercial-ca .interactive-container .highlight-link.selected, .commercial-ca .interactive-container .highlight-link.hover, .commercial-ca .interactive-container .highlight-link:focus {
      color: #d40f7d;
      cursor: pointer; }
    .commercial-ca .interactive-container .highlight-link:focus {
      text-decoration: underline;
      outline-offset: 2px;
      outline-color: #d40f7d;
      outline-style: solid;
      outline-width: 2px; }
  .commercial-ca .interactive-container .action-container {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    width: 75%; }
    @media (min-width: 768px) {
      .commercial-ca .interactive-container .action-container {
        right: 15px;
        transform: translateX(0);
        left: auto;
        width: auto; } }
    .commercial-ca .interactive-container .action-container .heading {
      color: #636769;
      text-transform: uppercase;
      text-align: center;
      font-weight: 700;
      display: block;
      margin-bottom: 10px;
      font-size: 12px;
      line-height: 1.2; }
      @media (min-width: 768px) {
        .commercial-ca .interactive-container .action-container .heading {
          width: auto; } }
      @media (min-width: 1200px) {
        .commercial-ca .interactive-container .action-container .heading {
          font-size: 18px;
          margin-bottom: 30px; } }

.commercial-ca .accordion-panel {
  background: white;
  margin-bottom: 10px;
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5); }
  @media screen and (max-width: 767px) {
    .commercial-ca .accordion-panel:first-of-type {
      margin-top: 120px; } }
  @media screen and (max-width: 400px) {
    .commercial-ca .accordion-panel:first-of-type {
      margin-top: 30vw; } }
  .commercial-ca .accordion-panel .ap-heading {
    font-size: 16px;
    padding: 10px 20px;
    font-weight: 700;
    line-height: 16px; }
    @media (min-width: 1200px) {
      .commercial-ca .accordion-panel .ap-heading {
        font-size: 21px;
        line-height: 21px;
        padding: 15px 20px; } }
    .commercial-ca .accordion-panel .ap-heading a {
      color: black;
      display: flex;
      text-decoration: none; }
      .commercial-ca .accordion-panel .ap-heading a.chevron-right {
        justify-content: space-between; }
        .commercial-ca .accordion-panel .ap-heading a.chevron-right:after {
          font-family: "icomoon";
          content: "";
          position: relative;
          display: block;
          align-self: center;
          margin-left: 20px; }
      .commercial-ca .accordion-panel .ap-heading a:hover, .commercial-ca .accordion-panel .ap-heading a:focus {
        color: #d40f7d;
        text-decoration: none; }
      .commercial-ca .accordion-panel .ap-heading a:focus {
        text-decoration: underline; }
  .commercial-ca .accordion-panel .ap-content {
    padding: 5px 20px 10px; }

.commercial-ca .info-modal {
  background: white;
  position: absolute;
  padding: 15px;
  display: none;
  width: 96%;
  z-index: 20;
  top: 100px;
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.75); }
  .commercial-ca .info-modal:focus {
    outline-offset: 2px;
    outline-color: #d40f7d;
    outline-style: solid;
    outline-width: 2px; }
  @media (min-width: 768px) {
    .commercial-ca .info-modal {
      width: 500px;
      top: 80px;
      left: 43px;
      transform: translateX(0);
      padding: 15px; } }
  @media (min-width: 1200px) {
    .commercial-ca .info-modal {
      padding: 35px;
      width: 670px;
      left: 170px;
      top: 150px; } }
  .commercial-ca .info-modal.active {
    display: inline-block; }
  .commercial-ca .info-modal .im-header {
    position: relative;
    width: 100%; }
    .commercial-ca .info-modal .im-header .im-close {
      color: black;
      font-size: 35px;
      line-height: 35px;
      font-weight: 700;
      position: absolute;
      right: 0px;
      top: -5px; }
      @media (min-width: 1200px) {
        .commercial-ca .info-modal .im-header .im-close {
          right: -15px;
          top: -20px; } }
      .commercial-ca .info-modal .im-header .im-close:hover, .commercial-ca .info-modal .im-header .im-close:focus {
        color: #d40f7d;
        cursor: pointer; }
      .commercial-ca .info-modal .im-header .im-close:focus {
        text-decoration: underline;
        outline-offset: 2px;
        outline-color: #d40f7d;
        outline-style: solid;
        outline-width: 2px; }
    .commercial-ca .info-modal .im-header .title {
      margin: 0 0 10px;
      font-size: 24px;
      text-transform: uppercase; }
      @media (min-width: 768px) {
        .commercial-ca .info-modal .im-header .title {
          font-size: 30px; } }
  .commercial-ca .info-modal .columns {
    display: block;
    flex-direction: none; }
    @media (min-width: 768px) {
      .commercial-ca .info-modal .columns {
        display: flex;
        flex-direction: row; } }
  .commercial-ca .info-modal .content-column {
    margin-bottom: 15px; }
    @media (min-width: 768px) {
      .commercial-ca .info-modal .content-column {
        margin-bottom: 0; }
        .commercial-ca .info-modal .content-column:first-child {
          margin-right: 15px; } }
    .commercial-ca .info-modal .content-column.image {
      text-align: center; }

.commercial-ca .heading-with-image img {
  height: 100px; }

.commercial-ca[data-language="fr-CA"] .block-link .text {
  height: 80px;
  display: flex;
  align-items: center; }


@media (min-width: 1200px) {
  .commercial-ca[data-language="fr-CA"] .action-container {
    width: 250px; } }

.surenail .stats {
  color: black;
  text-transform: uppercase;
  font-size: 16px;
  text-align: center;
  font-weight: 700; }
  @media (min-width: 1200px) {
    .surenail .stats {
      font-size: 18px; } }
  .surenail .stats span {
    color: #d40f7d;
    font-size: 81px;
    display: block;
    font-family: "Oswald", sans-serif;
    line-height: 81px; }
    @media (min-width: 1200px) {
      .surenail .stats span {
        font-size: 90px;
        line-height: 90px; } }
    .surenail .stats span i {
      font-style: normal;
      font-size: 57px;
      line-height: 57px; }
      @media (min-width: 1200px) {
        .surenail .stats span i {
          font-size: 66px;
          line-height: 66px; } }
      .surenail .stats span i.percent {
        font-size: 35px;
        line-height: 81px;
        vertical-align: top; }
        @media (min-width: 1200px) {
          .surenail .stats span i.percent {
            font-size: 40px;
            line-height: 90px; } }

.surenail video {
  width: 100%; }

.surenail .prefer-stat {
  margin: 15px 0 0;
  text-transform: uppercase;
  display: flex;
  align-items: center; }
  .surenail .prefer-stat .main-stat {
    font-family: "Oswald", sans-serif;
    color: #d40f7d;
    font-size: 85px;
    line-height: 85px;
    position: relative; }
    .surenail .prefer-stat .main-stat span {
      font-size: 23px;
      transform: rotate(270deg);
      position: absolute;
      left: 22px;
      top: 3px; }
  .surenail .prefer-stat .label {
    font-weight: 700;
    font-size: 16px;
    line-height: 17px;
    margin-left: 5px; }

.surenail .disclaimers {
  list-style-type: none;
  margin: 0;
  padding: 0;
  font-size: 12px; }

