.elementor-12 .elementor-element.elementor-element-38fda23{--display:flex;--margin-top:-5px;--margin-bottom:-5px;--margin-left:-5px;--margin-right:-5px;overflow:visible;}.elementor-12 .elementor-element.elementor-element-f20f839{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:38px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;overflow:visible;}.elementor-12 .elementor-element.elementor-element-db0f4fa{--display:flex;overflow:visible;}.elementor-12 .elementor-element.elementor-element-e124f98.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-12 .elementor-element.elementor-element-eb65812{--display:flex;overflow:visible;}.elementor-12 .elementor-element.elementor-element-e4acce2{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;overflow:visible;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-12 .elementor-element.elementor-element-e124f98{width:var( --container-widget-width, 354.667px );max-width:354.667px;--container-widget-width:354.667px;--container-widget-flex-grow:0;}}/* Start custom CSS for html, class: .elementor-element-3718543 *//* Hide the 3‑step block on post‑checkout screens */
body.woocommerce-order-received #nx-steps,
body.woocommerce-order-pay #nx-steps,
body.woocommerce-view-order #nx-steps { display:none !important; }

/* (Optional) make sure it's visible on the normal checkout form */
body.woocommerce-checkout:not(.woocommerce-order-received) #nx-steps { display:block; }/* End custom CSS */
/* Start custom CSS for wc-elements, class: .elementor-element-e124f98 */<style>
/* ========= Full‑width layout (no pinched cards) ========= */
.woocommerce #customer_details,
.woocommerce #order_review,
.woocommerce-checkout #payment,
#nxc-receipt-wrap{
  width:100%;
  max-width:none;
  border-radius:16px;
  background:linear-gradient(180deg,#FAFCFF 0%, #F3F7FE 100%);
  border:1px solid rgba(20,52,92,.10);
  box-shadow:0 10px 24px rgba(20,52,92,.06);
  padding:14px;
}

/* ========= YOUR ORDER – simplified, prominent ========= */

/* Base table card */
.woocommerce-checkout-review-order-table{
  width:100%;
  border:0;
  border-collapse:separate;
  border-spacing:0;
  background:#fff;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 8px 18px rgba(20,52,92,.05);
}

/* Header row */
.woocommerce-checkout-review-order-table thead th{
  background:#F5F9FF;
  color:#0E2B54;
  font-weight:800;
  letter-spacing:.15px;
  padding:12px 16px;
  border:0;
}
/* Hide “Subtotal” header cell */
.woocommerce-checkout-review-order-table thead th.product-total{ display:none; }

/* Body cells */
.woocommerce-checkout-review-order-table td{
  padding:14px 16px;
  border:0;
}

/* Product row: big name, tidy qty “× 1” */
.woocommerce-checkout-review-order-table .cart_item .product-name{
  font-size:1.08rem;
  font-weight:900;
  color:#0E2B54;
}
.woocommerce-checkout-review-order-table .cart_item .product-name a{
  color:#0E2B54; text-decoration:none;
}
.woocommerce-checkout-review-order-table .cart_item + .cart_item td{
  border-top:1px solid rgba(20,52,92,.08);
}

/* Remove the old “• plan” badge if it existed */
.woocommerce-checkout-review-order-table .product-name::after{ content:""; }

/* Price column (still shows for product rows even though header is hidden) */
.woocommerce-checkout-review-order-table td.product-total{
  text-align:right;
  font-weight:800;
  color:#0E2B54;
}

/* Total row: make it stand out nicely */
.woocommerce-checkout-review-order-table tr.order-total th,
.woocommerce-checkout-review-order-table tr.order-total td{
  background:#F5F9FF;
  border-top:1px solid rgba(20,52,92,.10);
  font-weight:900;
  font-size:1.06rem;
}
.woocommerce-checkout-review-order-table tr.order-total td{
  text-align:right;
}

/* Optional: hide the thin “–” separators Woo sometimes injects */
.woocommerce-checkout-review-order-table .product-name .woocommerce-Price-amount + .amount { display:none; }

/* ========= Manual Bank Transfer box (clean, full-width) ========= */
.woocommerce-checkout #payment{
  background:#fff; border:1px solid rgba(20,52,92,.12);
}
.woocommerce-checkout #payment .payment_box{
  background:#F7FAFF; border:1px solid rgba(20,52,92,.10);
  border-radius:12px; padding:14px; margin-top:10px;
  box-shadow:inset 0 0 0 9999px rgba(61,106,184,.03);
}
.woocommerce-checkout #payment .payment_box p{ color:#496A8A; }

