/* Motorin — Carrinho + Checkout (estilo uniforme) */

/* ===== Botões ===== */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .button,
.woocommerce #place_order,
.woocommerce .checkout-button,
.wc-proceed-to-checkout a.checkout-button{
	background:#BA0707!important;
	color:#fff!important;
	border:0!important;
	border-radius:8px!important;
	font-family:"Oswald",sans-serif!important;
	font-weight:600!important;
	letter-spacing:.5px;
	text-transform:uppercase;
	padding:13px 30px!important;
	transition:background .15s;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce .button:hover,
.woocommerce #place_order:hover,
.woocommerce .checkout-button:hover{ background:#9a0606!important; }
.woocommerce button[name=update_cart],
.woocommerce button[name=apply_coupon]{ background:#141414!important; color:#fff!important; }
.woocommerce button[name=update_cart]:hover,
.woocommerce button[name=apply_coupon]:hover{ background:#333!important; }
.woocommerce button[name=update_cart][disabled]{ opacity:.5; }
.woocommerce-cart .woocommerce a:not(.button),
.woocommerce-checkout .woocommerce a:not(.button){ color:#BA0707; }
.woocommerce-cart .woocommerce a:not(.button):hover,
.woocommerce-checkout .woocommerce a:not(.button):hover{ color:#141414; }

/* ===== Campos do checkout ===== */
.woocommerce-checkout .woocommerce form .form-row input.input-text,
.woocommerce-checkout .woocommerce form .form-row textarea,
.woocommerce-checkout .woocommerce .select2-selection,
.woocommerce-checkout .woocommerce form .form-row select{
	box-sizing:border-box;
	width:100%!important;
	border:0!important;
	border-bottom:1px solid #ccc!important;
	border-radius:0!important;
	background:transparent!important;
	padding:10px 2px!important;
	font-family:"Montserrat",sans-serif;
	font-size:14px;
	color:#222;
}
.woocommerce-checkout .woocommerce form .form-row input.input-text:focus,
.woocommerce-checkout .woocommerce form .form-row textarea:focus,
.woocommerce-checkout .woocommerce form .form-row select:focus,
.woocommerce-checkout .woocommerce .select2-container--focus .select2-selection{
	outline:none;
	border-bottom-color:#BA0707!important;
	box-shadow:none!important;
}
.woocommerce-checkout .woocommerce form .form-row label{
	font-family:"Montserrat",sans-serif;
	font-size:13px;
	font-weight:600;
	color:#444;
	margin-bottom:4px;
}
.woocommerce-checkout .woocommerce form .form-row label .required{ color:#BA0707; border:0; }
.woocommerce-checkout .select2-container{ width:100%!important; max-width:100%!important; }
.woocommerce-checkout .select2-container .select2-selection--single{ min-height:42px; display:flex; align-items:center; }

/* ===== Tabelas (carrinho + order review) ===== */
.woocommerce table.shop_table{ border-radius:12px; border:1px solid #eceae4; overflow:hidden; background:#fff; }
.woocommerce table.shop_table thead th{
	font-family:"Oswald",sans-serif; text-transform:uppercase; font-size:13px; letter-spacing:.5px;
	color:#141414; background:#f7f6f4; border:0;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td{ font-family:"Montserrat",sans-serif; }
.woocommerce table.shop_table td.product-name a{ color:#141414; font-weight:600; }
.woocommerce table.shop_table td.product-name a:hover{ color:#BA0707; }
.cart_totals h2,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout-review-order h2{ font-family:"Oswald",sans-serif; text-transform:uppercase; color:#141414; }
.woocommerce-message{ border-top-color:#BA0707; }
.woocommerce-message a.button{ font-size:13px; }
.woocommerce a.remove{ color:#BA0707!important; }
.woocommerce a.remove:hover{ background:#BA0707!important; color:#fff!important; }

/* Nota de portes Madeira/Açores */
.customNote{
	font-family:"Montserrat",sans-serif; font-size:12.5px; line-height:1.5; color:#5f5e5a;
	background:#f7f6f4; border-left:3px solid #BA0707; border-radius:6px; padding:10px 12px; margin:0 0 16px;
}
@media(max-width:640px){
	.woocommerce #place_order,
	.woocommerce .checkout-button{ width:100%!important; text-align:center; }
}

/* Esconder selects nativos do País (Select2) */
.woocommerce-checkout select.country_select.select2-hidden-accessible,
.woocommerce-checkout select.state_select.select2-hidden-accessible,
.woocommerce-checkout select.select2-hidden-accessible{
	border:0!important; clip:rect(0 0 0 0)!important; height:1px!important; width:1px!important;
	margin:-1px!important; padding:0!important; overflow:hidden!important; position:absolute!important; white-space:nowrap!important;
}
.woocommerce-checkout .col2-set,
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields{ overflow-x:hidden; }
select#billing_country.select2-hidden-accessible,
select#shipping_country.select2-hidden-accessible,
select#billing_state.select2-hidden-accessible,
select#shipping_state.select2-hidden-accessible{ width:1px!important; min-width:1px!important; max-width:1px!important; }
.woocommerce-checkout .woocommerce{ overflow-x:hidden; }

/* ===== CARRINHO — 2 colunas: produtos (esq) + total (dir) ===== */
.woocommerce-cart .woocommerce{
	display:grid;
	grid-template-columns:minmax(0,1fr) 360px;
	gap:28px;
	align-items:start;
	max-width:1280px;
	margin:0 auto;
}
.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper{ grid-column:1 / -1; }
.woocommerce-cart .woocommerce > .woocommerce-cart-form{ grid-column:1; margin:0; min-width:0; }
.woocommerce-cart .woocommerce > .cart-collaterals{
	grid-column:2; width:100%!important; float:none!important; margin:0; position:sticky; top:20px;
}
.woocommerce-cart table.cart{ border-collapse:separate; }
.woocommerce-cart table.cart td,
.woocommerce-cart table.cart th{ padding:16px 14px; vertical-align:middle; border-top:1px solid #f0eee8; }
.woocommerce-cart table.cart .product-thumbnail img{
	width:60px; height:60px; object-fit:contain; border:1px solid #eceae4; border-radius:8px; background:#fff; padding:4px;
}
.woocommerce-cart table.cart td.product-price,
.woocommerce-cart table.cart td.product-subtotal{ font-weight:600; color:#141414; white-space:nowrap; }
.woocommerce-cart table.cart td.product-subtotal{ color:#BA0707; }
.woocommerce-cart table.cart td.product-remove{ width:38px; text-align:center; }
.woocommerce-cart table.cart a.remove{
	display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px;
	border-radius:50%; font-size:16px; line-height:1; border:1px solid #e3ded2;
}
.woocommerce-cart table.cart .quantity input.qty{
	width:64px; height:40px; box-sizing:border-box; border:1px solid #d8d4c8; border-radius:8px;
	text-align:center; font-weight:600; font-family:"Montserrat",sans-serif; font-size:14px; color:#141414;
}
.woocommerce-cart table.cart td.actions{ padding:18px 14px; background:#faf9f7; }
.woocommerce-cart table.cart td.actions .coupon{ float:left; display:flex; gap:8px; align-items:stretch; }
.woocommerce-cart table.cart td.actions .coupon .input-text{
	width:170px; height:44px; box-sizing:border-box; border:1px solid #d8d4c8; border-radius:8px;
	padding:0 12px; font-family:"Montserrat",sans-serif; font-size:14px;
}
.woocommerce-cart table.cart td.actions .coupon .input-text:focus{ outline:none; border-color:#BA0707; }
.woocommerce-cart table.cart td.actions .button{ height:44px; }

/* ===== Card "Total no Carrinho" ===== */
.woocommerce-cart .cart-collaterals .cart_totals{
	width:100%!important; float:none!important; padding:22px; background:#f7f6f4; border:1px solid #eceae4; border-radius:12px;
}
.woocommerce-cart .cart-collaterals .cart_totals h2{
	margin:0 0 14px; font-size:20px; padding-bottom:12px; border-bottom:2px solid #BA0707;
}
.woocommerce-cart .cart-collaterals .cart_totals table{ margin:0; border:0; background:transparent; }
.woocommerce-cart .cart-collaterals .cart_totals table th,
.woocommerce-cart .cart-collaterals .cart_totals table td{
	border:0; border-top:1px solid #e6e3db; padding:12px 0; background:transparent!important;
	font-family:"Montserrat",sans-serif; font-size:14px; color:#333;
}
.woocommerce-cart .cart-collaterals .cart_totals tr:first-child th,
.woocommerce-cart .cart-collaterals .cart_totals tr:first-child td{ border-top:0; }
.woocommerce-cart .cart-collaterals .cart_totals .order-total th,
.woocommerce-cart .cart-collaterals .cart_totals .order-total td{ border-top:2px solid #d8d4c8; padding-top:14px; }
.woocommerce-cart .cart-collaterals .cart_totals .order-total th{
	font-family:"Oswald",sans-serif; text-transform:uppercase; font-size:15px; color:#141414;
}
.woocommerce-cart .cart-collaterals .cart_totals .order-total .amount{
	font-family:"Oswald",sans-serif; font-size:20px; font-weight:700; color:#BA0707;
}
.woocommerce-cart .cart_totals #shipping_method li{ margin:6px 0; }
.woocommerce-cart .cart_totals .shipping .woocommerce-shipping-methods{ margin:0; }
.woocommerce-cart .wc-proceed-to-checkout{ padding:18px 0 0; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{ display:block; width:100%; text-align:center; font-size:16px!important; }

/* ===== Responsivo — empilha < 900px ===== */
@media(max-width:900px){
	.woocommerce-cart .woocommerce{ grid-template-columns:1fr; }
	.woocommerce-cart .woocommerce > .woocommerce-cart-form,
	.woocommerce-cart .woocommerce > .cart-collaterals{ grid-column:1; }
	.woocommerce-cart .woocommerce > .cart-collaterals{ position:static; }
	.woocommerce-cart table.cart td.actions .coupon{ float:none; flex-wrap:wrap; }
	.woocommerce-cart table.cart td.actions .coupon .input-text{ width:100%; }
}

/* LARGURA-CART-CHECKOUT — alargar container nestas paginas */
.woocommerce-cart .mot-page{ max-width:1340px; }
.woocommerce-cart .mot-page__inner{ max-width:none; padding-top:8px; }
.woocommerce-checkout .mot-page{ max-width:1140px; }
.woocommerce-checkout .mot-page__inner{ max-width:none; padding-top:8px; }

/* FIX-BTN-FINALIZAR — botao finalizar compra dentro do card */
.woocommerce-cart .wc-proceed-to-checkout{ margin:0; padding:18px 0 0; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
	box-sizing:border-box;
	width:100%;
	max-width:100%;
	margin:0;
	padding-left:16px!important;
	padding-right:16px!important;
}

/* MOT-ALERTS — avisos WooCommerce no estilo Motorin (info / erro / sucesso) */
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-error,
.woocommerce-info,
.woocommerce-message,
.woocommerce-error{
	position:relative;
	font-family:"Montserrat",sans-serif;
	font-size:14px;
	line-height:1.55;
	color:#141414;
	background:#f7f6f4!important;
	border:1px solid #eceae4!important;
	border-left:4px solid #BA0707!important;
	border-radius:10px!important;
	padding:15px 18px 15px 48px!important;
	margin:0 0 22px!important;
	list-style:none;
	box-shadow:none!important;
}
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before,
.woocommerce-error::before{
	left:18px!important;
	top:16px!important;
	color:#BA0707!important;
	font-size:16px;
}
.woocommerce .woocommerce-error,
.woocommerce-error{ background:#fceceb!important; border-color:#f3cfce!important; }
.woocommerce .woocommerce-error li,
.woocommerce-error li{ margin:0 0 8px; padding:0; color:#8f2320; }
.woocommerce .woocommerce-error li:last-child,
.woocommerce-error li:last-child{ margin-bottom:0; }
.woocommerce .woocommerce-error li strong,
.woocommerce-error li strong{ color:#141414; font-weight:600; }
.woocommerce .woocommerce-message,
.woocommerce-message{ border-top:0!important; }
.woocommerce .woocommerce-info a,
.woocommerce-info a,
.woocommerce .woocommerce-message a,
.woocommerce-message a{ color:#BA0707; font-weight:600; }
.woocommerce .woocommerce-info a:hover,
.woocommerce-info a:hover{ color:#141414; }
.woocommerce form.checkout_coupon{
	border:1px solid #eceae4;
	border-radius:10px;
	background:#faf9f7;
	padding:18px;
}

/* MOT-LABELS-CSS — labels escondidas visualmente + espacamento dos campos */
.woocommerce-checkout .screen-reader-text{
	position:absolute!important; width:1px; height:1px; padding:0; margin:-1px;
	overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}
.woocommerce-checkout .form-row{ margin-bottom:14px; }
.woocommerce-checkout .form-row label{ margin-bottom:0; }

/* MOT-THANKYOU — pagina "Encomenda recebida" no estilo Motorin */
.woocommerce-order-received .mot-page{ max-width:1040px; }
.woocommerce-order-received .mot-page__inner{ max-width:none; }

.woocommerce-order-received .woocommerce-thankyou-order-received{
	position:relative;
	background:#eaf5ee; border:1px solid #cbe6d6; border-left:4px solid #2e7d46;
	border-radius:10px; padding:16px 18px 16px 48px; margin:0 0 26px;
	font-family:"Montserrat",sans-serif; font-size:15px; font-weight:600; color:#1e5b33;
}
.woocommerce-order-received .woocommerce-thankyou-order-received::before{
	content:"\2713"; position:absolute; left:16px; top:14px;
	width:22px; height:22px; border-radius:50%; background:#2e7d46; color:#fff;
	font-size:13px; line-height:22px; text-align:center; font-weight:700;
}

.woocommerce-order-received ul.woocommerce-order-overview{
	list-style:none; margin:0 0 34px; padding:16px 4px;
	display:flex; flex-wrap:wrap;
	border:1px solid #eceae4; border-radius:12px; background:#faf9f7;
}
.woocommerce-order-received ul.woocommerce-order-overview li{
	flex:1 1 150px; padding:6px 22px; border-right:1px solid #e6e3db;
	font-family:"Montserrat",sans-serif; font-size:11px; font-weight:600;
	text-transform:uppercase; letter-spacing:.5px; color:#8a8880; line-height:1.3;
}
.woocommerce-order-received ul.woocommerce-order-overview li:last-child{ border-right:0; }
.woocommerce-order-received ul.woocommerce-order-overview li strong{
	display:block; margin-top:5px; color:#141414;
	font-family:"Oswald",sans-serif; font-size:18px; font-weight:600;
	text-transform:none; letter-spacing:0;
}

.woocommerce-order-received .woocommerce-order-details__title,
.woocommerce-order-received .woocommerce-column__title{
	font-family:"Oswald",sans-serif; text-transform:uppercase; color:#141414;
	font-size:20px; margin:0 0 14px; padding-left:12px; position:relative; line-height:1.2;
}
.woocommerce-order-received .woocommerce-order-details__title::before,
.woocommerce-order-received .woocommerce-column__title::before{
	content:""; position:absolute; left:0; top:2px; bottom:2px; width:4px;
	background:#BA0707; border-radius:2px;
}

.woocommerce-order-received .woocommerce-bacs-bank-details{
	background:#f7f6f4; border:1px solid #eceae4; border-left:4px solid #BA0707;
	border-radius:10px; padding:18px 20px; margin:0 0 34px;
}
.woocommerce-order-received .wc-bacs-bank-details-heading{
	font-family:"Oswald",sans-serif; text-transform:uppercase; color:#141414;
	font-size:18px; margin:0 0 10px;
}
.woocommerce-order-received ul.wc-bacs-bank-details{ list-style:none; margin:0; padding:0; }
.woocommerce-order-received ul.wc-bacs-bank-details li{
	font-family:"Montserrat",sans-serif; font-size:14px; padding:3px 0; color:#3a3a3a;
}
.woocommerce-order-received ul.wc-bacs-bank-details li.iban{
	font-family:"Consolas","Roboto Mono",monospace; font-size:15px; font-weight:600; color:#141414;
}

.woocommerce-order-received .woocommerce-columns--addresses{
	display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:8px;
}
.woocommerce-order-received .woocommerce-columns--addresses .col-1,
.woocommerce-order-received .woocommerce-columns--addresses .col-2{ width:auto; float:none; margin:0; padding:0; }
.woocommerce-order-received address{
	border:1px solid #eceae4; border-radius:10px; padding:18px 20px; background:#fff;
	font-family:"Montserrat",sans-serif; font-size:14px; line-height:1.75; color:#3a3a3a; font-style:normal;
}
@media(max-width:760px){
	.woocommerce-order-received .woocommerce-columns--addresses{ grid-template-columns:1fr; }
	.woocommerce-order-received ul.woocommerce-order-overview li{ flex-basis:100%; border-right:0; border-bottom:1px solid #e6e3db; }
	.woocommerce-order-received ul.woocommerce-order-overview li:last-child{ border-bottom:0; }
}

/* MOT-THANKYOU-ADDR-FIX — remover clearfix que estraga o grid das moradas */
.woocommerce-order-received .woocommerce-columns--addresses::before,
.woocommerce-order-received .woocommerce-columns--addresses::after{
	content:none!important; display:none!important;
}
.woocommerce-order-received .woocommerce-columns--addresses{
	align-items:start;
}
