/*
CSS styles for checkout and cart
*/

/* woocommerce checkout */
.woocommerce-checkout .ast-container {
    max-width: 1120px;
}
.ast-checkout-labels-as-placeholders form #customer_details .form-row label {
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
	pointer-events:initial;
	position: absolute;
	transition: all .2s ease-out;
	font-size: 12px;
	margin-top: .5em;
	padding: 0 1.02em;
	line-height: 1.625;
	opacity: 0;
  }
@media (min-width: 1201px) {
	.woocommerce-checkout .ast-container {
	    max-width: 1120px;
	}
}

.woocommerce-page.woocommerce-checkout.logged-in form #customer_details.col2-set .col-1 .woocommerce-billing-fields { margin-top: 0; }

.woocommerce-checkout .site-content {
	background-color: #f4f4f4;
	font-size: 14px;
}

.woocommerce-page.woocommerce-checkout .checkout-your-order {
	background-color: #003365;
	padding: 1em;
	display: inline-block;
	width: 40%;
	float: right;
}

.woocommerce-page.woocommerce-checkout form #order_review_heading {
	font-size: 1.2rem;
	margin-bottom: 0;
    font-size: 1.2rem;
    margin: 0;
    padding: 0;
    border: none;
    float: left;
    color: #ffffff;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 1.8;
    width: 80%;
}

.woocommerce-page.woocommerce-checkout form .checkout-your-order-edit {
	float: right;
	font-size: 1.2rem;
    line-height: 1.8;
}

@media (max-width: 768px) {
	.woocommerce-page.woocommerce-checkout .checkout-your-order {
	    width: 100%;
	    float: left;
	}
}


.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-billing-fields h3,
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-shipping-fields h3,
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-account-type h3,
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-checkboxes h3,
.woocommerce-page.woocommerce-checkout form .payment-method-heading,
.woocommerce-page.woocommerce-checkout #customer_details .woocommerce-company-information h3,
.woocommerce-page.woocommerce-checkout .checkout-section-title {
	background-color: #003365;
	color: #ffffff;
	text-transform: uppercase;
	font-weight: bold;
	border: none;
	padding: 1em;
	margin-bottom: 0;
	font-size: 1.2rem;
}

.woocommerce-page.woocommerce-checkout form .payment-method-heading,
.woocommerce-page.woocommerce-checkout form .woocommerce-company-information,
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-checkboxes,
.woocommerce-page.woocommerce-checkout form .checkout-section-title { margin-top: 1em; }

.woocommerce-page.woocommerce-checkout form #order_review {
	padding: 0;
	border: none;
}

.woocommerce-page.woocommerce-checkout form #order_review .white-wrapper { background-color: #ffffff; padding: 1em }

.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-account-type .woocommerce-input-wrapper label,
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-company-information #company_status_field label
{
	position: relative;
	opacity: inherit;
	margin: 0;
	padding: 0;
}

.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-company-information label {
	opacity: 1;
}
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-company-information input[type='text'] {
	padding: 1.3em .8em .2em .8em;
}
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-company-information #company_status_field label {
	margin-bottom: 1em;
}

.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-account-type .woocommerce-input-wrapper input,
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-company-information #company_status_field .woocommerce-input-wrapper input {
	width: 15px;
	float: left;
	display: inline-block;
	margin-top: 4px;
	margin-right: 10px;
}
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-account-type .woocommerce-input-wrapper label,
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-company-information #company_status_field .woocommerce-input-wrapper label {
	width: calc(100% - 25px);
	float: left;
	display: inline-block;
	font-size: 14px;
}

.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-account-type .woocommerce-input-wrapper label:first-of-type { margin-bottom: 2.75em; }

.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-account-type .woocommerce-account-type__field-wrapper,
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper,
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .shipping_address,
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-checkboxes__field-wrapper,
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-company-information .woocommerce-company-information__field-wrapper {
	background-color: #ffffff;
	padding: 1em;
}

.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-shipping-fields,
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-additional-fields { margin-top: 1em; }
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-account-type { margin-bottom: 1em; }
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-additional-fields .woocommerce-checkboxes__field-wrapper { display: flex; padding-bottom: 0; }
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-additional-fields .woocommerce-checkboxes__field-wrapper:last-child { padding-bottom: 1em; }
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-additional-fields .woocommerce-checkboxes__field-wrapper .required { color: red; border: none; text-decoration: none; font-weight: 700; }
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-additional-fields .woocommerce-checkboxes__field-wrapper p { margin: 0; }
.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-additional-fields .woocommerce-checkboxes__field-wrapper a { text-decoration: underline; }

