/*
Theme Name: natastro

WooCommerce styles override
*/

/**
 * Shop tables
 */
table.shop_table_responsive thead {
	display: none;
}

table.shop_table_responsive tbody th {
	display: none;
}

table.shop_table_responsive tr td {
	display: block;
	text-align: right;
	clear: both;
}

table.shop_table_responsive tr td::before {
	content: attr(data-title) ": ";
	float: left;
}

table.shop_table_responsive tr td.product-remove a {
	text-align: left;
}

table.shop_table_responsive tr td.product-remove::before {
	display: none;
}

table.shop_table_responsive tr td.actions::before,
table.shop_table_responsive tr td.download-actions::before {
	display: none;
}

table.shop_table_responsive tr td.download-actions .button {
	display: block;
	text-align: center;
}

@media screen and (min-width: 48em) {

	table.shop_table_responsive thead {
		display: table-header-group;
	}

	table.shop_table_responsive tbody th {
		display: table-cell;
	}

	table.shop_table_responsive tr th,
	table.shop_table_responsive tr td {
		text-align: left;
	}

	table.shop_table_responsive tr td {
		display: table-cell;
	}

	table.shop_table_responsive tr td::before {
		display: none;
	}
}

/**
 * Products
 */
ul.products {
	margin: 0;
	padding: 0;
}

ul.products li.product {
	list-style: none;
	position: relative;
	margin-bottom: 2em;
}

ul.products li.product img {
	display: block;
}

ul.products li.product .button {
	display: block;
}

@media screen and (min-width: 48em) {

	ul.products li.product {
		width: 30.79667%;
		float: left;
		margin-right: 3.8%;
	}

	ul.products li.product.first {
		clear: both;
	}

	ul.products li.product.last {
		margin-right: 0;
	}

	ul.products.columns-1 li.product {
		float: none;
		width: 100%;
	}

	ul.products.columns-2 li.product {
		width: 48.1%;
	}

	ul.products.columns-3 li.product {
		width: 30.79667%;
	}

	ul.products.columns-4 li.product {
		width: 22.15%;
	}

	ul.products.columns-5 li.product {
		width: 16.96%;
	}

	ul.products.columns-6 li.product {
		width: 13.49333%;
	}
}

/**
 * Single product
 */
.single-product div.product {
	position: relative;
}

.single-product div.product .woocommerce-product-gallery {
	position: relative;
	float: left;
}

.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
	position: absolute;
	top: 2em;
	right: 1em;
	display: block;
	z-index: 99;
}

