/* Gráfica 3C — carrinho e checkout. Só aparência. */

body.g3c-loja {
	--g3c-ink: #202329;
	--g3c-muted: #6b7280;
	--g3c-line: #e6e8eb;
	--g3c-soft: #f6f7f9;
	--g3c-blue: #1767b1;
	--g3c-blue-dark: #12548f;
	--g3c-radius: 14px;
}

body.g3c-loja main.site-main,
body.g3c-loja main#content {
	max-width: 1240px !important;
	margin: 0 auto !important;
	padding: 28px 24px 56px;
	color: var(--g3c-ink);
}

body.g3c-loja .page-header,
body.g3c-loja .page-header .entry-title,
body.g3c-loja .page-content {
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.g3c-loja h1.entry-title {
	margin: 0 0 22px;
	font-size: clamp(24px, 2.6vw, 32px);
	font-weight: 700;
	letter-spacing: -.01em;
	color: var(--g3c-ink);
}

body.g3c-loja .woocommerce a {
	color: var(--g3c-ink);
}

/* ---------- Botões principais ---------- */
body.g3c-loja .woocommerce a.checkout-button,
body.g3c-loja .woocommerce #place_order {
	display: block;
	width: 100%;
	float: none;
	min-height: 56px;
	margin: 0;
	padding: 17px 20px !important;
	border: 0 !important;
	border-radius: 12px !important;
	background: var(--g3c-blue) !important;
	color: #fff !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	text-align: center;
	box-shadow: 0 6px 16px rgba(23, 103, 177, .22);
	transition: background .15s ease, transform .15s ease;
}

body.g3c-loja .woocommerce a.checkout-button:hover,
body.g3c-loja .woocommerce #place_order:hover {
	background: var(--g3c-blue-dark) !important;
	transform: translateY(-1px);
}

/* ---------- Carrinho ---------- */
body.woocommerce-cart.g3c-loja .woocommerce {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 380px;
	gap: 32px;
	align-items: start;
}

body.woocommerce-cart.g3c-loja .woocommerce > * {
	min-width: 0;
}

body.woocommerce-cart.g3c-loja .woocommerce > .woocommerce-notices-wrapper,
body.woocommerce-cart.g3c-loja .woocommerce > .cart-empty,
body.woocommerce-cart.g3c-loja .woocommerce > .return-to-shop,
body.woocommerce-cart.g3c-loja .woocommerce > .wc-empty-cart-message {
	grid-column: 1 / -1;
}

body.woocommerce-cart.g3c-loja table.shop_table.cart {
	display: block;
	margin: 0;
	border: 0 !important;
	border-radius: 0;
}

body.woocommerce-cart.g3c-loja table.cart thead {
	display: none;
}

body.woocommerce-cart.g3c-loja table.cart tbody {
	display: grid;
	gap: 12px;
}

body.woocommerce-cart.g3c-loja table.cart tr.cart_item {
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr) auto 28px;
	grid-template-areas:
		"thumb name subtotal remove"
		"thumb name price remove";
	column-gap: 16px;
	align-items: start;
	padding: 16px;
	border: 1px solid var(--g3c-line);
	border-radius: var(--g3c-radius);
	background: #fff !important;
}

body.woocommerce-cart.g3c-loja table.cart tr.cart_item td {
	display: block;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	text-align: left !important;
}

body.woocommerce-cart.g3c-loja table.cart tr.cart_item td::before {
	display: none !important;
}

body.woocommerce-cart.g3c-loja table.cart td.product-thumbnail {
	grid-area: thumb;
}

body.woocommerce-cart.g3c-loja table.cart td.product-thumbnail img {
	width: 92px !important;
	height: 92px;
	padding: 8px;
	border-radius: 10px;
	background: var(--g3c-soft);
	object-fit: contain;
	mix-blend-mode: multiply;
}

body.woocommerce-cart.g3c-loja table.cart td.product-name {
	grid-area: name;
	font-size: 14px;
	line-height: 1.5;
	color: #4b5563;
}

