/*
 * Modes & Plaisirs Prestacrea
 * Dark boutique design inspired by compact Prestacrea-style storefronts.
 */

:root {
  --mpa-black: #0f0f10;
  --mpa-wood: #18191a;
  --mpa-panel: #232323;
  --mpa-panel-soft: #303030;
  --mpa-white: #ffffff;
  --mpa-cream: #f8f3f0;
  --mpa-text: #2b2b2b;
  --mpa-muted: #777;
  --mpa-pink: #ff3d91;
  --mpa-pink-dark: #d61f70;
  --mpa-pink-soft: #ffe2f0;
  --mpa-border: #e5e5e5;
  --mpa-shadow: 0 20px 50px rgba(0, 0, 0, .34);
}

body {
  background-color: var(--mpa-black);
  background-image:
    linear-gradient(180deg, rgba(0, 0, 0, .16), rgba(0, 0, 0, .34)),
    url("../img/dark-wood-background.png");
  background-attachment: fixed;
  background-position: center top;
  background-repeat: repeat;
  background-size: 760px auto;
  color: var(--mpa-text);
}

a {
  color: var(--mpa-pink-dark);
}

a:hover,
a:focus {
  color: var(--mpa-pink);
}

.container {
  max-width: 1120px;
}

#wrapper {
  background: transparent;
  box-shadow: none;
  padding-top: 0;
}

#wrapper .container,
.page-home #content,
#main {
  background: var(--mpa-white);
}

#wrapper > .container {
  box-shadow: var(--mpa-shadow);
  padding-bottom: 1.5rem;
}

#header {
  background: rgba(15, 15, 16, .92);
  box-shadow: none;
  color: var(--mpa-white);
}

#header .header-nav {
  background: rgba(20, 20, 21, .84);
  border-bottom: 1px solid rgba(255, 255, 255, .10);
  color: var(--mpa-white);
  max-height: none;
}

#header .header-top {
  background: rgba(15, 15, 16, .92);
  border-bottom: 0;
  padding: 1rem 0 .35rem;
}

#header .header-nav .container,
#header .header-top .container {
  background: transparent;
}

#header a,
#header .material-icons,
#header .user-info a,
#header .language-selector,
#header .currency-selector {
  color: var(--mpa-white);
}

#header a:hover,
#header a:focus {
  color: var(--mpa-pink);
}

#header .logo {
  max-height: 72px;
  width: auto;
}

#header .top-menu {
  background: linear-gradient(180deg, #2d2d2e, #171718);
  border-top: 1px solid rgba(255, 255, 255, .10);
  border-bottom: 3px solid var(--mpa-pink);
  display: flex;
  justify-content: center;
  margin-top: .9rem;
  padding: 0;
}

#header .top-menu a {
  color: var(--mpa-white);
  display: block;
  font-weight: 700;
  letter-spacing: 0;
  padding: .85rem .95rem;
  text-transform: uppercase;
}

#header .top-menu a:hover,
#header .top-menu .current a,
#header .top-menu .category.current a {
  background: var(--mpa-pink);
  color: var(--mpa-white);
  text-decoration: none;
}

#header .top-menu .sub-menu,
#header .popover,
#header .dropdown-menu {
  background: var(--mpa-white);
  border: 1px solid var(--mpa-border);
  border-radius: 0;
  box-shadow: 0 18px 42px rgba(0, 0, 0, .28);
}

#header .top-menu .sub-menu a,
#header .popover a,
#header .dropdown-menu a {
  color: var(--mpa-text);
}

#search_widget form input[type=text] {
  background: var(--mpa-white);
  border: 1px solid var(--mpa-border);
  border-radius: 0;
  color: var(--mpa-text);
  min-height: 40px;
}

#search_widget form input[type=text]:focus {
  border-color: var(--mpa-pink);
  box-shadow: 0 0 0 .12rem rgba(255, 61, 145, .20);
}

