﻿/*-----------------------------------------------------
[Style Sheet for "Hair Heros"]

Last Change: 6/24/19
	* Added inline styles to stylesheet
-----------------------------------------------------*/

@import "fonts.css";
@import "font-awesome.css";
@font-face {
    font-family: 'Hello Beautiful';
    src: url('fonts/HelloBeautiful.eot');
    src: url('fonts/HelloBeautiful.eot?#iefix') format('embedded-opentype'),
        url('fonts/HelloBeautiful.woff2') format('woff2'),
        url('fonts/HelloBeautiful.woff') format('woff'),
        url('fonts/HelloBeautiful.ttf') format('truetype'),
        url('fonts/HelloBeautiful.svg#HelloBeautiful') format('svg');
    font-weight: normal;
    font-style: normal;
}


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

html,
body {
    height: 100%;
	margin: 0;}
	
	
.bootstrap-wrapper{
	overflow: hidden;
}

body {
	color: #000;
	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: #000;
	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;}

/* Overrides react.css font styles */
.bootstrap-wrapper div {
	color: #000 !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: #e90b5a;
		font-weight: 600;
		text-decoration: none;
		text-transform: uppercase;}
		
	a:hover.primary-link {
		color: #c00b4b;
		text-decoration: none;
		text-transform: uppercase;}
		
	a:focus.primary-link {
		color: #c00b4b;
		text-decoration: none;
		text-transform: uppercase;}
			
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;}

/* 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-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 browsers.  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;} */

/*=================================
    Hero Headers & Copy
==================================*/

