/**
 * @file
 * Subtheme specific CSS.
 */

/* @import url('https://fonts.googleapis.com/css2?family=Mulish:ital,wght@0,400;0,700;1,400;1,700&display=swap'); */

:root {
  --color-link: #000000;
  --color-text: #000000;
  --color-primary: #2058dc;
  --color-primary-text: #ffffff;
  --color-primary-hover: #0044bb;
  --color-primary-border: #ddf0ff;
  --color-secondary: #880808;
  --color-secondary-hover: #880808;
  --color-secondary-text: #ffffff;
  --bg-facets: #e6e7e9ddd;
  --bg-facets-hover: #880808;
  --bg-facets-text: #000000;
  --bg-facets-text-hover: #880808;
}
.off-canvas-wrapper {
  display: none;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Roboto Condensed", sans-serif;
}
a {
  text-decoration: none !important;
}
.dropdown-item.active, .dropdown-item:active {
  background-color: var(--color-primary);
}
.nav-item a:hover {
  color: var(--color-primary-text);
}

body,
p,
a,
li {
  font-family: "metropolis", sans-serif;
}
.page-user-login .main-content,
.page-user-register .main-content,
.page-user-password .main-content {
  max-width: 800px;
  margin: 0 auto;
}
.nice-login-login,
.nice-login-create {
  margin-bottom: 1rem;
}
.nice-login-login,
a.nice-login {
  padding: 0.7rem;
  margin-bottom: 1rem;
}
.fb-login {
  max-width: 320px;
  margin: 0 auto;
}
#block-facebooklogin {
  text-align: center;
}

.block h2 {
  text-transform: uppercase;
}

nav.tabs ul .nav-item {
  flex-grow: 0;
}

.float-right {
  float: right;
}
.button--outline-primary {
  color: var(--color-primary);
  border-color: var(--color-primary-border);
  line-height: 1rem;
  font-size: 0.9rem;
  padding: 0.7rem;
  font-weight: bold;
}
.views-field-product-id .card-body {
  padding: 0;
}
.table {
  --bs-table-striped-bg: rgba(0, 0, 0, 0.02);
}
tr,
.table-striped > tbody > tr:nth-of-type(2n + 1),
.table-striped > tbody > tr:nth-of-type(2n + 1) {
  background: none;
  --bs-table-accent-bg: none;
}
.table > :not(caption) > * > * {
  vertical-align: middle;
}
.table > :not(caption) > * > * > * {
  margin-bottom: 0 !important;
}
.table-striped > tbody > tr:nth-of-type(2n + 1) > * {
}

.alert {
  z-index: 0;
}
a.title,
.title a {
  font-size: 30px;
  line-height: 35px;
  color: var(--color-link);
  margin: 0 35px 0 0;
  text-decoration: none;
}
.block-page-title-block {
  padding-right: 125px;
}
table tr th,
table tr th a,
table tr th a:hover,
table tr th a:focus {
  color: var(--color-text);
}
.highlighted.sticky {
  position: fixed;
  z-index: 1000;
  top: 0;
  width: 100%;
}
.highlighted {
  background-color: #f0f2f5;
  padding: 2rem 0 0.5rem 0;
  min-height: 5rem;
  margin-bottom: 2rem;
  background-image: url("../images/slide-bg.jpg");
  background-size: cover;
  position: relative;
}
.highlighted .block-commerce-cart {
  position: absolute;
  right: 1rem;
  top: 2rem;
}
.highlighted .cart-block--contents {
  display: none !important;
}
.flexslider {
  margin-bottom: 0;
}
.flexslider:hover .flex-direction-nav a,
.flexslider:hover .flex-direction-nav a {
  display: block;
  height: 50px;
}

.view-id-homepage .views-row {
  margin-bottom: 60px;
}

.slides .field--type-entity-reference {
  margin: 0;
}

.block-page-title-block .h1,
.block-page-title-block h1 {
  font-size: 1.875rem;
  font-weight: bold;
  margin-bottom: 1.5rem;
}

