body {
    font-family: "Source Sans Pro";
    background: #fff;
    font-size: 18px;
    touch-action: pan-x pan-y;
    margin: 0;
    overscroll-behavior-y: none;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

[hidden] { display: none !important; }

a {
    color: #000;
    text-decoration: none;
}

a.action_link {
	background: #ffcaec;
	color: #444;
	font-weight: bold;
	padding: 5px 10px;
	display: inline-block;
	margin-top: 5px;
	box-shadow: 0px 4px 5px 1px #0006;
}

.menu a {
    padding: 0px 5px;
}

input, textarea {
    -webkit-appearance: none;
    border-radius: 0;
}

input[type="checkbox"] {
    -webkit-appearance: checkbox;
    border-radius: 0;
}

#container {
    margin: 0 auto;
    padding-top: 139px;
    width: 100%;
    box-sizing: border-box;
    background: #222;
}

#main_header {
    display: table;
    width: 100%;
    position: fixed;
    z-index: 10;
    background: #fff;
    box-shadow: 0px 5px 10px #000a;
}

.header_row {
	display: table-row;
}

.header_content {
    display: table-cell;
    font-size: 20px;
    vertical-align: bottom;
}

.header_content>div.inline {
    vertical-align: middle;
    box-sizing: border-box;
}

.header_content.left_side {
    width: 0px;
}

.quick_icons {
	float: right;
	height: 0px;
	position: relative;
	top: -50px;
}

.qi img {
    height: 80px;
    padding: 5px 15px;
    box-sizing: border-box;
}

span#iic_num {
    position: absolute;
    margin-top: 38px;
    margin-left: 40px;
    font-size: 16px;
    color: #000;
    width: 24px;
    text-align: center;
}

.header_title {
	font-size: 24px;
	font-weight: 600;
	text-transform: uppercase;
	margin-bottom: 5px;
}

.highlighted_title {
    font-size: 20px;
    font-weight: 600;
    text-transform: uppercase;
    border: 2px solid #333;
    padding: 5px 15px !important;
    color: #333 !important;
}

.inverse_highlighted_title {
    font-size: 20px;
    font-weight: 600;
    text-transform: uppercase;
    padding: 5px 15px !important;
    color: #fff !important;
    background: #333;
}

.help_text {
	font-size: 11px !important;
	color: #999 !important;
	text-transform: uppercase;
}

.zero_width_fool {
	width: 0px;
}

.header_content.right_side {
    text-align: center;
}

#page_title {
    text-align: center;
    font-family: 'Source Sans Pro';
    text-transform: uppercase;
    color: #000;
    font-size: 24px;
}

#page_title_ib {
	display: inline-block;
    background: #fff;
    color: #000;
	padding: 5px 15px;
}

#page_subtitle {
    font-size: 14px;
    color: #fff;
    margin-top: 5px;
}


.page_subheading {
    font-size: 16px;
    color: #333;
    margin-top: 5px;
    font-weight: 600;
    text-transform: uppercase;
}

.form_field_cont label {
	font-size: 16px;
    color: #333;
    font-weight: 600;
    text-transform: uppercase;
}

.form_field_cont .small_label {
    font-size: 12px;
    color: #444;
    font-weight: 600;
    text-transform: uppercase;
}

.half_block {
    display: inline-block;
    width: 50% !important;
}

#page_content {
    padding: 20px 0px;
    padding-bottom: 50px;
    box-sizing: border-box;
}

.text_heading {
    background: #FF99CC;
    color: #fff;
    padding: 10px 25px;
    font-size: 26px;
    font-weight: 900;
    transform: scaleX(1.01) rotate(-2deg);
    box-shadow: 1px 5px 5px 0px #00000069;
}

.text_block {
    max-width: 600px;
    display: inline-block;
    font-size: 20px;
    padding: 10px;
    box-sizing: border-box;
    font-weight: 700;
    border: 3px solid #000;
    margin: 20px;
    background: #fff;
}