body.woocommerce-cart.g3c-loja table.cart td.product-name > a {
	display: block;
	margin-bottom: 4px;
	font-size: 16px;
	font-weight: 700;
	color: var(--g3c-ink);
	text-decoration: none;
}

body.woocommerce-cart.g3c-loja table.cart td.product-name dl.variation {
	margin: 4px 0 0;
}

body.woocommerce-cart.g3c-loja table.cart td.product-name dl.variation dt,
body.woocommerce-cart.g3c-loja table.cart td.product-name dl.variation dd {
	margin: 0;
	padding: 0;
	font-weight: 400;
}

body.woocommerce-cart.g3c-loja table.cart td.product-name dl.variation dt {
	float: left;
	clear: left;
	margin-right: 5px;
	color: var(--g3c-muted);
}

body.woocommerce-cart.g3c-loja table.cart td.product-name dl.variation dd p {
	margin: 0;
}

body.woocommerce-cart.g3c-loja table.cart td.product-subtotal {
	grid-area: subtotal;
	font-size: 17px;
	font-weight: 800;
	text-align: right !important;
	white-space: nowrap;
}

body.woocommerce-cart.g3c-loja table.cart td.product-price {
	grid-area: price;
	font-size: 13px;
	color: var(--g3c-muted);
	text-align: right !important;
	white-space: nowrap;
}

body.woocommerce-cart.g3c-loja table.cart td.product-price::after {
	content: " / un.";
}

body.woocommerce-cart.g3c-loja table.cart td.product-quantity {
	display: none !important;
}

body.woocommerce-cart.g3c-loja table.cart td.product-remove {
	grid-area: remove;
}

body.woocommerce-cart.g3c-loja table.cart td.product-remove a.remove {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--g3c-soft);
	color: var(--g3c-muted) !important;
	font-size: 18px;
	line-height: 28px;
	font-weight: 400;
}

body.woocommerce-cart.g3c-loja table.cart td.product-remove a.remove:hover {
	background: #fde8ea;
	color: #b4232f !important;
}

/* A quantidade muda-se no produto, por isso "Actualizar carrinho" não faz nada aqui */
body.woocommerce-cart.g3c-loja table.cart td.actions {
	display: none !important;
}

body.woocommerce-cart.g3c-loja table.cart tbody > tr:not(.cart_item) {
	display: none;
}

body.woocommerce-cart.g3c-loja .cart-collaterals {
	position: sticky;
	top: 24px;
	width: 100%;
}

body.woocommerce-cart.g3c-loja .cart-collaterals .cart_totals {
	float: none !important;
	width: 100% !important;
	padding: 22px;
	border: 1px solid var(--g3c-line);
	border-radius: var(--g3c-radius);
	background: var(--g3c-soft);
}

body.woocommerce-cart.g3c-loja .cart_totals > h2 {
	margin: 0 0 12px;
	font-size: 18px;
	font-weight: 700;
	color: var(--g3c-ink);
}

body.g3c-loja .cart_totals table.shop_table,
body.g3c-loja #order_review table.shop_table {
	margin: 0 0 16px;
	border: 0 !important;
	border-radius: 0;
	background: none;
	font-size: 14px;
}

body.g3c-loja .cart_totals table.shop_table th,
body.g3c-loja .cart_totals table.shop_table td,
body.g3c-loja #order_review table.shop_table th,
body.g3c-loja #order_review table.shop_table td {
	padding: 12px 0 !important;
	border: 0 !important;
	border-top: 1px solid var(--g3c-line) !important;
	background: none !important;
	vertical-align: top;
}

body.g3c-loja .cart_totals table.shop_table tr:first-child th,
body.g3c-loja .cart_totals table.shop_table tr:first-child td {
	border-top: 0 !important;
}

body.g3c-loja .cart_totals table.shop_table th {
	width: 90px;
	font-weight: 600;
	color: var(--g3c-muted);
}

body.g3c-loja .cart_totals table.shop_table td,
body.g3c-loja #order_review table.shop_table tfoot td {
	text-align: right;
}

body.g3c-loja ul#shipping_method {
	margin: 0;
	padding: 0;
	text-align: left;
}

