/*-----------------------------------------------------
[Style Sheet for "Fall Remix"]

Last Change: 10/31/19
-----------------------------------------------------*/

@import "all.css";



/*=================================================
    Global styles for shared elements
==================================*/

html,
body {
    height: 100%;
    margin: 0;}
.product-fix {position: relative;}
.btn-bottm-align {position: fixed;bottom:0;}

    .bootstrap-wrapper{
        overflow: hidden;}

body {
    color: #303030;
    font-family: Helvetica, Arial, sans-serif;
    font-size: 16px;
    font-weight: 300;
    -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;}

h1, h2, h3, h4, h5 {
    color: #303030;
    font-weight: bold;
    margin: 0 0 6px;}

h1, .h1, h2, .h2, h3, .h3 {
    margin-bottom: 10px;
    margin-top: 35px;}

img {
    max-width: 100%;}

ul {
    list-style-type: none;
    -webkit-padding-start: 0;}

p {
    line-height: 1.5rem;
}

/* Overrides react.css font styles */
.bootstrap-wrapper div {
    color: #303030 !important;
    font-family: Helvetica, Arial, sans-serif !important;
    font-size: 1rem !important;
    font-weight: 300 !important;
    -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;}

/* Global Button & Link Styles */
a:hover,
a:focus {
    text-decoration: none;}

.btn-primary {
    background-color: #e90b5a;
    background-image: none;
    box-shadow: none;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0);}

.btn-singleUse {
    background-color: #ef4262;
    background-image: none;
    box-shadow: none;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0);}

.btn-secondary {
    background-color: #fff;
    background-image: none;
    box-shadow: none;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0);}

a.primary-link{
    color: #000000;
    font-weight: 400;
    text-decoration: none;
    line-height: 1.3;
    position: relative;
    padding-bottom: 3px;}

    a:hover.primary-link{
        color: #000000;
        text-decoration: none;}

    a.primary-link:after {
        position: absolute;
        top: 90%;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #000;
        content: '';
        transform-origin: top;
        -webkit-transform: scaleY(1);
        transform: scaleY(1);
        transition-duration: .5s;}

    a.primary-link:hover::after {
        color: #000000 !important;
        -webkit-transform: scaleY(1.5);
        -moz-transform: scaleY(2);
        transform: scaleY(1.5);
        transition-duration: .5s;}

    a:focus.primary-link {
        color: #000000 !important;
        font-size: .875rem;
        text-decoration: none;}

a.primary-link-goals{
    color: #000000;
    font-weight: 400;
    text-decoration: none;
    line-height: 1.3;
    position: relative;
    padding-bottom: 3px;}

    a:hover.primary-link-goals{
        color: #000000;
        text-decoration: none;}

    a.primary-link-goals:after {
        position: absolute;
        top: 90%;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #000;
        content: '';
        transform-origin: top;
        -webkit-transform: scaleY(1);
        transform: scaleY(1);
        transition-duration: .5s;}

    a.primary-link-goals:hover::after {
        color: #000000 !important;
        -webkit-transform: scaleY(1.5);
        -moz-transform: scaleY(2);
        transform: scaleY(1.5);
        transition-duration: .5s;}

    a:focus.primary-link-goals {
        color: #000000 !important;
        font-size: 1rem;
        text-decoration: none;}

a.primary-text-link{
    color: #000000;
    text-decoration: none;
    line-height: 1.3;
    position: relative;
    padding-bottom: 2px;}

    a:hover.primary-text-link{
        color: #000000;
        text-decoration: none;}

    a.primary-text-link:after {
        position: absolute;
        top: 90%;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: #000;
        content: '';
        transform-origin: top;
        -webkit-transform: scaleY(1);
        transform: scaleY(1);
        transition-duration: .3s;}

    a.primary-text-link:hover::after {
        color: #000000 !important;
        -webkit-transform: scaleY(2);
        -moz-transform: scaleY(2);
        transform: scaleY(2);
        transition-duration: .3s;}

    a:focus.primary-text-link {
        color: #000000 !important;
        text-decoration: none;}

a.secondary-link{
        color: #636466;
        font-weight: 600;
        text-decoration: none;
        text-transform: uppercase;}

    a:hover.secondary-link {
        color: #303030;
        text-decoration: none;
        text-transform: uppercase;}

    a:focus.secondary-link {
        color: #303030;
        text-decoration: none;
        text-transform: uppercase;}

a.tertiary-link{
        color: #636466;
        font-weight: 600;
        text-decoration: none;}

    a:hover.tertiary-link {
        color: #303030;
        text-decoration: none;}

    a:focus.tertiary-link {
        color: #303030;
        text-decoration: none;}
a.disable-link {pointer-events: none;}
a.p-link {
  color: #303030;
  position: relative;
  text-decoration: none;
  font-size: 16px;
  padding-bottom: 2px;
  }

