/* ALL BREAKPOINTS */
/*********************************************************************************/
/* Accordion - Marketing Page FAQ Sections*/
.accordion-faq {
  background-color: #505e68;
}
.accordion-faq .ms-accordion-header-section {
  background-color: #323b42;
  margin: 0;
  padding: 15px;
}
.accordion-faq .ms-accordion_ExpandAll, .accordion-faq .ms-accordion_CollapseAll, .accordion-faq .ms-accordion-header-section__heading, .accordion-faq .ms-accordion-item__drawer .drawer__button {
  color: #ffffff;
}
.accordion-faq .ms-accordion-item-content {
  background-color: #ffffff;
  color: #323b42;
  padding-top: 30px;
  padding-bottom: 15px;
}
/* Images */
.align-img-center img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
/* Header Graphics - Creators */
.creator .hero-block {
  height: 400px;
}
/* Layout */
div.padding-0-15, img.padding-0-15 .padding-0-15 {
  padding: 0px 15px;
}
/* Lists */
/*ol > li { line-height: 1.5em; padding-bottom: 1em; }*/
/* Tables */
table.table-responsive {
  width: 100%;
}
table th.table-col-25, table td.table-col-25 {
  width: 25%;
}
table th.table-col-33, table td.table-col-33 {
  width: 33%;
}
table th.table-col-50, table td.table-col-50 {
  width: 50%;
}
table th.table-col-75, table td.table-col-75 {
  width: 75%;
}
td.table-cell-md-grey {
  background: #505e68;
  color: #ffffff;
}
td.table-cell-orange {
  background: #f78f1e;
  color: #ffffff;
}
td.table-cell-lozeau-red {
  background: #e30613;
  color: #ffffff;
}
/* Tables - Pricing Tables for Marketing Pages */
table.table-pricing tr:nth-child(odd) {
  background: #f5f5f5;
}
table.table-pricing th:nth-child(1), table.table-pricing td:nth-child(1) {
  text-align: center;
}
table.table-pricing tr {
  border-top: 1px solid #e1e1e1;
}
.main-content-container .ms-text-block table.table-pricing th {
  background: #505e68;
  color: #ffffff;
  border-bottom: 2px solid #323b42;
}
/* Tables - Tables for Shipping Pages */
table.table-shipping tr:nth-child(odd) {
  background: #f5f5f5;
}
table.table-shipping th:nth-child(1), table.table-shipping td:nth-child(1) {
  text-align: left;
}
table.table-shipping tr {
  border-top: 1px solid #e1e1e1;
}
.main-content-container .ms-text-block table.table-shipping th {
  background: #505e68;
  color: #ffffff;
  border-bottom: 2px solid #323b42;
}
/*Table - Service Feature Tables for Marketing Pages */
.main-content-container .ms-text-block table.table-service-features th, .main-content-container .ms-text-block table.table-service-features td {
  border: 1px solid #ffffff;
  padding: 5px;
}
.main-content-container .ms-text-block table.table-service-features th.table-cell-white, .main-content-container .ms-text-block table.table-service-features td.table-cell-white {
  background: #ffffff;
}
/* Text */
.text-align-left {
  text-align: left;
}
.text-align-right {
  text-align: right;
}
.text-align-center {
  text-align: center;
}
.text-dark-grey {
  color: #323b42;
}
.text-medium-grey {
  color: #505e68;
}
.text-light-grey {
  color: #6e818f;
}
.text-white {
  color: #ffffff;
}
.text-orange {
  color: #f78f1e;
}
.text-red {
  color: #f83b1e;
}
.text-lozeau-red {
  color: #E30613;
}
.text-holiday-red {
  color: #bd202e;
}
.text-extra-large {
  font-size: 20px;
  line-height: 24px;
}
.text-large {
  font-size: 18px;
  line-height: 22px;
}
.text-medium {
  font-size: 16px;
  line-height: 20px;
}
.fineprint {
  font-size: 0.875em;
}
.caption {
  font-size: 0.875em;
  font-style: italic;
}
.creator h1 {
  font-size: 48px;
  line-height: 52px;
  font-weight: 600;
}
.creator h2 {
  font-size: 32px;
  line-height: 36px;
  font-weight: 500;
}
.creator h3 {
  font-size: 26px;
  line-height: 30px;
  font-weight: 500;
}
.creator .headline-bold h3 { font-weight: bold; }

