body.page-template-page-cart-checkout {
	--gambit-black: #232323;
	--gambit-grey: #868686;
	--gambit-divider: #dbdbdb;
	--gambit-blue: #3b78d6;
	--gambit-green: #04af53;
}

body.page-template-page-cart-checkout .cart-checkout-container {
	box-sizing: border-box;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 24px 0 90px;
}

body.page-template-page-cart-checkout .cart-left { width: 100%; }
body.page-template-page-cart-checkout .wrap-block { padding-top: 0; }
body.page-template-page-cart-checkout .wrap-block > .row { box-sizing: border-box; width: 100%; min-width: 0; }
body.page-template-page-cart-checkout .checkout-delivery .gambit-dellin-terminal { margin: 12px 0 0 28px; }
body.page-template-page-cart-checkout .gambit-dellin-terminal select { display: block; box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; margin-left: 0; }

.cart-checkout-form {
	display: grid;
	grid-template-columns: minmax(0, 683px) 373px;
	column-gap: 144px;
	align-items: start;
}

.cart-checkout-form > h2,
.cart-checkout-form > .woocommerce-NoticeGroup,
.cart-checkout-form > input[type="hidden"] {
	grid-column: 1 / -1;
}

.cart-checkout-form > h2 {
	margin: 0 0 28px;
	color: var(--gambit-black);
	font: 500 32px/40px Roboto, Arial, sans-serif;
}

.cart-l { grid-column: 1; min-width: 0; }
.cart-r { grid-column: 2; min-width: 0; position: sticky; top: 30px; }

.cart-checkout-form h3 {
	margin: 0 0 22px;
	color: var(--gambit-black);
	font: 600 26px/32px Roboto, Arial, sans-serif;
}

