
/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media screen {
	
	/* ---- overall - general ---- */
	
	body {
		font-family:proxima-nova,sans-serif;
		font-size:16px;
		font-weight:300;
		color:#333;
		line-height:140%;
		letter-spacing:0.01em;
		background-color:#fff;
	}
	
	.site_maxwidth {
		width:100%;
		margin:0 auto;
		background-color:#fff;
		overflow:hidden;
	}
	
	.panel_maxwidth {
		width:90%;
		max-width:1600px;
		margin:0 auto;
	}
	
	.panel_padding {
		padding:32px 0;
	}
	
	/* ---- overall - text ---- */
	
	p {
		margin:0.75em 0;
	}
	
	p:first-child {
		margin-top:0;
	}
	
	p:last-child {
		margin-bottom:0;
	}
	
	a {
		color:#6c8c77;
		color:#222;
	}
	
	ul, ol {
		margin:0.75em 0;
		padding:0 0 0 1em;
	}
	
	ul li, ol li {
		margin:0.3em 0;
		line-height:120%;
	}
	
	h1,h2,h3,h4,h5,h6 {
		font-weight:600;
		margin:1em 0 0.75em 0;
		line-height:110%;
	}
	
	h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child {
		margin-top:0;
	}
	
	h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child,h6:last-child {
		margin-bottom:0;
	}
	
	h1 {
		font-size:2em;
	}
	
	h2 {
		font-size:1.6em;
	}
	
	h3 {
		font-size:1.4em;
	}
	
	h4 {
		font-size:1.2em;
	}
	
	h5 {
		font-size:1.2em;
	}
	
	h6 {
		font-size:1.2em;
	}
	
	pre {
		font-size:0.8em;
		line-height:120%;
	}
				
	/* ---- overall - buttons ---- */
	
	.button {
		display:inline-block;
		line-height:105%;
		padding:12px 16px;
		background-color:#444;
		color:#fff;
		text-decoration:none;
		border-radius:4px;
		font-weight:400;
		border:none;
		cursor:pointer;
		border:2px solid #444;
	}
		
	.button.tiny {
		padding:4px 8px;
		font-size:0.75em;
	}
	
	.button.small {
		padding:8px 12px;
		font-size:0.9em;
	}
	
	.button.large {
		padding:16px 24px;
	}
	
	.button.purple {
		background-color:#958aa8;
		border-color:#958aa8;
	}
	
	.button.pink {
		background-color:#e699a6;
		border-color:#e699a6;
	}
	
	.button.green {
		background-color:#9ab7a4;
		border-color:#9ab7a4;
	}
	
	.button.cream {
		background-color:#F1E2D6;
		border-color:#F1E2D6;
	}
	
	.button.grey {
		background-color:#666;
		border-color:#666;
	}
	
	.button.white {
		background-color:#f9f9f9;
		color:#666;
		border-color:#f9f9f9;
	}
	
	.button.xmas {
		background-color:#d0f3f0;
		color:#666;
		border-color:#d0f3f0;
	}
	
	.button.transparent {
		background-color:transparent;
		color:#999;
		border-color:transparent;
	}
	
	.button.outline {
		border:2px solid #333;
		color:#333;
		background:transparent;
	}
	
	.button.outline.pink {
		border-color:#e699a6;
		color:#e699a6;
		background:transparent;
	}
	
	.button.outline.xmas {
		border-color:#d0f3f0;
		color:#d0f3f0;
		background-transparent;
	}
	
	.button.add_to_cart:before {
		display:inline-block;
		content:'+';
		margin-right:8px;
	}
	
	/* ---- overall - forms ---- */
	
	.form {
		
	}
	
	.form .row,
	.form .freeform-row {
		display:flex;
		flex-direction:column;
		margin:0 -16px;
	}
	
	.form .column,
	.form .freeform-column {
		flex:1 1 100%;
		margin:0 16px;
		padding:12px 0;
	}
		
	.form label {
		display:block;
		font-weight:400;
		margin-bottom:4px;
	}
	
	.form .req {
		display:inline-block;
		margin-left:4px;
		color:#ccc;
		font-weight:300;
	}
	
	.form .freeform-row .freeform-column .freeform-label {
		font-weight:400;
	}
	
	.form input[type='text'],
	.form input[type='number'],
	.form input[type='email'],
	.form input[type='tel'],
	.form input[type='password'] {
		box-sizing:border-box;
		width:100%;
		height:40px;
		border:1px solid #ccc;
		border-bottom-width:2px;
		padding:0 12px;
		box-shadow:none;
		border-radius:4px;
	}
	
	.form input[type='text']:focus,
	.form input[type='number']:focus,
	.form input[type='email']:focus,
	.form input[type='tel']:focus,
	.form input[type='password']:focus {
		border-color:#666;
		box-shadow:none;
	}
	
	.form input[type='text']:valid,
	.form input[type='number']:valid,
	.form input[type='email']:valid,
	.form input[type='tel']:valid,
	.form input[type='password']:valid {
		box-shadow:none;
	}
	
	.form input[type='text']:invalid,
	.form input[type='number']:invalid,
	.form input[type='email']:invalid,
	.form input[type='tel']:invalid,
	.form input[type='password']:invalid {
		box-shadow:none;
		/*border-bottom-color:#c00;*/
	}
	
	.form textarea {
		width:100%;
		min-height:160px;
		border:1px solid #ccc;
		border-bottom-width:2px;
		padding:12px;
		resize:vertical;
		border-radius:4px;
	}
	
	.form textarea:focus {
		border-color:#666;
	}
	
	.form textarea:invalid {
		border-bottom-color:#c00;
	}
	
	.form select {
		box-sizing:border-box;
		width:100%;
		border:1px solid #ccc;
		border-radius:4px;
		height:40px;
		padding:0 8px;
	}
	
	input[type='submit']:focus,
	input[type='button']:focus,
	button:focus,
	.button:focus {
		outline:4px solid rgba(200,200,200,0.5);
	}
	
	.form .field_error {
		display:block;
		padding:4px 12px;
		background-color:#f6e9e9;
		color:#914141;
	}
	
	.form .checkbox_list {
		
	}
	
	.form fieldset.checkbox_list {
		border:none;
		padding:0;
		margin:0;
	}
	
	.form fieldset.checkbox_list legend {
		margin-bottom:8px;
		font-weight:500;
	}
	
	.form .checkbox_list .checkbox_item {
		display:flex;
		padding:8px;
		border:1px solid #ddd;
		margin:0 0 4px 0;
		border-radius:4px;
	}
	
	.form .checkbox_list .checkbox_item input {
		margin-right:8px;
	}
	
	.form .checkbox_list .checkbox_item.checked {
		border-color:#ccc;
		background-color:#f5f5f5;
	}
	
	/* ---- messages ---- */
	
	#ajax_messages {
		position:fixed;
		right:16px;
		bottom:16px;
		width:90%;
		max-width:384px;
	}
	
	#ajax_messages .message {
		display:flex;
		align-items:center;
		background-color:#fcfcfc;
		padding:16px;
		border:1px solid #eee;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		margin:8px 0 0 0;
		opacity:0;
		visibility:hidden;
		transition:opacity 1s, visibility 0s 1s;
	}
	
	#ajax_messages .message.show {
		opacity:1;
		visibility:visible;
		transition:opacity 0.5s 0.1s, visibility 0s 0s;
	}
	
	#ajax_messages .message.message_notice {
		background-color:#fffced;
		border-color:#fbf1cd;
	}
	
	#ajax_messages .message.message_error {
		background-color:#faf5f6;
		border-color:#f6e9e9;
	}
		
	#ajax_messages .message .icon {
		flex:0 0 16px;
		margin:0 16px 0 0;
	}
		
	#ajax_messages .message .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		vertical-align:middle;
	}
	
	/* ---- header ---- */
	
	#header {
		position:relative;
		background-color:#fff;
		line-height:100%;
		white-space:nowrap;
		border-bottom:1px solid #eee;
		z-index:900;
	}
	
	#header:after {
		position:absolute;
		display:block;
		content:'';
		top:100%;
		right:0;
		left:0;
		height:8px;
		background: linear-gradient(to bottom, rgba(0,0,0,0.025) 0%, rgba(0,0,0,0) 100%);
	}
	
	#header a {
		color:#333;
		text-decoration:none;
	}
	
	#header ul {
		margin:0;
		padding:0;
	}
	
	#header li {
		margin:0;
		list-style:none;
	}
	
	#header .header_top {
		display:flex;
		justify-content:space-between;
		align-items:center;
		height:64px;
		padding:0 16px;
	}
	
	#header .header_top .logo {
		
	}
	
	#header .header_top .logo img {
		width:160px;
		height:auto;
		vertical-align:top;
	}
	
	#header .header_top .nav_button {
		padding:8px;
		margin:-8px;
	}
	
	#header .header_top .nav_button img {
		width:24px;
		height:auto;
	}
	
	#header .header_bot {
		display:none;
		border-top:1px solid #ddd;
	}
	
	#header.open .header_bot {
		display:block;
	}
	
	#header .nav {
		
	}
	
	#header .nav > li > a {
		position:relative;
		display:block;
		padding:12px 16px;
		border-bottom:1px solid #ddd;
		font-weight:400;
	}
		
	#header .nav > li.has_dropdown > a:after {
		position:absolute;
		display:inline-block;
		content:'+';
		color:#ccc;
		top:50%;
		right:16px;
		transform:translateY(-50%);
	}
	
	#header .nav > li.has_dropdown.open > a:after {
		transform:translateY(-50%);
		content:'−';
	}
	
	#header .nav > li.has_dropdown > ul.dropdown {
		display:none;
		background-color:#f9f9f9;
	}
	
	#header .nav > li.has_dropdown.open .dropdown {
		display:block;
	}
	
	#header .dropdown_shop {
		
	}
	
	#header .dropdown.dropdown_shop .dropdown_section {
		display:flex;
		border-bottom:1px solid #ddd;
		padding:8px 0;
	}
		
	#header .dropdown.dropdown_shop .dropdown_section .image {
		padding:8px 0 0 16px;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .image img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .text {
		width:100%;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .text .main_item {
		display:block;
		padding:8px 16px;
		font-weight:400;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .text ul li a {
		display:block;
		padding:8px 16px;
	}
	
	#header .dropdown.dropdown_about {
		padding:8px 0;
		border-bottom:1px solid #ddd;
	}
	
	#header .dropdown.dropdown_about li a {
		display:block;
		padding:8px 16px;
	}
	
	#header .utilities {
		display:flex;
		padding:12px 16px;
	}
	
	#header .utilities li {
		margin-right:16px;
	}
	
	#header .utilities li a {
		display:flex;
		font-size:0.9em;
		font-weight:400;
		padding:8px;
		margin:-8px;
		color:#999;
	}
		
	#header .utilities li a .icon {
		flex:0 0 auto;
		margin-right:8px;
	}
	
	#header .utilities li a .icon img {
		display:inline-block;
		vertical-align:middle;
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	#header .utilities li a .text {
		flex:0 0 auto;
	}
		
	#header .utilities li.cart a {
		color:#9ab7a4;
	}
	
	#header .utilities li.cart a .icon .icon_cart {
		
	}
	
	#header .utilities li.cart a .icon .icon_gift {
		max-width:20px;
		margin-left:4px;
	}
	
	#header .utilities li.afterpay a img {
		max-width:72px;
	}
	
	#header .utilities li.afterpay a img.small {
		display:inline;
	}
	
	#header .utilities li.afterpay a img.large {
		display:none;
	}
		
	/* ---- footer ---- */
	
	#footer_signup {
		background:linear-gradient(135deg, #f5f5f5 0%, #fff 100%);
	}
	
	#footer_signup .panel_maxwidth {
		display:flex;
		flex-direction:column;
		max-width:1024px;
	}
	
	#footer_signup .left {
		margin:0 0 16px 0;
	}
	
	#footer_signup .left h4 {
		margin:0 0 4px 0;
		text-transform:uppercase;
	}
	
	#footer_signup .left p {
		margin:0;
	}
	
	#footer_signup form {
		
	}
	
	#footer_signup form label {
		display:block;
		font-size:0.9em;
		margin-bottom:4px;
		font-weight:400;
	}
	
	#footer_signup form .inputs {
		display:flex;
	}
	
	#footer_signup form input[type='email'] {
		box-sizing:border-box;
		border:1px solid #333;
		border-top-left-radius:8px;
		border-bottom-left-radius:8px;
		height:40px;
		padding:0 16px;
		font-weight:400;
		width:256px;
		font-size:0.9em;
	}
	
	#footer_signup form input[type='submit'] {
		box-sizing:border-box;
		border:1px solid #333;
		background-color:#333;
		color:#fff;
		height:40px;
		padding:0 16px;
		border-top-right-radius:8px;
		border-bottom-right-radius:8px;
		cursor:pointer;
	}
	
	#footer {
		background-color:#e4ebe7;
	}
	
	#footer a {
		color:#333;
		text-decoration:none;
	}
	
	#footer .panel_maxwidth {
		max-width:1024px;
	}
	
	#footer .footer_top {
		
	}
	
	#footer .cols {
		display:flex;
		flex-direction:column;
		margin:-8px;
	}
	
	#footer .col {
		margin:8px;
	}
	
	#footer .col h4 {
		text-transform:uppercase;
		letter-spacing:0.01em;
	}
	
	#footer .col ul {
		margin:0;
		padding:0;
	}
	
	#footer .col ul li {
		list-style:none;
	}
	
	#footer .col .social_icons {
		display:flex;
		align-items:center;
		margin-top:8px;
	}
	
	#footer .col .social_icons a {
		display:inline-block;
		margin:0 12px 0 0;
	}
	
	#footer .col .social_icons a img {
		display:inline-block;
		vertical-align:top;
		width:auto;
		height:auto;
		max-width:24px;
		max-height:24px;
	}
	
	#footer .footer_bot {
		background-color:#d4ded8;
		padding:16px 0;
		font-size:0.9em;
	}
	
	#footer .footer_bot .item {
		display:inline-block;
	}
	
	#footer .footer_bot .divider {
		display:inline-block;
		margin:0 8px;
		color:#dbb9bb;
	}
	
	/* ---- page - general ---- */
		
	.page_feature {
		position:relative;
		background-color:#eee;
	}
		
	.page_feature.pink {
		background-color:#f7ebeb;
	}
	
	.page_feature.purple {
		background-color:#e1e2f1;
	}
	
	.page_feature.yellow {
		background-color:#fcf2d1;
	}
	
	.page_feature.green {
		background-color:#e4ebe7;
	}
	
	.page_feature.cream {
		background-color:#F1E2D6;
	}
	
	.page_feature.orange {
		background-color:#f9f0e0;
	}
	
	.page_feature.blue {
		background-color:#d9eff5;
	}
	
	.page_feature.xmas {
		background-color:#d0f3f0;
	}
	
	.page_feature:before {
		position:absolute;
		display:block;
		content:'';
		top:0;
		right:0;
		bottom:0;
		left:0;
		background:linear-gradient(135deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.2) 100%);
		mix-blend-mode:overlay;
	}
	
	.page_feature[data-centered='1'] {
		text-align:center;
	}
	
	.page_feature .panel_padding {
		position:relative;
		padding:48px 0;
		z-index:20;
	}
	
	.page_headline {
		font-family:acumin-pro-semi-condensed,proxima-nova,sans-serif;
		font-weight:300;
		text-transform:uppercase;
		letter-spacing:0.2em;
		margin-bottom:0.5em;
	}
	
	.page_headline:last-child {
		margin-bottom:0;
	}
	
	.section_heading {
		text-transform:uppercase;
		letter-spacing:0.1em;
		font-weight:500;
	}
	
	.section_heading a {
		color:#333;
		text-decoration:none;
	}
	
	.page_feature .page_subline {
		font-size:1.1em;
		font-weight:300;
		font-style:italic;
	}
	
	.page_feature .feature_image {
		display:none;
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		width:50%;
		background-size:contain;
		background-size:cover;
		background-position:right center;
		background-position:left center;
		background-repeat:no-repeat;
		opacity:0.3;
		mix-blend-mode:color-burn;
	}
	
	#site_notices {
		position:relative;
		z-index:1000;
		height:0;
		transform:translateY(8px);
	}
	
	#site_notices .notice {
		display:flex;
		padding:16px;
		background-color:#fff;
		border:1px solid #ddd;
		justify-content:center;
		align-items:center;
		margin:0 auto 8px auto;
		width:90%;
		max-width:512px;
		opacity:0;
		visibility:hidden;
		transition:opacity 0.5s, visibility 0s 0.5s;
		box-shadow:0 0 32px rgba(0,0,0,0.1);
	}
	
	#site_notices .notice.show {
		opacity:1;
		visibility:visible;
		transition:opacity 0.5s, visibility 0s;
	}
	
	#site_notices .notice .icon {
		display:inline-block;
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		margin-right:16px;
	}
	
	.breadcrumb {
		margin-bottom:24px;
		color:#bbb;
	}
	
	.breadcrumb .item {
		color:#bbb;
		text-decoration:none;
	}
	
	.breadcrumb .divider {
		color:#ccc;
	}
	
	.custom_dropdown {
		position:relative;
		white-space:nowrap;
	}
	
	.custom_dropdown .bg {
		display:block;
		position:fixed;
		top:0;
		right:0;
		bottom:0;
		left:0;
		visibility:hidden;
		opacity:0;
		background-color:rgba(0,0,0,0.05);
		z-index:10;
	}
	
	.custom_dropdown.open .bg {
		visibility:visible;
		opacity:1;
	}
	
	.custom_dropdown .label {
		position:relative;
		display:block;
		margin-bottom:4px;
	}
	
	.custom_dropdown .element {
		position:relative;
		display:block;
	}
	
	.custom_dropdown .element .top {
		display:flex;
		justify-content:space-between;
		align-items:center;
		box-sizing:border-box;
		padding:12px;
		background-color:#fff;
		border:1px solid #ccc;
		text-decoration:none;
		color:#333;
		line-height:100%;
	}
	
	.custom_dropdown .element .top:after {
		display:inline-block;
		content:'▼';
		margin-left:8px;
		font-size:0.5em;
	}
	
	.custom_dropdown.open .element .top {
		background-color:#f5f5f5;
		color:#999;
	}
	
	.custom_dropdown .element .options {
		position:absolute;
		display:none;
		top:100%;
		left:0;
		min-width:100%;
		box-sizing:border-box;
		background-color:#fff;
		border:1px solid #ccc;
		border-top:none;
		z-index:10;
	}
	
	.custom_dropdown.open .element .options {
		display:block;
	}
	
	.custom_dropdown .element .options .option {
		display:block;
		padding:6px 12px;
		color:#333;
		text-decoration:none;
		line-height:100%;
		white-space:nowrap;
	}
	
	.custom_dropdown .element .options .option:first-child {
		padding-top:12px;
	}
	
	.custom_dropdown .element .options .option:last-child {
		padding-bottom:12px;
	}
		
	#hover_tooltip {
		position:absolute;
		background-color:#fff;
		padding:16px;
		max-width:256px;
		box-shadow:2px 2px 8px rgba(0,0,0,0.25);
		z-index:9999;
	}
	
	/* ---- page - home ---- */
	
	#home_feature {
		position:relative;
		min-height:256px;
	}
		
	#home_feature .bg {
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		left:0;
		z-index:10;
		overflow:hidden;
		background-color:#fbeec4;
		background-color:#fff;
	}
	
	#home_feature .bg .gradient {
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background:linear-gradient(135deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 100%);
		mix-blend-mode:lighten;
		z-index:15;
	}
	
	#home_feature .bg .splash {
		opacity:0;
		transform:scale(0.95);
	}
	
	#home_feature .bg video {
		display:none;
	}
			
	#home_feature .fg {
		position:relative;
		display:flex;
		flex-direction:column-reverse;
		z-index:20;
		padding:48px 0;
		width:90%;
		max-width:1280px;
		margin:0 auto;
		text-align:center;
	}
	
	#home_feature .fg .text {
		
	}
	
	#home_feature .fg .text h1 {
		margin:0 0 12px 0;
		opacity:0;
		transform:translateY(8px);
		font-weight:300;
	}
	
	#home_feature .fg .text .subline {
		font-weight:300;
		color:rgba(0,0,0,0.5);
		opacity:0;
		transform:translateY(8px);
	}
		
	#home_feature .fg .text .subline.pink {
		color:#d5a3a5;
	}
	
	#home_feature .fg .text .subline.purple {
		color:#9d9ebb;
	}
	
	#home_feature .fg .text .subline.yellow {
		color:#d5bf7b;
	}
	
	#home_feature .fg .text .subline.green {
		color:#9ab7a4;
	}
	
	#home_feature .fg .text .subline.cream {
		color:#F1E2D6;
	}
	
	#home_feature .fg .text .subline.orange {
		color:#f3dfbb;
	}
	
	#home_feature .fg .text .subline.blue {
		color:#addde9;
	}
	
	#home_feature .fg .text .subline.xmas {
		color:#d0f3f0;
	}
		
	#home_feature .fg .text .action {
		margin:16px 0 0 0;
		height:64px;
	}
	
	#home_feature .fg .text .signature {
		width:192px;
		height:auto;
		opacity:0;
	}
	
	#home_feature .fg .image {
		margin:0 0 24px 0;
		opacity:0;
		transform:translateY(8px);
	}
	
	#home_feature .fg .image img {
		width:auto;
		height:auto;
		max-width:128px;
		max-height:128px;
	}
	
	#home_feature.start_animation .bg .splash {
		opacity:1;
		transform:none;
		transition:opacity 0.5s 0.3s, transform 0.5s 0.3s;
	}
	
	#home_feature.start_animation .fg .text h1 {
		opacity:1;
		transform:none;
		transition:opacity 0.5s, transform 0.5s;
	}
	
	#home_feature.start_animation .fg .text .subline {
		opacity:1;
		transform:none;
		transition:opacity 0.5s 0.2s, transform 0.5s 0.2s;
	}
	
	#home_feature.start_animation .fg .text .signature {
		opacity:1;
		transform:none;
		transform:none;
		transition:opacity 0.5s 2s;
	}
	
	#home_feature.start_animation .fg .image {
		opacity:1;
		transform:none;
		transition:opacity 0.5s 0.5s, transform 0.5s 0.5s;
	}
	
	#home_products {
		background:transparent;
		background-color:#f5f5f5;
	}
		
	#home_products.pink {
		background-color:#f7ebeb;
	}
	
	#home_products.purple {
		background-color:#e1e2f1;
	}
	
	#home_products.yellow {
		background-color:#fcf2d1;
	}
	
	#home_products.green {
		background-color:#e4ebe7;
	}
	
	#home_products.cream {
		background-color:#F1E2D6;
	}
	
	#home_products.orange {
		background-color:#f9f0e0;
	}
	
	#home_products.blue {
		background-color:#d9eff5;
	}
		
	.promo_banner {
		position:relative;
		background-color:#f9f9f9;
		text-align:center;
	}
	
	.promo_banner .background {
		position:absolute;
		z-index:10;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-size:cover;
		background-position:center center;
	}
	
	.promo_banner .background:after {
		position:absolute;
		display:block;
		content:'';
		z-index:7;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:rgba(255,255,255,0.85);
	}
	
	.promo_banner .foreground {
		display:flex;
		flex-direction:column;
		position:relative;
		z-index:20;
		width:90%;
		max-width:1366px;
		margin:0 auto;
	}
	
	.promo_banner .image {
		position:relative;
		z-index:10;
		margin:0 0 24px 0;
	}
	
	.promo_banner .image a {
		display:inline-block;
	}
		
	.promo_banner .image img {
		vertical-align:top;
		width:auto;
		height:auto;
		max-width:128px;
		max-height:96px;
	}
		
	.promo_banner .text {
		position:relative;
		z-index:15;
	}
	
	.promo_banner .text .intro {
		font-size:0.9em;
		color:rgba(0,0,0,0.5);
		margin:0 0 0.5em 0;
	}
	
	.promo_banner .text .headline {
		margin:0 0 0.5em 0;
		text-transform:uppercase;
		letter-spacing:0.01em;
	}
	
	.promo_banner .text .headline a {
		text-decoration:none;
	}
	
	.promo_banner .text .subline {
		
	}
	
	.promo_banner .text .action {
		margin:1em 0 0 0;
	}
	
	.promo_banner .text .price_item .currency {
		font-size:0.9em;
	}
	
	.promo_banner .text .price_item .number {
		font-weight:600;
		font-size:1.1em;
	}
		
	#home_actions {
		background-color:#fff;
	}
	
	#home_actions .panel_maxwidth {
		max-width:1280px;
	}
	
	#home_actions .boxes {
		display:flex;
		flex-direction:column;
		margin:-8px;
	}
	
	#home_actions .boxes .box {
		display:block;
		background-color:#fff;
		border:1px solid #ccc;
		padding:24px;
		margin:8px;
		color:#333;
		text-decoration:none;
		text-align:center;
	}
	
	#home_actions .boxes .box .image {
		
	}
	
	#home_actions .boxes .box .image img {
		width:auto;
		height:auto;
		max-width:64px;
		max-height:64px;
		vertical-align:bottom;
		
	}
	
	#home_actions .small_items {
		display:flex;
		flex-direction:column;
		margin:32px auto 0 auto;
		max-width:1100px;
	}
	
	#home_actions .small_items .item {
		display:block;
		color:#333;
		text-decoration:none;
		text-align:center;
		margin:0 0 32px 0;
	}
	
	#home_actions .small_items .item .image {
		margin-bottom:16px;
	}
	
	#home_actions .small_items .item .circle {
		display:block;
		width:160px;
		height:128px;
		margin:0 auto;
		background-color:#ddd;
		overflow:hidden;
	}
	
	#home_actions .small_items .item.item_with_icon .circle {
		background-color:transparent;
	}
	
	#home_actions .small_items .item .circle img {
		vertical-align:top;
	}
	
	@supports ( object-fit:cover ) {
		
		#home_actions .small_items .item .circle img {
			width:100%;
			height:100%;
			object-fit:cover;
		}
		
		#home_actions .small_items .item.item_with_icon .circle img {
			object-fit:contain;
		}
		
	}
	
	#home_actions .small_items .item .text {
		width:192px;
		margin:0 auto;
	}
	
	#home_actions .small_items .item h3 {
		margin:0 0 8px 0;
		line-height:105%;
		text-transform:uppercase;
		font-size:1.1em;
		letter-spacing:0.05em;
		font-weight:400;
	}
	
	#home_actions .small_items .item p {
		margin:8px 0 0 0;
		line-height:115%;
		color:#999;
	}
	
	#home_history {
		position:relative;
		/*background-color:#f5f5f5;
		background:linear-gradient(135deg, #fdfdfd 0%, #f5f5f5 100%);*/
		background-size:cover;
		background-position:center center;
		overflow:hidden;
	}
	
	#home_history:after {
		position:absolute;
		display:block;
		content:'';
		top:0;
		right:0;
		bottom:0;
		left:0;
		background:radial-gradient(ellipse at center, rgba(255,255,255,0.75) 0%, rgba(255,255,255,0.5) 100%);
	}
	
	#home_history .image {
		position:absolute;
		z-index:20;
		opacity:0.2;
		top:50%;
		left:50%;
		transform:translate(-50%,-50%);
		width:512px;
		height:auto;
	}
		
	#home_history .text {
		position:relative;
		z-index:20;
		width:80%;
		max-width:1024px;
		margin:0 auto;
		padding:64px 0;
	}
	
	#home_history .text h4 {
		font-weight:400;
		text-transform:uppercase;
	}
	
	/* ---- page - about ---- */
	
	/*body[data-page-id='346'] .page_feature,
	body[data-page-id='349'] .page_feature {
		text-align:center;
	}
	
	body[data-page-id='346'] .page_feature .feature_text,
	body[data-page-id='349'] .page_feature .feature_text {
		margin:0 auto;
	}*/
	
	.about_page {
		
	}
	
	.about_panel {
		display:flex;
		flex-direction:column;
	}
	
	.about_panel .image {
		display:block;
		background-size:cover;
		background-position:center center;
		height:256px;
	}
	
	.about_panel .image img {
		display:none;
	}
	
	@supports( object-fit:cover ) {
		
		.about_panel .image img {
			display:block;
			width:100%;
			height:100%;
			object-fit:cover;
		}
		
	}
	
	.about_panel .text {
		box-sizing:border-box;
		padding:32px;
	}
	
	.about_panel .text h2 {
		margin:0 0 8px 0;
	}
	
	.about_panel .text .action {
		margin:16px 0 0 0;
	}
	
	.box_list_page {
		
	}
	
	.box_list_page .panel_maxwidth {
		max-width:1024px;
	}
	
	.box_list_row {
		display:flex;
		flex-direction:column;
		margin-bottom:24px;
	}
	
	.box_list_row .image {
		display:block;
		width:100%;
		height:160px;
		margin-bottom:16px;
	}
	
	.box_list_row .image img {
		display:none;
		width:100%;
		height:auto;
		vertical-align:top;
	}
	
	@supports ( object-fit:cover ) {
		
		.box_list_row .image img {
			display:block;
			width:100%;
			height:100%;
			object-fit:cover;
		}
		
	}
	
	.box_list_row .text {
		
	}
	
	.box_list_row .text h2 {
		margin:0 0 8px 0;
	}
	
	.box_list_row .text p {
		margin:8px 0;
	}
	
	.box_list_row .text .action {
		margin:16px 0 0 0;
	}
	
	/* ---- page - contact ---- */
	
	.stockist_panel {
		
	}
	
	.stockist_panel .stockist_table_wrap {
		width:100%;
		max-width:100%;
		overflow-x:scroll;
	}
	
	.stockist_panel .stockist_table {
		max-width:150%;
	}
	
	.stockist_panel .stockist_table .group_heading th {
		text-align:left;
		padding:64px 8px 24px 8px;
		border-bottom:1px solid #eee;
	}
	
	.stockist_panel .stockist_table .group_company {
		white-space:nowrap;
	}
	
	.stockist_panel .stockist_table .group_company td {
		padding:8px;
		border-bottom:1px solid #eee;
	}
		
	.stockist_panel .stockist_table .group_company .icons {
		vertical-align:top;
		padding-right:16px;
	}
	
	.stockist_panel .stockist_table .group_company .icons a {
		display:inline-block;
		margin-right:4px;
	}
	
	.stockist_panel .stockist_table .group_company .icons span {
		display:inline-block;
		margin-right:4px;
		opacity:0.1;
	}
	
	.stockist_panel .stockist_table .group_company .icons img {
		display:inline-block;
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		vertical-align:middle;
	}
	
	.stockist_panel .stockist_table .group_company .name {
		font-weight:600;
		vertical-align:top;
	}
	
	.stockist_panel .stockist_table .group_company .address {
		vertical-align:top;
		font-size:0.9em;
		color:#666;
	}
	
	.stockist_group {
		padding-bottom:32px;
		margin-bottom:32px;
		border-bottom:1px solid #ccc;
	}
	
	.stockist_group:last-child {
		padding:0;
		margin:0;
		border:none;
	}
	
	.stockist_group .company_list {
		display:flex;
		flex-direction:column;
		margin:0 -32px -16px -32px;
	}
	
	.stockist_group .company_details {
		margin:16px 32px;
	}
		
	.company_details {
		
	}
	
	.company_details h4 {
		color:#333;
	}
	
	.company_details ul {
		padding:0;
		margin:12px 0;
		max-width:320px;
	}
	
	.company_details ul li {
		list-style:none;
		margin:12px 0;
	}
	
	.company_details ul li .item {
		display:flex;
		color:#333;
		text-decoration:none;
	}
		
	.company_details ul li .item .icon {
		flex:0 0 24px;
		text-align:left;
	}
	
	.company_details ul li .item .icon img {
		display:inline-block;
		width:12px;
		height:12px;
	}
	
	.company_details ul li .item .text {
		
	}
	
	.company_details ul li .button {
		margin:8px 0 0 24px;
	}
	
	.company_details .open_hours {
		border-collapse:collapse;
		margin:16px 0 0 0;
		font-size:0.9em;
	}
	
	.company_details .open_hours td {
		padding:4px;
		border-bottom:1px dotted #ddd;
	}
	
	.company_details .open_hours tr:last-child td {
		border:none;
	}
	
	.company_details .open_hours .day {
		font-weight:500;
		padding-right:16px;
	}
	
	.company_details .open_hours .closed {
		text-align:center;
		color:#999;
		font-style:italic;
	}
	
	.company_details .open_hours .time {
		text-align:right;
	}
		
	#contact_page .panel_stores {
		
	}
	
	#contact_page .panel_stores .company_list {
		display:flex;
		flex-direction:column;
		margin:16px -16px -16px -16px;
	}
	
	#contact_page .panel_stores .company_list .company_details {
		margin:16px;
	}
	
	#contact_page .panel_headoffice {
		background-color:#f5f5f5;
	}
	
	#contact_page .panel_headoffice .cols {
		display:flex;
		flex-direction:column;
		margin:16px -16px -16px -16px;
	}
	
	#contact_page .panel_headoffice .cols .col {
		margin:16px;
	}
	
	.panel_stores_intro {
		position:relative;
		background-color:#eeeff7;
		background-size:cover;
		background-position:center center;
	}
	
	.panel_stores_intro .overlay {
		position:absolute;
		background-color:rgba(255,255,255,0.9);
		top:8px;
		right:8px;
		bottom:8px;
		left:8px;
	}
	
	.panel_stores_intro .text {
		position:relative;
		padding:16px 8px;
		text-align:center;
	}
	
	.panel_stores_intro h2 {
		
	}
	
	.panel_stores_intro h2 a {
		text-decoration:none;
	}
	
	.panel_stores_intro .stores a {
		text-decoration:none;
		color:#666;
	}
	
	.panel_stores_intro p {
		font-weight:500;
	}
	
	.panel_stores_intro .action {
		margin-top:16px;
	}
		
	/* ---- page - search ---- */
	
	.panel_search_bar {
		background-color:#fff;
	}
	
	.search_bar {
		
	}
	
	.search_bar .label {
		margin-bottom:4px;
	}
	
	.search_bar .inputs {
		display:flex;
	}
	
	.search_bar .inputs input[type='text'] {
		box-sizing:border-box;
		height:48px;
		border:1px solid #333;
		padding:0 12px;
		border-top-left-radius:8px;
		border-bottom-left-radius:8px;
	}
		
	.search_bar .inputs button {
		box-sizing:border-box;
		width:48px;
		height:48px;
		border:none;
		background-color:#333;
		color:#fff;
		border-top-right-radius:8px;
		border-bottom-right-radius:8px;
		cursor:pointer;
	}
	
	.search_bar .inputs button img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.search_bar .inputs button:active img {
		transform:scale(0.9);
	}
	
	.panel_search_results {
		min-height:100vh;
	}
	
	.search_results .result_item {
		border:1px solid #ddd;
		padding:16px;
		margin:0 0 16px 0;
	}
	
	.search_results .result_item .name {
		font-weight:600;
		text-decoration:none;
		font-size:1.2em;
	}
	
	/* ---- shop - catalog ---- */
	
	.catalog_subnav {
		padding:16px;
		border:1px solid #ddd;
		margin:-8px 0 16px 0;
	}
	
	.catalog_subnav p {
		margin:0;
		color:#666;
	}
	
	.catalog_subnav ul {
		margin:12px 0 0 0;
		padding:0 0 0 12px;
	}
	
	.catalog_subnav ul li {
		margin:0;
		list-style:'› ';
	}
	
	.catalog_subnav ul li a {
		display:block;
		padding:4px 0;
		text-decoration:none;
		font-weight:500;
		line-height:120%;
	}
	
	.catalog_description {
		position:relative;
		margin-bottom:32px;
		color:#666;
		padding-left:24px;
		max-width:1024px;
	}
	
	.catalog_description:before {
		position:absolute;
		display:block;
		content:'';
		top:0;
		bottom:0;
		left:0;
		width:8px;
		background-color:#ddd;
	}
	
	.product_list_panel.green .catalog_description:before {
		background-color:#e4ebe7;
	}
	
	.product_list_panel.cream .catalog_description:before {
		background-color:#F1E2D6;
	}
	
	.product_list_panel.orange .catalog_description:before {
		background-color:#f9f0e0;
	}
	
	.product_list_panel.yellow .catalog_description:before {
		background-color:#fcf2d1;
	}
	
	.product_list_panel.pink .catalog_description:before {
		background-color:#f7ebeb;
	}
	
	.product_list_panel.purple .catalog_description:before {
		background-color:#e1e2f1;
	}
	
	.product_list_panel.blue .catalog_description:before {
		background-color:#d9eff5;
	}
	
	.product_list_panel.xmas .catalog_description:before {
		background-color:#d0f3f0;
	}
	
	.catalog_description .read_more {
		white-space:nowrap;
		color:#333;
	}
		
	.catalog_description .short {
		display:block;
	}
	
	.catalog_description .long {
		display:none;
	}
	
	.catalog_description.open .short {
		display:none;
	}
	
	.catalog_description.open .long {
		display:block;
	}
	
	.filter_bar {
		display:flex;
		flex-direction:column;
		padding:16px;
		background-color:#eee;
		margin-bottom:24px;
	}
	
	.filter_bar .filter_toggle {
		text-align:center;
	}
		
	.filter_bar .filter_items {
		display:none;
		flex-direction:column;
		margin:-8px;
		margin-top:8px;
	}
	
	.filter_bar.open .filter_items {
		position:relative;
		display:flex;
	}
	
	.filter_bar .filter_items .filter_item {
		position:relative;
		margin:8px;
		text-decoration:none;
	}
	
	.filter_bar .filter_items .filter_item:last-child .element .options {
		left:auto;
		right:0;
	}
	
	.filter_bar .filter_search {
		display:flex;
	}
	
	.filter_bar .filter_search label {
		display:flex;
		justify-content:center;
		align-items:center;
		height:48px;
		width:32px;
		background:transparent;
		border:none;
		
	}
	
	.filter_bar .filter_search label img {
		box-sizing:border-box;
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.filter_bar .filter_search input {
		height:48px;
		padding:0 12px;
		border:none;
		background-color:transparent;
		font-size:0.9em;
	}
	
	.filter_bar .filter_search input:focus {
		background-color:rgba(255,255,255,0.25);
	}
	
	/* ---- shop - products ---- */
	
	a[href*='book.gettimely.com'] {
		display:inline-flex!important;
		justify-content:center;
		align-items:center;
		background:transparent!important;
		background-color:#9ab7a4!important;
		color:#fff;
		text-decoration:none;
		font-weight:500;
		width:auto!important;
		height:auto!important;
		padding:12px 16px;
		border-radius:4px;
		border:2px solid #9ab7a4;
		box-sizing:border-box;
		line-height:105%;
	}
	
	a[href*='book.gettimely.com']:after {
		position:relative;
		display:inline-block;
		content:'Book Now';
	}
	
	a[href*='book.gettimely.com/giftvoucher/']:after {
		content:'Deliver via email';
	}
	
	.form_add_to_cart {
		display:inline-block;
	}
	
	.form_add_to_cart .compact_button {
		display:flex;
		justify-content:center;
		align-items:center;
		width:40px;
		height:40px;
		border:1px solid #9ab7a4;
		background:transparent;
		border-radius:4px;
		padding:0;
		cursor:pointer;
	}
	
	.form_add_to_cart .compact_button img {
		width:16px;
		height:auto;
		vertical-align:top;
	}
	
	.ajax_add_to_cart {
		position:relative;
	}
	
	.ajax_add_to_cart.submitting:after {
		position:absolute;
		display:block;
		content:'';
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:rgba(255,255,255,0.5);
		z-index:20;
	}
	
	.ajax_add_to_cart.submitting:before {
		position:absolute;
		display:block;
		content:'';
		top:0;
		bottom:0;
		left:0;
		background-color:rgba(255,255,255,0.5);
		animation-name:loading_overlay;
		animation-duration:1s;
		animation-iteration-count:infinite;
		z-index:30;
	}
	
	.no_timely_id {
		color:#999;
		font-size:0.9em;
	}
	
	.variant_list {
		border-collapse:collapse;
		width:100%;
	}
	
	.variant_list td {
		border-bottom:1px dotted #ccc;
		padding:8px;
	}
	
	.variant_list .price {
		text-align:right;
	}
	
	.variant_list .price .number {
		font-size:1.2em;
		font-weight:600;
	}
	
	.variant_list .action {
		text-align:right;
	}
	
	.price_item {
		display:inline-flex;
	}
	
	.product_list_panel {
		background-color:#f5f5f5;
		background:linear-gradient(to bottom, #fff 0px, #f5f5f5 512px);
	}
	
	.product_list_group {
		margin:0 0 24px 0;
	}
	
	.product_list_group .section_heading {
		margin-bottom:8px;
	}
	
	.product_list_group .section_subheading {
		margin-bottom:16px;
		font-style:italic;
	}
	
	.product_list_panel.green .section_heading a {
		color:#758c7d;
	}
	
	.product_list_panel.cream .section_heading a {
		color:#F1E2D6;
	}
	
	.product_list_panel.orange .section_heading a {
		color:#a49a88;
	}
	
	.product_list_panel.yellow .section_heading a {
		color:#a69e84;
	}
	
	.product_list_panel.pink .section_heading a {
		color:#c68c8c;
	}
	
	.product_list_panel.purple .section_heading a {
		color:#8b8cac;
	}
	
	.product_list_panel.blue .section_heading a {
		color:#6a8e97;
	}
	
	.product_list_panel.xmas .section_heading a {
		color:#d0f3f0;
	}
		
	/*
	
	.product_list_panel.green .product_list .product .product_name a {
		color:#758c7d;
	}
	
	.product_list_panel.orange .product_list .product .product_name a {
		color:#a49a88;
	}
	
	.product_list_panel.yellow .product_list .product .product_name a {
		color:#a69e84;
	}
	
	.product_list_panel.pink .product_list .product .product_name a {
		color:#c68c8c;
	}
	
	.product_list_panel.purple .product_list .product .product_name a {
		color:#8b8cac;
	}
	
	.product_list_panel.blue .product_list .product .product_name a {
		color:#6a8e97;
	}
	
	*/
	
	.product_list_group:last-child {
		margin-bottom:0;
	}
		
	.product_list_panel .filter_bar {
		
	}
		
	.product_list {
		display:flex;
		flex-direction:column;
		margin:-8px;
	}
	
	.product_list .product {
		display:flex;
		flex-direction:column;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		background-color:#fff;
		margin:8px;
	}
	
	.product_list .product.hide {
		display:none;
	}
	
	.product_list .product .image {
		position:relative;
		display:flex;
		flex:0 0 160px;
		justify-content:center;
		align-items:center;
		padding:24px 0;
		border-bottom:1px solid #ddd;
		background:linear-gradient(135deg, #fff 0%, #fcfcfc 100%);
	}
	
	.product_list .product .image .thumbnail {
		width:auto;
		height:160px;
		vertical-align:top;
	}
	
	.product_list .product .image .icons {
		position:absolute;
		right:0;
		bottom:0;
		padding:8px;
		opacity:0.75;
	}
	
	.product_list .product .image .icons .icon {
		width:24px;
		height:auto;
		vertical-align:bottom;
		margin-left:4px;
	}
	
	.product_list .product .text {
		display:flex;
		flex-direction:column;
		justify-content:space-between;
		padding:24px;
		height:100%;
	}
	
	.product_list .product .text .info {
		height:100%;
	}
	
	.product_list .product .cat_label {
		font-size:0.9em;
		color:#bbb;
		margin-bottom:8px;
	}
	
	.product_list .product .product_name {
		font-weight:500;
		margin-top:0;
	}
	
	.product_list .product  .product_name a {
		color:#333;
		text-decoration:none;
	}
	
	.product_list .product .price {
		margin:1em 0;
		color:#666;
	}
	
	.product_list .product .price_range {
		display:flex;
		align-items:center;
	}
	
	.product_list .product .price_range .divider {
		margin:0 8px;
	}
	
	.product_list .product .price_table {
		width:100%;
		border-collapse:collapse;
	}
	
	.product_list .product .price_table td {
		border-bottom:1px dotted #ddd;
		padding:4px 0;
	}
	
	.product_list .product .price_table .left {
		color:#666;
		font-size:0.9em;
		font-weight:500;
	}
	
	.product_list .product .price_table .right {
		text-align:right;
		padding-left:16px;
	}
	
	.product_list .product .price_table .right .price_item {
		justify-content:flex-end;
	}
		
	.product_list .product .price .price_item {
		display:flex;
		align-items:center;
	}
	
	.product_list .product .price .currency {
		font-size:0.75em;
	}
	
	.product_list .product .price .number {
		font-weight:400;
		font-size:1.1em;
	}
	
	.product_list .product .snippet {
		margin:0.5em 0;
		font-size:0.9em;
		line-height:130%;
	}
	
	.product_list .product .actions {
		margin:0.75em -4px -4px -4px;
	}
	
	.product_list .product .actions .button {
		margin:4px;
	}
		
	.product_list_compact {
		dsplay:flex;
		flex-direction:column;
		margin:-8px;
	}
	
	.product_list_compact .product_compact {
		display:flex;
		margin:8px;
		background-color:#fff;
		/*box-shadow:2px 2px 8px rgba(0,0,0,0.1);*/
		border:1px solid #ddd;
	}
	
	.product_list_compact .product_compact .image {
		display:flex;
		flex:0 0 64px;
		justify-content:center;
		align-items:center;
		border-right:1px solid #ddd;
		overflow:hidden;
		background:linear-gradient(135deg, #fff 0%, #fcfcfc 100%);
	}
	
	.product_list_compact .product_compact .image img {
		width:auto;
		height:auto;
		max-width:48px;
		max-height:48px;
	}
	
	.product_list_compact .product_compact .text {
		display:flex;
		flex-direction:column;
		flex:1 1 auto;
		padding:16px;
	}
	
	.product_list_compact .product_compact .left {
		margin-bottom:12px;
	}
	
	.product_list_compact .product_compact .right {
		display:flex;
		justify-content:flex-end;
		align-items:center;
	}
	
	.product_list_compact .product_compact .product_name {
		
	}
	
	.product_list_compact .product_compact .product_name a {
		color:#333;
		text-decoration:none;
	}
	
	.product_list_compact .product_compact .price .currency {
		font-size:0.9em;
	}
	
	.product_list_compact .product_compact .price .number {
		font-size:1.2em;
		font-weight:500;
	}
	
	.product_list_compact .product_compact .action {
		margin-left:12px;
	}
	
	.product_detail {
		background-color:#f5f5f5;
		background-color:#fff;
	}
	
	.product_detail .product_cols {
		
	}
	
	.product_detail .col_image {
		margin-bottom:32px;
	}
		
	.product_detail .product_image {
		position:relative;
		display:block;
		width:256px;
		height:256px;
	}
	
	.product_detail .product_image .bg {
		position:absolute;
		top:10%;
		right:10%;
		bottom:10%;
		left:10%;
		z-index:10;
		overflow:hidden;
		border-radius:8px;
		border-radius:50%;
		overflow:hidden;
		background-color:#fff;
		background: linear-gradient(135deg, #fff 0%, #f9f9f9 100%);
		opacity:0;
		transition:opacity 1s;
	}
		
	.product_detail.start_animation .product_image .bg {
		opacity:1;
	}
	
	.product_detail .product_image .bg .bg_img {
		object-fit:cover;
		width:100%;
		height:100%;
		opacity:0.2;
		animation-name:slowzoom;
		animation-iteration-count:1;
		animation-duration:10s;
		animation-timing-function:ease-out;
		transform:scale(1.1);
	}
		
	.product_detail .product_image .img {
		position:relative;
		display:block;
		vertical-align:top;
		z-index:20;
		width:auto;
		height:auto;
		max-width:100%;
		max-height:100%;
		left:50%;
		top:50%;
		transform:translate(-50%,-50%);
		opacity:0;
	}
	
	.product_detail.start_animation .product_image .img {
		opacity:1;
		transition:opacity 1s 0.5s;
	}
	
	.product_detail .sticky_content {
		display:none;
		box-sizing:border-box;
		margin-top:32px;
		padding:0 32px;
		text-align:center;
	}
	
	.product_detail .sticky_content .sticky_name {
		font-size:1.4em;
		font-weight:500;
	}
	
	.product_detail .sticky_content .sticky_info {
		display:flex;
		justify-content:center;
		align-items:center;
		margin-top:16px;
	}
	
	.product_detail .sticky_content .sticky_price {
		margin-right:16px;
	}
	
	.product_detail .sticky_content .sticky_price .currency {
		font-size:0.8em;
		color:#666;
	}
	
	.product_detail .sticky_content .sticky_price .number {
		font-weight:600;
		font-size:1.2em;
	}
	
	.product_detail .sticky_content .sticky_unit_size {
		margin-right:16px;
		color:#666;
		font-weight:500;
		font-style:italic;
	}
	
	.product_detail .col_details {
		
	}
	
	.product_detail .cat_label {
		margin-bottom:8px;
		font-size:0.8em;
		color:#ccc;
	}
	
	.product_detail .product_headline {
		margin-bottom:24px;
		margin-top:0;
	}
	
	.product_detail .product_price {
		display:flex;
		align-items:flex-end;
		margin-bottom:16px;
	}
		
	.product_detail .product_price .currency {
		color:#666;
		font-size:0.9em;
	}
	
	.product_detail .product_price .number {
		font-size:1.4em;
		font-weight:500;
	}
	
	.product_detail .product_price .unit_size {
		display:inline-block;
		margin-left:16px;
		font-weight:500;
		font-style:italic;
		color:#666;
	}
		
	.product_detail .ethical_icons {
		display:inline-block;
		margin-left:16px;
	}
	
	.product_detail .ethical_icons .icon {
		width:32px;
		height:32px;
		vertical-align:middle;
		margin-right:8px;
	}
	
	.product_detail .ethical_icons .circle {
		display:flex;
		justify-content:center;
		align-items:center;
		text-align:center;
		width:40px;
		height:40px;
		padding:4px;
		background-color:#ddd;
		font-size:0.5em;
		line-height:100%;
		border-radius:50%;
		margin-right:8px;
		font-weight:500;
	}
	
	@supports ( mix-blend-mode:color-burn ) {
		
		.product_detail .ethical_icons .circle .text {
			color:#222;
			mix-blend-mode:color-burn;
		}
		
	}
	
	.product_detail .ethical_icons .circle.yellow {
		background-color:#fbf0cc;
	}
	
	.product_detail .ethical_icons .circle.green {
		background-color:#e1e8e4;
	}
	
	.product_detail .ethical_icons .circle.cream {
		background-color:#F1E2D6;
	}
	
	.product_detail .ethical_icons .circle.pink {
		background-color:#f6e9e9;
	}
	
	.product_detail .product_skin_types {
		margin-bottom:16px;
	}
	
	.product_detail .product_skin_types .item {
		display:inline-block;
		margin:0 0 4px 0;
		padding:4px 6px;
		border:1px solid #ddd;
		color:#999;
		text-decoration:none;
		line-height:100%;
		border-radius:2px;
		font-size:0.8em;
	}
	
	.product_detail .product_skin_types .item img {
		display:inline-block;
		vertical-align:middle;
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		margin-right:4px;
	}
		
	.product_detail .product_intro {
		line-height:130%;
	}
	
	.product_detail .product_add_to_cart {
		margin-top:24px;
	}
	
	.product_detail .product_add_to_cart .single_variant_info {
		display:inline-block;
		margin-left:12px;
		font-style:italic;
		font-weight:500;
	}
	
	.product_detail .product_afterpay {
		margin:32px 0;
		display:flex;
		align-items:center;
	}
	
	.product_detail .product_afterpay .logo {
		display:inline-block;
		margin-right:12px;
	}
	
	.product_detail .product_afterpay .logo img {
		width:96px;
		height:auto;
		vertical-align:middle;
	}
	
	.product_detail .product_afterpay .more {
		display:inline-block;
	}
	
	.product_detail .product_subnav {
		display:flex;
		flex-wrap:wrap;
		margin-top:32px;
		border-bottom:1px solid #999;
		padding-bottom:8px;
	}
	
	.product_detail .product_subnav .item {
		display:inline-block;
		color:#333;
		background-color:#f5f5f5;
		text-decoration:none;
		padding:8px;
		line-height:100%;
		margin:0 4px 4px 0;
		font-weight:500;
		border-top-left-radius:4px;
		border-top-right-radius:4px;
	}
	
	/*
	.product_detail .product_subnav .item:before {
		display:inline-block;
		content:'•';
		margin-right:4px;
	}
	*/
	
	.product_detail .product_section {
		padding:32px 0;
		border-bottom:1px solid #999;
	}
	
	.product_detail .product_section:last-child {
		border:none;
	}
	
	.product_detail .product_section .product_section_heading {
		margin-bottom:16px;
	}
	
	.product_detail .product_info {
		
	}
	
	.product_detail .product_description {
		margin-bottom:32px;
	}
		
	.product_detail .product_ingredients_full {
		position:relative;
		display:none;
		font-size:0.75em;
		color:#999;
		line-height:110%;
		margin-top:32px;
		-webkit-touch-callout: none;
		-webkit-user-select: none;
		-khtml-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
	}
	
	/*
	.product_detail .product_ingredients_full:after {
		position:absolute;
		display:block;
		content:'';
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:transparent;
	}
	*/
	
	.product_detail .product_ingredients_full.show {
		display:block;
	}
		
	.product_detail .product_instructions {
		
	}
	
	.product_detail .product_instructions .alternate_instructions {
		margin-top:32px;
	}
	
	.product_detail .product_usage_order {
		margin-top:48px;
	}
	
	.product_detail .product_usage_order p.intro {
		margin:4px 0;
	}
	
	.product_detail .product_usage_order p.light {
		margin:4px 0;
		color:#999;
		font-style:italic;
	}
	
	.product_detail .product_usage_order .usage_order_cols {
		display:flex;
		flex-direction:column;
		margin:16px 0;
		max-width:512px;
	}
	
	.product_detail .product_usage_order .usage_order_col {
		display:flex;
		flex-direction:column;
		text-align:center;
		margin:0 0 16px 0;
	}
	
	.product_detail .product_usage_order .usage_order_col .top {
		padding:8px;
		font-weight:600;
	}
	
	.product_detail .product_usage_order .usage_order_col .top img {
		width:48px;
		height:auto;
		vertical-align:top;
	}
		
	.product_detail .product_usage_order .usage_order_col .item {
		position:relative;
		flex:0 0 64px;
		display:flex;
		flex-direction:column;
		justify-content:center;
		border:1px solid #ccc;
		border-top:none;
		padding:0 8px;
		background-color:#fff;
		z-index:10;
		line-height:110%;
		color:#666;
		font-size:0.9em;
	}
		
	.product_detail .product_usage_order .usage_order_col .item.first {
		border-top:1px solid #ccc;
	}
	
	.product_detail .product_usage_order .usage_order_col .item.last {
		
	}
	
	.product_detail .product_usage_order .usage_order_col .item.active {
		background-color:#f6e9e9;
		color:#222;
		font-weight:500;
	}
	
	.product_detail .product_usage_order .usage_order_col .item .title {
		transform:translateY(4px);
	}
	
	.product_detail .product_usage_order .usage_order_col .item.first .title {
		transform:none;
	}
	
	.product_detail .product_usage_order .usage_order_col .item.last .title {
		transform:none;
	}
	
	.product_detail .product_usage_order .usage_order_col .item .note {
		font-size:0.75em;
		font-style:italic;
		color:#999;
		mix-blend-mode:multiply;
		transform:translateY(4px);
	}
	
	.product_detail .product_usage_order .usage_order_col .item.first .note {
		transform:none;
	}
	
	.product_detail .product_usage_order .usage_order_col .item.last .note {
		transform:none;
	}
	
	.product_detail .product_usage_order .usage_order_col .item svg {
		position:absolute;
		top:100%;
		left:50%;
		transform:translateX(-50%);
		z-index:20;
	}
	
	.product_detail .product_usage_order .usage_order_col .item.last svg {
		display:none;
	}
	
	.product_detail .product_usage_order .usage_order_col .item .triangle {
		fill:#fff;
		stroke:#ccc;
		stroke-width:1px;
	}
	
	.product_detail .product_usage_order .usage_order_col .item.active .triangle {
		fill:#f6e9e9;
	}
	
	.product_detail .product_tips {
		
	}
	
	.product_detail .product_tips .tip_list {
		padding:0;
	}
	
	.product_detail .product_tips .tip_list li {
		list-style:none;
		padding:16px;
		border:1px solid #ddd;
		border-left:4px solid #ddd;
		margin:8px 0;
	}
	
	.instruction_list {
		padding:0;
	}
	
	.instruction_list li {
		display:flex;
		list-style:none;
		margin:12px 0;
		line-height:115%;
		align-items:center;
	}
	
	.instruction_list li:first-child {
		margin-top:0;
	}
	
	.instruction_list li:last-child {
		margin-bottom:0;
	}
	
	.instruction_list li .thumbnail {
		flex:0 0 48px;
		margin-right:16px;
	}
	
	.instruction_list li .thumbnail img {
		width:auto;
		height:auto;
		max-width:48px;
		max-height:48px;
		vertical-align:top;
	}
	
	.instruction_list li .text {
		display:flex;
		align-items:center;
	}
	
	.instruction_list li .text .number {
		font-weight:600;
		margin-right:8px;
	}
	
	.instruction_list li .text .label {
		
	}
	
	/* ---- shop - ingredients ---- */
	
	.ingredient_icons {
		display:flex;
		flex-direction:column;
	}
	
	.ingredient_icons .item {
		position:relative;
		display:flex;
		color:#333;
		text-decoration:none;
		padding:4px;
		align-items:center;
	}
	
	.ingredient_icons.limited .item {
		display:none;
	}
	
	.ingredient_icons.limited .item:nth-child(-n+3) {
		display:flex;
	}
	
	.ingredient_icons .item img {
		flex:0 0 32px;
		width:auto;
		height:32px;
		margin-right:16px;
	}
	
	.ingredient_icons .item .label {
		line-height:110%;
	}
	
	.ingredient_icons .item .hover_info {
		position:absolute;
		visibility:hidden;
		opacity:0;
	}
	
	.ingredient_icons .show_all {
		display:flex;
		align-items:center;
		padding:8px;
		text-decoration:none;
		font-weight:600;
	}
	
	.ingredient_icons .more {
		display:none;
	}
	
	.ingredient_icons.limited .more {
		display:block;
	}
	
	.ingredient_icons .less {
		display:block;
	}
	
	.ingredient_icons.limited .less {
		display:none;
	}
	
	.voucher_add_to_cart {
		
	}
	
	.voucher_add_to_cart label[for='voucher_amount'] {
		display:block;
		font-weight:600;
		font-size:1.2em;
		margin-bottom:12px;
	}
	
	.voucher_add_to_cart .inputs {
		display:flex;
		align-items:center;
	}
	
	.voucher_add_to_cart .inputs .currency {
		padding:0 8px 0 0;
	}
	
	.voucher_add_to_cart .inputs .currency strong {
		font-size:1.2em;
	}
	
	.voucher_add_to_cart .inputs input[type='number'] {
		box-sizing:border-box;
		height:48px;
		padding:0 12px;
		border:none;
		border:1px solid #ccc;
		border-top-left-radius:4px;
		border-bottom-left-radius:4px;
		border-right:none;
		width:128px;
	}
	
	.voucher_add_to_cart .inputs input[type='number']:focus {
		border-color:#666;
	}
	
	.voucher_add_to_cart .inputs input[type='submit'] {
		box-sizing:border-box;
		height:48px;
		padding:0 16px;
		background-color:#9ab7a4;
		color:#fff;
		border:none;
		border-top-right-radius:4px;
		border-bottom-right-radius:4px;
		cursor:pointer;
	}
	
	/* ---- shop - skin types ---- */
	
	.skin_type_feature {
		text-align:center;
	}
	
	.skin_type_feature .panel_maxwidth {
		display:flex;
		flex-direction:column;
	}
	
	.skin_type_feature .image {
		margin-bottom:16px;
	}
	
	.skin_type_feature .image img {
		width:auto;
		height:auto;
		max-width:128px;
		max-height:128px;
	}
	
	.skin_type_intro {
		border-bottom:1px solid #ddd;
	}
	
	.skin_type_intro .intro_cols {
		display:flex;
		flex-direction:column;
	}
	
	.skin_type_intro .col:first-child {
		margin-bottom:24px;
	}
	
	.skin_type_intro .col h3 {
		display:flex;
		font-weight:500;
	}
	
	.skin_type_intro .col h3 .icon {
		margin-right:8px;
	}
	
	.skin_type_intro .col h3 .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.skin_type_product_heading {
		font-weight:700;
		font-size:2em;
	}
	
	.quiz_page {
		background-color:#f5f5f5;
	}
	
	.quiz_page .quiz_step {
		display:flex;
		flex-direction:column;
		box-sizing:border-box;
		width:90%;
		max-width:1024px;
		margin:0 auto 16px auto;
		background-color:#fff;
		padding:24px;
		border-radius:4px;
		opacity:0;
	}
	
	.quiz_page .quiz_step.show {
		opacity:1;
		transition:opacity 0.5s;
	}
	
	.quiz_page .quiz_step .col_number {
		margin:0 0 16px 0;
	}
	
	.quiz_page .quiz_step .circle {
		display:inline-flex;
		width:32px;
		height:32px;
		justify-content:center;
		align-items:center;
		border:1px solid #ccc;
		color:#999;
		border-radius:50%;
		font-weight:500;
		font-size:1.2em;
	}
	
	.quiz_page .quiz_step .col_content {
		
	}
	
	.quiz_page .quiz_step .question {
		margin-bottom:16px;
	}
	
	.quiz_page .quiz_step .question h2 {
		font-size:1.2em;
		line-height:100%;
		margin-bottom:12px;
	}
	
	.quiz_page .quiz_step .question p {
		color:#999;
		line-height:100%;
		margin:0;
	}
	
	.quiz_page .quiz_step .options {
		display:flex;
		flex-direction:column;
	}
	
	.quiz_page .quiz_step .option {
		display:flex;
		box-sizing:border-box;
		width:100%;
		border:1px solid #ccc;
		margin-bottom:4px;
		line-height:110%;
		border-radius:4px;
		padding:12px;
		opacity:0;
	}
	
	.quiz_page .quiz_step .option.show {
		opacity:1;
		transition:opacity 0.1s;
	}
	
	.quiz_page .quiz_step .option:active {
		box-shadow:inset 0 0 4px rgba(0,0,0,0.1);
	}
	
	.quiz_page .quiz_step .option.selected {
		background-color:#fff4f4;
		border-color:#333;
	}
	
	.quiz_page .quiz_step .option input {
		display:none;
	}
	
	.quiz_page .quiz_step .option .custom_checkbox {
		display:inline-flex;
		width:12px;
		height:12px;
		border:1px solid #ccc;
		justify-content:center;
		align-items:center;
	}
	
	.quiz_page .quiz_step .option .custom_checkbox.radio {
		border-radius:50%;
	}
		
	.quiz_page .quiz_step .option.selected .custom_checkbox {
		border-color:#333;
		background-color:#333;
	}
	
	.quiz_page .quiz_step .option .custom_checkbox:after {
		display:inline-block;
		content:'✔';
		opacity:0;
		color:#fff;
		font-size:0.75em;
	}
	
	.quiz_page .quiz_step .option.selected .custom_checkbox:after {
		opacity:1;
	}
	
	.quiz_page .quiz_step .option strong {
		font-weight:600;
	}
		
	.quiz_page .quiz_step .option .left {
		margin:0 12px 0 0;
	}
	
	.quiz_page .quiz_step .option .right {
		
	}
	
	.quiz_page .quiz_step .option_expert {
		margin-top:16px;
	}
	
	.quiz_page .quiz_step .actions {
		margin-top:16px;
	}
		
	.quiz_v2 {
		background-color:#f5f5f5;
	}
	
	.quiz_v2.question_skin_concerns .panel_maxwidth {
		max-width:768px;
	}
	
	.quiz_v2 .question_heading {
		margin:0 0 24px 0;
		text-align:center;
	}
	
	.quiz_v2 .question_heading.align_left {
		text-align:left;
	}
	
	.quiz_v2 .question_heading h2 {
		margin:0 0 8px 0;
		color:#444;
		font-weight:500;
	}
		
	.quiz_v2 .question_heading h2 .number {
		display:inline-flex;
		width:24px;
		height:24px;
		vertical-align:middle;
		justify-content:center;
		align-items:center;
		color:#fff;
		background-color:#e0aaad;
		border-radius:50%;
		font-size:0.6em;
		margin:0 8px 0 0;
	}
	
	.quiz_v2 .question_heading .subline {
		color:#999;
	}
	
	.quiz_v2 .options_grid {
		position:relative;
		display:flex;
		flex-wrap:wrap;
		margin:-8px;
	}
	
	.quiz_v2 .options_grid .grid_item {
		position:relative;
		display:flex;
		flex-direction:column;
		background-color:#fff;
		padding:16px;
		border-radius:4px;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		text-align:center;
		margin:8px;
		flex:0 0 auto;
		flex-basis:calc( 100% - 16px );
		box-sizing:border-box;
		border:2px solid #fff;
	}
	
	.quiz_v2 .options_grid .grid_item:active {
		transform:scale(0.98);
	}
	
	.quiz_v2 .options_grid .grid_item.selected {
		border-color:#e0aaad;
	}
		
	.quiz_v2 .options_grid .grid_item .image {
		position:relative;
		z-index:10;
		margin-bottom:16px;
	}
	
	.quiz_v2 .options_grid .grid_item .image img {
		width:auto;
		height:auto;
		max-width:96px;
		max-height:96px;
	}
	
	.quiz_v2 .options_grid .grid_item .text {
		position:relative;
		z-index:10;
	}
	
	.quiz_v2 .options_grid .grid_item .text h3 {
		margin:0 0 8px 0;
		font-size:1.2em;
	}
	
	.quiz_v2 .options_grid .grid_item .text p {
		margin:8px 0 0 0;
		font-size:0.9em;
		line-height:120%;
		color:#999;
	}
	
	.quiz_v2 .options_grid .grid_item .tick {
		position:absolute;
		z-index:20;
		top:0;
		left:0;
		width:64px;
		height:64px;
		background-size:cover;
		background-position:left top;
		color:#fff;
		opacity:0;
		transform:translate(0, -4px);
		transition:transform 0.2s, opacity 0.2s;
	}
	
	.quiz_v2 .options_grid .grid_item.selected .tick {
		opacity:1;
		transform:scale(1);
	}
	
	.quiz_v2 .options_grid .grid_item .tick img {
		position:absolute;
		top:12px;
		left:12px;
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.quiz_v2 .options_grid .grid_item input {
		display:none;
	}
	
	.quiz_v2 .options_rows {
		display:flex;
		flex-direction:column;
	}
	
	.quiz_v2 .options_rows.collection_options {
		margin-bottom:32px;
	}
		
	.quiz_v2 .options_rows .row_item {
		display:flex;
		box-sizing:border-box;
		width:100%;
		border:1px solid #ccc;
		margin-bottom:4px;
		line-height:110%;
		border-radius:4px;
		padding:12px;
		background-color:#fff;
	}
		
	.quiz_v2 .options_rows .row_item:active {
		box-shadow:inset 0 0 4px rgba(0,0,0,0.1);
	}
	
	.quiz_v2 .options_rows .row_item.selected {
		background-color:#fff4f4;
		border-color:#333;
	}
	
	.quiz_v2 .options_rows .row_item input {
		display:none;
	}
	
	.quiz_v2 .options_rows .row_item .custom_checkbox {
		display:inline-flex;
		width:12px;
		height:12px;
		border:1px solid #ccc;
		justify-content:center;
		align-items:center;
	}
	
	.quiz_v2 .options_rows .row_item .custom_checkbox.radio {
		border-radius:50%;
	}
		
	.quiz_v2 .options_rows .row_item.selected .custom_checkbox {
		border-color:#333;
		background-color:#333;
	}
	
	.quiz_v2 .options_rows .row_item .custom_checkbox:after {
		display:inline-block;
		content:'✔';
		opacity:0;
		color:#fff;
		font-size:0.75em;
	}
	
	.quiz_v2 .options_rows .row_item.selected .custom_checkbox:after {
		opacity:1;
	}
	
	.quiz_v2 .options_rows .row_item strong {
		font-weight:600;
	}
		
	.quiz_v2 .options_rows .row_item .left {
		margin:0 12px 0 0;
	}
	
	.quiz_v2 .options_rows .row_item .right {
		
	}
		
	.quiz_v2 .question_actions {
		padding:32px 0;
		text-align:center;
		display:flex;
		justify-content:center;
	}
	
	.quiz_v2 .question_actions.space_between {
		justify-content:space-between;
	}
	
	.quiz_v2 .question_expert {
		display:flex;
		align-items:center;
		background-color:#fff;
		padding:16px;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
		text-decoration:none;
	}
	
	.quiz_v2 .question_expert .image {
		margin-right:16px;
	}
	
	.quiz_v2 .question_expert .image img {
		width:auto;
		height:auto;
		max-width:64px;
		max-height:64px;
		vertical-align:top;
	}
	
	.quiz_v2 .question_expert .text {
		font-size:1.1em;
		font-weight:500;
	}
	
	.quiz_v2 .question_expert .text strong {
		display:inline-block;
		text-decoration:underline;
	}
	
	.quiz_skin_type_summary {
		background-color:#f5f5f5;
	}
	
	.quiz_skin_type_summary .panel_maxwidth {
		max-width:768px;
	}
	
	.quiz_skin_type_summary .panel_padding {
		padding-bottom:0;
	}
	
	.quiz_skin_type_summary .box {
		background-color:#fff;
		padding:32px 24px;
		border-radius:4px;
	}
	
	.quiz_skin_type_summary .heading {
		display:flex;
		align-items:center;
		margin-bottom:24px;
	}
	
	.quiz_skin_type_summary .heading .icon {
		margin-right:12px;
	}
	
	.quiz_skin_type_summary .heading .icon img {
		width:48px;
		height:auto;
		vertical-align:top;
	}
	
	.quiz_skin_type_summary .heading .label {
		font-size:0.9em;
		color:#999;
	}
	
	.quiz_skin_type_summary .heading .name {
		display:flex;
		align-items:center;
	}
	
	.quiz_skin_type_summary .heading .name h2 {
		margin:0;
	}
	
	.quiz_skin_type_summary .heading .name .change {
		margin-left:12px;
		color:#999;
		text-decoration:none;
	}
	
	.quiz_skin_type_summary .action {
		margin-top:16px;
	}
	
	.quiz_skin_type_summary .products_panel {
		margin-top:32px;
	}
	
	.quiz_skin_type_summary .products_heading {
		color:#999;
		margin-bottom:12px;
	}
		
	.quiz_skin_type_summary .product_group {
		margin:0 0 24px 0;
	}
	
	.quiz_skin_type_summary .product_group:last-child {
		margin:0;
	}
	
	.quiz_skin_type_summary .product_group .group_heading {
		margin-bottom:8px;
	}
	
	.quiz_skin_type_summary .product_group .group_subline {
		margin:8px 0;
	}
	
	.quiz_skin_type_summary .group_products {
		display:flex;
		align-items:flex-end;
		margin-top:12px;
	}
	
	.quiz_skin_type_summary .group_products .product {
		text-decoration:none;
		margin-right:8px;
	}
	
	.quiz_skin_type_summary .group_products .product img {
		width:auto;
		height:auto;
		max-width:48px;
		max-height:48px;
		vertical-align:bottom;
	}
		
	.panel_ask_expert {
		
	}
	
	.panel_ask_expert .panel_maxwidth {
		max-width:768px;
	}
	
	.panel_ask_expert .expert_bio {
		display:flex;
		flex-direction:column;
	}
	
	.panel_ask_expert .expert_bio .image img {
		width:128px;
		height:auto;
		vertical-align:bottom;
	}
	
	.panel_ask_expert .expert_bio .text {
		padding:24px 0;
		border-top:1px solid #ddd;
		border-bottom:1px solid #ddd;
		margin-bottom:24px;
	}
	
	.panel_ask_expert .expert_bio .text strong {
		font-weight:600;
	}
	
	.panel_ask_expert .checkbox_label {
		display:block;
		border:1px solid #ccc;
		border-radius:4px;
		padding:16px;
	}
	
	.panel_ask_expert .freeform-row .freeform-column .checkbox_label .freeform-input[type='checkbox'],
	.panel_ask_expert .freeform-row .freeform-column .checkbox_label .freeform-input[type='radio'] {
		display:inline-block;
		margin-right:8px;
	}
	
	.panel_ask_expert .checkbox_label.selected {
		border-color:#333;
		background-color:#e4ebe7;
	}
	
	.quiz_v2.question_intro {
		background-color:#f9f9f9;
	}
	
	.quiz_v2.question_intro .panel_maxwidth {
		max-width:1280px;
	}
	
	.quiz_intro h2 {
		text-align:center;
		font-weight:500;
		max-width:600px;
		margin-left:auto;
		margin-right:auto;
	}
	
	.quiz_intro .intro_blocks {
		display:flex;
		flex-direction:column;
		margin:16px -16px;
	}
	
	.quiz_intro .intro_blocks .block {
		display:flex;
		flex-direction:column;
		margin:16px;
		text-align:center;
	}
	
	.quiz_intro .intro_blocks .block .image {
		margin:0 0 16px 0;
	}
	
	.quiz_intro .intro_blocks .block .image img {
		width:auto;
		height:auto;
		max-width:96px;
		max-height:96px;
		vertical-align:top;
	}
	
	.quiz_intro .intro_blocks .block .text h3 {
		margin-bottom:12px;
	}
	
	.quiz_intro .intro_blocks .block .text p {
		line-height:130%;
	}
	
	.quiz_intro .intro_action {
		background-color:#fff;
		padding:24px;
		text-align:center;
		margin:24px 0 0 0;
	}
	
	.quiz_results .panel_maxwidth {
		max-width:768px;
	}
	
	.results_skin_type {
		margin-bottom:32px;
	}
	
	.results_skin_type .skin_type_info {
		margin-bottom:24px;
	}
	
	.results_skin_type .skin_type_info .info_heading {
		display:flex;
		align-items:center;
		margin-bottom:16px;
	}
	
	.results_skin_type .skin_type_info .info_heading .image {
		margin-right:12px;
	}
	
	.results_skin_type .skin_type_info .info_heading .image img {
		width:48px;
		height:auto;
		vertical-align:top;
	}
	
	.results_skin_type .skin_type_info .info_heading .heading_label {
		font-size:0.9em;
		color:#666;
	}
	
	.results_skin_type .skin_type_info .info_heading h2 {
		margin:0;
		font-weight:700;
	}
	
	.results_skin_type .skin_type_info .info_intro {
		margin-bottom:24px;
	}
	
	.results_skin_type .skin_type_info .info_cols {
		display:flex;
		flex-direction:column;
		margin-bottom:24px;
	}
	
	.results_skin_type .skin_type_info .info_cols .col {
		display:flex;
	}
	
	.results_skin_type .skin_type_info .info_cols .col:last-child {
		margin-bottom:0;
	}
	
	.results_skin_type .skin_type_info .info_cols .col .icon {
		flex:16px;
		padding:4px 0 0 0;
		margin:0 8px 0 0;
	}
	
	.results_skin_type .skin_type_info .info_cols .col .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.results_skin_type .skin_type_info .info_cols .col h3 {
		margin:0;
	}
	
	.results_skin_type .skin_type_info .info_cols .col p {
		margin:4px 0;
		line-height:130%;
	}
	
	.results_skin_type .skin_type_routines {
		
	}
	
	.results_skin_type .skin_type_routines .routines_intro {
		margin-bottom:16px;
	}
	
	.results_skin_type .skin_type_routines .routines_intro h3 {
		margin:0 0 8px 0;
	}
	
	.results_skin_type .skin_type_routines .routines_intro p {
		margin:4px 0 0 0;
	}
	
	.results_skin_type .skin_type_routines .routine_list {
		
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine {
		background-color:#fff;
		padding:16px;
		margin-bottom:16px;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_intro {
		margin-bottom:12px;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_intro h4 {
		margin:0 0 4px 0;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_intro p {
		margin:8px 0 0 0;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_products {
		display:flex;
		align-items:flex-end;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_products .item {
		display:block;
		margin-right:8px;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_products .item img {
		width:auto;
		height:auto;
		max-width:32px;
		max-height:48px;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_action {
		margin-top:16px;
	}
	
	.results_skin_concerns {
		margin-top:32px;
	}
	
	.results_skin_concerns .concerns_heading {
		margin-bottom:24px;
	}
	
	.results_skin_concerns .concerns_heading h2 {
		margin:0 0 8px 0;
		font-weight:700;
	}
	
	.results_skin_concerns .concerns_heading p {
		margin:4px 0 0 0;
	}
	
	.results_skin_concerns .concerns_list {
		
	}
	
	.results_skin_concerns .concerns_list .concern {
		margin:0 0 24px 0;
	}
	
	.results_skin_concerns .concerns_list .concern .concern_intro {
		margin:0 0 16px 0;
	}
	
	.results_skin_concerns .concerns_list .concern .concern_intro h3 {
		margin:0 0 8px 0;
	}
	
	.results_skin_concerns .concerns_list .concern .concern_intro p {
		margin:4px 0 0 0;
		line-height:130%;
	}
	
	.results_skin_concerns .concerns_list .concern .concern_products {
		margin-top:0;
		margn-bottom:0;
	}
		
	/* ---- shop - treatments ---- */
	
	/* ---- shop - cart / checkout ---- */
		
	.table_wrap {
		overflow-x:scroll;
	}
	
	.cart_panel {
		
	}
	
	.cart_panel .panel_maxwidth {
		max-width:1024px;
	}
	
	.cart_form {
		margin-bottom:32px;
	}
	
	.cart_table {
		border-collapse:collapse;
		width:100%;
	}
	
	.cart_table thead th {
		border-bottom:1px solid #ccc;
	}
	
	.cart_table td, .cart_table th {
		padding:12px 16px;
	}
	
	.cart_table td {
		border-bottom:1px dotted #ddd;
		border-top:1px dotted #ddd;
	}
	
	.cart_table th {
		text-align:left;
		font-weight:600;
	}
	
	.cart_table .item_img {
		padding-right:0;
	}
	
	.cart_table .item_img img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:24px;
	}
		
	.cart_table .item_name {
		width:100%;
	}
	
	.cart_table .item_remove {
		text-align:right;
	}
	
	.cart_table .item_qty input[type='number'] {
		width:64px;
		height:40px;
	}
	
	.cart_table .item_cost {
		text-align:right;
	}
	
	.cart_table .coupon_box {
		display:flex;
		justify-content:flex-start;
		align-items:center;
	}
	
	.cart_table .coupon_box label {
		white-space:nowrap;
		margin-right:16px;
		color:#666;
		font-weight:600;
	}
	
	.cart_table .coupon_box input[type='text'] {
		width:96px;
		height:40px;
		padding:0 8px;
	}
	
	.cart_table .row_update {
		text-align:right;
		border-top:1px solid #ccc;
		border-bottom:1px solid #ccc;
	}
	
	.cart_table .row_update td {
		background-color:#fcfcfc;
	}
	
	.cart_table .cart_totals {
		
	}
			
	.cart_table .total_row td {
		background-color:#f5f5f5;
	}
	
	.cart_table .total_label {
		text-align:right;
		width:100%;
	}
	
	.cart_table .total_number {
		text-align:right;
	}
	
	.cart_table .total_final td {
		font-weight:700;
	}
	
	.cart_table .total_final td .light {
		font-weight:300;
	}
	
	.cart_table .price_item {
		white-space:nowrap;
	}
	
	.cart_table tbody tr:last-child td {
		border-bottom:1px solid #ccc;
	}
	
	.cart_panel .col_shipping {
		background-color:#f5f5f5;
		padding:24px;
		margin-top:32px;
	}
	
	.cart_voucher_info {
		padding:32px 0;
	}
	
	.shipping_options {
		
	}
	
	.shipping_options ul {
		padding:0;
	}
	
	.shipping_options ul li {
		background-color:#eee;
		list-style:none;
	}
	
	.shipping_options ul li label {
		display:block;
		padding:8px 12px;
	}
	
	.cart_proceed {
		margin-top:32px;
		text-align:right;
	}
		
	.email_exists_cols {
		
	}
	
	.email_exists_cols .col {
		background-color:#f5f5f5;
		padding:24px;
		margin-top:24px;
	}
	
	.checkout_row {
		padding:0 0 24px 0;
		margin:0 0 24px 0;
		border-bottom:1px solid #ddd;
	}
	
	.checkout_nav {
		padding:16px 0;
		background-color:#f5f5f5;
	}
	
	.checkout_nav .panel_maxwidth {
		max-width:1024px;
		display:flex;
		flex-wrap:wrap;
		align-items:center;
	}
		
	.checkout_nav .item {
		display:block;
		text-decoration:none;
		padding:8px;
		color:#999;
		font-weight:300;
	}
	
	.checkout_nav .item .number {
		display:inline-block;
		font-weight:500;
		margin-right:8px;
	}
	
	.checkout_nav .item.current {
		color:#333;
		font-weight:600;
	}
	
	.checkout_nav .item.disabled {
		color:#ddd;
	}
	
	.checkout_nav .divider {
		display:inline-block;
		margin:0 8px;
		color:#ccc;
	}
	
	.checkout_panel .panel_maxwidth {
		max-width:1024px;
	}
	
	.checkout_coupon {
		padding:32px 0;
		border-top:1px solid #ccc;
		border-bottom:1px solid #ccc;
	}
	
	.checkout_coupon .coupon_cols {
		display:flex;
		flex-direction:column;
	}
	
	.checkout_coupon .col_form {
		margin-bottom:16px;
	}
	
	.checkout_coupon .col_details {
		display:flex;
		flex-wrap:wrap;
		color:#7b9f88;
		margin:-4px;
	}
	
	.checkout_coupon .col_details .discount {
		border:1px solid #ddd;
		padding:4px 12px;
		border-radius:69px;
		margin:4px;
	}
	
	.checkout_coupon .col_details .tick {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.checkout_coupon form.code_input label {
		display:block;
		font-size:0.9em;
		margin-bottom:4px;
		font-weight:400;
	}
	
	.checkout_coupon form.code_input .inputs {
		display:flex;
	}
	
	.checkout_coupon form.code_input input[type='text'] {
		box-sizing:border-box;
		border:1px solid #333;
		border-top-left-radius:8px;
		border-bottom-left-radius:8px;
		height:40px;
		padding:0 16px;
		font-weight:400;
		width:160px;
		font-size:0.9em;
	}
	
	.checkout_coupon form.code_input input[type='submit'] {
		box-sizing:border-box;
		border:1px solid #333;
		background-color:#333;
		color:#fff;
		height:40px;
		padding:0 16px;
		border-top-right-radius:8px;
		border-bottom-right-radius:8px;
		cursor:pointer;
	}
	
	.checkout_coupon form.discount input[type='submit'] {
		display:inline-block;
		padding:8px 12px;
		margin:-4px -8px;
		font-size:0.9em;
		border:none;
		background-color:transparent;
		color:#999;
		line-height:100%;
		cursor:pointer;
	}
	
	.checkout_addresses {
		
	}
	
	.checkout_addresses .address_group {
		padding:32px 0;
		border-bottom:1px solid #ccc;
	}
	
	.checkout_addresses .address_fields.hide {
		display:none;
	}
	
	.checkout_shipping,
	.checkout_gateway_select {
		
	}
	
	.checkout_shipping .free_shipping_promo {
		display:flex;
		align-items:center;
		margin-bottom:24px;
	}
	
	.checkout_shipping .free_shipping_promo .icon {
		margin-right:8px;
	}
	
	.checkout_shipping .free_shipping_promo .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		vertical-align:middle;
		opacity:0.5;
	}
	
	.checkout_shipping .free_shipping_promo .text {
		font-style:italic;
		font-weight:500;
		color:#999;
	}
	
	.checkout_shipping .shipping_option,
	.checkout_gateway_select .payment_option {
		display:flex;
		padding:16px;
		border:1px solid #ddd;
		margin:0 0 8px 0;
		border-radius:4px;
	}
	
	.checkout_shipping .shipping_option.checked,
	.checkout_gateway_select .payment_option.checked {
		border-color:#444;
	}
	
	.checkout_shipping .shipping_option .input,
	.checkout_gateway_select .payment_option .input {
		margin-right:12px;
	}
	
	.checkout_shipping .shipping_option .detail,
	.checkout_gateway_select .payment_option .detail {
		display:inline-block;
		margin-left:12px;
		font-size:0.8em;
		color:#999;
	}
	
	.checkout_shipping .shipping_option .name,
	.checkout_gateway_select .payment_option  .name {
		font-weight:500;
		margin-right:12px;
	}
	
	.checkout_gateway_select .payment_option .gateway_logo {
		display:inline-block;
		width:auto;
		height:auto;
		max-width:64px;
		max-height:64px;
		vertical-align:middle;
		margin-top:-2px;
		margin-left:16px;
	}
	
	.checkout_gateway_select .payment_option .card_logos {
		width:96px;
		height:auto;
		vertical-align:middle;
		margin-left:12px;
	}
	
	.checkout_shipping .shipping_option .price {
		display:inline-block;
	}
	
	.checkout_shipping .shipping_option .price .currency {
		font-size:0.9em;
		color:#666;
	}
	
	.checkout_shipping .shipping_option .price .number {
		font-weight:600;
	}
	
	.checkout_gateway_select {
		
	}
	
	.checkout_payment {
		
	}
	
	.checkout_payment .paypal-button-context-iframe {
		overflow:visible!important;
	}
	
	.checkout_payment iframe.zoid-component-frame {
		transform:scale(2);
		transform-origin:left center;
		
	}
	
	.checkout_payment .section_heading {
		display:flex;
	}
	
	.checkout_payment .section_heading .icon {
		margin-right:8px;
	}
	
	.checkout_payment .section_heading .icon img {
		display:inline-block;
		vertical-align:middle;
		width:32px;
		height:auto;
	}
	
	.form .column.row_checkout_create_account {
		padding-bottom:32px;
		margin-bottom:32px;
		border-bottom:1px solid #ccc;
	}
	
	.checkout_payment .payment_form_fields {
		margin-bottom:32px;
	}
	
	.checkout_summary {
		
	}
	
	.checkout_summary td {
		padding:8px;
		border-bottom:1px dotted #ccc;
	}
	
	.checkout_summary .item_cost,
	.checkout_summary .total_number {
		text-align:right;
		white-space:nowrap;
	}
	
	.checkout_summary .price_item .currency {
		font-size:0.8em;
		color:#666;
	}
	
	.checkout_summary .price_item .number {
		font-weight:600;
	}
	
	.checkout_summary .total_final .total_label {
		font-weight:600;
	}
	
	.checkout_proceed {
		margin-top:32px;
	}
	
	.checkout_account_exists {
		padding:16px;
		border:1px solid #eee;
		margin-bottom:32px;
		border-radius:4px;
	}
	
	.checkout_account_exists strong {
		font-weight:600;
	}
	
	.checkout_account_exists .form {
		display:none;
	}
	
	.checkout_account_exists.expand .intro {
		display:none;
	}
	
	.checkout_account_exists.expand .actions {
		display:none;
	}
	
	.checkout_account_exists.expand .form {
		display:block;
	}
	
	.checkout_account_exists.hide {
		display:none;
	}
	
	.afterpay_available {
		border:1px solid #eee;
		padding:16px;
		margin:0 0 32px 0;
	}
	
	.afterpay_available .logo {
		margin-bottom:12px;
	}
	
	.afterpay_available .logo img {
		width:128px;
		height:auto;
		vertical-align:top;
	}
	
	.afterpay_available p {
		margin:8px 0 0 0;
		line-height:110%;
	}
	
	.afterpay_available .is_available {
		font-weight:500;
	}
	
	.afterpay_available ul {
		margin:8px 0 0 0;
	}
	
	.afterpay_available li {
		font-size:0.9em;
		color:#666;
	}
	
	.afterpay_available .breakdown {
		font-weight:500;
	}
	
	.afterpay_available .price_item .currency {
		font-size:0.8em;
	}
	
	.afterpay_available .price_item .number {
		font-weight:600;
	}
	
	.afterpay_available .more {
		
	}
	
	.afterpay_available .more a {
		color:#999;
	}
	
	.free_gift_banner {
		display:flex;
		flex-direction:column;
		background-color:#fcfcfc;
		border:1px solid #eee;
		padding:16px;
		margin:0 0 24px 0;
	}
	
	.free_gift_banner .col_image {
		margin:0 0 12px 0;
	}
	
	.free_gift_banner .col_image .img {
		width:auto;
		height:auto;
		max-width:48px;
		max-height:48px;
	}
	
	.free_gift_banner .col_text {
		
	}
	
	.free_gift_banner .col_text .headline {
		font-size:1.1em;
		font-weight:700;
		line-height:105%;
		margin:0 0 8px 0;
	}
	
	.free_gift_banner .col_text .subline {
		color:#666;
		font-size:0.9em;
		line-height:120%;
	}
	
	.free_gift_banner .col_text .subline .number {
		
	}
	
	.free_gift_banner .col_text .subline .product_name {
		display:inline-block;
		font-weight:500;
		font-style:italic;
		color:#666;
	}
	
	.free_gift_banner .col_text .action {
		margin:8px 0 0 0;
		font-size:0.9em;
		line-height:120%;
	}
	
	.free_gift_banner .col_text .action .link {
		font-weight:500;
		color:#999;
	}
	
	.free_gift_select_banner {
		background-color:#fcfcfc;
		border:1px solid #eee;
		padding:16px;
		margin:0 0 24px 0;
	}
	
	.free_gift_select_banner .headline {
		font-size:1.1em;
		font-weight:700;
		line-height:105%;
		margin:0 0 8px 0;
	}
	
	.free_gift_select_banner .subline {
		color:#666;
		font-size:0.9em;
		line-height:110%;
		margin:4px 0;
	}
	
	.free_gift_select_banner .gift_select {
		margin:12px 0 0 0;
		padding:0;
	}
	
	.free_gift_select_banner .gift_select li {
		list-style:none;
		margin:4px 0;
	}
	
	.free_gift_select_banner .gift_select li a {
		display:flex;
		align-items:center;
		padding:12px;
		background-color:#fff;
		text-decoration:none;
		font-weight:500;
	}
	
	.free_gift_select_banner .gift_select li a .icon {
		flex:0 0 16px;
		margin-right:8px;
	}
		
	.free_gift_select_banner .gift_select li a .circle {
		display:block;
		box-sizing:border-box;
		width:16px;
		height:16px;
		background-color:#fff;
		border:1px solid #ccc;
		border-radius:50%;
	}
	
	.free_gift_select_banner .gift_select li a .circle:after {
		display:block;
		content:'';
		width:8px;
		height:8px;
		margin:3px;
		border-radius:50%;
		background-color:#fff;
		transform:scale(0.5);
		transition:all 0.1s;
	}
	
	.free_gift_select_banner .gift_select li a .thumbnail {
		display:flex;
		justify-content:center;
		align-items:center;
		flex:0 0 24px;
		margin:0 8px 0 0;
	}
	
	.free_gift_select_banner .gift_select li a .thumbnail img {
		width:auto;
		height:auto;
		max-height:24px;
		max-width:24px;
	}
	
	.free_gift_select_banner .gift_select li.selected a {
		background-color:#eaccce;
		background-color:#f4eaea;
		box-shadow:inset 1px 1px 4px rgba(170,128,130,0.25);
	}
	
	.free_gift_select_banner .gift_select li.selected a .circle {
		border-color:#aa8082;
	}
	
	.free_gift_select_banner .gift_select li.selected a .circle:after {
		background-color:#e0aaad;
		transform:scale(1);
	}
	
	/* ---- shop - account ---- */
	
	.account_panel .panel_maxwidth {
		max-width:1024px;
	}
	
	.header_with_user {
		display:flex;
		flex-direction:column;
		margin-bottom:32px;
	}
	
	.header_with_user .left {
		margin-bottom:16px;
	}
		
	.current_user {
		display:flex;
		align-items:center;
	}
	
	.current_user .icon {
		display:inline-block;
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		margin-right:12px;
	}
	
	.current_user .email {
		text-decoration:none;
		color:#333;
		font-weight:600;
	}
	
	.current_user .divider {
		display:inline-block;
		margin:0 8px;
		color:#ccc;
	}
	
	.current_user .link {
		display:inline-block;
		text-decoration:none;
	}
		
	.account_cols {
		display:flex;
		flex-direction:column;
	}
	
	.account_nav {
		display:flex;
		flex-direction:column;
		margin-bottom:32px;
	}
	
	.account_nav .nav_item {
		display:flex;
		align-items:center;
		padding:8px;
		border:1px solid #ccc;
		border-radius:4px;
		margin-bottom:8px;
		text-decoration:none;
	}
	
	.account_nav .nav_item.active {
		border-color:#666;
	}
	
	.account_nav .nav_item .icon {
		display:flex;
		justify-content:center;
		align-items:center;
		flex:0 0 16px;
		margin-right:8px;
	}
	
	.account_nav .nav_item .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:12px;
	}
	
	.account_nav .nav_item .label {
		
	}
	
	.account_home {
		max-width:512px;
	}
	
	.account_home .account_nav {
		margin:0;
	}
	
	.order_list_table {
		border-collapse:collapse;
	}
	
	.order_list_table th {
		padding:16px;
		border-bottom:1px dotted #ccc;
		text-align:left;
	}
	
	.order_list_table td {
		padding:16px;
		border-bottom:1px dotted #ccc;
	}
	
	.order_list_table .price_item .currency {
		font-size:0.8em;
		color:#666;
	}
	
	.order_list_table .price_item .number {
		font-weight:600;
	}
	
	.order_details_table {
		border-collapse:collapse;
	}
	
	.order_details_table td {
		border-bottom:1px dotted #ddd;
		border-top:1px dotted #ddd;
		padding:8px;
	}
	
	.order_details_table td.total_number,
	.order_details_table td.item_cost {
		text-align:right;
		padding-left:32px;
	}
	
	.order_details_table .price_item .currency {
		font-size:0.8em;
	}
	
	.order_details_table .price_item .number {
		font-weight:600;
	}
	
	.account_update_form {
		padding:12px 16px;
		background-color:#f5f5f5;
		margin-bottom:16px;
	}
	
	.account_update_form .reset {
		display:inline-block;
		text-decoration:none;
		margin-left:16px;
		color:#999;
	}
	
	.code_promo_banner {
		background-color:#e4ebe7;
		padding:12px 0;
	}
	
	.code_promo_banner .panel_maxwidth {
		display:flex;
		justify-content:center;
		align-items:center;
	}
	
	.code_promo_banner .panel_maxwidth .text {
		margin-right:16px;
		line-height:110%;
	}
	
	.code_promo_banner .panel_maxwidth .text .code {
		font-weight:600;
	}
	
	.code_promo_banner .panel_maxwidth .text strong {
		font-weight:600;
	}
	
	.code_promo_banner .panel_maxwidth .close {
		display:flex;
		justify-content:center;
		align-items:center;
		text-align:right;
		text-decoration:none;
		flex:0 0 32px;
		height:32px;
	}
	
	/* ---- shop - vouchers ---- */
	
	.voucher_page {
		
	}
	
	.voucher_page .voucher_question {
		margin-bottom:32px;
		font-weight:500;
		font-style:italic;
	}
	
	.voucher_page .voucher_options_wrap {
		max-width:768px;
		margin:0 auto;
	}
	
	.voucher_page .voucher_options {
		display:flex;
		flex-direction:column;
		margin:-8px;
	}
	
	.voucher_page .voucher_options .option {
		border:1px solid #ccc;
		margin:8px;
		border-radius:4px;
		overflow:hidden;
	}
		
	.voucher_page .voucher_options .option .image {
		
	}
	
	.voucher_page .voucher_options .option .image img {
		display:block;
		width:100%;
		height:auto;
	}
	
	.voucher_page .voucher_options .option .text {
		padding:16px;
	}
	
	.voucher_page .voucher_options .option strong {
		font-weight:600;
	}
	
	.voucher_page .voucher_options .option .text h2 {
		margin-bottom:12px;
	}
	
	.voucher_page .voucher_options .option .text p {
		margin:8px 0;
		line-height:120%;
	}
	
	.voucher_page .voucher_options .option .text .action {
		margin-top:12px;
	}
	
	.voucher_page .voucher_options .option .text .action ul {
		padding:0;
		margin:0;
	}
	
	.voucher_page .voucher_options .option .text .action ul li {
		list-style:none;
	}
	
	/* ---- landing pages ---- */
	
	#landing_vip_signup + #footer_signup {
		display:none;
	}
	
	#landing_vip_signup {
		background-color:#eee;
	}
	
	#landing_vip_signup .cols {
		display:flex;
		flex-direction:column;
	}
	
	#landing_vip_signup .col_image {
		display:flex;
		justify-content:center;
		align-items:flex-end;
		padding:32px 0 0 0;
	}
	
	#landing_vip_signup .col_image img {
		width:70%;
		height:auto;
		max-width:700px;
		max-height:900px;
	}
	
	#landing_vip_signup .col_text {
		padding:0 0 32px 0;
	}
	
	#landing_vip_signup .box {
		position:relative;
		background-color:#f9f9f9;
		padding:16px;
	}
	
	#landing_vip_signup .box:before {
		position:absolute;
		content:'';
		top:-4px;
		right:-4px;
		bottom:-4px;
		left:-4px;
		border:1px solid #fff;
		z-index:10;
	}
	
	#landing_vip_signup .box .inner {
		position:relative;
		z-index:20;
	}
	
	#landing_vip_signup .headline {
		font-weight:500;
		margin:0 0 12px 0;
	}
	
	#landing_vip_signup .checklist {
		margin:16px 0 0 0;
		padding:0;
	}
	
	#landing_vip_signup .checklist li {
		list-style:none;
		display:flex;
		margin:8px 0;
		font-weight:500;
		line-height:105%;
	}
	
	#landing_vip_signup .checklist li .icon {
		flex:0 0 16px;
		margin:0 8px 0 0;
	}
	
	#landing_vip_signup .checklist li .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	#landing_vip_signup .checklist li .label {
		flex:1 1 auto;
	}
	
	#landing_vip_signup .form {
		margin:12px 0 0 0;
		max-width:384px;
	}
	
	#landing_vip_signup .form .inputs {
		display:flex;
	}
	
	#landing_vip_signup .form .inputs input[type='email'] {
		flex:1 1 auto;
		box-sizing:border-box;
		border:1px solid #333;
		border-radius:0;
		border-top-left-radius:8px;
		border-bottom-left-radius:8px;
		height:40px;
		padding:0 16px;
		font-weight:400;
		width:100%;
		font-size:0.9em;
	}
	
	#landing_vip_signup .form .inputs input[type='submit'] {
		flex:0 0 auto;
		box-sizing:border-box;
		border:1px solid #333;
		background-color:#333;
		color:#fff;
		height:40px;
		padding:0 16px;
		border-top-right-radius:8px;
		border-bottom-right-radius:8px;
		cursor:pointer;
	}
			
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 480px) {
	
	/* ---- overall - general ---- */
	
	.panel_padding {
		padding:48px 0;
	}
	
	/* ---- overall - text ---- */
		
	/* ---- overall - buttons ---- */
	
	/* ---- overall - forms ---- */
	
	/* ---- header ---- */
	
	#header .header_top {
		height:72px;
		padding:0 24px;
	}
	
	#header .nav > li > a {
		padding:16px 24px;
	}
	
	#header .nav > li.has_dropdown > a:after {
		right:24px;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .image {
		padding:12px 0 0 24px;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .text .main_item {
		padding:12px 16px;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .text ul li a {
		padding:8px 16px;
	}
	
	#header .dropdown.dropdown_about li a {
		padding:12px 24px;
	}
	
	#header .utilities {
		padding:16px 24px;
	}
	
	#header .utilities li.afterpay a img.small {
		display:none;
	}
	
	#header .utilities li.afterpay a img.large {
		display:inline;
	}
		
	/* ---- footer ---- */
	
	#footer .cols {
		flex-direction:row;
		flex-wrap:wrap;
	}
	
	#footer .col {
		flex:0 0 calc( 50% - 16px );
	}
	
	/* ---- page - general ---- */
	
	.page_feature .panel_padding {
		padding:64px 0;
	}
	.breadcrumb {
		margin-bottom:32px;
	}
	
	/* ---- page - home ---- */
	
	#home_feature .fg {
		padding:64px 0;
	}
		
	#home_feature .fg .text h1 {
		margin-bottom:16px;
	}
		
	#home_feature .fg .text .action {
		margin-top:24px;
	}
	
	#home_feature .fg .image {
		margin-bottom:32px;
	}
	
	#home_feature .fg .image img {
		max-width:160px;
		max-height:160px;
	}
		
	#home_actions .boxes .box {
		padding:32px;
	}
	
	#home_actions .small_items .item .circle {
		width:192px;
		height:160px;
	}
	
	#home_history .text {
		padding:96px 0;
	}
	
	#home_history .text h4 {
		font-size:1.6em;
	}
	
	/* ---- page - about ---- */
	
	.about_panel .image {
		height:320px;
	}
	
	.about_panel .text {
		padding:64px;
	}
	
	.box_list_row {
		margin-bottom:32px;
	}
	
	.box_list_row .image {
		flex:0 0 256px;
		margin-bottom:24px;
	}
	
	/* ---- page - contact ---- */
	
	.panel_stores_intro {
		
	}
	
	.panel_stores_intro .overlay {
		top:12px;
		right:12px;
		bottom:12px;
		left:12px;
	}
	
	/* ---- page - search ---- */
	
	/* ---- shop - catalog ---- */
	
	.catalog_subnav {
		padding:24px;
		margin-bottom:32px;
	}
	
	/* ---- shop - products ---- */
	
	.product_list_group {
		margin:0 0 32px 0;
	}
	
	.product_list .product {
		
	}
	
	.product_list .product .image {
		padding:32px 0;
	}
	
	.product_list .product .text {
		padding:32px;
	}
	
	.product_list_compact .product_compact .image {
		flex:0 0 96px;
	}
	
	.product_list_compact .product_compact .text {
		flex-direction:row;
		justify-content:space-between;
		align-items:center;
		padding:24px;
	}
	
	.product_list_compact .product_compact .left {
		margin:0 24px 0 0;
	}
		
	.product_detail .product_headline {
		margin-bottom:32px;
	}
	
	.product_detail .product_price {
		margin-bottom:24px;
	}
	
	.product_detail .product_price .number {
		font-size:1.6em;
	}
	
	.product_detail .product_skin_types {
		margin-bottom:24px;
	}
	
	.product_detail .product_add_to_cart {
		margin-top:32px;
	}
	
	.product_detail .product_subnav {
		margin-top:48px;
	}
	
	.product_detail .product_subnav .item {
		padding:12px;
		margin:0 8px 8px 0;
	}
		
	.product_detail .product_section {
		padding:48px 0;
	}
	
	.product_detail .product_section .product_section_heading {
		margin-bottom:24px;
	}
	
	.product_detail .product_description {
		margin-bottom:48px;
	}
	
	.product_detail .product_usage_order .usage_order_cols {
		flex-direction:row;
		justify-content:space-between;
	}
	
	.product_detail .product_usage_order .usage_order_col {
		width:48%;
	}
	
	.instruction_list li {
		margin:24px 0;
	}
	
	.instruction_list li .thumbnail {
		flex:0 0 64px;
		margin-right:24px;
	}
	
	.instruction_list li .thumbnail img {
		max-width:64px;
		max-height:64px;
	}
	
	.instruction_list li .text {
		
	}
	
	.instruction_list li .text .number {
		font-size:1.4em;
		margin-right:16px;
	}
	
	.instruction_list li .text .label {
		font-size:1.1em;
	}
		
	/* ---- shop - ingredients ---- */
	
	.ingredient_icons {
		flex-direction:row;
		flex-wrap:wrap;
		margin:-8px;
	}
	
	.ingredient_icons .item {
		flex-direction:column;
		flex:0 0 96px;
		padding:0;
		margin:8px;
		text-align:center;
	}
	
	.ingredient_icons .item img {
		margin:0 0 8px 0;
		flex:0 0 64px;
		height:64px;
	}
	
	.ingredient_icons .item .label {
		
	}
		
	/* ---- shop - skin types ---- */
	
	.skin_type_feature {
		text-align:left;
	}
	
	.skin_type_feature .panel_maxwidth {
		flex-direction:row;
		align-items:center;
	}
	
	.skin_type_feature .image {
		margin:0 24px 0 0;
	}
	
	.quiz_page .quiz_step {
		padding:32px;
		flex-direction:row;
	}
	
	.quiz_page .quiz_step .col_number {
		margin:0 24px 0 0;
	}
	
	.quiz_page .quiz_step .col_content {
		flex:1 1 auto;
		padding-right:16px;
	}
	
	.quiz_page .quiz_step .question {
		margin-bottom:24px;
	}
	
	.quiz_v2 .options_grid .grid_item {
		flex-basis:calc( 50% - 16px );
	}
	
	.quiz_v2 .options_rows.collection_options {
		margin-bottom:48px;
	}
	
	.quiz_v2 .question_actions {
		padding:48px 0;
	}
	
	.quiz_skin_type_summary .box {
		padding:48px 32px;
	}
	
	.quiz_skin_type_summary .products_heading {
		margin-bottom:16px;
	}
	
	.quiz_skin_type_summary .product_group {
		margin-bottom:32px;
	}
	
	.quiz_skin_type_summary .action {
		margin-top:24px;
	}
	
	.quiz_skin_type_summary .group_products .product {
		margin-right:12px;
	}
	
	.panel_ask_expert .expert_bio .text {
		padding:32px 0;
		margin-bottom:32px;
	}
		
	.quiz_intro .intro_action {
		padding:32px;
	}
	
	.results_skin_type {
		margin-bottom:48px;
	}
	
	.results_skin_type .skin_type_info {
		margin-bottom:32px;
	}
	
	.results_skin_type .skin_type_info .info_heading {
		margin-bottom:24px;
	}
	
	.results_skin_type .skin_type_info .info_heading .image {
		margin-right:16px;
	}
	
	.results_skin_type .skin_type_info .info_heading .image img {
		width:64px;
	}
	
	.results_skin_type .skin_type_info .info_heading h2 {
		font-size:1.8em;
	}
	
	.results_skin_type .skin_type_info .info_intro {
		margin-bottom:32px;
	}
	
	.results_skin_type .skin_type_info .info_cols {
		
	}
	
	.results_skin_type .skin_type_info .info_cols .col {
		margin-bottom:24px;
	}
	
	.results_skin_type .skin_type_info .info_cols .col .icon {
		margin-right:12px;
	}
	
	.results_skin_type .skin_type_routines .routines_intro {
		margin-bottom:24px;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine {
		padding:24px;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_intro {
		margin-bottom:16px;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_products .item {
		margin-right:12px;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_products .item img {
		max-width:48px;
		max-height:64px;
	}
	
	.results_skin_concerns {
		margin-top:48px;
	}
	
	.results_skin_concerns .concerns_heading h2 {
		font-size:1.8em;
	}
	
	.results_skin_concerns .concerns_heading {
		margin-bottom:32px;
	}
	
	.results_skin_concerns .concerns_list .concern {
		margin-bottom:32px;
	}
	
	/* ---- shop - treatments ---- */
	
	/* ---- shop - cart / checkout ---- */
	
	.checkout_account_exists {
		padding:24px;
	}
	
	.free_gift_banner {
		flex-direction:row;
		align-items:center;
		padding:24px;
		margin-bottom:32px;
	}
	
	.free_gift_banner .col_image {
		margin:0 16px 0 0;
	}
	
	.free_gift_select_banner {
		padding:24px;
		margin-bottom:32px;
	}
	
	/* ---- shop - account ---- */
	
	.account_update_form {
		padding:16px 24px;
		margin-bottom:24px;
	}
	
	/* ---- landing pages ---- */
	
	#landing_vip_signup {
		
	}
	
	#landing_vip_signup .box {
		padding:32px;
	}
	
	#landing_vip_signup .checklist li {
		font-size:1.1em;
	}
		
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 768px) {
	
	/* ---- overall - general ---- */
	
	.panel_padding {
		padding:64px 0;
	}
	
	/* ---- overall - text ---- */
			
	/* ---- overall - buttons ---- */
	
	.button {
		padding:16px 24px;
	}
	
	.button.small {
		padding:12px 16px;
	}
	
	.button.large {
		padding:20px 32px;
	}
	
	/* ---- overall - forms ---- */
	
	.form .row,
	.form .freeform-row {
		flex-direction:row;
	}
	
	.form .column.half {
		
	}
	
	.form .column.quarter {
		flex:1 1 25%;
	}
	
	.form .column,
	.form .freeform-column {
		
	}
	
	/* ---- header ---- */
	
	#header {
		
	}
	
	#header .header_top {
		height:96px;
		padding:0 32px;
	}
	
	#header .header_top .logo img {
		width:192px;
	}
	
	#header .header_top .nav_button img {
		width:32px;
	}
	
	#header .nav > li > a {
		padding:16px 32px;
	}
	
	#header .nav > li.has_dropdown > a:after {
		right:32px;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .image {
		padding:8px 0 0 32px;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .image img {
		max-width:24px;
		max-height:24px;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .text .main_item {
		padding:12px 16px;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .text ul li a {
		padding:8px 16px;
	}
	
	#header .dropdown.dropdown_about li a {
		padding:16px 32px;
	}
	
	#header .utilities {
		padding:16px 32px;
	}
	
	/* ---- footer ---- */
	
	#footer_signup .panel_maxwidth {
		flex-direction:row;
		justify-content:space-between;
		align-items:center;
	}
	
	#footer_signup .left {
		margin:0 32px 0 0;
	}
	
	#footer_signup .right {
		margin:-16px 0 0 32px;
	}
	
	#footer .cols {
		margin:-16px;
	}
	
	#footer .col {
		flex:0 0 calc( 25% - 32px );
		margin:16px;
	}
	
	#footer .col:last-child {
		text-align:right;
	}
	
	#footer .col .social_icons {
		justify-content:flex-end;
	}
	
	#footer .col .social_icons a {
		margin:0 0 0 12px;
	}
	
	#footer .footer_bot {
		padding:24px 0;
		text-align:center;
	}
	
	/* ---- page - general ---- */
	
	.page_feature .panel_padding {
		padding:96px 0;
	}
	
	.page_feature .feature_image {
		display:block;
	}
	
	.page_feature .feature_text {
		width:60%;
		max-width:768px;
	}
	
	.page_feature[data-centered='1'] .feature_text {
		margin:0 auto;
	}
	
	.breadcrumb {
		margin-bottom:48px;
	}
	
	/* ---- page - home ---- */
	
	#home_feature .bg .splash {
		position:absolute;
		top:0;
		bottom:0;
		left:50%;
		width:50%;
		max-width:768px;
		background-size:55% auto;
		background-position:center center;
		background-repeat:no-repeat;
	}
	
	#home_feature .bg .circle {
		position:absolute;
		top:50%;
		left:75%;
		transform:translate(-50%,-50%);
		width:256px;
		height:256px;
		background-color:rgba(248,235,235,0.75);
		border-radius:50%;
	}
		
	#home_feature .fg {
		flex-direction:row;
		justify-content:space-between;
		align-items:center;
		text-align:left;
	}
	
	#home_feature .fg .text {
		margin:0;
		text-align:left;
		flex:0 0 50%;
	}
	
	#home_feature .fg .text .subline {
		font-size:1.1em;
	}
	
	#home_feature .fg .image {
		text-align:center;
		flex:0 0 40%;
		margin:0;
	}
	
	#home_feature .fg .image img {
		max-width:256px;
		max-height:256px;
	}
	
	.promo_banner {
		text-align:left;
	}
	
	.promo_banner .background {
		right:50%;
	}
	
	.promo_banner:nth-child(2n) .background {
		right:0;
		left:50%;
	}
	
	.promo_banner .background:after {
		opacity:0;
		background-color:rgba(255,255,255,0.1);
	}
	
	.promo_banner .foreground {
		flex-direction:row;
		align-items:center;
	}
	
	.promo_banner:nth-child(2n) .foreground {
		flex-direction:row-reverse;
	}
			
	.promo_banner .image {
		flex:0 0 50%;
		margin:0 5% 0 0;
		text-align:center;
	}
	
	.promo_banner:nth-child(2n) .image {
		margin:0 0 0 5%;
	}
	
	.promo_banner .image img {
		max-width:256px;
		max-height:160px;
	}
	
	.promo_banner .text {
		flex:0 0 45%;
	}
		
	#home_actions .boxes {
		flex-direction:row;
	}
	
	#home_actions .boxes .box {
		width:100%;
	}
	
	#home_actions .boxes .box .image {
		display:block;
	}
	
	#home_actions .boxes .box .image img {
		max-width:128px;
		max-height:128px;
		margin-top:-25%;
	}
	
	#home_actions .small_items {
		flex-direction:row;
		justify-content:space-between;
		margin-top:48px;
	}
	
	#home_actions .small_items .item {
		margin:0 24px;
	}
	
	#home_actions .small_items .item .circle {
		width:160px;
		height:128px;
	}
	
	#home_history .image {
		left:auto;
		right:0;
		transform:translateY(-50%);
	}
	
	#home_history .text {
		padding:128px 0;
		text-align:center;
	}
	
	#home_history .text h4 {
		font-size:2em;
	}
	
	/* ---- page - about ---- */
	
	.about_page {
		
	}
	
	.about_panel {
		flex-direction:row;
	}
	
	.about_panel:nth-child(2n) {
		flex-direction:row-reverse;
	}
	
	.about_panel .image {
		height:50vw;
		max-height:960px;
		flex:0 0 50%;
		height:auto;
	}
	
	.about_panel .text {
		display:flex;
		justify-content:center;
		align-items:center;
		flex:0 0 50%;
		padding:0;
	}
	
	.about_panel .text .inner {
		width:70%;
		height:auto;
		max-width:420px;
	}
		
	.box_list_row {
		flex-direction:row;
		align-items:center;
		margin-bottom:48px;
	}
	
	.box_list_row .image {
		flex:0 0 256px;
		height:256px;
		margin:0 48px 0 0;
	}
	
	/* ---- page - contact ---- */
	
	#contact_page .panel_stores .company_list {
		flex-direction:row;
		flex-wrap:wrap;
		margin:24px -24px -24px -24px;
	}
	
	#contact_page .panel_stores .company_list .company_details {
		flex:0 0 calc( 50% - 48px );
		margin:24px;
	}
	
	#contact_page .panel_headoffice .cols {
		flex-direction:row;
		flex-wrap:wrap;
		margin:24px -24px -24px -24px;
	}
	
	#contact_page .panel_headoffice .cols .col {
		flex:0 0 calc( 50% - 48px );
		margin:24px;
	}
	
	.panel_stores_intro {
		
	}
	
	.panel_stores_intro .overlay {
		top:0;
		right:0;
		bottom:0;
		left:50%;
		background-color:rgba(255,255,255,0.8);
		background: linear-gradient(to right, rgba(255,255,255,0.9) 0%, rgba(240,243,251,0.7) 100%);
	}
		
	.panel_stores_intro .text {
		text-align:left;
		width:45%;
		margin:0 0 0 auto;
		padding:32px 0;
	}
	
	.stockist_group .company_list {
		flex-direction:row;
		flex-wrap:wrap;
	}
	
	.stockist_group .company_details {
		flex:0 0 auto;
		flex-basis:calc( 50% - 64px );
	}
		
	/* ---- page - search ---- */
	
	/* ---- shop - catalog ---- */
	
	.catalog_description {
		margin-bottom:48px;
	}
	
	.filter_bar {
		
	}
	
	.filter_bar .filter_toggle {
		display:none;
	}
		
	.filter_bar .filter_items {
		display:flex;
		flex-direction:row;
		justify-content:flex-end;
		margin:-8px;
	}
	
	.filter_bar .filter_items .filter_item {
		display:flex;
		align-items:center;
		flex:0 1 256px;
	}
	
	.filter_bar .filter_items .filter_item .label {
		margin-right:12px;
	}
	
	.filter_bar .filter_items .filter_item .element {
		flex:1 1 auto;
	}
	
	/* ---- shop - products ---- */
	
	.product_list_group {
		margin:0 0 48px 0;
	}
	
	.product_list {
		flex-direction:row;
		flex-wrap:wrap;
	}
	
	.product_list .product {
		flex-grow:0;
		flex-shrink:0;
		flex-basis:calc( 50% - 16px );
	}
	
	.product_detail .product_cols {
		display:flex;
		align-items:top;
	}
	
	.product_detail .col_image {
		position:relative;
		flex:0 0 256px;
		margin:0 32px 0 0;
	}
	
	.product_detail .col_image_content {
		width:256px;
	}
	
	.product_detail .col_image.fixed .col_image_content {
		position:fixed;
		top:5%;
	}
	
	.product_detail .col_image.hit_bot .col_image_content {
		position:absolute;
		bottom:0;
		top:auto;
	}
	
	.product_detail .product_image {
		
	}	
	
	.product_detail .sticky_content {
		display:block;
		visibility:hidden;
		transition:visibility 1s;
	}
	
	.product_detail .col_image.sticky .sticky_content {
		visibility:visible;
		transition:visibility 0s;
	}
		
	.product_detail .col_image .sticky_name {
		opacity:0;
		transition:opacity 0.5s 0.3s;
	}
		
	.product_detail .col_image.sticky .sticky_name {
		opacity:1;
		transition:opacity 0.5s 0s;
	}
		
	.product_detail .col_image .sticky_info {
		opacity:0;
		transition:opacity 0.5s;
	}
	
	.product_detail .col_image.sticky .sticky_info {
		opacity:1;
		transition:opacity 0.5s 0.3s;
	}
			
	.product_detail .col_details {
		flex:1 1 auto;
		max-width:800px;
		padding-top:32px;
	}
	
	/* ---- shop - ingredients ---- */
	
	/* ---- shop - skin types ---- */
	
	.skin_type_feature .image {
		margin-right:32px;
	}
	
	.skin_type_feature .image img {
		max-width:160px;
		max-height:160px;
	}
	
	.skin_type_intro .intro_cols {
		flex-direction:row;
		justify-content:space-between;
	}
	
	.skin_type_intro .col {
		flex:0 0 45%;
		margin:0;
	}
	
	.quiz_page .quiz_step {
		padding:48px;
	}
	
	.quiz_page .quiz_step .col_content {
		padding-right:32px;
	}
	
	.quiz_page .quiz_step .question {
		margin-bottom:32px;
	}
	
	.quiz_page .quiz_step .option {
		padding:16px;
	}
	
	.quiz_v2 .question_heading {
		margin-bottom:32px;
	}
	
	.quiz_v2 .options_grid .grid_item {
		flex-basis:calc( 33.333% - 16px );
	}
	
	.quiz_v2 .options_rows.collection_options {
		margin-bottom:64px;
	}
	
	.quiz_v2 .question_actions {
		padding:64px 0;
	}
	
	.quiz_v2 .question_expert {
		padding:24px;
	}
	
	.quiz_v2 .question_expert .image {
		margin-right:24px;
	}
	
	.quiz_v2 .question_expert .image img {
		max-width:96px;
		max-height:96px;
	}
	
	.quiz_v2 .question_expert .text {
		font-size:1.2em;
	}
	
	.quiz_skin_type_summary .box {
		padding:64px 48px;
	}
		
	.panel_ask_expert .expert_bio {
		flex-direction:row;
		align-items:center;
		margin-bottom:48px;
	}
	
	.panel_ask_expert .expert_bio .image {
		margin-right:48px;
	}
	
	.panel_ask_expert .expert_bio .text {
		margin:0;
		padding:0;
		border:none;
	}
	
	.quiz_intro .intro_blocks {
		flex-direction:row;
		flex-wrap:wrap;
		margin:32px -32px;
	}
	
	.quiz_intro .intro_blocks .block {
		margin:32px;
		flex-basis:calc( 50% - 64px );
	}
	
	.quiz_intro .intro_blocks .block .image {
		flex:0 0 96px;
	}
	
	.results_skin_type {
		margin-bottom:64px;
	}
	
	.results_skin_type .skin_type_info .info_cols {
		flex-direction:row;
		margin:0 -16px;
	}
	
	.results_skin_type .skin_type_info .info_cols .col {
		flex:50%;
		margin:0 16px;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine {
		padding:32px;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_intro {
		margin-bottom:24px;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_products .item {
		margin-right:16px;
	}
	
	.results_skin_type .skin_type_routines .routine_list .routine .routine_products .item img {
		max-width:64px;
		max-height:96px;
	}
	
	.results_skin_concerns {
		margin-top:64px;
	}
	
	.results_skin_concerns .concerns_list .concern {
		margin-bottom:48px;
	}
	
	/* ---- shop - treatments ---- */
	
	/* ---- shop - cart / checkout ---- */
	
	.cart_form {
		margin-bottom:48px;
	}
	
	.cart_voucher_info {
		padding:48px 0;
	}
	
	.email_exists_cols {
		display:flex;
		align-items:flex-start;
		margin:32px -16px 0 -16px;
		width:100%;
	}
	
	.email_exists_cols .col {
		margin:0 16px;
		width:100%;
	}
	
	.checkout_coupon {
		padding:48px 0;
	}
	
	.checkout_row {
		padding-bottom:48px;
		margin-bottom:48px;
	}
	
	.checkout_coupon .coupon_cols {
		flex-direction:row;
		align-items:flex-end;
	}
	
	.checkout_coupon .col_form {
		margin:0 32px 0 0;
	}
	
	.checkout_coupon .col_details {
		
	}
	
	.checkout_coupon .col_details .discount {
		
	}
	
	.checkout_addresses .address_group {
		padding:48px 0;
	}
	
	.checkout_gateway_select {
		
	}
	
	.checkout_summary {
		
	}
	
	.checkout_payment .payment_form_fields {
		margin-bottom:48px;
	}
	
	.checkout_payment {
		
	}
	
	.form .column.row_checkout_create_account {
		padding-bottom:48px;
		margin-bottom:48px;
	}
	
	.checkout_proceed {
		
	}
	
	.checkout_account_exists {
		padding:32px;
		margin-bottom:48px;
	}
	
	.afterpay_available {
		padding:24px;
		margin:0 0 48px 0;
	}
	
	.free_gift_banner {
		padding:32px;
		margin-bottom:48px;
	}
	
	.free_gift_banner .col_image {
		margin-right:24px;
	}
	
	.free_gift_banner .col_image .img {
		max-width:64px;
		max-height:64px;
	}
	
	.free_gift_banner .col_text .headline {
		font-size:1.2em;
	}
	
	.free_gift_banner .col_text .subline {
		font-size:1em;
	}
	
	.free_gift_banner .col_text .action {
		font-size:1em;
	}
	
	.free_gift_select_banner {
		padding:32px;
		margin-bottom:48px;
	}
	
	.free_gift_select_banner .headline {
		font-size:1.2em;
	}
	
	.free_gift_select_banner .subline {
		font-size:1em;
	}
	
	/* ---- shop - account ---- */
	
	.header_with_user {
		flex-direction:row;
		justify-content:space-between;
		align-items:center;
		margin-bottom:48px;
	}
	
	.header_with_user .left {
		margin:0 32px 0 0;
	}
	
	.header_with_user .right {
		margin:0 0 0 32px;
	}
	
	.account_update_form {
		padding:24px 32px;
	}
	
	/* ---- shop - vouchers ---- */
	
	.voucher_page h1 {
		text-align:center;
	}
	
	.voucher_page .voucher_question {
		text-align:center;
		margin-bottom:64px;
	}
	
	.voucher_page .voucher_options {
		flex-direction:row;
		margin:-16px;
	}
	
	.voucher_page .voucher_options .option {
		flex:1 1 33.333%;
		margin:16px;
	}
	
	/* ---- landing pages ---- */
	
	#landing_vip_signup {
		
	}
	
	#landing_vip_signup .cols {
		flex-direction:row;
		justify-content:space-between;
	}
	
	#landing_vip_signup .col_image {
		position:relative;
		z-index:10;
		padding:0;
		flex:0 0 35%;
	}
	
	#landing_vip_signup .col_image img {
		position:absolute;
		bottom:0;
		width:auto;
		height:90%;
	}
	
	#landing_vip_signup .col_text {
		position:relative;
		z-index:20;
		padding:64px 0;
	}
	
	#landing_vip_signup .box {
		padding:48px;
	}
	
	#landing_vip_signup .headline {
		margin-bottom:16px;
	}
	
	#landing_vip_signup .checklist li {
		margin:12px 0;
	}
	
	#landing_vip_signup .form {
		margin:16px 0 0 0;
	}
	
	#landing_vip_signup .form .inputs input[type='email'] {
		height:48px;
	}
	
	#landing_vip_signup .form .inputs input[type='submit'] {
		height:48px;
	}
					
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1024px) {
	
	/* ---- overall - general ---- */
		
	/* ---- overall - text ---- */
		
	/* ---- overall - buttons ---- */
	
	/* ---- overall - forms ---- */
	
	/* ---- header ---- */
	
	/* ---- footer ---- */
		
	/* ---- page - general ---- */
	
	/* ---- page - home ---- */
	
	#home_feature .fg {
		padding:96px 0;
	}
	
	#home_products .product_list .product {
		display:none;
	}
	
	#home_products .product_list .product:nth-child(-n+3) {
		display:flex;
	}
	
	#home_actions .boxes .box {
		padding:64px 48px;
	}
	
	#home_actions .small_items .item .circle {
		width:192px;
		height:160px;
	}
	
	#home_actions .small_items .item.item_with_icon .circle {
		height:128px;
	}
	
	/* ---- page - about ---- */
	
	.box_list_row {
		
	}
	
	.box_list_row .image {
		flex:0 0 320px;
		margin-right:64px;
	}
	
	/* ---- page - contact ---- */
	
	.panel_stores_intro {
		
	}
	
	.stockist_group .company_list {
		
	}
	
	.stockist_group .company_details {
		flex-basis:calc( 33.333% - 64px );
	}
	
	/* ---- page - about ---- */
	
	.page_experience_stores .right {
		padding:48px;
	}
	
	/* ---- page - search ---- */
	
	/* ---- shop - catalog ---- */
	
	/* ---- shop - products ---- */
	
	.product_list .product {
		flex-grow:0;
		flex-shrink:0;
		flex-basis:calc( 33.333% - 16px );
	}
	
	.product_detail .col_image {
		flex:0 0 320px;
		margin-right:48px;
	}
	
	.product_detail .product_image {
		width:320px;
		height:320px;
	}
	
	.product_detail .col_image_content {
		width:320px;
	}
	
	/* ---- shop - ingredients ---- */
	
	/* ---- shop - skin types ---- */
	
	.quiz_page .quiz_step {
		padding:64px;
	}
	
	.quiz_page .quiz_step .col_content {
		padding-right:48px;
	}
	
	.quiz_page .quiz_step .question h2 {
		margin-bottom:16px;
	}
	
	/* ---- shop - treatments ---- */
	
	/* ---- shop - cart / checkout ---- */
	
	.cart_panel .columns {
		display:flex;
		justify-content:space-between;
	}
	
	.cart_panel .col_items {
		flex:1 1 auto;
		max-width:768px;
	}
	
	.cart_panel .col_shipping {
		flex:0 0 320px;
		margin:0 0 0 64px;
	}
	
	/* ---- shop - account ---- */
	
	.account_cols {
		flex-direction:row-reverse;
	}
	
	.account_nav {
		flex:0 0 256px;
		margin-left:64px;
	}
	
	.account_nav .nav_item {
		padding:12px;
	}
	
	.account_nav .nav_item .icon {
		flex:0 0 20px;
		margin-right:12px;
	}
	
	.account_nav .nav_item .icon img {
		max-width:20px;
		max-height:16px;
	}
	
	.account_main {
		flex:1 1 auto;
		max-width:calc( 100% - 320px );
	}
	
	/* ---- landing pages ---- */
	
	#landing_vip_signup {
		
	}
	
	#landing_vip_signup .col_image {
		flex:0 0 50%;
	}
	
	#landing_vip_signup .col_text {
		padding:96px 0;
	}
	
	#landing_vip_signup .box {
		padding:64px;
	}
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1280px) {
	
	/* ---- overall - general ---- */
	
	.panel_padding {
		padding:96px 0;
	}
	
	/* ---- overall - text ---- */
	
	h1 {
		font-size:2.2em;
	}
		
	/* ---- overall - buttons ---- */
	
	.button.large {
		font-size:1.1em;
	}
	
	.button:hover {
		background-color:#555;
	}
	
	.button.purple:hover {
		background-color:#a49ab7;
	}
	
	.button.pink:hover {
		background-color:#f2b0bb;
	}
	
	.button.green:hover {
		background-color:#b0c8b8;
	}
	
	.buttom.cream:hover {
		background-color:#f9eee5;
	}
	
	.button.grey:hover {
		background-color:#777;
	}
	
	.button.white:hover {
		background-color:#fcfcfc;
	}
	
	.button.xmas:hover {
		background-color:#daf7f5;
	}
	
	.button.transparent:hover {
		background-color:rgba(204,204,204,0.1);
	}
	
	.button.outline:hover {
		background-color:#333;
		color:#fff;
	}
	
	.button.outline.pink:hover {
		background-color:#e699a6;
	}
	
	.button.outline.xmas:hover {
		background-color:#daf7f5;
	}
	
	/* ---- overall - forms ---- */
	
	.form input[type='text'],
	.form input[type='number'],
	.form input[type='email'],
	.form input[type='tel'],
	.form input[type='password'] {
		height:48px;
	}
	
	/* ---- header ---- */
	
	#header {
		
	}
	
	#header .inner {
		display:flex;
		justify-content:space-between;
		align-items:center;
		width:90%;
		max-width:1600px;
		margin:0 auto;
		height:128px;
	}
	
	#header .header_top {
		padding:0;
		height:auto;
		margin-right:32px;
	}
	
	#header .header_top .nav_button {
		display:none;
	}
	
	#header .header_bot {
		display:flex;
		height:100%;
		border:none;
	}
	
	#header.open .header_bot {
		display:flex;
	}
	
	#header .header_bot > ul {
		display:flex;
	}
	
	#header .nav > li {
		position:relative;
		height:100%;
	}
	
	#header .nav > li > a {
		display:flex;
		align-items:center;
		height:100%;
		padding:0 16px;
		border:none;
		font-weight:400;
	}
	
	#header .nav > li.has_dropdown > a:after {
		position:relative;
		display:inline-block;
		top:0;
		right:0;
		margin-left:12px;
		content:'›';
		transform:rotate(90deg);
	}
	
	#header .nav > li:hover > a:before {
		position:absolute;
		display:block;
		content:'';
		right:0;
		bottom:0;
		left:0;
		height:4px;
		background-color:#e699a6;
		background-color:#e4ebe7;
		background-color:#eee;
	}
	
	#header .nav > li.has_dropdown.open > a:after {
		transform:rotate(90deg);
	}
	
	#header .nav > li.has_dropdown.open > a:after {
		content:'›';
	}
	
	#header .nav > li.has_dropdown > ul.dropdown {
		display:none;
		position:absolute;
		background-color:#fff;
		border:1px solid #ddd;
		z-index:900;
	}
	
	#header .nav > li.has_dropdown.open .dropdown {
		background-color:#fff;
	}
	
	#header .nav > li.has_dropdown.open > ul.dropdown {
		display:none;
	}
	
	#header .nav > li.has_dropdown:hover > ul.dropdown {
		display:block;
	}
	
	#header .nav > li:hover > a {
		color:#e699a6;
		color:#9ab7a4;
		color:#999;
	}
	
	#header .nav > li:hover > a:after {
		color:#e699a6;
		color:#9ab7a4;
		color:#999;
	}
		
	#header .dropdown.dropdown_shop .dropdown_section {
		padding:8px 0 16px 0;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section:last-child {
		border:none;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .image {
		padding:12px 0 0 24px;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .image img {
		max-width:24px;
		max-height:24px;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .text .main_item {
		padding:16px 64px 12px 16px;
	}
	
	#header .dropdown.dropdown_shop .dropdown_section .text ul li a {
		padding:8px 64px 8px 16px;
	}
	
	#header .dropdown a:hover {
		color:#db8388;
		color:#9ab7a4;
		color:#999;
	}
	
	#header .dropdown.dropdown_about li a {
		padding:16px 64px 16px 32px;
	}
	
	#header .utilities {
		position:relative;
		padding:0;
		margin:0 0 0 32px;
	}
	
	#header .utilities:before {
		position:absolute;
		display:block;
		content:'';
		top:50%;
		left:0;
		transform:translateY(-50%);
		height:32px;
		width:1px;
		background-color:#ddd;
	}
	
	#header .utilities li {
		display:flex;
		align-items:center;
		margin:0 0 0 32px;
	}
	
	#header .utilities li a {
		flex-direction:row-reverse;
	}
	
	#header .utilities li a img {
		margin:0 0 0 12px;
	}
	
	#header .utilities li a:hover img {
		transform:scale(1.1);
	}
	
	#header .utilities li a:active img {
		transform:scale(1);
	}
	
	#header .utilities li.afterpay a img.small {
		display:inline;
	}
	
	#header .utilities li.afterpay a img.large {
		display:none;
	}
	
	#header .utilities li.afterpay a:hover img {
		transform:scale(1.01);
	}
	
	/* ---- footer ---- */
	
	#footer_signup .left h4 {
		font-size:1.4em;
	}
		
	#footer_signup form input[type='email'] {
		height:48px;
	}
	
	#footer_signup form input[type='submit'] {
		height:48px;
	}
	
	#footer a:hover {
		text-decoration:underline;
	}
	
	/* ---- page - general ---- */
	
	.page_feature .panel_padding {
		padding:128px 0;
	}
	
	h2.section_heading a:hover {
		text-decoration:underline;
	}
	
	.breadcrumb {
		margin-bottom:64px;
	}
	
	.breadcrumb a:hover {
		text-decoration:underline;
		color:#999;
	}
		
	.custom_dropdown .element .top:hover {
		background-color:#f5f5f5;
	}
	
	.custom_dropdown .element .options .option {
		
	}
	
	.custom_dropdown .element .options .option:hover {
		background-color:#f5f5f5;
	}
	
	/* ---- page - home ---- */
	
	#home_feature .bg .splash {
		
	}
	
	@supports ( object-fit:contain ) {
				
		#home_feature .bg video {
			display:block;
			position:absolute;
			top:0;
			bottom:0;
			left:53%;
			width:50%;
			max-width:640px;
			opacity:1;
			object-fit:contain;
			width:100%;
			height:100%;
			/*filter:grayscale(100%);*/
			mix-blend-mode:multiply;
		}
		
	}
		
	#home_feature .fg {
		padding:128px 0;
	}
	
	#home_feature .fg .text .action {
		height:72px;
	}
		
	#home_feature .fg .text .signature {
		width:256px;
	}
	
	#home_feature .fg .image img {
		max-width:320px;
		max-height:320px;
	}
		
	.promo_banner .background:hover:after {
		opacity:1;
		
	}
	
	.promo_banner .text .headline a:hover {
		text-decoration:underline;
	}
	
	.promo_banner .image img {
		max-width:256px;
		max-height:256px;
	}
	
	#home_actions .panel_padding {
		padding:128px 0;
	}
	
	#home_actions .boxes {
		margin:-16px;
	}
	
	#home_actions .boxes .box {
		margin:16px;
		padding:96px 96px;
	}
	
	#home_actions .boxes .box .image {
		position:relative;
		
	}
	
	#home_actions .boxes .box .image:after {
		position:absolute;
		display:block;
		content:'';
		width:192px;
		height:16px;
		background-color:rgba(0,0,0,0.1);
		border-radius:50%;
		filter:blur(8px);
		left:50%;
		top:100%;
		transform:translate(-50%,-50%);
	}
			
	#home_actions .boxes .box .image img {
		max-width:160px;
		max-height:160px;
		margin-top:-45%;
		transition:transform 0.3s;
	}
	
	#home_actions .boxes .box .button {
		margin-top:8px;
	}
	
	#home_actions .boxes .box:hover {
		box-shadow:1px 1px 8px rgba(0,0,0,0.1);
	}
	
	#home_actions .boxes .box:hover .image img {
		transform:translateY(-8px);
		transition:transform 0.1s;
	}
	
	#home_actions .boxes .box:hover .button {
		background-color:#333;
		color:#fff;
	}
	
	#home_actions .small_items {
		margin-top:96px;
	}
		
	#home_actions .small_items .item .image {
		position:relative;
		margin-bottom:24px;
	}
	
	#home_actions .small_items .item .image:after {
		position:absolute;
		display:block;
		content:'';
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#fff;
		opacity:0;
		z-index:20;
	}
	
	#home_actions .small_items .item:hover .image:after {
		opacity:0.1;
	}
	
	#home_actions .small_items .item .circle {
		position:relative;
		width:256px;
		height:192px;
		z-index:10;
	}
	
	#home_actions .small_items .item .text {
		width:256px;
	}
	
	#home_history .image {
		width:768px;
	}
	
	#home_history .text {
		padding:160px 0;
	}
	
	#home_history .text h4 {
		margin-bottom:32px;
	}
			
	/* ---- page - about ---- */
	
	/* ---- page - contact ---- */
	
	.company_details ul li a.item:hover {
		text-decoration:underline;
	}
	
	#contact_page .panel_stores .company_list {
		
	}
	
	#contact_page .panel_stores .company_list .company_details {
		flex:0 0 calc( 33.333% - 48px );
	}
	
	.panel_stores_intro {
		
	}
	
	.panel_stores_intro .text {
		padding:64px 0;
	}
		
	/* ---- page - about ---- */
	
	.page_experience_stores {
		padding:96px 0;
	}
	
	.page_experience_stores .left {
		flex:0 0 50%;
	}
	
	.page_experience_stores .right {
		padding:64px;
	}
	
	/* ---- page - search ---- */
	
	/* ---- shop - catalog ---- */
	
	.catalog_subnav {
		display:none;
	}
	
	.catalog_description {
		margin-bottom:64px;
		font-size:1.1em;
		line-height:130%;
		padding-left:32px;
	}
	
	.catalog_description:before {
		
	}
	
	.catalog_description .short {
		display:none;
	}
	
	.catalog_description .long {
		display:block;
	}
	
	/* ---- shop - products ---- */
	
	.form_add_to_cart .compact_button:hover {
		background-color:rgba(154,183,164,0.25)
	}
	
	a[href*='book.gettimely.com']:hover {
		background-color:#b0c8b8!important;
	}
	
	.product_list_group {
		margin:0 0 64px 0;
	}
	
	.product_list .product .image .thumbnail {
		transition:transform 0.1s;
	}
	
	.product_list .product .image:hover .thumbnail {
		transform:scale(1.05);
	}
	
	.product_list .product .image .icons {
		transition:opacity 0.1s;
		opacity:0.5;
	}
	
	.product_list .product .image:hover .icons {
		opacity:1;
	}
	
	.product_list .product .product_name a:hover {
		text-decoration:underline;
	}
	
	.product_list_compact .product_compact .image {
		flex:0 0 128px;
	}
	
	.product_list_compact .product_compact .image img {
		max-width:64px;
		max-height:64px;
		transition:transform 0.1s;
	}
	
	.product_list_compact .product_compact .image:hover img {
		transform:scale(1.05);
	}
	
	.product_list_compact .product_compact .text {
		padding:40px;
	}
	
	.product_list_compact .product_compact .product_name a:hover {
		text-decoration:underline;
	}
	
	.product_list_compact .product_compact .action {
		margin-left:16px;
	}
	
	.product_detail .col_image {
		flex:0 0 384px;
		margin-right:64px;
	}
	
	.product_detail .col_image_content {
		width:384px;
	}
	
	.product_detail .product_image {
		width:384px;
		height:384px;
	}
	
	.product_detail .product_headline {
		margin-bottom:48px;
		font-size:2.4em;
	}
	
	.product_detail .product_price {
		margin-bottom:32px;
	}
	
	.product_detail .product_skin_types {
		margin-bottom:32px;
	}
	
	.product_detail .product_skin_types .item {
		font-size:0.9em;
	}
	
	.product_detail .product_skin_types .item:hover {
		color:#444;
		border-color:#666;
	}
	
	.product_detail .product_intro {
		font-size:1.1em;
	}
	
	.product_detail .product_add_to_cart {
		margin-top:48px;
	}
	
	.product_detail .product_subnav {
		margin-top:64px;
	}
	
	.product_detail .product_subnav .item {
		padding:12px;
		margin-right:12px;
	}
	
	.product_detail .product_subnav .item:hover {
		background-color:#fcfcfc;
	}
	
	.product_detail .product_section {
		padding:64px 0;
	}
	
	.product_detail .product_tips .tip_list li {
		padding:24px;
	}
	
	.instruction_list li .thumbnail img {
		max-width:128px;
		max-height:128px;
	}
	
	.voucher_add_to_cart .inputs input[type='submit']:hover {
		background-color:#b0c8b8;
	}
	
	/* ---- shop - ingredients ---- */
	
	.ingredient_icons {
		margin:-12px;
	}
	
	.ingredient_icons .item {
		margin:12px;
	}
	
	.ingredient_icons .item img {
		transition:transform 0.1s;
	}
	
	.ingredient_icons .item:hover img {
		transform:translateY(-4px);
	}
		
	.ingredient_icons .item .hover_info {
		position:absolute;
		bottom:115%;
		width:160px;
		background-color:rgba(255,255,255,1);
		box-shadow:1px 1px 4px rgba(0,0,0,0.1);
		border:1px solid #ddd;
		line-height:100%;
		padding:8px;
		opacity:0;
		visibility:hidden;
		border-radius:4px;
		transition:opacity 0.1s, visibility 0s 0.1s;
	}
	
	.ingredient_icons .item:hover .hover_info {
		visibility:visible;
		opacity:1;
		transition:opacity 0.1s, visibility 0s;
	}
	
	.ingredient_icons .show_all {
		margin-left:16px;
	}
	
	.ingredient_icons .show_all:hover {
		text-decoration:underline;
	}
	
	/* ---- shop - skin types ---- */
	
	.skin_type_feature .image {
		margin-right:48px;
	}
	
	.skin_type_intro .col h3 .icon {
		margin-right:12px;
	}
	
	.quiz_page .quiz_step .option:hover {
		border-color:#666;
	}
	
	.quiz_v2 .question_heading {
		margin-bottom:48px;
	}
	
	.quiz_v2 .question_heading h2 {
		font-size:2em;
	}
	
	.quiz_v2 .question_heading h2 .number {
		width:32px;
		height:32px;
		margin-right:16px;
	}
	
	.quiz_v2 .options_grid .grid_item {
		flex-basis:calc( 25% - 16px );
		padding:32px 24px;
	}
		
	.quiz_v2 .options_grid .grid_item:not(.selected):hover {
		border-color:#ccc;
	}
	
	.quiz_skin_type_summary .heading .icon img {
		width:64px;
	}
	
	.quiz_skin_type_summary .heading .name .change:hover {
		text-decoration:underline;
		color:#666;
	}
				
	.panel_ask_expert .expert_bio .image img {
		width:256px;
	}
	
	.quiz_intro h2 {
		margin-bottom:48px;
	}
	
	.quiz_intro .intro_blocks .block {
		flex-direction:row;
		text-align:left;
	}
	
	.quiz_intro .intro_blocks .block .image {
		margin:0 32px 0 0;
	}
	
	.quiz_intro .intro_action {
		margin-top:48px;
		padding:48px;
	}
	
	.quiz_intro .intro_action h3 {
		font-size:1.6em;
		margin-bottom:32px;
	}
	
	/* ---- shop - treatments ---- */
	
	/* ---- shop - cart / checkout ---- */
	
	.cart_form {
		margin-bottom:64px;
	}
	
	.cart_voucher_info {
		padding:64px 0;
	}
	
	.checkout_nav .item:hover {
		text-decoration:underline;
	}
	
	.checkout_nav .item.disabled:hover {
		text-decoration:none;
	}
	
	.cart_proceed {
		margin-top:64px;
	}
	
	.current_user .link:hover {
		text-decoration:underline;
	}
	
	.current_user a.email:hover {
		text-decoration:underline;
	}
	
	.checkout_coupon form.code_input input[type='text'] {
		height:48px;
	}
	
	.checkout_coupon form.code_input input[type='submit'] {
		height:48px;
	}
	
	.checkout_coupon {
		padding:64px 0;
	}
	
	.checkout_row {
		padding-bottom:64px;
		margin-bottom:64px;
	}
	
	.checkout_coupon form.discount input[type='submit']:hover {
		color:#444;
	}
	
	.checkout_addresses .address_group {
		padding:64px 0;
	}
	
	.checkout_gateway_select {
		
	}
		
	.checkout_payment .payment_form_fields {
		margin-bottom:64px;
	}
	
	.checkout_payment {
		
	}
	
	.form .column.row_checkout_create_account {
		padding-bottom:64px;
		margin-bottom:64px;
	}
	
	.checkout_proceed {
		
	}
	
	.checkout_account_exists {
		margin-bottom:64px;
	}
	
	.afterpay_available {
		padding:32px;
	}
	
	.free_gift_banner {
		margin-bottom:64px;
	}
	
	.free_gift_banner .col_image .img {
		max-width:96px;
		max-height:96px;
	}
	
	.free_gift_banner .col_image {
		margin-right:32px;
	}
	
	.free_gift_banner .col_text .headline {
		font-size:1.4em;
		margin-bottom:12px;
	}
	
	.free_gift_banner .col_text .subline .product_name {
		text-decoration:none;
	}
	
	.free_gift_banner .col_text .subline .product_name:hover {
		text-decoration:underline;
	}
	
	.free_gift_banner .col_text .action {
		margin-top:12px;
	}
	
	.free_gift_banner .col_text .action .link {
		text-decoration:none;
	}
	
	.free_gift_banner .col_text .action .link:hover {
		text-decoration:underline;
	}
	
	.free_gift_select_banner {
		margin-bottom:64px;
	}
	
	.free_gift_select_banner .headline {
		font-size:1.4em;
		margin-bottom:12px;
	}
	
	.free_gift_select_banner .gift_select {
		margin-top:16px;
	}
	
	.free_gift_select_banner .gift_select li a {
		padding:16px;
	}
	
	.free_gift_select_banner .gift_select li a .icon {
		
	}
	
	.free_gift_select_banner .gift_select li a .thumbnail {
		flex:0 0 32px;
		margin-right:12px;
	}
	
	.free_gift_select_banner .gift_select li a .thumbnail img {
		max-width:32px;
		max-height:32px;
	}
	
	/* ---- shop - account ---- */
	
	.account_nav .nav_item:hover {
		border-color:#666;
	}
	
	/* ---- shop - vouchers ---- */
		
	.voucher_page .voucher_options .option .text {
		padding:32px;
	}
	
	.voucher_page .voucher_options .option .text h2 {
		margin-bottom:16px;
	}
	
	.voucher_page .voucher_options .option .text p {
		margin:12px 0;
	}
	
	.voucher_page .voucher_options .option .text .action {
		margin-top:16px;
	}
	
	/* ---- landing pages ---- */
	
	#landing_vip_signup {
		
	}
	
	#landing_vip_signup .col_image {
		
	}
	
	#landing_vip_signup .col_text {
		padding:128px 0;
	}
	
	#landing_vip_signup .box {
		padding:96px;
	}
	
	#landing_vip_signup .headline {
		font-size:2.4em;
		margin-bottom:32px;
	}
	
	#landing_vip_signup .checklist li {
		font-size:1.2em;
	}
	
	#landing_vip_signup .checklist li .icon {
		flex:0 0 24px;
		margin-right:12px;
	}
	
	#landing_vip_signup .checklist li .icon img {
		max-width:24px;
		max-height:24px;
	}
	
	#landing_vip_signup .form {
		margin-top:32px;
	}
	
	#landing_vip_signup .form .inputs input[type='email'] {
		height:64px;
	}
	
	#landing_vip_signup .form .inputs input[type='submit'] {
		height:64px;
		font-size:1.2em;
	}
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1366px) {
	
	/* ---- overall - general ---- */
		
	.panel_padding {
		padding:96px 0;
	}
	
	/* ---- overall - text ---- */
		
	/* ---- overall - buttons ---- */
	
	/* ---- overall - forms ---- */
	
	/* ---- header ---- */
	
	/* ---- footer ---- */
	
	/* ---- page - general ---- */
	
	/* ---- page - home ---- */
	
	/* ---- page - about ---- */
	
	/* ---- page - contact ---- */
	
	/* ---- page - about ---- */
	
	/* ---- page - search ---- */
	
	/* ---- shop - catalog ---- */
	
	/* ---- shop - products ---- */
	
	.product_list_group {
		margin:0 0 96px 0;
	}
	
	/* ---- shop - ingredients ---- */
	
	/* ---- shop - skin types ---- */
	
	/* ---- shop - treatments ---- */
	
	/* ---- shop - cart / checkout ---- */
	
	/* ---- shop - account ---- */
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1600px) {
	
	/* ---- overall - general ---- */
	
	body {
		font-size:18px;
	}
	
	.panel_padding {
		padding:128px 0;
	}
	
	/* ---- overall - text ---- */
	
	h1 {
		font-size:2.4em;
	}
	
	/* ---- overall - buttons ---- */
	
	/* ---- overall - forms ---- */
	
	/* ---- header ---- */
	
	#header .inner {
		height:160px;
	}
	
	#header .header_top .logo img {
		width:256px;
	}
	
	#header .nav > li > a {
		padding:0 24px;
	}
	
	#header .utilities {
		padding:0 0 0 24px;
	}
	
	#header .utilities li.afterpay a img.small {
		display:none;
	}
	
	#header .utilities li.afterpay a img.large {
		display:inline;
	}
	
	/* ---- footer ---- */
	
	#footer_signup .left p {
		font-size:1.1em;
	}
	
	#footer .footer_bot {
		font-size:0.8em;
	}
	
	/* ---- page - general ---- */
	
	/* ---- page - home ---- */
	
	#home_feature .fg {
		padding:160px 0;
	}
	
	#home_feature .fg .text h1 {
		margin-bottom:24px;
	}
	
	#home_feature .fg .text .subline {
		font-size:1.2em;
	}
	
	#home_feature .fg .text .action {
		height:96px;
	}
	
	#home_feature .fg .text .signature {
		width:320px;
	}
	
	#home_feature .fg .image img {
		max-width:360px;
		max-height:360px;
	}
	
	#home_products .product_list .product {
		display:flex;
	}
	
	#home_actions .small_items .item .image {
		margin-bottom:32px;
	}
	
	.promo_banner .image img {
		max-width:420px;
		max-height:384px;
	}
	
	#home_actions .panel_padding {
		padding:192px 0;
	}
			
	#home_actions .boxes .box {
		padding:96px 64px;
	}
	
	#home_actions .boxes .box .image {
		margin-bottom:32px;
	}
	
	#home_actions .boxes .box .image img {
		max-width:256px;
		max-height:256px;
		margin-top:-45%;
	}
	
	#home_actions .small_items {
		margin-top:128px;
	}
	
	#home_actions .small_items .item .circle {
		width:320px;
		height:220px;
	}
	
	#home_actions .small_items .item.item_with_icon .circle {
		height:160px;
	}
	
	#home_actions .small_items .item .text {
		width:320px;
	}
	
	#home_actions .small_items .item h3 {
		margin-bottom:12px;
	}
	
	#home_actions .small_items .item p {
		margin-top:12px;
	}
	
	#home_history .text {
		padding:192px 0;
	}
	
	/* ---- page - about ---- */
	
	.page_experience_stores {
		padding:128px 0;
	}
	
	.page_experience_stores .right {
		padding:96px;
	}
	
	/* ---- page - contact ---- */
	
	/* ---- page - about ---- */
	
	/* ---- page - search ---- */
	
	/* ---- shop - catalog ---- */
	
	/* ---- shop - products ---- */
	
	.product_list .product {
		flex-grow:0;
		flex-shrink:0;
		flex-basis:calc( 25% - 16px );
	}
	
	.product_detail {
		
	}
	
	.product_detail .col_image {
		flex:0 0 420px;
		margin-right:96px;
	}
	
	.product_detail .col_image_content {
		width:420px;
	}
	
	.product_detail .product_image {
		width:420px;
		height:420px;
	}
	
	.product_detail .product_section {
		padding:96px 0;
	}
		
	/* ---- shop - ingredients ---- */
	
	/* ---- shop - skin types ---- */
	
	.quiz_v2 .question_heading h2 {
		font-size:2.2em;
	}
		
	.quiz_v2 .options_grid .grid_item {
		padding:48px 32px;
	}
	
	.quiz_intro h2 {
		margin-bottom:64px;
	}
	
	.quiz_intro .intro_blocks .block .image {
		margin-right:48px;
	}
	
	.quiz_intro .intro_action {
		margin-top:64px;
	}
	
	.results_skin_type .skin_type_info .info_cols .col p {
		font-size:0.9em;
	}
	
	.results_skin_concerns .concerns_list .concern .concern_intro p {
		font-size:0.9em;
	}
	
	/* ---- shop - treatments ---- */
	
	/* ---- shop - cart / checkout ---- */
	
	.cart_proceed {
		margin-top:96px;
	}
	
	/* ---- shop - account ---- */
	
	/* ---- landing pages ---- */
	
	#landing_vip_signup {
		
	}
	
	#landing_vip_signup .col_text {
		padding:192px 0;
	}
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1920px) {
	
	/* ---- overall - general ---- */
		
	/* ---- overall - text ---- */
		
	/* ---- overall - buttons ---- */
	
	/* ---- overall - forms ---- */
	
	/* ---- header ---- */
	
	/* ---- footer ---- */
	
	/* ---- page - general ---- */
	
	/* ---- page - home ---- */
	
	/* ---- page - about ---- */
	
	/* ---- page - contact ---- */
	
	/* ---- page - about ---- */
	
	/* ---- page - search ---- */
	
	/* ---- shop - catalog ---- */
	
	/* ---- shop - products ---- */
	
	/* ---- shop - ingredients ---- */
	
	/* ---- shop - skin types ---- */
	
	/* ---- shop - treatments ---- */
	
	/* ---- shop - cart / checkout ---- */
	
	/* ---- shop - account ---- */
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (max-width: 768px) {
	
	/* ---- shop - cart / checkout ---- */
	
	/* ---- shop - account ---- */
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@keyframes slowzoom {
	
	0% {
		transform:scale(1);
	}
	
	100% {
		transform:scale(1.1);
	}
	
}

@keyframes loading_overlay {
	
	0% {
		left:0;
		width:0;
	}
	
	50% {
		left:0;
		width:100%;
	}
	
	100% {
		left:100%;
		width:0;
	}
	
}