@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/* ############################################################
   DEZINESQUAD — SITE CSS (single file for Additional CSS)

   0) Tokens
   1) Our Work / Samples — staircase gallery
   2) Checkout  (.woocommerce-checkout)
   3) Order received / Thank you  (.woocommerce-order)
   4) Pay for order / Razorpay  (body.woocommerce-order-pay)
   5) Global / other pages
   6) Responsive  (1024 → 900 → 767)

   This must be the ONLY checkout CSS. Remove any other
   checkout rules from Site Settings / Customize.
   ############################################################ */


/* ============================================================
   0) TOKENS
   ============================================================ */
:root{
  --ds-surface:#0e0e0e;
  --ds-surface-2:#151515;
  --ds-line:#262626;
  --ds-text:#ffffff;
  --ds-muted:#9a9a9a;
  --ds-lime:#cdf000;
  --ds-pink:#ff2e9a;
  --ds-radius:14px;
}


/* ============================================================
   1) OUR WORK / SAMPLES — staircase gallery
   ============================================================ */
.elementor-element-0424b42{ --dzs-step:90px; }
.elementor-element-0424b42 .e-gallery-item{
  margin-left:0 !important;
  margin-top:calc(var(--column) * var(--dzs-step)) !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.elementor-element-0424b42 .e-gallery-container{ border-bottom:calc(var(--dzs-step) * 2) solid transparent; }


/* ============================================================
   2) CHECKOUT  (scoped to .woocommerce-checkout)
   ============================================================ */
.woocommerce-checkout{
  --dz-green:#c4f000;
  --dz-text:#ececf1;
  --dz-muted:#bdbdbd;
  --dz-line:rgba(255,255,255,.14);
  --dz-card:rgba(255,255,255,.035);
  --dz-pink1:#ff54bd;
  --dz-pink2:#ff1f8e;
  --dz-plan-desc:"The Starter Plan includes all static design services such as social media graphics, presentations, banners, flyers, brochures, and backgrounds.";
  background:#000 !important;
  color:#fff;
}
.woocommerce-checkout .e-checkout__container,
.woocommerce-checkout .e-checkout__container input,
.woocommerce-checkout .e-checkout__container select,
.woocommerce-checkout .e-checkout__container textarea,
.woocommerce-checkout .e-checkout__container button,
.woocommerce-checkout .select2-container,
.woocommerce-checkout .select2-dropdown{ font-family:'Poppins',sans-serif; }

/* ---- LAYOUT: billing left | summary top-right | payment full-width bottom ---- */
.woocommerce-checkout .e-checkout__column-end,
.woocommerce-checkout .e-checkout__column-inner{ display:contents; }
.woocommerce-checkout .e-checkout__container{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 460px;
  grid-template-areas:"bill summary" "pay pay";
  gap:40px 48px; align-items:start; color:var(--dz-text);
}
.woocommerce-checkout .e-checkout__column-start{ grid-area:bill; min-width:0; }
.woocommerce-checkout .e-checkout__order_review{ grid-area:summary; }
.woocommerce-checkout .e-checkout__order_review-2{ grid-area:pay; margin-top:0; }

/* ---- billing: hidden labels + underline inputs ---- */
.woocommerce-checkout .woocommerce-billing-fields > h3{
  color:var(--dz-green); font-weight:800; font-size:30px; margin:0 0 24px;
}
.woocommerce-checkout .woocommerce-billing-fields .form-row label{ display:none !important; }
.woocommerce-checkout .form-row{ margin:0 0 18px !important; padding:0 !important; }
.woocommerce-checkout .input-text,
.woocommerce-checkout textarea.input-text,
.woocommerce-checkout .select2-selection--single{
  background:transparent !important; border:0 !important;
  border-bottom:1px solid rgba(255,255,255,.18) !important; border-radius:0 !important;
  color:#fff !important; padding:6px 2px 12px !important; font-size:16px !important;
  box-shadow:none !important; width:100%; height:auto !important; transition:border-color .2s ease;
}
.woocommerce-checkout .input-text::placeholder,
.woocommerce-checkout textarea::placeholder{ color:#9a9a9a; opacity:1; }
.woocommerce-checkout .input-text:focus,
.woocommerce-checkout textarea:focus{ outline:0; border-bottom-color:var(--dz-green) !important; }

/* ---- select2 (Country / State) ---- */
.woocommerce-checkout .select2-selection--single .select2-selection__rendered{ color:#fff !important; line-height:normal !important; padding-left:0 !important; }
.woocommerce-checkout .select2-selection--single .select2-selection__arrow{ top:4px !important; }
.woocommerce-checkout .select2-selection--single .select2-selection__arrow b{ border-color:#9a9a9a transparent transparent transparent !important; }
.woocommerce-checkout .select2-dropdown{ background:#141414 !important; border:1px solid rgba(255,255,255,.15) !important; border-radius:10px !important; overflow:hidden; }
.woocommerce-checkout .select2-search--dropdown .select2-search__field{ background:#1f1f1f !important; border:1px solid rgba(255,255,255,.15) !important; border-radius:6px !important; color:#fff !important; padding:8px 10px !important; }
.woocommerce-checkout .select2-results__option{ color:#cfcfcf !important; background:#141414 !important; padding:10px 14px !important; }
.woocommerce-checkout .select2-container--default .select2-results__option--highlighted{ background:var(--dz-green) !important; color:#000 !important; font-weight:600; }
.woocommerce-checkout .select2-container--default .select2-results__option[aria-selected="true"]{ background:#2a2a2a !important; color:#fff !important; }
.woocommerce-checkout .select2-results__options::-webkit-scrollbar{ width:8px; }
.woocommerce-checkout .select2-results__options::-webkit-scrollbar-thumb{ background:rgba(255,255,255,.2); border-radius:8px; }
.woocommerce-checkout .select2-results__options::-webkit-scrollbar-track{ background:#141414; }

/* hide the "added to cart" notice */
.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message{ display:none !important; }

/* ---- ORDER SUMMARY card ---- */
.woocommerce-checkout .e-checkout__order_review{
  background:linear-gradient(180deg,#141416 0%,#0a0a0c 100%) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:20px !important; padding:28px 30px !important;
  box-shadow:0 24px 60px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.woocommerce-checkout #order_review_heading{ color:var(--dz-green) !important; font-weight:800; font-size:26px; margin:0 0 20px; }
.woocommerce-checkout .e-checkout__order_review .woocommerce-checkout-review-order-table,
.woocommerce-checkout .e-checkout__order_review .woocommerce-checkout-review-order-table tbody,
.woocommerce-checkout .e-checkout__order_review .woocommerce-checkout-review-order-table tfoot{
  display:block !important; width:100% !important; float:none !important; max-width:none !important;
}
.woocommerce-checkout .e-checkout__order_review .woocommerce-checkout-review-order-table thead{ display:none !important; }
.woocommerce-checkout .e-checkout__order_review .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .e-checkout__order_review .woocommerce-checkout-review-order-table td{
  border:0 !important; background:transparent !important; padding:0 !important; text-align:left !important; float:none !important;
}

/* product row -> plan title + stepper on one row, description below */
.woocommerce-checkout .e-checkout__order_review .cart_item{
  display:block !important; width:100% !important; float:none !important;
  padding:0 0 4px !important; margin:0 !important;
}
.woocommerce-checkout .e-checkout__order_review .cart_item .product-name{
  display:flex !important; align-items:center !important; flex-wrap:wrap !important; gap:14px !important;
  float:none !important; clear:both !important;
  width:100% !important; max-width:none !important; white-space:normal !important;
  color:#fff !important; font-size:21px !important; font-weight:500 !important; line-height:1.3 !important;
}
.woocommerce-checkout .e-checkout__order_review .cart_item .product-name::after{
  content:var(--dz-plan-desc) !important;
  display:block !important; width:100% !important; float:none !important; margin-top:10px !important;
  color:var(--dz-muted) !important; font-size:14px !important; font-weight:400 !important; line-height:1.55 !important; white-space:normal !important;
}
/* hide the stray line total under the description */
.woocommerce-checkout .e-checkout__order_review .cart_item .product-total{ display:none !important; }

/* totals rows */
.woocommerce-checkout .e-checkout__order_review .cart-subtotal,
.woocommerce-checkout .e-checkout__order_review .tax-total,
.woocommerce-checkout .e-checkout__order_review .order-total{
  display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important;
  justify-content:space-between !important; align-items:baseline !important; gap:16px !important; width:100% !important;
}
.woocommerce-checkout .e-checkout__order_review .cart-subtotal{ border-top:1px solid rgba(255,255,255,.22) !important; margin-top:20px !important; padding-top:20px !important; }
.woocommerce-checkout .e-checkout__order_review .tax-total{ margin-top:8px !important; }
.woocommerce-checkout .e-checkout__order_review .order-total{ border-top:1px solid rgba(255,255,255,.22) !important; margin-top:18px !important; padding-top:18px !important; }
.woocommerce-checkout .e-checkout__order_review .tax-total th{ color:var(--dz-text) !important; font-weight:400; font-size:16px !important; display:block !important; width:auto !important; margin:0 !important; }
/* rename "Subtotal" -> "Price" */
.woocommerce-checkout .e-checkout__order_review .cart-subtotal th{ font-size:0 !important; color:transparent !important; font-weight:400 !important; display:block !important; width:auto !important; margin:0 !important; line-height:1.4 !important; }
.woocommerce-checkout .e-checkout__order_review .cart-subtotal th::after{ content:"Price"; font-size:16px !important; color:var(--dz-text) !important; font-weight:400 !important; }
.woocommerce-checkout .e-checkout__order_review .cart-subtotal td,
.woocommerce-checkout .e-checkout__order_review .tax-total td{ color:#fff !important; font-size:16px; display:block !important; width:auto !important; text-align:right !important; margin:0 !important; }
.woocommerce-checkout .e-checkout__order_review .order-total th{ color:#fff !important; font-weight:700; font-size:18px; display:block !important; width:auto !important; margin:0 !important; }
.woocommerce-checkout .order-total td,
.woocommerce-checkout .order-total td strong,
.woocommerce-checkout .order-total .woocommerce-Price-amount{ color:#fff; font-weight:700; font-size:18px; }

/* ---- quantity stepper ---- */
.woocommerce-checkout .dz-qty{ display:inline-flex !important; align-items:center; gap:8px; margin:0; }
.woocommerce-checkout .dz-qty-btn{
  width:30px !important; height:30px !important; min-width:0 !important; padding:0 !important;
  display:inline-flex !important; align-items:center; justify-content:center;
  border:1px solid rgba(255,255,255,.28) !important; border-radius:8px !important;
  background:transparent !important; color:#fff !important;
  font-size:18px !important; line-height:1 !important; cursor:pointer;
  box-shadow:none !important; transition:border-color .15s, color .15s;
}
.woocommerce-checkout .dz-qty-btn:hover{ border-color:var(--dz-green) !important; color:var(--dz-green) !important; }
.woocommerce-checkout .dz-qty-num{ min-width:20px; text-align:center; font-size:16px; font-weight:600; color:#fff; }
.woocommerce-checkout .dz-remove{ color:#ff6b85 !important; font-size:18px !important; line-height:1; text-decoration:none !important; margin-left:2px; }
.woocommerce-checkout .dz-remove:hover{ color:#ff3355 !important; }

/* ---- error / validation notices ---- */
.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-NoticeGroup > ul,
.woocommerce-checkout ul.woocommerce-error{
  background:rgba(255,64,96,.08) !important;
  border:1px solid rgba(255,80,110,.45) !important;
  border-left:4px solid #ff4d6d !important;
  border-radius:12px !important;
  color:var(--dz-text) !important;
  padding:16px 20px 16px 22px !important;
  margin:0 0 26px !important;
  list-style:none !important;
  box-shadow:none !important;
}
.woocommerce-checkout .woocommerce-error li{ color:#ffb3c1 !important; margin:2px 0 !important; }
.woocommerce-checkout .woocommerce-error li strong{ color:#ff6b85 !important; font-weight:700 !important; }
.woocommerce-checkout .woocommerce-error::before,
.woocommerce-checkout .woocommerce-error li::before{ color:#ff4d6d !important; background:transparent !important; }
.woocommerce-checkout .woocommerce-error a,
.woocommerce-checkout .woocommerce-info a{ color:var(--dz-green) !important; }

/* per-field "is a required field" text */
.woocommerce-checkout .form-row .woocommerce-error,
.woocommerce-checkout .form-row > .woocommerce-error,
.woocommerce-checkout .validate-required.woocommerce-invalid > .woocommerce-error,
.woocommerce-checkout .field-validation-error,
.woocommerce-checkout .wc-block-components-validation-error{
  background:transparent !important; border:0 !important; padding:4px 0 0 !important; margin:4px 0 0 !important;
  color:#ff6b85 !important; font-size:13px !important; border-radius:0 !important;
}
.woocommerce-checkout .woocommerce-invalid input.input-text,
.woocommerce-checkout .woocommerce-invalid textarea.input-text,
.woocommerce-checkout .woocommerce-invalid .select2-selection--single{ border-bottom-color:#ff4d6d !important; }

/* ---- PAYMENT / PLACE ORDER card ---- */
.woocommerce-checkout .e-checkout__order_review-2{
  background:var(--dz-card); border:1px solid var(--dz-line); border-radius:16px; padding:24px 26px;
}
.woocommerce-checkout #payment{ background:transparent !important; border:0; padding:0; }
.woocommerce-checkout #payment ul.payment_methods{ border:0; list-style:none; margin:0 0 14px; padding:0; }
.woocommerce-checkout .payment_method_razorpay > label{ color:var(--dz-text); font-weight:600; display:flex; align-items:center; gap:10px; }
.woocommerce-checkout #payment .payment_box{ background:transparent !important; color:var(--dz-muted); font-size:13px; }
.woocommerce-checkout #payment .payment_box::before{ display:none !important; }
.woocommerce-checkout .woocommerce-privacy-policy-text p{ color:var(--dz-muted); font-size:13px; margin:6px 0 16px; }
.woocommerce-checkout .woocommerce-privacy-policy-text a{ color:var(--dz-green); font-weight:600; }
.woocommerce-checkout #place_order{
  width:100%; border:0 !important; border-radius:999px !important;
  padding:16px 24px !important; font-size:18px; font-weight:700; color:#fff !important; cursor:pointer;
  background:linear-gradient(90deg,var(--dz-pink1),var(--dz-pink2)) !important;
  box-shadow:0 10px 30px rgba(255,31,142,.35); transition:transform .15s ease, box-shadow .15s ease;
}
.woocommerce-checkout #place_order:hover{ transform:translateY(-2px); box-shadow:0 14px 38px rgba(255,31,142,.5); }


/* ============================================================
   3) ORDER RECEIVED / THANK YOU  (.woocommerce-order)
   ============================================================ */
.woocommerce-order{
  max-width:1080px; margin:0 auto; padding:48px 20px 80px; color:var(--ds-text);
}

/* ---- success message ---- */
.woocommerce-order .woocommerce-notice--success,
.woocommerce-order .woocommerce-thankyou-order-received{
  position:relative;
  background:linear-gradient(135deg,rgba(205,240,0,.10),rgba(255,46,154,.06));
  border:1px solid rgba(205,240,0,.35);
  border-radius:var(--ds-radius);
  padding:26px 28px 26px 66px; margin:0 0 32px;
  font-size:17px; line-height:1.6; color:var(--ds-text);
}
.woocommerce-order .woocommerce-thankyou-order-received::before{
  content:""; position:absolute; left:24px; top:50%; transform:translateY(-50%);
  width:28px; height:28px; border-radius:50%;
  background:var(--ds-lime) 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.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center / 15px 15px no-repeat;
}

/* ---- order summary strip ---- */
.woocommerce-order ul.woocommerce-order-overview{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:1px;
  list-style:none; margin:0 0 44px; padding:0;
  background:var(--ds-line); border:1px solid var(--ds-line);
  border-radius:var(--ds-radius); overflow:hidden;
}
.woocommerce-order ul.woocommerce-order-overview li{
  background:var(--ds-surface); margin:0; padding:20px 22px; border:0; float:none;
  text-transform:uppercase; font-size:11px; letter-spacing:.14em; color:var(--ds-muted);
}
.woocommerce-order ul.woocommerce-order-overview li strong{
  display:block; margin-top:8px; font-size:17px; letter-spacing:0; text-transform:none;
  color:var(--ds-text); word-break:break-word;
}
.woocommerce-order ul.woocommerce-order-overview li.woocommerce-order-overview__total strong{ color:var(--ds-lime); }

/* ---- section headings (cancels the theme's white gradient band) ---- */
.woocommerce-order .woocommerce-order-details__title,
.woocommerce-order .woocommerce-column__title,
.woocommerce-order .woocommerce-customer-details h2,
.woocommerce-order .woocommerce-order-details h2,
.woocommerce-order section > h2{
  background:none !important; background-image:none !important; background-color:transparent !important;
  box-shadow:none !important; border:0 !important; border-radius:0 !important;
  position:relative; display:block; width:auto;
  font-size:22px; font-weight:600; line-height:1.3;
  color:var(--ds-text) !important;
  margin:0 0 18px !important; padding:0 0 0 16px !important; text-align:left;
}
.woocommerce-order .woocommerce-order-details__title::before,
.woocommerce-order .woocommerce-column__title::before,
.woocommerce-order .woocommerce-customer-details h2::before,
.woocommerce-order .woocommerce-order-details h2::before{
  content:""; position:absolute; left:0; top:3px; bottom:3px;
  width:4px; border-radius:4px; background:var(--ds-lime);
}

/* ---- order details table ---- */
.woocommerce-order .woocommerce-order-details,
.woocommerce-order .woocommerce-customer-details{ margin-bottom:44px; }

.woocommerce-order table.woocommerce-table--order-details,
.woocommerce-order table.woocommerce-table--order-downloads{
  width:100%; background:var(--ds-surface);
  border:1px solid var(--ds-line); border-radius:var(--ds-radius);
  border-collapse:separate; border-spacing:0; overflow:hidden; margin:0;
}
.woocommerce-order table.woocommerce-table--order-details th,
.woocommerce-order table.woocommerce-table--order-details td,
.woocommerce-order table.woocommerce-table--order-downloads th,
.woocommerce-order table.woocommerce-table--order-downloads td{
  padding:16px 22px; border:0; border-bottom:1px solid var(--ds-line);
  text-align:left; vertical-align:top; font-size:15px; color:var(--ds-text); background:transparent;
}
.woocommerce-order table.woocommerce-table--order-details thead th{
  background:var(--ds-surface-2); text-transform:uppercase; font-size:11px;
  letter-spacing:.14em; color:var(--ds-muted); font-weight:600;
}
.woocommerce-order table.woocommerce-table--order-details th:last-child,
.woocommerce-order table.woocommerce-table--order-details td:last-child{ text-align:right; white-space:nowrap; }
.woocommerce-order table.woocommerce-table--order-details tbody a{
  color:var(--ds-lime); text-decoration:none; font-weight:500;
  border-bottom:1px solid transparent; transition:border-color .2s ease;
}
.woocommerce-order table.woocommerce-table--order-details tbody a:hover{ border-bottom-color:var(--ds-lime); }
.woocommerce-order table.woocommerce-table--order-details .product-quantity{ color:var(--ds-muted); }
.woocommerce-order table.woocommerce-table--order-details tfoot th{
  background:transparent; color:var(--ds-muted); font-weight:500;
  text-transform:none; letter-spacing:0; font-size:15px;
}
.woocommerce-order table.woocommerce-table--order-details tfoot td{ color:var(--ds-muted); }
.woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child td{ border-bottom:0; }
/* grand total row (assumes Payment method is the last tfoot row) */
.woocommerce-order table.woocommerce-table--order-details tfoot tr:nth-last-child(2) th,
.woocommerce-order table.woocommerce-table--order-details tfoot tr:nth-last-child(2) td{
  background:var(--ds-surface-2); font-size:18px; font-weight:600; color:var(--ds-text);
}
.woocommerce-order table.woocommerce-table--order-details tfoot tr:nth-last-child(2) td .amount{ color:var(--ds-lime); }

/* ---- billing / shipping address ---- */
.woocommerce-order .woocommerce-customer-details .woocommerce-columns{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:24px; margin:0;
}
.woocommerce-order .woocommerce-customer-details .woocommerce-column{ width:auto; float:none; padding:0; }
.woocommerce-order .woocommerce-customer-details address{
  background:var(--ds-surface); border:1px solid var(--ds-line); border-radius:var(--ds-radius);
  padding:26px 28px; font-style:normal; line-height:1.9; color:var(--ds-text); font-size:15px;
}
.woocommerce-order .woocommerce-customer-details address p{ margin:0; }
.woocommerce-order .woocommerce-customer-details--phone,
.woocommerce-order .woocommerce-customer-details--email{
  position:relative; margin-top:10px !important; padding-left:28px;
  color:var(--ds-muted); font-size:14px; word-break:break-word;
}
.woocommerce-order .woocommerce-customer-details--phone::before,
.woocommerce-order .woocommerce-customer-details--email::before{
  content:""; position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:16px; height:16px; background-size:16px 16px; background-repeat:no-repeat; background-position:center;
}
.woocommerce-order .woocommerce-customer-details--phone::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff2e9a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.68 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.32 1.85.55 2.81.68A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E");
}
.woocommerce-order .woocommerce-customer-details--email::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff2e9a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3Cpath d='m22 7-10 6L2 7'/%3E%3C/svg%3E");
}
.woocommerce-order .woocommerce-customer-details--phone a,
.woocommerce-order .woocommerce-customer-details--email a{ color:var(--ds-muted); text-decoration:none; }
.woocommerce-order .woocommerce-customer-details--phone a:hover,
.woocommerce-order .woocommerce-customer-details--email a:hover{ color:var(--ds-lime); }

/* ---- buttons ---- */
.woocommerce-order .button,
.woocommerce-order .woocommerce-MyAccount-downloads-file{
  display:inline-block; background:var(--ds-lime); color:#000 !important;
  border:0; border-radius:999px; padding:12px 26px; font-weight:600; text-decoration:none;
  transition:transform .2s ease, box-shadow .2s ease;
}
.woocommerce-order .button:hover{ transform:translateY(-2px); box-shadow:0 8px 24px rgba(205,240,0,.25); }
.woocommerce-order .button:focus-visible{ outline:2px solid var(--ds-pink); outline-offset:3px; }


/* ============================================================
   4) PAY FOR ORDER / RAZORPAY  (body.woocommerce-order-pay)
   ============================================================ */
body.woocommerce-order-pay .woocommerce,
body.woocommerce-order-pay .entry-content > .woocommerce{
  max-width:720px; margin:0 auto; padding:48px 20px 96px; color:var(--ds-text);
}

/* ---- order summary strip ---- */
body.woocommerce-order-pay ul.order_details,
body.woocommerce-order-pay ul.woocommerce-order-overview{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:1px;
  list-style:none; margin:0 0 32px !important; padding:0;
  background:var(--ds-line); border:1px solid var(--ds-line);
  border-radius:var(--ds-radius); overflow:hidden;
}
body.woocommerce-order-pay ul.order_details li{
  background:var(--ds-surface); margin:0 !important; padding:18px 20px !important;
  border:0 !important; float:none !important; list-style:none;
  text-transform:uppercase; font-size:11px; letter-spacing:.14em; color:var(--ds-muted);
}
body.woocommerce-order-pay ul.order_details li strong{
  display:block; margin-top:8px; font-size:16px; letter-spacing:0; text-transform:none;
  color:var(--ds-text); word-break:break-word;
}
body.woocommerce-order-pay ul.order_details li.total strong,
body.woocommerce-order-pay ul.order_details li.woocommerce-order-overview__total strong{ color:var(--ds-lime); }

/* ---- instruction text ---- */
body.woocommerce-order-pay #razorpay_wc_form + p,
body.woocommerce-order-pay .woocommerce > p,
body.woocommerce-order-pay form.razorpay-form + p{
  background:var(--ds-surface); border:1px solid var(--ds-line);
  border-left:3px solid var(--ds-lime); border-radius:var(--ds-radius);
  padding:20px 24px; margin:0 0 24px; font-size:15px; line-height:1.6; color:var(--ds-text);
}

/* ---- Razorpay action buttons ---- */
body.woocommerce-order-pay #btn-razorpay,
body.woocommerce-order-pay #btn-razorpay-cancel{
  display:inline-block; min-width:160px; padding:15px 34px; border-radius:999px;
  font-size:15px; font-weight:600; line-height:1; cursor:pointer;
  text-align:center; text-decoration:none;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}
body.woocommerce-order-pay #btn-razorpay{
  background:var(--ds-lime) !important; color:#000 !important;
  border:2px solid var(--ds-lime) !important; margin-right:12px;
}
body.woocommerce-order-pay #btn-razorpay:hover{ transform:translateY(-2px); box-shadow:0 10px 28px rgba(205,240,0,.28); }
body.woocommerce-order-pay #btn-razorpay-cancel{
  background:transparent !important; color:var(--ds-muted) !important; border:2px solid var(--ds-line) !important;
}
body.woocommerce-order-pay #btn-razorpay-cancel:hover{ color:var(--ds-pink) !important; border-color:var(--ds-pink) !important; }
body.woocommerce-order-pay #btn-razorpay:focus-visible,
body.woocommerce-order-pay #btn-razorpay-cancel:focus-visible{ outline:2px solid var(--ds-pink); outline-offset:3px; }

/* ---- order review table (other gateways) ---- */
body.woocommerce-order-pay table.shop_table{
  width:100%; background:var(--ds-surface);
  border:1px solid var(--ds-line) !important; border-radius:var(--ds-radius);
  border-collapse:separate; border-spacing:0; overflow:hidden; margin:0 0 28px;
}
body.woocommerce-order-pay table.shop_table th,
body.woocommerce-order-pay table.shop_table td{
  padding:16px 22px !important; border:0 !important; border-bottom:1px solid var(--ds-line) !important;
  color:var(--ds-text); font-size:15px; text-align:left; background:transparent;
}
body.woocommerce-order-pay table.shop_table thead th{
  background:var(--ds-surface-2); text-transform:uppercase; font-size:11px;
  letter-spacing:.14em; color:var(--ds-muted);
}
body.woocommerce-order-pay table.shop_table th:last-child,
body.woocommerce-order-pay table.shop_table td:last-child{ text-align:right; white-space:nowrap; }
body.woocommerce-order-pay table.shop_table tfoot tr:last-child th,
body.woocommerce-order-pay table.shop_table tfoot tr:last-child td{
  background:var(--ds-surface-2); border-bottom:0 !important; font-size:18px; font-weight:600;
}
body.woocommerce-order-pay table.shop_table tfoot tr:last-child td .amount{ color:var(--ds-lime); }
body.woocommerce-order-pay table.shop_table a{ color:var(--ds-lime); text-decoration:none; }

/* ---- payment method chooser ---- */
body.woocommerce-order-pay #payment,
body.woocommerce-order-pay .woocommerce-checkout-payment{
  background:var(--ds-surface) !important; border:1px solid var(--ds-line);
  border-radius:var(--ds-radius) !important; padding:8px 0 0;
}
body.woocommerce-order-pay ul.wc_payment_methods{ list-style:none; margin:0; padding:8px 22px !important; border:0 !important; }
body.woocommerce-order-pay ul.wc_payment_methods li{ list-style:none; padding:12px 0; border-bottom:1px solid var(--ds-line); }
body.woocommerce-order-pay ul.wc_payment_methods li:last-child{ border-bottom:0; }
body.woocommerce-order-pay ul.wc_payment_methods label{ color:var(--ds-text); font-weight:500; cursor:pointer; }
body.woocommerce-order-pay ul.wc_payment_methods input[type="radio"]{ accent-color:var(--ds-lime); margin-right:10px; }
body.woocommerce-order-pay .payment_box{
  background:var(--ds-surface-2) !important; border-radius:10px; color:var(--ds-muted);
  font-size:14px; padding:14px 18px !important; margin:10px 0 0 !important;
}
body.woocommerce-order-pay .payment_box::before{ display:none !important; }
body.woocommerce-order-pay #place_order,
body.woocommerce-order-pay .form-row.place-order .button{
  width:100%; background:var(--ds-lime) !important; color:#000 !important;
  border:0 !important; border-radius:999px !important; padding:16px 28px !important;
  font-size:16px; font-weight:600; cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease;
}
body.woocommerce-order-pay #place_order:hover{ transform:translateY(-2px); box-shadow:0 10px 28px rgba(205,240,0,.28); }

/* ---- notices ---- */
body.woocommerce-order-pay .woocommerce-info,
body.woocommerce-order-pay .woocommerce-message,
body.woocommerce-order-pay .woocommerce-error{
  background:var(--ds-surface) !important; border-top:0 !important;
  border-left:3px solid var(--ds-lime) !important; border-radius:var(--ds-radius);
  color:var(--ds-text) !important; padding:18px 22px !important; list-style:none;
}
body.woocommerce-order-pay .woocommerce-error{ border-left-color:var(--ds-pink) !important; }
body.woocommerce-order-pay .woocommerce-info::before,
body.woocommerce-order-pay .woocommerce-message::before,
body.woocommerce-order-pay .woocommerce-error::before{ display:none !important; }


/* ============================================================
   5) GLOBAL / OTHER PAGES
   ============================================================ */
html, body{ overflow-x:hidden; }
#ast-scroll-top{ display:none !important; }
#samples-scroll{ scroll-margin-top:130px; }
.elementor-element-8a48218:not(.elementor-sticky__spacer){ opacity:0; pointer-events:none; transition:opacity .3s ease; }
.samples-arrow:not(.elementor-sticky__spacer){
  position:fixed !important; bottom:30px !important; right:30px !important;
  left:auto !important; top:auto !important; width:auto !important; max-width:80px !important; z-index:999;
}


/* ============================================================
   6) RESPONSIVE
   ============================================================ */
@media (max-width:1024px){
  .elementor-element-0424b42{ --dzs-step:55px; }
}

@media (max-width:900px){
  .woocommerce-checkout .e-checkout__container{
    grid-template-columns:1fr; grid-template-areas:"bill" "summary" "pay"; gap:26px;
  }
}

@media (max-width:767px){
  /* gallery */
  .elementor-element-0424b42 .e-gallery-item{ margin-top:0 !important; }
  .elementor-element-0424b42 .e-gallery-container{ border-bottom:0 !important; }

  /* thank you */
  .woocommerce-order{ padding:28px 16px 56px; }
  .woocommerce-order .woocommerce-thankyou-order-received{ padding:20px 20px 20px 56px; font-size:15px; }
  .woocommerce-order ul.woocommerce-order-overview{ grid-template-columns:1fr; }
  .woocommerce-order table.woocommerce-table--order-details th,
  .woocommerce-order table.woocommerce-table--order-details td{ padding:14px 16px; font-size:14px; }
  .woocommerce-order .woocommerce-order-details__title,
  .woocommerce-order .woocommerce-column__title,
  .woocommerce-order .woocommerce-customer-details h2{ font-size:19px; }

  /* pay for order */
  body.woocommerce-order-pay .woocommerce{ padding:28px 16px 64px; }
  body.woocommerce-order-pay ul.order_details{ grid-template-columns:1fr; }
  body.woocommerce-order-pay #btn-razorpay,
  body.woocommerce-order-pay #btn-razorpay-cancel{ display:block; width:100%; margin:0 0 12px; }
}

@media (prefers-reduced-motion: reduce){
  .woocommerce-order *{ transition:none !important; }
}