@import "mixins";
@import "font";
@import "form";
@import "product-box";
@import "product-details";

b,
strong {
  font-weight: 600;
}

.header-row {
  padding-left: 20px;
  padding-right: 20px;
}

.head-wrapper {
  position: relative;

  .head-hero {
    position: relative;
    aspect-ratio: 2500 / 625;
    background: url("#{$app-css-relative-asset-path}/layout/header_bg.jpg") 50% 50% no-repeat;
    background-size: cover;
    min-height: 200px;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
  }

  .header-main {
    background-color: #ebdff8;
    z-index: 1;
  }

  .header-logo-col {
    padding-bottom: 0;

    .delivery {
      padding: 1rem 0;
      margin: 0;
      font-size: 15px;
    }
  }

  .header-actions-btn {
    .label {
      font-weight: 300;
      font-size: 0.92rem;
      display: block;
      text-align: center;
      margin-top: 0.25rem;

      @include media-breakpoint-down(md) {
        display: none;
      }
    }
  }

  > * {
    position: relative;
  }

  .head-base-logo {
    aspect-ratio: 1 / 1;
    z-index: 0;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    box-sizing: border-box;
    max-width: 400px;
    min-width: 175px;
    width: 30%;
    background: rgba(#fff, 50%);
    border-radius: 999em;

    @include for-min-size(901px) {
      width: 300px;
    }

    figure {
      padding: 7%;
      text-align: center;
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
    }

    img {
      vertical-align: middle;
    }

    .-compact & {
      top: 26%;
      background: none;

      figure {
        padding: 0;
      }
    ;
    }
  }

  .head-mountain_range {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;

    &:after {
      background: url("../assets/layout/mountain_range.svg") 0 0 no-repeat;
      -webkit-background-size: 100% auto;
      background-size: 100% auto;
      padding-top: (141 / 1180) * 100%;
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      transform: translateY(6.3%);
      content: '';
    }
  }

  .header-search {
    .header-search-input,
    .header-search-btn,
    .header-close-btn {
      height: 37px;
    }

    .input-group {
      border: 1px solid #ced4da;
      border-radius: 0;

      &:focus-within {
        border-color: #3f2a56;
      }
    }

    .header-search-input {
      border: none;

      &:focus {
        box-shadow: none;
      }
    }

    .icon {
      color: #878787;
    }

    .icon:hover {
      color: $sw-color-brand-primary;
    }

    .header-search-btn,
    .header-close-btn {
      background-color: #fff;
      border: none;

      &:focus,
      &:active,
      &:focus-visible {
        box-shadow: none;
      }
    }

    .header-close-btn {
      padding-top: 0;
    }

    .header-search-icon {
      vertical-align: text-top;
    }

    .icon-search svg {
      top: 0;
    }
  }

  .header-cart-total {
    @include media-breakpoint-down(md) {
      display: none;
    }
  }

}

@include media-breakpoint-up(md) {
  .main-navigation-link {
    color: $sw-color-brand-primary;

    &.active {
      font-weight: 700;
    }

    &:hover {
      color: var(--text-color-brand-primary);
    }
  }
}

.nav-main {
  background-color: rgba(255, 255, 255, 0.65);
  background-color: #f2effb;
  font-weight: 400;
  padding: 5px 0;

  .dropdown-menu {
    background: #f2effb;
    font-family: $sw-font-family-base;
    border: 0;
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    padding-bottom: 2rem;
    box-shadow: 0 43px 43px -6px rgba(0,0,0,.2);

    > * {
      --bs-gutter-x: 0;
      max-width: 1340px; // Or your container max-width
      margin-left: auto;
      margin-right: auto;
    }

    > .row:first-child {
      margin-bottom: 2rem;
    }

    > .row:nth-child(2) {
      padding-left: .5rem;
    }

    .navigation-flyout-content .navigation-flyout-categories.is-level-0 > .col-4 {
      position: relative;
      margin-bottom: 30px;

      a.nav-item {
        padding: 0 0.5rem;
      }
    }

    .navigation-flyout-content .navigation-flyout-categories.is-level-0 > .col-4::before {
      border-left: 1px solid #798490;
      content: "";
      height: 100%;
      left: 15px;
      position: absolute;
      top: 0;
    }

    .navigation-flyout-link {
      color: #4a545b;
      font-size: 16px;
    }
  }
}

.main-navigation-menu {
  font-size: 1.5rem;
  line-height: 36px;
  font-family: $sw-font-family-headline;
  --bs-navbar-nav-link-padding-x: 0.5rem;

  .nav-link {
    font-size: inherit;
  }

  @include media-breakpoint-down(lg) {
    padding: 0;
  }
}

.offcanvas-close {
  --bs-btn-bg: white;
  --bs-btn-hover-bg: #e6e6e6;
  border: 0;
}

.content-main {
  position: relative;
  overflow: hidden;
}

.breadcrumb {
  margin-bottom: 0;
  padding: 0;
}

.footer-main {
  border-top: none;

  .inside {
    padding: 3rem 0 0;
    position: relative;
    background-color: #BCBDB5;
  }

  .footer-contact-hotline a {
    display: inline;
    margin: 0;
    font-size: inherit;
    font-weight: inherit;
  }

  .footer-column-logo {
    align-self: center;

    @include media-breakpoint-down(md) {
      padding-top: 1rem;
      padding-bottom: 2rem;
    }

    .footer-column-logo-content {
      text-align: center;

      img {
        width: 300px;
        max-width: 100%;
        height: auto;
      }
    }
  }

  .footer-logo-image {
    max-height: 40px;
    max-width: 175px;
  }

  .footer-column {
    border-bottom: none;
  }
}

footer {
  font-size: 0.8777777778rem;

  .footer-payment-label {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .footer-bottom {
    padding: 0.5rem 0;
    background: #d4d5d0;
  }
}

.product-detail-customfields-container {
  margin-top: 30px;
}

.product-detail-media {
  .gallery-slider-single-image {
    @include media-breakpoint-up(md) {
      img {
        width: 100%;
      }
    }
    @include media-breakpoint-up(lg) {
      min-height: 800px !important;
    }
  }
}


.cms-section-sidebar,
.cms-section.alternate {
  background-color: #f2effb;

  .cms-block-image-text-gallery .image-text-gallery-card {
    background: #fff;
    box-shadow: none;
  }
}

.cms-block-image-text-gallery .image-text-gallery-card {
  background: #f2effb;
}

.icon {
  &.icon-filter-panel-item-toggle {
    color: $sw-color-brand-secondary;
  }
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-bg-type: #f2effb;
}

.table-compact {
  width: auto;
}

/** Buttons **/
.btn-display {
  font-family: $sw-font-family-headline;
  background: $sw-color-brand-secondary;
  color: #fff;
  font-size: 24px;
  padding: 1.5em 1em;

  &:hover {
    background: #ebdff8;
    color: #4a545b;
  }
}

.btn-block {
  display: block;
  width: 100%;
}

//.confirm-youthprotection {
.confirm-notice {
  margin-bottom: 1.5rem;
}

@include for-min-size(600px) {
  .modal-dialog {
    max-width: 85vw;
  }
}

.checkout-aside-summary-total {
  font-size: $font-size-base;
}

.has-element-loader .cms-element-product-listing {

  .product-image-wrapper,
  .product-rating,
  .product-name,
  .product-variant-characteristics,
  .product-description,
  .product-price-unit,
  .product-cheapest-price-price,
  .product-price {
    background: linear-gradient(to right, #ebdff8 8%, #f8f0ee 18%, #f7e4dc 28%);
    background-size: 800px 100px;
  }

  // wishlist page
  .product-wishlist-info {
    &-item {
      background: linear-gradient(to right, #ebdff8 8%, #f8f0ee 18%, #f7e4dc 28%);
      background-size: 800px 100px;
    }
  }
}