body.g3c-loja ul#shipping_method li {
	margin: 0 0 8px;
	padding: 0;
	line-height: 1.4;
}

body.g3c-loja .woocommerce-shipping-destination,
body.g3c-loja .woocommerce-shipping-calculator {
	margin: 6px 0 0;
	font-size: 13px;
	color: var(--g3c-muted);
	text-align: left;
}

body.g3c-loja tr.order-total th,
body.g3c-loja tr.order-total td {
	font-size: 16px;
	color: var(--g3c-ink) !important;
}

body.g3c-loja tr.order-total td strong .amount {
	font-size: 22px;
	font-weight: 800;
}

body.g3c-loja tr.order-total small {
	display: block;
	white-space: nowrap;
	font-size: 12px;
	font-weight: 400;
	color: var(--g3c-muted);
}

body.woocommerce-cart.g3c-loja .wc-proceed-to-checkout {
	padding: 0;
}

body.g3c-loja .g3c-continue {
	display: block;
	margin-top: 14px;
	font-size: 14px;
	text-align: center;
	color: var(--g3c-muted) !important;
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* ---------- Checkout ---------- */
body.woocommerce-checkout.g3c-loja form.checkout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 440px;
	grid-template-areas:
		"details heading"
		"details review";
	grid-template-rows: auto 1fr;
	column-gap: 40px;
	align-items: start;
}

body.woocommerce-checkout.g3c-loja form.checkout > * {
	min-width: 0;
}

body.woocommerce-checkout.g3c-loja form.checkout > .woocommerce-NoticeGroup,
body.woocommerce-checkout.g3c-loja form.checkout > .woocommerce-error {
	grid-column: 1 / -1;
}

body.woocommerce-checkout.g3c-loja #customer_details {
	grid-area: details;
	display: block;
	width: 100%;
	padding: 24px;
	border: 1px solid var(--g3c-line);
	border-radius: var(--g3c-radius);
	background: #fff;
}

body.woocommerce-checkout.g3c-loja #customer_details .col-1,
body.woocommerce-checkout.g3c-loja #customer_details .col-2 {
	float: none !important;
	width: 100% !important;
	max-width: none;
	padding: 0;
}

body.woocommerce-checkout.g3c-loja #customer_details .col-2 {
	margin-top: 8px;
}

body.woocommerce-checkout.g3c-loja #customer_details h3,
body.woocommerce-checkout.g3c-loja #order_review_heading {
	margin: 0 0 16px;
	font-size: 18px;
	font-weight: 700;
	color: var(--g3c-ink);
}

body.woocommerce-checkout.g3c-loja #ship-to-different-address {
	margin: 12px 0;
	font-size: 15px;
}

body.woocommerce-checkout.g3c-loja #ship-to-different-address label {
	font-weight: 600;
}

body.woocommerce-checkout.g3c-loja form.checkout .form-row {
	margin: 0 0 14px;
	padding: 0 6px;
}

body.woocommerce-checkout.g3c-loja form.checkout .form-row label {
	margin-bottom: 5px;
	font-size: 13px;
	font-weight: 600;
	color: #374151;
}

body.woocommerce-checkout.g3c-loja form.checkout .input-text,
body.woocommerce-checkout.g3c-loja form.checkout select,
body.woocommerce-checkout.g3c-loja form.checkout textarea,
body.woocommerce-checkout.g3c-loja form.checkout .select2-selection {
	min-height: 48px;
	padding: 11px 13px;
	border: 1px solid #d5d9de !important;
	border-radius: 10px !important;
	background: #fff;
	color: var(--g3c-ink);
	font-size: 16px;
}

body.woocommerce-checkout.g3c-loja form.checkout .select2-selection {
	padding: 9px 4px;
}

body.woocommerce-checkout.g3c-loja form.checkout .input-text:focus,
body.woocommerce-checkout.g3c-loja form.checkout select:focus,
body.woocommerce-checkout.g3c-loja form.checkout textarea:focus {
	outline: 2px solid var(--g3c-blue);
	outline-offset: 1px;
}

