/* START */
.pww_connect-product div.product form.cart:not(.pww-cart-form) {
	display: none !important;
}

.pww-alert-message {
	position: relative;
    padding: 10px 20px;
    border-radius: 5px;
    font-weight: 500;
    background-color: #FDF7DF;
    border: 1px solid #FEEC6F;
    color: #C9971C;
    display: flex;
    justify-content: center;
    align-items: center;
    width: fit-content;
    margin: auto;
    margin-bottom: 30px;
}

.pww-error-not-found {
    margin: 20px auto 0;
}

.pww-variation-block-delivery-form.pww-product-uploader-form {
	display: flex;
    max-width: 20%;
    margin: auto;
    align-items: center;
    flex-direction: column;
}
.pww-variation-block-delivery-form.pww-product-uploader-form input {
	margin-bottom: 10px;
}
.pww-product-uploader-item {
    border-radius: 0.75rem;
    background-color: #fff;
    box-shadow: 0 .5rem 1.5rem .5rem rgba(0,0,0,.075);
    position: relative;
    display: flex;
    word-wrap: break-word;
    background-clip: border-box;
    padding: 1rem 1.75rem;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

span.pww-product-uploader-item-title {
    font-size: 20px;
    font-weight: 600;
    color: #000;
    line-height: 1.2;
}

.pww-product-uploader-item-left {
    display: flex;
    flex-direction: column;
}

span.pww-product-uploader-item-desc {
    color: #a1a5b7;
    font-weight: 500;
	font-size: 12px;
}
.dropzone {
    background: white;
    border-radius: 5px;
    border: 2px dashed rgb(0, 135, 247);
    border-image: none;
    min-height: auto;
    position: relative;
}

.dropzone .dz-message {
    margin: 0;
    font-weight: bold;
}

.pww-product-uploader-item-right {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
#pww_connect-print_uploader {
	max-width:80%;
	margin:auto;
}
span.uploaded-files-title {
    font-size: 13px;
    font-weight: 600;
    margin-top: 5px;
    display: block;
}

.uploaded-files-list ul {
    list-style: auto;
    font-size: 13px;
--li-mb: 0px;
    margin-bottom: 0px;
}


/* uploader */
.pww-uploader {
	display: block;
    width: 100%;
	margin-top: 10px;
}
.pww-uploader .filepond--root {
	margin-bottom:0px;
}
.pww-uploader .filepond--drop-label {
	color: #4c4e53;
}
.pww-uploader .filepond--label-action {
	text-decoration-color: #babdc0;
}
.pww-uploader .filepond--panel-root,
.pww-uploader .filepond--panel[data-scalable=true] {
	border-radius: 0px;
	background-color: #edf0f4;
	height: 1em;
}
.pww-uploader .filepond--item-panel {
	background-color: #595e68;
}
.pww-uploader .filepond--drip-blob {
	background-color: #7f8a9a;
}
.pww-product-files-wrap {
	font-size: 12px;
    text-transform: uppercase;
    margin-top: 10px;
    font-weight: 600;
    color: #000;
}
td.product-name .pww-product-files-wrap .pww-product-files-list a {
	font-size: 12px;
    text-transform: lowercase;
}




.pww-config-row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -5px;
    margin-left: -5px;
}

.pww-config-column, .pww-config-column-2 {
    position: relative;
    width: 100%;
    padding-right: 5px;
    padding-left: 5px;
}

td.product-name a.pww-upload-link {
	padding: 8px 25px;
    background-color: #000000;
    color: #fff;
    font-weight: 600;
    margin-top: 5px;
}
td.product-name a.pww-upload-link:hover {
	color: #fff;
}

.pww-config-column {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
}
.pww-config-column.copy-items {
	flex-basis: auto;
}
.pww-config-column-2 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
}

.pww-config-wrapper {
	display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}
.pww-config-variations, .pww-config-sidebar {
	position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}

.pww-variation-block {
	padding: 1.5rem;
	border: 1px solid #eaf0f4;
	box-shadow: 0 0 2px 0 rgba(0,0,0,.12), 0 4px 8px rgba(0,0,0,.04);
	background-color: rgba(255,255,255,1);
    position: relative;
}

/* header */
.pww-variation-block-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.pww-variation-block-header .pww-block-header-title {
	display: flex;
	align-items: center;
}
.pww-variation-block-header .pww-block-header-title .pww-header-title-step {
    background-color: #000000;
    border-radius: 0.5rem;
    text-transform: uppercase;
    margin-right: 15px;
    font-weight: 700;
    padding: 7px;
    line-height: 18px;
    color: #ffffff;
}
.pww-variation-block-selected {
    margin-bottom: 1.5rem;
}
.pww-variation-block-selected .pww-variation-block-header .pww-block-header-title .pww-header-title-step {
    background-color: #62ac29;
}
span.pww-header-title-text {
    font-weight: 500;
    font-size: 14px;
}
.pww-variation-block-header .pww-block-header-title .pww-header-title {
	font-size: 22px;
    font-weight: 600;
    color: #000000;
}
.pww-variation-block-header .pww-block-header-actions a {
	color: #6fabfa;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
}
.pww-variation-block-header .pww-block-header-actions a:hover {
	text-decoration: underline;
}
/* end header */

/* begin content */
.pww-variation-block .pww-variation-block-content {
	margin-top: 1.5rem;
}
.pww-variation-block .pww-variation-block-content .pww-variation-block-text-top {
    margin-bottom: 1rem;
    margin-top: -0.5rem;
}
.pww-variation-block .pww-variation-block-content .pww-variation-block-text-top span,
.pww-variation-block .pww-variation-block-content .pww-variation-block-text-bottom span {
    font-size: 16px;
}
.pww-variation-block .pww-variation-block-content .pww-variation-block-text-bottom {
    margin-top: 1rem;
}
/* delivery */
.pww-variation-block .pww-variation-block-content .pww-variation-block-delivery span.pww-variation-block-delivery-text {
    display: block;
    margin-bottom: 15px;
    font-size: 16px;
}
.pww-variation-block .pww-variation-block-content .pww-variation-block-delivery .pww-variation-block-delivery-form {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
}
.pww-variation-block .pww-variation-block-content .pww-variation-block-delivery .pww-variation-block-delivery-form label {
    margin-bottom: 0px;
    font-weight: 600;
    margin-right: 15px;
}
.pww-variation-block .pww-variation-block-content .pww-variation-block-delivery .pww-variation-block-delivery-form input {
    margin-right: -5px;
    max-width: 100%;
    margin-bottom: 10px;
}
.pww-ajax-action-mess {
    margin-top: 10px;
    color: rgb(96, 166, 50);
    font-size: 16px;
    display: none;
}
.pww-variation-block .pww-variation-block-content textarea {
    min-height: 100px;
    height: 106px;
}
.pww-variation-block .pww-variation-block-content .pww-variation-options {
    position: relative;
}

/* Extras */
.pww-variation-options-extras-holder {
    margin: 1.5rem 0;
}
.pww-variation-options.pww-variation-options-extras {
    margin: 0 -1.5rem;
    background-color: #fafafa;
    padding: 1.5rem;
}
.pww-variation-options-extras-title {
    margin-bottom: 10px;
}
.pww-variation-options-extras-title span {
    font-size: 26px;
    font-weight: 700;
    color: #000000;
}
.pww-variation-extras-title span {
    font-size: 18px;
    font-weight: 600;
    color: #000;
}
.pww-variation-options-extras-wrapper {
    margin: 10px 0;
}

/* Copies */
.pww-variation-block-quantity .pww-variation-block-text-bottom {
    margin-bottom: 0px;
}
.pww-variation-options-copies-holder {
    margin: 1.5rem 0;
}
.pww-variation-options-copies-wrapper {
    margin: 0 -20px;
}
.pww-variation-options-copies-title {
    margin-bottom: 10px;
}
.pww-variation-options-copies-title span {
    font-size: 26px;
    font-weight: 700;
    color: #000000;
}
.pww-variation-options-copies-title small {
    margin-left: 5px;
    font-size: 14px;
}

.pww-variation-options-copies-old-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.pww-variation-options-copies-old-wrapper .pww-variation-options-copies-old-holder {
    flex: 1;
}
.pww-variation-options-copies-old-holder .pww-variation-options-copies-title {
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
}
.pww-variation-options-copies-old-holder .pww-variation-options-copies-title small {
    margin-left: 0px;
}
.pww-variation-block .pww-variation-options-copies-old .pww-variation-block-content {
    margin-top: 0.5rem;
}
.pww-variation-options.pww-variation-options-copies-old {
    /* margin-left: -1.5rem;
    margin-right: -1.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    background-color: #fafafa;
    padding-top: 0.5rem;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem; */
}

.pww-copies-header {
    background-color: #000000;
    color: #ffffff;
}
.pww-copies-header .pww-copies-header-title {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.5rem;
}
.pww-copies-header .pww-copies-header-title span {
    font-size: 16px;
    font-weight: 600;
}
.pww-copies-header-delivery-title {
    padding: 1rem;
    text-align: center;
}
.pww-copies-header-delivery-title span.pww-variation-copies-delivery-top-text {
    font-size: 14px;
}
.pww-copies-header-delivery-title span.pww-variation-copies-delivery-bottom-text {
    font-size: 22px;
    display: block;
    font-weight: bold;
}
.pww-copies-options {
    border-bottom: 1px solid #fafafa;
    background: #fff;
	position: sticky;
	min-height: 70px;
}
.pww-copies-options:nth-child(odd) {
    background: #e5e5e5;
}

.pww-copies-option-quantity {
    display: flex;
    background: #e5e5e5;
    text-align: center;
    justify-content: center;
    align-items: center;
}

.pww-copies-option-quantity span {
    font-size: 16px;
    font-weight: 600;
    color: #000;
}

.pww-copies-option-price-wrapper {
    position: relative;
    cursor: pointer;
    font-weight: 400;
    display: flex;
	flex-direction: column;
    justify-content: space-between;
    align-items: center;
    border-left: 1px solid #fafafa;
    color: #000000;
}
.pww-copy-delivery-date {
	font-size: 16px;
    font-weight: 600;
    margin-bottom: -15px;
    padding-top: 10px;
}
.pww-copies-option-price-wrapper:hover {
    background-color: #62ac29;
    color: #fff;
    font-weight: 600;
}
.pww-copies-option-price-wrapper.not-clickable:hover {
	background-color: transparent !important;
	cursor: not-allowed;
}
.pww-copies-option-price-wrapper:hover .pww-copies-option-price,
.pww-copies-option-price-wrapper:hover .pww-copies-option-price-incl {
    color: #ffffff;
}

.pww-copies-option-price {
    text-align: center;
    display: flex;
    flex: 1;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    font-size: 16px;
    padding: 10px 0;
}

span.pww-copies-option-price-text {
    font-size: 12px;
    font-weight: 400;
    margin-left: 5px;
}
/* End copies */

.pww-variation-option {
    background-color: #ffffff;
    border: 1px solid #eaf0f4;
    border-radius: 0.5rem;
    box-shadow: 0 0 2px rgba(0,0,0,.12), 0 4px 8px rgba(0,0,0,.04);
    padding: 1rem;
    display: block;
    min-height: 1.5rem;
    margin-bottom: 0.5rem;
    cursor: pointer;
}
.pww-variation-option:hover {
    border-color: #88919e;
}
.pww-variation-option.pww-variation-warning {
    border-color: #FFA500;
}
.pww-variation-option-image {
    margin-top: -1rem;
    margin-left: -1rem;
    margin-right: -1rem;
    margin-bottom: 1rem;
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
    height: 150px;
    overflow: hidden;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: top center;
}
.pww-variation-option .pww-variation-option-highlight {
    margin: -1rem -1rem 1rem -1rem;
    background-color: #000;
    border-radius: 0.5rem 0.5rem 0 0;
    line-height: 18px;
    padding: 8px 16px;
    position: relative;
    color: #fff;
    text-transform: uppercase;
    text-align: center;
    font-weight: 600;
}
.pww-variation-option .pww-variation-option-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}
.pww-variation-option .pww-variation-option-content .pww-variation-option-content-left {
    display: flex;
    align-items: center;
}
.pww-variation-option .pww-variation-option-content .pww-variation-option-content-right {
    display: flex;
    align-items: center;
}
.pww-variation-option .pww-variation-option-content .pww-variation-option-content-right .pww-variation-option-price {
    color: #62ac29;
    font-weight: 700;
    margin-right: 10px;
    font-size: 16px;
}
.pww-variation-option .pww-variation-option-content .pww-variation-option-content-right .pww-variation-option-help {
    width: 20px;
    height: 20px;
    background: #000;
    color: #ffffff;
    border-radius: 100%;
    text-align: center;
    font-size: 14px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-weight: 700;
}
.pww-variation-option .pww-variation-option-content .pww-variation-option-content-right .pww-variation-option-help:hover {
    cursor: help;
}