#search_widget form button[type=submit] {
  background: var(--mpa-pink);
  color: var(--mpa-white);
  height: 100%;
  right: 0;
}

#_desktop_cart .cart-preview,
#_mobile_cart .cart-preview,
#header .header-nav .cart-preview,
#header .header-nav .cart-preview.active,
#header .header-nav .cart-preview.inactive {
  background: transparent;
  color: var(--mpa-white);
}

#_desktop_cart .cart-preview a,
#_desktop_cart .cart-preview span,
#_desktop_cart .cart-preview .material-icons,
#_mobile_cart .cart-preview a,
#_mobile_cart .cart-preview span,
#_mobile_cart .cart-preview .material-icons,
#header .header-nav .cart-preview a,
#header .header-nav .cart-preview span,
#header .header-nav .cart-preview .material-icons,
#header .header-nav .cart-preview .shopping-cart {
  color: var(--mpa-white) !important;
}

#_desktop_cart .cart-preview .material-icons,
#_mobile_cart .cart-preview .material-icons {
  color: var(--mpa-pink) !important;
}

.breadcrumb {
  background: var(--mpa-white);
  border-bottom: 1px solid var(--mpa-border);
  color: var(--mpa-muted);
  margin: 0;
  padding: .85rem 1rem;
}

.breadcrumb a {
  color: var(--mpa-muted);
}

.page-home #content,
#content-wrapper,
#left-column,
#right-column {
  background: transparent;
}

.carousel,
.banner,
#custom-text {
  background: var(--mpa-white);
  box-shadow: none;
  margin-bottom: 1.25rem;
}

.carousel img,
.banner img,
#custom-text img,
.page-home #content img {
  border-radius: 0;
  box-shadow: none;
  height: auto;
  max-width: 100%;
}

#custom-text {
  border: 0;
  padding: 0;
}

#custom-text ul,
#custom-text ol {
  list-style-position: inside;
  padding-left: 0;
}

#custom-text li {
  margin-bottom: 1rem;
}

.featured-products h2,
.products-section-title,
.page-heading,
.h1,
h1 {
  color: var(--mpa-panel);
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}

.featured-products h2,
.products-section-title {
  border-bottom: 3px solid var(--mpa-pink);
  font-size: 1.55rem;
  margin: 1.4rem auto 1.2rem;
  max-width: 900px;
  padding-bottom: .45rem;
  text-align: left;
}

.product-miniature .thumbnail-container {
  background: var(--mpa-white);
  border: 1px solid var(--mpa-border);
  border-radius: 0;
  box-shadow: none;
  overflow: hidden;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.product-miniature:hover .thumbnail-container {
  border-color: var(--mpa-pink);
  box-shadow: 0 10px 28px rgba(255, 61, 145, .18);
  transform: translateY(-2px);
}

.product-miniature .highlighted-informations {
  background: linear-gradient(180deg, rgba(55, 55, 55, .96), rgba(25, 25, 25, .96));
}

.product-miniature .highlighted-informations a {
  color: var(--mpa-white);
  font-weight: 700;
}

.product-miniature .product-title a,
.product-title a {
  color: var(--mpa-text);
  font-weight: 700;
}

.product-miniature .product-title a:hover,
.product-title a:hover {
  color: var(--mpa-pink);
}

.product-price,
.current-price,
.current-price-value,
.product-miniature .product-price-and-shipping {
  color: var(--mpa-pink);
  font-weight: 800;
}

.product-flags li.product-flag,
.product-flag,
.discount-percentage,
.discount-amount,
.label {
  background: var(--mpa-pink);
  border-radius: 0;
  color: var(--mpa-white);
  font-weight: 800;
}

.btn-primary,
.add-to-cart,
.product-add-to-cart .btn-primary,
.cart-detailed-actions .btn-primary,
button.btn-primary {
  background: var(--mpa-pink);
  border: 0;
  border-radius: 0;
  color: var(--mpa-white);
  font-weight: 800;
  min-height: 42px;
  text-transform: uppercase;
}

.btn-primary:hover,
.add-to-cart:hover,
.product-add-to-cart .btn-primary:hover,
.cart-detailed-actions .btn-primary:hover,
button.btn-primary:hover {
  background: var(--mpa-pink-dark);
  color: var(--mpa-white);
}

.btn-secondary,
.btn-tertiary {
  border-radius: 0;
  font-weight: 700;
}

.block-categories,
#search_filters,
.card,
.page-content,
.block-category,
.tabs,
.cart-summary,
.cart-grid-body .card,
.cart-grid-right .card {
  border: 1px solid var(--mpa-border);
  border-radius: 0;
  box-shadow: none;
}

.block-categories .category-top-menu > li > a,
#search_filters .facet .facet-title,
.block-categories .h6,
#search_filters .h6 {
  background: linear-gradient(180deg, #444, #1e1e1f);
  color: var(--mpa-white);
  display: block;
  font-weight: 700;
  margin: -.9375rem -.9375rem .75rem;
  padding: .65rem .85rem;
}

.block-categories a,
#search_filters a,
#search_filters label {
  color: var(--mpa-text);
}