.woocommerce-page.woocommerce-checkout form #customer_details.col2-set .col-1 .woocommerce-account-type .woocommerce-error {
	margin-bottom: 1em;
}

.woocommerce-page.woocommerce-checkout form .woocommerce-checkout-review-order .woocommerce-form-coupon-toggle { display: none; }

.woocommerce-checkout .form-login-heading {
	border-top: none;
	background-color: #003365;
	color: #ffffff;
	text-transform: uppercase;
    font-weight: bold;
    padding: 1em;
    font-size: 1.2rem;
    margin-bottom: 0;
}

.woocommerce-checkout .woocommerce-form-login {
	background-color: #ffffff;
	padding: 1em;
	border: 0 !important;
	margin-top: 0 !important;
	border-radius: 0 !important;
}

.woocommerce-checkout form .form-row select,
.woocommerce-checkout form .form-row input,
.woocommerce-checkout form .form-row input::placeholder,
.woocommerce-checkout form #billing_country_field label {
	font-size: 14px;
}

.woocommerce-checkout form label span.woocommerce-terms-and-conditions-checkbox-text,
.ast-checkout-labels-as-placeholders form #customer_details .woocommerce-checkboxes .form-row label.checkbox {
	font-weight: normal;
	line-height: 1.5;
}
.woocommerce-checkout form label span.woocommerce-terms-and-conditions-checkbox-text a,
.ast-checkout-labels-as-placeholders form #customer_details .woocommerce-checkboxes .form-row label.checkbox a {
	text-decoration: underline;
}

.woocommerce-checkout form .woocommerce-terms-and-conditions-wrapper label {
    line-height: 1;
}
.woocommerce-checkout form .woocommerce-terms-and-conditions-wrapper a { text-decoration: underline; }

.woocommerce-checkout form #healy_consent_nl_optin_field label {
    font-weight: normal;
    line-height: 1;
}

.woocommerce-page.woocommerce-checkout #payment #place_order {
    margin-top: 1em;
}

.woocommerce-checkout button.button-coupon {
	line-height: 20px;
}

.woocommerce-checkout button.button-coupon:hover {
	background-color: #d95bb7;
}

.woocommerce-page.woocommerce-checkout #payment #place_order.button-order {
	background-color: #003365;
}

.woocommerce-page.woocommerce-checkout #payment #place_order.button-order:hover {
	background-color: #d95bb7;
}

.woocommerce-page.woocommerce-checkout .woocommerce-form-login__submit {
	margin-top: 1em;
}
.woocommerce-page.woocommerce-checkout .woocommerce-form-login__submit:hover {
	background-color: #d95bb7;
}

.woocommerce-page.woocommerce-checkout .lost_password a {
	font-size: 12px;
}

.woocommerce-checkout .checkout-notice p {
	border: 1px solid #d95bb7; padding: 1em; margin-bottom: 2em;
}

/* hide email on checkout if user logged in */
.logged-in .woocommerce .woocommerce-checkout .woocommerce-billing-fields #billing_email_field,
.logged-in .woocommerce .woocommerce-checkout .woocommerce-billing-fields #billing_em_ver_field {
	display: none;
}

/* cart! */

.woocommerce a.button,
.woocommerce-cart-form a.button,
.woocommerce-cart-form button.button,
.cart-collaterals .wc-proceed-to-checkout a {
	border: none;
	text-transform: uppercase

}
.woocommerce-cart-form a.button:hover,
.woocommerce-cart-form button.button:hover,
.cart-collaterals .wc-proceed-to-checkout a.button:hover {
	background-color: #d95bb7;
	border: none;
}

.woocommerce-cart .shipping-calculator-button {
	color: #003365 !important;
	text-decoration: underline;
}
.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout { width: max-content; margin-left: auto; margin-right: auto;  }
.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout a { padding-left: 2em; padding-right: 2em; }

/* mobile formatting shipping options on cart view */
@media (max-width: 768px) {
	.woocommerce-cart ul#shipping_method {
		clear: both;
		text-align: left;
		margin-top: 30px;
	}

	.woocommerce-cart ul#shipping_method li {
		padding: .5em 0 .5em 22px;
	}

	.woocommerce-cart .woocommerce-shipping-calculator {
		text-align: center;
		margin-bottom: 10px;
	}

	.woocommerce-cart .woocommerce-shipping-calculator > a {
		font-weight: bold;
	}

	.woocommerce-cart .woocommerce-shipping-destination  {
		display: inline-block;
        text-align: left;
		margin-top: 0px;
		opacity: 0.5;
		margin-bottom: 15px;
	}
}