.pww-variation-option .pww-variation-option-content label {
    font-size: 16px;
    font-weight: 600;
    pointer-events: none;
    margin-right: 15px;
    color: #000000;
    cursor: pointer;
    display: flex;
	align-items: center;
    margin-bottom: 0px;
    vertical-align: middle;
}

.pww-variation-option.pww-variation-option-delivery .pww-variation-option-content label {
    font-size: 26px;
    text-transform: uppercase;
}
.pww-variation-option.pww-variation-option-delivery .pww-help-icon {
    width: 18px;
    height: 18px;
    background: #000;
    color: #fff;
    border-radius: 100%;
    font-size: 14px;
    font-weight: 700;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    cursor: help;
}
.pww-variation-option-footer-list {
    background-color: #fafafa;
    margin-left: -1rem;
    margin-right: -1rem;
    margin-bottom: -1rem;
    margin-top: 0.5rem;
    padding: 1rem;
    border-bottom-left-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
}
.pww-variation-option-footer-list .pww-variation-option-footer-item {
    display: flex;
    justify-content: space-between;
}
.pww-variation-option-footer-list .pww-variation-option-footer-item span.pww-list-item-name {
    font-weight: 600;
}

.pww-variation-option .pww-variation-option-content input.pww-variation-option-check-input {
    margin-left: 0;
    margin-right: 15px;
    min-width: 1.25rem;
    min-height: 1.25rem !important;
    border-radius: 50% !important;
    float: left;
    pointer-events: none;
    width: 1em;
    height: 1em;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 0.125rem solid #c9d7df;
    appearance: none;
    -webkit-print-color-adjust: exact;
}

.pww-variation-option .pww-variation-option-content .pww-variation-option-color {
	width: 28px;
    height: 28px;
    border-radius: 50px;
    margin-right: 12px;
    border: 1px solid #eaf0f4;
}

.pww-config-row.pww-variation-options-grid-2 .pww-config-column {
    flex: 0 0 50%;
}

.pww-variation-options.pww-variation-options-grid-3 {
    display: flex;
    flex-wrap: wrap;
    margin-left: -5px;
    margin-right: -5px;
}
.pww-variation-options.pww-variation-options-grid-3 .pww-variation-option {
	flex: 0 0 calc(33.33% - 10px);
	overflow: hidden;
    margin-left: 5px;
    margin-right: 5px;
}

.pww-config-sidebar .pww-variation-block-content .pww-variation-options {
    margin-bottom: 1.5rem;
    position: relative;
}
.pww-variation-option .pww-variation-option-footer {
    margin-bottom: -1rem;
    margin-top: 5px;
    background-color: #fafafa;
    margin-left: -1rem;
    margin-right: -1rem;
    border-radius: 0 0 0.5rem 0.5rem;
    padding: 0.5rem 1rem;
}

.pww-variation-option-box {
    background-color: #f3f3f3;
    margin-left: -1rem;
    margin-right: -1rem;
    margin-bottom: -1rem;
    margin-top: 1rem;
    border-radius: 0 0 0.5rem 0.5rem;
    padding: 1rem;
}
.pww-variation-option-box .pww-variation-option-form {
    display: flex;
    align-items: center;
    max-width: 60%;
}
.pww-variation-option-box.open-form .pww-variation-option-form {
    max-width: 100%;
    margin-top: 10px;
}
.pww-variation-option-box .pww-variation-option-form input {
    background-color: #ffffff;
    padding: 5px;
}
.pww-variation-option-box .pww-variation-option-form span {
    margin: 0 10px;
    font-size: 16px;
    font-weight: 600;
    color: #000;
    cursor: text;
}
.pww-variation-options.pww-variation-options-grid-3 .pww-variation-option-content {
    flex-direction: column;
    align-items: flex-start;
}
.pww-variation-options.pww-variation-options-grid-3 .pww-variation-option-footer {
    margin-top: 0px;
    padding-top: 0px;
    background-color: unset;
}
.pww-variation-options.pww-variation-options-grid-3 .pww-variation-option-box .pww-variation-option-form {
    max-width: 100%;
}
.pww-variation-form-error,
.pww-variation-option-error {
    margin-top: 15px;
    padding: 10px 15px;
    border: 2px solid #E6001E;
    border-radius: 0.5rem;
    cursor: text;
    background-color: white;
}
.pww-variation-form-error span,
.pww-variation-option-error span {
    color: #000;
    font-weight: 500;
}

.pww-variation-option.pww-variation-checked {
    border-color: #60a632;
    background-color: rgb(96, 166, 50,.1);
}
.pww-variation-option.pww-variation-checked input.pww-variation-option-check-input {
    background-color: #60a632;
}

/* end content */

.pww-modal {
    padding: 1.5rem 2rem;
}
.pww-modal > span {
    display: block;
    font-size: 16px;
}
.pww-modal .pww-modal-title{
    font-size: 26px;
    font-weight: 600;
    color: #000;
}
.pww-modal .pww-variation-options {
    margin-top: 0.5rem;
    margin-bottom: 1rem;
}
.pww-solution-wrapper {
    margin-top: 1rem;
    margin-bottom: 1rem;
}
.pww-solution-wrapper .pww-solution-holder {
    background-color: #fff;
    border: 1px solid #eaf0f4;
    margin-bottom: 0.5rem;
    border-radius: 0.5rem;
    box-shadow: 0 0 2px rgba(0,0,0,.12), 0 4px 8px rgba(0,0,0,.04);
    padding: 1rem;
    font-size: 16px;
    font-weight: 600;
    color: #000;
    cursor: pointer;
}

.pww-model-close-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #000000;
    border-color: #000000;
    color: #fff;
    border-radius: 0.5rem;
    font-weight: 600;
    line-height: 1.5rem;
    padding: 0.75rem 1rem;
    font-size: 1.125rem;
    text-transform: inherit;
}
.pww-model-close-btn:hover {
    background-color: #2b2f34;
    color: #ffffff;
    border-color: #2b2f34;
    transform: scale(1.025);
    border: 1px solid #000;
    padding: calc(0.75rem - 1px) calc(1rem - 1px);
}

/* sidebar */
.pww-sidebar-block {
    display: flex;
    flex-direction: column;
    padding: 1.5rem;
    background-color: #ffffff;
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: #eaf0f4;
    border-radius: 0.5rem;
    box-shadow: 0 4px 8px rgba(0,0,0,.04), 0 0 2px rgba(0,0,0,.12);
    position: relative;
}
span.pww-sidebar-block-title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 10px;
    color: #000;
}

span.pww-sidebar-block-intro-text {
    margin-bottom: 15px;
}

.pww-sidebar-cart-summary-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
}

span.pww-sidebar-cart-summary-price-text {
    font-size: 22px;
    font-weight: 600;
    color: #000000;
}

span.pww-sidebar-cart-summary-price {
    font-size: 22px;
}

.pww-variation-block-button-bottom .pww-button,
.pww-sidebar-block .pww-button,
.pww-variation-option .pww-button,
.pww-variation-block-delivery-form .pww-button {
    background-color: #000000;
    border-color: #000000;
    color: #fff;
    border-radius: 0.5rem;
    font-weight: 600;
    line-height: 1.5rem;
    padding: 0.75rem 1rem;
    font-size: 1.125rem;
    text-transform: inherit;
}
.pww-variation-block-button-bottom .pww-button:hover,
.pww-sidebar-block .pww-button:hover,
.pww-variation-option .pww-button:hover,
.pww-variation-block-delivery-form .pww-button:hover {
    background-color: #2b2f34;
    color: #ffffff;
    border-color: #2b2f34;
    transform: scale(1.025);
    border: 1px solid #000;
    padding: calc(0.75rem - 1px) calc(1rem - 1px);
}
.pww-variation-block-button-bottom .pww-button.pww-color-green,
.pww-sidebar-block .pww-button.pww-color-green,
.pww-variation-option .pww-button.pww-color-green,
.pww-variation-block-delivery-form .pww-button.pww-color-green {
    background-color: #60a632;
    border-color: #60a632;
    color: #fff;
}
.pww-variation-block-button-bottom .pww-button:hover.pww-color-green,
.pww-sidebar-block .pww-button:hover.pww-color-green,
.pww-variation-option .pww-button:hover.pww-color-green,
.pww-variation-block-delivery-form .pww-button:hover.pww-color-green {
    background-color: #3d8705;
    border: 1px solid #3d8705;
    transform: scale(1.025);
    padding: calc(0.75rem - 1px) calc(1rem - 1px);
}
.pww-button-add-to-cart {
    margin-top: 1rem;
    margin-bottom: 0.5rem;
	width: 100%;
}

span.pww-shopping-cart-list-product-title {
    font-size: 18px;
    font-weight: 600;
    color: #000;
}
.pww-shopping-cart-list-item {
    display: flex;
    justify-content: space-between;
    font-size: 16px;
    color: #000;
	flex-direction: column;
}
.pww-shopping-cart-list-item .step-name {
	display: flex;
    justify-content: space-between;
    font-weight: 600;
}
.pww-shopping-cart-list-item-title span {
    font-size: 18px;
    font-weight: 600;
    color: #000;
}

.pww-sidebar-call-to-action {
    margin-top: 1.5rem;
    background-color: #f1f6f9;
}
hr.pww-line {
    height: 1px;
    color: #eaf0f4;
    opacity: 1;
    max-width: 100%;
    margin: 1rem 0;
}


.pww-tooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black;
}
.pww-tooltip-text {
    visibility: hidden;
    width: 120px;
    background-color: black;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    border-radius: 6px;
    position: absolute;
    z-index: 1;
    bottom: 100%;
    left: 50%;
    margin-left: -60px;
}

/* Show the tooltip text when you mouse over the tooltip container */
.pww-tooltip:hover .pww-tooltip-text {
    visibility: visible;
}

.pww-border-radius {
	border-radius: 0.5rem;
}

/* Cart page */
dl.pww_connect-variation_list {
    list-style: none outside;
    text-transform: uppercase;
    font-size: 12px;
    margin-top: 5px;
    margin-bottom: 0px;
}
dt.pww_connect-variation_list-name {
    clear: both;
    display: inline-block;
    float: left;
    font-weight: 400;
    list-style: none outside;
    margin-right: 0.25em;
    color: #000;
}
dd.pww_connect-variation_list-value {
    margin-bottom: 0px;
    font-weight: 600;
    color: #000;
}
td.product-name a.pww_connect-link {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 600;
}

/* Loader */
.pww-loader-wrapper {
    background-color: rgba(0,0,0,0.2);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    border-radius: var(--product-configurator-border-radius);
    cursor: not-allowed;
    z-index: 9;
}
.loading {
    --speed-of-animation: 0.9s;
    --gap: 6px;
    --first-color: #4c86f9;
    --second-color: #49a84c;
    --third-color: #f6bb02;
    --fourth-color: #f6bb02;
    --fifth-color: #2196f3;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100px;
    gap: 6px;
    height: 100px;
}

.loading span {
    width: 4px;
    height: 50px;
    background: var(--first-color);
    animation: scale var(--speed-of-animation) ease-in-out infinite;
}

.loading span:nth-child(2) {
    background: var(--second-color);
    animation-delay: -0.8s;
}

