{"id":18440,"date":"2026-09-28T03:27:33","date_gmt":"2026-09-28T10:27:33","guid":{"rendered":"https:\/\/toothpastefactory.com\/?page_id=18440"},"modified":"2026-09-29T22:58:34","modified_gmt":"2026-09-30T05:58:34","slug":"certifications","status":"publish","type":"page","link":"https:\/\/toothpastefactory.com\/ru\/certifications\/","title":{"rendered":"\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b"},"content":{"rendered":"\n<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"position:absolute;width:0;height:0;overflow:hidden\" aria-hidden=\"true\">\n    <symbol id=\"cert-arrow\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M5 12h14M13 6l6 6-6 6\"><\/path><\/symbol>\n    <symbol id=\"ic-arrow\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M5 12h14M13 6l6 6-6 6\"><\/path><\/symbol>\n    <symbol id=\"cert-check\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M5 12.5l4.5 4.5L19 7\"><\/path><\/symbol>\n    <symbol id=\"cert-shield\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 3l7 3v5c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z\"><\/path><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 12l2 2 4-4\"><\/path><\/symbol>\n    <symbol id=\"cert-doc\" viewBox=\"0 0 24 24\"><rect x=\"5\" y=\"4.5\" width=\"14\" height=\"16\" rx=\"2\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><\/rect><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 4.5V3h6v1.5M9 11h6M9 15h6\"><\/path><\/symbol>\n    <symbol id=\"cert-pulse\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3 12h4l2-4.5L12 17l2.5-5H21\"><\/path><\/symbol>\n    <symbol id=\"cert-moon\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M15.5 3.5a8.5 8.5 0 100 17 10 10 0 010-17z\"><\/path><\/symbol>\n    <symbol id=\"cert-star\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 3.5l2.6 5.4 5.9.9-4.3 4.1 1 5.9-5.2-2.8-5.2 2.8 1-5.9-4.3-4.1 5.9-.9z\"><\/path><\/symbol>\n    <symbol id=\"cert-heart\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 20s-7-4.4-7-9.4A4 4 0 0112 8a4 4 0 017 2.6c0 5-7 9.4-7 9.4z\"><\/path><\/symbol>\n    <symbol id=\"cert-leaf\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M5 19c0-8 6-13 14-14-1 9-6 14-14 14z\"><\/path><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M5 19c3-4 6-7 10-9\"><\/path><\/symbol>\n    <symbol id=\"cert-factory\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3 21V9l6 4V9l6 4V6l6 4v11z\"><\/path><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" d=\"M7 21v-3M12 21v-3M17 21v-3\"><\/path><\/symbol>\n    <symbol id=\"cert-file\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M6 3h8l4 4v14H6zM14 3v4h4\"><\/path><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" d=\"M9 12h7M9 16h7\"><\/path><\/symbol>\n    <symbol id=\"cert-landmark\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3 20h18M5 20V10M9 20V10M15 20V10M19 20V10M12 3l9 5H3z\"><\/path><\/symbol>\n    <symbol id=\"cert-whatsapp\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 3a9 9 0 00-7.7 13.6L3 21l4.5-1.2A9 9 0 1012 3z\"><\/path><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 8.5c0 3 2 5 5 5l1-2-2.5-1-1 1.5c-1-.3-1.8-1.2-2-2l1.5-1-1-1z\"><\/path><\/symbol>\n  <\/svg>\n\n\n\n<style data-wp-block-html=\"css\">\n.cs-ic { width: 26px; height: 26px; fill: none; stroke: #1b7a66; stroke-width: 2; }\n\nul { padding: 0; }\nol { padding: 0; }\n\n\/* ---------- Form card ---------- *\/\n.cs-form {\n  position: relative;\n  background: #fff;\n  padding: 34px 32px 32px;\n  color: #1e1e1e;\n  border: 1px solid #e4eae7;\n  border-radius: 12px;\n  box-shadow: 0 12px 32px rgba(14, 79, 67, 0.08);\n  max-width: 860px;\n  margin: 0 auto;\n}\n.cs-form__title { font-size: 21px; font-weight: 700; color: #0e4f43; margin-bottom: 6px; }\n.cs-form__note { font-size: 13.5px; color: #5a5a5a; margin-bottom: 20px; }\n\n\/* ---------- Fields ---------- *\/\n.cs-field { margin-bottom: 16px; }\n.cs-field__label { display: block; font-size: 13px; font-weight: 600; color: #1e1e1e; margin-bottom: 6px; }\n.cs-field__req { color: #9c7440; }\n.cs-field__opt { font-weight: 400; color: #5a5a5a; }\n\n.cs-field__input,\n.cs-field__select,\n.cs-field__textarea,\n.cs-form .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-file) {\n  width: 100%;\n  font-family: inherit;\n  font-size: 14.5px;\n  color: #1e1e1e;\n  padding: 11px 13px;\n  background: #faf9f5;\n  border: 1px solid #e4eae7;\n  transition: border-color 0.3s ease, box-shadow 0.3s ease;\n}\n.cs-field__input:focus,\n.cs-field__select:focus,\n.cs-field__textarea:focus,\n.cs-form .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-file):focus {\n  outline: none;\n  border-color: #1b7a66;\n  box-shadow: 0 0 0 3px rgba(27, 122, 102, 0.12);\n}\n.cs-field__textarea { min-height: 96px; resize: vertical; }\n\n\/* Field label for raw CF7 markup (no .cs-field__label helper) *\/\n.cs-field > label,\n.cs-form__row .cs-field > label { display: block; font-size: 13px; font-weight: 600; color: #1e1e1e; margin-bottom: 6px; }\n\n\/* ---------- Two-column row ---------- *\/\n.cs-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }\n\n\/* ---------- Submit ---------- *\/\n.cs-form__submit {\n  width: 100%;\n  justify-content: center;\n  cursor: pointer;\n  font-family: inherit;\n  font-size: 16px;\n  font-weight: 600;\n  padding: 16px 34px;\n  background: #b58a4e;\n  color: #fff;\n  border: 1px solid #b58a4e;\n  display: inline-flex;\n  align-items: center;\n  gap: 10px;\n  transition: background 0.3s ease, transform 0.3s ease;\n}\n.cs-form__submit:hover { background: #9c7440; border-color: #9c7440; transform: translateY(-2px); }\n.cs-form__submit .cs-ic { stroke: currentColor; width: 20px; height: 20px; }\n.cs-form__submit:hover .cs-ic { transform: translateX(3px); transition: transform 0.3s ease; }\n\n\/* ---------- Honeypot + status ---------- *\/\n.cs-form__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }\n.cs-form__status { margin-top: 12px; font-size: 14px; font-weight: 600; color: #0e4f43; }\n\n\/* ---------- Field note \/ alt link \/ legal ---------- *\/\n.cs-field__note { margin-top: 6px; font-size: 12.5px; line-height: 1.5; color: #5a5a5a; }\n.cs-form__alt { display: block; text-align: center; margin-top: 14px; font-size: 13.5px; font-weight: 600; color: #1b7a66; text-decoration: none; }\n.cs-form__alt:hover { text-decoration: underline; color: #155e4f; }\n.cs-form__legal { margin-top: 16px; font-size: 12.5px; line-height: 1.6; color: #5a5a5a; text-align: center; }\n\n\/* ---------- Contact Form 7 compatibility (no inline styling) ---------- *\/\n.cs-form .wpcf7-form-control-wrap { display: block; }\n.wpcf7-not-valid-tip { display: block; margin-top: 5px; font-size: 12.5px; color: #d23b3b; font-weight: 600; }\n.wpcf7-form-control.wpcf7-not-valid { border-color: #d23b3b !important; box-shadow: 0 0 0 3px rgba(210, 59, 59, 0.12) !important; }\n\n\/* ---------- Checkbox group (Product Type) \u00e2\u20ac\u201d grid of options ---------- *\/\n.cs-checks,\n.wpcf7-checkbox { display: grid; grid-template-columns: repeat(2, 1fr); gap: 4px 12px; margin-top: 8px; }\n.wpcf7-list-item { margin: 0; display: flex; }\n.wpcf7-list-item label { display: flex; align-items: center; gap: 9px; font-size: 13.5px; color: #1e1e1e; cursor: pointer; line-height: 1.4; }\n.wpcf7-list-item input { width: 16px; height: 16px; flex: 0 0 auto; accent-color: #1b7a66; cursor: pointer; }\n.cs-check { display: flex; align-items: center; gap: 9px; font-size: 13.5px; color: #1e1e1e; cursor: pointer; line-height: 1.4; }\n.cs-check input { width: 16px; height: 16px; flex: 0 0 auto; accent-color: #1b7a66; cursor: pointer; }\n\n\/* ---------- Radio group (single-choice) \u00e2\u20ac\u201d stacks vertically ---------- *\/\n.wpcf7-radio { display: grid; gap: 8px; margin-top: 8px; }\n.wpcf7-radio .wpcf7-list-item { margin: 0; }\n.wpcf7-radio .wpcf7-list-item label { font-size: 14px; }\n\n\/* ---------- File upload (dashed panel) ---------- *\/\n.cs-form .wpcf7-file {\n  display: block;\n  width: 100%;\n  font-family: inherit;\n  font-size: 14px;\n  padding: 12px 14px;\n  background: #faf9f5;\n  border: 1px dashed #c9d6d1;\n  color: #5a5a5a;\n  cursor: pointer;\n  border-radius: 8px;\n}\n.cs-field__file {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  width: 100%;\n  font-family: inherit;\n  font-size: 14px;\n  padding: 12px 14px;\n  background: #faf9f5;\n  border: 1px dashed #c9d6d1;\n  color: #5a5a5a;\n  cursor: pointer;\n  border-radius: 8px;\n}\n.cs-field__file input[type=\"file\"] { display: none; }\n.cs-field__file::before {\n  content: \"Attach file\";\n  font-weight: 600;\n  color: #1b7a66;\n}\n\n\/* ---------- Spinner ---------- *\/\n.wpcf7-spinner {\n  display: none;\n  vertical-align: middle;\n  margin-left: 10px;\n  width: 18px;\n  height: 18px;\n  border: 2px solid rgba(27, 122, 102, 0.25);\n  border-top-color: #1b7a66;\n  border-radius: 50%;\n  animation: cs-spin 0.7s linear infinite;\n}\n.wpcf7-spinner.is-active { display: inline-block; }\n@keyframes cs-spin { to { transform: rotate(360deg); } }\n\n\/* ---------- Response \/ status output ---------- *\/\n.wpcf7-response-output {\n  display: none;\n  margin: 14px 0 0;\n  padding: 12px 14px;\n  border-radius: 8px;\n  font-size: 14px;\n  font-weight: 600;\n  border: 1px solid #e4eae7;\n}\n.wpcf7-response-output:not(:empty),\n.wpcf7-response-output.wpcf7-mail-sent-ok,\n.wpcf7-response-output.wpcf7-mail-sent-ng,\n.wpcf7-response-output.wpcf7-validation-errors,\n.wpcf7-response-output.wpcf7-spam-blocked { display: block; }\n.wpcf7-response-output.wpcf7-mail-sent-ok { color: #1b6f3f; background: #eafaf1; border-color: #bfe6cf; }\n.wpcf7-response-output.wpcf7-mail-sent-ng,\n.wpcf7-response-output.wpcf7-validation-errors { color: #b4452f; background: #fdeeec; border-color: #f3c6bd; }\n\n\/* ---------- Product Type \u00e2\u20ac\u201c dropdown multi-select (built by form.js) ---------- *\/\n.cs-mselect { border: 1px solid #e4eae7; background: #faf9f5; }\n.cs-mselect__trigger {\n  list-style: none;\n  cursor: pointer;\n  user-select: none;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 12px;\n  padding: 11px 13px;\n  font-size: 14.5px;\n  color: #1e1e1e;\n}\n.cs-mselect__trigger::-webkit-details-marker { display: none; }\n.cs-mselect__trigger:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(27, 122, 102, 0.12); }\n.cs-mselect__caret { flex: none; color: #5a5a5a; transition: transform 0.25s ease; }\n.cs-mselect[open] .cs-mselect__caret { transform: rotate(180deg); }\n.cs-mselect__panel { border-top: 1px solid #e4eae7; padding: 12px 13px; max-height: 240px; overflow: auto; }\n\n\/* ---------- Responsive ---------- *\/\n@media (max-width: 767px) {\n  .cs-form { padding: 24px 20px 22px; }\n  .cs-form__row { grid-template-columns: 1fr; gap: 0; }\n  .cs-checks,\n  .wpcf7-checkbox { grid-template-columns: 1fr; }\n}\n\n\/* ---------- WhatsApp button (shared, left column of enquiry forms) ---------- *\/\n.cs-wa {\n  display: inline-flex;\n  align-items: center;\n  gap: 12px;\n  align-self: flex-start;\n  margin-top: 26px;\n  padding: 11px 22px;\n  background: #25D366;\n  color: #fff;\n  text-decoration: none;\n  border-radius: 4px;\n  box-shadow: 0 6px 18px rgba(37, 211, 102, 0.28);\n  transition: background 0.3s ease, transform 0.3s ease;\n}\n.cs-wa:hover { background: #1ebe5b; transform: translateY(-2px); }\n.cs-wa__ic { width: 26px; height: 26px; fill: #fff; flex: none; }\n.cs-wa__text { display: flex; flex-direction: column; line-height: 1.2; }\n.cs-wa__label { font-size: 15px; font-weight: 700; }\n.cs-wa__num { font-size: 12.5px; opacity: 0.92; }\n\nul, ol { padding: 0; }\n<\/style>\n\n\n\n<style data-wp-block-html=\"css\">\n:root {\n  --teal: #1b7a66;\n  --teal-d: #0e4f43;\n  --teal-l: #2fa98c;\n  --gold: #b58a4e;\n  --gold-d: #9c7440;\n  --ink: #1e1e1e;\n  --ink-2: #5a5a5a;\n  --ink-3: #686868;\n  --ivory: #faf9f5;\n  --mist: #eef3ef;\n  --line: #e4eae7;\n  --line-2: #eef3ef;\n  --gap: 100px;\n}\n\n*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\n\nbody {\n  font-family: 'Segoe UI', system-ui, -apple-system, 'Helvetica Neue', Arial, sans-serif;\n  font-size: 16px;\n  line-height: 1.65;\n  color: var(--ink);\n  background: var(--ivory);\n  -webkit-font-smoothing: antialiased;\n  -moz-osx-font-smoothing: grayscale;\n}\n\n.cert { width: 100%; overflow: hidden; }\nimg { display: block; max-width: 100%; }\na { text-decoration: none; color: inherit; }\nul { list-style: none; padding: 0; }\nol { padding: 0; }\nbutton { font-family: inherit; }\n\n\/* ---------- Shared header + accent (mirrors .ab-eyebrow \/ .ab-title) ---------- *\/\n.cert-eyebrow {\n  display: inline-flex; align-items: center; gap: 12px;\n  font-size: 13px; font-weight: 600; letter-spacing: 1.5px;\n  color: var(--teal); margin-bottom: 18px;\n}\n.cert-eyebrow__bar { display: inline-block; width: 38px; height: 2px; background: var(--gold); }\n.cert-eyebrow--light { color: #d7efe7; }\n.cert-ic { width: 26px; height: 26px; fill: none; stroke: var(--teal); stroke-width: 2; }\n.cert-head { text-align: center; max-width: 760px; margin: 0 auto 54px; }\n.cert-head .cert-eyebrow { justify-content: center; }\n.cert-title { font-size: 34px; font-weight: 700; line-height: 1.25; color: var(--ink); margin-bottom: 14px; }\n.cert-title--teal { color: var(--teal-d); }\n.cert-intro { font-size: 17px; color: var(--ink-2); line-height: 1.7; }\n.cert-head::after {\n  content: \"\"; display: block; width: 64px; height: 3px;\n  background: var(--gold); margin: 20px auto 0; border-radius: 2px;\n}\n.cert-rule-left { content: \"\"; display: block; width: 64px; height: 3px; background: var(--gold); margin: 20px 0 0; border-radius: 2px; }\n\n\/* ---------- Buttons (mirrors .ab-btn) ---------- *\/\n.cert-btn { display: inline-flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 600; padding: 15px 34px; transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease; }\n.cert-btn .cert-ic { stroke: currentColor; }\n.cert-btn--primary { background: var(--gold); color: #fff; border: 1px solid var(--gold); }\n.cert-btn--primary:hover { background: var(--gold-d); border-color: var(--gold-d); transform: translateY(-2px); }\n.cert-btn--outline { background: transparent; color: #fff; border: 2px solid #fff; }\n.cert-btn--outline:hover { background: #fff; color: var(--teal-d); transform: translateY(-2px); }\n.cert-btn--whatsapp { background: #25D366; color: #fff; border: 1px solid #25D366; margin-top: 28px; }\n.cert-btn--whatsapp:hover { background: #1ebe5a; border-color: #1ebe5a; transform: translateY(-2px); }\n.cert-btn--whatsapp .cert-ic { width: 18px; height: 18px; stroke: currentColor; flex: none; }\n\n\/* ============================ 1. Hero ============================ *\/\n.cert-hero { position: relative; min-height: 86vh; display: flex; align-items: center; color: #fff; overflow: hidden; background: #071714; }\n.cert-hero__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 32%; transform: scale(1.12); }\n.cert-hero__overlay {\n  position: absolute; inset: 0;\n  background:\n    linear-gradient(to right, rgba(7,23,20,0.92) 0%, rgba(7,23,20,0.66) 48%, rgba(7,23,20,0.45) 100%),\n    linear-gradient(to top, rgba(7,23,20,0.62) 0%, rgba(7,23,20,0) 46%),\n    radial-gradient(120% 90% at 12% 18%, rgba(47,169,140,0.28), rgba(7,23,20,0) 55%);\n}\n.cert-hero__layout { position: relative; z-index: 2; width: 100%; max-width: 1290px; margin: 0 auto; padding: 140px 24px 96px; display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }\n.cert-breadcrumb { display: flex; align-items: center; gap: 10px; font-size: 13px; letter-spacing: 0.5px; color: rgba(255,255,255,0.82); }\n.cert-breadcrumb a { color: rgba(255,255,255,0.82); transition: color 0.3s ease; }\n.cert-breadcrumb a:hover { color: #c8a45d; }\n.cert-breadcrumb span[aria-hidden] { opacity: 0.55; }\n.cert-hero__eyebrow { font-size: 18px; font-weight: 400; color: #fff; letter-spacing: 0.4px; text-shadow: 0 1px 6px rgba(0,0,0,0.4); }\n.cert-hero__eyebrow-accent { color: #c8a45d; font-weight: 700; }\n.cert-hero__title { font-weight: 700; font-size: 48px; line-height: 1.16; letter-spacing: -0.6px; color: #fff; max-width: 920px; text-shadow: 0 2px 24px rgba(0,0,0,0.45); }\n.cert-hero__lead { font-size: 18px; font-weight: 400; line-height: 1.72; letter-spacing: 0.2px; max-width: 840px; color: rgba(255,255,255,0.92); text-shadow: 0 1px 14px rgba(0,0,0,0.4); }\n.cert-hero__actions { display: flex; flex-wrap: wrap; gap: 18px; }\n\n\n\/* Approval badges row under the hero (mirrors the home cert list) *\/\n.cert-marks { background: var(--teal-d); }\n.cert-marks__inner { max-width: 1180px; margin: 0 auto; padding: 22px 24px; display: flex; align-items: center; gap: 28px; flex-wrap: wrap; }\n.cert-marks__label { font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: #a9d6cb; }\n.cert-marks__list { display: flex; align-items: center; gap: 26px; flex-wrap: wrap; list-style: none; }\n.cert-marks__item { font-size: 14px; font-weight: 600; color: #fff; display: inline-flex; align-items: center; gap: 8px; }\n.cert-marks__item .cert-ic { width: 18px; height: 18px; stroke: #7fd0bb; }\n\n\/* ============================ 2. Intro split ============================ *\/\n.cert-intro-sec { background: #fff; padding: var(--gap) 24px; }\n.cert-split { display: grid; grid-template-columns: 1fr 1fr; gap: 44px; align-items: stretch; max-width: 1200px; margin: 0 auto; }\n.cert-split__media { position: relative; overflow: hidden; min-height: 460px; background: var(--teal-d); align-self: stretch; }\n.cert-split__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform 0.6s ease; }\n.cert-split__media:hover .cert-split__img { transform: scale(1.06); }\n.cert-split__body { padding: 16px 0; display: flex; flex-direction: column; justify-content: center; }\n.cert-split__title { font-size: 36px; font-weight: 700; line-height: 1.28; letter-spacing: -0.3px; color: var(--ink); margin-bottom: 24px; }\n.cert-split__text { font-size: 17px; line-height: 1.85; color: var(--ink-2); margin-bottom: 20px; }\n.cert-split__note { margin-top: 30px; padding: 22px 26px; background: var(--ivory); border: 1px solid var(--line); border-left: 3px solid var(--teal); font-size: 16px; line-height: 1.75; color: var(--ink); }\n.cert-split__note strong { color: var(--teal-d); }\n\n\/* ============================ 3. Regional matrix band (mirrors .ab-base) ============================ *\/\n.cert-matrix { background: var(--mist); }\n.cert-matrix__inner { max-width: 1100px; margin: 0 auto; padding: var(--gap) 24px; }\n.cert-matrix__body { display: block; }\n.cert-matrix__title { font-size: 34px; font-weight: 700; line-height: 1.25; color: var(--teal-d); margin-bottom: 16px; }\n.cert-matrix__text { font-size: 16px; color: var(--ink-2); max-width: 520px; margin-bottom: 20px; }\n.cert-table { width: 100%; border-collapse: collapse; font-size: 15px; }\n.cert-table thead th { background: linear-gradient(90deg, var(--teal-d), var(--teal)); color: #fff; text-align: left; padding: 14px 18px; font-size: 12px; font-weight: 600; letter-spacing: 0.6px; text-transform: uppercase; }\n.cert-table tbody td { padding: 14px 18px; border-bottom: 1px solid var(--line); color: var(--ink); }\n.cert-table tbody tr:nth-child(even) { background: rgba(14,79,67,0.045); }\n.cert-table__label { font-weight: 600; color: var(--teal-d); width: 26%; }\n.cert-table__value { font-weight: 600; color: var(--ink); width: 30%; }\n\n\/* ============================ 4. System certificates (mirrors .ab-mfg) ============================ *\/\n.cert-systems { background: #fff; padding: var(--gap) 0; }\n.cert-systems__inner { max-width: 1200px; margin: 0 auto; padding: 0 24px; }\n.cert-systems__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }\n.cert-card { position: relative; border: 1px solid var(--line); background: var(--ivory); padding: 38px 36px; overflow: hidden; transition: box-shadow 0.3s ease, transform 0.3s ease, border-color 0.3s ease; }\n.cert-card::before { content: \"\"; position: absolute; top: 0; left: 0; width: 100%; height: 3px; background: linear-gradient(90deg, var(--teal), var(--teal-l)); transform: scaleX(0); transform-origin: left; transition: transform 0.4s ease; }\n.cert-card:hover { box-shadow: 0 12px 32px rgba(14,79,67,0.12); transform: translateY(-4px); border-color: var(--teal); }\n.cert-card:hover::before { transform: scaleX(1); }\n.cert-card__title { font-size: 19px; font-weight: 600; color: var(--teal-d); margin-bottom: 22px; display: flex; align-items: center; gap: 12px; }\n.cert-card__title .cert-ic { stroke: var(--teal); }\n.cert-list li { position: relative; padding: 10px 0 10px 30px; font-size: 15.5px; color: var(--ink); border-bottom: 1px solid var(--line-2); }\n.cert-list li:last-child { border-bottom: 0; }\n.cert-list li::before {\n  content: \"\"; position: absolute; left: 0; top: 15px; width: 16px; height: 16px; border-radius: 50%; background: var(--teal);\n  -webkit-mask: url(\"data:image\/svg+xml;utf8,<svg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'><path fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M5 12.5l4.5 4.5L19 7'\/><\/svg>\") center \/ 16px no-repeat;\n  mask: url(\"data:image\/svg+xml;utf8,<svg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'><path fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M5 12.5l4.5 4.5L19 7'\/><\/svg>\") center \/ 16px no-repeat;\n}\n\n\/* ============================ 5. Documentation process (mirrors .ab-proc) ============================ *\/\n.cert-proc { position: relative; color: #fff; overflow: hidden; background: var(--teal-d); }\n.cert-proc__overlay { position: absolute; inset: 0; background: linear-gradient(180deg, var(--teal-d), rgba(27,122,102,0.92)); }\n.cert-proc__inner { position: relative; max-width: 1200px; margin: 0 auto; padding: var(--gap) 24px; }\n.cert-proc__title { font-size: 36px; font-weight: 700; line-height: 1.25; max-width: 760px; margin-bottom: 16px; }\n.cert-proc__text { font-size: 17px; color: #e3efe9; max-width: 640px; margin-bottom: 46px; }\n.cert-proc__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }\n.cert-proc__item { padding: 26px 24px 28px; background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.16); border-top: 2px solid #7fd0bb; }\n.cert-proc__num { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; margin-bottom: 16px; background: #fff; color: var(--teal-d); font-size: 15px; font-weight: 700; }\n.cert-proc__name { font-size: 16.5px; font-weight: 700; line-height: 1.4; margin-bottom: 8px; }\n.cert-proc__desc { font-size: 14.5px; line-height: 1.7; color: #cfe0db; }\n\n\/* ============================ 6. Specialty certifications (mirrors .ab-why) ============================ *\/\n.cert-special { background: var(--ivory); padding: var(--gap) 0; }\n.cert-special__inner { max-width: 1200px; margin: 0 auto; padding: 0 24px; }\n.cert-special__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }\n.cert-special__item { position: relative; background: #fff; border: 1px solid var(--line); padding: 34px 32px; overflow: hidden; transition: box-shadow 0.3s ease, transform 0.3s ease, border-color 0.3s ease; }\n.cert-special__item::before { content: \"\"; position: absolute; top: 0; left: 0; width: 100%; height: 3px; background: linear-gradient(90deg, var(--teal), var(--teal-l)); transform: scaleX(0); transform-origin: left; transition: transform 0.4s ease; }\n.cert-special__item:hover { box-shadow: 0 12px 32px rgba(14,79,67,0.12); transform: translateY(-4px); border-color: var(--teal); }\n.cert-special__item:hover::before { transform: scaleX(1); }\n.cert-special__name { font-size: 19px; font-weight: 600; color: var(--teal-d); margin-bottom: 14px; display: flex; align-items: center; gap: 12px; }\n.cert-special__name .cert-ic { stroke: var(--teal); }\n.cert-special__desc { font-size: 15.5px; line-height: 1.8; color: var(--ink-2); }\n\n\/* ============================ 7. Facility QMS ============================ *\/\n.cert-qms { background: #fff; padding: var(--gap) 0; }\n.cert-qms__inner { max-width: 1200px; margin: 0 auto; padding: 0 24px; }\n.cert-qms__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }\n.cert-qms__item { position: relative; background: var(--ivory); border: 1px solid var(--line); padding: 34px 30px; overflow: hidden; transition: box-shadow 0.3s ease, transform 0.3s ease, border-color 0.3s ease; }\n.cert-qms__item::before { content: \"\"; position: absolute; top: 0; left: 0; width: 100%; height: 3px; background: linear-gradient(90deg, var(--teal), var(--teal-l)); transform: scaleX(0); transform-origin: left; transition: transform 0.4s ease; }\n.cert-qms__item:hover { box-shadow: 0 12px 32px rgba(14,79,67,0.12); transform: translateY(-4px); border-color: var(--teal); }\n.cert-qms__item:hover::before { transform: scaleX(1); }\n.cert-qms__name { font-size: 18px; font-weight: 600; color: var(--teal-d); margin-bottom: 14px; display: flex; align-items: center; gap: 12px; }\n.cert-qms__name .cert-ic { stroke: var(--teal); }\n.cert-qms__desc { font-size: 15px; line-height: 1.8; color: var(--ink-2); }\n\n\/* ============================ 8. FAQ ============================ *\/\n.cert-faq { background: #fff; padding: var(--gap) 0; }\n.cert-faq__inner { max-width: 900px; margin: 0 auto; padding: 0 24px; }\n.cert-faq__item { background: var(--ivory); border: 1px solid var(--line); margin-bottom: 14px; transition: border-color 0.3s ease, box-shadow 0.3s ease; }\n.cert-faq__item:hover { border-color: var(--teal); }\n.cert-faq__item.is-open { border-color: var(--teal); box-shadow: 0 8px 26px rgba(14,79,67,0.10); }\n.cert-faq__q { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 24px; background: none; border: 0; text-align: left; font-size: 16.5px; font-weight: 600; line-height: 1.5; color: var(--ink); cursor: pointer; transition: color 0.3s ease; }\n.cert-faq__q:hover { color: var(--teal); }\n.cert-faq__icon { position: relative; flex: none; width: 22px; height: 22px; }\n.cert-faq__icon::before, .cert-faq__icon::after { content: \"\"; position: absolute; background: var(--teal); transition: transform 0.3s ease, opacity 0.3s ease; }\n.cert-faq__icon::before { top: 10px; left: 0; width: 22px; height: 2px; }\n.cert-faq__icon::after { left: 10px; top: 0; width: 2px; height: 22px; }\n.cert-faq__item.is-open .cert-faq__icon::after { transform: rotate(90deg); opacity: 0; }\n.cert-faq__a { padding: 0 24px 22px; font-size: 15.5px; line-height: 1.8; color: var(--ink-2); }\n.cert-faq__a p + p { margin-top: 12px; }\n.cert-faq__a[hidden] { display: none; }\n\n\/* ============================ 8. CTA + form (mirrors .ab-cta) ============================ *\/\n.cert-cta { position: relative; color: #fff; overflow: hidden; background: linear-gradient(180deg, rgba(14,79,67,0.88), rgba(27,122,102,0.80)), radial-gradient(90% 70% at 50% 0%, rgba(47,169,140,0.30), rgba(14,79,67,0)), #0e4f43; }\n.cert-cta__inner { position: relative; max-width: 1180px; margin: 0 auto; padding: var(--gap) 24px; display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }\n.cert-cta__title { font-size: 38px; font-weight: 700; line-height: 1.25; margin-bottom: 12px; }\n.cert-cta__text { font-size: 17px; color: #e3efe9; max-width: 560px; margin-bottom: 22px; }\n.cert-cta__points { display: grid; gap: 12px; }\n.cert-cta__point { display: flex; align-items: flex-start; gap: 12px; font-size: 15.5px; line-height: 1.7; color: #d7efe7; }\n.cert-cta__point .cert-ic { width: 20px; height: 20px; stroke: #7fd0bb; flex: none; margin-top: 3px; }\n\n.cert-form { padding: 32px 34px; background: rgba(255,255,255,0.96); border: 1px solid rgba(255,255,255,0.6); }\n.cert-form .wpcf7, .cert-form .wpcf7-form { display: block; }\n.cert-form__head { margin-bottom: 18px; }\n.cert-form__title { font-size: 20px; font-weight: 700; color: #14211d; }\n.cert-form__hint { font-size: 13.5px; color: #5a6b66; }\n.cert-form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 18px; }\n.cert-field { display: flex; flex-direction: column; }\n.cert-field--full { grid-column: 1 \/ -1; }\n.cert-form label, .cert-form .cert-field__label { display: block; font-size: 13px; font-weight: 600; color: #14211d; letter-spacing: 0.2px; }\n.cert-form label br { display: none; }\n.cert-form .wpcf7-form-control-wrap { display: block; margin-top: 7px; }\n.cert-form .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-checkbox) { width: 100%; padding: 12px 15px; font-size: 15px; font-family: inherit; color: var(--ink); background: #fbfdfc; border: 1px solid #dde4e1; transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease; }\n.cert-form .wpcf7-form-control::placeholder { color: #9aa6a1; }\n.cert-form .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-checkbox):focus { outline: none; background: #fff; border-color: var(--teal); box-shadow: 0 0 0 3px rgba(27,122,102,0.14); }\n.cert-form select.wpcf7-form-control { appearance: none; -webkit-appearance: none; background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235a6b66' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'\/%3E%3C\/svg%3E\"); background-repeat: no-repeat; background-position: right 15px center; padding-right: 40px; color: #5a6b66; }\n.cert-form textarea.wpcf7-form-control { resize: vertical; min-height: 96px; }\n.cert-form .wpcf7-checkbox { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }\n.cert-form .wpcf7-list-item { display: block; }\n.cert-form .wpcf7-list-item label { display: flex; align-items: center; gap: 9px; padding: 10px 12px; font-size: 14px; font-weight: 500; color: var(--ink); background: #fbfdfc; border: 1px solid #dde4e1; cursor: pointer; transition: border-color 0.2s ease, background 0.2s ease; }\n.cert-form .wpcf7-list-item label:hover { border-color: rgba(27,122,102,0.45); background: #fff; }\n.cert-form .wpcf7-list-item input[type=\"checkbox\"] { flex: none; width: 16px; height: 16px; margin: 0; accent-color: var(--teal); cursor: pointer; }\n.cert-form .wpcf7-not-valid { border-color: #b3402f; }\n.cert-form .wpcf7-not-valid-tip { margin-top: 6px; font-size: 12.5px; line-height: 1.5; color: #b3402f; }\n.cert-form__actions { grid-column: 1 \/ -1; margin-top: 6px; display: flex; flex-wrap: wrap; align-items: center; gap: 14px 16px; }\n.cert-form .wpcf7-submit { flex: 1 1 auto; padding: 15px 34px; font-size: 15px; font-weight: 600; font-family: inherit; text-align: center; color: #fff; background: var(--gold); border: 1px solid var(--gold); cursor: pointer; transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease; }\n.cert-form .wpcf7-submit:hover { background: var(--gold-d); border-color: var(--gold-d); transform: translateY(-2px); }\n.cert-form__alt { font-size: 14px; font-weight: 600; color: var(--teal); }\n.cert-form__alt:hover { color: var(--teal-d); text-decoration: underline; }\n.cert-form__legal { grid-column: 1 \/ -1; font-size: 12.5px; line-height: 1.6; color: #7a8783; }\n.cert-form .screen-reader-response { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }\n.cert-form .wpcf7-form.init .wpcf7-response-output { display: none; }\n.cert-form .wpcf7-response-output { margin: 16px 0 0; padding: 12px 16px; font-size: 14px; line-height: 1.6; color: #5a6b66; background: #fbfdfc; border: 1px solid #dde4e1; }\n.cert-form .wpcf7-response-output.wpcf7-mail-sent-ok { color: #146253; background: rgba(27,122,102,0.08); border-color: var(--teal); }\n\n\/* ============================ Responsive ============================ *\/\n@media (max-width: 1024px) {\n  :root { --gap: 68px; }\n  .cert-hero { min-height: 80vh; }\n  .cert-hero__title { font-size: 40px; }\n  .cert-split { grid-template-columns: 1fr; gap: 36px; }\n  .cert-split__media { min-height: 380px; }\n  .cert-matrix__inner { padding: var(--gap) 24px; }\n  .cert-systems__grid { grid-template-columns: 1fr; }\n  .cert-proc__grid { grid-template-columns: repeat(2, 1fr); }\n  .cert-special__grid { grid-template-columns: 1fr; }\n  .cert-qms__grid { grid-template-columns: 1fr; }\n  .cert-cta__inner { grid-template-columns: 1fr; gap: 40px; }\n  .cert-cta__title { font-size: 32px; }\n}\n\n@media (max-width: 767px) {\n  .cert-hero { min-height: 0; }\n  .cert-hero__layout { padding: 104px 24px 64px; gap: 26px; }\n  .cert-hero__title { font-size: 30px; }\n  .cert-hero__lead { font-size: 16px; }\n  .cert-hero__actions { gap: 12px; }\n  .cert-hero__actions .cert-btn { flex: 1 1 100%; justify-content: center; }\n  .cert-marks__inner { gap: 18px; }\n  .cert-marks__list { gap: 18px; }\n  .cert-split__title { font-size: 28px; }\n  .cert-split__text { font-size: 16px; }\n  .cert-matrix__title { font-size: 28px; }\n  .cert-table { font-size: 14px; }\n  .cert-table thead th, .cert-table tbody td { padding: 12px 14px; }\n  .cert-card { padding: 30px 26px; }\n  .cert-proc__grid { grid-template-columns: 1fr; }\n  .cert-proc__title { font-size: 28px; }\n  .cert-special__item { padding: 28px 24px; }\n  .cert-faq__q { font-size: 15.5px; padding: 18px 20px; }\n  .cert-faq__a { padding: 0 20px 20px; font-size: 15px; }\n  .cert-cta__inner { padding: 68px 24px; }\n  .cert-cta__title { font-size: 27px; }\n  .cert-form { padding: 28px 22px; }\n  .cert-form__grid { grid-template-columns: 1fr; }\n  .cert-form .wpcf7-checkbox { grid-template-columns: repeat(2, 1fr); }\n  .cert-form .wpcf7-submit { flex: 1 1 100%; }\n}\n\n@media (max-width: 480px) {\n  .cert-title { font-size: 23px; }\n  .cert-table { font-size: 13px; }\n  .cert-table thead th, .cert-table tbody td { padding: 10px 12px; }\n  .cert-card { padding: 26px 22px; }\n  .cert-form .wpcf7-checkbox { grid-template-columns: 1fr; }\n  .cert-cta__title { font-size: 23px; }\n}\n\n\n\/* ====================== Inline contextual links ====================== *\/\n.cert-link {\n  color: #1b7a66;\n  font-weight: 600;\n  border-bottom: 1px solid rgba(27, 122, 102, 0.4);\n  transition: color 0.25s ease, border-color 0.25s ease;\n}\n.cert-link::after {\n  content: \"\";\n  display: inline-block;\n  width: 5px;\n  height: 5px;\n  margin-left: 5px;\n  border-top: 1.6px solid currentColor;\n  border-right: 1.6px solid currentColor;\n  transform: rotate(45deg);\n  transition: transform 0.25s ease;\n}\n.cert-link:hover { color: #0e4f43; border-bottom-color: #0e4f43; }\n.cert-link:hover::after { transform: rotate(45deg) translate(2px, -2px); }\n\n\/* Enquiry form styles now live in assets\/css\/form.css (linked on this page). *\/\n\nul, ol { padding: 0; }\n\n.cs-ic { width: 26px; height: 26px; fill: none; stroke: #1b7a66; stroke-width: 2; }\n\nul { padding: 0; }\nol { padding: 0; }\n\n\/* ---------- Form card ---------- *\/\n.cs-form {\n  position: relative;\n  background: #fff;\n  padding: 34px 32px 32px;\n  color: #1e1e1e;\n  border: 1px solid #e4eae7;\n  border-radius: 12px;\n  box-shadow: 0 12px 32px rgba(14, 79, 67, 0.08);\n  max-width: 860px;\n  margin: 0 auto;\n}\n.cs-form__title { font-size: 21px; font-weight: 700; color: #0e4f43; margin-bottom: 6px; }\n.cs-form__note { font-size: 13.5px; color: #5a5a5a; margin-bottom: 20px; }\n\n\/* ---------- Fields ---------- *\/\n.cs-field { margin-bottom: 16px; }\n.cs-field__label { display: block; font-size: 13px; font-weight: 600; color: #1e1e1e; margin-bottom: 6px; }\n.cs-field__req { color: #9c7440; }\n.cs-field__opt { font-weight: 400; color: #5a5a5a; }\n\n.cs-field__input,\n.cs-field__select,\n.cs-field__textarea,\n.cs-form .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-file) {\n  width: 100%;\n  font-family: inherit;\n  font-size: 14.5px;\n  color: #1e1e1e;\n  padding: 11px 13px;\n  background: #faf9f5;\n  border: 1px solid #e4eae7;\n  transition: border-color 0.3s ease, box-shadow 0.3s ease;\n}\n.cs-field__input:focus,\n.cs-field__select:focus,\n.cs-field__textarea:focus,\n.cs-form .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-file):focus {\n  outline: none;\n  border-color: #1b7a66;\n  box-shadow: 0 0 0 3px rgba(27, 122, 102, 0.12);\n}\n.cs-field__textarea { min-height: 96px; resize: vertical; }\n\n\/* Field label for raw CF7 markup (no .cs-field__label helper) *\/\n.cs-field > label,\n.cs-form__row .cs-field > label { display: block; font-size: 13px; font-weight: 600; color: #1e1e1e; margin-bottom: 6px; }\n\n\/* ---------- Two-column row ---------- *\/\n.cs-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }\n\n\/* ---------- Submit ---------- *\/\n.cs-form__submit {\n  width: 100%;\n  justify-content: center;\n  cursor: pointer;\n  font-family: inherit;\n  font-size: 16px;\n  font-weight: 600;\n  padding: 16px 34px;\n  background: #b58a4e;\n  color: #fff;\n  border: 1px solid #b58a4e;\n  display: inline-flex;\n  align-items: center;\n  gap: 10px;\n  transition: background 0.3s ease, transform 0.3s ease;\n}\n.cs-form__submit:hover { background: #9c7440; border-color: #9c7440; transform: translateY(-2px); }\n.cs-form__submit .cs-ic { stroke: currentColor; width: 20px; height: 20px; }\n.cs-form__submit:hover .cs-ic { transform: translateX(3px); transition: transform 0.3s ease; }\n\n\/* ---------- Honeypot + status ---------- *\/\n.cs-form__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }\n.cs-form__status { margin-top: 12px; font-size: 14px; font-weight: 600; color: #0e4f43; }\n\n\/* ---------- Field note \/ alt link \/ legal ---------- *\/\n.cs-field__note { margin-top: 6px; font-size: 12.5px; line-height: 1.5; color: #5a5a5a; }\n.cs-form__alt { display: block; text-align: center; margin-top: 14px; font-size: 13.5px; font-weight: 600; color: #1b7a66; text-decoration: none; }\n.cs-form__alt:hover { text-decoration: underline; color: #155e4f; }\n.cs-form__legal { margin-top: 16px; font-size: 12.5px; line-height: 1.6; color: #5a5a5a; text-align: center; }\n\n\/* ---------- Contact Form 7 compatibility (no inline styling) ---------- *\/\n.cs-form .wpcf7-form-control-wrap { display: block; }\n.wpcf7-not-valid-tip { display: block; margin-top: 5px; font-size: 12.5px; color: #d23b3b; font-weight: 600; }\n.wpcf7-form-control.wpcf7-not-valid { border-color: #d23b3b !important; box-shadow: 0 0 0 3px rgba(210, 59, 59, 0.12) !important; }\n\n\/* ---------- Checkbox group (Product Type) \u00e2\u20ac\u201d grid of options ---------- *\/\n.cs-checks,\n.wpcf7-checkbox { display: grid; grid-template-columns: repeat(2, 1fr); gap: 4px 12px; margin-top: 8px; }\n.wpcf7-list-item { margin: 0; display: flex; }\n.wpcf7-list-item label { display: flex; align-items: center; gap: 9px; font-size: 13.5px; color: #1e1e1e; cursor: pointer; line-height: 1.4; }\n.wpcf7-list-item input { width: 16px; height: 16px; flex: 0 0 auto; accent-color: #1b7a66; cursor: pointer; }\n.cs-check { display: flex; align-items: center; gap: 9px; font-size: 13.5px; color: #1e1e1e; cursor: pointer; line-height: 1.4; }\n.cs-check input { width: 16px; height: 16px; flex: 0 0 auto; accent-color: #1b7a66; cursor: pointer; }\n\n\/* ---------- Radio group (single-choice) \u00e2\u20ac\u201d stacks vertically ---------- *\/\n.wpcf7-radio { display: grid; gap: 8px; margin-top: 8px; }\n.wpcf7-radio .wpcf7-list-item { margin: 0; }\n.wpcf7-radio .wpcf7-list-item label { font-size: 14px; }\n\n\/* ---------- File upload (dashed panel) ---------- *\/\n.cs-form .wpcf7-file {\n  display: block;\n  width: 100%;\n  font-family: inherit;\n  font-size: 14px;\n  padding: 12px 14px;\n  background: #faf9f5;\n  border: 1px dashed #c9d6d1;\n  color: #5a5a5a;\n  cursor: pointer;\n  border-radius: 8px;\n}\n.cs-field__file {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  width: 100%;\n  font-family: inherit;\n  font-size: 14px;\n  padding: 12px 14px;\n  background: #faf9f5;\n  border: 1px dashed #c9d6d1;\n  color: #5a5a5a;\n  cursor: pointer;\n  border-radius: 8px;\n}\n.cs-field__file input[type=\"file\"] { display: none; }\n.cs-field__file::before {\n  content: \"Attach file\";\n  font-weight: 600;\n  color: #1b7a66;\n}\n\n\/* ---------- Spinner ---------- *\/\n.wpcf7-spinner {\n  display: none;\n  vertical-align: middle;\n  margin-left: 10px;\n  width: 18px;\n  height: 18px;\n  border: 2px solid rgba(27, 122, 102, 0.25);\n  border-top-color: #1b7a66;\n  border-radius: 50%;\n  animation: cs-spin 0.7s linear infinite;\n}\n.wpcf7-spinner.is-active { display: inline-block; }\n@keyframes cs-spin { to { transform: rotate(360deg); } }\n\n\/* ---------- Response \/ status output ---------- *\/\n.wpcf7-response-output {\n  display: none;\n  margin: 14px 0 0;\n  padding: 12px 14px;\n  border-radius: 8px;\n  font-size: 14px;\n  font-weight: 600;\n  border: 1px solid #e4eae7;\n}\n.wpcf7-response-output:not(:empty),\n.wpcf7-response-output.wpcf7-mail-sent-ok,\n.wpcf7-response-output.wpcf7-mail-sent-ng,\n.wpcf7-response-output.wpcf7-validation-errors,\n.wpcf7-response-output.wpcf7-spam-blocked { display: block; }\n.wpcf7-response-output.wpcf7-mail-sent-ok { color: #1b6f3f; background: #eafaf1; border-color: #bfe6cf; }\n.wpcf7-response-output.wpcf7-mail-sent-ng,\n.wpcf7-response-output.wpcf7-validation-errors { color: #b4452f; background: #fdeeec; border-color: #f3c6bd; }\n\n\/* ---------- Product Type \u00e2\u20ac\u201c dropdown multi-select (built by form.js) ---------- *\/\n.cs-mselect { border: 1px solid #e4eae7; background: #faf9f5; }\n.cs-mselect__trigger {\n  list-style: none;\n  cursor: pointer;\n  user-select: none;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 12px;\n  padding: 11px 13px;\n  font-size: 14.5px;\n  color: #1e1e1e;\n}\n.cs-mselect__trigger::-webkit-details-marker { display: none; }\n.cs-mselect__trigger:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(27, 122, 102, 0.12); }\n.cs-mselect__caret { flex: none; color: #5a5a5a; transition: transform 0.25s ease; }\n.cs-mselect[open] .cs-mselect__caret { transform: rotate(180deg); }\n.cs-mselect__panel { border-top: 1px solid #e4eae7; padding: 12px 13px; max-height: 240px; overflow: auto; }\n\n\/* ---------- Responsive ---------- *\/\n@media (max-width: 767px) {\n  .cs-form { padding: 24px 20px 22px; }\n  .cs-form__row { grid-template-columns: 1fr; gap: 0; }\n  .cs-checks,\n  .wpcf7-checkbox { grid-template-columns: 1fr; }\n}\n\n\/* ---------- WhatsApp button (shared, left column of enquiry forms) ---------- *\/\n.cs-wa {\n  display: inline-flex;\n  align-items: center;\n  gap: 12px;\n  align-self: flex-start;\n  margin-top: 26px;\n  padding: 11px 22px;\n  background: #25D366;\n  color: #fff;\n  text-decoration: none;\n  border-radius: 4px;\n  box-shadow: 0 6px 18px rgba(37, 211, 102, 0.28);\n  transition: background 0.3s ease, transform 0.3s ease;\n}\n.cs-wa:hover { background: #1ebe5b; transform: translateY(-2px); }\n.cs-wa__ic { width: 26px; height: 26px; fill: #fff; flex: none; }\n.cs-wa__text { display: flex; flex-direction: column; line-height: 1.2; }\n.cs-wa__label { font-size: 15px; font-weight: 700; }\n.cs-wa__num { font-size: 12.5px; opacity: 0.92; }\n\nul, ol { padding: 0; }\n<\/style>\n\n\n\n<style data-wp-block-html=\"css\">\n:root{--teal:#1b7a66;--teal-d:#0e4f43;--teal-l:#2fa98c;--gold:#b58a4e;--gold-d:#9c7440;--ink:#1e1e1e;--ink-2:#5a5a5a;--ink-3:#686868;--ivory:#faf9f5;--mist:#eef3ef;--line:#e4eae7;--line-2:#eef3ef;--gap:100px},::before,*::after{box-sizing:border-box;margin:0;padding:0}body{font-family:'Segoe UI',system-ui,-apple-system,'Helvetica Neue',Arial,sans-serif;font-size:16px;line-height:1.65;color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.cert{width:100%;overflow:hidden}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}ul{list-style:none;padding:0}ol{padding:0}button{font-family:inherit}.cert-eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:600;letter-spacing:1.5px;color:var(--teal);margin-bottom:18px}.cert-eyebrow__bar{display:inline-block;width:38px;height:2px;background:var(--gold)}.cert-eyebrow--light{color:#d7efe7}.cert-ic{width:26px;height:26px;fill:none;stroke:var(--teal);stroke-width:2}.cert-head{text-align:center;max-width:760px;margin:0 auto 54px}.cert-head .cert-eyebrow{justify-content:center}.cert-title{font-size:34px;font-weight:700;line-height:1.25;color:var(--ink);margin-bottom:14px}.cert-title--teal{color:var(--teal-d)}.cert-intro{font-size:17px;color:var(--ink-2);line-height:1.7}.cert-head::after{content:\"\";display:block;width:64px;height:3px;background:var(--gold);margin:20px auto 0;border-radius:2px}.cert-rule-left{content:\"\";display:block;width:64px;height:3px;background:var(--gold);margin:20px 0 0;border-radius:2px}.cert-btn{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:600;padding:15px 34px;transition:background 0.3s ease,color 0.3s ease,transform 0.3s ease}.cert-btn .cert-ic{stroke:currentColor}.cert-btn--primary{background:var(--gold);color:#fff;border:1px solid var(--gold)}.cert-btn--primary:hover{background:var(--gold-d);border-color:var(--gold-d);transform:translateY(-2px)}.cert-btn--outline{background:transparent;color:#fff;border:2px solid #fff}.cert-btn--outline:hover{background:#fff;color:var(--teal-d);transform:translateY(-2px)}.cert-btn--whatsapp{background:#25D366;color:#fff;border:1px solid #25D366;margin-top:28px}.cert-btn--whatsapp:hover{background:#1ebe5a;border-color:#1ebe5a;transform:translateY(-2px)}.cert-btn--whatsapp .cert-ic{width:18px;height:18px;stroke:currentColor;flex:none}.cert-hero{position:relative;min-height:86vh;display:flex;align-items:center;color:#fff;overflow:hidden;background:#071714}.cert-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 32%;transform:scale(1.12)}.cert-hero__overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(7,23,20,0.92) 0%,rgba(7,23,20,0.66) 48%,rgba(7,23,20,0.45) 100%),linear-gradient(to top,rgba(7,23,20,0.62) 0%,rgba(7,23,20,0) 46%),radial-gradient(120% 90% at 12% 18%,rgba(47,169,140,0.28),rgba(7,23,20,0) 55%)}.cert-hero__layout{position:relative;z-index:2;width:100%;max-width:1290px;margin:0 auto;padding:140px 24px 96px;display:flex;flex-direction:column;align-items:flex-start;gap:32px}.cert-breadcrumb{display:flex;align-items:center;gap:10px;font-size:13px;letter-spacing:0.5px;color:rgba(255,255,255,0.82)}.cert-breadcrumb a{color:rgba(255,255,255,0.82);transition:color 0.3s ease}.cert-breadcrumb a:hover{color:#c8a45d}.cert-breadcrumb span[aria-hidden]{opacity:0.55}.cert-hero__eyebrow{font-size:18px;font-weight:400;color:#fff;letter-spacing:0.4px;text-shadow:0 1px 6px rgba(0,0,0,0.4)}.cert-hero__eyebrow-accent{color:#c8a45d;font-weight:700}.cert-hero__title{font-weight:700;font-size:48px;line-height:1.16;letter-spacing:-0.6px;color:#fff;max-width:920px;text-shadow:0 2px 24px rgba(0,0,0,0.45)}.cert-hero__lead{font-size:18px;font-weight:400;line-height:1.72;letter-spacing:0.2px;max-width:840px;color:rgba(255,255,255,0.92);text-shadow:0 1px 14px rgba(0,0,0,0.4)}.cert-hero__actions{display:flex;flex-wrap:wrap;gap:18px}.cert-marks{background:var(--teal-d)}.cert-marks__inner{max-width:1180px;margin:0 auto;padding:22px 24px;display:flex;align-items:center;gap:28px;flex-wrap:wrap}.cert-marks__label{font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#a9d6cb}.cert-marks__list{display:flex;align-items:center;gap:26px;flex-wrap:wrap;list-style:none}.cert-marks__item{font-size:14px;font-weight:600;color:#fff;display:inline-flex;align-items:center;gap:8px}.cert-marks__item .cert-ic{width:18px;height:18px;stroke:#7fd0bb}.cert-intro-sec{background:#fff;padding:var(--gap) 24px}.cert-split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:stretch;max-width:1200px;margin:0 auto}.cert-split__media{position:relative;overflow:hidden;min-height:460px;background:var(--teal-d);align-self:stretch}.cert-split__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 0.6s ease}.cert-split__media:hover .cert-split__img{transform:scale(1.06)}.cert-split__body{padding:16px 0;display:flex;flex-direction:column;justify-content:center}.cert-split__title{font-size:36px;font-weight:700;line-height:1.28;letter-spacing:-0.3px;color:var(--ink);margin-bottom:24px}.cert-split__text{font-size:17px;line-height:1.85;color:var(--ink-2);margin-bottom:20px}.cert-split__note{margin-top:30px;padding:22px 26px;background:var(--ivory);border:1px solid var(--line);border-left:3px solid var(--teal);font-size:16px;line-height:1.75;color:var(--ink)}.cert-split__note strong{color:var(--teal-d)}.cert-matrix{background:var(--mist)}.cert-matrix__inner{max-width:1100px;margin:0 auto;padding:var(--gap) 24px}.cert-matrix__body{display:block}.cert-matrix__title{font-size:34px;font-weight:700;line-height:1.25;color:var(--teal-d);margin-bottom:16px}.cert-matrix__text{font-size:16px;color:var(--ink-2);max-width:520px;margin-bottom:20px}.cert-table{width:100%;border-collapse:collapse;font-size:15px}.cert-table thead th{background:linear-gradient(90deg,var(--teal-d),var(--teal));color:#fff;text-align:left;padding:14px 18px;font-size:12px;font-weight:600;letter-spacing:0.6px;text-transform:uppercase}.cert-table tbody td{padding:14px 18px;border-bottom:1px solid var(--line);color:var(--ink)}.cert-table tbody tr:nth-child(even){background:rgba(14,79,67,0.045)}.cert-table__label{font-weight:600;color:var(--teal-d);width:26%}.cert-table__value{font-weight:600;color:var(--ink);width:30%}.cert-systems{background:#fff;padding:var(--gap) 0}.cert-systems__inner{max-width:1200px;margin:0 auto;padding:0 24px}.cert-systems__grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.cert-card{position:relative;border:1px solid var(--line);background:var(--ivory);padding:38px 36px;overflow:hidden;transition:box-shadow 0.3s ease,transform 0.3s ease,border-color 0.3s ease}.cert-card::before{content:\"\";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--teal),var(--teal-l));transform:scaleX(0);transform-origin:left;transition:transform 0.4s ease}.cert-card:hover{box-shadow:0 12px 32px rgba(14,79,67,0.12);transform:translateY(-4px);border-color:var(--teal)}.cert-card:hover::before{transform:scaleX(1)}.cert-card__title{font-size:19px;font-weight:600;color:var(--teal-d);margin-bottom:22px;display:flex;align-items:center;gap:12px}.cert-card__title .cert-ic{stroke:var(--teal)}.cert-list li{position:relative;padding:10px 0 10px 30px;font-size:15.5px;color:var(--ink);border-bottom:1px solid var(--line-2)}.cert-list li:last-child{border-bottom:0}.cert-list li::before{content:\"\";position:absolute;left:0;top:15px;width:16px;height:16px;border-radius:50%;background:var(--teal);-webkit-mask:url(\"data:image\/svg+xml;utf8,<svg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'><path fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M5 12.5l4.5 4.5L19 7'\/><\/svg>\") center \/ 16px no-repeat;mask:url(\"data:image\/svg+xml;utf8,<svg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'><path fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M5 12.5l4.5 4.5L19 7'\/><\/svg>\") center \/ 16px no-repeat}.cert-proc{position:relative;color:#fff;overflow:hidden;background:var(--teal-d)}.cert-proc__overlay{position:absolute;inset:0;background:linear-gradient(180deg,var(--teal-d),rgba(27,122,102,0.92))}.cert-proc__inner{position:relative;max-width:1200px;margin:0 auto;padding:var(--gap) 24px}.cert-proc__title{font-size:36px;font-weight:700;line-height:1.25;max-width:760px;margin-bottom:16px}.cert-proc__text{font-size:17px;color:#e3efe9;max-width:640px;margin-bottom:46px}.cert-proc__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.cert-proc__item{padding:26px 24px 28px;background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.16);border-top:2px solid #7fd0bb}.cert-proc__num{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-bottom:16px;background:#fff;color:var(--teal-d);font-size:15px;font-weight:700}.cert-proc__name{font-size:16.5px;font-weight:700;line-height:1.4;margin-bottom:8px}.cert-proc__desc{font-size:14.5px;line-height:1.7;color:#cfe0db}.cert-special{background:var(--ivory);padding:var(--gap) 0}.cert-special__inner{max-width:1200px;margin:0 auto;padding:0 24px}.cert-special__grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.cert-special__item{position:relative;background:#fff;border:1px solid var(--line);padding:34px 32px;overflow:hidden;transition:box-shadow 0.3s ease,transform 0.3s ease,border-color 0.3s ease}.cert-special__item::before{content:\"\";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--teal),var(--teal-l));transform:scaleX(0);transform-origin:left;transition:transform 0.4s ease}.cert-special__item:hover{box-shadow:0 12px 32px rgba(14,79,67,0.12);transform:translateY(-4px);border-color:var(--teal)}.cert-special__item:hover::before{transform:scaleX(1)}.cert-special__name{font-size:19px;font-weight:600;color:var(--teal-d);margin-bottom:14px;display:flex;align-items:center;gap:12px}.cert-special__name .cert-ic{stroke:var(--teal)}.cert-special__desc{font-size:15.5px;line-height:1.8;color:var(--ink-2)}.cert-qms{background:#fff;padding:var(--gap) 0}.cert-qms__inner{max-width:1200px;margin:0 auto;padding:0 24px}.cert-qms__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.cert-qms__item{position:relative;background:var(--ivory);border:1px solid var(--line);padding:34px 30px;overflow:hidden;transition:box-shadow 0.3s ease,transform 0.3s ease,border-color 0.3s ease}.cert-qms__item::before{content:\"\";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--teal),var(--teal-l));transform:scaleX(0);transform-origin:left;transition:transform 0.4s ease}.cert-qms__item:hover{box-shadow:0 12px 32px rgba(14,79,67,0.12);transform:translateY(-4px);border-color:var(--teal)}.cert-qms__item:hover::before{transform:scaleX(1)}.cert-qms__name{font-size:18px;font-weight:600;color:var(--teal-d);margin-bottom:14px;display:flex;align-items:center;gap:12px}.cert-qms__name .cert-ic{stroke:var(--teal)}.cert-qms__desc{font-size:15px;line-height:1.8;color:var(--ink-2)}.cert-faq{background:#fff;padding:var(--gap) 0}.cert-faq__inner{max-width:900px;margin:0 auto;padding:0 24px}.cert-faq__item{background:var(--ivory);border:1px solid var(--line);margin-bottom:14px;transition:border-color 0.3s ease,box-shadow 0.3s ease}.cert-faq__item:hover{border-color:var(--teal)}.cert-faq__item.is-open{border-color:var(--teal);box-shadow:0 8px 26px rgba(14,79,67,0.10)}.cert-faq__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;background:none;border:0;text-align:left;font-size:16.5px;font-weight:600;line-height:1.5;color:var(--ink);cursor:pointer;transition:color 0.3s ease}.cert-faq__q:hover{color:var(--teal)}.cert-faq__icon{position:relative;flex:none;width:22px;height:22px}.cert-faq__icon::before,.cert-faq__icon::after{content:\"\";position:absolute;background:var(--teal);transition:transform 0.3s ease,opacity 0.3s ease}.cert-faq__icon::before{top:10px;left:0;width:22px;height:2px}.cert-faq__icon::after{left:10px;top:0;width:2px;height:22px}.cert-faq__item.is-open .cert-faq__icon::after{transform:rotate(90deg);opacity:0}.cert-faq__a{padding:0 24px 22px;font-size:15.5px;line-height:1.8;color:var(--ink-2)}.cert-faq__a p+p{margin-top:12px}.cert-faq__a[hidden]{display:none}.cert-cta{position:relative;color:#fff;overflow:hidden;background:linear-gradient(180deg,rgba(14,79,67,0.88),rgba(27,122,102,0.80)),radial-gradient(90% 70% at 50% 0%,rgba(47,169,140,0.30),rgba(14,79,67,0)),#0e4f43}.cert-cta__inner{position:relative;max-width:1180px;margin:0 auto;padding:var(--gap) 24px;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.cert-cta__title{font-size:38px;font-weight:700;line-height:1.25;margin-bottom:12px}.cert-cta__text{font-size:17px;color:#e3efe9;max-width:560px;margin-bottom:22px}.cert-cta__points{display:grid;gap:12px}.cert-cta__point{display:flex;align-items:flex-start;gap:12px;font-size:15.5px;line-height:1.7;color:#d7efe7}.cert-cta__point .cert-ic{width:20px;height:20px;stroke:#7fd0bb;flex:none;margin-top:3px}@media (max-width:1024px){:root{--gap:68px}.cert-hero{min-height:80vh}.cert-hero__title{font-size:40px}.cert-split{grid-template-columns:1fr;gap:36px}.cert-split__media{min-height:380px}.cert-matrix__inner{padding:var(--gap) 24px}.cert-systems__grid{grid-template-columns:1fr}.cert-proc__grid{grid-template-columns:repeat(2,1fr)}.cert-special__grid{grid-template-columns:1fr}.cert-qms__grid{grid-template-columns:1fr}.cert-cta__inner{grid-template-columns:1fr;gap:40px}.cert-cta__title{font-size:32px}}@media (max-width:767px){.cert-hero{min-height:0}.cert-hero__layout{padding:104px 24px 64px;gap:26px}.cert-hero__title{font-size:30px}.cert-hero__lead{font-size:16px}.cert-hero__actions{gap:12px}.cert-hero__actions .cert-btn{flex:1 1 100%;justify-content:center}.cert-marks__inner{gap:18px}.cert-marks__list{gap:18px}.cert-split__title{font-size:28px}.cert-split__text{font-size:16px}.cert-matrix__title{font-size:28px}.cert-table{font-size:14px}.cert-table thead th,.cert-table tbody td{padding:12px 14px}.cert-card{padding:30px 26px}.cert-proc__grid{grid-template-columns:1fr}.cert-proc__title{font-size:28px}.cert-special__item{padding:28px 24px}.cert-faq__q{font-size:15.5px;padding:18px 20px}.cert-faq__a{padding:0 20px 20px;font-size:15px}.cert-cta__inner{padding:68px 24px}.cert-cta__title{font-size:27px}}@media (max-width:480px){.cert-title{font-size:23px}.cert-table{font-size:13px}.cert-table thead th,.cert-table tbody td{padding:10px 12px}.cert-card{padding:26px 22px}.cert-cta__title{font-size:23px}}.cert-link{color:#1b7a66;font-weight:600;border-bottom:1px solid rgba(27,122,102,0.4);transition:color 0.25s ease,border-color 0.25s ease}.cert-link::after{content:\"\";display:inline-block;width:5px;height:5px;margin-left:5px;border-top:1.6px solid currentColor;border-right:1.6px solid currentColor;transform:rotate(45deg);transition:transform 0.25s ease}.cert-link:hover{color:#0e4f43;border-bottom-color:#0e4f43}.cert-link:hover::after{transform:rotate(45deg) translate(2px,-2px)}\n<\/style>\n\n<script data-wp-block-html=\"js\">\n (function () {\n    'use strict';\n    function initFAQ() {\n      var faqItems = document.querySelectorAll('.cert-faq__item');\n      if (!faqItems.length) return;\n      faqItems.forEach(function (item) {\n        var button = item.querySelector('.cert-faq__q');\n        var panel = item.querySelector('.cert-faq__a');\n        if (!button || !panel) return;\n        button.setAttribute('aria-expanded', 'false');\n        button.addEventListener('click', function () {\n          var isOpen = item.classList.contains('is-open');\n          \/\/ Close all other items\n          faqItems.forEach(function (other) {\n            if (other === item) return;\n            var otherPanel = other.querySelector('.cert-faq__a');\n            var otherBtn = other.querySelector('.cert-faq__q');\n            other.classList.remove('is-open');\n            if (otherPanel) { otherPanel.hidden = true; }\n            if (otherBtn) { otherBtn.setAttribute('aria-expanded', 'false'); }\n          });\n          \/\/ Toggle current item\n          item.classList.toggle('is-open', !isOpen);\n          panel.hidden = isOpen;\n          button.setAttribute('aria-expanded', isOpen ? 'false' : 'true');\n        });\n      });\n    }\n    \/\/ Wait for WordPress page DOM\n    if (document.readyState === 'loading') {\n      document.addEventListener('DOMContentLoaded', initFAQ);\n    } else {\n      initFAQ();\n    }\n  })();\n<\/script>\n\n<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"position:absolute;width:0;height:0;overflow:hidden\" aria-hidden=\"true\">\n<symbol id=\"cert-arrow\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M5 12h14M13 6l6 6-6 6\"><\/path><\/symbol>\n<symbol id=\"ic-arrow\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M5 12h14M13 6l6 6-6 6\"><\/path><\/symbol>\n<symbol id=\"cert-check\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M5 12.5l4.5 4.5L19 7\"><\/path><\/symbol>\n<symbol id=\"cert-shield\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 3l7 3v5c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z\"><\/path><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 12l2 2 4-4\"><\/path><\/symbol>\n<symbol id=\"cert-doc\" viewBox=\"0 0 24 24\"><rect x=\"5\" y=\"4.5\" width=\"14\" height=\"16\" rx=\"2\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><\/rect><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 4.5V3h6v1.5M9 11h6M9 15h6\"><\/path><\/symbol>\n<symbol id=\"cert-pulse\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3 12h4l2-4.5L12 17l2.5-5H21\"><\/path><\/symbol>\n<symbol id=\"cert-moon\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M15.5 3.5a8.5 8.5 0 100 17 10 10 0 010-17z\"><\/path><\/symbol>\n<symbol id=\"cert-star\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 3.5l2.6 5.4 5.9.9-4.3 4.1 1 5.9-5.2-2.8-5.2 2.8 1-5.9-4.3-4.1 5.9-.9z\"><\/path><\/symbol>\n<symbol id=\"cert-heart\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 20s-7-4.4-7-9.4A4 4 0 0112 8a4 4 0 017 2.6c0 5-7 9.4-7 9.4z\"><\/path><\/symbol>\n<symbol id=\"cert-leaf\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M5 19c0-8 6-13 14-14-1 9-6 14-14 14z\"><\/path><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M5 19c3-4 6-7 10-9\"><\/path><\/symbol>\n<symbol id=\"cert-factory\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3 21V9l6 4V9l6 4V6l6 4v11z\"><\/path><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" d=\"M7 21v-3M12 21v-3M17 21v-3\"><\/path><\/symbol>\n<symbol id=\"cert-file\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M6 3h8l4 4v14H6zM14 3v4h4\"><\/path><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 12h7M9 16h7\"><\/path><\/symbol>\n<symbol id=\"cert-landmark\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3 20h18M5 20V10M9 20V10M15 20V10M19 20V10M12 3l9 5H3z\"><\/path><\/symbol>\n<symbol id=\"cert-whatsapp\" viewBox=\"0 0 24 24\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 3a9 9 0 00-7.7 13.6L3 21l4.5-1.2A9 9 0 1012 3z\"><\/path><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 8.5c0 3 2 5 5 5l1-2-2.5-1-1 1.5c-1-.3-1.8-1.2-2-2l1.5-1-1-1z\"><\/path><\/symbol>\n<\/svg>\n<section class=\"cert-hero\" aria-labelledby=\"cert-hero-title\">\n  <img decoding=\"async\" class=\"cert-hero__img\" src=\"https:\/\/toothpastefactory.com\/wp-content\/uploads\/2026\/09\/Toothpaste-Certifications.webp\" alt=\"Compliance dossier with audit folders and certificates of analysis beside packaged oral care cartons\" loading=\"eager\" fetchpriority=\"high\">\n  <div class=\"cert-hero__overlay\"><\/div>\n  <div class=\"cert-hero__layout\">\n\t<nav class=\"cert-breadcrumb\" aria-label=\"Breadcrumb\">\n\t  <a href=\"https:\/\/toothpastefactory.com\/\">Home<\/a>\n\t  <span aria-hidden=\"true\">\/<\/span>\n\t  <span>Certifications<\/span>\n\t<\/nav>\n\t<p class=\"cert-hero__eyebrow\">Toothpaste manufacturing compliance for <span class=\"cert-hero__eyebrow-accent\">global market entry<\/span><\/p>\n\t<h1 class=\"cert-hero__title\" id=\"cert-hero-title\">Global Regulatory Compliance &amp; Toothpaste Certifications<\/h1>\n\t<p class=\"cert-hero__lead\">Streamline your international expansion. From US FDA OTC monographs to EU CPNP portals and Halal certifications, our cGMP-certified facility provides turnkey regulatory compliance for market entry worldwide.<\/p>\n\t<div class=\"cert-hero__actions\">\n\t  <a class=\"cert-btn cert-btn--primary\" href=\"#cert-consult\">Request Regulatory Compliance Dossier <svg class=\"cert-ic\"><use href=\"#cert-arrow\"><\/use><\/svg><\/a>\n\t  <a class=\"cert-btn cert-btn--outline\" href=\"mailto:sales@toothpastefactory.com?subject=Compliance%20Expert%20Consultation\">Consult a Compliance Expert <svg class=\"cert-ic\"><use href=\"#cert-arrow\"><\/use><\/svg><\/a>\n\t<\/div>\n  <\/div>\n<\/section>\n<div class=\"cert-marks\">\n  <div class=\"cert-marks__inner\">\n\t<p class=\"cert-marks__label\">Facility approvals<\/p>\n\t<ul class=\"cert-marks__list\">\n\t  <li class=\"cert-marks__item\"><svg class=\"cert-ic\"><use href=\"#cert-shield\"><\/use><\/svg>FDA Registered Facility<\/li>\n\t  <li class=\"cert-marks__item\"><svg class=\"cert-ic\"><use href=\"#cert-doc\"><\/use><\/svg>ISO 22716 cGMP<\/li>\n\t  <li class=\"cert-marks__item\"><svg class=\"cert-ic\"><use href=\"#cert-moon\"><\/use><\/svg>Halal Certified<\/li>\n\t  <li class=\"cert-marks__item\"><svg class=\"cert-ic\"><use href=\"#cert-leaf\"><\/use><\/svg>Ecocert \/ COSMOS<\/li>\n\t  <li class=\"cert-marks__item\"><svg class=\"cert-ic\"><use href=\"#cert-heart\"><\/use><\/svg>Leaping Bunny (Cruelty-Free)<\/li>\n\t<\/ul>\n  <\/div>\n<\/div>\n<section class=\"cert-intro-sec\" aria-labelledby=\"cert-divide-title\">\n  <div class=\"cert-split\">\n\t<div class=\"cert-split__media\">\n\t  <img decoding=\"async\" class=\"cert-split__img\" src=\"https:\/\/toothpastefactory.com\/wp-content\/uploads\/2026\/01\/rd-laboratory-developing-new-whitening-toothpaste-formula-professional-oem-toothpaste-manufacturer-guangzhou.webp\" alt=\"R&amp;D laboratory developing new whitening toothpaste formula at a professional OEM toothpaste manufacturer in Guangzhou\" loading=\"lazy\">\n\t<\/div>\n\t<div class=\"cert-split__body\">\n\t  <h2 class=\"cert-split__title\" id=\"cert-divide-title\">Navigating the Cosmetic vs. OTC Drug Divide<\/h2>\n\t  <p class=\"cert-split__text\">Toothpaste classification dictates everything downstream: which facility registration applies, what testing is required, how long registration takes, and what you are allowed to claim on the carton. A formula that is a cosmetic in one market can be an over-the-counter drug in another. More detail in our <a class=\"cert-link\" href=\"\/\">compliance and quality system<\/a>.<\/p>\n\t  <p class=\"cert-split__text\">We manufacture in both regimes and confirm the classification for your formula and claim set before production is scheduled \u2014 so the dossier, the testing and the label are built to the right standard the first time.<\/p>\n\t  <p class=\"cert-split__note\"><strong>One facility, two regimes:<\/strong> cosmetic-grade and OTC drug-grade manufacturing under the same quality system, with separate documentation trails for each.<\/p>\n\t<\/div>\n  <\/div>\n  <div class=\"cert-systems__inner\">\n\t<div class=\"cert-systems__grid\">\n\t  <article class=\"cert-card\">\n\t\t<h3 class=\"cert-card__title\"><svg class=\"cert-ic\"><use href=\"#cert-check\"><\/use><\/svg>Cosmetic Toothpaste<\/h3>\n\t\t<ul class=\"cert-list\">\n\t\t  <li>Formulations focused on cleaning, breath freshening and surface stain removal without regulated active ingredients.<\/li>\n\t\t  <li>Requires standard cGMP and regional cosmetic portal registrations.<\/li>\n\t\t<\/ul>\n\t  <\/article>\n\t  <article class=\"cert-card\">\n\t\t<h3 class=\"cert-card__title\"><svg class=\"cert-ic\"><use href=\"#cert-shield\"><\/use><\/svg>OTC Drug \/ Therapeutic Toothpaste<\/h3>\n\t\t<ul class=\"cert-list\">\n\t\t  <li>Formulas containing fluoride (anti-cavity), potassium nitrate (anti-sensitivity), or claiming plaque and gingivitis reduction.<\/li>\n\t\t  <li>Requires strict drug facility registration, API tracking and stability substantiation.<\/li>\n\t\t<\/ul>\n\t  <\/article>\n\t<\/div>\n  <\/div>\n<\/section>\n<section class=\"cert-systems\" aria-labelledby=\"cert-na-title\">\n  <div class=\"cert-systems__inner\">\n\t<div class=\"cert-head\">\n\t  <p class=\"cert-eyebrow\"><span class=\"cert-eyebrow__bar\"><\/span>North America<\/p>\n\t  <h2 class=\"cert-title cert-title--teal\" id=\"cert-na-title\">Certifications for Selling Toothpaste in the US &amp; Canada<\/h2>\n\t  <p class=\"cert-intro\">The FDA and Health Canada set the bar for therapeutic oral care. Our facility is registered and audit-ready for OTC compliance in both markets.<\/p>\n\t<\/div>\n\t<div class=\"cert-systems__grid\">\n\t  <article class=\"cert-card\">\n\t\t<h3 class=\"cert-card__title\"><svg class=\"cert-ic\"><use href=\"#cert-factory\"><\/use><\/svg>US FDA Establishment Registration<\/h3>\n\t\t<ul class=\"cert-list\">\n\t\t  <li>Mandatory for manufacturing any fluoride or sensitivity toothpaste sold in the United States.<\/li>\n\t\t<\/ul>\n\t  <\/article>\n\t  <article class=\"cert-card\">\n\t\t<h3 class=\"cert-card__title\"><svg class=\"cert-ic\"><use href=\"#cert-file\"><\/use><\/svg>OTC Monograph Compliance (21 CFR Part 355)<\/h3>\n\t\t<ul class=\"cert-list\">\n\t\t  <li>Formulation and active ingredient validation to meet the US anti-caries monograph.<\/li>\n\t\t<\/ul>\n\t  <\/article>\n\t  <article class=\"cert-card\">\n\t\t<h3 class=\"cert-card__title\"><svg class=\"cert-ic\"><use href=\"#cert-doc\"><\/use><\/svg>NDC Assignment<\/h3>\n\t\t<ul class=\"cert-list\">\n\t\t  <li>Assistance with label compliance and National Drug Code registration for US distribution.<\/li>\n\t\t<\/ul>\n\t  <\/article>\n\t  <article class=\"cert-card\">\n\t\t<h3 class=\"cert-card__title\"><svg class=\"cert-ic\"><use href=\"#cert-landmark\"><\/use><\/svg>Health Canada NPN \/ DIN<\/h3>\n\t\t<ul class=\"cert-list\">\n\t\t  <li>Registration support for natural, fluoride and sensitivity pastes entering the Canadian market.<\/li>\n\t\t<\/ul>\n\t  <\/article>\n\t<\/div>\n  <\/div>\n<\/section>\n<section class=\"cert-proc\" aria-labelledby=\"cert-eu-title\">\n  <div class=\"cert-proc__overlay\"><\/div>\n  <div class=\"cert-proc__inner\">\n\t<p class=\"cert-eyebrow cert-eyebrow--light\"><span class=\"cert-eyebrow__bar\"><\/span>Europe<\/p>\n\t<h2 class=\"cert-proc__title\" id=\"cert-eu-title\">Selling Toothpaste in the EU and UK (EC 1223\/2009)<\/h2>\n\t<p class=\"cert-proc__text\">The EU treats most fluoride toothpaste below 1,500 ppm as a cosmetic, but demands extensive safety documentation before the product can be placed on the market. Fluoride options are covered on our <a class=\"cert-link\" href=\"https:\/\/toothpastefactory.com\/ingredients\/active-agents\/\">active agents<\/a> page.<\/p>\n\t<div class=\"cert-proc__grid\">\n\t  <article class=\"cert-proc__item\">\n\t\t<p class=\"cert-proc__num\">01<\/p>\n\t\t<h3 class=\"cert-proc__name\">PIF Generation<\/h3>\n\t\t<p class=\"cert-proc__desc\">Dossier compilation including raw material data, stability results and packaging compatibility.<\/p>\n\t  <\/article>\n\t  <article class=\"cert-proc__item\">\n\t\t<p class=\"cert-proc__num\">02<\/p>\n\t\t<h3 class=\"cert-proc__name\">CPSR<\/h3>\n\t\t<p class=\"cert-proc__desc\">Toxicological assessment signed by a qualified European safety assessor.<\/p>\n\t  <\/article>\n\t  <article class=\"cert-proc__item\">\n\t\t<p class=\"cert-proc__num\">03<\/p>\n\t\t<h3 class=\"cert-proc__name\">CPNP &amp; SCPN Registration<\/h3>\n\t\t<p class=\"cert-proc__desc\">Notification support for the EU portal and the UK Submit Cosmetic Product Notification system.<\/p>\n\t  <\/article>\n\t  <article class=\"cert-proc__item\">\n\t\t<p class=\"cert-proc__num\">04<\/p>\n\t\t<h3 class=\"cert-proc__name\">ISO 22716<\/h3>\n\t\t<p class=\"cert-proc__desc\">Mandatory facility certification for cosmetic products sold within the European Economic Area.<\/p>\n\t  <\/article>\n\t<\/div>\n  <\/div>\n<\/section>\n<section class=\"cert-special\" aria-labelledby=\"cert-apac-title\">\n  <div class=\"cert-special__inner\">\n\t<div class=\"cert-head\">\n\t  <p class=\"cert-eyebrow\"><span class=\"cert-eyebrow__bar\"><\/span>APAC &amp; MENA<\/p>\n\t  <h2 class=\"cert-title cert-title--teal\" id=\"cert-apac-title\">Compliance for APAC and MENA Regions<\/h2>\n\t  <p class=\"cert-intro\">Religious, regulatory and import standards that decide market access across the fastest-growing oral care regions.<\/p>\n\t<\/div>\n\t<div class=\"cert-special__grid\">\n\t  <article class=\"cert-special__item\">\n\t\t<h3 class=\"cert-special__name\"><svg class=\"cert-ic\"><use href=\"#cert-moon\"><\/use><\/svg>Halal Certification (MUI \/ JAKIM)<\/h3>\n\t\t<p class=\"cert-special__desc\">Strict auditing of raw materials to ensure no porcine or alcohol derivatives, plus dedicated production line sterilisation for Middle Eastern and Southeast Asian markets.<\/p>\n\t  <\/article>\n\t  <article class=\"cert-special__item\">\n\t\t<h3 class=\"cert-special__name\"><svg class=\"cert-ic\"><use href=\"#cert-shield\"><\/use><\/svg>SFDA Compliance<\/h3>\n\t\t<p class=\"cert-special__desc\">Registration support for cosmetic and therapeutic oral care products entering Saudi Arabia.<\/p>\n\t  <\/article>\n\t  <article class=\"cert-special__item\">\n\t\t<h3 class=\"cert-special__name\"><svg class=\"cert-ic\"><use href=\"#cert-landmark\"><\/use><\/svg>ASEAN Cosmetic Directive (ACD)<\/h3>\n\t\t<p class=\"cert-special__desc\">Harmonised formulation and labelling standards for distribution across Southeast Asia.<\/p>\n\t  <\/article>\n\t  <article class=\"cert-special__item\">\n\t\t<h3 class=\"cert-special__name\"><svg class=\"cert-ic\"><use href=\"#cert-factory\"><\/use><\/svg>NMPA (China) Registration<\/h3>\n\t\t<p class=\"cert-special__desc\">Navigation of the latest Chinese cosmetic regulations and efficacy claim substantiation rules for toothpaste.<\/p>\n\t  <\/article>\n\t<\/div>\n  <\/div>\n<\/section>\n<section class=\"cert-systems\" aria-labelledby=\"cert-niche-title\">\n  <div class=\"cert-systems__inner\">\n\t<div class=\"cert-head\">\n\t  <p class=\"cert-eyebrow\"><span class=\"cert-eyebrow__bar\"><\/span>Consumer Trust<\/p>\n\t  <h2 class=\"cert-title cert-title--teal\" id=\"cert-niche-title\">Value-Add Certifications to Command Premium Pricing<\/h2>\n\t  <p class=\"cert-intro\">Voluntary certifications that drive purchasing decisions and brand loyalty \u2014 switched on or off to match your positioning.<\/p>\n\t<\/div>\n\t<div class=\"cert-systems__grid\">\n\t  <article class=\"cert-card\">\n\t\t<h3 class=\"cert-card__title\"><svg class=\"cert-ic\"><use href=\"#cert-leaf\"><\/use><\/svg>Ecocert &amp; COSMOS Organic \/ Natural<\/h3>\n\t\t<ul class=\"cert-list\">\n\t\t  <li>Validation of naturally derived ingredient percentages, sustainable sourcing and green chemistry manufacturing.<\/li>\n\t\t<\/ul>\n\t  <\/article>\n\t  <article class=\"cert-card\">\n\t\t<h3 class=\"cert-card__title\"><svg class=\"cert-ic\"><use href=\"#cert-heart\"><\/use><\/svg>Vegan &amp; Cruelty-Free<\/h3>\n\t\t<ul class=\"cert-list\">\n\t\t  <li>Formulating without animal-derived glycerin or bone char-processed ingredients, backed by Leaping Bunny or PETA certification.<\/li>\n\t\t<\/ul>\n\t  <\/article>\n\t  <article class=\"cert-card\">\n\t\t<h3 class=\"cert-card__title\"><svg class=\"cert-ic\"><use href=\"#cert-check\"><\/use><\/svg>Gluten-Free &amp; Non-GMO Project Verified<\/h3>\n\t\t<ul class=\"cert-list\">\n\t\t  <li>Traceability protocols that satisfy highly specific consumer health demands.<\/li>\n\t\t<\/ul>\n\t  <\/article>\n\t  <article class=\"cert-card\">\n\t\t<h3 class=\"cert-card__title\"><svg class=\"cert-ic\"><use href=\"#cert-star\"><\/use><\/svg>Kosher Certification<\/h3>\n\t\t<ul class=\"cert-list\">\n\t\t  <li>Rabbinical auditing of supply chains and compounding equipment.<\/li>\n\t\t<\/ul>\n\t  <\/article>\n\t<\/div>\n  <\/div>\n<\/section>\n<section class=\"cert-qms\" aria-labelledby=\"cert-qms-title\">\n  <div class=\"cert-qms__inner\">\n\t<div class=\"cert-head\">\n\t  <p class=\"cert-eyebrow\"><span class=\"cert-eyebrow__bar\"><\/span>Audit Ready<\/p>\n\t  <h2 class=\"cert-title cert-title--teal\" id=\"cert-qms-title\">Facility Certifications Securing Your Supply Chain<\/h2>\n\t  <p class=\"cert-intro\">The operational standards a B2B buyer should verify before auditing the physical plant. See the <a class=\"cert-link\" href=\"https:\/\/toothpastefactory.com\/certified-factory\/\">physical plant and laboratories<\/a> behind them.<\/p>\n\t<\/div>\n\t<div class=\"cert-qms__grid\">\n\t  <article class=\"cert-qms__item\">\n\t\t<h3 class=\"cert-qms__name\"><svg class=\"cert-ic\"><use href=\"#cert-file\"><\/use><\/svg>ISO 9001<\/h3>\n\t\t<p class=\"cert-qms__desc\">Quality management systems ensuring consistent administrative, training and production processes.<\/p>\n\t  <\/article>\n\t  <article class=\"cert-qms__item\">\n\t\t<h3 class=\"cert-qms__name\"><svg class=\"cert-ic\"><use href=\"#cert-doc\"><\/use><\/svg>ISO 22716<\/h3>\n\t\t<p class=\"cert-qms__desc\">The international benchmark for safe manufacturing, control, storage and shipment of cosmetic products.<\/p>\n\t  <\/article>\n\t  <article class=\"cert-qms__item\">\n\t\t<h3 class=\"cert-qms__name\"><svg class=\"cert-ic\"><use href=\"#cert-pulse\"><\/use><\/svg>ISO 17025<\/h3>\n\t\t<p class=\"cert-qms__desc\">Accreditation scope for in-house analytical microbiology and chemistry labs, ensuring accurate COA generation.<\/p>\n\t  <\/article>\n\t<\/div>\n  <\/div>\n<\/section>\n<section class=\"cert-faq\" aria-labelledby=\"cert-faq-title\">\n  <div class=\"cert-faq__inner\">\n\t<div class=\"cert-head\">\n\t  <p class=\"cert-eyebrow\"><span class=\"cert-eyebrow__bar\"><\/span>FAQ<\/p>\n\t  <h2 class=\"cert-title\" id=\"cert-faq-title\">Frequently Asked Questions About Toothpaste Compliance<\/h2>\n\t<\/div>\n\t<div class=\"cert-faq__item\">\n\t  <h3>\n\t\t<button class=\"cert-faq__q\" type=\"button\" aria-expanded=\"false\" aria-controls=\"cert-faq-a1\">\n\t\t  <span>Who owns the Product Information File (PIF) for a custom formula?<\/span>\n\t\t  <span class=\"cert-faq__icon\" aria-hidden=\"true\"><\/span>\n\t\t<\/button>\n\t  <\/h3>\n\t  <div class=\"cert-faq__a\" id=\"cert-faq-a1\" hidden=\"\">\n\t\t<p>Ownership is defined in the development agreement, and in practice the brand acts as the Responsible Person who holds the PIF, while we supply the technical data that goes into it: formula, raw material specifications and COAs, stability and microbiological results, packaging compatibility and the manufacturing description.<\/p>\n\t\t<p>That split matters at audit: the file has to sit with the entity placing the product on the EU or UK market, but the underlying data has to come from the manufacturer. We provide it in a format your assessor can drop straight into the dossier.<\/p>\n\t  <\/div>\n\t<\/div>\n\t<div class=\"cert-faq__item\">\n\t  <h3>\n\t\t<button class=\"cert-faq__q\" type=\"button\" aria-expanded=\"false\" aria-controls=\"cert-faq-a2\">\n\t\t  <span>Does your facility conduct animal testing?<\/span>\n\t\t  <span class=\"cert-faq__icon\" aria-hidden=\"true\"><\/span>\n\t\t<\/button>\n\t  <\/h3>\n\t  <div class=\"cert-faq__a\" id=\"cert-faq-a2\" hidden=\"\">\n\t\t<p>No. We do not conduct animal testing, and we do not commission it on our behalf, for raw materials, intermediates or finished products.<\/p>\n\t\t<p>Safety and efficacy are substantiated through alternative in vitro methods \u2014 reconstructed oral tissue models for irritation, enamel and dentine disc models for abrasivity and remineralisation, and validated laboratory assays for antimicrobial performance \u2014 supported by supplier declarations held on file.<\/p>\n\t  <\/div>\n\t<\/div>\n\t<div class=\"cert-faq__item\">\n\t  <h3>\n\t\t<button class=\"cert-faq__q\" type=\"button\" aria-expanded=\"false\" aria-controls=\"cert-faq-a3\">\n\t\t  <span>Can you help us secure the ADA (American Dental Association) Seal of Acceptance?<\/span>\n\t\t  <span class=\"cert-faq__icon\" aria-hidden=\"true\"><\/span>\n\t\t<\/button>\n\t  <\/h3>\n\t  <div class=\"cert-faq__a\" id=\"cert-faq-a3\" hidden=\"\">\n\t\t<p>The application itself is submitted by the brand, because the Seal is awarded to the product and its marketer. What we provide is the evidence package the application depends on: formulation and active assay data, stability results, manufacturing documentation and, where required, coordination of the clinical or laboratory studies the program asks for.<\/p>\n\t\t<p>In practice we prepare the technical file and your regulatory team submits it, with our specialists available to answer the ADA&#8217;s follow-up questions on manufacturing.<\/p>\n\t  <\/div>\n\t<\/div>\n\t<div class=\"cert-faq__item\">\n\t  <h3>\n\t\t<button class=\"cert-faq__q\" type=\"button\" aria-expanded=\"false\" aria-controls=\"cert-faq-a4\">\n\t\t  <span>How long does Halal or Kosher certification take for a new private label formula?<\/span>\n\t\t  <span class=\"cert-faq__icon\" aria-hidden=\"true\"><\/span>\n\t\t<\/button>\n\t  <\/h3>\n\t  <div class=\"cert-faq__a\" id=\"cert-faq-a4\" hidden=\"\">\n\t\t<p>Typically four to eight weeks from formula lock, depending on the certifier and how quickly raw material documentation comes back from suppliers. Most of that time is document review: every ingredient needs a certificate or a declaration of origin, and glycerin is usually the item that takes longest to clear.<\/p>\n\t\t<p>Production scheduling runs in parallel, so certification and your first run finish close together rather than sequentially. Kosher certification with rabbinical supervision of the equipment can add a production window requirement, which we book in advance.<\/p>\n\t  <\/div>\n\t<\/div>\n  <\/div>\n<\/section>\n","protected":false},"excerpt":{"rendered":"<p>Home \/ Certifications Toothpaste manufacturing compliance for global market entry Global Regulatory Compliance &amp; Toothpaste Certifications Streamline your international expansion. From US FDA OTC monographs to EU CPNP portals and Halal certifications, our cGMP-certified facility provides turnkey regulatory compliance for market entry worldwide. Request Regulatory Compliance Dossier Consult a Compliance Expert Facility approvals FDA Registered [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-18440","page","type-page","status-publish","hentry"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":8}},"_links":{"self":[{"href":"https:\/\/toothpastefactory.com\/ru\/wp-json\/wp\/v2\/pages\/18440","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/toothpastefactory.com\/ru\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/toothpastefactory.com\/ru\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/toothpastefactory.com\/ru\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/toothpastefactory.com\/ru\/wp-json\/wp\/v2\/comments?post=18440"}],"version-history":[{"count":18,"href":"https:\/\/toothpastefactory.com\/ru\/wp-json\/wp\/v2\/pages\/18440\/revisions"}],"predecessor-version":[{"id":18517,"href":"https:\/\/toothpastefactory.com\/ru\/wp-json\/wp\/v2\/pages\/18440\/revisions\/18517"}],"wp:attachment":[{"href":"https:\/\/toothpastefactory.com\/ru\/wp-json\/wp\/v2\/media?parent=18440"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}