.vk-user-login {
  max-width: 550px;
  width: 100%;
  margin: 0 auto;
  padding: 60px 40px 70px;
  background: #fff;
}

.vk-user-login h2 {
  font-weight: 400;
  font-size: 40px;
  line-height: 1.05;
  letter-spacing: -0.2px;
  margin-bottom: 40px;
}

.vk-user-login .woocommerce-form-row {
  position: relative;
  margin-bottom: 10px;
}

.vk-user-login .input-select,
.vk-user-login .input-text {
  width: 100%;
  border: 1px solid #d8d8d8;
  padding: 22px 15px 8px;
}

.vk-user-login .input-select {
  padding: 15px;
  color: rgba(0, 0, 0, 0.7);
}

.vk-user-login .woocommerce-form-row label {
  position: absolute;
  left: 15px;
  top: 6px;
  font-weight: 400;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: -0.06px;
  opacity: 0.6;
}

.woocommerce-privacy-policy-text {
  padding-top: 7px;
  padding-bottom: 10px;
}

.vk-user-login .woocommerce-privacy-policy-text p,
.vk-user-login .privacy-policy {
  font-weight: 400;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: -0.06px;
  color: #000;
}

.vk-user-login .woocommerce-privacy-policy-text p a,
.vk-user-login .privacy-policy a {
  text-decoration: underline;
  transition: all 0.3s;
}

.vk-user-login .privacy-policy a:hover {
  color: #333;
}

.woocommerce-form-login__rememberme,
.vk-user-login .lost_password a {
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.28px;
  text-transform: uppercase;
  transition: all 0.3s;
  color: #000;
  cursor: pointer;
}

.vk-user-login .lost_password a:hover {
  color: #333;
}

.vk-reset-password .vk-btn-dark,
.vk-btn-dark.woocommerce-form-register__submit,
.vk-btn-dark.woocommerce-form-login__submit {
  display: block;
  width: 100%;
  padding: 18px;
  margin-top: 30px;
  margin-bottom: 15px;
}

.vk-user-login .login-extra {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.vk-user-login .register-wrap {
  text-align: center;
}

.vk-user-login .register-btn {
  font-weight: 500;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.28px;
  text-transform: uppercase;
  color: #000;
  display: inline-block;
  border-bottom: 1px solid #000;
  transition: all 0.3s;
}

.vk-user-login .register-btn:hover {
  border-color: #fff;
}

.vk-user-login .show-password-input {
  background: transparent;
  border: none;
  position: absolute;
  right: 15px;
  top: 17px;
}

.vk-user-login .show-password-input::after {
  content: "Show";
  font-weight: 400;
  font-size: 16px;
  color: #2e2b23b2;
  line-height: 1.5;
  letter-spacing: -0.16px;
  text-transform: uppercase;
}

.vk-user-login .display-password.show-password-input::after {
  content: "Hide";
}

.vk-user-login.vk-user-register {
  padding: 40px;
}

.vk-user-login.vk-user-register h2 {
  margin-bottom: 10px;
}

.vk-show-login-wrap {
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.16px;
  color: #000;
}

.vk-show-login-wrap a {
  font-weight: 500;
  margin-left: 3px;
  border-bottom: 1px solid #000;
  transition: all 0.3s;
}

.vk-show-login-wrap a:hover {
  color: #000;
  border-color: #fff;
}

.vk-account-type-wrap {
  background: #f5f5f5;
  border-radius: 50px;
  padding: 2px;
  gap: 3px;
  display: inline-flex;
  justify-content: center;
  margin-top: 40px;
  margin-bottom: 40px;
}

.vk-account-type-btn {
  border: none;
  background: transparent;
  padding: 19px 25px;
  border-radius: 50px;
  cursor: pointer;
  transition: all 0.3s;
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.28px;
  text-transform: uppercase;
  color: #2e2b23;
  opacity: 0.6;
}

.vk-account-type-btn:hover,
.vk-account-type-btn--active {
  background: #ffffff;
  opacity: 1;
}

.vk-user-wrapper {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 75px 30px;
}

.vk-lost-password {
  text-align: center;
  padding: 70px 0;
}

.vk-lost-password h2 {
  font-size: 64px;
  margin-bottom: 15px;
}

.vk-reset-password .text,
.vk-lost-password .text {
  color: #2e2b23cc;
  margin-bottom: 40px;
}

.vk-lost-password .vk-btn-dark {
  padding: 18px;
  width: 100%;
  margin-top: 14px;
}

.vk-reset-password .vk-btn-dark {
  margin-top: 20px;
}

.vk-lost-password-confirmation {
  max-width: 550px;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  padding: 80px 15px;
}

.vk-lost-password-confirmation .title {
  font-size: 64px;
  letter-spacing: -0.32px;
}

.vk-lost-password-confirmation p {
  color: #2e2b23cc;
  font-size: 14px;
}

.vk-lost-password-confirmation .text {
  font-size: 16px;
  padding-top: 15px;
  padding-bottom: 35px;
}

.vk-lost-password-confirmation .text span {
  font-weight: 500;
  color: #2e2b23;
}

.vk-lost-password-confirmation .resend-email {
  font-weight: 500;
  color: #2e2b23;
  font-size: 16px;
  line-height: 1.1;
  letter-spacing: -0.16px;
  display: inline-block;
  margin-top: 20px;
  transition: all 0.3s;
  border-bottom: 1px solid #2e2b23;
}

.vk-lost-password-confirmation .resend-email:hover {
  border-color: #fff;
}

.vk-reset-password {
  text-align: center;
}

.vk-user-login.vk-reset-password .title {
  margin-bottom: 15px;
  font-size: 64px;
}

ul.woocommerce-error {
  text-align: center;
  color: red;
  padding-top: 20px;
  outline: none;
}

ul.woocommerce-error a {
  color: #000;
  transition: all 0.3s;
}

ul.woocommerce-error a:hover {
  color: #333;
}

/* Product Breadcrumb */
.vk-product-details {
  width: 100%;
  max-width: 1424px;
  margin: 0 auto;
  padding: 0 40px;
}

.woocommerce-breadcrumb {
  width: 100%;
  max-width: 1424px;
  margin: 0 auto;
  padding: 120px 40px 20px;
  font-size: 16px;
  color: #2e2b23;
  font-weight: 500;
}

.woocommerce-breadcrumb a {
  font-weight: 400;
}

.vk-product-details .product_title {
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 48px;
  line-height: 1.05;
  letter-spacing: -0.24px;
  color: #2e2b23;
  margin-bottom: 15px;
}

.vk-product-details .price {
  font-weight: 500;
  font-size: 24px;
  line-height: 1.5;
  letter-spacing: -0.72px;
  color: #2e2b23;
}

.vk-product-details .price del {
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.16px;
  color: #2e2b23;
  margin-left: 10px;
}

.vk-product-details .price ins {
  text-decoration: none;
}

.vk-pro-discount-badge {
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.28px;
  text-transform: uppercase;
  color: #d92d20;
  background: #fef3f2;
  padding: 6px 8px;
  border-radius: 100px;
  margin-left: 25px;
  display: inline-block;
}

/* ==============================
Filter Summary List
============================== */
.filter-summary-list {
  width: 100%;
  margin-bottom: 35px;
}

.filter-summary-row {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 25px 0 12px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  cursor: pointer;
  transition: all 0.3s;
}

.filter-summary-row:first-child {
  border-top: 2px solid rgba(0, 0, 0, 0.1);
  padding-top: 50px;
  margin-top: 40px;
}

.filter-summary-row .summary-main {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.filter-summary-row .summary-label {
  font-size: 20px;
  font-weight: 400;
  color: #2e2b23;
  font-family: var(--font-heading);
}

.filter-summary-row .summary-val {
  font-size: 12px;
  color: #5c5c5c;
  line-height: 1.3;
}

.filter-summary-row .summary-arr {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

.filter-drawer-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 9999;
}

.filter-drawer-overlay.is-open {
  display: block;
}

.product-filter-area {
  position: fixed;
  top: 0;
  right: 0;
  width: 455px;
  max-width: 100vw;
  height: 100vh;
  background: #fff;
  z-index: 10000;
  display: flex;
  flex-direction: column;
  transform: translateX(110%);
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: -4px 0 32px rgba(0, 0, 0, 0.12);
}

.product-filter-area.is-open {
  transform: translateX(0);
}

.filter-drawer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  flex-shrink: 0;
}

.filter-drawer-title {
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 24px;
  line-height: 1.05;
  letter-spacing: -0.12px;
  color: #2e2b23;
}

.filter-drawer-close {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 16px;
  color: #888;
  padding: 4px 6px;
  line-height: 1;
  transition: color 0.15s;
}

.filter-drawer-close:hover {
  color: #1a1a18;
}

.filter-drawer-footer {
  padding: 20px;
  flex-shrink: 0;
}

.filter-drawer-atc {
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.32px;
  text-transform: uppercase;
  background: #000;
  color: #fff;
  padding: 20px;
  width: 100%;
  text-align: center;
  border: none;
  outline: none;
  transition: all 0.3s;
}

.filter-drawer-atc:hover {
  background: #333;
}

.product-filter-list {
  flex: 1;
  overflow-y: auto;
  padding: 0 20px;
}

.product-filter-list::-webkit-scrollbar {
  width: 3px;
}

.product-filter-list::-webkit-scrollbar-thumb {
  background: #ddd;
  border-radius: 2px;
}

.product-filter-item {
  border-bottom: 1px solid #ede9e4;
}

.product-filter-item .item-top {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 18px 0;
  cursor: pointer;
  background: none;
  border: none;
  text-align: left;
  transition: all 0.3s;
}

.product-filter-item.active {
  background: #f8f8f8;
  padding: 15px;
  border-bottom-color: #f8f8f8;
  padding-top: 0;
}

.product-filter-item.selected {
  background: #F8F8F8;
  border-bottom-color: #F8F8F8;
  margin-bottom: 20px;
  padding: 0 15px;
}

.product-filter-item .item-top:hover {
  background: #faf8f5;
}

.step-num {
  width: 28px;
  height: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  font-weight: 500;
  color: #2e2b23;
  flex-shrink: 0;
  background: #f4efe6;
  font-family: var(--font-heading);
}

.product-filter-area .step-num {
  color: #2e2b23b2;
}

.product-filter-item.active .step-num {
  color: #2e2b23;
  background-color: #f3dfbb;
}

.item-label {
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 24px;
  line-height: 1.05;
  letter-spacing: -0.12px;
  color: #2e2b23;
  flex-shrink: 0;
}

.header-spacer {
  flex: 1;
}

.selected-tag {
  display: none;
  align-items: center;
  gap: 5px;
  padding: 7px 15px;
  background: #f3dfbb;
  border-radius: 20px;
  color: #171717;
  overflow: hidden;
  font-size: 12px;
}

.selected-tag.visible {
  display: inline-flex;
}

.tag-x {
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
  color: #2e2b23cc;
}

.tag-x:hover {
  color: #2e2b23;
}

.chevron {
  font-size: 10px;
  color: #bbb;
  flex-shrink: 0;
  transition: transform 0.3s ease;
}

.product-filter-item.active .chevron {
  transform: rotate(180deg);
}

/* ==============================
   Accordion Body Animation
============================== */
.product-filter-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.product-filter-item.active .product-filter-content {
  max-height: 600px;
}

.product-filter-item .handle-options,
.product-filter-item .colour-options,
.product-filter-item .size-options,
.product-filter-item .content-wrapper {
  display: flex;
  flex-direction: column;
  gap: 16px;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  padding-top: 20px;
}

.product-filter-item .handle-row,
.product-filter-item .colour-row,
.product-filter-item .size-btn,
.product-filter-item .range-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 15px;
  border: 1px solid #d8d8d8;
  cursor: pointer;
  transition: all 0.3s;
  background-color: #fff;
}