body.woocommerce-checkout.g3c-loja #order_review_heading {
	grid-area: heading;
	padding: 22px 22px 0;
	border: 1px solid var(--g3c-line);
	border-bottom: 0;
	border-radius: var(--g3c-radius) var(--g3c-radius) 0 0;
	background: var(--g3c-soft);
}

body.woocommerce-checkout.g3c-loja #order_review {
	grid-area: review;
	position: sticky;
	top: 24px;
	padding: 0 22px 22px;
	border: 1px solid var(--g3c-line);
	border-top: 0;
	border-radius: 0 0 var(--g3c-radius) var(--g3c-radius);
	background: var(--g3c-soft);
}

body.g3c-loja #order_review table.shop_table thead {
	display: none;
}

body.g3c-loja #order_review table.shop_table tbody tr:first-child td {
	border-top: 0 !important;
}

body.g3c-loja #order_review table.shop_table td.product-name {
	font-size: 13px;
	line-height: 1.5;
	color: #4b5563;
}

body.g3c-loja #order_review table.shop_table td.product-name dl.variation,
body.g3c-loja #order_review table.shop_table td.product-name dl.variation dd p {
	margin: 0;
}

body.g3c-loja #order_review table.shop_table td.product-name dl.variation dt {
	float: left;
	clear: left;
	margin: 0 5px 0 0;
	font-weight: 400;
	color: var(--g3c-muted);
}

body.g3c-loja #order_review table.shop_table td.product-name dl.variation dd {
	margin: 0;
}

/* A quantidade já aparece em "Quantidade pedida" */
body.g3c-loja #order_review table.shop_table td.product-name strong.product-quantity {
	display: none;
}

body.g3c-loja #order_review table.shop_table td.product-total {
	width: 90px;
	text-align: right;
	font-weight: 700;
	white-space: nowrap;
}

body.g3c-loja #order_review table.shop_table tfoot th {
	font-weight: 600;
	color: var(--g3c-muted);
}

/* No resumo do checkout o envio ocupa a linha toda, para as opções não ficarem espremidas */
body.g3c-loja #order_review table.shop_table tfoot tr.shipping th,
body.g3c-loja #order_review table.shop_table tfoot tr.shipping td {
	display: block;
	width: 100%;
	text-align: left;
}

body.g3c-loja #order_review table.shop_table tfoot tr.shipping td {
	padding-top: 0 !important;
	border-top: 0 !important;
}

body.g3c-loja #order_review table.shop_table tfoot tr.shipping label {
	font-weight: 400;
}

body.woocommerce-checkout.g3c-loja #payment {
	border-radius: 12px;
	background: #fff !important;
	border: 1px solid var(--g3c-line);
}

body.woocommerce-checkout.g3c-loja #payment ul.payment_methods {
	padding: 14px 16px !important;
	border-bottom: 1px solid var(--g3c-line) !important;
}

body.woocommerce-checkout.g3c-loja #payment ul.payment_methods li {
	padding: 6px 0;
	font-size: 15px;
}

body.woocommerce-checkout.g3c-loja #payment ul.payment_methods li label {
	font-weight: 600;
}

body.woocommerce-checkout.g3c-loja #payment div.payment_box {
	margin: 10px 0 6px;
	border-radius: 10px;
	background: var(--g3c-soft) !important;
	color: #374151;
	font-size: 14px;
}

body.woocommerce-checkout.g3c-loja #payment div.payment_box::before {
	border-bottom-color: var(--g3c-soft) !important;
}

body.woocommerce-checkout.g3c-loja #payment div.form-row.place-order {
	margin: 0;
	padding: 16px !important;
}

body.g3c-loja .g3c-checkout-trust {
	margin: 12px 0 0;
	font-size: 12px;
	line-height: 1.5;
	text-align: center;
	color: var(--g3c-muted);
}

body.g3c-loja .woocommerce-privacy-policy-text {
	font-size: 12px;
	color: var(--g3c-muted);
}