.loading span:nth-child(3) {
    background: var(--third-color);
    animation-delay: -0.7s;
}

.loading span:nth-child(4) {
    background: var(--fourth-color);
    animation-delay: -0.6s;
}

.loading span:nth-child(5) {
    background: var(--fifth-color);
    animation-delay: -0.5s;
}

@keyframes scale {
    0%, 40%, 100% {
    transform: scaleY(0.05);
    }

    20% {
    transform: scaleY(1);
    }
}

/* Loader V2 */
.pww-loader-v2 {
    width: 48px;
    height: 48px;
    margin: auto;
    position: relative;
}

.pww-loader-v2:before {
    content: '';
    width: 48px;
    height: 5px;
    background: #f0808050;
    position: absolute;
    top: 60px;
    left: 0;
    border-radius: 50%;
    animation: shadow324 0.5s linear infinite;
}

.pww-loader-v2:after {
    content: '';
    width: 100%;
    height: 100%;
    background: #f08080;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 4px;
    animation: jump7456 0.5s linear infinite;
}

@keyframes jump7456 {
    15% {
        border-bottom-right-radius: 3px;
    }

    25% {
        transform: translateY(9px) rotate(22.5deg);
    }

    50% {
        transform: translateY(18px) scale(1, .9) rotate(45deg);
        border-bottom-right-radius: 40px;
    }

    75% {
        transform: translateY(9px) rotate(67.5deg);
    }

    100% {
        transform: translateY(0) rotate(90deg);
    }
}

@keyframes shadow324 {
    0%, 100% {
        transform: scale(1, 1);
    }

    50% {
        transform: scale(1.2, 1);
    }
}

/* Loader V3 */
.pww-loader-v3 {
    width: 50px;
    height: 50px;
    position: relative;
    z-index: 1;
    transform: translateX(-50%);
  }
  
.pww-loader-v3::before, 
.pww-loader-v3::after {
    content: '';
    position: absolute;
    width: inherit;
    height: inherit;
    border-radius: 50%;
    mix-blend-mode: multiply;
    animation: rotate92523 2s infinite cubic-bezier(0.77, 0, 0.175, 1);
}

.pww-loader-v3::before {
    background-color: #75e2ff;
}

.pww-loader-v3::after {
    background-color: #ff8496;
    animation-delay: 1s;
}

@keyframes rotate92523 {
    0%, 100% {
        left: 35px;
    }

    25% {
        transform: scale(.3);
    }

    50% {
        left: 0%;
    }

    75% {
        transform: scale(1);
    }
}

/* Media */
@media (min-width: 576px) {
	.pww-config-variations {
		flex: 0 0 100%;
		max-width: 100%;
	}
	.pww-config-sidebar {
		flex: 0 0 100%;
		max-width: 100%;
	}
}

@media (min-width: 992px) {
    .pww-config-column-2 {
        -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }
}

@media (min-width: 1200px) {
	.pww-config-variations {
		flex: 0 0 66.666667%;
		max-width: 66.666667%;
	}
	.pww-config-sidebar {
    	flex: 0 0 33.333333%;
    	max-width: 33.333333%;
	}
}

/* Loader V4 */
.pww-loader-v4 .typewriter {
    --blue: #5C86FF;
    --blue-dark: #275EFE;
    --key: #fff;
    --paper: #EEF0FD;
    --text: #D3D4EC;
    --tool: #FBC56C;
    --duration: 3s;
    position: relative;
    -webkit-animation: bounce05 var(--duration) linear infinite;
    animation: bounce05 var(--duration) linear infinite;
  }
  
  .pww-loader-v4 .typewriter .slide {
    width: 92px;
    height: 20px;
    border-radius: 3px;
    margin-left: 14px;
    transform: translateX(14px);
    background: linear-gradient(var(--blue), var(--blue-dark));
    -webkit-animation: slide05 var(--duration) ease infinite;
    animation: slide05 var(--duration) ease infinite;
  }
  
  .pww-loader-v4 .typewriter .slide:before, .pww-loader-v4 .typewriter .slide:after,
  .pww-loader-v4 .typewriter .slide i:before {
    content: "";
    position: absolute;
    background: var(--tool);
  }
  
  .pww-loader-v4 .typewriter .slide:before {
    width: 2px;
    height: 8px;
    top: 6px;
    left: 100%;
  }
  
  .pww-loader-v4 .typewriter .slide:after {
    left: 94px;
    top: 3px;
    height: 14px;
    width: 6px;
    border-radius: 3px;
  }
  
  .pww-loader-v4 .typewriter .slide i {
    display: block;
    position: absolute;
    right: 100%;
    width: 6px;
    height: 4px;
    top: 4px;
    background: var(--tool);
  }
  
  .pww-loader-v4 .typewriter .slide i:before {
    right: 100%;
    top: -2px;
    width: 4px;
    border-radius: 2px;
    height: 14px;
  }
  
  .pww-loader-v4 .typewriter .paper {
    position: absolute;
    left: 24px;
    top: -26px;
    width: 40px;
    height: 46px;
    border-radius: 5px;
    background: var(--paper);
    transform: translateY(46px);
    -webkit-animation: paper05 var(--duration) linear infinite;
    animation: paper05 var(--duration) linear infinite;
  }
  
  .pww-loader-v4 .typewriter .paper:before {
    content: "";
    position: absolute;
    left: 6px;
    right: 6px;
    top: 7px;
    border-radius: 2px;
    height: 4px;
    transform: scaleY(0.8);
    background: var(--text);
    box-shadow: 0 12px 0 var(--text), 0 24px 0 var(--text), 0 36px 0 var(--text);
  }
  
  .pww-loader-v4 .typewriter .keyboard {
    width: 120px;
    height: 56px;
    margin-top: -10px;
    z-index: 1;
    position: relative;
  }
  
  .pww-loader-v4 .typewriter .keyboard:before, .pww-loader-v4 .typewriter .keyboard:after {
    content: "";
    position: absolute;
  }
  
  .pww-loader-v4 .typewriter .keyboard:before {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 7px;
    background: linear-gradient(135deg, var(--blue), var(--blue-dark));
    transform: perspective(10px) rotateX(2deg);
    transform-origin: 50% 100%;
  }
  
  .pww-loader-v4 .typewriter .keyboard:after {
    left: 2px;
    top: 25px;
    width: 11px;
    height: 4px;
    border-radius: 2px;
    box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    -webkit-animation: keyboard05 var(--duration) linear infinite;
    animation: keyboard05 var(--duration) linear infinite;
  }
  
  @keyframes bounce05 {
    85%, 92%, 100% {
      transform: translateY(0);
    }
  
    89% {
      transform: translateY(-4px);
    }
  
    95% {
      transform: translateY(2px);
    }
  }
  
  @keyframes slide05 {
    5% {
      transform: translateX(14px);
    }
  
    15%, 30% {
      transform: translateX(6px);
    }
  
    40%, 55% {
      transform: translateX(0);
    }
  
    65%, 70% {
      transform: translateX(-4px);
    }
  
    80%, 89% {
      transform: translateX(-12px);
    }
  
    100% {
      transform: translateX(14px);
    }
  }
  
  @keyframes paper05 {
    5% {
      transform: translateY(46px);
    }
  
    20%, 30% {
      transform: translateY(34px);
    }
  
    40%, 55% {
      transform: translateY(22px);
    }
  
    65%, 70% {
      transform: translateY(10px);
    }
  
    80%, 85% {
      transform: translateY(0);
    }
  
    92%, 100% {
      transform: translateY(46px);
    }
  }
  
  @keyframes keyboard05 {
    5%, 12%, 21%, 30%, 39%, 48%, 57%, 66%, 75%, 84% {
      box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }
  
    9% {
      box-shadow: 15px 2px 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }
  
    18% {
      box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 2px 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }
  
    27% {
      box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 12px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }
  
    36% {
      box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 12px 0 var(--key), 60px 12px 0 var(--key), 68px 12px 0 var(--key), 83px 10px 0 var(--key);
    }
  
    45% {
      box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 2px 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }
  
    54% {
      box-shadow: 15px 0 0 var(--key), 30px 2px 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }
  
    63% {
      box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 12px 0 var(--key);
    }
  
    72% {
      box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 2px 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 10px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }
  
    81% {
      box-shadow: 15px 0 0 var(--key), 30px 0 0 var(--key), 45px 0 0 var(--key), 60px 0 0 var(--key), 75px 0 0 var(--key), 90px 0 0 var(--key), 22px 10px 0 var(--key), 37px 12px 0 var(--key), 52px 10px 0 var(--key), 60px 10px 0 var(--key), 68px 10px 0 var(--key), 83px 10px 0 var(--key);
    }
  }

/* END */



/* Start official */
.pww-variation-row {
	display: flex;
    flex-wrap: wrap;
    margin-right: calc(0.5*0.5rem);
    margin-left: calc(-0.5*0.5rem);
}
.pww-variation-row .pww-variation-field {
    flex: 0 0 auto;
    width: 50%;
    padding-right: calc(0.5rem*.5);
    padding-left: calc(0.5rem*.5);
}

.pww-button {
	background-color: #60a632;
    border-color: #60a632;
    color: #fff;
    border-radius: 0.5rem;
    font-weight: 600;
    line-height: 1.5rem;
    padding: 0.75rem 1rem;
    font-size: 1.125rem;
    text-transform: inherit;
    min-height: 42px;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    outline: none;
    border: 0px solid transparent;
    box-shadow: none;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    text-shadow: none;
	cursor: pointer;
}
.pww-button:hover {
	background-color: #3d8705;
    border: 1px solid #3d8705;
    transform: scale(1.025);
    padding: calc(0.75rem - 1px) calc(1rem - 1px);
}
.pww-button.pww-button-small,
.pww-variation-block-button-bottom .pww-button.pww-button-small {
    padding: 0.5rem .75rem;
    font-size: 1rem;
    line-height: 1.25rem;
    background-color: #000;
    border-color: #000;
    color: #fff;
    border-radius: 0.5rem;
    font-weight: 600;
    text-transform: inherit;
}
.pww-button.pww-button-small:hover,
.pww-variation-block-button-bottom .pww-button.pww-button-small:hover {
    padding: calc(0.5rem - 1px) calc(0.75rem - 1px);
}
.pww-variation-block-button-bottom {
    display: flex;
    justify-content: end;
}
/* End official */



.pww_connect-hide {
    display: none;
}
.hide {
    display: none !important;
}
.row-cols-lg-2>* {
    flex: 0 0 auto;
    width: 33%;
}
.w-100 {
    width: 100%;
}
.rounded-4 {
    border-radius: 0.5rem;
}
.bg-white {
    background-color: rgba(255,255,255,1);
}
.align-middle {
    vertical-align: middle;
}
.position-relative {
    position: relative;
}

/* Sidebar */
.shopping-cart {
    box-shadow: 0 4px 8px rgba(0,0,0,.04), 0 0 2px rgba(0,0,0,.12);
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: #eaf0f4;
}
.shopping-cart .price {
    line-height: 1.5rem;
    font-size: 1rem;
    white-space: nowrap;
}
.shopping-cart .price.price-sup {
    margin-right: -17px;
}
.shopping-cart .price__main {
    font-size: 2rem;
}
.price .price__main--small {
    transform: translate(3px,-3px);
}
.price__main--small {
    font-size: 1.5rem;
}
.price .price-decimal {
    transform: translate(-19px,-11px);
}
.shopping-cart .title {
	display:flex;
    line-height: 1.5rem;
    font-size: 1rem;
    font-weight: inherit;
	margin-bottom:10px;
}
.shopping-cart h3 {
    line-height: 2rem;
    font-size: 1.5rem;
    margin-bottom: 0px;
}
.shopping-cart h5 {
    font-weight: 600;
    line-height: 1.25rem;
    font-size: 1.125rem;
    margin-bottom: 0px;
}
.shopping-cart hr {
    height: 1px;
    color: #eaf0f4;
    opacity: 1;
    margin: 1rem 0;
    max-width: 100%;
}

