/* function to convert the calc function in to rem based
$first- should be in % */
/** Slick Carousel Starts **/
/** Slick Carousel Ends **/
/* override default breakpoints */
.banner-container,
.slick-modal {
  margin: 0; }
  .banner-container.dark-theme,
  .slick-modal.dark-theme {
    color: #fff; }
    .banner-container.dark-theme a:not(.btn),
    .slick-modal.dark-theme a:not(.btn) {
      text-decoration: underline; }
      @media (min-width: 992px) {
        .banner-container.dark-theme a:not(.btn),
        .slick-modal.dark-theme a:not(.btn) {
          color: #fff; } }
  .banner-container.light-theme,
  .slick-modal.light-theme {
    color: #000; }
  .banner-container .image-container,
  .slick-modal .image-container {
    height: 100%; }
    .banner-container .image-container picture,
    .slick-modal .image-container picture {
      display: block;
      height: 100%;
      width: 100%; }
    .banner-container .image-container img,
    .slick-modal .image-container img {
      display: block;
      width: 100%;
      -o-object-fit: cover;
         object-fit: cover;
      font-family: "object-fit: cover;";
      height: 100%; }
  .banner-container.hero-banner .image-container,
  .slick-modal.hero-banner .image-container {
    height: 80vh; }
  .banner-container.hero-banner .text-eyebrow.dark-theme,
  .slick-modal.hero-banner .text-eyebrow.dark-theme {
    color: #fff; }
  @media (max-width: 991.98px) {
    .banner-container.hero-banner .text-cta-container,
    .slick-modal.hero-banner .text-cta-container {
      padding-top: 0.625rem; }
      .banner-container.hero-banner .text-cta-container .text-container,
      .slick-modal.hero-banner .text-cta-container .text-container {
        text-align: left !important; }
        .banner-container.hero-banner .text-cta-container .text-container.text-center,
        .slick-modal.hero-banner .text-cta-container .text-container.text-center {
          text-align: center !important; } }
  @media (min-width: 768px) and (max-width: 991.98px) {
    .banner-container.hero-banner .align-items-start .text-container,
    .slick-modal.hero-banner .align-items-start .text-container {
      padding-left: 1.75rem;
      width: 80%; }
      .slick-carousel :not(.slick-hidden) + .carousel-inner .banner-container.hero-banner .align-items-start .text-container, .slick-carousel :not(.slick-hidden) + .carousel-inner
      .slick-modal.hero-banner .align-items-start .text-container {
        padding-left: 5.5rem; }
      .banner-container.hero-banner .align-items-start .text-container.wide-text-container,
      .slick-modal.hero-banner .align-items-start .text-container.wide-text-container {
        width: 100%; }
    .banner-container.hero-banner .text-cta-container .cta-container .btn,
    .slick-modal.hero-banner .text-cta-container .cta-container .btn {
      margin-right: 1.5rem; }
      .banner-container.hero-banner .text-cta-container .cta-container .btn:last-child,
      .slick-modal.hero-banner .text-cta-container .cta-container .btn:last-child {
        margin-right: 0; }
      .banner-container.hero-banner .text-cta-container .cta-container .btn + .btn,
      .slick-modal.hero-banner .text-cta-container .cta-container .btn + .btn {
        margin-left: 0; } }
  .banner-container .text-cta-container,
  .slick-modal .text-cta-container {
    position: absolute;
    top: 0;
    left: 0;
    padding: 0 0.625rem 3rem;
    margin: 0;
    z-index: 3; }
    @media (max-width: 991.98px) {
      .banner-container .text-cta-container,
      .slick-modal .text-cta-container {
        max-width: 100%; } }
    @media (min-width: 992px) {
      .banner-container .text-cta-container,
      .slick-modal .text-cta-container {
        padding: 0;
        left: 50%;
        -webkit-transform: translate(-50%);
                transform: translate(-50%); } }
    .banner-container .text-cta-container .text-container,
    .slick-modal .text-cta-container .text-container {
      width: 100%;
      position: relative; }
      @media (min-width: 576px) {
        .banner-container .text-cta-container .text-container,
        .slick-modal .text-cta-container .text-container {
          width: 60%; } }
      @media (min-width: 576px) {
        .banner-container .text-cta-container .text-container,
        .slick-modal .text-cta-container .text-container {
          position: static; } }
      @media (min-width: 1200px) {
        .banner-container .text-cta-container .text-container,
        .slick-modal .text-cta-container .text-container {
          width: 50%; } }
      @media (min-width: 576px) {
        .banner-container .text-cta-container .text-container.wide-text-container,
        .slick-modal .text-cta-container .text-container.wide-text-container {
          width: 70%; } }
      @media (min-width: 1200px) {
        .banner-container .text-cta-container .text-container.wide-text-container,
        .slick-modal .text-cta-container .text-container.wide-text-container {
          width: 55%; } }
      .banner-container .text-cta-container .text-container .heading,
      .slick-modal .text-cta-container .text-container .heading {
        margin-bottom: 0.5rem; }
      .banner-container .text-cta-container .text-container .pd-hero-banner-logo,
      .slick-modal .text-cta-container .text-container .pd-hero-banner-logo {
        max-width: 100%;
        height: auto; }
      .banner-container .text-cta-container .text-container .banner-description p,
      .slick-modal .text-cta-container .text-container .banner-description p {
        font-size: 1.25rem;
        line-height: 1.5; }
        @media (max-width: 767.98px) {
          .banner-container .text-cta-container .text-container .banner-description p,
          .slick-modal .text-cta-container .text-container .banner-description p {
            font-size: 1.125rem; } }
      .banner-container .text-cta-container .text-container p,
      .slick-modal .text-cta-container .text-container p {
        margin-bottom: 0; }
    .banner-container .text-cta-container .cta-container .btn,
    .slick-modal .text-cta-container .cta-container .btn {
      line-height: 2.1;
      margin-top: 1rem; }
      @media (max-width: 767.98px) {
        .banner-container .text-cta-container .cta-container .btn,
        .slick-modal .text-cta-container .cta-container .btn {
          width: 100%; } }
      @media (min-width: 768px) {
        .banner-container .text-cta-container .cta-container .btn + .btn,
        .slick-modal .text-cta-container .cta-container .btn + .btn {
          margin-left: 1.5rem; } }
    .banner-container .text-cta-container .linktext,
    .slick-modal .text-cta-container .linktext {
      margin-top: 0.5rem; }
      .banner-container .text-cta-container .linktext a,
      .slick-modal .text-cta-container .linktext a {
        text-decoration: underline; }
      .banner-container .text-cta-container .linktext .dark-theme,
      .slick-modal .text-cta-container .linktext .dark-theme {
        color: #fff; }
        .banner-container .text-cta-container .linktext .dark-theme:hover, .banner-container .text-cta-container .linktext .dark-theme:active,
        .slick-modal .text-cta-container .linktext .dark-theme:hover,
        .slick-modal .text-cta-container .linktext .dark-theme:active {
          color: #fff; }
      .banner-container .text-cta-container .linktext .light-theme,
      .slick-modal .text-cta-container .linktext .light-theme {
        color: #000; }
        .banner-container .text-cta-container .linktext .light-theme:hover, .banner-container .text-cta-container .linktext .light-theme:active,
        .slick-modal .text-cta-container .linktext .light-theme:hover,
        .slick-modal .text-cta-container .linktext .light-theme:active {
          color: #000; }
      @media (max-width: 767.98px) {
        .banner-container .text-cta-container .linktext,
        .slick-modal .text-cta-container .linktext {
          text-align: center; } }
      @media (min-width: 768px) {
        .banner-container .text-cta-container .linktext,
        .slick-modal .text-cta-container .linktext {
          margin-top: 1rem; } }
      @media (min-width: 992px) {
        .banner-container .text-cta-container .linktext,
        .slick-modal .text-cta-container .linktext {
          margin-top: 1.5rem; } }
  @media (min-width: 992px) {
    .banner-container.slim-banner,
    .slick-modal.slim-banner {
      height: 18.75rem;
      overflow: hidden; } }
  @media (max-width: 991.98px) {
    .banner-container.slim-banner .image-container,
    .slick-modal.slim-banner .image-container {
      height: 12.5rem; } }
  @media (max-width: 991.98px) {
    .banner-container.slim-banner .text-cta-container,
    .slick-modal.slim-banner .text-cta-container {
      color: #696158;
      text-align: center;
      position: static;
      height: auto !important;
      padding: 1.5625rem; } }
  @media (max-width: 991.98px) {
    .banner-container.slim-banner .text-cta-container .text-container,
    .slick-modal.slim-banner .text-cta-container .text-container {
      width: 100%;
      text-align: center !important; } }
  @media (min-width: 992px) {
    .banner-container.slim-banner .text-cta-container .text-container .text-eyebrow.dark-theme,
    .slick-modal.slim-banner .text-cta-container .text-container .text-eyebrow.dark-theme {
      color: #fff; } }
  @media (min-width: 992px) {
    .banner-container.slim-banner .text-cta-container .text-container .btn + .btn,
    .slick-modal.slim-banner .text-cta-container .text-container .btn + .btn {
      margin-left: 1.5rem;
      margin-right: 0; } }
  @media (max-width: 767.98px) {
    .banner-container.slim-banner.slim-banner--mobile-overlay .text-cta-container,
    .slick-modal.slim-banner.slim-banner--mobile-overlay .text-cta-container {
      color: inherit;
      position: absolute;
      height: 100% !important;
      padding: 1.5625rem; } }
  @media (min-width: 768px) and (max-width: 991.98px) {
    .banner-container.slim-banner.slim-banner--tablet-overlay .text-cta-container,
    .slick-modal.slim-banner.slim-banner--tablet-overlay .text-cta-container {
      color: inherit;
      position: absolute;
      height: 100% !important;
      padding: 1.5625rem; } }
  .banner-container.mediumHero-banner .image-container,
  .slick-modal.mediumHero-banner .image-container {
    overflow: hidden;
    height: 31.25rem; }
    @media (max-width: 991.98px) {
      .banner-container.mediumHero-banner .image-container,
      .slick-modal.mediumHero-banner .image-container {
        height: 18.75rem; } }
  @media (min-width: 992px) {
    .banner-container.mediumHero-banner .text-cta-container .cta-container .btn,
    .slick-modal.mediumHero-banner .text-cta-container .cta-container .btn {
      margin-right: 1.5rem; }
      .banner-container.mediumHero-banner .text-cta-container .cta-container .btn:last-child,
      .slick-modal.mediumHero-banner .text-cta-container .cta-container .btn:last-child {
        margin-right: 0; }
      .banner-container.mediumHero-banner .text-cta-container .cta-container .btn + .btn,
      .slick-modal.mediumHero-banner .text-cta-container .cta-container .btn + .btn {
        margin-left: 0; } }
  @media (max-width: 991.98px) {
    .banner-container.mediumHero-banner .text-cta-container,
    .slick-modal.mediumHero-banner .text-cta-container {
      color: #696158;
      position: static;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      height: auto !important;
      padding: 1rem 1.5rem 1.5rem 1.5rem; } }
  @media (min-width: 992px) and (max-width: 1199.98px) {
    .banner-container.mediumHero-banner .text-cta-container.align-items-center .text-container,
    .slick-modal.mediumHero-banner .text-cta-container.align-items-center .text-container {
      width: 65%; } }
  @media (max-width: 767.98px) {
    .banner-container.mediumHero-banner .text-cta-container,
    .slick-modal.mediumHero-banner .text-cta-container {
      padding-top: 0.75rem; } }
  @media (min-width: 992px) {
    .banner-container.mediumHero-banner .text-cta-container .text-container,
    .slick-modal.mediumHero-banner .text-cta-container .text-container {
      width: 50%; } }
  @media (max-width: 991.98px) {
    .banner-container.mediumHero-banner .text-cta-container .text-container,
    .slick-modal.mediumHero-banner .text-cta-container .text-container {
      width: 100%;
      text-align: center; } }
  .banner-container.mediumHero-banner .text-cta-container .text-container p,
  .slick-modal.mediumHero-banner .text-cta-container .text-container p {
    margin-bottom: 0.25rem; }
  .banner-container.mediumHero-banner .text-cta-container .text-container .banner-description p,
  .slick-modal.mediumHero-banner .text-cta-container .text-container .banner-description p {
    font-size: 1.25rem;
    line-height: 1.5; }
    @media (max-width: 767.98px) {
      .banner-container.mediumHero-banner .text-cta-container .text-container .banner-description p,
      .slick-modal.mediumHero-banner .text-cta-container .text-container .banner-description p {
        font-size: 1.125rem; } }
  @media (min-width: 992px) {
    .banner-container.mediumHero-banner .text-cta-container .text-container .text-eyebrow.dark-theme,
    .slick-modal.mediumHero-banner .text-cta-container .text-container .text-eyebrow.dark-theme {
      color: #fff; } }
  .banner-container.mediumHero-banner .text-cta-container .text-container h1,
  .slick-modal.mediumHero-banner .text-cta-container .text-container h1 {
    margin-bottom: 1rem; }
    @media (max-width: 991.98px) {
      .banner-container.mediumHero-banner .text-cta-container .text-container h1,
      .slick-modal.mediumHero-banner .text-cta-container .text-container h1 {
        margin-bottom: 0.5rem; } }
  .banner-container.mediumHero-banner .text-cta-container .text-container .cta-container .btn,
  .slick-modal.mediumHero-banner .text-cta-container .text-container .cta-container .btn {
    margin-top: 1rem; }
  @media (max-width: 991.98px) {
    .banner-container.mediumHero-banner .text-cta-container .text-container .linktext,
    .slick-modal.mediumHero-banner .text-cta-container .text-container .linktext {
      margin-bottom: 1.125rem; } }
  .banner-container .overlay,
  .slick-modal .overlay {
    z-index: 1; }

.banner-container.dynamic-kit {
  cursor: pointer; }

.hero-video-play {
  background-color: #000;
  border-radius: 50%;
  width: 2.375rem;
  height: 2.375rem;
  border: none;
  opacity: 0.8;
  padding: 0;
  cursor: pointer; }
  .hero-video-play .icon {
    margin-left: 0.1875rem;
    fill: #fff;
    width: 1.25rem;
    height: 1.25rem; }

.hero-video.modal .video-embed-iframe {
  width: 100%;
  background-color: #000;
  z-index: 1020; }

@media (min-width: 768px) {
  .hero-video.modal .modal-dialog {
    max-width: 100%; } }

@media (min-width: 992px) {
  .hero-video.modal .modal-dialog {
    max-width: 56.25rem; } }

.hero-video.modal .modal-dialog .modal-content {
  background-color: #000; }

.hero-video.modal .modal-dialog .modal-header {
  border-bottom: none; }

.hero-video.modal .modal-dialog .modal-body {
  margin: 0; }

.slick-carousel.is-edit-mode,
.is-edit-mode .hero-banner {
  max-height: 35.375rem;
  overflow: hidden; }

@media (max-width: 991.98px) {
  .slick-carousel.mediumHero-banner .slick-dots,
  .slick-carousel.mediumHero-banner .slick-controls-wrap {
    top: 16.25rem;
    height: 1.75rem; } }

@media (max-width: 767.98px) {
  .slick-carousel.mediumHero-banner .slick-dots,
  .slick-carousel.mediumHero-banner .slick-controls-wrap {
    top: 17.25rem;
    height: 1rem; } }

.slick-carousel.mediumHero-banner .slick-controls-wrap .slick-dots {
  top: 0; }

.slick-carousel .slick-controls-wrap .slick-dots button:focus,
.slick-carousel .slick-controls-wrap .autoplay-wrap button:focus {
  outline: none;
  border: 0; }
  .slick-carousel .slick-controls-wrap .slick-dots button:focus::after,
  .slick-carousel .slick-controls-wrap .autoplay-wrap button:focus::after {
    content: '';
    position: absolute;
    top: -0.375rem;
    bottom: -0.375rem;
    left: -0.375rem;
    right: -0.375rem;
    border: 0.0625rem solid #fff;
    border-radius: 1.5rem; }

.slick-carousel .slick-controls-wrap .slick-dots li button:focus {
  background-color: transparent;
  border: 0.0625rem solid #fff; }
  .slick-carousel .slick-controls-wrap .slick-dots li button:focus::after {
    content: '';
    top: -0.25rem;
    bottom: -0.25rem;
    left: -0.25rem;
    right: -0.25rem;
    border: 0.0625rem solid #fff; }

.slick-carousel .slick-controls-wrap .slick-dots li.slick-active button:focus {
  background-color: #fff; }

.slick-carousel .slick-controls-wrap .autoplay-wrap button:hover {
  outline: none;
  border: 0; }
  .slick-carousel .slick-controls-wrap .autoplay-wrap button:hover::after {
    content: '';
    position: absolute;
    top: -0.375rem;
    bottom: -0.375rem;
    left: -0.375rem;
    right: -0.375rem;
    border: 0.0625rem solid #fff;
    border-radius: 1.5rem; }

.banner-container:focus-visible {
  border: 0.125rem solid #0e78ad;
  -webkit-box-shadow: 0 0 0.3125rem 0.0625rem #0e78ad;
          box-shadow: 0 0 0.3125rem 0.0625rem #0e78ad;
  outline: none; }

@media (max-width: 991.98px) {
  .banner-container.has-background-color.hero-banner .text-cta-container {
    padding-top: 3rem; }
  .banner-container.has-background-color.dark-theme .text-cta-container,
  .banner-container.has-background-color.dark-theme .text-eyebrow {
    color: #fff; }
  .banner-container.has-background-color.mediumHero-banner .text-cta-container {
    padding-top: 1.5rem; } }

@media (min-width: 992px) {
  .banner-container.has-background-color.hero-banner .text-cta-container, .banner-container.has-background-color.mediumHero-banner .text-cta-container {
    padding: 3rem 0.625rem; } }

.banner-container.has-background-color .text-cta-container {
  position: static;
  left: 0;
  -webkit-transform: none;
          transform: none; }

.image-bleed-z-index p a {
  border: 0.0625rem solid transparent;
  text-decoration: underline;
  padding: 0.25rem 0.5rem; }
  .image-bleed-z-index p a:focus {
    -webkit-box-shadow: none;
            box-shadow: none;
    border: 0.0625rem solid #8f8f8f;
    border-radius: 0.25rem;
    outline: none; }

@media (min-width: 992px) {
  .email-signup-banner {
    height: 18.75rem;
    overflow: hidden; } }

.email-signup-banner .image-container {
  height: 18.75rem; }

.email-signup-banner .text-cta-container {
  padding-bottom: 0; }

.email-signup-banner.dark .content-container {
  color: #fff; }
  .email-signup-banner.dark .content-container h1,
  .email-signup-banner.dark .content-container h2,
  .email-signup-banner.dark .content-container h3,
  .email-signup-banner.dark .content-container h4 {
    color: #fff; }
  .email-signup-banner.dark .content-container .banner-email-input.input-with-button input[type='text'] {
    border-color: #fff; }
    .email-signup-banner.dark .content-container .banner-email-input.input-with-button input[type='text'].is-invalid {
      border: 0.0625rem solid #d0021b; }

.email-signup-banner.light .content-container {
  color: #000; }

.email-signup-banner.has-background-color {
  padding-top: 2rem;
  padding-bottom: 2rem; }
  @media (min-width: 768px) {
    .email-signup-banner.has-background-color {
      padding-top: 2.5rem;
      padding-bottom: 2.5rem; } }

@media (min-width: 992px) {
  .email-signup-banner .banner-email-input {
    max-width: 25rem; } }

.email-signup-banner .banner-email-input label {
  top: 1.4375rem; }

.email-signup-banner .banner-email-input.input-group input:not(:-moz-placeholder-shown) ~ .floating-label {
  top: 0.75rem; }

.email-signup-banner .banner-email-input.input-group input:not(:-ms-input-placeholder) ~ .floating-label {
  top: 0.75rem; }

.email-signup-banner .banner-email-input.input-group input:focus ~ .floating-label,
.email-signup-banner .banner-email-input.input-group input:not(:placeholder-shown) ~ .floating-label {
  top: 0.75rem; }

.email-signup-banner .banner-email-input.input-group .form-control:not(:last-child) {
  border-radius: 0; }

.email-signup-banner .banner-email-input button {
  border-radius: 0;
  top: 0.5rem; }

.email-signup-banner .email-description {
  max-width: 33.75rem; }

.email-signup-banner .email-signup-message {
  text-align: left; }

@media (max-width: 991.98px) {
  #dynamicKitModal .modal-dialog {
    width: 100%;
    max-width: none;
    height: 100%;
    margin: 0; }
    #dynamicKitModal .modal-dialog .modal-content {
      height: 100%;
      border: 0;
      border-radius: 0; } }

/* override default breakpoints */
/* overriding the bootstrap header font sizes */
/* headings style based on style guide */
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
.text64-52-38,
.text48-36-24,
.text36-30-24,
.text30-24-24,
.text18-18-16 {
  font-family: "Montserrat-Regular", sans-serif;
  line-height: 1.25;
  letter-spacing: normal; }

h1,
.h1 {
  font-size: 1.5rem; }

h2,
.h2 {
  font-size: 1.5rem; }

h3,
.h3 {
  font-size: 1.5rem; }

h4,
.h4 {
  font-size: 1.25rem; }

h5,
.h5 {
  font-size: 1.125rem; }

h6,
.h6 {
  font-size: 1rem; }

/* text styles */
.text8,
.text10,
.text12,
.text14,
.text16,
.text18,
.text20,
.text12-12-10,
.text14-14-12,
.text16-16-12,
.text16-16-14,
.text16-14-14,
.text20-20-14,
.text20-20-16,
.text20-20-18,
.text24-24-20,
.text14-14-16,
.text18-18-14,
.text16-16-16,
.text16-16-12 {
  font-family: "Roboto-Regular", sans-serif;
  letter-spacing: normal;
  line-height: 1.5; }
  .text8.bold,
  .text10.bold,
  .text12.bold,
  .text14.bold,
  .text16.bold,
  .text18.bold,
  .text20.bold,
  .text12-12-10.bold,
  .text14-14-12.bold,
  .text16-16-12.bold,
  .text16-16-14.bold,
  .text16-14-14.bold,
  .text20-20-14.bold,
  .text20-20-16.bold,
  .text20-20-18.bold,
  .text24-24-20.bold,
  .text14-14-16.bold,
  .text18-18-14.bold,
  .text16-16-16.bold,
  .text16-16-12.bold {
    font-family: "Roboto-Bold", sans-serif;
    letter-spacing: normal; }

.text8 {
  font-size: 0.5rem; }

.text10 {
  font-size: 0.625rem; }

.text12 {
  font-size: 0.75rem; }

.text14 {
  font-size: 0.875rem; }

.text16 {
  font-size: 1rem; }

.text18 {
  font-size: 1rem; }

.text20 {
  font-size: 1.125rem; }

.text12-12-10 {
  font-size: 0.625rem; }

.text14-14-12 {
  font-size: 0.75rem; }

.text16-16-12 {
  font-size: 0.75rem; }

.text16-16-14 {
  font-size: 0.875rem; }

.text20-20-14 {
  font-size: 0.875rem; }

.text20-20-16 {
  font-size: 1rem; }

.text20-20-18 {
  font-size: 1.125rem; }

.text24-24-20 {
  font-size: 1.25rem; }

.text14-14-16 {
  font-size: 1rem; }

.text64-52-38 {
  font-size: 2.375rem; }

.text48-36-24 {
  font-size: 1.5rem; }

.text36-30-24 {
  font-size: 1.5rem; }

.text30-24-24 {
  font-size: 1.5rem; }

.text18-18-16 {
  font-size: 1rem; }

.text16-16-16 {
  font-size: 1rem; }

.text16-16-12 {
  font-size: 0.75rem;
  font-weight: 700; }

.text16-14-14 {
  font-size: 1rem; }

/* class for font weight bold */
.bold {
  font-weight: 700; }

@media (max-width: 991.98px) {
  .bold-mobile {
    font-weight: bold; }
  .text16-14-14 {
    font-size: 0.875rem; } }

@media (min-width: 768px) {
  h1,
  .h1 {
    font-size: 2.25rem; }
  h2,
  .h2 {
    font-size: 1.875rem; }
  h3,
  .h3 {
    font-size: 1.5rem; }
  h4,
  .h4 {
    font-size: 1.5rem; }
  h5,
  .h5 {
    font-size: 1.25rem; }
  h6,
  .h6 {
    font-size: 1.125rem; }
  .text18 {
    font-size: 1.125rem; }
  .text20 {
    font-size: 1.25rem; }
  .text12-12-10 {
    font-size: 0.75rem; }
  .text14-14-12 {
    font-size: 0.875rem; }
  .text16-16-12 {
    font-size: 1rem; }
  .text16-16-14 {
    font-size: 1rem; }
  .text20-20-14 {
    font-size: 1.25rem; }
  .text20-20-16 {
    font-size: 1.25rem; }
  .text20-20-18 {
    font-size: 1.25rem; }
  .text24-24-20 {
    font-size: 1.5rem; }
  .text14-14-16 {
    font-size: 0.875rem; }
  .text64-52-38 {
    font-size: 3.25rem; }
  .text48-36-24 {
    font-size: 2.25rem; }
  .text36-30-24 {
    font-size: 1.875rem; }
  .text18-18-16 {
    font-size: 1.125rem; }
  .text16-16-12 {
    font-size: 1rem;
    font-weight: normal; } }

@media (min-width: 992px) {
  h1,
  .h1 {
    font-size: 3rem; }
  h2,
  .h2 {
    font-size: 2.25rem; }
  h3,
  .h3 {
    font-size: 1.875rem; }
  .text64-52-38 {
    font-size: 4rem; }
  .text48-36-24 {
    font-size: 3rem; }
  .text36-30-24 {
    font-size: 2.25rem; }
  .text30-24-24 {
    font-size: 1.875rem; } }

.text-eyebrow {
  font-family: "Roboto-Regular", sans-serif;
  line-height: 1.5;
  letter-spacing: normal; }

/* =====================================
   DEFAULT TYPOGRAPHY TOKENS (DESKTOP)
===================================== */
:root {
  /* Font families */
  --font-sans-book: "gotham", Arial, Helvetica, sans-serif;
  --font-sans-medium: "gotham", Arial, Helvetica, sans-serif;
  --font-serif-regular: "berthold-baskerville-pro", Georgia, "Times New Roman", serif;
  --font-serif-italic: "berthold-baskerville-pro", Georgia, "Times New Roman", serif;
  /* =====================================
       TYPE TOKENS (SPLIT)
    ===================================== */
  --type-style-1-font: normal 400 2.125rem/2.5rem var(--font-sans-book);
  --type-style-1-transform: uppercase;
  --type-style-1-letter-spacing: 0;
  --type-style-2-font: normal 400 1.3125rem/normal var(--font-sans-book);
  --type-style-2-transform: uppercase;
  --type-style-2-letter-spacing: 0;
  --type-style-3-font: normal 500 0.875rem/normal var(--font-sans-medium);
  --type-style-3-transform: uppercase;
  --type-style-3-letter-spacing: 0.04em;
  --type-style-4-font: normal 500 0.8125rem/normal var(--font-sans-medium);
  --type-style-4-transform: uppercase;
  --type-style-4-letter-spacing: 0.04em;
  --type-style-5-font: normal 500 0.75rem/normal var(--font-sans-medium);
  --type-style-5-transform: uppercase;
  --type-style-5-letter-spacing: 0.04em;
  --type-style-6-font: normal 400 1.625rem/normal var(--font-serif-regular);
  --type-style-6-transform: none;
  --type-style-6-letter-spacing: 0;
  --type-style-7-font: normal 400 1.5rem/normal var(--font-serif-regular);
  --type-style-7-transform: none;
  --type-style-7-letter-spacing: 0;
  --type-style-8-font: normal 400 1.125rem/normal var(--font-serif-regular);
  --type-style-8-transform: none;
  --type-style-8-letter-spacing: 0;
  --type-style-9-font: normal 400 1rem/normal var(--font-serif-regular);
  --type-style-9-transform: none;
  --type-style-9-letter-spacing: 0;
  --type-style-10-font: normal 400 0.875rem/normal var(--font-sans-book);
  --type-style-10-transform: none;
  --type-style-10-letter-spacing: 0;
  --type-style-11-font: normal 400 0.75rem/normal var(--font-sans-book);
  --type-style-11-transform: none;
  --type-style-11-letter-spacing: 0;
  --type-style-12-font: normal 400 1.5rem/2.25rem var(--font-serif-regular);
  --type-style-12-transform: none;
  --type-style-12-letter-spacing: 0;
  --type-style-13-font: normal 400 1.125rem/1.875rem var(--font-serif-regular);
  --type-style-13-transform: none;
  --type-style-13-letter-spacing: 0;
  --type-style-14-font: normal 400 1rem/1.625rem var(--font-serif-regular);
  --type-style-14-transform: none;
  --type-style-14-letter-spacing: 0;
  --type-style-15-font: normal 400 0.875rem/1.3125rem var(--font-sans-book);
  --type-style-15-transform: none;
  --type-style-15-letter-spacing: 0;
  --type-style-16-font: normal 400 0.75rem/1.125rem var(--font-sans-book);
  --type-style-16-transform: none;
  --type-style-16-letter-spacing: 0;
  --type-style-17-font: normal 400 1.125rem/1.5rem var(--font-serif-regular);
  --type-style-17-transform: none;
  --type-style-17-letter-spacing: 0;
  --type-style-18-font: normal 400 1rem/1.3125rem var(--font-sans-book);
  --type-style-18-transform: none;
  --type-style-18-letter-spacing: 0;
  --type-style-19-font: normal 400 1.125rem/1.75rem var(--font-serif-regular);
  --type-style-19-transform: none;
  --type-style-19-letter-spacing: 0;
  --type-style-20-font: normal 500 0.75rem/normal var(--font-sans-medium);
  --type-style-20-transform: uppercase;
  --type-style-20-letter-spacing: 0.04em;
  --type-style-21-font: normal 400 1rem/1.3125rem var(--font-serif-regular);
  --type-style-21-transform: none;
  --type-style-21-letter-spacing: 0;
  --type-style-22-font: normal 400 0.875rem/normal var(--font-sans-book);
  --type-style-23-font: normal 400 0.75rem/normal var(--font-sans-book);
  --type-style-24-font: normal 400 1.5rem/1.875rem var(--font-serif-regular);
  --type-style-25-font: normal 400 0.75rem/normal var(--font-sans-medium);
  --type-style-25-transform: uppercase;
  --type-style-25-letter-spacing: 0.04em; }

/* =====================================
   MOBILE TYPOGRAPHY OVERRIDES
===================================== */
@media (max-width: 991.98px) {
  :root {
    --type-style-1-font: normal 400 1.75rem/1.9375rem var(--font-sans-book);
    --type-style-2-font: normal 400 1.125rem/normal var(--font-sans-book);
    --type-style-2-letter-spacing: 0.02em;
    --type-style-3-letter-spacing: 0.02em;
    --type-style-4-letter-spacing: 0.06em;
    --type-style-5-letter-spacing: 0.06em;
    --type-style-4-font: normal 500 0.75rem/normal var(--font-sans-medium);
    --type-style-5-font: normal 500 0.6875rem/normal var(--font-sans-medium);
    --type-style-6-font: normal 400 1.5rem/normal var(--font-serif-regular);
    --type-style-7-font: normal 400 1.3125rem/normal var(--font-serif-regular);
    --type-style-8-font: normal 400 1rem/1.375rem var(--font-serif-regular);
    --type-style-10-font: normal 400 0.75rem/normal var(--font-sans-book);
    --type-style-11-font: normal 400 0.6875rem/normal var(--font-sans-book);
    --type-style-12-font: normal 400 1.3125rem/1.875rem var(--font-serif-regular);
    --type-style-13-font: normal 400 1.125rem/1.5rem var(--font-serif-regular);
    --type-style-14-font: normal 400 0.875rem/1.375rem var(--font-serif-regular);
    --type-style-16-font: normal 400 0.75rem/1rem var(--font-sans-book);
    --type-style-17-font: normal 400 1rem/1.375rem var(--font-serif-regular);
    --type-style-18-font: normal 400 1rem/1.375rem var(--font-sans-book);
    --type-style-19-font: normal 400 1.125rem/1.5rem var(--font-serif-regular);
    --type-style-20-font: normal 500 0.75rem/normal var(--font-sans-medium);
    --type-style-21-font: normal 400 1rem/1.375rem var(--font-serif-regular);
    --type-style-22-font: normal 400 0.875rem/normal var(--font-sans-book);
    --type-style-23-font: normal 400 0.75rem/normal var(--font-sans-book);
    --type-style-24-font: normal 400 1.3125rem/1.875rem var(--font-serif-regular);
    --type-style-25-font: normal 400 0.6875rem/normal var(--font-sans-medium);
    /* Letter-spacing overrides */
    --type-style-3-letter-spacing: 0.02em;
    --type-style-4-letter-spacing: 0.06em;
    --type-style-5-letter-spacing: 0.06em; } }

/* =====================================
   CHINESE TYPOGRAPHY
===================================== */
html:lang(zh) {
  --font-sans-book: source-han-sans-simplified-c, sans-serif;
  --font-sans-medium: source-han-sans-simplified-c, sans-serif;
  --font-serif-regular: fz-shu-song-gb18030, serif; }

/* =====================================
   JAPANESE TYPOGRAPHY
===================================== */
html:lang(ja) {
  --font-sans-book: hiragino-kaku-gothic-pron, sans-serif;
  --font-sans-medium: hiragino-kaku-gothic-pron, sans-serif;
  --font-serif-regular: kozuka-mincho-pr6n, serif; }

/* =====================================
   GLOBAL HEADING & TEXT STYLES (TOKEN MAPPING)
===================================== */
h1,
.h1 {
  font: var(--type-style-1-font);
  text-transform: var(--type-style-1-transform);
  letter-spacing: var(--type-style-1-letter-spacing); }

h2,
.h2 {
  font: var(--type-style-2-font);
  text-transform: var(--type-style-2-transform);
  letter-spacing: var(--type-style-2-letter-spacing); }

h3,
.h3 {
  font: var(--type-style-3-font);
  text-transform: var(--type-style-3-transform);
  letter-spacing: var(--type-style-3-letter-spacing); }

h4,
.h4 {
  font: var(--type-style-3-font);
  text-transform: var(--type-style-3-transform);
  letter-spacing: var(--type-style-3-letter-spacing); }

h5,
.h5 {
  font: var(--type-style-5-font);
  text-transform: var(--type-style-5-transform);
  letter-spacing: var(--type-style-5-letter-spacing); }

/* Existing utility class mapping */
.text64-52-38 {
  font: var(--type-style-6-font); }

.text48-36-24 {
  font: var(--type-style-7-font); }

.text36-30-24 {
  font: var(--type-style-8-font); }

.text30-24-24 {
  font: var(--type-style-9-font); }

.text18-18-16 {
  font: var(--type-style-10-font); }

.text12-12-10 {
  font: var(--type-style-11-font); }

.text24-24-20 {
  font: var(--type-style-12-font); }

.text20-20-18 {
  font: var(--type-style-13-font); }

.text20-20-16 {
  font: var(--type-style-14-font); }

.text20-20-14 {
  font: var(--type-style-15-font); }

.text16-16-16 {
  font: var(--type-style-16-font); }

/* =====================================
   FIX FOR CHINESE & JAPANESE (NO UPPERCASE)
===================================== */
html:lang(zh) h1,
html:lang(zh) .h1,
html:lang(zh) h2,
html:lang(zh) .h2,
html:lang(zh) h3,
html:lang(zh) .h3,
html:lang(zh) h4,
html:lang(zh) .h4,
html:lang(zh) h5,
html:lang(zh) .h5,
html:lang(ja) h1,
html:lang(ja) .h1,
html:lang(ja) h2,
html:lang(ja) .h2,
html:lang(ja) h3,
html:lang(ja) .h3,
html:lang(ja) h4,
html:lang(ja) .h4,
html:lang(ja) h5,
html:lang(ja) .h5 {
  text-transform: none; }

.overlay-0 {
  background-color: rgba(0, 0, 0, 0); }

.overlay-dark.overlay-0 {
  background-color: rgba(0, 0, 0, 0); }

.overlay-light.overlay-0 {
  background-color: rgba(255, 255, 255, 0); }

.overlay-10 {
  background-color: rgba(0, 0, 0, 0.1); }

.overlay-dark.overlay-10 {
  background-color: rgba(0, 0, 0, 0.1); }

.overlay-light.overlay-10 {
  background-color: rgba(255, 255, 255, 0.1); }

.overlay-20 {
  background-color: rgba(0, 0, 0, 0.2); }

.overlay-dark.overlay-20 {
  background-color: rgba(0, 0, 0, 0.2); }

.overlay-light.overlay-20 {
  background-color: rgba(255, 255, 255, 0.2); }

.overlay-30 {
  background-color: rgba(0, 0, 0, 0.3); }

.overlay-dark.overlay-30 {
  background-color: rgba(0, 0, 0, 0.3); }

.overlay-light.overlay-30 {
  background-color: rgba(255, 255, 255, 0.3); }

.overlay-40 {
  background-color: rgba(0, 0, 0, 0.4); }

.overlay-dark.overlay-40 {
  background-color: rgba(0, 0, 0, 0.4); }

.overlay-light.overlay-40 {
  background-color: rgba(255, 255, 255, 0.4); }

.overlay-50 {
  background-color: rgba(0, 0, 0, 0.5); }

.overlay-dark.overlay-50 {
  background-color: rgba(0, 0, 0, 0.5); }

.overlay-light.overlay-50 {
  background-color: rgba(255, 255, 255, 0.5); }

.overlay-60 {
  background-color: rgba(0, 0, 0, 0.6); }

.overlay-dark.overlay-60 {
  background-color: rgba(0, 0, 0, 0.6); }

.overlay-light.overlay-60 {
  background-color: rgba(255, 255, 255, 0.6); }

.overlay-70 {
  background-color: rgba(0, 0, 0, 0.7); }

.overlay-dark.overlay-70 {
  background-color: rgba(0, 0, 0, 0.7); }

.overlay-light.overlay-70 {
  background-color: rgba(255, 255, 255, 0.7); }

.overlay-80 {
  background-color: rgba(0, 0, 0, 0.8); }

.overlay-dark.overlay-80 {
  background-color: rgba(0, 0, 0, 0.8); }

.overlay-light.overlay-80 {
  background-color: rgba(255, 255, 255, 0.8); }

.overlay-90 {
  background-color: rgba(0, 0, 0, 0.9); }

.overlay-dark.overlay-90 {
  background-color: rgba(0, 0, 0, 0.9); }

.overlay-light.overlay-90 {
  background-color: rgba(255, 255, 255, 0.9); }

.overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

/* function to convert the calc function in to rem based
$first- should be in % */
/** Slick Carousel Starts **/
/** Slick Carousel Ends **/
/* Embedded images styles for: Basic Page, Blog, Landing page
    ========================================================================== */
.menu-item-focus {
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: none; }
  .menu-item-focus::before {
    content: '';
    position: absolute;
    border: 0.0625rem solid #fff;
    border-radius: 0.25rem;
    top: 0.25rem;
    bottom: 0.25rem;
    left: 0.25rem;
    right: 0.25rem; }

.social-icons-focus {
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: none; }
  .social-icons-focus::before {
    content: '';
    position: absolute;
    border: 0.0625rem solid #8f8f8f;
    border-radius: 50%;
    top: -0.25rem;
    bottom: -0.25rem;
    left: -0.25rem;
    right: -0.25rem; }

.brand-logo-focus-dark {
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: 0.0625rem solid #fff;
  border: none; }

.footer-links-focus-dark {
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: none;
  position: relative; }
  .footer-links-focus-dark::after {
    content: '';
    position: absolute;
    border: 0.0625rem solid #fff;
    border-radius: 0.25rem;
    top: -0.25rem;
    right: -0.25rem;
    bottom: -0.25rem;
    left: -0.25rem; }

.brand-logo-focus-light {
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: 0.0625rem solid #8f8f8f;
  border: none; }

.footer-links-focus-light {
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: none;
  position: relative; }
  .footer-links-focus-light::after {
    content: '';
    position: absolute;
    border: 0.0625rem solid #8f8f8f;
    border-radius: 0.25rem;
    top: -0.25rem;
    right: -0.25rem;
    bottom: -0.25rem;
    left: -0.25rem; }

.search-focus-light {
  -webkit-box-shadow: 0 0 0 0.1875rem #3b3c43, 0 0 0 0.25rem #fff;
          box-shadow: 0 0 0 0.1875rem #3b3c43, 0 0 0 0.25rem #fff;
  outline: none; }

.search-focus-dark {
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none;
  outline: solid 0.0625rem #fff;
  outline-offset: 0.25rem; }

.header-logo-focus {
  outline: none;
  position: relative;
  outline-offset: 0.25rem; }
  .header-logo-focus::after {
    content: '';
    position: absolute;
    border: 0.0625rem solid #fff;
    border-radius: 0.25rem;
    top: -0.25rem;
    right: -0.25rem;
    bottom: -0.25rem;
    left: -0.25rem; }

.tooltip-focus-light {
  outline: none;
  position: relative; }
  .tooltip-focus-light::before {
    content: '';
    position: absolute;
    border: 0.0625rem solid #8f8f8f;
    border-radius: 50%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }

.tooltip-focus-dark {
  outline: none;
  position: relative; }
  .tooltip-focus-dark::before {
    content: '';
    position: absolute;
    border: 0.0625rem solid #fff;
    border-radius: 50%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }

.search-result-count-view {
  font: var(--type-style-10-font);
  color: #181A1B; }

.show-more {
  max-width: 320px;
  margin: auto; }
  .show-more .result-count {
    margin-bottom: 0; }
  .show-more .btn.btn-outlined {
    font: var(--type-style-5-font); }
  .show-more .pagination-progress {
    width: 100%;
    height: 4px;
    background: #e9eaeb;
    margin: 20px 0 32px;
    border-radius: 100px;
    overflow: hidden; }
    .show-more .pagination-progress .pagination-progress-bar {
      width: 0;
      height: 100%;
      background: #0F0F0F;
      -webkit-transition: width 0.3s ease;
      transition: width 0.3s ease; }

.banner-container.plp.slim-banner {
  height: 18.75rem;
  overflow: hidden; }
  @media (max-width: 991.98px) {
    .banner-container.plp.slim-banner {
      height: 12.5rem; } }
  .banner-container.plp.slim-banner.light-theme {
    color: #000; }
    .banner-container.plp.slim-banner.light-theme .btn.btn-primary {
      line-height: 2.1;
      margin-top: 1rem; }
  .banner-container.plp.slim-banner.dark-theme .btn.btn-white {
    background-color: #fff;
    color: #000; }
  .banner-container.plp.slim-banner .text-cta-container {
    position: absolute;
    height: 100% !important;
    color: inherit; }
    @media (min-width: 992px) {
      .banner-container.plp.slim-banner .text-cta-container {
        padding: 0 3.75rem; } }
    @media (min-width: 768px) {
      .banner-container.plp.slim-banner .text-cta-container .text-container.text-md-right {
        text-align: right !important; }
      .banner-container.plp.slim-banner .text-cta-container .text-container.text-md-left {
        text-align: left !important; }
      .banner-container.plp.slim-banner .text-cta-container .text-container.text-md-center {
        text-align: center !important; } }
    @media (min-width: 768px) {
      .banner-container.plp.slim-banner .text-cta-container .text-container {
        width: 40%; } }
    @media (min-width: 1200px) {
      .banner-container.plp.slim-banner .text-cta-container .text-container.text-md-center {
        width: 100%; } }
    .banner-container.plp.slim-banner .text-cta-container.align-items-start .cta-container .btn-link, .banner-container.plp.slim-banner .text-cta-container.align-items-end .cta-container .btn-link {
      margin-left: 0; }
    .banner-container.plp.slim-banner .text-cta-container .cta-container .btn {
      width: 15.5rem; }
      @media (min-width: 576px) {
        .banner-container.plp.slim-banner .text-cta-container .cta-container .btn {
          width: 10rem; } }
      .banner-container.plp.slim-banner .text-cta-container .cta-container .btn-link {
        display: inline-block;
        margin: 0.8125rem;
        color: inherit; }
        .banner-container.plp.slim-banner .text-cta-container .cta-container .btn-link .icon-next::before {
          content: '\F105'; }