.current-hero {
	background-image: url(https://images.ulta.com/is/image/Ulta/current-hair-hero_bg?scl=1);
	background-repeat: no-repeat;
	background-size: cover;}

.hero-copy h1 {
	color: #303030;
	font-family: Helvetica, Arial, "sans-serif";
	font-size: 36px;
	font-weight: bold;}


.hero-copy h2 {
	color: #000000;
	font-family: Helvetica, Arial, "sans-serif";
	font-size: 24px;
	font-weight: 200; 
	line-height: 30px; 
	margin-bottom:18px;}

.hero-copy h2 span {
	color: #e9025b;
	font-weight: 500;}

.hero-copy h3 {
	color: #303030;
	font-size: 24px;
	font-weight: 400;
	margin-bottom: 3px;}
	
.hero-copy h5 {
	color: #303030;
	font-size: 20px;
	font-weight: 300;
	line-height:25px; margin-bottom:0;
	;}

.hero-copy p {
	color: #303030;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;}

/*=================================
    Styles for main page elements
==================================*/
.no-padding-desk {
	padding-left: 0 !important;
	padding-right: 0 !important;}

.smaller {
	color: #000000;
	font-size: 14px;
	font-weight: 200;
	line-height: 19px;}

.bold {font-weight: 600;}

.underline {border-bottom: 4px solid #f1f1f1;display:inline-block;padding-bottom:8px;}

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

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

.hair-heroes-header {
	max-width: 1400px;
}

/*.title-box {
	position: absolute;
	top: 1px; 
	left:1%; 
	margin:0 auto; 
	z-index:2;
	display:table;
	padding: 6% 3% 4% 3%; 
	background:url(../../shared-assets/images/wild-streak.png) no-repeat;
	background-size:contain;
	background-color:rgba(255,255,255,0.9);
	width:100%;
	max-width:500px
}*/

.title-box img {
  	width:95%; 
  	max-width: 500px;
  	margin: 0 auto; 
  	clear: both;
}
  
.title-box p {color:#303030; font-size:18px;line-height: 27px;margin-left:25px; margin-right:25px;font-weight:500;text-align: center;}

.title-box h2 {
	color:#303030; 
	font-size: 24px;
	font-weight:normal;
	line-height: 1.2em;
}

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;
}

/*=================================
    Stylist Section
==================================*/

.stylist-image img {
	max-width:350px;
}

/*=================================
    Titles & Descriptions
==================================*/

.hb-title {
	font-family: 'Hello Beautiful';
	color:#e90b5a;
	font-size: 60px;
	font-weight: 100;
}
/*=================================
    Quotes Backgrounds
==================================*/

.quotes-pink {position: relative;z-index:5;padding-top:30px;display:block;}

.quotes-pink:after {content:"";
	background: url(https://images.ulta.com/is/image/Ulta/quote-pink?fmt=png-alpha&scl=1);
	background-repeat: no-repeat;
	background-position: top left;width:70px; height:70px;top:0;
	background-size: contain;position:absolute;z-index:-1;}

.quotes-pink-end {padding-bottom:15px; position: relative;z-index:5; display:block;}

.quotes-pink-end:after {content:"";
	background: url(https://images.ulta.com/is/image/Ulta/quote-pink?fmt=png-alpha&scl=1);
	background-repeat: no-repeat;
	background-position: top left;width:70px; height:70px;bottom:0;
	background-size: contain;position:absolute;z-index:-1;-webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);}

.quotes-gray {position: relative;z-index:5;padding-top:30px;display:block;}

.quotes-gray:after {content:"";
	background: url(https://images.ulta.com/is/image/Ulta/quote-gray?fmt=png-alpha);
	background-repeat: no-repeat;
	background-position: top left;width:70px; height:70px;top:0;
	background-size: contain;position:absolute;z-index:-1;}

.quotes-gray-end {padding-bottom:15px; position: relative;z-index:5; display:block;}

.quotes-gray-end:after {content:"";
	background: url(https://images.ulta.com/is/image/Ulta/quote-gray?fmt=png-alpha);
	background-repeat: no-repeat;
	background-position: top left;width:70px; height:70px;bottom:0;
	background-size: contain;position:absolute;z-index:-1;-webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);}

.quotes-orange-big {position: relative;z-index:5;padding-top:30px;display:block;}

.quotes-orange-big:after {content:"";
	background: url(https://images.ulta.com/is/image/Ulta/quote-orange-big?fmt=png-alpha&scl=1);
	background-repeat: no-repeat;
	background-position: top left;width:70px; height:70px;top:0;
	background-size: contain;position:absolute;z-index:-1;}

.quotes-orange-big-end {padding-bottom:15px; position: relative;z-index:5; display:block;}

.quotes-orange-big-end:after {content:"";
	background: url(https://images.ulta.com/is/image/Ulta/quote-orange-big?fmt=png-alpha&scl=1);
	background-repeat: no-repeat;
	background-position: top left;width:70px; height:70px;bottom:0;
	background-size: contain;position:absolute;z-index:-1;-webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);}
	
.quotes-lavender {position: relative;z-index:5;padding-top:30px;display:block;}

.quotes-lavender:after {content:"";
	background: url(https://images.ulta.com/is/image/Ulta/quote-lavender?fmt=png-alpha&scl=1);
	background-repeat: no-repeat;
	background-position: top left;width:70px; height:70px;top:0;
	background-size: contain;position:absolute;z-index:-1;}

.quotes-lavender-end {padding-bottom:15px; position: relative;z-index:5; display:block;}

.quotes-lavender-end:after {content:"";
	background: url(https://images.ulta.com/is/image/Ulta/quote-lavender?fmt=png-alpha&scl=1);
	background-repeat: no-repeat;
	background-position: top left;width:70px; height:70px;bottom:0;
	background-size: contain;position:absolute;z-index:-1;-webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);}
	
/*.quotes-grey {
	background: url(../../dry-shampoo/images/quote-grey.png);
	background-repeat: no-repeat;
	background-position: top left;
	background-size: contain;
	height: 40px;
	position: relative;}*/

.quotes-orange {
	background: url(../../dry-shampoo/images/quote-orange.png);
	background-repeat: no-repeat;
	background-position: top left;
	background-size: contain;
	height: 40px;
	position: relative;}

/*=================================
    Bottom Section
==================================*/

.bottom-section h3 {
	font-weight:400;
	font-size:24px;
}

.bottom-section p {
	font-weight:400;
	font-size:16px;
}

/*=================================================
    Media Queries
==================================*/

/* 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%);
		z-index:2;
		display:table;
		width: 68%;
		min-height:313px;
		padding: 35px 10px 20px 10px;
		background:url(../../shared-assets/images/wild-streak.png) no-repeat;
		background-size:contain;
		background-color:rgba(255,255,255,0.9);
		max-width:400px;
		height:313px !important;
	}
	.title-box img {
		width:95%;
		max-width: 400px;
	}
	 .title-box p {color:#303030; font-size:18px;line-height: 27px;margin-left:15px; margin-right:15px;}
  .title-box p.no-margin {margin-left: 8px; margin-right: 8px;}
	.title-box h2 {font-size: 24px;line-height: 30px;margin-top:3%;}
  
		
}

/* Extra large devices (large desktops, 1200px and up) */
@media only screen and (min-width: 1195px) and (max-width: 2080px) {	
.cheese {background-color: black; height: 50px; width: 50px;} /* Class for visually showing were breakpoints are for testing */

.title-box {
		position:absolute;
		left:10%;
		bottom: 0;
		top:50%;
		transform:translateY(-50%);
		z-index:2;
		display:table;
		width: 68%;
		min-height:313px;
		padding: 35px 10px 20px 10px;
		background:url(../../shared-assets/images/wild-streak.png) no-repeat;
		background-size:contain;
		background-color:rgba(255,255,255,0.9);
		max-width:400px;
		height:313px !important;
	}
	.title-box img {
		width:95%;
		max-width: 400px; 
	}
	 .title-box p {color:#303030; font-size:18px;line-height: 27px;margin-left:15px; margin-right:15px;}
  .title-box p.no-margin {margin-left: 8px; margin-right: 8px;}
	.title-box h2 {font-size: 24px;line-height: 30px;margin-top:3%;}
  
		
}

/* 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%);
	z-index:2;
	display:table;
	width: 68%;
	min-height:313px;
	padding: 35px 10px 20px 10px; 
	background:url(../../shared-assets/images/wild-streak.png) no-repeat;
	background-size:contain;
	background-color:rgba(255,255,255,0.9); 
	max-width:400px;
	height:313px !important;
}
	.title-box img {width:95%; max-width: 400px; }
	 .title-box p {font-size:16px;line-height: 22px;margin-left:8px; margin-right:8px;}
  .title-box p.no-margin {margin-left: 8px; margin-right: 8px;}
  .title-box h2 {font-size: 24px;line-height: 30px;margin-top:3%;}
  
.cheese {background-color: orange; height: 50px; width: 50px;}
	
		/* Styles for Ulta header cart dropdown */	
		.navbar .s-cont .search-cont input.search-input {
			font-size: 13px !important;
			height: 30px;
			width: 186px;}
	
}

/* Tablets, small desktop and laptops */
@media only screen and (min-width: 768px) and (max-width: 989px) {	
.cheese {background-color: blue; height: 50px; width: 50px;}
	
	/* Styles for Ulta header cart dropdown */	
	.navbar .s-cont .search-cont input.search-input {
		font-size: 13px !important;
		height: 30px;
		width: 115px;}
	.title-box {
		position: absolute;
		left:8%;
		bottom: 0; 
		top:50%; 
		transform:translateY(-50%);
		z-index:2;
		display:table;
		width: 68%;
		min-height:251px;
		padding: 25px 10px 10px 10px; 
		background:url(../../shared-assets/images/wild-streak.png) no-repeat;
		background-size:contain;
		background-color:rgba(255,255,255,0.9); 
		max-width:300px;
		height:251px !important;
	}
	.title-box img {width:95%; max-width: 300px; }
	.title-box p {color:#000; font-size:14px;line-height: 1.3em;margin-left:8px; margin-right:8px;}
  .title-box p.no-margin {margin-left: 8px; margin-right: 8px;}
  .title-box h2 {font-size: 22px;line-height: 26px;margin-top:3%;}
  
  
	.hero-copy h1 {
		color: #303030 !important;
		
		font-size: 22px;
		font-weight: bold !important;}
	
	.hero-copy p {
		color: #303030;
		font-size: 16px;
	font-weight: 400;
		}
		
}


/* Small screens portrait size */
@media only screen and (min-width: 600px) and (max-width: 767px) {
.cheese {background-color: green; height: 50px; width: 50px;}
.title-box {
    position: absolute;
    top: 0;
    left: 5%;
    right: 5%;
    z-index: 2;
    display: table;
    width: 90%;
    max-width: 600px;
    margin: 0px auto;
    padding: 6% 3% 4%;
    background: url(../images/wild-streak.png) 0% 0% / contain no-repeat rgba(255, 255, 255, 0.9);
}
	
	
.no-padding {
	padding-left: 0  !important;
	padding-right: 0 !important;}
	
	.current-hero {background-image: none;}
	
	.pro-section {
		background-color: #fcdce2;
		background-image: none;}

	.quiz-section {
		background-color: #f1f1f1;
		background-image: none;}

}


/* Small screens to larger screens portrait size */
@media only screen and (min-width: 480px) and (max-width: 599px) {
.cheese {background-color: yellow; height: 50px; width: 50px;}
	
.title-box {
    position: absolute;
    top: 0;
    left: 5%;
    right: 5%;
    z-index: 2;
    display: table;
    width: 90%;
    max-width: 600px;
    margin: 0px auto;
    padding: 6% 3% 4%;
    background: url(../images/wild-streak.png) 0% 0% / contain no-repeat rgba(255, 255, 255, 0.9);
}
	
.no-padding {
	padding-left: 0  !important;
	padding-right: 0 !important;}
	
	.current-hero {background-image: none;}
	
	.pro-section {
		background-color: #fcdce2;
		background-image: none;}

	.quiz-section {
		background-color: #f1f1f1;
		background-image: none;}

}

/* Small screens portrait */
@media only screen and (min-width: 320px) and (max-width: 479px) {	
.cheese {background-color: red; height: 50px; width: 50px;}

.title-box {
    position: absolute;
    top: 0;
    left: 8%;
    right: 8%;
    z-index: 2;
    display: table;
    width: 85%;
    max-width: 400px;
    margin: 0px auto;
    padding: 6% 3% 4%;
    background: url(../images/wild-streak.png) 0% 0% / contain no-repeat rgba(255, 255, 255, 0.9);
}
	
  
.no-padding {
	padding-left: 0  !important;
	padding-right: 0 !important;}
	
	.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;
    }
	
	.pro-section {
		background-color: #fcdce2;
		background-image: none;}

	.quiz-section {
		background-color: #f1f1f1;
		background-image: none;}

}

@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 h2 {
		padding-top:15px;
	}
}

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