/* flex box layouted checkbox label with checkbox and text */
.woocommerce form .form-row label.flex-checkbox-label {
	display: flex;
}

.woocommerce form .form-row label.flex-checkbox-label > * {
	display: block;
}

.woocommerce form .form-row label.flex-checkbox-label input[type='checkbox'] {
	margin: 3px 8px 0 0;
}

.woocommerce-checkout form .woocommerce-terms-and-conditions-wrapper .form-row label { font-weight: normal; }

/* mini cart! */

.site-header .ast-site-header-cart-data .button.wc-forward:hover,
.woocommerce .widget_shopping_cart .woocommerce-mini-cart__buttons .checkout.wc-forward:hover {
	background-color: #d95bb7;
}

.woocommerce-order-received #content {
	background-color: #ffffff;
}

.woocommerce form.woocommerce-checkout .healy-read-only label {
	padding: 0 !important;
}

.woocommerce form.woocommerce-checkout .healy-read-only input {
	padding-left: 0;
	padding-right: 0;
	padding-top: 0;
	border: none;
}

.woocommerce form.woocommerce-checkout .healy-read-only abbr {
	display: none;
}

.woocommerce form.woocommerce-checkout #shipping_country_field .select2 {
	display: none !important;
}

@media (max-width: 768px) {
	.woocommerce #content table.cart .product-thumbnail, .woocommerce table.cart .product-thumbnail, .woocommerce-page #content table.cart .product-thumbnail, .woocommerce-page table.cart .product-thumbnail {
		display: block;
		text-align: left !important;
	}
	.woocommerce table.shop_table_responsive tr td.product-thumbnail::before, .woocommerce-page table.shop_table_responsive tr td.product-thumbnail::before {
		display: none;
	}
}

.woocommerce form.woocommerce-checkout .field-type--select.healy-read-only .woocommerce-input-wrapper > strong {
	font-weight: normal;
	color: #666666;
}

.woocommerce form.woocommerce-checkout .field-type--select.healy-read-only select,
.woocommerce form.woocommerce-checkout .field-type--select.healy-read-only .select2 {
	pointer-events: none;
	background: transparent;
	border: none;
	padding: 0;
	appearance: none;
}

.woocommerce form.woocommerce-checkout .healy-read-only label {
	opacity: 1 !important;
	position: static !important;
}

.woocommerce form.woocommerce-checkout .field-type--select.healy-read-only .select2-container {
	padding-left: 0;
	padding-right: 0;
	padding-top: 0;
	border: none;
}

.woocommerce form.woocommerce-checkout .field-type--select.healy-read-only .select2-selection__arrow {
	display: none;
}

.woocommerce form.woocommerce-checkout .field-type--select.healy-read-only .select2-selection.select2-selection--single {
	padding-left: 0;
	padding-top: 5px;
	border: none;
}

.healy-note {
	background: #ffffff;
	display: inline-block;
	border: 2px solid #d554b1;
	padding: 1em;
	margin-bottom: 2em;
	font-weight: bold;
	width: 100%;
	font-size:14px;
}

.healy-note--small {
	margin: 0.75em 0 1em;
	font-size: 13px;
	padding: 1em 1em 0.75em;
	line-height: 1.65em;
	font-weight: normal;
	border-color: #c9c9c9;
	border-width: 1px;
}

.healy-note--small a {
	color: #d554b1;
	font-weight: bold;
}

.healy-note--small a svg {
	width: 15px;
	position: relative;
	top: 1px;
}

.healy-note--small a svg path {
	fill: #d554b1;
}

/* Work against Astra */

form #order_review:not(.elementor-widget-woocommerce-checkout-page #order_review){
    padding: 0;
    border: none;
}

form #order_review_heading:not(.elementor-widget-woocommerce-checkout-page #order_review_heading){
    border:none;
    padding:0;
}

.ast-checkout-labels-as-placeholders form #customer_details .form-row.ast-float-label #billing_address_2 {
	padding: 1.3em .8em .2em .8em;
}

.woocommerce form .form-row.woocommerce-invalid .woocommerce-checkboxes__field-wrapper,
.ast-checkout-labels-as-placeholders form #customer_details .woocommerce-checkboxes  .form-row.woocommerce-invalid label.checkbox,
.woocommerce form .form-row.woocommerce-invalid .select2-container,
.woocommerce form .form-row.woocommerce-invalid input.input-text,
.woocommerce form .form-row.woocommerce-invalid select {
    border-color: #d65d67;
}