.header .block-views-exposed-filter-blockshop-page-1 .form-actions,
.header .block-views-exposed-filter-blockshop-page-1 .form-item-sort-bef-combine {
  display: none;
}
.header .block-views-exposed-filter-blockshop-page-1 .form-item-keyword {
  max-width: 100%;
  float: none;
  flex: auto;
  margin: 0 !important;
}
.header .block-views-exposed-filter-blockshop-page-1 .form-item-keyword label {
  display: none;
}
.header .bef-exposed-form {
  margin-bottom: 0;
}
.main-content .block-views-exposed-filter-blockshop-page-1 .form-item-keyword {
  display: none;
}


.block-views-blockshopping-list-counter-block-1 {
  width: 3.5rem;
  display: flex;
  justify-content: flex-end;
  flex: 1;
}

.view-shopping-list-counter .views-field-variation-id a {
  display: inline-block;
  text-align: center;
  color: #ffffff;
  z-index: 1;
  width: 2.6rem;
  font-size: 1rem;
  font-weight: bold;
  text-decoration: none;
  line-height: 2.6rem;
  border-radius: 2rem;
  /* background-color: #fff; */
  position: absolute;
  top: 0;
  left: 0;
  /* border: 1px solid #fab528; */
}

.view-welcome-user {
  text-align: right;
}
.js-flag-message {
  display: block;
  width: 100px;
  position: absolute;
  left: 0;
  top: 3rem;
  margin: 0;
  line-height: 1rem;
  background-color: #fffa;
  font-size: .9rem;
  border-radius: 5rem;
  padding: 5px;
}

.view-shopping-list-counter .views-field-variation-id .svg-inline--fa {
  height: 2.4rem;
  color: var(--color-primary-hover);
}

.card.card-block {
  border-color: transparent;
}

.view-homepage > .view-content > .views-row {
  margin-top: 2rem;
}

.sidebar .block {
  border: 0 none;
}

.views-view-grid .views-col {
  margin-bottom: 3rem;
}

.field--type-entity-reference .card {
  border: 1px solid transparent;
  padding-bottom: 0;
  padding-top: 0;
}

.field--type-entity-reference {
  margin: 0;
}
.field--name-variations.field--type-entity-reference {
  margin: 0;
}
.field--name-field-category,
.commerce-product-variation--view-mode-summary {
  text-align: center;
}
.field--name-field-category {
  font-size: 0.8rem;
}
.field--name-field-category a {
  color: #888;
}
.field--name-field-category a:hover {
  color: #000;
}


.flag.flag-shopping-list {
  text-align: center;
}

.flag-shopping-list .svg-inline--fa {
  font-size: 1.5rem;
  color: var(--color-primary);
  margin-top: 2px;
}
.flag-shopping-list.flag-anon-message:hover {
  cursor: pointer;
}

.ui-dialog {
  z-index: 999;
}
.ui-dialog .ui-dialog-titlebar{

}
.ui-dialog .ui-dialog-titlebar-close {
  border: 1px solid #c5c5c5;
}
.ui-dialog .ui-dialog-titlebar-close:after {
  content: "x";
  line-height: 1rem;
  display: block;
}

.view-shop .card-block {
  padding: 0;
}
.view-shop .views-col:hover .flag a {
  display: inline-block;
}

.views-field-product-id {
  position: relative;
}

.commerce-variation-add-to-cart .quantity {
  max-width: 100px;
  font-size: 1.2rem;
  text-align: center;
}

.view-product-top .more-link {
  text-align: center;
  margin-bottom: 3rem;
}

.field--name-dynamic-token-fieldcommerce-product-variation-title {
  padding: 0 10px;
}

.field--label-inline .field__items {
  display: inline-block;
}

.field--label-inline .field__label {
  font-weight: normal;
  margin: 0;
  padding-right: 5px;
  color: #555;
  font-size: 0.9rem;
}

