/* STRUTURE */
.dvore-product-view-simple-1,
.dvore-product-view-multiple-1,
.dvore-product-view-subscription-1 {
  display: grid;
  grid-column-gap: 50px;
  grid-template-columns: 50% 1fr 1fr 1fr 100px;
  grid-auto-rows: 1fr;
  padding: 50px 50px;
  max-width: 1300px;
  width: 100%;
  margin: 0 auto;
  font-size: 14px;
}
.dvore-product-view-simple-1 {
  grid-template-areas:
    "breadcrumb breadcrumb breadcrumb breadcrumb breadcrumb"
    "images titles titles titles brands"
    "images collections collections collections collections"
    "images price price price price"
    "images variants variants variants variants"
    "images cta cta cta cta"
    "images table table table table"
    "images description description description description"
    "images file file file file"
    "images tags tags tags tags"
    "images addthis addthis addthis addthis";
    grid-template-rows: repeat(11, min-content);
}
.dvore-product-view-multiple-1 {
  grid-template-areas:
    "breadcrumb breadcrumb breadcrumb breadcrumb breadcrumb"
    "images titles titles titles brands"
    "images collections collections collections collections"
    "images price price price price"
    "images variants variants variants variants"
    "images cta cta cta cta"
    "images table table table table"
    "images description description description description"
    "images file file file file"
    "images tags tags tags tags"
    "images addthis addthis addthis addthis";
  grid-template-rows: repeat(10, min-content);
}
.dvore-product-view-subscription-1 {
  grid-template-areas:
    "breadcrumb breadcrumb breadcrumb"
    "images titles brands"
    "images collections brands"
    "images price brands"
    "images variants variants"
    "images cta cta"
    "images description description"
    "images file file"
    "images button button"
    "images tags tags"
    "images addthis addthis";
  grid-template-rows: repeat(8, min-content);
}
.dvore-product-view-breadcrumbs {
  grid-area: breadcrumb;
  margin-bottom: 10px;
}
.dvore-product-view-images {
  grid-area: images;
  position: relative;
}
.dvore-product-view-titles-container {
  grid-area: titles;
}
.dvore-product-view-description {
  grid-area: description;
  line-height: 1.5;
}
.dvore-product-view-variants {
  grid-area: variants;
}
.dvore-product-view-cta {
  grid-area: cta;
}
.dvore-product-view-price {
  grid-area: price;
}
.dvore-product-view-file-attributes {
  grid-area: file;
}

.dvore-product-view-button {
  grid-area: button;
  margin-top: 20px;
}
.dvore-product-view-add-this {
  grid-area: addthis;
}
.dvore-product-view-attributes-table {
  grid-area: table;
}
.dvore-product-view-button .dvore-product-view-button-status {
  margin-bottom: 10px;
}
/* END STRUTURE */

/* CUSTOMIZATION */

.dvore-product-view-title {
  font-size: 30px;
  font-family: var(--font-title);
  margin-bottom: 10px;
}
.dvore-product-view-product-sku {
  font-weight: normal;
  font-size: 18px;
}

.dvore-product-view-variants {
  padding: 20px 0 0 0;
  margin: 20px 0 0 0;
  border-top: 1px solid var(--color-pale-grey);
}
.dvore-product-variants-color-title,
.dvore-product-variants-size-title,
.dvore-product-variants-material-title {
  font-size: 14px;
  font-weight: 800;
  font-family: var(--font-title);
  margin-bottom: 5px;
}
.dvore-product-variants-color-option,
.dvore-product-variants-size-option,
.dvore-product-variants-material-option {
  display: flex;
  flex-wrap: wrap;
}
.dvore-product-variants-color,
.dvore-product-variants-material {
  margin-bottom: 1.5rem;
}
.dvore-product-variants-color-option .dvore-product-variants-color-container {
  width: 40px;
  height: 40px;
  position: relative;
  margin-right: 10px;
  transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  border: 3px solid var(--color-white);
  outline: 1px solid var(--color-pale-grey);
}
.dvore-product-variants-color-option
  .dvore-product-variants-color-container.active {
  outline: 1px solid var(--color-dark);
}
.dvore-product-variants-color-option
  .dvore-product-variants-color-container:hover {
  outline-color: var(--color-dark);
}
.dvore-product-variants-size-option .dvore-product-variants-size-container,
.dvore-product-variants-material-option
  .dvore-product-variants-material-container {
  position: relative;
  border: 1px solid var(--color-dark);
  color: var(--color-dark);
  margin-right: 10px;
  transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
}
.dvore-product-variants-size-option
  .dvore-product-variants-size-container.active,
.dvore-product-variants-material-option
  .dvore-product-variants-material-container.active {
  background-color: var(--color-dark);
  color: var(--color-white);
}
.dvore-product-variants-size-option
  .dvore-product-variants-size-container:hover,