a.p-link:hover {
  color: #303030;
  text-decoration: none;
}

a.p-link:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: 0;
  left: 0;
  background-color: #303030;
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
  transform-origin: top left;
}

a.p-link:hover:before {
  -webkit-transform: scaleY(2);
  -moz-transform: scaleY(2);
  -o-transform: scaleY(2);
  transform: scaleY(2);
}
/* Margins. Bootsrap 4 now has new methods of adding margins and padding */
.top-5 {margin-top: 5px;}
.top-10 {margin-top: 10px;}
.top-20 {margin-top: 20px;}
.top-30 {margin-top: 30px;}
.top-40 {margin-top: 40px;}
.top-50 {margin-top: 50px;}
.top-60 {margin-top: 60px;}
.top-70 {margin-top: 70px;}
.top-80 {margin-top: 80px;}

.bottom-5 {padding-bottom: 5px;}
.bottom-10 {padding-bottom: 10px;}
.bottom-20 {padding-bottom: 20px;}
.bottom-30 {padding-bottom: 30px;}
.bottom-40 {padding-bottom: 40px;}
.bottom-50 {padding-bottom: 50px;}
.bottom-60 {padding-bottom: 60px;}
.bottom-70 {padding-bottom: 70px;}
.bottom-80 {padding-bottom: 80px;}

.no-padding {
    padding-left: 0  !important;
    padding-right: 0 !important;}

    .no-padding-left {
        padding-left: 0  !important;}

    .no-padding-right {
        padding-right: 0 !important;}

.container-fluid {
    padding-top: 0 !important;}

.bootstrap-wrapper .jumbotron-fluid {
    border-radius: 0;
    padding: 0;}

/* Styles for Ulta header */
#collapse-show .cc-rewards-guest {
    float: left;
    margin-left: 15px;
    width: 210px;}

.enter-zip h5 a span {
    color: #fff !important;
    font: 12px "montserrat" !important;
}

.navbar .s-cont .search-cont input.search-input {
    font-size: 13px !important;
    height: 30px;
    width: 290px;
}

.navbar {
    border-radius: 0 !important;}

    .top-nav-bg {height: 75px;}

/* Flex fix for older Safari browswers.  Must be included for every "ROW" */
.flexfix.container:before,
.flexfix.container:after,
.flexfix.row:before,
.flexfix.row:after {
   content: normal;}

/* Class for coloring and giving height to BS cols in example. Comment out or remove before you start a project
.bootstrap-wrapper [class^="col"] {
    background: rgba(152, 214, 245, 0.73);
    border: 1px solid rgba(86,61,124,.2);
    min-height: 50px;} */

.col-padding {
    padding: 15px;
}

/*================================
    Remix Global Styles
==================================*/
@media (min-width: 1200px) {
    .bootstrap-wrapper .container {
        width: 960px;
        max-width: 100%;
        margin:0 auto;
    }
}

.remix-content h1 {
    font-family: "Georgia",Times,"Times New Roman",serif;
    text-transform: uppercase;
}

.remix-content h2 {
    font-family: "Georgia",Times,"Times New Roman",serif;
    font-size: 2.25rem;
    font-weight: 600;
    letter-spacing: 3px;
    color: #DF068C;
}

.remix-content h2.hair-title {
    color:#F5A1BE;
}

.remix-content h2.skin-title {
    color:#00AB4E;
}

.remix-content h3 {
    font-family: "Georgia",Times,"Times New Roman",serif;
    font-size: 2.25rem;
    font-weight: 600;
    letter-spacing: 3px;
    color: #000;
    padding: 20px 0 0 0;
}

.bootstrap-wrapper{
    /* margin-left: 180px; */
    overflow: hidden;
}

hr.grey-center {
    border-top: 1px solid #cccccc;
    text-align: center;
    margin: 0 auto;
    width: 100%;
}

/*=================================
    Video Header
==================================*/

.video-header--play {
    margin-bottom: 0;
}

.video-header {
    margin: 32px auto;
}

.hero-container--video-fullbleed {
    position: relative;
    margin-top: -32px;
    width: 100vw;
    height: calc(80vh - 159px);
}

.hero-container--video-fullbleed .video {
    height: 100%;
    overflow: hidden;
}

.video {
    position: relative;
}

.video-overlay-image {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0;
    max-height: 100%;
    width: auto;
    top: 0;
    -webkit-transition: opacity .3s linear .3s;
    transition: opacity .3s linear .3s;
}

.video video {
    display: block;
    width: 100%;
}

.hero-container--video-fullbleed video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.video-header img {
    max-width: 100%;
    vertical-align: middle;
}