.block-categories a:hover,
#search_filters a:hover {
  color: var(--mpa-pink);
}

.product-cover,
.images-container .thumb-container .thumb {
  border: 1px solid var(--mpa-border);
  border-radius: 0;
  box-shadow: none;
}

.tabs .nav-tabs {
  border-bottom: 1px solid var(--mpa-border);
}

.tabs .nav-tabs .nav-link.active,
.tabs .nav-tabs .nav-link:hover {
  border-bottom-color: var(--mpa-pink);
  color: var(--mpa-pink);
}

input[type=text],
input[type=email],
input[type=password],
input[type=tel],
input[type=number],
textarea,
select,
.form-control,
.custom-select {
  border: 1px solid var(--mpa-border);
  border-radius: 0;
  min-height: 40px;
}

input:focus,
textarea:focus,
select:focus,
.form-control:focus,
.custom-select:focus {
  border-color: var(--mpa-pink);
  box-shadow: 0 0 0 .12rem rgba(255, 61, 145, .20);
}

#footer {
  background: transparent;
  color: var(--mpa-white);
  margin-top: 2rem;
}

#footer .footer-container {
  background: rgba(20, 20, 21, .94);
  border-top: 3px solid var(--mpa-pink);
  box-shadow: var(--mpa-shadow);
}

#footer .footer-container .container {
  background: transparent;
}

#footer a {
  color: var(--mpa-white);
}

#footer a:hover,
#footer a:focus {
  color: var(--mpa-pink);
}

#footer .h3,
#footer .h4,
#footer .block-contact-title,
#footer .myaccount-title a,
#footer .links .h3 {
  color: var(--mpa-pink);
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 800;
  text-transform: none;
}

.block_newsletter {
  background: transparent;
  border: 0;
  color: var(--mpa-white);
  padding: 0;
}

.block_newsletter #block-newsletter-label,
.block_newsletter .h3,
.block_newsletter .h4,
.block_newsletter h2,
.block_newsletter h3,
.block_newsletter p {
  color: var(--mpa-white);
}

.block_newsletter .conditions,
.block_newsletter .conditions p,
.block_newsletter .gdpr_consent,
.block_newsletter .custom-checkbox label {
  color: rgba(255, 255, 255, .72);
}

.block_newsletter form input[type=email] {
  background: var(--mpa-white);
  color: var(--mpa-text);
}

.block_newsletter .btn,
.block_newsletter button {
  background: var(--mpa-pink);
  border: 0;
  border-radius: 0;
  color: var(--mpa-white);
  font-weight: 800;
}

.block-social ul li {
  border-radius: 0;
  box-shadow: none;
  opacity: 1;
}

.block-social ul li.facebook {
  background-color: #1877f2 !important;
}

.block-social ul li.twitter {
  background-color: #1da1f2 !important;
}