.single-product div.product .woocommerce-product-gallery .flex-viewport {
	margin-bottom: 1em;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
	margin: 0;
	padding: 0;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
	list-style: none;
	cursor: pointer;
	float: left;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img {
	opacity: 0.5;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
	opacity: 1;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li:hover img {
	opacity: 1;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-2 .flex-control-thumbs li {
	width: 48.1%;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-2 .flex-control-thumbs li:nth-child(2n) {
	margin-right: 0;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-2 .flex-control-thumbs li:nth-child(2n+1) {
	clear: both;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-3 .flex-control-thumbs li {
	width: 30.79667%;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n) {
	margin-right: 0;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n+1) {
	clear: both;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li {
	width: 22.15%;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n) {
	margin-right: 0;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1) {
	clear: both;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li {
	width: 16.96%;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n) {
	margin-right: 0;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n+1) {
	clear: both;
}

.stock:empty::before {
	display: none;
}

.stock.in-stock {
	color: #0f834d;
}

.stock.out-of-stock {
	color: #e2401c;
}

/**
 * Checkout
 */
@media screen and (min-width: 768px) {

	.col2-set .form-row-first {
		float: left;
		margin-right: 3.8%;
	}

	.col2-set .form-row-last {
		float: right;
		margin-right: 0;
	}

	.col2-set .form-row-first,
	.col2-set .form-row-last {
		width: 48.1%;
	}
}

/**
 * General WooCommerce components
 */

/**
 * Header cart
 */
.site-header-cart {
	position: relative;
	margin: 0;
	padding: 0;
}

.site-header-cart .cart-contents {
	text-decoration: none;
}

.site-header-cart .widget_shopping_cart {
	display: none;
}

.site-header-cart .product_list_widget {
	margin: 0;
	padding: 0;
}

/**
 * Star rating
 */
.star-rating {
	overflow: hidden;
	position: relative;
	height: 1.618em;
	line-height: 1.618;
	width: 5.3em;
	font-family: star;
	font-weight: 400;
}

.star-rating::before {
	content: "\53\53\53\53\53";
	opacity: 0.25;
	float: left;
	top: 0;
	left: 0;
	position: absolute;
}

.star-rating span {
	overflow: hidden;
	float: left;
	top: 0;
	left: 0;
	position: absolute;
	padding-top: 1.5em;
}

.star-rating span::before {
	content: "\53\53\53\53\53";
	top: 0;
	position: absolute;
	left: 0;
	color: #4169e1;
}

p.stars a {
	position: relative;
	height: 1em;
	width: 1em;
	text-indent: -999em;
	display: inline-block;
	text-decoration: none;
	margin-right: 1px;
	font-weight: 400;
}

p.stars a::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1em;
	height: 1em;
	line-height: 1;
	font-family: star;
	content: "\53";
	color: #404040;
	text-indent: 0;
	opacity: 0.25;
}

p.stars a:hover ~ a::before {
	content: "\53";
	color: #404040;
	opacity: 0.25;
}

p.stars:hover a::before {
	content: "\53";
	color: #4169e1;
	opacity: 1;
}

p.stars.selected a.active::before {
	content: "\53";
	color: #4169e1;
	opacity: 1;
}

p.stars.selected a.active ~ a::before {
	content: "\53";
	color: #404040;
	opacity: 0.25;
}

p.stars.selected a:not(.active)::before {
	content: "\53";
	color: #4169e1;
	opacity: 1;
}

/**
 * Tabs
 */
.woocommerce-tabs ul.tabs {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: left;
}

.woocommerce-tabs ul.tabs li {
	display: block;
	margin: 0;
	position: relative;
}

.woocommerce-tabs ul.tabs li a {
	padding: 1em 0;
	display: block;
}

.woocommerce-tabs .panel h2:first-of-type {
	margin-bottom: 1em;
}

/**
 * Password strength meter
 */
.woocommerce-password-strength {
	text-align: right;
}

.woocommerce-password-strength.strong {
	color: #0f834d;
}

.woocommerce-password-strength.short {
	color: #e2401c;
}

.woocommerce-password-strength.bad {
	color: #e2401c;
}

.woocommerce-password-strength.good {
	color: #3d9cd2;
}

/**
 * Forms
 */
.form-row.woocommerce-validated input.input-text {
	box-shadow: inset 2px 0 0 #0f834d;
}

.form-row.woocommerce-invalid input.input-text {
    box-shadow: inset 2px 0 0 #e2401c;
    background: #ffebe5;
}

.required {
    color: #f00;
    display: none;
}

/**
 * Notices
 */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews,
p.no-comments {
    background-color: #0f834d;
    clear: both;
    font-size: 18px;
    padding: 10px 15px;
    color: #fff;
    border-radius: 10px;
    margin-bottom: 20px;
}

.woocommerce-message:focus-visible,
.woocommerce-info:focus-visible,
.woocommerce-error:focus-visible,
.woocommerce-noreviews:focus-visible,
p.no-comments:focus-visible {
    outline: none;
}

.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a,
.woocommerce-noreviews a,
p.no-comments a {
    color: #fff;
}

.woocommerce-info,
.woocommerce-noreviews,
p.no-comments {
	background-color: #bfe2ff;
}

.woocommerce-order-pay .woocommerce-info {
	background-color: transparent;
}

.woocommerce-error {
	background-color: #e2401c;
}

.demo_store {
	position: fixed;
	left: 0;
	bottom: 0;
	right: 0;
	margin: 0;
	padding: 1em;
	background-color: #bfe2ff;
	z-index: 9999;
}

.woocommerce-info {
    color: #404040;
    padding: 10px 30px;
    border-radius: 10px;
    margin-bottom: 2rem;
}

.woocommerce-info a {
    color: #404040;
}

form.checkout_coupon {
    padding: 0 30px;
    color: #404040;
}

.woocommerce-checkout h3 {
    text-align: center;
    font-size: 2rem;
    color: #00319f;
    margin-bottom: 2rem;
}

.woocommerce-checkout .button.alt {
    border-radius: 10px;
    background: #9f5100;
    color: #fff;
    line-height: 1;
    padding: 15px 60px;
    font-size: 22px;
    font-weight: 500;
    text-transform: uppercase;
    display: inline-block;
    text-decoration: none;
    letter-spacing: 0.1rem;
    margin: 0 auto;
    display: block;
    margin-bottom: 2rem;
    border: none;
}

.woocommerce-checkout .button.alt:hover {
    background: #6f3900;
}

/* Woo */
/*.woocommerce-billing-fields__field-wrapper {
    display: flex;
    flex-flow: column;
}

.woocommerce-billing-fields__field-wrapper p {
    width: 50%;
    margin: 0 auto;
}

.woocommerce-billing-fields__field-wrapper p label {
    width: 20%;
}

.woocommerce-billing-fields__field-wrapper p span {
    width: 80%;
}*/


.woocommerce-billing-fields__field-wrapper {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    /* grid-template-rows: repeat(3, 1fr); */
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    margin-bottom: 3rem;
}
    
.woocommerce-billing-fields__field-wrapper #billing_first_name_field {
    grid-column: span 4 / span 4;
}

.woocommerce-billing-fields__field-wrapper #billing_last_name_field {
    grid-column: span 4 / span 4;
    grid-column-start: 5;
}

.woocommerce-billing-fields__field-wrapper #billing_email_field {
    grid-column: span 4 / span 4;
	grid-column-start: 9;

}

.woocommerce-billing-fields__field-wrapper #billing_date_of_birth_field {
    grid-column: span 3 / span 3;
    grid-row-start: 2;
	margin-top: 2rem;
}

.woocommerce-billing-fields__field-wrapper #billing_time_of_birth_field {
    grid-column: span 3 / span 3;
    grid-column-start: 4;
    grid-row-start: 2;
	margin-top: 2rem;
}

.woocommerce-billing-fields__field-wrapper #billing_place_of_birth_field {
    grid-column: span 6 / span 6;
    grid-column-start: 7;
    grid-row-start: 2;
	margin-top: 2rem;
}

.woocommerce-billing-fields__field-wrapper #billing_place_life_field {
    grid-column: span 8 / span 8;
    grid-row-start: 3;
	margin-top: 2rem;
}