img.logo {
    height: 35px;
    margin-top: 2px;
}

.header_link_icon {
    margin-right: 10px;
}

.header_link_icon img {
    height: 28px;
}

#header {
    
    padding-top: 20px;
    box-sizing: border-box;
    
}
.inline {
    display: inline-block;
}
.left {
    text-align: left !important;
}
.center {
    text-align: center !important;
}
.right {
    text-align: right !important;
}
.f_left {
    float: left;
}
.f_right {
    float: right;
}
.title {
    font-size: 72px;
}

#small_header.title {
    font-size: 36px;
}

.star_image {
    height: 100px;
    padding: 15px;
    box-sizing: border-box;
}


.menu {
	font-size: 20px;
	padding-bottom: 14px;
	text-align: center;
	background: #fff;
	width: 100%;
}

.lbs_img {
    height: 10px;
    vertical-align: top;
    margin-top: 8px;
}

.loading_spinner {
    background-image: url(/static/images/ss_star.png);
    height: 50px;
    animation: breathe 2s linear infinite;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

@keyframes breathe {
  0% { transform: scale(1); }
  50% { transform: scale(1.25); }
  100% { transform: scale(1); }
}

.sm_icon {
    height: 22px;
}

#small_header .star_image {
    height: 50px;
}

.star_period {
    height: 10px;
    position: relative;
    top: 1px;
}

.buffer {
    padding: 20px;
    box-sizing: border-box;
}

#sample_selector {
    padding: 10px;
    box-sizing: border-box;
}

.subheading {
    font-size: 12px;
    color: #666;
    font-weight: 700;
}

.sample_sticky {
    position: sticky;
    top: 78px;
    color: #FF99CC;
    padding: 12px;
    background: #000;
    margin-top: 10px;
    z-index: 20;
}

.sample_choice_cont {
    padding: 10px;
    display: inline-block;
    max-width: 25%;
    box-sizing: border-box;
    min-width: 195px;
}

.sample_choice {
    border: 1px solid #FF99CCaa;
    padding: 20px 10px;
    white-space: initial;
    box-sizing: border-box;
    font-size: 18px;
    border-radius: 5px;
    box-shadow: 0px 2px 6px 0px #ff99ccaa;
}

.selected>.sample_choice {
    background: #FF99CC;
    color: #fff;
    
}

.sample_title {
    font-weight: 700;
}

.dividing_line {
    height: 4px;
    background: #000;
    width: 500px;
    max-width: 90%;
    display: inline-block;
    margin: 10px 0px;
}

.bottom_uni_info {
	background: #fff;
    width: 100%;
    margin: 0 auto;
    font-size: 14px;
    font-family: 'Source Sans Pro';
    margin-bottom: 60px;
}

.bottom_uni_info .inline {
    vertical-align: top;
}

.bottom_uni_info .section_label {
    font-weight: bold;
    padding: 5px 0px;
    white-space: nowrap;
}

.bui_box .link_holder {
    padding: 2px;
}

.bui_box {
    box-sizing: border-box;
    width: 32%;
    white-space: nowrap;
}

.payment_icon {
	
	height: 20px;
	padding: 5px;
	
}

#footer {
    position: fixed;
    bottom: 0px;
    margin: 0 auto;
    white-space: nowrap;
    overflow: hidden;
    left: 0px;
    width: 100%;
    z-index: 100;
    pointer-events: none;
}

.crystal_image {
    height: 90px;
    position: relative;
    top: 15px;
    transition: 1.5s linear;
    margin: 0px -5px;
}

.blue_button {
    background: #b7c3f7 !important;
}

.black_button {
    background: #000 !important;
    color: #fff !important;
}

#wax_mold_art_selection, #crystal_chips_selection {
	opacity: 0;
	pointer-events: none;
	transition: .5s opacity linear;
}

input#wax_mold_art:checked + label + #wax_mold_art_selection,
input#crystal_chips:checked + label + #crystal_chips_selection {
    opacity: 1;
    pointer-events: initial;
}