/*@media (pointer: coarse) and (hover: none) {
    .video-header {
        background: url('../images/video-background-backup.jpg') black no-repeat center center scroll;
    }
    .video-header video {
        display: none;
    }
}*/
.video-wrap {
    position: relative;
    width: 100%;
}
.video-wrap .play-btn {
    position: absolute;
    max-width: 700px;
    width: 40px;
    height: 40px;
    left: 3%;
    bottom: 2%;
    transform: translate(-50%, -50%);
    line-height: 1;
    text-align: center;
    color: #eaeaea;
    background-image:url('../images/play_btn_wht.svg');
    background-repeat:no-repeat;
    background-position: 50% 50%;
    background-size: 100%;
    display:none;
}
.video-wrap .pause-btn {
    position: absolute;
    max-width: 700px;
    width: 40px;
    height: 40px;
    left: 3%;
    bottom: 2%;
    transform: translate(-50%, -50%);
    line-height: 1;
    text-align: center;
    color: #eaeaea;
    background-image:url('../images/pause_btn_wht.svg');
    background-repeat:no-repeat;
    background-position: 50% 50%;
    background-size: 100%;
}

@media (min-width: 1200px) {
    .video-header {
        margin-top: 0;
    }
    .hero-container--video-fullbleed {
        margin-top: 0;
    }
}
@media (min-width: 992px) {
    .hero-container--video-fullbleed {
        height: calc(70vh - 53px);
    }
}
@media (min-width: 768px) {
    .video-overlay-image {
        height: calc(100% - 70px);
    }
}

/*=================================
    You Tube Videos
==================================*/
.youtube-player {
    position: relative;
    padding-bottom: 56.25%;
    /* Use 75% for 4:3 videos */
    height: 0;
    overflow: hidden;
    max-width: 100%;
    /*background: #f1f1f1;*/
        
}

.skin-care-body .youtube-player {
    margin:60px 0 0 40px;
}

.youtube-player iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    background: transparent;
}

.youtube-player img {
    bottom: 0;
    display: block;
    left: 0;
    margin: auto;
    max-width: 100%;
    width: 100%;
    position: absolute;
    right: 0;
    top: 0;
    border: none;
    height: auto;
    cursor: pointer;
    -webkit-transition: .4s all;
    -moz-transition: .4s all;
    transition: .4s all;
}

.youtube-player img:hover {
    -webkit-filter: brightness(75%);
}

.youtube-player .play {
    height: 72px;
    width: 72px;
    left: 50%;
    top: 50%;
    margin-left: -36px;
    margin-top: -36px;
    position: absolute;
    background: url("../images/play-btn.png") no-repeat;
    background-size:cover;
    cursor: pointer;
}

/*=================================
    Hero Image & Title Box
==================================*/

.beauty-trends-header {
    max-width: 1400px;
}

.title-box {
    position: absolute;
    top: 1px; 
    left:1%; 
    margin:0 auto; 
    z-index:2;
    display:table;
    padding: 30px 25px;
    background-color:rgba(223,6,140,0.9);
    max-width:490px;
    width:100%;
    min-height: 268px;
    height:100%;
}

.title-box h1 {
    font-family: "Georgia",Times,"Times New Roman",serif;
    font-size: 4em;
    font-weight:600;
    color:#FFFFFF; 
    line-height: 1.2em;
}
  
.title-box p {
    color:#FFFFFF;
    font-size:18px;
    line-height: 27px;
    font-weight:500;
    text-align: center;
    padding-top:10px;
}

img.desktop-header {
    margin-left: auto; 
    margin-right: auto; 
    width: 100%;
    max-width:1400px;
}

img.mobile-header {
    width: 89%;
}

.free-ship-image {
    position: absolute;
    right: 11%;
    top: 12%;
    width: 160px;
}

.top-copy p {
    margin:0;
}

/*================================
    Metallic Shimmer Eye
==================================*/

.metallic-body img {
    margin: 30px 0;
}

.metallic-body .magenta-bar {
    position: absolute;
    top: 0px;
    right: 20px;
    width:110px;
    height:100%;
    background-color:#DF068C;
    z-index: -1;
}

.metallic-text h3:after {
    position: absolute;
    content: "";
    height: 4px;
    background-color: #DF068C;
    width: 160px;
    margin-left: 20px;
    bottom: 15px;
}

.metallic-text p {
    max-width: 450px;
}

/*================================
    Rose Glow Smoky Eye
==================================*/

.rose-glow-body h3 {
    color: #000;
    letter-spacing: 3px;
    padding:0;
}

.rose-glow-body img {
    padding: 30px 0 30px 60px;
}

.rose-glow-body p {
    padding: 0 0 0 120px;
    max-width: 530px;
}

.rose-glow-header {
    padding: 0 0 0 120px;
}

.rose-glow-body .magenta-bar {
    position: absolute;
    top: 10px;
    left: 0px;
    width: 100px;
    height: 95%;
    background-color: #DF068C;
    z-index: -1;
}

/*================================
    Glittery Winged Eye
==================================*/

.glittery-body h3 {
    font-size: 2rem;
    font-family: "Georgia", serif;
    font-weight: 600;
    color: #000;
    letter-spacing: 3px;
    position: absolute;
    top: 0;
    left: 480px;
    width:100%;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0;
}