/* ========= Upload receipt (keeps your light style) ========= */
#nxc-receipt-wrap label{ font-size:1.05rem; font-weight:800; color:#0E2B54; }
#nxc-receipt-wrap input[type="file"]{
  display:block; width:100%;
  font-size:.95rem; color:#0E2B54;
  background:#fff; border:1px dashed rgba(15,88,201,.30);
  border-radius:12px; padding:12px 14px; cursor:pointer;
}
#nxc-receipt-wrap input[type="file"]::file-.elementor-12 .elementor-element.elementor-element-e124f98-button{
  margin-right:10px; border:0; border-radius:999px;
  padding:10px 12px; font-weight:800; cursor:pointer;
  background:#EAF2FF; color:#2456B5;
}

/* ========= Place order button (light, modern) ========= */
#order_review .place-order{ margin-top:12px; }
#place_order{
  width:100%; border:0;
  background:linear-gradient(180deg,#6E7BFF 0%, #6A50F6 100%);
  color:#fff; font-weight:900; font-size:1.05rem;
  padding:16px 18px; border-radius:20px;
  box-shadow:0 10px 22px rgba(82,67,194,.22), inset 0 -2px 0 rgba(0,0,0,.08);
}
#place_order:hover{ filter:brightness(1.05); }

/* ========= Inputs – consistent look ========= */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{
  background:#fff; border:1px solid rgba(20,52,92,.16);
  border-radius:12px; padding:12px; color:#0E2B54;
  box-shadow:0 2px 0 rgba(20,52,92,.02) inset;
}
.woocommerce form .form-row input:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{
  outline:0; border-color:rgba(61,106,184,.55);
  box-shadow:0 0 0 4px rgba(61,106,184,.10);
}

/* Mobile tweaks */
@media (max-width:480px){
  #place_order{ font-size:1rem; padding:14px; }
  .woocommerce-checkout-review-order-table td{ padding:12px 14px; }
}
</style>