.shop_item_buffer {
    box-sizing: border-box;
    padding: 20px;
    display: inline-block;
    max-width: 25%;
    vertical-align: top;
    min-width: 360px;
}

.shop_item {
    font-size: 16px;
    box-sizing: border-box;
    background: #fff;
    padding: 5px;
    text-transform: uppercase;
	box-shadow: 0px 5px 10px 0px #000;
}

.shop_item .image_holder img {
    width: 60%;
}

.preview_item_buffer .text_holder, .preview_item_buffer .image_holder {
    vertical-align: top;
}

.shop_item .text_holder, .preview_item .text_holder {
    padding: 10px;
    box-sizing: border-box;
}

.shop_item .title_bar {
    margin-bottom: 5px;
}

.shop_item .sub_title_bar, .preview_item .sub_title_bar {
    font-size: 16px;
    color: #999;
    padding: 0px 10px;
}

.shop_item .description {
    font-family: "Source Sans Pro";
    margin-left: 5px;
    text-align: left;
    min-height: 110px;
    
}

.shop_item input[type="button"], .preview_item input[type="button"] {
    background: #fff;
    border: 0;
    padding: 7px 10px;
    font-family: 'Source Sans Pro';
    font-weight: 600;
    font-size: 18px;
    color: #333;
    border: 3px solid #333;
    margin-top: 22px;
    vertical-align: bottom;
}

.confirm_message input[type="button"] {
    background: #fff;
    border: 0;
    padding: 10px;
    font-family: 'Source Sans Pro';
    font-weight: 600;
    font-size: 18px;
    color: #333;
    border: 3px solid #333;
    margin-right: 10px;
}

.shop_item input[type="number"], .preview_item input[type="number"] {
    height: 42px;
    vertical-align: bottom;
    border: 3px solid #000;
    width: 66px;
    text-align: center;
    font-family: 'Source Sans Pro';
    font-size: 24px;
}

.shop_item input.multi_value_buttons {
    padding: 7px 14px;
}

.shop_item .remove_button_cont.inline  {
    vertical-align: bottom;
}

.shop_item .button_holder {
    min-height: 66px;
}

div#shop_filters {
    margin-top: 10px;
    text-align: right;
    position: sticky;
    top: 100px;
    background: #ffcaec;
    padding-bottom: 5px;
    box-shadow: 0px 5px 5px 1px #00000075;
    z-index: 10;
}

.filter_holder {
    padding: 5px;
    display: inline-block;
    white-space: nowrap;
}

div#shop_filters label, div#shop_filters div {
    vertical-align: bottom;
}

span.items_in_cart {
    color: #f26767;
    box-sizing: border-box;
}

.filter_button, .sort_button, .bag_button, .filter_select {
    background: #ffcaec;
    border: 0;
    padding: 5px 10px;
    font-family: 'Source Sans Pro';
    font-weight: 600;
    color: #000;
    border: 2px solid #fff;
    font-size: 14px;
}

.filter_select {
    -webkit-appearance: none;
    -webkit-border-radius: 0px;
}

.bag_button {
    background: #fff3;
}

.filter_button.selected, .sort_button.selected {
    background: #fff;
    color: #ffcaec;
}

.no_space {
    position: absolute;
}

.shop_item .title_bar .no_space, .preview_item .title_bar .no_space {
    margin-left: -35px;
}

.preview_item .title_bar .no_space {
    margin-left: -60px;
}

.shop_item .title_bar .inline:nth-of-type(2), .preview_item .title_bar .inline:nth-of-type(2) {
    margin-right: 35px;
}



.shop_item_buffer.selected_item .shop_item {
    border-color: #b7ecf7;
    border-style: double;
}

.selectable_bundle_picker {
    white-space: nowrap;
    overflow: scroll;
}

.selectable_bundle_item {
    display: inline-block;
    font-size: 10px;
    padding: 10px;
}

.selectable_bundle_item.selected {
    border: 2px solid #009688;
}