#header {
  position: relative;
}
#navbar-top .region-top-header{
  display: block;
  padding-right: 80px;
}
a.navbar-brand {
  display: inline-block;
}
.navbar-brand img {
  max-width: 180px;
}
.navbar-form {
  width: 100%;
  max-width: unset;
  margin-right: 0;
}
#navbar-main {
  position: absolute;
  top: 5px;
  right: 5px;
}

#navbar-main a.nav-link,
#navbar-main span.nav-link {
  padding: 0.5rem 1rem;
  color: var(--color-primary);
  border: 1px solid transparent;
}

#navbar-main a.nav-link:hover {
  background-color: #f0f2f5;
  color: var(--color-primary);
  border-radius: 5px;
  border: 1px solid var(--color-primary);
}

.field--name-dynamic-token-fieldcommerce-product-variation-title a,
.field--type-entity-reference .field--name-title a {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  /* number of lines to show */
  line-clamp: 3;
  -webkit-box-orient: vertical;
  font-size: 0.875rem;
  color: var(--color-link);
  min-height: 4rem;
  text-decoration: none;
}
.dropdown:hover .dropdown-menu, .dropdown.open .dropdown-menu {
  display: block;
}
.field--name-product-id.field--type-entity-reference .form-actions {
  display: inline-block;
}

.field--name-price {
  color: var(--color-secondary);
  font-weight: 700;
  font-size: 1rem;
  padding-top: 1rem;
}

.button--add-to-cart.button--primary {
  color: var(--color-primary-text);
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  font-size: 14px;
  line-height: 2;
  font-weight: 700;
}

.button--add-to-cart.button--primary:hover {
  background-color: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    visibility: visible;
    opacity: 1;
  }
}
@keyframes fadeOut {
  0% {
    visibility: visible;
    opacity: 1;
  }
  70% {
    visibility: visible;
    opacity: 1;
  }
  100% {
    visibility: hidden;
    opacity: 0;
  }
}
form.commerce-order-item-add-to-cart-form .add-to-cart-message .messages {
  position: absolute;
  bottom: 6.5rem;
  background-color: #fafafa;
  padding: 5px;
  border: 1px solid #888;
  font-size: 0.9rem;
  border-radius: 5px;
  animation: 5s fadeOut;
  animation-fill-mode: forwards;
  visibility: visible;
}
.commerce-product--view-mode-full
  form.commerce-order-item-add-to-cart-form
  .add-to-cart-message
  .messages {
  position: relative;
  top: unset;
  bottom: unset;
  left: unset;
}
form.commerce-order-item-add-to-cart-form .form-actions {
  position: relative;
}
form.commerce-order-item-add-to-cart-form .ajax-progress {
  position: absolute;
  top: 0;
  bottom: 0;
}
form.commerce-order-item-add-to-cart-form .ajax-progress .message {
  display: none;
}
/* Views */
.more-link {
  margin-top: 2rem;
  border-top: 1px solid var(--color-primary);
  padding-top: 1rem;
  text-align: center;
}

.more-link a {
  display: inline-block;
  text-decoration: none;
  background-color: var(--color-primary);
  border-color: var(--color-primary-hover);
  padding: 10px 15px;
  border-radius: 5px;
  color: var(--color-primary-text);
  font-weight: bold;
}
.button--outline-primary:hover,
.more-link a:hover {
  color: var(--color-primary-text);
  background-color: var(--color-primary-hover);
}
.cart--cart-block .cart-block--contents {
  display: block;
  visibility: visible;
}
#navbar-top .cart--cart-block {
  max-width: 200px;
}
#navbar-top .cart--cart-block:hover .cart-block--contents {
  display: block !important;
  visibility: visible !important;
}