.glittery-body h3:before {
    position: absolute;
    content: "";
    height: 5px;
    background-color: #DF068C;
    width: 10%;
    left: 380px;
    top: 70%;
}

.glittery-body img {
    margin: 30px;
}

.glittery-copy p {
    padding: 0;
    max-width: 550px;
    text-align:left;
}

.glittery-body .magenta-bar {
    position: absolute;
    top: 0px;
    width:75px;
    height:110%;
    background-color:#DF068C;
    z-index: -1;
}

/*================================
    Glittery Winged Eye
==================================*/
.curl-reviving-copy {
    margin-left: -40px;
    padding-top:40px;
}
.curl-reviving-copy h3 {
    font-size: 2rem;
    font-family: "Georgia", serif;
    font-weight: 600;
    color: #000;
    letter-spacing: 3px;
    position: absolute;
    top: -40px;
    left: 520px;
    width:100%;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0;
}

.curl-reviving-copy h3:before {
    position: absolute;
    content: "";
    height: 5px;
    background-color: #F5A1BE;
    width: 40%;
    left: 260px;
    top: 70%;
}

.curl-reviving-body h3 {
    font-size: 2rem;
    font-family: "Georgia", serif;
    font-weight: 600;
    color: #000;
    letter-spacing: 3px;
    position: absolute;
    top: -40px;
    left: 520px;
    width:100%;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0;
}

.curl-reviving-body h3:before {
    position: absolute;
    content: "";
    height: 5px;
    background-color: #F5A1BE;
    width: 40%;
    left: 260px;
    top: 70%;
}

.curl-reviving-copy p {
    padding: 0;
    margin-top: 1rem;
    max-width: 550px;
    text-align:left;
}

.curl-reviving-body img {
    margin: 30px 50px 30px 0;
}

.curl-reviving-body .pink-bar {
    position: absolute;
    top: 0px;
    width:108px;
    height:100%;
    background-color:#F5A1BE;
    z-index: -1;
}

/*================================
    Sleek Wavy Style
==================================*/
.sleek-wavy-container {
    margin-top: 5rem;
}

.sleek-wavy-body h3 {
  position: absolute;
  top: 250px;
  left: 0;
  margin-left: -25px;
  width:100%;
  -webkit-transform: rotate(270deg);
  -moz-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  -o-transform: rotate(270deg);
  transform: rotate(270deg);
  -webkit-transform-origin: 0 0;
  -moz-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  -o-transform-origin: 0 0;
  transform-origin: 0 0;
}

/*.sleek-wavy-body h3:after {
    position: absolute;
    content: "";
    height: 5px;
    background-color: #F5A1BE;
    width: 35%;
    left: 30%;
    top: 80%;
}*/

img.sleek-wavy-bottom-image {
    position: relative;
    top: -100px;
}

.sleek-wavy-body .pink-bar {
    position: absolute;
    top: -40px;
    left: 130px;
    width: 140px;
    height: 100%;
    background-color: #F5A1BE;
    z-index: -1;
}

.sleek-wavy-text p {
    max-width: 450px;
}

/*================================
    Luxe Low Ponytail
==================================*/
.luxe-ponytail-container {
    margin-top:5rem;
}
.luxe-ponytail-body h3 {
    padding: 40px 0 20px 0;
}

/*.luxe-ponytail-body h3:after {
    position: absolute;
    content: "";
    height: 4px;
    background-color: #F04C24;
    width: 260px;
    margin-left: 20px;
    bottom: 15px;
}*/

.luxe-ponytail-copy .pink-bar {
    position: absolute;
    top: -30px;
    right: 0px;
    width: 75px;
    height: 100%;
    background-color: #F5A1BE;
    z-index: -1;
}

.luxe-ponytail-copy p {
    margin-top:1rem;
    max-width: 350px;
}

/*================================
    No-breakout skincare
==================================*/

.skincare-body img {
    margin: 30px 0 16px 0;
}

.skincare-body .green-bar {
    position: absolute;
    top: 0px;
    right: 0;
    width: 75px;
    height: 100%;
    background-color: #00AB4E;
    z-index: -1;
}

.skincare-body p {
    max-width: 375px;
}

.skincare-text h3 {
    padding: 20px 0 20px 0;   
}

.skincare-text h3:after {
    position: absolute;
    content: "";
    height: 4px;
    background-color: #00AB4E;
    width: 250px;
    margin-left: 20px;
    bottom: 35px;
}

/*================================
    Product Columns
==================================*/