/* Call to action */
.call-to-action {
    box-shadow: 0 4px 8px rgba(0,0,0,.04), 0 0 2px rgba(0,0,0,.12);
    border: 1px solid #c9d7df;
    position: relative;
    top: -1px;
    z-index: 2;
}
.call-to-action .call-to-action-description {
    font-size: .975rem;
    line-height: 1.313rem;
}
.shopping-cart .button,
.call-to-action .button,
.pww-variation-block-button-bottom .pww-button,
.pww-button {
    background-color: #60a632;
    border-color: #60a632;
    color: #fff;
    border-radius: 0.5rem;
    font-weight: 600;
    line-height: 1.5rem;
    padding: 0.75rem 1rem;
    font-size: 1.125rem;
    text-transform: inherit;
    box-shadow: 0;
}
.shopping-cart .button:hover,
.call-to-action .button:hover {
    background-color: #3d8705;
    border: 1px solid #3d8705;
    transform: scale(1.025);
    padding: calc(.75rem - 1px) calc(1rem - 1px);
}
.shopping-cart .button.button-default {
    color: #fff;
    background-color: #000;
    border-color: #000;
}
.shopping-cart .button.button-default:hover {
    background-color: #2b2f34;
    border-color: #2b2f34;
    transform: scale(1.025);
    border: 1px solid #000;
    padding: calc(0.75rem - 1px) calc(1rem - 1px);
}

/* Contract */
.contract-fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
    margin-bottom: 1.5rem;
}
.step-badge {
    background-color: #ffb600;
    border-radius: 0.3rem;
    text-transform: uppercase;
    margin-right: 0.5rem;
    font-weight: 700;
    padding: 8px;
    line-height: 18px;
    color: #fff;
}
.step-badge .step-number {
    padding-right: 0;
    padding-left: 0;
    margin-left: 0.25rem;
}
.form-check {
    background-color: #fff;
    border: 1px solid #eaf0f4;
    border-radius: 0.5rem;
    box-shadow: 0 0 2px rgba(0,0,0,.12), 0 4px 8px rgba(0,0,0,.04);
    padding: 0.75rem 1rem 0.75rem 3rem;
    display: block;
    min-height: 1.5rem;
    margin-bottom: 0.5rem;
    padding-left: 1.5rem;
}
.form-check:not(.disabled) {
    cursor: pointer;
}
.form-check.checked {
    padding: calc(1rem - 2px);
    box-shadow: none;
    border: 3px solid #009de8;
}
.form-check:hover:not(.disabled):not(.checked):not(.focused) {
    border-color: #88919e;
}
.selector-highlight {
    line-height: 18px;
    margin: -1rem -1rem 0 -1rem;
    border-radius: 0.5rem 0.5rem 0 0;
    padding: 8px 16px;
    z-index: 2;
    position: relative;
    background-color: rgb(0,0,0,1);
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
}
.selector.form-check.checked .selector-highlight, .selector.form-check.focused .selector-highlight, .selector.form-check.checked.focused .selector-highlight {
    margin: calc(-1rem + 2px) calc(-1rem + 2px) 0 calc(-1rem + 2px);
    padding: 6px 14px 4px;
    border-radius: 0.3125rem 0.3125rem 0 0;
}
.selector .lip {
    width: 16px;
    height: 16px;
    background: #000;
    transform: rotate(45deg);
    margin: -0.5rem auto 0.5rem auto;
}
.form-check-input {
    margin-left: 0;
    margin-right: 10px;
    min-width: 1.25rem;
    min-height: 1.25rem;
    margin-top: 0.125rem !important;
    border-radius: 50%;
    float: left;
    pointer-events: none;
    width: 1em;
    height: 1em;
    vertical-align: top;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 0.125rem solid #c9d7df;
    appearance: none;
    -webkit-print-color-adjust: exact;
    margin-inline-end: 10px !important;
}
.form-check-label {
    pointer-events: none;
    font-size: 1.125rem;
    margin-right: 0.5rem;
    color: #000;
    cursor: pointer;
    display: inline-block;
    margin-bottom: 0px;
}
.contract-field-description p {
    margin-bottom: 0px;
    font-size: 16px;
}
.price.price-sup {
    line-height: 1.5rem;
    margin-right: -17px;
    white-space: nowrap;
}
fieldset .row {
    margin-left: calc(-0.5*0.5rem);
    margin-right: calc(-0.5*0.5rem);
}
fieldset .row>* {
    padding-right: calc(0.5rem*.5);
    padding-left: calc(0.5rem*.5);
}
.extras-child-title {
	display: block;
    font-size: 1.25rem;
    font-weight: 600;
    color: #000;
    margin: 10px 0px;
}

.price__main {
    font-size: 2rem;
    line-height: 1.5rem;
}

/* Font */
.fw-bolder {
    font-weight: 600;
}
.fw-normal {
    font-weight: 400;
}
.text-gray-400 {
    color: #88919e !important;
}
.text-gray-500-dark {
    color: #6a7180;
}
.text-gray-800 {
    color: #2b2f34 !important;
}
.fs-6 {
    font-size: 1rem;
}

/* Margin */
.mt-2 {
    margin-top: 0.5rem;
}
.mt-3 {
    margin-top: 1rem;
}
.mt-4 {
    margin-top: 1.5rem;
}
.me-3 {
    margin-right: 1rem;
}
.mb-0 {
    margin-bottom: 0px;
}
.mb-2 {
    margin-bottom: 0.5rem;
}
.mb-3 {
    margin-bottom: 1rem;
}
.mb-4 {
    margin-bottom: 1.5rem;
}
.me-auto {
    margin-right: auto;
}
.ms-auto {
    margin-left: auto;
}
.my-auto {
    margin-top: auto;
    margin-bottom: auto;
}

/* Shadow */
.shadow-4 {
    box-shadow: 0 0 2px 0 rgba(0,0,0,.12), 0 4px 8px rgba(0,0,0,.04);
}

/* Padding */
.p {
    padding: 0;
}
.p-3 {
    padding: 1rem;
}
.p-4 {
    padding: 1.5rem;
}
.ps-5 {
    padding-left: 2rem;
}
.pb-4 {
    padding-bottom: 1.5rem;
}
.pt-2 {
    padding-top: 0.5rem;
}

/* Misc */
.d-inline-block {
    display: inline-block;
}
.bg-gray-100 {
    background-color: #f1f6f9;
}
.border {
    border: 1px solid #c9d7df;
}
.border-gray-200 {
    border-color: #eaf0f4;
}

/* Flex */
.d-flex {
    display: flex;
}
.flex-column {
    flex-direction: column;
}
.justify-content-between {
    justify-content: space-between;
}
.align-items-center {
    align-items: center;
}
.d-inline {
    display: inline;
}

@media (min-width: 768px) {
    .p-lg-4 {
        padding: 1.5rem;
    }
    .d-lg-inline {
        display: inline;
    }
}

.pww-product-workfiles {
	position: relative;
    padding: 10px 20px;
    border-radius: 5px;
    font-weight: 500;
    background-color: #FDF7DF;
    border: 1px solid #FEEC6F;
    color: #C9971C;
    margin: auto;
	margin-top:10px;
	margin-bottom:0px;
}

.pww-product-workfiles-wrap {
	display: flex;
    margin-top: 5px;
}

.pww-variation-square-meters-total {
	padding-top: 5px;
}
.pww-variation-square-meters-total span {
	font-weight: 600;
}

/* Branding Hub product styles */
.pww-branding-hub-product-wrapper {
	width: 900px;
	margin: auto;
}
.pww-brandhub-product-options {
	margin-top: 1.5rem;
}
.pww-brandhub-product-option {
    background: #ffffff;
    border: 1px solid #eaf0f4;
    padding: 1rem;
    border-radius: 0.5rem;
    box-shadow: 0 0 2px rgba(0,0,0,.12), 0 4px 8px rgba(0,0,0,.04);
    min-height: 1.5rem;
    margin-bottom: 0.5rem;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
}
.pww-brandhub-product-option .pww-brandhub-product-option-title span {
	font-size: 16px;
    font-weight: 600;
    pointer-events: none;
    color: #000;
    cursor: pointer;
}
.pww-brandhub-product-option-action-button {
	background-color: #000;
    color: #fff;
    border-radius: 0.5rem;
    font-weight: 600;
    line-height: 1.5rem;
    padding: 0.5rem 1rem;
    text-transform: uppercase;
    font-size: 16px;
	cursor: pointer;
}
.pww-brandhub-product-option-action-button a {
	color: #fff;
}
.pww-brandhub-product-option-action-button a:hover {
	color: #fff;
}
.pww-brandhub-product-option-action-button:hover {
    transform: scale(1.025);
    padding: calc(0.5rem + 1px) calc(1rem + 1px);
}
.pww-brandhub-product-option-action-button.pww-action-select {
	background-color: #33b249;
    width: 100%;
    text-align: center;
}

.pww-btn-has-more-wrapper,
.pww-copy-select-wrapper {
	margin-top: 20px;
	text-align: center;
}

.pww-product-ready-files {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.pww-product-ready-file {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    min-height: 40px;
    width: calc(25% - 8px);
}
.pww-product-ready-file-title-wrapper {
    padding: 10px 0;
}
.pww-brandhub-product-option-title {
	font-weight: 600;
}
.pww-brandhub-product-option-actions {
    display: flex;
}

select.pww-copy-select-changer {
    max-width: 250px;
    border-radius: 0.5rem;
    background-color: #000;
    color: #fff;
    font-weight: 600;
    font-size: 1rem;
}




.pww-config-row.pww-group-header {background-color: #000000;color: #fff;}

.pww-config-row.pww-group-header div {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.5rem;
}

.pww-config-row.pww-group-header div span {
    font-size: 18px;
    font-weight: bold;
    display: block;
}

.pww-variation-group-options-wrapper {
    margin: 0 -20px;
}

.pww-group-options {
    border-bottom: 1px solid #fafafa;
    background: #fff;
    position: sticky;
    min-height: 70px;
}


.pww-group-options .pww-config-column {
    border-left: 1px solid #fafafa;
    display: flex;
    flex: 1;
    justify-content: center;
    align-items: center;
}
.pww-group-options .pww-config-column span {
    font-weight: 400;
    color: #000;
}
.pww-group-options .pww-config-column select {
	height: 100%;
	border: unset;
	color: #000;
}
.pww-group-options .pww-config-column input[type="checkbox"] {
	margin: 0px;
	width: 30%;
	height: 30%;
}

.pww-variation-option.pww-variation-option-delivery .pww-copies-option-price {
    align-items: flex-start !important;
}
span.pww-copies-option-price-incl {
    font-size: 125%;
    font-weight: 800;
    color: #83b735;
}

/* Brand Hub */
/* .is-brand-hub .customer-details {
    display: none !important;
}
.is-brand-hub .woocommerce-checkout {
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
}
.is-brand-hub .woocommerce-form-coupon-toggle {
    text-align: center;
}
.is-brand-hub .checkout_coupon {
    margin: auto;
} */

.brand-hub-users-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}
.brand-hub-users-actions h2 {
    margin-bottom: 0px !important;
}
.brand-hub-users-actions a {
    color: var(--btn-accented-color);
    background-color: var(--btn-accented-bgcolor);
    box-shadow: var(--btn-accented-box-shadow);
}
.brand-hub-users-actions a:hover {
    color: var(--btn-accented-color-hover);
    box-shadow: var(--btn-accented-box-shadow-hover);
    background-color: var(--btn-accented-bgcolor-hover);
}
.brand-hub-billing-details,
.brand-hub-shipping-details {
    font-size: 16px;
}
.brand-hub-shipping-details {
    padding-top: 10px;
}
.brand-hub-shipping-details span {
    font-weight: bold;
}
.is-brand-hub #ship-to-different-address {
    display: none;
}

.pww-variation-options-extras-wrapper {
    display: flex;
    justify-content: space-between;
}
.pww-variation-extras-title {
    display: flex;
    flex: 1;
    flex-direction: column;
}
.pww-variation-extras-title input {
    width: 18px;
    height: 18px;
    margin-inline-end: 12px !important;
}
.pww-variant-extras-dropdown {
    flex: 0 0 35%;
}
.pww-variant-extras-dropdown option[value=""][disabled] {
    display: none;
}
.select2-results__option {
    margin-bottom: 0px !important;
}