#navbar-top .cart-block--contents {
  right: 1rem;
  display: none !important;
  min-width: 320px;
  width: 100%;
  border: 1px solid #e6e7e9;
  border-radius: 5px;
  z-index: 1000;
}
#navbar-top .cart-block--contents__items {
  overflow-x: hidden;
  overflow-y: scroll;
  max-height: 300px;
}
#navbar-top .cart-block--contents__inner {
  padding: 1rem;
}
.cart-block--contents__inner {
  padding: 1rem 0;
}
.cart-block--contents__items {
  overflow-x: hidden;
  overflow-y: scroll;
  max-height: 50vh;
}
#navbar-top .cart-block--summary a {
  display: inline-block;
  line-height: 1.1rem;
  text-align: left;
  background-color: #ddf0ff;
  border-radius: 10px;
  padding: 5px 5px 5px 55px;
  border: 1px solid var(--color-primary);
  position: relative;
}
#content {
  padding-left: 2.5rem;
}
.cart-block--summary a {
  display: block;
  position: relative;
  padding: 5px 5px 5px 55px;
  height: 2.5rem;
}

.cart-block--summary__icon svg {
  color: #fff;
  fill: var(--color-primary);
  stroke: #000;
}

.cart-block--summary__icon {
  width: 2rem;
  height: 2rem;
  margin: 0;
  position: absolute;
  left: 8px;
}

.cart-block--summary__price,
.cart-block--summary__count {
  display: block;
  line-height: 1rem;
  font-size: 0.8rem;
  letter-spacing: 0.1ex;
}

.cart-block--summary__count {
  color: var(--color-primary);
  text-align: left;
}

.cart-block--summary__price {
  font-weight: bold;
  color: var(--color-primary);
  font-size: 1rem;
  letter-spacing: inherit;
}

.cart-block--contents__links a {
  display: inline-block;
  text-decoration: none;
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  padding: 0.8rem 2rem;
  border-radius: 5px;
  color: var(--color-primary-text) !important;
  font-weight: bold;
  line-height: 1rem;
}

.cart-block--contents__links a:hover {
  background-color: var(--color-primary-hover);
}
.sidebar .block-commerce-cart {
  border: 1px solid #e0e2e5;
  box-shadow: 0 1px 2px #d8dadd;
  border-radius: max(0px, min(8px, -999900% - 39996px + 999900vw)) / 8px;
}
.sidebar .cart--cart-block .cart-block--contents {
  position: relative;
  width: 100%;
}

.order-total-line {
  font-size: 0.9rem;
}

.order-total-line__total {
  font-size: 1rem;
}

.view-commerce-cart-block .views-row {
  margin-bottom: 1rem;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.view-commerce-cart-block .views-field-field-image {
  float: left;
  width: 60px;
  margin-right: 1rem;
}

.view-commerce-cart-block .product-title,
.view-commerce-cart-block .product-price,
.view-commerce-cart-block .views-field.views-field-title {
  font-size: 0.85rem;
  line-height: 1rem;
  text-decoration: none;
}

.view-commerce-cart-block .product-price {
  color: var(--color-primary);
}
.cart-block--contents__links {
  padding-top: 1rem;
}
.order-total-line-label {
  margin-right: 1rem;
}

/** Checkout page **/

.layout-region-checkout-footer .form-actions > * {
  margin: 0 1rem;
  padding: 1rem;
}
.form-item-sidebar-coupon-redemption-form-code {
  display: inline-block;
  max-width: 200px;
}
#edit-review-contact-information .fieldset-wrapper,
#edit-review-payment-information .fieldset-wrapper,
#edit-review-shipping-information .address {
  font-size: 1.2rem;
  font-weight: bold;
}
#edit-review-payment-information .fieldset-wrapper .profile {
  display: none;
}
#edit-review-shipping-information .field--name-shipping-method{
  margin-top: 1rem;
}