.woocommerce-billing-fields__field-wrapper #billing_date_start_field {
    grid-column: span 4 / span 4;
	grid-column-start: 9;
    grid-row-start: 3;
	margin-top: 2rem;
}

.woocommerce-billing-fields__field-wrapper #billing_confirm_field {
    grid-column: span 12 / span 12;
    grid-column-start: 1;
    grid-row-start: 4;
	margin-top: 2rem;
}

/* Иконка вопроса */
.field-tooltip {
    position: relative;
    display: inline-block;
    margin-left: 8px;
    cursor: pointer;
    color: #777;
}

.field-tooltip .icon_q {
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640' fill='%239f5100'%3e%3cpath d='M528 320C528 205.1 434.9 112 320 112C205.1 112 112 205.1 112 320C112 434.9 205.1 528 320 528C434.9 528 528 434.9 528 320zM64 320C64 178.6 178.6 64 320 64C461.4 64 576 178.6 576 320C576 461.4 461.4 576 320 576C178.6 576 64 461.4 64 320zM320 240C302.3 240 288 254.3 288 272C288 285.3 277.3 296 264 296C250.7 296 240 285.3 240 272C240 227.8 275.8 192 320 192C364.2 192 400 227.8 400 272C400 319.2 364 339.2 344 346.5L344 350.3C344 363.6 333.3 374.3 320 374.3C306.7 374.3 296 363.6 296 350.3L296 342.2C296 321.7 310.8 307 326.1 302C332.5 299.9 339.3 296.5 344.3 291.7C348.6 287.5 352 281.7 352 272.1C352 254.4 337.7 240.1 320 240.1zM288 432C288 414.3 302.3 400 320 400C337.7 400 352 414.3 352 432C352 449.7 337.7 464 320 464C302.3 464 288 449.7 288 432z'/%3e%3c/svg%3e");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    color: #000e1a;
    cursor: help;
	margin-bottom: 2px;
}

.field-tooltip .tooltip-text {
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: 220px;
    background-color: #00319f;
    color: #fff;
    text-align: center;
    padding: 8px 10px;
    border-radius: 4px;
    font-size: 13px;
    line-height: 1.4;
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s, visibility 0.2s;
    margin-bottom: 6px;
}