.creator h4 {
  font-size: 20px;
  line-height: 24px;
  font-weight: 500;
}
.creator h5 {
  font-size: 16px;
  line-height: 20px;
  font-weight: 600;
}
/* Buttons */
.link-button-merch {  
    background-color: #f78f1e;
    border: none;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 18px; 
    font-weight: 500;
    line-height: 24px;
    padding: 12px 20px;
}
a:hover.link-button-merch {
    background-color: #505e68;
    text-decoration: none;
}
/* Promo Banner */
.promo-banner-bg.bg-red {
  background: #f83b1e;
}
.promo-banner-bg.bg-holiday-red {
  background: #bd202e;
}
/* Shipping Banner - Holiday Gift Guide Icon */
.shipping-banner.hgg-banner .ms-content-block__image {
  margin-top: -2px;
}
/* Homepage Feature Tiles - Small */
.img-grey-border .ms-content-block__image > picture > img {
  border: 1px solid #d1d1d1;
}
/* Gift Guide */
.grey-double-border {
  border-top: 1px solid #eeeeee;
  border-bottom: 1px solid #eeeeee;
  padding: 1px 0px;
}
.ms-text-block a.link-text-red:active, .ms-text-block a.link-text-red:link, .ms-text-block a.link-text-red:visited {
  text-decoration: underline;
  color: #f83b1e;
}
.ms-text-block a.link-text-red:hover {
  text-decoration: none;
}
.ms-content-block.link-button.link-button-holiday-red .msc-cta__primary {
  background-color: #bd202e;
  border-color: #bd202e;
}
.inset-block {
  padding: 0 60px;
}
div.hgg-tile, img.hgg-tile .hgg-tile {
  padding: 0px 30px;
}

/* Video Embed - Responsive 16:9 or 4:3 */
div.ms-iframe.embed-video-16by9, div.ms-iframe.embed-video-4by3 {
  position: relative;
  width: 100%;
}
div.ms-iframe.embed-video-16by9 {
  padding-bottom: 56.25%;
}
div.ms-iframe.embed-video-4by3 {
  padding-bottom: 75%;
}
div.ms-iframe.embed-video-16by9 > iframe, div.ms-iframe.embed-video-4by3 > iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
/* Bouncing Arrow */
.bounce {
  -moz-animation: bounce 3s infinite;
  -webkit-animation: bounce 3s infinite;
  animation: bounce 3s infinite;
}
@-moz-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -moz-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -moz-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  60% {
    -moz-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}
@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  60% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -moz-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  60% {
    -moz-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}