.block-social ul li.pinterest {
  background-color: #bd081c !important;
}

.block-social ul li.instagram {
  background-color: #e4405f !important;
}

.block-social ul li.youtube {
  background-color: #ff0000 !important;
}

.block-social ul li a {
  color: transparent !important;
}

.footer-container .links ul > li {
  border-bottom: 0;
}

.footer-container .links ul > li a {
  color: var(--mpa-white);
}

.footer-container .links ul > li a::before {
  color: var(--mpa-pink);
  content: ">";
  display: inline-block;
  font-weight: 800;
  margin-right: .45rem;
}

@media (min-width: 1200px) {
  .featured-products .products,
  .product-accessories .products {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .featured-products .products > *,
  .product-accessories .products > * {
    flex: none;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: auto;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  body {
    background-size: 680px auto;
  }

  .featured-products .products,
  .product-accessories .products {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .featured-products .products > *,
  .product-accessories .products > * {
    flex: none;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: auto;
  }

  .featured-products h2,
  .products-section-title {
    font-size: 1.35rem;
  }

  #footer .footer-container .links .title,
  #footer .footer-container .links .h3,
  #footer .footer-container .links .h3 a,
  #footer .footer-container .myaccount-title a,
  #footer .footer-container .block-contact-title {
    color: var(--mpa-pink) !important;
  }

  #footer .footer-container .links ul,
  #footer .footer-container .links ul > li {
    background: transparent !important;
  }

  #footer .footer-container .links ul > li a,
  #footer .footer-container .block-contact,
  #footer .footer-container .block-contact a {
    color: var(--mpa-white) !important;
  }
}

@media (max-width: 767px) {
  body {
    background-attachment: scroll;
    background-size: 620px auto;
  }

  #wrapper > .container {
    box-shadow: none;
  }

  #header .header-top {
    padding: .6rem 0;
  }

  #header .logo {
    max-height: 50px;
  }

  #mobile_top_menu_wrapper {
    background: var(--mpa-black);
    border-top: 2px solid var(--mpa-pink);
  }

  #mobile_top_menu_wrapper .top-menu a {
    border-bottom: 1px solid rgba(255, 255, 255, .10);
    color: var(--mpa-white);
    padding: .8rem 0;
  }

  #search_widget,
  #search_widget form input[type=text] {
    width: 100%;
  }

  .featured-products h2,
  .products-section-title {
    font-size: 1.25rem;
    line-height: 1.2;
  }

  .featured-products .products,
  .product-accessories .products {
    display: grid;
    gap: 1rem;
    grid-template-columns: 1fr;
  }

  .featured-products .products > *,
  .product-accessories .products > * {
    flex: none;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: auto;
  }

  .btn-primary,
  .add-to-cart,
  .product-add-to-cart .btn-primary,
  .cart-detailed-actions .btn-primary,
  button.btn-primary {
    white-space: normal;
    width: 100%;
  }

  #footer .footer-container .links .title {
    background: rgba(255, 255, 255, .07);
    border: 1px solid rgba(255, 61, 145, .30);
    color: var(--mpa-white) !important;
    margin-bottom: .45rem;
  }

  #footer .footer-container .links .title .h3,
  #footer .footer-container .links .title .h3 a,
  #footer .footer-container .links .title span,
  #footer .footer-container .links .title .material-icons,
  #footer .footer-container .links .navbar-toggler {
    color: var(--mpa-white) !important;
  }

  #footer .footer-container .links .title .collapse-icons .add,
  #footer .footer-container .links .title .collapse-icons .remove {
    color: var(--mpa-pink) !important;
  }

  #footer .footer-container .links ul {
    background: rgba(255, 255, 255, .04) !important;
    border: 1px solid rgba(255, 255, 255, .10);
    margin-bottom: .9rem;
  }

  #footer .footer-container .links ul > li {
    background: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, .10);
  }

  #footer .footer-container .links ul > li a {
    color: var(--mpa-white) !important;
  }
}