.overlay {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  z-index: 2;
  opacity: 1;
  cursor: pointer;
  /* background: rgba(39, 42, 43, 0.8);*/
  transition: opacity 200ms ease-in-out;
  /* border-radius: 4px; */
  margin: -15px 0 0 -15px;
}
.overlay a {
  margin: 5px;
}
.overlay a.metallic-shimmer-overlay {
    margin-top: 80px;
}
.overlay a.rose-smoky-overlay {
    margin-top: 70px;
}
.overlay a.glittery-eye-overlay {
    margin-top: 10px;
}
.overlay a.curl-reviving-overlay {
    margin-top: 10px;
}
.overlay a.sleek-wavy-overlay {
    margin-top: 30px;
}
.overlay a.luxe-ponytail-overlay {
    margin-top: 90px;
}
.overlay a.skincare-overlay {
    margin-top: 10px;
}
/*.overlay:hover {
    opacity: 1;
}*/
.shop-looks-arrow {
    font-weight: 100;
}

@media (max-width: 1024px) {
/*    .overlay {
      opacity: 1;
    }*/
}

/* ---- desktop grid ---- */

.product-grid {
    background: #FFF;
    max-width: 800px;
}
.product-grid-glitter-shimmer, .product-grid-rose-smoky, .product-grid-glittery-eye, .product-grid-reviving, .product-grid-sleek-wavy, .product-grid-skincare {
    background: #FFF;
    max-width: 600px;
}
 .product-grid-luxe-ponytail {
    background: #FFF;
    max-width: 500px;
}

/* clearfix */
.product-grid:after {
    content: '';
    display: block;
    clear: both;
}

/* ---- desktop grid-item ---- */

.product-grid-item {
    width: 150px;
    height: 120px;
    float: left;
/*    background: #D26;
    border: 2px solid #333;
    border-color: hsla(0, 0%, 0%, 0.5);
    border-radius: 5px;*/
}

.product-grid-item--right img {
  float:right;
}

.product-grid-item--width-5 { width: 100px; }
.product-grid-item--width-120 { width: 120px; }
.product-grid-item--width-130 { width: 130px; }
.product-grid-item--width-75 { width: 170px; }
.product-grid-item--width-180 { width: 180px; }
.product-grid-item--width1 { width: 200px; }
.product-grid-item--width1-2 { width: 220px; }
.product-grid-item--width1-5 { width: 230px; }
.product-grid-item--width240 { width: 240px; }
.product-grid-item--width250 { width: 250px; }
.product-grid-item--width1-8 { width: 300px; }
.product-grid-item--width2 { width: 320px; }
.product-grid-item--width360 { width: 360px; }
.product-grid-item--width2-4 { width: 380px; }
.product-grid-item--width2-5 { width: 400px; }
.product-grid-item--width2-8 { width: 450px; }
.product-grid-item--width3 { width: 480px; }
.product-grid-item--width3-2 { width: 500px; }
.product-grid-item--width3-5 { width: 520px; }
.product-grid-item--width4 { width: 640px; }
.product-grid-item--width5 { width: 700px; }

.product-grid-item--height-50 { height: 50px; }
.product-grid-item--height-5 { height: 100px; }
.product-grid-item--height-125 { height: 125px; }
.product-grid-item--height-130 { height: 130px; }
.product-grid-item--height-140 { height: 140px; }
.product-grid-item--height-160 { height: 160px; }
.product-grid-item--height-170 { height: 170px; }
.product-grid-item--height1 { height: 180px; }
.product-grid-item--height2 { height: 200px; }
.product-grid-item--height2-2 { height: 220px; }
.product-grid-item--height3 { height: 260px; }
.product-grid-item--height3-5 { height: 300px; }
.product-grid-item--height4 { height: 360px; }
.product-grid-item--height5 { height: 390px; }
.product-grid-item--height6 { height: 450px; }


/* ---- mobile grid ---- */

.product-grid-m {
    background: #fff;
    max-width: 340px;
}

/* clearfix */
.product-grid-m:after {
    content: '';
    display: block;
    clear: both;
}

/* ---- mobile grid-item ---- */

.product-grid-sizer-m,
.product-grid-item-m {
    width: 20%;
}

.product-grid-item-m {
    height: 120px;
    float: left;
/*    background: #D26;
    border: 2px solid #333;
    border-color: hsla(0, 0%, 0%, 0.5);
    border-radius: 5px;*/
}

.product-grid-item-m--width1 { width: 20%; }
.product-grid-item-m--width1-2 { width: 25%; }
.product-grid-item-m--width1-3 { width: 30%; }
.product-grid-item-m--width1-4 { width: 35%; }
.product-grid-item-m--width2 { width: 40%; }
.product-grid-item-m--width2-5 { width: 50%; }
.product-grid-item-m--width3 { width: 60%; }
.product-grid-item-m--width3-2 { width: 65%; }
.product-grid-item-m--width70 { width: 65%; }
.product-grid-item-m--width3-4 { width: 75%; }
.product-grid-item-m--width4 { width: 80%; }
.product-grid-item-m--width5 { width: 100%; }