.product-filter-item .handle-row:hover,
.product-filter-item .colour-row:hover,
.product-filter-item .size-btn:hover,
.product-filter-item .range-card:hover {
  border-color: #000;
}

.product-filter-item .handle-row.selected,
.product-filter-item .colour-row.selected,
.product-filter-item .size-btn.selected,
.product-filter-item .range-card.selected {
  border-color: #000;
}

.product-filter-item .card-img {
  width: 62px;
  height: 48px;
  flex-shrink: 0;
  background: #e8e3db;
  overflow: hidden;
  border-radius: 1px;
}

.product-filter-item .card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.product-filter-item .card-info {
  flex: 1;
}

.product-filter-item .card-name-wrap {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 3px;
}

.product-filter-item .handle-name,
.product-filter-item .size-title,
.product-filter-item .card-name {
  color: #171717;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: -0.07px;
}

.product-filter-item .handle-badge,
.product-filter-item .badge {
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.24px;
  text-transform: uppercase;
  color: #2e2b23;
  border-radius: 100px;
  padding: 4px 8px;
}

.product-filter-item .badge-entry {
  background: #f4efe6;
  color: #2e2b23b2;
}

.product-filter-item .handle-badge,
.product-filter-item .badge-popular {
  background: #f3dfbb;
  color: #2e2b23;
}

.product-filter-item .handle-sub,
.product-filter-item .size-desc,
.product-filter-item .card-desc {
  font-size: 12px;
  color: #5c5c5c;
}

.product-filter-item .card-price {
  margin-bottom: 3px;
}

.product-filter-item .handle-price,
.product-filter-item .colour-price,
.product-filter-item .size-price,
.product-filter-item .card-price {
  font-size: 18px;
  font-weight: 500;
  color: #2e2b23;
}

.product-filter-item .size-btn {
  display: block;
  width: 100%;
}

.product-filter-item .size-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.product-filter-item .colour-thumb {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  overflow: hidden;
}

.product-filter-item .colour-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.product-filter-item .colour-content {
  flex: 1;
}

.product-filter-item .colour-title {
  color: #171717;
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.32px;
  text-transform: uppercase;
}

.product-filter-item .handle-name {
  margin-bottom: 3px;
}

.product-filter-item .handle-info {
  flex: 1;
}

.product-filter-item .handle-badge {
  margin-left: 6px;
}

/* ==============================
   5. Review Summary
============================== */
.product-filter-item .review-body {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  padding-top: 20px;
}

.product-filter-item .review-table {
  width: 100%;
  border-collapse: collapse;
  background-color: #fff;
  padding: 7px 15px;
  border: 1px solid #f8f8f8;
}

