.pull-left-xs {
  float: left; }

.pull-right-xs {
  float: right; }

@media (min-width: 544px) and (max-width: 768.98px) {
  .pull-left-sm {
    float: left; }
  .pull-right-sm {
    float: right; } }

@media (min-width: 769px) and (max-width: 991.98px) {
  .pull-left-md {
    float: left; }
  .pull-right-md {
    float: right; } }

@media (min-width: 992px) and (max-width: 1199.98px) {
  .pull-left-lg {
    float: left; }
  .pull-right-lg {
    float: right; } }

@media (min-width: 1200px) {
  .pull-left-xl {
    float: left; }
  .pull-right-xl {
    float: right; } }

@media (max-width: 543.98px) {
  .hidden-xs-down {
    display: none !important; } }

@media (max-width: 768.98px) {
  .hidden-sm-down {
    display: none !important; } }

@media (max-width: 991.98px) {
  .hidden-md-down {
    display: none !important; } }

@media (max-width: 1199.98px) {
  .hidden-lg-down {
    display: none !important; } }

.hidden-xl-down {
  display: none !important; }

.row.equal-height > [class^="col"] {
  display: flex; }

.swatch-circle-beige {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #f5f5dc;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-beige.disabled {
    opacity: 0.2; }

.swatch-filter-beige {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #f5f5dc;
  border-radius: 0.69em;
  background-color: #f5f5dc;
  display: block;
  position: relative; }
  .swatch-filter-beige.disabled {
    opacity: 0.2; }

.swatch-circle-black {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #000;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-black.disabled {
    opacity: 0.2; }

.swatch-filter-black {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #000;
  border-radius: 0.69em;
  background-color: #000;
  display: block;
  position: relative; }
  .swatch-filter-black.disabled {
    opacity: 0.2; }

.swatch-circle-blue {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #0070d2;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-blue.disabled {
    opacity: 0.2; }

.swatch-filter-blue {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #0070d2;
  border-radius: 0.69em;
  background-color: #0070d2;
  display: block;
  position: relative; }
  .swatch-filter-blue.disabled {
    opacity: 0.2; }

.swatch-circle-brown {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #a52a2a;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-brown.disabled {
    opacity: 0.2; }

.swatch-filter-brown {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #a52a2a;
  border-radius: 0.69em;
  background-color: #a52a2a;
  display: block;
  position: relative; }
  .swatch-filter-brown.disabled {
    opacity: 0.2; }

.swatch-circle-green {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #008827;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-green.disabled {
    opacity: 0.2; }

.swatch-filter-green {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #008827;
  border-radius: 0.69em;
  background-color: #008827;
  display: block;
  position: relative; }
  .swatch-filter-green.disabled {
    opacity: 0.2; }

.swatch-circle-grey {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #8f979d;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-grey.disabled {
    opacity: 0.2; }

.swatch-filter-grey {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #8f979d;
  border-radius: 0.69em;
  background-color: #8f979d;
  display: block;
  position: relative; }
  .swatch-filter-grey.disabled {
    opacity: 0.2; }

.swatch-circle-navy {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #000080;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-navy.disabled {
    opacity: 0.2; }

.swatch-filter-navy {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #000080;
  border-radius: 0.69em;
  background-color: #000080;
  display: block;
  position: relative; }
  .swatch-filter-navy.disabled {
    opacity: 0.2; }

.swatch-circle-orange {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #ffa500;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-orange.disabled {
    opacity: 0.2; }

.swatch-filter-orange {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #ffa500;
  border-radius: 0.69em;
  background-color: #ffa500;
  display: block;
  position: relative; }
  .swatch-filter-orange.disabled {
    opacity: 0.2; }

.swatch-circle-pink {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #fe249a;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-pink.disabled {
    opacity: 0.2; }

.swatch-filter-pink {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #fe249a;
  border-radius: 0.69em;
  background-color: #fe249a;
  display: block;
  position: relative; }
  .swatch-filter-pink.disabled {
    opacity: 0.2; }

.swatch-circle-purple {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #800080;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-purple.disabled {
    opacity: 0.2; }

.swatch-filter-purple {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #800080;
  border-radius: 0.69em;
  background-color: #800080;
  display: block;
  position: relative; }
  .swatch-filter-purple.disabled {
    opacity: 0.2; }

.swatch-circle-red {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #f00;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-red.disabled {
    opacity: 0.2; }

.swatch-filter-red {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #f00;
  border-radius: 0.69em;
  background-color: #f00;
  display: block;
  position: relative; }
  .swatch-filter-red.disabled {
    opacity: 0.2; }

.swatch-circle-white {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #fff;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-white.disabled {
    opacity: 0.2; }

.swatch-filter-white {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #fff;
  border-radius: 0.69em;
  background-color: #fff;
  display: block;
  position: relative; }
  .swatch-filter-white.disabled {
    opacity: 0.2; }

.swatch-circle-yellow {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #ff0;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-yellow.disabled {
    opacity: 0.2; }

.swatch-filter-yellow {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #ff0;
  border-radius: 0.69em;
  background-color: #ff0;
  display: block;
  position: relative; }
  .swatch-filter-yellow.disabled {
    opacity: 0.2; }