.product-grid-item-m--height-5 { height: 50px; }
.product-grid-item-m--height-60 { height: 60px; }
.product-grid-item-m--height-70 { height: 70px; }
.product-grid-item-m--height-8 { height: 80px; }
.product-grid-item-m--height1 { height: 100px; }
.product-grid-item-m--height110 { height: 110px; }
.product-grid-item-m--height120 { height: 120px; }
.product-grid-item-m--height1-3 { height: 130px; }
.product-grid-item-m--height140 { height: 140px; }
.product-grid-item-m--height1-5 { height: 150px; }
.product-grid-item-m--height180 { height: 180px; }
.product-grid-item-m--height2 { height: 200px; }
.product-grid-item-m--height220 { height: 220px; }
.product-grid-item-m--height2-3 { height: 230px; }
.product-grid-item-m--height2-5 { height: 250px; }
.product-grid-item-m--height3 { height: 260px; }
.product-grid-item-m--height270 { height: 270px; }
.product-grid-item-m--height3-5 { height: 300px; }
.product-grid-item-m--height3-8 { height: 320px; }
.product-grid-item-m--height4 { height: 360px; }
.product-grid-item-m--height4-5 { height: 390px; }
.product-grid-item-m--height5 { height: 450px; }

.hover-container {
    position: relative;
    width: 100%;
}

.image-hover {
    opacity: 1;
    /* display: block; */
    /* width: 100%; */
    height: auto;
    transition: .5s ease;
    backface-visibility: hidden;
}

.middle {
    transition: .5s ease;
    opacity: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    text-align: center;
}

.hover-container:hover .image-hover {
    opacity: 0.3;
}

.hover-container:hover .middle {
    opacity: 1;
}

/* Bottom Promo Container */

.bottom-container a {
    padding:20px 0 2px 0;
    color: #303030;
    position: relative;
    text-decoration: none;
    font-size: 16px;
    font-weight: 600;
}

.bottom-container a:hover {
    color: #303030;
    text-decoration: none;
}

.bottom-container a:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    bottom: 0;
    left: 0;
    background-color: #303030;
    -webkit-transition: all 0.3s ease-in-out 0s;
    -moz-transition: all 0.3s ease-in-out 0s;
    -o-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
    transform-origin: top left;
}

.bottom-container a:hover:before {
    -webkit-transform: scaleY(2);
    -moz-transform: scaleY(2);
    -o-transform: scaleY(2);
    transform: scaleY(2);
}

/* Ridicuolusly large devices (large desktops, 2080px and up) */
@media only screen and (min-width: 2080px)  {
    .title-box {
        position:absolute;
        left:10%;
        bottom: 0;
        top:50%;
        transform:translateY(-50%);
    }
        
}

/* Extra large devices (large desktops, 1200px and up) */
@media only screen and (min-width: 1195px) and (max-width: 2080px) {
    .title-box {
        position:absolute;
        left:10%;
        bottom: 0;
        top:50%;
        transform:translateY(-50%);
    }
        
}

/* Large screens and laptops */
@media only screen and (min-width: 990px) and (max-width: 1194px) { 
    .title-box {
        position: absolute;
        left:10%;
        bottom: 0;
        top:50%;
        transform:translateY(-50%);
    }
}

/* Tablets, small desktop and laptops */
@media only screen and (min-width: 768px) and (max-width: 989px) {
    .title-box {
        position: absolute;
        left:8%;
        bottom: 0; 
        top:50%; 
        transform:translateY(-50%);
        padding: 15px;
        max-width: 390px;
        width: 100%;
        min-height: 200px;
        height: 100%;
    }
    .title-box h1 {
        font-size: 2.5em;
        margin-bottom: 0;
    }
}


/* Small screens portrait size */
@media only screen and (min-width: 600px) and (max-width: 767px) {

    .title-box {
        position: absolute;
        top: 0;
        left: 25%;
        right: 25%;
        max-width:343px;
        width:100%;
        max-height: 247px;
        height:100%;
    }

    .title-box h1 {
        font-size: 2.75em;
    }

}


/* Small screens to larger screens portrait size */
@media only screen and (min-width: 480px) and (max-width: 599px) {
    .title-box {
        position:absolute;
        top:0;
        left:50%;
        transform: translate(-50%);
        z-index: 1000;
        max-width:343px;
        width:100%;
        max-height: 247px;
        height:100%;
    }
    .title-box h1 {
        font-size: 2.75em;
    }
}

/* Small screens portrait */
@media only screen and (min-width: 320px) and (max-width: 479px) {  
    .title-box {
        position:absolute;
        top:0;
        left:50%;
        transform: translate(-50%);
        padding: 10px;
        z-index: 1000;
        max-width:343px;
        width:100%;
        max-height: 247px;
        min-height:247px;
        height:100%;
    }
    .title-box h1 {
        font-size: 2.75em;
    }
    
    .mobile-left {margin-left: 20px;}
    .current-hero {background-image: none;}
    .text-mobile-left {text-align: left;}
    .text-mobile-left h2 {font-size: 31px;}
    .hero-copy h1 {text-align:center;}
    .hero-copy p {
        color: #303030;
        font-size: 18px;
        font-weight: 400;
        line-height: 27px;
    }
}