.product-filter-item .review-table li {
  border-bottom: 1px solid #f8f8f8;
  padding: 8px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

.product-filter-item .review-table li:last-child {
  border-bottom: none;
}

.product-filter-item .review-summary {
  background: #fff;
  padding: 15px;
}

.product-filter-item .review-summary .label {
  color: #0e121b;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.16px;
  padding-bottom: 7px;
}

.review-summary .review-results {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 10px 12px 0;
}

.review-summary .review-value,
.review-summary .review-label {
  font-weight: 400;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: -0.07px;
  color: #2e2b23b2;
}

.review-summary .review-value {
  color: #2e2b23;
}

.review-summary .review-results .review-value {
  font-weight: 500;
}

/* ==============================
   Footer
============================== */
.product-filter-item .filter-footer {
  padding: 13px 16px;
  border-top: 1px solid #ede9e4;
  flex-shrink: 0;
}

.product-filter-item .add-to-cart {
  width: 100%;
  padding: 13px;
  background: #1a1a18;
  color: #fff;
  border: none;
  border-radius: 1px;
  font-family: "Jost", sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.2s;
}

.add-to-cart:hover {
  background: #333;
}

/* Cart/Checkout Page CSS */
.vk-page-checkout-area,
.vk-page-cart-area {
  padding-top: 120px;
  padding-bottom: 120px;
}

.wc-block-components-product-name {
  transition: all 0.3s;
  font-family: var(--font-heading) !important;
  font-weight: 400 !important;
  font-size: 24px !important;
  line-height: 1.05 !important;
  letter-spacing: -0.12px;
  color: #2e2b23;
}

.wc-block-components-product-name:hover {
  color: #2e2b23cc;
}

table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img {
  width: 120px !important;
  height: 132px;
  object-fit: cover;
}

.wc-block-components-formatted-money-amount {
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: -0.27px;
  color: #2e2b23cc;
}

p.wc-block-components-checkout-order-summary__title-text,
.vk-page-checkout-area .wc-block-components-checkout-step__title,
h2.wp-block-woocommerce-cart-order-summary-heading-block.wc-block-cart__totals-title,
th.wc-block-cart-items__header-total,
th.wc-block-cart-items__header-image {
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 40px !important;
  line-height: 1.05;
  letter-spacing: -0.2px;
  color: #2e2b23;
}

td.wc-block-cart-item__total {
  position: relative;
  top: -1px;
}

.vk-page-cart-area .wc-block-components-quantity-selector {
  border: 1px solid #2e2b23;
  border-radius: 0;
  height: 32px;
  font-size: 18px;
  color: #2e2b23;
  border-color: #2e2b23;
}

.wc-block-components-totals-item__label,
.wc-block-components-totals-coupon {
  font-size: 16px;
  color: #2e2b23;
  padding: 0 !important;
}

.wc-block-components-totals-item__value {
  font-size: 16px;
}

.wc-block-components-checkout-place-order-button,
.wc-block-cart__submit-button,
.wc-block-components-totals-coupon__button {
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.28px;
  text-transform: uppercase;
  background: #000;
  color: #fff;
  border: 1px solid #000;
  transition: all 0.3s !important;
}

.wc-block-components-checkout-place-order-button:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-totals-coupon__button:hover {
  background: #fff;
  color: #000;
}

.wc-block-cart__submit-button {
  padding: 20px;
  margin-top: 30px !important;
}

.vk-page-checkout-area textarea,
.vk-page-checkout-area select,
.vk-page-checkout-area input {
  border: 1px solid #d8d8d8 !important;
  color: #2e2b23 !important;
}

.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted {
  box-shadow: none !important;
  border-radius: 0 !important;
  border: 1px solid #d8d8d8 !important;
}

.vk-page-checkout-area label {
  color: #2e2b23b2 !important;
  font-weight: 400;
  font-size: 12px;
}

span.wc-block-components-checkbox__label {
  color: #2e2b23;
}

.wc-block-components-checkout-place-order-button {
  padding: 20px 40px !important;
  width: 100%;
}

a.wc-block-components-checkout-return-to-cart-button {
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.28px;
  text-transform: uppercase;
  color: #000;
  border: 1px solid #000;
  transition: all 0.3s !important;
  padding: 20px 25px 20px 50px;
  display: none;
}

a.wc-block-components-checkout-return-to-cart-button:hover {
  background: #000;
  color: #fff;
}

.wc-block-components-checkout-return-to-cart-button svg {
  left: 20px !important;
}

.wc-block-checkout__actions_row {
  margin-top: 50px;
}

.vk-page-checkout-area .wc-block-components-sidebar {
  padding-left: 0 !important;
  width: 40% !important;
}

.vk-page-checkout-area .wc-block-components-sidebar-layout .wc-block-components-main {
  padding-right: 8%;
  width: 58%;
}

.wc-block-components-order-summary-item__image {
  width: 120px !important;
  height: 132px !important;
  flex-shrink: 0;
  margin: 0 !important;
  padding-bottom: 0 !important;
}

.wc-block-components-order-summary-item__image>img {
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
}

.vk-page-checkout-area .wc-block-components-radio-control__label {
  font-size: 16px;
  font-weight: 400;
  color: rgba(46, 43, 35, 0.7);
}

.vk-page-checkout-area .wc-block-components-radio-control__secondary-label {
  font-size: 16px;
  color: #2e2b23;
  font-weight: 500;
}

.vk-page-checkout-area .wc-block-components-order-summary-item__total-price {
  display: none;
}

.wp-block-woocommerce-checkout-order-summary-block {
  border: none !important;
}

.vk-page-checkout-area .wc-block-components-checkout-order-summary__title {
  margin-top: 0 !important;
  margin-bottom: 30px;
}

.vk-page-checkout-area .wc-block-components-checkout-step__heading {
  margin-bottom: 15px;
}

.vk-page-checkout-area .wc-block-cart-item__prices {
  margin-top: 8px;
}

.vk-page-checkout-area .wc-block-components-order-summary-item {
  margin-bottom: 35px;
}

.vk-page-checkout-area .wc-block-components-order-summary-item:last-child {
  margin-bottom: 20px;
}

.wc-block-components-totals-coupon .wc-block-components-panel__button {
  display: none !important;
}

.wc-block-components-totals-coupon__form {
  gap: 0 !important;
}

input#wc-block-components-totals-coupon__input-coupon {
  border-radius: 4px 0 0 4px;
}

.wc-block-components-totals-wrapper {
  border-top: none !important;
}