.dvore-product-variants-material-option
  .dvore-product-variants-material-container:hover {
  background-color: var(--color-dark);
  color: var(--color-white);
}
.dvore-product-variants-color-option
  .dvore-product-variants-color-container
  input,
.dvore-product-variants-size-option
  .dvore-product-variants-size-container
  input,
.dvore-product-variants-material-option
  .dvore-product-variants-material-container
  input {
  position: absolute;
  top: 0;
  left: 0;
  display: none;
  visibility: hidden;
}
.dvore-product-variants-color-option .dvore-product-variants-color-btn,
.dvore-product-variants-size-option .dvore-product-variants-size-btn,
.dvore-product-variants-material-option .dvore-product-variants-material-btn {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 10px;
  cursor: pointer;
}
.dvore-product-variants-size-option .dvore-product-variants-size-btn,
.dvore-product-variants-material-option .dvore-product-variants-material-btn {
  min-width: 40px;
  text-align: center;
}
.dvore-product-view-simple-1 .dvore-product-view-cta,
.dvore-product-view-multiple-1 .dvore-product-view-cta {
  display: grid;
  grid-gap: 15px;
  width: 100%;
  align-items: center;
  padding: 20px 0 20px 0;
  margin: 20px 0 20px 0;
  border-bottom: 1px solid var(--color-pale-grey);
  border-top: 1px solid var(--color-pale-grey);
  grid-template-columns: min-content 1fr;
}
.dvore-product-view-subscription-1 .dvore-product-view-cta {
  border-bottom: 1px solid var(--color-pale-grey);
  border-top: 1px solid var(--color-pale-grey);
  padding: 20px 0 20px 0;
  margin: 20px 0 20px 0;
}
.dvore-product-view-subscription-1
  .dvore-product-view-cta
  .dvore-product-view-cart {
  margin-top: 20px;
}
.dvore-product-view-cta .dvore-product-view-oos {
  font-weight: 800;
  font-size: 1.2rem;
  grid-column: 1/3;
}
.dvore-product-view-file-attributes {
  padding: 20px 0 0 0;
  margin: 20px 0 0 0;
  border-top: 1px solid var(--color-pale-grey);
}
.dvore-product-view-file-attributes > .btn {
  position: relative;
  padding-left: 40px;
}
.dvore-product-view-file-attributes > .btn {
  margin: 5px;
}
.dvore-product-view-file-attributes > .btn:before {
  position: absolute;
  content: "\f0ed";
  font-family: "Font Awesome 5 Pro";
  font-size: 16px;
  left: 15px;
  line-height: 22px;
}
.dvore-product-view-attributes-table .table td {
 border-top: none;
 border-bottom: 1px solid var(--color-pale-grey); 
 vertical-align: middle;
 line-height: 1.25;
}
.dvore-product-view-attributes-table .table td:first-child {
    display: flex;
    align-items: center;
    font-weight: 800;
    color: var(--color-dark);
}
.dvore-product-view-attributes {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
}
.dvore-product-view-attributes > img {
    max-width: 100px;
    display: block;
    margin-left: 25px;
    margin-bottom: 10px;
}
.dvore-product-view-attributes > img:first-child {
    margin-left: 0;
}
.dvore-product-view-attributes-table table img {
    max-width: 30px;
    margin-right: 10px;
}
/* END CUSTOMIZATION */

/* TAGS */
.dvore-product-view-tags {
  grid-area: tags;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin: 20px 0 0 0;
  padding: 20px 0 0 0;
  border-top: 1px solid var(--color-pale-grey);
  height: fit-content;
}
.dvore-product-view-tags .dvore-product-tag > a:hover {
  color: var(--color-dark);
  border-color: var(--color-dark);
}
.dvore-product-view-tags .dvore-product-tag > a {
  display: block;
  padding: 5px;
  border: 1px solid var(--color-pale-grey-darken);
  color: var(--color-pale-grey-darken);
  font-size: 0.8em;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  transition: all 0.2s ease-out;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
}
.dvore-product-view-tags .dvore-product-tag {
  margin: 5px 0;
}
.dvore-product-view-tags .dvore-product-tag:not(:last-child) {
  margin-right: 10px;
}
/* END TAGS */

/* ADDTHIS */
.dvore-product-view-add-this {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--color-pale-grey);
}
/* END ADDTHIS */
.dvore-product-view-breadcrumbs .dvore-front-product-breadcrumbs, .dvore-product-view-breadcrumbs .dvore-breadcrumbs {
  padding: 20px 0;
}
.dvore-breadcrumbs a,
.breadcrumb-item+.breadcrumb-item::before {
  color: var(--color-dark);
}
.dvore-breadcrumbs a:hover {
  color: var(--color-primary);
}
/* COLLECTIONS */
.dvore-product-view-collections {
  grid-area: collections;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 10px 0;
}
.dvore-product-view-collections .dvore-product-collection {
  padding: 0 0 5px 0;
  border-bottom: 1px solid var(--color-dark);
  font-size: 0.8em;
}
.dvore-product-view-collections .dvore-product-collection > a {
  color: var(--color-dark);
}
.dvore-product-view-collections .dvore-product-collection:not(:last-child) {
  margin-right: 10px;
}
/* END COLLECTIONS */