<!-- NexCall • Checkout errors restyle + friendly copy + red asterisks -->
<style>
/* ===== Main notice (error/info/message) ===== */
.woocommerce-notices-wrapper,
.woocommerce-NoticeGroup,
.woocommerce-NoticeGroup-checkout{margin:0 0 14px}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message{
  list-style:none!important;
  margin:0 0 12px!important;
  padding:14px 14px 14px 54px!important;
  border-radius:16px!important;
  border:1px solid rgba(20,52,92,.14)!important;
  background:linear-gradient(180deg,#F6FAFF 0%,#EFF6FE 100%)!important;
  color:#14345C!important;
  box-shadow:0 10px 24px rgba(11,30,57,.06)!important;
  position:relative;
  font-family:Inter,system-ui,sans-serif;
}

/* Icon pill (center-aligned) */
.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before{
  content:"";
  position:absolute; left:14px; top:50%; transform:translateY(-50%);
  width:26px; height:26px; border-radius:10px;
  box-shadow:inset 0 0 0 2px rgba(16,24,40,.06);
}

/* Color by type */
.woocommerce-error::before{ background:#DC2626; }        /* red */
.woocommerce-info::before,
.woocommerce-message::before{ background:#0B1E39; }      /* navy */

/* Shield + check mask inside the pill */
.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before{
  -webkit-mask: url('data:image/svg+xml;utf8,\
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">\
<path fill="%23fff" d="M12 3l8 3v4.6c0 5-3.7 9.5-8 10.4-4.3-.9-8-5.4-8-10.4V6l8-3z"/>\
<path fill="none" stroke="%23fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M9 12.3l2 2 4-4"/>\
</svg>') center/18px 18px no-repeat;
          mask: url('data:image/svg+xml;utf8,\
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">\
<path fill="%23fff" d="M12 3l8 3v4.6c0 5-3.7 9.5-8 10.4-4.3-.9-8-5.4-8-10.4V6l8-3z"/>\
<path fill="none" stroke="%23fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M9 12.3l2 2 4-4"/>\
</svg>') center/18px 18px no-repeat;
}

/* Inner list spacing */
.woocommerce-error li,
.woocommerce-info li,
.woocommerce-message li{margin:4px 0!important;padding:0!important}

/* ===== Fields & inline error text ===== */
.woocommerce form .form-row .input-text,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea{
  border-radius:14px!important;
  border:1px solid rgba(20,52,92,.18)!important;
  box-shadow:0 3px 10px rgba(11,30,57,.06)!important;
  padding:12px 14px!important;
  transition:border-color .18s ease, box-shadow .18s ease;
}

/* Invalid state (soft red glow) */
.woocommerce form .form-row.woocommerce-invalid .input-text{
  border-color:#DC2626!important;
  box-shadow:0 0 0 3px rgba(220,38,38,.18)!important;
}

/* Inline messages under fields */
.woocommerce form .form-row .woocommerce-error,
.woocommerce form .form-row .woocommerce-invalid .error{
  display:block!important; margin:6px 2px 0!important; padding:0!important;
  background:transparent!important; border:0!important; box-shadow:none!important;
  color:#B91C1C!important; font-weight:650!important; font-size:.9rem!important;
}

/* Required asterisk → RED (only the star) */
.woocommerce form .required{ color:#DC2626!important; }

/* Mobile tweak */
@media (max-width:480px){
  .woocommerce-error,
  .woocommerce-info,
  .woocommerce-message{padding:12px 12px 12px 52px!important;border-radius:14px!important}
}
</style>

<!-- NexCall • Checkout errors restyle (no icons, no "Billing") -->
<style>
/* ===== Main notice (error/info/message) ===== */
.woocommerce-notices-wrapper,
.woocommerce-NoticeGroup,
.woocommerce-NoticeGroup-checkout{margin:0 0 14px}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message{
  list-style:none!important;
  margin:0 0 12px!important;
  padding:14px 14px!important;
  border-radius:16px!important;
  border:1px solid rgba(20,52,92,.14)!important;
  background:linear-gradient(180deg,#F6FAFF 0%,#EFF6FE 100%)!important;
  color:#14345C!important;
  box-shadow:0 10px 24px rgba(11,30,57,.06)!important;
  font-family:Inter,system-ui,sans-serif;
  position:relative;
}

/* Remove default Woo icon circle */
.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before{display:none!important}

/* Inner list spacing */
.woocommerce-error li,
.woocommerce-info li,
.woocommerce-message li{margin:4px 0!important;padding:0!important}

/* ===== Fields & inline error text ===== */
.woocommerce form .form-row .input-text,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea{
  border-radius:14px!important;
  border:1px solid rgba(20,52,92,.18)!important;
  box-shadow:0 3px 10px rgba(11,30,57,.06)!important;
  padding:12px 14px!important;
  transition:border-color .18s ease, box-shadow .18s ease;
}

/* Invalid state (soft red glow) */
.woocommerce form .form-row.woocommerce-invalid .input-text{
  border-color:#DC2626!important;
  box-shadow:0 0 0 3px rgba(220,38,38,.18)!important;
}

/* Inline messages under fields */
.woocommerce form .form-row .woocommerce-error,
.woocommerce form .form-row .woocommerce-invalid .error{
  display:block!important; margin:6px 2px 0!important; padding:0!important;
  background:transparent!important; border:0!important; box-shadow:none!important;
  color:#B91C1C!important; font-weight:650!important; font-size:.9rem!important;
}

/* Required asterisk → RED */
.woocommerce form .required{ color:#DC2626!important; }

/* Mobile tweak */
@media (max-width:480px){
  .woocommerce-error,
  .woocommerce-info,
  .woocommerce-message{padding:12px!important;border-radius:14px!important}
}
</style>

<script>
/* NexCall • Friendly copy (removes "Billing") + dedupe */
(function(){
  const map = [
    { find: 'Billing Full Name is a required field', to: 'Please enter your full name.' },
    { find: 'Billing WhatsApp / Contact Number is a required field', to: 'Please add your WhatsApp or contact number.' },
    { find: 'Billing Email for delivery is a required field', to: 'Please add your email for delivery.' },
    { find: 'is a required field', to: 'Please fill this field.' }
  ];

  function rewriteText(str){
    let out = str.trim();
    map.forEach(({find,to})=>{
      if(out.indexOf(find) !== -1){ out = to; }
    });
    return out.replace(/^Billing\s+/i,'').trim();
  }

  function processNotices(scope){
    // Top notices
    scope.querySelectorAll('.woocommerce-error li, .woocommerce-info li, .woocommerce-message li')
      .forEach(li => li.textContent = rewriteText(li.textContent));

    // Inline field errors
    scope.querySelectorAll('.woocommerce form .form-row .error, .woocommerce form .form-row .woocommerce-error')
      .forEach(el => el.textContent = rewriteText(el.textContent));

    // Dedupe
    const list = scope.querySelector('.woocommerce-error');
    if(list){
      const seen = new Set();
      [...list.querySelectorAll('li')].forEach(li=>{
        const t = li.textContent.trim();
        if(seen.has(t)) li.remove(); else seen.add(t);
      });
    }
  }

  processNotices(document);

  // Watch for Woo to re-render
  const mo = new MutationObserver(muts=>{
    for(const m of muts){
      if(m.addedNodes && m.addedNodes.length){
        m.addedNodes.forEach(n=>{
          if(!(n instanceof HTMLElement)) return;
          if(n.matches && (n.matches('.woocommerce-error, .woocommerce-info, .woocommerce-message') || n.querySelector('.woocommerce-error, .woocommerce-info, .woocommerce-message'))){
            processNotices(document);
          }
          if(n.matches && (n.matches('form.checkout') || n.querySelector('form.checkout'))){
            processNotices(document);
          }
        });
      }
    }
  });
  mo.observe(document.body, {childList:true, subtree:true});
})();
</script>/* End custom CSS */