.wc-block-components-sidebar .slot-wrapper .wc-block-components-panel,
.wc-block-components-sidebar .wc-block-components-panel,
.wc-block-components-sidebar .wc-block-components-totals-coupon,
.wc-block-components-sidebar .wc-block-components-totals-item {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.wc-block-components-order-summary {
  padding: 0 !important;
}

.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title .wc-block-components-checkout-order-summary__title-text {
  margin: 0 !important;
}

.wp-block-woocommerce-checkout-order-summary-totals-block {
  border-top: none !important;
  padding-bottom: 0 !important;
}

.wp-block-woocommerce-checkout-order-summary-coupon-form-block.wc-block-components-totals-wrapper {
  border-top: 1px solid #ddd !important;
  padding-top: 40px;
}

.vk-page-checkout-area .wc-block-components-order-summary-item__quantity {
  display: none !important;
}

.wc-block-components-payment-methods__save-card-info {
  margin-top: 15px;
}

/* Thank You CSS */
.vk-thankyou-wrapper {
  max-width: 550px;
  margin: 0 auto;
  padding: 0 15px;
}

.vk-thankyou-wrapper .title {
  font-weight: 400;
  font-size: 48px;
  line-height: 1.05;
  letter-spacing: -0.24px;
  padding-top: 25px;
  padding-bottom: 15px;
  color: #2e2b23;
}

.vk-thankyou-wrapper .subtitle {
  font-weight: 400;
  font-size: 24px;
  line-height: 1.5;
  letter-spacing: -0.96px;
  color: #2e2b23cc;
  padding-bottom: 35px;
  border-bottom: 1px solid #d8d8d8;
  margin-bottom: 35px;
}

.vk-thankyou-wrapper ul {
  display: grid;
  gap: 15px;
}

.vk-thankyou-wrapper ul li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: -0.27px;
  color: #2e2b23;
}

.vk-thankyou-wrapper ul li strong {
  font-weight: 500;
  color: #2e2b23;
}

.vk-thankyou-wrapper .text {
  font-weight: 400;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: -0.27px;
  margin-top: 35px;
  margin-bottom: 40px;
  color: #2e2b23cc;
}

.vk-thankyou-wrapper .text strong {
  font-weight: 500;
  color: #2e2b23;
}

.vk-thankyou-wrapper .vk-btn-dark {
  padding: 20px;
  width: 100%;
  text-align: center;
}

.vk-quantity-wrap {
  display: flex;
}

.vk-quantity-wrap.prof-qty .quantity {
  margin-right: 15px;
}

.vk-quantity-wrap .quantity input {
  width: 100%;
  padding: 10px;
  border-radius: 0;
  font-size: 18px;
  border: 1px solid #000;
  color: #2e2b23cc;
}

.review-summary .review-value del {
  margin-left: 7px;
}

.review-summary .review-value ins {
  text-decoration: none;
  font-size: 16px;
}

.review-summary .vk-pro-discount-badge {
  font-size: 12px;
  margin-left: 10px;
}

/* ==============================
   Single Product — CTA Buttons
============================== */
.single_add_to_cart_button.button {
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.32px;
  text-transform: uppercase;
  background-color: #000;
  color: #fff;
  padding: 16px;
  border: none;
  outline: none;
  width: 100%;
  transition: all 0.3s;
}

.single_add_to_cart_button.button:hover {
  background: #2e2b23;
  color: #fff;
}

.veneto-call-us-btn {
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.32px;
  text-transform: uppercase;
  color: #000000;
  border: 1px solid #000000;
  padding: 15px;
  display: block;
  width: 100%;
  transition: all 0.3s;
  margin-top: 16px;
  text-align: center;
}

.veneto-call-us-btn:hover {
  background: #2e2b23;
  color: #fff;
}

.product_meta {
  display: none;
}

/* ==============================
   Product Accordion Tabs
============================== */
.vk-product-accordion {
  margin-top: 120px;
  margin-bottom: 160px;
}

.vk-accordion-item {
  border-top: 1px solid #e0ddd8;
}

.vk-accordion-item:last-child {
  border-bottom: 1px solid #e0ddd8;
}

.vk-accordion-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 22px 0;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  gap: 16px;
}

.vk-accordion-title {
  font-size: 20px;
  font-weight: 500;
  color: #000;
  line-height: 1.2;
  letter-spacing: -0.01em;
}

.vk-accordion-icon {
  flex-shrink: 0;
  font-size: 22px;
  font-weight: 300;
  color: #1a1a18;
  line-height: 1;
  transition: transform 0.3s ease;
  display: inline-block;
}

.vk-accordion-trigger[aria-expanded="true"] .vk-accordion-icon {
  transform: rotate(45deg);
}

.vk-accordion-panel {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.vk-accordion-panel[hidden] {
  display: block !important;
  max-height: 0;
}

.vk-accordion-panel-inner {
  padding-bottom: 24px;
}

.vk-accordion-panel-inner h2 {
  display: none;
}

.vk-accordion-panel-inner p {
  font-size: 16px;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
}

.vk-accordion-item ol,
.vk-accordion-item ul {
  padding-left: 18px;
  padding-bottom: 15px;
}

.vk-accordion-item li,
.vk-accordion-item p {
  color: #2E2B23CC;
  font-size: 16px;
}

.vk-accordion-item p {
  padding-bottom: 15px;
}

.vk-accordion-item ol li {
  list-style: decimal;
}

.vk-accordion-item ul li {
  list-style: disc;
}

.vk-accordion-item p a {
  color: #000;
  transition: all 0.3s;
}

.vk-accordion-item p a:hover {
  color: #2E2B23;
}

/* Specifications list */
.vk-specifications-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.vk-specifications-list li {
  font-size: 15px;
  font-weight: 400;
  color: #2e2b23;
  line-height: 1.6;
  display: flex;
  align-items: baseline;
  gap: 6px;
}

.vk-spec-bullet {
  flex-shrink: 0;
}

.vk-spec-label {
  font-weight: 500;
}

/* ==============================
   Add-ons Product List
============================== */
.vk-addons-list {
  margin-top: 40px;
  border-top: 1px solid #e0ddd8;
  padding-top: 40px;
}

.vk-addons-heading {
  font-weight: 500;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: -0.3px;
  color: #2e2b23;
  margin-bottom: 15px;
  font-family: var(--font-body);
}

.vk-addon-item {
  gap: 15px;
  display: flex;
  align-items: center;
}

.vk-addons-list .vk-addon-item:not(:last-child) {
  margin-bottom: 40px;
}

.vk-addon-image {
  flex-shrink: 0;
  width: 120px;
  height: 120px;
  display: block;
  overflow: hidden;
}

.vk-addon-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.vk-addon-name {
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 24px;
  line-height: 1.05;
  letter-spacing: -0.12px;
  color: #2e2b23;
  text-decoration: none;
  transition: color 0.2s;
}

.vk-addon-name:hover {
  color: #555;
}

.vk-addon-price {
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: -0.27px;
  color: #2e2b23;
  margin-top: 12px;
}

.vk-addon-atc {
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.28px;
  text-transform: uppercase;
  cursor: pointer;
  color: #000;
  transition: all 0.3s;
  position: relative;
  margin-top: 30px;
  display: inline-block;
}

.vk-addon-atc::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 1px;
  background: #000;
  transition: all 0.3s;
}

.vk-addon-atc:hover::after {
  width: 0;
}

.vk-addon-atc:hover {
  color: #2e2b23;
}

/* ── Product Gallery Grid ── */
.vk-product-acc-wrapper,
.woocommmerce-product-single-page-top-content-wrap {
  gap: 80px;
  display: grid;
  grid-template-columns: 2fr 1fr;
}

.vk-product-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
}

.vk-gallery-item--featured {
  grid-column: 1 / -1;
  display: block;
  overflow: hidden;
  line-height: 0;
}

.vk-gallery-item--thumb {
  display: block;
  overflow: hidden;
  line-height: 0;
  position: relative;
}