@media (max-width: 980px) {
	body.g3c-loja main.site-main,
	body.g3c-loja main#content {
		padding: 16px 16px 40px;
	}

	body.woocommerce-cart.g3c-loja .woocommerce,
	body.woocommerce-checkout.g3c-loja form.checkout {
		display: block;
	}

	body.woocommerce-cart.g3c-loja .cart-collaterals,
	body.woocommerce-checkout.g3c-loja #order_review {
		position: static;
	}

	body.woocommerce-cart.g3c-loja .cart-collaterals {
		margin-top: 20px;
	}

	body.woocommerce-checkout.g3c-loja #order_review_heading {
		margin-top: 20px;
	}

	body.woocommerce-checkout.g3c-loja #customer_details {
		padding: 18px 12px;
	}

	body.woocommerce-cart.g3c-loja table.cart tr.cart_item {
		grid-template-columns: 64px minmax(0, 1fr) 28px;
		grid-template-areas:
			"thumb name remove"
			"thumb subtotal subtotal"
			"thumb price price";
		row-gap: 4px;
		padding: 14px;
	}

	body.woocommerce-cart.g3c-loja table.cart td.product-thumbnail img {
		width: 64px !important;
		height: 64px;
	}

	body.woocommerce-cart.g3c-loja table.cart td.product-subtotal,
	body.woocommerce-cart.g3c-loja table.cart td.product-price {
		text-align: left !important;
	}

	/* O WhatsApp não tapa o botão de finalizar */
	body.g3c-loja .ht-ctc.ht-ctc-chat {
		transform: scale(.82);
		transform-origin: bottom right;
	}
}

/* Garantias no carrinho (o desenho base vem com a página de produto) */
body.g3c-loja .g3c-garantias {
	list-style: none;
	margin: 16px 0 0;
	padding: 12px 14px;
	display: grid;
	gap: 8px;
	border: 1px solid var(--g3c-line);
	border-radius: 12px;
	background: #fff;
}

body.g3c-loja .g3c-garantias li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0;
	font-size: 13px;
	line-height: 1.45;
	color: #4b5563;
}

body.g3c-loja .g3c-garantias svg {
	flex: none;
	color: #1f9d55;
}

body.g3c-loja .g3c-garantias strong {
	font-weight: 700;
	color: var(--g3c-ink);
}

/* ---------- Checkout simples: 1. dados, 2. pagamento, resumo ao lado ---------- */
body.woocommerce-checkout.g3c-loja form.checkout {
	grid-template-areas: none;
	grid-template-columns: minmax(0, 1fr) 420px;
	grid-template-rows: auto auto 1fr;
	row-gap: 20px;
}

body.woocommerce-checkout.g3c-loja #customer_details {
	grid-area: auto;
	grid-column: 1;
	grid-row: 1;
}

body.woocommerce-checkout.g3c-loja .g3c-pagamento {
	grid-column: 1;
	grid-row: 2;
	padding: 24px;
	border: 1px solid var(--g3c-line);
	border-radius: var(--g3c-radius);
	background: #fff;
}

body.woocommerce-checkout.g3c-loja .g3c-pagamento h3,
body.woocommerce-checkout.g3c-loja #customer_details h3 {
	margin: 0 0 16px;
	font-size: 20px;
	font-weight: 700;
	color: var(--g3c-ink);
}

body.woocommerce-checkout.g3c-loja #order_review_heading {
	grid-area: auto;
	grid-column: 2;
	grid-row: 1;
	align-self: start;
	margin: 0;
}

body.woocommerce-checkout.g3c-loja #order_review {
	grid-area: auto;
	grid-column: 2;
	grid-row: 1 / span 3;
	margin-top: 58px;
	align-self: start;
}

/* Campos: etiquetas pequenas, caixas altas, dois por linha onde faz sentido */
body.woocommerce-checkout.g3c-loja form.checkout .woocommerce-billing-fields__field-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 12px;
}

body.woocommerce-checkout.g3c-loja form.checkout .woocommerce-billing-fields__field-wrapper .form-row {
	float: none !important;
	width: auto !important;
	grid-column: 1 / -1;
	margin: 0 0 12px !important;
	padding: 0 !important;
}