.remove_button_cont .small_label {
    font-size: 12px;
    background: #d3f7b7;
    text-align: center;
    padding: 2px;
    border-radius: 10px;
    margin-bottom: 5px;
}

.remove_button_cont .black_button {
    margin-top: 0px !important;
}


div#gallery_items {
}

.gallery_item_buffer {
    display: inline-block;
    width: 25%;
    height: 0;
    padding-bottom: 25%;
    border: 2px solid #ffcaec;
    background: #fff;
    box-sizing: border-box;
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer;
}

.gallery_item .image_holder img {
    width: 40%;
}

#label_selector {
    border: 2px solid #333;
}

#label_selector_controls {
	display: table;
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
}

#label_selector_controls>div {
	display: table-cell;
}

#label_selector_controls .arrow_control {
	width: 25px;
	text-align: center;
}
#label_selector_controls .arrow_control.left_arrow {
	transform: rotateY(180deg);
}

#top_label_image_preview {
	width: 1.5in;
	height: 1.5in;
	border: 1px solid #333;
	border-radius: .75in;
	margin: 10px auto;
}

#top_label_custom_icon {
	height: 0.6in;
    margin-top: 20px;
    margin-bottom: 5px;
}

#top_label_image_preview .disappearing_textbox {
	border: 0;
	font-size: 11px;
	text-align: center;
	width: 1.3in;
	background: transparent;
	padding: 1px;
	font-weight: bold;
}

#top_label_image_preview .disappearing_textbox.shorter {
	width: 0.9in;
}

div#front_label_image_preview {
    width: 2in;
    height: 1in;
    box-sizing: border-box;
    font-size: 10px;
    margin: 10px auto;
    border: 1px solid #333;
    display: table;
}

div#front_label_scent_name {
    font-size: 16px;
    padding: 8px 0px;
}

div#front_label_image_preview>div {
    display: table-cell;
    vertical-align: middle;
}

.order_items_cont {
    display: table;
}

.order_item {
    background: #fff;
    border: 1px solid #ffcaec;
    font-size: 18px;
    font-family: 'Source Sans Pro';
    padding: 5px;
    display: table-row;
}

.order_item>div {
    display: table-cell;
    vertical-align: middle;
}

.order_item.header_row {
    font-weight: bold;
    background: #ffcaec;
}

.order_item img {
    height: 50px;
}


.order_item_buffer>div {
    display: table-cell;
    vertical-align: middle;
}

.order_item_size, .order_item_thumb {
    width: 50px;
    padding: 5px;
    text-align: center;
}

.order_item_qty, .order_item_price {
    width: 50px;
    text-align: center;
}

.form_field_cont, .order_items_cont, .form_section_label {
    width: 100%;
    padding: 2px 10px;
    box-sizing: border-box;
    max-width: 400px;
    margin: 0 auto;
    text-align: left;
    font-size: 16px;
}

.form_field_cont label {
    font-family: 'Source Sans Pro';
    font-size: 16px;
    padding: 2px 0px;
    display: inline-block;
}

.form_section_label {
    font-size: 18px;
    text-transform: uppercase;
    font-weight: 600;
    color: #333;
}

.form_field_cont img.thumbnail {
    width: 100%;
}

.form_field_cont .thumb_cont {
    width: 100%;
    padding-bottom: 100%;
    margin-top: 10px;
    background: #eee;
    height: 0;
}

.form_field_cont input,
.form_field_cont select,
.form_field_cont textarea,
.g-recaptcha {
    font-family: 'Source Sans Pro';
    font-size: 14px;
    width:100%;
    padding: 5px;
    -webkit-border-radius: 0px;
    border: 2px solid #000;
    background: #fff;
    outline: none !important;
    box-sizing: border-box;
    color: #000;
    line-height: 20px;
}

.form_field_cont select {
	-webkit-appearance: initial;
}