.vk-product-gallery img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vk-gallery-item--thumb img {
  aspect-ratio: 1 / 1.3;
}

.woocommerce-product-gallery {
  display: none !important;
}

/* Bulk Price CSS */
.bulk-price-btn-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #f8f8f8;
  padding: 15px 24px;
  cursor: pointer;
  margin-top: 16px;
}

.bulk-price-btn-wrap p {
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.16px;
  color: #2e2b23;
  display: flex;
  align-items: center;
  gap: 8px;
}

.bulk-price-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  opacity: 0;
  visibility: hidden;
  transition:
    opacity 0.25s ease,
    visibility 0.25s ease;
}

.bulk-price-modal-overlay.is-open {
  opacity: 1;
  visibility: visible;
}

.bulk-price-modal {
  background: #fff;
  width: 100%;
  max-width: 600px;
  max-height: 90vh;
  overflow-y: auto;
  transform: translateY(14px);
  transition: transform 0.25s ease;
}

.bulk-price-modal-overlay.is-open .bulk-price-modal {
  transform: translateY(0);
}

.bulk-modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 28px 24px 20px;
}

.bulk-modal-title {
  font-weight: 400;
  font-size: 32px;
  line-height: 1.05;
  letter-spacing: -0.16px;
  color: #2e2b23;
}

.bulk-modal-close {
  background: none;
  border: none;
  cursor: pointer;
  color: #1a1a1a;
  font-size: 20px;
  line-height: 1;
  padding: 2px 0 0 0;
  margin-top: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.15s;
  flex-shrink: 0;
}

.bulk-modal-close:hover {
  opacity: 0.5;
}

.bulk-price-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
  border: 1px solid #d8d8d8;
  margin: 0 24px;
  width: calc(100% - 48px);
}

.bulk-price-table thead tr {
  background: #000;
  border: 1px solid #000;
  border-bottom: 0;
}

.bulk-price-table th {
  padding: 14px 20px;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: -0.27px;
  color: #fff;
}

.bulk-price-table th:last-child {
  border-right: none;
}

.bulk-price-table td {
  padding: 16px 20px;
  color: #1a1a1a;
  border-bottom: 1px solid #d8d8d8;
  border-right: 1px solid #d8d8d8;
  font-size: 15px;
}

.bulk-price-table td:last-child {
  border-right: none;
}

.bulk-price-table tbody tr:last-child td {
  border-bottom: none;
}

.bulk-modal-footer {
  background: #f5f4f0;
  padding: 16px 24px;
  margin: 20px 24px 24px;
}

.bulk-modal-footer p {
  font-size: 14px;
  color: #000;
  line-height: 1.5;
  margin: 0;
}

.bulk-modal-footer p strong {
  font-weight: 500;
}

/* My Account CSS */
.woocommerce-my-account-page-wrapper {
  display: grid;
  grid-template-columns: 390px 1fr;
  gap: 100px;
  align-items: flex-start;
  max-width: 1670px;
  margin: 0 auto;
  padding: 100px 40px 120px;
}

nav.woocommerce-MyAccount-navigation {
  background: #f8f8f8;
}

nav.woocommerce-MyAccount-navigation li a {
  padding: 15px 25px;
  display: flex;
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid #d8d8d8;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: -0.3px;
  color: #2e2b23cc;
  transition: all 0.3s;
}

nav.woocommerce-MyAccount-navigation li a::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0.75;
  transition: all 0.3s;
}

nav.woocommerce-MyAccount-navigation li a:hover::before {
  opacity: 1;
}