body.woocommerce-checkout.g3c-loja form.checkout .woocommerce-billing-fields__field-wrapper .form-row-first {
	grid-column: 1;
}

body.woocommerce-checkout.g3c-loja form.checkout .woocommerce-billing-fields__field-wrapper .form-row-last {
	grid-column: 2;
}

body.woocommerce-checkout.g3c-loja form.checkout .form-row label {
	font-size: 13px;
	font-weight: 600;
	color: #4b5563;
}

body.woocommerce-checkout.g3c-loja form.checkout .form-row .optional {
	font-weight: 400;
	color: #9ca3af;
}

body.woocommerce-checkout.g3c-loja form.checkout .input-text,
body.woocommerce-checkout.g3c-loja form.checkout select {
	min-height: 48px;
	font-size: 16px;
}

body.woocommerce-checkout.g3c-loja .g3c-nota-abre {
	margin: 4px 0 0;
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
	font-size: 14px;
	font-weight: 600;
	color: var(--g3c-blue);
	cursor: pointer;
}

body.woocommerce-checkout.g3c-loja .woocommerce-additional-fields > h3 {
	display: none;
}

/* Métodos de pagamento em cartões */
body.woocommerce-checkout.g3c-loja .g3c-pagamento #payment {
	border: 0;
	border-radius: 0;
	background: none !important;
}

body.woocommerce-checkout.g3c-loja .g3c-pagamento #payment ul.payment_methods {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0 !important;
	border: 0 !important;
}

body.woocommerce-checkout.g3c-loja .g3c-pagamento #payment ul.payment_methods li {
	margin: 0 !important;
	padding: 14px 16px;
	border: 1px solid var(--g3c-line);
	border-radius: 12px;
	background: #fff;
	list-style: none;
}

body.woocommerce-checkout.g3c-loja .g3c-pagamento #payment ul.payment_methods li:has(> input:checked) {
	border-color: var(--g3c-blue);
	background: #f5f9fd;
	box-shadow: 0 0 0 1px var(--g3c-blue) inset;
}

body.woocommerce-checkout.g3c-loja .g3c-pagamento #payment ul.payment_methods li label {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font-size: 16px;
	cursor: pointer;
}

body.woocommerce-checkout.g3c-loja .g3c-pagamento #payment ul.payment_methods li label img {
	max-height: 26px;
	width: auto;
	margin: 0;
	float: none;
}

body.woocommerce-checkout.g3c-loja .g3c-pagamento #payment div.payment_box {
	margin: 12px 0 0;
	padding: 12px 14px;
}

body.woocommerce-checkout.g3c-loja .g3c-pagamento #payment div.form-row.place-order {
	margin: 18px 0 0;
	padding: 0 !important;
}

/* Botão final: verde, com o total */
body.woocommerce-checkout.g3c-loja .woocommerce #place_order {
	width: 100%;
	min-height: 58px;
	border-radius: 12px;
	background: #2e9e4f !important;
	border-color: #2e9e4f !important;
	font-size: 18px;
	font-weight: 700;
	box-shadow: 0 8px 20px rgba(46, 158, 79, .25);
}

body.woocommerce-checkout.g3c-loja .woocommerce #place_order:hover {
	background: #268743 !important;
	border-color: #268743 !important;
}

body.woocommerce-checkout.g3c-loja .woocommerce #place_order::before {
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-right: 10px;
	vertical-align: -3px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17 9V7A5 5 0 0 0 7 7v2H5v12h14V9h-2Zm-8 0V7a3 3 0 0 1 6 0v2H9Z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17 9V7A5 5 0 0 0 7 7v2H5v12h14V9h-2Zm-8 0V7a3 3 0 0 1 6 0v2H9Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

@media (max-width: 980px) {
	body.woocommerce-checkout.g3c-loja form.checkout {
		display: flex;
		flex-direction: column;
		row-gap: 16px;
	}

	body.woocommerce-checkout.g3c-loja #customer_details {
		order: 1;
	}

	body.woocommerce-checkout.g3c-loja #order_review_heading {
		order: 2;
		margin: 4px 0 -16px;
	}

	body.woocommerce-checkout.g3c-loja #order_review {
		order: 3;
		margin-top: 0;
	}

	body.woocommerce-checkout.g3c-loja .g3c-pagamento {
		order: 4;
		padding: 18px 12px;
	}
}