.field-tooltip .tooltip-text::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #00319f transparent transparent transparent;
}

.field-tooltip:hover .tooltip-text,
.field-tooltip:focus .tooltip-text {
    opacity: 1;
    visibility: visible;
}

@media (hover: none) and (pointer: coarse) {
    .field-tooltip .tooltip-text {
        display: none; 
    }
    .field-tooltip.active .tooltip-text {
        display: block;
        opacity: 1;
        visibility: visible;
    }
}

/**/

#billing_confirm_field .checkbox {
    margin-left: 0;
}

#billing_confirm_field .checkbox input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin: 0;
    cursor: pointer;
    accent-color: #002f9e;
    margin-right: 5px;
}

#billing_confirm_field .woocommerce-input-wrapper {
    display: block;
}


.woocommerce-billing-fields__field-wrapper .form-row-wide {
    margin: 0;
}

.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper input, .woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper textarea {
    width: 100%;
    padding: 5px 15px;
    border-color: #002f9e;
}

.wc_payment_methods {
    padding: 30px;
    border: 1px solid #a3a3a3;
    border-radius: 10px;
    background: #fff;
    width: max-content;
    min-width: 50%;
    margin: 0 auto 4rem;
}

.woocommerce-privacy-policy-text {
    margin: 0 0 3rem;
}

.woocommerce-terms-and-conditions-wrapper {
    text-align: center;
}


li.wc_payment_method {
  display: flex;
  cursor: pointer;
  font-weight: 500;
  position: relative;
  overflow: hidden;
  margin-bottom: 0.375em;
  /* Accessible outline */
  /* Remove comment to use */ 
  /*
    &:focus-within {
        outline: .125em solid #00005c;
    }
  */
  input {
    position: absolute;
    left: -9999px;
    &:checked + label {
      background-color: #f2f2f2;
	  border: 1px solid #00319f;
      &:before {
        box-shadow: inset 0 0 0 0.4375em #00005c;
      }
    }
  }
  label {
	display: flex;
	align-items: center;
	width: 100%;
	margin: 0;
	gap: 10px;
	position: relative;
	padding: 7px 12px;
	border-radius: 10px; // or something higher...
	transition: 0.25s ease;
	padding-left: 50px;
	border: 1px solid transparent;
		&:hover {
		background-color: #f2f2f2;
		border: 1px solid #00319f;
		}
    /*&:before {
      display: flex;
      flex-shrink: 0;
      content: "";
      background-color: #fff;
      width: 1.5em;
      height: 1.5em;
      border-radius: 50%;
      margin-right: 0.375em;
      transition: 0.25s ease;
      box-shadow: inset 0 0 0 0.125em #00005c;
    }*/
	img {
		position: absolute;
		left: 10px;
		width: auto;
        height: 25px;
	}
  }
  
}

li.wc_payment_method:last-child {
    margin-bottom: 0;
}
.payment_box {
    /* display: flex; */
    align-items: center;
    display: none !important;
}
.payment_box p {
    margin: 0;
    font-size: 15px;
    font-weight: 300;
    margin-left: 10px;
}

.woocommerce-input-wrapper textarea {
    padding: 5px 15px;
}

.woocommerce-checkout label {
    margin-bottom: 7px;
    margin-left: 15px;
}

input:focus-visible {
    outline-color: #002f9e;
}


.checkout-inline-error-message {
    display: none;
}

.woocommerce-table--order-details {
    margin-bottom: 4rem;
}

.woocommerce-thankyou-order-details {
    margin-bottom: 4rem;
}

.woocommerce-customer-details address {
    background: #fff;
    box-shadow: 0 1px 4px #e3ebfc, 0 1px 25px #dfecf9;
    border-radius: 10px;
    padding: 1.5rem 1.5rem 1.5rem 1.5rem;
    margin-bottom: 4rem;
}

.woocommerce-customer-details address p {
    margin-bottom: 0;
}

@media screen and (min-width: 48em) {

	/**
	 * Header cart
	 */
	.site-header-cart .widget_shopping_cart {
		position: absolute;
		top: 100%;
		width: 100%;
		z-index: 999999;
		left: -999em;
		display: block;
		box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	}

	.site-header-cart:hover .widget_shopping_cart,
	.site-header-cart.focus .widget_shopping_cart {
		left: 0;
		display: block;
	}
}

