.component_option_thumbnail_container .thumbnail_description {
    padding: 1em 1em 0.75em;
}
.component_option_thumbnail_container .thumbnail_buttons {
    padding: 0 0 0.75em;
}
.woocommerce ul.component_option_thumbnails_container li.component_option_thumbnail_container .thumbnail_description .price {
    font-size: 0.9em !important;
    display: block;
    margin-bottom: 0.5em;
}
.component_option_thumbnail_container .thumbnail_description .title {
    padding: 0;
    margin-top: 0;
    font-size: 1em;
}
.component_option_thumbnail {
    margin: 5px;
    box-shadow: none !important;
    opacity: 1;
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
    position: relative;
}
.component_option_thumbnail button,
.woocommerce div.product form.composite_form .component_option_thumbnail .button {
    float: none;
}
.component_option_thumbnail.disabled {
    opacity: 0.5;
    cursor: not-allowed;
}
.component_option_thumbnail.disabled button.component_option_thumbnail_select,
.component_option_thumbnail.disabled a.component_option_thumbnail_link {
    pointer-events: none;
    cursor: not-allowed;
}
.component_option_thumbnail.appended {
    opacity: 0;
}
.component_option_thumbnail.loading a.component_option_thumbnail_link,
.component_option_thumbnail.selected a.component_option_thumbnail_link {
    pointer-events: none;
    cursor: default;
}
.component_option_thumbnail.loading button.component_option_thumbnail_select,
.component_option_thumbnail.selected button.component_option_thumbnail_select {
    pointer-events: none;
    opacity: 0.5;
}
.component_option_thumbnail.selected:not(.loading) {
    position: relative;
}
.component_option_thumbnail.selected:not(.loading) button {
    position: relative;
    text-indent: -999em;
}
.component_option_thumbnail.selected:not(.loading) button:after {
    display: inline-block;
    font-family: "FontAwesomeCP";
    content: "\e80a";
    text-indent: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.component_option_thumbnail .image {
    padding: 7px 8px 0;
}
.component_option_thumbnail_container.hidden {
    display: none;
}
.component.lazy-load .no_query_results,
.component.lazy-load .no_compat_results {
    visibility: hidden;
}
.refresh_component_options .no_compat_results {
    visibility: hidden;
}
ul.component_option_thumbnails_container {
    margin: 0;
    padding: 0;
}
ul.component_option_thumbnails_container li.component_option_thumbnail_container {
    text-align: center;
    float: left;
    margin: 0 3.5% 1.618em 0;
    padding: 0;
    position: relative;
    margin-left: 0;
    list-style: none;
}
ul.component_option_thumbnails_container li.component_option_thumbnail_container.first,
ul.component_option_thumbnails_container li.component_option_content_container {
    clear: both;
}
ul.component_option_thumbnails_container li.component_option_thumbnail_container.last {
    margin-right: 0;
}
ul.component_option_thumbnails_container li.component_option_thumbnail_container img {
    margin-bottom: 0px;
}
.component_option_thumbnail img {
    margin: 0 auto;
}
ul.component_option_thumbnails_container li.component_option_thumbnail_container,
ul.component_option_thumbnails_container li.component_option_content_container {
    width: 100%;
}
.woocommerce ul.component_option_radio_buttons_container li.component_option_radio_button_container .radio_button_description .price {
    font-size: 0.9em !important;
    display: block;
    margin-bottom: 1em;
}
.component_option_radio_button_container .radio_button_description .title {
    padding: 0;
    margin-top: 1em;
    margin-bottom: 1em;
    font-size: 1em;
}
.component .component_option_radio_button {
    display: table;
    opacity: 1;
    position: relative;
}
.component label.component_option_radio_button_select {
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    position: absolute;
    z-index: 100;
    cursor: pointer;
    margin: 0;
}
.component_option_radio_button.disabled label.component_option_radio_button_select {
    cursor: not-allowed;
}
.component_option_radio_button.disabled {
    opacity: 0.5;
}
.component_option_radio_button_container.hidden {
    display: none;
}
.blocked_content .no_compat_results {
    visibility: hidden;
}
ul.component_option_radio_buttons_container {
    margin: 0;
    padding: 0;
}
ul.component_option_radio_buttons_container li.component_option_radio_button_container {
    text-align: left;
    float: left;
    margin: 0;
    padding: 0;
    list-style: none;
}
.component_option_radio_button_container .radio_button_input {
    display: table-cell;
    vertical-align: middle;
    padding: 0 20px 0 5px;
}
.component_option_radio_button_container .radio_button_description {
    display: table-cell;
    vertical-align: middle;
}
ul.component_option_radio_buttons_container li.component_option_content_container {
    clear: both;
}
ul.component_option_radio_buttons_container li.component_option_radio_button_container,
ul.component_option_radio_buttons_container li.component_option_content_container {
    width: 100%;
}
.composite_form .component_data.woocommerce-error {
    width: 100% !important;
    margin-top: 1.618em;
    margin-bottom: 0;
}
.paged .multistep {
    opacity: 1;
}
.paged .multistep.faded {
    opacity: 0;
}
.multistep.invisible {
    visibility: hidden;
}
.multistep.invisible div {
    -webkit-transition: none !important;
    transition: none !important;
}
.component.options-style-dropdowns .component_option_thumbnails_container {
    display: none !important;
}
.component.options-style-dropdowns .component_options_select_wrapper {
    display: block !important;
}
.composite_form .multistep_index:after {
    content: ". ";
}
.composite_form:not(.paged) .component .component_inner {
    padding-bottom: 3rem;
}
.component.toggled .component_selections {
    padding-top: 1rem;
}
.composite_form:not(.paged) .composite_wrap {
    padding-top: 2rem;
}
.component_wrap:after,
.composite_wrap:after,
.component:after,
.composite_data:after,
.cp_clearfix:after,
.component .composited_product_details_wrapper:after {
    content: "";
    display: table;
    clear: both;
}
.component .composited_product_images,
.woocommerce-page div.product div.composited_product_images,
.woocommerce-page #content div.product div.composited_product_images,
.woocommerce div.product div.composited_product_images,
.woocommerce #content div.product div.composited_product_images {
    float: left;
    width: 20%;
    margin: 0;
}
.component .component_summary .content {
    overflow: visible;
}
.component.selection-align--center .component_summary .content:not(.bundle_form),
.component.relocated-selection-align--center .relocated .component_summary .content:not(.bundle_form) {
    text-align: center;
}
.component.selection-align--center .composited_product_images,
.component.selection-align--center .details,
.component.relocated-selection-align--center .relocated .composited_product_images,
.component.relocated-selection-align--center .relocated .details {
    float: none !important;
    margin: 0 auto 1.5rem !important;
}
.component.selection-align--center .quantity,
.component.relocated-selection-align--center .relocated .quantity,
.single-product div.product form.cart .component.selection-align--center .quantity,
.single-product div.product form.cart .component.relocated-selection-align--center .relocated .quantity {
    float: none;
}
.component.selection-align--center table.variations td,
.component.relocated-selection-align--center .relocated table.variations td {
    text-align: center;
}
.component .composited_product_images figure {
    margin: 0;
}
.component .composited_product_images img {
    width: 100%;
    height: auto;
    display: block;
}
.component .composited_product_images a.placeholder_image[data-rel="photoSwipe"] {
    cursor: default;
}
.component .composited_product_images,
.component .details {
    box-sizing: border-box;
}
.component:not(.selection_thumbnail_hidden) .composited_product_details_wrapper > .details {
    float: right;
    width: 80%;
    padding: 0 0 0 1.5em;
}
.summary-add-to-cart-form-composite .component:not(.selection_thumbnail_hidden) .composited_product_details_wrapper > .details {
    padding: 0 0 0 2em;
}
.component .component_description {
    margin-bottom: 1.618em;
}
.component.disabled .reset_variations {
    visibility: hidden !important;
}
.component .composited_product_title_wrapper {
    padding-top: 1.618em;
}
.component .composited_product_title_wrapper .composited_product_title {
    outline: 0;
}
.component.paged.options-style-thumbnails .composited_product_title_wrapper,
.component.static .composited_product_title_wrapper {
    padding-top: 0;
}
.component.static .composited_product_title_wrapper[data-show_title="no"] {
    display: none;
}
p.component_section_title,
h4.composited_product_title {
    margin: 0 0 0.5em;
    padding: 0;
}
.composited_product_title_wrapper p:last-child,
.composited_product_title_wrapper h4:last-child {
    margin: 0 0 1.5rem;
}
p.composited_product_title {
    font-weight: bold;
}
.component .woocommerce-error .clear_component_options {
    margin-bottom: 0;
    font-weight: normal;
}
.component .woocommerce-error .invalid_product_note {
    font-size: 90%;
    font-style: italic;
    display: block;
    margin-top: 1em;
}
.component .woocommerce-error .invalid_product_note strong {
    font-style: normal;
    margin: 0 2px;
}
.clear_component_options:before {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    margin-right: 0.75em;
    font-family: "FontAwesomeCP" !important;
    content: "\e817" !important;
    font-size: 0.8em;
    vertical-align: 0.06em !important;
}
.component .component_options_select {
    margin: 0;
    display: block;
    min-width: 200px;
    max-width: 100%;
}
.component .component_wrap > p.stock,
.component .component_wrap > .woocommerce-variation p.stock,
.component .component_wrap > span.price,
.component .component_wrap > .single_variation .price,
.component .component_wrap > .single_variation .woocommerce-variation-description p:first-child,
.single-product .component div.product .component_wrap > span.price,
.single-product .component div.product .component_wrap > .single_variation .price {
    margin: 1em 0 0;
}
.component .component_wrap > p:first-child,
.component .component_wrap > span:first-child,
.single-product div.product .component .component_wrap > p:first-child,
.single-product div.product .component .component_wrap > span:first-child {
    margin-top: 0;
}
.component .component_option_each {
    margin-left: 0.25em;
}
.component .component_wrap span.price,
.single-product .component .component_wrap span.price {
    display: block;
}
.component .component_wrap * + .quantity_button .quantity,
.single-product .component div.product .component_wrap * + .quantity_button .quantity {
    margin: 1.5em 0 0 0;
}
.composite_button button.disabled {
    opacity: 0.5;
}
.composite_form .step_title_wrapper {
    outline: 0;
    margin-top: 0;
    margin-bottom: 1em;
}
.composite_form .component_title_toggled {
    display: inline-block;
    position: relative;
    line-height: 1em;
    margin-bottom: 1rem;
    cursor: pointer;
}
.composite_form .component_title_toggled.inactive {
    opacity: 0.6;
    cursor: not-allowed;
}
.composite_form .component_title_toggled .component_title_text {
    font-size: 0.8em;
    padding-left: 1.1em;
    vertical-align: middle;
    display: inline-block;
}
.composite_form .component_title_toggled .component_title_text:before {
    font-family: "FontAwesomeCP";
    font-size: 0.8em;
    content: "\e808";
    position: absolute;
    left: 0;
}
.composite_form .aria_title {
    position: fixed;
    opacity: 0;
    top: 0.5em;
    width: 0px;
    text-indent: -999em;
}
.composite_form .aria_button,
.widget_composite_summary .aria_button {
    line-height: inherit;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    -webkit-filter: none !important;
    filter: none !important;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
}
.composite_form .component.closed .component_title_toggled .component_title_text:before {
    content: "\e809";
}
.component.static .component_options,
.component.static p.component_section_title:not(.product_title) {
    display: none;
}
.composite_form .component_message.top .woocommerce-info {
    margin-bottom: 1.618em;
}
.composite_form .component_message.bottom .woocommerce-info {
    margin-bottom: 0 !important;
}
.component.options-style-thumbnails .component_message.bottom .woocommerce-info,
.component.paged:not(.options-style-thumbnails) .component_message.bottom .woocommerce-info,
.component.progressive .component_message.bottom .woocommerce-info {
    margin-top: 2em;
}
.validation_message ul {
    list-style: none;
    margin: 0;
}
.validation_message li {
    margin-top: 0.5em;
}
.validation_message li:first-of-type {
    margin-top: 0;
}
.cp-no-js .composite_navigation {
    display: none;
}
.composite_form .composite_navigation.hidden {
    display: none;
}
.composite_form .composite_navigation.progressive .invisible {
    display: none;
}
.composite_form .composite_navigation .page_button {
    max-width: 40%;
    font-size: 1.4em;
    position: relative;
    font-weight: 600;
	background: linear-gradient(91.73deg, #D1DC1B 0%, #AFB906 100%);
	border-radius: 3px;
	color: grey;
	display: inline-block;
	padding: 8px 24px;
}

.composite_form .composite_navigation .page_button .btnNavText {
	color: white;
}

.composite_navigation .page_button.inactive {
    color: #aaa;
    cursor: default;
}
.composite_navigation .page_button.invisible {
    visibility: hidden;
}
.composite_navigation .page_button.hidden {
    display: none;
}
.composite_navigation.progressive .page_button,
.composite_navigation.componentized .page_button {
    font-size: 1.3em;
}
.composite_navigation.paged .composite_navigation_inner {
    padding: 0 0 2em 0;
}
.composite_navigation.paged.bottom .composite_navigation_inner {
    padding: 3em 0 0 0;
}
.composite_navigation.paged.movable .composite_navigation_inner {
    padding: 2em 0 2em 0;
}
.composite_navigation.top.paged .composite_navigation_inner {
    padding: 0 0 1.618em 0;
}
.composite_form .composite_navigation,
.composite_navigation .composite_navigation_inner {
    margin: 0;
}
.composite_form .composite_navigation.top {
    display: none;
}
.composite_form .composite_navigation_inner:after {
    content: "";
    display: table;
    clear: both;
}
.composite_form .composite_navigation.paged .next {
    float: right;
    text-align: right;
    margin-right: 1.2em;
}
.composite_form .composite_navigation .next:after {
    font-family: "FontAwesomeCP";
    content: "\e80c";
    position: absolute;
    top: 50%;
    margin-top: 0.08em;
    right: -1.2em;
    line-height: 1;
    font-size: 0.75em;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.composite_form .composite_navigation.paged .prev {
    float: left;
    margin-left: 1.2em;
}
.composite_form .composite_navigation .prev:before {
    font-family: "FontAwesomeCP";
    content: "\e80b";
    position: absolute;
    top: 50%;
    margin-top: 0.08em;
    left: -1.2em;
    line-height: 1;
    font-size: 0.75em;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.composite_form .composite_navigation.progressive {
    text-align: center;
    margin-bottom: 0px;
    padding: 15px 0 15px 0;
}
.composite_form .composite_navigation.progressive .next:after {
    content: "\e80c";
    margin-top: -7px;
}
.composite_form .composite_pagination {
	margin-bottom: 30px;
	overflow: hidden;
	/*CSS counters to number the steps*/
	counter-reset: step;
}
.composite_form .composite_pagination li {
	list-style-type: none;
	color: #555555;
	text-transform: uppercase;
	font-size: 0.9rem;
	width: 20%;
	float: left;
	position: relative;
}
.composite_form .composite_pagination li:before {
	content: counter(step);
	counter-increment: step;
	width: 30px;
	line-height: 30px;
	display: block;
	font-size: 1rem;
	color: white;
	background: #555555;
	border-radius: 50%;
	margin: 0 auto 5px auto;
}
/*progressbar connectors*/
.composite_form .composite_pagination li:after {
	content: '';
	width: 100%;
	height: 2px;
	background: #555555;
	position: absolute;
	left: -50%;
	top: 9px;
	z-index: -1; /*put it behind the numbers*/
}
.composite_form .composite_pagination li:first-child:after {
	/*connector not needed before the first step*/
	content: none; 
}
/*marking active/completed steps green*/
/*The number of the step and the connector before it = green*/
.composite_form .composite_pagination li.active:before,  .composite_form .composite_pagination li.active:after{
	background: linear-gradient(91.73deg, #D1DC1B 0%, #AFB906 100%);
	color: white;
}

span.summary_element_content span.content_product_title {
    display: block;
}
span.summary_element_content ul.content_product_meta {
    font-size: 0.88em;
    padding: 0.5em 0 0 0;
    margin: 0;
    list-style: none;
}
span.summary_element_content ul.content_product_meta li.meta_element {
    display: block;
    margin: 0.5em 0 0 0;
    padding: 0;
}
span.summary_element_content ul.content_product_meta span.meta_element_sep {
    display: none;
}
span.summary_element_content span.content_bundle_title {
    margin-bottom: 0.5em;
}
.composite_summary li.summary_element h3 {
    font-size: 1.1rem;
}
.composite_summary li.summary_element .summary_element_tap a {
    display: inline-block;
}
.composite_summary li.summary_element h3,
.composite_summary li.summary_element .summary_element_select_wrapper {
    margin: 0 0 0.625em;
}
.composite_summary li.summary_element .summary_element_select_wrapper {
    display: inline-block;
}
.composite_summary li.summary_element .selected .summary_element_tap a {
    display: none;
}
.composite_summary li.summary_element .selected .summary_element_select_wrapper {
    opacity: 0.5;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
}
.composite_summary li.summary_element .selected .summary_element_select_wrapper:before {
    content: "\2026";
    font-size: 0.88rem;
}
.composite_summary li.summary_element .selected .summary_element_select_wrapper:after {
    font-family: "FontAwesomeCP";
    content: "\e815";
    font-size: 12px;
    position: relative;
    bottom: 1px;
}
.composite_summary li.summary_element span.summary_element_content,
.composite_summary .woocommerce-page #content div.product span.summary_element_content {
    font-size: 0.88rem;
}
.composite_summary .summary_element_wrapper {
    box-shadow: none !important;
    opacity: 1;
}
.composite_summary .summary_element_wrapper.disabled {
    opacity: 0.5;
    cursor: not-allowed;
}
.composite_summary .summary_element_wrapper.disabled .summary_element_select {
    pointer-events: none;
    text-decoration: none;
}
.composite_summary .summary_element_wrapper.selected .summary_element_select {
    opacity: 0.5;
    text-decoration: none;
}
.composite_summary .summary_element_wrapper.selected .summary_element_select.button {
    pointer-events: none;
}
.composite_summary .summary_element_wrapper.selected .summary_element_select:not(.button) {
    cursor: not-allowed;
}
.composite_summary .summary_element_wrapper {
    overflow: hidden;
}
.composite_summary .summary_element_wrapper_inner {
    padding: 12px;
    position: relative;
    border: 1px solid transparent !important;
}
.composite_summary ul.summary_elements {
    margin: 0 0 1.618em 0;
}
.composite_summary a.summary_element_select {
    font-size: 0.88rem;
}
.composite_summary .summary_element_data .summary_element_content {
    display: block;
    margin-top: 0.625em;
}
.composite_summary .summary_element_button {
    margin-top: 1.25em;
}
.composite_summary .summary_element_image img.summary_element_content {
    margin: 0.625em auto 0;
}
.composite_summary .summary_element_data .summary_element_content:after {
    content: "";
    display: table;
    clear: both;
}
.composite_summary .summary_element_data:first-of-type .summary_element_content {
    margin-top: 0px;
}
.composite_summary li.summary_element {
    margin: 0 0 8px 0;
    float: left;
    text-align: center;
}
.composite_summary li.summary_element.hidden {
    display: none;
}
.composite_summary li.summary_element.first {
    clear: both;
}
.composite_summary li.summary_element.last {
    margin-right: 0;
}
.composite_summary li.summary_element {
    width: 100%;
}
.composite_summary .summary_element_wrapper_outer {
    padding: 5px;
}
.widget_composite_summary .composite_button {
    float: right;
}
.widget_composite_summary .widget_composite_summary_availability,
.widget_composite_summary .widget_composite_summary_price {
    text-align: right;
}
.widget_composite_summary .composite_button button {
    float: left;
}
.widget_composite_summary.cp-no-js {
    display: none;
}
.widget_composite_summary.summary_widget_hidden {
    visibility: hidden;
    position: fixed;
    top: 100vh !important;
}
.widget_composite_summary .widget_composite_summary_error .composite_message .woocommerce-info {
    margin: 0 0 30px;
}
.widget_composite_summary .widget_composite_summary_error .validation_message li + li {
    display: none;
}
.widget_composite_summary .widget_composite_summary_content > div:after {
    content: "";
    display: table;
    clear: both;
}
.widget_composite_summary .composite_add_to_cart_button {
    font-size: 1em;
}
.widget_composite_summary.widget_position_default {
    opacity: 1;
    -webkit-transition: opacity 0.25s;
    transition: opacity 0.25s;
}
.widget_composite_summary.widget_position_default.summary_widget_inactive {
    opacity: 0;
}
.widget_composite_summary.widget_position_default li.summary_element {
    text-align: left;
    width: 100% !important;
}
.widget_composite_summary.widget_position_default li.summary_element:after {
    content: "";
    display: table;
    clear: both;
}
.widget_composite_summary.widget_position_default .summary_element_data {
    overflow: hidden;
}
.widget_composite_summary.widget_position_default .summary_element_title {
    width: 100%;
}
.widget_composite_summary.widget_position_default .summary_element_title h3 {
    line-height: inherit;
}
.widget_composite_summary.widget_position_default .summary_element_price {
    clear: both;
    text-align: right;
}
.widget_composite_summary.widget_position_default .summary_element_price .summary_element_content {
    margin-top: 1.25em;
}
.widget_composite_summary.widget_position_default .summary_element_image {
    float: left;
    margin-right: 10px;
}
.widget_composite_summary.widget_position_default .summary_element_image img.summary_element_content {
    max-width: 50px;
    margin: 0.625em auto 0;
}
.widget_composite_summary.widget_position_default .price,
.widget_composite_summary.widget_position_default .price ins {
    font-weight: 700;
}
.widget_composite_summary.widget_position_default .widget_composite_summary_content {
    font-weight: 400;
}
.widget_composite_summary.widget_position_fixed {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 0;
    margin: 0 !important;
    z-index: 10000;
    font-size: 0.88rem;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.2);
    background: #fff !important;
}
.widget_composite_summary.widget_position_fixed .widget-title,
.widget_composite_summary.widget_position_fixed > h1,
.widget_composite_summary.widget_position_fixed > h2,
.widget_composite_summary.widget_position_fixed > h3,
.widget_composite_summary.widget_position_fixed > h4,
.widget_composite_summary.widget_position_fixed > h5,
.widget_composite_summary.widget_position_fixed > h6 {
    display: none;
}
.widget_composite_summary.widget_position_fixed .widget_composite_summary_error {
    display: none;
}
.widget_composite_summary.widget_position_fixed .widget_composite_summary_error .composite_message {
    padding-top: 30px;
}
.widget_composite_summary.widget_position_fixed .widget_composite_summary_content {
    padding: 0 2em;
    margin: 0.5em 0;
}
.widget_composite_summary.widget_position_fixed .widget_composite_summary_content:after {
    content: "";
    display: table;
    clear: both;
}
.widget_composite_summary.widget_position_fixed .widget_composite_summary_details_wrapper {
    width: calc(80% - 1em);
    margin: 0 1em 0 0;
    float: left;
    position: relative;
}
.widget_composite_summary.widget_position_fixed .widget_composite_summary_elements_wrapper {
    margin: 0 2em;
    overflow: hidden;
}
.widget_composite_summary.widget_position_fixed ul.summary_elements {
    margin: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: no-wrap;
    flex-wrap: no-wrap;
}
.widget_composite_summary.widget_position_fixed .widget_composite_summary_elements {
    padding: 0 !important;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.widget_composite_summary.widget_position_fixed .widget_composite_summary_elements .summary_element_image img {
    max-height: 100px;
    width: auto;
}
.widget_composite_summary.widget_position_fixed .widget_composite_summary_ui_wrapper {
    padding: 20px 0;
    float: right;
    width: 20%;
}
.widget_composite_summary.widget_position_fixed .widget_composite_summary_ui_wrapper > div {
    margin: 0;
}
.widget_composite_summary.widget_position_fixed .widget_composite_summary_availability p,
.widget_composite_summary.widget_position_fixed .widget_composite_summary_price p,
.widget_composite_summary.widget_position_fixed .composite_message .woocommerce-info {
    margin-bottom: 1.2rem;
}
.widget_composite_summary.widget_position_fixed .summary_elements li.summary_element {
    margin-bottom: 0;
}
.widget_composite_summary.widget_position_fixed .composite_button {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
}
.widget_composite_summary.widget_position_fixed .composite_button .composite_add_to_cart_button {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    flex-grow: 1;
}
.widget_composite_summary.widget_position_fixed .summary_carousel_button {
    padding: 10px 5px;
    position: absolute;
    top: 50%;
    line-height: 1;
    font-size: 0.75em;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.widget_composite_summary.widget_position_fixed .summary_carousel_button.disabled {
    display: none;
}
.widget_composite_summary.widget_position_fixed .summary_carousel_button.inactive {
    opacity: 0.3;
}
.widget_composite_summary.widget_position_fixed .summary_carousel_button.inactive button {
    cursor: not-allowed;
}
.widget_composite_summary.widget_position_fixed .summary_carousel_button:after {
    font-family: "FontAwesomeCP";
    line-height: 1;
    font-size: 1.5em;
}
.widget_composite_summary.widget_position_fixed .summary_carousel_button.next {
    right: 0.75em;
}
.widget_composite_summary.widget_position_fixed .summary_carousel_button.next:after {
    content: "\e80c";
}
.widget_composite_summary.widget_position_fixed .summary_carousel_button.prev {
    left: 0.75em;
}
.widget_composite_summary.widget_position_fixed .summary_carousel_button.prev:after {
    content: "\e80b";
}
@media screen and (max-width: 767px) {
    .widget_composite_summary.widget_position_fixed {
        display: none !important;
    }
}
@media screen and (max-width: 1024px) {
    .widget_composite_summary.widget_position_fixed .summary_element_image {
        display: none;
    }
    .widget_composite_summary.widget_position_fixed .composite_button {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        flex-direction: column;
    }
    .widget_composite_summary.widget_position_fixed .composite_button .quantity {
        margin: 0 0 1.2rem 0;
    }
    .widget_composite_summary.widget_position_fixed .composite_button .quantity .qty {
        width: 100%;
    }
}
.component .component_pagination:not(.component_options_append) {
    padding: 0 0 1.618em 0;
    font-size: 0.88em;
    text-align: right;
}
.component .component_pagination.component_options_append {
    padding: 1.618em 0 0 0;
}
.component .component_pagination ul {
    list-style: none;
}
.component .component_pagination li {
    display: inline-block;
}
.component .component_pagination .component_pagination_element {
    padding: 2px 5px;
    margin: 2px 0;
}
.component .component_pagination .index {
    margin-right: 15px;
    padding: 0;
    outline: 0;
}
.component .component_pagination .current {
    font-weight: bold;
    color: #aaa;
    cursor: default;
}
.component .component_options_append {
    text-align: center;
}
.component_options_append .button,
.single-product div.product form.cart .component_options_append .button {
    float: none;
}
.component .component_ordering {
    padding-bottom: 1.618em;
}
.component .component_filters {
    padding-bottom: 1.618em;
}
.component .component_filter {
    padding-top: 5px;
    font-size: 0.85em;
}
.component_filters_section_title {
    position: relative;
}
.component_filter .component_filter_title {
    position: relative;
}
.component_filter .component_filter_name {
    cursor: pointer;
    position: relative;
    padding-left: 1.4em;
}
.component_filter .component_filter_name:before {
    font-family: "FontAwesomeCP";
    content: "\e808";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
    opacity: 1;
}
.component_filter.closed .component_filter_name:before {
    content: "\e809";
    opacity: 0.5;
}
.component div.component_filter:first-of-type {
    padding-top: 5px;
}
.component .component_filters ul {
    margin: 0;
}
.component .component_filters ul li {
    display: inline-block;
    padding-right: 1em;
}
.component .component_filter_options {
    padding: 0.75em 0 0.75em 0;
}
.component .component_filter_option a.toggle_filter_option:before {
    font-family: "FontAwesomeCP";
    content: "\e80a";
    padding-right: 5px;
    opacity: 0.2;
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
}
.component .component_filter_option a.toggle_filter_option:hover:before {
    opacity: 0.5;
}
.component .component_filter_option.selected a.toggle_filter_option:before {
    opacity: 1;
}
.component_filters a.reset_component_filters,
.component_filters a.reset_component_filter {
    display: none;
    opacity: 0;
    margin-left: 1em;
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
    font-size: 0.8em;
    position: absolute;
    top: 57%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.component_filters.filtered a.reset_component_filters,
.component_filters .active a.reset_component_filter {
    display: inline-block;
    opacity: 0.5;
}
.component_filters.filtered a.reset_component_filters:after,
.component_filters .active a.reset_component_filter:after {
    font-family: "FontAwesomeCP";
    content: "\e817";
    position: relative;
    top: -1px;
}
.component_filters.filtered a.reset_component_filters:hover,
.component_filters .active a.reset_component_filter:hover {
    opacity: 1;
}
.woocommerce .composite_form > .blockUI.blockOverlay {
    position: fixed !important;
}
.woocommerce .composite_form > .blockUI.blockOverlay:before {
    height: 30px;
    width: 30px;
    margin-left: -15px;
    margin-top: -15px;
    line-height: 30px;
    font-size: 30px;
    display: inline-block;
    position: fixed;
    top: 50%;
    left: 50%;
    content: "";
    background: url("../../images/loader.svg") center center;
    background-repeat: no-repeat;
    text-align: center;
    color: rgba(0, 0, 0, 0.75);
    -webkit-animation: cp-spin 0.75s linear infinite;
    animation: cp-spin 0.75s linear infinite;
}
.composite_form .component.hidden {
    display: none;
}
.component .component_inner,
.component .component_selections,
.component .component_selections_inner {
    position: relative;
}
.multistep .component_selections > div,
.component .component_selections_inner {
    opacity: 1;
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
}
.multistep.blocked .component_selections > div,
.composite_form .component.disabled .component_selections_inner {
    opacity: 0.5;
}
.multistep.blocked .block_component,
.component.disabled .component_selections_inner .block_component_selections_inner,
.form_input_blocker.blocked {
    position: absolute;
    height: 100%;
    width: 100%;
    opacity: 1;
    z-index: 1000;
    text-align: center;
}
.component.disabled .component_selections_inner .block_component_selections_inner {
    cursor: pointer;
}
.multistep.active .block_component {
    display: none;
}
.composite_status {
    z-index: 10000;
    display: none;
    position: fixed;
    bottom: 30px;
    right: 60px;
    text-align: right;
    opacity: 0;
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
}
.composite_status .wrapper {
    position: absolute;
    width: 500px;
    height: 90px;
    overflow: hidden;
    bottom: 0;
    right: 0;
}
.composite_status.active {
    display: block;
}
.composite_status.visible {
    opacity: 1;
}
.composite_status ul.messages {
    position: absolute;
    width: 100%;
    bottom: 0;
    right: 30px;
    margin: 0;
}
.composite_status ul.messages li {
    -webkit-transition: height 0.35s;
    transition: height 0.35s;
    height: 30px;
    opacity: 0.5;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.composite_status ul.messages li.old {
    height: 0px;
}
.composite_status ul.messages li:last-of-type {
    opacity: 1;
}
.woocommerce .composite_status .wrapper:after {
    height: 20px;
    width: 20px;
    font-size: 20px;
    line-height: 20px;
    position: absolute;
    bottom: 7px;
    right: 0;
    display: block;
    content: "";
    background: url("../../images/loader.svg") center center;
    text-align: center;
    opacity: 0.55;
    -webkit-animation: cp-spin 0.75s linear infinite;
    animation: cp-spin 0.75s linear infinite;
}
.composite_status span.content {
    font-size: 0.95em;
    font-weight: 400;
    color: rgba(0, 0, 0, 0.45);
}
@-webkit-keyframes cp-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@keyframes cp-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
.multistep,
.composite_price,
.composite_message,
.composite_availability,
.composite_button,
.composite_form .component_message {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.component .component_content,
.component_summary .content {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.component .component_options {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.component.options-style-thumbnails .component_options,
.component.options-style-radios .component_options {
    overflow: hidden;
}
.multistep:before,
.composite_price:before,
.composite_message:before,
.composite_availability:before,
.composite_button:before,
.composite_form .component_message:before,
.component .component_content:before,
.component_summary .content:before {
    content: "";
    display: table;
    clear: both;
}
.multistep:after,
.composite_price:after,
.composite_message:after,
.composite_availability:after,
.composite_button:after,
.composite_form .component_message:after,
.component .component_content:after,
.component_summary .content:after {
    content: "";
    display: table;
    clear: both;
}
.component .component_content.updating {
    overflow: hidden;
}
.single-product div.product .component .component_summary {
    border-bottom: none;
}
.composite_wrap .composite_message .woocommerce-info {
    margin: 0 0 30px;
}
.composite_form .composite_availability p.stock,
.single-product .composite_form .composite_availability p.stock {
    margin: 0 0 30px;
}
.composite_form .composite_price p.price,
.single-product .composite_form .composite_price p.price {
    margin: 0 0 30px;
    line-height: 1em;
}
.widget_composite_summary .quantity {
    float: left;
    margin-right: 0.5em;
}
.widget_composite_summary .quantity input.qty {
    width: 80px;
    font-size: 1em;
}
.component_summary .quantity_hidden {
    display: none !important;
}
.summary-add-to-cart-form-composite {
    clear: both;
}
.summary-add-to-cart-form-composite:before {
    display: table;
    content: "";
    clear: both;
}
.composite_form {
    padding-left: 4px !important;
    position: relative;
}
.composite_form.small_width.paged:not(.componentized) {
    overflow: hidden;
}
.composite_form button {
    vertical-align: middle;
}
.component_summary .product-addon,
.composite_data .product-addon {
    margin: 0;
    padding: 0.75em 0;
}
.component_summary .variations_button,
.single-product div.product .component_summary .variations_button {
    padding-top: 0px;
    border-top: none;
}
.composite_form table.variations .required {
    border-bottom: 0 !important;
    color: red;
}
.composite_form table.variations,
.single-product div.product .composite_form table.variations {
    margin: 0;
}
.composite_form table.variations td,
.composite_form table.variations th {
    display: list-item;
    padding: 0;
    list-style: none;
    background-color: transparent;
}
.composite_form .cart .variations select,
.single-product div.product .composite_form .cart .variations select {
    margin: 0;
}
.composite_form table.variations td.value,
.single-product div.product .composite_form table.variations td.value {
    margin: 0;
    padding: 0.25em 0 0;
}
.composite_form .variations_button,
.single-product div.product .composite_form .variations_button {
    padding-top: 0px;
    border-top: none;
}
.component .cart .variations,
.component .cart .variations tr,
.component .cart .variations td {
    border: 0;
}
.component .cart .variations td.label {
    padding: 1em 0 0;
}
.component .cart .variations tr:first-child td.label {
    padding: 0;
}
.component .cart .variations a.reset_variations {
    margin: 1em 0 0;
    display: inline-block;
    visibility: visible !important;
}
.composite_form:not(.paged) .composite_data .product-addon:first-of-type {
    padding-top: 3em;
}
.composite_form:not(.paged) .composite_data .product-addon + .composite_wrap {
    padding-top: 0;
}
.product .component_wrap .nyp {
    margin: 0;
}
.product .component_wrap .nyp .woocommerce-nyp-message {
    margin: 0 !important;
    padding: 1em 0;
}
.product .component_wrap .nyp .woocommerce-nyp-message .wc-nyp-error {
    margin: 0;
}
.full_width .columns-2 ul.component_option_thumbnails_container li.component_option_thumbnail_container {
    width: 48.2%;
}
.full_width .columns-3 ul.component_option_thumbnails_container li.component_option_thumbnail_container {
    width: 30.9%;
}
.full_width .columns-4 ul.component_option_thumbnails_container li.component_option_thumbnail_container {
    width: 22.3%;
}
.full_width .columns-5 ul.component_option_thumbnails_container li.component_option_thumbnail_container {
    width: 17.1%;
}
.full_width .columns-6 ul.component_option_thumbnails_container li.component_option_thumbnail_container {
    width: 13.7%;
}
.full_width .columns-7 ul.component_option_thumbnails_container li.component_option_thumbnail_container {
    width: 11.2%;
}
.full_width .columns-8 ul.component_option_thumbnails_container li.component_option_thumbnail_container {
    width: 9.4%;
}
.full_width .columns-2 .summary_elements li.summary_element {
    width: 50%;
}
.full_width .columns-3 .summary_elements li.summary_element {
    width: 33.333%;
}
.full_width .columns-4 .summary_elements li.summary_element {
    width: 25%;
}
.full_width .columns-5 .summary_elements li.summary_element {
    width: 20%;
}
.full_width .columns-6 .summary_elements li.summary_element {
    width: 16.666%;
}
.full_width .columns-7 .summary_elements li.summary_element {
    width: 14.2857%;
}
.full_width .columns-8 .summary_elements li.summary_element {
    width: 12.5%;
}
.small_width ul.component_option_thumbnails_container li.component_option_thumbnail_container {
    width: 100%;
    margin-bottom: 1em;
}
.small_width .component_option_thumbnail .image {
    width: 60%;
    margin: 0 auto;
}
.composite_form.small_width .composite_pagination {
    display: none;
}
.composite_form.small_width .composite_navigation.top {
    display: block;
}
.small_width ul.component_option_thumbnails_container li.component_option_thumbnail_container {
    width: 100%;
    margin-bottom: 1em;
}
.small_width .summary_element_image {
    width: 60%;
    margin: 0 auto;
}
.composite_summary.force_vertical li.summary_element {
    text-align: left;
    width: 100% !important;
}
.composite_summary.force_vertical li.summary_element:after {
    content: "";
    display: table;
    clear: both;
}
.composite_summary.force_vertical .summary_element_data {
    overflow: hidden;
}
.composite_summary.force_vertical .summary_element_title {
    width: 100%;
}
.composite_summary.force_vertical .summary_element_price .summary_element_content {
    margin-top: 0.625em;
    font-weight: 700;
}
.composite_summary.force_vertical .summary_element_image {
    width: 100px;
    float: left;
    margin-right: 16px;
}
.composite_summary.force_vertical .summary_element_image img.summary_element_content {
    margin: 7px auto 0;
}
.composite_summary.force_vertical .summary_element_button {
    clear: both;
    text-align: center;
}
.legacy_width ul.component_option_thumbnails_container li.component_option_thumbnail_container {
    width: 100%;
    margin-bottom: 1em;
}
.legacy_width .component_option_thumbnail .image {
    float: left;
    width: 100px;
    padding: 8px;
}
.legacy_width .component_option_thumbnail_container .thumbnail_buttons {
    padding: 0.75em 0;
    clear: both;
}
.legacy_width .component_option_thumbnail_container .thumbnail_description {
    text-align: left;
    overflow: hidden;
    padding: 8px 12px 8px 8px;
}
.legacy_width .component_option_thumbnail_container .thumbnail_description .title {
    margin-top: 5px;
}
.theme-twentytwentyone.single-product form.cart .component_option_radio_button input {
    min-width: 25px;
    width: 25px;
    height: 25px;
}
.theme-astra.woocommerce div.product div.composited_product_images {
    width: 20% !important;
}
.theme-astra.woocommerce div.product form.cart.composite_form .button.summary_element_select {
    float: none;
}
.theme-astra.woocommerce .component .component_pagination .component_pagination_element {
    padding: 4px 5px;
    margin: 0;
}
.theme-Divi.woocommerce .component .component_pagination .component_pagination_element {
    padding: 4px 5px;
    margin: 0;
}
.theme-Divi.woocommerce div.product form.cart.composite_form .button.summary_element_select {
    float: none;
    font-size: 0.88rem;
}
.theme-Divi.woocommerce div.product form.cart.composite_form .button.summary_element_select:hover:after {
    line-height: 1.5rem;
}
.theme-Divi.woocommerce .component_option_thumbnail button,
.theme-Divi.woocommerce .woocommerce div.product form.composite_form .component_option_thumbnail .button {
    font-size: 0.88rem;
}
.theme-Divi.woocommerce .component_option_thumbnail button:hover:after,
.theme-Divi.woocommerce .woocommerce div.product form.composite_form .component_option_thumbnail .button:hover:after {
    line-height: 1.5rem;
}
.theme-Divi.woocommerce .component_option_thumbnail.selected button {
    border-radius: 50%;
    width: 0;
    box-sizing: content-box;
    line-height: 1.3em !important;
}
.theme-Divi.woocommerce .component_option_thumbnail.selected:not(.loading) button:after {
    font-family: "FontAwesomeCP" !important;
    font-size: 1em;
    opacity: 1;
    margin-left: 0;
}
.theme-Divi.woocommerce #footer-widgets .footer-widget .widget_composite_summary.widget_position_fixed {
    color: #333;
}
.theme-Divi.woocommerce #footer-widgets .footer-widget .widget_composite_summary.widget_position_fixed li:before {
    display: none;
}
.theme-Divi.woocommerce #footer-widgets .footer-widget .widget_composite_summary.widget_position_fixed li a {
    color: #666;
}
@media screen and (max-width: 1024px) {
    .theme-Divi.woocommerce .widget_composite_summary.widget_position_fixed .composite_button .quantity {
        width: auto;
    }
}
.theme-twentytwenty.woocommerce .elementor-widget-container .widget_composite_summary.widget_position_fixed .composite_summary a.summary_element_select {
    font-size: 1.4rem;
}
.theme-twentytwenty.woocommerce .elementor-widget-container .widget_composite_summary.widget_position_fixed .composite_summary li.summary_element span.summary_element_content,
.theme-twentytwenty.woocommerce .elementor-widget-container .widget_composite_summary.widget_position_fixed .composite_summary li.summary_element h3 {
    font-size: 1.6rem;
}
.theme-twentytwenty.woocommerce .elementor-widget-container .widget_composite_summary.widget_position_fixed .summary_carousel_button,
.theme-twentytwenty.woocommerce .elementor-widget-container .widget_composite_summary.widget_position_fixed .widget_composite_summary_ui_wrapper {
    font-size: 1.4rem;
}
@media screen and (max-width: 1024px) {
    .theme-twentytwenty.woocommerce .elementor-widget-container .widget_composite_summary.widget_position_fixed .composite_add_to_cart_button {
        margin: 0;
    }
}