.form_input:has(select)::after {
    content: "\25BE";
    width: 0px;
    height: 0px;
    font-size: 20px;
    display: inline-block;
    z-index: 0;
    position: absolute;
    margin-top: 4px;
    margin-left: -25px;
    background: #fff;
    pointer-events: none;
}

button.g-recaptcha {
    text-transform: uppercase;
    font-weight: 600;
	box-shadow: 0px 4px 5px 1px #0006;
	margin-top: 20px;
}

.form_field_cont input:disabled {
    background: #ddd;
}

.form_field_cont input[type="checkbox"] {
    width: initial;
    display: inline-block;
    height: auto;
}

.form_field_cont textarea {
    height: 96px;
    resize: none;
}

.form_field_cont textarea.xlarge {
    height: 192px;
}

.form_field_cont.error {
    color: #e00;
    text-transform: uppercase;
    padding: 5px 0px;
    font-weight: bold;
}

.form_field_cont.required label::after {
    content: "*";
    font-size: 14px;
    position: relative;
    top: -2px;
}

.has_errors .form_field_cont.required label {
	color: #e00;
}


.has_errors .form_field_cont.required input,
.has_errors .form_field_cont.required select,
.has_errors .form_field_cont.required textarea {
	border-color: #e00;
}


div#card-error {
    font-size: 20px;
    color: #e00;
    margin: 10px;
}

div#gallery_container {
    max-width: 525px;
    margin: 0 auto;
    font-size: 22px;
}

.gallery_image_inner {
    padding: 20%;
}

.gallery_image {
    width: 100%;
}

.rotate90 {
    transform: rotate(90deg);
}

.preview_item .image_holder {
    background: #fff;
}

img.preview_item_image {
    width: 100%;
    max-width: 300px;
}

div.preview_item {
    max-width: 900px;
    margin: 0 auto;
    padding: 10px;
    box-sizing: border-box;
    border: 5px solid #000;
    background: #fff;
    margin-top: 20px;
}

.preview_item .text_holder {
    font-family: 'Source Sans Pro';
    font-size: 16px;
}

.preview_item .title_bar {
    font-size: 24px;
    font-weight: bold;
}

.preview_item .field_label {
    font-weight: bold;
}

.preview_item .item_attr {
    padding: 5px;
}

.preview_item .description {
    
    text-align: left;
}

.error_box {
    font-size: 16px;
}

#profile_cont {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
}

#profile_cont .error_title svg {
    vertical-align: bottom;
    height: 40px;
}

#profile_cont .error_title {
    font-size: 38px;
}

#profile_cont .form_label {
    font-size: 20px;
    text-align: left;
    font-family: 'Source Sans Pro';
    padding: 2px;
}

#profile_cont .form_input {
    font-size: 22px;
    background: #c175c1;
    padding: 5px;
    color: #eee;
    min-height: 24px;
}

div#c_e_stripe {
    padding: 10px;
    margin: 10px 0px;
}

.oos_label {
    background: #e36060;
    color: #eee;
    padding: 2px 5px;
    border-radius: 4px;
    font-size: 14px;
}

.message_cont {
    font-family: 'Source Sans Pro';
    padding: 25px;
}

.message_cont .header_text {
    margin: 10px;
    font-weight: bold;
}

.checkout_cont .form_label, .form_label
{
    font-weight: bold;
}

.text_holder span {
    vertical-align: top;
}

.checkout_cont .text_holder {
    font-family: 'Source Sans Pro';
}

.checkout_cont .gift_note_holder {
    padding: 10px;
    border: 6px double #000;
    font-family: 'Source Sans Pro';
}

.inner_cont {
	margin: 0 auto;
    max-width: 800px;
    width: 100%;
    background: #fff;
    box-sizing: border-box;
    padding: 20px 0px;
}

.buffer.christmas {
	background: #c00;
    color: #fff;
    padding: 10px;
    margin: 20px 0px;
    font-weight: 600;
}

.star_span {
	font-size: 32px;
	vertical-align: top;
	color: #060;
	padding: 10px;
}

