


<style id="elementor-post-22531">.elementor-22531 .elementor-element.elementor-element-1c37de6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:-134px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-22531 .elementor-element.elementor-element-525038e{--display:flex;--justify-content:center;--margin-top:-26px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-22531 .elementor-element.elementor-element-5c36aa2{text-align:center;}.elementor-22531 .elementor-element.elementor-element-5c36aa2 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:29px;font-weight:600;-webkit-text-stroke-color:#000;stroke:#000;text-shadow:0px 0px 0px rgba(0,0,0,0.3);color:#33558B;}.elementor-22531 .elementor-element.elementor-element-5c36aa2 .elementor-heading-title a{transition-duration:0s;}.elementor-22531 .elementor-element.elementor-element-5c36aa2 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-22531 .elementor-element.elementor-element-0553750{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:-6px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-22531 .elementor-element.elementor-element-0b8ebf2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-22531 .elementor-element.elementor-element-7153843{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-22531 .elementor-element.elementor-element-8c7397b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-22531 .elementor-element.elementor-element-d64c95d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-22531 .elementor-element.elementor-element-a6c25e7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-22531 .elementor-element.elementor-element-f5fdee7 img{width:100%;}@media(max-width:1024px){.elementor-22531 .elementor-element.elementor-element-5c36aa2 > .elementor-widget-container{padding:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-22531 .elementor-element.elementor-element-401cbcf > .elementor-widget-container{margin:96px 0px 0px 0px;}.elementor-22531 .elementor-element.elementor-element-525038e{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22531 .elementor-element.elementor-element-5c36aa2{text-align:center;}.elementor-22531 .elementor-element.elementor-element-5c36aa2 .elementor-heading-title{font-size:17px;-webkit-text-stroke-width:0px;stroke-width:0px;}.elementor-22531 .elementor-element.elementor-element-5c36aa2 > .elementor-widget-container{padding:010px 010px 5px 010px;}.elementor-22531 .elementor-element.elementor-element-0553750{--margin-top:-24px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(min-width:768px){.elementor-22531 .elementor-element.elementor-element-525038e{--content-width:1600px;}}</style>{"id":22531,"date":"2026-09-24T09:52:09","date_gmt":"2026-09-24T05:52:09","guid":{"rendered":"https:\/\/datvale.ge\/%e1%83%90%e1%83%a3%e1%83%96%e1%83%98%e1%83%a1-%e1%83%9b%e1%83%9d%e1%83%95%e1%83%9a%e1%83%98%e1%83%a1-%e1%83%a4%e1%83%90%e1%83%a1%e1%83%98\/"},"modified":"2026-10-11T13:07:22","modified_gmt":"2026-10-11T09:07:22","slug":"pool-maintenance-cost","status":"publish","type":"page","link":"https:\/\/datvale.ge\/ru\/pool-maintenance-cost\/","title":{"rendered":"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"22531\" class=\"elementor elementor-22531 elementor-20470\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1c37de6 e-flex e-con-boxed e-con e-parent\" data-id=\"1c37de6\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-401cbcf elementor-widget elementor-widget-html\" data-id=\"401cbcf\" data-element_type=\"widget\" data-e-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=\"dv-kalkulatorebi-banner\">\r\n\r\n  <img decoding=\"async\"\r\n    src=\"https:\/\/datvale.ge\/wp-content\/uploads\/2026\/10\/remontis-kalkulatori-2.webp\"\r\n    alt=\"\u041a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440\u044b Datvale\"\r\n  >\r\n\r\n<\/div>\r\n\r\n<style>\r\n\r\n.dv-kalkulatorebi-banner,\r\n.dv-kalkulatorebi-banner *{\r\n  box-sizing:border-box;\r\n}\r\n\r\n.dv-kalkulatorebi-banner{\r\n  position:relative;\r\n  overflow:hidden;\r\n\r\n  width:100%;\r\n  height:215px;\r\n\r\n  margin:18px 0;\r\n\r\n  border-radius:22px;\r\n\r\n  background:#eef1f4;\r\n}\r\n\r\n.dv-kalkulatorebi-banner img{\r\n  display:block;\r\n\r\n  width:100%;\r\n  height:100%;\r\n\r\n  margin:0;\r\n  padding:0;\r\n\r\n  border:0;\r\n\r\n  object-fit:cover;\r\n  object-position:center;\r\n\r\n  image-rendering:auto;\r\n}\r\n\r\n\r\n\/* TABLET *\/\r\n\r\n@media(max-width:900px){\r\n\r\n  .dv-kalkulatorebi-banner{\r\n    height:190px;\r\n  }\r\n\r\n}\r\n\r\n\r\n\/* MOBILE *\/\r\n\r\n@media(max-width:700px){\r\n\r\n  .dv-kalkulatorebi-banner{\r\n    height:183px;\r\n\r\n    margin:10px 0;\r\n\r\n    border-radius:14px;\r\n  }\r\n\r\n}\r\n\r\n\r\n\/* SMALL MOBILE *\/\r\n\r\n@media(max-width:380px){\r\n\r\n  .dv-kalkulatorebi-banner{\r\n    height:165px;\r\n  }\r\n\r\n}\r\n\r\n<\/style>\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<div class=\"elementor-element elementor-element-525038e e-flex e-con-boxed e-con e-parent\" data-id=\"525038e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5c36aa2 elementor-widget elementor-widget-heading\" data-id=\"5c36aa2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0432 2026 \u0433\u043e\u0434\u0443 \u2013 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430<\/h1>\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<div class=\"elementor-element elementor-element-0553750 e-flex e-con-boxed e-con e-parent\" data-id=\"0553750\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e95153e elementor-widget elementor-widget-html\" data-id=\"e95153e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div id=\"dv-pool-maintenance-calculator\">\r\n\r\n<style>\r\n#dv-pool-maintenance-calculator,\r\n#dv-pool-maintenance-calculator * {\r\n  box-sizing:border-box;\r\n}\r\n\r\n#dv-pool-maintenance-calculator {\r\n  --dv-blue:#0b3a78;\r\n  --dv-blue-2:#1764bd;\r\n  --dv-text:#173558;\r\n  --dv-muted:#5f7287;\r\n  --dv-border:#e3ebf5;\r\n  --dv-success:#13795b;\r\n  --dv-warning:#9a6700;\r\n\r\n  position:relative;\r\n  isolation:isolate;\r\n  width:100%;\r\n  max-width:1260px;\r\n  margin:26px auto;\r\n  padding:42px 22px;\r\n  border:1px solid var(--dv-border);\r\n  border-radius:24px;\r\n  background:\r\n    radial-gradient(circle at top right,rgba(52,86,150,.09),transparent 34%),\r\n    linear-gradient(180deg,#f8fbff 0%,#eef4fb 100%);\r\n  color:var(--dv-text);\r\n  font-family:system-ui,-apple-system,BlinkMacSystemFont,\"Segoe UI\",sans-serif;\r\n  box-shadow:0 16px 42px rgba(11,58,120,.10);\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-calculator {\r\n  width:100%;\r\n  max-width:1180px;\r\n  margin:0 auto;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-input-card,\r\n#dv-pool-maintenance-calculator .dv-result-card,\r\n#dv-pool-maintenance-calculator .dv-summary,\r\n#dv-pool-maintenance-calculator .dv-info-card,\r\n#dv-pool-maintenance-calculator .dv-partner-card {\r\n  border:1px solid var(--dv-border);\r\n  border-radius:22px;\r\n  background:#fff;\r\n  box-shadow:0 16px 40px rgba(11,58,120,.10);\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-input-card {\r\n  padding:28px;\r\n  margin-bottom:24px;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-section-title {\r\n  display:flex;\r\n  align-items:center;\r\n  gap:11px;\r\n  margin:0 0 22px;\r\n  color:var(--dv-text);\r\n  font-size:24px;\r\n  font-weight:950;\r\n  line-height:1.18;\r\n  letter-spacing:-.02em;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-section-number {\r\n  display:inline-flex;\r\n  width:36px;\r\n  height:36px;\r\n  align-items:center;\r\n  justify-content:center;\r\n  flex:0 0 36px;\r\n  border-radius:50%;\r\n  background:linear-gradient(135deg,var(--dv-blue),var(--dv-blue-2));\r\n  color:#fff;\r\n  font-size:14px;\r\n  font-weight:950;\r\n  box-shadow:0 8px 18px rgba(11,58,120,.18);\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-input-grid,\r\n#dv-pool-maintenance-calculator .dv-options-grid {\r\n  display:grid;\r\n  grid-template-columns:repeat(3,minmax(0,1fr));\r\n  gap:18px;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-options-grid {\r\n  margin-top:20px;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-field {\r\n  min-width:0;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-field label {\r\n  display:block;\r\n  min-height:21px;\r\n  margin-bottom:8px;\r\n  color:var(--dv-text);\r\n  font-size:14px;\r\n  font-weight:850;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-input-wrap {\r\n  position:relative;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-field input,\r\n#dv-pool-maintenance-calculator .dv-field select {\r\n  display:block;\r\n  width:100%;\r\n  height:56px;\r\n  margin:0;\r\n  border:1px solid #d8e3ef;\r\n  border-radius:14px;\r\n  outline:none;\r\n  background:#f8fbff;\r\n  color:var(--dv-text);\r\n  font-size:16px;\r\n  font-weight:800;\r\n  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-field input {\r\n  padding:0 52px 0 15px;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-field select {\r\n  padding:0 42px 0 15px;\r\n  cursor:pointer;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-field input:focus,\r\n#dv-pool-maintenance-calculator .dv-field select:focus {\r\n  border-color:var(--dv-blue-2);\r\n  background:#fff;\r\n  box-shadow:0 0 0 4px rgba(23,100,189,.10);\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-unit {\r\n  position:absolute;\r\n  top:50%;\r\n  right:14px;\r\n  transform:translateY(-50%);\r\n  color:var(--dv-muted);\r\n  font-size:13px;\r\n  font-weight:850;\r\n  pointer-events:none;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-note {\r\n  margin-top:20px;\r\n  padding:14px 16px;\r\n  border:1px solid #dce7f2;\r\n  border-radius:14px;\r\n  background:#f8fbff;\r\n  color:#526b84;\r\n  font-size:13px;\r\n  line-height:1.55;\r\n  font-weight:650;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-calculate-v2 {\r\n  display:flex;\r\n  width:100%;\r\n  min-height:58px;\r\n  align-items:center;\r\n  justify-content:center;\r\n  margin-top:22px;\r\n  padding:14px 24px;\r\n  border:0;\r\n  border-radius:14px;\r\n  cursor:pointer;\r\n  background:linear-gradient(135deg,var(--dv-blue),var(--dv-blue-2));\r\n  color:#fff;\r\n  font-size:17px;\r\n  font-weight:950;\r\n  box-shadow:0 12px 28px rgba(11,58,120,.22);\r\n  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-calculate-v2:hover {\r\n  transform:translateY(-2px);\r\n  filter:brightness(1.03);\r\n  box-shadow:0 16px 34px rgba(11,58,120,.26);\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-error {\r\n  display:none;\r\n  margin-top:14px;\r\n  padding:13px 15px;\r\n  border:1px solid rgba(174,32,32,.18);\r\n  border-radius:12px;\r\n  background:#fff2f2;\r\n  color:#a32020;\r\n  font-size:14px;\r\n  font-weight:850;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-output {\r\n  display:none;\r\n  scroll-margin-top:150px;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-output.dv-show {\r\n  display:block;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-results {\r\n  display:grid;\r\n  grid-template-columns:repeat(2,minmax(0,1fr));\r\n  gap:18px;\r\n  max-width:1080px;\r\n  margin:0 auto;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-result-card {\r\n  overflow:hidden;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-result-head {\r\n  display:flex;\r\n  align-items:center;\r\n  gap:10px;\r\n  padding:17px 20px;\r\n  background:linear-gradient(135deg,var(--dv-blue),var(--dv-blue-2));\r\n  color:#fff;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-result-icon {\r\n  display:inline-flex;\r\n  width:34px;\r\n  height:34px;\r\n  align-items:center;\r\n  justify-content:center;\r\n  flex:0 0 34px;\r\n  border-radius:10px;\r\n  background:rgba(255,255,255,.14);\r\n  font-size:17px;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-result-head h3 {\r\n  margin:0;\r\n  color:#fff;\r\n  font-size:18px;\r\n  font-weight:950;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-result-body {\r\n  padding:10px 18px 15px;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-row {\r\n  display:grid;\r\n  grid-template-columns:minmax(0,1fr) auto;\r\n  gap:15px;\r\n  align-items:center;\r\n  padding:12px 0;\r\n  border-bottom:1px dashed #d9e4ef;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-row:last-child {\r\n  border-bottom:0;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-row-name {\r\n  min-width:0;\r\n  color:#425a74;\r\n  font-size:14px;\r\n  line-height:1.45;\r\n  font-weight:650;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-row-value {\r\n  color:var(--dv-text);\r\n  text-align:right;\r\n  white-space:nowrap;\r\n  font-size:15px;\r\n  font-weight:950;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-card-total {\r\n  margin:7px 0 2px;\r\n  padding:14px 15px;\r\n  border:1px solid #d8e3ef;\r\n  border-radius:13px;\r\n  background:#f4f8fd;\r\n  color:var(--dv-text);\r\n  font-size:15px;\r\n  font-weight:950;\r\n  text-align:right;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-summary {\r\n  max-width:1080px;\r\n  margin:22px auto 0;\r\n  padding:26px;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-summary-grid {\r\n  display:grid;\r\n  grid-template-columns:repeat(4,minmax(0,1fr));\r\n  gap:14px;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-summary-item {\r\n  padding:18px;\r\n  border:1px solid #e1e9f3;\r\n  border-radius:16px;\r\n  background:#f8fbff;\r\n  text-align:center;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-summary-label {\r\n  display:block;\r\n  margin-bottom:7px;\r\n  color:var(--dv-muted);\r\n  font-size:13px;\r\n  font-weight:850;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-summary-value {\r\n  color:var(--dv-text);\r\n  font-size:22px;\r\n  font-weight:950;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-grand-total {\r\n  position:relative;\r\n  overflow:hidden;\r\n  margin-top:16px;\r\n  padding:29px 20px;\r\n  border-radius:18px;\r\n  background:\r\n    radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 36%),\r\n    linear-gradient(135deg,var(--dv-blue),var(--dv-blue-2));\r\n  color:#fff;\r\n  text-align:center;\r\n  box-shadow:0 14px 30px rgba(11,58,120,.20);\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-grand-total small {\r\n  display:block;\r\n  margin-bottom:8px;\r\n  color:rgba(255,255,255,.82);\r\n  font-size:14px;\r\n  font-weight:850;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-grand-total strong {\r\n  display:block;\r\n  color:#fff;\r\n  font-size:clamp(34px,6vw,52px);\r\n  line-height:1;\r\n  font-weight:1000;\r\n  letter-spacing:-.04em;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-info-card,\r\n#dv-pool-maintenance-calculator .dv-partner-card {\r\n  max-width:1080px;\r\n  margin:20px auto 0;\r\n  padding:22px;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-info-card h3,\r\n#dv-pool-maintenance-calculator .dv-partner-card h3 {\r\n  margin:0 0 10px;\r\n  color:var(--dv-text);\r\n  font-size:20px;\r\n  font-weight:950;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-info-card p,\r\n#dv-pool-maintenance-calculator .dv-partner-card p {\r\n  margin:0;\r\n  color:#526b84;\r\n  font-size:13px;\r\n  line-height:1.65;\r\n  font-weight:650;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-partner-card {\r\n  display:grid;\r\n  grid-template-columns:minmax(0,1fr) auto;\r\n  align-items:center;\r\n  gap:22px;\r\n  background:linear-gradient(135deg,#f8fbff,#eaf2fb);\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-partner-button {\r\n  display:inline-flex;\r\n  min-width:240px;\r\n  min-height:54px;\r\n  align-items:center;\r\n  justify-content:center;\r\n  padding:13px 20px;\r\n  border-radius:12px;\r\n  background:linear-gradient(135deg,var(--dv-blue),var(--dv-blue-2));\r\n  color:#fff!important;\r\n  font-size:14px;\r\n  font-weight:950;\r\n  text-decoration:none!important;\r\n  text-align:center;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-pdf-button {\r\n  display:flex;\r\n  width:100%;\r\n  min-height:56px;\r\n  align-items:center;\r\n  justify-content:center;\r\n  gap:9px;\r\n  margin-top:15px;\r\n  padding:14px 22px;\r\n  border:0;\r\n  border-radius:14px;\r\n  cursor:pointer;\r\n  background:linear-gradient(135deg,#13795b,#0e9a70);\r\n  color:#fff;\r\n  font-size:16px;\r\n  font-weight:950;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-source {\r\n  margin-top:12px;\r\n  color:#70849a;\r\n  font-size:12px;\r\n  line-height:1.55;\r\n  font-weight:650;\r\n}\r\n\r\n\/* \u0417\u0430\u043f\u0440\u043e\u0441 \u0437\u0432\u043e\u043d\u043a\u0430 \u043e\u0442 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 *\/\r\n#dv-pool-maintenance-calculator .dv-call-request{\r\n  display:none;\r\n  width:100%;\r\n  max-width:100%;\r\n  min-width:0;\r\n  margin-top:14px;\r\n  padding:18px;\r\n  border:1px solid #d8e3ef;\r\n  border-radius:16px;\r\n  background:#f8fbff;\r\n  overflow:hidden;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-call-request-title{\r\n  margin:0 0 6px;\r\n  color:var(--dv-text);\r\n  font-size:17px;\r\n  font-weight:950;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-call-request-text{\r\n  margin:0 0 12px;\r\n  color:var(--dv-muted);\r\n  font-size:13px;\r\n  line-height:1.5;\r\n  font-weight:650;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-call-request-row{\r\n  display:grid;\r\n  width:100%;\r\n  max-width:100%;\r\n  min-width:0;\r\n  grid-template-columns:minmax(0,1fr) auto;\r\n  gap:10px;\r\n  align-items:center;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-call-phone{\r\n  display:block;\r\n  width:100%;\r\n  max-width:100%;\r\n  min-width:0;\r\n  height:52px;\r\n  padding:0 14px;\r\n  border:1px solid #d8e3ef;\r\n  border-radius:12px;\r\n  outline:none;\r\n  background:#fff;\r\n  color:var(--dv-text);\r\n  font-size:15px;\r\n  font-weight:750;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-call-phone:focus{\r\n  border-color:var(--dv-success);\r\n  box-shadow:0 0 0 4px rgba(19,121,91,.10);\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-call-request-row.dv-has-saved-phone{\r\n  grid-template-columns:1fr;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-call-request-row.dv-has-saved-phone .dv-call-phone{\r\n  display:none;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-request-call-btn{\r\n  min-height:52px;\r\n  max-width:100%;\r\n  min-width:0;\r\n  padding:13px 20px;\r\n  border:0;\r\n  border-radius:12px;\r\n  cursor:pointer;\r\n  background:linear-gradient(135deg,#13795b,#0e9a70);\r\n  color:#fff;\r\n  font-size:14px;\r\n  font-weight:950;\r\n  white-space:nowrap;\r\n  box-shadow:0 10px 24px rgba(19,121,91,.22);\r\n  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-request-call-btn:hover{\r\n  transform:translateY(-1px);\r\n  box-shadow:0 14px 30px rgba(19,121,91,.26);\r\n  filter:brightness(1.03);\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-request-call-btn:disabled{\r\n  opacity:.65;\r\n  cursor:wait;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-call-request-status{\r\n  display:none;\r\n  margin-top:10px;\r\n  padding:10px 12px;\r\n  border-radius:10px;\r\n  font-size:13px;\r\n  line-height:1.45;\r\n  font-weight:800;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-call-request-status.dv-success{\r\n  display:block;\r\n  background:#eefaf5;\r\n  color:#13795b;\r\n  border:1px solid rgba(19,121,91,.16);\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-call-request-status.dv-error{\r\n  display:block;\r\n  background:#fff2f2;\r\n  color:#a32020;\r\n  border:1px solid rgba(174,32,32,.18);\r\n}\r\n\r\n@media(max-width:760px){\r\n  #dv-pool-maintenance-calculator .dv-call-request{\r\n    width:100%;\r\n    max-width:100%;\r\n    min-width:0;\r\n    overflow:hidden;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-call-request-row{\r\n    width:100%;\r\n    max-width:100%;\r\n    min-width:0;\r\n    grid-template-columns:minmax(0,1fr);\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-call-phone{\r\n    width:100%;\r\n    max-width:100%;\r\n    min-width:0;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-request-call-btn{\r\n    display:block;\r\n    width:100%;\r\n    max-width:100%;\r\n    min-width:0;\r\n    white-space:normal;\r\n    overflow-wrap:anywhere;\r\n  }\r\n}\r\n\r\n@media(max-width:980px) {\r\n  #dv-pool-maintenance-calculator {\r\n    padding:34px 18px;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-input-grid {\r\n    grid-template-columns:repeat(2,minmax(0,1fr));\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-options-grid {\r\n    grid-template-columns:repeat(2,minmax(0,1fr));\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-summary-grid {\r\n    grid-template-columns:repeat(2,minmax(0,1fr));\r\n  }\r\n}\r\n\r\n@media(max-width:760px) {\r\n  #dv-pool-maintenance-calculator {\r\n    margin:18px auto;\r\n    padding:26px 12px;\r\n    border-radius:18px;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-input-card,\r\n  #dv-pool-maintenance-calculator .dv-summary {\r\n    padding:18px;\r\n    border-radius:18px;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-input-grid,\r\n  #dv-pool-maintenance-calculator .dv-options-grid,\r\n  #dv-pool-maintenance-calculator .dv-results,\r\n  #dv-pool-maintenance-calculator .dv-summary-grid,\r\n  #dv-pool-maintenance-calculator .dv-partner-card {\r\n    grid-template-columns:1fr;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-section-title {\r\n    font-size:21px;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-partner-button {\r\n    width:100%;\r\n    min-width:0;\r\n  }\r\n}\r\n\r\n@media print {\r\n  body * {\r\n    visibility:hidden!important;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator,\r\n  #dv-pool-maintenance-calculator * {\r\n    visibility:visible!important;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator {\r\n    position:absolute;\r\n    inset:0;\r\n    max-width:none;\r\n    margin:0;\r\n    padding:0;\r\n    border:0;\r\n    box-shadow:none;\r\n    background:#fff;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-input-card,\r\n  #dv-pool-maintenance-calculator .dv-partner-card,\r\n  #dv-pool-maintenance-calculator .dv-pdf-button {\r\n    display:none!important;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-output {\r\n    display:block!important;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-result-card,\r\n  #dv-pool-maintenance-calculator .dv-summary,\r\n  #dv-pool-maintenance-calculator .dv-info-card {\r\n    break-inside:avoid;\r\n    box-shadow:none;\r\n  }\r\n}\r\n\r\n\/* \u041f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e\u0433\u043e \u0440\u0430\u0441\u0447\u0451\u0442\u0430 *\/\r\n#dv-pool-maintenance-calculator .dv-free-next-step{\r\n  display:none;\r\n  max-width:1080px;\r\n  margin:0 auto 20px;\r\n  padding:22px 24px;\r\n  border:1px solid #d7e6f5;\r\n  border-radius:20px;\r\n  background:\r\n    radial-gradient(circle at top right,rgba(23,100,189,.12),transparent 34%),\r\n    linear-gradient(135deg,#ffffff 0%,#eef5fc 100%);\r\n  box-shadow:0 14px 34px rgba(11,58,120,.10);\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-free-next-step.dv-show{\r\n  display:grid;\r\n  grid-template-columns:minmax(0,1fr) auto;\r\n  gap:22px;\r\n  align-items:center;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-free-next-step-kicker{\r\n  display:inline-block;\r\n  margin-bottom:6px;\r\n  color:#13795b;\r\n  font-size:12px;\r\n  font-weight:950;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-free-next-step h3{\r\n  margin:0 0 7px;\r\n  color:#173558;\r\n  font-size:22px;\r\n  font-weight:950;\r\n  line-height:1.2;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-free-next-step p{\r\n  margin:0;\r\n  color:#526b84;\r\n  font-size:14px;\r\n  line-height:1.55;\r\n  font-weight:650;\r\n}\r\n\r\n#dv-pool-maintenance-calculator .dv-free-next-step a{\r\n  display:inline-flex;\r\n  min-width:240px;\r\n  min-height:52px;\r\n  align-items:center;\r\n  justify-content:center;\r\n  padding:13px 20px;\r\n  border-radius:13px;\r\n  background:linear-gradient(135deg,#0b3a78,#1764bd);\r\n  color:#fff!important;\r\n  font-size:14px;\r\n  font-weight:950;\r\n  text-decoration:none!important;\r\n  text-align:center;\r\n  box-shadow:0 10px 24px rgba(11,58,120,.20);\r\n}\r\n\r\n@media(max-width:760px){\r\n  #dv-pool-maintenance-calculator .dv-free-next-step.dv-show{\r\n    grid-template-columns:1fr;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-free-next-step{\r\n    padding:18px;\r\n  }\r\n\r\n  #dv-pool-maintenance-calculator .dv-free-next-step a{\r\n    width:100%;\r\n    min-width:0;\r\n  }\r\n}\r\n<\/style>\r\n\r\n<div class=\"dv-calculator\">\r\n\r\n  <div class=\"dv-input-card\">\r\n\r\n    <h3 class=\"dv-section-title\">\r\n      <span class=\"dv-section-number\">1<\/span>\r\n      \u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430\r\n    <\/h3>\r\n\r\n    <div class=\"dv-input-grid\">\r\n\r\n      <div class=\"dv-field\">\r\n        <label for=\"dvMaintLength\">\u0414\u043b\u0438\u043d\u0430 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430<\/label>\r\n        <div class=\"dv-input-wrap\">\r\n          <input type=\"text\" id=\"dvMaintLength\" placeholder=\"\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, 8\" inputmode=\"decimal\">\r\n          <span class=\"dv-unit\">\u043c<\/span>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"dv-field\">\r\n        <label for=\"dvMaintWidth\">\u0428\u0438\u0440\u0438\u043d\u0430 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430<\/label>\r\n        <div class=\"dv-input-wrap\">\r\n          <input type=\"text\" id=\"dvMaintWidth\" placeholder=\"\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, 4\" inputmode=\"decimal\">\r\n          <span class=\"dv-unit\">\u043c<\/span>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"dv-field\">\r\n        <label for=\"dvMaintDepth\">\u0421\u0440\u0435\u0434\u043d\u044f\u044f \u0433\u043b\u0443\u0431\u0438\u043d\u0430<\/label>\r\n        <div class=\"dv-input-wrap\">\r\n          <input type=\"text\" id=\"dvMaintDepth\" placeholder=\"\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, 1.5\" inputmode=\"decimal\">\r\n          <span class=\"dv-unit\">\u043c<\/span>\r\n        <\/div>\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n    <div class=\"dv-options-grid\">\r\n\r\n      <div class=\"dv-field\">\r\n        <label for=\"dvMaintUsage\">\u0418\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f<\/label>\r\n        <select id=\"dvMaintUsage\">\r\n          <option value=\"normal\">\u0421\u0440\u0435\u0434\u043d\u044f\u044f<\/option>\r\n          <option value=\"low\">\u041d\u0438\u0437\u043a\u0430\u044f<\/option>\r\n          <option value=\"high\">\u0412\u044b\u0441\u043e\u043a\u0430\u044f<\/option>\r\n        <\/select>\r\n      <\/div>\r\n\r\n      <div class=\"dv-field\">\r\n        <label for=\"dvMaintRobot\">\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u0440\u043e\u0431\u043e\u0442-\u043f\u044b\u043b\u0435\u0441\u043e\u0441 \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430?<\/label>\r\n        <select id=\"dvMaintRobot\">\r\n          <option value=\"no\">\u041d\u0435\u0442<\/option>\r\n          <option value=\"yes\">\u0414\u0430<\/option>\r\n        <\/select>\r\n      <\/div>\r\n\r\n      <div class=\"dv-field\">\r\n        <label for=\"dvMaintPh\">\u0422\u0435\u043a\u0443\u0449\u0438\u0439 pH (\u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e)<\/label>\r\n        <div class=\"dv-input-wrap\">\r\n          <input type=\"text\" id=\"dvMaintPh\" placeholder=\"\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, 7.4\" inputmode=\"decimal\">\r\n          <span class=\"dv-unit\">pH<\/span>\r\n        <\/div>\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n    <div class=\"dv-note\">\r\n      \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0435\u0436\u0435\u043c\u0435\u0441\u044f\u0447\u043d\u044b\u0435 \u0440\u0430\u0441\u0445\u043e\u0434\u044b \u043d\u0430 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043f\u043e \u0445\u043b\u043e\u0440\u0443 \u0438 \u0430\u043b\u044c\u0433\u0438\u0446\u0438\u0434\u0443.\r\n      \u0421\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u0434\u043b\u044f \u043a\u043e\u0440\u0440\u0435\u043a\u0446\u0438\u0438 pH \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0443\u043a\u0430\u0436\u0435\u0442 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 pH\r\n      \u0438 \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u043e\u0432\u0430\u044f \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u043a\u0430.\r\n    <\/div>\r\n\r\n    <button type=\"button\" class=\"dv-calculate-v2\" id=\"dvMaintCalculateFreeFlowV2\">\r\n      \u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044c \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430\r\n    <\/button>\r\n\r\n    <div class=\"dv-error\" id=\"dvMaintError\">\r\n      \u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0434\u043b\u0438\u043d\u0443, \u0448\u0438\u0440\u0438\u043d\u0443 \u0438 \u0441\u0440\u0435\u0434\u043d\u044e\u044e \u0433\u043b\u0443\u0431\u0438\u043d\u0443 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430.\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n  <div class=\"dv-output\" id=\"dvMaintOutput\">\r\n\r\n    <div class=\"dv-free-next-step\" id=\"dvMaintFreeNextStep\">\r\n      <div>\r\n        <span class=\"dv-free-next-step-kicker\">\u2713 \u0411\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0439 \u0440\u0430\u0441\u0447\u0451\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d<\/span>\r\n        <h3>\u0414\u043b\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0440\u0430\u0441\u0447\u0451\u0442\u0430 \u043d\u0443\u0436\u0435\u043d \u043f\u0430\u043a\u0435\u0442<\/h3>\r\n        <p>\r\n          \u0412\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u043e\u0434\u0438\u043d \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0439 \u0440\u0430\u0441\u0447\u0451\u0442.\r\n          \u0414\u043b\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0440\u0430\u0441\u0447\u0451\u0442\u0430 \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u043f\u0430\u043a\u0435\u0442.\r\n        <\/p>\r\n      <\/div>\r\n\r\n      <a href=\"https:\/\/datvale.ge\/ru\/pool-maintenance-cost\/\">\r\n        \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442\r\n      <\/a>\r\n    <\/div>\r\n\r\n    <div class=\"dv-results\">\r\n\r\n      <div class=\"dv-result-card\">\r\n        <div class=\"dv-result-head\">\r\n          <span class=\"dv-result-icon\">\ud83d\udca7<\/span>\r\n          <h3>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430<\/h3>\r\n        <\/div>\r\n\r\n        <div class=\"dv-result-body\">\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u041e\u0431\u044a\u0451\u043c \u0432\u043e\u0434\u044b<\/span>\r\n            <span class=\"dv-row-value\" id=\"dvMaintVolume\">\u2014<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u0420\u0435\u0436\u0438\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f<\/span>\r\n            <span class=\"dv-row-value\" id=\"dvMaintUsageText\">\u2014<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u0420\u043e\u0431\u043e\u0442 \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430<\/span>\r\n            <span class=\"dv-row-value\" id=\"dvMaintRobotText\">\u2014<\/span>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"dv-result-card\">\r\n        <div class=\"dv-result-head\">\r\n          <span class=\"dv-result-icon\">\ud83e\uddea<\/span>\r\n          <h3>\u0413\u0440\u0430\u043d\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0445\u043b\u043e\u0440 56%<\/h3>\r\n        <\/div>\r\n\r\n        <div class=\"dv-result-body\">\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u041e\u0434\u043d\u0430 \u0434\u043e\u0437\u0430<\/span>\r\n            <span class=\"dv-row-value\" id=\"dvMaintChlorineDose\">\u2014<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u0420\u0430\u0441\u0447\u0451\u0442\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u043e\u0437\u0438\u0440\u043e\u0432\u043e\u043a \u0432 \u043c\u0435\u0441\u044f\u0446<\/span>\r\n            <span class=\"dv-row-value\" id=\"dvMaintChlorineDoses\">\u2014<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0432 \u043c\u0435\u0441\u044f\u0446<\/span>\r\n            <span class=\"dv-row-value\" id=\"dvMaintChlorineQty\">\u2014<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u0426\u0435\u043d\u0430 \u0437\u0430 1 \u043a\u0433<\/span>\r\n            <span class=\"dv-row-value\">15.01 GEL<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-card-total\">\r\n            \u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0440\u0430\u0441\u0445\u043e\u0434\u0430 \u0437\u0430 \u043c\u0435\u0441\u044f\u0446:\r\n            <span id=\"dvMaintChlorineCost\">\u2014<\/span>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"dv-result-card\">\r\n        <div class=\"dv-result-head\">\r\n          <span class=\"dv-result-icon\">\ud83c\udf3f<\/span>\r\n          <h3>\u0410\u043b\u044c\u0433\u0438\u0446\u0438\u0434 ALBA SUPER K 14%<\/h3>\r\n        <\/div>\r\n\r\n        <div class=\"dv-result-body\">\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u041e\u0434\u043d\u0430 \u0434\u043e\u0437\u0430<\/span>\r\n            <span class=\"dv-row-value\" id=\"dvMaintAlgDose\">\u2014<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u041f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u043d\u043e\u0441\u0442\u044c \u0434\u043e\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f<\/span>\r\n            <span class=\"dv-row-value\">\u041a\u0430\u0436\u0434\u044b\u0435 2 \u043d\u0435\u0434\u0435\u043b\u0438<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0432 \u043c\u0435\u0441\u044f\u0446<\/span>\r\n            <span class=\"dv-row-value\" id=\"dvMaintAlgQty\">\u2014<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u0426\u0435\u043d\u0430 \u0437\u0430 5 \u043b<\/span>\r\n            <span class=\"dv-row-value\">58.00 GEL<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-card-total\">\r\n            \u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0440\u0430\u0441\u0445\u043e\u0434\u0430 \u0437\u0430 \u043c\u0435\u0441\u044f\u0446:\r\n            <span id=\"dvMaintAlgCost\">\u2014<\/span>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"dv-result-card\">\r\n        <div class=\"dv-result-head\">\r\n          <span class=\"dv-result-icon\">\u2696\ufe0f<\/span>\r\n          <h3>\u041a\u043e\u0440\u0440\u0435\u043a\u0446\u0438\u044f pH<\/h3>\r\n        <\/div>\r\n\r\n        <div class=\"dv-result-body\">\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u0423\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0439 pH<\/span>\r\n            <span class=\"dv-row-value\" id=\"dvMaintPhValue\">\u041d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043e<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c\u043e\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435<\/span>\r\n            <span class=\"dv-row-value\" id=\"dvMaintPhAction\">\u2014<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-row\">\r\n            <span class=\"dv-row-name\">\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e<\/span>\r\n            <span class=\"dv-row-value\" id=\"dvMaintPhQty\">\u2014<\/span>\r\n          <\/div>\r\n\r\n          <div class=\"dv-card-total\">\r\n            \u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0440\u0430\u0437\u043e\u0432\u043e\u0439 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u043a\u0438:\r\n            <span id=\"dvMaintPhCost\">\u2014<\/span>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n    <div class=\"dv-summary\">\r\n\r\n      <h3 class=\"dv-section-title\">\r\n        <span class=\"dv-section-number\">2<\/span>\r\n        \u0418\u0442\u043e\u0433\u0438 \u0435\u0436\u0435\u043c\u0435\u0441\u044f\u0447\u043d\u043e\u0433\u043e \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f\r\n      <\/h3>\r\n\r\n      <div class=\"dv-summary-grid\">\r\n\r\n        <div class=\"dv-summary-item\">\r\n          <span class=\"dv-summary-label\">\u041e\u0431\u044a\u0451\u043c \u0432\u043e\u0434\u044b<\/span>\r\n          <span class=\"dv-summary-value\" id=\"dvMaintSummaryVolume\">\u2014<\/span>\r\n        <\/div>\r\n\r\n        <div class=\"dv-summary-item\">\r\n          <span class=\"dv-summary-label\">\u0425\u043b\u043e\u0440 \u0432 \u043c\u0435\u0441\u044f\u0446<\/span>\r\n          <span class=\"dv-summary-value\" id=\"dvMaintSummaryChlorine\">\u2014<\/span>\r\n        <\/div>\r\n\r\n        <div class=\"dv-summary-item\">\r\n          <span class=\"dv-summary-label\">\u0410\u043b\u044c\u0433\u0438\u0446\u0438\u0434 \u0432 \u043c\u0435\u0441\u044f\u0446<\/span>\r\n          <span class=\"dv-summary-value\" id=\"dvMaintSummaryAlg\">\u2014<\/span>\r\n        <\/div>\r\n\r\n        <div class=\"dv-summary-item\">\r\n          <span class=\"dv-summary-label\">\u0415\u0436\u0435\u043c\u0435\u0441\u044f\u0447\u043d\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0445\u0438\u043c\u0438\u0438<\/span>\r\n          <span class=\"dv-summary-value\" id=\"dvMaintSummaryCost\">\u2014<\/span>\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n      <div class=\"dv-grand-total\">\r\n        <small>\u0420\u0430\u0441\u0447\u0451\u0442\u043d\u0430\u044f \u0435\u0436\u0435\u043c\u0435\u0441\u044f\u0447\u043d\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430<\/small>\r\n        <strong id=\"dvMaintGrandTotal\">\u2014<\/strong>\r\n      <\/div>\r\n\r\n      <button type=\"button\" class=\"dv-pdf-button\" id=\"dvMaintPrint\">\r\n        \ud83d\udcc4 \u0421\u043a\u0430\u0447\u0430\u0442\u044c PDF\r\n      <\/button>\r\n\r\n      <div class=\"dv-call-request\" id=\"dvMaintCallRequest\">\r\n        <h4 class=\"dv-call-request-title\">\u0425\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043a\u043e\u043d\u0441\u0443\u043b\u044c\u0442\u0430\u0446\u0438\u044e \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438?<\/h4>\r\n\r\n        <p class=\"dv-call-request-text\">\r\n          \u0417\u0430\u043a\u0430\u0436\u0438\u0442\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u0437\u0432\u043e\u043d\u043e\u043a \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438, \u0438 \u0441 \u0432\u0430\u043c\u0438 \u0441\u0432\u044f\u0436\u0443\u0442\u0441\u044f \u0434\u043b\u044f \u0443\u0442\u043e\u0447\u043d\u0435\u043d\u0438\u044f \u0434\u0435\u0442\u0430\u043b\u0435\u0439.\r\n        <\/p>\r\n\r\n        <div class=\"dv-call-request-row\" id=\"dvMaintCallRow\">\r\n\r\n          <input\r\n            class=\"dv-call-phone\"\r\n            id=\"dvMaintCallPhone\"\r\n            type=\"tel\"\r\n            inputmode=\"tel\"\r\n            autocomplete=\"tel\"\r\n            placeholder=\"\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: 599123456\"\r\n          >\r\n\r\n          <button\r\n            class=\"dv-request-call-btn\"\r\n            id=\"dvMaintRequestCall\"\r\n            type=\"button\"\r\n          >\r\n            \u0417\u0430\u043a\u0430\u0437\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u0437\u0432\u043e\u043d\u043e\u043a\r\n          <\/button>\r\n\r\n        <\/div>\r\n\r\n        <div\r\n          class=\"dv-call-request-status\"\r\n          id=\"dvMaintCallStatus\"\r\n          aria-live=\"polite\"\r\n        ><\/div>\r\n\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n    <div class=\"dv-info-card\">\r\n      <h3>\u0412\u0430\u0436\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f<\/h3>\r\n\r\n      <p id=\"dvMaintRobotNote\">\r\n        \u0420\u043e\u0431\u043e\u0442 \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u043c\u0435\u0445\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043e\u0447\u0438\u0441\u0442\u043a\u0438, \u043e\u0434\u043d\u0430\u043a\u043e \u0432 \u044d\u0442\u043e\u043c \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440\u0435\r\n        \u0434\u043e\u0437\u0438\u0440\u043e\u0432\u043a\u0430 \u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442\u0441\u044f. \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0445\u043b\u043e\u0440\u0430 \u0438 \u0430\u043b\u044c\u0433\u0438\u0446\u0438\u0434\u0430\r\n        \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043e \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u043e\u0437\u0438\u0440\u043e\u0432\u043e\u043a, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u0435\u043c \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430.\r\n      <\/p>\r\n\r\n      <p class=\"dv-source\">\r\n        \u0426\u0435\u043d\u044b \u0438 \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u0434\u043e\u0437\u0438\u0440\u043e\u0432\u043a\u0430\u0445 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u044b\u043c\u0438.\r\n        \u0426\u0435\u043d\u044b \u043c\u043e\u0433\u0443\u0442 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f, \u0430 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0434\u043e\u0437\u0438\u0440\u043e\u0432\u043a\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432\u043e\u0434\u044b.\r\n      <\/p>\r\n    <\/div>\r\n\r\n    <div class=\"dv-partner-card\">\r\n      <div>\r\n        <h3>\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0434\u043b\u044f \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430<\/h3>\r\n\r\n        <p>\r\n          \u0417\u0434\u0435\u0441\u044c \u043c\u043e\u0436\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0449\u0430\u0442\u044c\u0441\u044f \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438-\u043f\u0430\u0440\u0442\u043d\u0451\u0440\u0430,\r\n          \u0441\u043a\u0438\u0434\u043a\u0430 \u0438\u043b\u0438 \u043a\u043d\u043e\u043f\u043a\u0430 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430 \u043a \u043f\u043e\u043a\u0443\u043f\u043a\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432.\r\n        <\/p>\r\n      <\/div>\r\n\r\n      <a class=\"dv-partner-button\" href=\"#\" onclick=\"return false;\">\r\n        \u041f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0442\u043d\u0451\u0440\u0430\r\n      <\/a>\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n<script src=\"https:\/\/datvale.ge\/wp-content\/uploads\/datvale-assets\/jspdf.umd.min.js\"><\/script>\r\n\r\n<script>\r\n(function () {\r\n\r\n  \"use strict\";\r\n\r\n  const root =\r\n    document.getElementById(\r\n      \"dv-pool-maintenance-calculator\"\r\n    );\r\n\r\n  if (!root) return;\r\n\r\n  const get =\r\n    (id) =>\r\n      root.querySelector(\"#\" + id);\r\n\r\n\r\n  const prices = {\r\n    chlorine56PerKg:15.01,\r\n    algicide5L:58.00,\r\n    phMinus15Kg:18.00,\r\n    phPlus1Kg:18.00\r\n  };\r\n\r\n\r\n  const usageProfiles = {\r\n\r\n    low:{\r\n      label:\"\u041d\u0438\u0437\u043a\u0430\u044f\",\r\n      chlorineIntervalDays:6,\r\n      algicideMlPer10m3:100\r\n    },\r\n\r\n    normal:{\r\n      label:\"\u0421\u0440\u0435\u0434\u043d\u044f\u044f\",\r\n      chlorineIntervalDays:4.5,\r\n      algicideMlPer10m3:125\r\n    },\r\n\r\n    high:{\r\n      label:\"\u0412\u044b\u0441\u043e\u043a\u0430\u044f\",\r\n      chlorineIntervalDays:3,\r\n      algicideMlPer10m3:172.5\r\n    }\r\n\r\n  };\r\n\r\n\r\n  function numberValue(id) {\r\n\r\n    const input = get(id);\r\n\r\n    if (!input) return 0;\r\n\r\n    const value =\r\n      parseFloat(\r\n        String(input.value)\r\n          .replace(\",\",\".\")\r\n      );\r\n\r\n    return Number.isFinite(value)\r\n      ? value\r\n      : 0;\r\n  }\r\n\r\n\r\n  function money(value) {\r\n\r\n    return new Intl.NumberFormat(\r\n      \"ka-GE\",\r\n      {\r\n        minimumFractionDigits:2,\r\n        maximumFractionDigits:2\r\n      }\r\n    ).format(value) + \" GEL\";\r\n  }\r\n\r\n\r\n  function decimal(value,digits) {\r\n\r\n    return new Intl.NumberFormat(\r\n      \"ka-GE\",\r\n      {\r\n        minimumFractionDigits:digits,\r\n        maximumFractionDigits:digits\r\n      }\r\n    ).format(value);\r\n  }\r\n\r\n\r\n  function setText(id,value) {\r\n\r\n    const el = get(id);\r\n\r\n    if (el) {\r\n      el.textContent = value;\r\n    }\r\n  }\r\n\r\n\r\n  function validateMaintenanceInputs(showError) {\r\n\r\n    const length =\r\n      numberValue(\"dvMaintLength\");\r\n\r\n    const width =\r\n      numberValue(\"dvMaintWidth\");\r\n\r\n    const depth =\r\n      numberValue(\"dvMaintDepth\");\r\n\r\n\r\n    const error =\r\n      get(\"dvMaintError\");\r\n\r\n    const output =\r\n      get(\"dvMaintOutput\");\r\n\r\n\r\n    const invalid =\r\n      length <= 0 ||\r\n      width <= 0 ||\r\n      depth <= 0 ||\r\n      length > 50 ||\r\n      width > 30 ||\r\n      depth > 5;\r\n\r\n\r\n    if (invalid) {\r\n\r\n      if (error) {\r\n        error.style.display =\r\n          showError\r\n            ? \"block\"\r\n            : \"none\";\r\n      }\r\n\r\n      if (output) {\r\n        output.classList.remove(\r\n          \"dv-show\"\r\n        );\r\n      }\r\n\r\n      return false;\r\n    }\r\n\r\n\r\n    if (error) {\r\n      error.style.display = \"none\";\r\n    }\r\n\r\n    return true;\r\n  }\r\n\r\n\r\n  let dvMaintClickBusy = false;\r\n\r\n\r\n  function showMaintenanceFreeNextStep() {\r\n\r\n    const box =\r\n      get(\"dvMaintFreeNextStep\");\r\n\r\n    if (box) {\r\n      box.classList.add(\"dv-show\");\r\n    }\r\n  }\r\n\r\n\r\n  function openMaintenanceRegistrationPopup() {\r\n\r\n    const redirect =\r\n      window.location.pathname +\r\n      window.location.search +\r\n      window.location.hash;\r\n\r\n\r\n    if (\r\n      typeof window.openAuthModal ===\r\n      \"function\"\r\n    ) {\r\n\r\n      window.openAuthModal(\r\n        \"register\",\r\n        redirect\r\n      );\r\n\r\n      return true;\r\n    }\r\n\r\n\r\n    const registerTrigger =\r\n      document.querySelector(\r\n        '.cpdf-auth[data-auth-action=\"register\"]'\r\n      );\r\n\r\n\r\n    if (registerTrigger) {\r\n\r\n      registerTrigger.setAttribute(\r\n        \"data-redirect\",\r\n        redirect\r\n      );\r\n\r\n      registerTrigger.click();\r\n\r\n      return true;\r\n    }\r\n\r\n\r\n    window.location.href =\r\n      \"\/my-account\/?redirect_to=\" +\r\n      encodeURIComponent(redirect);\r\n\r\n    return false;\r\n  }\r\n\r\n\r\n  function openPackagePurchasePrompt() {\r\n\r\n    if (\r\n      typeof window.jQuery !==\r\n        \"undefined\" &&\r\n      window.jQuery(\r\n        \"#membership-modal\"\r\n      ).length\r\n    ) {\r\n\r\n      window.jQuery(\r\n        \"#membership-modal\"\r\n      ).css(\r\n        \"display\",\r\n        \"block\"\r\n      );\r\n\r\n      return true;\r\n    }\r\n\r\n\r\n    const membershipTrigger =\r\n      document.querySelector(\r\n        \"#membership-purchase-btn, .membership-purchase-btn, [data-membership-modal]\"\r\n      );\r\n\r\n\r\n    if (membershipTrigger) {\r\n\r\n      membershipTrigger.click();\r\n\r\n      return true;\r\n    }\r\n\r\n\r\n    window.location.href =\r\n      \"\/packages\/\";\r\n\r\n    return false;\r\n  }\r\n\r\n\r\n  async function authorizeMaintenanceFlow() {\r\n\r\n    if (\r\n      !window.DatvaleHtmlAccess ||\r\n      typeof window.DatvaleHtmlAccess.authorize !==\r\n        \"function\"\r\n    ) {\r\n\r\n      alert(\r\n        \"\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0434\u043e\u0441\u0442\u0443\u043f\u0430. \u041e\u0431\u043d\u043e\u0432\u0438\u0442\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0441\u043d\u043e\u0432\u0430.\"\r\n      );\r\n\r\n      return {\r\n        allowed:false,\r\n        mode:\"error\"\r\n      };\r\n    }\r\n\r\n\r\n    const result =\r\n      await window.DatvaleHtmlAccess.authorize(\r\n        \"pool_maintenance\"\r\n      );\r\n\r\n\r\n    if (\r\n      result &&\r\n      result.success &&\r\n      result.data &&\r\n      result.data.allowed === true\r\n    ) {\r\n\r\n      return {\r\n        allowed:true,\r\n        mode:\r\n          result.data.mode ||\r\n          \"membership\"\r\n      };\r\n    }\r\n\r\n\r\n    const data =\r\n      result && result.data\r\n        ? result.data\r\n        : {};\r\n\r\n\r\n    if (\r\n      data.code === \"login_required\"\r\n    ) {\r\n\r\n      openMaintenanceRegistrationPopup();\r\n\r\n      return {\r\n        allowed:false,\r\n        mode:\"login_required\"\r\n      };\r\n    }\r\n\r\n\r\n    if (\r\n      data.code ===\r\n      \"package_required\"\r\n    ) {\r\n\r\n      openPackagePurchasePrompt();\r\n\r\n      return {\r\n        allowed:false,\r\n        mode:\"package_required\"\r\n      };\r\n    }\r\n\r\n\r\n    alert(\r\n      data.message ||\r\n      \"\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0435\u0449\u0451 \u0440\u0430\u0437.\"\r\n    );\r\n\r\n\r\n    return {\r\n      allowed:false,\r\n      mode:\"error\"\r\n    };\r\n  }\r\n\r\n\r\n  async function claimMaintenanceFreeCalculation() {\r\n\r\n    if (\r\n      !window.DatvaleHtmlAccess ||\r\n      typeof window.DatvaleHtmlAccess.claimFree !==\r\n        \"function\"\r\n    ) {\r\n\r\n      return false;\r\n    }\r\n\r\n\r\n    const result =\r\n      await window.DatvaleHtmlAccess.claimFree(\r\n        \"pool_maintenance\"\r\n      );\r\n\r\n\r\n    return !!(\r\n      result &&\r\n      result.success &&\r\n      result.data &&\r\n      result.data.claimed === true\r\n    );\r\n  }\r\n\r\n\r\n  function calculate(showError) {\r\n\r\n    const length =\r\n      numberValue(\"dvMaintLength\");\r\n\r\n    const width =\r\n      numberValue(\"dvMaintWidth\");\r\n\r\n    const depth =\r\n      numberValue(\"dvMaintDepth\");\r\n\r\n\r\n    const error =\r\n      get(\"dvMaintError\");\r\n\r\n    const output =\r\n      get(\"dvMaintOutput\");\r\n\r\n\r\n    if (\r\n      length <= 0 ||\r\n      width <= 0 ||\r\n      depth <= 0 ||\r\n      length > 50 ||\r\n      width > 30 ||\r\n      depth > 5\r\n    ) {\r\n\r\n      if (\r\n        error &&\r\n        showError\r\n      ) {\r\n        error.style.display =\r\n          \"block\";\r\n      }\r\n\r\n      if (output) {\r\n        output.classList.remove(\r\n          \"dv-show\"\r\n        );\r\n      }\r\n\r\n      return false;\r\n    }\r\n\r\n\r\n    if (error) {\r\n      error.style.display = \"none\";\r\n    }\r\n\r\n\r\n    const volume =\r\n      length *\r\n      width *\r\n      depth;\r\n\r\n\r\n    const usageKey =\r\n      get(\"dvMaintUsage\").value;\r\n\r\n\r\n    const usage =\r\n      usageProfiles[usageKey] ||\r\n      usageProfiles.normal;\r\n\r\n\r\n    const robot =\r\n      get(\"dvMaintRobot\").value ===\r\n      \"yes\";\r\n\r\n\r\n    const chlorineDoseGrams =\r\n      35 *\r\n      (volume \/ 10);\r\n\r\n\r\n    const chlorineDosesPerMonth =\r\n      30 \/\r\n      usage.chlorineIntervalDays;\r\n\r\n\r\n    const chlorineMonthlyKg =\r\n      (\r\n        chlorineDoseGrams *\r\n        chlorineDosesPerMonth\r\n      ) \/\r\n      1000;\r\n\r\n\r\n    const chlorineMonthlyCost =\r\n      chlorineMonthlyKg *\r\n      prices.chlorine56PerKg;\r\n\r\n\r\n    const algicideDoseMl =\r\n      usage.algicideMlPer10m3 *\r\n      (volume \/ 10);\r\n\r\n\r\n    const algicideMonthlyLiters =\r\n      (\r\n        algicideDoseMl *\r\n        2\r\n      ) \/\r\n      1000;\r\n\r\n\r\n    const algicidePricePerLiter =\r\n      prices.algicide5L \/\r\n      5;\r\n\r\n\r\n    const algicideMonthlyCost =\r\n      algicideMonthlyLiters *\r\n      algicidePricePerLiter;\r\n\r\n\r\n    const ph =\r\n      numberValue(\"dvMaintPh\");\r\n\r\n\r\n    let phAction =\r\n      \"pH \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\";\r\n\r\n    let phQtyText =\r\n      \"\u2014\";\r\n\r\n    let phCostText =\r\n      \"\u2014\";\r\n\r\n\r\n    if (ph > 0) {\r\n\r\n      setText(\r\n        \"dvMaintPhValue\",\r\n        decimal(ph,1)\r\n      );\r\n\r\n\r\n      if (ph > 7.4) {\r\n\r\n        const steps =\r\n          (ph - 7.4) \/\r\n          0.2;\r\n\r\n\r\n        const grams =\r\n          150 *\r\n          (volume \/ 10) *\r\n          steps;\r\n\r\n\r\n        const kg =\r\n          grams \/\r\n          1000;\r\n\r\n\r\n        const pricePerKg =\r\n          prices.phMinus15Kg \/\r\n          1.5;\r\n\r\n\r\n        const cost =\r\n          kg *\r\n          pricePerKg;\r\n\r\n\r\n        phAction =\r\n          \"pH MINUS\";\r\n\r\n        phQtyText =\r\n          decimal(kg,2) +\r\n          \" \u043a\u0433\";\r\n\r\n        phCostText =\r\n          money(cost);\r\n\r\n\r\n      } else if (ph < 7.0) {\r\n\r\n        const steps =\r\n          (7.0 - ph) \/\r\n          0.2;\r\n\r\n\r\n        const grams =\r\n          100 *\r\n          (volume \/ 10) *\r\n          steps;\r\n\r\n\r\n        const kg =\r\n          grams \/\r\n          1000;\r\n\r\n\r\n        const pricePerKg =\r\n          prices.phPlus1Kg;\r\n\r\n\r\n        const cost =\r\n          kg *\r\n          pricePerKg;\r\n\r\n\r\n        phAction =\r\n          \"pH PLUS\";\r\n\r\n        phQtyText =\r\n          decimal(kg,2) +\r\n          \" \u043a\u0433\";\r\n\r\n        phCostText =\r\n          money(cost);\r\n\r\n\r\n      } else {\r\n\r\n        phAction =\r\n          \"\u041a\u043e\u0440\u0440\u0435\u043a\u0446\u0438\u044f \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f\";\r\n\r\n        phQtyText =\r\n          \"0\";\r\n\r\n        phCostText =\r\n          money(0);\r\n      }\r\n\r\n\r\n    } else {\r\n\r\n      setText(\r\n        \"dvMaintPhValue\",\r\n        \"\u041d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043e\"\r\n      );\r\n    }\r\n\r\n\r\n    const monthlyTotal =\r\n      chlorineMonthlyCost +\r\n      algicideMonthlyCost;\r\n\r\n\r\n    setText(\r\n      \"dvMaintVolume\",\r\n      decimal(volume,1) +\r\n      \" \u043c\u00b3\"\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintUsageText\",\r\n      usage.label\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintRobotText\",\r\n      robot\r\n        ? \"\u0414\u0430\"\r\n        : \"\u041d\u0435\u0442\"\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintChlorineDose\",\r\n      decimal(\r\n        chlorineDoseGrams,\r\n        0\r\n      ) +\r\n      \" \u0433\"\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintChlorineDoses\",\r\n      decimal(\r\n        chlorineDosesPerMonth,\r\n        1\r\n      ) +\r\n      \" \u0440\u0430\u0437\"\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintChlorineQty\",\r\n      decimal(\r\n        chlorineMonthlyKg,\r\n        2\r\n      ) +\r\n      \" \u043a\u0433\"\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintChlorineCost\",\r\n      money(\r\n        chlorineMonthlyCost\r\n      )\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintAlgDose\",\r\n      decimal(\r\n        algicideDoseMl,\r\n        0\r\n      ) +\r\n      \" \u043c\u043b\"\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintAlgQty\",\r\n      decimal(\r\n        algicideMonthlyLiters,\r\n        2\r\n      ) +\r\n      \" \u043b\"\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintAlgCost\",\r\n      money(\r\n        algicideMonthlyCost\r\n      )\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintPhAction\",\r\n      phAction\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintPhQty\",\r\n      phQtyText\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintPhCost\",\r\n      phCostText\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintSummaryVolume\",\r\n      decimal(volume,1) +\r\n      \" \u043c\u00b3\"\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintSummaryChlorine\",\r\n      decimal(\r\n        chlorineMonthlyKg,\r\n        2\r\n      ) +\r\n      \" \u043a\u0433\"\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintSummaryAlg\",\r\n      decimal(\r\n        algicideMonthlyLiters,\r\n        2\r\n      ) +\r\n      \" \u043b\"\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintSummaryCost\",\r\n      money(monthlyTotal)\r\n    );\r\n\r\n\r\n    setText(\r\n      \"dvMaintGrandTotal\",\r\n      money(monthlyTotal)\r\n    );\r\n\r\n\r\n    const robotNote =\r\n      get(\"dvMaintRobotNote\");\r\n\r\n\r\n    if (robotNote) {\r\n\r\n      robotNote.textContent =\r\n        robot\r\n          ? \"\u0412\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u0440\u043e\u0431\u043e\u0442 \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430. \u041e\u043d \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u043c\u0435\u0445\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043e\u0447\u0438\u0441\u0442\u043a\u0438 \u0434\u043d\u0430 \u0438 \u0441\u0442\u0435\u043d\u043e\u043a, \u043e\u0434\u043d\u0430\u043a\u043e \u0434\u043e\u0437\u0438\u0440\u043e\u0432\u043a\u0430 \u0445\u0438\u043c\u0438\u0438 \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u043d\u043e \u043d\u0435 \u0443\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0430.\"\r\n          : \"\u0411\u0435\u0437 \u0440\u043e\u0431\u043e\u0442\u0430 \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0434\u043d\u043e \u0438 \u0441\u0442\u0435\u043d\u043a\u0438 \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u043e\u0447\u0438\u0449\u0430\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0447\u0430\u0449\u0435. \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0445\u043b\u043e\u0440\u0430 \u0438 \u0430\u043b\u044c\u0433\u0438\u0446\u0438\u0434\u0430 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043e \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e \u0434\u043e\u0437\u0438\u0440\u043e\u0432\u043a\u0435.\";\r\n    }\r\n\r\n\r\n    if (output) {\r\n\r\n      output.classList.add(\r\n        \"dv-show\"\r\n      );\r\n\r\n\r\n      window.setTimeout(\r\n        function () {\r\n\r\n          output.scrollIntoView({\r\n            behavior:\"smooth\",\r\n            block:\"start\"\r\n          });\r\n\r\n        },\r\n        80\r\n      );\r\n    }\r\n\r\n\r\n    return true;\r\n  }\r\n\r\n\r\n  const calculateButton =\r\n    get(\r\n      \"dvMaintCalculateFreeFlowV2\"\r\n    );\r\n\r\n\r\n  if (calculateButton) {\r\n\r\n    calculateButton.addEventListener(\r\n      \"click\",\r\n      async function (event) {\r\n\r\n        event.preventDefault();\r\n        event.stopPropagation();\r\n        event.stopImmediatePropagation();\r\n\r\n\r\n        if (\r\n          dvMaintClickBusy\r\n        ) {\r\n          return;\r\n        }\r\n\r\n\r\n        if (\r\n          !validateMaintenanceInputs(\r\n            true\r\n          )\r\n        ) {\r\n          return;\r\n        }\r\n\r\n\r\n        dvMaintClickBusy =\r\n          true;\r\n\r\n\r\n        const originalText =\r\n          calculateButton.textContent;\r\n\r\n\r\n        calculateButton.disabled =\r\n          true;\r\n\r\n\r\n        calculateButton.textContent =\r\n          \"\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430...\";\r\n\r\n\r\n        try {\r\n\r\n          const access =\r\n            await authorizeMaintenanceFlow();\r\n\r\n\r\n          if (\r\n            !access ||\r\n            !access.allowed\r\n          ) {\r\n            return;\r\n          }\r\n\r\n\r\n          const success =\r\n            calculate(true);\r\n\r\n\r\n          if (!success) {\r\n            return;\r\n          }\r\n\r\n\r\n          triggerMaintenanceCompletedSms();\r\n\r\n\r\n          if (\r\n            access.mode === \"free\"\r\n          ) {\r\n\r\n            const claimed =\r\n              await claimMaintenanceFreeCalculation();\r\n\r\n\r\n            if (claimed) {\r\n\r\n              showMaintenanceFreeNextStep();\r\n            }\r\n\r\n          }\r\n\r\n\r\n        } finally {\r\n\r\n          calculateButton.disabled =\r\n            false;\r\n\r\n\r\n          calculateButton.textContent =\r\n            originalText;\r\n\r\n\r\n          dvMaintClickBusy =\r\n            false;\r\n        }\r\n\r\n      },\r\n      true\r\n    );\r\n  }\r\n\r\n\r\n  const dvMaintCallRequest =\r\n    get(\r\n      \"dvMaintCallRequest\"\r\n    );\r\n\r\n  const dvMaintRequestCall =\r\n    get(\r\n      \"dvMaintRequestCall\"\r\n    );\r\n\r\n  const dvMaintCallPhone =\r\n    get(\r\n      \"dvMaintCallPhone\"\r\n    );\r\n\r\n  const dvMaintCallStatus =\r\n    get(\r\n      \"dvMaintCallStatus\"\r\n    );\r\n\r\n  const dvMaintCallRow =\r\n    get(\r\n      \"dvMaintCallRow\"\r\n    );\r\n\r\n\r\n  let dvMaintCallConfig = {\r\n    enabled:false,\r\n    isLoggedIn:false,\r\n    hasSavedPhone:false\r\n  };\r\n\r\n\r\n  function maintenanceAjaxUrl() {\r\n\r\n    return (\r\n      window.cpdf_auth &&\r\n      window.cpdf_auth.ajaxurl\r\n    )\r\n      ? window.cpdf_auth.ajaxurl\r\n      : \"\/wp-admin\/admin-ajax.php\";\r\n  }\r\n\r\n\r\n  function setMaintCallStatus(\r\n    message,\r\n    type\r\n  ) {\r\n\r\n    if (\r\n      !dvMaintCallStatus\r\n    ) {\r\n      return;\r\n    }\r\n\r\n\r\n    dvMaintCallStatus.textContent =\r\n      message ||\r\n      \"\";\r\n\r\n\r\n    dvMaintCallStatus.classList.remove(\r\n      \"dv-success\",\r\n      \"dv-error\"\r\n    );\r\n\r\n\r\n    if (type) {\r\n\r\n      dvMaintCallStatus.classList.add(\r\n        type === \"success\"\r\n          ? \"dv-success\"\r\n          : \"dv-error\"\r\n      );\r\n    }\r\n  }\r\n\r\n\r\n  function syncMaintCallPhoneVisibility() {\r\n\r\n    const useSavedPhone =\r\n      dvMaintCallConfig.isLoggedIn &&\r\n      dvMaintCallConfig.hasSavedPhone;\r\n\r\n\r\n    if (\r\n      dvMaintCallRow\r\n    ) {\r\n\r\n      dvMaintCallRow.classList.toggle(\r\n        \"dv-has-saved-phone\",\r\n        useSavedPhone\r\n      );\r\n    }\r\n\r\n\r\n    if (\r\n      dvMaintCallPhone\r\n    ) {\r\n\r\n      dvMaintCallPhone.required =\r\n        !useSavedPhone;\r\n\r\n\r\n      if (\r\n        useSavedPhone\r\n      ) {\r\n        dvMaintCallPhone.value =\r\n          \"\";\r\n      }\r\n    }\r\n  }\r\n\r\n\r\n  async function loadMaintCallConfig() {\r\n\r\n    try {\r\n\r\n      const response =\r\n        await fetch(\r\n          maintenanceAjaxUrl() +\r\n          \"?action=gosms_call_request_config&calculator=pool_maintenance&_=\" +\r\n          Date.now(),\r\n          {\r\n            method:\"GET\",\r\n            credentials:\"same-origin\",\r\n            cache:\"no-store\"\r\n          }\r\n        );\r\n\r\n\r\n      const json =\r\n        await response.json();\r\n\r\n\r\n      if (\r\n        !json ||\r\n        !json.success ||\r\n        !json.data\r\n      ) {\r\n        return;\r\n      }\r\n\r\n\r\n      dvMaintCallConfig = {\r\n        enabled:\r\n          json.data.enabled === true,\r\n        isLoggedIn:\r\n          json.data.is_logged_in === true,\r\n        hasSavedPhone:\r\n          json.data.has_saved_phone === true\r\n      };\r\n\r\n\r\n      if (\r\n        dvMaintCallRequest\r\n      ) {\r\n\r\n        dvMaintCallRequest.style.display =\r\n          dvMaintCallConfig.enabled\r\n            ? \"block\"\r\n            : \"none\";\r\n      }\r\n\r\n\r\n      syncMaintCallPhoneVisibility();\r\n\r\n\r\n    } catch (error) {\r\n\r\n      if (\r\n        dvMaintCallRequest\r\n      ) {\r\n\r\n        dvMaintCallRequest.style.display =\r\n          \"none\";\r\n      }\r\n    }\r\n  }\r\n\r\n\r\n  async function requestMaintCompanyCall() {\r\n\r\n    if (\r\n      !dvMaintRequestCall ||\r\n      !dvMaintCallConfig.enabled\r\n    ) {\r\n      return;\r\n    }\r\n\r\n\r\n    const useSavedPhone =\r\n      dvMaintCallConfig.isLoggedIn &&\r\n      dvMaintCallConfig.hasSavedPhone;\r\n\r\n\r\n    const phone =\r\n      !useSavedPhone &&\r\n      dvMaintCallPhone\r\n        ? String(\r\n            dvMaintCallPhone.value ||\r\n            \"\"\r\n          ).trim()\r\n        : \"\";\r\n\r\n\r\n    if (\r\n      !useSavedPhone &&\r\n      !phone\r\n    ) {\r\n\r\n      setMaintCallStatus(\r\n        \"\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: 599123456\",\r\n        \"error\"\r\n      );\r\n\r\n\r\n      if (\r\n        dvMaintCallPhone\r\n      ) {\r\n        dvMaintCallPhone.focus();\r\n      }\r\n\r\n      return;\r\n    }\r\n\r\n\r\n    const originalText =\r\n      dvMaintRequestCall.textContent;\r\n\r\n\r\n    dvMaintRequestCall.disabled =\r\n      true;\r\n\r\n\r\n    dvMaintRequestCall.textContent =\r\n      \"\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430...\";\r\n\r\n\r\n    setMaintCallStatus(\r\n      \"\",\r\n      null\r\n    );\r\n\r\n\r\n    try {\r\n\r\n      const body =\r\n        new URLSearchParams();\r\n\r\n\r\n      body.set(\r\n        \"action\",\r\n        \"gosms_request_call\"\r\n      );\r\n\r\n\r\n      body.set(\r\n        \"calculator\",\r\n        \"pool_maintenance\"\r\n      );\r\n\r\n\r\n      if (phone) {\r\n\r\n        body.set(\r\n          \"phone\",\r\n          phone\r\n        );\r\n      }\r\n\r\n\r\n      const response =\r\n        await fetch(\r\n          maintenanceAjaxUrl(),\r\n          {\r\n            method:\"POST\",\r\n            credentials:\"same-origin\",\r\n            headers:{\r\n              \"Content-Type\":\r\n                \"application\/x-www-form-urlencoded; charset=UTF-8\"\r\n            },\r\n            body:\r\n              body.toString()\r\n          }\r\n        );\r\n\r\n\r\n      const json =\r\n        await response.json();\r\n\r\n\r\n      if (\r\n        json &&\r\n        json.success\r\n      ) {\r\n\r\n        setMaintCallStatus(\r\n          json.data &&\r\n          json.data.message\r\n            ? json.data.message\r\n            : \"\u0412\u0430\u0448 \u0437\u0430\u043f\u0440\u043e\u0441 \u043f\u0440\u0438\u043d\u044f\u0442. \u0421 \u0432\u0430\u043c\u0438 \u0441\u043a\u043e\u0440\u043e \u0441\u0432\u044f\u0436\u0443\u0442\u0441\u044f.\",\r\n          \"success\"\r\n        );\r\n\r\n        return;\r\n      }\r\n\r\n\r\n      const data =\r\n        json &&\r\n        json.data\r\n          ? json.data\r\n          : {};\r\n\r\n\r\n      if (\r\n        data &&\r\n        data.disabled\r\n      ) {\r\n\r\n        dvMaintCallConfig.enabled =\r\n          false;\r\n\r\n\r\n        if (\r\n          dvMaintCallRequest\r\n        ) {\r\n\r\n          dvMaintCallRequest.style.display =\r\n            \"none\";\r\n        }\r\n\r\n        return;\r\n      }\r\n\r\n\r\n      if (\r\n        data &&\r\n        data.need_phone\r\n      ) {\r\n\r\n        dvMaintCallConfig.hasSavedPhone =\r\n          false;\r\n\r\n\r\n        syncMaintCallPhoneVisibility();\r\n\r\n\r\n        setMaintCallStatus(\r\n          data.message ||\r\n          \"\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430.\",\r\n          \"error\"\r\n        );\r\n\r\n\r\n        if (\r\n          dvMaintCallPhone\r\n        ) {\r\n          dvMaintCallPhone.focus();\r\n        }\r\n\r\n        return;\r\n      }\r\n\r\n\r\n      setMaintCallStatus(\r\n        data.message ||\r\n        \"\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441.\",\r\n        \"error\"\r\n      );\r\n\r\n\r\n    } catch (error) {\r\n\r\n      setMaintCallStatus(\r\n        \"\u041f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u0430 \u043e\u0448\u0438\u0431\u043a\u0430. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0435\u0449\u0451 \u0440\u0430\u0437.\",\r\n        \"error\"\r\n      );\r\n\r\n\r\n    } finally {\r\n\r\n      dvMaintRequestCall.disabled =\r\n        false;\r\n\r\n\r\n      dvMaintRequestCall.textContent =\r\n        originalText;\r\n    }\r\n  }\r\n\r\n\r\n  if (\r\n    dvMaintRequestCall\r\n  ) {\r\n\r\n    dvMaintRequestCall.addEventListener(\r\n      \"click\",\r\n      requestMaintCompanyCall\r\n    );\r\n  }\r\n\r\n\r\n  loadMaintCallConfig();\r\n\r\n\r\n  function triggerMaintenanceCompletedSms() {\r\n\r\n    try {\r\n\r\n      fetch(\r\n        maintenanceAjaxUrl(),\r\n        {\r\n          method:\"POST\",\r\n          credentials:\"same-origin\",\r\n          headers:{\r\n            \"Content-Type\":\r\n              \"application\/x-www-form-urlencoded; charset=UTF-8\"\r\n          },\r\n          body:\r\n            new URLSearchParams({\r\n              action:\r\n                \"gosms_calculation_completed\",\r\n              calculator:\r\n                \"pool_maintenance\"\r\n            }).toString()\r\n        }\r\n      ).catch(function(){});\r\n\r\n    } catch(error) {}\r\n  }\r\n\r\n\r\n  const printButton =\r\n    get(\r\n      \"dvMaintPrint\"\r\n    );\r\n\r\n\r\n  if (printButton) {\r\n\r\n    printButton.addEventListener(\r\n      \"click\",\r\n      async function () {\r\n\r\n        if (\r\n          !get(\"dvMaintOutput\") ||\r\n          !get(\"dvMaintOutput\")\r\n            .classList\r\n            .contains(\"dv-show\")\r\n        ) {\r\n          return;\r\n        }\r\n\r\n\r\n        if (\r\n          !window.jspdf ||\r\n          !window.jspdf.jsPDF\r\n        ) {\r\n\r\n          alert(\r\n            \"\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044c PDF. \u041e\u0431\u043d\u043e\u0432\u0438\u0442\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0441\u043d\u043e\u0432\u0430.\"\r\n          );\r\n\r\n          return;\r\n        }\r\n\r\n\r\n        const originalHTML =\r\n          printButton.innerHTML;\r\n\r\n\r\n        printButton.disabled =\r\n          true;\r\n\r\n\r\n        printButton.innerHTML =\r\n          \"\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 PDF...\";\r\n\r\n\r\n        try {\r\n\r\n          const {\r\n            jsPDF\r\n          } =\r\n            window.jspdf;\r\n\r\n\r\n          const doc =\r\n            new jsPDF({\r\n              unit:\"mm\",\r\n              format:\"a4\",\r\n              orientation:\"portrait\"\r\n            });\r\n\r\n\r\n          const pageWidth =\r\n            doc.internal.pageSize.getWidth();\r\n\r\n\r\n          const pageHeight =\r\n            doc.internal.pageSize.getHeight();\r\n\r\n\r\n          const marginX =\r\n            12;\r\n\r\n\r\n          const contentWidth =\r\n            pageWidth -\r\n            marginX * 2;\r\n\r\n\r\n          const blue =\r\n            [11,58,120];\r\n\r\n\r\n          const lightBlue =\r\n            [244,248,253];\r\n\r\n\r\n          const border =\r\n            [216,227,239];\r\n\r\n\r\n          const green =\r\n            [19,121,91];\r\n\r\n\r\n          let y =\r\n            12;\r\n\r\n\r\n          function ensureSpace(\r\n            neededHeight\r\n          ) {\r\n\r\n            if (\r\n              y +\r\n              neededHeight >\r\n              pageHeight -\r\n              12\r\n            ) {\r\n\r\n              doc.addPage();\r\n\r\n              y =\r\n                12;\r\n            }\r\n          }\r\n\r\n\r\n          async function addTextImage(\r\n            text,\r\n            x,\r\n            yPos,\r\n            widthPx,\r\n            widthMm,\r\n            options\r\n          ) {\r\n\r\n            options =\r\n              options ||\r\n              {};\r\n\r\n\r\n            const canvas =\r\n              document.createElement(\r\n                \"canvas\"\r\n              );\r\n\r\n\r\n            const ctx =\r\n              canvas.getContext(\r\n                \"2d\"\r\n              );\r\n\r\n\r\n            const scale =\r\n              2;\r\n\r\n\r\n            const fontSize =\r\n              options.fontSize ||\r\n              18;\r\n\r\n\r\n            const fontWeight =\r\n              options.fontWeight ||\r\n              700;\r\n\r\n\r\n            const padding =\r\n              5;\r\n\r\n\r\n            const lineHeight =\r\n              fontSize *\r\n              1.45;\r\n\r\n\r\n            ctx.font =\r\n              fontWeight +\r\n              \" \" +\r\n              fontSize +\r\n              'px \"Segoe UI\", Arial, sans-serif';\r\n\r\n\r\n            const words =\r\n              String(\r\n                text ||\r\n                \"\"\r\n              ).split(\/\\s+\/);\r\n\r\n\r\n            const lines =\r\n              [];\r\n\r\n\r\n            let current =\r\n              \"\";\r\n\r\n\r\n            for (\r\n              const word of words\r\n            ) {\r\n\r\n              const test =\r\n                current\r\n                  ? current +\r\n                    \" \" +\r\n                    word\r\n                  : word;\r\n\r\n\r\n              if (\r\n                ctx.measureText(\r\n                  test\r\n                ).width >\r\n                widthPx -\r\n                padding *\r\n                2\r\n              ) {\r\n\r\n                if (current) {\r\n                  lines.push(\r\n                    current\r\n                  );\r\n                }\r\n\r\n                current =\r\n                  word;\r\n\r\n              } else {\r\n\r\n                current =\r\n                  test;\r\n              }\r\n            }\r\n\r\n\r\n            if (current) {\r\n\r\n              lines.push(\r\n                current\r\n              );\r\n            }\r\n\r\n\r\n            canvas.width =\r\n              widthPx *\r\n              scale;\r\n\r\n\r\n            canvas.height =\r\n              Math.max(\r\n                34,\r\n                (\r\n                  lines.length *\r\n                  lineHeight +\r\n                  padding *\r\n                  2\r\n                ) *\r\n                scale\r\n              );\r\n\r\n\r\n            const ctx2 =\r\n              canvas.getContext(\r\n                \"2d\"\r\n              );\r\n\r\n\r\n            ctx2.scale(\r\n              scale,\r\n              scale\r\n            );\r\n\r\n\r\n            ctx2.fillStyle =\r\n              options.color ||\r\n              \"#173558\";\r\n\r\n\r\n            ctx2.font =\r\n              fontWeight +\r\n              \" \" +\r\n              fontSize +\r\n              'px \"Segoe UI\", Arial, sans-serif';\r\n\r\n\r\n            ctx2.textBaseline =\r\n              \"top\";\r\n\r\n\r\n            let align =\r\n              options.align ||\r\n              \"left\";\r\n\r\n\r\n            for (\r\n              let i = 0;\r\n              i <\r\n              lines.length;\r\n              i++\r\n            ) {\r\n\r\n              const line =\r\n                lines[i];\r\n\r\n\r\n              let dx =\r\n                padding;\r\n\r\n\r\n              const lineWidth =\r\n                ctx2.measureText(\r\n                  line\r\n                ).width;\r\n\r\n\r\n              if (\r\n                align ===\r\n                \"center\"\r\n              ) {\r\n\r\n                dx =\r\n                  (\r\n                    widthPx -\r\n                    lineWidth\r\n                  ) \/\r\n                  2;\r\n\r\n              } else if (\r\n                align ===\r\n                \"right\"\r\n              ) {\r\n\r\n                dx =\r\n                  widthPx -\r\n                  lineWidth -\r\n                  padding;\r\n              }\r\n\r\n\r\n              ctx2.fillText(\r\n                line,\r\n                dx,\r\n                padding +\r\n                i *\r\n                lineHeight\r\n              );\r\n            }\r\n\r\n\r\n            const heightMm =\r\n              widthMm *\r\n              (\r\n                canvas.height \/\r\n                canvas.width\r\n              );\r\n\r\n\r\n            doc.addImage(\r\n              canvas.toDataURL(\r\n                \"image\/png\"\r\n              ),\r\n              \"PNG\",\r\n              x,\r\n              yPos,\r\n              widthMm,\r\n              heightMm,\r\n              undefined,\r\n              \"FAST\"\r\n            );\r\n\r\n\r\n            return heightMm;\r\n          }\r\n\r\n\r\n          doc.setFillColor(\r\n            ...blue\r\n          );\r\n\r\n\r\n          doc.roundedRect(\r\n            marginX,\r\n            y,\r\n            contentWidth,\r\n            20,\r\n            2,\r\n            2,\r\n            \"F\"\r\n          );\r\n\r\n\r\n          await addTextImage(\r\n            \"Datvale.ge \u2014 \u0440\u0430\u0441\u0447\u0451\u0442 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430\",\r\n            marginX +\r\n            2,\r\n            y +\r\n            3,\r\n            1000,\r\n            contentWidth -\r\n            4,\r\n            {\r\n              fontSize:23,\r\n              fontWeight:800,\r\n              color:\"#ffffff\",\r\n              align:\"center\"\r\n            }\r\n          );\r\n\r\n\r\n          y +=\r\n            27;\r\n\r\n\r\n          const cards =\r\n            Array.from(\r\n              get(\r\n                \"dvMaintOutput\"\r\n              ).querySelectorAll(\r\n                \".dv-result-card\"\r\n              )\r\n            );\r\n\r\n\r\n          for (\r\n            const card of cards\r\n          ) {\r\n\r\n            const titleSource =\r\n              card.querySelector(\r\n                \".dv-result-head h3\"\r\n              );\r\n\r\n\r\n            const rows =\r\n              Array.from(\r\n                card.querySelectorAll(\r\n                  \".dv-row\"\r\n                )\r\n              );\r\n\r\n\r\n            const totalSource =\r\n              card.querySelector(\r\n                \".dv-card-total\"\r\n              );\r\n\r\n\r\n            const estimatedHeight =\r\n              13 +\r\n              rows.length *\r\n              12 +\r\n              (\r\n                totalSource\r\n                  ? 13\r\n                  : 4\r\n              );\r\n\r\n\r\n            ensureSpace(\r\n              estimatedHeight\r\n            );\r\n\r\n\r\n            doc.setDrawColor(\r\n              ...border\r\n            );\r\n\r\n\r\n            doc.roundedRect(\r\n              marginX,\r\n              y,\r\n              contentWidth,\r\n              estimatedHeight,\r\n              2,\r\n              2,\r\n              \"S\"\r\n            );\r\n\r\n\r\n            doc.setFillColor(\r\n              ...blue\r\n            );\r\n\r\n\r\n            doc.roundedRect(\r\n              marginX,\r\n              y,\r\n              contentWidth,\r\n              9,\r\n              2,\r\n              2,\r\n              \"F\"\r\n            );\r\n\r\n\r\n            await addTextImage(\r\n              titleSource\r\n                ? titleSource.textContent.trim()\r\n                : \"\",\r\n              marginX +\r\n              2,\r\n              y +\r\n              .7,\r\n              850,\r\n              contentWidth -\r\n              4,\r\n              {\r\n                fontSize:20,\r\n                fontWeight:800,\r\n                color:\"#ffffff\",\r\n                align:\"left\"\r\n              }\r\n            );\r\n\r\n\r\n            y +=\r\n              11;\r\n\r\n\r\n            for (\r\n              const row of rows\r\n            ) {\r\n\r\n              const nameSource =\r\n                row.querySelector(\r\n                  \".dv-row-name\"\r\n                );\r\n\r\n\r\n              const valueSource =\r\n                row.querySelector(\r\n                  \".dv-row-value\"\r\n                );\r\n\r\n\r\n              await addTextImage(\r\n                nameSource\r\n                  ? nameSource.textContent.trim()\r\n                  : \"\",\r\n                marginX +\r\n                3,\r\n                y +\r\n                .7,\r\n                900,\r\n                contentWidth *\r\n                .68,\r\n                {\r\n                  fontSize:18,\r\n                  fontWeight:700,\r\n                  color:\"#173558\",\r\n                  align:\"left\"\r\n                }\r\n              );\r\n\r\n\r\n              await addTextImage(\r\n                valueSource\r\n                  ? valueSource.textContent.trim()\r\n                  : \"\",\r\n                marginX +\r\n                contentWidth *\r\n                .70,\r\n                y +\r\n                .7,\r\n                400,\r\n                contentWidth *\r\n                .27,\r\n                {\r\n                  fontSize:18,\r\n                  fontWeight:800,\r\n                  color:\"#071f39\",\r\n                  align:\"right\"\r\n                }\r\n              );\r\n\r\n\r\n              doc.setDrawColor(\r\n                225,\r\n                233,\r\n                242\r\n              );\r\n\r\n\r\n              doc.line(\r\n                marginX +\r\n                3,\r\n                y +\r\n                9,\r\n                marginX +\r\n                contentWidth -\r\n                3,\r\n                y +\r\n                9\r\n              );\r\n\r\n\r\n              y +=\r\n                12;\r\n            }\r\n\r\n\r\n            if (\r\n              totalSource\r\n            ) {\r\n\r\n              doc.setFillColor(\r\n                ...lightBlue\r\n              );\r\n\r\n\r\n              doc.setDrawColor(\r\n                ...border\r\n              );\r\n\r\n\r\n              doc.roundedRect(\r\n                marginX +\r\n                3,\r\n                y,\r\n                contentWidth -\r\n                6,\r\n                10,\r\n                1.5,\r\n                1.5,\r\n                \"FD\"\r\n              );\r\n\r\n\r\n              await addTextImage(\r\n                totalSource.textContent\r\n                  .replace(\/\\s+\/g,\" \")\r\n                  .trim(),\r\n                marginX +\r\n                4,\r\n                y +\r\n                .8,\r\n                900,\r\n                contentWidth -\r\n                8,\r\n                {\r\n                  fontSize:18,\r\n                  fontWeight:800,\r\n                  color:\"#071f39\",\r\n                  align:\"right\"\r\n                }\r\n              );\r\n\r\n\r\n              y +=\r\n                12;\r\n\r\n\r\n            } else {\r\n\r\n              y +=\r\n                3;\r\n            }\r\n\r\n\r\n            y +=\r\n              4;\r\n          }\r\n\r\n\r\n          ensureSpace(\r\n            52\r\n          );\r\n\r\n\r\n          await addTextImage(\r\n            \"\u0418\u0442\u043e\u0433\u0438 \u0435\u0436\u0435\u043c\u0435\u0441\u044f\u0447\u043d\u043e\u0433\u043e \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f\",\r\n            marginX,\r\n            y,\r\n            850,\r\n            contentWidth,\r\n            {\r\n              fontSize:23,\r\n              fontWeight:800,\r\n              color:\"#071f39\",\r\n              align:\"left\"\r\n            }\r\n          );\r\n\r\n\r\n          y +=\r\n            12;\r\n\r\n\r\n          const summaryItems =\r\n            Array.from(\r\n              get(\r\n                \"dvMaintOutput\"\r\n              ).querySelectorAll(\r\n                \".dv-summary-item\"\r\n              )\r\n            );\r\n\r\n\r\n          const sGap =\r\n            3;\r\n\r\n\r\n          const sBoxWidth =\r\n            (\r\n              contentWidth -\r\n              sGap *\r\n              3\r\n            ) \/\r\n            4;\r\n\r\n\r\n          for (\r\n            let i = 0;\r\n            i <\r\n            summaryItems.length;\r\n            i++\r\n          ) {\r\n\r\n            const item =\r\n              summaryItems[i];\r\n\r\n\r\n            const labelSource =\r\n              item.querySelector(\r\n                \".dv-summary-label\"\r\n              );\r\n\r\n\r\n            const valueSource =\r\n              item.querySelector(\r\n                \".dv-summary-value\"\r\n              );\r\n\r\n\r\n            const x =\r\n              marginX +\r\n              i *\r\n              (\r\n                sBoxWidth +\r\n                sGap\r\n              );\r\n\r\n\r\n            doc.setFillColor(\r\n              ...lightBlue\r\n            );\r\n\r\n\r\n            doc.setDrawColor(\r\n              ...border\r\n            );\r\n\r\n\r\n            doc.roundedRect(\r\n              x,\r\n              y,\r\n              sBoxWidth,\r\n              18,\r\n              2,\r\n              2,\r\n              \"FD\"\r\n            );\r\n\r\n\r\n            await addTextImage(\r\n              labelSource\r\n                ? labelSource.textContent.trim()\r\n                : \"\",\r\n              x +\r\n              1.5,\r\n              y +\r\n              1.5,\r\n              420,\r\n              sBoxWidth -\r\n              3,\r\n              {\r\n                fontSize:16,\r\n                fontWeight:800,\r\n                color:\"#071f39\",\r\n                align:\"center\"\r\n              }\r\n            );\r\n\r\n\r\n            await addTextImage(\r\n              valueSource\r\n                ? valueSource.textContent.trim()\r\n                : \"\",\r\n              x +\r\n              1.5,\r\n              y +\r\n              8.5,\r\n              420,\r\n              sBoxWidth -\r\n              3,\r\n              {\r\n                fontSize:18,\r\n                fontWeight:800,\r\n                color:\"#071f39\",\r\n                align:\"center\"\r\n              }\r\n            );\r\n          }\r\n\r\n\r\n          y +=\r\n            22;\r\n\r\n\r\n          ensureSpace(\r\n            27\r\n          );\r\n\r\n\r\n          doc.setFillColor(\r\n            ...green\r\n          );\r\n\r\n\r\n          doc.roundedRect(\r\n            marginX,\r\n            y,\r\n            contentWidth,\r\n            20,\r\n            2,\r\n            2,\r\n            \"F\"\r\n          );\r\n\r\n\r\n          await addTextImage(\r\n            \"\u0420\u0430\u0441\u0447\u0451\u0442\u043d\u0430\u044f \u0435\u0436\u0435\u043c\u0435\u0441\u044f\u0447\u043d\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430\",\r\n            marginX +\r\n            2,\r\n            y +\r\n            2,\r\n            850,\r\n            contentWidth -\r\n            4,\r\n            {\r\n              fontSize:13,\r\n              fontWeight:700,\r\n              color:\"#ffffff\",\r\n              align:\"center\"\r\n            }\r\n          );\r\n\r\n\r\n          await addTextImage(\r\n            get(\r\n              \"dvMaintGrandTotal\"\r\n            ).textContent.trim(),\r\n            marginX +\r\n            2,\r\n            y +\r\n            9,\r\n            850,\r\n            contentWidth -\r\n            4,\r\n            {\r\n              fontSize:34,\r\n              fontWeight:800,\r\n              color:\"#ffffff\",\r\n              align:\"center\"\r\n            }\r\n          );\r\n\r\n\r\n          y +=\r\n            24;\r\n\r\n\r\n          ensureSpace(\r\n            28\r\n          );\r\n\r\n\r\n          await addTextImage(\r\n            \"\u0412\u0430\u0436\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\",\r\n            marginX,\r\n            y,\r\n            850,\r\n            contentWidth,\r\n            {\r\n              fontSize:20,\r\n              fontWeight:800,\r\n              color:\"#071f39\",\r\n              align:\"left\"\r\n            }\r\n          );\r\n\r\n\r\n          y +=\r\n            9;\r\n\r\n\r\n          const noteText =\r\n            get(\r\n              \"dvMaintRobotNote\"\r\n            )\r\n              ? get(\r\n                  \"dvMaintRobotNote\"\r\n                ).textContent\r\n                  .replace(\/\\s+\/g,\" \")\r\n                  .trim()\r\n              : \"\";\r\n\r\n\r\n          if (\r\n            noteText\r\n          ) {\r\n\r\n            const noteCanvas =\r\n              document.createElement(\r\n                \"canvas\"\r\n              );\r\n\r\n\r\n            const ctx =\r\n              noteCanvas.getContext(\r\n                \"2d\"\r\n              );\r\n\r\n\r\n            const fontSize =\r\n              17;\r\n\r\n\r\n            const widthPx =\r\n              900;\r\n\r\n\r\n            const padding =\r\n              8;\r\n\r\n\r\n            const lineHeight =\r\n              27;\r\n\r\n\r\n            const scale =\r\n              2;\r\n\r\n\r\n            ctx.font =\r\n              '700 ' +\r\n              fontSize +\r\n              'px \"Segoe UI\", Arial, sans-serif';\r\n\r\n\r\n            const words =\r\n              noteText.split(\r\n                \/\\s+\/\r\n              );\r\n\r\n\r\n            const lines =\r\n              [];\r\n\r\n\r\n            let current =\r\n              \"\";\r\n\r\n\r\n            for (\r\n              const word of words\r\n            ) {\r\n\r\n              const test =\r\n                current\r\n                  ? current +\r\n                    \" \" +\r\n                    word\r\n                  : word;\r\n\r\n\r\n              if (\r\n                ctx.measureText(\r\n                  test\r\n                ).width >\r\n                widthPx -\r\n                padding *\r\n                2\r\n              ) {\r\n\r\n                if (\r\n                  current\r\n                ) {\r\n\r\n                  lines.push(\r\n                    current\r\n                  );\r\n                }\r\n\r\n                current =\r\n                  word;\r\n\r\n              } else {\r\n\r\n                current =\r\n                  test;\r\n              }\r\n            }\r\n\r\n\r\n            if (\r\n              current\r\n            ) {\r\n\r\n              lines.push(\r\n                current\r\n              );\r\n            }\r\n\r\n\r\n            noteCanvas.width =\r\n              widthPx *\r\n              scale;\r\n\r\n\r\n            noteCanvas.height =\r\n              Math.max(\r\n                40,\r\n                (\r\n                  lines.length *\r\n                  lineHeight +\r\n                  padding *\r\n                  2\r\n                ) *\r\n                scale\r\n              );\r\n\r\n\r\n            const ctx2 =\r\n              noteCanvas.getContext(\r\n                \"2d\"\r\n              );\r\n\r\n\r\n            ctx2.scale(\r\n              scale,\r\n              scale\r\n            );\r\n\r\n\r\n            ctx2.fillStyle =\r\n              \"#526b84\";\r\n\r\n\r\n            ctx2.font =\r\n              '700 ' +\r\n              fontSize +\r\n              'px \"Segoe UI\", Arial, sans-serif';\r\n\r\n\r\n            ctx2.textBaseline =\r\n              \"top\";\r\n\r\n\r\n            lines.forEach(\r\n              function (\r\n                line,\r\n                index\r\n              ) {\r\n\r\n                ctx2.fillText(\r\n                  line,\r\n                  padding,\r\n                  padding +\r\n                  index *\r\n                  lineHeight\r\n                );\r\n              }\r\n            );\r\n\r\n\r\n            const noteMmHeight =\r\n              contentWidth *\r\n              (\r\n                noteCanvas.height \/\r\n                noteCanvas.width\r\n              );\r\n\r\n\r\n            ensureSpace(\r\n              noteMmHeight +\r\n              4\r\n            );\r\n\r\n\r\n            doc.addImage(\r\n              noteCanvas.toDataURL(\r\n                \"image\/png\"\r\n              ),\r\n              \"PNG\",\r\n              marginX,\r\n              y,\r\n              contentWidth,\r\n              noteMmHeight,\r\n              undefined,\r\n              \"FAST\"\r\n            );\r\n\r\n\r\n            y +=\r\n              noteMmHeight +\r\n              5;\r\n          }\r\n\r\n\r\n          ensureSpace(\r\n            12\r\n          );\r\n\r\n\r\n          await addTextImage(\r\n            \"\u0426\u0435\u043d\u044b \u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u0434\u043e\u0437\u0438\u0440\u043e\u0432\u043a\u0430\u0445 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u044b\u043c\u0438 \u0438 \u043c\u043e\u0433\u0443\u0442 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f. \u0424\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u043e\u0442\u0440\u0435\u0431\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432\u043e\u0434\u044b \u0438 \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f.\",\r\n            marginX,\r\n            y,\r\n            1000,\r\n            contentWidth,\r\n            {\r\n              fontSize:12,\r\n              fontWeight:600,\r\n              color:\"#70849a\",\r\n              align:\"center\"\r\n            }\r\n          );\r\n\r\n\r\n          doc.save(\r\n            \"Datvale-auzis-movlis-kharjtagricxva.pdf\"\r\n          );\r\n\r\n\r\n        } catch (error) {\r\n\r\n          console.error(\r\n            \"Datvale Pool Maintenance PDF generation error:\",\r\n            error\r\n          );\r\n\r\n\r\n          alert(\r\n            \"\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0441\u043e\u0437\u0434\u0430\u0442\u044c PDF.\"\r\n          );\r\n\r\n\r\n        } finally {\r\n\r\n          printButton.disabled =\r\n            false;\r\n\r\n\r\n          printButton.innerHTML =\r\n            originalHTML;\r\n        }\r\n\r\n      }\r\n    );\r\n  }\r\n\r\n})();\r\n<\/script>\r\n\r\n<\/div>\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<div class=\"elementor-element elementor-element-0b8ebf2 e-flex e-con-boxed e-con e-parent\" data-id=\"0b8ebf2\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fa7c629 elementor-widget elementor-widget-html\" data-id=\"fa7c629\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<a\r\n  href=\"https:\/\/datvale.ge\/ru\/property-insurance\/\"\r\n  class=\"dv-property-offer\"\r\n  aria-label=\"\u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044c \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0441\u0442\u0440\u0430\u0445\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0435\u0434\u0432\u0438\u0436\u0438\u043c\u043e\u0441\u0442\u0438\"\r\n>\r\n\r\n  <div class=\"dv-property-offer-copy\">\r\n\r\n    <strong>\r\n      \u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0441\u0442\u0440\u0430\u0445\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0435\u0434\u0432\u0438\u0436\u0438\u043c\u043e\u0441\u0442\u0438\r\n    <\/strong>\r\n\r\n    <span>\r\n      \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0432\u0430\u0448\u0435\u0439 \u043a\u0432\u0430\u0440\u0442\u0438\u0440\u044b \u0438\u043b\u0438 \u0434\u043e\u043c\u0430\r\n    <\/span>\r\n\r\n  <\/div>\r\n\r\n  <div class=\"dv-property-offer-button\">\r\n    \u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044c \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c\r\n    <b>\u2192<\/b>\r\n  <\/div>\r\n\r\n<\/a>\r\n\r\n\r\n<style>\r\n\r\n.dv-property-offer,\r\n.dv-property-offer *{\r\n  box-sizing:border-box;\r\n}\r\n\r\n.dv-property-offer{\r\n  position:relative;\r\n  overflow:hidden;\r\n\r\n  width:100%;\r\n\r\n  display:flex;\r\n  align-items:center;\r\n  justify-content:space-between;\r\n\r\n  gap:20px;\r\n\r\n  padding:18px 20px;\r\n\r\n  border:1px solid rgba(110,73,22,.16);\r\n  border-radius:18px;\r\n\r\n  background:\r\n    radial-gradient(\r\n      circle at 90% 0%,\r\n      rgba(255,255,255,.88),\r\n      transparent 28%\r\n    ),\r\n    linear-gradient(\r\n      135deg,\r\n      #f4dfb4 0%,\r\n      #d6aa5c 48%,\r\n      #b88132 100%\r\n    );\r\n\r\n  box-shadow:\r\n    0 14px 34px rgba(106,70,19,.20),\r\n    inset 0 1px 0 rgba(255,255,255,.58);\r\n\r\n  text-decoration:none !important;\r\n\r\n  transition:\r\n    transform .22s ease,\r\n    box-shadow .22s ease;\r\n}\r\n\r\n.dv-property-offer::before{\r\n  content:\"\";\r\n\r\n  position:absolute;\r\n  top:-80px;\r\n  right:90px;\r\n\r\n  width:170px;\r\n  height:170px;\r\n\r\n  border-radius:50%;\r\n\r\n  background:\r\n    radial-gradient(\r\n      circle,\r\n      rgba(255,255,255,.36),\r\n      transparent 68%\r\n    );\r\n\r\n  pointer-events:none;\r\n}\r\n\r\n.dv-property-offer:hover{\r\n  transform:translateY(-2px);\r\n\r\n  box-shadow:\r\n    0 18px 42px rgba(106,70,19,.27),\r\n    inset 0 1px 0 rgba(255,255,255,.62);\r\n\r\n  text-decoration:none !important;\r\n}\r\n\r\n\r\n.dv-property-offer-copy{\r\n  position:relative;\r\n  z-index:2;\r\n\r\n  min-width:0;\r\n\r\n  display:flex;\r\n  flex-direction:column;\r\n\r\n  gap:4px;\r\n}\r\n\r\n.dv-property-offer-copy strong{\r\n  color:#2e2111;\r\n\r\n  font-size:19px;\r\n  line-height:1.2;\r\n\r\n  font-weight:950;\r\n\r\n  letter-spacing:-.01em;\r\n}\r\n\r\n.dv-property-offer-copy span{\r\n  color:rgba(46,33,17,.78);\r\n\r\n  font-size:13px;\r\n  line-height:1.35;\r\n\r\n  font-weight:700;\r\n}\r\n\r\n\r\n.dv-property-offer-button{\r\n  position:relative;\r\n  z-index:2;\r\n\r\n  flex:0 0 auto;\r\n\r\n  display:inline-flex;\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  gap:7px;\r\n\r\n  min-height:46px;\r\n\r\n  padding:11px 16px;\r\n\r\n  border:1px solid rgba(46,33,17,.10);\r\n  border-radius:11px;\r\n\r\n  background:#21170c;\r\n\r\n  color:#ffffff;\r\n\r\n  font-size:13px;\r\n  line-height:1;\r\n\r\n  font-weight:900;\r\n\r\n  white-space:nowrap;\r\n\r\n  box-shadow:\r\n    0 7px 18px rgba(33,23,12,.20);\r\n}\r\n\r\n.dv-property-offer-button b{\r\n  font-size:15px;\r\n  line-height:1;\r\n\r\n  transition:transform .2s ease;\r\n}\r\n\r\n.dv-property-offer:hover\r\n.dv-property-offer-button b{\r\n  transform:translateX(2px);\r\n}\r\n\r\n\r\n\/* TABLET *\/\r\n\r\n@media(max-width:900px){\r\n\r\n  .dv-property-offer{\r\n    padding:16px 17px;\r\n\r\n    border-radius:15px;\r\n  }\r\n\r\n  .dv-property-offer-copy strong{\r\n    font-size:17px;\r\n  }\r\n\r\n}\r\n\r\n\r\n\/* MOBILE *\/\r\n\r\n@media(max-width:600px){\r\n\r\n  .dv-property-offer{\r\n    gap:10px;\r\n\r\n    padding:12px;\r\n\r\n    border-radius:13px;\r\n  }\r\n\r\n  .dv-property-offer-copy{\r\n    gap:2px;\r\n  }\r\n\r\n  .dv-property-offer-copy strong{\r\n    font-size:14px;\r\n    line-height:1.2;\r\n  }\r\n\r\n  .dv-property-offer-copy span{\r\n    font-size:10.5px;\r\n    line-height:1.25;\r\n  }\r\n\r\n  .dv-property-offer-button{\r\n    min-height:37px;\r\n\r\n    padding:8px 10px;\r\n\r\n    border-radius:8px;\r\n\r\n    font-size:10.5px;\r\n  }\r\n\r\n  .dv-property-offer-button b{\r\n    font-size:12px;\r\n  }\r\n\r\n}\r\n\r\n\r\n\/* SMALL MOBILE *\/\r\n\r\n@media(max-width:380px){\r\n\r\n  .dv-property-offer{\r\n    gap:8px;\r\n\r\n    padding:10px;\r\n  }\r\n\r\n  .dv-property-offer-copy strong{\r\n    font-size:13px;\r\n  }\r\n\r\n  .dv-property-offer-copy span{\r\n    font-size:9.5px;\r\n  }\r\n\r\n  .dv-property-offer-button{\r\n    padding:7px 8px;\r\n\r\n    font-size:10px;\r\n  }\r\n\r\n}\r\n\r\n<\/style>\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<div class=\"elementor-element elementor-element-7153843 e-flex e-con-boxed e-con e-parent\" data-id=\"7153843\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-29dc659 elementor-widget elementor-widget-html\" data-id=\"29dc659\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section class=\"dv-partners\">\r\n\r\n  <div class=\"dv-partners-head\">\r\n\r\n    <span>\u041f\u0430\u0440\u0442\u043d\u0451\u0440\u044b DATVALE.GE<\/span>\r\n\r\n    <h2>\u0421\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/h2>\r\n\r\n    <p>\r\n      \u0412\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435\u0441\u044c \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439-\u043f\u0430\u0440\u0442\u043d\u0451\u0440\u043e\u0432 Datvale\r\n      \u0432 \u0441\u0444\u0435\u0440\u0435 \u0440\u0435\u043c\u043e\u043d\u0442\u0430, \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0438 \u0438\u043d\u0442\u0435\u0440\u044c\u0435\u0440\u0430.\r\n    <\/p>\r\n\r\n  <\/div>\r\n\r\n\r\n  <div class=\"dv-partners-grid\">\r\n\r\n\r\n    <!-- NEW LIGHT -->\r\n\r\n    <article class=\"dv-card\">\r\n\r\n      <div class=\"dv-logo\">\r\n\r\n        <img decoding=\"async\"\r\n          src=\"https:\/\/datvale.ge\/wp-content\/uploads\/2025\/06\/dbd6fc01-a56b-490f-b2a5-59f3445fe63a.jpg\"\r\n          alt=\"New Light\"\r\n          loading=\"lazy\"\r\n        >\r\n\r\n        <span class=\"dv-badge\">\r\n          -15%\r\n        <\/span>\r\n\r\n      <\/div>\r\n\r\n\r\n      <button\r\n        class=\"dv-toggle\"\r\n        type=\"button\"\r\n        aria-expanded=\"false\"\r\n      >\r\n        \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435\r\n      <\/button>\r\n\r\n\r\n      <div class=\"dv-details\">\r\n\r\n        <h3>New Light<\/h3>\r\n\r\n\r\n        <div class=\"dv-type\">\r\n          \u041c\u0430\u0433\u0430\u0437\u0438\u043d \u043e\u0441\u0432\u0435\u0449\u0435\u043d\u0438\u044f\r\n        <\/div>\r\n\r\n\r\n        <p>\r\n          \u0428\u0438\u0440\u043e\u043a\u0438\u0439 \u0432\u044b\u0431\u043e\u0440 \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0445 \u0431\u0440\u0435\u043d\u0434\u043e\u0432 \u043e\u0441\u0432\u0435\u0449\u0435\u043d\u0438\u044f, \u0432\u043a\u043b\u044e\u0447\u0430\u044f\r\n          Philips, Eglo, Artemide, Luceplan, Vibia, Osram \u0438 \u0434\u0440\u0443\u0433\u0438\u0435.\r\n        <\/p>\r\n\r\n\r\n        <div class=\"dv-links\">\r\n\r\n          <a href=\"https:\/\/newlight.ge\/\" target=\"_blank\" rel=\"noopener\">\r\n            newlight.ge\r\n          <\/a>\r\n\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n    <\/article>\r\n\r\n\r\n\r\n    <!-- NOVA -->\r\n\r\n    <article class=\"dv-card\">\r\n\r\n      <div class=\"dv-logo\">\r\n\r\n        <img decoding=\"async\"\r\n          src=\"https:\/\/datvale.ge\/wp-content\/uploads\/2025\/08\/\u10da\u10dd\u10d2\u10dd\u10d4\u10d1\u10d8-26-2.png\"\r\n          alt=\"Nova\"\r\n          loading=\"lazy\"\r\n        >\r\n\r\n        <span class=\"dv-badge\">\r\n          \u0434\u043e 20%\r\n        <\/span>\r\n\r\n      <\/div>\r\n\r\n\r\n      <button\r\n        class=\"dv-toggle\"\r\n        type=\"button\"\r\n        aria-expanded=\"false\"\r\n      >\r\n        \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435\r\n      <\/button>\r\n\r\n\r\n      <div class=\"dv-details\">\r\n\r\n        <h3>Nova<\/h3>\r\n\r\n\r\n        <div class=\"dv-type\">\r\n          \u0413\u0438\u043f\u0435\u0440\u043c\u0430\u0440\u043a\u0435\u0442 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0438 \u043e\u0442\u0434\u0435\u043b\u043e\u0447\u043d\u044b\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432\r\n        <\/div>\r\n\r\n\r\n        <p>\r\n          \u0428\u0438\u0440\u043e\u043a\u0438\u0439 \u0430\u0441\u0441\u043e\u0440\u0442\u0438\u043c\u0435\u043d\u0442 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0438 \u043e\u0442\u0434\u0435\u043b\u043e\u0447\u043d\u044b\u0445 \u0442\u043e\u0432\u0430\u0440\u043e\u0432,\r\n          \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u0438 \u043f\u0440\u043e\u0434\u0443\u043a\u0446\u0438\u044f \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0445 \u0431\u0440\u0435\u043d\u0434\u043e\u0432\r\n          \u0434\u043b\u044f \u0440\u0435\u043c\u043e\u043d\u0442\u0430 \u0438 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430.\r\n        <\/p>\r\n\r\n\r\n        <div class=\"dv-links\">\r\n\r\n          <a href=\"https:\/\/nova.ge\/\" target=\"_blank\" rel=\"noopener\">\r\n            nova.ge\r\n          <\/a>\r\n\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n    <\/article>\r\n\r\n\r\n\r\n    <!-- VITRA -->\r\n\r\n    <article class=\"dv-card\">\r\n\r\n      <div class=\"dv-logo\">\r\n\r\n        <img decoding=\"async\"\r\n          src=\"https:\/\/datvale.ge\/wp-content\/uploads\/2025\/06\/\u10da\u10dd\u10d2\u10dd\u10d4\u10d1\u10d8-28.png\"\r\n          alt=\"VitrA Georgia\"\r\n          loading=\"lazy\"\r\n        >\r\n\r\n        <span class=\"dv-badge\">\r\n          -15%\r\n        <\/span>\r\n\r\n      <\/div>\r\n\r\n\r\n      <button\r\n        class=\"dv-toggle\"\r\n        type=\"button\"\r\n        aria-expanded=\"false\"\r\n      >\r\n        \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435\r\n      <\/button>\r\n\r\n\r\n      <div class=\"dv-details\">\r\n\r\n        <h3>VitrA Georgia<\/h3>\r\n\r\n\r\n        <div class=\"dv-type\">\r\n          \u0421\u0430\u043d\u0442\u0435\u0445\u043d\u0438\u043a\u0430 \u0438 \u043a\u0435\u0440\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u043b\u0438\u0442\u043a\u0430\r\n        <\/div>\r\n\r\n\r\n        <p>\r\n          \u0428\u0438\u0440\u043e\u043a\u0438\u0439 \u0432\u044b\u0431\u043e\u0440 \u0441\u0430\u043d\u0442\u0435\u0445\u043d\u0438\u043a\u0438 \u0438 \u043a\u0435\u0440\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043f\u043b\u0438\u0442\u043a\u0438\r\n          \u0434\u043b\u044f \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0433\u043e \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043e\u0431\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0432\u0430\u043d\u043d\u043e\u0439 \u043a\u043e\u043c\u043d\u0430\u0442\u044b.\r\n        <\/p>\r\n\r\n\r\n        <div class=\"dv-links\">\r\n\r\n          <a href=\"https:\/\/vitra.com.ge\/ka\/\" target=\"_blank\" rel=\"noopener\">\r\n            vitra.com.ge\r\n          <\/a>\r\n\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n    <\/article>\r\n\r\n\r\n\r\n    <!-- CAPAROL -->\r\n\r\n    <article class=\"dv-card\">\r\n\r\n      <div class=\"dv-logo\">\r\n\r\n        <img decoding=\"async\"\r\n          src=\"https:\/\/datvale.ge\/wp-content\/uploads\/2025\/10\/24.09.2025-33.png\"\r\n          alt=\"Caparol\"\r\n          loading=\"lazy\"\r\n        >\r\n\r\n        <span class=\"dv-badge\">\r\n          -10%\r\n        <\/span>\r\n\r\n      <\/div>\r\n\r\n\r\n      <button\r\n        class=\"dv-toggle\"\r\n        type=\"button\"\r\n        aria-expanded=\"false\"\r\n      >\r\n        \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435\r\n      <\/button>\r\n\r\n\r\n      <div class=\"dv-details\">\r\n\r\n        <h3>Caparol<\/h3>\r\n\r\n\r\n        <div class=\"dv-type\">\r\n          \u041a\u0440\u0430\u0441\u043a\u0438 \u0438 \u043e\u0442\u0434\u0435\u043b\u043e\u0447\u043d\u044b\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b\r\n        <\/div>\r\n\r\n\r\n        <p>\r\n          \u041c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0439 \u0431\u0440\u0435\u043d\u0434 \u0438\u043d\u0442\u0435\u0440\u044c\u0435\u0440\u043d\u044b\u0445 \u0438 \u0444\u0430\u0441\u0430\u0434\u043d\u044b\u0445 \u043a\u0440\u0430\u0441\u043e\u043a,\r\n          \u0434\u0435\u043a\u043e\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0438 \u043e\u0442\u0434\u0435\u043b\u043e\u0447\u043d\u044b\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432.\r\n        <\/p>\r\n\r\n\r\n        <div class=\"dv-address\">\r\n\r\n          <span>\r\n            \u0422\u0431\u0438\u043b\u0438\u0441\u0438 \u2014 \u0443\u043b. \u041f\u0435\u0442\u0440\u0435 \u041a\u0430\u0432\u0442\u0430\u0440\u0430\u0434\u0437\u0435, 8 \u2022 599 44 55 67\r\n          <\/span>\r\n\r\n          <span>\r\n            \u0422\u0431\u0438\u043b\u0438\u0441\u0438 \u2014 \u0443\u043b. \u0421\u0430\u043c\u0442\u0440\u0435\u0434\u0438\u0430, 15 \u2022 599 58 26 25\r\n          <\/span>\r\n\r\n          <span>\r\n            \u0411\u0430\u0442\u0443\u043c\u0438 \u2014 \u0443\u043b. \u041f\u0443\u0448\u043a\u0438\u043d\u0430, 35 \u2022 558 04 04 96\r\n          <\/span>\r\n\r\n        <\/div>\r\n\r\n\r\n        <div class=\"dv-links\">\r\n\r\n          <a href=\"https:\/\/caparol.ge\" target=\"_blank\" rel=\"noopener\">\r\n            caparol.ge\r\n          <\/a>\r\n\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n    <\/article>\r\n\r\n\r\n  <\/div>\r\n\r\n\r\n  <!-- \u0412\u0441\u0435 \u043f\u0430\u0440\u0442\u043d\u0451\u0440\u044b -->\r\n\r\n  <div class=\"dv-all-partners\">\r\n\r\n    <a href=\"https:\/\/datvale.ge\/ru\/partners\/\">\r\n      \u0412\u0441\u0435 \u043f\u0430\u0440\u0442\u043d\u0451\u0440\u044b\r\n    <\/a>\r\n\r\n  <\/div>\r\n\r\n<\/section>\r\n\r\n\r\n<style>\r\n\r\n.dv-partners,\r\n.dv-partners *{\r\n  box-sizing:border-box;\r\n}\r\n\r\n\r\n.dv-partners{\r\n  --blue:#0b4187;\r\n  --blue2:#176bc5;\r\n  --text:#173a61;\r\n  --muted:#65788c;\r\n  --border:#e1e9f2;\r\n  --light:#f7faff;\r\n\r\n  width:100%;\r\n  max-width:1200px;\r\n\r\n  margin:40px auto;\r\n  padding:0 15px;\r\n\r\n  font-family:\r\n    system-ui,\r\n    -apple-system,\r\n    BlinkMacSystemFont,\r\n    \"Segoe UI\",\r\n    sans-serif;\r\n}\r\n\r\n\r\n\/* HEADER *\/\r\n\r\n.dv-partners-head{\r\n  max-width:760px;\r\n\r\n  margin:0 auto 28px;\r\n\r\n  text-align:center;\r\n}\r\n\r\n\r\n.dv-partners-head > span{\r\n  display:block;\r\n\r\n  margin-bottom:7px;\r\n\r\n  color:var(--blue2);\r\n\r\n  font-size:12px;\r\n  font-weight:900;\r\n  letter-spacing:.08em;\r\n}\r\n\r\n\r\n.dv-partners-head h2{\r\n  margin:0 0 9px;\r\n\r\n  color:var(--text);\r\n\r\n  font-size:clamp(27px,4vw,38px);\r\n  line-height:1.15;\r\n  font-weight:950;\r\n}\r\n\r\n\r\n.dv-partners-head p{\r\n  margin:0;\r\n\r\n  color:var(--muted);\r\n\r\n  font-size:15px;\r\n  line-height:1.6;\r\n}\r\n\r\n\r\n\/* GRID *\/\r\n\r\n.dv-partners-grid{\r\n  display:grid;\r\n\r\n  grid-template-columns:\r\n    repeat(4,minmax(0,1fr));\r\n\r\n  gap:16px;\r\n\r\n  align-items:start;\r\n}\r\n\r\n\r\n\/* CARD *\/\r\n\r\n.dv-card{\r\n  position:relative;\r\n\r\n  width:100%;\r\n  height:220px;\r\n\r\n  overflow:hidden;\r\n\r\n  border:\r\n    1px solid var(--border);\r\n\r\n  border-radius:20px;\r\n\r\n  background:#fff;\r\n\r\n  box-shadow:\r\n    0 8px 28px rgba(27,61,98,.08);\r\n\r\n  transition:\r\n    transform .22s ease,\r\n    box-shadow .22s ease,\r\n    border-color .22s ease;\r\n}\r\n\r\n\r\n.dv-card:hover{\r\n  transform:translateY(-3px);\r\n\r\n  border-color:#cfdeed;\r\n\r\n  box-shadow:\r\n    0 15px 36px rgba(27,61,98,.13);\r\n}\r\n\r\n\r\n.dv-card.dv-open{\r\n  height:auto;\r\n  overflow:visible;\r\n}\r\n\r\n\r\n\/* LOGO *\/\r\n\r\n.dv-logo{\r\n  position:relative;\r\n\r\n  display:flex;\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  width:100%;\r\n  height:158px;\r\n\r\n  padding:20px;\r\n\r\n  background:#fff;\r\n}\r\n\r\n\r\n.dv-logo img{\r\n  display:block;\r\n\r\n  width:auto;\r\n  height:auto;\r\n\r\n  max-width:100%;\r\n  max-height:105px;\r\n\r\n  object-fit:contain;\r\n}\r\n\r\n\r\n\/* BADGE *\/\r\n\r\n.dv-badge{\r\n  position:absolute;\r\n\r\n  top:12px;\r\n  right:12px;\r\n\r\n  z-index:2;\r\n\r\n  display:flex;\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  min-height:31px;\r\n\r\n  padding:6px 10px;\r\n\r\n  border-radius:100px;\r\n\r\n  background:\r\n    linear-gradient(\r\n      135deg,\r\n      var(--blue),\r\n      var(--blue2)\r\n    );\r\n\r\n  color:#fff;\r\n\r\n  font-size:11px;\r\n  line-height:1;\r\n  font-weight:950;\r\n\r\n  box-shadow:\r\n    0 6px 15px rgba(11,65,135,.23);\r\n}\r\n\r\n\r\n\/* BUTTON *\/\r\n\r\n.dv-toggle{\r\n  display:flex;\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  width:calc(100% - 28px);\r\n  height:46px;\r\n\r\n  margin:0 14px 16px;\r\n\r\n  padding:10px 12px;\r\n\r\n  border:0;\r\n\r\n  border-radius:12px;\r\n\r\n  background:\r\n    linear-gradient(\r\n      135deg,\r\n      var(--blue),\r\n      var(--blue2)\r\n    );\r\n\r\n  color:#fff;\r\n\r\n  font:inherit;\r\n\r\n  font-size:13px;\r\n  font-weight:900;\r\n\r\n  cursor:pointer;\r\n\r\n  box-shadow:\r\n    0 7px 18px rgba(11,65,135,.18);\r\n\r\n  transition:\r\n    transform .2s ease,\r\n    box-shadow .2s ease,\r\n    background .2s ease;\r\n}\r\n\r\n\r\n.dv-toggle:hover{\r\n  transform:translateY(-1px);\r\n\r\n  box-shadow:\r\n    0 10px 23px rgba(11,65,135,.25);\r\n}\r\n\r\n\r\n\/* DETAILS *\/\r\n\r\n.dv-details{\r\n  display:none;\r\n\r\n  padding:18px;\r\n\r\n  border-top:\r\n    1px solid var(--border);\r\n\r\n  background:var(--light);\r\n}\r\n\r\n\r\n.dv-card.dv-open .dv-details{\r\n  display:block;\r\n}\r\n\r\n\r\n\/* OPEN BUTTON *\/\r\n\r\n.dv-card.dv-open .dv-toggle{\r\n  margin-bottom:14px;\r\n\r\n  background:#eaf2fb;\r\n\r\n  color:var(--blue);\r\n\r\n  box-shadow:none;\r\n}\r\n\r\n\r\n\/* NAME *\/\r\n\r\n.dv-details h3{\r\n  margin:0 0 7px;\r\n\r\n  color:var(--text);\r\n\r\n  font-size:18px;\r\n  line-height:1.3;\r\n  font-weight:950;\r\n}\r\n\r\n\r\n\/* TYPE *\/\r\n\r\n.dv-type{\r\n  display:inline-block;\r\n\r\n  margin-bottom:12px;\r\n\r\n  padding:5px 9px;\r\n\r\n  border-radius:7px;\r\n\r\n  background:#e8f1fb;\r\n\r\n  color:var(--blue);\r\n\r\n  font-size:11px;\r\n  line-height:1.35;\r\n  font-weight:850;\r\n}\r\n\r\n\r\n\/* DESCRIPTION *\/\r\n\r\n.dv-details p{\r\n  margin:0;\r\n\r\n  color:#49637d;\r\n\r\n  font-size:13px;\r\n  line-height:1.62;\r\n}\r\n\r\n\r\n\/* LINKS *\/\r\n\r\n.dv-links{\r\n  display:flex;\r\n  flex-wrap:wrap;\r\n\r\n  gap:8px;\r\n\r\n  margin-top:14px;\r\n}\r\n\r\n\r\n.dv-links a{\r\n  display:flex;\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  flex:1 1 auto;\r\n\r\n  min-height:40px;\r\n\r\n  padding:9px 12px;\r\n\r\n  border:\r\n    1px solid #d2dfed;\r\n\r\n  border-radius:10px;\r\n\r\n  background:#fff;\r\n\r\n  color:\r\n    var(--blue)!important;\r\n\r\n  font-size:12px;\r\n  font-weight:900;\r\n\r\n  text-decoration:none!important;\r\n\r\n  transition:\r\n    background .2s ease,\r\n    border-color .2s ease;\r\n}\r\n\r\n\r\n.dv-links a:hover{\r\n  background:#edf5fd;\r\n\r\n  border-color:#bcd2e8;\r\n}\r\n\r\n\r\n\/* CAPAROL ADDRESSES *\/\r\n\r\n.dv-address{\r\n  display:flex;\r\n  flex-direction:column;\r\n\r\n  gap:6px;\r\n\r\n  margin-top:13px;\r\n}\r\n\r\n\r\n.dv-address span{\r\n  display:block;\r\n\r\n  padding:8px 10px;\r\n\r\n  border:\r\n    1px solid #e2eaf3;\r\n\r\n  border-radius:9px;\r\n\r\n  background:#fff;\r\n\r\n  color:#526a82;\r\n\r\n  font-size:11px;\r\n  line-height:1.45;\r\n}\r\n\r\n\r\n\/* ALL PARTNERS BUTTON *\/\r\n\r\n.dv-all-partners{\r\n  display:flex;\r\n  justify-content:center;\r\n\r\n  margin-top:22px;\r\n}\r\n\r\n\r\n.dv-all-partners a{\r\n  display:inline-flex;\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  min-height:46px;\r\n\r\n  padding:10px 22px;\r\n\r\n  border-radius:12px;\r\n\r\n  background:\r\n    linear-gradient(\r\n      135deg,\r\n      var(--blue),\r\n      var(--blue2)\r\n    );\r\n\r\n  color:#fff!important;\r\n\r\n  font-size:13px;\r\n  font-weight:900;\r\n\r\n  text-decoration:none!important;\r\n\r\n  box-shadow:\r\n    0 7px 18px rgba(11,65,135,.18);\r\n\r\n  transition:\r\n    transform .2s ease,\r\n    box-shadow .2s ease;\r\n}\r\n\r\n\r\n.dv-all-partners a:hover{\r\n  transform:translateY(-1px);\r\n\r\n  box-shadow:\r\n    0 10px 23px rgba(11,65,135,.25);\r\n}\r\n\r\n\r\n\/* TABLET *\/\r\n\r\n@media(max-width:950px){\r\n\r\n  .dv-partners-grid{\r\n    grid-template-columns:\r\n      repeat(2,minmax(0,1fr));\r\n  }\r\n\r\n}\r\n\r\n\r\n\/* MOBILE *\/\r\n\r\n@media(max-width:700px){\r\n\r\n  .dv-partners{\r\n    margin:28px auto;\r\n\r\n    padding:0 9px;\r\n  }\r\n\r\n\r\n  .dv-partners-head{\r\n    margin-bottom:20px;\r\n  }\r\n\r\n\r\n  .dv-partners-head p{\r\n    font-size:14px;\r\n  }\r\n\r\n\r\n  .dv-partners-grid{\r\n    grid-template-columns:\r\n      repeat(2,minmax(0,1fr));\r\n\r\n    gap:10px;\r\n  }\r\n\r\n\r\n  .dv-card{\r\n    height:174px;\r\n\r\n    border-radius:15px;\r\n  }\r\n\r\n\r\n  .dv-logo{\r\n    height:120px;\r\n\r\n    padding:12px;\r\n  }\r\n\r\n\r\n  .dv-logo img{\r\n    max-height:82px;\r\n  }\r\n\r\n\r\n  .dv-badge{\r\n    top:7px;\r\n    right:7px;\r\n\r\n    min-height:25px;\r\n\r\n    padding:5px 7px;\r\n\r\n    font-size:9px;\r\n  }\r\n\r\n\r\n  .dv-toggle{\r\n    width:calc(100% - 16px);\r\n    height:40px;\r\n\r\n    margin:0 8px 14px;\r\n\r\n    padding:7px;\r\n\r\n    border-radius:9px;\r\n\r\n    font-size:10.5px;\r\n  }\r\n\r\n\r\n  .dv-details{\r\n    padding:14px 11px;\r\n  }\r\n\r\n\r\n  .dv-details h3{\r\n    font-size:16px;\r\n  }\r\n\r\n\r\n  .dv-type{\r\n    margin-bottom:10px;\r\n\r\n    font-size:10px;\r\n  }\r\n\r\n\r\n  .dv-details p{\r\n    font-size:11.5px;\r\n\r\n    line-height:1.6;\r\n  }\r\n\r\n\r\n  .dv-links{\r\n    flex-direction:column;\r\n  }\r\n\r\n\r\n  .dv-links a{\r\n    width:100%;\r\n  }\r\n\r\n\r\n  .dv-address span{\r\n    font-size:10.5px;\r\n  }\r\n\r\n\r\n  .dv-all-partners{\r\n    margin-top:18px;\r\n  }\r\n\r\n\r\n  .dv-all-partners a{\r\n    min-height:42px;\r\n\r\n    padding:9px 18px;\r\n\r\n    font-size:11px;\r\n  }\r\n\r\n}\r\n\r\n\r\n\/* VERY SMALL MOBILE *\/\r\n\r\n@media(max-width:340px){\r\n\r\n  .dv-partners-grid{\r\n    grid-template-columns:1fr;\r\n  }\r\n\r\n}\r\n\r\n<\/style>\r\n\r\n\r\n<script>\r\n\r\n(function(){\r\n\r\n  const section =\r\n    document.querySelector('.dv-partners');\r\n\r\n\r\n  if(!section){\r\n    return;\r\n  }\r\n\r\n\r\n  const buttons =\r\n    section.querySelectorAll('.dv-toggle');\r\n\r\n\r\n  buttons.forEach(function(button){\r\n\r\n    button.addEventListener(\r\n      'click',\r\n      function(){\r\n\r\n        const card =\r\n          button.closest('.dv-card');\r\n\r\n\r\n        const isOpen =\r\n          card.classList.contains('dv-open');\r\n\r\n\r\n        \/*\r\n         * \u10e7\u10d5\u10d4\u10da\u10d0 \u10d2\u10d0\u10ee\u10e1\u10dc\u10d8\u10da\u10d8 \u10d1\u10d0\u10e0\u10d0\u10d7\u10d8\u10e1 \u10d3\u10d0\u10ee\u10e3\u10e0\u10d5\u10d0\r\n         *\/\r\n\r\n        section\r\n          .querySelectorAll('.dv-card.dv-open')\r\n          .forEach(function(openCard){\r\n\r\n            openCard\r\n              .classList\r\n              .remove('dv-open');\r\n\r\n\r\n            const openButton =\r\n              openCard.querySelector('.dv-toggle');\r\n\r\n\r\n            if(openButton){\r\n\r\n              openButton.textContent =\r\n                '\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435';\r\n\r\n\r\n              openButton.setAttribute(\r\n                'aria-expanded',\r\n                'false'\r\n              );\r\n\r\n            }\r\n\r\n          });\r\n\r\n\r\n        \/*\r\n         * \u10d0\u10e0\u10e9\u10d4\u10e3\u10da\u10d8 \u10d1\u10d0\u10e0\u10d0\u10d7\u10d8\u10e1 \u10d2\u10d0\u10ee\u10e1\u10dc\u10d0\r\n         *\/\r\n\r\n        if(!isOpen){\r\n\r\n          card\r\n            .classList\r\n            .add('dv-open');\r\n\r\n\r\n          button.textContent =\r\n            '\u0421\u043a\u0440\u044b\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435';\r\n\r\n\r\n          button.setAttribute(\r\n            'aria-expanded',\r\n            'true'\r\n          );\r\n\r\n        }\r\n\r\n      }\r\n    );\r\n\r\n  });\r\n\r\n})();\r\n\r\n<\/script>\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<div class=\"elementor-element elementor-element-8c7397b e-flex e-con-boxed e-con e-parent\" data-id=\"8c7397b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d64c95d e-flex e-con-boxed e-con e-parent\" data-id=\"d64c95d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d972221 elementor-widget elementor-widget-text-editor\" data-id=\"d972221\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430<\/h2>\n<p>\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0435\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u0432, \u043e\u0431\u044a\u0451\u043c\u0430 \u0432\u043e\u0434\u044b, \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f, \u0441\u0435\u0437\u043e\u043d\u0430 \u0438 \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f. \u0420\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0435 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043e\u0447\u0438\u0441\u0442\u043a\u0443 \u0432\u043e\u0434\u044b, \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438, \u043e\u0447\u0438\u0441\u0442\u043a\u0443 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u0435\u0439 \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435 \u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0431\u0430\u043b\u0430\u043d\u0441\u0430 \u0432\u043e\u0434\u044b.<\/p>\n<p>\u041a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 Datvale \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u0443\u044e \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f. \u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0438 \u0431\u044b\u0441\u0442\u0440\u043e \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u044b\u0435 \u0440\u0430\u0441\u0445\u043e\u0434\u044b \u043e\u043d\u043b\u0430\u0439\u043d.<\/p>\n<h2>\u0421\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u043e\u0438\u0442 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430?<\/h2>\n<p>\u041d\u0430 \u0432\u043e\u043f\u0440\u043e\u0441 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u043e\u0438\u0442 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u043d\u0435\u0442 \u0435\u0434\u0438\u043d\u043e\u0433\u043e \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043e\u0442\u0432\u0435\u0442\u0430. \u0418\u0442\u043e\u0433\u043e\u0432\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043e\u0431\u044a\u0451\u043c\u0430 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430, \u0441\u0442\u0435\u043f\u0435\u043d\u0438 \u0437\u0430\u0433\u0440\u044f\u0437\u043d\u0435\u043d\u0438\u044f, \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432\u043e\u0434\u044b \u0438 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u0440\u0430\u0431\u043e\u0442.<\/p>\n<p>\u041e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u0447\u0430\u0441\u0442\u043d\u043e\u0433\u043e \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u043e\u0434\u044b, \u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u0438 \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438.<\/p>\n<p>\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430.<\/p>\n<h2>\u041e\u0447\u0438\u0441\u0442\u043a\u0430 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430<\/h2>\n<p>\u041e\u0447\u0438\u0441\u0442\u043a\u0430 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0433\u043e \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f. \u041d\u0430 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u0438 \u0432\u043e\u0434\u044b \u043c\u043e\u0433\u0443\u0442 \u0441\u043a\u0430\u043f\u043b\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u043b\u0438\u0441\u0442\u044c\u044f, \u043f\u044b\u043b\u044c \u0438 \u0434\u0440\u0443\u0433\u043e\u0439 \u043c\u0443\u0441\u043e\u0440, \u0430 \u043d\u0430 \u0441\u0442\u0435\u043d\u043a\u0430\u0445 \u0438 \u0434\u043d\u0435 \u0441\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442\u0441\u044f \u043d\u0430\u043b\u0451\u0442.<\/p>\n<p>\u041e\u0447\u0438\u0441\u0442\u043a\u0430 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u043c\u043e\u0436\u0435\u0442 \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043c\u0443\u0441\u043e\u0440\u0430 \u0441 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u0438, \u0447\u0438\u0441\u0442\u043a\u0443 \u0434\u043d\u0430 \u0438 \u0441\u0442\u0435\u043d\u043e\u043a, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438.<\/p>\n<p>\u0420\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u0430\u044f \u043e\u0447\u0438\u0441\u0442\u043a\u0430 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u0447\u0438\u0441\u0442\u043e\u0442\u0443 \u0432\u043e\u0434\u044b \u0438 \u0441\u043d\u0438\u0436\u0430\u0435\u0442 \u0440\u0438\u0441\u043a \u0441\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0437\u0430\u0433\u0440\u044f\u0437\u043d\u0435\u043d\u0438\u044f.<\/p>\n<h2>\u0425\u0438\u043c\u0438\u044f \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430<\/h2>\n<p>\u0425\u0438\u043c\u0438\u044f \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0430 \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430 \u0432\u043e\u0434\u044b \u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u043a\u0443\u043f\u0430\u043d\u0438\u044f. \u0412\u0430\u0436\u043d\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0432\u043e\u0434\u044b \u0438 \u043f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0445.<\/p>\n<p>\u0414\u043b\u044f \u0443\u0445\u043e\u0434\u0430 \u0437\u0430 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u043e\u043c \u043c\u043e\u0433\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u0435\u0437\u0438\u043d\u0444\u0438\u0446\u0438\u0440\u0443\u044e\u0449\u0438\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430, \u043f\u0440\u0435\u043f\u0430\u0440\u0430\u0442\u044b \u0434\u043b\u044f \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f pH \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u044b.<\/p>\n<p>\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043e\u0431\u044a\u0451\u043c\u0430 \u0432\u043e\u0434\u044b, \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0435\u0439 \u0441\u0440\u0435\u0434\u044b \u0438 \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430.<\/p>\n<h2>\u041e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430<\/h2>\n<p>\u041e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0438 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u0447\u0438\u0441\u0442\u043e\u0442\u044b \u0432\u043e\u0434\u044b. \u0414\u043b\u044f \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0443\u0445\u043e\u0434\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043b\u0435\u0434\u0438\u0442\u044c \u0437\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u043c \u0432\u043e\u0434\u044b, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0437\u0430 \u0438\u0441\u043f\u0440\u0430\u0432\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 \u0438 \u0446\u0438\u0440\u043a\u0443\u043b\u044f\u0446\u0438\u0438.<\/p>\n<p>\u041f\u0440\u0438 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u043c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u044e\u0442 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0432\u043e\u0434\u044b, \u043e\u0447\u0438\u0449\u0430\u044e\u0442 \u0431\u0430\u0441\u0441\u0435\u0439\u043d \u0438 \u043f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0443\u044e \u0445\u0438\u043c\u0438\u044e \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430.<\/p>\n<p>\u0421\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0443\u0445\u043e\u0434 \u043f\u0440\u043e\u0449\u0435, \u0447\u0435\u043c \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0438\u043b\u044c\u043d\u043e \u0437\u0430\u0433\u0440\u044f\u0437\u043d\u0451\u043d\u043d\u043e\u0433\u043e \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e.<\/p>\n<h2>\u0418\u0437 \u0447\u0435\u0433\u043e \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430?<\/h2>\n<p>\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u043c\u043e\u0436\u0435\u0442 \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0432\u0438\u0434\u043e\u0432 \u0440\u0430\u0431\u043e\u0442:<\/p>\n<ul>\n<li>\n<div>\n<div>\n<p>\u041e\u0447\u0438\u0441\u0442\u043a\u0443 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u0438 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430.<\/p>\n<\/div>\n<\/div>\n<\/li>\n<li>\n<div>\n<div>\n<p>\u0427\u0438\u0441\u0442\u043a\u0443 \u0434\u043d\u0430 \u0438 \u0441\u0442\u0435\u043d\u043e\u043a.<\/p>\n<\/div>\n<\/div>\n<\/li>\n<li>\n<div>\n<div>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438.<\/p>\n<\/div>\n<\/div>\n<\/li>\n<li>\n<div>\n<div>\n<p>\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0432\u043e\u0434\u044b.<\/p>\n<\/div>\n<\/div>\n<\/li>\n<li>\n<div>\n<div>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0445\u0438\u043c\u0438\u0438 \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430.<\/p>\n<\/div>\n<\/div>\n<\/li>\n<li>\n<div>\n<div>\n<p>\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043e\u0447\u0438\u0441\u0442\u043a\u0443 \u043f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438.<\/p>\n<\/div>\n<\/div>\n<\/li>\n<\/ul>\n<p>\u0418\u0442\u043e\u0433\u043e\u0432\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0438 \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0433\u043e \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f.<\/p>\n<h2>\u0427\u0442\u043e \u0432\u043b\u0438\u044f\u0435\u0442 \u043d\u0430 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430?<\/h2>\n<p>\u041e\u0434\u0438\u043d \u0438\u0437 \u0433\u043b\u0430\u0432\u043d\u044b\u0445 \u0444\u0430\u043a\u0442\u043e\u0440\u043e\u0432 &#8211; \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0438 \u043e\u0431\u044a\u0451\u043c \u0432\u043e\u0434\u044b. \u0427\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0431\u0430\u0441\u0441\u0435\u0439\u043d, \u0442\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0443\u0445\u043e\u0434\u0430 \u0437\u0430 \u043d\u0438\u043c.<\/p>\n<p>\u0422\u0430\u043a\u0436\u0435 \u0432\u0430\u0436\u043d\u043e, \u043a\u0430\u043a \u0447\u0430\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d, \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043b\u0438 \u043e\u043d \u043d\u0430 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u043c \u0432\u043e\u0437\u0434\u0443\u0445\u0435 \u0438 \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0431\u044b\u0441\u0442\u0440\u043e \u0437\u0430\u0433\u0440\u044f\u0437\u043d\u044f\u0435\u0442\u0441\u044f \u0432\u043e\u0434\u0430.<\/p>\n<p>\u0412 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u044d\u0442\u0438\u0445 \u0444\u0430\u043a\u0442\u043e\u0440\u043e\u0432 \u043c\u0435\u043d\u044f\u044e\u0442\u0441\u044f \u0437\u0430\u0442\u0440\u0430\u0442\u044b \u043d\u0430 \u043e\u0447\u0438\u0441\u0442\u043a\u0443 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0443\u044e \u0445\u0438\u043c\u0438\u044e \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0438 \u0438\u0442\u043e\u0433\u043e\u0432\u0443\u044e \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f.<\/p>\n<h2>\u041a\u0430\u043a \u0447\u0430\u0441\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0447\u0438\u0441\u0442\u0438\u0442\u044c \u0431\u0430\u0441\u0441\u0435\u0439\u043d?<\/h2>\n<p>\u041e\u0447\u0438\u0441\u0442\u043a\u0443 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0432 \u043f\u0435\u0440\u0438\u043e\u0434 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f.<\/p>\n<p>\u0412 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0445 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430\u0445 \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u043d\u0430\u043a\u0430\u043f\u043b\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u043c\u0443\u0441\u043e\u0440 \u0438 \u043f\u044b\u043b\u044c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0431\u043e\u043b\u0435\u0435 \u0447\u0430\u0441\u0442\u0430\u044f \u043e\u0447\u0438\u0441\u0442\u043a\u0430. \u0412 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0445 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430\u0445 \u0437\u0430\u0433\u0440\u044f\u0437\u043d\u0435\u043d\u0438\u0435 \u043e\u0431\u044b\u0447\u043d\u043e \u043c\u0435\u043d\u044c\u0448\u0435, \u043e\u0434\u043d\u0430\u043a\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430 \u0432\u043e\u0434\u044b \u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c.<\/p>\n<p>\u0427\u0430\u0441\u0442\u043e\u0442\u0430 \u043e\u0447\u0438\u0441\u0442\u043a\u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430, \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0435\u0439 \u0441\u0440\u0435\u0434\u044b \u0438 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438.<\/p>\n<h2>\u041f\u043e\u0447\u0435\u043c\u0443 \u0432\u0430\u0436\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0445\u0438\u043c\u0438\u044e \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430?<\/h2>\n<p>\u0425\u0438\u043c\u0438\u044e \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0438 \u0432 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430\u0445. \u0418\u0437\u0431\u044b\u0442\u043e\u043a \u0438\u043b\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u043a \u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0432\u043e\u0434\u044b.<\/p>\n<p>\u0412\u0430\u0436\u043d\u043e \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0432\u043e\u0434\u044b \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u043c\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f.<\/p>\n<p>\u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0441\u043e\u0447\u0435\u0442\u0430\u0435\u0442 \u043c\u0435\u0445\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043e\u0447\u0438\u0441\u0442\u043a\u0443 \u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432\u043e\u0434\u044b.<\/p>\n<h2>\u041a\u0430\u043a \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440\u043e\u043c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430?<\/h2>\n<p>\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430. \u041d\u0430 \u0438\u0445 \u043e\u0441\u043d\u043e\u0432\u0435 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u043e\u0446\u0435\u043d\u0438\u0442 \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f.<\/p>\n<p>\u0417\u0430\u0442\u0435\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u043e\u0438\u0442 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0432 \u0432\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435.<\/p>\n<p>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430, \u0441\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0441\u0445\u043e\u0434\u044b \u043d\u0430 \u043e\u0447\u0438\u0441\u0442\u043a\u0443 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430, \u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0438 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0435 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430.<\/p>\n<p>\u041f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u0439\u0442\u0435\u0441\u044c \u043d\u0430 \u043d\u0430\u0441 \u0432 <a href=\"https:\/\/facebook.com\/datvale.ge\">Facebook<\/a> \u0438 <a href=\"https:\/\/youtube.com\/@datvale\" target=\"_blank\" rel=\"noopener\">YouTube<\/a>.<\/p>\n\t\t\t\t\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<div class=\"elementor-element elementor-element-a6c25e7 e-flex e-con-boxed e-con e-parent\" data-id=\"a6c25e7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f5fdee7 elementor-widget elementor-widget-image\" data-id=\"f5fdee7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"341\" src=\"https:\/\/datvale.ge\/wp-content\/uploads\/2026\/09\/auzis-movla-1024x341.webp\" class=\"attachment-large size-large wp-image-22530\" alt=\"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430\" srcset=\"https:\/\/datvale.ge\/wp-content\/uploads\/2026\/09\/auzis-movla-1024x341.webp 1024w, https:\/\/datvale.ge\/wp-content\/uploads\/2026\/09\/auzis-movla-300x100.webp 300w, https:\/\/datvale.ge\/wp-content\/uploads\/2026\/09\/auzis-movla-768x256.webp 768w, https:\/\/datvale.ge\/wp-content\/uploads\/2026\/09\/auzis-movla.webp 1100w, https:\/\/datvale.ge\/wp-content\/uploads\/2026\/09\/auzis-movla-600x200.webp 600w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\t\t\t\t\t\t\t\t\t\t\t\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>\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0432 2026 \u0433\u043e\u0434\u0443 \u2013 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 1 \u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u0414\u043b\u0438\u043d\u0430 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u043c \u0428\u0438\u0440\u0438\u043d\u0430 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430 \u043c \u0421\u0440\u0435\u0434\u043d\u044f\u044f \u0433\u043b\u0443\u0431\u0438\u043d\u0430 \u043c \u0418\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0421\u0440\u0435\u0434\u043d\u044f\u044f\u041d\u0438\u0437\u043a\u0430\u044f\u0412\u044b\u0441\u043e\u043a\u0430\u044f \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u0440\u043e\u0431\u043e\u0442-\u043f\u044b\u043b\u0435\u0441\u043e\u0441 \u0434\u043b\u044f \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430? \u041d\u0435\u0442\u0414\u0430 \u0422\u0435\u043a\u0443\u0449\u0438\u0439 pH (\u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e) pH \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0435\u0436\u0435\u043c\u0435\u0441\u044f\u0447\u043d\u044b\u0435 \u0440\u0430\u0441\u0445\u043e\u0434\u044b \u043d\u0430 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043f\u043e \u0445\u043b\u043e\u0440\u0443 \u0438 \u0430\u043b\u044c\u0433\u0438\u0446\u0438\u0434\u0443. \u0421\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u0434\u043b\u044f \u043a\u043e\u0440\u0440\u0435\u043a\u0446\u0438\u0438 pH \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438&#8230;<\/p>\n","protected":false},"author":67,"featured_media":0,"parent":0,"menu_order":20,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-22531","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/datvale.ge\/ru\/wp-json\/wp\/v2\/pages\/22531","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/datvale.ge\/ru\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/datvale.ge\/ru\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/datvale.ge\/ru\/wp-json\/wp\/v2\/users\/67"}],"replies":[{"embeddable":true,"href":"https:\/\/datvale.ge\/ru\/wp-json\/wp\/v2\/comments?post=22531"}],"version-history":[{"count":1,"href":"https:\/\/datvale.ge\/ru\/wp-json\/wp\/v2\/pages\/22531\/revisions"}],"predecessor-version":[{"id":23094,"href":"https:\/\/datvale.ge\/ru\/wp-json\/wp\/v2\/pages\/22531\/revisions\/23094"}],"wp:attachment":[{"href":"https:\/\/datvale.ge\/ru\/wp-json\/wp\/v2\/media?parent=22531"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}