.checkout-complete {
  font-size: 1.2rem;
}
.checkout-complete__payment-instructions {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

/** Shipping **/
.field--type-telephone .form-type-tel,
.field--type-address .form-type-select,
.field--type-address .form-type-textfield {
  display: flex;
  flex-direction: row;
}
.field--type-telephone label,
.field--type-address label {
  max-width: 30%;
  width: 100%;
}
.order-total-line__adjustment--promotion,
.order-total-line__adjustment--shipping-promotion {
  color: red;
}

fieldset fieldset legend {
  font-size: 1.2rem;
}
.table img {
  margin-bottom: 0;
}

.table .field--name-product-id {
  margin-top: 1rem;
  margin-bottom: 0;
}

/* Facets  */
.sidebar h2 {
  font-size: 1.4rem;
}

.facets-widget-links ul {
  padding: 0;
}

.facets-widget-links .facet-item {
  list-style: none;
  display: inline-block;
  margin-right: 0.5rem;
}

.facets-widget-links a {
  background-color: var(--bg-facets);
  padding: 5px;
  margin: 5px 0;
  display: inline-block;
  line-height: 1rem;
  border-radius: 5px;
  font-size: 0.8rem;
  color: var(--bg-facets-text);
  transition: all 0.5s;
}

.facets-widget-links a.is-active,
.facets-widget-links a:hover {
  background-color: var(--bg-facets-hover);
  color: var(--color-primary-text);
}
.facets-widget-links ul {
  overflow-y: scroll;
  max-height: 300px;
}

.bef-exposed-form {
  margin-bottom: 2rem;
}

.bef-exposed-form .form-item-keyword .form-control {
  /* background-color: #f0f2f5; */
  font-size: 0.9rem;
  color: #000;
  line-height: 1.75rem;
}

.bef-exposed-form .js-form-item-sort-bef-combine {
  max-width: 200px;
  margin-left: auto;
}

.bef-exposed-form .js-form-item-sort-bef-combine .form-select {
  font-size: 0.9rem;
  color: var(--color-primary-hover);
  line-height: 1.75rem;
}

.bef-exposed-form .form-actions {
  margin-top: 1.5rem;
  float: right;
  margin-bottom: 0 !important;
  flex: 1 0 0;
}

.block-system-main-block {
  clear: both;
}

.pagination {
  margin-top: 5rem;
  justify-content: center;
}

.pagination .page-item > .page-link {
  border-color: var(--color-primary-border);
  color: var(--color-primary);
  font-size: 1rem;
}

#block-contactinfo h1,
#block-contactinfo h2,
#block-contactinfo h3,
#block-contactinfo h4 {
  margin: 0;
}
#block-contactinfo p {
  color: #888;
}

/** SIDEBAR **/
.view-shop {
  min-height: 300px;
  padding-left: 1.5rem;
}
.layout-main-wrapper > .container > .row {
  position: relative;
}
.sidebar_first.collapsible {
  width: 2rem;
  padding: 0;
  margin-top: 7rem;
  background-color: transparent;
  transition: all 0.5s;
  position: absolute;
  z-index: 999;
  overflow: hidden;
  top: 0;
  left: 0;
  max-width: 320px;
  border-right: 1px solid #e6e7e9;
}
.sidebar_first.collapsible::before {
  content: "View filters";
  display: block;
  width: 2rem;
  padding: 1rem 0;
  background: #e6e7e9;
  position: absolute;
  right: 0;
  z-index: 9;
  border-radius: 1rem 0 0 1rem;
  text-align: center;
  line-height: 2rem;
  top: 50px;
  font-weight: bold;
  writing-mode: vertical-lr;
  cursor: pointer;
}
.sidebar_first.collapsible.open::before {
  content: "Hide filters";
}
.sidebar_first.collapsible aside {
  background-color: white;
  width: 100%;
  max-width: 320px;
  min-width: 300px;
  padding-left: 1.5rem;
  transition: all 0.5s;
}
.sidebar_first.collapsible.open {
  width: 100%;
}
.sidebar_first.collapsible.open aside {
  background-color: white;
  width: 100%;
  max-width: 320px;
  min-width: 300px;
  padding-left: 0;
  padding-right: 1.5rem;
}

.views-view-grid .views-col {
  width: 50% !important;
}

