body.napp-woo-luxury {
  --napp-woo-gold: #a77b3f;
  --napp-woo-champagne: #e7c98e;
  --napp-woo-dark: #160f1d;
  --napp-woo-ink: #282128;
  --napp-woo-muted: #746d73;
  --napp-woo-line: #e4dacc;
  --napp-woo-cream: #f7f1e8;
  --napp-woo-paper: #fffdf9;
  background: #faf7f2;
  color: var(--napp-woo-ink);
}

body.napp-woo-luxury .woocommerce,
body.napp-woo-luxury .wc-block-cart,
body.napp-woo-luxury .wc-block-checkout,
body.napp-woo-luxury .wp-block-woocommerce-cart,
body.napp-woo-luxury .wp-block-woocommerce-checkout {
  color: var(--napp-woo-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body.napp-woo-luxury .woocommerce h1,
body.napp-woo-luxury .woocommerce h2,
body.napp-woo-luxury .woocommerce h3,
body.napp-woo-luxury .woocommerce-products-header__title,
body.napp-woo-luxury .wc-block-cart__totals-title,
body.napp-woo-luxury .wc-block-components-title,
body.napp-woo-luxury .wc-block-components-checkout-step__heading,
body.napp-woo-luxury .wp-block-post-title {
  color: var(--napp-woo-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 500;
  letter-spacing: -.025em;
}

body.napp-woo-luxury .woocommerce-products-header,
body.napp-woo-luxury.woocommerce-account .entry-header,
body.napp-woo-luxury.woocommerce-cart .entry-header,
body.napp-woo-luxury.woocommerce-checkout .entry-header {
  position: relative;
  margin-bottom: 38px;
  padding: clamp(30px, 5vw, 58px);
  overflow: hidden;
  border: 1px solid rgba(231, 201, 142, .27);
  background: radial-gradient(circle at 90% 0, rgba(167, 123, 63, .25), transparent 30%), linear-gradient(135deg, #160f1d, #351b2a);
  color: #fff;
}

body.napp-woo-luxury .woocommerce-products-header::after,
body.napp-woo-luxury.woocommerce-account .entry-header::after,
body.napp-woo-luxury.woocommerce-cart .entry-header::after,
body.napp-woo-luxury.woocommerce-checkout .entry-header::after {
  content: "11 · 22 · 33";
  position: absolute;
  right: 28px;
  bottom: -9px;
  color: rgba(231, 201, 142, .09);
  font-family: Georgia, serif;
  font-size: clamp(2.8rem, 7vw, 6rem);
  letter-spacing: .08em;
}

body.napp-woo-luxury .woocommerce-products-header h1,
body.napp-woo-luxury.woocommerce-account .entry-header h1,
body.napp-woo-luxury.woocommerce-cart .entry-header h1,
body.napp-woo-luxury.woocommerce-checkout .entry-header h1 { position: relative; z-index: 1; margin: 0; color: #fff; font-size: clamp(2.2rem, 5vw, 4rem); }

body.napp-woo-luxury .woocommerce-breadcrumb { margin-bottom: 25px; color: var(--napp-woo-muted); font-size: .76rem; letter-spacing: .05em; text-transform: uppercase; }
body.napp-woo-luxury .woocommerce-breadcrumb a { color: var(--napp-woo-gold); text-decoration: none; }

body.napp-woo-luxury .woocommerce-result-count,
body.napp-woo-luxury .woocommerce-ordering { color: var(--napp-woo-muted); font-size: .82rem; }
body.napp-woo-luxury .woocommerce-ordering select { min-height: 44px; padding: 8px 34px 8px 12px; border: 1px solid var(--napp-woo-line); border-radius: 2px; background: var(--napp-woo-paper); color: var(--napp-woo-ink); }

body.napp-woo-luxury ul.products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
body.napp-woo-luxury ul.products::before,
body.napp-woo-luxury ul.products::after { display: none; }
body.napp-woo-luxury ul.products li.product { position: relative; display: flex; flex-direction: column; float: none !important; width: auto !important; min-width: 0; margin: 0 !important; padding: 13px 13px 19px; overflow: hidden; border: 1px solid var(--napp-woo-line); border-radius: 3px; background: var(--napp-woo-paper); box-shadow: 0 12px 38px rgba(39, 25, 35, .07); transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease; }
body.napp-woo-luxury ul.products li.product:hover { transform: translateY(-6px); border-color: rgba(167, 123, 63, .55); box-shadow: 0 24px 54px rgba(39, 25, 35, .13); }
body.napp-woo-luxury ul.products li.product a img { width: 100%; margin: 0 0 20px; aspect-ratio: 1 / 1; border-radius: 2px; background: var(--napp-woo-cream); object-fit: cover; }
body.napp-woo-luxury ul.products li.product .woocommerce-loop-product__title { padding: 0 8px; color: var(--napp-woo-dark); font-family: Georgia, serif; font-size: 1.35rem; font-weight: 500; line-height: 1.2; }
body.napp-woo-luxury ul.products li.product .price { padding: 0 8px; color: var(--napp-woo-gold); font-family: Georgia, serif; font-size: 1.22rem; font-weight: 500; }
body.napp-woo-luxury ul.products li.product .button { width: calc(100% - 16px); margin: auto 8px 0; }
body.napp-woo-luxury .onsale { top: 18px !important; right: 18px !important; left: auto !important; min-width: auto; min-height: auto; padding: 7px 11px; border-radius: 0; background: linear-gradient(135deg, var(--napp-woo-champagne), var(--napp-woo-gold)); color: #1a1118; font-size: .65rem; line-height: 1.2; letter-spacing: .08em; text-transform: uppercase; }

body.napp-woo-luxury .woocommerce a.button,
body.napp-woo-luxury .woocommerce button.button,
body.napp-woo-luxury .woocommerce input.button,
body.napp-woo-luxury .woocommerce #respond input#submit,
body.napp-woo-luxury .wc-block-components-button,
body.napp-woo-luxury .wp-element-button,
body.napp-woo-luxury .wc-block-cart__submit-button,
body.napp-woo-luxury .wc-block-components-checkout-place-order-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 13px 21px;
  border: 1px solid #b68a49;
  border-radius: 2px;
  background: linear-gradient(135deg, #1a1119, #3a1d2b);
  box-shadow: 0 10px 25px rgba(40, 21, 31, .18);
  color: #efd59d;
  font-size: .79rem;
  font-weight: 800;
  letter-spacing: .045em;
  text-decoration: none;
  text-transform: none;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
body.napp-woo-luxury .woocommerce a.button:hover,
body.napp-woo-luxury .woocommerce button.button:hover,
body.napp-woo-luxury .woocommerce input.button:hover,
body.napp-woo-luxury .wc-block-components-button:hover,
body.napp-woo-luxury .wp-element-button:hover { transform: translateY(-2px); background: linear-gradient(135deg, #2a1723, #4a2435); box-shadow: 0 15px 33px rgba(40, 21, 31, .26); color: #ffe7b5; }
body.napp-woo-luxury .woocommerce button.button.alt,
body.napp-woo-luxury .woocommerce a.button.alt,
body.napp-woo-luxury .woocommerce input.button.alt { background: linear-gradient(135deg, var(--napp-woo-champagne), var(--napp-woo-gold)); color: #1a1118; }
body.napp-woo-luxury .woocommerce button.button.alt:hover,
body.napp-woo-luxury .woocommerce a.button.alt:hover { background: linear-gradient(135deg, #f0dbad, #bb8a46); color: #1a1118; }

body.napp-woo-luxury div.product { padding: clamp(20px, 4vw, 48px); border: 1px solid var(--napp-woo-line); background: var(--napp-woo-paper); box-shadow: 0 25px 70px rgba(39, 25, 35, .09); }
body.napp-woo-luxury div.product div.images img { border: 1px solid var(--napp-woo-line); background: var(--napp-woo-cream); }
body.napp-woo-luxury div.product .product_title { color: var(--napp-woo-dark); font-family: Georgia, serif; font-size: clamp(2.2rem, 4vw, 3.8rem); font-weight: 500; line-height: 1.05; }
body.napp-woo-luxury div.product p.price,
body.napp-woo-luxury div.product span.price { color: var(--napp-woo-gold); font-family: Georgia, serif; font-size: 1.65rem; }
body.napp-woo-luxury div.product .woocommerce-product-details__short-description { color: var(--napp-woo-muted); line-height: 1.75; }
body.napp-woo-luxury div.product form.cart { display: flex; flex-wrap: wrap; gap: 10px; padding-top: 21px; border-top: 1px solid var(--napp-woo-line); }
body.napp-woo-luxury .quantity .qty { min-height: 50px; border: 1px solid var(--napp-woo-line); border-radius: 2px; background: #fff; }
body.napp-woo-luxury .product_meta { color: var(--napp-woo-muted); font-size: .78rem; }
body.napp-woo-luxury .product_meta a { color: var(--napp-woo-gold); }

body.napp-woo-luxury .woocommerce-tabs { margin-top: 45px; }
body.napp-woo-luxury .woocommerce-tabs ul.tabs { padding-left: 0 !important; border-bottom: 1px solid var(--napp-woo-line); }
body.napp-woo-luxury .woocommerce-tabs ul.tabs::before { border: 0 !important; }
body.napp-woo-luxury .woocommerce-tabs ul.tabs li { margin: 0 4px 0 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
body.napp-woo-luxury .woocommerce-tabs ul.tabs li::before,
body.napp-woo-luxury .woocommerce-tabs ul.tabs li::after { display: none; }
body.napp-woo-luxury .woocommerce-tabs ul.tabs li a { padding: 12px 17px !important; color: var(--napp-woo-muted) !important; font-size: .78rem; letter-spacing: .05em; }
body.napp-woo-luxury .woocommerce-tabs ul.tabs li.active a { border-bottom: 2px solid var(--napp-woo-gold); color: var(--napp-woo-dark) !important; }

body.napp-woo-luxury .woocommerce-message,
body.napp-woo-luxury .woocommerce-info,
body.napp-woo-luxury .woocommerce-error,
body.napp-woo-luxury .wc-block-components-notice-banner { padding: 17px 20px 17px 50px; border: 1px solid var(--napp-woo-line); border-top: 0; border-left: 3px solid var(--napp-woo-gold); border-radius: 2px; background: var(--napp-woo-paper); box-shadow: 0 9px 28px rgba(38, 25, 34, .06); color: var(--napp-woo-ink); }
body.napp-woo-luxury .woocommerce-message::before,
body.napp-woo-luxury .woocommerce-info::before { color: var(--napp-woo-gold); }
body.napp-woo-luxury .woocommerce-error { border-left-color: #944040; }

body.napp-woo-luxury .woocommerce form .form-row label,
body.napp-woo-luxury .wc-block-components-text-input label,
body.napp-woo-luxury .wc-block-components-combobox .wc-block-components-combobox-control label { color: #403840; font-size: .79rem; font-weight: 700; }
body.napp-woo-luxury .woocommerce form .form-row input.input-text,
body.napp-woo-luxury .woocommerce form .form-row textarea,
body.napp-woo-luxury .woocommerce form .form-row select,
body.napp-woo-luxury .select2-container .select2-selection--single,
body.napp-woo-luxury .wc-block-components-text-input input,
body.napp-woo-luxury .wc-block-components-combobox input,
body.napp-woo-luxury .wc-block-components-address-form input {
  min-height: 52px;
  padding: 12px 14px;
  border: 1px solid #d3c8b9;
  border-radius: 2px;
  background: #fff;
  color: var(--napp-woo-ink);
  box-shadow: none;
}
body.napp-woo-luxury .woocommerce form .form-row input.input-text:focus,
body.napp-woo-luxury .woocommerce form .form-row textarea:focus,
body.napp-woo-luxury .wc-block-components-text-input input:focus { border-color: var(--napp-woo-gold); box-shadow: 0 0 0 4px rgba(167, 123, 63, .1); outline: none; }

body.napp-woo-luxury table.shop_table,
body.napp-woo-luxury .woocommerce table.shop_table,
body.napp-woo-luxury .wc-block-cart-items,
body.napp-woo-luxury .wc-block-components-order-summary { overflow: hidden; border: 1px solid var(--napp-woo-line); border-radius: 2px; background: var(--napp-woo-paper); border-collapse: collapse; }
body.napp-woo-luxury table.shop_table th,
body.napp-woo-luxury table.shop_table td { padding: 16px; border-color: var(--napp-woo-line); }
body.napp-woo-luxury table.shop_table th { background: var(--napp-woo-cream); color: var(--napp-woo-dark); font-size: .76rem; letter-spacing: .04em; }
body.napp-woo-luxury table.shop_table a { color: var(--napp-woo-dark); font-weight: 700; text-decoration: none; }
body.napp-woo-luxury table.shop_table .product-price,
body.napp-woo-luxury table.shop_table .product-subtotal,
body.napp-woo-luxury .order-total { color: var(--napp-woo-gold); }
body.napp-woo-luxury .cart-collaterals .cart_totals,
body.napp-woo-luxury .woocommerce-checkout-review-order,
body.napp-woo-luxury .wc-block-cart__sidebar,
body.napp-woo-luxury .wc-block-checkout__sidebar { padding: 25px; border: 1px solid var(--napp-woo-line); background: linear-gradient(180deg, #fffdf9, #f7f0e6); box-shadow: 0 18px 50px rgba(39, 25, 35, .08); }

body.napp-woo-luxury form.checkout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(330px, .85fr); gap: 28px; }
body.napp-woo-luxury form.checkout #customer_details { grid-row: 1 / 3; width: auto; float: none; }
body.napp-woo-luxury form.checkout #customer_details .col-1,
body.napp-woo-luxury form.checkout #customer_details .col-2 { float: none; width: 100%; }
body.napp-woo-luxury form.checkout #order_review_heading,
body.napp-woo-luxury form.checkout #order_review { width: auto; float: none; }
body.napp-woo-luxury form.checkout #order_review_heading { grid-column: 2; grid-row: 1; margin: 0; padding: 22px 25px 0; background: var(--napp-woo-paper); }
body.napp-woo-luxury form.checkout #order_review { grid-column: 2; grid-row: 2; }
body.napp-woo-luxury #payment { border: 1px solid var(--napp-woo-line); border-radius: 2px; background: #f5eee4; }
body.napp-woo-luxury #payment ul.payment_methods { border-bottom-color: var(--napp-woo-line); }
body.napp-woo-luxury #payment div.payment_box { background: #ebe0d2; color: var(--napp-woo-ink); }
body.napp-woo-luxury #payment div.payment_box::before { border-bottom-color: #ebe0d2; }

body.napp-woo-luxury .woocommerce-MyAccount-navigation { width: 27%; padding: 12px; border: 1px solid var(--napp-woo-line); background: var(--napp-woo-dark); }
body.napp-woo-luxury .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; }
body.napp-woo-luxury .woocommerce-MyAccount-navigation li { border-bottom: 1px solid rgba(255, 255, 255, .09); }
body.napp-woo-luxury .woocommerce-MyAccount-navigation li:last-child { border-bottom: 0; }
body.napp-woo-luxury .woocommerce-MyAccount-navigation a { display: block; padding: 14px 15px; color: rgba(255, 255, 255, .72); font-size: .82rem; text-decoration: none; }
body.napp-woo-luxury .woocommerce-MyAccount-navigation li.is-active a,
body.napp-woo-luxury .woocommerce-MyAccount-navigation a:hover { background: rgba(231, 201, 142, .09); color: var(--napp-woo-champagne); }
body.napp-woo-luxury .woocommerce-MyAccount-content { width: 69%; padding: clamp(22px, 4vw, 40px); border: 1px solid var(--napp-woo-line); background: var(--napp-woo-paper); }
body.napp-woo-luxury .woocommerce-MyAccount-content a { color: var(--napp-woo-gold); }

body.napp-woo-luxury .wc-block-components-product-name { color: var(--napp-woo-dark); font-family: Georgia, serif; font-size: 1.06rem; text-decoration: none; }
body.napp-woo-luxury .wc-block-components-product-price,
body.napp-woo-luxury .wc-block-formatted-money-amount { color: var(--napp-woo-gold); }
body.napp-woo-luxury .wc-block-components-sidebar-layout { gap: 28px; }
body.napp-woo-luxury .wc-block-components-checkout-step { margin-bottom: 17px; padding: 25px; border: 1px solid var(--napp-woo-line); background: var(--napp-woo-paper); }
body.napp-woo-luxury .wc-block-components-checkout-step__heading { margin-bottom: 18px; }
body.napp-woo-luxury .wc-block-components-totals-wrapper { border-color: var(--napp-woo-line); }

.napp-payment-status {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) minmax(240px, .72fr);
  gap: 24px;
  align-items: center;
  margin: 28px 0;
  padding: clamp(24px, 4vw, 38px);
  overflow: hidden;
  border: 1px solid rgba(167, 123, 63, .38);
  border-radius: 6px;
  background: radial-gradient(circle at 94% 8%, rgba(231, 201, 142, .24), transparent 34%), linear-gradient(135deg, #fffdf9, #f5ead9);
  box-shadow: 0 22px 58px rgba(39, 25, 35, .1);
  color: var(--napp-woo-ink, #282128);
}
.napp-payment-status::after { content: "11 · 22 · 33"; position: absolute; right: 18%; bottom: -24px; color: rgba(167, 123, 63, .07); font-family: Georgia, serif; font-size: 4.6rem; white-space: nowrap; }
.napp-payment-status__seal { position: relative; z-index: 1; display: grid; place-items: center; width: 72px; height: 72px; border: 1px solid rgba(231, 201, 142, .45); border-radius: 50%; background: #21151f; box-shadow: inset 0 0 0 7px rgba(231, 201, 142, .07); }
.napp-payment-status__seal span { width: 18px; height: 18px; border: 2px solid rgba(231, 201, 142, .34); border-top-color: #e7c98e; border-radius: 50%; animation: napp-payment-spin 1s linear infinite; }
.napp-payment-status[data-state="ready"] .napp-payment-status__seal span { width: 20px; height: 12px; border: 0; border-bottom: 2px solid #e7c98e; border-left: 2px solid #e7c98e; border-radius: 0; animation: none; transform: rotate(-45deg); }
.napp-payment-status[data-state="failed"] .napp-payment-status__seal span { width: 20px; height: 2px; border: 0; border-radius: 0; background: #e7c98e; animation: none; transform: rotate(-45deg); }
.napp-payment-status__copy, .napp-payment-status__fallback { position: relative; z-index: 1; }
.napp-payment-status__copy > span { color: var(--napp-woo-gold, #a77b3f); font-size: .68rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.napp-payment-status__copy h2 { margin: 6px 0 7px !important; color: var(--napp-woo-dark, #160f1d); font-size: clamp(1.55rem, 3vw, 2.3rem); line-height: 1.1; }
.napp-payment-status__copy p { margin: 0 0 8px; color: var(--napp-woo-muted, #746d73); }
.napp-payment-status__copy small { color: #785b31; font-weight: 700; }
.napp-payment-status__fallback { padding-left: 22px; border-left: 1px solid rgba(167, 123, 63, .28); }
.napp-payment-status__fallback strong, .napp-payment-status__fallback span { display: block; }
.napp-payment-status__fallback strong { margin-bottom: 5px; color: var(--napp-woo-dark, #160f1d); }
.napp-payment-status__fallback span { color: var(--napp-woo-muted, #746d73); font-size: .78rem; line-height: 1.55; }
@keyframes napp-payment-spin { to { transform: rotate(360deg); } }

@media (max-width: 900px) {
  body.napp-woo-luxury ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.napp-woo-luxury form.checkout { display: block; }
  body.napp-woo-luxury form.checkout #order_review_heading { margin-top: 25px; }
  body.napp-woo-luxury .woocommerce-MyAccount-navigation,
  body.napp-woo-luxury .woocommerce-MyAccount-content { float: none; width: 100%; }
  body.napp-woo-luxury .woocommerce-MyAccount-navigation { margin-bottom: 20px; }
  .napp-payment-status { grid-template-columns: auto 1fr; }
  .napp-payment-status__fallback { grid-column: 1 / -1; padding: 18px 0 0; border-top: 1px solid rgba(167, 123, 63, .24); border-left: 0; }
}

@media (max-width: 560px) {
  body.napp-woo-luxury { overflow-x: hidden; }
  body.napp-woo-luxury .woocommerce,
  body.napp-woo-luxury .wc-block-cart,
  body.napp-woo-luxury .wc-block-checkout { width: 100%; max-width: none; }
  body.napp-woo-luxury ul.products { grid-template-columns: 1fr; }
  body.napp-woo-luxury .woocommerce-products-header,
  body.napp-woo-luxury.woocommerce-account .entry-header,
  body.napp-woo-luxury.woocommerce-cart .entry-header,
  body.napp-woo-luxury.woocommerce-checkout .entry-header { padding: 28px 20px; }
  body.napp-woo-luxury .woocommerce-products-header::after,
  body.napp-woo-luxury.woocommerce-account .entry-header::after,
  body.napp-woo-luxury.woocommerce-cart .entry-header::after,
  body.napp-woo-luxury.woocommerce-checkout .entry-header::after { display: none; }
  body.napp-woo-luxury div.product { padding: 16px; }
  body.napp-woo-luxury div.product form.cart { display: grid; grid-template-columns: 74px 1fr; }
  body.napp-woo-luxury div.product form.cart .single_add_to_cart_button { width: 100%; }
  body.napp-woo-luxury .cart-collaterals .cart_totals,
  body.napp-woo-luxury .woocommerce-checkout-review-order,
  body.napp-woo-luxury .wc-block-cart__sidebar,
  body.napp-woo-luxury .wc-block-checkout__sidebar,
  body.napp-woo-luxury .wc-block-components-checkout-step { padding: 18px 14px; }
  body.napp-woo-luxury .woocommerce a.button,
  body.napp-woo-luxury .woocommerce button.button,
  body.napp-woo-luxury .woocommerce input.button,
  body.napp-woo-luxury .wc-block-components-button,
  body.napp-woo-luxury .wc-block-cart__submit-button,
  body.napp-woo-luxury .wc-block-components-checkout-place-order-button { width: 100%; min-height: 56px; padding: 13px 12px; text-align: center; }
  body.napp-woo-luxury .woocommerce form .form-row input.input-text,
  body.napp-woo-luxury .woocommerce form .form-row textarea,
  body.napp-woo-luxury .woocommerce form .form-row select,
  body.napp-woo-luxury .wc-block-components-text-input input,
  body.napp-woo-luxury .wc-block-components-combobox input { min-height: 54px; font-size: 16px; }
  body.napp-woo-luxury table.shop_table th,
  body.napp-woo-luxury table.shop_table td { padding: 11px 8px; }
  .napp-payment-status { grid-template-columns: 1fr; gap: 15px; padding: 23px 18px; text-align: center; }
  .napp-payment-status__seal { margin: 0 auto; }
  .napp-payment-status__fallback { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  body.napp-woo-luxury * { scroll-behavior: auto !important; transition: none !important; }
  .napp-payment-status__seal span { animation: none; }
}
