{"id":4029,"date":"2019-09-27T08:58:05","date_gmt":"2019-09-27T08:58:05","guid":{"rendered":"http:\/\/iasisoasia.com\/?page_id=4029"},"modified":"2026-09-14T03:50:26","modified_gmt":"2026-09-14T03:50:26","slug":"cgmp-certification-in-kuwait","status":"publish","type":"page","link":"https:\/\/iasiso-gulf.com\/KW\/cgmp-certification-in-kuwait\/","title":{"rendered":"GMP and cGMP Certification in Kuwait"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"4029\" class=\"elementor elementor-4029\">\n\t\t\t\t<div class=\"elementor-element elementor-element-85673e1 e-flex e-con-boxed e-con e-parent\" data-id=\"85673e1\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-604a650 e-con-full e-flex e-con e-child\" data-id=\"604a650\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f55e9f9 elementor-widget elementor-widget-html\" data-id=\"f55e9f9\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ias-c\"><style>.elementor .ias-c h2,.elementor .ias-c h3{color:#0a4d8c !important;text-align:left !important;font-family:'Poppins',sans-serif !important;}.elementor .ias-c h2:not(.ias-faq-title){font-size:25px !important;font-weight:700 !important;line-height:1.3 !important;margin:32px 0 12px !important;}.elementor .ias-c h3{font-size:21px !important;font-weight:600 !important;line-height:1.35 !important;margin:24px 0 10px !important;}.elementor .ias-c p,.elementor .ias-c li{font-size:16px !important;line-height:1.75 !important;font-family:'Roboto',sans-serif !important;text-align:justify !important;color:#000 !important;}.elementor .ias-c ul{list-style:disc outside !important;margin:0 0 18px 20px !important;}.elementor .ias-c ul li{list-style:disc outside !important;display:list-item !important;margin-bottom:8px;}.elementor .ias-c ol{margin:0 0 18px 20px !important;}.elementor .ias-c ol li{list-style:decimal outside !important;display:list-item !important;margin-bottom:8px;}.elementor .ias-c p strong,.elementor .ias-c li strong,.elementor .ias-c td strong{color:#000 !important;}.elementor .ias-c a,.elementor .ias-c p a,.elementor .ias-c li a,.elementor .ias-c td a{color:#b02b2c !important;font-weight:700 !important;text-decoration:underline !important;text-underline-offset:2px;}.elementor .ias-c .ias-tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:18px 0 26px;}.elementor .ias-c .ias-tw{width:100%;border-collapse:collapse;font-size:15px;min-width:560px;}.elementor .ias-c .ias-tw thead th{background:#0a4d8c !important;color:#fff !important;font-family:'Poppins',sans-serif !important;font-weight:700 !important;font-size:15px !important;text-align:left !important;padding:11px 13px !important;border:1px solid #0a4d8c !important;}.elementor .ias-c .ias-tw td{border:1px solid #dbe6f0 !important;padding:10px 13px !important;font-family:'Roboto',sans-serif !important;font-size:15px !important;vertical-align:top;color:#000 !important;text-align:left !important;}.elementor .ias-c .ias-tw tbody tr:nth-child(even) td{background:#f2f7fb !important;}.elementor .ias-c .ias-tw tbody tr:nth-child(odd) td{background:#fff !important;}.elementor .ias-c figure.ias-fig{max-width:480px !important;margin:26px auto !important;padding:0;display:block !important;float:none !important;}.elementor .ias-c .ias-fig img{width:100%;height:auto;display:block;border-radius:6px;}.elementor .ias-c .ias-fig figcaption{font-size:13px !important;color:#6b7280 !important;text-align:center !important;margin-top:8px;font-style:italic;}.elementor .ias-c figure.ias-dia{max-width:100% !important;margin:26px 0 !important;padding:0;display:block !important;float:none !important;}.elementor .ias-c .ias-diascroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}.elementor .ias-c .ias-dia img{width:100%;min-width:560px;height:auto;display:block;border-radius:6px;}.elementor .ias-c .ias-dia figcaption{font-size:13px !important;color:#6b7280 !important;text-align:center !important;margin-top:8px;font-style:italic;}.elementor .ias-c .ias-band{background:#f2f7fb;border:1px solid #dbe6f0;border-radius:10px;padding:14px 18px;margin:20px 0;}.elementor .ias-c .ias-band ul{display:flex !important;flex-wrap:wrap;gap:6px 26px;margin:0 !important;padding:0 !important;list-style:none !important;}.elementor .ias-c .ias-band ul li{list-style:none !important;display:block !important;font-size:15px !important;color:#000 !important;font-weight:600;margin-bottom:0 !important;text-align:left !important;}.elementor .ias-c .ias-band ul li:before{content:\"\\2713\";color:#b02b2c;font-weight:700;margin-right:8px;}.elementor .ias-c .ias-qa{background:#f2f7fb;border:1px solid #dbe6f0;border-left:4px solid #0a4d8c;border-radius:8px;padding:16px 20px;margin:22px 0;}.elementor .ias-c .ias-qa h2{margin:0 0 10px !important;font-size:19px !important;}.elementor .ias-c .ias-qa ul{margin:0 0 0 20px !important;}.elementor .ias-c .ias-qa li{margin-bottom:6px;}.elementor .ias-c .ias-qa li:last-child{margin-bottom:0;}.elementor .ias-c .ias-cta2{background:#b02b2c;border-radius:10px;padding:16px 20px;margin:26px 0;}.elementor .ias-c .ias-cta2 p{margin:0 !important;color:#fff !important;font-size:16px !important;font-family:'Roboto',sans-serif !important;text-align:left !important;}.elementor .ias-c .ias-cta2 p a{color:#fff !important;text-decoration:underline !important;font-weight:700 !important;}.elementor .ias-c .ias-faq-title{font-size:25px !important;font-weight:700;color:#0a4d8c !important;font-family:'Poppins',sans-serif !important;margin:36px 0 14px;text-align:left !important;}.elementor .ias-c .ias-faq-item{border:1px solid #dbe6f0;border-radius:6px;margin-bottom:10px;background:#fff;}.elementor .ias-c .ias-faq-q{cursor:pointer;padding:13px 44px 13px 16px;font-weight:600;font-family:'Poppins',sans-serif !important;font-size:16px !important;color:#0a4d8c !important;position:relative;list-style:none;line-height:1.5;}.elementor .ias-c .ias-faq-q::-webkit-details-marker{display:none;}.elementor .ias-c .ias-faq-q::after{content:\"+\";position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#b02b2c;font-size:22px;font-weight:700;line-height:1;}.elementor .ias-c .ias-faq-item[open] .ias-faq-q::after{content:\"\\2212\";}.elementor .ias-c .ias-faq-a{padding:0 16px 14px;}.elementor .ias-c .ias-faq-a p{margin:0 0 10px;font-size:16px !important;}.elementor .ias-c .ias-faq-a p:last-child{margin-bottom:0;}.elementor .ias-c .ias-ld{display:none !important;}.elementor .ias-c{overflow-wrap:break-word;}@media(max-width:640px){.elementor .ias-c .ias-tw{font-size:14px;}.elementor .ias-c .ias-tw td,.elementor .ias-c .ias-tw thead th{padding:8px 9px !important;}}<\/style><p>Independent third-party GMP\/cGMP certification for Kuwaiti manufacturers, scoped to your products and backed by a fixed written quotation &#8212; provided by IAS under its UQAS <a href=\"https:\/\/iasiso-gulf.com\/KW\/accreditation\/\">accreditation<\/a>. A GMP certificate issued this way names the scheme and scope it was assessed against, so a tender evaluator or distributor can see exactly what was covered.<\/p><div class=\"ias-band\"><ul><li>UQAS-accredited certification body<\/li><li>Fixed written quotation, no hidden fees<\/li><li>Nearly two decades of assessment experience across the Gulf<\/li><li>Open to every industry, not just pharma and food<\/li><\/ul><\/div><div class=\"ias-cta2\"><p>Want a figure you can budget against? Talk to an auditor and receive a fixed written quotation covering the whole assessment &#8212; <a href=\"https:\/\/iasiso-gulf.com\/KW\/contact-us\/\">contact IAS today<\/a>.<\/p><\/div><div class=\"ias-qa\"><h2>At a glance<\/h2><ul><li><strong>Scope:<\/strong> audited against the applicable GMP\/cGMP scheme for your product category &#8212; never one universal checklist.<\/li><li><strong>Eligible industries:<\/strong> manufacturing, processing and handling operations of every kind &#8212; medicines, food and drink, cosmetics, devices, nutraceuticals.<\/li><li><strong>Certification cycle:<\/strong> application, audit, certificate, annual surveillance, recertification.<\/li><li><strong>Pricing:<\/strong> one fixed written quotation before work begins &#8212; no flat price list, no hidden fees.<\/li><li><strong>Accreditation:<\/strong> IAS provides GMP\/cGMP certification services under its UQAS accreditation.<\/li><\/ul><\/div><figure class=\"ias-fig\"><img loading=\"lazy\" src=\"https:\/\/iasiso-gulf.com\/KW\/wp-content\/uploads\/2026\/09\/kw-gmp-cgmp-certification-kuwait.jpg\" alt=\"Cleanroom manufacturing, precision machining and packaging operations covered by GMP and cGMP certification in Kuwait\" loading=\"lazy\" decoding=\"async\" width=\"900\" height=\"600\" \/><\/figure><h2>Why Kuwait&#8217;s buyers are asking for documented manufacturing evidence<\/h2><p>Kuwait&#8217;s procurement environment has grown more document-driven. Its manufacturing base covers food and beverage, pharmaceuticals, cosmetics, packaging and chemical processing. These producers now sell into government tenders, private distributor networks and export markets across the GCC.<\/p><ul><li><strong>Not one universal certificate.<\/strong> Buyers use &#8220;cGMP&#8221; loosely, but it refers to good-manufacturing-practice requirements across several distinct frameworks. Certification is always issued against the specific scheme and scope named on the certificate.<\/li><li><strong>What it practically solves.<\/strong> A facility may be preparing a tender submission or qualifying for a distributor&#8217;s approved-supplier list. It may also be responding to a brand owner&#8217;s due-diligence questionnaire. In each case, it needs independently verified documentation to point to when asked.<\/li><li><strong>Not a substitute.<\/strong> An IAS certificate is never presented as approval, registration or clearance by any government authority, and does not replace any licence a Kuwaiti manufacturer is required to hold.<\/li><li><strong>A comparable form of evidence.<\/strong> Tender evaluation committees, distributors building approved-vendor lists, and hospital procurement offices all look for consistent, comparable evidence across bidders. A scoped, third-party certificate supplies exactly that.<\/li><\/ul><h2>Mapping Kuwait&#8217;s regulatory and standards landscape<\/h2><p>Several bodies touch manufacturing quality in Kuwait, each with a distinct and non-overlapping role. Understanding who does what avoids the confusion that sometimes surrounds third-party certification.<\/p><div class=\"ias-tscroll\"><table class=\"ias-tw\"><thead><tr><th>Body<\/th><th>Primary role in Kuwait<\/th><th>Relationship to IAS certification<\/th><\/tr><\/thead><tbody><tr><td>Ministry of Health &#8211; Drug and Food Control Division<\/td><td>Registers and licenses pharmaceutical products, medicines and select food and cosmetic categories; conducts its own GMP-based inspections as part of licensing<\/td><td>Operates independently &#8212; an IAS certificate does not substitute for Drug and Food Control Division registration or licensing<\/td><\/tr><tr><td>Public Authority for Industry (PAI)<\/td><td>Issues industrial establishment licences and classifies industrial land use for manufacturing facilities<\/td><td>Addresses industrial licensing and land classification, not product-level GMP assessment<\/td><\/tr><tr><td>GCC and Kuwaiti standards bodies<\/td><td>Develop and apply regional technical regulations and product specifications<\/td><td>Set baseline product and labelling requirements, separate from third-party GMP\/cGMP certification<\/td><\/tr><tr><td>World Health Organization (WHO)<\/td><td>Publishes GMP guidelines referenced by manufacturers and regulators internationally<\/td><td>A standard-setter only &#8212; WHO does not inspect facilities, regulate markets or issue certificates<\/td><\/tr><tr><td>US Food and Drug Administration (US FDA)<\/td><td>Regulates products manufactured for, or sold into, the United States market<\/td><td>Has no authority over Kuwaiti domestic or GCC-regional operations, and issues no certificates through third parties<\/td><\/tr><tr><td>IAS<\/td><td>Independent third-party body that assesses a facility&#8217;s documented manufacturing practices against the applicable GMP\/cGMP scheme and scope<\/td><td>Provides certification services under its UQAS accreditation<\/td><\/tr><\/tbody><\/table><\/div><ul><li><strong>Not FDA approval.<\/strong> FDA approval, registration and clearance lie beyond the reach of any certification body.<\/li><li><strong>Not a substitute for Drug and Food Control Division registration.<\/strong> Licences and registrations remain between you and the regulator.<\/li><\/ul><div class=\"ias-cta2\"><p>Not sure which scheme applies to your products? <a href=\"https:\/\/iasiso-gulf.com\/KW\/frequently-asked-questions\/\">Read the frequently asked questions<\/a> or ask for a free scoping conversation.<\/p><\/div><h2>One term, several rulebooks: matching cGMP requirements to your product category<\/h2><p>cGMP is not a single certification standard &#8212; it is shorthand for good-manufacturing-practice requirements that differ by product category and by the framework a manufacturer chooses or is required to follow.<\/p><div class=\"ias-tscroll\"><table class=\"ias-tw\"><thead><tr><th>Product category<\/th><th>Framework(s) commonly referenced<\/th><th>Typical Kuwaiti context<\/th><\/tr><\/thead><tbody><tr><td>Pharmaceuticals and active ingredients<\/td><td>WHO GMP guidelines; PIC\/S GMP Guide provisions<\/td><td>Referenced alongside Drug and Food Control Division product registration<\/td><\/tr><tr><td>Food and beverage<\/td><td>Codex Alimentarius GMP principles; HACCP-aligned GMP practices; regional food technical regulations<\/td><td>Relevant to Kuwait&#8217;s dates, dairy, bottled water and packaged-food producers<\/td><\/tr><tr><td>Cosmetics and personal care<\/td><td>ISO 22716 good manufacturing practice guideline<\/td><td>A growing personal-care manufacturing and repackaging segment<\/td><\/tr><tr><td>Medical devices<\/td><td>GMP principles aligned with ISO 13485 quality management requirements<\/td><td>Applicable to device assemblers, kitting operations and importer-repackers<\/td><\/tr><tr><td>Nutraceuticals and dietary supplements<\/td><td>Blended food- and pharma-referenced GMP principles, scoped case by case<\/td><td>Increasingly requested by GCC distributors and retail chains<\/td><\/tr><tr><td>Other industries (packaging, chemicals, animal feed, contract manufacturing, warehousing)<\/td><td>Scope defined against the client&#8217;s own quality system and general GMP principles applicable to its processes<\/td><td>Certification is available regardless of sector, scoped to the specific products and processes involved<\/td><\/tr><\/tbody><\/table><\/div><p>GMP\/cGMP certification is not restricted to food, pharma, cosmetics or medical devices. Packaging converters, chemical processors, animal-feed producers, contract packers and warehousing operators can all apply, scoped to the products and processes actually carried out at their site. Device manufacturers often run this alongside <a href=\"https:\/\/iasiso-gulf.com\/KW\/iso-13485-certification-in-kuwait\/\">ISO 13485 certification in Kuwait<\/a>.<\/p><h2>cGMP meaning: GMP vs cGMP in the Kuwaiti market<\/h2><p>GMP and cGMP describe the same underlying discipline of documented, controlled manufacturing. The added &#8220;c&#8221; signals that practices are expected to be <em>current<\/em>: up-to-date methods, equipment and controls, not a fixed checklist adopted once and left unchanged.<\/p><p>Most Kuwaiti manufacturers encounter the two terms used interchangeably by buyers, distributors and tender documents, even though a certificate itself will name the specific scheme it was assessed against.<\/p><h3>Areas typically examined<\/h3><p>Depending on the applicable scheme and product category:<\/p><ul><li><strong>Premises and environment<\/strong> &#8212; layout, hygiene design and environmental controls appropriate to the products handled.<\/li><li><strong>Equipment<\/strong> &#8212; qualification, calibration and maintenance documentation.<\/li><li><strong>Raw materials and suppliers<\/strong> &#8212; control including incoming inspection where applicable.<\/li><li><strong>Process control<\/strong> &#8212; in-process checks and batch or production record-keeping.<\/li><li><strong>Change control<\/strong> &#8212; handling of deviations or nonconformities.<\/li><li><strong>Personnel<\/strong> &#8212; training records and documented responsibilities.<\/li><li><strong>Storage and traceability<\/strong> &#8212; labelling and traceability through to dispatch.<\/li><\/ul><h3>Documentation commonly reviewed<\/h3><p>As applicable to the scheme and product category &#8212; never treated as a universal checklist:<\/p><ul><li><strong>Quality manual and SOPs<\/strong> &#8212; controlled and current.<\/li><li><strong>CAPA and change-control logs<\/strong> &#8212; corrective and preventive action records.<\/li><li><strong>Validation or qualification records<\/strong> &#8212; where the scheme requires them.<\/li><li><strong>Batch or production records<\/strong> &#8212; contemporaneous and complete.<\/li><li><strong>Data-integrity controls<\/strong> &#8212; where electronic systems are used.<\/li><\/ul><h2>How to get a GMP certificate in Kuwait: the IAS assessment journey<\/h2><p>IAS follows a structured assessment sequence, scoped to the GMP\/cGMP framework agreed with the client at the outset.<\/p><ol><li><strong>Application and scope definition<\/strong> &#8212; the client and IAS agree the applicable scheme, product families and sites to be covered.<\/li><li><strong>Documentation review<\/strong> &#8212; the quality manual, SOPs and supporting records relevant to the agreed scope are reviewed.<\/li><li><strong>Stage 1 audit<\/strong> &#8212; readiness and documentation completeness are checked ahead of the on-site assessment.<\/li><li><strong>Stage 2 on-site audit<\/strong> &#8212; assessors examine the facility&#8217;s actual manufacturing practices against the agreed scheme.<\/li><li><strong>Corrective actions, if required<\/strong> &#8212; any nonconformities identified are addressed and evidenced before the decision is finalised.<\/li><li><strong>Certification decision and certificate issued<\/strong> &#8212; an independent review confirms the outcome and the certificate, naming its scheme and scope, is issued.<\/li><\/ol><figure class=\"ias-dia\"><div class=\"ias-diascroll\"><img loading=\"lazy\" src=\"https:\/\/iasiso-gulf.com\/KW\/wp-content\/uploads\/2026\/09\/kw-gmp-certification-process-kuwait.png\" alt=\"GMP and cGMP certification process flow diagram for manufacturers in Kuwait, from application to certificate issuance\" loading=\"lazy\" decoding=\"async\" width=\"889\" height=\"330\" \/><\/div><figcaption>The IAS GMP\/cGMP certification process for Kuwaiti applicants<\/figcaption><\/figure><figure class=\"ias-fig\"><img loading=\"lazy\" src=\"https:\/\/iasiso-gulf.com\/KW\/wp-content\/uploads\/2026\/09\/kw-gmp-audit-manufacturing-facility-kuwait.jpg\" alt=\"IAS assessors examining process equipment and records during an on-site GMP audit at a manufacturing facility in Kuwait\" loading=\"lazy\" decoding=\"async\" width=\"900\" height=\"600\" \/><\/figure><h2>GMP certification cost in Kuwait: what determines cost and duration<\/h2><p>GMP certification cost in Kuwait is quoted per facility. IAS does not apply a flat price list or a fixed week-by-week timeline. Facility size, product scope and existing documentation maturity vary enormously between a small contract packer and a multi-line food or pharmaceutical plant. Every applicant receives a fixed, written quotation before work begins.<\/p><div class=\"ias-tscroll\"><table class=\"ias-tw\"><thead><tr><th>Factor<\/th><th>Effect on cost<\/th><th>Effect on timeline<\/th><\/tr><\/thead><tbody><tr><td>Facility size and number of production lines<\/td><td>More lines and areas mean more audit time to assess<\/td><td>Longer on-site audit duration<\/td><\/tr><tr><td>Number and complexity of product families in scope<\/td><td>Broader scope increases assessment depth required<\/td><td>Affects document review and audit scheduling<\/td><\/tr><tr><td>Current state of the documented quality system<\/td><td>A less mature system generally means more preparation effort outside IAS&#8217;s own fee<\/td><td>Extends time needed before the facility is audit-ready<\/td><\/tr><tr><td>Number of sites or locations covered<\/td><td>Each additional site adds audit scope<\/td><td>Additional coordination and audit days<\/td><\/tr><tr><td>Applicable scheme(s) selected<\/td><td>Some frameworks require a more extensive document and process review<\/td><td>Can lengthen the review and decision stages<\/td><\/tr><\/tbody><\/table><\/div><p><strong>The IAS commitment.<\/strong> Cost is known and agreed in advance, in writing, rather than estimated after the fact.<\/p><h3>Certification timeline and validity<\/h3><p>Rather than a fixed calendar timeline, certification follows a lifecycle:<\/p><ul><li><strong>Initial certification audit<\/strong> &#8212; scoped to the agreed scheme and product families.<\/li><li><strong>Certificate issuance<\/strong> &#8212; naming the scheme and scope it was assessed against.<\/li><li><strong>Periodic surveillance audits<\/strong> confirm practices remain in control. They matter to a tender evaluator or distributor as much as the initial certificate, because they show documented practices have held up under scrutiny rather than a one-time snapshot.<\/li><li><strong>Recertification audit<\/strong> &#8212; before the certificate&#8217;s period ends.<\/li><\/ul><figure class=\"ias-dia\"><div class=\"ias-diascroll\"><img loading=\"lazy\" src=\"https:\/\/iasiso-gulf.com\/KW\/wp-content\/uploads\/2026\/09\/kw-gmp-certification-lifecycle.png\" alt=\"GMP and cGMP certification lifecycle in Kuwait showing initial audit, annual surveillance and recertification\" loading=\"lazy\" decoding=\"async\" width=\"889\" height=\"320\" \/><\/div><figcaption>The GMP\/cGMP certification lifecycle, from initial audit to recertification<\/figcaption><\/figure><p>Quality teams often keep the cycle steady between IAS visits by developing their own auditors through <a href=\"https:\/\/iasiso-gulf.com\/KW\/cgmp-internal-auditor-training-in-kuwait\/\">cGMP internal auditor training in Kuwait<\/a>.<\/p><div class=\"ias-cta2\"><p>Want a real number, not a range? <a href=\"https:\/\/iasiso-gulf.com\/KW\/contact-us\/\">Request your fixed written quotation<\/a>.<\/p><\/div><h2>Tender and supply-chain documentation: what Kuwaiti buyers are actually asking for<\/h2><p>Beyond regulatory licensing, government procurement, hospital supply contracts and private distribution agreements each look for a slightly different piece of documented assurance. A certificate that names its scheme and scope functions as a compact, independently verified summary &#8212; reusable across multiple procurement relationships instead of a fresh due-diligence questionnaire for every buyer.<\/p><div class=\"ias-tscroll\"><table class=\"ias-tw\"><thead><tr><th>Buyer \/ procurement context<\/th><th>What is typically requested<\/th><th>How certification supports it<\/th><\/tr><\/thead><tbody><tr><td>Government ministries and public-sector tenders<\/td><td>Evidence of a documented, auditable manufacturing quality system alongside required licences<\/td><td>An IAS certificate gives an independently verified reference point to include in a bid file<\/td><\/tr><tr><td>Ministry of Health Central Medical Stores and hospital supply contracts<\/td><td>Manufacturing traceability, batch control and corrective-action records<\/td><td>The certificate&#8217;s scope confirms these elements were independently assessed<\/td><\/tr><tr><td>Private distributors and GCC re-export partners<\/td><td>Assurance that the exporting facility&#8217;s practices are documented and consistently applied<\/td><td>The certificate and its scope statement can be shared directly with distributors and downstream buyers<\/td><\/tr><tr><td>Multinational brand owners using Kuwaiti contract manufacturers<\/td><td>A recognised third-party assessment rather than the manufacturer&#8217;s own self-declaration<\/td><td>Reduces the buyer&#8217;s own on-site audit burden and supports vendor approval<\/td><\/tr><\/tbody><\/table><\/div><h2>cGMP certification in Kuwait: who is pursuing it<\/h2><p>Certification is open to any manufacturing, processing or handling operation prepared to have its documented practices independently assessed &#8212; not limited to a fixed list of sectors. Kuwait&#8217;s own re-export and distribution role across the GCC means both local producers and importer-repackers look for the same documented reassurance. Applicants typically include:<\/p><ul><li>Pharmaceutical manufacturers and repackagers registered with the Drug and Food Control Division<\/li><li>Food, beverage and dairy producers, including bottled-water and date-processing facilities<\/li><li>Cosmetics and personal-care manufacturers and private-label formulators<\/li><li>Nutraceutical and dietary-supplement producers supplying regional retail and pharmacy chains<\/li><li>Medical-device assemblers, kitting operations and importer-repackers<\/li><li>Contract manufacturers and third-party packers serving multiple brand owners<\/li><li>Packaging converters, chemical processors, animal-feed producers and warehousing\/distribution operators<\/li><\/ul><p>For all of these, the certificate&#8217;s value lies in what it independently confirms about documented practice &#8212; not in replacing any licence, registration or inspection the operator is already required to hold. Food and beverage sites commonly pair it with <a href=\"https:\/\/iasiso-gulf.com\/KW\/haccp-certification-in-kuwait\/\">HACCP certification in Kuwait<\/a> or <a href=\"https:\/\/iasiso-gulf.com\/KW\/iso-22000-certification-in-kuwait\/\">ISO 22000 certification in Kuwait<\/a>.<\/p><div class=\"ias-cta2\"><p>See where your operation fits? <a href=\"https:\/\/iasiso-gulf.com\/KW\/contact-us\/\">Get a free consultation<\/a> &#8212; no obligation.<\/p><\/div><h3>Quick definitions<\/h3><ul><li><strong>GMP.<\/strong> Good Manufacturing Practice &#8212; the general term for documented, controlled manufacturing.<\/li><li><strong>cGMP.<\/strong> Current Good Manufacturing Practice &#8212; the same discipline, with the explicit expectation that methods, equipment and controls stay up to date.<\/li><li><strong>Scheme and scope.<\/strong> The standard used as the yardstick, and the product range it is applied to.<\/li><li><strong>Surveillance audit.<\/strong> A recurring check on whether the certified system remains in use.<\/li><li><strong>Recertification.<\/strong> The complete reassessment that renews the cycle.<\/li><\/ul><h2>Your next step toward GMP\/cGMP certification in Kuwait<\/h2><p>IAS brings nearly two decades of assessment experience to manufacturers across the Gulf, providing GMP\/cGMP certification services under its UQAS accreditation. Whether you are preparing a government tender submission, qualifying for a distributor&#8217;s approved-supplier list, or formalising documented practice across a growing product line, the process starts with a conversation about your facility&#8217;s scope.<\/p><ul><li>Explore related options on the IAS <a href=\"https:\/\/iasiso-gulf.com\/KW\/iso-certification\/\">ISO certification in Kuwait<\/a> hub, including <a href=\"https:\/\/iasiso-gulf.com\/KW\/iso-9001-certification-in-kuwait\/\">ISO 9001 certification in Kuwait<\/a>.<\/li><li>Browse the <a href=\"https:\/\/iasiso-gulf.com\/KW\/product-certification\/\">product certification<\/a> and <a href=\"https:\/\/iasiso-gulf.com\/KW\/system-certification\/\">system certification<\/a> schemes available across the region.<\/li><li>For self-study on the topic, IAS also offers <a href=\"https:\/\/iasiso-gulf.com\/KW\/online-iso-training\/\">online ISO training<\/a>.<\/li><\/ul><div class=\"ias-cta2\"><p>Ready to discuss GMP\/cGMP certification for your facility? <a href=\"https:\/\/iasiso-gulf.com\/KW\/contact-us\/\">Contact IAS today<\/a>.<\/p><\/div><section class=\"ias-faq-section\"><h2 class=\"ias-faq-title\">Frequently asked questions<\/h2><details class=\"ias-faq-item\"><summary class=\"ias-faq-q\">Is GMP or cGMP certification a legal requirement for manufacturers in Kuwait?<\/summary><div class=\"ias-faq-a\"><p>No single law makes third-party GMP\/cGMP certification mandatory across all sectors; regulatory licensing through bodies such as the Drug and Food Control Division is the legal requirement. Certification is a voluntary, independent addition many manufacturers pursue to support tenders, exports and buyer due diligence.<\/p><\/div><\/details><details class=\"ias-faq-item\"><summary class=\"ias-faq-q\">Does an IAS GMP\/cGMP certificate replace Kuwait Ministry of Health GMP registration with the Drug and Food Control Division?<\/summary><div class=\"ias-faq-a\"><p>No. An IAS certificate is an independent assessment of documented manufacturing practice. It never substitutes for Drug and Food Control Division registration or licensing, nor for any other regulatory approval a Kuwaiti manufacturer is required to hold.<\/p><\/div><\/details><details class=\"ias-faq-item\"><summary class=\"ias-faq-q\">Our facility already underwent a Ministry of Health inspection &#8212; why pursue separate certification?<\/summary><div class=\"ias-faq-a\"><p>A regulatory inspection confirms compliance with licensing conditions for that authority&#8217;s own remit. Third-party certification is a separate, independently verified assessment that can be presented directly to tender evaluators, distributors and overseas buyers who are not privy to the regulator&#8217;s inspection file.<\/p><\/div><\/details><details class=\"ias-faq-item\"><summary class=\"ias-faq-q\">Does GMP\/cGMP certification improve our standing in Kuwait government and semi-government tenders?<\/summary><div class=\"ias-faq-a\"><p>It can strengthen a bid by providing independently verified documentation of manufacturing quality practices alongside required regulatory licences, which many tender evaluators and hospital supply contracts increasingly look for as supporting evidence.<\/p><\/div><\/details><details class=\"ias-faq-item\"><summary class=\"ias-faq-q\">Is GMP\/cGMP certification only available to pharmaceutical, food and cosmetics manufacturers?<\/summary><div class=\"ias-faq-a\"><p>No. Certification is open to any industry, including packaging, chemicals, animal feed, contract manufacturing and warehousing, with the assessment scope defined around the applicant&#8217;s own products and processes.<\/p><\/div><\/details><details class=\"ias-faq-item\"><summary class=\"ias-faq-q\">How does certification help a Kuwait-based company that re-exports or distributes goods across the GCC?<\/summary><div class=\"ias-faq-a\"><p>A certificate and its stated scope give regional distributors and re-export partners a documented, independently verified reference. They can rely on it instead of accepting the manufacturer&#8217;s own declarations, which can simplify onboarding across neighbouring GCC markets.<\/p><\/div><\/details><details class=\"ias-faq-item\"><summary class=\"ias-faq-q\">What happens if the audit team identifies nonconformities at our facility?<\/summary><div class=\"ias-faq-a\"><p>Nonconformities are documented with a defined timeframe to submit corrective action evidence. Certification proceeds once the evidence is reviewed and accepted; unresolved major nonconformities will delay or prevent certification until addressed.<\/p><\/div><\/details><details class=\"ias-faq-item\"><summary class=\"ias-faq-q\">Can a distribution or trading company without its own manufacturing site pursue GMP\/cGMP certification?<\/summary><div class=\"ias-faq-a\"><p>Certification is scoped to the activities actually carried out at a site, such as storage, repackaging or labelling. A pure trading operation with no such activities would need to define a relevant scope with IAS before an assessment can proceed.<\/p><\/div><\/details><\/section><div class=\"ias-ld\">\n<script type=\"application\/ld+json\">{\"@context\": \"https:\/\/schema.org\", \"@type\": \"FAQPage\", \"mainEntity\": [{\"@type\": \"Question\", \"name\": \"Is GMP or cGMP certification a legal requirement for manufacturers in Kuwait?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"No single law makes third-party GMP\/cGMP certification mandatory across all sectors; regulatory licensing through bodies such as the Drug and Food Control Division is the legal requirement. Certification is a voluntary, independent addition many manufacturers pursue to support tenders, exports and buyer due diligence.\"}}, {\"@type\": \"Question\", \"name\": \"Does an IAS GMP\/cGMP certificate replace Kuwait Ministry of Health GMP registration with the Drug and Food Control Division?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"No. An IAS certificate is an independent assessment of documented manufacturing practice. It never substitutes for Drug and Food Control Division registration or licensing, nor for any other regulatory approval a Kuwaiti manufacturer is required to hold.\"}}, {\"@type\": \"Question\", \"name\": \"Our facility already underwent a Ministry of Health inspection &#8212; why pursue separate certification?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"A regulatory inspection confirms compliance with licensing conditions for that authority&#8217;s own remit. Third-party certification is a separate, independently verified assessment that can be presented directly to tender evaluators, distributors and overseas buyers who are not privy to the regulator&#8217;s inspection file.\"}}, {\"@type\": \"Question\", \"name\": \"Does GMP\/cGMP certification improve our standing in Kuwait government and semi-government tenders?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"It can strengthen a bid by providing independently verified documentation of manufacturing quality practices alongside required regulatory licences, which many tender evaluators and hospital supply contracts increasingly look for as supporting evidence.\"}}, {\"@type\": \"Question\", \"name\": \"Is GMP\/cGMP certification only available to pharmaceutical, food and cosmetics manufacturers?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"No. Certification is open to any industry, including packaging, chemicals, animal feed, contract manufacturing and warehousing, with the assessment scope defined around the applicant&#8217;s own products and processes.\"}}, {\"@type\": \"Question\", \"name\": \"How does certification help a Kuwait-based company that re-exports or distributes goods across the GCC?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"A certificate and its stated scope give regional distributors and re-export partners a documented, independently verified reference. They can rely on it instead of accepting the manufacturer&#8217;s own declarations, which can simplify onboarding across neighbouring GCC markets.\"}}, {\"@type\": \"Question\", \"name\": \"What happens if the audit team identifies nonconformities at our facility?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Nonconformities are documented with a defined timeframe to submit corrective action evidence. Certification proceeds once the evidence is reviewed and accepted; unresolved major nonconformities will delay or prevent certification until addressed.\"}}, {\"@type\": \"Question\", \"name\": \"Can a distribution or trading company without its own manufacturing site pursue GMP\/cGMP certification?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Certification is scoped to the activities actually carried out at a site, such as storage, repackaging or labelling. A pure trading operation with no such activities would need to define a relevant scope with IAS before an assessment can proceed.\"}}]}<\/script><\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-fad45c3 e-con-full e-flex e-con e-child\" data-id=\"fad45c3\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9611c08 elementor-widget elementor-widget-sidebar\" data-id=\"9611c08\" data-element_type=\"widget\" data-widget_type=\"sidebar.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div id=\"text-46\" class=\"widget widget_text gdlr-item gdlr-widget\">\t\t\t<div class=\"textwidget\"><h5>To Enroll<\/h5>\n<p><a class=\"gdlr-button small\" href=\"https:\/\/iasiso-gulf.com\/KW\/wp-content\/uploads\/2024\/12\/IAS-Application-FormV1.8-1.doc\" target=\"_self\"  style=\"color:#ffffff; background-color:#b02b2c; \"  >Application <\/a><br \/>\n<a class=\"gdlr-button small\" href=\"https:\/\/iasiso-gulf.com\/KW\/wp-content\/uploads\/2024\/12\/IAS-cGMP-Brochure.pdf\" target=\"_self\"  style=\"color:#ffffff; background-color:#476DB2; \"  >Brochure <\/a><br \/>\n<a class=\"gdlr-button small\" href=\"https:\/\/iasiso-gulf.com\/KW\/training-schedule\/\" target=\"_self\"  style=\"color:#ffffff; background-color:#476DB2; \"  >Training Schedule<\/a><\/p>\n<h5>Contact Us<\/h5>\n<!DOCTYPE html>\n<html lang=\"en\">\n  <meta charset=\"utf-8\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n  <link href=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.2.3\/dist\/css\/bootstrap.min.css\" rel=\"stylesheet\">\n  <link\n  rel=\"stylesheet\"\n  href=\"https:\/\/cdn.jsdelivr.net\/gh\/lipis\/flag-icons@6.6.6\/css\/flag-icons.min.css\"\n\/>\n  <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.2.3\/dist\/js\/bootstrap.bundle.min.js\"><\/script>\n  <script src=\"https:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/3.6.4\/jquery.min.js\"><\/script>\n  <script src=\"https:\/\/www.google.com\/recaptcha\/api.js\" async defer><\/script>\n\n<style>\n.certification-section,.training-section, .other_enquiry_form, .certification_prod_section, .process_section, .product_section{\n\tdisplay:none;\n}\nlabel, .label {\ncolor:black;\n \n}\n.form-control {\npadding: 16px 19px;\n}\n#countryDropdown {\n\tborder: 1px solid #ced4da;\n}\n.dropdown-menu {\n\theight:300px;\n\toverflow-x:auto;\t\n}\n#myModalAlert, .modal{\n\tz-index:9999999 !important;\n}\n#myModalAlert .modal-dialog {\n\tz-index:10 !important;\n\tmargin-top: 40vh;\n}\n#myModalAlert .modal-header {\n\tpadding: 10px !important;\n\tbackground: #dee1e6;\n}\n#myModalAlert .modal-header .btn-close,\n#myModalAlert .modal-header .close {\n\topacity: 1 !important;\n\tcolor: #000 !important;\n\tfilter: none !important;\n}\n\n\n#myModalAlert .modal-body {\n\ttext-align: center;\n\tcolor:black;\n}\n.modal-backdrop.show {\nz-index: 100 !important;\nposition:relative !important;\n}\n.error, .mandatory {\n\tcolor:red;\n}\ninput {\ncolor:black !important;\n}\n.label{\nfont-size: 100%\n}\nh6:after{\nbackground: #fff;\n}\n.form-note {\n    margin-top: 14px;\n    padding: 10px 12px;\n    background: #f4f6f9;\n    border-left: 4px solid #3c8dbc;\n    font-size: 12px;\n    color: #333;\n}\n\/* Collapsible multi-checkbox dropdown for Product Name *\/\n.scheme-dropdown-toggle {\n    border: 1px solid #ced4da;\n    border-radius: 4px;\n    padding: 10px 14px;\n    background: #fff;\n    cursor: pointer;\n    color: #333;\n    position: relative;\n    user-select: none;\n}\n.scheme-dropdown-toggle::after {\n    content: \"\\25BC\";\n    float: right;\n    font-size: 10px;\n    margin-top: 3px;\n    transition: transform 0.2s;\n}\n.scheme-dropdown-toggle.open::after {\n    transform: rotate(180deg);\n}\n.scheme-checkbox-list {\n    display: none;\n    max-height: 200px;\n    overflow-y: auto;\n    border: 1px solid #ced4da;\n    border-top: none;\n    border-radius: 0 0 4px 4px;\n    padding: 10px;\n    background: #fff;\n}\n.scheme-checkbox-list.show {\n    display: block;\n}\n<\/style>\n    <div class=\"container mt-3\">\n         <div class=\"card\">\n\t\t <div class=\"card-body\">\n         <form id=\"contct_form\" >\n         \t<!-- hidden datas -->\n         \t<input type=\"hidden\" name=\"source\" value=\"2\">\n\t\t\t<input type=\"hidden\" name=\"enquiry_from\"     value=\"online_user\">\n            <input type=\"hidden\" name=\"From\" value=\"6\">\n            <input type=\"hidden\" name=\"Website\" class=\"website_id\" value=\"\">\n            <input type=\"hidden\" name=\"source_of_url\"  class=\"url_id\"  value=\"\">\n\t\t\t <input type=\"hidden\" name=\"Company\" class=\"company\" value=\"\">\n            \n            <div class=\"row\">\n                <div class=\"col-sm-12\"> \n                    <div class=\"mb-3 mt-3\">\n                        <label  >Company Name:<\/label>\n                        <input type=\"text\" class=\"form-control\" id=\"CompanyName\" placeholder=\"Enter company name\" name=\"CompanyName\">\n                    <\/div>\n                    <div class=\"mb-3\">\n                        <label  >Name: *<\/label>\n                        <input type=\"text\" class=\"form-control\" id=\"CustomerName\" placeholder=\"Enter Name\" name=\"CustomerName\" required=\"required\">\n                        <span class=\"error error_company_name\" style=\"color: red; font-size: 13px; margin-top: 5px;\"><\/span>\n                    <\/div> \n\t\t\t\t\t\n                    <input type=\"hidden\" name=\"telephone_number\" value=\"\">\n                    <div class=\"mb-3\">\n                        <label>E-Mail:*<\/label>\n                        <input type=\"email\" class=\"form-control\" id=\"EMail\" placeholder=\"Enter email\" name=\"EMail\" required=\"required\">\n                         <span class=\"error error_email\" style=\"color: red; font-size: 13px; margin-top: 5px;\"><\/span>\n                    <\/div>\n                    <div class=\"mb-3 country-section\">\n                    \t<label>Country: *<\/label>\n                       \t<div class=\"dropdown\">\n\t\t\t\t\t\t  \t<div class=\"btn btn-default\" type=\"button\" id=\"countryDropdown\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\n\t\t\t\t\t\t    \t <span class=\"default_countr\"><\/span> --- Select Country ---<\/span>\n\t\t\t\t\t\t  \t<\/div>\n\t\t\t\t\t\t  <ul class=\"dropdown-menu\" style=\"position: absolute;z-index: 999999;\" aria-labelledby=\"countryDropdown\"><\/ul>\n\n\t\t\t\t\t\t  <input type=\"hidden\" id=\"country_id\" name=\"Country\" required>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t <span class=\"error error_country\" style=\"color: red; font-size: 13px; margin-top: 5px;\"><\/span>\n\t\t\t\t\t<\/div> \n\t                <div class=\"mb-3 mt-3\">\n\t                    <label>State: *<\/label>\n\t                    <select class=\"form-select\" name=\"State\" id=\"State\" required=\"required\">\n\t                        <option value=\"\">--Please select state--<\/option>\n\t                    <\/select>\n\t                     <span class=\"error error_state\" style=\"color: red; font-size: 13px; margin-top: 5px;\"><\/span>\n\t                <\/div>\n\t                <div class=\"mb-3\">\n\t                    <label>City:<\/label>\n\t                    <select class=\"form-select\" name=\"City\" id=\"City\">\n\t                        <option value=\"\">--Please select City --<\/option> \n\t                    <\/select>\n\t                    <span class=\"error error_city\"><\/span>\n\t                <\/div> \n \n\t                <div class=\"mb-3\">\n                        <label  > Mobile Number:*<\/label>\n                       \n                        <div class=\"input-group m-0\">\n\t\t\t\t\t\t\t<span class=\"input-group-text\" id=\"CountryCode\" data-phone-length=\"\">+965<\/span>\n                        \t<input type=\"tel\" inputmode=\"numeric\" pattern=\"[0-9]*\" class=\"form-control\" id=\"MobileNumber\" placeholder=\"Enter mobile number\" name=\"MobileNumber\" required=\"required\">\n                        \t\n                        <\/div>\n\t\t\t\t\t\t<span class=\"error error_mobile_no\" style=\"color: red; font-size: 13px; margin-top: 5px;\"><\/span>\n                    <\/div>\n\t                <div class=\"mb-3\">\n\t                     <h6 class=\"label\">Enquiry Type<\/h6>\n\t                    <span><input type=\"radio\" class=\"form-check-input enquiry_type\"    name=\"optradio\" value=\"1\" checked> Enquiry<\/span>\n\t                    <span> <input type=\"radio\" class=\"form-check-input enquiry_type\"   name=\"optradio\" value=\"2\"> Other<\/span>\n\t                <\/div> \n\t                <div class=\"enquiry_form\">\n\t\t                <div class=\"mb-3\">\n\t\t                    <label>Training \/ Certification: *<\/label>\n\t\t                    <select class=\"form-select\"  id=\"purposOf\">\n\t\t                        <option value=\"\">--Please select  --<\/option> \n\t\t                        <option value=\"1\">Training (For Individuals or Group of Individuals)<\/option>\n\t\t                        <option value=\"2\">Certification (For Organizations)<\/option>\n\t\t                    <\/select>\n\t\t                    <span class=\"error error_trg_cert\" style=\"color: red; font-size: 13px; margin-top: 5px;\"><\/span>\n\t\t                <\/div>\n\t\t\t\t\t\t\n\t\t\t\t\t\t<div class=\"mb-3 certification_prod_section\">\n\t\t\t\t\t\t\t<label>Certification: *<\/label>\n\t\t\t\t\t\t\t<select class=\"form-select\" name=\"cert_Type\" id=\"cert_Type\">\n\t\t\t\t\t\t\t\t<option value=\"\">--Please select Type --<\/option>\n\t\t\t\t\t\t\t\t<option value=\"1\">Process<\/option>\n\t\t\t\t\t\t\t\t<option value=\"2\">Product<\/option>\n\t\t\t\t\t\t\t\t<option value=\"3\">Both (Process\/Product)<\/option>\n\t\t\t\t\t\t\t<\/select>\n\t\t\t                <span class=\"error error_cert_product_type\" style=\"color: red; font-size: 13px; margin-top: 5px;\"><\/span>\n\t\t\t            <\/div>\n\t\t                <!-- Training -->\n\t\t                \n\t\t                <div class=\"training-section\">\n\t\t                \t<h6 class=\"label\">Training<\/h6>\n\t\t\t                <div class=\"mb-3\">\n\t\t\t                    <label>Product Type: *<\/label>\n\t\t\t                    <select class=\"form-select\" name=\"Type[]\" id=\"Type\">\n\t\t\t                        <option value=\"\">--Please select Type --<\/option>\n\t\t\t                    <\/select>\n\t\t\t                    <span class=\"error error_product_type\" style=\"color: red; font-size: 13px; margin-top: 5px;\"><\/span>\n\t\t\t                <\/div>\n\n\t\t\t                <div class=\"mb-3\">\n\t\t\t                    <label>Product Category: *<\/label>\n\t\t\t                    <select class=\"form-select\" name=\"Category[]\" id=\"Category\">\n\t\t\t                        <option value=\"\">--Please select Category --<\/option>\n\t\t\t                    <\/select>\n\t\t\t                     <span class=\"error error_product_category\" style=\"color: red; font-size: 13px; margin-top: 5px;\"><\/span>\n\t\t\t                <\/div>\n\n\t\t\t                <div class=\"mb-3\">\n\t\t\t                    <label>Product Name: <span class=\"mandatory\">*<\/span><\/label>\n\t\t\t                    <div class=\"scheme-dropdown-toggle\" data-target=\"ProductNameCheckboxes\" data-default=\"-- Select Product Name --\">-- Select Product Name --<\/div>\n\t\t\t                    <div class=\"scheme-checkbox-list\" id=\"ProductNameCheckboxes\">\n\t\t\t                        <span style=\"color:#999;\">-- Please select Product Type &amp; Category first --<\/span>\n\t\t\t                    <\/div>\n\t\t\t                    <span class=\"error error_product_name\" style=\"color: red; font-size: 13px; margin-top: 5px;\"><\/span>\n\t\t\t                <\/div>\n\t\t\t            <\/div>\n\t\t\t            <!-- Training End -->\n\t\t\t            <!-- Certification -->\n\t\t\t           \n\t\t                <div class=\"certification-section\">\n\t\t\t                <div class=\"mb-3 product_section\">\n\t\t\t                    <label>Product Scheme: <span class=\"mandatory\">*<\/span> <\/label>\n\t\t\t                    <div class=\"scheme-dropdown-toggle\" data-target=\"productSchemeCheckboxes\" data-default=\"-- Select Product Scheme --\">-- Select Product Scheme --<\/div>\n\t\t\t                    <div class=\"scheme-checkbox-list\" id=\"productSchemeCheckboxes\"><\/div>\n\t\t\t                     <span class=\"error error_product_name\" style=\"color: red; font-size: 13px; margin-top: 5px;\"><\/span>\n\t\t\t                <\/div>\n\t\t\t                <div class=\"mb-3 process_section\">\n\t\t\t                    <label>Process Scheme: <span class=\"mandatory\">*<\/span> <\/label>\n\t\t\t                    <div class=\"scheme-dropdown-toggle\" data-target=\"processSchemeCheckboxes\" data-default=\"-- Select Process Scheme --\">-- Select Process Scheme --<\/div>\n\t\t\t                    <div class=\"scheme-checkbox-list\" id=\"processSchemeCheckboxes\"><\/div>\n\t\t\t                     <span class=\"error error_process_scheme\" style=\"color: red; font-size: 13px; margin-top: 5px;\"><\/span>\n\t\t\t                <\/div>\n\t\t\t            <\/div>\n\t\t\t            <!-- Certification End-->\n\t\t                <input type=\"hidden\" name=\"bco_assign_training\" class=\"bco_assign_training\" value=\"\">\n\t\t                 <input type=\"hidden\" name=\"bco_assign_cert\" class=\"bco_assign_cert\" value=\"\">\n\t\t                <input type=\"hidden\" name=\"Date\" value=\"2026-09-19\">\n\t\t            <\/div>\n\t\t            <div class=\"other_enquiry_form\">\n\t\t            \t<h6 class=\"label\">Specified details <span class=\"mandatory\">*<\/span><\/h6>\n\t\t            \t<div class=\"mb-3\">\n\t\t                     <textarea class=\"form-control\" name=\"other_enquiry\" rows=\"3\" id=\"other_enquiry\" placeholder=\"Please describe your enquiry\"><\/textarea>\n\t\t                     <span class=\"error error_enquiry\" style=\"color: red; font-size: 13px; margin-top: 5px; display: block;\"><\/span>\n\t\t                <\/div>\n\t\t            <\/div>\n\t\t\t\t\t<!--<div class=\"captcha\">\n\t\t\t\t\t  <div class=\"g-recaptcha\" data-sitekey=\"6LdfrBMiAAAAANUyn31B8bi7ABPn9EZN_w-Jkf42\"><\/div>\n\t\t\t\t\t  <span class=\"error error_captcha\"><\/span>\n\t\t\t\t\t<\/div> -->\n\t\t\t\t\t<div class=\"mb-3\">\n                <label><input type=\"checkbox\" id=\"privacyCheck\" name=\"acceptance-836\" value=\"1\" aria-invalid=\"false\"><span class=\"wpcf7-list-item-label\"><span style=\"color:black\"> I agree that IAS can use my data for the purposes of dealing with my request, in accordance with the <\/span><b><a href=\"https:\/\/iasiso-gulf.com\/KW\/online-privacy-statement\/\" style=\"color:#A70000\" target=\"_blank\">IAS Online Privacy Statement<\/a><\/b><\/span><span class=\"mandatory\">*<\/span>\n                <\/label>\n                <span class=\"error error_privacy\" style=\"color: red; font-size: 13px; margin-top: 5px; display: block;\"><\/span>\n            <\/div>\n\t\t\t\t\t\n \t\t\t\t\t<div style=\"width:300px;max-width:100%;\">\n \t\t\t\t\t\t<label>Enter Captcha:<\/label>\n\n\t\t\t\t\t\t  <div style=\"margin-bottom: 10px; display: flex; align-items: center; gap: 10px;\">\n\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/iasiso-gulf.com\/KW\/?stm_captcha=1789827916\" alt=\"captcha\" id=\"captchaImage\" style=\"border: 1px solid #ccc; padding: 5px; height: 80px; width: 260px; display: block;\">\n\t\t\t\t\t\t\t<i class=\"fa fa-refresh reload-icon\" id=\"refreshCaptcha\" style=\"cursor: pointer;font-size: 24px; color: #007bff;transition: transform 0.3s ease;\" onmouseover=\"this.style.transform='rotate(90deg)';\" onmouseout=\"this.style.transform='rotate(0deg)';\"><\/i>\n\t\t\t\t\t\t  <\/div>\n\t\t\t\t\t\t <input type=\"text\" class=\"form-control\" name=\"captcha_answer\" id=\"captcha_answer\" required\n           style=\"width: 100%; padding: 8px; border: 1px solid #ccc; border-radius: 4px; font-size: 14px;\">\n\t\t\t\t\t   <span class=\"error error_captcha\" style=\"color: red; font-size: 13px; margin-top: 5px; display: block;\"><\/span>\n \t\t\t\t\t<\/div> \n\t\t\t\t\t<div class=\"form-note mb-3\">\n\t\t\t\t\t\t<strong>Note:<\/strong>\n\t\t\t\t\t\tFor clarity on Process and Product certification schemes, please refer this website menu.\n\t\t\t\t\t<\/div>\n\t\t        <\/div>\n\t\t\t\t\n            <\/div>\n            \n            <button type=\"submit\" class=\"btn btn-primary btn-submit\">Submit<\/button>\n        <\/form>\n\t\t<!-- The Modal -->\n\t\t<div class=\"modal\" id=\"myModalAlert\">\n\t\t  <div class=\"modal-dialog\">\n\t\t    <div class=\"modal-content\">\n\t\t      <!-- Modal Header -->\n\t\t      <div class=\"modal-header\">\n\t\t        <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\"><\/button>\n\t\t      <\/div>\n\t\t      <!-- Modal body -->\n\t\t      <div class=\"modal-body\">\n\t\t        Thank You\n\t\t      <\/div>\n\t\t    <\/div>\n\t\t  <\/div>\n\t\t<\/div>\n\t\t<div class=\"modal\" id=\"error_pop\">\n\t\t  <div class=\"modal-dialog\" role=\"document\">\n\t\t\t<div class=\"modal-content\">\n\t\t\t  <div class=\"modal-header bg-danger text-white\">\n\t\t\t\t<center><h5 class=\"modal-title\" id=\"errorModalLabel\">Duplicate Email<\/h5><\/center>\n\t\t\t\t<button type=\"button\" class=\"btn-close btn-close-white\" data-bs-dismiss=\"modal\" aria-\t\t\t\t\t\tlabel=\"Close\"><\/button>\n\t\t\t  <\/div>\n\t\t\t  <div class=\"modal-body\" id=\"error_pop_con\">\n\n\t\t\t  <\/div>\n\t\t\t  <div class=\"modal-footer\">\n\t\t\t\t<div class=\"d-flex justify-content-end gap-2\">\n\t\t\t\t  <button type=\"button\" class=\"btn btn-outline-secondary\" id=\"cancelProceed\">Cancel<\/button>\n\t\t\t\t  <button type=\"button\" id=\"proceed_trn_enq\" class=\"btn btn-primary\" data-enquiry-type=\"\">Proceed<\/button>\n\t\t\t\t<\/div>\n\t\t\t  <\/div>\n\t\t\t<\/div>\n\t\t  <\/div>\n\t\t<\/div>\n\t\t\n\t\t<\/div>\n\t\t<\/div>\n    <\/div><script type='text\/javascript'>\n\n\t\t\tvar base_url_api = 'https:\/\/erp.iasiso.com\/Api';\n\t\t    var base_url = 'https:\/\/erp.iasiso.com';\n\t\t\tvar email_url = '';\n\t\t    $(document).ready(function() {\n\n\t\t    \t\/\/ Move modals to body so they aren't trapped inside container overflow\n\t\t    \t$('#myModalAlert, #error_pop').appendTo('body');\n\n\t\t    \t\/\/ Force the mobile country code + input onto one joined line, with a compact height.\n\t\t    \t\/\/ Works even if the theme strips Bootstrap \/ the input-group class.\n\t\t    \tfunction enforceMobileGroup(){\n\t\t    \t\tvar grp = $('#CountryCode').parent();\n\t\t    \t\tif(!grp.length) return;\n\t\t    \t\tgrp.css({\n\t\t    \t\t\t'display':'flex','flex-wrap':'nowrap','align-items':'stretch',\n\t\t    \t\t\t'width':'100%','margin':'0','padding':'0'\n\t\t    \t\t});\n\t\t    \t\t$('#CountryCode').css({\n\t\t    \t\t\t'display':'flex','align-items':'center','flex':'0 0 auto','width':'auto',\n\t\t    \t\t\t'white-space':'nowrap','padding':'12px 9px','font-size':'14px','line-height':'1.5',\n\t\t    \t\t\t'background':'#e9ecef','border':'1px solid #ced4da','border-right':'0',\n\t\t    \t\t\t'border-top-left-radius':'0.25rem','border-bottom-left-radius':'0.25rem',\n\t\t    \t\t\t'border-top-right-radius':'0','border-bottom-right-radius':'0',\n\t\t    \t\t\t'margin':'0','color':'#212529','box-sizing':'border-box'\n\t\t    \t\t});\n\t\t    \t\t$('#MobileNumber').css({\n\t\t    \t\t\t'display':'block','flex':'1 1 auto','width':'1%','min-width':'0','margin':'0',\n\t\t    \t\t\t'padding':'12px 9px','font-size':'14px','line-height':'1.5','height':'auto',\n\t\t    \t\t\t'border-top-left-radius':'0','border-bottom-left-radius':'0',\n\t\t    \t\t\t'border-top-right-radius':'0.25rem','border-bottom-right-radius':'0.25rem',\n\t\t    \t\t\t'box-sizing':'border-box'\n\t\t    \t\t});\n\t\t    \t}\n\t\t    \tenforceMobileGroup();\n\t\t    \tsetTimeout(enforceMobileGroup, 600);\n\n\t\t    \t\/\/ Toggle open\/close for scheme checkbox dropdowns\n\t\t    \t$(document).on('click', '.scheme-dropdown-toggle', function(e){\n\t\t    \t\te.stopPropagation();\n\t\t    \t\tvar targetId = $(this).data('target');\n\t\t    \t\tvar list = $('#'+targetId);\n\t\t    \t\t$('.scheme-checkbox-list').not(list).removeClass('show');\n\t\t    \t\t$('.scheme-dropdown-toggle').not(this).removeClass('open');\n\t\t    \t\tlist.toggleClass('show');\n\t\t    \t\t$(this).toggleClass('open');\n\t\t    \t});\n\t\t    \t$(document).on('click', '.scheme-checkbox-list', function(e){ e.stopPropagation(); });\n\t\t    \t$(document).on('click', function(){\n\t\t    \t\t$('.scheme-checkbox-list').removeClass('show');\n\t\t    \t\t$('.scheme-dropdown-toggle').removeClass('open');\n\t\t    \t});\n\n\t\t    \t\/\/ Update toggle label as user checks\/unchecks product names\n\t\t    \t$(document).on('change', '.product-name-chk', function(){\n\t\t    \t\tvar count = $('.product-name-chk:checked').length;\n\t\t    \t\tvar toggle = $('.scheme-dropdown-toggle[data-target=\"ProductNameCheckboxes\"]');\n\t\t    \t\tif(count === 0){\n\t\t    \t\t\ttoggle.text(toggle.data('default'));\n\t\t    \t\t} else if(count === 1){\n\t\t    \t\t\ttoggle.text($('.product-name-chk:checked').closest('label').text().trim());\n\t\t    \t\t} else {\n\t\t    \t\t\ttoggle.text(count + ' selected');\n\t\t    \t\t}\n\t\t    \t\t\/\/ Re-fetch the BCO assignment now that the user has actually picked products.\n\t\t    \t\t\/\/ Without this, .bco_assign_training keeps the empty value from the earlier\n\t\t    \t\t\/\/ fetchBcoTraining() call (fired on country\/state\/Type\/Category change while no\n\t\t    \t\t\/\/ products were checked), and SEO\/addEnquiry then writes Region not allocated\n\t\t    \t\t\/\/ into the email because the bco_assign POST field arrives empty.\n\t\t    \t\tfetchBcoTraining();\n\t\t    \t});\n\t\t    \t\/\/ Helper: reset ProductName toggle label + close panel\n\t\t    \twindow.resetProductNameToggle = function(){\n\t\t    \t\tvar toggle = $('.scheme-dropdown-toggle[data-target=\"ProductNameCheckboxes\"]');\n\t\t    \t\ttoggle.text(toggle.data('default')).removeClass('open');\n\t\t    \t\t$('#ProductNameCheckboxes').removeClass('show');\n\t\t    \t};\n\n\t\t    \t\/\/ Update toggle label as user checks\/unchecks product scheme\n\t\t    \t$(document).on('change', '.product-scheme-chk', function(){\n\t\t    \t\tvar count = $('.product-scheme-chk:checked').length;\n\t\t    \t\tvar toggle = $('.scheme-dropdown-toggle[data-target=\"productSchemeCheckboxes\"]');\n\t\t    \t\tif(count === 0){\n\t\t    \t\t\ttoggle.text(toggle.data('default'));\n\t\t    \t\t} else if(count === 1){\n\t\t    \t\t\ttoggle.text($('.product-scheme-chk:checked').closest('label').text().trim());\n\t\t    \t\t} else {\n\t\t    \t\t\ttoggle.text(count + ' selected');\n\t\t    \t\t}\n\t\t    \t});\n\t\t    \t\/\/ Update toggle label as user checks\/unchecks process scheme\n\t\t    \t$(document).on('change', '.process-scheme-chk', function(){\n\t\t    \t\tvar count = $('.process-scheme-chk:checked').length;\n\t\t    \t\tvar toggle = $('.scheme-dropdown-toggle[data-target=\"processSchemeCheckboxes\"]');\n\t\t    \t\tif(count === 0){\n\t\t    \t\t\ttoggle.text(toggle.data('default'));\n\t\t    \t\t} else if(count === 1){\n\t\t    \t\t\ttoggle.text($('.process-scheme-chk:checked').closest('label').text().trim());\n\t\t    \t\t} else {\n\t\t    \t\t\ttoggle.text(count + ' selected');\n\t\t    \t\t}\n\t\t    \t});\n\t\t    \t\/\/ Helper: reset a scheme toggle label to its default text\n\t\t    \twindow.resetSchemeToggleLabel = function(targetId){\n\t\t    \t\tvar toggle = $('.scheme-dropdown-toggle[data-target=\"'+targetId+'\"]');\n\t\t    \t\tvar defaultText = toggle.data('default') || '-- Select --';\n\t\t    \t\ttoggle.text(defaultText);\n\t\t    \t\ttoggle.removeClass('open');\n\t\t    \t\t$('#'+targetId).removeClass('show');\n\t\t    \t};\n\n\t\t    \t\/\/ Customer name \u2014 letters + space only (strip digits\/symbols on input)\n\t\t    \t$(document).on('input','#CustomerName', function(){\n\t\t    \t\tvar val = $(this).val();\n\t\t    \t\tval = val.replace(\/[^a-zA-Z ]\/g, '');\n\t\t    \t\t$(this).val(val);\n\t\t    \t});\n\n\t\t    \t\/\/credentials\n\t\t    \tvar url = base_url_api+'\/getUser';\n\t\t    \tvar chat_username = '';\n\t\t    \tvar chat_password = '';\n\t\t        $.get(url, function(datas, status){\n\t\t            if(datas){ \n\t\t            \tchat_username = datas.username;\n\t\t            \tchat_password = datas.password;\n\t\t            }\n\t\t        })\n\n\t\t       $('#refreshCaptcha').click(function(){\n\t\t\t\t\t$('#captchaImage').attr('src', 'https:\/\/iasiso-gulf.com\/KW\/?stm_captcha=1789827916&t=' + new Date().getTime());\n\t\t\t\t});\n\n\t\t    \t\/\/country\n\t\t\t\t$(document).on('click','li a.dropdown-item', function() {\n\t\t\t    \tvar code = $(this).data('code');\n\t\t\t    \tvar countryName = $(this).text().trim();\t\n\t\t\t    \tvar country_id = $(this).attr('country_id');\n\t\t\t    \tvar country_code = $(this).attr('country_code');\n\t\t\t\t\tvar mobile_number_length = $(this).attr('data-mobile_number_length');\n\n\t\t\t    \t$('#countryDropdown').html('<span class=\"fi fi-' + code.toLowerCase() + '\"><\/span> ' + countryName);\n\t\t\t    \t$('#country_id').val(country_id);\n\n\t\t\t    \tif(country_code){\n\t\t\t\t\tconsole.log($('#CountryCode').attr('data-phone-length'));\n\t\t\t\t\t\t$('#CountryCode').text(country_code).attr('data-phone-length', mobile_number_length).data('phone-length', mobile_number_length);\n\t\t\t\t\t\t\n\t\t\t\t\t\t\/\/ reset input and error message\n    \t\t\t\t\t$('#MobileNumber').val('');\n    \t\t\t\t\t$('.error_mobile_no').text('');\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t            \n\t\t             var url = base_url_api+'\/getRegion';\n\t\t            $.post(url,{country:country_id},function(states, status){\n\t\t                if(states){\t\t                    \n\t\t                    $('#State').html(states);\n\t\t                }\n\t\t            });\n\t\t            fetchBcoTraining();\n\t\t            fetchBcoCert();\n\t\t\t\t});\n\n\t\t\t\t\/\/country search\n\n\t\t\t\t$(document).on('keyup','.dropdown-input', function() {\n\n\t\t\t\t  \tvar filterValue = $(this).val().toLowerCase();\n\t\t\t\t  \t$('li.country_list').each(function() {\n\t\t\t\t      var text = $(this).text().toLowerCase(); \/\/ Get the text of each li and convert to lowercase\n\t\t\t\t      if (text.indexOf(filterValue) === -1) {\n\t\t\t\t        $(this).hide(); \/\/ Hide the li if it does not contain the filter value\n\t\t\t\t      } else {\n\t\t\t\t        $(this).show(); \/\/ Show the li if it contains the filter value\n\t\t\t\t      }\n\t\t\t\t    });\n\t\t\t\t})\n\n\t\t    \t\/\/Fetch website info\n\n\t\t    \tvar website_url =  window.location.href;\n\n\t\t    \t\/\/var website_url = 'https:\/\/iasiso-middleeast.com\/iso-9001-lead-auditor-training-in-israel\/';\n\n\t\t    \tif(website_url){\n\t\t    \t\t $.post(base_url_api +'\/get_website_details',{url:website_url}, function(datas, status){\n   \t\t\t\t\t\t\tif(datas){\n   \t\t\t\t\t\t\t\t$('.website_id').val(datas.website_id);\n   \t\t\t\t\t\t\t\t$('.url_id').val(datas.url_id);\n\t\t\t\t\t\t\t\t$('.Company').val(datas.company);\n   \t\t\t\t\t\t\t}\n\t\t        \t});\n\t\t    \t}\n\t\t    \t\n\n\t\t        \/\/Fetch country\n\t\t        var url = base_url_api+'\/getCountrys';\n\t\t        var country_option = `<li>\n\t\t\t      <input class=\"form-control dropdown-input\" type=\"text\" placeholder=\"Search\">\n\t\t\t    <\/li>\n\t\t\t    <li>\n\t\t\t      <hr class=\"dropdown-divider\">\n\t\t\t    <\/li>`;\n\t\t        $.get(url, function(datas, status){\n\n\t\t            if(datas){\n\t\t                $(datas).each(function(inex, data) {\n\t\t                   country_option +=`<li class=\"country_list\">\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"dropdown-item\"  country_id=\"`+data.country_id+`\" country_code=\"+`+data.isd_code+`\" data-code=\"`+data.code+`\" data-mobile_number_length=\"`+data.mobile_number_length+`\">\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"fi fi-`+data.code.toLowerCase()+`\"><\/span> `+data.country_name+`\n\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t <\/li>`;\n\n\t\t                    \/\/ Auto select Kuwait (country_id = 120)\n\t\t                    var default_country_id = 120;\n\t\t                    if(data.country_id == default_country_id){\n\t\t                        $('#countryDropdown').html(\n\t\t                            '<span class=\"fi fi-' + data.code.toLowerCase() + '\"><\/span> ' + data.country_name\n\t\t                        );\n\t\t                        $('#country_id').val(data.country_id);\n\n\t\t                        if(data.isd_code){\n\t\t                            $('#CountryCode')\n\t\t                                .text('+' + data.isd_code)\n\t\t                                .attr('data-phone-length', data.mobile_number_length)\n\t\t                                .data('phone-length', data.mobile_number_length);\n\t\t                        }\n\n\t\t                        var url2 = base_url_api + '\/getRegion';\n\t\t                        $.post(url2, { country: data.country_id }, function(states, status){\n\t\t                            if(states){ $('#State').html(states); }\n\t\t                        });\n\t\t                    }\n\t\t                });\n\n\n\t\t                $('.country-section .dropdown-menu').html(country_option);\n\t\t            }\n\t\t        });\n\t\t         $(document).on('change','#State', function(){\n\n\t\t            var url = base_url_api+'\/getRegion';\n\t\t            var state = $(this).val();\n\n\t\t            $.post(url,{state:state},function(datas, status){\n\t\t                if(datas){\n\t\t                    \n\t\t                    $('#City').html(datas);\n\t\t                }\n\t\t            });\n\t\t             fetchBcoTraining();\n\n\t\t             fetchBcoCert();\n\t\t        })\n\t\t\t\t\n\t\t\t\t$(document).on('input','#MobileNumber', function(){\n\n\t\t\t\tlet allowedLength = $('#CountryCode').data('phone-length') ? parseInt($('#CountryCode').data('phone-length')) : null;\n\t\t            var inputValue = $(this).val();\n\t\t\t\t\tvar errorSpan = $('.error_mobile_no');\n\n\t\t\t\t\t\/\/ Strip any non-digit characters immediately\n\t\t\t\t\tinputValue = inputValue.replace(\/[^0-9]\/g, '');\n\n\t\t\t\t\t\/\/ Prevent exceeding max length (slice)\n\t\t\t\t\tif (allowedLength && inputValue.length > allowedLength){\n\t\t\t\t\t\tinputValue = inputValue.slice(0, allowedLength);\n\t\t\t\t\t}\n\t\t\t\t\t$(this).val(inputValue);\n\n\t\t\t\t\t\/\/ Show info counter or clear when complete\n\t\t\t\t\tif(allowedLength){\n\t\t\t\t\t\tif(inputValue.length === 0){\n\t\t\t\t\t\t\terrorSpan.text('');\n\t\t\t\t\t\t} else if(inputValue.length < allowedLength){\n\t\t\t\t\t\t\terrorSpan.css('color','#e67e22').text('Please enter ' + allowedLength + ' digits (' + inputValue.length + '\/' + allowedLength + ')');\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\terrorSpan.css('color','').text('');\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\terrorSpan.text('');\n\t\t\t\t\t}\n\t\t        })\n\n\t\t        \/\/ Cache the full original Category <select> HTML on first render, so we can rebuild later.\n\t\t        \/\/ (Cross-browser compatibility: hiding <option> in a <select> doesn't work in Chrome\/Safari,\n\t\t        \/\/  so we rebuild the <select> with only valid options instead.)\n\t\t        var _originalCategoryHTML = null;\n\t\t        \/\/ Plain-data cache of all categories \u2014 avoids DOM serialization weirdness with selected attribute\n\t\t        var _allCategories = [];   \/\/ [{val, text}, ...]\n\t\t        function _captureOriginalCategoryHTML(force){\n\t\t            \/\/ If force===true, always re-capture; otherwise only if not yet captured\n\t\t            if(force === true || _originalCategoryHTML === null){\n\t\t                var html = $('#Category').html();\n\t\t                \/\/ Only store if the select actually has real options (more than just placeholder)\n\t\t                if(html && $('#Category option').length > 1){\n\t\t                    _originalCategoryHTML = html;\n\t\t                    \/\/ Also capture as plain data\n\t\t                    _allCategories = [];\n\t\t                    $('#Category option').each(function(){\n\t\t                        _allCategories.push({ val: $(this).attr('value') || '', text: $(this).text() });\n\t\t                    });\n\t\t                }\n\t\t            }\n\t\t        }\n\t\t        \/\/ Rebuild #Category from plain data, optionally limited to a set of valid values.\n\t\t        \/\/ Always defaults to the placeholder being selected.\n\t\t        function _rebuildCategoryFromCache(validValues){\n\t\t            if(!_allCategories.length) return;\n\t\t            var html = '';\n\t\t            for(var i=0; i<_allCategories.length; i++){\n\t\t                var o = _allCategories[i];\n\t\t                if(!o.val){\n\t\t                    \/\/ placeholder always included AND explicitly marked selected\n\t\t                    html += '<option value=\"\" selected=\"selected\">'+o.text+'<\/option>';\n\t\t                    continue;\n\t\t                }\n\t\t                if(!validValues || validValues.indexOf(o.val) !== -1){\n\t\t                    html += '<option value=\"'+o.val+'\">'+o.text+'<\/option>';\n\t\t                }\n\t\t            }\n\t\t            var sel = $('#Category');\n\t\t            sel.html(html);\n\t\t            sel.val('');\n\t\t            var el = document.getElementById('Category');\n\t\t            if(el) el.selectedIndex = 0;\n\t\t            \/\/ select2 refresh: namespaced trigger updates the visible widget WITHOUT firing user change handlers\n\t\t            sel.trigger('change.select2');\n\t\t        }\n\n\t\t        \/\/Fetch Type and category\n\t\t        var url = base_url_api+'\/getTrainings';\n\n\t\t        $.get(url, function(datas, status){\n\t\t            if(datas){\n\t\t                var type_option = '<option value=\"\">---Please select---<\/option>';\n\t\t                $(datas.type).each(function(inex, data) {\n\t\t                   type_option +='<option value=\"'+data.tc_id+'\">'+data.tra_cat_name+'<\/option>';\n\t\t                });\n\n\t\t                $('#Type').html(type_option);\n\n\t\t                var category_option = '<option value=\"\">---Please select---<\/option>';\n\t\t                $(datas.category).each(function(inex, data) {\n\t\t                   category_option +='<option value=\"'+data.tt_id+'\">'+data.tra_type_name+'<\/option>';\n\t\t                });\n\n\t\t                $('#Category').html(category_option);\n\n\t\t                \/\/ Capture original HTML AFTER categories are actually populated\n\t\t                _captureOriginalCategoryHTML(true);\n\t\t            }\n\t\t        });\n\n\t\t        \/\/ When Product Type changes \u2192 rebuild Category list to only categories that have products for this Type.\n\t\t        $('#Type').change(function(){\n\t\t            var Type = $(this).val();\n\n\t\t            \/\/ Capture categories if not yet captured (safety net in case API was still pending earlier)\n\t\t            if(_originalCategoryHTML === null){\n\t\t                _captureOriginalCategoryHTML(true);\n\t\t            }\n\n\t\t            \/\/ Reset downstream ProductName: explicitly uncheck, clear HTML, reset toggle, clear errors\n\t\t            $('.product-name-chk').prop('checked', false);\n\t\t            $('#ProductNameCheckboxes').html('<span style=\"color:#999;\">-- Please select Product Type &amp; Category first --<\/span>');\n\t\t            if(typeof resetProductNameToggle === 'function') resetProductNameToggle();\n\t\t            $('.error_product_category, .error_product_name').text('');\n\n\t\t            \/\/ Synchronously reset Category to placeholder using the plain-data cache.\n\t\t            \/\/ Pass null to include ALL categories; async filter below will narrow them.\n\t\t            _rebuildCategoryFromCache(null);\n\n\t\t            if(!Type){\n\t\t                fetchBcoTraining();\n\t\t                return;\n\t\t            }\n\n\t\t            \/\/ Async: probe each category for products under this Type, then narrow the list.\n\t\t            var validOptions = [];\n\t\t            var pendingChecks = 0;\n\t\t            var checkDone = function(){\n\t\t                pendingChecks--;\n\t\t                if(pendingChecks <= 0){\n\t\t                    _rebuildCategoryFromCache(validOptions);\n\t\t                }\n\t\t            };\n\n\t\t            for(var i=0; i<_allCategories.length; i++){\n\t\t                var catVal = _allCategories[i].val;\n\t\t                if(!catVal) continue; \/\/ skip placeholder\n\t\t                pendingChecks++;\n\t\t                (function(catVal){\n\t\t                    $.ajax({\n\t\t                        type: 'post',\n\t\t                        url: base_url_api+'\/getSchemes',\n\t\t                        data: { category: catVal, Type: Type },\n\t\t                        success: function(resp){\n\t\t                            var count = 0;\n\t\t                            if(resp && $.trim(resp) !== ''){\n\t\t                                $(resp).filter('option').each(function(){\n\t\t                                    if($.trim($(this).val()) !== '') count++;\n\t\t                                });\n\t\t                            }\n\t\t                            if(count > 0){ validOptions.push(catVal); }\n\t\t                            checkDone();\n\t\t                        },\n\t\t                        error: function(){\n\t\t                            \/\/ On error, keep the option visible (safe default)\n\t\t                            validOptions.push(catVal);\n\t\t                            checkDone();\n\t\t                        }\n\t\t                    });\n\t\t                })(catVal);\n\t\t            }\n\n\t\t            if(pendingChecks === 0){\n\t\t                _rebuildCategoryFromCache(validOptions);\n\t\t            }\n\t\t            fetchBcoTraining();\n\t\t        });\n\n\t\t        \/\/ When Category changes \u2192 populate ProductName checkboxes\n\t\t        $('#Category').change(function(){\n\t\t            var Category = $(this).val();\n\t\t            var Type = $('#Type').val();\n\n\t\t            \/\/ Reset downstream ProductName: explicitly uncheck, clear HTML, reset toggle, clear error\n\t\t            $('.product-name-chk').prop('checked', false);\n\t\t            $('#ProductNameCheckboxes').html('<span style=\"color:#999;\">-- Please select Product Type &amp; Category first --<\/span>');\n\t\t            if(typeof resetProductNameToggle === 'function') resetProductNameToggle();\n\t\t            $('.error_product_name').text('');\n\n\t\t            if(Category && Type){\n\t\t                $.ajax({\n\t\t                    type: 'post',\n\t\t                    url: base_url_api+'\/getSchemes',\n\t\t                    data: { category: Category, Type: Type },\n\t\t                    success: function(html){\n\t\t                        if(html && $.trim(html) !== ''){\n\t\t                            \/\/ Convert <option value=\"V\">T<\/option> response to checkboxes\n\t\t                            var chkHtml = '';\n\t\t                            $('<select>'+html+'<\/select>').find('option').each(function(){\n\t\t                                var v = $(this).attr('value');\n\t\t                                var t = $(this).text();\n\t\t                                if(v && $.trim(v) !== '') {\n\t\t                                    chkHtml += '<div class=\"form-check\"><label class=\"form-check-label\" style=\"color:black;\"><input type=\"checkbox\" class=\"form-check-input product-name-chk\" name=\"ProductName[]\" value=\"'+v+'\"> '+t+'<\/label><\/div>';\n\t\t                                }\n\t\t                            });\n\t\t                            if(chkHtml){\n\t\t                                $('#ProductNameCheckboxes').html(chkHtml);\n\t\t                            }\n\t\t                        }\n\t\t                    }\n\t\t                });\n\t\t            }\n\t\t            fetchBcoTraining();\n\t\t        });\n\t\t\t\t\n\t\t\t\t $('#cancelProceed').click(function(){\n\t\t        \t$('#EMail').val('');\n\t\t\t\t\t$('#error_pop').modal('toggle');\n\t\t\t\t\t$('.btn-submit').removeClass('disabled');\n\t\t        });\n\t\t\t\t\n\t\t\t\t$('#proceed_trn_enq').click(function(){\n\t\t        \t$('#proceed_trn_enq').attr('data-enquiry-type','same');\n\t\t        \t$('#proceed_trn_enq').attr('data-enquiry-id',$('#same_enquiry_id').val());\n\t\t\t\t\t$('#error_pop').modal('toggle');\n\t\t\t\t\terror = 0\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t$('.btn-submit').click();\n\t\t\t\t\t}, 300);\n\t\t        });\n\t\t        \n\t\t        \/\/New function for Duplicate email submission\n\t\t\t\t\tfunction submitFinalForm(){\n                    \n                        $('.btn-submit')\n                            .prop('disabled', true)\n                            .text('Submitting...');\n                    \n                        var enquiry_type  = $('input.enquiry_type:checked').val();\n                    \n                        if(enquiry_type == 1){\n                            var purposOf  = $('#purposOf').val();\n                            if(purposOf == 1){\n                                trainingEnquiry();\n                            } else if(purposOf == 2){\n                                certificationEnquiry();\n                            } else if(purposOf == 3){\n                                trainingEnquiry();\n                                certificationEnquiry();\n                            }\n                        } else {\n                            otherEnquiry();\n                        }\n                    }\n\n\t\t        \/\/Fetch process scheme -> checkboxes\n\t\t        var url = base_url_api+'\/getScheme\/1';\n\n\t\t        $.get(url, function(data, status){\n\t\t            if(data){\n\t\t                var chkHtml = '';\n\t\t                $(data).filter('option').each(function(){\n\t\t                    var v = $(this).val(); var t = $(this).text();\n\t\t                    if(v && $.trim(v) !== '') chkHtml += '<div class=\"form-check\"><label class=\"form-check-label\" style=\"color:black;\"><input type=\"checkbox\" class=\"form-check-input process-scheme-chk\" name=\"scheme[]\" value=\"'+v+'\"> '+t+'<\/label><\/div>';\n\t\t                });\n\t\t                $('#processSchemeCheckboxes').html(chkHtml || '<span style=\"color:#999;\">No schemes available<\/span>');\n\t\t            }\n\t\t        });\n\n\t\t        \/\/Fetch product scheme -> checkboxes\n\t\t        var url = base_url_api+'\/getScheme\/2';\n\n\t\t        $.get(url, function(data, status){\n\t\t            if(data){\n\t\t                var chkHtml = '';\n\t\t                $(data).filter('option').each(function(){\n\t\t                    var v = $(this).val(); var t = $(this).text();\n\t\t                    if(v && $.trim(v) !== '') chkHtml += '<div class=\"form-check\"><label class=\"form-check-label\" style=\"color:black;\"><input type=\"checkbox\" class=\"form-check-input product-scheme-chk\" name=\"scheme[]\" value=\"'+v+'\"> '+t+'<\/label><\/div>';\n\t\t                });\n\t\t                $('#productSchemeCheckboxes').html(chkHtml || '<span style=\"color:#999;\">No schemes available<\/span>');\n\t\t            }\n\t\t        });\n\t\t\t\t\n\t\t\t\tfunction getCookie(name) {\n\t\t\t\t\t\t\t\t const cookies = document.cookie.split(';');\n\t\t\t\t\t\t\t\t\tconst captcha_word = (cookies.find(c => c.trim().startsWith('captcha_word=')) || '').split('=')[1] || null;\n\t\t\t\t\t\t\t\t\treturn captcha_word;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\n\t\t        $('.btn-submit').click(function(e) {\n\t\t        \te.preventDefault();\n\n\t\t        \t\/\/validation start\n\t\t\t        \tvar CustomerName  = $('#CustomerName').val();\n\n\t\t\t        \tvar error = 0;\n\t\t\t\t\t\tvar mail_dup_error = 0;\n\n\t\t\t        \t\/\/ Privacy consent required\n\t\t\t        \tif(!$('#privacyCheck').is(':checked')){\n\t\t\t        \t\t$('.error_privacy').text('Please accept the IAS Online Privacy Statement to continue');\n\t\t\t        \t\terror = 1;\n\t\t\t        \t}else{\n\t\t\t        \t\t$('.error_privacy').text('');\n\t\t\t        \t}\n\n\t\t\t        \tif(!CustomerName){\n\t\t\t        \t\t$('.error_company_name').text('Enter the Customer name');\n\t\t\t        \t\terror = 1;\n\t\t\t        \t}else {\n\t\t\t        \t\t$('.error_company_name').text('');\n\t\t\t        \t} \n\n\t\t\t        \tvar EMail  = $('#EMail').val();\n\t\t\t        \t\/\/ Strict email pattern: requires valid local part, domain with at least one dot, and TLD of 2-24 letters\n\t\t\t        \tvar emailPattern = \/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*\\.[a-zA-Z]{2,24}$\/;\n\t\t\t        \tvar validTLDs = ['com','org','net','edu','gov','mil','int','co','io','ai','app','dev','info','biz','name','pro','me','tv','us','uk','in','cn','jp','de','fr','it','es','ru','br','au','ca','mx','kr','nl','se','no','fi','dk','pl','be','ch','at','ie','nz','za','ae','sa','qa','om','bh','kw','eg','ma','ng','ke','tz','ug','gh','lk','bd','pk','np','id','my','sg','th','vn','ph','tw','hk','mo','il','tr','gr','pt','cz','sk','hu','ro','bg','ua','by','rs','hr','si','ee','lv','lt','is','lu','mt','cy','iq','ir','jo','lb','sy','ye','ly','tn','dz','online','site','store','tech','blog','shop','xyz','cloud','digital','email','website','agency','design','studio','services','solutions','world','life','space','live','today','center','company','group','news','media','network','systems','academy','school','training','education'];\n\n\t\t\t        \tif(!EMail){\n\t\t\t        \t\t$('.error_email').text('Enter the email');\n\t\t\t        \t\terror = 1;\n\t\t\t        \t}else if(!emailPattern.test(EMail)){\n\t\t\t        \t\t$('.error_email').text('Enter a valid email address');\n\t\t\t        \t\terror = 1;\n\t\t\t        \t}else {\n\t\t\t        \t\tvar emailParts = EMail.split('@');\n\t\t\t        \t\tvar domain = emailParts[1].toLowerCase();\n\t\t\t        \t\tvar tld = domain.split('.').pop();\n\t\t\t        \t\tif(validTLDs.indexOf(tld) === -1){\n\t\t\t        \t\t\t$('.error_email').text('Please enter a valid email address with a real domain');\n\t\t\t        \t\t\terror = 1;\n\t\t\t        \t\t} else {\n\t\t\t        \t\t\tvar domainParts = domain.split('.');\n\t\t\t        \t\t\tvar secondLevel = domainParts[domainParts.length - 2];\n\t\t\t        \t\t\tif(!secondLevel || secondLevel.length < 2 || domain.indexOf('..') !== -1){\n\t\t\t        \t\t\t\t$('.error_email').text('Please enter a valid email address with a real domain');\n\t\t\t        \t\t\t\terror = 1;\n\t\t\t        \t\t\t} else {\n\t\t\t        \t\t\t\t$('.error_email').text('');\n\t\t\t        \t\t\t}\n\t\t\t        \t\t}\n\t\t\t        \t}\n\n\t\t\t        \tvar country_id  = $('#country_id').val(); \n\n\t\t\t        \tif(!country_id){\n\t\t\t        \t\t$('.error_country').text('Enter the country');\n\t\t\t        \t\terror = 1;\n\t\t\t        \t}else {\n\t\t\t        \t\t$('.error_country').text('');\n\t\t\t        \t}  \n\n\t\t\t        \tvar State  = $('#State').val(); \n\n\t\t\t        \tif(!State){\n\t\t\t        \t\t$('.error_state').text('Enter the state');\n\t\t\t        \t\terror = 1;\n\t\t\t        \t}else {\n\t\t\t        \t\t$('.error_state').text('');\n\t\t\t        \t} \n\n\t\t\t        \tvar MobileNumber  = $('#MobileNumber').val(); \n\n\t\t\t        \tif(!MobileNumber){\n\t\t\t        \t\t$('.error_mobile_no').text('Enter the mobile number');\n\t\t\t        \t\terror = 1;\n\t\t\t        \t}\n\t\t\t\t\t\telse if (!\/^\\d+$\/.test(MobileNumber)) {\n\t\t\t\t\t\t\t\t$('.error_mobile_no').text('Only digits are allowed');\n\t\t\t\t\t\t\t\terror = 1;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t        \t\tif($('.error_mobile_no').text() != ''){\n\t\t\t\t\t\t\t\terror = 1;\n\t\t\t\t\t\t\t}else{\n\t\t\t\t\t\t\t\t$('.error_mobile_no').text('');\n\t\t\t\t\t\t\t}\n\t\t\t        \t} \n\n\t\t\t        \tvar enquiry_type_val = $('input.enquiry_type:checked').val();\n\n\t\t\t        \t\/\/ Other enquiry type -- validate the textarea instead of training\/cert fields\n\t\t\t        \tif(enquiry_type_val == 2){\n\t\t\t        \t\tvar other_enquiry_val = $.trim($('#other_enquiry').val() || '');\n\t\t\t        \t\tif(!other_enquiry_val){\n\t\t\t        \t\t\t$('.error_enquiry').text('Please enter your enquiry details');\n\t\t\t        \t\t\terror = 1;\n\t\t\t        \t\t}else{\n\t\t\t        \t\t\t$('.error_enquiry').text('');\n\t\t\t        \t\t}\n\t\t\t        \t\t\/\/ Skip purposOf\/training\/cert validations for Other\n\t\t\t        \t\tif(error){\n\t\t\t        \t\t\t$('html, body').animate({ scrollTop: $('.error:visible:first').offset().top - 100 }, 400);\n\t\t\t        \t\t\treturn;\n\t\t\t        \t\t}\n\t\t\t        \t\tsubmitFinalForm();\n\t\t\t        \t\treturn;\n\t\t\t        \t}\n\n\t\t\t        \tvar purposOf  = $('#purposOf').val();\n\n\t\t\t        \tif(!purposOf){\n\t\t\t        \t\t$('.error_trg_cert').text('Please choose the training\/certification');\n\t\t\t        \t\terror = 1;\n\t\t\t        \t}else {\n\t\t\t        \t\t$('.error_trg_cert').text('');\n\t\t\t        \t}\n\n\t\t\t        \tif((purposOf == 1) || (purposOf == 3)){ \n\t\t\t        \t\t\/\/Training validation  \n\t\t\t\t        \tvar Type  = $('#Type').val(); \n\n\t\t\t\t        \tif(!Type){\n\t\t\t\t        \t\t$('.error_product_type').text('Please choose type');\n\t\t\t\t        \t\terror = 1;\n\t\t\t\t        \t}else {\n\t\t\t\t        \t\t$('.error_product_type').text('');\n\t\t\t\t        \t} \n\n\t\t\t\t        \tvar Category  = $('#Category').val(); \n\n\t\t\t\t        \tif(!Category){\n\t\t\t\t        \t\t$('.error_product_category').text('Please choose category');\n\t\t\t\t        \t\terror = 1;\n\t\t\t\t        \t}else {\n\t\t\t\t        \t\t$('.error_product_category').text('');\n\t\t\t\t        \t} \n\n\t\t\t\t        \tvar ProductNameCount = $('.product-name-chk:checked').length;\n\n\t\t\t\t        \tif(ProductNameCount === 0){\n\t\t\t\t        \t\t$('.error_product_name').text('Please choose at least one product');\n\t\t\t\t        \t\terror = 1;\n\t\t\t\t        \t}else {\n\t\t\t\t        \t\t$('.error_product_name').text('');\n\t\t\t\t        \t}\n\t\t\t\t        }\n\n\t\t\t\t        if((purposOf == 2) || (purposOf == 3)){\n\t\t\t\t        \tvar product_scheme_count  = $('.product-scheme-chk:checked').length;\n\t\t\t\t        \tvar process_scheme_count  = $('.process-scheme-chk:checked').length;\n\n\t\t\t\t\t\t\tvar cert_type = $('#cert_Type').val();\n\n\t\t\t\t\t\t\tif(!cert_type){\n\t\t\t\t        \t\t$('.error_cert_product_type').text('Please choose any one Certification Type');\n\t\t\t\t        \t\terror = 1;\n\t\t\t\t        \t}else {\n\t\t\t\t        \t\t$('.error_cert_product_type').text('');\n\t\t\t\t\t\t\t\tif(cert_type == 1){\n\t\t\t\t\t\t\t\t\tif(process_scheme_count === 0){\n\t\t\t\t\t\t\t\t\t\terror = 1;\n\t\t\t\t\t\t\t\t\t\t$('.error_process_scheme').text('Please choose at least one process scheme');\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$('.error_process_scheme').text('');\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} else if(cert_type == 2){\n\t\t\t\t\t\t\t\t\tif(product_scheme_count === 0){\n\t\t\t\t\t\t\t\t\t\terror = 1;\n\t\t\t\t\t\t\t\t\t\t$('.error_product_name').text('Please choose at least one product scheme');\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$('.error_product_name').text('');\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} else if(cert_type == 3){\n\t\t\t\t\t\t\t\t\tif(product_scheme_count === 0 || process_scheme_count === 0){\n\t\t\t\t\t\t\t\t\t\terror = 1;\n\t\t\t\t\t\t\t\t\t\t$('.error_process_scheme').text('Please choose at least one from both product and process scheme');\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$('.error_process_scheme').text('');\n\t\t\t\t\t\t\t\t\t\t$('.error_product_name').text('');\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t        \t}\n\t\t\t\t\t\t\t\n\n\n\t\t\t\t        }\n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tvar captcha_cookie = getCookie('captcha_word'); \n \t\t\t\t\t\t\tvar capcha_answer = $('#captcha_answer').val(); \n\t\t\t\t\t\t\tif(capcha_answer && captcha_cookie !== capcha_answer){\n\t\t\t\t\t\t\t\t$('.error_captcha').text('Captcha is not valid');\n\t\t\t\t\t\t\t\terror = 1;\n\t\t\t\t\t\t\t}else{\n\t\t\t\t\t\t\t\tif(!capcha_answer){\n\t\t\t\t\t\t\t\t\t$('.error_captcha').text('Enter the captcha');\n\t\t\t\t\t\t\t\t\terror = 1;\n\t\t\t\t\t\t\t\t}else{\n\t\t\t\t\t\t\t\t\t$('.error_captcha').text('');\n\t\t\t\t\t\t\t\t\/\/ \terror = 0;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\tvar EMail = $('#EMail').val();\n\t\t\t\t\t \tvar prod_scheme = [];\n\t\t\t\t\t \t$('.product-scheme-chk:checked').each(function(){ prod_scheme.push($(this).val()); });\n\t\t\t\t\t \tvar proc_scheme = [];\n\t\t\t\t\t \t$('.process-scheme-chk:checked').each(function(){ proc_scheme.push($(this).val()); });\n\t\t\t\t\t \tvar trn_prod_scheme = [];\n\t\t\t\t\t \t$('.product-name-chk:checked').each(function(){ trn_prod_scheme.push($(this).val()); });\n\t\t\t\t\t\t\n\t\t\t\t\t\tif($('#purposOf').val() == 1){\n\t\t\t\t\t\t\temail_url = base_url_api+'\/api_training_email_check';\n\t\t\t\t\t\t\tvar postdata = {\n\t\t\t\t\t\t\t\tEMail : EMail,\n\t\t\t\t\t\t\t\tprod_scheme : trn_prod_scheme\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t }else if($('#purposOf').val() == 2){\n\t\t\t\t\t\t\temail_url = base_url_api+'\/api_cert_email_check';\n\t\t\t\t\t\t\tvar postdata = {\n\t\t\t\t\t\t\t\tEMail : EMail,\n\t\t\t\t\t\t\t\tprod_scheme : prod_scheme,\n\t\t\t\t\t\t\t\tproc_scheme : proc_scheme\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t }\n\t\t\t\t\t\t \n\t\t\t\t\t\t if(error){\n\t\t\t\t\t\t\/\/Auto Scroll to first error\n\t\t\t\t\t\tvar firstError = $('.error:visible').filter(function() {\n\t\t\t\t\t\t\treturn $(this).text().trim() !== '';\n\t\t\t\t\t\t}).first();\n\n\t\t\t\t\t\tif(firstError.length){\n\t\t\t\t\t\t\t$('html, body').animate({\n\t\t\t\t\t\t\t\tscrollTop: firstError.offset().top - 380\n\t\t\t\t\t\t\t}, 500);\n\n\t\t\t\t\t\t\t\/\/ focus input\/select\n\t\t\t\t\t\t\tfirstError.closest('.mb-3').find('input, select, textarea').focus();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n      \n\t\t\t\t\t\tif(EMail && $('#purposOf').val() != '' && !error){\n\t\t\t\t\t\t     \/\/skip recheck of duplicate email after click proceed\n                            if($('#proceed_trn_enq').attr('data-enquiry-type') == 'same'){\n                                submitFinalForm();\n                                return;\n                            }\n                            \n\t\t\t\t\t\t\t$.ajax({\n\t\t\t\t\t\t\t\ttype:'POST',\n\t\t\t\t\t\t\t\turl:email_url,\n\t\t\t\t\t\t\t\tdata:postdata,\n\t\t\t\t\t\t\t\tsuccess:function(data){\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tvar purposOf = $('#purposOf').val();\n                                var prod_scheme = [];\n                                $('.product-scheme-chk:checked').each(function(){ prod_scheme.push($(this).val()); });\n                                var proc_scheme = [];\n                                $('.process-scheme-chk:checked').each(function(){ proc_scheme.push($(this).val()); });\n\n                                \/\/ Check only for Certification or Training+Certification\n                                if ((purposOf == 2 || purposOf == 3) && (prod_scheme.length === 0 && proc_scheme.length === 0)) {\n                                    $('.error_process_scheme').text('Please choose any one process or product scheme.');\n                                    return; \/\/ Stop submission and prevent modal opening\n                                }\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tif(data == 1 || $('#proceed_trn_enq').attr('data-enquiry-type') == 'same'){\n\t\t\t\t\t\t\t\t\tmail_dup_error = 0;\n\t\t\t\t\t\t\t\t\tif(!error && !mail_dup_error){\n\t\t\t\t\t\t\t\t\/\/ \t\t$('.btn-submit').addClass('disabled');\n\t\t\t\t\t\t\t\t        \/\/Prevent multiple submission\n                                        $('.btn-submit')\n                                        .prop('disabled', true)\n                                        .text('Submitting...');\n                                        \n\t\t\t\t\t\t\t\t\t\tvar enquiry_type  = $('input.enquiry_type:checked').val();\n\t\t\t\t\t\t\t\t\t\t\/\/captcha status success\n\t\t\t\t\t\t\t\t\t\tif(enquiry_type == 1){\n\t\t\t\t\t\t\t\t\t\t\t var purposOf  = $('#purposOf').val();\n\t\t\t\t\t\t\t\t\t\t\tif(purposOf == 1){\n\t\t\t\t\t\t\t\t\t\t\t\ttrainingEnquiry();\n\t\t\t\t\t\t\t\t\t\t\t} else if(purposOf == 2){\n\t\t\t\t\t\t\t\t\t\t\t\tcertificationEnquiry();\n\t\t\t\t\t\t\t\t\t\t\t}else if(purposOf == 3){\n\t\t\t\t\t\t\t\t\t\t\t\ttrainingEnquiry();\n\t\t\t\t\t\t\t\t\t\t\t\tcertificationEnquiry();\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}else {\n\t\t\t\t\t\t\t\t\t\t\totherEnquiry();\n\t\t\t\t\t\t\t\t\t\t}\t\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t}else{\n\t\t\t\t\t\t\t\t\t\t$('#error_pop_con').children().remove().end().append(data);\n\t\t\t\t\t\t\t\t\t\t$('#error_pop').modal('toggle');\n\t\t\t\t\t\t\t\t\t\tvar prcd_btn = $('#same_enquiry_id').attr('data-scheme') == 0 ? 'disabled' : '';\n\t\t\t\t\t\t\t\t\t\t$('#proceed_trn_enq').removeClass('disabled');\n\t\t\t\t\t\t\t\t\t\t$('#proceed_trn_enq').addClass(prcd_btn);\n\t\t\t\t\t\t\t\t\t\tmail_dup_error = 1;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}); \n\t\t\t\t\t\t}\n\n\t\t        })\n\t\t\t\t\n\t\t\t\t$('.btn-close').click(function(e) { \n\t\t\t\t\tlocation.reload();\n\t\t\t\t})\n\n\t\t        function trainingEnquiry() {\n\n\t\t\t\t\t\/\/ Re-fetch the BCO based on currently checked products, then submit only AFTER\n\t\t\t\t\t\/\/ that fetch completes. Uses jQuery deferred (NOT async:false) \u2014 async:false\n\t\t\t\t\t\/\/ blocks the main thread and can interfere with other in-flight XHRs on the\n\t\t\t\t\t\/\/ page (e.g. the get_website_details call that populates the source_of_url\n\t\t\t\t\t\/\/ hidden field). Promise chaining is non-blocking and safe.\n\t\t\t\t\tvar t_country_id = $('#country_id').val();\n\t\t\t\t\tvar t_state_id   = $('#State').val();\n\t\t\t\t\tvar t_Category   = $('#Category').val();\n\t\t\t\t\tvar t_Type       = $('#Type').val();\n\t\t\t\t\tvar t_ProductArr = [];\n\t\t\t\t\t$('.product-name-chk:checked').each(function(){ t_ProductArr.push($(this).val()); });\n\t\t\t\t\tvar t_ProductName = t_ProductArr.join(',');\n\n\t\t\t\t\tvar bcoPromise;\n\t\t\t\t\tif(t_ProductName){\n\t\t\t\t\t\tbcoPromise = $.ajax({\n\t\t\t\t\t\t\ttype:'POST',\n\t\t\t\t\t\t\turl:base_url+'\/Api\/get_bco_training',\n\t\t\t\t\t\t\tdata:'country_id='+t_country_id+'&state_id='+t_state_id+'&Category='+t_Category+'&Type='+t_Type+'&ProductName='+t_ProductName\n\t\t\t\t\t\t}).done(function(bco_id){ $('.bco_assign_training').val(bco_id); });\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbcoPromise = $.Deferred().resolve().promise();\n\t\t\t\t\t}\n\n\t\t\t\t\tbcoPromise.always(function(){\n\t\t\t\t\t\tvar form_data = $('#contct_form').serialize();\n\t\t\t\t\t\tvar url = base_url+'\/SEO\/addEnquiry';\n\t\t\t\t\t\tvar bco_assign = $('.bco_assign_training').val();\n\t\t\t\t\t\tvar enquirySame = $('#proceed_trn_enq').attr('data-enquiry-type');\n\t\t\t\t\t\tvar sameEnquiryId = $('#proceed_trn_enq').attr('data-enquiry-id');\n\t\t\t\t\t\tvar company = $('.Company').val(); \/\/IAS singapore\n\t\t\t\t\t\tvar post_data = \"&bco_assign=\"+bco_assign+\"&company=\"+company+\"&enquirySame=\"+enquirySame+\"&sameEnquiryId=\"+sameEnquiryId;\n\t\t\t\t\t\t$.ajax({\n\t\t\t\t\t\t\ttype:'POST',\n\t\t\t\t\t\t\turl:url,\n\t\t\t\t\t\t\tdata:form_data + post_data + \"&username=\"+chat_username+\"&password=\"+encodeURIComponent(chat_password),\n\t\t\t\t\t\t\tsuccess:function(data){\n\t\t\t\t\t\t\t\tif(data.status == 1){\n\t\t\t\t\t\t\t\t\t\/\/alert(data.message);\n\t\t\t\t\t\t\t\t\t\/\/location.reload();\n\t\t\t\t\t\t\t\t\t$('#myModalAlert .modal-body').text(data.message);\n\t\t\t\t\t\t\t\t\t$('#myModalAlert').modal('show');\n\t\t\t\t\t\t\t\t\t$('.btn-submit').removeClass('disabled');\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\n\t\t        }\n\n\t\t        function certificationEnquiry() {\n\t\t        \tvar form_data = $('#contct_form').serialize();\n\t\t        \tvar profile_name = $('#CompanyName').val();\n\t\t        \tvar contact_name = $('#CustomerName').val();\n\t\t        \tvar mobile_number = $('#MobileNumber').val();\n\t\t        \tvar profile_email = $('#EMail').val();\n\t\t        \tvar md_state      = $('#State').val();\n\t\t        \tvar md_city      = $('#City').val();\n\t\t        \tvar company = $('.Company').val(); \/\/IAS singapore\n\t\t        \tvar Type = 6;\n\t\t        \tvar remarks = 'Online enquiry';\n\t\t        \tvar bco_assign = $('.bco_assign_cert').val();\n\t\t\t\t\tvar enquirySame = $('#proceed_trn_enq').attr('data-enquiry-type');\n\t\t\t\t\tvar sameEnquiryId = $('#proceed_trn_enq').attr('data-enquiry-id');\n\t\t\t\t\tvar cert_trn_type =  $('#purposOf').val();\n\t                var url = base_url+'\/SEO\/adddataAction_self';\n\n\t                var post_data = \"&profile_name=\"+profile_name+\"&contact_name=\"+contact_name+\"&mobile_number=\"+mobile_number+\"&profile_email=\"+profile_email+\"&md_state=\"+md_state+\"&md_city=\"+md_city+\"&company=\"+company+\"&Type=\"+Type+\"&remarks=\"+remarks+\"&bco_assign=\"+bco_assign+\"&enquirySame=\"+enquirySame+\"&sameEnquiryId=\"+sameEnquiryId;\n\t                 $.ajax({\n\t                    type:'POST',\n\t                    url:url,\n\t                    data:form_data + post_data + \"&username=\"+chat_username+\"&password=\"+encodeURIComponent(chat_password),\n\t                    success:function(data){\n\t                     \/\/ alert(data);\n\t                        if(data.status == 1){\n\t                            \/\/alert(data.message);\n\t\t\t\t\t\t\t\t\/\/location.reload();\n\t\t\t\t\t\t\t\t$('#myModalAlert .modal-body').text(data.message);\n\t\t\t\t\t  \t\t\t$('#myModalAlert').modal('show');\n\t\t\t\t\t  \t\t\t$('.btn-submit').removeClass('disabled');\n\t                        }  \n\t                    }\n\t                });   \n\t        \t}\n\n\t        \t function otherEnquiry() {\n\t\t        \t var form_data = $('#contct_form').serialize();\n\t\t                var url = base_url+'\/Api\/sent_mail_other_enquiry';\n\t\t               \n\t\t                var post_data = \"&website_url=\"+website_url\n\t\t                 $.ajax({\n\t\t                    type:'POST',\n\t\t                    url:url,\n\t\t                    data:form_data + post_data,\n\t\t                    success:function(data){\n\t\t                        if(data == 1){\n\t\t                            \/\/alert('Thank you for contact us');\n\t\t\t\t\t\t\t\t\t\/\/location.reload();\n\t\t\t\t\t\t\t\t\t$('#myModalAlert .modal-body').text('Thank you for contact us');\n\t\t\t\t\t  \t\t\t\t$('#myModalAlert').modal('show');\n\t\t\t\t\t  \t\t\t\t$('.btn-submit').removeClass('disabled');\n\t\t                        }\n\t\t                    }\n\t\t                });   \n\t\t        }\n\n\t\t        \/\/purpose change \u2014 also reset all child dropdowns, errors\n\t\t        $('#purposOf').change(function() {\n\t\t        \tvar purpose = $(this).val();\n\n\t\t        \t\/\/ Helper: aggressively reset a <select> to its first <option>\n\t\t        \tfunction hardResetSelect(id){\n\t\t        \t\tvar selJ = $('#'+id);\n\t\t        \t\tif(!selJ.length) return;\n\t\t        \t\t\/\/ Clear every option's selected attribute, then mark first as selected\n\t\t        \t\tselJ.find('option').prop('selected', false).removeAttr('selected');\n\t\t        \t\tselJ.find('option:first').prop('selected', true).attr('selected','selected');\n\t\t        \t\t\/\/ Also set via value + native selectedIndex\n\t\t        \t\tselJ.val(selJ.find('option:first').val() || '');\n\t\t        \t\tvar el = document.getElementById(id);\n\t\t        \t\tif(el) el.selectedIndex = 0;\n\t\t        \t\t\/\/ select2 refresh: namespaced trigger updates the visible widget WITHOUT firing user change handlers\n\t\t        \t\tselJ.trigger('change.select2');\n\t\t        \t}\n\n\t\t        \t\/\/ Restore full Category list from clean plain-data cache (resets to placeholder)\n\t\t        \tif(typeof _rebuildCategoryFromCache === 'function'){\n\t\t        \t\t_rebuildCategoryFromCache(null);\n\t\t        \t}\n\n\t\t        \t\/\/ Hard-reset Type and cert_Type selects\n\t\t        \thardResetSelect('Type');\n\t\t        \thardResetSelect('cert_Type');\n\n\t\t        \t\/\/ Belt-and-braces: also direct-set the values + selectedIndex\n\t\t        \t$('#Type').val('');\n\t\t        \t$('#Category').val('');\n\t\t        \t$('#cert_Type').val('');\n\t\t        \tif(document.getElementById('Type')) document.getElementById('Type').selectedIndex = 0;\n\t\t        \tif(document.getElementById('Category')) document.getElementById('Category').selectedIndex = 0;\n\t\t        \tif(document.getElementById('cert_Type')) document.getElementById('cert_Type').selectedIndex = 0;\n\n\t\t        \t\/\/ Reset ProductName checkboxes\n\t\t        \t$('.product-name-chk').prop('checked', false);\n\t\t        \t$('#ProductNameCheckboxes').html('<span style=\"color:#999;\">-- Please select Product Type &amp; Category first --<\/span>');\n\t\t        \tif(typeof resetProductNameToggle === 'function') resetProductNameToggle();\n\n\t\t        \t\/\/ Reset cert scheme checkboxes + their toggle labels\n\t\t        \t$('.product-scheme-chk, .process-scheme-chk').prop('checked', false);\n\t\t        \tif(typeof resetSchemeToggleLabel === 'function'){\n\t\t        \t\tresetSchemeToggleLabel('productSchemeCheckboxes');\n\t\t        \t\tresetSchemeToggleLabel('processSchemeCheckboxes');\n\t\t        \t}\n\n\t\t        \t\/\/ Clear all related error messages\n\t\t        \t$('.error_trg_cert, .error_cert_product_type, .error_product_type, .error_product_category, .error_product_name, .error_process_scheme, .error_enquiry').text('');\n\n\t\t        \tif(purpose == 1){\n\t\t        \t\t$('.training-section').show();\n\t\t        \t\t$('.certification-section').hide();\n\t\t\t\t\t\t$('.certification_prod_section').hide();\n\t\t\t\t\t\t$('.process_section').hide();\n\t\t\t\t\t\t$('.product_section').hide();\n\t\t\t\t\t\tvar email_url = base_url_api+'\/api_training_email_check';\n\t\t        \t}else if(purpose == 2) {\n\t\t        \t\t$('.training-section').hide();\n\t\t        \t\t$('.certification-section').show();\n\t\t        \t\t$('.certification_prod_section').show();\n\t\t\t\t\t\t$('.process_section').hide();\n\t\t\t\t\t\t$('.product_section').hide();\n\t\t\t\t\t\tvar email_url = base_url_api+'\/api_cert_email_check';\n\t\t        \t}else if(purpose == 3) {\n\t\t        \t\t$('.training-section').show();\n\t\t        \t\t$('.certification-section').show();\n\t\t\t\t\t\t$('.certification_prod_section').hide();\n\t\t\t\t\t\t$('.process_section').hide();\n\t\t\t\t\t\t$('.product_section').hide();\n\t\t        \t}else {\n\t\t        \t\t$('.training-section').hide();\n\t\t        \t\t$('.certification-section').hide();\n\t\t\t\t\t\t$('.certification_prod_section').hide();\n\t\t\t\t\t\t$('.process_section').hide();\n\t\t\t\t\t\t$('.product_section').hide();\n\t\t        \t}\n\n\t\t       })\n\t\t\t   \n\t\t\t   $('#cert_Type').change(function() {\n\t\t        \tvar cert_Type = $(this).val();\n\n\t\t        \t\/\/ Uncheck all cert scheme checkboxes when cert_Type changes\n\t\t        \t$('.product-scheme-chk, .process-scheme-chk').prop('checked', false);\n\t\t        \tif(typeof resetSchemeToggleLabel === 'function'){\n\t\t        \t\tresetSchemeToggleLabel('productSchemeCheckboxes');\n\t\t        \t\tresetSchemeToggleLabel('processSchemeCheckboxes');\n\t\t        \t}\n\n\t\t        \t\/\/ Clear related error messages\n\t\t        \t$('.error_process_scheme, .error_product_name, .error_cert_product_type').text('');\n\n\t\t        \tif(cert_Type == 1){\n\t\t        \t\t$('.process_section').show();\n\t\t\t\t\t\t$('.product_section').hide();\n\t\t        \t}else if(cert_Type == 2) {\n\t\t        \t\t$('.product_section').show();\n\t\t\t\t\t\t$('.process_section').hide();\n\t\t        \t}else if(cert_Type == 3) {\n\t\t        \t\t$('.product_section').show();\n\t\t        \t\t$('.process_section').show();\n\t\t        \t}else {\n\t\t        \t\t$('.process_section').hide();\n\t\t        \t\t$('.product_section').hide();\n\t\t        \t}\n\n\t\t       })\n\n\n\t\t       \/\/Enquiry type\n\t\t       $('.enquiry_type').change(function() {\n\t\t       \t\tvar enquiry_type = $(this).val();\n\n\t\t       \t\tconsole.log(enquiry_type);\n\n\t\t       \t\tif(enquiry_type == 1) {\n\t\t       \t\t\t$('.enquiry_form').show();\n\t\t       \t\t\t$('.other_enquiry_form').hide();\n\t\t       \t\t}else if(enquiry_type == 2) {\n\t\t       \t\t\t$('.other_enquiry_form').show();\n\t\t       \t\t\t$('.enquiry_form').hide();\n\t\t       \t\t}\n\t\t       \t})\t\t\t\t\t \n\t\t\t\t\n\t\t       \t\/\/Fetch bco training\n\n\t\t       \tfunction fetchBcoTraining() {\n\t\t       \t\tvar country_id \t\t= $('#country_id').val();\n\t\t            var state_id \t\t= $('#State').val();\n\t\t            var Category \t\t= $('#Category').val();\n\t\t            var Type \t\t\t= $('#Type').val();\n\t\t            var ProductNameArr \t= [];\n\t\t            $('.product-name-chk:checked').each(function(){ ProductNameArr.push($(this).val()); });\n\t\t            var ProductName = ProductNameArr.join(',');\n\t\t       \t\tvar url = base_url+'\/Api\/get_bco_training';\n\n\t                var post_data = \"&country_id=\"+country_id+\"&state_id=\"+state_id+\"&Category=\"+Category+\"&Type=\"+Type+\"&ProductName=\"+ProductName;\n\t                 $.ajax({\n\t                    type:'POST',\n\t                    url:url,\n\t                    data:post_data ,\n\t                    success:function(bco_id){\n\t                    \t$('.bco_assign_training').val(bco_id);\n\t                        \n\t                    }\n\t                });   \n\n\t\t       \t}\n\n\t\t       \t\/\/Fetch bco training\n\n\t\t       \tfunction fetchBcoCert() {\n\t\t       \t\tvar country_id \t\t= $('#country_id').val();\n\t\t            var state_id \t\t= $('#State').val();\n\t\t       \t\tvar url = base_url+'\/Api\/get_bco_certification';\n\n\t                var post_data = \"&country_id=\"+country_id+\"&state_id=\"+state_id;\n\t                 $.ajax({\n\t                    type:'POST',\n\t                    url:url,\n\t                    data:post_data ,\n\t                    success:function(bco_id){\n\t                    \t$('.bco_assign_cert').val(bco_id);\n\t                        \n\t                    }\n\t                });   \n\n\t\t       \t}\n\n\t\t    });\n\t\t\t\n<\/script>\n<\/html>\n\n<\/div>\n\t\t<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Independent third-party GMP\/cGMP certification for Kuwaiti manufacturers, scoped to your products and backed by a fixed written quotation &#8212; provided by IAS under its UQAS accreditation. A GMP certificate issued this way names the scheme and scope it was assessed against, so a tender evaluator or distributor can see exactly what was covered. UQAS-accredited certification&#8230; <\/p>\n<div class=\"clear\"><\/div>\n<p><a href=\"https:\/\/iasiso-gulf.com\/KW\/cgmp-certification-in-kuwait\/\" class=\"gdlr-button with-border excerpt-read-more\">Read More<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-4029","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/iasiso-gulf.com\/KW\/wp-json\/wp\/v2\/pages\/4029","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/iasiso-gulf.com\/KW\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/iasiso-gulf.com\/KW\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/iasiso-gulf.com\/KW\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/iasiso-gulf.com\/KW\/wp-json\/wp\/v2\/comments?post=4029"}],"version-history":[{"count":10,"href":"https:\/\/iasiso-gulf.com\/KW\/wp-json\/wp\/v2\/pages\/4029\/revisions"}],"predecessor-version":[{"id":6051,"href":"https:\/\/iasiso-gulf.com\/KW\/wp-json\/wp\/v2\/pages\/4029\/revisions\/6051"}],"wp:attachment":[{"href":"https:\/\/iasiso-gulf.com\/KW\/wp-json\/wp\/v2\/media?parent=4029"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}