body.woocommerce-checkout.g3c-loja form.checkout #billing_last_name_field,
body.woocommerce-checkout.g3c-loja form.checkout #billing_state_field[style*="none"] {
	display: none !important;
}

/* Ordem dos campos fixada aqui, porque há scripts do site que os mudam de sítio depois de a página carregar */
body.woocommerce-checkout.g3c-loja #billing_email_field { order: 1; }
body.woocommerce-checkout.g3c-loja #billing_first_name_field { order: 2; grid-column: 1 !important; }
body.woocommerce-checkout.g3c-loja #billing_phone_field { order: 3; grid-column: 2 !important; }
body.woocommerce-checkout.g3c-loja #billing_address_1_field { order: 4; }
body.woocommerce-checkout.g3c-loja #billing_postcode_field { order: 5; grid-column: 1 !important; }
body.woocommerce-checkout.g3c-loja #billing_city_field { order: 6; grid-column: 2 !important; }
body.woocommerce-checkout.g3c-loja #billing_country_field { order: 7; }
body.woocommerce-checkout.g3c-loja #billing_state_field { order: 8; }
body.woocommerce-checkout.g3c-loja #billing_nif_field { order: 9; grid-column: 1 !important; }
body.woocommerce-checkout.g3c-loja #billing_company_field { order: 10; grid-column: 2 !important; }

@media (max-width: 560px) {
	body.woocommerce-checkout.g3c-loja form.checkout .woocommerce-billing-fields__field-wrapper .form-row {
		grid-column: 1 / -1 !important;
	}

	body.woocommerce-checkout.g3c-loja #billing_postcode_field {
		grid-column: 1 !important;
	}

	body.woocommerce-checkout.g3c-loja #billing_city_field {
		grid-column: 2 !important;
	}
}

/* ---------- Resumo da encomenda compacto ---------- */
body.woocommerce-checkout.g3c-loja #order_review_heading {
	display: none !important;
}

body.woocommerce-checkout.g3c-loja #order_review {
	margin-top: 0;
	padding: 20px 22px 22px;
	border: 1px solid var(--g3c-line);
	border-radius: var(--g3c-radius);
}

body.woocommerce-checkout.g3c-loja .g3c-resumo-topo {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 6px;
}

body.woocommerce-checkout.g3c-loja .g3c-resumo-topo h3 {
	margin: 0;
	font-size: 18px;
	font-weight: 700;
	color: var(--g3c-ink);
}

body.woocommerce-checkout.g3c-loja .g3c-resumo-detalhes {
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
	font-size: 13px;
	font-weight: 600;
	color: var(--g3c-blue);
	cursor: pointer;
}

/* Fechado: só o nome, a quantidade e o preço */
body.woocommerce-checkout.g3c-loja #order_review:not(.g3c-com-detalhes) td.product-name dl.variation {
	display: none !important;
}

body.woocommerce-checkout.g3c-loja #order_review table.shop_table tbody td {
	padding-top: 10px;
	padding-bottom: 10px;
}

@media (max-width: 980px) {
	body.woocommerce-checkout.g3c-loja #order_review {
		padding: 16px 14px 18px;
	}
}

/* Miniatura do produto no resumo */
body.woocommerce-checkout.g3c-loja #order_review td.product-name {
	position: relative;
	padding-left: 60px !important;
	min-height: 48px;
}

body.woocommerce-checkout.g3c-loja #order_review img.g3c-resumo-img {
	position: absolute;
	left: 0;
	top: 10px;
	width: 48px !important;
	height: 48px !important;
	border: 1px solid var(--g3c-line);
	border-radius: 8px;
	background: #fff;
	object-fit: contain;
}

body.woocommerce-checkout.g3c-loja #order_review .g3c-resumo-nome {
	font-weight: 600;
	color: var(--g3c-ink);
}