.cover_banner_image {
	width: 100%;
    margin-top: -20px;
}

.cover_image {
	width: 80%;
	max-width: 300px;
}

.about_cont {
    margin: 0 auto;
    max-width: 600px;
    width: 100%;
}

.about_block {
    padding: 10px 25px;
    text-align: center;
    padding-bottom: 50px;
}

.mwps_link {
	padding: 15px 20px;
    background: #ffcaec;
    color: #fff;
    display: inline-block;
    box-shadow: 0px 4px 5px 1px #0006;
    text-transform: uppercase;
    font-weight: 600;
    margin: 10px;
    box-sizing: border-box;
}

.subline_website {
    font-size: 8px !important;
    font-weight: 600 !important;
    margin-top: 2px;
}

.about_block>div {
	padding: 5px;
    box-sizing: border-box;
    color: #000;
    font-weight: bold;
    font-size: 18px;
}

.about_block>a, .pink_callout_link {
    padding: 10px 20px;
    background: #ffcaec;
    color: #444;
    margin: 10px 0px;
    display: inline-block;
    box-shadow: 0px 4px 5px 1px #0006;
    text-transform: uppercase;
    font-weight: 600;
}

.about_block>div.starred::before, .about_block>div.starred::after {
    background: url(/static/images/little_black_star.png);
    background-size: contain;
    background-position: center;
    width: 20px;
    height: 20px;
    content: "_";
    color: #fff;
    background-repeat: no-repeat;
}

.about_image_cont {
    overflow: hidden;
    height: 130px;
    background-size: cover !important;
    background-position: center !important;
    color: #fff;
    font-weight: bold;
    font-size: 28px;
    padding: 10px;
    box-sizing: border-box;
    text-align: center;
    padding-top: 30px;
}

.about_image_cont.single_line {
	padding-top: 50px;
}

.about_image_cont>div {
    background: #0009;
    display: inline-block;
    padding: 0px 5px;
}

.third_image_cont img {
	width: 33%;
	box-sizing: border-box;
	padding: 25px;
}

#rainbow_candles_img {
	background: url("/static/images/rainbow_candles.png");
}

#green_candles_img {
	background: url("/static/images/green_candles.png");
}

#glowing_candles_img {
	background: url("/static/images/glowing_candles.png");
}

.about_block .section_heading {
    font-weight: bold;
    padding: 10px 0px;
}

.about_block .image_holder {
    padding: 10px;
}

.about_block .image_holder img {
    width: 50%;
    padding: 10px;
    box-sizing: border-box;
}

.nowrap {
    white-space: nowrap;
}

.preview_item .width_50_except_mobile {
    padding: 20px;
    box-sizing: border-box;
}

.preview_item a {
    font-size: 16px;
}

.width_50_except_mobile {
    width: 50%;
}

#profile_cont a.small_link {
    font-size: 20px;
}

@media only screen and (max-width: 800px) {
  #small_header.title {
    font-size: 38px;
  }
  
  #profile_cont .big_header {
    font-size: 24px;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  
  .width_50_except_mobile {
        width: 100%;
    }
  
  .filter_holder {
    white-space: normal;
    font-size: 20px;
  }
  
  #page_title {
    font-size: 20px;
  }
  
/* 
  .bui_box {
    width: auto;
  }
  
 */
  .shop_item {
    font-size: 18px;
  }
  
  .shop_item .sub_title_bar, .preview_item .sub_title_bar {
    font-size: 16px;
  }
  
  .shop_item .description {
    min-height: 150px;
  }
  
  .shop_item .title_bar {
    height: 40px;
  }
  
  .preview_item .title_bar {
    font-size: 20px;
  }
  
  .gallery_item_buffer {
    outline: 1px solid #ffcaec;
  }
  
  .crystal_image {
    height: 60px;
  }
  
}

@media only screen and (max-width: 719px) {
    
    .shop_item .description {
    min-height: initial;
  }
  
  .shop_item .title_bar {
    height: initial;
  }
    
}