@media only screen and (max-width: 767px) {
    .free-ship-image {
        position: absolute;
        right: 6%;
        top: 70%;
        width: 180px;
    }
}



@media only screen and (max-width: 599px) {
    img.mobile-header {
        width: 100%;
    }
    .stylist-image img {
        max-width:450px;
        width:100%;
    }
    .title-box h1 {
        padding-top:15px;
    }
}

@media only screen and (max-width: 399px) {
    .free-ship-image {
        position: absolute;
        right: 6%;
        top: 70%;
        width: 160px;
    }
}

@media (max-width: 1199px) {
    .fish-tail-copy p {
        padding: 0;
        max-width: 550px;
        text-align:left;
    }
    .pineapple-hair-red-bar {
        right: -30px;
    }
    .skin-care-orange-bar {
        left: -20px;
        width: 90px;
        height: 115%;
    }
    .skin-care-body img {
        margin: 0 0 0 20px;
    }

}
@media (max-width: 991px) {
    .video-wrap .play-btn {
        left: 5%;
        top: 95%;
    }
    .video-wrap .pause-btn {
        left: 5%;
        top: 95%;
    }
    .bootstrap-wrapper .text-left-m {
        text-align: left!important;
    }
    .curl-reviving-copy h3 {
        left: 390px;
    }
    .metallic-body .magenta-bar {
        position: absolute;
        top: 0px;
        right: 0;
        width: 110px;
        height: 100%;
        background-color: #DF068C;
        z-index: -1;
    }
    img.metallic-shimmer-d {
        width:80%;
    }
    .glittery-body h3 {
        width:120%;
        left: 430px;
    }
    img.curl-reviving-d {
        width:80%;
    }
    .sleek-wavy-body h3 {
        top: 220px;
    }
    .sleek-wavy-body h3:after {
        width: 38%;
        left: 40%;
    }
    img.sleek-wavy-bottom-image {
        position: relative;
        top: -60px;
        left: -20px;
    }
    .luxe-ponytail-copy p {
        padding-top:20px;
        max-width: 250px;
    }
    .skincare-body p {
        max-width: 250px;
    }
    .overlay a.rose-smoky-overlay {
        margin-top: 0;
    }
}