/* BRANDS */
.dvore-product-view-brands {
  grid-area: brands;
  display: flex;
  flex-wrap: wrap;
  justify-self: flex-end;
  align-self: center;
}
.dvore-product-view-brands img {
  max-width: 100px;
  width: auto;
}
.dvore-product-view-brands img:not(:first-child) {
  margin-left: 10px;
}
/* END BRANDS */

/* PRODUCT STATE */
.dvore-product-state {
  position: absolute;
  top: 20px;
  left: -10px;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: calc(100% + 20px);
}
.dvore-product-state > div:not(:last-child) {
  margin-bottom: 5px;
}
.dvore-product-state a {
  color: var(--color-white);
}
.dvore-product-state a:hover {
  color: var(--color-white);
}
.dvore-product-state .dvore-product-state-new-product,
.dvore-product-state .dvore-product-state-featured-product {
  margin-right: auto;
}
.dvore-product-state .dvore-product-state-new-product,
.dvore-product-state .dvore-product-state-featured-product {
  padding: 10px;
  font-size: 1.2em;
  background-color: var(--color-error);
  color: var(--color-white);
}
.dvore-product-state.dvore-product-state-2 {
  left: -30px;
  top: 10px;
}
.dvore-product-state-2 .dvore-product-state-promotion {
  margin-left: auto;
  background-color: var(--color-error);
  padding: 5px;
  border-radius: 50%;
  width: 75px;
  height: 75px;
  font-size: 12px;
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
  -ms-flex-align: center !important;
  align-items: center !important;
  -webkit-box-pack: center !important;
  -webkit-justify-content: center !important;
  -ms-flex-pack: center !important;
  justify-content: center !important;
  flex-direction: column !important;
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: normal !important;
  -webkit-flex-direction: column !important;
  -ms-flex-direction: column !important;
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
}
.dvore-product-state-2
  .dvore-product-state-promotion
  .dvore-product-state-promotion-name,
.dvore-product-state-2
  .dvore-product-state-promotion
  .dvore-product-state-promotion-amount {
  color: var(--color-white);
}
.dvore-product-state-2
  .dvore-product-state-promotion
  .dvore-product-state-promotion-name {
  margin-bottom: 0.125rem;
}
.dvore-product-state-2
  .dvore-product-state-promotion
  .dvore-product-state-promotion-amount {
  font-size: 1.25rem;
}
.dvore-product-view-price .dvore-product-price-regular-price {
  text-decoration: line-through;
  font-size: 80%;
  font-weight: 300;
}
.dvore-product-view-price .dvore-product-price-promo-price {
  margin-left: 10px;
  color: var(--color-error);
}
/* END PRODUCT STATE */

/* RELATED PRODUCTS */
.dvore-product-view-related-products {
  max-width: 1300px;
  width: 100%;
  margin: 0 auto;
  padding: 0px 50px;
}
/*.dvore-product-view-related-product-container {
  padding: 50px 50px;
  max-width: 1300px;
  width: 100%;
  margin: 0 auto;
  border-top: 1px solid var(--color-pale-grey);
}
.dvore-product-view-related-product-container-title {
  display: block;
  font-size: 30px;
  font-family: var(--font-title);
  color: var(--color-dark);
  margin-bottom: 1rem;
}
.dvore-product-list-container {
  padding-bottom: 0 !important;
}*/
/* END RELATED PRODUCTS */

/* PROMOTION */
.dvore-product-view-price {
  font-size: 18px;
  margin: 5px 0;
  display: flex;
  flex-direction: row;
  margin: 10px 0 0;
}
.dvore-product-view-price .dvore-product-view-detailed-price {
  display: flex;
  flex-direction: column;
  margin-right: 25px;
  font-weight: 100;
}
.dvore-product-view-price .dvore-product-view-detailed-price:last-child {
    margin-right: 0;
}
.dvore-product-view-price .dvore-product-view-detailed-price > span:first-child {
    font-size: 1rem;
    margin-bottom: 5px;
}
.dvore-product-view-price .dvore-product-view-second-price-2 {
  font-weight: 800;
  color: var(--color-dark);
}
.dvore-product-view-price .dvore-product-list-price-regular-price {
  text-decoration: line-through;
  font-size: 80%;
  font-weight: 300;
}
.dvore-product-view-price .dvore-product-list-price-promo-price {
  color: var(--color-error);
  margin: 10px 0;
}
.dvore-product-view-attributes-table table tr td:first-child {
    min-width: 150px;
}
/* END PROMOTION */