.woocommerce-MyAccount-navigation-link--dashboard a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3.75 6A2.25 2.25 0 0 1 6 3.75h2.25A2.25 2.25 0 0 1 10.5 6v2.25a2.25 2.25 0 0 1-2.25 2.25H6a2.25 2.25 0 0 1-2.25-2.25V6ZM3.75 15.75A2.25 2.25 0 0 1 6 13.5h2.25a2.25 2.25 0 0 1 2.25 2.25V18a2.25 2.25 0 0 1-2.25 2.25H6A2.25 2.25 0 0 1 3.75 18v-2.25ZM13.5 6a2.25 2.25 0 0 1 2.25-2.25H18A2.25 2.25 0 0 1 20.25 6v2.25A2.25 2.25 0 0 1 18 10.5h-2.25a2.25 2.25 0 0 1-2.25-2.25V6ZM13.5 15.75a2.25 2.25 0 0 1 2.25-2.25H18a2.25 2.25 0 0 1 2.25 2.25V18A2.25 2.25 0 0 1 18 20.25h-2.25A2.25 2.25 0 0 1 13.5 18v-2.25Z'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--orders a::before {
  background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.75 6.75V18.75C0.75 19.8546 1.64543 20.75 2.75 20.75H18.75C19.8546 20.75 20.75 19.8546 20.75 18.75V6.75' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M3.19721 1.85557L0.75 6.75H20.75L18.3028 1.85558C17.964 1.17801 17.2715 0.750005 16.5139 0.750005L4.98607 0.75C4.22852 0.75 3.536 1.178 3.19721 1.85557Z' stroke='%23000' stroke-width='1.5' stroke-linejoin='round'/%3E%3Cpath d='M10.75 6.75V0.75' stroke='%23000' stroke-width='1.5'/%3E%3Cpath d='M8.25 10.75H13.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--downloads a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12 12 16.5m0 0L7.5 12m4.5 4.5V3'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--edit-address a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15 10.5a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1 1 15 0Z'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--payment-methods a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M2.25 8.25h19.5M2.25 9h19.5m-16.5 5.25h6m-6 2.25h3m-3.75 3h15a2.25 2.25 0 0 0 2.25-2.25V6.75A2.25 2.25 0 0 0 19.5 4.5h-15a2.25 2.25 0 0 0-2.25 2.25v10.5A2.25 2.25 0 0 0 4.5 19.5Z'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--edit-account a::before {
  background-image: url("data:image/svg+xml,%3Csvg width='18' height='20' viewBox='0 0 18 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.75 18.75C16.75 17.3544 16.75 16.6567 16.5778 16.0889C16.19 14.8105 15.1895 13.81 13.9111 13.4222C13.3433 13.25 12.6456 13.25 11.25 13.25H6.25C4.85444 13.25 4.15665 13.25 3.58886 13.4222C2.31045 13.81 1.31004 14.8105 0.92224 16.0889C0.75 16.6567 0.75 17.3544 0.75 18.75M13.25 5.25C13.25 7.73528 11.2353 9.75 8.75 9.75C6.26472 9.75 4.25 7.73528 4.25 5.25C4.25 2.76472 6.26472 0.75 8.75 0.75C11.2353 0.75 13.25 2.76472 13.25 5.25Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--company-profile a::before {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 22V9C8 8.44772 8.44772 8 9 8H16C16.5523 8 17 8.44772 17 9V22' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M11.5 12.002L13.5 12.002M11.5 15.0011L13.5 15.0011M11.5 18.002L13.5 18.0002' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M3 21.9941V12.9941C3 12.4419 3.44772 11.9941 4 11.9941H8' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M22 21.9883L2 22' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M13 7.97007V2L21 5.06137V22' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--customer-logout a::before {
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.75 14.75L18.75 9.75M18.75 9.75L13.75 4.75M18.75 9.75H6.75M6.75 0.75H5.55C3.86984 0.75 3.02976 0.75 2.38803 1.07698C1.82354 1.3646 1.3646 1.82354 1.07698 2.38803C0.75 3.02976 0.75 3.86984 0.75 5.55V13.95C0.75 15.6302 0.75 16.4702 1.07698 17.112C1.3646 17.6765 1.82354 18.1354 2.38803 18.423C3.02976 18.75 3.86984 18.75 5.55 18.75H6.75' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

nav.woocommerce-MyAccount-navigation .is-active a,
nav.woocommerce-MyAccount-navigation li a:hover {
  color: #2e2b23;
}

.woocommerce-MyAccount-content>p {
  padding-bottom: 15px;
}

.woocommerce-notices-wrapper strong {
  font-weight: 500;
}

/* My Orders CSS */
.vk-orders-header {
  margin-bottom: 18px;
}

.vk-orders-header h2 {
  font-size: 24px;
  font-weight: 400;
  margin-bottom: 6px;
  color: #2e2b23;
}

.vk-orders-header p {
  font-size: 16px;
  font-weight: 400;
  color: #969594;
}

.vk-orders-tabs {
  display: flex;
  gap: 30px;
  border-bottom: 1px solid #d8d8d8;
  margin-bottom: 55px;
}

.vk-orders-tab {
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  padding: 10px 0;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #2e2b23b2;
  cursor: pointer;
  margin-bottom: -1px;
  transition: all 0.3s;
}

.vk-orders-tab.active {
  color: #2e2b23;
  border-bottom-color: #2e2b23;
}

.vk-order-items-list,
.vk-orders-list {
  display: flex;
  flex-direction: column;
  gap: 45px;
}

.vk-order-item-row,
.vk-order-row {
  display: flex;
  align-items: center;
  gap: 15px;
}

.vk-order-item-image,
.vk-order-image {
  flex-shrink: 0;
  overflow: hidden;
}

.vk-order-item-image img,
.vk-order-image img {
  width: 102px;
  height: 112px !important;
  object-fit: cover;
  display: block;
}

.vk-order-item-info,
.vk-order-info {
  flex-basis: 230px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.vk-order-item-name,
.vk-order-number {
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 24px;
  line-height: 1.05;
  letter-spacing: -0.12px;
  color: #2e2b23;
}

.vk-order-item-price,
.vk-order-price {
  font-size: 18px;
  color: #2e2b23cc;
  font-weight: 500;
}

.vk-order-item-qty,
.vk-order-qty {
  flex-shrink: 0;
  font-size: 20px;
  color: #2e2b23cc;
  min-width: 65px;
}

.vk-order-item-status,
.vk-order-status {
  flex-shrink: 0;
  min-width: 140px;
}

.vk-status-badge {
  display: inline-block;
  padding: 9px 15px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.28px;
  text-transform: uppercase;
  width: 160px;
  text-align: center;
}

.vk-status-badge.vk-status-processing {
  background: #ebf1ff;
  color: #335cff;
}

.vk-status-badge.vk-status-on-hold {
  background: #b8d6c9;
  color: #133f2c;
}

.vk-status-badge.vk-status-pending {
  background: #fff8e8;
  color: #d49b00;
}

.vk-status-badge.vk-status-completed {
  background: #e0faec;
  color: #1fc16b;
}

.vk-status-badge.vk-status-cancelled {
  background: #d7a9a9;
  color: #b52525;
}

.vk-status-badge.vk-status-failed {
  background: #ffe8e8;
  color: #d43636;
}

.vk-status-badge.vk-status-refunded {
  background: #f2f2f2;
  color: #666;
}

.vk-order-delivery {
  flex: 1 1 160px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.vk-delivery-label {
  font-size: 12px;
  color: #2e2b23;
  opacity: 0.6;
}

.vk-delivery-date {
  font-size: 14px;
  color: #2e2b23;
}

.vk-order-actions {
  flex-shrink: 0;
  margin-left: auto;
}

.vk-order-details-btn {
  display: inline-block;
  padding: 11px 25px;
  border: 1px solid #2e2b23;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.32px;
  color: #2e2b23;
  text-decoration: none;
  transition: all 0.3s;
}

.vk-order-details-btn:hover {
  background: #2e2b23;
  color: #fff;
}

.vk-no-orders {
  padding: 32px 0;
  color: #2e2b23;
  opacity: 0.6;
  font-size: 14px;
}

.vk-no-orders a {
  color: #2e2b23;
  text-decoration: underline;
  margin-left: 8px;
}

/* ── Order Details Page ── */
.vk-order-details-page {
  display: flex;
  flex-direction: column;
  gap: 0;
}

/* Top bar: back link */
.vk-order-details-topbar {
  margin-bottom: 24px;
}

.vk-back-link {
  font-weight: 500;
  font-size: 24px;
  line-height: 1.5;
  letter-spacing: -0.72px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #2e2b23;
  text-decoration: none;
}

.vk-back-link:hover {
  color: #2e2b23cc;
}

.vk-order-details-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #f8f8f8;
  padding: 16px 20px;
  margin-bottom: 35px;
}

.vk-order-details-meta-left {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.vk-profile-card-title,
.vk-total-summary-title,
.vk-delivery-details-header h3,
.vk-order-details-number {
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 24px;
  line-height: 1.05;
  letter-spacing: -0.12px;
  color: #2e2b23;
}

.vk-order-details-placed {
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -0.16px;
  color: #2e2b23cc;
}

.vk-download-invoice-btn {
  font-weight: 500;
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: 0.32px;
  text-transform: uppercase;
  color: #2e2b23;
  transition: all 0.3s;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.vk-download-invoice-btn:hover {
  color: #2e2b23cc;
  fill: #2e2b23cc;
}

.vk-order-item-meta {
  font-size: 12px;
  color: #2e2b23;
  opacity: 0.6;
}

.vk-order-item-status {
  margin-left: auto;
}

.vk-order-item-delivery {
  display: none;
}

.vk-delivery-details-section {
  margin-top: 50px;
}

.vk-delivery-details-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #f8f8f8;
  padding: 16px 20px;
  font-size: 15px;
  font-weight: 500;
  color: #2e2b23;
}

.vk-delivery-edit-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.32px;
  color: #000;
  text-decoration: none;
}

.vk-delivery-edit-btn:hover {
  opacity: 0.6;
}

.vk-delivery-details-body {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  padding: 30px 20px;
}

.vk-delivery-detail-col {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.vk-dd-label {
  font-size: 16px;
  color: #2e2b23b2;
}

.vk-dd-value {
  font-size: 16px;
  font-weight: 500;
  color: #2e2b23;
  line-height: 1.4;
}

.vk-total-summary-section {
  margin-top: 28px;
}

.vk-total-summary-title {
  background: #f8f8f8;
  padding: 16px 20px;
}

.vk-total-summary-rows {
  padding: 20px;
}

.vk-total-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
  font-size: 18px;
  color: #2e2b23cc;
}

.vk-total-row:last-child {
  border-bottom: none;
}

.vk-total-row--grand {
  font-weight: 600;
  padding-top: 14px;
  border-top: 1px solid #e8e8e8;
  margin-top: 4px;
  color: #2e2b23;
}

.vk-payment-method {
  font-size: 13px;
  color: #2e2b23;
  opacity: 0.6;
  padding: 10px 20px 4px;
  margin: 0;
}

/* ── My Address ── */
.vk-my-address-wrapper {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.vk-edit-address-header,
.vk-address-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #f8f8f8;
  padding: 16px 24px;
}

/* ── Password Changed Modal ── */
.vk-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
}

.vk-password-modal {
  background: #fff;
  padding: 3rem 2.5rem;
  max-width: 500px;
  width: 90%;
  position: relative;
  text-align: center;
  pointer-events: auto;
}

.vk-modal-close {
  position: absolute;
  top: 1rem;
  right: 1.25rem;
  background: none;
  border: none;
  font-size: 1.5rem;
  cursor: pointer;
  line-height: 1;
  color: #000;
  text-decoration: none;
  pointer-events: auto;
}

.vk-modal-title {
  font-size: 40px;
  margin-bottom: 1rem;
}

.vk-modal-text {
  margin-bottom: 2rem;
}

#vk-modal-return-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  justify-content: center;
  padding: 1rem;
  text-decoration: none;
  pointer-events: auto;
}

.vk-edit-address-title,
.vk-address-card-title {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 24px;
  font-weight: 400;
  color: #2e2b23;
}

.vk-address-edit-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.07em;
  color: #000;
  text-decoration: none;
  transition: all 0.3s;
}