.swatch-circle-miscellaneous {
  background: linear-gradient(0deg, #821e91 0, #821e91 25%, #edd134 25%, yellow 50%, #edd134 50%, #59ba00 50%, #59ba00 76%, #111 76%, #111 100%), linear-gradient(0deg, #0e5cd1 0, #0e5cd1 50%, #e20b0b 50%, #e20b0b 100%);
  background-repeat: repeat-y, repeat;
  background-size: 50% 100%, 100% 100%;
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  border-radius: 1.25em;
  display: block;
  height: 2.5em;
  position: relative;
  transform: rotate(35deg);
  width: 2.5em; }
  .swatch-circle-miscellaneous.disabled {
    opacity: 0.2; }
  .swatch-circle-miscellaneous.selected::after {
    transform: rotate(-35deg); }

.product-detail .attributes .swatch-circle {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #fff;
  border-radius: 1.25em;
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  display: inline-block;
  margin-right: 0.313em;
  position: relative; }
  .product-detail .attributes .swatch-circle.color-value[data-selected=true]::after {
    color: #000;
    content: '\F058';
    display: table-caption;
    font-family: 'FontAwesome';
    font-size: 1.625em;
    left: 0.295em;
    position: absolute; }
  .product-detail .attributes .swatch-circle.color-value.selected::after {
    background: #fff;
    border-radius: 50%;
    color: #000;
    content: '\F058';
    display: table-caption;
    font-family: 'FontAwesome';
    font-size: 1.625em;
    height: 0.75em;
    left: 0.31em;
    line-height: 0.8em;
    position: absolute;
    top: 0.35em;
    width: 0.8em; }
  .product-detail .attributes .swatch-circle i.fa-times-circle {
    background: #fff;
    border-radius: 50%;
    height: 0.75em;
    line-height: 0.8em;
    width: 0.8em; }

.product-detail [disabled] .swatch-circle,
.product-detail .swatch-circle.unselectable {
  cursor: not-allowed; }
  .product-detail [disabled] .swatch-circle.color-value.selected::after,
  .product-detail .swatch-circle.unselectable.color-value.selected::after {
    background-color: #495057; }

label.color ~ a:hover {
  text-decoration: none; }

.description-and-detail {
  margin-top: 2em; }
  @media (max-width: 543.98px) {
    .description-and-detail {
      margin-top: 0; }
      .description-and-detail .title {
        font-size: 1.5rem;
        margin-bottom: 0;
        font-family: 'Dosis', sans-serif; }
      .description-and-detail > div:last-child {
        margin-bottom: 1em; } }
  @media (min-width: 544px) {
    .description-and-detail .description {
      margin-bottom: 2em; } }
  @media (max-width: 543.98px) {
    .description-and-detail .content {
      margin-top: 1em; } }

.social-container {
  padding-top: 0.9375em;
  text-align: center; }
  .social-container .social-icons {
    text-decoration: none;
    font-size: 1.875em;
    list-style-type: none;
    padding: 0;
    color: #444; }
    @media (max-width: 991.98px) {
      .social-container .social-icons {
        font-size: 1.5625em; } }
    .social-container .social-icons i,
    .social-container .social-icons a {
      color: #444;
      padding-right: 0.2em; }

label.availability {
  padding-right: 0.3125em; }

@media (min-width: 544px) {
  .product-number-rating {
    border-bottom: 1px solid #ccc; } }

@media (min-width: 769px) {
  .product-number-rating {
    border-top: 1px solid #ccc; } }

@media (min-width: 544px) and (max-width: 768.98px) {
  .product-name {
    border-bottom: 1px solid #ccc; } }

@media (min-width: 544px) {
  .product-number-rating .ratings {
    margin-top: 0.625em; } }

@media (max-width: 543.98px) {
  .product-number-rating .ratings {
    background-color: #fff;
    margin-top: -1.875em;
    /* 30/16 */
    margin-right: -0.9375em;
    /* 15/16 */
    padding: 0.1875em;
    /* 3/16 */ } }

.product-number {
  color: #ccc;
  font-size: 0.875em;
  padding-bottom: 0.938em;
  padding-top: 0.938em; }

.promotions {
  font-weight: normal;
  text-align: center;
  height: 85%; }
  .promotions div.collapsible-xl button.callout {
    font-size: 1.25em;
    padding-bottom: 1.25rem;
    padding-top: 1.25rem;
    color: #c00; }
    @media (min-width: 544px) {
      .promotions div.collapsible-xl button.callout {
        font-size: 1.375em; } }
    .promotions div.collapsible-xl button.callout::after {
      color: #000; }

.product-breadcrumb .breadcrumb {
  border-bottom: none;
  margin-left: -1rem;
  margin-bottom: 0; }
  @media (max-width: 991.98px) {
    .product-breadcrumb .breadcrumb {
      border-top: 1px solid #ccc; } }

.price {
  font-size: 1.5rem; }

.product-options {
  margin-top: 1.25em; }

.size-chart .size-chart-collapsible {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s;
  transition-timing-function: cubic-bezier(0, 1, 0, 1); }
  .size-chart .size-chart-collapsible.active {
    max-height: 100%;
    transition-timing-function: ease-in-out; }

.color-attribute {
  border: none;
  padding: 0;
  background: none; }

.non-input-label {
  display: block;
  margin-bottom: 0.5rem; }

@media (min-width: 769px) {
  .attributes {
    padding-left: 2.5rem;
    padding-right: 2.5rem; } }

@media (max-width: 543.98px) {
  .product-grid {
    padding-top: 0.938em; }
    .product-grid .col-6 {
      padding-left: 5px;
      padding-right: 5px; } }

/*	---------------------------------------------------------------
	PX to REM
	---------------------------------------------------------------
*/
/*	---------------------------------------------------------------
	Maps for styleguide and utility classes
	---------------------------------------------------------------
*/
.form-group.required .form-control-label::before {
  content: "*";
  color: #c00; }

.form-group > span:not(.info-icon) {
  font-size: 80%; }

.form-control {
  color: var(--color-grey6);
  background-color: var(--color-white); }

::-moz-placeholder, .form-control::-moz-placeholder {
  color: var(--color-grey5); }

::placeholder,
.form-control::placeholder {
  color: var(--color-grey5); }

.floating-label {
  position: relative;
  margin-bottom: 0.625rem; }
  .floating-label .form-control {
    height: 3.75rem; }
  .floating-label label {
    font-size: 0.875rem;
    position: absolute;
    top: 0.9375rem;
    left: 0.75rem;
    margin: 0;
    opacity: 0;
    transition: all .3s ease; }
  .floating-label input {
    transition: all .3s ease; }
    .floating-label input:-webkit-autofill, .floating-label input:not(:placeholder-shown) {
      padding: 1.5rem 2.25rem 0.375rem 0.75rem;
      color: var(--color-black); }
      .floating-label input:-webkit-autofill ~ label, .floating-label input:not(:placeholder-shown) ~ label {
        transform: translateY(-0.625rem);
        opacity: 0.7;
        color: var(--color-grey5); }
  .floating-label select {
    color: var(--color-grey5);
    transition: all .3s ease; }
  .floating-label.focused select {
    padding: 1.5rem 2.25rem 0.375rem 0.75rem;
    color: var(--color-black); }
    .floating-label.focused select + label {
      transform: translateY(-0.625rem);
      opacity: 0.7;
      color: var(--color-grey5); }

form.floating .btn-form-inline {
  height: calc(100% - 0.625rem); }

.container.product-detail {
  margin-top: 0; }
  @media (min-width: 769px) {
    .container.product-detail {
      margin-top: 1rem; } }

.pdp-top {
  margin-bottom: 0.625rem; }

.product-breadcrumb {
  border-bottom: 1px solid var(--color-grey3); }
  @media (min-width: 769px) {
    .product-breadcrumb {
      border: 0; } }
  @media (max-width: 991.98px) {
    .product-breadcrumb .breadcrumb {
      border: 0; } }

.product-number {
  padding-bottom: 0.25rem;
  padding-top: 0.875rem; }
  @media (min-width: 769px) {
    .product-number {
      padding-bottom: 0.875rem; } }

.product-name {
  font-size: calc(1.325rem + 0.9vw); }
  @media (max-width: 991.98px) {
    .product-name {
      border: 0; } }
  @media (min-width: 769px) {
    .product-name {
      font-size: 2.5rem; } }

div.promotions {
  padding-top: 1rem; }
  div.promotions div.collapsible-xl button.callout {
    display: flex;
    align-items: center;
    padding: 0;
    color: var(--skin-promo-color);
    font-size: 1rem;
    text-transform: none;
    font-weight: normal;
    line-height: 1; }
    div.promotions div.collapsible-xl button.callout:after {
      margin-left: 0.75rem; }
  div.promotions div.collapsible-xl .content {
    font-size: 0.875rem;
    text-align: left;
    margin-left: 1rem;
    margin-top: 0.625rem; }

.pdp-main {
  padding-bottom: 1rem; }
  @media (min-width: 769px) {
    .pdp-main {
      padding-bottom: 0; } }
  @media (min-width: 769px) {
    .pdp-main .attributes {
      padding: 0; } }
  .pdp-main .attributes .attribute {
    margin-bottom: 0.875rem;
    margin-top: 0; }

.pdp-bottom .description-and-detail h2.title {
  margin-bottom: 1.25rem;
  text-transform: none; }

.pdp-bottom .description-and-detail .btn.title {
  line-height: 1.5;
  padding: 0; }
  .pdp-bottom .description-and-detail .btn.title h2 {
    font-family: "Source Sans Pro", sans-serif;
    font-weight: 600;
    font-size: 1.5rem;
    text-transform: none;
    margin-bottom: 0; }

.pdp-bottom .description-and-detail .content {
  margin-top: 1rem; }
  @media (min-width: 769px) {
    .pdp-bottom .description-and-detail .content {
      margin-top: 0; } }

.short-description {
  font-size: calc(1.2625rem + 0.15vw);
  text-align: center; }
  @media (min-width: 992px) {
    .short-description {
      font-size: 1.375rem; } }

.long-description,
.product-attributes {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem; }
  @media (min-width: 769px) {
    .long-description,
    .product-attributes {
      padding-top: 3rem;
      padding-bottom: 3rem; } }

.product-attributes:not(:first-child) {
  border-top: 1px solid var(--color-grey6); }
  @media (min-width: 769px) {
    .product-attributes:not(:first-child) {
      border-top: 0; } }

.add-to-cart-global {
  overflow: visible; }

.product-bundle-detail .cart-and-ipay .button-block,
.product-set-detail .cart-and-ipay .button-block {
  display: flex;
  flex-direction: column; }

.product-bundle-detail .long-description,
.product-set-detail .long-description {
  padding-top: 0; }

.store-locator-container .btn-storelocator-search {
  background-color: #f9f9f9;
  border-color: var(--skin-primary-color-1);
  border-radius: 0;
  color: var(--skin-primary-color-1); }
  .store-locator-container .btn-storelocator-search:hover {
    background-color: var(--skin-primary-color-1);
    color: #f9f9f9; }

.store-locator-container .detect-location {
  margin-bottom: 1em; }

.store-locator-container .store-name {
  font-weight: 600; }

.store-locator-container .store-details {
  display: block; }
  @media (min-width: 769px) {
    .store-locator-container .store-details {
      margin-left: 3.125em; } }

.store-locator-container .striped > div:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05); }

.store-locator-container .search-form {
  width: 100%;
  margin-bottom: 4rem; }

@media (min-width: 544px) {
  .store-locator-container .select-store {
    margin-top: -3rem; } }

.store-locator-container .custom-radio .store-details {
  margin-left: 1.125em; }

.store-locator-container .store-locator-no-results {
  display: none; }

@media (min-width: 769px) {
  .store-locator-container .results {
    overflow-y: auto;
    overflow-x: hidden;
    max-height: 21.875em; } }

.in-store-inventory-dialog {
  max-width: 56.25em; }
  @media (min-width: 544px) {
    .in-store-inventory-dialog .mt-auto {
      margin-top: -2rem !important; } }
  @media (max-width: 543.98px) {
    .in-store-inventory-dialog .mt-auto {
      margin-top: 1.15em !important; } }

.btn-storelocator-search {
  background-color: #f9f9f9;
  border-color: #1782c5;
  border-radius: 0;
  color: #1782c5;
  margin-bottom: 1rem; }
  .btn-storelocator-search:hover {
    background-color: #1782c5;
    color: #f9f9f9; }

.store-name {
  font-weight: 600; }

.btn-get-in-store-inventory .btn-storelocator-search {
  margin-bottom: 0.625rem;
  display: block;
  width: 100%; }
  @media (min-width: 544px) {
    .btn-get-in-store-inventory .btn-storelocator-search {
      margin-top: 2rem;
      margin-bottom: 0; } }

.selected-store-with-inventory .change-store {
  margin: 0 1em 1em;
  width: auto; }

.display-none {
  display: none; }

.modal-header {
  background-color: #eee;
  border-bottom: 2px solid #ccc;
  border-top-left-radius: 0.1875rem;
  border-top-right-radius: 0.1875rem; }
  .modal-header .close {
    font-size: 2rem; }
    .modal-header .close span {
      font-size: 1rem;
      margin-right: 0.313em; }

.add-to-registry-message {
  transform: translate(-50%, -50%);
  position: fixed;
  top: 15%;
  left: 50%;
  z-index: 999; }

.add-to-registry-alert {
  animation: fade 5s linear forwards;
  box-shadow: 1px 1px 5px grey;
  padding: 1em;
  z-index: 999; }

@keyframes fade {
  0% {
    opacity: 0; }
  10% {
    opacity: 1; }
  90% {
    opacity: 1; }
  100% {
    opacity: 0; } }
  .add-to-registry-alert.show {
    display: block; }

.pull-left-xs {
  float: left; }

.pull-right-xs {
  float: right; }

@media (min-width: 544px) and (max-width: 768.98px) {
  .pull-left-sm {
    float: left; }
  .pull-right-sm {
    float: right; } }

@media (min-width: 769px) and (max-width: 991.98px) {
  .pull-left-md {
    float: left; }
  .pull-right-md {
    float: right; } }

@media (min-width: 992px) and (max-width: 1199.98px) {
  .pull-left-lg {
    float: left; }
  .pull-right-lg {
    float: right; } }

@media (min-width: 1200px) {
  .pull-left-xl {
    float: left; }
  .pull-right-xl {
    float: right; } }

@media (max-width: 543.98px) {
  .hidden-xs-down {
    display: none !important; } }

@media (max-width: 768.98px) {
  .hidden-sm-down {
    display: none !important; } }

@media (max-width: 991.98px) {
  .hidden-md-down {
    display: none !important; } }

@media (max-width: 1199.98px) {
  .hidden-lg-down {
    display: none !important; } }

.hidden-xl-down {
  display: none !important; }

.row.equal-height > [class^="col"] {
  display: flex; }

.swatch-circle-beige {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #f5f5dc;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-beige.disabled {
    opacity: 0.2; }

.swatch-filter-beige {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #f5f5dc;
  border-radius: 0.69em;
  background-color: #f5f5dc;
  display: block;
  position: relative; }
  .swatch-filter-beige.disabled {
    opacity: 0.2; }

.swatch-circle-black {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #000;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-black.disabled {
    opacity: 0.2; }

.swatch-filter-black {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #000;
  border-radius: 0.69em;
  background-color: #000;
  display: block;
  position: relative; }
  .swatch-filter-black.disabled {
    opacity: 0.2; }

.swatch-circle-blue {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #0070d2;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-blue.disabled {
    opacity: 0.2; }

.swatch-filter-blue {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #0070d2;
  border-radius: 0.69em;
  background-color: #0070d2;
  display: block;
  position: relative; }
  .swatch-filter-blue.disabled {
    opacity: 0.2; }

.swatch-circle-brown {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #a52a2a;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-brown.disabled {
    opacity: 0.2; }

.swatch-filter-brown {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #a52a2a;
  border-radius: 0.69em;
  background-color: #a52a2a;
  display: block;
  position: relative; }
  .swatch-filter-brown.disabled {
    opacity: 0.2; }

.swatch-circle-green {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #008827;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-green.disabled {
    opacity: 0.2; }

.swatch-filter-green {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #008827;
  border-radius: 0.69em;
  background-color: #008827;
  display: block;
  position: relative; }
  .swatch-filter-green.disabled {
    opacity: 0.2; }

.swatch-circle-grey {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #8f979d;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-grey.disabled {
    opacity: 0.2; }

.swatch-filter-grey {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #8f979d;
  border-radius: 0.69em;
  background-color: #8f979d;
  display: block;
  position: relative; }
  .swatch-filter-grey.disabled {
    opacity: 0.2; }

.swatch-circle-navy {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #000080;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-navy.disabled {
    opacity: 0.2; }

.swatch-filter-navy {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #000080;
  border-radius: 0.69em;
  background-color: #000080;
  display: block;
  position: relative; }
  .swatch-filter-navy.disabled {
    opacity: 0.2; }

.swatch-circle-orange {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #ffa500;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-orange.disabled {
    opacity: 0.2; }

.swatch-filter-orange {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #ffa500;
  border-radius: 0.69em;
  background-color: #ffa500;
  display: block;
  position: relative; }
  .swatch-filter-orange.disabled {
    opacity: 0.2; }

.swatch-circle-pink {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #fe249a;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-pink.disabled {
    opacity: 0.2; }

.swatch-filter-pink {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #fe249a;
  border-radius: 0.69em;
  background-color: #fe249a;
  display: block;
  position: relative; }
  .swatch-filter-pink.disabled {
    opacity: 0.2; }

.swatch-circle-purple {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #800080;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-purple.disabled {
    opacity: 0.2; }

.swatch-filter-purple {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #800080;
  border-radius: 0.69em;
  background-color: #800080;
  display: block;
  position: relative; }
  .swatch-filter-purple.disabled {
    opacity: 0.2; }

.swatch-circle-red {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #f00;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-red.disabled {
    opacity: 0.2; }

.swatch-filter-red {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #f00;
  border-radius: 0.69em;
  background-color: #f00;
  display: block;
  position: relative; }
  .swatch-filter-red.disabled {
    opacity: 0.2; }

.swatch-circle-white {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #fff;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-white.disabled {
    opacity: 0.2; }

.swatch-filter-white {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #fff;
  border-radius: 0.69em;
  background-color: #fff;
  display: block;
  position: relative; }
  .swatch-filter-white.disabled {
    opacity: 0.2; }

.swatch-circle-yellow {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #ff0;
  border-radius: 1.25em;
  display: block;
  position: relative; }
  .swatch-circle-yellow.disabled {
    opacity: 0.2; }

.swatch-filter-yellow {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 1.38em;
  height: 1.38em;
  background: #ff0;
  border-radius: 0.69em;
  background-color: #ff0;
  display: block;
  position: relative; }
  .swatch-filter-yellow.disabled {
    opacity: 0.2; }

.swatch-circle-miscellaneous {
  background: linear-gradient(0deg, #821e91 0, #821e91 25%, #edd134 25%, yellow 50%, #edd134 50%, #59ba00 50%, #59ba00 76%, #111 76%, #111 100%), linear-gradient(0deg, #0e5cd1 0, #0e5cd1 50%, #e20b0b 50%, #e20b0b 100%);
  background-repeat: repeat-y, repeat;
  background-size: 50% 100%, 100% 100%;
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  border-radius: 1.25em;
  display: block;
  height: 2.5em;
  position: relative;
  transform: rotate(35deg);
  width: 2.5em; }
  .swatch-circle-miscellaneous.disabled {
    opacity: 0.2; }
  .swatch-circle-miscellaneous.selected::after {
    transform: rotate(-35deg); }

.product-detail .attributes .swatch-circle {
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  width: 2.5em;
  height: 2.5em;
  background: #fff;
  border-radius: 1.25em;
  border: 0.063em solid rgba(0, 0, 0, 0.3);
  display: inline-block;
  margin-right: 0.313em;
  position: relative; }
  .product-detail .attributes .swatch-circle.color-value[data-selected=true]::after {
    color: #000;
    content: '\F058';
    display: table-caption;
    font-family: 'FontAwesome';
    font-size: 1.625em;
    left: 0.295em;
    position: absolute; }
  .product-detail .attributes .swatch-circle.color-value.selected::after {
    background: #fff;
    border-radius: 50%;
    color: #000;
    content: '\F058';
    display: table-caption;
    font-family: 'FontAwesome';
    font-size: 1.625em;
    height: 0.75em;
    left: 0.31em;
    line-height: 0.8em;
    position: absolute;
    top: 0.35em;
    width: 0.8em; }
  .product-detail .attributes .swatch-circle i.fa-times-circle {
    background: #fff;
    border-radius: 50%;
    height: 0.75em;
    line-height: 0.8em;
    width: 0.8em; }

.product-detail [disabled] .swatch-circle,
.product-detail .swatch-circle.unselectable {
  cursor: not-allowed; }
  .product-detail [disabled] .swatch-circle.color-value.selected::after,
  .product-detail .swatch-circle.unselectable.color-value.selected::after {
    background-color: #495057; }

label.color ~ a:hover {
  text-decoration: none; }

.description-and-detail {
  margin-top: 2em; }
  @media (max-width: 543.98px) {
    .description-and-detail {
      margin-top: 0; }
      .description-and-detail .title {
        font-size: 1.5rem;
        margin-bottom: 0;
        font-family: 'Dosis', sans-serif; }
      .description-and-detail > div:last-child {
        margin-bottom: 1em; } }
  @media (min-width: 544px) {
    .description-and-detail .description {
      margin-bottom: 2em; } }
  @media (max-width: 543.98px) {
    .description-and-detail .content {
      margin-top: 1em; } }

.social-container {
  padding-top: 0.9375em;
  text-align: center; }
  .social-container .social-icons {
    text-decoration: none;
    font-size: 1.875em;
    list-style-type: none;
    padding: 0;
    color: #444; }
    @media (max-width: 991.98px) {
      .social-container .social-icons {
        font-size: 1.5625em; } }
    .social-container .social-icons i,
    .social-container .social-icons a {
      color: #444;
      padding-right: 0.2em; }

label.availability {
  padding-right: 0.3125em; }

@media (min-width: 544px) {
  .product-number-rating {
    border-bottom: 1px solid #ccc; } }

@media (min-width: 769px) {
  .product-number-rating {
    border-top: 1px solid #ccc; } }

@media (min-width: 544px) and (max-width: 768.98px) {
  .product-name {
    border-bottom: 1px solid #ccc; } }

@media (min-width: 544px) {
  .product-number-rating .ratings {
    margin-top: 0.625em; } }

@media (max-width: 543.98px) {
  .product-number-rating .ratings {
    background-color: #fff;
    margin-top: -1.875em;
    /* 30/16 */
    margin-right: -0.9375em;
    /* 15/16 */
    padding: 0.1875em;
    /* 3/16 */ } }

.product-number {
  color: #ccc;
  font-size: 0.875em;
  padding-bottom: 0.938em;
  padding-top: 0.938em; }

.promotions {
  font-weight: normal;
  text-align: center;
  height: 85%; }
  .promotions div.collapsible-xl button.callout {
    font-size: 1.25em;
    padding-bottom: 1.25rem;
    padding-top: 1.25rem;
    color: #c00; }
    @media (min-width: 544px) {
      .promotions div.collapsible-xl button.callout {
        font-size: 1.375em; } }
    .promotions div.collapsible-xl button.callout::after {
      color: #000; }

.product-breadcrumb .breadcrumb {
  border-bottom: none;
  margin-left: -1rem;
  margin-bottom: 0; }
  @media (max-width: 991.98px) {
    .product-breadcrumb .breadcrumb {
      border-top: 1px solid #ccc; } }

.price {
  font-size: 1.5rem; }

.product-options {
  margin-top: 1.25em; }

.size-chart .size-chart-collapsible {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s;
  transition-timing-function: cubic-bezier(0, 1, 0, 1); }
  .size-chart .size-chart-collapsible.active {
    max-height: 100%;
    transition-timing-function: ease-in-out; }

.color-attribute {
  border: none;
  padding: 0;
  background: none; }

.non-input-label {
  display: block;
  margin-bottom: 0.5rem; }

@media (min-width: 769px) {
  .attributes {
    padding-left: 2.5rem;
    padding-right: 2.5rem; } }

@media (max-width: 543.98px) {
  .product-grid {
    padding-top: 0.938em; }
    .product-grid .col-6 {
      padding-left: 5px;
      padding-right: 5px; } }

.attribute {
  margin-top: 0.938em; }
  .attribute label {
    display: block; }

.swatch a {
  text-decoration: none; }

@media (max-width: 543.98px) {
  .primary-images {
    margin: 0;
    padding: 0; } }

.prices-add-to-cart-actions {
  width: 100%;
  position: fixed;
  bottom: 0;
  z-index: 50;
  padding-right: 0;
  padding-left: 0;
  left: 0; }
  @media (max-width: 543.98px) {
    .prices-add-to-cart-actions {
      background-color: rgba(255, 255, 255, 0.95);
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2); } }
  @media (min-width: 544px) {
    .prices-add-to-cart-actions {
      position: static;
      padding: 0 0.9375em; } }
  .prices-add-to-cart-actions .price {
    text-align: center; }

.prices {
  padding-bottom: 0.5em;
  padding-top: 0.5em;
  text-align: center; }

.cart-and-ipay {
  text-align: center; }
  @media (max-width: 543.98px) {
    .cart-and-ipay {
      padding-bottom: 26px; }
      .cart-and-ipay .btn {
        width: 98%;
        margin: 1%;
        display: block; } }

.add-to-cart-messages {
  transform: translate(-50%, -50%);
  position: fixed;
  top: 15%;
  left: 50%; }

.add-to-basket-alert {
  animation: fade 5s linear forwards;
  box-shadow: 1px 1px 5px grey;
  padding: 1em; }

@keyframes fade {
  0% {
    opacity: 0; }
  10% {
    opacity: 1; }
  90% {
    opacity: 1; }
  100% {
    opacity: 0; } }
  .add-to-basket-alert.show {
    display: block; }

.simple-quantity {
  margin-top: 1em; }

.main-attributes {
  margin-top: 1em; }

.size-chart {
  margin-top: 1.071em; }

div.availability {
  margin-top: 1.071em; }

.bundle-item {
  padding-bottom: 1em;
  border-bottom: 1px solid #ccc; }
  .bundle-item:last-child {
    border-bottom: none; }

.container.product-detail {
  margin-top: 2em;
  margin-bottom: 2em; }
  @media (max-width: 543.98px) {
    .container.product-detail {
      margin-top: 0;
      margin-bottom: 0; } }

.product-option:not(:first-child) {
  margin-top: 1.071em; }

.cart-and-ipay .add-to-cart {
  width: 100%;
  display: block; }

@media (max-width: 543.98px) {
  .cart-and-ipay .add-to-cart {
    width: 100%;
    margin: 0; } }

.salesforce-buynow-element {
  width: 100%; }

.salesforce-buynow-element:not(:empty) {
  margin-top: 1em; }

.salesforce-buynow-element-errors {
  margin-top: 0.75rem;
  text-align: left; }

.salesforce-buynow-element[disabled] {
  display: none; }

.badge {
  position: absolute;
  top: 0;
  left: 0;
  color: var(--color-dark-copper);
  border: 1px solid var(--color-dark-copper);
  border-radius: 0;
  text-transform: uppercase;
  font-size: 0.6875rem;
  padding: 0.3125rem 0.5rem;
  letter-spacing: 1px; }
  @media (min-width: 769px) {
    .badge {
      font-size: 0.8125rem;
      padding: 0.5625rem 0.875rem; } }

/*	---------------------------------------------------------------
	PX to REM
	---------------------------------------------------------------
*/
/*	---------------------------------------------------------------
	Maps for styleguide and utility classes
	---------------------------------------------------------------
*/
/*	---------------------------------------------------------------
	PX to REM
	---------------------------------------------------------------
*/
/*	---------------------------------------------------------------
	Maps for styleguide and utility classes
	---------------------------------------------------------------
*/
.container.product-detail {
  margin-top: 0; }
  @media (min-width: 769px) {
    .container.product-detail {
      margin-bottom: 4.375rem; } }

.main-carousel-container .carousel-img,
.thumbnail-carousel-container .carousel-img {
  display: flex !important;
  align-items: center;
  justify-content: center; }

.main-carousel-container .slick-slide,
.thumbnail-carousel-container .slick-slide {
  height: auto; }

.primary-images .carousel {
  padding-top: 0; }
  .primary-images .carousel .carousel-img {
    height: 14.9375rem; }
    @media (min-width: 544px) {
      .primary-images .carousel .carousel-img {
        height: 25rem; } }
    @media (min-width: 992px) {
      .primary-images .carousel .carousel-img {
        height: 42.375rem; } }
    .primary-images .carousel .carousel-img img {
      max-height: 100%; }

.pdp-top {
  margin-bottom: 0; }
  @media (min-width: 769px) {
    .pdp-top {
      margin-bottom: 1.875rem; } }

.product-breadcrumb {
  border: 0; }
  .product-breadcrumb .breadcrumb {
    border: 0; }
    .product-breadcrumb .breadcrumb-item:before {
      color: var(--color-dark-brown); }
    .product-breadcrumb .breadcrumb-item a {
      font-size: 0.875rem;
      color: var(--color-dark-brown); }
      .product-breadcrumb .breadcrumb-item a[aria-current="page"] {
        font-weight: 400; }

.badge {
  left: 15px; }

.product-name {
  font-size: 1.5rem;
  margin: 0.9375rem 0 0;
  padding: 0.9375rem 0 0; }
  @media (min-width: 769px) {
    .product-name {
      font-size: 2.5rem;
      margin: 0 0 0.9375rem;
      padding: 0; } }
  @media (min-width: 544px) and (max-width: 768.98px) {
    .product-name {
      border-width: 0; } }

.product-wine-ratings {
  margin-bottom: 0.625rem; }
  .product-wine-ratings > .rating-row {
    display: flex;
    justify-content: flex-start; }
  .product-wine-ratings_block {
    max-width: 25%;
    margin: 0 0.3125rem; }
    @media (min-width: 992px) {
      .product-wine-ratings_block {
        margin: 0 0.9375rem; } }
    .product-wine-ratings_block:first-of-type {
      margin-left: 0px; }
    .product-wine-ratings_block .publication-name {
      max-width: 100%;
      overflow: hidden;
      text-overflow: ellipsis;
      color: var(--color-dark-gold);
      font-size: 0.75rem;
      font-weight: 600;
      display: block;
      text-align: center; }
      @media (min-width: 769px) {
        .product-wine-ratings_block .publication-name {
          font-size: 0.875rem; } }
    .product-wine-ratings_block a {
      text-decoration: underline; }
  .product-wine-ratings_header {
    width: 3.25rem;
    height: 3.25rem;
    margin: 0.6875rem auto;
    border: 1px solid var(--color-dark-gold);
    border-radius: 50%;
    position: relative;
    font-family: "Playfair Display", serif;
    font-weight: 600;
    font-size: 1.5rem;
    color: var(--color-dark-brown); }
    @media (min-width: 769px) {
      .product-wine-ratings_header {
        width: 4.4375rem;
        height: 4.4375rem;
        font-size: 1.875rem; } }
    .product-wine-ratings_header .rating-value {
      line-height: 1;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -64%); }
  .product-wine-ratings_overflow .product-wine-ratings_header {
    border-color: transparent; }

.primary-images .main-carousel-container .slick-arrow {
  z-index: 999; }

.primary-images .main-carousel-container .slick-next {
  right: -0.5625rem; }

.vintner-credits {
  font-size: 0.9375rem;
  margin-top: 0; }
  @media (min-width: 769px) {
    .vintner-credits {
      font-size: 1.25rem;
      margin-top: 1.625rem; } }

.additional-product-attribute {
  font-size: 0.875rem;
  font-weight: 500;
  margin: 1.5rem 0 0;
  width: 50%; }
  @media (min-width: 769px) {
    .additional-product-attribute {
      margin-top: 1.75rem; } }
  .additional-product-attribute > .row {
    margin-bottom: 0.625rem; }
  .additional-product-attribute .label {
    font-weight: 600; }

.price-block .price del + .sales {
  color: var(--color-dark-copper); }

.productAvailability {
  margin: 0; }
  .productAvailability ul {
    padding-left: 0;
    list-style: none;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap; }
    .productAvailability ul li {
      font-size: 0.875rem;
      font-weight: 500;
      margin: 0; }
      .productAvailability ul li.label {
        font-weight: 600; }
  .productAvailability div.availability {
    margin-top: 0; }
    @media (min-width: 769px) {
      .productAvailability div.availability {
        margin-top: 1.071rem; } }
  .productAvailability li > div,
  .productAvailability span.availability {
    font-size: 0.875rem;
    font-weight: 500;
    margin: 0.3125rem 0; }
  .productAvailability span.availability {
    font-weight: 600; }
  .productAvailability .col-6:last-of-type {
    padding-left: 0;
    padding-right: 0; }
  .productAvailability .availability-msg {
    margin-bottom: 0;
    margin-left: 1.25rem; }

@media (max-width: 991.98px) {
  .prices-add-to-cart-actions {
    padding: 1.375rem 1.875rem; } }

.product-detail .prices {
  text-align: left; }

.description-and-detail {
  padding: 1.375rem 0;
  margin-top: 0; }
  @media (min-width: 769px) {
    .description-and-detail {
      padding: 4.25rem 0; } }
  @media (max-width: 768.98px) {
    .description-and-detail > div:last-child {
      margin-bottom: 0; } }
  .description-and-detail_heading {
    font-size: 1.875rem;
    color: var(--color-dark-brown);
    margin-bottom: 1.125rem; }
    @media (min-width: 769px) {
      .description-and-detail_heading {
        margin-bottom: 2rem; } }
  .description-and-detail_block h4 {
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    letter-spacing: 1px;
    font-size: 0.875rem;
    text-transform: uppercase;
    margin-bottom: 0.625rem; }
  @media (min-width: 769px) {
    .description-and-detail_block p {
      font-size: 1rem; }
      .description-and-detail_block p:first-of-type {
        margin-top: 0.75rem; }
      .description-and-detail_block p:last-of-type {
        margin-bottom: 2.25rem; } }
  .description-and-detail_pairings {
    background-image: url("../../images/textures/pdp_detai_try_with_recipes_bg.svg");
    background-position: 8rem center;
    background-repeat: no-repeat; }
    @media (min-width: 769px) {
      .description-and-detail_pairings {
        background-position: 23.625rem center; } }
    @media (min-width: 992px) {
      .description-and-detail_pairings {
        background-position: 51.25rem center; } }
    @media (min-width: 1200px) {
      .description-and-detail_pairings {
        background-position: 60rem center; } }
    @media (min-width: 1440px) {
      .description-and-detail_pairings {
        background-position: 90rem center; } }
    .description-and-detail_pairings .pairings {
      margin-bottom: 1.875rem; }
      @media (min-width: 769px) {
        .description-and-detail_pairings .pairings {
          margin-bottom: 0; } }
      .description-and-detail_pairings .pairings .pairing {
        font-size: 1.25rem;
        font-family: "Montserrat", sans-serif;
        font-weight: 400;
        letter-spacing: 1px;
        margin-bottom: 0.5rem; }

@media (min-width: 544px) {
  .bundle-footer {
    margin-bottom: 2rem; } }

@media (min-width: 769px) {
  .bundle-footer {
    margin-bottom: 3rem; } }

.wine-rating-container {
  position: relative; }

.wine-rating_block {
  display: flex;
  justify-content: flex-start;
  margin-bottom: 1.6875rem;
  position: relative; }
  .wine-rating_block__circle .rating-outer {
    width: 4.4375rem;
    height: 4.4375rem;
    margin: 0 auto 0.6875rem auto;
    border: 1px solid var(--color-dark-gold);
    border-radius: 50%;
    position: relative;
    font-family: "Playfair Display", serif;
    font-weight: 600;
    font-size: 1.875rem;
    color: var(--color-dark-brown);
    margin-right: 1.9375rem; }
    .wine-rating_block__circle .rating-outer .rating-value {
      line-height: 1;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -64%); }
  @media (max-width: 991.98px) {
    .wine-rating_block__circle {
      position: absolute;
      left: 0; } }
  .wine-rating_block__details h4 {
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    letter-spacing: 1px;
    font-size: 0.875rem;
    text-transform: uppercase;
    margin: 1rem 0; }
    @media (max-width: 1199.98px) {
      .wine-rating_block__details h4 {
        display: flex;
        flex-direction: column;
        padding-left: 5.125rem;
        margin-top: 1.3125rem; } }
    .wine-rating_block__details h4 span {
      font-family: "Montserrat", sans-serif;
      font-weight: 400;
      letter-spacing: 1px;
      position: relative;
      margin-left: 0;
      padding-left: 0;
      margin-top: 0.5rem;
      text-transform: uppercase; }
      @media (min-width: 992px) {
        .wine-rating_block__details h4 span {
          padding-left: 0.75rem;
          margin-left: 0.25rem;
          margin-top: 0; }
          .wine-rating_block__details h4 span:before {
            content: '|';
            font-size: 0.875rem;
            font-family: "Montserrat", sans-serif;
            font-weight: 400;
            letter-spacing: 1px;
            position: absolute;
            left: 0; } }
  .wine-rating_block__details p {
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    letter-spacing: 1px;
    font-size: 1rem; }
    @media (max-width: 991.98px) {
      .wine-rating_block__details p {
        padding-top: 0.9375rem; } }

.wine-finder {
  margin: 0; }

.size-container {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: row;
  margin-left: -10px;
  margin-right: -10px; }

.size-btn--select {
  border: 2px solid var(--color-dark-brown);
  background-color: var(--color-white);
  font-size: 1rem;
  color: var(--color-dark-brown);
  text-align: center;
  padding: 0 2.1875rem;
  margin: 0.625rem;
  height: 3.0625rem; }
  .size-btn--select.selected, .size-btn--select:hover {
    color: var(--color-dark-gold);
    border-color: var(--color-dark-gold);
    background-color: var(--color-soft-grey);
    outline: 0; }

div.promotions {
  padding-top: 0;
  text-align: left;
  height: auto; }
  div.promotions .row {
    margin: 0.3125rem -15px; }
  div.promotions .callout {
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    letter-spacing: 1px;
    font-size: 0.9375rem;
    color: var(--color-dark-copper); }
  div.promotions .promo-details--button {
    font-family: "Montserrat", sans-serif;
    font-weight: 300;
    letter-spacing: 1px;
    text-decoration: underline;
    color: var(--skin-main-text-color-1);
    font-size: 0.8125rem;
    border: 0;
    background-color: transparent;
    box-shadow: none; }

.button-block {
  text-align: left; }

@media (max-width: 768.98px) {
  .cart-and-ipay {
    padding-bottom: 0; }
  .thumbnail-carousel-container {
    display: none; }
  .d-md-none.col-sm-12 .product-name {
    font-size: 1.5rem;
    line-height: 1.75rem;
    padding-top: 0.9375rem; } }

.pdp-recipes .recipe-tile {
  flex-direction: column; }

.pdp-recipes .recipe-link {
  display: block; }

.pdp-recipes .recipe-img {
  height: 22.5rem;
  width: 100%;
  display: block;
  background-size: cover;
  background-position: center;
  margin-bottom: 0.875rem; }
  @media (min-width: 769px) {
    .pdp-recipes .recipe-img {
      margin-bottom: 1.875rem; } }

.pdp-recipes .recipe-title {
  font-family: "Playfair Display", serif;
  font-weight: 600;
  font-size: 1.625rem;
  color: var(--color-primary); }

/*Product Bundle*/
.product-bundle-detail .product-number-rating {
  display: flex;
  justify-content: space-between; }

.product-bundle-detail .bundle-items_anchor__header {
  font-weight: bold; }

.product-bundle-detail .bundle-items_anchor__link {
  display: block;
  margin-bottom: 10px; }
  .product-bundle-detail .bundle-items_anchor__link span {
    text-decoration: underline;
    font-weight: 400; }

.product-bundle-items {
  background-color: var(--color-grey1); }
  .product-bundle-items h2.bundle-items-label {
    font-family: "Montserrat", sans-serif;
    margin: 3rem 0 1rem;
    text-transform: uppercase;
    text-align: center; }
  .product-bundle-items .bundle-items .attributes {
    padding: 0; }
  .product-bundle-items .bundle-items .prices {
    text-align: left; }
  @media (min-width: 992px) {
    .product-bundle-items .bundle-items {
      width: calc(100% - 240px);
      margin: auto; } }
  .product-bundle-items .bundle-items .bundle-item {
    position: relative; }
    .product-bundle-items .bundle-items .bundle-item .primary-images {
      margin-top: 2rem; }
      @media (min-width: 769px) {
        .product-bundle-items .bundle-items .bundle-item .primary-images {
          margin-top: 0; } }

@media (max-width: 991.98px) {
  .product-detail-page .zinrelo-tab {
    bottom: 6.5625rem !important; } }

.product-bundle-detail .cart-and-ipay .button-block,
.product-set-detail .cart-and-ipay .button-block {
  display: block; }

/*# sourceMappingURL=detail.css.map*/