@media (max-width: 575.98px) {
    .modal-fullscreen {
      padding: 0 !important; }
      .modal-fullscreen .modal-header {
        display: block; }
      .modal-fullscreen .modal-dialog {
        width: 100%;
        max-width: none;
        height: 100%;
        margin: 0; }
      .modal-fullscreen .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0; }
      .modal-fullscreen .modal-body {
        overflow-y: auto; } }
  
  @media (max-width: 767.98px) {
    .modal-fullscreen-sm {
      padding: 0 !important; }
      .modal-fullscreen-sm .modal-header {
        display: block; }
      .modal-fullscreen-sm .modal-dialog {
        width: 100%;
        max-width: none;
        height: 100%;
        margin: 0; }
      .modal-fullscreen-sm .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0; }
      .modal-fullscreen-sm .modal-body {
        overflow-y: auto; } }
  
  @media (max-width: 991.98px) {
    .modal-fullscreen-md {
      padding: 0 !important; }
      .modal-fullscreen-md .modal-header {
        display: block; }
      .modal-fullscreen-md .modal-dialog {
        width: 100%;
        max-width: none;
        height: 100%;
        margin: 0; }
      .modal-fullscreen-md .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0; }
      .modal-fullscreen-md .modal-body {
        overflow-y: auto; } }
  
  @media (max-width: 1199.98px) {
    .modal-fullscreen-lg {
      padding: 0 !important; 
      z-index: 999999;}
      .modal-fullscreen-lg .modal-header {
        display: block; }
      .modal-fullscreen-lg .modal-dialog {
        width: 100%;
        max-width: none;
        height: 100%;
        margin: 0; }
      .modal-fullscreen-lg .modal-content {
        height: 100%;
        border: 0;
        border-radius: 0; }
      .modal-fullscreen-lg .modal-body {
        overflow-y: auto; } }
  
  .modal-fullscreen-xl {
    padding: 0 !important; 
    z-index: 999999;}
    .modal-fullscreen-xl .modal-header {
      display: block; }
    .modal-fullscreen-xl .modal-dialog {
      width: 100%;
      max-width: none;
      height: 100%;
      margin: 0; }
    .modal-fullscreen-xl .modal-content {
      height: 100%;
      border: 0;
      border-radius: 0; }
    .modal-fullscreen-xl .modal-body {
      overflow-y: auto; }
  
  .modal-fullscreen {
    padding: 0 !important; }
  
  .modal.show {
    overflow-x: hidden;
    overflow-y: auto; }
  
  /*******************************
   * MODAL AS LEFT/RIGHT SIDEBAR
   * Add ".modal-left-pane" or ".modal-right-pane" in modal parent div, after class="modal".
   *******************************/
  button.modal-back,
  button.close {
    color: #7964b9;
    padding: 0;
    background-color: transparent;
    border: 0;
    font-size: 1.3125rem;
    opacity: 1; }
  
  .modal.modal-left-pane .modal-dialog, .modal.modal-right-pane .modal-dialog {
    max-width: 480px;
    min-height: calc(100vh - 0px);
    min-height: -webkit-fill-available; }
  
  .modal.modal-left-pane.show .modal-dialog, .modal.modal-right-pane.show .modal-dialog {
    transform: translate(0, 0); }
  
  .modal.modal-left-pane .modal-content, .modal.modal-right-pane .modal-content {
    min-height: calc(100vh - 0px);
    min-height: -webkit-fill-available; }
  
  .modal.modal-left-pane .modal-dialog {
    transform: translate(-100%, 0);
    margin: 0px auto 0 0; }
  
  .modal.modal-right-pane .modal-dialog {
    transform: translate(100%, 0);
    margin: 0px 0 0 auto; }
  
  /* Hide HTML5 Up and Down arrows. */
  #cartModal input[type="number"].cart-qty::-webkit-outer-spin-button,
  #cartModal input[type="number"].cart-qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0; }
  
  #cartModal input[type="number"].cart-qty {
    -moz-appearance: textfield;
    text-align: center;
    display: inline;
    width: 27px;
    padding: 0; }
  
  .modalCart-overlay {
    background-color: rgba(255, 255, 255, 0.4);
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1000; }
  
  .modalCart-overlay div.spinner-border,
  .modalCart-overlay i {
    position: absolute;
    left: 25%;
    font-size: 200px;
    top: 25%;
    color: #7964b9; }
  
  .incdec:focus,
  .cart-qty:focus {
    box-shadow: none; }
  
  .bordermorpher {
    animation: bordermorph 1s infinite; }
  
  @keyframes bordermorph {
    from {
      border-color: #ebebeb; }
    to {
      border-color: #7964b9; } }
  
  .cartModalCollapeButton.collapsed:after {
    content: "\f107";
    font-family: "font awesome 5 free";
    font-weight: 900;
    display: inline-block;
    float: right;
    font-size: 16px; }
  
  .cartModalCollapeButton:after {
    content: "\f106";
    font-family: "font awesome 5 free";
    font-weight: 900;
    display: inline-block;
    float: right;
    font-size: 16px; }

  .cartModalCollapeButton:focus {
      box-shadow: none; }
  
    @keyframes jerkySpin {
      0% { transform: rotate(0deg); }
      10% { transform: rotate(30deg); }
      20% { transform: rotate(90deg); }
      30% { transform: rotate(120deg); }
      40% { transform: rotate(180deg); }
      50% { transform: rotate(210deg); }
      60% { transform: rotate(270deg); }
      70% { transform: rotate(300deg); }
      80% { transform: rotate(330deg); }
      90% { transform: rotate(360deg); }
      100% { transform: rotate(360deg); }
  }
  
  .jerky-spin {
      animation: jerkySpin 2s linear infinite;
  }
  