@media (max-width: 767px) {
    .no-padding-m {
        padding-left: 0  !important;
        padding-right: 0 !important;
    }

    .no-padding-left-m {
        padding-left: 0  !important;
    }

    .no-padding-right-m {
        padding-right: 0 !important;
    }
    .remix-content h3 {
        padding: 0;
    }
    .remix-content h2, .remix-content h2.hair-title, .remix-content h2.skin-title {
        font-size: 1.75rem;
    }
    .video-wrap .play-btn {
        width: 30px;
        height: 30px;
        left: 6%;
        top: 90%;
    }
    .video-wrap .pause-btn {
        width: 30px;
        height: 30px;
        left: 6%;
        top: 90%;
    }
    .beauty-trends-container p {
        padding: 0;
    }
    .metallic-body .magenta-bar {
        right: 150px;
        width: 100px;
    }
    .metallic-text p {
        margin: 1rem 0;
    }
    .curl-reviving-body h3 {
        width: 120%;
        left: 360px;
        letter-spacing: 1px;
        top: 0;
    }
    .curl-reviving-body h3:before {
        position: absolute;
        content: "";
        height: 5px;
        background-color: #F5A1BE;
        width: 28%;
        left: 240px;
        top: 50%;
    }
    .curl-reviving-body img {
        margin: 30px 50px;
    }
    .curl-reviving-copy {
        margin-left: 0;
        padding-top: 0;
    }
    .curl-reviving-copy p {
        padding: 0 0 0 100px;
        max-width: 320px;
    }
    .glittery-body h3 {
        width: 120%;
        left: 360px;
        letter-spacing: 1px;
    }
    .glittery-body .magenta-bar {
        position: absolute;
        top: 0px;
        width: 75px;
        height: 130%;
        background-color: #DF068C;
        z-index: -1;
    }
    .glittery-body h3:before {
        position: absolute;
        content: "";
        height: 5px;
        background-color: #F5A1BE;
        width: 15%;
        left: 340px;
        top: 70%;
    }
    .glittery-copy p {
        padding: 0 0 20px 80px;
        max-width: 290px;
        text-align: left;
    }
    .glittery-body img {
        margin: 30px 30px 30px 20px;
    }
    .glittery-body .pink-bar {
        position: absolute;
        top: 0px;
        width: 75px;
        height: 110%;
        background-color: #F5A1BE;
        z-index: -1;
    }
    img.sleek-wavy-bottom-image {
        position: absolute;
        top: 220px;
    }
    .sleek-wavy-body h3 {
        top: 190px;
        margin-left: 15px;
    }
    .sleek-wavy-body h3:after {
        width: 26%;
        left: 35%;
        top: 80%;
    }
    .sleek-wavy-body .pink-bar {
        display: block;
        position: absolute;
        right: 0;
        left: 120px;
        top: -40px;
        height: 150%;
        width: 100px;
    }
    .sleek-wavy-text p {
        padding: 130px 0 0 0;
    }
    .luxe-ponytail-body h3 {
        font-size: 2rem;
        padding: 0;
        margin-bottom: 1rem;
    }
    .luxe-ponytail-copy p {
        padding-left:15px;
        max-width: 280px;
    }
    .luxe-ponytail-copy .pink-bar {
        top: 50px;
    }
    .skincare-body p {
        padding: 16px 0 0 15px;
        max-width: 280px;
    }
    .skincare-body .green-bar {
        top: 100px;
        height: 85%;
    }
    .skincare-text h3:after {
        bottom: 13px;
    }
    .luxe-ponytail-container {
        margin-top: 0rem;
    }

    .orange-bar {
        right: 130px;
        width:100px;
    }
    .bold-lip-body img {
        margin-left:40px;
    }
    .m-text-center {
        text-align: center !important;
    }
    .bold-lip-body h3 {
      font-size: 2rem;
      top: 200px;
      left: 0;
      margin-left: -33px;
    }
    .bold-lip-body h3:after {
        width: 37%;
        right: 530px;
    }
    .bronzed-eyes-copy-m p {
        padding:0 0 0 120px;
        text-align:left;
        max-width: 370px;
    }
    .bronzed-eyes-header {
        padding: 0 0 0 160px;
    }
    .pineapple-hair-red-bar {
        top: 30px;
        right: 65px;
        height: 100%;
    }
    .fish-tail-copy p {
        padding:0 0 0 60px;
        max-width: 260px;
    }
    .fish-tail-body img {
        margin: 10px 10px 10px 0;
    }
    .fish-tail-orange-bar {
        position: absolute;
        width: 60px;
        height: 110%;
        left: -10px;
    }
    .fish-tail-body h3 {
        left: 330px;
        font-size: 1.6rem;
    }
    .fish-tail-body h3:before {
        left: 250px;
        top:40%;
    }
    .skin-care-orange-bar {
        left: -20px;
        width: 90px;
        height: 75%;
    }
    .skin-care-body h3 {
        left: 310px;
        font-size: 2rem;
    }
    .skin-care-body h3:after {
        left: 310px;
        top: 40%;
    }
    .skin-care-body p {
        margin: 20px 0 30px 70px;
        padding: 0;
        max-width: 210px;
    }
    .overlay a.metallic-shimmer-overlay {
        margin-top: 20px;
    }
    .overlay a.rose-smoky-overlay {
        margin-top: 0;
    }
    .overlay a.glittery-eye-overlay {
        margin: 0 0 170px 0;
    }
    .overlay a.curl-reviving-overlay {
        margin: 0 0 150px 0;
    }
    .overlay a.sleek-wavy-overlay {
        margin: 0 0 160px 0;
    }
    .overlay a.luxe-ponytail-overlay {
        margin-top: 70px;
    }
    .overlay a.skincare-overlay {
        margin: 0 0 180px 0;
    }
}

@media (max-width: 576px) {
    .metallic-body .magenta-bar {
        display: block;
        position: absolute;
        right: 0;
        left: 280px;
        top: 0;
    }
    .rose-glow-body .magenta-bar {
        position: absolute;
        top: 0;
        left: 0px;
        width: 90px;
        height: 127%;
        background-color: #DF068C;
        z-index: -10;
    }
    .rose-glow-copy-m p {
        padding: 10px 0 20px 100px;
        max-width: 340px;
    }
    .rose-glow-header {
        padding: 0 0 0 100px;
    }


    .bold-lip-body h3 {
        font-size: 1.8rem;
        top: 180px;
        margin-left: -13px;
    }
    .bold-lip-body h3:after {
        /*display: block;
        position: relative;
        width: 35%;
        right: 170px;
        top: -18px;*/
        width: 210px;
        left: -230px;
    }
    .pineapple-hair-red-bar {
        top: 30px;
        right: 0;
        height: 100%;
    }
    .fish-tail-body h3:after {
        width: 70px;
        left: -80px;
    }
    .bronzed-eyes-header {
        padding: 0 0 0 100px;
    }
    .hero-container--video-fullbleed {
        height: calc(60vh - 159px);
    }
    .pineapple-hair-text p {
        max-width: 270px;
    }
}

@media (max-width: 320px) {
    .top-left-header {
        padding:0;
    }
    .bronzed-eyes-header {
        padding: 0 0 0 100px;
    }

}