/* Homepage Spotlight Images */
div.home-spotlight-img {
  margin-top: 20px;
}
/* Active Special Offer Page */
.hei-promo-details {
  padding: 20px 0px;
  width: 75%;
  float: left;
}
.hei-promo-details p {
  margin: 16px 0px;
}
.hei-promo-details a:active, .hei-promo-details a:link, .hei-promo-details a:visited {
  text-decoration: underline;
  color: #000000;
}
.hei-promo-details a:hover {
  text-decoration: none;
}
.hei-promo-imgs {
  width: 25%;
  float: left;
  text-align: center;
}
.hei-promo-imgs img {
  padding: 20px;
}
/* Featured Artists */
div.featured-artist-bio-img > div.ms-content-block__image > picture > img {
  padding-top: 60px;
}
.hei-sailthru-signup-form.hei-sailthru-vertical.creator-form {
  display: block;
}
.creator-social-icons a:link, .creator-social-icons a:active, .creator-social-icons a:visited, .creator-social-icons a:hover {
  padding: 10px;
  margin-right: 12px;
  border-radius: 50%;
  background-color: #505e68;
}
.creator-social-icons a:hover {
  background-color: #f78b1e;
}
/* FLEX GALLERY */
.flex-gallery {
  display: flex;
  padding: 2px;
  transition: .3s;
}
.flex-gallery:hover .flex-gallery__image {
  filter: grayscale(1);
}
.flex-gallery__column {
  display: flex;
  flex-direction: column;
  /*width: 25%;*/
}
.flex-gallery__link {
  margin: 2px;
  overflow: hidden;
}
.flex-gallery .flex-gallery__image:hover {
  filter: grayscale(0);
}
.flex-gallery__thumb {
  position: relative;
}
.flex-gallery__image {
  display: block;
  width: 100%;
  transition: .3s;
}
.flex-gallery__image:hover {
  transform: scale(1.1);
}
.flex-gallery___caption {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 25px 15px 15px;
  width: 100%;
  font-family: 'Raleway', sans-serif;
  font-size: 16px;
  color: white;
  opacity: 0;
  background: linear-gradient(0deg, rgba(0, 0, 0, .5) 0%, rgba(255, 255, 255, 0) 100%);
  transition: .3s;
}
/* END FLEX GALLERY */


/* FLEX GALLERY MODAL */
/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  padding-top: 100px; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.8); /* Black w/ opacity */
}

/* Modal Content (image) */
.modal-content {
  margin: auto;
  display: block;
  width: 80%;
  opacity: 1 !important;
  max-width: 1200px;
}

/* Caption of Modal Image */
.modal-caption {
  margin: auto;
  display: block;
  width: 80%;
  max-width: 1200px;
  text-align: center;
  color: white;
  font-weight: 700;
  font-size: 1em;
  margin-top: 32px;
}

/* Add Animation */
.modal-content, .modal-caption {  
  -webkit-animation-name: zoom;
  -webkit-animation-duration: 0.6s;
  animation-name: zoom;
  animation-duration: 0.6s;
}

@-webkit-keyframes zoom {
  from {-webkit-atransform:scale(0)} 
  to {-webkit-transform:scale(1)}
}

@keyframes zoom {
  from {transform:scale(0)} 
  to {transform:scale(1)}
}

/* The Close Button */
.modal-close {
  position: absolute;
  top: 15px;
  right: 35px;
  color: #f1f1f1;
  font-size: 40px;
  font-weight: bold;
  transition: 0.3s;
}

.modal-close:hover,
.modal-close:focus {
  color: #bbb;
  text-decoration: none;
  cursor: pointer;
}

/* END FLEX GALLERY MODAL */


/* ONE EIGHTY FIVE */
.ms-spacer.grey-line-dark, .ms-spacer.gray-line-dark {
  border-top: 1px solid #333333;
  height: auto;
}
.ms-text-block a.link-text-white:active, .ms-text-block a.link-text-white:link, .ms-text-block a.link-text-white:visited {
  text-decoration: none;
  color: #ffffff;
}
.ms-text-block a.link-text-white:hover {
  text-decoration: underline;
}
.ms-content-block.link-button.link-button-white-outline .msc-cta__primary, .ms-content-block.link-button.link-button-white-outline .msc-cta__primary:link, .ms-content-block.link-button.link-button-white-outline .msc-cta__primary:active, .ms-content-block.link-button.link-button-white-outline .msc-cta__primary:visited {
  background-color: #000000;
  border: solid 4px #ffffff;
  color: #ffffff;
  font-size: 22px;
}
.ms-content-block.link-button.link-button-white-outline .msc-cta__primary:hover {
  background-color: #ffffff;
  color: #000000;
  border: solid 4px #ffffff;
}
.oneeightyfive.feature-align {
  position: relative;
  z-index: 2;
}
.oneeightyfive .hero-block {
  height: 300px;
  border-top: 1px solid #333333;
  border-bottom: 1px solid #333333;
}
.oneeightyfive .hero-text-block {
  position: absolute;
  bottom: 15px;
  margin-left: -41px;
}
.oneeightyfive h1 {
  font-size: 52px;
  line-height: 46px !important;
}
h2.line-wrap { font-size: 18px !important; }
.store-creator-headline { position: relative; top: 50%; }

