.shop-page .title-page-category {
  margin-bottom: var(--space-10);
}
.shop-page select {
  appearance: none;
  padding-right: var(--space-8);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right var(--space-2) center / 1em no-repeat;
}
.shop-page .woocommerce-cart-form .shop_table.cart tr:has(> td.actions) {
  display: none;
}
textarea.input-text {
  height: auto;
  min-height: calc(var(--btn-h) * 2);
  padding-block: var(--space-2);
}
.form-row.woocommerce-invalid :is(.input-text, select) {
  border-bottom-color: var(--color-text);
  box-shadow: inset 0 calc(-1 * var(--hairline)) 0 var(--color-text);
}
.shop-page .woocommerce > h2,
#customer_login h2 {
  font-family: var(--font-slab);
  text-align: center;
  text-transform: uppercase;
}
.password-input {
  position: relative;
  display: block;
}
.show-password-input {
  position: absolute;
  top: 50%;
  right: var(--space-5);
  padding: 0;
  border: 0;
  background: none;
  color: var(--color-text-secondary);
  font: inherit;
  font-size: var(--fs-sm);
  letter-spacing: var(--tracking);
  text-transform: uppercase;
  cursor: pointer;
  transform: translateY(-50%);
}
.show-password-input::after {
  content: "Mostra";
}
.show-password-input.display-password::after {
  content: "Nascondi";
}
.shop-page .shop_table {
  width: 100%;
  border-collapse: collapse;
}
.shop-page .shop_table :is(th, td) {
  padding: var(--space-4) var(--space-3);
  border-bottom: var(--rule);
  text-align: left;
  vertical-align: middle;
}
.shop-page .shop_table thead th,
.shop-page .shop_table tfoot th,
.cart_totals th {
  font-size: var(--fs-sm);
  letter-spacing: var(--tracking);
  text-transform: uppercase;
}
.shop-page .shop_table.cart :is(.product-price, .product-subtotal) {
  text-align: right;
}
.shop-page .shop_table.cart :is(th, td):last-child {
  padding-right: 0;
}
.shop-page .shop_table.cart .product-quantity {
  text-align: center;
}
.shop-page .shop_table .product-thumbnail img {
  display: block;
  width: 6rem;
  height: auto;
}
.shop-page .shop_table .product-name a {
  font-weight: 700;
}
.shop-page .shop_table .product-remove a,
.woocommerce-remove-coupon {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: var(--space-8);
  height: var(--space-8);
  border-radius: var(--pill);
  font-size: 0;
  vertical-align: middle;
  transition: background-color var(--dur-fast) var(--ease);
  &::before {
    content: "";
    width: var(--space-3);
    height: var(--space-3);
    background-color: var(--color-text);
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center / contain no-repeat;
    transition: background-color var(--dur-fast) var(--ease);
  }
  &:hover,
  &:focus-visible {
    background-color: var(--color-error);
  }
  &:hover::before,
  &:focus-visible::before {
    background-color: var(--color-text-inverse);
  }
}
.shop-page .shop_table .variation {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--space-1) var(--space-2);
  margin: var(--space-2) 0 0;
  font-size: var(--fs-sm);
}
.shop-page .shop_table .variation :is(dt, dd, p) {
  margin: 0;
}
.shop-page .actions {
  padding-block: var(--space-6);
}
.shop-page .actions,
.shop-page .coupon {
  text-align: right;
}
.shop-page .coupon {
  display: inline-flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  float: left;
}
.woocommerce-cart .woocommerce:has(> .woocommerce-cart-form) {
  display: grid;
  width: min(var(--post-width), 100%);
  margin-inline: auto;
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas:
    "back"
    "notices"
    "form"
    "totals";
}
.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper {
  grid-area: notices;
}
.woocommerce-cart .woocommerce > .woocommerce-cart-form {
  grid-area: form;
}
.woocommerce-cart .woocommerce > .cart-collaterals {
  grid-area: totals;
  margin-top: var(--space-8);
}
.cart_totals {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "hint table"
    ". button";
  align-items: baseline;
  gap: var(--space-6) var(--card-gap);
}
.cart_totals > h2 {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.cart_totals .shop_table {
  grid-area: table;
  width: auto;
}
.cart_totals .shop_table :is(th, td) {
  vertical-align: baseline;
}
.cart_totals .shop_table th {
  text-align: right;
}
.cart_totals .shop_table tr > th + td {
  padding-left: var(--space-10);
}
.wc-proceed-to-checkout {
  display: contents;
}
.wc-proceed-to-checkout .checkout-button {
  grid-area: button;
  justify-self: end;
}
.cart_totals .woocommerce-shipping-destination {
  display: none;
}
.cart-coupon-hint {
  grid-area: hint;
  margin: 0;
  color: var(--color-text-secondary);
  font-size: var(--fs-sm);
  line-height: var(--lh-body);
}
.woocommerce-shipping-methods {
  margin: 0;
  padding: 0;
  list-style: none;
}
.woocommerce-shipping-destination,
.woocommerce-shipping-calculator {
  font-size: var(--fs-sm);
}
.shipping-calculator-form {
  display: grid;
  gap: var(--space-3);
  margin-top: var(--space-3);
}
.form-row {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  margin: 0;
}
.form-row :is(input.input-text, select),
.form-row .select2-container .select2-selection--single {
  height: var(--space-8);
}
.form-row:focus-within > label,
.form-row:has(.select2-container--open) > label {
  color: var(--color-accent);
}
.form-row.woocommerce-invalid > label {
  color: var(--color-error);
}
:is(#billing_address_2_field, #shipping_address_2_field) {
  margin-top: calc(var(--space-4) - var(--space-10));
}
.form-row label {
  font-size: var(--fs-sm);
  font-weight: 700;
  letter-spacing: var(--tracking);
  text-transform: uppercase;
  transition: color var(--dur-fast) var(--ease);
}
.form-row .required {
  color: var(--color-accent);
  text-decoration: none;
}
.form-row .optional {
  color: var(--color-text-muted);
  font-weight: 400;
}
.form-row .input-text,
.form-row select {
  width: 100%;
}
.checkout-inline-error-message,
.coupon-error-notice {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: var(--space-2) 0 0;
  font-size: var(--fs-sm);
  font-weight: 700;
}
.checkout-inline-error-message::before,
.coupon-error-notice::before {
  content: "";
  flex: none;
  width: var(--space-5);
  height: var(--space-5);
  border-radius: 50%;
  background: var(--color-error) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 6.5v6.5M12 17.5v.01'/%3E%3C/svg%3E") center / 75% no-repeat;
}
.form-row :is(.woocommerce-form__label-for-checkbox, .checkbox) {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}
.form-row input[type="checkbox"],
.form-row input[type="radio"],
.wc_payment_method input[type="radio"],
.woocommerce-shipping-methods input[type="radio"] {
  flex: none;
  width: 1.25rem;
  height: 1.25rem;
  margin: 0.125rem 0 0;
  accent-color: var(--color-text);
}
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
.woocommerce-address-fields__field-wrapper,
.woocommerce-EditAccountForm,
.woocommerce-form-login,
.woocommerce-form-register,
.woocommerce-ResetPassword {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-10) var(--space-8);
}
:is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper, .woocommerce-address-fields__field-wrapper, .woocommerce-EditAccountForm, .woocommerce-form-login, .woocommerce-form-register, .woocommerce-ResetPassword) > :not(.form-row-first, .form-row-last) {
  grid-column: 1 / -1;
}
.woocommerce-billing-fields > h3,
.woocommerce-shipping-fields > h3,
.woocommerce-additional-fields > h3,
.cart-heading,
#order_review_heading,
.woocommerce-column__title,
.woocommerce-order-details__title,
.woocommerce-MyAccount-content h2 {
  font-family: var(--font-slab);
  text-transform: uppercase;
}
.woocommerce-billing-fields > h3,
.cart-heading {
  margin-top: 0;
}
#ship-to-different-address label {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-sans);
  font-size: var(--fs-md);
  text-transform: none;
}
.woocommerce-additional-fields {
  margin-top: var(--space-8);
}
.woocommerce-checkout .woocommerce:has(> form.checkout) {
  display: grid;
  width: min(var(--post-width), 100%);
  margin-inline: auto;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  grid-template-rows: auto auto auto auto auto auto 1fr;
  grid-template-areas:
    "back back"
    "notices notices"
    "customer heading"
    "customer coupon"
    "customer coupon-notice"
    "customer coupon-form"
    "customer review";
  align-items: start;
  column-gap: var(--card-gap);
}
.woocommerce-checkout .woocommerce:has(> .woocommerce-form-coupon-toggle)::before {
  content: "";
  grid-column: coupon;
  grid-row: coupon-start / coupon-form-end;
  align-self: stretch;
  background-color: var(--color-gallery-bg);
}
.woocommerce-checkout .woocommerce > form.checkout {
  display: contents;
}
.woocommerce-checkout .woocommerce > .woocommerce-notices-wrapper {
  grid-area: notices;
}
.woocommerce > .back-link {
  grid-area: back;
  justify-self: start;
  margin-bottom: var(--space-8);
}
.back-link .card-cta {
  --back-indent: calc(0.8em * 12.84 / 14.77 + var(--icon-gap));
  display: block;
  padding-left: var(--back-indent);
  text-indent: calc(-1 * var(--back-indent));
  white-space: normal;
}
.back-link .card-cta .svg {
  margin: 0 var(--icon-gap) 0 0;
  vertical-align: -0.05em;
}
.back-link .card-cta__text {
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
.back-link:is(:hover, :focus-visible) .card-cta .svg {
  transform: translateX(calc(-1 * var(--space-1)));
}
.woocommerce-checkout .woocommerce > .woocommerce-form-coupon-toggle {
  grid-area: coupon;
}
.woocommerce-checkout .woocommerce > :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
  grid-area: coupon-notice;
  margin: 0;
  padding: 0 var(--space-4) var(--space-4);
  background: none;
}
.woocommerce-checkout .woocommerce > .checkout_coupon {
  grid-area: coupon-form;
}
form.checkout > .woocommerce-NoticeGroup {
  grid-area: notices;
  padding-top: var(--space-8);
}
#customer_details {
  grid-area: customer;
}
#order_review_heading {
  grid-area: heading;
  margin-top: 0;
}
#order_review {
  grid-area: review;
}
.woocommerce-checkout .woocommerce:has(> .woocommerce-form-coupon-toggle) #order_review {
  margin-top: var(--space-8);
}
.col2-set .col-2 {
  margin-top: var(--space-8);
}
.woocommerce-remove-coupon {
  margin-block: calc(var(--space-2) * -1);
  margin-right: calc((var(--space-3) - var(--space-8)) / 2);
}
.woocommerce-form-coupon-toggle .woocommerce-info {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  margin: 0;
  padding: var(--space-4);
  background: none;
}
.woocommerce-form-coupon-toggle .woocommerce-info::before {
  display: none;
}
.woocommerce-form-coupon-toggle .showcoupon {
  grid-column: auto;
}
.woocommerce-form-coupon-toggle .showcoupon::after {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M6 13l6 6 6-6'/%3E%3C/svg%3E");
}
.woocommerce-form-coupon-toggle .showcoupon:is(:hover, :focus-visible)::after {
  transform: translateY(calc(-50% + var(--space-1) / 2));
}
.showcoupon__close {
  display: none;
}
.woocommerce-form-coupon-toggle .showcoupon[aria-expanded="true"] {
  width: var(--space-8);
  height: var(--space-8);
  margin-block: calc(var(--space-1) * -1);
  margin-right: calc((var(--space-3) - var(--space-8)) / 2);
  padding: 0;
  border-radius: var(--pill);
  background: none;
  transition: background-color var(--dur-fast) var(--ease);
}
.woocommerce-form-coupon-toggle .showcoupon[aria-expanded="true"]:is(:hover, :focus-visible) {
  background-color: var(--color-accent);
}
.showcoupon[aria-expanded="true"] .showcoupon__open {
  display: none;
}
.showcoupon[aria-expanded="true"] .showcoupon__close {
  display: block;
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.woocommerce-form-coupon-toggle .showcoupon[aria-expanded="true"]::after,
.woocommerce-form-coupon-toggle .showcoupon[aria-expanded="true"]:is(:hover, :focus-visible)::after {
  top: 50%;
  right: calc((var(--space-8) - var(--space-3)) / 2);
  width: var(--space-3);
  height: var(--space-3);
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E");
  transform: translateY(-50%);
}
.checkout_coupon {
  display: flex;
  align-items: baseline;
  gap: var(--space-4);
  padding: 0 var(--space-4) var(--space-4);
}
.checkout_coupon > p:not(.form-row),
.checkout_coupon .clear {
  display: none;
}
.checkout_coupon .form-row-first {
  flex: 1;
}
.woocommerce .checkout_coupon .input-text,
.woocommerce .checkout_coupon .input-text:placeholder-shown:not(:focus) {
  background-color: var(--color-bg);
}
.checkout_coupon .button {
  min-height: 0;
  padding: 0 0 var(--line);
  border: 0;
  border-radius: 0;
  background: linear-gradient(var(--color-accent), var(--color-accent)) 0 100% / 100% var(--line) no-repeat;
  font-size: var(--fs-sm);
  letter-spacing: var(--tracking);
  text-transform: uppercase;
  white-space: nowrap;
  transition: background-size var(--dur-fast) var(--ease);
}
.checkout_coupon .button:is(:hover, :focus-visible) {
  background-color: transparent;
  background-size: 100% 0.6em;
  color: var(--color-text);
  -webkit-text-stroke: 0;
}
#payment {
  margin-top: var(--space-12);
}
.wc_payment_methods {
  margin: 0 0 var(--space-4);
  padding: 0;
  list-style: none;
}
.wc_payment_method > label {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  font-weight: 700;
}
.wc_payment_method > label img {
  max-height: 1.5rem;
  width: auto;
}
.wc_payment_method > input {
  vertical-align: middle;
}
.payment_box {
  margin-top: var(--space-3);
  font-size: var(--fs-sm);
  line-height: var(--lh-body);
}
.payment_box p {
  margin: 0;
}
.place-order {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}
.woocommerce-terms-and-conditions-wrapper,
.woocommerce-privacy-policy-text {
  font-size: var(--fs-sm);
  line-height: var(--lh-body);
}
.woocommerce-privacy-policy-text p {
  margin: 0;
}
.woocommerce-privacy-policy-text a,
.checkout-privacy a {
  text-decoration: underline;
  text-decoration-color: var(--color-accent);
  text-decoration-thickness: var(--line);
}
.woocommerce-terms-and-conditions-wrapper:has(.woocommerce-privacy-policy-text:empty) {
  display: none;
}
.form-row.checkout-privacy label.checkbox {
  display: block;
  position: relative;
  padding-left: calc(1.25rem + var(--space-3));
}
.form-row.checkout-privacy label.checkbox input[type="checkbox"] {
  position: absolute;
  top: calc((1lh - 1.25rem) / 2);
  left: 0;
  margin: 0;
  font: inherit;
}
.checkout-privacy a {
  white-space: nowrap;
}
#place_order {
  align-self: flex-end;
}
:is(#place_order, .checkout-button)::after {
  content: "";
  width: 1em;
  height: 1em;
  background-color: currentColor;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
}
#order_review .shop_table :is(th, td),
.cart_totals .shop_table :is(th, td) {
  padding: var(--space-2) 0;
  border-bottom: 0;
}
#order_review .shop_table :is(th, td) + :is(th, td),
.cart_totals .shop_table :is(th, td) + :is(th, td) {
  padding-left: var(--space-4);
}
#order_review .shop_table tbody tr:last-child td {
  padding-bottom: var(--space-4);
}
#order_review .shop_table .cart-subtotal :is(th, td) {
  padding-top: var(--space-4);
  border-top: var(--rule);
}
#order_review .shop_table td.product-name {
  --qty-col: 4ch;
  position: relative;
  padding-left: calc(var(--qty-col) + var(--space-3));
}
#order_review .shop_table td.product-name .product-quantity {
  position: absolute;
  top: var(--space-2);
  left: 0;
  width: var(--qty-col);
  font-variant-numeric: tabular-nums;
  text-align: right;
}
.product-attributes {
  color: var(--color-text-secondary);
  font-size: var(--fs-sm);
  font-weight: 400;
  &::before {
    content: "\A";
    white-space: pre;
  }
  & b {
    color: var(--color-text);
    font-weight: 700;
  }
}
#order_review .shop_table tbody td {
  vertical-align: top;
  font-size: 1rem;
}
#order_review .product-attributes {
  font-size: inherit;
  white-space: nowrap;
  &::before {
    content: "·\00a0";
  }
  & b {
    color: inherit;
    font-weight: inherit;
  }
}
#order_review .shop_table .product-total,
#order_review .shop_table tfoot td,
.cart_totals .shop_table td {
  text-align: right;
}
.select2-container .select2-selection--single {
  display: flex;
  align-items: center;
  height: var(--btn-h);
  border: 0;
  border-bottom: var(--hairline) solid var(--color-text-secondary);
  border-radius: 0;
  background-color: transparent;
  transition: border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);
}
.select2-container .select2-selection--single:hover {
  border-bottom-color: var(--color-text);
}
.select2-container:is(.select2-container--focus, .select2-container--open) .select2-selection--single {
  border-bottom-color: var(--color-accent);
  box-shadow: inset 0 calc(-1 * var(--hairline)) 0 var(--color-accent);
}
.select2-container.select2-container--open .select2-selection--single {
  border-bottom-color: var(--color-text);
  box-shadow:
    inset var(--hairline) 0 0 var(--color-text),
    inset calc(-1 * var(--hairline)) 0 0 var(--color-text),
    inset 0 var(--hairline) 0 var(--color-text);
}
.select2-container .select2-selection--single .select2-selection__rendered {
  padding-inline: var(--space-2) var(--space-10);
  color: var(--color-text);
  line-height: var(--lh-tight);
}
.select2-container .select2-selection--single .select2-selection__arrow {
  top: 50%;
  right: var(--space-2);
  width: 1em;
  height: var(--space-6);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / 1em no-repeat;
  transform: translateY(-50%);
}
.select2-container .select2-selection--single .select2-selection__arrow b {
  display: none;
}
.select2-dropdown {
  border: var(--hairline) solid var(--color-text);
  border-radius: 0;
  overflow: hidden;
}
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
  background-color: var(--color-accent);
  color: var(--color-text);
}
.woocommerce-MyAccount-navigation ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-3) var(--space-8);
  margin: 0 0 var(--space-12);
  padding: 0;
  list-style: none;
  font-size: var(--fs-sm);
  letter-spacing: var(--tracking);
  text-transform: uppercase;
}
.woocommerce-MyAccount-navigation .is-active a {
  font-weight: 700;
}
.woocommerce-form-login,
.woocommerce-ResetPassword {
  max-width: 32rem;
  margin-inline: auto;
}
.woocommerce-form-login__rememberme {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.lost_password {
  font-size: var(--fs-sm);
}
.woocommerce-order-overview {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4) var(--space-10);
  margin: 0 0 var(--space-10);
  padding: 0;
  list-style: none;
  font-size: var(--fs-sm);
  text-transform: uppercase;
}
.woocommerce-order-overview strong {
  display: block;
  margin-top: var(--space-1);
  font-size: var(--fs-md);
  text-transform: none;
}
:is(.woocommerce-checkout, .woocommerce-cart) .gold-kid .gold-kid__inner {
  position: absolute;
  right: calc(50% - var(--gold-kid-cta-width) / 2);
  bottom: var(--space-12);
}
:is(.woocommerce-checkout, .woocommerce-cart) .gold-kid .gold-kid__figure {
  animation: none;
  background-position-x: 55.1724%;
}
@media (width <= 64em) {
  .woocommerce-checkout .woocommerce:has(> form.checkout) {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto;
    grid-template-areas:
      "back"
      "notices"
      "customer"
      "heading"
      "coupon"
      "coupon-notice"
      "coupon-form"
      "review";
  }
  #order_review_heading {
    margin-top: var(--space-12);
  }
}
@media (width <= 50em) {
  .woocommerce-billing-fields__field-wrapper,
  .woocommerce-shipping-fields__field-wrapper,
  .woocommerce-address-fields__field-wrapper,
  .woocommerce-EditAccountForm,
  .woocommerce-form-login,
  .woocommerce-form-register,
  .woocommerce-ResetPassword {
    grid-template-columns: minmax(0, 1fr);
  }
  :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper, .woocommerce-address-fields__field-wrapper, .woocommerce-EditAccountForm, .woocommerce-form-login, .woocommerce-form-register, .woocommerce-ResetPassword) > * {
    grid-column: 1 / -1;
  }
  .shop-page .shop_table.cart thead {
    display: none;
  }
  .shop-page .shop_table.cart tr.cart_item {
    display: grid;
    grid-template-columns: 5rem minmax(0, 1fr) auto;
    grid-template-areas:
      "thumb name remove"
      "thumb price price"
      "thumb qty subtotal";
    align-items: center;
    gap: var(--space-2) var(--space-4);
    padding-block: var(--space-4);
    border-bottom: var(--rule);
  }
  .shop-page .shop_table.cart tr.cart_item td {
    padding: 0;
    border: 0;
  }
  .shop-page .shop_table.cart .product-thumbnail {
    grid-area: thumb;
  }
  .shop-page .shop_table.cart .product-thumbnail img {
    width: 100%;
  }
  .shop-page .shop_table.cart .product-name {
    grid-area: name;
  }
  .shop-page .shop_table.cart .product-remove {
    grid-area: remove;
  }
  .shop-page .shop_table.cart .product-price {
    grid-area: price;
    font-size: var(--fs-sm);
    text-align: left;
  }
  .shop-page .shop_table.cart .product-quantity {
    grid-area: qty;
    text-align: left;
  }
  .shop-page .shop_table.cart .product-subtotal {
    grid-area: subtotal;
    font-weight: 700;
  }
  .shop-page .shop_table.cart tr:not(.cart_item),
  .shop-page .shop_table.cart tr:not(.cart_item) td {
    display: block;
  }
  .shop-page .coupon {
    display: flex;
    float: none;
    margin-bottom: var(--space-4);
  }
  .shop-page .coupon .input-text {
    flex: 1;
    min-width: 0;
  }
  .shop-page .actions > .button {
    width: 100%;
  }
  .cart-collaterals {
    display: block;
  }
}
@media (width <= 37.5em) {
  .cart_totals {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "table"
      "hint"
      "button";
  }
  .cart_totals .shop_table {
    width: 100%;
  }
  .cart_totals .shop_table th {
    text-align: left;
  }
}
