.bp-element-product-banner.layout-1 .group-banner, .bp-element-product-banner.layout-2 .group-banner {
  margin: 0 -15px; }
  .bp-element-product-banner.layout-1 .group-banner .item, .bp-element-product-banner.layout-2 .group-banner .item {
    position: relative;
    float: left;
    padding: 0 15px; }
    .bp-element-product-banner.layout-1 .group-banner .item .content, .bp-element-product-banner.layout-2 .group-banner .item .content {
      position: relative;
      overflow: hidden; }
      .bp-element-product-banner.layout-1 .group-banner .item .content a.link-overlay, .bp-element-product-banner.layout-2 .group-banner .item .content a.link-overlay {
        position: absolute;
        content: "";
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        z-index: 3;
        opacity: 0;
        background-color: rgba(0, 0, 0, 0.5);
        -webkit-transition: opacity .3s ease;
        -moz-transition: opacity .3s ease;
        transition: opacity .3s ease; }
      .bp-element-product-banner.layout-1 .group-banner .item .content:hover .link-overlay, .bp-element-product-banner.layout-2 .group-banner .item .content:hover .link-overlay {
        opacity: 1; }
      .bp-element-product-banner.layout-1 .group-banner .item .content:hover .title, .bp-element-product-banner.layout-2 .group-banner .item .content:hover .title {
        opacity: 1;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        -webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1) 0.1s;
        -moz-transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1) 0.1s;
        transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1) 0.1s; }
    .bp-element-product-banner.layout-1 .group-banner .item img, .bp-element-product-banner.layout-2 .group-banner .item img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: all 1s; }
    .bp-element-product-banner.layout-1 .group-banner .item .title, .bp-element-product-banner.layout-2 .group-banner .item .title {
      opacity: 0;
      margin: 0;
      position: absolute;
      top: 50%;
      left: 50%;
      z-index: 5;
      font-family: "Kaushan Script";
      font-size: 60px;
      font-weight: normal;
      font-style: normal;
      line-height: 1.17;
      letter-spacing: 1.2px;
      text-align: center;
      -webkit-transform: translate(-50%, 50%);
      -moz-transform: translate(-50%, 50%);
      transform: translate(-50%, 50%);
      -webkit-transition: -webkit-transform 0s .3s,opacity .3s;
      transition: transform 0s .3s,opacity .3s; }
      .bp-element-product-banner.layout-1 .group-banner .item .title a, .bp-element-product-banner.layout-2 .group-banner .item .title a {
        color: #fff; }
    .bp-element-product-banner.layout-1 .group-banner .item .flag, .bp-element-product-banner.layout-2 .group-banner .item .flag {
      text-align: center;
      position: absolute;
      top: 0;
      left: 30px;
      width: 91px;
      z-index: 2;
      display: inline-block;
      color: #fff; }
      .bp-element-product-banner.layout-1 .group-banner .item .flag *, .bp-element-product-banner.layout-2 .group-banner .item .flag * {
        display: block; }
      .bp-element-product-banner.layout-1 .group-banner .item .flag .flag-content, .bp-element-product-banner.layout-2 .group-banner .item .flag .flag-content {
        position: relative;
        padding: 16px 24px;
        background-color: rgba(214, 22, 28, 0.8); }
        .bp-element-product-banner.layout-1 .group-banner .item .flag .flag-content:after, .bp-element-product-banner.layout-2 .group-banner .item .flag .flag-content:after {
          background: linear-gradient(-45deg, rgba(214, 22, 28, 0.8) 15px, transparent 0), linear-gradient(45deg, rgba(214, 22, 28, 0.8) 15px, transparent 0);
          background-position: initial;
          background-repeat: repeat-x;
          background-size: 30px 30px;
          content: " ";
          display: block;
          position: absolute;
          bottom: -25px;
          left: 0;
          width: auto;
          height: 25px;
          right: 0;
          -moz-transform: rotate(180deg);
          -webkit-transform: rotate(180deg);
          -ms-transform: rotate(180deg);
          transform: rotate(180deg); }
      .bp-element-product-banner.layout-1 .group-banner .item .flag .text, .bp-element-product-banner.layout-2 .group-banner .item .flag .text {
        font-size: 20px;
        font-weight: 300;
        line-height: normal;
        letter-spacing: 0.4px;
        color: #cccccc; }
      .bp-element-product-banner.layout-1 .group-banner .item .flag .sale-price, .bp-element-product-banner.layout-2 .group-banner .item .flag .sale-price {
        font-size: 20px;
        font-weight: 300;
        line-height: normal;
        letter-spacing: 0.4px;
        color: #cccccc;
        text-decoration: line-through #999; }
      .bp-element-product-banner.layout-1 .group-banner .item .flag .price, .bp-element-product-banner.layout-2 .group-banner .item .flag .price {
        font-size: 25.5px;
        font-weight: 600;
        letter-spacing: 0.5px;
        color: #ffffff; }
  .bp-element-product-banner.layout-1 .group-banner .rank-1, .bp-element-product-banner.layout-2 .group-banner .rank-1 {
    width: 50%; }
    .bp-element-product-banner.layout-1 .group-banner .rank-1 .title a, .bp-element-product-banner.layout-2 .group-banner .rank-1 .title a {
      font-size: 80px; }
    .bp-element-product-banner.layout-1 .group-banner .rank-1 .flag, .bp-element-product-banner.layout-2 .group-banner .rank-1 .flag {
      top: 0;
      left: auto;
      right: 30px;
      width: 181px; }
      .bp-element-product-banner.layout-1 .group-banner .rank-1 .flag .flag-content, .bp-element-product-banner.layout-2 .group-banner .rank-1 .flag .flag-content {
        padding: 35px 30px; }
      .bp-element-product-banner.layout-1 .group-banner .rank-1 .flag .text, .bp-element-product-banner.layout-2 .group-banner .rank-1 .flag .text {
        font-size: 30px;
        font-weight: normal;
        line-height: 1;
        letter-spacing: normal; }
      .bp-element-product-banner.layout-1 .group-banner .rank-1 .flag .sale-price, .bp-element-product-banner.layout-2 .group-banner .rank-1 .flag .sale-price {
        padding-top: 8px;
        font-size: 25.5px;
        font-weight: 300;
        letter-spacing: 0.5px;
        color: #cccccc;
        line-height: normal;
        text-decoration: line-through #999; }
      .bp-element-product-banner.layout-1 .group-banner .rank-1 .flag .price, .bp-element-product-banner.layout-2 .group-banner .rank-1 .flag .price {
        padding-top: 3px;
        font-size: 35.5px;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0.7px;
        line-height: normal; }
  .bp-element-product-banner.layout-1 .group-banner .rank-2, .bp-element-product-banner.layout-2 .group-banner .rank-2 {
    width: 50%;
    padding-bottom: 30px; }
    .bp-element-product-banner.layout-1 .group-banner .rank-2 .title a, .bp-element-product-banner.layout-2 .group-banner .rank-2 .title a {
      font-size: 70px; }
    .bp-element-product-banner.layout-1 .group-banner .rank-2 .flag, .bp-element-product-banner.layout-2 .group-banner .rank-2 .flag {
      top: 0;
      left: auto;
      right: 30px;
      width: 119px; }
      .bp-element-product-banner.layout-1 .group-banner .rank-2 .flag .flag-content, .bp-element-product-banner.layout-2 .group-banner .rank-2 .flag .flag-content {
        padding: 22px 30px; }
        .bp-element-product-banner.layout-1 .group-banner .rank-2 .flag .flag-content:after, .bp-element-product-banner.layout-2 .group-banner .rank-2 .flag .flag-content:after {
          bottom: -24px;
          height: 24px;
          background-size: 24px 33px; }
      .bp-element-product-banner.layout-1 .group-banner .rank-2 .flag .text, .bp-element-product-banner.layout-2 .group-banner .rank-2 .flag .text {
        font-size: 25px;
        font-weight: 300;
        line-height: normal;
        color: #cccccc; }
      .bp-element-product-banner.layout-1 .group-banner .rank-2 .flag .sale-price, .bp-element-product-banner.layout-2 .group-banner .rank-2 .flag .sale-price {
        padding-top: 8px;
        font-size: 25.5px;
        font-weight: 300;
        color: #cccccc;
        line-height: normal;
        text-decoration: line-through #999; }
      .bp-element-product-banner.layout-1 .group-banner .rank-2 .flag .price, .bp-element-product-banner.layout-2 .group-banner .rank-2 .flag .price {
        font-size: 30px;
        font-weight: 600;
        letter-spacing: 0.6px;
        color: #ffffff; }
  .bp-element-product-banner.layout-1 .group-banner .rank-3, .bp-element-product-banner.layout-2 .group-banner .rank-3 {
    width: 25%; }
    .bp-element-product-banner.layout-1 .group-banner .rank-3 .flag-content:after, .bp-element-product-banner.layout-2 .group-banner .rank-3 .flag-content:after {
      background-size: 15px 38px !important; }
  .bp-element-product-banner.layout-1 .group-banner .rank-4, .bp-element-product-banner.layout-2 .group-banner .rank-4 {
    width: 25%; }
    .bp-element-product-banner.layout-1 .group-banner .rank-4 .flag-content:after, .bp-element-product-banner.layout-2 .group-banner .rank-4 .flag-content:after {
      background-size: 15px 38px !important; }

.bp-element-product-banner.layout-3 .group-banner {
  margin: 0 -5px; }
  .bp-element-product-banner.layout-3 .group-banner .item {
    width: 50%;
    float: left;
    padding: 5px; }
  .bp-element-product-banner.layout-3 .group-banner .content {
    position: relative;
    overflow: hidden; }
    .bp-element-product-banner.layout-3 .group-banner .content a.link-overlay {
      position: absolute;
      content: "";
      top: 0;
      right: 0;
      left: 0;
      bottom: 0;
      z-index: 3;
      background-color: rgba(0, 0, 0, 0.5);
      transition: all .3s; }
    .bp-element-product-banner.layout-3 .group-banner .content:hover img {
      transform: scale(1.1);
      -webkit-transform: scale(1.1);
      -moz-transform: scale(1.1);
      -ms-transform: scale(1.1);
      -o-transform: scale(1.1); }
    .bp-element-product-banner.layout-3 .group-banner .content img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: all 1s; }
    .bp-element-product-banner.layout-3 .group-banner .content .text {
      text-align: center;
      position: absolute;
      top: 50%;
      left: 0;
      right: 0;
      z-index: 10;
      color: #ffffff;
      transform: translate(0, -50%);
      width: 53%;
      margin: 0 auto; }
    .bp-element-product-banner.layout-3 .group-banner .content .title {
      font-size: 42px;
      line-height: 1.19;
      letter-spacing: 1.3px;
      color: #ffffff;
      margin-bottom: 25px;
      text-transform: uppercase; }
    .bp-element-product-banner.layout-3 .group-banner .content .description {
      font-weight: 300;
      margin-bottom: 20px; }
    .bp-element-product-banner.layout-3 .group-banner .content .all-price * {
      margin: 0 17px; }
    .bp-element-product-banner.layout-3 .group-banner .content .all-price .sale-price {
      position: relative;
      font-size: 30px;
      line-height: 1.5;
      letter-spacing: 0.9px;
      color: #cccccc; }
      .bp-element-product-banner.layout-3 .group-banner .content .all-price .sale-price:after {
        content: "";
        position: absolute;
        top: 57%;
        left: 0;
        right: 0;
        height: 1px;
        background: #ccc;
        z-index: 2;
        display: inline-block;
        transform: translate(0, -50%); }
    .bp-element-product-banner.layout-3 .group-banner .content .all-price .price {
      font-size: 42px;
      font-weight: bold;
      line-height: 1.19;
      letter-spacing: 1.3px;
      color: #ffffff; }
    .bp-element-product-banner.layout-3 .group-banner .content .order {
      margin-top: 50px; }
      .bp-element-product-banner.layout-3 .group-banner .content .order a {
        display: inline-block;
        height: 50px;
        line-height: 50px;
        font-size: 14px;
        text-transform: uppercase;
        font-weight: normal;
        padding: 0 42px;
        border-radius: 30px;
        color: #fff;
        background-color: #ec235a; }

.bp-element-product-banner .banner-option {
  text-align: center; }
  .bp-element-product-banner .banner-option .title-top {
    text-shadow: 7.1px 8.4px 6.4px rgba(0, 0, 0, 0.7);
    -webkit-text-stroke: 3px #ffffff;
    font-family: "Playball";
    font-size: 95px;
    font-weight: normal;
    line-height: 100%;
    letter-spacing: 2.9px;
    color: #e9003f;
    text-transform: capitalize;
    position: relative;
    display: block;
    z-index: 4; }
  .bp-element-product-banner .banner-option .title-large {
    font-size: 140px;
    font-weight: bold;
    line-height: 100%;
    letter-spacing: 4.2px;
    margin-top: -35px;
    margin-bottom: -8px;
    position: relative;
    display: block;
    color: #e4c5a6;
    text-transform: uppercase; }
  .bp-element-product-banner .banner-option .title-bottom {
    text-transform: uppercase;
    color: #e4c5a6;
    font-size: 95px;
    font-weight: bold;
    font-style: normal;
    line-height: 100%;
    letter-spacing: 2.9px; }
  .bp-element-product-banner .banner-option .sub-title {
    margin-top: 44px;
    font-weight: 300;
    color: #cccccc;
    padding: 0 15%;
    margin-bottom: 0; }
  .bp-element-product-banner .banner-option .line {
    margin-top: 20px;
    display: block;
    color: #cccccc; }
    .bp-element-product-banner .banner-option .line:after, .bp-element-product-banner .banner-option .line:before {
      top: -4px;
      position: relative;
      content: "";
      height: 2px;
      width: 139px;
      display: inline-block;
      background-color: #ebebeb;
      opacity: .5; }
    .bp-element-product-banner .banner-option .line:after {
      margin-left: 18px; }
    .bp-element-product-banner .banner-option .line:before {
      margin-right: 18px; }
  .bp-element-product-banner .banner-option .size-options {
    margin-top: 30px;
    display: flex;
    align-items: center;
    justify-content: center; }
    .bp-element-product-banner .banner-option .size-options .option {
      margin: 0 17px;
      display: flex;
      align-items: center;
      justify-content: center; }
      .bp-element-product-banner .banner-option .size-options .option .size {
        background-color: #fff;
        width: 57px;
        height: 57px;
        border-radius: 50%;
        font-size: 14px;
        letter-spacing: 0.4px;
        text-align: center;
        color: #333333;
        line-height: 121%;
        display: flex;
        justify-content: center;
        flex-direction: column; }
        .bp-element-product-banner .banner-option .size-options .option .size span {
          line-height: 1; }
      .bp-element-product-banner .banner-option .size-options .option .price {
        margin-left: 11px;
        font-size: 21px;
        line-height: 1.43;
        letter-spacing: 0.6px;
        color: #ffffff; }
  .bp-element-product-banner .banner-option .btn-link {
    margin-top: 43px; }
    .bp-element-product-banner .banner-option .btn-link a {
      height: 43px;
      display: inline-block;
      padding: 0 37px;
      line-height: 43px;
      border-radius: 30px;
      text-transform: uppercase;
      color: #fff;
      background-color: #cc0033; }

@media (max-width: 1366px) {
  .bp-element-product-banner.layout-1 .group-banner .item .content, .bp-element-product-banner.layout-2 .group-banner .item .content {
    height: 265px !important; }
  .bp-element-product-banner.layout-1 .group-banner .item.rank-1 .content, .bp-element-product-banner.layout-2 .group-banner .item.rank-1 .content {
    height: 560px !important; }
  .bp-element-product-banner.layout-1 .group-banner .item img, .bp-element-product-banner.layout-2 .group-banner .item img {
    object-fit: cover; }
  .bp-element-product-banner.layout-3 .group-banner .item .content {
    height: 400px !important; } }

@media (max-width: 800px) {
  .bp-element-product-banner.layout-1 .group-banner .item .content, .bp-element-product-banner.layout-2 .group-banner .item .content {
    height: 175px !important; }
  .bp-element-product-banner.layout-1 .group-banner .item.rank-1 .content, .bp-element-product-banner.layout-2 .group-banner .item.rank-1 .content {
    height: 380px !important; } }

@media (max-width: 768px) {
  .bp-element-product-banner.layout-3 .group-banner .item {
    width: 100%;
    padding-bottom: 15px; } }

@media (max-width: 600px) {
  .bp-element-product-banner.layout-1 .group-banner .item .content, .bp-element-product-banner.layout-2 .group-banner .item .content {
    text-align: center;
    width: auto;
    float: none;
    height: auto !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 30px; }
    .bp-element-product-banner.layout-1 .group-banner .item .content img, .bp-element-product-banner.layout-2 .group-banner .item .content img {
      width: auto;
      height: auto; }
    .bp-element-product-banner.layout-1 .group-banner .item .content.rank-1 .content, .bp-element-product-banner.layout-2 .group-banner .item .content.rank-1 .content {
      height: auto !important; } }

@media (max-width: 414px) {
  .bp-element-product-banner .group-banner .item .content img {
    width: 100%; } }