.pww-variation-block-extra-title {
    display: flex;
    align-items: center;
}

.pww-variation-block .pww-variation-block-content .pww-variation-extras-title .pww-variation-block-text-top,
.pww-variation-block .pww-variation-block-content .pww-variation-extras-title .pww-variation-block-text-bottom {
    margin-top: 0px;
    margin-bottom: 0px;
}

.select2-container--default .select2-results__option--disabled {
    cursor: not-allowed !important;
}

#previews-div {
    margin-top: 20px;
}
#previews-div img {
    width: 100%;
    max-width: 400px;
    margin-bottom: 20px;
}

.progress-container {
    width: 100%;
    background-color: #e0e0e0;
    border-radius: 25px;
    overflow: hidden;
    margin-top: 5px;
    margin-bottom: var(--wd-tags-mb);
}
div#progress-bar {
    height: 30px;
    width: 0;
    background-color: #76c7c0;
    border-radius: 25px;
    transition: width 0.25s;
}

.form-info-text {
    display: block;
    margin-top: 5px;
}
.budget-alert-message {
    margin-top: -20px;
}

.pww-product-ready-file-preview {
	width: 100%;
	height: 250px;
	background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.ui-selectmenu-button.ui-button {
    width: 100%;
    background: #fff;
}

ul .ui-menu-item:first-child {
    display: none !important;
}

.dz-message {
    display: flex;
    flex-direction: column;
    padding: 10px 0;
}
.dz-message-line-title {
    font-size: 17px;
}
.dz-message-line-sub {
    font-size: 12px;
    font-style: italic;
    font-weight: 400;
}


/* Configurator */
.number-of-designs-wrapper {
    margin-left: -25px;
    margin-right: -25px;
    margin-bottom: 15px;
    padding: 25px;
    background-color: #f9f9f9;
}
.number-of-designs-text {
    display: flex;
    flex-direction: column;
}
.number-of-designs-text-title {
    font-size: 18px;
    font-weight: 600;
    color: #000000;
}
.number-of-designs-text-description {
    font-weight: 300;
    color: #000000;
}
.number-of-designs-form {
    display: flex;
    max-width: 30%;
    margin-top: 10px;
    margin-bottom: 10px;
}
.number-of-designs-button {
    background-color: #000000 !important;
    color: #ffffff !important;
    font-size: 18px !important;
    height: 32px;
    min-height: 32px !important;
    width: 32px;
    min-width: 32px;
    padding: 0 !important;
}
.number-of-designs-input {
    border-color: #eaf0f4 !important;
    height: 32px !important;
    max-width: 40% !important;
}
.number-of-designs-max-text {
    color: #000000;
    font-size: 14px;
}

.pww-text {
    color: #000000 !important;
}

/* Quantities */
.quantities-top {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.quantities-vat-options {
    display: flex;
    align-items: center;
}
.vat-buttons {
	display: flex;
	flex-direction: row;
	gap: 10px;
}
.vat-button {
    background-color: #f9f9f9;
    border: 1px solid #ddd;
    box-shadow: none;
    font-size: 12px;
    font-weight: 700;
    color: #000;
    padding: 5px 10px;
    border-radius: 5px;
    cursor: pointer;
}
.vat-button.active {
    border-color: rgba(var(--product-configurator-primary-color));
    background-color: rgba(var(--product-configurator-primary-color));
    color: #fff;
}
.vat-button:hover {
    background-color: #cfcfcf;
    border-color: #cfcfcf;
}
.quantity-row {
    display: flex;
    flex-wrap: wrap;
}
.quantity-row .quantity-row-column {
    display: flex;

}



.quantities-overview {
    margin-top: 10px;
}
.table-quantities {
    border-spacing: 3px;
    border-collapse: separate;
    margin-bottom: 0px !important;
}
.quantities-overview .table-quantities .table-head {
    background-color: #f3f3f3;
}
.quantities-overview .table-quantities .table-head .table-heading {
    font-weight: 700;
    font-size: 16px;
    padding: 12px 6px;
    vertical-align: middle;
    text-align: center;
}
.quantities-overview .table-quantities .table-head .table-heading small {
    font-size: 11px;
}
.quantities-overview .table-quantities .table-body {
    background-color: #f3f3f3;
}
.quantities-overview .table-quantities .table-body .table-row {
    border-top: 1px solid #ddd;
    cursor: pointer;
}
.quantities-overview .table-quantities .table-body .table-row td {
    padding: 0px !important;
}

.table-data-holder {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    color: #000;
}
.table-data-holder:hover {
    background-color: #60a632;
    color: #fff;
}
span.price-overview__price {
    display: flex;
    align-items: center;
    font-weight: 500;
    font-size: 16px;
    padding-left: 12px;
}
span.price-overview__piece {
    font-size: 12px;
    width: 70px;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: rgba(0, 0, 0, 0.03);
    padding: 8px;
}
.table-data.samples {
    font-weight: 500;
    font-size: 16px;
    text-align: center;
    color: #000000;
}
.price-overview__price-icon {
    width: 18px;
    height: 18px;
    float: left;
    background-color: #fff;
    border-radius: 50px;
    margin-right: 8px;
    border: 1px solid #000;
}
.quantity-custom-amount {
    display: flex;
    align-items: center;
    margin-top: 10px;
}
.quantity-custom-amount span {
    text-wrap: nowrap;
    font-size: 18px;
    font-weight: 600;
    color: #000;
}
.quantity-custom-amount div {
    display: flex;
    align-items: center;
    margin-left: 12px;
}
.quantity-custom-amount div input {
    height: 32px !important;
    border-color: #eaf0f4 !important;
}
.quantity-custom-amount div svg {
    width: 26px;
    height: 26px;
    margin-left: 12px;
    cursor: pointer;
}

.pww-config-variations.hide-sidebar {
	flex: 100%;
	max-width: 100%;
}

.text-align-right {
    text-align: right;
}

/* Quantities table */
.quantities-price-table {
    background-color: #ffffff;
    border: 1px solid #dfdfdf;
    border-collapse: separate;
    border-radius: 5px;
    margin-bottom: 0px !important;
}
.quantities-price-table thead tr th {
    border-width: 0 0 1px 0;
    border-color: #dfdfdf;
    font-size: 14px;
    font-weight: 700;
    text-transform: inherit;
    color: #000000;
	padding: 10px;
}
.quantities-price-table thead tr th.discount-column,
.quantities-price-table tbody tr td.discount-column {
    color: green;
}
.quantities-price-table tbody tr td.price-column {
    font-weight: 800;
}
.quantities-price-table tr.active {
    background-color: rgba(0, 128, 0, .05) !important;
    color: green;
    outline: 2px solid green;
}
.quantities-price-table tbody tr td {
    padding: 8px 10px;
	font-size: 14px;
    color: #000000;
    border-width: 0 0 1px 0;
    border-color: #dfdfdf;
	position: relative;
}
.quantities-price-table tbody tr.price-table-row-quantities td {
    border: unset !important;
}
.quantities-price-table tbody tr td .quantity-checkbox {
    background-color: #ffffff;
    border: 1px solid #ccc;
    border-radius: 2px;
    display: inline-block;
    height: 15px;
    width: 15px;
    vertical-align: middle;
    margin-right: 5px;
}
.quantities-price-table tbody tr.quantities-price-table-custom-row td {
    border-top: 1px solid #dfdfdf;
    border-bottom: 0px;
}
.quantities-price-table tr.active td .quantity-checkbox {
    background-color: green;
}
.price-table-row-quantities {
	background-color: #fafafa;
}
.quantities-price-table .quantity-search-input {
    height: 30px !important;
    background-color: #fff !important;
    text-align: left !important;
    padding-left: 10px !important;
	border-radius: 5px;
}
.quantities-price-table .quantity-search-dropdown {
    height: 30px !important;
    background-color: #fff !important;
    text-align: left !important;
    padding-left: 10px !important;
	border-radius: 5px;
}

.quantities-delivery-types-wrapper {
    display: grid;
    grid-template-rows: auto;
    grid-gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(30%, 1fr));
}
.delivery-type {
    padding: 15px;
    border: 1px solid #dfdfdf;
    border-radius: 5px;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    gap: 5px;
}
.delivery-type.active {
    border-color: green;
    box-shadow: 0 0 0 1px green;
}

.delivery-type-dates {
    display: flex;
    flex-direction: column;
}

span.delivery-type-date {
    color: #000;
    font-weight: 800;
}

span.delivery-type-text {
    color: #333;
    /* line-height: 15px; */
}

.delivery-type-prices {
    display: flex;
    gap: 10px;
    align-self: flex-end;
}

.delivery-type-price-wrap {
    color: green;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

span.delivery-type-price-value.price-strikeout {
    color: red;
    font-weight: initial;
    margin-right: 7px;
    font-size: 12px;
}

span.price__value {
    font-weight: 800;
}

.quantities-deadline-text {
    display: flex;
    align-items: center;
    color: #000000;
    margin-top: 10px;
}
.quantities-deadline-text svg {
    width: 18px;
    height: 18px;
    margin-right: 10px;
}

.pww-text-bold {
    font-weight: 800;
}

/* New version of configurator */
:root {
    --product-configurator-border-radius: 5px;
    --product-configurator-option-border-radius: 5px;
    --product-configurator-bold: 800;
    --product-configurator-text-color: #000;
    --product-configurator-space: 20px;

    /* --product-configurator-primary-color: rgba(2, 53, 48); */
    --product-configurator-primary-color: 27, 124, 255;
}

.push-end {
    margin-left: auto;
}

.product-configurator-bold {
    font-weight: var(--product-configurator-bold);
}

.product-configurator-container {
	position: relative;
    width: 900px;
    max-width: 100%;
    min-height: 100px;
    margin: auto;
    color: var(--product-configurator-text-color);
}
.product-configurator-step {
	background-color: #ffffff;
    border: 1px solid rgb(255, 255, 255);
    /* border-radius: var(--product-configurator-border-radius); */
/* 	margin-bottom: 20px; */
    padding: 20px 25px;
    box-shadow: rgba(0, 0, 0, 0.06) 0px 1px 2px, rgba(0, 0, 0, 0.06) 0px -1px 2px, rgba(0, 0, 0, 0.06) 1px 0px 2px, rgba(0, 0, 0, 0.06) -1px 0px 2px;

}
.product-configurator-step-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--product-configurator-text-color);
}

.step-header-title {
    display: flex;
    align-items: center;
    gap: 10px;
}
/* .step-header-count {
    padding: 3px 12px;
    background-color: var(--product-configurator-primary-color);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    border-radius: var(--product-configurator-border-radius);
} */
/* .step-header-name {
    font-size: 18px;
    font-weight: var(--product-configurator-bold);
} */

.product-configurator-step-content {
    margin-top: var(--product-configurator-space);
}

.step-content-text-top {
    margin-bottom: var(--product-configurator-space);
}
.step-content-text-bottom {
    margin-top: var(--product-configurator-space);
}