/**
 * WooCommerce widgets
 */

/**
 * WooCommerce Price Filter
 */
.widget_price_filter .price_slider {
	margin-bottom: 1.5em;
}

.widget_price_filter .price_slider_amount {
	text-align: right;
	line-height: 2.4;
}

.widget_price_filter .price_slider_amount .button {
	float: left;
}

.widget_price_filter .ui-slider {
	position: relative;
	text-align: left;
}

.widget_price_filter .ui-slider .ui-slider-handle {
	position: absolute;
	z-index: 2;
	width: 1em;
	height: 1em;
	cursor: ew-resize;
	outline: none;
	background: #4169e1;
	box-sizing: border-box;
	margin-top: -0.25em;
	opacity: 1;
}

.widget_price_filter .ui-slider .ui-slider-handle:last-child {
	margin-left: -1em;
}

.widget_price_filter .ui-slider .ui-slider-handle:hover,
.widget_price_filter .ui-slider .ui-slider-handle.ui-state-active {
	box-shadow: 0 0 0 0.25em rgba(0, 0, 0, 0.1);
}

.widget_price_filter .ui-slider .ui-slider-range {
	position: absolute;
	z-index: 1;
	display: block;
	border: 0;
	background: #4169e1;
}

.widget_price_filter .price_slider_wrapper .ui-widget-content {
	background: rgba(0, 0, 0, 0.1);
}

.widget_price_filter .ui-slider-horizontal {
	height: 0.5em;
}

.widget_price_filter .ui-slider-horizontal .ui-slider-range {
	height: 100%;
}

.woocommerce-checkout-review-order-table {
    margin-bottom: 4rem;
}

#customer_details {
    margin-bottom: 4rem;
}

.woocommerce-checkout-review-order-table td, .woocommerce-checkout-review-order-table th {
    border: 1px solid #a3a3a3;
    padding: 10px 20px;
    background: #fff;
    font-size: 18px;
    font-weight: normal;
}

.woocommerce-checkout .shop_table.cart td, .woocommerce-checkout .shop_table.cart th {
    border: 1px solid #a3a3a3;
    padding: 10px 20px;
    background: #fff;
    font-size: 18px;
    font-weight: normal;
}

.woocommerce-checkout a.remove {
    margin-left: 2px;
    text-decoration: none;
    color: #9f5100;
    border: 1px solid #fff;
    padding: 0 3px;
}

.woocommerce-checkout a.remove svg {
    width: 18px;
    fill: #9f5100;
    margin-bottom: 2px;
}

.woocommerce-checkout a.remove:hover {
    color: #00319f;
    border: 1px solid #00319f;
}

.woocommerce-checkout a.remove:hover svg {
    fill: #00319f;
}

strong.product-quantity {
    font-weight: normal;
}

.disc_m {
    text-align: center;
    margin-bottom: 2rem;
    font-size: 18px;
}
.form-row.woocommerce-invalid input.input-checkbox {
    box-shadow: 0px 0 2px 2px #e2401c;
}

.form-row.woocommerce-validated input.input-checkbox {
    box-shadow: none;
}


ul.woocommerce-error {
    padding: 30px 30px 30px 50px;
    border-radius: 10px;
    display: none;
}
ul.woocommerce-error li {
    color: #fff;
}

ul.woocommerce-error li a {
    color: #fff;
}

ul.woocommerce-error li a:hover {
    text-decoration: none;
}

.woocommerce-thankyou-order-received {
    background: #bfe2ff;
    padding: 0.7rem 1.5rem;
    border-radius: 10px;
    font-size: 18px;
    text-align: center;
}

ul.woocommerce-thankyou-order-details {
    background: #fff;
    box-shadow: 0 1px 4px #e3ebfc, 0 1px 25px #dfecf9;
    border-radius: 10px;
    padding: 1.5rem 1.5rem 1.5rem 3rem;
}

h2.woocommerce-order-details__title {
    font-family: 'IBM Plex Sans', sans-serif;
    text-align: center;
    margin-bottom: 2rem;
    color: #00319f;
    line-height: 1;
    font-size: 2rem;
}