/* TABULATIONS */
.dvore-product-view-informations{
  display: none !important;
}
/* END TABULATIONS */

/* RESPONSIVE */
@media (max-width: 991px) {
  .dvore-product-view-simple-1,
  .dvore-product-view-multiple-1 {
    padding: 25px;
    grid-column-gap: 25px;
  }
  .dvore-product-view-images {
    margin: 20px 0;
  }
  .dvore-product-view-info-container {
    padding: 0 0 0 25px;
  }
}
@media (max-width: 768px) {
  .dvore-product-view-file-attributes {
    margin: 0px 20px 0 20px;
    padding: 0;
    border-top: none;
  }
  .dvore-product-view-breadcrumbs {
    margin: 0 25px 10px 25px;
  }
  .dvore-product-state {
    width: 100%;
    left: 0;
  }
  .dvore-product-view-simple-1,
  .dvore-product-view-multiple-1 {
    grid-template-columns: auto;
    grid-auto-rows: inherit;
    padding: 25px 0;
  }
  .dvore-product-view-simple-1 {
    grid-template-areas:
      "breadcrumb breadcrumb"
      "titles titles"
      "collections collections"
      "price brands"
      "images images"
      "variants variants"
      "cta cta"
      "table table"
      "description description"
      "file file"
      "button button"
      "tags tags"
      "addthis addthis";
  }

  .dvore-product-view-multiple-1 {
    grid-template-areas:
      "breadcrumb breadcrumb"
      "titles titles"
      "collections collections"
      "price brands"
      "images images"
      "variants variants"
      "cta cta"
      "table table"
      "description description"
      "file file"
      "button button"
      "tags tags"
      "addthis addthis";
  }
  .dvore-product-view-images {
    width: 100%;
  }
  .dvore-product-view-info-container {
    width: 100%;
    padding: 0;
  }
  .dvore-product-view-description {
    border-bottom: 1px solid var(--color-pale-grey);
    margin-bottom: 20px;
    padding-bottom: 20px;
  }
  .dvore-product-view-title,
  .dvore-product-view-price,
  .dvore-product-view-description,
  .dvore-product-view-collections,
  .dvore-product-view-brands {
    margin-left: 25px;
    margin-right: 25px;
  }
  .dvore-product-view-variants {
    border-bottom: 1px solid var(--color-pale-grey);
    border-top: none;
    padding: 0px 0 20px 0;
    margin: 0px 25px 20px 25px;
  }
  .dvore-product-view-cta {
    border-top: none !important;
    margin: 0 25px 20px 25px !important;
    padding: 0 0 20px 0 !important;
    width: calc(100% - 45px) !important;
    display: flex !important;
    flex-wrap: wrap;
  }
  .dvore-product-view-tags {
    padding: 0;
    margin: 0 25px;
    border: none;
  }
  .dvore-product-view-add-this {
    margin: 10px 20px 0 20px;
  }
}

@media (max-width: 680px) {
  .dvore-product-view-brands {
    align-self: center;
    justify-self: flex-start;
    margin-bottom: 20px;
  }
  .dvore-product-view-brands img {
    max-height: 70px;
  }
  .dvore-product-view-simple-1 {
    grid-template-areas:
      "breadcrumb breadcrumb"
      "titles brands"
      "collections collections"
      "price price"
      "images images"
      "variants variants"
      "cta cta"
      "table table"
      "description description"
      "file file"
      "button button"
      "tags tags"
      "addthis addthis";
      grid-template-columns: auto 140px;
  }
  .dvore-product-view-multiple-1 {
    grid-template-areas:
      "breadcrumb"
      "brands"
      "titles"
      "collections"
      "price"
      "images"
      "cta"
      "description"
      "file"
      "button"
      "variants"
      "tags"
      "addthis";
  }
  .dvore-product-view-price .dvore-product-view-detailed-price {
    margin-right: 15px;
  }
  .dvore-product-view-title,
  .dvore-product-view-price,
  .dvore-product-view-description,
  .dvore-product-view-collections,
  .dvore-product-view-brands,
  .dvore-product-view-breadcrumbs {
    margin-left: 10px;
    margin-right: 10px;
  }
  .dvore-product-view-cta {
    margin: 0 10px 20px 10px !important;
    width: calc(100% - 20px) !important;
  }
  .dvore-product-view-title {
    font-size: 20px;
  }
}

@media (max-width: 480px) {
}

@media (max-width: 320px) {
  .dvore-product-view-cart {
    margin-top: 10px;
  }
  .dvore-product-view-cta {
    flex-direction: column;
  }
}