.woocommerce form .form-row.woocommerce-validated .woocommerce-checkboxes__field-wrapper,
.ast-checkout-labels-as-placeholders form #customer_details .woocommerce-checkboxes .form-row.woocommerce-validated label.checkbox,
.woocommerce form .form-row.woocommerce-validated .select2-container,
.woocommerce form .form-row.woocommerce-validated input.input-text,
.woocommerce form .form-row.woocommerce-validated select {
    border-color: #69bf29;
}

.woocommerce-checkout .ast-small-footer .ast-container {
    max-width: 100%;
}

/** Recurring cart & checkout visual separation **/
.woocommerce-cart h2.cart-label--recurring  {
	margin: 40px -20px 0 -20px !important;
    border-top: 1px solid var(--ast-border-color);
	border-bottom: 1px solid var(--ast-border-color);
	position: relative;
    left: -15px;
    width: calc(100% + 70px);
    font-weight: 600;
    font-size: 16px;
	text-align: left;
	background-color: #fbfbfb;
}

.woocommerce-checkout h2.cart-label--recurring  {
    border-top: 20px solid #f4f4f4;
	margin: 0 -24px 0 -15px;
    border-top: 20px solid #f4f4f4;
    padding: 20px 20px 5px;
    font-size: 1.125em;
    text-align: left !important;
}

.woocommerce-cart .recurring-totals-note,
.woocommerce-checkout .recurring-totals-note {
	color: #d554b1;
	font-weight: 600;
	font-size: 13px;
}

.woocommerce-cart .recurring-totals-note td,
.woocommerce-checkout .recurring-totals-note td {
	padding-bottom: 20px !important;
	text-align: left !important;
	border-top: none !important;
}

@media screen and (max-width: 768px) {
	.woocommerce-cart h2.cart-label--recurring {
		left: -13px;
		width: calc(100% + 67px);
	}

	.woocommerce-page.woocommerce-checkout form #order_review tr.recurring-totals-note td:nth-last-child(1) {
		text-align: left !important;
	}

	.woocommerce table.shop_table_responsive tr.recurring-totals-note td::before,
	.woocommerce-page table.shop_table_responsive tr.recurring-totals-note td::before {
		display: none;
	}

	.woocommerce table.shop_table_responsive tr.recurring-totals-note td,
	.woocommerce-page table.shop_table_responsive tr.recurring-totals-note td {
		text-align: left !important;

	}
}

.woocommerce-checkout .recurring-totals__susbcription-name,
.woocommerce-cart .recurring-totals__susbcription-name {
    font-size: 0.825em;
    font-weight: 600;
    color: #003365;
}

.woocommerce-checkout .recurring-totals__susbcription-name {
	margin-bottom: 0.25em;
}

@media (max-width: 768px) {
	.woocommerce-cart tr.recurring-total td:nth-child(2) .recurring-totals__susbcription-name,
	.woocommerce-checkout tr.recurring-total td:nth-child(2) .recurring-totals__susbcription-name {
		margin-top: 2.5em;
	}
}

.woocommerce-checkout .recurring-totals__discount-badge,
.woocommerce-cart .recurring-totals__discount-badge {
  color: rgb(213, 84, 177);
  border: 1px solid rgb(213, 84, 177);
  text-transform: uppercase;
  font-size: 0.85em;
  font-weight: 600;
  padding: 1px 3px;
  border-radius: 4px;
}

#order_review .bundled_table_item_price, #order_review .bundled_table_item_subtotal {
    white-space: inherit;
}

/**
 Hermann Azong
 */
.woocommerce-cart  .cross_sell_elements_2 ul.products li.product .astra-shop-summary-wrap{
    padding:0px;
}

 .woocommerce-cart .cross_sell_elements_1 ul.products {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.woocommerce-cart .cross_sell_elements_1 ul.products li {
    width: calc(70% - 10px) !important;
}

.woocommerce-cart .cross_sell_elements_1 ul.products li .astra-shop-bottom-wrap {
    text-align: center;
}

.woocommerce-cart .cross_sell_elements_1 .woocommerce-loop-product__title{
    text-align: center;
}

@media (max-width: 768px) {
    .woocommerce-cart .cart-collaterals .cross_sell_elements_1 ul.products li.product {
        margin: 0 0 1em 0;
    	padding: 0;
	}
}