.vk-address-edit-btn:hover {
  color: #2e2b23;
}

.vk-address-card-body {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 28px 40px;
  padding: 30px 20px;
}

.vk-address-field {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.vk-address-field-label {
  font-size: 12px;
  color: #2e2b23;
  opacity: 0.6;
}

.vk-address-field-value {
  font-size: 16px;
  font-weight: 400;
  color: #2e2b23;
}

.woocommerce-MyAccount-content .button {
  margin-top: 30px;
  display: block;
  width: fit-content;
  background-color: transparent;
  padding: 15px 20px;
}

/* ── Profile Settings ── */
.vk-profile-settings-header {
  margin-bottom: 28px;
}

.vk-profile-settings-header h2 {
  font-size: 24px;
  font-weight: 400;
  color: #2e2b23;
  margin-bottom: 6px;
}

.vk-profile-settings-header p {
  font-size: 16px;
  color: #2e2b23;
  opacity: 0.6;
  margin: 0;
}

.vk-profile-form {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.vk-profile-card-header {
  background: #f8f8f8;
  padding: 16px 24px;
}

.vk-profile-card-body {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px 16px;
  padding: 30px 0;
}

.vk-profile-card-body .form-row-wide {
  grid-column: 1 / -1;
}

.vk-profile-card-body .form-row {
  border: 1px solid #d8d8d8;
  background: #fff;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  transition: border-color 0.3s;
}

.vk-profile-card-body .form-row:focus-within {
  border-color: #2e2b23;
}

.vk-profile-card-body .form-row>label {
  font-size: 12px;
  color: #2e2b23;
  opacity: 0.6;
  padding: 10px 14px 2px;
  margin: 0;
  line-height: 1;
}

.vk-profile-card-body .form-row .required {
  color: inherit;
  text-decoration: none;
}

.vk-profile-card-body .form-row input.input-text {
  border: none;
  border-radius: 0;
  padding: 2px 14px 10px;
  font-size: 16px;
  color: #2e2b23;
  width: 100%;
  background: transparent;
  box-shadow: none;
  outline: none;
  height: auto;
}

.vk-profile-card-body .form-row input.input-text::placeholder {
  color: #2e2b23dd;
}

.vk-profile-card-body .form-row input.input-text:focus {
  box-shadow: none;
  outline: none;
}

.vk-profile-card-body .form-row input.input-text::placeholder {
  color: #2e2b23;
  opacity: 0.35;
  font-size: 14px;
}

.vk-profile-card-body--password {
  grid-template-columns: repeat(2, 1fr);
}

.vk-profile-card-body--password .form-row-wide {
  grid-column: 1 / -1;
}

.vk-profile-footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 4px;
}

.vk-save-changes-btn {
  background: #2e2b23 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 14px 32px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  cursor: pointer;
  transition: opacity 0.2s;
  text-transform: uppercase;
}

.vk-save-changes-btn:hover {
  opacity: 0.8;
}

.vk-profile-card .show-password-input {
  display: none;
}

/* ── Edit Address Form ── */
.vk-edit-address-header {
  margin-bottom: 24px;
}

.vk-address-fields-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.vk-address-fields-grid .form-row-wide,
.vk-address-fields-grid .form-row-first.form-row-last {
  grid-column: 1 / -1;
}

.vk-address-fields-grid .form-row {
  border: 1px solid #d8d8d8;
  background: #fff;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  transition: border-color 0.2s;
}

.vk-address-fields-grid .form-row:focus-within {
  border-color: #2e2b23;
}

.vk-address-fields-grid .form-row.woocommerce-invalid {
  border-color: #d43636;
}

.vk-address-fields-grid .form-row.woocommerce-validated {
  border-color: #22a55b;
}

.vk-address-fields-grid .form-row>label {
  font-size: 12px;
  color: #000;
  padding: 10px 14px 2px;
  line-height: 1;
  pointer-events: none;
  opacity: 0.6;
}

.vk-address-fields-grid .form-row .required {
  color: inherit;
  text-decoration: none;
}

.vk-address-fields-grid .form-row input.input-text {
  border: none;
  border-radius: 0;
  padding: 2px 14px 10px;
  font-size: 16px;
  color: #2e2b23;
  width: 100%;
  background: transparent;
  box-shadow: none;
  outline: none;
  height: auto;
  margin: 0;
}

.vk-address-fields-grid .form-row input.input-text:focus {
  box-shadow: none;
  outline: none;
}

.vk-address-fields-grid .form-row select {
  border: none;
  border-radius: 0;
  padding: 2px 14px 10px;
  font-size: 15px;
  color: #2e2b23;
  width: 100%;
  background: transparent;
  box-shadow: none;
  outline: none;
  margin: 0;
  -webkit-appearance: none;
  appearance: none;
}

.vk-address-fields-grid .form-row .select2-container {
  width: 100% !important;
}

.vk-address-fields-grid .form-row .select2-container .select2-selection--single {
  border: none;
  border-radius: 0;
  height: auto;
  padding: 2px 14px 10px;
  background: transparent;
  box-shadow: none;
}

.vk-address-fields-grid .form-row .select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0;
  font-size: 15px;
  color: #2e2b23;
  line-height: 1.5;
}

.vk-address-fields-grid .form-row .select2-container .select2-selection--single .select2-selection__arrow {
  top: 50%;
  right: 14px;
  transform: translateY(-50%);
}

.vk-address-fields-grid .form-row .woocommerce-input-wrapper {
  width: 100%;
}

.vk-edit-address-footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 28px;
}

.vk-save-changes-btn {
  background: #2e2b23;
  color: #fff;
  border: none;
  padding: 14px 32px;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.08em;
  cursor: pointer;
  transition: opacity 0.2s;
}

.vk-save-changes-btn:hover {
  opacity: 0.8;
}

.woocommerce-message {
  outline: none;
  margin-bottom: 20px;
  text-align: center;
}