.woocommerce-table--order-details td, .woocommerce-table--order-details th {
    border: 1px solid #a3a3a3;
    padding: 5px 10px;
    background: #fff;
    font-weight: normal;
}

.woocommerce-order-received .woocommerce-button.button, .woocommerce-order-pay .woocommerce-button.button {
    -webkit-appearance: none;
    appearance: none;
    border-radius: 10px;
    background: #00319f;
    border: 2px solid #00319f;
    color: #ffffff;
    line-height: 1;
    padding: 10px 30px;
    font-size: 1.05rem;
    display: inline-block;
    text-decoration: none;
    /* box-shadow: 2px 2px 13px 1px #0d3c7259; */
}

.woocommerce-order-received .woocommerce-button.button:hover, .woocommerce-order-pay .woocommerce-button.button:hover {
    background: transparent;
	border: 2px solid #00319f;
    color: #00319f;
}

.woocommerce-form.woocommerce-verify-email {
    text-align: center;
}

h2.woocommerce-column__title {
    text-align: center;
    margin-bottom: 2rem;
    color: #00319f;
    line-height: 1;
    font-size: 2rem;
}

.woocommerce-form.woocommerce-verify-email ul.woocommerce-error {
    padding: 10px 30px 10px 50px;
    border-radius: 10px;
    display: block;
    list-style: none;
    background: transparent;
    color: #e2401c;
    border: 2px solid #e2401c;
	outline-color: #e2401c !important;
}

.woocommerce-form.woocommerce-verify-email ul.woocommerce-error li {
    color: #e2401c;
}
/*
.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper input[type="date"] {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    padding: 5px 15px;
	border: 1px solid #002f9e;
	border-radius: 3px;
	font-size: 1rem;
    line-height: 1.5;
	height: 36px;
    background: #ffffff;
}

.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper input[type="date"]:not(:valid):before {
    content: attr(placeholder);
    color: #777;
    margin-right: 0.5em;
}
*/



/*Время*/

#billing_time_of_birth {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    padding: 5px 15px;
    border: 1px solid #002f9e;
    border-radius: 3px;
    font-size: 1rem;
    line-height: 1.5;
    height: 36px;
    /* background: #ffffff; */
    z-index: 1;
}

#billing_time_of_birth_field .woocommerce-input-wrapper {
    position: relative;
}

.timepicker-input-wrapper {
	position: relative;
	width: 100%;
}


.timepicker-trigger-icon {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    cursor: pointer;
    display: flex;
}


.timepicker-trigger-icon path {
	fill: #323232;
}

#billing_time_of_birth {
    padding-right: 40px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23777' d='M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2zm0 18.5c-4.7 0-8.5-3.8-8.5-8.5S7.3 3.5 12 3.5s8.5 3.8 8.5 8.5-3.8 8.5-8.5 8.5zM13 7h-2v6l5.2 3.2 1-1.6-4.2-2.6V7z'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: 20px;
    background-position: right 15px center;
}

#billing_date_of_birth,
#billing_date_start {
    padding-right: 40px !important;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3e%3cpath fill='%23777' d='M216 64C229.3 64 240 74.7 240 88L240 128L400 128L400 88C400 74.7 410.7 64 424 64C437.3 64 448 74.7 448 88L448 128L480 128C515.3 128 544 156.7 544 192L544 480C544 515.3 515.3 544 480 544L160 544C124.7 544 96 515.3 96 480L96 192C96 156.7 124.7 128 160 128L192 128L192 88C192 74.7 202.7 64 216 64zM216 176L160 176C151.2 176 144 183.2 144 192L144 240L496 240L496 192C496 183.2 488.8 176 480 176L216 176zM144 288L144 480C144 488.8 151.2 496 160 496L480 496C488.8 496 496 488.8 496 480L496 288L144 288z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-size: 20px;
    background-position: right 15px center;
}

.timepicker-trigger-icon svg {
    width: 100%;
    height: auto;
}

.ui-timepicker-div .ui-widget-header {
    display: none;
}

.ui-datepicker {
    width: 13rem !important;
}

.ui-timepicker-div .ui_tpicker_time_label, 
.ui-timepicker-div .ui_tpicker_time, 
.ui-timepicker-div .ui_tpicker_hour_label, 
.ui-timepicker-div .ui_tpicker_minute_label, 
.ui-timepicker-div .ui_tpicker_second_label {
    display: none;
}