/* Brands */
.brands-nav {
	padding: 0px 150px;
}
.brands-nav-link
{
	display: inline;
	padding: 0px;
	padding: 0px 5px;
	font-weight: bold;
}
a.brands-nav-link, a:link.brands-nav-link, a:active.brands-nav-link, a:visited.brands-nav-link { color: #505e68; text-decoration: none !important; }
a:hover.brands-nav-link { text-decoration: underline; }

.brands-group a:hover{ text-decoration: none; }


/* XL DEVICES ONLY */
/*********************************************************************************/
@media (min-width: 1440px) {
  /* Hero Background Position */
  div.hero-right-xl > div.ms-content-block__image > picture > img {
    object-position: right;
  }
  div.hero-left-xl > div.ms-content-block__image > picture > img {
    object-position: left;
  }
  .hidden-sm {
    display: block;
  }
  .visible-sm {
    display: none;
  }
	.d-lg-none {
		display: none;
	}
	h2.line-wrap { font-size: 20px !important; }
}
/* L DEVICES ONLY  */
/*********************************************************************************/
@media (min-width: 992x) and (max-width: 1339px) {
  /* Hero Background Position */
  div.hero-right-lg > div.ms-content-block__image > picture > img {
    object-position: right;
  }
  div.hero-left-lg > div.ms-content-block__image > picture > img {
    object-position: left;
  }
  .hidden-sm {
    display: block;
  }
	.visible-sm {
    display: none;
  }
	.d-lg-none {
		display: none;
	}
  h2.line-wrap { font-size: 18px !important; }	
}
/* M DEVICES ONLY */
/*********************************************************************************/
@media (min-width: 768px) and (max-width: 991px) {
  /* Hero Background Position */
  div.hero-right-md > div.ms-content-block__image > picture > img {
    object-position: right;
  }
  div.hero-left-md > div.ms-content-block__image > picture > img {
    object-position: left;
  }
  /* Shipping Banner - Holiday Gift Guide Icon */
  .shipping-banner.hgg-banner .ms-content-block__image {
    margin-top: 2px;
    margin-left: 15px;
  }
  .hidden-sm {
    display: block;
  }
  .visible-sm {
    display: none;
  }
	.d-lg-none {
		display: block;
	}
  .text-center-md{ text-align: center; }
  /* ONE EIGHTY FIVE */
  .oneeightyfive h1 {
    font-size: 48px;
    line-height: 42px !important;
  }
  .oneeightyfive .hero-text-block {
    margin-left: -12px;
  }
	h2.line-wrap { font-size: 18px !important; }
	.store-creator-headline { position: relative; top: 50%; }
	.brands-nav {padding: 0px }
}
/* S DEVICES ONLY  */
/*********************************************************************************/
@media (max-width: 767px) {
  /*Typography*/
  .creator h1 {
    font-size: 38px;
    line-height: 40px !important;
    font-weight: 600;
  }
  .creator h2 {
    font-size: 30px;
    line-height: 34px !important;
    font-weight: 500;
  }
  .creator h3 {
    font-size: 24px;
    line-height: 28px !important;
    font-weight: 500;
  }
	.creator .headline-bold h3 { font-weight: bold; }
  .creator h4 {
    font-size: 18px;
    line-height: 22px !important;
    font-weight: 500;
  }
  .text-extra-large {
    font-size: 18px;
    line-height: 22px !important;
  }
  .text-large {
    font-size: 16px;
    line-height: 20px;
  }
  /* Active Special Offer Page */
  .hei-promo-details {
    width: 100%;
  }
  .hei-promo-imgs {
    width: 100%;
  }
  /* Hero Background Position */
  div.hero-right-sm > div.ms-content-block__image > picture > img {
    object-position: right;
  }
  div.hero-left-sm > div.ms-content-block__image > picture > img {
    object-position: left;
  }
  /* Featured Artists */
  div.featured-artist-bio-img > div.ms-content-block__image > picture > img {
    padding-top: 0px;
  }
  /* Shipping Banner - Holiday Gift Guide Icon */
  .shipping-banner.hgg-banner .ms-content-block__image {
    margin-top: 2px;
    margin-left: 15px;
  }
  .inset-block {
    padding: 0 30px;
  }
  .inset-block.inset-block-full {
    padding: 0px;
  }
  .hidden-sm {
    display: none;
  }
  .visible-sm {
    display: block;
  }
	.d-lg-none {
		display: block;
	}
  .text-center-sm { text-align: center; }
  /* ONE EIGHTY FIVE */
  .oneeightyfive h1 {
    font-size: 38px;
    line-height: 34px !important;
    text-shadow: 1px 1px 10px rgba(0, 0, 0, 0.25);
  }
  .oneeightyfive .hero-text-block {
    margin-left: -10px;
  }
	h2.line-wrap { font-size: 22px !important; }
	.brands-nav {padding: 0px }
}
/* remove phone number from cart page */
.hei-cart-guide-container a[href^="tel:+18449761699"] {
  display: none !important;
}
/* add additional height to content on site to comply with AA WCAG guidelines */
.main-content-container .ms-text-block p {
  line-height: 1.5em !important;
}
/* add spacing in the body sections of entire website to create a 1.5 spacing for all device sizes to maintain accessibility compliance */
.main-content-container .ms-content-block__text h1, .main-content-container .ms-content-block__text h2, .main-content-container .ms-content-block__text h3, .main-content-container .ms-content-block__text h4, .main-content-container .ms-content-block__text h5, .main-content-container .ms-content-block__text h6, .main-content-container .ms-content-block__text p {
	line-height: 1.5em !important;
}
/* add spacing in footer elements to create a more spacious 1.5em spacing for all footer elements to comply with accessibility guidelines */
footer .footer-accordion-container .footer-accordion 
.ms-accordion-item-section .ms-accordion-item__drawer 
.ms-accordion-item-content .ms-text-block ul li p {
    line-height: 1.5em !important;
}
/* add spacing to carousel for compliance. It isn't necessary except to comply with WCAG guidelines */
.msc-carousel .ms-content-block__text p {
  line-height: 1.5em !important;
}
.ms-content-block__text p {
  line-height: 1.5em !important;
}
/* Accessibility fix: ensure nav links meet 24x24px minimum tap target */
nav .ms-nav__list__item__link {
  min-height: 44px !important;
  min-width: 44px !important;
  padding: 3px 6px !important;
  display: inline-flex !important;
  align-items: center !important;
}
/* hide H1 tags from displaying but for WCAG compliance */
.visually-hidden {
  position: absolute !important;
  height: 1px; 
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px); 
  white-space: nowrap; 
  border: 0;
  padding: 0;
  margin: 0;
}
.msc-carousel__control_prev,
.msc-carousel__control_next {
  min-width: 44px !important;
  min-height: 44px !important;
  padding: 10px !important; /* Optional: adds buffer if icons are small */
}
p,
.ms-text-block p,
.ms-content-block p,
.msc-cart__line,
.msc-cart__line-wrapper p {
  line-height: 1.5 !important;
}
/* Add required WCAG padding to meet minimum 44x44 pixel dimension for touch for header fragment */
.msc-carousel__control__prev,
.msc-carousel__control__next {
    min-width: 44px;
    min-height: 44px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0; /* just to be safe */
}
.msc-cart-icon.msc-btn {
    min-width: 44px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}