.step-content-options {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(3, minmax(90px, 280px));
    grid-gap: 10px;
    margin-top: 20px;
}
.step-content-options.step-content-separator {
    border-top: 1px solid #e3e3e3;
    padding-top: 20px;
}
.step-content-options .step-option {
    display: flex;
    flex-direction: column;
    flex-basis: 33.3333%;
    flex-grow: 0;
    flex-shrink: 0;

    border: 1px solid #f6f4f4;
    border-radius: var(--product-configurator-border-radius);
    position: relative;
    font-size: 14px;
	
	transition: box-shadow 0.2s ease 0s, background-color 0.2s ease 0s;
    box-shadow: rgba(0, 0, 0, 0.04) 0px 1px 1px, rgba(0, 0, 0, 0.06) 0px 2px 1px 0px, rgba(0, 0, 0, 0.08) 0px 1px 3px;
    border-radius: var(--product-configurator-option-border-radius, 5px);
}
.step-content-options .step-option.step-option-active {
    border-color: #00b900;
    background-color: #fafefa;
}
.step-content-options .step-option:hover {
	border: 1px solid rgb(27, 124, 255);
	box-shadow: rgba(0, 0, 0, 0.14) 0px 2px 2px, rgba(0, 0, 0, 0.12) 0px 3px 1px, rgba(0, 0, 0, 0.2) 0px 1px 5px;
	background: rgb(241, 247, 255);
	position: relative;
/*     border-color: #00b900; */
/*     background-color: rgb(241, 247, 255); */
/*     transition: width 0.25s; */
    cursor: pointer;
}
.step-content-options .step-option.step-option-warning {
	border-color: rgb(255 165 0);
}
.step-content-options .step-option.step-option-warning:hover {
	border-color: rgb(255 165 0);
    box-shadow: rgba(255, 165, 0, 0.14) 0px 2px 2px, rgba(255, 165, 0, 0.12) 0px 3px 1px, rgba(255, 165, 0, 0.2) 0px 1px 5px;
    background-color: rgb(255, 165, 0, 0.1);
}
.step-option.has-open-form::after {
/*     content: "";
    position: absolute;
    top: calc(100% + 1px);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #ddd; */
}
.step-option-content {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
    width: 100%;
    height: 100%;
    position: relative;
    min-height: 30px;
    border-radius: var(--product-configurator-option-border-radius, 5px);
    overflow: hidden;
    text-align: left;
	padding: 10px 15px;
}
.step-option-content .step-option-block {
    display: flex;
    flex-direction: column;
	align-items: flex-start
}
.step-option-content .step-option-title {
    font-size: 14px;
	text-align: left;
}
.step-option-content .step-option-text {
    font-weight: 100;
    font-size: 13px;
}
.step-option-input {
	padding: 0px 15px 10px;
}
.step-option-content .step-option-price-wrapper {
    position: absolute;
    right: 15px;
}

