/* Font sizes */
/* Max widths for media queries */
.custom-banner {
  margin-bottom: 41px; }
  @media (max-width: 768px) {
    .custom-banner {
      margin-bottom: 10px; } }
  .custom-banner .banner .position-relative {
    background-repeat: no-repeat;
    background-position: top right;
    background-size: 0;
    display: -ms-flexbox;
    display: flex; }
    @media (max-width: 768px) {
      .custom-banner .banner .position-relative {
        display: block; } }
    .custom-banner .banner .position-relative a.picture {
      width: 100%;
      position: relative;
      z-index: 2; }
      .custom-banner .banner .position-relative a.picture picture {
        float: right;
        width: 50%;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: end;
            justify-content: flex-end; }
        @media (max-width: 768px) {
          .custom-banner .banner .position-relative a.picture picture {
            float: none;
            width: 100%;
            display: block; } }
    .custom-banner .banner .position-relative .custom-banner-content {
      position: absolute;
      width: 100%;
      height: 100%;
      background-color: transparent;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      z-index: 1;
      margin-top: 40px; }
      @media (max-width: 768px) {
        .custom-banner .banner .position-relative .custom-banner-content {
          position: static;
          display: block;
          margin-top: 55px;
          height: auto; } }
      @media (max-width: 768px) {
        .custom-banner .banner .position-relative .custom-banner-content > .container {
          padding-left: 0;
          padding-right: 0; } }
      @media (max-width: 650px) {
        .custom-banner .banner .position-relative .custom-banner-content > .container {
          padding-left: 15px;
          padding-right: 15px; } }
      .custom-banner .banner .position-relative .custom-banner-content .overlay {
        display: -ms-flexbox;
        display: flex;
        width: 50%;
        margin-left: -15px;
        max-width: 522px;
        padding-bottom: 74px; }
        @media (max-width: 768px) {
          .custom-banner .banner .position-relative .custom-banner-content .overlay {
            width: 100%;
            margin-left: 0;
            max-width: 100%;
            padding-bottom: 0; } }
        .custom-banner .banner .position-relative .custom-banner-content .overlay .icon-feature {
          position: relative; }
          .custom-banner .banner .position-relative .custom-banner-content .overlay .icon-feature .title {
            position: absolute;
            color: #000;
            text-transform: uppercase;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            font-size: 10px;
            -ms-writing-mode: tb-rl;
                writing-mode: vertical-rl;
            padding: 0;
            margin: 0;
            -ms-flex-pack: center;
                justify-content: center;
            -ms-flex-align: center;
                align-items: center;
            display: -ms-flexbox;
            display: flex;
            font-family: "Grand-Stage", sans-serif;
            font-weight: 400;
            transform: rotate(180deg);
            padding-bottom: 22px; }
        .custom-banner .banner .position-relative .custom-banner-content .overlay .heading {
          color: #fff;
          position: relative;
          padding-left: 10px;
          min-height: 176px;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
          -ms-flex-align: center;
              align-items: center;
          padding-top: 25px;
          padding-bottom: 35px;
          width: calc(100% - 36px); }
          @media (max-width: 768px) {
            .custom-banner .banner .position-relative .custom-banner-content .overlay .heading {
              padding-left: 20px;
              padding-top: 36px; } }
          @media (max-width: 665px) {
            .custom-banner .banner .position-relative .custom-banner-content .overlay .heading {
              padding-top: 20px;
              padding-bottom: 20px; } }
          .custom-banner .banner .position-relative .custom-banner-content .overlay .heading::after {
            position: absolute;
            content: '';
            display: block;
            width: 36px;
            height: 100%;
            left: 0;
            top: 0;
            z-index: 1;
            background-repeat: no-repeat;
            background-position: top left; }
          .custom-banner .banner .position-relative .custom-banner-content .overlay .heading h1,
          .custom-banner .banner .position-relative .custom-banner-content .overlay .heading h2 {
            font-size: 1.875rem;
            font-weight: 600;
            margin-bottom: 0; }
          .custom-banner .banner .position-relative .custom-banner-content .overlay .heading p {
            font-size: 1rem;
            font-weight: 600;
            margin-bottom: 0;
            line-height: 20px; }
  .custom-banner.custom-banner-title {
    margin-top: 46px;
    margin-bottom: 36px; }
    @media (max-width: 768px) {
      .custom-banner.custom-banner-title {
        margin-bottom: 3px; } }
    .custom-banner.custom-banner-title .heading-content {
      text-align: center;
      margin: 0 auto;
      max-width: 476px;
      padding: 0; }
      @media (max-width: 768px) {
        .custom-banner.custom-banner-title .heading-content {
          max-width: 100%;
          padding: 0 20px; } }
      .abcGrandStore .custom-banner.custom-banner-title .heading-content {
        display: -ms-flexbox;
        display: flex;
        gap: 25px;
        text-align: left; }
      .homepage .custom-banner.custom-banner-title .heading-content {
        max-width: 582px; }
      .homepage.abcGrandStore .custom-banner.custom-banner-title .heading-content {
        max-width: 100%;
        gap: 15px; }
      .homepage.abcGrandStore .custom-banner.custom-banner-title .heading-content .heading {
        max-width: 582px;
        padding-bottom: 15px;
        padding-top: 40px; }
        @media (max-width: 768px) {
          .homepage.abcGrandStore .custom-banner.custom-banner-title .heading-content .heading {
            padding-top: 15px; } }
      .custom-banner.custom-banner-title .heading-content h1,
      .custom-banner.custom-banner-title .heading-content h2 {
        font-size: 30px;
        margin-bottom: 25px;
        letter-spacing: 0.5;
        margin-bottom: 25px; }
        .abcStandardStore .custom-banner.custom-banner-title .heading-content h1, .abcStandardStore
        .custom-banner.custom-banner-title .heading-content h2 {
          font-family: "SuperClarendon", sans-serif;
          font-weight: 700; }
        .abcGrandStore .custom-banner.custom-banner-title .heading-content h1, .abcGrandStore
        .custom-banner.custom-banner-title .heading-content h2 {
          font-weight: 600;
          margin-bottom: 10px; }
      .custom-banner.custom-banner-title .heading-content p {
        font-weight: 600;
        line-height: 20px;
        margin-bottom: 0; }
        @media (max-width: 768px) {
          .custom-banner.custom-banner-title .heading-content p {
            margin-bottom: 3px; } }
        .homepage .custom-banner.custom-banner-title .heading-content p {
          font-size: 16px;
          margin-bottom: 0px; }