.ui-timepicker-div .ui_tpicker_hour,
.ui-timepicker-div .ui_tpicker_minute,
.ui-timepicker-div .ui_tpicker_second {
    margin: 0;
    padding: 10px 5px;
}

.ui-timepicker-div dl {
    display: flex;
    justify-content: space-between;
    margin: 0;
}

.ui-timepicker-div .ui-timepicker-select {
    padding: 3px 23px 3px 10px;
    border: 1px solid #00319f !important;
    background: #fff !important;
    color: #00319f !important;
    appearance: none;
    -webkit-appearance: none;
    /* font-size: 0.8rem; */
    line-height: 1.2;
    font-family: 'IBM Plex Sans', sans-serif;
    -moz-appearance: none;
}

select.ui-timepicker-select:not([multiple]) {
    background-repeat: no-repeat !important;
    background-position: calc(100% - 0.25em) 50% !important;
    background-size: 0.85em auto !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 80'%3E%3Cpath d='M70.3 13.8L40 66.3 9.7 13.8z' fill='%2300319f'%3E%3C/path%3E%3C/svg%3E") !important;
}

.ui-datepicker .ui-datepicker-buttonpane {
    margin: 0 !important;
    display: flex;
    gap: 10px;
    padding: 10px !important;
    justify-content: center;
}

.ui-datepicker .ui-datepicker-buttonpane button {
    width: max-content !important;
    border: 1px solid #00319f;
    background: #bfe2ff;
    color: #00319f;
    float: none !important;
    margin: 0 !important;
    padding: 3px 16px !important;
    font-weight: 500;
    line-height: 1.2;
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
    width: 40% !important;
    margin: 0 !important;
    float: none !important;
    border: 1px solid #00319f;
    background: #fff;
    color: #00319f;
    display: none;
}

/*//Время*/
td.product-total {
	white-space: nowrap;
}


@media screen and (max-width: 768px) {

h2.woocommerce-order-details__title, h2.woocommerce-column__title {
    font-size: 1.5rem;
}

.woocommerce-checkout h3 {
    font-size: 1.5rem;
}

.woocommerce-checkout h1 {
    font-size: 2.3rem;
}

.woocommerce-billing-fields__field-wrapper {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    /* grid-template-rows: repeat(7, 1fr); */
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    margin-bottom: 3rem;
}


.woocommerce-billing-fields__field-wrapper #billing_first_name_field {
    grid-column: 1;
    grid-row-start: 1;
}

.woocommerce-billing-fields__field-wrapper #billing_last_name_field {
    grid-column: 1;
    grid-row-start: 2;
}

.woocommerce-billing-fields__field-wrapper #billing_email_field {
    grid-column: 1;
    grid-row-start: 3;
	margin-top: 1rem;
}

.woocommerce-billing-fields__field-wrapper #billing_date_of_birth_field {
    grid-column: 1;
    grid-row-start: 4;
	margin-top: 1rem;
}

.woocommerce-billing-fields__field-wrapper #billing_time_of_birth_field {
    grid-column: 1;
    grid-row-start: 5;
	margin-top: 1rem;
}

.woocommerce-billing-fields__field-wrapper #billing_place_of_birth_field {
    grid-column: 1;
    grid-row-start: 6;
	margin-top: 1rem;
}

.woocommerce-billing-fields__field-wrapper #billing_place_life_field {
    grid-column: 1;
    grid-row-start: 7;
	margin-top: 1rem;
}

.woocommerce-billing-fields__field-wrapper #billing_date_start_field {
    grid-column: 1;
	grid-row-start: 8;
	margin-top: 1rem;
}

.woocommerce-billing-fields__field-wrapper #billing_confirm_field {
    grid-column: 1;
    grid-row-start: 9;
	margin-top: 1rem;
}

.woocommerce-checkout label {
    margin-left: 0;
}

.wc_payment_methods {
    width: 100%;
}
	
}


@media (min-width: 768px) and (max-width: 1200px) {

.woocommerce-billing-fields__field-wrapper #billing_date_of_birth_field {
    grid-column: span 4 / span 4;
}

.woocommerce-billing-fields__field-wrapper #billing_time_of_birth_field {
    grid-column: span 4 / span 4;
    grid-column-start: 5;
}

