/* WooCommerce is responsible for the flow. This file only provides the Santagram UI. */
.commerce-main { min-height: 70vh; padding: 32px 0 64px; }
.woocommerce .woocommerce-breadcrumb { margin-bottom: 24px; color: var(--sg-muted); font-size: .82rem; }
.woocommerce h1,
.woocommerce .woocommerce-order > h2,
.woocommerce .woocommerce-order-details__title,
.woocommerce .woocommerce-column__title {
  font-family: var(--sg-font-display);
  font-weight: 400;
}
.woocommerce h1 { margin-bottom: 24px; font-size: clamp(26px, 3.4vw, 34px); }
.woocommerce h2 { font-size: clamp(22px, 2.5vw, 28px); }
.woocommerce form .form-row { margin: 0 0 18px; padding: 0; }
.woocommerce form .form-row label { display: block; margin: 0 0 7px; color: var(--sg-ink); font-size: .82rem; font-weight: 800; }
.woocommerce form .form-row .required { color: var(--sg-red); }
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
.woocommerce .select2-container .select2-selection--single,
.woocommerce form .password-input input {
  width: 100%;
  min-height: 48px;
  padding: 11px 14px;
  border: 1px solid var(--sg-border);
  border-radius: 12px;
  outline: 0;
  color: var(--sg-ink);
  background: var(--sg-white);
  box-shadow: none;
  transition: border .2s, box-shadow .2s;
}
.woocommerce textarea { min-height: 120px; resize: vertical; }
.woocommerce input.input-text:focus,
.woocommerce textarea:focus,
.woocommerce select:focus,
.woocommerce .select2-container--open .select2-selection--single {
  border-color: var(--sg-red);
  box-shadow: 0 0 0 3px rgba(227,28,61,.1);
}
.woocommerce .select2-container .select2-selection--single .select2-selection__rendered { padding: 12px 0; line-height: 28px; }
.woocommerce .select2-container .select2-selection--single .select2-selection__arrow { top: 13px; right: 9px; }
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  min-height: 50px;
  padding: 13px 22px;
  border: 0;
  border-radius: 999px;
  color: var(--sg-white);
  background: var(--sg-red);
  font-weight: 800;
  line-height: 1.2;
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover { color: var(--sg-white); background: var(--sg-red-dark); }
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled] { color: rgba(255,255,255,.75); background: #a9afa9; }
.woocommerce a.remove { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; color: var(--sg-red) !important; font-size: 1.2rem; }
.woocommerce a.remove:hover { color: var(--sg-white) !important; background: var(--sg-red); }
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
	min-height: 0;
	margin: 0 0 16px;
	padding: 11px 14px 11px 40px;
	border: 1px solid rgba(13,107,54,.18);
	border-top: 1px solid rgba(13,107,54,.18);
	border-radius: 11px;
	color: #4a3a37;
	background: rgba(13,107,54,.06);
	box-shadow: none;
	font-size: 12.5px;
	line-height: 1.45;
}
.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before { top: 50%; left: 15px; transform: translateY(-50%); color: #0d6b36; font-size: 14px; }
.woocommerce-info { border-color: rgba(154,104,21,.2); background: rgba(232,189,97,.13); }
.woocommerce-info::before { color: #9a6815; }
.woocommerce-error { border-color: rgba(227,28,61,.18); background: rgba(227,28,61,.06); }
.woocommerce-error::before { color: var(--sg-red); }
.woocommerce-notices-wrapper { width: 100%; margin-right: 0; margin-left: 0; }
.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-error a:not(.button),
.woocommerce-info a:not(.button),
.woocommerce-message a:not(.button) { color: var(--sg-red); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.woocommerce-message .restore-item { margin-left: 4px; }
.woocommerce-error .button,
.woocommerce-info .button,
.woocommerce-message .button {
	min-height: 0;
	margin: -4px 0 -4px 12px;
	padding: 7px 12px;
	float: right;
	border-radius: 999px;
	font-size: 11.5px;
	line-height: 1.2;
}

/* Cart */
.woocommerce-cart-form,
.cart-collaterals .cart_totals,
.woocommerce-form-coupon,
.woocommerce-form-login,
.woocommerce-form-register,
.woocommerce-MyAccount-content,
.woocommerce-order-details,
.woocommerce-customer-details {
  border: 1px solid var(--sg-border);
  border-radius: var(--sg-radius);
  background: var(--sg-white);
  box-shadow: none;
}
.woocommerce-cart-form { overflow: hidden; }
.woocommerce table.shop_table { margin: 0; border: 0; border-collapse: collapse; border-radius: 0; }
.woocommerce table.shop_table th { padding: 14px 18px; color: var(--sg-muted); background: var(--sg-paper); font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.woocommerce table.shop_table td { padding: 18px; border-top: 1px solid var(--sg-border); }
.woocommerce table.shop_table .product-thumbnail img { width: 75px; border-radius: 12px; }
.woocommerce table.shop_table .product-name a { font-weight: 800; }
.woocommerce table.shop_table .product-name dl.variation { color: var(--sg-muted); font-size: .78rem; }
.woocommerce table.shop_table .product-name dl.variation dt { clear: left; }
.woocommerce table.shop_table .product-name dl.variation dd { margin-bottom: 3px; }
.woocommerce .quantity .qty { width: 70px; min-height: 44px; border: 1px solid var(--sg-border); border-radius: 10px; }
.woocommerce-cart table.cart td.actions { padding: 20px; background: var(--sg-paper); }
.woocommerce-cart table.cart td.actions .coupon { display: flex; gap: 9px; }
.woocommerce-cart table.cart td.actions .coupon .input-text { width: 210px; margin: 0; }
.woocommerce .cart-collaterals { display: flex; margin-top: 26px; justify-content: flex-end; }
.woocommerce .cart-collaterals .cart_totals { width: min(100%, 440px); padding: 22px; }
.woocommerce .cart-collaterals .cart_totals h2 { margin-bottom: 20px; }
.woocommerce .cart-collaterals .cart_totals table th { width: 45%; background: transparent; }
.woocommerce .wc-proceed-to-checkout { margin-bottom: 0; padding: 24px 0 0; }
.woocommerce .wc-proceed-to-checkout a.checkout-button { display: flex; margin: 0; font-size: 1rem; }
.woocommerce .cart-empty { text-align: center; }
.woocommerce .return-to-shop { text-align: center; }
.woocommerce .cart-empty.woocommerce-info { max-width: 620px; margin: 0 auto 18px; }
.woocommerce .return-to-shop .button { min-width: 220px; }
.woocommerce-cart .sg-cart-empty { width: min(100%,700px); max-width: 700px; margin: 0 auto; padding: clamp(85px,11vw,125px) 0; text-align: center; }
.woocommerce-cart .sg-cart-empty .eyebrow { justify-content: center; margin-bottom: 20px; }
.woocommerce-cart .sg-cart-empty h1 { max-width: 680px; margin: 0 auto 28px; color: var(--sg-ink); font-family: var(--sg-font-display); font-size: clamp(2.5rem,6vw,5rem); font-weight: 400; letter-spacing: -.035em; line-height: 1.08; }
.woocommerce-cart .sg-cart-empty > p:not(.eyebrow) { max-width: 570px; margin: 0 auto 20px; color: var(--sg-ink); font-size: 16px; }
.woocommerce-cart .sg-cart-empty .button { min-width: 210px; margin-top: 0; color: #fff; text-decoration: none; }

/* Checkout */
.woocommerce-checkout .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 18px 26px; align-items: start; }
.woocommerce-checkout .woocommerce > .woocommerce-notices-wrapper,
.woocommerce-checkout .woocommerce > .woocommerce-form-login-toggle,
.woocommerce-checkout .woocommerce > .woocommerce-form-coupon-toggle,
.woocommerce-checkout .woocommerce > form.checkout_coupon,
.woocommerce-checkout .woocommerce > form.login { grid-column: 1 / -1; }
.woocommerce-checkout form.checkout { display: contents; }
.woocommerce-checkout #customer_details { grid-column: 1; grid-row: 1; margin: 0; padding: 22px 22px 8px; border: 1px solid var(--sg-border); border-radius: var(--sg-radius); background: var(--sg-white); box-shadow: none; }
.woocommerce-checkout .checkout-section-title { margin: 0 0 18px; font-family: var(--sg-font-body); font-size: 12px; font-weight: 700; letter-spacing: .05em; line-height: 1.3; text-transform: uppercase; }
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 { float: none; width: 100%; }
.woocommerce-checkout #customer_details h3 { display: none; }
.woocommerce-checkout #order_review_heading { display: none; }
.woocommerce-checkout #order_review { position: sticky; top: 24px; grid-column: 2; grid-row: 1; padding: 22px; border: 1px solid var(--sg-border); border-radius: var(--sg-radius); background: var(--sg-white); box-shadow: none; }
.woocommerce-checkout-review-order-table thead { display: none; }
.woocommerce-checkout-review-order-table .product-name { padding-left: 0 !important; font-weight: 700; }
.woocommerce-checkout-review-order-table .product-total { padding-right: 0 !important; text-align: right; }
.woocommerce-checkout-review-order-table tfoot th { padding-left: 0 !important; background: transparent !important; }
.woocommerce-checkout-review-order-table tfoot td { padding-right: 0 !important; text-align: right; }
.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td { padding-top: 24px !important; font-size: 1.08rem; }
.woocommerce-checkout-review-order-table .order-total .amount { color: var(--sg-red); font-size: 1.35rem; }
.woocommerce-checkout .woocommerce-checkout-payment { margin-top: 22px; border-radius: var(--sg-radius-sm); background: var(--sg-paper) !important; }
.woocommerce-checkout #payment ul.payment_methods { padding: 20px; border-bottom-color: var(--sg-border); }
.woocommerce-checkout #payment div.payment_box { color: var(--sg-muted); background: var(--sg-white); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--sg-white); }
.woocommerce-checkout #payment div.form-row { padding: 20px; }
.woocommerce-checkout #payment #place_order { float: none; width: 100%; min-height: 58px; font-size: 1rem; }
.woocommerce-checkout .woocommerce-privacy-policy-text { color: var(--sg-muted); font-size: .78rem; }
.woocommerce-checkout form.checkout_coupon { display: flex; max-width: 680px; padding: 22px; border: 1px solid var(--sg-border); border-radius: var(--sg-radius-sm); background: var(--sg-white); }
.woocommerce-checkout form.checkout_coupon p { margin: 0; }
.woocommerce-checkout form.checkout_coupon .form-row-first { flex: 1; }
.woocommerce-checkout form.checkout_coupon .form-row-last { flex: 0 0 auto; }

/* Account — the same component language as cart and checkout. */
.woocommerce-account .commerce-shell { width: min(100%,1100px); }
.woocommerce-account .entry-content > .woocommerce { width: 100%; max-width: none; margin: 0; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-account .woocommerce-error,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message { width: 100%; margin-bottom: 20px; }
.woocommerce-account .woocommerce-invalid input.input-text { border-color: var(--sg-red); box-shadow: 0 0 0 3px rgba(227,28,61,.1); }
.woocommerce-account .woocommerce button.button,
.woocommerce-account .woocommerce a.button,
.woocommerce-account .woocommerce input.button { align-items: center; display: inline-flex; justify-content: center; line-height: 1 !important; text-align: center; }

/* Logged-out authentication. */
.woocommerce-account:not(.logged-in) .woocommerce { display: block; }
.woocommerce-account:not(.logged-in) .commerce-title { max-width: 760px; margin: 0 auto; text-align: center; }
.woocommerce-account:not(.logged-in) .commerce-title h1 { margin-bottom: 24px; }
.sg-auth { width: 100%; }
.woocommerce-account .sg-auth__grid,
.woocommerce-account .sg-auth__grid.u-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
.woocommerce-account .sg-auth__grid::before,
.woocommerce-account .sg-auth__grid::after { display: none; }
.woocommerce-account .sg-auth__grid.sg-auth--login-only,
.woocommerce-account .sg-auth--login-only .sg-auth__grid { grid-template-columns: minmax(0,540px); justify-content: center; }
.woocommerce-account .sg-auth__grid .sg-auth__card { width: auto; min-width: 0; height: auto; margin: 0; padding: 28px; float: none; border: 1px solid rgba(34,21,18,.1); border-radius: 16px; background: #fff; box-shadow: none; }
.sg-auth__header { display: flex; min-height: 74px; margin-bottom: 25px; align-items: flex-start; gap: 14px; }
.sg-auth__icon { display: grid; width: 44px; height: 44px; flex: 0 0 44px; place-items: center; border-radius: 50%; color: var(--sg-red); background: rgba(227,28,61,.09); }
.sg-auth__icon svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.sg-auth__header h2 { margin: 1px 0 6px; color: var(--sg-ink); font-family: var(--sg-font-display); font-size: clamp(23px,2.4vw,28px); font-weight: 400; letter-spacing: -.02em; }
.sg-auth__header p { margin: 0; color: #4a3a37; font-size: 13px; line-height: 1.5; }
.woocommerce-account .woocommerce .sg-auth form.woocommerce-form { display: flex; height: auto; margin: 0; padding: 0; flex-direction: column; border: 0; border-radius: 0; background: transparent; }
.woocommerce-account .sg-auth form .form-row { margin-bottom: 16px; }
.woocommerce-account .sg-auth form .form-row label { margin-bottom: 8px; font-size: 13.5px; font-weight: 600; }
.woocommerce-account .sg-auth input.input-text { min-height: 0; padding: 12px 14px; border: 2px solid rgba(34,21,18,.12); border-radius: 11px; font-size: 15px; }
.woocommerce-account .sg-auth input.input-text::placeholder { color: rgba(74,58,55,.42); }
.woocommerce-account .sg-auth input.input-text:focus { border-color: var(--sg-red); box-shadow: 0 0 0 3px rgba(227,28,61,.12); }
.woocommerce-account .sg-auth .password-input { display: block; }
.woocommerce-account .sg-auth .show-password-input { top: 50%; right: 14px; transform: translateY(-50%); }
.sg-auth__options { display: flex; margin: -1px 0 19px; align-items: center; justify-content: space-between; gap: 12px; color: #4a3a37; font-size: 12.5px; }
.woocommerce-account .sg-auth .woocommerce-form-login__rememberme { display: inline-flex; margin: 0; align-items: center; gap: 7px; cursor: pointer; }
.woocommerce-account .sg-auth input[type="checkbox"] { width: 17px; height: 17px; margin: 0; accent-color: var(--sg-red); }
.sg-auth__options a { color: var(--sg-red); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.woocommerce-account .sg-auth button.button { width: 100%; min-height: 0; margin: 0; padding: 15px 28px; border-radius: 999px; background: var(--sg-red); box-shadow: 0 10px 24px rgba(227,28,61,.34); font-family: var(--sg-font-display); font-size: 17px; font-weight: 400; }
.woocommerce-account .sg-auth button.button:hover { transform: translateY(-1px); background: var(--sg-red-dark); box-shadow: 0 13px 28px rgba(227,28,61,.44); }
.sg-auth__card--register { background: linear-gradient(145deg,#fff 55%,rgba(255,243,236,.72)); }
.sg-auth__hint,
.woocommerce-account .sg-auth .woocommerce-privacy-policy-text { margin: 0 0 16px; color: #4a3a37; font-size: 11.5px; line-height: 1.55; }
.woocommerce-account .sg-auth .woocommerce-privacy-policy-text a { color: var(--sg-red); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }

/* Lost/reset password use a single checkout-style card. */
.woocommerce-account:not(.logged-in) .woocommerce > .woocommerce-ResetPassword,
.woocommerce-account:not(.logged-in) .woocommerce > form.lost_reset_password { width: min(100%,560px); margin: 0 auto; padding: 28px; border: 1px solid rgba(34,21,18,.1); border-radius: 16px; background: #fff; }
.woocommerce-account .lost_reset_password > p:first-child { margin-bottom: 22px; color: #4a3a37; font-size: 14px; line-height: 1.6; }
.woocommerce-account .lost_reset_password .form-row-first { width: 100%; float: none; }
.woocommerce-account .lost_reset_password .form-row label { margin-bottom: 8px; font-size: 13.5px; font-weight: 600; }
.woocommerce-account .lost_reset_password input.input-text { min-height: 0; padding: 12px 14px; border: 2px solid rgba(34,21,18,.12); border-radius: 11px; font-size: 15px; }
.woocommerce-account .lost_reset_password input.input-text:focus { border-color: var(--sg-red); box-shadow: 0 0 0 3px rgba(227,28,61,.12); }
.woocommerce-account .lost_reset_password button.button { min-height: 0; padding: 14px 24px; box-shadow: 0 8px 20px rgba(227,28,61,.25); }

/* Logged-in account area. */
.logged-in.woocommerce-account .woocommerce { display: grid; grid-template-columns: 236px minmax(0,1fr); gap: 20px 26px; align-items: start; }
.logged-in.woocommerce-account .entry-content > .woocommerce::before,
.logged-in.woocommerce-account .entry-content > .woocommerce::after { display: none; }
.woocommerce-account .woocommerce-MyAccount-navigation { position: sticky; top: 24px; width: 100%; overflow: hidden; float: none; border: 1px solid rgba(34,21,18,.1); border-radius: 16px; background: #fff; box-shadow: none; }
.sg-account-nav__heading { padding: 21px 20px 17px; border-bottom: 1px solid rgba(34,21,18,.08); }
.sg-account-nav__heading span { display: block; margin-bottom: 3px; color: var(--sg-red); font-size: 10.5px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.sg-account-nav__heading strong { display: block; color: var(--sg-ink); font-family: var(--sg-font-display); font-size: 21px; font-weight: 400; line-height: 1.2; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 9px; list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: flex; padding: 11px 12px; align-items: center; gap: 10px; border-radius: 10px; color: #4a3a37; font-size: 13.5px; font-weight: 600; text-decoration: none; transition: color .15s,background .15s; }
.woocommerce-account .woocommerce-MyAccount-navigation li a svg { width: 19px; height: 19px; flex: 0 0 19px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover { color: var(--sg-red); background: rgba(227,28,61,.08); }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout { margin-top: 8px; padding-top: 8px; border-top: 1px solid rgba(34,21,18,.08); }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a:hover { color: #fff; background: var(--sg-red); }
.woocommerce-account .woocommerce-MyAccount-content { width: auto; min-width: 0; margin: 0; padding: 28px; float: none; border: 1px solid rgba(34,21,18,.1); border-radius: 16px; background: #fff; box-shadow: none; }
.woocommerce-account .woocommerce-MyAccount-content > :first-child { margin-top: 0; }
.woocommerce-account .woocommerce-MyAccount-content > :last-child { margin-bottom: 0; }
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 { color: var(--sg-ink); font-family: var(--sg-font-display); font-weight: 400; }
.woocommerce-account .woocommerce-MyAccount-content h2 { margin-bottom: 20px; font-size: clamp(24px,2.8vw,31px); }
.woocommerce-account .woocommerce-MyAccount-content h3 { font-size: 21px; }
.woocommerce-account .woocommerce-MyAccount-content p { color: #4a3a37; font-size: 14px; }
.woocommerce-account .woocommerce-MyAccount-content a:not(.button) { color: var(--sg-red); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }

.sg-account-welcome { position: relative; margin: -28px -28px 24px; padding: 27px 28px 25px; overflow: hidden; border-bottom: 1px solid rgba(34,21,18,.08); border-radius: 16px 16px 0 0; background: linear-gradient(135deg,rgba(255,243,236,.85),#fff); }
.sg-account-welcome::after { content: ""; position: absolute; top: -54px; right: -38px; width: 150px; height: 150px; border-radius: 50%; background: rgba(227,28,61,.06); }
.sg-account-welcome__eyebrow { position: relative; z-index: 1; display: block; margin-bottom: 6px; color: var(--sg-red); font-size: 10.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.woocommerce-account .sg-account-welcome h2 { position: relative; z-index: 1; margin: 0 0 8px; }
.woocommerce-account .sg-account-welcome h2 { overflow-wrap: anywhere; }
.woocommerce-account .sg-account-welcome p { position: relative; z-index: 1; margin: 0; }
.sg-account-shortcuts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.woocommerce-account .woocommerce-MyAccount-content a.sg-account-shortcut { position: relative; display: flex; min-height: 160px; padding: 17px; flex-direction: column; align-items: flex-start; border: 1px solid rgba(34,21,18,.1); border-radius: 13px; color: var(--sg-ink); background: #fff; text-decoration: none; transition: transform .15s,border-color .15s,box-shadow .15s; }
.woocommerce-account .woocommerce-MyAccount-content a.sg-account-shortcut:hover { transform: translateY(-2px); border-color: rgba(227,28,61,.3); box-shadow: 0 12px 28px rgba(56,29,24,.08); }
.sg-account-shortcut__icon { display: grid; width: 36px; height: 36px; margin-bottom: 20px; place-items: center; border-radius: 50%; color: var(--sg-red); background: rgba(227,28,61,.08); }
.sg-account-shortcut__icon svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.sg-account-shortcut strong { margin-bottom: 4px; font-size: 13.5px; line-height: 1.35; }
.sg-account-shortcut small { padding-right: 18px; color: #4a3a37; font-size: 11.5px; line-height: 1.45; }
.sg-account-shortcut__arrow { position: absolute; right: 15px; bottom: 13px; color: var(--sg-red); font-size: 17px; }

/* Account endpoint forms, addresses and tables. */
.woocommerce-account .woocommerce-MyAccount-content form .form-row label { font-size: 13px; font-weight: 600; }
.woocommerce-account .woocommerce-MyAccount-content input.input-text,
.woocommerce-account .woocommerce-MyAccount-content select { min-height: 0; padding: 12px 14px; border: 2px solid rgba(34,21,18,.12); border-radius: 11px; font-size: 14px; }
.woocommerce-account .woocommerce-MyAccount-content input.input-text:focus,
.woocommerce-account .woocommerce-MyAccount-content select:focus { border-color: var(--sg-red); box-shadow: 0 0 0 3px rgba(227,28,61,.12); }
.woocommerce-account .woocommerce-MyAccount-content fieldset { margin: 25px 0; padding: 20px; border: 1px solid rgba(34,21,18,.1); border-radius: 13px; background: rgba(255,243,236,.45); }
.woocommerce-account .woocommerce-MyAccount-content fieldset legend { padding: 0 8px; color: var(--sg-ink); font-size: 13px; font-weight: 700; }
.woocommerce-account .woocommerce-MyAccount-content em { display: block; margin-top: 5px; color: #6f5d59; font-size: 11.5px; line-height: 1.5; }
.woocommerce-account .woocommerce-MyAccount-content button.button { min-height: 0; padding: 13px 24px; box-shadow: 0 8px 20px rgba(227,28,61,.25); }
.woocommerce-account .woocommerce-Addresses { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.woocommerce-account .woocommerce-Addresses::before,
.woocommerce-account .woocommerce-Addresses::after { display: none; }
.woocommerce-account .woocommerce-Addresses .woocommerce-Address { width: auto; min-width: 0; padding: 18px; float: none; border: 1px solid rgba(34,21,18,.1); border-radius: 13px; background: rgba(255,243,236,.35); }
.woocommerce-account .woocommerce-Address-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.woocommerce-account .woocommerce-Address-title h2 { margin: 0 0 13px; font-family: var(--sg-font-body); font-size: 14px; font-weight: 700; }
.woocommerce-account .woocommerce-Address-title a { font-size: 12px; }
.woocommerce-account .woocommerce-Address address { color: #4a3a37; font-size: 13px; font-style: normal; line-height: 1.65; }
.woocommerce-account table.shop_table { overflow: hidden; border: 1px solid rgba(34,21,18,.1); border-radius: 13px; }
.woocommerce-account table.shop_table th { padding: 12px 14px; background: rgba(255,243,236,.7); font-size: 10.5px; }
.woocommerce-account table.shop_table td { padding: 14px; font-size: 12.5px; }
.woocommerce-account table.shop_table .button { min-height: 0; padding: 8px 12px; font-size: 11.5px; }
.woocommerce-account .woocommerce-Pagination { display: flex; margin-top: 16px; justify-content: space-between; gap: 10px; }

/* Refined account shell: horizontal navigation and a dedicated dashboard. */
.woocommerce-account .woocommerce-error,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message { position: relative; min-height: 48px; padding: 12px 14px 12px 42px; align-items: center; border-width: 1px; }
.woocommerce-account div.woocommerce-error,
.woocommerce-account div.woocommerce-info,
.woocommerce-account div.woocommerce-message { display: flex; gap: 14px; }
.woocommerce-account ul.woocommerce-error { display: block; padding-top: 13px; padding-bottom: 13px; }
.woocommerce-account .woocommerce-error::before,
.woocommerce-account .woocommerce-info::before,
.woocommerce-account .woocommerce-message::before { left: 16px; }
.woocommerce-account .woocommerce-error .button,
.woocommerce-account .woocommerce-info .button,
.woocommerce-account .woocommerce-message .button { order: 2; min-height: 34px !important; margin: 0 0 0 auto !important; padding: 8px 14px !important; flex: 0 0 auto; float: none; border-radius: 999px; box-shadow: none !important; font-family: var(--sg-font-body); font-size: 11.5px !important; font-weight: 700; line-height: 1.2 !important; }

.woocommerce-account .sg-auth--single { width: min(100%,560px); margin: 0 auto; }
.woocommerce-account .sg-auth--single .sg-auth__card { width: 100%; height: auto; margin: 0; padding: 28px; border: 1px solid rgba(34,21,18,.1); border-radius: 16px; background: #fff; box-shadow: none; }
.woocommerce-account .sg-auth--single .sg-auth__header { min-height: 0; }
.woocommerce-account .sg-auth__switch { display: flex; margin: 26px -28px -28px; padding: 18px 28px; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid rgba(34,21,18,.08); border-radius: 0 0 16px 16px; background: rgba(255,243,236,.55); color: #4a3a37; font-size: 12.5px; }
.woocommerce-account .sg-auth__switch > a { display: inline-flex; align-items: center; gap: 6px; color: var(--sg-red); font-weight: 700; white-space: nowrap; }
.woocommerce-account .sg-auth__switch > a:hover { text-decoration: underline; text-underline-offset: 3px; }

.logged-in.woocommerce-account .entry-content > .woocommerce { display: block; }
.woocommerce-account .woocommerce-MyAccount-navigation { position: static; display: flex; width: 100%; margin-bottom: 18px; padding: 9px; align-items: center; gap: 10px; overflow: visible; border-radius: 16px; }
.woocommerce-account .sg-account-nav__heading { display: flex; min-width: 205px; padding: 5px 14px 5px 6px; align-items: center; gap: 10px; border: 0; border-right: 1px solid rgba(34,21,18,.08); }
.woocommerce-account .sg-account-nav__avatar { display: grid; width: 39px; height: 39px; flex: 0 0 39px; place-items: center; border-radius: 50%; color: var(--sg-red); background: rgba(227,28,61,.08); }
.woocommerce-account .sg-account-nav__avatar svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.woocommerce-account .sg-account-nav__identity { min-width: 0; letter-spacing: normal; text-transform: none; }
.woocommerce-account .sg-account-nav__identity small { display: block; margin-bottom: 2px; color: #6f5d59; font-size: 9.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.woocommerce-account .sg-account-nav__identity strong { display: block; max-width: 132px; overflow: hidden; color: var(--sg-ink); font-family: var(--sg-font-body); font-size: 12.5px; font-weight: 700; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; min-width: 0; margin: 0; padding: 0; flex: 1; align-items: center; gap: 3px; }
.woocommerce-account .woocommerce-MyAccount-navigation li { flex: 0 0 auto; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { padding: 10px 9px; gap: 7px; font-size: 11.5px; white-space: nowrap; }
.woocommerce-account .woocommerce-MyAccount-navigation li a svg { width: 17px; height: 17px; flex-basis: 17px; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout { margin: 0 0 0 auto; padding: 0 0 0 8px; border-top: 0; border-left: 1px solid rgba(34,21,18,.08); }
.woocommerce-account .woocommerce-MyAccount-content { width: 100%; padding: 28px; }

.sg-account-welcome { display: flex; margin: 0 0 25px; padding: 0 0 24px; overflow: visible; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid rgba(34,21,18,.08); border-radius: 0; background: none; }
.sg-account-welcome::after { display: none; }
.sg-account-welcome__eyebrow { margin-bottom: 5px; }
.woocommerce-account .sg-account-welcome h2 { margin: 0 0 7px; font-size: clamp(25px,3vw,32px); }
.woocommerce-account .sg-account-welcome p { margin: 0; }
.woocommerce-account .woocommerce-MyAccount-content a.sg-account-welcome__cta { flex: 0 0 auto; padding: 13px 22px; color: #fff; box-shadow: 0 8px 20px rgba(227,28,61,.25); font-family: var(--sg-font-display); font-size: 15px; font-weight: 400; text-decoration: none; }

.sg-account-overview { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(280px,.65fr); gap: 16px; }
.sg-account-panel { min-width: 0; padding: 20px; border: 1px solid rgba(34,21,18,.1); border-radius: 13px; background: #fff; }
.sg-account-panel__heading { display: flex; margin-bottom: 16px; align-items: flex-end; justify-content: space-between; gap: 14px; }
.sg-account-panel__heading span { display: block; margin-bottom: 2px; color: var(--sg-red); font-size: 9.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.woocommerce-account .woocommerce-MyAccount-content .sg-account-panel__heading h3 { margin: 0; font-family: var(--sg-font-body); font-size: 15px; font-weight: 700; }
.woocommerce-account .woocommerce-MyAccount-content .sg-account-panel__heading > a { color: var(--sg-red); font-size: 11.5px; font-weight: 700; text-decoration: none; white-space: nowrap; }
.sg-account-empty { display: flex; min-height: 118px; padding: 20px; align-items: center; gap: 14px; border-radius: 11px; background: rgba(255,243,236,.55); }
.sg-account-empty > span { display: grid; width: 42px; height: 42px; flex: 0 0 42px; place-items: center; border-radius: 50%; color: var(--sg-red); background: #fff; }
.sg-account-empty svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.sg-account-empty strong { display: block; margin-bottom: 3px; font-size: 13px; }
.woocommerce-account .woocommerce-MyAccount-content .sg-account-empty p { margin: 0; font-size: 11.5px; }
.sg-account-orders { border-top: 1px solid rgba(34,21,18,.08); }
.woocommerce-account .woocommerce-MyAccount-content a.sg-account-order { display: grid; padding: 13px 0; grid-template-columns: minmax(0,1fr) auto auto auto; align-items: center; gap: 13px; border-bottom: 1px solid rgba(34,21,18,.08); color: var(--sg-ink); font-size: 12px; text-decoration: none; }
.sg-account-order__number { font-weight: 700; }
.sg-account-order__number small { display: block; margin-top: 2px; color: #6f5d59; font-size: 10px; font-weight: 500; }
.sg-account-order__status { padding: 4px 8px; border-radius: 999px; color: #0d6b36; background: rgba(13,107,54,.08); font-size: 10px; font-weight: 700; }
.sg-account-order > strong { font-size: 12px; white-space: nowrap; }
.sg-account-order > span:last-child { color: var(--sg-red); }
.sg-account-panel--quick { background: rgba(255,243,236,.28); }
.woocommerce-account .woocommerce-MyAccount-content a.sg-account-quick-link { display: grid; padding: 13px 0; grid-template-columns: 36px minmax(0,1fr) auto; align-items: center; gap: 10px; border-top: 1px solid rgba(34,21,18,.08); color: var(--sg-ink); text-decoration: none; }
.sg-account-quick-link > span { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 50%; color: var(--sg-red); background: #fff; }
.sg-account-quick-link svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.sg-account-quick-link strong { display: block; font-size: 12px; }
.sg-account-quick-link small { display: block; margin-top: 2px; color: #6f5d59; font-size: 10px; line-height: 1.35; }
.sg-account-quick-link b { color: var(--sg-red); font-size: 15px; font-weight: 500; }

/* Thank you and order details */
.woocommerce-order-received .woocommerce { max-width: 960px; margin-inline: auto; }
.woocommerce-thankyou-order-received { margin-bottom: 28px; padding: 22px; border: 1px solid rgba(227,28,61,.18); border-radius: var(--sg-radius); color: var(--sg-ink); background: #fff0f2; font-size: 1.05rem; font-weight: 800; text-align: center; }
.woocommerce ul.order_details { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0 0 30px; padding: 24px; border: 1px solid var(--sg-border); border-radius: var(--sg-radius); background: var(--sg-white); }
.woocommerce ul.order_details li { min-width: 0; margin: 0; padding: 0 18px; border-right-color: var(--sg-border); }
.woocommerce ul.order_details li:first-child { padding-left: 0; }
.woocommerce ul.order_details li:last-child { padding-right: 0; border: 0; }
.woocommerce ul.order_details li strong { margin-top: 6px; overflow-wrap: anywhere; }
.woocommerce-order-details,
.woocommerce-customer-details { margin-top: 28px !important; padding: 30px; }
.woocommerce-order-details h2,
.woocommerce-customer-details h2 { margin-bottom: 20px; }
.woocommerce .woocommerce-customer-details address { padding: 0; border: 0; border-radius: 0; }

@media (max-width: 900px) {
  .woocommerce-checkout .woocommerce { display: block; }
  .woocommerce-checkout #order_review { position: static; margin-bottom: 25px; }
  .woocommerce-checkout #customer_details { margin-bottom: 25px; }
  .logged-in.woocommerce-account .woocommerce { grid-template-columns: minmax(0,1fr); }
  .woocommerce-account .woocommerce-MyAccount-navigation { position: static; overflow-x: auto; }
  .woocommerce-account .sg-account-nav__heading { display: none; }
  .woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; width: max-content; }
  .woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout { margin: 0 0 0 8px; padding: 0 0 0 8px; border-top: 0; border-left: 1px solid rgba(34,21,18,.08); }
  .woocommerce-account .woocommerce-MyAccount-content { grid-column: 1; }
}

@media (max-width: 760px) {
  .commerce-main { padding-top: 26px; padding-bottom: 56px; }
  .woocommerce h1 { margin-bottom: 28px; }
  .woocommerce table.shop_table_responsive tr { display: block; padding: 15px; border-top: 1px solid var(--sg-border); }
  .woocommerce table.shop_table_responsive tr:first-child { border-top: 0; }
  .woocommerce table.shop_table_responsive tr td { padding: 9px 0; border: 0; }
  .woocommerce table.shop_table_responsive tr td::before { color: var(--sg-muted); }
  .woocommerce-cart table.cart .product-thumbnail { display: block; text-align: left !important; }
  .woocommerce-cart table.cart .product-thumbnail::before { display: none; }
  .woocommerce-cart table.cart td.actions .coupon { display: grid; grid-template-columns: 1fr auto; }
  .woocommerce-cart table.cart td.actions .coupon .input-text { width: 100%; }
  .woocommerce-cart table.cart td.actions > .button { width: 100%; margin-top: 10px; }
  .woocommerce .cart-collaterals .cart_totals { padding: 22px; }
  .woocommerce-checkout #order_review { padding: 22px; }
  .woocommerce-checkout #customer_details { padding: 24px 20px; }
  .woocommerce-checkout form.checkout_coupon { display: block; }
  .woocommerce-checkout form.checkout_coupon .form-row-last { margin-top: 10px; }
  .woocommerce-checkout form.checkout_coupon button { width: 100%; }
  .woocommerce-account .sg-auth__grid,
  .woocommerce-account .sg-auth__grid.u-columns { grid-template-columns: minmax(0,1fr); }
  .woocommerce-account .sg-auth__grid .sg-auth__card { padding: 22px; }
  .woocommerce-account .sg-auth--single .sg-auth__card { padding: 22px; }
  .sg-auth__header { min-height: 0; }
  .woocommerce-account .woocommerce-MyAccount-content { padding: 22px; }
  .sg-account-welcome { margin: 0 0 22px; padding: 0 0 22px; }
  .sg-account-overview { grid-template-columns: minmax(0,1fr); }
  .sg-account-shortcuts { grid-template-columns: minmax(0,1fr); }
  .woocommerce-account .woocommerce-MyAccount-content a.sg-account-shortcut { min-height: 0; }
  .woocommerce-account .woocommerce-Addresses { grid-template-columns: minmax(0,1fr); }
  .woocommerce ul.order_details { grid-template-columns: 1fr 1fr; gap: 20px 0; padding: 20px; }
  .woocommerce ul.order_details li:nth-child(2) { border-right: 0; }
  .woocommerce ul.order_details li:nth-child(3) { padding-left: 0; }
  .woocommerce-cart .sg-cart-empty { padding: 74px 0 92px; }
}

@media (max-width: 520px) {
  .woocommerce-account .commerce-title { text-align: left; }
  .woocommerce-account .sg-auth__grid .sg-auth__card,
  .woocommerce-account .sg-auth--single .sg-auth__card,
  .woocommerce-account:not(.logged-in) .woocommerce > .woocommerce-ResetPassword,
  .woocommerce-account:not(.logged-in) .woocommerce > form.lost_reset_password { padding: 18px; }
  .woocommerce-account .sg-auth__switch { margin: 23px -18px -18px; padding: 16px 18px; align-items: flex-start; flex-direction: column; gap: 5px; }
  .sg-auth__header { gap: 11px; }
  .sg-auth__icon { width: 40px; height: 40px; flex-basis: 40px; }
  .sg-auth__options { align-items: flex-start; flex-direction: column; }
  .woocommerce-account .woocommerce-MyAccount-navigation li a { padding: 10px 11px; white-space: nowrap; }
  .sg-account-welcome { align-items: flex-start; flex-direction: column; }
  .woocommerce-account .woocommerce-MyAccount-content a.sg-account-welcome__cta { width: 100%; }
  .woocommerce-account div.woocommerce-info,
  .woocommerce-account div.woocommerce-message { align-items: flex-start; flex-direction: column; }
  .woocommerce-account .woocommerce-info .button,
  .woocommerce-account .woocommerce-message .button { width: auto; margin: 4px 0 0 !important; }
  .woocommerce-account .woocommerce-MyAccount-content a.sg-account-order { grid-template-columns: minmax(0,1fr) auto; }
  .sg-account-order__status { justify-self: end; }
  .sg-account-order > strong { grid-column: 1; }
  .sg-account-order > span:last-child { grid-column: 2; grid-row: 2; justify-self: end; }
}

/* Exact checkout component from the approved Vercel prototype. */
.woocommerce-checkout .commerce-shell { width: min(100%, 1100px); }
.woocommerce-checkout .entry-content { font-size: 16px; }
.woocommerce-checkout .entry-content > .woocommerce { width: 100%; max-width: none; margin: 0; }
.woocommerce-checkout .woocommerce { display: block; }
.woocommerce-checkout form.checkout { display: block; }
.sg-checkout-grid { display: grid; grid-template-columns: minmax(0,1fr) 380px; gap: 26px; align-items: start; }
.checkout-title { margin: 0 0 20px; color: var(--sg-ink); font-family: var(--sg-font-display); font-size: clamp(26px,3.4vw,34px); font-weight: 400; letter-spacing: 0; }
.woocommerce-checkout #customer_details { display: block; grid-column: auto; grid-row: auto; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.woocommerce-checkout #customer_details .co-card { padding-bottom: 8px; }
.woocommerce-checkout #customer_details h3 { display: none; }
.woocommerce-checkout #order_review { position: static; display: block; grid-column: auto; grid-row: auto; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.woocommerce-checkout #payment { margin: 0; border-radius: 0; background: transparent !important; }
.woocommerce-checkout #payment ul.payment_methods { margin: 0; padding: 0; border: 0; }
.woocommerce-checkout #payment div.form-row { margin: 0; padding: 0; }

.woocommerce-checkout .co-card { margin-bottom: 18px; padding: 22px 22px 8px; border: 1px solid rgba(34,21,18,.1); border-radius: 16px; background: #fff; box-shadow: none; }
.woocommerce-checkout .co-card h2 { margin: 0 0 18px; color: var(--sg-ink); font-family: var(--sg-font-body); font-size: 12px; font-weight: 700; letter-spacing: .05em; line-height: 1.3; text-transform: uppercase; }
.woocommerce-checkout .field { margin: 0 0 16px; }
.woocommerce-checkout .field-label,
.woocommerce-checkout form .form-row label.field-label { display: block; margin: 0 0 8px; color: var(--sg-ink); font-family: var(--sg-font-body); font-size: 13.5px; font-weight: 600; }
.woocommerce-checkout .field-input,
.woocommerce-checkout input.input-text.field-input { width: 100%; min-height: 0; padding: 12px 14px; border: 2px solid rgba(34,21,18,.12); border-radius: 11px; color: var(--sg-ink); background: #fff; font-family: var(--sg-font-body); font-size: 15px; transition: border-color .15s ease,box-shadow .15s ease; }
.woocommerce-checkout .field-input::placeholder { color: rgba(74,58,55,.42); }
.woocommerce-checkout .field-input:focus { outline: none; border-color: var(--sg-red); box-shadow: 0 0 0 3px rgba(227,28,61,.12); }
.woocommerce-checkout .field-hint { display: block; margin: -10px 0 16px; color: #4a3a37; font-family: var(--sg-font-body); font-size: 12px; }
.woocommerce-checkout .required { color: var(--sg-red); }
.woocommerce-checkout .woocommerce-invalid .field-input { border-color: var(--sg-red); }

.woocommerce-checkout .sg-payment-card { padding-bottom: 8px; }
.woocommerce-checkout .pay-method { position: relative; display: block; margin: 0 0 14px; padding: 14px; border: 2px solid var(--sg-red); border-radius: 13px; }
.woocommerce-checkout .pay-method > input.input-radio { position: absolute; opacity: 0; pointer-events: none; }
.woocommerce-checkout .sg-payment-label { display: flex !important; margin: 0 !important; align-items: flex-start; gap: 13px; cursor: pointer; }
.woocommerce-checkout .ship-mark { position: relative; width: 20px; height: 20px; margin-top: 1px; flex-shrink: 0; border: 2px solid var(--sg-red); border-radius: 50%; }
.woocommerce-checkout .ship-mark::after { position: absolute; top: 50%; left: 50%; width: 10px; height: 10px; transform: translate(-50%,-50%); border-radius: 50%; background: var(--sg-red); content: ""; }
.woocommerce-checkout .pay-method-body { display: flex; flex-direction: column; gap: 3px; }
.woocommerce-checkout .pay-method-name { color: var(--sg-ink); font-size: 14.5px; font-weight: 600; }
.woocommerce-checkout .pay-method-desc { color: #4a3a37; font-size: 12.5px; font-weight: 400; line-height: 1.55; }
.woocommerce-checkout .sg-gateway-fields { margin: 12px 0 0 33px !important; padding: 0 !important; color: #4a3a37 !important; background: transparent !important; }
.woocommerce-checkout .sg-gateway-fields::before { display: none; }
.woocommerce-checkout .pay-logos { display: flex; margin-top: 16px; padding-bottom: 16px; align-items: center; gap: 12px; }
.woocommerce-checkout .pay-logos img:first-child { width: auto; height: 15px; opacity: .85; }
.woocommerce-checkout .pay-logos img:last-child { width: auto; height: 24px; border-radius: 5px; background: #000; }

.woocommerce-checkout .sg-terms-card { padding-bottom: 8px; }
.woocommerce-checkout .co-check { display: flex; margin-bottom: 16px; align-items: flex-start; gap: 11px; cursor: pointer; }
.woocommerce-checkout .co-check input { position: absolute; opacity: 0; pointer-events: none; }
.woocommerce-checkout .co-mark { display: flex; width: 21px; height: 21px; margin-top: 1px; flex-shrink: 0; align-items: center; justify-content: center; border: 2px solid rgba(34,21,18,.2); border-radius: 7px; color: #fff; background: #fff; transition: background .15s,border-color .15s; }
.woocommerce-checkout .co-mark svg { opacity: 0; transition: opacity .15s; }
.woocommerce-checkout .co-check input:checked + .co-mark { border-color: var(--sg-red); background: var(--sg-red); }
.woocommerce-checkout .co-check input:checked + .co-mark svg { opacity: 1; }
.woocommerce-checkout .co-check-text { color: var(--sg-ink); font-size: 14px; font-weight: 400; line-height: 1.5; }
.woocommerce-checkout .co-check-text a { color: var(--sg-red); text-decoration: underline; }
.woocommerce-checkout .opt { color: #4a3a37; font-size: 11.5px; font-weight: 500; letter-spacing: 0; text-transform: none; }
.woocommerce-checkout #coTermsError { display: none; margin: -8px 0 14px; color: var(--sg-red); font-size: 12.5px; }
.woocommerce-checkout .terms-missing #coTermsError { display: block; }
.woocommerce-checkout .terms-missing .co-mark { border-color: var(--sg-red); }

.woocommerce-checkout .checkout-aside { position: sticky !important; top: 24px; }
.woocommerce-checkout .summary-card { margin: 0; padding-bottom: 22px; }
.woocommerce-checkout .co-item { display: flex; padding-bottom: 16px; align-items: center; gap: 12px; border-bottom: 1px solid rgba(34,21,18,.08); }
.woocommerce-checkout .co-item + .co-item { padding-top: 16px; }
.woocommerce-checkout .co-item-thumb { width: 54px; height: 54px; flex-shrink: 0; border-radius: 10px; background-size: cover; background-position: center; }
.woocommerce-checkout .co-item-body { display: flex; min-width: 0; flex: 1; flex-direction: column; gap: 2px; }
.woocommerce-checkout .co-item-name { color: var(--sg-ink); font-size: 13.5px; font-weight: 600; line-height: 1.35; }
.woocommerce-checkout .co-item-meta { color: #4a3a37; font-size: 12.5px; }
.woocommerce-checkout .co-item-price { color: var(--sg-ink); font-size: 14px; font-weight: 700; white-space: nowrap; }
.woocommerce-checkout .co-details { margin-top: 14px; padding-top: 12px; border-top: 1px solid rgba(34,21,18,.08); }
.woocommerce-checkout .co-details summary { display: flex; padding: 2px 0; align-items: center; justify-content: space-between; gap: 10px; color: #4a3a37; font-size: 13px; font-weight: 600; list-style: none; cursor: pointer; }
.woocommerce-checkout .co-details summary::-webkit-details-marker { display: none; }
.woocommerce-checkout .co-details summary:hover,
.woocommerce-checkout .co-details[open] summary { color: var(--sg-red); }
.woocommerce-checkout .co-details summary svg { flex-shrink: 0; transition: transform .2s; }
.woocommerce-checkout .co-details[open] summary svg { transform: rotate(180deg); }
.woocommerce-checkout .co-details-body { margin-top: 12px; color: #4a3a37; font-size: 12.5px; }
.woocommerce-checkout .co-details-body dl { margin: 0; }
.woocommerce-checkout .co-details-body dt { float: left; clear: left; margin-right: 5px; font-weight: 600; }
.woocommerce-checkout .co-details-body dd { margin: 0 0 4px; }
.woocommerce-checkout .co-lines { display: flex; margin-top: 14px; padding-top: 14px; flex-direction: column; gap: 9px; border-top: 1px solid rgba(34,21,18,.08); }
.woocommerce-checkout .co-line { display: flex; justify-content: space-between; gap: 12px; color: #4a3a37; font-size: 13.5px; }
.woocommerce-checkout .co-line b { color: var(--sg-ink); font-weight: 600; }
.woocommerce-checkout .co-line em { color: var(--sg-red); font-style: normal; font-weight: 600; }
.woocommerce-checkout .co-total { display: flex; margin-top: 14px; padding-top: 14px; align-items: baseline; justify-content: space-between; gap: 12px; border-top: 1px solid rgba(34,21,18,.12); color: var(--sg-ink); font-size: 14px; font-weight: 600; }
.woocommerce-checkout .co-total b { font-family: var(--sg-font-display); font-size: 27px; font-weight: 400; }
.woocommerce-checkout .co-total .amount { font: inherit; color: inherit; }

.woocommerce-checkout .co-pay-card { padding-bottom: 22px; }
.woocommerce-checkout .co-pay-card .co-total { margin: 0 0 16px; padding: 0; border: 0; }
.woocommerce-checkout .co-coupon { display: flex; margin: 16px 0 0; gap: 8px; }
.woocommerce-checkout .co-coupon .field-input { flex: 1; padding: 10px 12px; font-size: 14px; }
.woocommerce-checkout .co-coupon-btn { min-height: 0; padding: 0 16px; flex-shrink: 0; border: 2px solid rgba(34,21,18,.14); border-radius: 11px; color: var(--sg-ink); background: #fff; font-family: var(--sg-font-body); font-size: 13.5px; font-weight: 600; cursor: pointer; transition: border-color .15s,color .15s; }
.woocommerce-checkout .co-coupon-btn:hover { transform: none; border-color: var(--sg-red); color: var(--sg-red); background: #fff; box-shadow: none; }
.woocommerce-checkout .co-coupon-msg { display: block; min-height: 16px; margin-top: 7px; font-size: 12.5px; }
.woocommerce-checkout .co-coupon-msg.is-ok { color: #0d6b36; }
.woocommerce-checkout .co-coupon-msg.is-bad { color: var(--sg-red); }
.woocommerce-checkout #payment #place_order.co-submit { display: block; width: 100%; min-height: 0; margin: 16px 0 0; padding: 16px 38px; float: none; border: 0; border-radius: 999px; color: #fff; background: var(--sg-red); box-shadow: 0 10px 24px rgba(227,28,61,.45); font-family: var(--sg-font-display); font-size: 18px; font-weight: 400; text-align: center; cursor: pointer; transition: transform .15s,box-shadow .15s,background .15s; }
.woocommerce-checkout #payment #place_order.co-submit:hover { transform: translateY(-1px); background: var(--sg-red-dark); box-shadow: 0 14px 30px rgba(227,28,61,.55); }
.woocommerce-checkout #payment #place_order.co-submit:disabled { transform: none; color: rgba(34,21,18,.42); background: rgba(34,21,18,.14); box-shadow: none; cursor: not-allowed; }

.woocommerce-checkout .ship-upsell { margin-top: 16px; padding: 14px; border: 1.5px solid rgba(13,107,54,.28); border-radius: 13px; background: linear-gradient(135deg,rgba(13,107,54,.09),rgba(255,193,90,.12)); }
.woocommerce-checkout .ship-upsell[hidden],
.woocommerce-checkout .ship-express-on[hidden] { display: none; }
.woocommerce-checkout .upsell-top { display: flex; align-items: flex-start; gap: 12px; }
.woocommerce-checkout .upsell-bolt { display: flex; width: 34px; height: 34px; flex-shrink: 0; align-items: center; justify-content: center; border-radius: 50%; color: #ffd9a0; background: #0d6b36; }
.woocommerce-checkout .upsell-body { display: flex; align-items: flex-start; flex-direction: column; gap: 4px; }
.woocommerce-checkout .upsell-title { color: var(--sg-ink); font-family: var(--sg-font-display); font-size: 16px; }
.woocommerce-checkout .upsell-text { color: #4a3a37; font-size: 12.5px; line-height: 1.5; }
.woocommerce-checkout .upsell-text b { color: #0d6b36; }
.woocommerce-checkout .upsell-btn { display: flex; width: 100%; min-height: 0; margin-top: 12px; padding: 10px 14px; align-items: center; justify-content: center; gap: 8px; border: 0; border-radius: 999px; color: #fff; background: #0d6b36; font-family: var(--sg-font-body); font-size: 13.5px; font-weight: 600; white-space: nowrap; cursor: pointer; transition: background .15s,transform .15s; }
.woocommerce-checkout .upsell-btn span { padding: 2px 9px; border-radius: 999px; background: rgba(255,255,255,.2); font-weight: 700; white-space: nowrap; }
.woocommerce-checkout .upsell-btn:hover { transform: translateY(-1px); background: #0a5a2d; box-shadow: none; }
.woocommerce-checkout .upsell-btn.is-loading { opacity: .65; }
.woocommerce-checkout .ship-express-on { display: flex; margin-top: 16px; padding: 11px 14px; align-items: center; gap: 9px; border: 1px solid rgba(13,107,54,.22); border-radius: 12px; color: var(--sg-ink); background: rgba(13,107,54,.09); font-size: 13px; }
.woocommerce-checkout .upsell-check { display: flex; width: 20px; height: 20px; flex-shrink: 0; align-items: center; justify-content: center; border-radius: 50%; color: #fff; background: #0d6b36; }
.woocommerce-checkout .upsell-undo { min-height: 0; margin-left: auto; padding: 0; border: 0; border-radius: 0; color: #4a3a37; background: none; font-family: var(--sg-font-body); font-size: 12.5px; font-weight: 400; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.woocommerce-checkout .upsell-undo:hover { transform: none; color: var(--sg-red); background: none; box-shadow: none; }

@media (max-width: 900px) {
  body.woocommerce-checkout .sg-checkout-grid { grid-template-columns: minmax(0,1fr) !important; }
  body.woocommerce-checkout .checkout-aside { position: static !important; order: -1 !important; }
}
@media (max-width: 480px) {
  .woocommerce-checkout .co-card { padding-right: 18px; padding-left: 18px; }
  .woocommerce-checkout .co-coupon { align-items: stretch; }
  .woocommerce-checkout .co-coupon-btn { padding: 0 12px; }
}

/* Cart uses the same component language and proportions as checkout. */
.woocommerce-cart .commerce-shell { width: min(100%,1100px); }
.woocommerce-cart .entry-content > .woocommerce { width: 100%; max-width: none; margin: 0; }
.woocommerce-cart .sg-cart-grid { display: grid; position: relative; grid-template-columns: minmax(0,1fr) 380px; gap: 26px; align-items: start; }
.woocommerce-cart .woocommerce-cart-form { overflow: visible; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.woocommerce-cart .co-card { margin: 0; padding: 22px; border: 1px solid rgba(34,21,18,.1); border-radius: 16px; background: #fff; box-shadow: none; }
.woocommerce-cart .co-card h2 { margin: 0 0 18px; color: var(--sg-ink); font-family: var(--sg-font-body); font-size: 12px; font-weight: 700; letter-spacing: .05em; line-height: 1.3; text-transform: uppercase; }
.woocommerce-cart .sg-cart-items { border-top: 1px solid rgba(34,21,18,.08); }
.woocommerce-cart .sg-cart-item { display: flex; padding: 18px 0; align-items: flex-start; gap: 14px; border-bottom: 1px solid rgba(34,21,18,.08); }
.woocommerce-cart .co-item-thumb { width: 72px; height: 72px; flex: 0 0 72px; border-radius: 12px; background-position: center; background-size: cover; }
.woocommerce-cart .sg-cart-item-body { min-width: 0; flex: 1; }
.woocommerce-cart .sg-cart-item-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.woocommerce-cart .sg-cart-product-main { min-width: 0; }
.woocommerce-cart .co-item-name { display: block; color: var(--sg-ink); font-size: 14.5px; font-weight: 600; line-height: 1.35; }
.woocommerce-cart a.co-item-name:hover { color: var(--sg-red); }
.woocommerce-cart .co-item-meta { display: block; margin-top: 3px; color: #4a3a37; font-size: 12.5px; line-height: 1.4; }
.woocommerce-cart .co-item-price { color: var(--sg-ink); font-size: 14px; font-weight: 700; white-space: nowrap; }
.woocommerce-cart .co-details { margin-top: 12px; }
.woocommerce-cart .co-details summary { display: flex; max-width: 280px; padding: 2px 0; align-items: center; justify-content: space-between; gap: 10px; color: #4a3a37; font-size: 12.5px; font-weight: 600; list-style: none; cursor: pointer; }
.woocommerce-cart .co-details summary::-webkit-details-marker { display: none; }
.woocommerce-cart .co-details summary:hover,
.woocommerce-cart .co-details[open] summary { color: var(--sg-red); }
.woocommerce-cart .co-details summary svg { transition: transform .2s; }
.woocommerce-cart .co-details[open] summary svg { transform: rotate(180deg); }
.woocommerce-cart .co-details-body { margin-top: 10px; color: #4a3a37; font-size: 12.5px; }
.woocommerce-cart .co-details-body dl { margin: 0; }
.woocommerce-cart .co-details-body dt { float: left; clear: left; margin-right: 5px; font-weight: 600; }
.woocommerce-cart .co-details-body dd { margin: 0 0 4px; }
.woocommerce-cart .sg-cart-item-actions { display: flex; min-height: 34px; margin-top: 12px; align-items: center; gap: 16px; }
.woocommerce-cart .sg-cart-quantity { display: flex; align-items: center; gap: 8px; color: #4a3a37; font-size: 12.5px; }
.woocommerce-cart .sg-cart-quantity .quantity .qty { width: 58px; min-height: 34px; padding: 5px 8px; border: 2px solid rgba(34,21,18,.12); border-radius: 9px; color: var(--sg-ink); background: #fff; font-size: 13px; }
.woocommerce-cart a.sg-cart-remove.remove { display: inline-flex; width: auto; height: auto; padding: 4px 0; align-items: center; gap: 5px; border: 0; border-radius: 0; color: #4a3a37 !important; background: transparent !important; font-size: 12.5px; font-weight: 500; line-height: 1; }
.woocommerce-cart a.sg-cart-remove.remove:hover { color: var(--sg-red) !important; }
.woocommerce-cart .sg-cart-tools { display: flex; padding-top: 18px; align-items: flex-start; justify-content: space-between; gap: 14px; }
.woocommerce-cart .co-coupon { display: flex; min-width: 0; flex: 1; flex-wrap: wrap; gap: 8px; }
.woocommerce-cart .co-coupon .field-input { width: 100%; min-width: 0; min-height: 42px; padding: 10px 12px; border: 2px solid rgba(34,21,18,.12); border-radius: 11px; color: var(--sg-ink); background: #fff; font-family: var(--sg-font-body); font-size: 14px; }
.woocommerce-cart .co-coupon .field-input { flex: 1 1 150px; }
.woocommerce-cart .co-coupon .co-coupon-btn { flex: 0 0 auto; }
.woocommerce-cart .co-coupon .coupon-error-notice { width: 100%; margin: 0; flex: 0 0 100%; color: var(--sg-red); font-size: 12px; line-height: 1.4; }
.woocommerce-cart .co-coupon .field-input:focus { outline: none; border-color: var(--sg-red); box-shadow: 0 0 0 3px rgba(227,28,61,.12); }
.woocommerce-cart .co-coupon-btn,
.woocommerce-cart .sg-cart-update { min-height: 42px; padding: 0 15px !important; border: 2px solid rgba(34,21,18,.14) !important; border-radius: 11px !important; color: var(--sg-ink) !important; background: #fff !important; font-family: var(--sg-font-body) !important; font-size: 13px !important; font-weight: 600 !important; line-height: 38px !important; box-shadow: none !important; }
.woocommerce-cart .co-coupon-btn:hover,
.woocommerce-cart .sg-cart-update:hover { transform: none !important; border-color: var(--sg-red) !important; color: var(--sg-red) !important; }
.woocommerce-cart .sg-cart-update:disabled { opacity: .45; }
.woocommerce-cart .sg-cart-aside { position: sticky; top: 24px; }
.woocommerce-cart .cart-collaterals { display: block; margin: 0; }
.woocommerce-cart .cart-collaterals .cart_totals { width: 100%; float: none; }
.woocommerce-cart .summary-card .co-lines { display: flex; margin-top: 0; padding-top: 14px; flex-direction: column; gap: 10px; border-top: 1px solid rgba(34,21,18,.08); }
.woocommerce-cart .summary-card .co-line { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; color: #4a3a37; font-size: 13.5px; }
.woocommerce-cart .summary-card .co-line b { color: var(--sg-ink); font-weight: 600; text-align: right; }
.woocommerce-cart .summary-card .co-line em { color: var(--sg-red); font-style: normal; font-weight: 600; }
.woocommerce-cart .sg-shipping-card { margin: 3px 0; padding: 13px; border: 1px solid rgba(34,21,18,.09); border-radius: 13px; background: #fbf8f6; }
.woocommerce-cart .sg-shipping-head { display: flex; align-items: center; gap: 9px; }
.woocommerce-cart .sg-shipping-icon { display: flex; width: 31px; height: 31px; flex: 0 0 31px; align-items: center; justify-content: center; border-radius: 9px; color: #0d6b36; background: rgba(13,107,54,.09); }
.woocommerce-cart .sg-shipping-head strong,
.woocommerce-cart .sg-shipping-head small { display: block; }
.woocommerce-cart .sg-shipping-head strong { color: var(--sg-ink); font-size: 12.5px; font-weight: 700; line-height: 1.25; }
.woocommerce-cart .sg-shipping-head small { margin-top: 2px; color: #776a66; font-size: 10.5px; line-height: 1.3; }
.woocommerce-cart .sg-shipping-methods { display: grid; margin: 11px 0 0 !important; padding: 0 !important; gap: 7px; list-style: none !important; }
.woocommerce-cart .sg-shipping-methods li { margin: 0 !important; padding: 0 !important; }
.woocommerce-cart ul#shipping_method.sg-shipping-methods li label.sg-shipping-option { display: flex; min-height: 43px; margin: 0; padding: 9px 10px; align-items: center; gap: 9px; border: 1px solid rgba(34,21,18,.11); border-radius: 10px; color: #4a3a37; background: #fff; cursor: pointer; font-size: 12.5px; line-height: 1.35; transition: border-color .15s,box-shadow .15s,background .15s; }
.woocommerce-cart .sg-shipping-option:hover { border-color: rgba(227,28,61,.3); }
.woocommerce-cart .sg-shipping-option input { position: absolute; opacity: 0; pointer-events: none; }
.woocommerce-cart .sg-shipping-radio { display: flex; width: 18px; height: 18px; flex: 0 0 18px; align-items: center; justify-content: center; border: 2px solid rgba(34,21,18,.2); border-radius: 50%; background: #fff; }
.woocommerce-cart .sg-shipping-radio::after { width: 8px; height: 8px; border-radius: 50%; background: #fff; content: ''; transform: scale(0); transition: transform .15s; }
.woocommerce-cart .sg-shipping-option input:checked + .sg-shipping-radio { border-color: var(--sg-red); background: var(--sg-red); }
.woocommerce-cart .sg-shipping-option input:checked + .sg-shipping-radio::after { transform: scale(1); }
.woocommerce-cart .sg-shipping-option:has(input:checked) { border-color: rgba(227,28,61,.3); background: rgba(227,28,61,.035); box-shadow: 0 0 0 2px rgba(227,28,61,.06); }
.woocommerce-cart .sg-shipping-label { display: flex; min-width: 0; flex: 1; align-items: baseline; justify-content: space-between; gap: 8px; }
.woocommerce-cart .sg-shipping-label .amount { color: var(--sg-ink); font-weight: 750; white-space: nowrap; }
.woocommerce-cart .sg-shipping-copy { display: flex; min-width: 0; flex: 1; flex-direction: column; gap: 4px; }
.woocommerce-cart .sg-shipping-badge { display: inline-flex; width: fit-content; padding: 3px 7px; align-items: center; gap: 4px; border-radius: 999px; color: #0d6b36; background: rgba(13,107,54,.1); font-size: 9px; font-weight: 800; letter-spacing: .045em; line-height: 1; text-transform: uppercase; }
.woocommerce-cart .sg-shipping-methods li.is-express .sg-shipping-option { border-color: rgba(13,107,54,.22); background: rgba(13,107,54,.035); }
.woocommerce-cart .sg-shipping-methods li.is-express .sg-shipping-option:hover { border-color: rgba(13,107,54,.46); background: rgba(13,107,54,.065); }
.woocommerce-cart .sg-shipping-methods li.is-express .sg-shipping-option input:checked + .sg-shipping-radio { border-color: #0d6b36; background: #0d6b36; }
.woocommerce-cart .sg-shipping-methods li.is-express .sg-shipping-option:has(input:checked) { border-color: rgba(13,107,54,.45); background: rgba(13,107,54,.08); box-shadow: 0 0 0 2px rgba(13,107,54,.07); }
.woocommerce-cart .sg-shipping-destination,
.woocommerce-cart .sg-shipping-message,
.woocommerce-cart .sg-shipping-contents { margin: 9px 1px 0; color: #776a66; font-size: 10.5px; line-height: 1.45; }
.woocommerce-cart .sg-shipping-message { padding: 9px 10px; border-radius: 9px; background: rgba(34,21,18,.04); }
.woocommerce-cart .sg-shipping-message.is-error { color: var(--sg-red); background: rgba(227,28,61,.06); }
.woocommerce-cart .sg-shipping-calculator { margin-top: 10px; }
.woocommerce-cart .sg-shipping-calculator .woocommerce-shipping-calculator { margin: 0; }
.woocommerce-cart .sg-shipping-calculator .shipping-calculator-button { display: flex; width: 100%; min-height: 40px; margin: 0; padding: 9px 11px; align-items: center; justify-content: space-between; gap: 10px; border: 1px solid rgba(34,21,18,.11); border-radius: 10px; color: var(--sg-ink); background: #fff; font-size: 11.5px; font-weight: 700; line-height: 1.3; text-decoration: none; }
.woocommerce-cart .sg-shipping-calculator .shipping-calculator-button:hover { border-color: rgba(227,28,61,.3); color: var(--sg-red); }
.woocommerce-cart .sg-shipping-calculator .shipping-calculator-button::after { display: block; width: 7px; height: 7px; margin: -4px 2px 0 0; border: 0; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; content: ''; transform: rotate(45deg); transition: transform .16s; }
.woocommerce-cart .sg-shipping-calculator .shipping-calculator-button[aria-expanded="true"]::after { margin-top: 3px; transform: rotate(225deg); }
.woocommerce-cart .sg-shipping-calculator .shipping-calculator-form { margin: 8px 0 0; padding: 12px; border: 1px solid rgba(34,21,18,.08); border-radius: 10px; background: #fff; box-shadow: 0 8px 22px rgba(34,21,18,.06); }
.woocommerce-cart .sg-shipping-calculator .form-row { margin: 0 0 8px; padding: 0; }
.woocommerce-cart .sg-shipping-calculator input,
.woocommerce-cart .sg-shipping-calculator select { width: 100%; min-height: 39px; padding: 7px 10px; border: 1px solid rgba(34,21,18,.14); border-radius: 9px; color: var(--sg-ink); background: #fff; font-family: var(--sg-font-body); font-size: 12px; }
.woocommerce-cart .sg-shipping-calculator button { min-height: 38px; padding: 0 13px !important; border: 0 !important; border-radius: 999px !important; color: #fff !important; background: var(--sg-red) !important; font-size: 12px !important; line-height: 38px !important; }
.woocommerce-cart .sg-cart-aside::before { position: absolute; z-index: 8; inset: 0; border-radius: var(--sg-radius); background: rgba(255,255,255,.72); content: ''; opacity: 0; pointer-events: none; transition: opacity .14s ease; }
.woocommerce-cart .sg-cart-aside::after { position: absolute; z-index: 9; top: 50%; left: 50%; width: 31px; height: 31px; margin: -16px 0 0 -16px; border: 3px solid rgba(227,28,61,.18); border-top-color: var(--sg-red); border-radius: 50%; content: ''; opacity: 0; pointer-events: none; transition: opacity .14s ease; animation: sg-commerce-spin .72s linear infinite; }
.woocommerce-cart.sg-cart-is-refreshing .sg-cart-aside::before,
.woocommerce-cart.sg-cart-is-refreshing .sg-cart-aside::after { opacity: 1; pointer-events: auto; }
.woocommerce-checkout .blockUI.blockOverlay::before { width: 31px !important; height: 31px !important; margin: -16px 0 0 -16px !important; border: 3px solid rgba(227,28,61,.18) !important; border-top-color: var(--sg-red) !important; border-radius: 50% !important; background: none !important; color: transparent !important; font-size: 0 !important; animation: sg-commerce-spin .72s linear infinite !important; }
@keyframes sg-commerce-spin { to { transform: rotate(360deg); } }
.woocommerce-cart .summary-card .woocommerce-remove-coupon { display: block; margin-top: 2px; color: var(--sg-red); font-size: 10px; font-weight: 600; }
.woocommerce-cart .summary-card .co-total { display: flex; margin-top: 14px; padding-top: 14px; align-items: baseline; justify-content: space-between; gap: 12px; border-top: 1px solid rgba(34,21,18,.12); color: var(--sg-ink); font-size: 14px; font-weight: 600; }
.woocommerce-cart .summary-card .co-total b { font-family: var(--sg-font-display); font-size: 27px; font-weight: 400; }
.woocommerce-cart .summary-card .co-total .amount { color: inherit; font: inherit; }
.woocommerce-cart .wc-proceed-to-checkout { margin: 0; padding: 18px 0 0; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button { display: block; width: 100%; min-height: 0; margin: 0; padding: 16px 28px; border: 0; border-radius: 999px; color: #fff; background: var(--sg-red); box-shadow: 0 10px 24px rgba(227,28,61,.45); font-family: var(--sg-font-display); font-size: 18px; font-weight: 400; line-height: 1.25; text-align: center; transition: transform .15s,box-shadow .15s,background .15s; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover { transform: translateY(-1px); color: #fff; background: var(--sg-red-dark); box-shadow: 0 14px 30px rgba(227,28,61,.55); }
.woocommerce-cart .sg-cart-security { display: flex; margin: 13px 0 0; align-items: center; justify-content: center; gap: 6px; color: #4a3a37; font-size: 11.5px; }
.woocommerce-cart .sg-cart-security svg { color: #0d6b36; }

@media (max-width: 900px) {
  .woocommerce-cart .sg-cart-grid { grid-template-columns: minmax(0,1fr); }
  .woocommerce-cart .sg-cart-aside { position: static; order: -1; }
}
@media (max-width: 600px) {
  .woocommerce-cart .co-card { padding: 18px; }
  .woocommerce-cart .sg-cart-item { gap: 11px; }
  .woocommerce-cart .co-item-thumb { width: 58px; height: 58px; flex-basis: 58px; }
  .woocommerce-cart .sg-cart-item-heading { display: block; }
  .woocommerce-cart .co-item-price { display: block; margin-top: 6px; }
  .woocommerce-cart .sg-cart-tools { display: block; }
  .woocommerce-cart .sg-cart-update { width: 100%; margin-top: 10px; }
}