.cart-items { margin: 0 0 68px; }
.cart-item {
	display: grid;
	grid-template-columns: 58px minmax(180px, 1fr) auto 108px 24px;
	gap: 20px;
	align-items: center;
	min-height: 64px;
	margin-bottom: 18px;
	transition: opacity .2s ease;
}
.cart-item.is-loading { opacity: .55; }
.cart-item-thumbnail img {
	display: block;
	width: 58px;
	height: auto;
	aspect-ratio: 3 / 4;
	object-fit: contain;
}
.cart-item-title {
	margin: 0;
	color: var(--gambit-black);
	font: 400 15px/24px Roboto, Arial, sans-serif;
}
.cart-item-title > a { color: inherit; text-decoration: none; }
.cart-item-title > a:is(:hover, :focus-visible) { color: #232323; font-weight: 700; text-decoration: none; }
.cart-item-title > a:focus-visible { outline: 2px solid #3978d2; outline-offset: 3px; border-radius: 2px; }
.cart-item-quantity {
	display: flex;
	align-items: center;
	gap: 10px;
}
.cart-item-quantity button,
.cart-item-remove button {
	display: grid;
	place-items: center;
	border: 0;
	background: transparent;
	padding: 0;
	color: var(--gambit-grey);
	cursor: pointer;
}
.cart-item-quantity button { width: 20px; height: 44px; }
.cart-item-quantity button img { width: 14px; height: 14px; }
.cart-item-quantity button:not(:disabled):is(:hover, :focus-visible) img { filter: brightness(0); }
.cart-item-remove button:not(:disabled):is(:hover, :focus-visible) { color: #000; }
.qty-input {
	box-sizing: border-box;
	width: 58px;
	height: 50px;
	border: 1px solid var(--gambit-divider);
	border-radius: 10px;
	padding: 0 8px;
	background: #fff;
	color: var(--gambit-black);
	text-align: center;
	font: 400 16px/24px Roboto, Arial, sans-serif;
	-moz-appearance: textfield;
}
.qty-input::-webkit-inner-spin-button,
.qty-input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.cart-item-price-block { min-width: 108px; }
.cart-item-price-total {
	color: var(--gambit-black);
	font: 500 16px/24px Roboto, Arial, sans-serif;
}
.cart-item-price-info {
	color: var(--gambit-grey);
	font: 400 13px/18px Roboto, Arial, sans-serif;
}
.cart-item-remove button { width: 24px; height: 24px; font-size: 24px; }

.customer-info {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	margin-bottom: 64px;
}
.customer-info .gambit-full-name-field { grid-column: 1 / -1; }
.customer-info #billing_phone_field { grid-column: 1; }
.customer-info .gambit-full-name-field > label,
.customer-info #billing_phone_field > label { position: absolute!important; width: 1px!important; height: 1px!important; padding: 0!important; margin: -1px!important; overflow: hidden!important; clip: rect(0,0,0,0)!important; white-space: nowrap!important; border: 0!important; }
.gambit-checkout-phone-field .gambit-checkout-phone-control {
	display: flex;
	position: relative;
	width: 100%;
}
.gambit-checkout-phone-field .countrySelect {
	position: relative;
	flex: 0 0 64px;
	width: 64px;
}
.gambit-checkout-phone-field .selectedCountry {
	box-sizing: border-box;
	max-width: none;
	width: 64px;
	height: 52px;
	padding: 16px 10px;
	border-color: var(--gambit-divider);
	border-radius: 10px 0 0 10px;
	background: #fff;
	z-index: 22;
}
.gambit-checkout-phone-field .selectedCountry .currentFlag { top: 17px; }
.gambit-checkout-phone-field .selectedCountry .indicator { top: 17px; }
.gambit-checkout-phone-field .selectedCountry.sel2 .indicator { top: 20px; }
.gambit-checkout-phone-field .countrySelect ul {
	top: 52px;
	left: 0;
	z-index: 21;
	box-sizing: border-box;
	width: 220px;
	max-height: 210px;
	margin: -1px 0 0;
	border-color: var(--gambit-divider);
	border-radius: 0 8px 8px 8px;
	overflow-y: auto;
}
.gambit-checkout-phone-field .countrySelect li {
	padding: 8px 4px;
	font: 400 14px/20px Roboto, Arial, sans-serif;
}
.gambit-checkout-phone-field #billing_phone {
	min-width: 0;
	border-radius: 0 10px 10px 0;
	padding-left: 14px;
}
.gambit-checkout-phone-field.woocommerce-invalid .selectedCountry,
.gambit-checkout-phone-field.woocommerce-invalid #billing_phone { border-color: #c92a2a; }
.gambit-phone-error { display: block; margin-top: 6px; color: #c92a2a; font: 400 13px/18px Roboto, Arial, sans-serif; }
.gambit-phone-error[hidden] { display: none; }
.gambit-checkout-phone-field .selectedCountry:focus-visible {
	outline: 2px solid var(--gambit-blue);
	outline-offset: 2px;
}
.customer-info .form-row { width: 100%; margin: 0; padding: 0; }
.customer-info label,
.cart-comment label {
	display: block;
	margin: 0 0 8px;
	color: var(--gambit-black);
	font: 400 15px/24px Roboto, Arial, sans-serif;
}
.customer-info input,
.cart-comment textarea {
	box-sizing: border-box;
	width: 100%;
	border: 1px solid var(--gambit-divider);
	border-radius: 10px;
	background: #fff;
	color: var(--gambit-black);
	font: 400 18px/24px Roboto, Arial, sans-serif;
}
.customer-info input { height: 52px; padding: 13px 15px; }
.customer-info input::placeholder,
.cart-comment textarea::placeholder { color: var(--gambit-grey); }
.woocommerce-invalid input.input-text { border-color: #c92a2a; }

.checkout-section-copy {
	margin: 0 0 18px;
	color: var(--gambit-grey);
	font: 400 15px/24px Roboto, Arial, sans-serif;
}
.checkout-delivery__city {
	display: flex;
	align-items: baseline;
	gap: 14px;
	flex-wrap: wrap;
	margin-bottom: 12px;
	color: var(--gambit-black);
	font: 400 18px/24px Roboto, Arial, sans-serif;
}
.checkout-delivery__destination { display: inline-flex; gap: 4px; }
.checkout-delivery__city .gambit-dellin-location-button--checkout {
	color: var(--gambit-black);
	text-decoration: none;
}
.checkout-delivery__change { color: var(--gambit-blue); text-decoration: none; }
.checkout-delivery__methods { min-height: 82px; margin-bottom: 40px; }
.checkout-delivery__company {
	box-sizing: border-box;
	border: 0;
	padding: 0;
}
.checkout-delivery__company-title {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 10px;
	color: var(--gambit-black);
	font: 500 18px/24px Roboto, Arial, sans-serif;
}
.checkout-delivery__company-title strong { font-weight: 500; }
.checkout-delivery__company-title--choice { cursor: pointer; }
.checkout-delivery__company-title--choice > input[type="radio"] {
	width: 20px;
	height: 20px;
	margin: 0;
	accent-color: var(--gambit-green);
	flex: 0 0 20px;
}
.checkout-delivery__rate { padding-left: 0; }
.checkout-delivery__rate + .checkout-delivery__rate {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid var(--gambit-divider);
}
.checkout-delivery__rate-head {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	color: var(--gambit-black);
	font: 400 18px/24px Roboto, Arial, sans-serif;
}
.checkout-delivery__rate-head > input[type="radio"] {
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	margin: 2px 0 0;
	accent-color: var(--gambit-green);
}
form.woocommerce-checkout input.shipping_method[type="radio"]:focus-visible {
	outline: none;
	box-shadow: none;
}
.checkout-delivery__rate-head,
.checkout-delivery__company-title--choice { position: relative; }
.checkout-delivery__rate-head:has(> input:focus-visible)::after,
.checkout-delivery__company-title--choice:has(> input:focus-visible)::after {
	content: "";
	position: absolute;
	left: -3px;
	top: -1px;
	width: 26px;
	height: 26px;
	box-sizing: border-box;
	border: 2px solid var(--gambit-blue);
	border-radius: 50%;
	pointer-events: none;
}
.checkout-delivery__company-title--choice:has(> input:focus-visible)::after {
	top: calc(50% - 13px);
}
.checkout-delivery__rate-head > span { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 6px; }
.checkout-delivery__rate-head strong { font-weight: 500; }
.checkout-delivery__price {
	margin-top: 0;
	color: var(--gambit-grey);
	font-weight: 600;
}
.checkout-delivery__rates,
.checkout-delivery__rates tbody,
.checkout-delivery__rates tr,
.checkout-delivery__rates td {
	display: block;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	border: 0;
	padding: 0;
	background: transparent;
}
.checkout-delivery__rates th { display: none; }
.checkout-delivery__company ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.checkout-delivery__company li > input.shipping_method {
	width: 20px;
	height: 20px;
	margin: 1px 10px 0 0;
	accent-color: var(--gambit-green);
}
.checkout-delivery__company li > label {
	color: var(--gambit-black);
	font: 400 16px/24px Roboto, Arial, sans-serif;
}
.checkout-delivery__company li > label .amount { font-weight: 600; }
.woocommerce-shipping-destination,
.woocommerce-shipping-calculator { display: none !important; }
.checkout-delivery__message {
	margin: 0;
	color: var(--gambit-grey);
	font: 400 15px/24px Roboto, Arial, sans-serif;
}
.checkout-delivery__message--error { color: #6e6e6e; }
.gambit-dellin-terminal { margin: 12px 0 0 28px; }
.checkout-delivery__company--alternative { margin-top: 24px; }
.checkout-delivery__alternative-help { margin: 0 0 0 28px; }
.gambit-alternative-carrier { margin: 10px 0 0 28px; }
.gambit-alternative-carrier label {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}
.gambit-alternative-carrier input {
	box-sizing: border-box;
	width: min(520px, 100%);
	cursor: text;
	height: 48px;
	border: 1px solid var(--gambit-divider);
	border-radius: 10px;
	padding: 13px 15px;
	background: #fff;
	font: 400 16px/24px Roboto, Arial, sans-serif;
}
.checkout-delivery__payment-notice {
	max-width: 520px;
	margin: 9px 0 0;
	color: var(--gambit-grey);
	font: 400 14px/20px Roboto, Arial, sans-serif;
}

.checkout-payment-section { margin: 0 0 52px; }
.checkout-payment-section > h3 { margin-bottom: 22px; font: 600 26px/32px Roboto, Arial, sans-serif; }
.checkout-payment-section #payment { background: transparent; }
.checkout-payment-section .wc_payment_methods {
	list-style: none;
	margin: 0;
	padding: 0;
}
.checkout-payment-section .wc_payment_method {
	position: relative;
	margin-bottom: 24px;
}
.checkout-payment-section .wc_payment_method > input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	padding: 0;
	opacity: 0;
	overflow: hidden;
}
.checkout-payment-section .gambit-payment-radio {
	display: inline-block;
	box-sizing: border-box;
	vertical-align: top;
	width: 20px;
	height: 20px;
	margin: 1px 10px 0 0;
	border: 1px solid var(--gambit-divider);
	border-radius: 50%;
	background: #fff;
	box-shadow: inset 0 0 0 5px #fff;
	transition: border-color .16s ease, background-color .16s ease;
}
.checkout-payment-section .wc_payment_method > input:checked + .gambit-payment-choice .gambit-payment-radio {
	border-color: var(--gambit-green);
	background: var(--gambit-green);
}
.checkout-payment-section .wc_payment_method:hover > input:not(:disabled) + .gambit-payment-choice .gambit-payment-radio {
	border-color: var(--gambit-green);
}
.checkout-payment-section .wc_payment_method > input:focus-visible + .gambit-payment-choice .gambit-payment-radio {
	outline: 2px solid var(--gambit-blue);
	outline-offset: 3px;
}
.checkout-payment-section .wc_payment_method > input:disabled + .gambit-payment-choice .gambit-payment-radio {
	opacity: .45;
}
.checkout-payment-section .wc_payment_method > .gambit-payment-choice {
	display: inline-flex;
	align-items: flex-start;
	color: var(--gambit-black);
	font: 400 18px/24px Roboto, Arial, sans-serif;
	cursor: pointer;
}
.checkout-payment-section .wc_payment_method > input:disabled + .gambit-payment-choice { opacity: .45; cursor: not-allowed; }
.checkout-payment-section .payment_box {
	max-width: 610px;
	margin: 10px 0 0 28px;
	color: var(--gambit-grey);
	font: 400 15px/24px Roboto, Arial, sans-serif;
}
.checkout-payment-section .payment_box > p { margin: 0; }
.gambit-invoice-email { margin-top: 20px; }
.gambit-invoice-email label {
	display: block;
	margin-bottom: 10px;
	color: var(--gambit-black);
	font: 400 16px/24px Roboto, Arial, sans-serif;
}
.gambit-invoice-email input {
	box-sizing: border-box;
	width: min(370px, 100%);
	height: 52px;
	border: 1px solid var(--gambit-divider);
	border-radius: 10px;
	padding: 13px 15px;
	background: #fff;
	color: var(--gambit-black);
	font: 400 16px/24px Roboto, Arial, sans-serif;
}
.gambit-invoice-email input:focus-visible { border-color: var(--gambit-green); outline: none; box-shadow: none; }
.checkout-requisites-upload { margin: 20px 0 0; }
.checkout-requisites-upload__input {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	opacity: 0;
}
.checkout-requisites-upload__label {
	display: inline-flex;
	align-items: flex-start;
	gap: 10px;
	color: var(--gambit-green);
	font: 400 16px/24px Roboto, Arial, sans-serif;
	cursor: pointer;
}
.checkout-requisites-upload__label img { flex: 0 0 24px; width: 24px; height: 24px; }
.checkout-requisites-upload__label strong { display: block; font-weight: 400; }
.checkout-requisites-upload__label small { display: block; color: var(--gambit-grey); font: 400 12px/16px Roboto, Arial, sans-serif; }
.checkout-requisites-upload__input:focus-visible + .checkout-requisites-upload__label { outline: 2px solid var(--gambit-blue); outline-offset: 4px; border-radius: 2px; }
.checkout-requisites-upload__input:disabled + .checkout-requisites-upload__label { opacity: .55; cursor: wait; }
.checkout-requisites-upload__status { min-height: 18px; margin: 7px 0 0 34px; color: var(--gambit-grey); font: 400 12px/18px Roboto, Arial, sans-serif; }
.checkout-requisites-upload__status:empty { min-height: 0; margin-top: 0; }
.checkout-requisites-upload__status[data-state="success"] { color: var(--gambit-green); }
.checkout-requisites-upload__status[data-state="error"] { color: #d82828; }
.checkout-payment-section #payment .place-order { display: none; }

.checkout-delivery__methods[aria-busy="true"] { position: relative; opacity: 1; }
.checkout-delivery__methods[aria-busy="true"] > * { opacity: .35; }
.checkout-delivery__methods[aria-busy="true"]::after {
	content: 'Подбираем терминалы и рассчитываем стоимость…';
	display: block;
	margin-top: 12px;
	color: var(--gambit-grey);
	font: 400 14px/20px Roboto, Arial, sans-serif;
}
.gambit-checkout-retry { margin-top: 10px; }

.cart-comment { margin-top: 0; }
.cart-comment .form-row { width: 100%; margin: 0; }
.cart-comment textarea {
	display: block;
	min-height: 108px;
	padding: 14px 15px;
	resize: vertical;
}

.cart-summary {
	box-sizing: border-box;
	width: 100%;
	border-radius: 12px;
	background: rgba(0, 0, 0, .03);
	padding: 30px;
}
.cart-summary h3 { margin-bottom: 26px; }
.gambit-order-summary-table {
	width: 100%;
	border: 0;
	border-collapse: collapse;
}
.gambit-order-summary-table > thead,
.gambit-order-summary-table > tbody { display: none; }
.gambit-order-summary-table tfoot,
.gambit-order-summary-table tr { display: block; }
.gambit-order-summary-table tr {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	margin: 0 0 13px;
	border: 0;
}
.gambit-order-summary-table th,
.gambit-order-summary-table td {
	border: 0;
	padding: 0;
	background: transparent;
	color: var(--gambit-grey);
	text-align: left;
	font: 400 15px/24px Roboto, Arial, sans-serif;
}
.gambit-order-summary-table td { color: var(--gambit-black); text-align: right; }
.gambit-order-summary-table .order-total {
	margin-top: 18px;
	margin-bottom: 28px;
	padding-top: 18px;
	border-top: 1px solid var(--gambit-divider);
}
.gambit-order-summary-table .gambit-shipping-receipt-note { display: block; font-size: inherit; font-weight: inherit; }
.gambit-order-summary-table .order-total th,
.gambit-order-summary-table .order-total td,
.gambit-order-summary-table .order-total strong {
	color: var(--gambit-black);
	font: 600 20px/24px Roboto, Arial, sans-serif;
}
.gambit-order-summary-table .gambit-order-total-note { display: block; font: 400 14px/20px Roboto, Arial, sans-serif; }
.cart-summary #payment { background: transparent; }
.cart-summary #payment .place-order { margin: 0; padding: 0; }
.cart-summary #place_order {
	box-sizing: border-box;
	width: 100%;
	min-height: 54px;
	border: 0;
	border-radius: 8px;
	background: var(--gambit-green);
	color: #fff;
	cursor: pointer;
	font: 500 16px/24px Roboto, Arial, sans-serif;
}
.cart-summary #place_order:hover { background: #41a555; }
.cart-summary #place_order:disabled { cursor: wait; opacity: .55; }
.cart-summary .woocommerce-terms-and-conditions-wrapper {
	margin-bottom: 18px;
	color: var(--gambit-grey);
	font: 400 13px/18px Roboto, Arial, sans-serif;
}
.cart-summary .woocommerce-privacy-policy-text a { color: var(--gambit-blue); }
.gambit-mobile-checkout { display: none; }
.gambit-mobile-checkout[hidden] { display: none; }
@media (max-width: 767px) {
	body.page-template-page-cart-checkout .cart-checkout-container { padding-bottom: 150px; }
	.gambit-mobile-checkout { position: fixed; inset: auto 0 calc(60px + env(safe-area-inset-bottom)); z-index: 99994; display: flex; align-items: center; justify-content: space-between; gap: 12px; box-sizing: border-box; min-height: 64px; padding: 8px 20px; border-top: 1px solid var(--gambit-divider); background: #fff; }
	.gambit-mobile-checkout__price { min-width: 0; }
	.gambit-mobile-checkout__total { min-width: 0; font: 600 18px/24px Roboto, Arial, sans-serif; }
	.gambit-mobile-checkout__note { display: block; color: var(--gambit-grey); font: 400 12px/16px Roboto, Arial, sans-serif; }
	.gambit-mobile-checkout__total small { display: block; font-size: 11px; line-height: 14px; }
	.gambit-mobile-checkout button { flex-shrink: 0; min-height: 44px; padding: 10px 14px; border: 0; border-radius: 8px; background: var(--gambit-green); color: #fff; cursor: pointer; font: 500 14px/20px Roboto, Arial, sans-serif; }
	.gambit-mobile-checkout button:is(:hover,:focus-visible) { background: #087d3c; }
	.gambit-mobile-checkout button:focus-visible { outline: 2px solid #3978d2; outline-offset: 2px; }
	.gambit-mobile-checkout button:disabled { opacity: .55; cursor: wait; }
	body.page-template-page-cart-checkout:has(.gambit-mobile-checkout:not([hidden])) .totop { bottom: calc(134px + env(safe-area-inset-bottom)); }
}

.woocommerce-NoticeGroup-checkout,
.woocommerce-notices-wrapper {
	margin-bottom: 24px;
}
.woocommerce-error,
.woocommerce-message,
.woocommerce-info {
	box-sizing: border-box;
	border-radius: 10px;
	padding: 14px 18px;
}
form.cart-checkout-form label.error,
.woocommerce-invalid-required-field .required { color: #c92a2a; }

body.page-template-page-cart-checkout .wrap-block {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}
body.page-template-page-cart-checkout .wrap-block footer { margin-top: auto; }

@media (max-width: 1240px) {
	body.page-template-page-cart-checkout .cart-checkout-container { padding-right: 0; padding-left: 0; }
	.cart-checkout-form { grid-template-columns: minmax(0, 1fr) 340px; column-gap: 60px; }
}

@media (max-width: 920px) {
	.cart-checkout-form { display: block; }
	.cart-r { position: static; margin-top: 48px; }
	.cart-summary { max-width: 100%; }
}

@media (max-width: 640px) {
	body.page-template-page-cart-checkout .cart-checkout-container { padding: 34px 0 60px; }
	.cart-checkout-form > h2 { font-size: 28px; line-height: 36px; }
	.cart-checkout-form h3 { font-size: 24px; line-height: 30px; }
	.cart-item {
		grid-template-columns: 52px minmax(0, 1fr) 24px;
		gap: 10px 14px;
		padding-bottom: 18px;
		border-bottom: 1px solid var(--gambit-divider);
	}
	.cart-item-thumbnail img { width: 52px; height: auto; }
	.cart-item-remove { grid-column: 3; grid-row: 1; }
	.cart-item-quantity { grid-column: 1 / 3; grid-row: 2; justify-self: start; }
	.cart-item-price-block { grid-column: 2 / 4; grid-row: 2; min-width: 90px; justify-self: end; text-align: right; }
	.customer-info { grid-template-columns: 1fr; }
	.checkout-delivery__company,
	.cart-summary { padding: 20px; }
	.checkout-delivery__company { padding: 0; }
}

/* Cart header, Figma 1455:18962: ordinary flow, independent of the contact strip. */
body.page-template-page-cart-checkout .gambit-cart-header { margin: 0; padding: 0; border-bottom: 1px solid #dbdbdb; }
.gambit-cart-header__inner { box-sizing: border-box; max-width: 1200px; min-height: 81px; margin: 0 auto; display: flex; align-items: center; gap: 30px; }
.gambit-cart-header__logo { flex: 0 0 133px; }
.gambit-cart-header__logo img { display: block; width: 133px; height: 32px; object-fit: contain; }
.gambit-cart-header__inner .catalog-btn { display: flex; align-items: center; justify-content: center; gap: 5px; width: 112px; height: 40px; padding: 7px 15px; border: 0; border-radius: 8px; background: #04af53; color: #fff; font: 500 14px/24px Roboto, Arial, sans-serif; }
.gambit-cart-header__inner .catalog-btn img { width: 24px; height: 24px; }
.gambit-cart-header__hours, .gambit-cart-header__callback { display: flex; align-items: center; gap: 10px; font: 400 15px/24px Roboto, Arial, sans-serif; white-space: nowrap; }
.gambit-cart-header__hours { margin-left: auto; color: #868686; }
.gambit-cart-header__hours img, .gambit-cart-header__callback img { width: 16px; height: 16px; }
.gambit-cart-header .gambit-cart-header__callback { display: flex !important; color: #232323; text-decoration: none; }
.gambit-cart-header__phone { border-left: 1px solid #dbdbdb; padding-left: 15px; margin-left: -15px; color: #232323; font: 600 18px/24px Roboto, Arial, sans-serif; white-space: nowrap; text-decoration: none; }
.gambit-cart-header :is(.gambit-cart-header__callback,.gambit-cart-header__phone):is(:hover,:focus-visible) { color: #087d3c; text-decoration: none; }
.checkout-payment-section .gambit-payment-note { margin: 12px 0 0 28px; color: #868686; font: 400 15px/24px Roboto,Arial,sans-serif; }
.cart-comment label.screen-reader-text { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (max-width: 1250px) { .gambit-cart-header__inner { margin: 0 24px; gap: 20px; } }
@media (max-width: 1050px) { .gambit-cart-header__inner { flex-wrap: wrap; padding: 16px 0; gap: 12px 20px; } .gambit-cart-header__hours { margin-left: auto; } .gambit-cart-header__callback { margin-left: auto; } }
@media (max-width: 600px) {
  .gambit-cart-header__inner { display: grid; grid-template-columns: 1fr auto; gap: 12px; margin: 0 20px; }
  .gambit-cart-header__hours { grid-column: 1 / -1; margin: 0; font-size: 13px; }
  .gambit-cart-header__callback { grid-column: 1 / -1; margin: 0; font-size: 13px; }
  .gambit-cart-header__phone { grid-column: 1 / -1; border: 0; padding: 0; margin: 0; }
}

.checkout-delivery__city { margin-bottom: 20px; }
.gambit-dellin-terminal > label > span { color: #868686; font: 400 15px/24px Roboto,Arial,sans-serif; }
.gambit-cart-header__logo img { position: relative; top: -5px; }

.cart-item-discount { display: none; }
@media (max-width: 767px) {
 body.page-template-page-cart-checkout .gambit-cart-header__inner { display: flex; flex-wrap: nowrap; justify-content: space-between; min-height: 72px; padding: 0; gap: 12px; margin-inline: 20px; }
 .gambit-cart-header__logo { flex: 0 0 116px; }
 .gambit-cart-header__logo img { width: 116px; height: auto; top: -5px; }
 .gambit-cart-header .gambit-cart-header__inner > :is(.catalog-btn,.gambit-cart-header__hours,.gambit-cart-header__callback) { display: none !important; }
 .gambit-cart-header .gambit-cart-header__phone { margin: 0; padding: 0; border: 0; font-size: 20px; line-height: 26px; word-spacing: normal; letter-spacing: normal; }
 body.page-template-page-cart-checkout .cart-checkout-container { padding-top: 24px; }
 body.page-template-page-cart-checkout :is(.woocommerce-notices-wrapper,.woocommerce-NoticeGroup-checkout):empty { display: none; }
 .cart-checkout-form > h2 { margin-bottom: 28px; }
 .cart-items { margin-bottom: 32px; }
 .cart-item { grid-template-columns: 60px minmax(0,max-content) minmax(0,1fr) 24px; gap: 12px 10px; align-items: start; padding-bottom: 24px; border-bottom: 1px solid #dbdbdb; }
 .cart-item-thumbnail { grid-column: 1; grid-row: 1 / 3; }
 .cart-item-thumbnail img { width: 52px; }
 .cart-item-title { grid-column: 2 / 4; grid-row: 1; font-size: 15px; line-height: 21px; }
 .cart-item-remove { grid-column: 4; grid-row: 1; }
 .cart-item-price-block { grid-column: 2; grid-row: 2; min-width: 0; justify-self: start; text-align: left; align-self: center; }
 .cart-item-price-total { font-size: 17px; line-height: 24px; white-space: nowrap; }
 .cart-item-quantity { grid-column: 3 / 5; grid-row: 2; justify-self: start; align-self: center; gap: 6px; }
 .cart-item-quantity .qty-input { width: 46px; height: 44px; padding-inline: 4px; }
 .cart-item-price-info { display: none; }
 .cart-item-discount:not([hidden]) { display: flex; flex-wrap: wrap; align-items: center; gap: 3px 6px; margin-bottom: 3px; font: 400 11px/16px Roboto,sans-serif; white-space: nowrap; }
 .cart-item-discount del { color: #868686; }
 .cart-item-discount > span { padding: 1px 4px; background: #ff1e1e; border-radius: 4px; color: #fff; font-weight: 600; }
}
@media (max-width: 350px) {
 .gambit-cart-header .gambit-cart-header__phone { font-size: 18px; word-spacing: normal; }
 .cart-item { column-gap: 7px; }
 .cart-item-quantity { gap: 2px; }
 .cart-item-quantity .qty-input { width: 40px; }
 .cart-item-price-total { font-size: 15px; }
}

/* Active checkout fields share one accent; radio controls retain their circular focus. */
form.woocommerce-checkout :is(input[type="text"], input[type="tel"], input[type="email"], input[type="number"], textarea, select):focus {
 border-color: var(--gambit-green);
 outline: none;
 box-shadow: none;
}
.gambit-checkout-phone-field:focus-within .selectedCountry { border-color: var(--gambit-green); }
form.woocommerce-checkout .woocommerce-invalid :is(input, textarea, select):focus,
form.woocommerce-checkout :is(input, textarea, select)[aria-invalid="true"]:focus { border-color: #c92a2a; outline-color: rgba(201, 42, 42, .18); }
.gambit-checkout-phone-field.woocommerce-invalid:focus-within .selectedCountry { border-color: #c92a2a; }

/* Legacy template.css marks the generic select border important. */
form.woocommerce-checkout select:focus { border-color: var(--gambit-green) !important; }
form.woocommerce-checkout .woocommerce-invalid select:focus,
form.woocommerce-checkout select[aria-invalid="true"]:focus { border-color: #c92a2a !important; }