.woocommerce-billing-fields__field-wrapper #billing_place_of_birth_field {
    grid-column: span 4 / span 4;
    grid-column-start: 9;

}
.field-tooltip {
    margin-left: 5px;
}

}

/* =Flatpickr — компактный, с крупным шрифтом и цветом #00319f
-------------------------------------------------------------- */
.flatpickr-calendar {
    font-size: 16px !important;
    width: 218px !important;
    max-width: 100%;
    border: 1px solid #e0e0e0;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.flatpickr-months {
    border-bottom: 2px solid #00319f;
}

.flatpickr-months .flatpickr-month {
    height: 30px !important;
}



.flatpickr-current-month {
    color: #00319f !important;
    padding: 5px 4px !important;
    font-size: 16px !important;
    height: 30px !important;
    display: flex !important;
    justify-content: space-between;
    line-height: 20px !important;
    align-items: center;
}

.flatpickr-monthDropdown-months {
    padding: 0px !important;
    font-weight: 500 !important;
    height: 20px !important;
}

.flatpickr-monthDropdown-months option {
	padding: 10px;
	background-color: white;
	color: #333;
}

.flatpickr-monthDropdown-months option:hover {
	background-color: #00319f;
	color: #fff;
}

.flatpickr-current-month input.cur-year {
    padding: 0px !important;
    font-weight: 500 !important;
}

.flatpickr-months .flatpickr-prev-month, .flatpickr-months .flatpickr-next-month {
    height: 30px !important;
    display: flex;
    justify-content: center;
    align-items: center;
}

.flatpickr-months .flatpickr-prev-month svg, .flatpickr-months .flatpickr-next-month svg {
    width: 10px !important;
    height: 10px !important;
}

.flatpickr-weekdays {
    height: 30px;
}
.flatpickr-weekday {
    font-size: 14px !important;
    font-weight: 600;
    color: #666;
}

.flatpickr-days {
    width: 218px !important;
    min-width: 218px !important;
    max-width: 218px !important;
	padding: 4px;
}

.dayContainer {
    width: 210px !important;
    min-width: 210px !important;
    max-width: 210px !important;
}


.flatpickr-day {
    max-width: 30px !important;
    max-height: 30px !important;
    height: 30px !important;
    width: 30px !important;
    line-height: 30px !important;
    margin: 1px;
    transition: all 0.15s ease;
    border-radius: 10px !important;
}

.flatpickr-day.today {
    border-color: #00319f !important;
}
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange {
    background: #00319f !important;
    color: #fff !important;
    font-weight: 600;
}
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover {
    background: #00267a !important; /* немного темнее при наведении */
}

.flatpickr-calendar.hasTime {
    width: 222px !important;
} 
.flatpickr-time {
    height: 30px !important;
    line-height: 30px !important;
    border-top: 1px solid #eee;
}

.time_select {
    display: flex;
    gap: 6px;
    align-items: center;
    font-size: 16px;
}

.time_select .hour, .time_select .minute, .time_select .second {
    width: 60px;
    padding: 6px 20px 6px 10px;
    font-size: 16px;
    outline-color: #00319f;
    appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3e%3cpath fill='%23000000' d='M297.4 470.6C309.9 483.1 330.2 483.1 342.7 470.6L534.7 278.6C547.2 266.1 547.2 245.8 534.7 233.3C522.2 220.8 501.9 220.8 489.4 233.3L320 402.7L150.6 233.4C138.1 220.9 117.8 220.9 105.3 233.4C92.8 245.9 92.8 266.2 105.3 278.7L297.3 470.7z'/%3e%3c/svg%3e");
    background-position: right 5px center;
    background-repeat: no-repeat;
    background-size: 13px;
}

.time_select option {
padding: 10px;
background-color: white;
color: #333;
}


.flatpickr-time .numInputWrapper {
    height: 30px !important;
}
.flatpickr-time input {
    font-size: 18px !important;
    font-weight: 600 !important;
    height: 30px !important;
    line-height: 30px !important;
    padding: 0 4px;
}

.flatpickr-time input:focus {
    background: #f9f9f9;
}

.flatpickr-custom-time {
    padding: 4px;
    border-top: 1px solid rgb(238, 238, 238);
}

.woocommerce-message.woocommerce-removed-item {
    background-color: #9f5100;
}