.woocommerce-message a {
  font-weight: 500;
  color: #000;
  transition: all 0.3s;
}

.woocommerce-message a:hover {
  color: #2e2b23;
}

#add_payment_method input {
  border: 1px solid #d8d8d8 !important;
  padding: 8px 15px !important;
}

#wc-stripe-payment-method-instructions-card {
  margin-bottom: 15px;
  margin-top: 5px;
  font-size: 16px;
  color: #2e2b23b2;
}

#wc-stripe-payment-method-instructions-card strong {
  color: #2e2b23;
  font-weight: 500;
}

.wp-block-woocommerce-empty-cart-block {
  text-align: center;
}

.wp-block-woocommerce-empty-cart-block a {
  margin-top: 60px;
  padding: 18px 40px;
}

.wc-block-cart__empty-cart__title {
  font-size: 36px !important;
}

.wc-block-cart__empty-cart__title::before {
  font-size: 12px !important;
}

div#password_strength {
  text-align: left;
}

.mini-cart-item-card dl.variation dt,
.mini-cart-item-card dl.variation dd {
  display: inline-block;
  font-weight: 400;
}

/* ─────────────────────────────────────────────
Company Profile — My Account Tab
───────────────────────────────────────────── */
.vk-company-profile {
  font-family: inherit;
  color: #2e2b23;
}

.woocommerce-MyAccount-content h2.entry-title,
.woocommerce-MyAccount-content>h2:first-child {
  font-size: 24px;
  font-weight: 400;
  margin-bottom: 6px;
  color: #2e2b23;
}

.vk-cp-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #f8f8f8;
  padding: 16px 20px;
  margin-bottom: 12px;
}

.vk-cp-header-left {
  display: flex;
  align-items: center;
  gap: 16px;
}

.vk-cp-avatar {
  width: 64px;
  height: 64px;
  background: #e17100;
  color: #fff;
  font-size: 28px;
  font-weight: 400;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  letter-spacing: -0.45px;
  font-family: var(--font-heading);
}

.vk-cp-avatar--logo {
  background: transparent;
  padding: 0;
  overflow: hidden;
}

.vk-cp-avatar--logo img {
  width: 100%;
  height: 100% !important;
  object-fit: cover;
  display: block;
}

.vk-cp-logo-upload {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  padding: 20px 0 27px;
}

.vk-cp-logo-title {
  font-size: 16px;
  font-weight: 600;
  color: #2e2b23;
  margin-bottom: 5px;
  font-weight: 400;
}

.vk-cp-logo-hint {
  font-size: 12px;
  color: #000000;
  opacity: 0.6;
  margin-bottom: 15px;
}

.vk-cp-logo-input {
  display: none;
}

.vk-cp-upload-link {
  font-size: 16px;
  font-weight: 500;
  color: #2e2b23;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 4px;
  margin-top: 15px;
}

.vk-cp-hide-logo-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #2e2b23;
  cursor: pointer;
  margin-top: 15px;
}

.vk-cp-hide-logo-toggle input[type="checkbox"] {
  width: 15px;
  height: 15px;
  cursor: pointer;
  accent-color: #2e2b23;
  flex-shrink: 0;
}

.vk-cp-company-name {
  font-size: 20px;
  font-weight: 500;
  color: #101828;
  margin: 0 0 4px;
  line-height: 1.3;
  font-family: var(--font-body);
  text-transform: capitalize;
}

.vk-cp-status {
  font-size: 14px;
  color: #6a7282;
  font-weight: 400;
  line-height: 1.4;
}

.vk-cp-edit-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 16px;
  font-weight: 500;
  color: #000;
  text-decoration: none;
  letter-spacing: 0.32px;
  transition: all 0.3s;
  text-transform: uppercase;
}

.vk-cp-edit-btn:hover {
  color: #2e2b23;
}

.vk-cp-edit-btn svg {
  flex-shrink: 0;
}

.vk-cp-grid {
  gap: 0 15px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  overflow: hidden;
}

.vk-cp-field {
  padding: 20px 24px;
}

.vk-cp-form .vk-cp-field label,
.vk-cp-field-label {
  display: block;
  font-size: 12px;
  color: #000;
  margin-bottom: 3px;
  line-height: 1.3;
  opacity: 0.6;
}

.vk-cp-field-value {
  display: block;
  font-size: 16px;
  font-weight: 400;
  color: #2e2b23;
  line-height: 1.4;
}

/* ── Edit form ── */
.vk-cp-form .vk-cp-grid {
  gap: 24px 16px;
}

.vk-cp-form .vk-cp-field {
  border: 1px solid #d8d8d8;
  padding: 10px 15px 8px;
}

.vk-cp-form .vk-cp-field input {
  width: 100%;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
  font-size: 16px;
  font-weight: 400;
  color: #2e2b23;
  box-shadow: none;
  line-height: 1.2;
}

.vk-cp-form .vk-cp-field input:focus {
  outline: none;
  box-shadow: none;
}

/* Form action buttons */
.vk-cp-form-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 35px;
  justify-content: flex-end;
}

/* Payment Methods Table */
.account-payment-methods-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  color: #2e2b23;
}

.account-payment-methods-table thead tr {
  border-bottom: 1px solid #d8d8d8;
}

.account-payment-methods-table thead th {
  padding: 10px 15px;
  font-weight: 500;
  font-size: 16px;
  text-align: left;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.account-payment-methods-table tbody tr {
  border-bottom: 1px solid #d8d8d8;
}

.account-payment-methods-table tbody tr:last-child {
  border-bottom: none;
}

.account-payment-methods-table tbody td {
  padding: 16px 15px;
  vertical-align: middle;
}

.account-payment-methods-table .payment-method-actions {
  text-align: right;
}

.account-payment-methods-table .button.delete {
  display: inline-block;
  padding: 8px 18px;
  font-size: 13px;
  font-weight: 400;
  color: #2e2b23;
  border: 1px solid #d8d8d8;
  border-radius: 100px;
  text-decoration: none;
  transition: all 0.3s;
  margin: 0;
}

.account-payment-methods-table .button.delete:hover {
  background: #2e2b23;
  border-color: #2e2b23;
  color: #fff;
}

.wc-block-components-product-details {
  font-size: 14px !important;
}

.wc-block-components-product-badge.wc-block-components-sale-badge {
  display: none;
}

.wc-block-components-address-card address .wc-block-components-address-card__address-section--primary,
.wc-block-components-address-card address .wc-block-components-address-card__address-section--secondary {
  font-size: 14px;
}

/* ── AJAX Add-to-Cart button states ── */
.single_add_to_cart_button.vk-atc-loading,
.vk-addon-atc.vk-atc-loading,
#filter-drawer-atc.vk-atc-loading {
  opacity: 0.65;
  pointer-events: none;
  cursor: not-allowed;
}

.single_add_to_cart_button.vk-atc-success,
.vk-addon-atc.vk-atc-success,
#filter-drawer-atc.vk-atc-success {
  background-color: #2e7d32 !important;
  color: #fff !important;
}

.single_add_to_cart_button.vk-atc-error,
.vk-addon-atc.vk-atc-error {
  background-color: #c62828 !important;
  color: #fff !important;
}

.wc-block-checkout__payment-method .wc-block-components-checkout-step__description-payments-aligned {
  font-size: 16px !important;
}