/* Add to shopping list */
.flag-shopping-list {
  position: absolute;
  top: 1rem;
  left: 1rem;
  opacity: 1;
  transition: 0.3s;
  z-index: 1;
  background-color: #fff;
  border-radius: 20px;
  padding: 4px;
  height: 35px;
  width: 35px;
  box-shadow: 0 1px 2px #00000045;
}
.flag-shopping-list:hover {
  box-shadow: 0 1px 2px #ffcb006b;
}

.block-views-blockrelated-products-block-1 h2 {
  margin-top: 5rem;
  font-size: 1.6rem;
  text-transform: uppercase;
  border-bottom: 1px solid #e6e7e9;
  padding-bottom: 5px;
}

.field--name-dynamic-block-fieldcommerce-product-product-page-inst {
  min-height: 10rem;
  background-color: #f0f2f5;
  padding: 2rem;
  color: #555;
}

.view-product-page-terms .views-label {
  float: left;
  margin-right: 1ex;
}

.view-browse-by-category .views-field-name {
  text-align: center;
  padding: 2rem;
}
.view-browse-by-category .views-field-name a {
  display: block;
  background-color: #f0f2f5;
  padding: 2rem 0;
  color: #555;
  font-weight: bold;
}
.site-footer {
  background: none;
}
.site-footer h2 {
  color: unset;
}
.site-footer .content {
  color: unset;
}

/* // X-Small devices (portrait phones, less than 576px)
// No media query for `xs` since this is the default in Bootstrap */

/* // Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {

  .navbar-brand img {
    max-width: 240px;
  }
  #navbar-main {
    top: 15px;
  }
  #navbar-top .region-top-header{
    display: block;
    padding-right: 0;
  }
}

/* // Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {

  .highlighted .block-commerce-cart {
    display: none;
  }
  .views-view-grid .views-col {
    width: 25% !important;
  }
  .sidebar_first.collapsible {
    position: relative;
  }
  .sidebar_first.collapsible.open {
    width: 25%;
  }
  .site-footer__top .region {
    width: 50%;
  }
  #content {
    padding-left: calc(var(--bs-gutter-x) * .5);
  }
}

/* // Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
  #navbar-main {
    display: block;
    color: var(--color-primary-text);
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    margin-top: 1rem;
    border-top: 1px solid #e6e7e9;
    border-bottom: 1px solid #e6e7e9;
    position: relative;
    top: unset;
    right: unset;
  }
  .navbar-form {
    max-width: 520px;
  }
  .bef-exposed-form .form-item-keyword {
    max-width: 300px;
    float: left;
    width: 100%;
    flex: 1 0 0%;
  }
  .main-content .block-views-exposed-filter-blockshop-page-1 .form-item-keyword {
    display: inline-block;
  }
}

/* // X-Large devices (large desktops, 1200px and up) */
@media (max-width: 520px) {
  #content {
    padding: calc(var(--bs-gutter-x) * .5);
  }
  .flexslider .slides {
    /* width: 100% !important; */
  }
  .flexslider .slides > li > div{
    /* width: 100% !important; */
    padding: 0;
  }
  #block-copyright-2 {
    padding: 1rem;
  }
  .site-footer__bottom,
  .site-footer__bottom .region {
    margin-top: 0;
  }
  #main-content .block h2 {
    font-size: 30px;
  }
  .field--type-entity-reference .card {
    padding: 0;
  }
  .row .col-xs-6 {
    width: 50%;
  }
}
@media (max-width: 800px) {
  
}
@media (max-width: 1199px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl {
    max-width: 100%;
  }
}
@media (min-width: 1200px) {
  .bef-exposed-form .form-item-keyword {
    max-width: 500px;
  }
}

/* // XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {
  /*
  .card-block:hover .flag-shopping-list {
    opacity: 1;
  }
  .flag-shopping-list a {
    transition: transform 0.3s;
    transform: translateX(0);
    transition-delay: 0;
  }
  .card-block:hover .flag-shopping-list a {
    transform: translateX(10px);
  } */
}