.format-custom-size {
    background-color: #fafafa;
    padding: 15px;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(4, minmax(90px, 165px));
    gap: 10px;
    align-items: flex-start;
    margin-top: 20px;
    border-radius: 5px;
}
.product-configurator-input {
    background-color: #ffffff !important;
    max-height: 40px !important;
    font-size: 14px !important;
    border-radius: 5px !important;
	text-align: left !important;
	padding: 0 15px !important;
}
.product-configurator-input-help {
    display: block;
    font-size: 13px;
    font-weight: 400;
    margin-top: 2px;
}
.product-configurator-btn {
    height: 36px;
    line-height: 36px;
    background-color: rgba(var(--product-configurator-primary-color), 1);
    color: var(--product-configurator-btn-text-color, #fff);
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 600;
    max-width: max-content;
    padding: 0 15px;
    border-radius: var(--product-configurator-option-border-radius);
}
.product-configurator-btn:hover {
    cursor: pointer;
}
.product-configurator-btn svg {
    width: 25px !important;
    height: 25px !important;
    margin-right: 10px !important;
    fill: #ffffff;
}
.single_add_to_cart_button.product-configurator-btn span {
    text-transform: initial !important;
}
.product-configurator-btn-link-style {
    background-color: transparent;
    color: #000000;
}
.product-configurator-btn-link-style svg {
    fill: #000000;
}

.product-configurator-step-edit {
    display: flex;
    align-items: center;
    background: #fff;
    padding: 6px;
    border-radius: 50%;
    border: .25rem solid rgba(var(--product-configurator-primary-color), .2);
	transition: box-shadow 0.2s ease 0s, background-color 0.2s ease 0s;
	cursor: pointer;
}
.product-configurator-step-edit svg {
    width: 20px;
    height: 20px;
}
.product-configurator-step-edit:not(.step-edit-not-allowed):hover {
	box-shadow: 0 0 2px 2px rgba(var(--product-configurator-primary-color), 0.14);
}
.step-quantities {
    display: grid;
    gap: 20px;
}
.step-quantity-group {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(2, 20% 80%);
}
.step-quantity-group-info {
    /* display: flex;
    flex-direction: column;
    min-width: 33.333333%;
    width: 33.333333%; */
    padding-right: 10px;
}
.step-quantity-group-info .step-quantity-group-title {
    font-size: 14px;
    font-weight: 500;
}
.step-quantity-group-info .step-quantity-group-text {
    font-weight: 400;
}
.step-quantity-group-options {
    flex-grow: 1;
}

.step-option-delivery {
    display: flex;
    flex-direction: column;
}
.step-option-delivery .step-option-content {
    flex-direction: row;
    justify-content: space-between;
    height: 40px;
}
.step-option-delivery-text {
    display: flex;
    flex-direction: column;
}
.delivery-text {
    font-size: 14px;
    font-weight: 400;
}
.delivery-date {
    font-size: 20px;
    font-weight: 600;
}
.delivery-date-maybe {
    font-size: 13px;
}
.step-option-delivery .step-option-content .step-option-title {
    font-size: 18px;
}
.step-option-delivery-prices {
    display: flex;
    align-self: flex-end;
    margin-top: 5px;
}
.delivery-price {
    color: #62ac29;
    font-weight: 600;
}

.step-extra-group-title span {
    font-size: 20px;
    font-weight: 600;
}
.step-extra-group-options {
    display: grid;
    gap: 10px;
    background-color: #fafafa;
    margin-left: -26px;
    margin-right: -26px;
    padding: 15px 30px;
}
.step-extra-group-option {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(2, minmax(50%, 50%));
    align-items: center;
}
.step-extra-group {
    display: grid;
    gap: 10px;
}
.step-extra-group-option-name {
    display: flex;
    align-items: center;
}
.step-extra-group-option-name input[type="checkbox"] {
    width: 18px;
    height: 18px;
    background-color: #ffffff;
    margin-right: 10px;
}
.step-extra-group-option-name span {
    font-size: 15px;
    font-weight: 600;
}
.step-is-extras .product-configurator-step-content {
    display: grid;
    gap: 20px;
}
.product-configurator-step-footer {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(2, minmax(90px, 50%));
    margin-top: 20px;
}
.step-total-designs {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(4, minmax(90px, 165px));
    gap: 10px;
    align-items: flex-start;
}

/* Product summary */
.product-summary-step .product-configurator-step-content {
    /* margin-left: -25px;
    margin-right: -25px; */
}
.product-summary-file-wrapper {
    display: grid;
    grid-template-columns: 25% auto auto auto;
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    justify-items: stretch;
    align-items: stretch;
    padding: 20px 25px;
    background-color: #fafafa;
}
.product-summary-file-links {
    display: grid;
    gap: 5px;
}

.product-summary-file-block {
    display: grid;
    grid-template-columns: 50px auto;
    grid-column-gap: 10px;
    align-items: center;
}
.product-summary-file-info {
    display: flex;
    flex-direction: column;
}
.product-summary-file-block-title {
    font-weight: 600;
    font-size: 14px;
}
.product-summary-file-block-text {
    font-weight: 400;
    font-size: 14px;
}

.step-option-prices {
    position: absolute;
    top: 10px;
    right: 10px;
}
.option-price {
    color: #62ac29;
    font-weight: 600;
}
.step-options-file-selection {
    grid-template-columns: repeat(3, minmax(90px, 300px));
    margin-top: 10px;
}
.step-options-file-links {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    column-gap: 20px;
    margin-top: 20px;
}
.product-configurator-title {
    font-size: 18px;
    font-weight: 800;
}
a.product-configurator-link {
    color: #0b77c4 !important;
}

.summary-dates {
    display: flex;
    flex-direction: column;
}
.summary-prices {
    display: flex;
    flex-direction: column;
}
.product-configurator-summary-buttons {
    display: flex;
    flex-direction: row;
}

.cropper-line.line-e, 
.cropper-line.line-w {
    display: block; /* Zorg ervoor dat verticale lijnen zichtbaar blijven */
    background-color: red; /* Verander de kleur van de verticale lijnen naar rood */
}

.cropper-line.line-n, 
.cropper-line.line-s {
    display: none; /* Verberg horizontale lijnen */
}

/* Verberg de hoekpunten */
.cropper-point.point-n, 
.cropper-point.point-s, 
.cropper-point.point-ne, 
.cropper-point.point-nw, 
.cropper-point.point-se, 
.cropper-point.point-sw {
    display: none;
}

.vertical-line {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 1px;
    background-color: red;
    z-index: 10;
}


/* New styling */
.step-header-count {
	width: 36px;
    height: 36px;
    border-radius: 50%;
    /* border: .25rem solid rgb(27, 124, 255, .2); */
    border: 0.25rem solid rgba(var(--product-configurator-primary-color), .2);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 800;
	line-height: 16px;
}
.step-header-name {
	font-size: 1.3rem;
	font-weight: 500;
}
.product-configurator-step.step-is-selected {
	padding: 10px 25px;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}

.product-configurator-container .product-configurator-step.first-step {
    border-top-left-radius: var(--product-configurator-border-radius);
    border-top-right-radius: var(--product-configurator-border-radius);
}
.product-configurator-container .product-configurator-step.last-step {
    border-bottom-left-radius: var(--product-configurator-border-radius);
    border-bottom-right-radius: var(--product-configurator-border-radius);
}

.product-configurator-step.step-is-selected .step-header-name {
	display: flex;
	flex-direction: column;
}
.product-configurator-step.step-is-selected .step-header-name span.step-header-parent-name {
	font-size: .8rem;
    font-weight: 400;
}
.product-configurator-step.step-is-selected .step-header-name span.step-header-option-name {
	font-size: 1rem;
    font-weight: 600;
	margin-top: -3px;
}
.product-configurator-step.step-is-selected .step-header-name span.step-header-option-extra-text {
    font-size: .8rem;
    font-weight: 400;
	margin-top: -3px;
}
.quantities-price-table-row:hover {
	transition: box-shadow 0.2s ease 0s, background-color 0.2s ease 0s;
    background-color: rgb(27, 124, 255, .2);
	cursor: pointer;
}
.step-options-column-3 {
	grid-template-columns: repeat(3, minmax(90px, 280px));
}
.step-options-column-4 {
	grid-template-columns: repeat(4, minmax(90px, 280px));
}

.step-option-image {
	display: flex;
	align-items: center;
	justify-content: center;
    background-color: #fafafa;
    padding: 0px;
    border-top-left-radius: var(--product-configurator-option-border-radius, 5px);
    border-top-right-radius: var(--product-configurator-option-border-radius, 5px);
    min-height: 120px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.step-option-image svg,
.step-option-image img {
    width: 100%;
    height: 120px;
}

.step-option-info {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
	z-index: 1;
}
.step-option-info svg {
    width: 30px;
    height: 30px;
	border-radius: 50%;
}
.step-option-info:hover svg {
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.14);
}

.step-option.step-option-delivery {
    padding: 10px 15px;
}
.step-option.step-option-delivery .step-option-content {
	padding: 10px 0;
	align-items: center;
}

.step-option.step-info-alert .step-option-content {
	padding-right: 40px;
}

.product-configurator-popup {
    display: flex;
    justify-content: space-between;
}
.product-configurator-image {
    width: 40%;
}

.product-configurator-step.total_designs .step-content-options,
.step-content-options.step-options-count-1 {
	grid-template-columns: repeat(2, minmax(90px, 400px));
/* 	grid-template-columns: max-content; */
}
.product-configurator-step.total_designs .step-content-options .step-option,
.step-content-options.step-options-count-1 .step-option {
    border: unset;
    box-shadow: unset;
}
.product-configurator-step.total_designs .step-content-options .step-option:hover,
.step-content-options.step-options-count-1 .step-option:hover {
	background: unset;
	cursor: inherit;
}
.product-configurator-step.total_designs .step-content-options .step-option .step-option-content,
.step-content-options.step-options-count-1 .step-option .step-option-content {
    padding-left: 0px;
	padding-top: 0px;
}
.product-configurator-step.total_designs .step-content-options .step-option .step-option-input,
.step-content-options.step-options-count-1 .step-option .step-option-input {
	padding: 0px;
}

.step-option-input-form {
    display: flex;
    gap: 10px;
}

.product-configurator-link {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-top: 20px;
}
.product-configurator-link-icon {
    width: 23px;
    height: 23px;
    margin-right: 10px;
}
.product-configurator-link-text {
    color: #0094cb;
    cursor: pointer;
}

.product-configurator-uploader {
	margin-top: 20px;
}

/* Summary */
.product-overview {
}
.product-overview .left {
    padding: 30px;
}
.product-overview .right {
    padding: 20px;
    background-color: #fafafa;
    border-left: 1px solid #ccc;
    border-top-right-radius: var(--product-configurator-border-radius);
    border-bottom-right-radius: var(--product-configurator-border-radius);
    margin-top: -1px;
    margin-bottom: -1px;
    margin-right: -1px;
}
.product-overview-product-name {
    display: block;
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 600;
}
.product-overview .product-overview-list {
    display: grid;
    grid-gap: 10px;
}
.product-overview .product-overview-list-item {
    display: flex;
    flex-direction: column;
}

.product-overview-list-item-name {
    font-size: 14px;
    font-weight: 600;
}
.product-overview-list-item-text {
    font-size: 14px;
    font-weight: 400;
}
.product-overview-list .product-overview-list-block:last-child .product-overview-list-item {
    flex-direction: row;
    gap: 5px;
}
.product-overview-delivery {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 15px 0px;
}
.product-overview-delivery-logo {
    display: flex;
    align-items: center;
}
.product-overview-delivery-logo svg {
    width: 40px;
    height: auto;
}
.product-overview-delivery-text-name {
    font-weight: 600;
    font-size: 14px;
}
.product-overview-delivery-text-maybe {
    display: block;
    font-weight: 400;
    font-size: 13px;
    margin-top: -2px;
}
.product-overview-buttons .product-configurator-btn {
    margin: auto;
}
.share-product-configuration svg {
    width: 20px !important;
    height: 20px !important;
}
.share-product-configuration span {
    font-size: 13px;
}



.product-configurator-summary {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: auto 30%;
    grid-gap: 10px;
}

.product-configurator-designs {
	margin-top: var(--product-configurator-space);
}





.product-overview-designs-blocks {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(2, minmax(90px, 320px));
    grid-gap: 10px;
    margin-top: 20px;
}

.product-overview-design-block {
    display: flex;
    flex-direction: column;
    border: 1px solid #e3e3e3;
    border-radius: var(--product-configurator-border-radius);
    position: relative;
    box-shadow: rgba(0, 0, 0, 0.04) 0px 1px 1px, rgba(0, 0, 0, 0.06) 0px 2px 1px 0px, rgba(0, 0, 0, 0.08) 0px 1px 3px;
}

.product-overview-design-block-image svg {
    width: 50px;
    height: 50px;
}

.product-overview-design-block-image {
    display: flex;
    flex-direction: column;
    align-items: center;
}

span.product-overview-design-block-image-title {
    font-weight: 600;
    font-size: 14px;
}

span.product-overview-design-block-image-text {
    font-weight: 400;
    font-size: 13px;
}

.product-overview-design-block-editor {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.product-overview-design-block-top {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 15px 0;
}

.product-overview-design-block-total {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 5px 10px;
}

.product-overview-design-block-total input {
    width: 80px !important;
    height: 35px !important;
    text-align: center !important;
}

.product-overview-design-block-total span {
    font-size: 14px;
    font-weight: 600;
}

.product-overview-design-block-reference input {
    border-radius: 0px !important;
    border-left: 0px !important;
    border-right: 0px !important;
}

.product-overview-design-block-editor span.product-configurator-btn {
    background-color: #fff;
    color: #000;
    border: 1px solid #e3e3e3;
}

.product-overview-design-block-editor svg {
    fill: #000 !important;
}

.product-overview-container {
    margin-top: 20px;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 33.33% calc(33.33% - 10px) calc(33.33% - 10px);
    gap: 10px;
}

.product-overview-product {}

.product-overview-summary {
    background-color: #ffffff;
    border: 1px solid rgb(255, 255, 255);
    padding: 20px;
    box-shadow: rgba(0, 0, 0, 0.06) 0px 1px 2px, rgba(0, 0, 0, 0.06) 0px -1px 2px, rgba(0, 0, 0, 0.06) 1px 0px 2px, rgba(0, 0, 0, 0.06) -1px 0px 2px;
    border-radius: var(--product-configurator-border-radius);
}

span.product-overview-title {
    display: block;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
}

.product-configurator-summary-price-list {
	display: flex;
	flex-direction: column;
	gap: 3px;
	font-size: 14px;
}
.product-configurator-summary-price-list-item {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.product-configurator-summary-price-list-item.is-shipping .product-configurator-summary-price-list-item-value {
	color: #6f9628;
	font-weight: 700;
}
.product-configurator-summary-price-list-item.is-total-price span {
	font-size: 15px;
	font-weight: 600;
}

.product-overview-summary-buttons {
    margin-top: 10px;
}

.step-content-options-more {
	margin-top: 10px;
}

.product-configurator-step.file_upload .step-option-title {
	font-weight: 600;
}
.product-configurator-step.file_upload .step-option-image {
	background-size: calc(100% - 40px) calc(100% - 40px);
}
.step-edit-not-allowed {
	cursor: not-allowed;
}

.step-header-actions {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}
.step-header-price {
    background-color: rgb(27, 124, 255, .2);
    color: #000;
    font-weight: 600;
    padding: 3px 8px;
    border-radius: 5px;
}

.remove-mt {
	margin-top: 0px;
}

.pww-step-alert {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px;
	border-radius: 5px;
	background-color: #fff3cd;
	border: 1px solid #ffeeba;
	font-size: 14px;
	font-weight: 400;
}
.pww-step-alert svg {
	width: 100%;
	height: auto;
}
.pww-step-alert-remove {
	width: 20px;
	height: 20px;
	cursor: pointer;
}

.quantity-loader {
  /* change color here */
  color: rgb(27, 124, 255, .2);
}
.quantity-loader,
.quantity-loader div {
  box-sizing: border-box;
}
.quantity-loader {
	position: absolute;
    width: 80px;
    height: 12px;
    right: 0;
    top: 11px;
}
.quantity-loader div {
  position: absolute;
  top: 0px;
  width: 13.33333px;
  height: 13.33333px;
  border-radius: 50%;
  background: currentColor;
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.quantity-loader div:nth-child(1) {
  left: 8px;
  animation: quantity-loader1 0.6s infinite;
}
.quantity-loader div:nth-child(2) {
  left: 8px;
  animation: quantity-loader2 0.6s infinite;
}
.quantity-loader div:nth-child(3) {
  left: 32px;
  animation: quantity-loader2 0.6s infinite;
}
.quantity-loader div:nth-child(4) {
  left: 56px;
  animation: quantity-loader3 0.6s infinite;
}
@keyframes quantity-loader1 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes quantity-loader3 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes quantity-loader2 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(24px, 0);
  }
}
.ui-selectmenu-text {
    font-size: 14px !important;
}
.step-option-info > svg > circle {
    fill: rgba(var(--product-configurator-primary-color), 1);
}

.quantities-price-row-error {
    background-color: #fdf7df;
    color: #000;
}

.step-option-square-meters {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.step-option-square-meters-form {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    border-radius: 5px;
    background-color: #fafafa;
    padding: 15px;
}

.step-option-square-meters-total {
    font-size: 14px;
    font-weight: 600;
}
.step-alerts {
    display: flex;
    flex-direction: column;
    gap: 5px;
	margin-bottom: var(--product-configurator-space);
}

[data-pww-variant-code="pickup"] .step-option-delivery-text {
	padding: 10px 15px !important;
	padding-top: 0px !important;
}
[data-pww-variant-code="pickup"] .step-option-image {
	min-height: 137px !important;
}
[data-pww-variant-code="pickup"] .step-option-title {
    font-size: 16px !important;
    font-weight: 600 !important;
}
[data-pww-variant-code="pickup"] .delivery-date {
	font-size: 18px !important;
	margin-bottom: 5px !important;
}
.pww_connect-variation_list-file span {
    color: #000;
    font-weight: 600;
    padding: 5px 0;
    display: block;
}
.pww_connect-variation_list_full_files .pww_connect-variation_list {
    display: grid;
    gap: 10px;
}

.step-content-group {
	display: flex;
	flex-direction: column;
}
span.step-content-group-title {
    font-size: 18px;
    font-weight: 600;
}
.step-content-group-options .step-content-options {
    margin-top: 10px;
    margin-bottom: 10px;
}
.step-content-group-options .mb-20 {
	margin-bottom: 10px;
}

.single_add_to_cart_button.product-configurator-btn {
	width: 100% !important;
	max-width: 100% !important;
}

.price-show-line {
	border-top: 1px solid #e3e3e3;
	padding-top: 10px;
	margin-top: 10px;
}
.product-delivery-selection {
    background-color: #ffffff;
    padding: 20px;
    border: 1px solid rgb(255, 255, 255);
    box-shadow: rgba(0, 0, 0, 0.06) 0px 1px 2px, rgba(0, 0, 0, 0.06) 0px -1px 2px, rgba(0, 0, 0, 0.06) 1px 0px 2px, rgba(0, 0, 0, 0.06) -1px 0px 2px;
    border-radius: var(--product-configurator-border-radius);
}
span.product-delivery-selection-title {
    font-weight: 600;
    /* font-size: 15px; */
}
.product-delivery-option {
    display: flex;
    justify-content: space-between;
}
.product-delivery-option-name {
    display: flex;
    align-items: center;
}
.product-delivery-option-name label {
    margin-bottom: 0px;
}
.product-delivery-options {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-top: 5px;
}
.product-overview-fields {
    background-color: #ffffff;
    padding: 20px;
    border: 1px solid rgb(255, 255, 255);
    box-shadow: rgba(0, 0, 0, 0.06) 0px 1px 2px, rgba(0, 0, 0, 0.06) 0px -1px 2px, rgba(0, 0, 0, 0.06) 1px 0px 2px, rgba(0, 0, 0, 0.06) -1px 0px 2px;
    border-radius: var(--product-configurator-border-radius);
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.product-overview-field label {
    font-weight: 600;
    margin-bottom: 5px;
}
.product-overview-field input[type='text'] {
    height: 37px;
    font-size: 12px;
    padding: 10px;
    transition: background-color .5s ease;
}
.product-overview-field textarea {
    min-height: 100px;
    font-size: 12px;
    padding: 10px;
    transition: background-color .5s ease;
}
.product-file-item-info-left {
	display:flex;
	flex-direction: row;
	align-items: center;
	gap: 10px;
}
.product-file-item-remove svg {
	height: 20px;
	width: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
span.product-configurator-btn.push-end.product-delete-files {
	background-color: #CE5A4B;
	height: 30px;
	line-height: 30px;
	font-size: 12px;
	padding: 0 10px;
}









.product-configurator-presets {
    border: 1px solid rgb(255, 255, 255);
    background: #fff;
    box-shadow: rgba(0, 0, 0, 0.06) 0px 1px 2px, rgba(0, 0, 0, 0.06) 0px -1px 2px, rgba(0, 0, 0, 0.06) 1px 0px 2px, rgba(0, 0, 0, 0.06) -1px 0px 2px;
    padding: 20px 25px;
    border-top-left-radius: var(--product-configurator-border-radius);
    border-top-right-radius: var(--product-configurator-border-radius);
}
span.product-configurator-presets-title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
    display: block;
}
.product-configurator-presets-options {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(3, minmax(90px, 280px));
    grid-gap: 10px;
}
.product-configurator-presets-option {
    display: flex;
    flex-direction: column;
    border: 1px solid #e3e3e3;
    border-radius: var(--product-configurator-option-border-radius, 5px);
    padding: 10px 15px;
    position: relative;
    font-size: 14px;
    transition: box-shadow 0.2s ease 0s, background-color 0.2s ease 0s;
    box-shadow: rgba(0, 0, 0, 0.04) 0px 1px 1px, rgba(0, 0, 0, 0.06) 0px 2px 1px 0px, rgba(0, 0, 0, 0.08) 0px 1px 3px;
}
.product-configurator-presets-option:hover {
	border: 1px solid rgb(27, 124, 255);
	box-shadow: rgba(0, 0, 0, 0.14) 0px 2px 2px, rgba(0, 0, 0, 0.12) 0px 3px 1px, rgba(0, 0, 0, 0.2) 0px 1px 5px;
	background: rgb(241, 247, 255);
	position: relative;
    cursor: pointer;
}
.product-configurator-presets-option-top {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
span.product-configurator-badge {
    background-color: rgba(var(--product-configurator-primary-color), .2);
    width: fit-content;
    padding: 5px 10px;
    border-radius: 5px;
    font-size: 12px;
    font-weight: 600;
}
span.product-configurator-presets-option-description {
    font-size: 14px;
    margin-top: 8px;
}
.product-configurator-presets-option-btn {
    text-align: right;
    font-weight: 600;
    font-size: 14px;
}
.product-configurator-presets-option-price {
    font-size: 16px;
    color: #60a632;
    font-weight: 600;
}
.product-configurator-step.first-step.product-configurator-has-presets {
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
}

/* Formaat */
.step-textile-sizes {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-areas:
        "categories options"
        ". labels"
        ". warning"
        ". error";
}

.textile-sizes-types {
    grid-area: categories;
    flex-direction: column;
    margin-right: 15px;
    display: flex;
    gap: 10px;
}

.textile-sizes-options-wrapper {
    display: flex;
    gap: 10px;
    grid-area: options;
    flex-direction: column;
}

ul.textile-sizes-labels {
    display: flex;
    gap: 10px;
    grid-area: labels;
    margin-top: 10px;
    margin-bottom: 0px;
    padding: 0;
}

.step-textile-sizes ul {
    list-style: none !important;
}

ul.textile-sizes-options {
    display: flex;
    gap: 10px;
    margin: 0;
    padding: 0 1px;
}

li.textile-size-option {
    flex-basis: 45px;
    border: 1px solid #ddd;
    border-radius: var(--product-configurator-option-border-radius);
    position: relative;
    margin: 0px;
}
li.textile-size-option.textile-size-option-has-value {
	border-color: rgba(var(--product-configurator-primary-color), .2);
	box-shadow: 0 0 0 1px rgba(var(--product-configurator-primary-color), .2);
}

li.textile-size-option input {
    width: 100%;
    border: none;
    text-align: center;
    height: 34px;
    padding: 0;
    font-weight: 800;
    border-radius: var(--product-configurator-option-border-radius);
}
li.textile-size-option input::placeholder {
	text-align: center;
	font-weight: 500;
	color: #E9E9E9;
}
/* Chrome, Safari, Edge, Opera */
li.textile-size-option input::-webkit-outer-spin-button,
li.textile-size-option input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
/* Firefox */
li.textile-size-option input[type=number] {
  -moz-appearance: textfield;
}

li.textile-sizes-label {
    flex-basis: 45px;
    text-align: center;
}
.textile-sizes-types span {
    display: flex;
    flex-grow: 1;
    align-items: center;
}
.textile-sizes-check {
    display: grid;
    grid-template-columns: auto auto 1fr;
    grid-template-areas:
        "column value amount";
	margin-top: 5px;
    background-color: #fafafa;
    padding: 15px;
    border-radius: var(--product-configurator-border-radius);
}
.textile-sizes-check-colomn {
    grid-area: column;
    flex-direction: column;
    display: flex;
    margin-right: 15px;
}
.textile-sizes-check-value {
    display: flex;
    grid-area: value;
    flex-direction: column;
    gap: 10px;
}
.textile-sizes-check-amount {
    display: flex;
    grid-area: amount;
    flex-direction: column;
    gap: 10px;
    margin-left: 30px;
    padding-left: 30px;
    border-left: 3px solid rgb(221 221 221 / 40%);
}

.textile-sizes-check-value span {
    font-weight: 600;
}

.textile-sizes-check-value span.product-configurator-btn.full-btn,
.textile-sizes-check-amount span.product-configurator-btn.full-btn {
    height: 32px;
    line-height: 32px;
}

.mb-20 {
	margin-bottom: 20px;
}

.step-option-changer-block {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0px 15px 10px 15px;
}

.step-option-price-block {
    color: #62ac29;
    font-weight: 600;
}

.step-option-quantity-block {
    display: flex;
    min-height: 30px;
    align-items: center;
    justify-content: center;
}

.step-option-quantity-block input {
    height: 30px !important;
    width: 60px !important;
    background: #fff !important;
    border: 2px solid #0000001a !important;
    border-left: 0px !important;
    border-right: 0px !important;
}

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

/* Firefox */
.step-option-quantity-block input[type=number] {
  -moz-appearance: textfield;
}

.step-option-quantity-stepper {
    background: #0000001a;
    border: 2px solid #0000001a;
    width: 30px;
    height: 30px;
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.step-option-quantity-stepper.step-option-deincrement {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}
.step-option-quantity-stepper.step-option-increment {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

.product-accessories-continue {
    margin-top: 20px;
    display: flex;
    justify-content: end;
}

input.textile-size-input.input-disabled {
    color: red !important;
    font-size: 14px !important;
    background-color: rgb(221 221 221 / 40%);
    cursor: not-allowed !important;
}

span.textile-sizes-price span:first-child {
    color: green;
    font-weight: 800;
    font-size: 16px;
}
.textile-sizes-check-amount div {
    display: flex;
    flex-direction: column;
}
span.textile-sizes-price span:last-child {
    color: #000;
    font-size: 12px;
}
span.textile-sizes-price-sub {
    font-size: 14px;
    color: #000;
}
span.textile-sizes-price-sub span:last-child {
    font-size: 12px;
}
.option-is-selected {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    border: 0;
    height: 100%;
}
span.option-remove {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 25px;
    height: 25px;
    background-color: red;
    color: #fff;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}
span.option-remove:hover {
    cursor: pointer;
    transform: scale(1.025);
}
.product-configurator-container.--login-required {
    background-color: #ffffff;
    border: 1px solid rgb(255, 255, 255);
    border-radius: var(--product-configurator-border-radius);
    box-shadow: rgba(0, 0, 0, 0.06) 0px 1px 2px, rgba(0, 0, 0, 0.06) 0px -1px 2px, rgba(0, 0, 0, 0.06) 1px 0px 2px, rgba(0, 0, 0, 0.06) -1px 0px 2px;
    padding: 20px 25px;
    min-height: 0;
    display: flex;
    flex-direction: column;
}
span.product-configurator-login-required-title {
    font-size: 15px;
    font-weight: 600;
}

@media only screen and (max-width:767px) {
    .step-content-options {
        grid-template-columns: repeat(1, auto);
    }
    .product-configurator-step {
        padding: 15px;
    }
    .product-configurator-step.step-is-selected {
        padding: 5px 15px;
    }
    .step-header-count {
        width: 30px;
        height: 30px;
    }
    .step-header-name {
        font-size: 18px;
    }
    .format-custom-size {
        grid-template-columns: repeat(1, auto);
    }
    .product-configurator-step.total_designs .step-content-options, .step-content-options.step-options-count-1 {
        grid-template-columns: repeat(1, auto);
    }
    .step-extra-group-option {
        grid-template-columns: repeat(1, auto);
        gap: 10px;
    }
    .step-quantity-group {
        grid-template-columns: repeat(1, auto);
        gap: 10px;
    }
    th.discount-column, td.discount-column,
    th.unit-price-column, td.unit-price-column {
        display: none;
    }
    .product-overview-container {
        grid-template-columns: repeat(1, auto);
        margin-top: 0px;
    }
}

.quantity-v2-group {
    display: grid;
    grid-template-columns: repeat(3, minmax(90px, 280px));
    gap: 6px;
}
.quantity-v2-item {
    min-height: 38px;
    border-width: 1px;
    outline-offset: -2px;
    outline-width: 2px;
    outline-style: solid;
    outline-color: #f6f4f4; 
    /* e3e3e3 */
    font-size: 14px;
    padding: 8px 12px;
    border-radius: var(--product-configurator-border-radius);
    position: relative;
	transition: box-shadow 0.2s ease 0s, background-color 0.2s ease 0s;
    box-shadow: rgba(0, 0, 0, 0.04) 0px 1px 1px, rgba(0, 0, 0, 0.06) 0px 2px 1px 0px, rgba(0, 0, 0, 0.08) 0px 1px 3px;
    flex-shrink: 0;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.quantity-v2-item.active {
    outline-color: rgba(var(--product-configurator-primary-color));
    border-color: rgba(var(--product-configurator-primary-color));
    background: rgb(241, 247, 255);
}
.quantity-v2-item:hover {
    outline-color: rgba(var(--product-configurator-primary-color));
    background: rgb(241, 247, 255);
}
.quantity-v2-item .quantity-v2-item-top {
    display: flex;
    justify-content: space-between;
}
.quantity-v2-item-price span {
    font-weight: 600;
}
.quantity-v2-item .total-amount {
    font-size: 13px;
    font-weight: 400;
    color: #9e9c9d;
}
input.quantity-search-input {
    background-color: #ffffff !important;
    height: 30px !important;
    border-color: #f2f2f2 !important;
    border-radius: 0.3rem !important;
}
select.quantity-search-dropdown {
    background-color: #ffffff !important;
    height: 30px !important;
    border-radius: 0.3rem !important;
}

.total_designs-stepper {
    position: absolute; 
    top: 6px; 
    bottom: 6px;
    width: 40px; 
    border: 1px solid #f6f4f4; 
    border-radius: 6px;
    cursor: pointer;
}
.total_designs-stepper img {
    position: absolute;
    width: 10px;
    left: 14px;
    top: 8px;
}
.total_designs-stepper.deincrement {
    left: 10px;
    background-image: url(https://cdn-icons-png.flaticon.com/128/1828/1828901.png);
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: center center;
}
.total_designs-stepper.increment {
    right: 10px;
    background-image: url(https://cdn-icons-png.flaticon.com/128/32/32563.png);
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: center center;
}
.total_designs-stepper.disabled {
    cursor: not-allowed;
}
.product-configurator-input[data-pww-option-form-field="total_designs"] {
    text-align: center !important;
    border-color: #f6f4f4;
    border-width: 1px;
    height: 40px;
    font-size: 15px !important;
    max-height: unset !important;
    box-shadow:rgba(0, 0, 0, 0.04) 0px 1px 1px, rgba(0, 0, 0, 0.06) 0px 2px 1px 0px, rgba(0, 0, 0, 0.08) 0px 1px 3px;
}

span.progress-msg {
    color: #000;
    font-weight: 600;
    font-size: 16px;
}
span.progress-bar {
    display: flex;
    width: 180px;
    height: auto;
    border-radius: 12px;
    text-align: center;
    font-weight: 600;
    color: #fff;
    background: #333;
    overflow: hidden;
}

span.progress-bar .progress-bar-fill {
    background-color: #28a745;
    color: #fff;
    width: 0;
    transition: width 0.5s ease-in-out;
    border: 1px solid #28a745;
}
.uploader-progress {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: revert-layer;
    height: 100%;
    vertical-align: middle;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: rgb(250, 250, 250);
    align-items: center;
    gap: 3px;
    border-radius: var(--product-configurator-border-radius);
    cursor: not-allowed !important;
    z-index: 9999;
}

.pww-product-uploaded-files {
    margin-top: 10px;
}
.pww-product-uploaded-files span.pww-product-uploaded-files-title {
    font-weight: 500;
}
.pww-product-uploaded-files .pww-product-uploaded-files-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 5px;
}
#pww-product-uploaded-files-alerts .step-alerts {
    margin-top: calc(var(--product-configurator-space) / 2);
    margin-bottom: calc(var(--product-configurator-space) / 2);
}

.step-option-badges {
    position: absolute;
    top: -20px;
    right: 0px;
    display: flex;
    flex-direction: row;
    gap: 3px;
}
.step-option-badge {
    background: rgba(var(--product-configurator-primary-color));
    border-radius: 6px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 3px 6px;
}