


<style id="elementor-post-22483">.elementor-22483 .elementor-element.elementor-element-a78e802{--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-22483 .elementor-element.elementor-element-51df3aa{--display:flex;--justify-content:center;}.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-22483 .elementor-element.elementor-element-8cc2326 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-22483 .elementor-element.elementor-element-8cc2326{text-align:center;}.elementor-22483 .elementor-element.elementor-element-8cc2326 .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-22483 .elementor-element.elementor-element-8cc2326 .elementor-heading-title a{transition-duration:0s;}.elementor-22483 .elementor-element.elementor-element-0e090b5{--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:-35px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-22483 .elementor-element.elementor-element-b814932{--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:-112px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-22483 .elementor-element.elementor-element-e19ecfc{--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-22483 .elementor-element.elementor-element-edc7689{--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-22483 .elementor-element.elementor-element-409c014{--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-22483 .elementor-element.elementor-element-0394f99 img{width:100%;border-radius:25px 25px 25px 25px;}@media(max-width:1024px){.elementor-22483 .elementor-element.elementor-element-8cc2326 > .elementor-widget-container{padding:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-22483 .elementor-element.elementor-element-863c0ef > .elementor-widget-container{margin:97px 0px 0px 0px;}.elementor-22483 .elementor-element.elementor-element-51df3aa{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22483 .elementor-element.elementor-element-8cc2326 > .elementor-widget-container{padding:010px 010px 5px 010px;}.elementor-22483 .elementor-element.elementor-element-8cc2326{text-align:center;}.elementor-22483 .elementor-element.elementor-element-8cc2326 .elementor-heading-title{font-size:17px;-webkit-text-stroke-width:0px;stroke-width:0px;}.elementor-22483 .elementor-element.elementor-element-0e090b5{--margin-top:-25px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-22483 .elementor-element.elementor-element-b814932{--margin-top:-87px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(min-width:768px){.elementor-22483 .elementor-element.elementor-element-51df3aa{--content-width:1600px;}}</style>{"id":22483,"date":"2026-08-17T14:21:04","date_gmt":"2026-08-17T10:21:04","guid":{"rendered":"https:\/\/datvale.ge\/%e1%83%91%e1%83%9a%e1%83%9d%e1%83%99%e1%83%98%e1%83%a1-%e1%83%a6%e1%83%9d%e1%83%91%e1%83%98%e1%83%a1-%e1%83%99%e1%83%90%e1%83%9a%e1%83%99%e1%83%a3%e1%83%9a%e1%83%90%e1%83%a2%e1%83%9d%e1%83%a0%e1%83%98\/"},"modified":"2026-10-11T10:44:35","modified_gmt":"2026-10-11T06:44:35","slug":"block-fence-calculator","status":"publish","type":"page","link":"https:\/\/datvale.ge\/ru\/block-fence-calculator\/","title":{"rendered":"\u041a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u0438 \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"22483\" class=\"elementor elementor-22483 elementor-18602\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a78e802 e-flex e-con-boxed e-con e-parent\" data-id=\"a78e802\" 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-863c0ef elementor-widget elementor-widget-html\" data-id=\"863c0ef\" 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 \u0440\u0435\u043c\u043e\u043d\u0442\u0430 \u0438 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 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\/* 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\/* 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\/* 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>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-51df3aa e-flex e-con-boxed e-con e-parent\" data-id=\"51df3aa\" 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-8cc2326 elementor-widget elementor-widget-heading\" data-id=\"8cc2326\" 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 \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432 \u0432 2026 \u0433\u043e\u0434\u0443 \u2013 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u0438 \u0437\u0430\u0431\u043e\u0440\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-0e090b5 e-flex e-con-boxed e-con e-parent\" data-id=\"0e090b5\" 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-74d1a56 elementor-widget elementor-widget-html\" data-id=\"74d1a56\" 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-fence-calculator\">\r\n\r\n<style>\r\n#dv-fence-calculator,\r\n#dv-fence-calculator * {\r\n  box-sizing: border-box;\r\n}\r\n\r\n#dv-fence-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\r\n  position:relative;\r\n  isolation:isolate;\r\n  overflow:hidden;\r\n\r\n  width:100%;\r\n  max-width:1260px;\r\n\r\n  margin:26px auto;\r\n  padding:42px 22px;\r\n\r\n  border:1px solid var(--dv-border);\r\n  border-radius:24px;\r\n\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\r\n  color:var(--dv-text);\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  box-shadow:0 16px 42px rgba(11,58,120,.10);\r\n}\r\n\r\n#dv-fence-calculator::before {\r\n  content:\"\";\r\n  position:absolute;\r\n  inset:-180px;\r\n  z-index:-1;\r\n  pointer-events:none;\r\n\r\n  background:\r\n    radial-gradient(circle at 12% 0%,rgba(23,100,189,.12),transparent 30%),\r\n    radial-gradient(circle at 92% 10%,rgba(11,58,120,.10),transparent 28%);\r\n}\r\n\r\n#dv-fence-calculator .dv-calculator {\r\n  width:100%;\r\n  max-width:1180px;\r\n  margin:0 auto;\r\n}\r\n\r\n#dv-fence-calculator .dv-content {\r\n  padding:0;\r\n  background:transparent;\r\n}\r\n\r\n#dv-fence-calculator .dv-input-card,\r\n#dv-fence-calculator .dv-result-card,\r\n#dv-fence-calculator .dv-summary {\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-fence-calculator .dv-input-card {\r\n  padding:28px;\r\n  margin-bottom:24px;\r\n}\r\n\r\n#dv-fence-calculator .dv-section-title {\r\n  display:inline-flex;\r\n  align-items:center;\r\n  gap:11px;\r\n\r\n  margin:0 0 22px;\r\n\r\n  color:var(--dv-text);\r\n\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-fence-calculator .dv-section-number {\r\n  display:inline-flex;\r\n\r\n  width:36px;\r\n  height:36px;\r\n\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  flex:0 0 36px;\r\n\r\n  border-radius:50%;\r\n\r\n  background:linear-gradient(\r\n    135deg,\r\n    var(--dv-blue),\r\n    var(--dv-blue-2)\r\n  );\r\n\r\n  color:#fff;\r\n\r\n  font-size:14px;\r\n  font-weight:950;\r\n\r\n  box-shadow:0 8px 18px rgba(11,58,120,.18);\r\n}\r\n\r\n#dv-fence-calculator .dv-input-grid {\r\n  display:grid;\r\n  grid-template-columns:repeat(4,minmax(0,1fr));\r\n  gap:18px;\r\n}\r\n\r\n#dv-fence-calculator .dv-field {\r\n  min-width:0;\r\n}\r\n\r\n#dv-fence-calculator .dv-field label {\r\n  display:block;\r\n\r\n  margin-bottom:8px;\r\n\r\n  color:var(--dv-text);\r\n\r\n  font-size:14px;\r\n  font-weight:850;\r\n}\r\n\r\n#dv-fence-calculator .dv-input-wrap {\r\n  position:relative;\r\n}\r\n\r\n#dv-fence-calculator .dv-field input {\r\n  width:100%;\r\n  height:56px;\r\n\r\n  padding:0 52px 0 15px;\r\n\r\n  border:1px solid #d8e3ef;\r\n  border-radius:14px;\r\n\r\n  outline:none;\r\n\r\n  background:#f8fbff;\r\n  color:var(--dv-text);\r\n\r\n  font-size:17px;\r\n  font-weight:800;\r\n\r\n  transition:\r\n    border-color .2s ease,\r\n    box-shadow .2s ease,\r\n    background .2s ease;\r\n}\r\n\r\n#dv-fence-calculator .dv-field input: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-fence-calculator .dv-field input::placeholder {\r\n  color:#9aabba;\r\n  opacity:1;\r\n}\r\n\r\n#dv-fence-calculator .dv-unit {\r\n  position:absolute;\r\n  top:50%;\r\n  right:14px;\r\n\r\n  transform:translateY(-50%);\r\n\r\n  color:var(--dv-muted);\r\n\r\n  font-size:13px;\r\n  font-weight:850;\r\n\r\n  pointer-events:none;\r\n}\r\n\r\n#dv-fence-calculator .dv-calculate-v2 {\r\n  display:flex;\r\n\r\n  width:100%;\r\n  min-height:58px;\r\n\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  margin-top:22px;\r\n  padding:14px 24px;\r\n\r\n  border:0;\r\n  border-radius:14px;\r\n\r\n  cursor:pointer;\r\n\r\n  background:linear-gradient(\r\n    135deg,\r\n    var(--dv-blue),\r\n    var(--dv-blue-2)\r\n  );\r\n\r\n  color:#fff;\r\n\r\n  font-size:17px;\r\n  font-weight:950;\r\n\r\n  box-shadow:0 12px 28px rgba(11,58,120,.22);\r\n}\r\n\r\n#dv-fence-calculator .dv-calculate-v2:hover {\r\n  transform:translateY(-2px);\r\n  filter:brightness(1.03);\r\n}\r\n\r\n#dv-fence-calculator .dv-error {\r\n  display:none;\r\n\r\n  margin-top:14px;\r\n  padding:13px 15px;\r\n\r\n  border:1px solid rgba(174,32,32,.18);\r\n  border-radius:12px;\r\n\r\n  background:#fff2f2;\r\n  color:#a32020;\r\n\r\n  font-size:14px;\r\n  font-weight:850;\r\n}\r\n\r\n\r\n\/* \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b *\/\r\n\r\n#dv-fence-calculator .dv-output {\r\n  display:none;\r\n  scroll-margin-top:150px;\r\n}\r\n\r\n#dv-fence-calculator .dv-output.dv-show {\r\n  display:block;\r\n}\r\n\r\n#dv-fence-calculator .dv-standard-image {\r\n  overflow:hidden;\r\n\r\n  margin-bottom:22px;\r\n\r\n  border:1px solid var(--dv-border);\r\n  border-radius:22px;\r\n\r\n  background:#fff;\r\n\r\n  box-shadow:0 16px 40px rgba(11,58,120,.10);\r\n}\r\n\r\n#dv-fence-calculator .dv-standard-image img {\r\n  display:block;\r\n  width:100%;\r\n  height:auto;\r\n}\r\n\r\n#dv-fence-calculator .dv-results {\r\n  display:grid;\r\n  grid-template-columns:1fr;\r\n  gap:18px;\r\n\r\n  max-width:1080px;\r\n  margin:0 auto;\r\n}\r\n\r\n#dv-fence-calculator .dv-result-card {\r\n  overflow:hidden;\r\n}\r\n\r\n#dv-fence-calculator .dv-result-head {\r\n  display:flex;\r\n\r\n  align-items:center;\r\n  gap:10px;\r\n\r\n  padding:17px 20px;\r\n\r\n  background:linear-gradient(\r\n    135deg,\r\n    var(--dv-blue),\r\n    var(--dv-blue-2)\r\n  );\r\n\r\n  color:#fff;\r\n}\r\n\r\n#dv-fence-calculator .dv-result-icon {\r\n  display:inline-flex;\r\n\r\n  width:34px;\r\n  height:34px;\r\n\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  flex:0 0 34px;\r\n\r\n  border-radius:10px;\r\n\r\n  background:rgba(255,255,255,.14);\r\n\r\n  font-size:17px;\r\n}\r\n\r\n#dv-fence-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-fence-calculator .dv-result-body {\r\n  padding:10px 18px 15px;\r\n}\r\n\r\n#dv-fence-calculator .dv-row {\r\n  display:grid;\r\n\r\n  grid-template-columns:minmax(0,1fr) auto;\r\n\r\n  gap:15px;\r\n  align-items:center;\r\n\r\n  padding:12px 0;\r\n\r\n  border-bottom:1px dashed #d9e4ef;\r\n}\r\n\r\n#dv-fence-calculator .dv-row:last-child {\r\n  border-bottom:0;\r\n}\r\n\r\n#dv-fence-calculator .dv-row-name {\r\n  min-width:0;\r\n\r\n  color:#425a74;\r\n\r\n  font-size:14px;\r\n  line-height:1.45;\r\n  font-weight:650;\r\n}\r\n\r\n#dv-fence-calculator .dv-row-value {\r\n  color:var(--dv-text);\r\n\r\n  text-align:right;\r\n  white-space:nowrap;\r\n\r\n  font-size:15px;\r\n  font-weight:950;\r\n}\r\n\r\n#dv-fence-calculator .dv-card-total {\r\n  margin:7px 0 2px;\r\n  padding:14px 15px;\r\n\r\n  border:1px solid #d8e3ef;\r\n  border-radius:13px;\r\n\r\n  background:#f4f8fd;\r\n  color:var(--dv-text);\r\n\r\n  font-size:15px;\r\n  font-weight:950;\r\n  text-align:right;\r\n}\r\n\r\n\r\n\/* \u0418\u0442\u043e\u0433\u0438 *\/\r\n\r\n#dv-fence-calculator .dv-summary {\r\n  max-width:1080px;\r\n\r\n  margin:22px auto 0;\r\n  padding:26px;\r\n}\r\n\r\n#dv-fence-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-fence-calculator .dv-summary-item {\r\n  padding:18px;\r\n\r\n  border:1px solid #e1e9f3;\r\n  border-radius:16px;\r\n\r\n  background:#f8fbff;\r\n\r\n  text-align:center;\r\n}\r\n\r\n#dv-fence-calculator .dv-summary-label {\r\n  display:block;\r\n\r\n  margin-bottom:7px;\r\n\r\n  color:var(--dv-muted);\r\n\r\n  font-size:13px;\r\n  font-weight:850;\r\n}\r\n\r\n#dv-fence-calculator .dv-summary-value {\r\n  color:var(--dv-text);\r\n\r\n  font-size:22px;\r\n  font-weight:950;\r\n}\r\n\r\n#dv-fence-calculator .dv-grand-total {\r\n  position:relative;\r\n\r\n  overflow:hidden;\r\n\r\n  margin-top:16px;\r\n  padding:29px 20px;\r\n\r\n  border-radius:18px;\r\n\r\n  background:linear-gradient(\r\n    135deg,\r\n    var(--dv-blue),\r\n    var(--dv-blue-2)\r\n  );\r\n\r\n  color:#fff;\r\n\r\n  text-align:center;\r\n\r\n  box-shadow:0 14px 30px rgba(11,58,120,.20);\r\n}\r\n\r\n#dv-fence-calculator .dv-grand-total small {\r\n  display:block;\r\n\r\n  margin-bottom:8px;\r\n\r\n  color:rgba(255,255,255,.82);\r\n\r\n  font-size:14px;\r\n  font-weight:850;\r\n}\r\n\r\n#dv-fence-calculator .dv-grand-total strong {\r\n  display:block;\r\n\r\n  color:#fff;\r\n\r\n  font-size:clamp(34px,6vw,52px);\r\n  line-height:1;\r\n\r\n  font-weight:1000;\r\n}\r\n\r\n\r\n\/* PDF *\/\r\n\r\n#dv-fence-calculator .dv-pdf-button {\r\n  display:flex;\r\n\r\n  width:100%;\r\n  min-height:56px;\r\n\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  gap:9px;\r\n\r\n  margin-top:15px;\r\n  padding:14px 22px;\r\n\r\n  border:0;\r\n  border-radius:14px;\r\n\r\n  cursor:pointer;\r\n\r\n  background:linear-gradient(\r\n    135deg,\r\n    #13795b,\r\n    #0e9a70\r\n  );\r\n\r\n  color:#fff;\r\n\r\n  font-size:16px;\r\n  font-weight:950;\r\n\r\n  box-shadow:0 12px 28px rgba(19,121,91,.20);\r\n}\r\n\r\n#dv-fence-calculator .dv-pdf-button:disabled {\r\n  opacity:.65;\r\n  cursor:wait;\r\n}\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-fence-calculator .dv-call-request{\r\n  display:none;\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}\r\n\r\n#dv-fence-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-fence-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-fence-calculator .dv-call-request-row{\r\n  display:grid;\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-fence-calculator .dv-call-phone{\r\n  width:100%;\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-fence-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-fence-calculator .dv-call-request-row.dv-has-saved-phone{\r\n  grid-template-columns:1fr;\r\n}\r\n\r\n#dv-fence-calculator .dv-call-request-row.dv-has-saved-phone .dv-call-phone{\r\n  display:none;\r\n}\r\n\r\n#dv-fence-calculator .dv-request-call-btn{\r\n  min-height:52px;\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-fence-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-fence-calculator .dv-request-call-btn:disabled{\r\n  opacity:.65;\r\n  cursor:wait;\r\n}\r\n\r\n#dv-fence-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-fence-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-fence-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-fence-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-fence-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-fence-calculator .dv-call-phone{\r\n    display:block;\r\n    width:100%;\r\n    max-width:100%;\r\n    min-width:0;\r\n  }\r\n\r\n  #dv-fence-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\r\n\/* \u0414\u0440\u0443\u0433\u0438\u0435 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440\u044b *\/\r\n\r\n#dv-fence-calculator .dv-related {\r\n  max-width:1080px;\r\n  margin:22px auto 0;\r\n  padding:22px;\r\n\r\n  border:1px solid var(--dv-border);\r\n  border-radius:22px;\r\n\r\n  background:#fff;\r\n\r\n  box-shadow:0 16px 40px rgba(11,58,120,.10);\r\n}\r\n\r\n#dv-fence-calculator .dv-related-grid {\r\n  display:grid;\r\n  grid-template-columns:repeat(2,minmax(0,1fr));\r\n  gap:14px;\r\n}\r\n\r\n#dv-fence-calculator .dv-related-link {\r\n  display:flex;\r\n\r\n  min-width:0;\r\n\r\n  align-items:center;\r\n  gap:12px;\r\n\r\n  padding:17px 16px;\r\n\r\n  border:1px solid #d8e3ef;\r\n  border-radius:16px;\r\n\r\n  background:#f8fbff;\r\n\r\n  color:var(--dv-blue);\r\n  text-decoration:none!important;\r\n\r\n  transition:\r\n    transform .2s ease,\r\n    box-shadow .2s ease,\r\n    border-color .2s ease,\r\n    background .2s ease;\r\n}\r\n\r\n#dv-fence-calculator .dv-related-link:hover {\r\n  transform:translateY(-2px);\r\n\r\n  border-color:rgba(23,100,189,.32);\r\n\r\n  background:#fff;\r\n\r\n  box-shadow:0 12px 26px rgba(11,58,120,.11);\r\n}\r\n\r\n#dv-fence-calculator .dv-related-icon {\r\n  display:inline-flex;\r\n\r\n  width:42px;\r\n  height:42px;\r\n\r\n  flex:0 0 42px;\r\n\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  border-radius:12px;\r\n\r\n  color:#fff;\r\n\r\n  background:linear-gradient(\r\n    135deg,\r\n    var(--dv-blue),\r\n    var(--dv-blue-2)\r\n  );\r\n\r\n  font-size:20px;\r\n\r\n  box-shadow:0 8px 18px rgba(11,58,120,.18);\r\n}\r\n\r\n#dv-fence-calculator .dv-related-text {\r\n  min-width:0;\r\n  flex:1;\r\n}\r\n\r\n#dv-fence-calculator .dv-related-text strong {\r\n  display:block;\r\n\r\n  margin-bottom:4px;\r\n\r\n  color:var(--dv-blue);\r\n\r\n  font-size:15px;\r\n  font-weight:950;\r\n}\r\n\r\n#dv-fence-calculator .dv-related-text small {\r\n  display:block;\r\n\r\n  color:var(--dv-muted);\r\n\r\n  font-size:12px;\r\n  line-height:1.45;\r\n}\r\n\r\n#dv-fence-calculator .dv-related-arrow {\r\n  display:inline-flex;\r\n\r\n  width:32px;\r\n  height:32px;\r\n\r\n  flex:0 0 32px;\r\n\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  border-radius:50%;\r\n\r\n  background:#eaf2f8;\r\n  color:var(--dv-blue);\r\n\r\n  font-size:18px;\r\n  font-weight:950;\r\n\r\n  transition:.2s ease;\r\n}\r\n\r\n#dv-fence-calculator .dv-related-link:hover .dv-related-arrow {\r\n  transform:translateX(3px);\r\n\r\n  background:var(--dv-blue);\r\n  color:#fff;\r\n}\r\n\r\n\r\n\/* \u0410\u043d\u0438\u043c\u0430\u0446\u0438\u044f *\/\r\n\r\n#dv-fence-calculator .dv-output.dv-show .dv-standard-image,\r\n#dv-fence-calculator .dv-output.dv-show .dv-result-card,\r\n#dv-fence-calculator .dv-output.dv-show .dv-summary,\r\n#dv-fence-calculator .dv-output.dv-show .dv-related {\r\n  opacity:0;\r\n  transform:translateY(22px);\r\n\r\n  animation:dvFenceReveal .5s ease forwards;\r\n}\r\n\r\n#dv-fence-calculator .dv-output.dv-show .dv-standard-image {\r\n  animation-delay:.02s;\r\n}\r\n\r\n#dv-fence-calculator .dv-output.dv-show .dv-result-card:nth-child(1) {\r\n  animation-delay:.05s;\r\n}\r\n\r\n#dv-fence-calculator .dv-output.dv-show .dv-result-card:nth-child(2) {\r\n  animation-delay:.10s;\r\n}\r\n\r\n#dv-fence-calculator .dv-output.dv-show .dv-result-card:nth-child(3) {\r\n  animation-delay:.15s;\r\n}\r\n\r\n#dv-fence-calculator .dv-output.dv-show .dv-result-card:nth-child(4) {\r\n  animation-delay:.20s;\r\n}\r\n\r\n#dv-fence-calculator .dv-output.dv-show .dv-result-card:nth-child(5) {\r\n  animation-delay:.25s;\r\n}\r\n\r\n#dv-fence-calculator .dv-output.dv-show .dv-result-card:nth-child(6) {\r\n  animation-delay:.30s;\r\n}\r\n\r\n#dv-fence-calculator .dv-output.dv-show .dv-result-card:nth-child(7) {\r\n  animation-delay:.35s;\r\n}\r\n\r\n#dv-fence-calculator .dv-output.dv-show .dv-summary {\r\n  animation-delay:.40s;\r\n}\r\n\r\n#dv-fence-calculator .dv-output.dv-show .dv-related {\r\n  animation-delay:.45s;\r\n}\r\n\r\n@keyframes dvFenceReveal {\r\n  to {\r\n    opacity:1;\r\n    transform:translateY(0);\r\n  }\r\n}\r\n\r\n\r\n\/* PDF-\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 \u0441\u043b\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 PDF *\/\r\n\r\n.dv-pdf-mask {\r\n  position:fixed!important;\r\n  inset:0!important;\r\n  z-index:2147483647!important;\r\n  display:flex!important;\r\n  align-items:center!important;\r\n  justify-content:center!important;\r\n  background:rgba(255,255,255,.97)!important;\r\n  color:#173558!important;\r\n  font-family:\"Segoe UI\",Arial,sans-serif!important;\r\n  font-size:18px!important;\r\n  font-weight:700!important;\r\n}\r\n\r\n.dv-pdf-stage {\r\n  position:fixed!important;\r\n  left:0!important;\r\n  top:0!important;\r\n  z-index:2147483000!important;\r\n  width:794px!important;\r\n  background:#fff!important;\r\n  padding:0!important;\r\n  margin:0!important;\r\n  pointer-events:none!important;\r\n}\r\n\r\n\r\n\/* \u041f\u043b\u0430\u043d\u0448\u0435\u0442 *\/\r\n\r\n@media(max-width:980px) {\r\n\r\n  #dv-fence-calculator {\r\n    padding:34px 18px;\r\n  }\r\n\r\n  #dv-fence-calculator .dv-input-grid {\r\n    grid-template-columns:repeat(2,minmax(0,1fr));\r\n  }\r\n\r\n  #dv-fence-calculator .dv-summary-grid {\r\n    grid-template-columns:repeat(2,minmax(0,1fr));\r\n  }\r\n\r\n}\r\n\r\n\r\n\/* \u041c\u043e\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f *\/\r\n\r\n@media(max-width:760px) {\r\n\r\n  #dv-fence-calculator {\r\n    margin:18px auto;\r\n\r\n    padding:26px 12px;\r\n\r\n    border-radius:18px;\r\n  }\r\n\r\n  #dv-fence-calculator .dv-input-card,\r\n  #dv-fence-calculator .dv-summary {\r\n    padding:18px;\r\n\r\n    border-radius:18px;\r\n  }\r\n\r\n  #dv-fence-calculator .dv-input-grid,\r\n  #dv-fence-calculator .dv-summary-grid {\r\n    grid-template-columns:1fr;\r\n\r\n    gap:16px;\r\n  }\r\n\r\n  #dv-fence-calculator .dv-section-title {\r\n    font-size:21px;\r\n  }\r\n\r\n  #dv-fence-calculator .dv-output {\r\n    scroll-margin-top:110px;\r\n  }\r\n\r\n  #dv-fence-calculator .dv-row {\r\n    gap:9px;\r\n  }\r\n\r\n  #dv-fence-calculator .dv-row-name {\r\n    font-size:13px;\r\n  }\r\n\r\n  #dv-fence-calculator .dv-row-value {\r\n    font-size:14px;\r\n  }\r\n\r\n  #dv-fence-calculator .dv-related {\r\n    padding:18px;\r\n  }\r\n\r\n  #dv-fence-calculator .dv-related-grid {\r\n    grid-template-columns:1fr;\r\n    gap:10px;\r\n  }\r\n\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-fence-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-fence-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-fence-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-fence-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-fence-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-fence-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-fence-calculator .dv-free-next-step.dv-show{\r\n    grid-template-columns:1fr;\r\n  }\r\n\r\n  #dv-fence-calculator .dv-free-next-step{\r\n    padding:18px;\r\n  }\r\n\r\n  #dv-fence-calculator .dv-free-next-step a{\r\n    width:100%;\r\n    min-width:0;\r\n  }\r\n}\r\n\r\n<\/style>\r\n\r\n\r\n\r\n<div class=\"dv-calculator\">\r\n\r\n<div class=\"dv-content\">\r\n\r\n\r\n<!-- \u041f\u043e\u043b\u044f \u0434\u043b\u044f \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f -->\r\n\r\n<div class=\"dv-input-card\">\r\n\r\n  <h3 class=\"dv-section-title\">\r\n    \u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u044b\r\n  <\/h3>\r\n\r\n\r\n  <div class=\"dv-input-grid\">\r\n\r\n\r\n    <div class=\"dv-field\">\r\n\r\n      <label for=\"dvLandLength\">\r\n        \u0414\u043b\u0438\u043d\u0430 \u0443\u0447\u0430\u0441\u0442\u043a\u0430\r\n      <\/label>\r\n\r\n      <div class=\"dv-input-wrap\">\r\n\r\n        <input\r\n          type=\"text\"\r\n          id=\"dvLandLength\"\r\n          min=\"1\"\r\n          step=\"0.1\"\r\n          placeholder=\"\u041d\u0430\u043f\u0440. 30. 30\"\r\n          inputmode=\"decimal\"\r\n        >\r\n\r\n        <span class=\"dv-unit\">\r\n          \u043c\r\n        <\/span>\r\n\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n\r\n    <div class=\"dv-field\">\r\n\r\n      <label for=\"dvLandWidth\">\r\n        \u0428\u0438\u0440\u0438\u043d\u0430 \u0443\u0447\u0430\u0441\u0442\u043a\u0430\r\n      <\/label>\r\n\r\n      <div class=\"dv-input-wrap\">\r\n\r\n        <input\r\n          type=\"text\"\r\n          id=\"dvLandWidth\"\r\n          min=\"1\"\r\n          step=\"0.1\"\r\n          placeholder=\"\u041d\u0430\u043f\u0440. 20. 20\"\r\n          inputmode=\"decimal\"\r\n        >\r\n\r\n        <span class=\"dv-unit\">\r\n          \u043c\r\n        <\/span>\r\n\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n\r\n    <div class=\"dv-field\">\r\n\r\n      <label for=\"dvFenceHeight\">\r\n        \u0412\u044b\u0441\u043e\u0442\u0430 \u0437\u0430\u0431\u043e\u0440\u0430\r\n      <\/label>\r\n\r\n      <div class=\"dv-input-wrap\">\r\n\r\n        <input\r\n          type=\"text\"\r\n          id=\"dvFenceHeight\"\r\n          min=\"0.5\"\r\n          step=\"0.1\"\r\n          placeholder=\"\u041d\u0430\u043f\u0440. 1.6. 1.6\"\r\n          inputmode=\"decimal\"\r\n        >\r\n\r\n        <span class=\"dv-unit\">\r\n          \u043c\r\n        <\/span>\r\n\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n\r\n    <div class=\"dv-field\">\r\n\r\n      <label for=\"dvGateWidth\">\r\n        \u041e\u0431\u0449\u0430\u044f \u0448\u0438\u0440\u0438\u043d\u0430 \u0432\u043e\u0440\u043e\u0442 \u0438 \u043a\u0430\u043b\u0438\u0442\u043a\u0438\r\n      <\/label>\r\n\r\n      <div class=\"dv-input-wrap\">\r\n\r\n        <input\r\n          type=\"text\"\r\n          id=\"dvGateWidth\"\r\n          min=\"0\"\r\n          step=\"0.1\"\r\n          placeholder=\"\u041d\u0430\u043f\u0440. 5. 5\"\r\n          inputmode=\"decimal\"\r\n        >\r\n\r\n        <span class=\"dv-unit\">\r\n          \u043c\r\n        <\/span>\r\n\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n\r\n  <\/div>\r\n\r\n\r\n  <button\r\n    type=\"button\"\r\n    class=\"dv-calculate-v2\"\r\n    id=\"dvCalculateFenceFreeFlowV2\"\r\n  >\r\n    \u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044c \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0437\u0430\u0431\u043e\u0440\u0430\r\n  <\/button>\r\n\r\n\r\n  <div\r\n    class=\"dv-error\"\r\n    id=\"dvFenceError\"\r\n  >\r\n    \u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u0435 \u0432\u0441\u0435 \u043f\u043e\u043b\u044f..\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n\r\n<!-- \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b -->\r\n\r\n<div\r\n  class=\"dv-output\"\r\n  id=\"dvFenceOutput\"\r\n>\r\n\r\n<div class=\"dv-free-next-step\" id=\"dvFenceFreeNextStep\">\r\n  <div>\r\n    <span class=\"dv-free-next-step-kicker\">\u2713 \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\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c \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\/packages\/\">\r\n    \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442\r\n  <\/a>\r\n<\/div>\r\n\r\n\r\n<div class=\"dv-standard-image\">\r\n\r\n  <img decoding=\"async\"\r\n    src=\"https:\/\/datvale.ge\/wp-content\/uploads\/2026\/07\/fence-standart.webp\"\r\n    alt=\"\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u044b \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432\"\r\n  >\r\n\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"dv-results\">\r\n\r\n\r\n<!-- \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 -->\r\n\r\n<div class=\"dv-result-card\">\r\n\r\n  <div class=\"dv-result-head\">\r\n\r\n    <span class=\"dv-result-icon\">\r\n      \ud83d\udcd0\r\n    <\/span>\r\n\r\n    <h3>\r\n      \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435\r\n    <\/h3>\r\n\r\n  <\/div>\r\n\r\n\r\n  <div class=\"dv-result-body\">\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u041f\u043e\u043b\u043d\u044b\u0439 \u043f\u0435\u0440\u0438\u043c\u0435\u0442\u0440 \u0443\u0447\u0430\u0441\u0442\u043a\u0430\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvFullPerimeter\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0420\u0430\u0441\u0447\u0451\u0442\u043d\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u0437\u0430\u0431\u043e\u0440\u0430\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvWorkPerimeter\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0416\u0435\u043b\u0435\u0437\u043e\u0431\u0435\u0442\u043e\u043d\u043d\u044b\u0435 \u0441\u0442\u043e\u043b\u0431\u044b\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvColumnCount\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0427\u0438\u0441\u0442\u0430\u044f \u043f\u043b\u043e\u0449\u0430\u0434\u044c \u0444\u0430\u0441\u0430\u0434\u043d\u044b\u0445 \u0431\u043b\u043e\u043a\u043e\u0432\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvBlockArea\">\u2014<\/span>\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n\r\n<!-- \u0417\u0435\u043c\u043b\u044f\u043d\u044b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b -->\r\n\r\n<div class=\"dv-result-card\">\r\n\r\n  <div class=\"dv-result-head\">\r\n\r\n    <span class=\"dv-result-icon\">\r\n      \u26cf\ufe0f\r\n    <\/span>\r\n\r\n    <h3>\r\n      \u0417\u0435\u043c\u043b\u044f\u043d\u044b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b\r\n    <\/h3>\r\n\r\n  <\/div>\r\n\r\n\r\n  <div class=\"dv-result-body\">\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u041e\u0431\u044a\u0451\u043c \u0432\u044b\u043d\u0438\u043c\u0430\u0435\u043c\u043e\u0433\u043e \u0433\u0440\u0443\u043d\u0442\u0430\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvExcavationNet\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0413\u0440\u0443\u043d\u0442 \u043a \u0432\u044b\u0432\u043e\u0437\u0443 \u0441 \u0443\u0447\u0451\u0442\u043e\u043c 10% \u0437\u0430\u043f\u0430\u0441\u0430\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvExcavationWaste\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0432\u044b\u0432\u043e\u0437\u0430 25 GEL\/\u043c\u00b3\u00b3\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvExcavationCost\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0423\u0441\u043b\u0443\u0433\u0438 \u044d\u043a\u0441\u043a\u0430\u0432\u0430\u0442\u043e\u0440\u0430\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvTractorCost\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-card-total\">\r\n      \u0417\u0435\u043c\u043b\u044f\u043d\u044b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b::\r\n      <span id=\"dvEarthTotal\">\u2014<\/span>\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n\r\n<!-- \u041e\u043f\u0430\u043b\u0443\u0431\u043a\u0430 -->\r\n\r\n<div class=\"dv-result-card\">\r\n\r\n  <div class=\"dv-result-head\">\r\n\r\n    <span class=\"dv-result-icon\">\r\n      \ud83e\udeb5\r\n    <\/span>\r\n\r\n    <h3>\r\n      \u0414\u0435\u0440\u0435\u0432\u044f\u043d\u043d\u0430\u044f \u043e\u043f\u0430\u043b\u0443\u0431\u043a\u0430\r\n    <\/h3>\r\n\r\n  <\/div>\r\n\r\n\r\n  <div class=\"dv-result-body\">\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u041e\u043f\u0430\u043b\u0443\u0431\u043a\u0430 \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u0430 \u2014 2 \u0441\u0442\u043e\u0440\u043e\u043d\u044b\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvFoundationFormArea\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u041e\u043f\u0430\u043b\u0443\u0431\u043a\u0430 \u0441\u0442\u043e\u043b\u0431\u043e\u0432 \u2014 4 \u0441\u0442\u043e\u0440\u043e\u043d\u044b\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvColumnFormArea\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u041e\u043f\u0430\u043b\u0443\u0431\u043a\u0430 \u0432\u0435\u0440\u0445\u043d\u0435\u0433\u043e \u043f\u043e\u044f\u0441\u0430 \u2014 2 \u0441\u0442\u043e\u0440\u043e\u043d\u044b\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvTopFormArea\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0414\u043e\u0441\u043a\u0430 \u0442\u043e\u043b\u0449\u0438\u043d\u043e\u0439 2,5 \u0441\u043c (+10%) (+10%)\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvTimberVolume\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0434\u043e\u0441\u043a\u0438 \u2014 900 GEL\/\u043c\u00b3\u00b3\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvTimberCost\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-card-total\">\r\n      \u0414\u0435\u0440\u0435\u0432\u044f\u043d\u043d\u0430\u044f \u043e\u043f\u0430\u043b\u0443\u0431\u043a\u0430::\r\n      <span id=\"dvFormworkTotal\">\u2014<\/span>\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n\r\n<!-- \u0411\u0435\u0442\u043e\u043d -->\r\n\r\n<div class=\"dv-result-card\">\r\n\r\n  <div class=\"dv-result-head\">\r\n\r\n    <span class=\"dv-result-icon\">\r\n      \ud83c\udfd7\ufe0f\r\n    <\/span>\r\n\r\n    <h3>\r\n      \u0411\u0435\u0442\u043e\u043d \u0438 \u0431\u0435\u0442\u043e\u043d\u043e\u043d\u0430\u0441\u043e\u0441\r\n    <\/h3>\r\n\r\n  <\/div>\r\n\r\n\r\n  <div class=\"dv-result-body\">\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0411\u0435\u0442\u043e\u043d \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u0430\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvFoundationConcrete\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0411\u0435\u0442\u043e\u043d \u0441\u0442\u043e\u043b\u0431\u043e\u0432\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvColumnConcrete\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0412\u0435\u0440\u0445\u043d\u0438\u0439 \u0431\u0435\u0442\u043e\u043d\u043d\u044b\u0439 \u043f\u043e\u044f\u0441\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvTopConcrete\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u041e\u0431\u0449\u0438\u0439 \u043e\u0431\u044a\u0451\u043c \u0431\u0435\u0442\u043e\u043d\u0430 + 10% + 10%\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvTotalConcrete\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        B25 \u0411\u0435\u0442\u043e\u043d B25 \u2014 235 GEL\/\u043c\u00b3\u00b3\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvConcreteCost\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0414\u043e\u0441\u0442\u0430\u0432\u043a\u0430 \u0431\u0435\u0442\u043e\u043d\u0430 \u2014 27 GEL\/\u043c\u00b3\u00b3\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvConcreteTransport\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0411\u0435\u0442\u043e\u043d\u043e\u043d\u0430\u0441\u043e\u0441 \u2014 700 GEL \u00d7 3 \u044d\u0442\u0430\u043f\u0430\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvPumpCost\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0420\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u0443 \u2014 55 GEL\/\u043f\u043e\u0433. \u043c\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvFoundationLabor\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0420\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u0436\u0435\u043b\u0435\u0437\u043e\u0431\u0435\u0442\u043e\u043d\u043d\u044b\u043c \u0441\u0442\u043e\u043b\u0431\u0430\u043c \u2014 55 GEL\/\u0448\u0442.\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvColumnLabor\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0420\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u0432\u0435\u0440\u0445\u043d\u0435\u043c\u0443 \u0431\u0435\u0442\u043e\u043d\u043d\u043e\u043c\u0443 \u043f\u043e\u044f\u0441\u0443 \u2014 55 GEL\/\u043f\u043e\u0433. \u043c\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvTopBeamLabor\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-card-total\">\r\n      \u0411\u0435\u0442\u043e\u043d\u043d\u044b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b::\r\n      <span id=\"dvConcreteTotal\">\u2014<\/span>\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n\r\n<!-- \u0410\u0440\u043c\u0430\u0442\u0443\u0440\u0430 -->\r\n\r\n<div class=\"dv-result-card\">\r\n\r\n  <div class=\"dv-result-head\">\r\n\r\n    <span class=\"dv-result-icon\">\r\n      \ud83d\udd29\r\n    <\/span>\r\n\r\n    <h3>\r\n      \u0410\u0440\u043c\u0430\u0442\u0443\u0440\u0430\r\n    <\/h3>\r\n\r\n  <\/div>\r\n\r\n\r\n  <div class=\"dv-result-body\">\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0410\u0440\u043c\u0430\u0442\u0443\u0440\u0430 \u2014 120 \u043a\u0433\/\u043c\u00b3\u00b3\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvRebarKg\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0410\u0440\u043c\u0430\u0442\u0443\u0440\u0430 \u0432 \u0442\u043e\u043d\u043d\u0430\u0445\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvRebarTons\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0426\u0435\u043d\u0430 \u2014 2 100 GEL\/\u0442\u043e\u043d\u043d\u0430\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvRebarCost\">\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 \u0430\u0440\u043c\u0430\u0442\u0443\u0440\u044b::\r\n      <span id=\"dvRebarTotal\">\u2014<\/span>\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n\r\n<!-- \u0411\u043b\u043e\u043a\u0438 -->\r\n\r\n<div class=\"dv-result-card\">\r\n\r\n  <div class=\"dv-result-head\">\r\n\r\n    <span class=\"dv-result-icon\">\r\n      \ud83e\uddf1\r\n    <\/span>\r\n\r\n    <h3>\r\n      \u0424\u0430\u0441\u0430\u0434\u043d\u044b\u0435 \u0431\u043b\u043e\u043a\u0438\r\n    <\/h3>\r\n\r\n  <\/div>\r\n\r\n\r\n  <div class=\"dv-result-body\">\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0411\u043b\u043e\u043a\u0438 \u0431\u0435\u0437 \u0443\u0447\u0451\u0442\u0430 \u043f\u043e\u0442\u0435\u0440\u044c\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvNetBlocks\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0411\u043b\u043e\u043a\u0438 \u043a \u043f\u043e\u043a\u0443\u043f\u043a\u0435 + 10% + 10%\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvPurchaseBlocks\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0426\u0435\u043d\u0430 \u0431\u043b\u043e\u043a\u0430 \u2014 3.50 GEL\/\u0448\u0442.\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvBlockCost\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u0420\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u043a\u043b\u0430\u0434\u043a\u0435 \u2014 3 GEL\/\u0431\u043b\u043e\u043a\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvBlockLabor\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-card-total\">\r\n      \u0411\u043b\u043e\u043a\u0438 \u0438 \u0440\u0430\u0431\u043e\u0442\u0430::\r\n      <span id=\"dvBlockSectionTotal\">\u2014<\/span>\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n\r\n<!-- \u041a\u043b\u0435\u0439 \u0438 \u043d\u0430\u043a\u0440\u044b\u0432\u043e\u0447\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b -->\r\n\r\n<div class=\"dv-result-card\">\r\n\r\n  <div class=\"dv-result-head\">\r\n\r\n    <span class=\"dv-result-icon\">\r\n      \u25fb\ufe0f\r\n    <\/span>\r\n\r\n    <h3>\r\n      \u041a\u043b\u0435\u0439-\u0446\u0435\u043c\u0435\u043d\u0442 \u0438 \u043d\u0430\u043a\u0440\u044b\u0432\u043e\u0447\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b\r\n    <\/h3>\r\n\r\n  <\/div>\r\n\r\n\r\n  <div class=\"dv-result-body\">\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u041a\u043b\u0435\u0439-\u0446\u0435\u043c\u0435\u043d\u0442 \u2014 1 \u043c\u0435\u0448\u043e\u043a \u043d\u0430 60 \u0431\u043b\u043e\u043a\u043e\u0432\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvGlueBags\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u041a\u043b\u0435\u0439-\u0446\u0435\u043c\u0435\u043d\u0442 \u2014 17.50 GEL\/\u043c\u0435\u0448\u043e\u043a\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvGlueCost\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u041d\u0430\u043a\u0440\u044b\u0432\u043e\u0447\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0437\u0430\u0431\u043e\u0440\u0430 \u2014 6,6 \u0448\u0442.\/\u043c\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvCapQuantity\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u041d\u0430\u043a\u0440\u044b\u0432\u043e\u0447\u043d\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u2014 2.35 GEL\/\u0448\u0442.\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvCapCost\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-row\">\r\n      <span class=\"dv-row-name\">\r\n        \u041c\u043e\u043d\u0442\u0430\u0436 \u043d\u0430\u043a\u0440\u044b\u0432\u043e\u0447\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u2014 15 GEL\/\u043f\u043e\u0433. \u043c\r\n      <\/span>\r\n      <span class=\"dv-row-value\" id=\"dvCapLabor\">\u2014<\/span>\r\n    <\/div>\r\n\r\n    <div class=\"dv-card-total\">\r\n      \u041a\u043b\u0435\u0439-\u0446\u0435\u043c\u0435\u043d\u0442 \u0438 \u043d\u0430\u043a\u0440\u044b\u0432\u043e\u0447\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b::\r\n      <span id=\"dvFinishingTotal\">\u2014<\/span>\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n<\/div>\r\n\r\n\r\n\r\n<!-- \u0418\u0442\u043e\u0433\u0438 -->\r\n\r\n<div class=\"dv-summary\">\r\n\r\n  <h3 class=\"dv-section-title\">\r\n\r\n    <span class=\"dv-section-number\">\r\n      2\r\n    <\/span>\r\n\r\n    \u0421\u0432\u043e\u0434\u043d\u0430\u044f \u0441\u043c\u0435\u0442\u0430 \u0440\u0430\u0441\u0445\u043e\u0434\u043e\u0432\r\n\r\n  <\/h3>\r\n\r\n\r\n  <div class=\"dv-summary-grid\">\r\n\r\n    <div class=\"dv-summary-item\">\r\n\r\n      <span class=\"dv-summary-label\">\r\n        \u041c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b\r\n      <\/span>\r\n\r\n      <span\r\n        class=\"dv-summary-value\"\r\n        id=\"dvMaterialsSummary\"\r\n      >\u2014<\/span>\r\n\r\n    <\/div>\r\n\r\n\r\n    <div class=\"dv-summary-item\">\r\n\r\n      <span class=\"dv-summary-label\">\r\n        \u0420\u0430\u0431\u043e\u0442\u044b\r\n      <\/span>\r\n\r\n      <span\r\n        class=\"dv-summary-value\"\r\n        id=\"dvLaborSummary\"\r\n      >\u2014<\/span>\r\n\r\n    <\/div>\r\n\r\n\r\n    <div class=\"dv-summary-item\">\r\n\r\n      <span class=\"dv-summary-label\">\r\n        \u0422\u0435\u0445\u043d\u0438\u043a\u0430 \u0438 \u0443\u0441\u043b\u0443\u0433\u0438\r\n      <\/span>\r\n\r\n      <span\r\n        class=\"dv-summary-value\"\r\n        id=\"dvServiceSummary\"\r\n      >\u2014<\/span>\r\n\r\n    <\/div>\r\n\r\n\r\n    <div class=\"dv-summary-item\">\r\n\r\n      <span class=\"dv-summary-label\">\r\n        \u0420\u0430\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b \u2014 5% \u2014 5%\r\n      <\/span>\r\n\r\n      <span\r\n        class=\"dv-summary-value\"\r\n        id=\"dvExtraSummary\"\r\n      >\u2014<\/span>\r\n\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n\r\n  <div class=\"dv-grand-total\">\r\n\r\n    <small>\r\n      \u041e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u0430\u044f \u043f\u043e\u043b\u043d\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0437\u0430\u0431\u043e\u0440\u0430\r\n    <\/small>\r\n\r\n    <strong id=\"dvGrandTotal\">\r\n      \u2014\r\n    <\/strong>\r\n\r\n  <\/div>\r\n\r\n\r\n  <button\r\n    type=\"button\"\r\n    class=\"dv-pdf-button\"\r\n    id=\"dvDownloadPdf\"\r\n  >\r\n    \ud83d\udcc4 PDF-\ud83d\udcc4 \u0421\u043a\u0430\u0447\u0430\u0442\u044c PDF\r\n  <\/button>\r\n\r\n\r\n  <div class=\"dv-call-request\" id=\"dvFenceCallRequest\">\r\n    <h4 class=\"dv-call-request-title\">\u041d\u0443\u0436\u043d\u0430 \u043a\u043e\u043d\u0441\u0443\u043b\u044c\u0442\u0430\u0446\u0438\u044f \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438??<\/h4>\r\n    <p class=\"dv-call-request-text\">\r\n      \u0417\u0430\u043a\u0430\u0436\u0438\u0442\u0435 \u0437\u0432\u043e\u043d\u043e\u043a \u043e\u0442 \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=\"dvFenceCallRow\">\r\n      <input\r\n        class=\"dv-call-phone\"\r\n        id=\"dvFenceCallPhone\"\r\n        type=\"tel\"\r\n        inputmode=\"tel\"\r\n        autocomplete=\"tel\"\r\n        placeholder=\"\u041d\u0430\u043f\u0440.: 599123456: 599123456\"\r\n      >\r\n\r\n      <button\r\n        class=\"dv-request-call-btn\"\r\n        id=\"dvFenceRequestCall\"\r\n        type=\"button\"\r\n      >\r\n        \u0417\u0430\u043a\u0430\u0437\u0430\u0442\u044c \u0437\u0432\u043e\u043d\u043e\u043a \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438\r\n      <\/button>\r\n    <\/div>\r\n\r\n    <div\r\n      class=\"dv-call-request-status\"\r\n      id=\"dvFenceCallStatus\"\r\n      aria-live=\"polite\"\r\n    ><\/div>\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n\r\n<!-- \u0414\u0440\u0443\u0433\u0438\u0435 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440\u044b -->\r\n\r\n<div class=\"dv-related\">\r\n\r\n  <div class=\"dv-related-grid\">\r\n\r\n    <a\r\n      class=\"dv-related-link\"\r\n      href=\"https:\/\/datvale.ge\/ru\/construction-calculator\/\"\r\n      target=\"_blank\"\r\n      rel=\"noopener\"\r\n    >\r\n\r\n      <span class=\"dv-related-icon\">\r\n        \ud83c\udfd7\ufe0f\r\n      <\/span>\r\n\r\n      <span class=\"dv-related-text\">\r\n\r\n        <strong>\r\n          \u041a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0434\u043e\u043c\u0430\r\n        <\/strong>\r\n\r\n        <small>\r\n          \u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u0443\u044e \u043f\u043e\u043b\u043d\u0443\u044e \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0434\u043e\u043c\u0430\r\n        <\/small>\r\n\r\n      <\/span>\r\n\r\n      <span class=\"dv-related-arrow\">\r\n        \u2192\r\n      <\/span>\r\n\r\n    <\/a>\r\n\r\n\r\n    <a\r\n      class=\"dv-related-link\"\r\n      href=\"https:\/\/datvale.ge\/ru\/pool-calculator\/\"\r\n      target=\"_blank\"\r\n      rel=\"noopener\"\r\n    >\r\n\r\n      <span class=\"dv-related-icon\">\r\n        \ud83d\udca7\r\n      <\/span>\r\n\r\n      <span class=\"dv-related-text\">\r\n\r\n        <strong>\r\n          \u041a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430\r\n        <\/strong>\r\n\r\n        <small>\r\n          \u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u0443\u044e \u043f\u043e\u043b\u043d\u0443\u044e \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0431\u0430\u0441\u0441\u0435\u0439\u043d\u0430\r\n        <\/small>\r\n\r\n      <\/span>\r\n\r\n      <span class=\"dv-related-arrow\">\r\n        \u2192\r\n      <\/span>\r\n\r\n    <\/a>\r\n\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n<\/div>\r\n<\/div>\r\n\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<script src=\"https:\/\/datvale.ge\/wp-content\/uploads\/datvale-assets\/jspdf.umd.min.js\"><\/script>\r\n\r\n\r\n<script>\r\n(function () {\r\n\r\n\"use strict\";\r\n\r\n\r\nconst root =\r\n  document.getElementById(\"dv-fence-calculator\");\r\n\r\nif (!root) return;\r\n\r\n\r\nconst get = function(id) {\r\n  return root.querySelector(\"#\" + id);\r\n};\r\n\r\n\r\n\r\nconst prices = {\r\n\r\n  earthRemovalPerM3:25,\r\n\r\n  tractorService:600,\r\n\r\n  timberPerM3:900,\r\n\r\n  concretePerM3:235,\r\n\r\n  concreteTransportPerM3:27,\r\n\r\n  pumpPerDay:700,\r\n\r\n  pumpDays:3,\r\n\r\n  foundationLaborPerMeter:55,\r\n\r\n  topBeamLaborPerMeter:55,\r\n\r\n  columnLaborPerPiece:55,\r\n\r\n  rebarPerTon:2100,\r\n\r\n  blockPerPiece:3.5,\r\n\r\n  blockLaborPerPiece:3,\r\n\r\n  gluePerBag:17.5,\r\n\r\n  capPerPiece:2.35,\r\n\r\n  capLaborPerMeter:15\r\n\r\n};\r\n\r\n\r\n\r\nconst constants = {\r\n\r\n  foundationWidth:0.3,\r\n\r\n  foundationDepth:0.5,\r\n\r\n  columnWidth:0.3,\r\n\r\n  columnDepth:0.3,\r\n\r\n  columnSpacing:3,\r\n\r\n  topBeamWidth:0.2,\r\n\r\n  topBeamHeight:0.2,\r\n\r\n  concreteWaste:1.1,\r\n\r\n  earthWaste:1.1,\r\n\r\n  timberThickness:0.025,\r\n\r\n  timberWaste:1.1,\r\n\r\n  rebarTonsPerConcreteM3:0.12,\r\n\r\n  blocksPerM2:12.5,\r\n\r\n  blockWaste:1.1,\r\n\r\n  blocksPerGlueBag:60,\r\n\r\n  capsPerMeter:6.6\r\n\r\n};\r\n\r\n\r\n\r\nfunction numberValue(id) {\r\n\r\n  const input = get(id);\r\n\r\n  if (!input) return 0;\r\n\r\n\r\n  const value =\r\n    parseFloat(\r\n      String(input.value).replace(\",\", \".\")\r\n    );\r\n\r\n\r\n  return Number.isFinite(value)\r\n    ? value\r\n    : 0;\r\n}\r\n\r\n\r\n\r\nfunction money(value) {\r\n\r\n  return new Intl.NumberFormat(\r\n    \"ru-RU\",\r\n    {\r\n      minimumFractionDigits:0,\r\n      maximumFractionDigits:0\r\n    }\r\n  ).format(value) + \" GEL\";\r\n\r\n}\r\n\r\n\r\n\r\nfunction decimal(value,digits) {\r\n\r\n  return new Intl.NumberFormat(\r\n    \"ru-RU\",\r\n    {\r\n      minimumFractionDigits:digits,\r\n      maximumFractionDigits:digits\r\n    }\r\n  ).format(value);\r\n\r\n}\r\n\r\n\r\n\r\nfunction setText(id,value) {\r\n\r\n  const element = get(id);\r\n\r\n  if (element) {\r\n    element.textContent = value;\r\n  }\r\n\r\n}\r\n\r\n\r\n\r\n\/*\r\n * PDF \u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 PDF \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442\u0441\u044f \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 Datvale..\r\n * \u0412\u043d\u0435\u0448\u043d\u0438\u0439 CDN \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f..\r\n *\/\r\n\r\n\r\n\r\nfunction validateFenceInputs(showError) {\r\n\r\n  const landLength = numberValue(\"dvLandLength\");\r\n  const landWidth = numberValue(\"dvLandWidth\");\r\n  const fenceHeight = numberValue(\"dvFenceHeight\");\r\n  const gateWidth = numberValue(\"dvGateWidth\");\r\n\r\n  const error = get(\"dvFenceError\");\r\n  const output = get(\"dvFenceOutput\");\r\n\r\n  const inputIds = [\r\n    \"dvLandLength\",\r\n    \"dvLandWidth\",\r\n    \"dvFenceHeight\",\r\n    \"dvGateWidth\"\r\n  ];\r\n\r\n  const allFieldsFilled =\r\n    inputIds.every(function(id) {\r\n      const input = get(id);\r\n      return (\r\n        input &&\r\n        String(input.value).trim() !== \"\"\r\n      );\r\n    });\r\n\r\n  const fullPerimeter =\r\n    (landLength + landWidth) * 2;\r\n\r\n  const workPerimeter =\r\n    fullPerimeter - gateWidth;\r\n\r\n  const isInvalid =\r\n    landLength <= 0 ||\r\n    landWidth <= 0 ||\r\n    fenceHeight <= 0 ||\r\n    gateWidth < 0 ||\r\n    workPerimeter <= 0;\r\n\r\n  if (!allFieldsFilled || isInvalid) {\r\n\r\n    if (output) {\r\n      output.classList.remove(\"dv-show\");\r\n    }\r\n\r\n    if (error) {\r\n      error.style.display =\r\n        showError ? \"block\" : \"none\";\r\n    }\r\n\r\n    return false;\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\nlet dvFenceClickBusy = false;\r\n\r\nfunction showFenceFreeNextStep() {\r\n  const box = get(\"dvFenceFreeNextStep\");\r\n  if (box) box.classList.add(\"dv-show\");\r\n}\r\n\r\nfunction openFenceRegistrationPopup() {\r\n  const redirect =\r\n    window.location.pathname +\r\n    window.location.search +\r\n    window.location.hash;\r\n\r\n  if (typeof window.openAuthModal === \"function\") {\r\n    window.openAuthModal(\"register\", redirect);\r\n    return true;\r\n  }\r\n\r\n  const trigger = document.querySelector(\r\n    '.cpdf-auth[data-auth-action=\"register\"]'\r\n  );\r\n\r\n  if (trigger) {\r\n    trigger.setAttribute(\"data-redirect\", redirect);\r\n    trigger.click();\r\n    return true;\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\nfunction openFencePackagePrompt() {\r\n  if (\r\n    typeof window.jQuery !== \"undefined\" &&\r\n    window.jQuery(\"#membership-modal\").length\r\n  ) {\r\n    window.jQuery(\"#membership-modal\").css(\"display\", \"block\");\r\n    return true;\r\n  }\r\n\r\n  const trigger = document.querySelector(\r\n    \"#membership-purchase-btn, .membership-purchase-btn, [data-membership-modal]\"\r\n  );\r\n\r\n  if (trigger) {\r\n    trigger.click();\r\n    return true;\r\n  }\r\n\r\n  window.location.href = \"\/packages\/\";\r\n  return false;\r\n}\r\n\r\nasync function authorizeFenceFlow() {\r\n  if (\r\n    !window.DatvaleHtmlAccess ||\r\n    typeof window.DatvaleHtmlAccess.authorize !== \"function\"\r\n  ) {\r\n    alert(\"\u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043d\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043b\u0430\u0441\u044c. \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    return {allowed:false, mode:\"error\"};\r\n  }\r\n\r\n  const result = await window.DatvaleHtmlAccess.authorize(\"fence\");\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    return {\r\n      allowed:true,\r\n      mode:result.data.mode || \"membership\"\r\n    };\r\n  }\r\n\r\n  const data = result && result.data ? result.data : {};\r\n\r\n  if (data.code === \"login_required\") {\r\n    openFenceRegistrationPopup();\r\n    return {allowed:false, mode:\"login_required\"};\r\n  }\r\n\r\n  if (data.code === \"package_required\") {\r\n    openFencePackagePrompt();\r\n    return {allowed:false, mode:\"package_required\"};\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 \u0441\u043d\u043e\u0432\u0430..\"\r\n  );\r\n\r\n  return {allowed:false, mode:\"error\"};\r\n}\r\n\r\nasync function claimFenceFreeCalculation() {\r\n  if (\r\n    !window.DatvaleHtmlAccess ||\r\n    typeof window.DatvaleHtmlAccess.claimFree !== \"function\"\r\n  ) {\r\n    return false;\r\n  }\r\n\r\n  const result = await window.DatvaleHtmlAccess.claimFree(\"fence\");\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\nfunction calculateFence(showError) {\r\n\r\n  const landLength =\r\n    numberValue(\"dvLandLength\");\r\n\r\n  const landWidth =\r\n    numberValue(\"dvLandWidth\");\r\n\r\n  const fenceHeight =\r\n    numberValue(\"dvFenceHeight\");\r\n\r\n  const gateWidth =\r\n    numberValue(\"dvGateWidth\");\r\n\r\n\r\n  const error =\r\n    get(\"dvFenceError\");\r\n\r\n  const output =\r\n    get(\"dvFenceOutput\");\r\n\r\n\r\n  const inputIds = [\r\n\r\n    \"dvLandLength\",\r\n\r\n    \"dvLandWidth\",\r\n\r\n    \"dvFenceHeight\",\r\n\r\n    \"dvGateWidth\"\r\n\r\n  ];\r\n\r\n\r\n  const allFieldsFilled =\r\n    inputIds.every(function(id) {\r\n\r\n      const input = get(id);\r\n\r\n\r\n      return (\r\n        input &&\r\n        String(input.value).trim() !== \"\"\r\n      );\r\n\r\n    });\r\n\r\n\r\n  const fullPerimeter =\r\n    (\r\n      landLength +\r\n      landWidth\r\n    ) * 2;\r\n\r\n\r\n  const workPerimeter =\r\n    fullPerimeter -\r\n    gateWidth;\r\n\r\n\r\n  const isInvalid =\r\n    landLength <= 0 ||\r\n    landWidth <= 0 ||\r\n    fenceHeight <= 0 ||\r\n    gateWidth < 0 ||\r\n    workPerimeter <= 0;\r\n\r\n\r\n  if (\r\n    !allFieldsFilled ||\r\n    isInvalid\r\n  ) {\r\n\r\n    if (output) {\r\n\r\n      output.classList.remove(\r\n        \"dv-show\"\r\n      );\r\n\r\n    }\r\n\r\n\r\n    if (error) {\r\n\r\n      error.style.display =\r\n        showError\r\n          ? \"block\"\r\n          : \"none\";\r\n\r\n    }\r\n\r\n\r\n    return false;\r\n  }\r\n\r\n\r\n  if (error) {\r\n\r\n    error.style.display =\r\n      \"none\";\r\n\r\n  }\r\n\r\n\r\n\r\n  \/* \u0421\u0442\u043e\u043b\u0431\u044b *\/\r\n\r\n  const columnCount =\r\n    Math.max(\r\n      4,\r\n      Math.ceil(\r\n        workPerimeter \/\r\n        constants.columnSpacing\r\n      ) + 2\r\n    );\r\n\r\n\r\n\r\n  \/* \u0417\u0435\u043c\u043b\u044f\u043d\u044b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b *\/\r\n\r\n  const excavationNet =\r\n    workPerimeter *\r\n    constants.foundationWidth *\r\n    constants.foundationDepth;\r\n\r\n\r\n  const excavationWithWaste =\r\n    excavationNet *\r\n    constants.earthWaste;\r\n\r\n\r\n  const excavationCost =\r\n    excavationWithWaste *\r\n    prices.earthRemovalPerM3;\r\n\r\n\r\n  const tractorCost =\r\n    prices.tractorService;\r\n\r\n\r\n  const earthSectionTotal =\r\n    excavationCost +\r\n    tractorCost;\r\n\r\n\r\n\r\n  \/* \u041e\u043f\u0430\u043b\u0443\u0431\u043a\u0430 *\/\r\n\r\n  const foundationFormArea =\r\n    workPerimeter *\r\n    constants.foundationDepth *\r\n    2;\r\n\r\n\r\n  const columnFormArea =\r\n    columnCount *\r\n    constants.columnWidth *\r\n    fenceHeight *\r\n    4;\r\n\r\n\r\n  const topFormArea =\r\n    workPerimeter *\r\n    constants.topBeamHeight *\r\n    2;\r\n\r\n\r\n  const totalFormArea =\r\n    foundationFormArea +\r\n    columnFormArea +\r\n    topFormArea;\r\n\r\n\r\n  const timberVolume =\r\n    totalFormArea *\r\n    constants.timberThickness *\r\n    constants.timberWaste;\r\n\r\n\r\n  const timberCost =\r\n    timberVolume *\r\n    prices.timberPerM3;\r\n\r\n\r\n\r\n  \/* \u0411\u0435\u0442\u043e\u043d *\/\r\n\r\n  const foundationConcreteNet =\r\n    workPerimeter *\r\n    constants.foundationWidth *\r\n    constants.foundationDepth;\r\n\r\n\r\n  const columnConcreteNet =\r\n    columnCount *\r\n    constants.columnWidth *\r\n    constants.columnDepth *\r\n    fenceHeight;\r\n\r\n\r\n  const topConcreteNet =\r\n    workPerimeter *\r\n    constants.topBeamWidth *\r\n    constants.topBeamHeight;\r\n\r\n\r\n  const totalConcreteNet =\r\n    foundationConcreteNet +\r\n    columnConcreteNet +\r\n    topConcreteNet;\r\n\r\n\r\n  const totalConcreteOrder =\r\n    totalConcreteNet *\r\n    constants.concreteWaste;\r\n\r\n\r\n  const concreteCost =\r\n    totalConcreteOrder *\r\n    prices.concretePerM3;\r\n\r\n\r\n  const concreteTransportCost =\r\n    totalConcreteOrder *\r\n    prices.concreteTransportPerM3;\r\n\r\n\r\n  const pumpCost =\r\n    prices.pumpPerDay *\r\n    prices.pumpDays;\r\n\r\n\r\n  const foundationLaborCost =\r\n    workPerimeter *\r\n    prices.foundationLaborPerMeter;\r\n\r\n\r\n  const columnLaborCost =\r\n    columnCount *\r\n    prices.columnLaborPerPiece;\r\n\r\n\r\n  const topBeamLaborCost =\r\n    workPerimeter *\r\n    prices.topBeamLaborPerMeter;\r\n\r\n\r\n  const concreteLaborCost =\r\n    foundationLaborCost +\r\n    columnLaborCost +\r\n    topBeamLaborCost;\r\n\r\n\r\n  const concreteSectionTotal =\r\n    concreteCost +\r\n    concreteTransportCost +\r\n    pumpCost +\r\n    concreteLaborCost;\r\n\r\n\r\n\r\n  \/* \u0410\u0440\u043c\u0430\u0442\u0443\u0440\u0430 *\/\r\n\r\n  const rebarTons =\r\n    totalConcreteNet *\r\n    constants.rebarTonsPerConcreteM3;\r\n\r\n\r\n  const rebarKg =\r\n    rebarTons *\r\n    1000;\r\n\r\n\r\n  const rebarCost =\r\n    rebarTons *\r\n    prices.rebarPerTon;\r\n\r\n\r\n\r\n  \/* \u0411\u043b\u043e\u043a\u0438 *\/\r\n\r\n  const columnsOccupiedLength =\r\n    columnCount *\r\n    constants.columnWidth;\r\n\r\n\r\n  const clearBlockLength =\r\n    Math.max(\r\n      0,\r\n      workPerimeter -\r\n      columnsOccupiedLength\r\n    );\r\n\r\n\r\n  const blockArea =\r\n    clearBlockLength *\r\n    fenceHeight;\r\n\r\n\r\n  const netBlockQuantity =\r\n    blockArea *\r\n    constants.blocksPerM2;\r\n\r\n\r\n  const purchaseBlockQuantity =\r\n    Math.ceil(\r\n      netBlockQuantity *\r\n      constants.blockWaste\r\n    );\r\n\r\n\r\n  const installedBlockQuantity =\r\n    Math.ceil(\r\n      netBlockQuantity\r\n    );\r\n\r\n\r\n  const blockCost =\r\n    purchaseBlockQuantity *\r\n    prices.blockPerPiece;\r\n\r\n\r\n  const blockLaborCost =\r\n    installedBlockQuantity *\r\n    prices.blockLaborPerPiece;\r\n\r\n\r\n  const blockSectionTotal =\r\n    blockCost +\r\n    blockLaborCost;\r\n\r\n\r\n\r\n  \/* \u041a\u043b\u0435\u0439 *\/\r\n\r\n  const glueBags =\r\n    Math.ceil(\r\n      purchaseBlockQuantity \/\r\n      constants.blocksPerGlueBag\r\n    );\r\n\r\n\r\n  const glueCost =\r\n    glueBags *\r\n    prices.gluePerBag;\r\n\r\n\r\n\r\n  \/* \u041d\u0430\u043a\u0440\u044b\u0432\u043e\u0447\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b *\/\r\n\r\n  const capQuantity =\r\n    Math.ceil(\r\n      workPerimeter *\r\n      constants.capsPerMeter\r\n    );\r\n\r\n\r\n  const capCost =\r\n    capQuantity *\r\n    prices.capPerPiece;\r\n\r\n\r\n  const capLaborCost =\r\n    workPerimeter *\r\n    prices.capLaborPerMeter;\r\n\r\n\r\n  const finishingTotal =\r\n    glueCost +\r\n    capCost +\r\n    capLaborCost;\r\n\r\n\r\n\r\n  \/* \u0418\u0442\u043e\u0433\u0438 *\/\r\n\r\n  const materialsTotal =\r\n    timberCost +\r\n    concreteCost +\r\n    rebarCost +\r\n    blockCost +\r\n    glueCost +\r\n    capCost;\r\n\r\n\r\n  const laborTotal =\r\n    concreteLaborCost +\r\n    blockLaborCost +\r\n    capLaborCost;\r\n\r\n\r\n  const servicesTotal =\r\n    earthSectionTotal +\r\n    concreteTransportCost +\r\n    pumpCost;\r\n\r\n\r\n  const subtotal =\r\n    materialsTotal +\r\n    laborTotal +\r\n    servicesTotal;\r\n\r\n\r\n  const extraCost =\r\n    subtotal *\r\n    0.05;\r\n\r\n\r\n  const grandTotal =\r\n    subtotal +\r\n    extraCost;\r\n\r\n\r\n\r\n  \/* \u0412\u044b\u0432\u043e\u0434 \u0434\u0430\u043d\u043d\u044b\u0445 *\/\r\n\r\n  setText(\r\n    \"dvFullPerimeter\",\r\n    decimal(\r\n      fullPerimeter,\r\n      1\r\n    ) + \"  \u043c\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvWorkPerimeter\",\r\n    decimal(\r\n      workPerimeter,\r\n      1\r\n    ) + \"  \u043c\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvColumnCount\",\r\n    columnCount +\r\n    \"  \u0448\u0442.\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvBlockArea\",\r\n    decimal(\r\n      blockArea,\r\n      1\r\n    ) + \"  \u043c\u00b2\u00b2\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvExcavationNet\",\r\n    decimal(\r\n      excavationNet,\r\n      2\r\n    ) + \"  \u043c\u00b3\u00b3\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvExcavationWaste\",\r\n    decimal(\r\n      excavationWithWaste,\r\n      2\r\n    ) + \"  \u043c\u00b3\u00b3\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvExcavationCost\",\r\n    money(\r\n      excavationCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvTractorCost\",\r\n    money(\r\n      tractorCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvEarthTotal\",\r\n    money(\r\n      earthSectionTotal\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvFoundationFormArea\",\r\n    decimal(\r\n      foundationFormArea,\r\n      1\r\n    ) + \"  \u043c\u00b2\u00b2\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvColumnFormArea\",\r\n    decimal(\r\n      columnFormArea,\r\n      1\r\n    ) + \"  \u043c\u00b2\u00b2\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvTopFormArea\",\r\n    decimal(\r\n      topFormArea,\r\n      1\r\n    ) + \"  \u043c\u00b2\u00b2\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvTimberVolume\",\r\n    decimal(\r\n      timberVolume,\r\n      2\r\n    ) + \"  \u043c\u00b3\u00b3\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvTimberCost\",\r\n    money(\r\n      timberCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvFormworkTotal\",\r\n    money(\r\n      timberCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvFoundationConcrete\",\r\n    decimal(\r\n      foundationConcreteNet *\r\n      constants.concreteWaste,\r\n      2\r\n    ) + \"  \u043c\u00b3\u00b3\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvColumnConcrete\",\r\n    decimal(\r\n      columnConcreteNet *\r\n      constants.concreteWaste,\r\n      2\r\n    ) + \"  \u043c\u00b3\u00b3\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvTopConcrete\",\r\n    decimal(\r\n      topConcreteNet *\r\n      constants.concreteWaste,\r\n      2\r\n    ) + \"  \u043c\u00b3\u00b3\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvTotalConcrete\",\r\n    decimal(\r\n      totalConcreteOrder,\r\n      2\r\n    ) + \"  \u043c\u00b3\u00b3\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvConcreteCost\",\r\n    money(\r\n      concreteCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvConcreteTransport\",\r\n    money(\r\n      concreteTransportCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvPumpCost\",\r\n    money(\r\n      pumpCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvFoundationLabor\",\r\n    money(\r\n      foundationLaborCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvColumnLabor\",\r\n    money(\r\n      columnLaborCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvTopBeamLabor\",\r\n    money(\r\n      topBeamLaborCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvConcreteTotal\",\r\n    money(\r\n      concreteSectionTotal\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvRebarKg\",\r\n    decimal(\r\n      rebarKg,\r\n      0\r\n    ) + \"  \u043a\u0433\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvRebarTons\",\r\n    decimal(\r\n      rebarTons,\r\n      2\r\n    ) + \"  \u0442\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvRebarCost\",\r\n    money(\r\n      rebarCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvRebarTotal\",\r\n    money(\r\n      rebarCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvNetBlocks\",\r\n    installedBlockQuantity +\r\n    \"  \u0448\u0442.\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvPurchaseBlocks\",\r\n    purchaseBlockQuantity +\r\n    \"  \u0448\u0442.\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvBlockCost\",\r\n    money(\r\n      blockCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvBlockLabor\",\r\n    money(\r\n      blockLaborCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvBlockSectionTotal\",\r\n    money(\r\n      blockSectionTotal\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvGlueBags\",\r\n    glueBags +\r\n    \"  \u043c\u0435\u0448\u043a\u043e\u0432\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvGlueCost\",\r\n    money(\r\n      glueCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvCapQuantity\",\r\n    capQuantity +\r\n    \"  \u0448\u0442.\"\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvCapCost\",\r\n    money(\r\n      capCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvCapLabor\",\r\n    money(\r\n      capLaborCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvFinishingTotal\",\r\n    money(\r\n      finishingTotal\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvMaterialsSummary\",\r\n    money(\r\n      materialsTotal\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvLaborSummary\",\r\n    money(\r\n      laborTotal\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvServiceSummary\",\r\n    money(\r\n      servicesTotal\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvExtraSummary\",\r\n    money(\r\n      extraCost\r\n    )\r\n  );\r\n\r\n\r\n  setText(\r\n    \"dvGrandTotal\",\r\n    money(\r\n      grandTotal\r\n    )\r\n  );\r\n\r\n\r\n  if (output) {\r\n\r\n    output.classList.remove(\r\n      \"dv-show\"\r\n    );\r\n\r\n\r\n    void output.offsetWidth;\r\n\r\n\r\n    output.classList.add(\r\n      \"dv-show\"\r\n    );\r\n\r\n  }\r\n\r\n\r\n  return true;\r\n\r\n}\r\n\r\n\r\n\r\n\/* \u041a\u043d\u043e\u043f\u043a\u0430 \u0440\u0430\u0441\u0447\u0451\u0442\u0430 *\/\r\n\r\nconst calculateButton =\r\n  get(\r\n    \"dvCalculateFenceFreeFlowV2\"\r\n  );\r\n\r\n\r\nif (calculateButton) {\r\n\r\n  calculateButton.addEventListener(\r\n    \"click\",\r\n    async function(event) {\r\n\r\n      \/*\r\n       * \u041f\u043e\u043b\u043d\u043e\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u0430\u0440\u044b\u0445\/global \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 click..\r\n       * \u042d\u0442\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u043e\u0432\u044b\u0439 flow..\r\n       *\/\r\n      event.preventDefault();\r\n      event.stopPropagation();\r\n      event.stopImmediatePropagation();\r\n\r\n\r\n      if (dvFenceClickBusy) {\r\n        return;\r\n      }\r\n\r\n\r\n      if (!validateFenceInputs(true)) {\r\n        return;\r\n      }\r\n\r\n\r\n      dvFenceClickBusy = true;\r\n\r\n\r\n      const originalText =\r\n        calculateButton.textContent;\r\n\r\n\r\n      calculateButton.disabled = true;\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 authorizeFenceFlow();\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          calculateFence(\r\n            true\r\n          );\r\n\r\n\r\n        if (!success) {\r\n          return;\r\n        }\r\n\r\n\r\n        triggerFenceCompletedSms();\r\n\r\n\r\n        if (access.mode === \"free\") {\r\n        const claimed = await claimFenceFreeCalculation();\r\n\r\n        if (claimed) {\r\n          showFenceFreeNextStep();\r\n        }\r\n      }\r\n\r\n\r\n        const output =\r\n          get(\r\n            \"dvFenceOutput\"\r\n          );\r\n\r\n\r\n        if (output) {\r\n\r\n          window.setTimeout(\r\n            function() {\r\n\r\n              const rect =\r\n                output.getBoundingClientRect();\r\n\r\n\r\n              const offset =\r\n                window.innerWidth <= 760\r\n                  ? 105\r\n                  : 135;\r\n\r\n\r\n              const target =\r\n                window.pageYOffset +\r\n                rect.top -\r\n                offset;\r\n\r\n\r\n              window.scrollTo({\r\n                top:\r\n                  Math.max(\r\n                    0,\r\n                    target\r\n                  ),\r\n                behavior:\r\n                  \"smooth\"\r\n              });\r\n\r\n            },\r\n            120\r\n          );\r\n\r\n        }\r\n\r\n\r\n      } finally {\r\n\r\n        calculateButton.disabled = false;\r\n        calculateButton.textContent =\r\n          originalText;\r\n\r\n        dvFenceClickBusy = false;\r\n      }\r\n\r\n    },\r\n    true\r\n  );\r\n\r\n}\r\n\r\n\r\n\r\n\/* GoSMS \u2014 GoSMS \u2014 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432 *\/\r\nconst dvFenceCallRequest=get(\"dvFenceCallRequest\");\r\nconst dvFenceRequestCall=get(\"dvFenceRequestCall\");\r\nconst dvFenceCallPhone=get(\"dvFenceCallPhone\");\r\nconst dvFenceCallStatus=get(\"dvFenceCallStatus\");\r\nconst dvFenceCallRow=get(\"dvFenceCallRow\");\r\n\r\nlet dvFenceCallConfig={\r\n  enabled:false,\r\n  isLoggedIn:false,\r\n  hasSavedPhone:false\r\n};\r\n\r\nfunction fenceAjaxUrl(){\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\nfunction setFenceCallStatus(message,type){\r\n  if(!dvFenceCallStatus)return;\r\n  dvFenceCallStatus.textContent=message||\"\";\r\n  dvFenceCallStatus.classList.remove(\"dv-success\",\"dv-error\");\r\n  if(type){\r\n    dvFenceCallStatus.classList.add(type===\"success\"?\"dv-success\":\"dv-error\");\r\n  }\r\n}\r\n\r\nfunction syncFenceCallPhoneVisibility(){\r\n  const useSavedPhone=\r\n    dvFenceCallConfig.isLoggedIn &&\r\n    dvFenceCallConfig.hasSavedPhone;\r\n\r\n  if(dvFenceCallRow){\r\n    dvFenceCallRow.classList.toggle(\"dv-has-saved-phone\",useSavedPhone);\r\n  }\r\n\r\n  if(dvFenceCallPhone){\r\n    dvFenceCallPhone.required=!useSavedPhone;\r\n    if(useSavedPhone)dvFenceCallPhone.value=\"\";\r\n  }\r\n}\r\n\r\nasync function loadFenceCallConfig(){\r\n  try{\r\n    const response=await fetch(\r\n      fenceAjaxUrl()+\r\n      \"?action=gosms_call_request_config&calculator=fence&_=\"+Date.now(),\r\n      {method:\"GET\",credentials:\"same-origin\",cache:\"no-store\"}\r\n    );\r\n\r\n    const json=await response.json();\r\n    if(!json||!json.success||!json.data)return;\r\n\r\n    dvFenceCallConfig={\r\n      enabled:json.data.enabled===true,\r\n      isLoggedIn:json.data.is_logged_in===true,\r\n      hasSavedPhone:json.data.has_saved_phone===true\r\n    };\r\n\r\n    if(dvFenceCallRequest){\r\n      dvFenceCallRequest.style.display=dvFenceCallConfig.enabled?\"block\":\"none\";\r\n    }\r\n\r\n    syncFenceCallPhoneVisibility();\r\n  }catch(error){\r\n    if(dvFenceCallRequest)dvFenceCallRequest.style.display=\"none\";\r\n  }\r\n}\r\n\r\nasync function requestFenceCompanyCall(){\r\n  if(!dvFenceRequestCall||!dvFenceCallConfig.enabled)return;\r\n\r\n  const useSavedPhone=\r\n    dvFenceCallConfig.isLoggedIn &&\r\n    dvFenceCallConfig.hasSavedPhone;\r\n\r\n  const phone=\r\n    !useSavedPhone && dvFenceCallPhone\r\n      ?String(dvFenceCallPhone.value||\"\").trim()\r\n      :\"\";\r\n\r\n  if(!useSavedPhone&&!phone){\r\n    setFenceCallStatus(\"\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430, \u043d\u0430\u043f\u0440.: 599123456: 599123456\",\"error\");\r\n    if(dvFenceCallPhone)dvFenceCallPhone.focus();\r\n    return;\r\n  }\r\n\r\n  const originalText=dvFenceRequestCall.textContent;\r\n  dvFenceRequestCall.disabled=true;\r\n  dvFenceRequestCall.textContent=\"\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430......\";\r\n  setFenceCallStatus(\"\",null);\r\n\r\n  try{\r\n    const body=new URLSearchParams();\r\n    body.set(\"action\",\"gosms_request_call\");\r\n    body.set(\"calculator\",\"fence\");\r\n    if(phone)body.set(\"phone\",phone);\r\n\r\n    const response=await fetch(fenceAjaxUrl(),{\r\n      method:\"POST\",\r\n      credentials:\"same-origin\",\r\n      headers:{\"Content-Type\":\"application\/x-www-form-urlencoded; charset=UTF-8\"},\r\n      body:body.toString()\r\n    });\r\n\r\n    const json=await response.json();\r\n\r\n    if(json&&json.success){\r\n      setFenceCallStatus(\r\n        json.data&&json.data.message\r\n          ?json.data.message\r\n          :\"\u0412\u0430\u0448\u0430 \u0437\u0430\u044f\u0432\u043a\u0430 \u043f\u0440\u0438\u043d\u044f\u0442\u0430. \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      return;\r\n    }\r\n\r\n    const data=json&&json.data?json.data:{};\r\n\r\n    if(data&&data.disabled){\r\n      dvFenceCallConfig.enabled=false;\r\n      if(dvFenceCallRequest)dvFenceCallRequest.style.display=\"none\";\r\n      return;\r\n    }\r\n\r\n    if(data&&data.need_phone){\r\n      dvFenceCallConfig.hasSavedPhone=false;\r\n      syncFenceCallPhoneVisibility();\r\n      setFenceCallStatus(data.message||\"\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430..\",\"error\");\r\n      if(dvFenceCallPhone)dvFenceCallPhone.focus();\r\n      return;\r\n    }\r\n\r\n    setFenceCallStatus(\r\n      data&&data.message\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\u044f\u0432\u043a\u0443. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0441\u043d\u043e\u0432\u0430..\",\r\n      \"error\"\r\n    );\r\n  }catch(error){\r\n    setFenceCallStatus(\"\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0437\u0430\u044f\u0432\u043a\u0443. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0441\u043d\u043e\u0432\u0430..\",\"error\");\r\n  }finally{\r\n    dvFenceRequestCall.disabled=false;\r\n    dvFenceRequestCall.textContent=originalText;\r\n  }\r\n}\r\n\r\nasync function triggerFenceCompletedSms(){\r\n  try{\r\n    const body=new URLSearchParams();\r\n    body.set(\"action\",\"gosms_calculator_completed\");\r\n    body.set(\"calculator\",\"fence\");\r\n\r\n    await fetch(fenceAjaxUrl(),{\r\n      method:\"POST\",\r\n      credentials:\"same-origin\",\r\n      headers:{\"Content-Type\":\"application\/x-www-form-urlencoded; charset=UTF-8\"},\r\n      body:body.toString()\r\n    });\r\n  }catch(error){\r\n    \/* SMS SMS \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u043c\u0435\u0448\u0430\u0442\u044c \u0440\u0430\u0441\u0447\u0451\u0442\u0443 *\/\r\n  }\r\n}\r\n\r\nloadFenceCallConfig();\r\n\r\nif(dvFenceRequestCall){\r\n  dvFenceRequestCall.addEventListener(\"click\",requestFenceCompanyCall);\r\n}\r\n\r\n\r\n\/*\r\n * PDF \u041f\u0440\u044f\u043c\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 PDF\r\n *\r\n * PDF PDF \u0441\u043e\u0437\u0434\u0430\u0451\u0442\u0441\u044f \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0447\u0435\u0440\u0435\u0437 jsPDF..\r\n * html2canvas \u0438 HTML\/CSS \u0441\u0430\u0439\u0442\u0430 \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f, HTML\/CSS,\r\n * \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043e\u0431\u0440\u0435\u0437\u0430\u0435\u0442\u0441\u044f \u0438 \u0430\u0434\u0430\u043f\u0442\u0438\u0432\u043d\u044b\u0435 \u0441\u0442\u0438\u043b\u0438 \u043d\u0435 \u043c\u0435\u0448\u0430\u044e\u0442..\r\n *\/\r\n\r\nconst pdfButton =\r\n  get(\"dvDownloadPdf\");\r\n\r\n\r\nif (pdfButton) {\r\n\r\n  pdfButton.addEventListener(\r\n    \"click\",\r\n    async function() {\r\n\r\n      const output =\r\n        get(\"dvFenceOutput\");\r\n\r\n\r\n      if (\r\n        !output ||\r\n        !output.classList.contains(\"dv-show\")\r\n      ) {\r\n\r\n        if (!validateFenceInputs(true)) {\r\n          return;\r\n        }\r\n\r\n        const access =\r\n          await authorizeFenceFlow();\r\n\r\n        if (\r\n          !access ||\r\n          !access.allowed\r\n        ) {\r\n          return;\r\n        }\r\n\r\n        const success =\r\n          calculateFence(true);\r\n\r\n        if (!success) {\r\n          return;\r\n        }\r\n\r\n        triggerFenceCompletedSms();\r\n\r\n        if (access.mode === \"free\") {\r\n        const claimed = await claimFenceFreeCalculation();\r\n\r\n        if (claimed) {\r\n          showFenceFreeNextStep();\r\n        }\r\n      }\r\n\r\n      }\r\n\r\n\r\n      const originalHTML =\r\n        pdfButton.innerHTML;\r\n\r\n\r\n      pdfButton.disabled = true;\r\n      pdfButton.textContent = \"PDF \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 PDF......\";\r\n\r\n\r\n      \/*\r\n       * html2pdf bundle-jsPDF \u0443\u0436\u0435 \u0432\u043a\u043b\u044e\u0447\u0451\u043d \u0432 \u043f\u0430\u043a\u0435\u0442 html2pdf..\r\n       *\/\r\n\r\n      const jsPDFCtor =\r\n        window.jspdf &&\r\n        window.jspdf.jsPDF\r\n          ? window.jspdf.jsPDF\r\n          : null;\r\n\r\n\r\n      if (!jsPDFCtor) {\r\n\r\n        pdfButton.disabled = false;\r\n        pdfButton.innerHTML = originalHTML;\r\n\r\n        alert(\r\n          \"jsPDF \u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 jsPDF \u043d\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043b\u0441\u044f. \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      try {\r\n\r\n        const doc =\r\n          new jsPDFCtor({\r\n            orientation:\"portrait\",\r\n            unit:\"mm\",\r\n            format:\"a4\",\r\n            compress:true\r\n          });\r\n\r\n\r\n        const pageWidth =\r\n          doc.internal.pageSize.getWidth();\r\n\r\n        const pageHeight =\r\n          doc.internal.pageSize.getHeight();\r\n\r\n\r\n        const marginX = 10;\r\n        const topMargin = 10;\r\n        const bottomMargin = 10;\r\n        const contentWidth =\r\n          pageWidth - marginX * 2;\r\n\r\n\r\n        let y =\r\n          topMargin;\r\n\r\n\r\n        const blue = [11,58,120];\r\n        const lightBlue = [244,248,253];\r\n        const border = [216,227,239];\r\n        const textDark = [23,53,88];\r\n        const textMuted = [75,96,120];\r\n        const white = [255,255,255];\r\n\r\n\r\n        \/*\r\n         * \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0441 \u0433\u0440\u0443\u0437\u0438\u043d\u0441\u043a\u0438\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u043c::\r\n         * \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0435 \u0448\u0440\u0438\u0444\u0442\u044b jsPDF \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442 \u0433\u0440\u0443\u0437\u0438\u043d\u0441\u043a\u0438\u0439..\r\n         * \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u043c \u0442\u0435\u043a\u0441\u0442 \u0432 SVG-\u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u0442\u0440\u043e\u0447\u043d\u043e..\r\n         * \u0422\u0430\u043a \u0433\u0440\u0443\u0437\u0438\u043d\u0441\u043a\u0438\u0439 \u0442\u0435\u043a\u0441\u0442 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u0447\u043d\u043e..\r\n         *\/\r\n\r\n        async function textToPng(\r\n          text,\r\n          options\r\n        ) {\r\n\r\n          const opts =\r\n            Object.assign(\r\n              {\r\n                fontSize:22,\r\n                fontWeight:400,\r\n                color:\"#173558\",\r\n                width:600,\r\n                align:\"left\",\r\n                paddingX:4,\r\n                paddingY:2\r\n              },\r\n              options || {}\r\n            );\r\n\r\n\r\n          const canvas =\r\n            document.createElement(\"canvas\");\r\n\r\n          const scale = 2;\r\n\r\n          canvas.width =\r\n            Math.max(\r\n              20,\r\n              Math.ceil(opts.width * scale)\r\n            );\r\n\r\n          canvas.height =\r\n            Math.max(\r\n              24,\r\n              Math.ceil(\r\n                (opts.fontSize * 1.8 +\r\n                opts.paddingY * 2) * scale\r\n              )\r\n            );\r\n\r\n\r\n          const ctx =\r\n            canvas.getContext(\"2d\");\r\n\r\n\r\n          ctx.scale(scale, scale);\r\n\r\n          ctx.clearRect(\r\n            0,\r\n            0,\r\n            canvas.width \/ scale,\r\n            canvas.height \/ scale\r\n          );\r\n\r\n\r\n          ctx.fillStyle =\r\n            opts.color;\r\n\r\n          ctx.font =\r\n            opts.fontWeight +\r\n            \" \" +\r\n            opts.fontSize +\r\n            'px \"Segoe UI\", Arial, sans-serif';\r\n\r\n\r\n          ctx.textBaseline =\r\n            \"middle\";\r\n\r\n\r\n          let x =\r\n            opts.paddingX;\r\n\r\n\r\n          if (\r\n            opts.align === \"center\"\r\n          ) {\r\n\r\n            ctx.textAlign =\r\n              \"center\";\r\n\r\n            x =\r\n              opts.width \/ 2;\r\n\r\n          } else if (\r\n            opts.align === \"right\"\r\n          ) {\r\n\r\n            ctx.textAlign =\r\n              \"right\";\r\n\r\n            x =\r\n              opts.width -\r\n              opts.paddingX;\r\n\r\n          } else {\r\n\r\n            ctx.textAlign =\r\n              \"left\";\r\n\r\n          }\r\n\r\n\r\n          ctx.fillText(\r\n            String(text || \"\"),\r\n            x,\r\n            canvas.height \/ scale \/ 2\r\n          );\r\n\r\n\r\n          return {\r\n            data:\r\n              canvas.toDataURL(\r\n                \"image\/png\"\r\n              ),\r\n            width:\r\n              opts.width,\r\n            height:\r\n              canvas.height \/ scale\r\n          };\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          mmWidth,\r\n          options\r\n        ) {\r\n\r\n          const rendered =\r\n            await textToPng(\r\n              text,\r\n              Object.assign(\r\n                {\r\n                  width:widthPx\r\n                },\r\n                options || {}\r\n              )\r\n            );\r\n\r\n\r\n          const ratio =\r\n            rendered.height \/\r\n            rendered.width;\r\n\r\n\r\n          const mmHeight =\r\n            mmWidth * ratio;\r\n\r\n\r\n          doc.addImage(\r\n            rendered.data,\r\n            \"PNG\",\r\n            x,\r\n            yPos,\r\n            mmWidth,\r\n            mmHeight,\r\n            undefined,\r\n            \"FAST\"\r\n          );\r\n\r\n\r\n          return mmHeight;\r\n\r\n        }\r\n\r\n\r\n        function ensureSpace(\r\n          needed\r\n        ) {\r\n\r\n          if (\r\n            y + needed >\r\n            pageHeight -\r\n            bottomMargin\r\n          ) {\r\n\r\n            doc.addPage();\r\n\r\n            y =\r\n              topMargin;\r\n\r\n          }\r\n\r\n        }\r\n\r\n\r\n        \/*\r\n         * \u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a\r\n         *\/\r\n\r\n        ensureSpace(18);\r\n\r\n\r\n        const titleHeight =\r\n          await addTextImage(\r\n            \"\u0421\u043c\u0435\u0442\u0430 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432\",\r\n            marginX,\r\n            y,\r\n            900,\r\n            contentWidth,\r\n            {\r\n              fontSize:40,\r\n              fontWeight:800,\r\n              color:\"#07356f\",\r\n              align:\"center\"\r\n            }\r\n          );\r\n\r\n\r\n        y +=\r\n          titleHeight + 2;\r\n\r\n\r\n        const subHeight =\r\n          await addTextImage(\r\n            \"Datvale.ge\",\r\n            marginX,\r\n            y,\r\n            700,\r\n            contentWidth,\r\n            {\r\n              fontSize:20,\r\n              fontWeight:700,\r\n              color:\"#304a66\",\r\n              align:\"center\"\r\n            }\r\n          );\r\n\r\n\r\n        y +=\r\n          subHeight + 5;\r\n\r\n\r\n        \/*\r\n         * \u0412\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435\r\n         *\/\r\n\r\n        ensureSpace(32);\r\n\r\n\r\n        doc.setFillColor(...blue);\r\n        doc.roundedRect(\r\n          marginX,\r\n          y,\r\n          contentWidth,\r\n          11,\r\n          2,\r\n          2,\r\n          \"F\"\r\n        );\r\n\r\n\r\n        await addTextImage(\r\n          \"\u0412\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435\",\r\n          marginX + 2,\r\n          y + 0.8,\r\n          800,\r\n          contentWidth - 4,\r\n          {\r\n            fontSize:24,\r\n            fontWeight:800,\r\n            color:\"#ffffff\",\r\n            align:\"left\"\r\n          }\r\n        );\r\n\r\n\r\n        y += 15;\r\n\r\n\r\n        const inputData = [\r\n          [\r\n            \"\u0414\u043b\u0438\u043d\u0430 \u0443\u0447\u0430\u0441\u0442\u043a\u0430\",\r\n            numberValue(\"dvLandLength\") + \"  \u043c\"\r\n          ],\r\n          [\r\n            \"\u0428\u0438\u0440\u0438\u043d\u0430 \u0443\u0447\u0430\u0441\u0442\u043a\u0430\",\r\n            numberValue(\"dvLandWidth\") + \"  \u043c\"\r\n          ],\r\n          [\r\n            \"\u0412\u044b\u0441\u043e\u0442\u0430 \u0437\u0430\u0431\u043e\u0440\u0430\",\r\n            numberValue(\"dvFenceHeight\") + \"  \u043c\"\r\n          ],\r\n          [\r\n            \"\u041e\u0431\u0449\u0430\u044f \u0448\u0438\u0440\u0438\u043d\u0430 \u0432\u043e\u0440\u043e\u0442 \u0438 \u043a\u0430\u043b\u0438\u0442\u043a\u0438\",\r\n            numberValue(\"dvGateWidth\") + \"  \u043c\"\r\n          ]\r\n        ];\r\n\r\n\r\n        const gap = 5;\r\n        const boxWidth =\r\n          (contentWidth - gap) \/ 2;\r\n        const boxHeight = 26;\r\n\r\n\r\n        for (\r\n          let i = 0;\r\n          i < inputData.length;\r\n          i++\r\n        ) {\r\n\r\n          const col = i % 2;\r\n          const rowIndex = Math.floor(i \/ 2);\r\n\r\n          const x =\r\n            marginX +\r\n            col * (boxWidth + gap);\r\n\r\n          const boxY =\r\n            y +\r\n            rowIndex * (boxHeight + gap);\r\n\r\n\r\n          doc.setFillColor(...lightBlue);\r\n          doc.setDrawColor(...border);\r\n\r\n          doc.roundedRect(\r\n            x,\r\n            boxY,\r\n            boxWidth,\r\n            boxHeight,\r\n            2,\r\n            2,\r\n            \"FD\"\r\n          );\r\n\r\n\r\n          await addTextImage(\r\n            inputData[i][0],\r\n            x + 2,\r\n            boxY + 2,\r\n            560,\r\n            boxWidth - 4,\r\n            {\r\n              fontSize:20,\r\n              fontWeight:700,\r\n              color:\"#213b57\",\r\n              align:\"center\"\r\n            }\r\n          );\r\n\r\n\r\n          await addTextImage(\r\n            inputData[i][1],\r\n            x + 2,\r\n            boxY + 12,\r\n            560,\r\n            boxWidth - 4,\r\n            {\r\n              fontSize:27,\r\n              fontWeight:800,\r\n              color:\"#071f39\",\r\n              align:\"center\"\r\n            }\r\n          );\r\n\r\n        }\r\n\r\n\r\n        y +=\r\n          boxHeight * 2 + gap + 8;\r\n\r\n\r\n        \/*\r\n         * \u0411\u043b\u043e\u043a\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432\r\n         *\/\r\n\r\n        const resultCards =\r\n          output.querySelectorAll(\r\n            \".dv-results .dv-result-card\"\r\n          );\r\n\r\n\r\n        for (\r\n          const card of resultCards\r\n        ) {\r\n\r\n          const sourceTitle =\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 sourceTotal =\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 * 15 +\r\n            (\r\n              sourceTotal\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(...border);\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(...blue);\r\n\r\n          doc.roundedRect(\r\n            marginX,\r\n            y,\r\n            contentWidth,\r\n            11,\r\n            2,\r\n            2,\r\n            \"F\"\r\n          );\r\n\r\n\r\n          await addTextImage(\r\n            sourceTitle\r\n              ? sourceTitle.textContent.trim()\r\n              : \"\",\r\n            marginX + 2,\r\n            y + 0.8,\r\n            850,\r\n            contentWidth - 4,\r\n            {\r\n              fontSize:24,\r\n              fontWeight:800,\r\n              color:\"#ffffff\",\r\n              align:\"left\"\r\n            }\r\n          );\r\n\r\n\r\n          y += 15;\r\n\r\n\r\n          for (\r\n            const row of rows\r\n          ) {\r\n\r\n            const sourceName =\r\n              row.querySelector(\r\n                \".dv-row-name\"\r\n              );\r\n\r\n            const sourceValue =\r\n              row.querySelector(\r\n                \".dv-row-value\"\r\n              );\r\n\r\n\r\n            const nameText =\r\n              sourceName\r\n                ? sourceName.textContent.trim()\r\n                : \"\";\r\n\r\n\r\n            const valueText =\r\n              sourceValue\r\n                ? sourceValue.textContent.trim()\r\n                : \"\";\r\n\r\n\r\n            await addTextImage(\r\n              nameText,\r\n              marginX + 3,\r\n              y + 0.6,\r\n              900,\r\n              contentWidth * 0.56,\r\n              {\r\n                fontSize:22,\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              valueText,\r\n              marginX +\r\n              contentWidth * 0.59,\r\n              y + 0.6,\r\n              520,\r\n              contentWidth * 0.38,\r\n              {\r\n                fontSize:22,\r\n                fontWeight:800,\r\n                color:\"#071f39\",\r\n                align:\"left\"\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            doc.line(\r\n              marginX + 3,\r\n              y + 10,\r\n              marginX +\r\n              contentWidth - 3,\r\n              y + 7\r\n            );\r\n\r\n\r\n            y += 13;\r\n\r\n          }\r\n\r\n\r\n          if (\r\n            sourceTotal\r\n          ) {\r\n\r\n            doc.setFillColor(\r\n              ...lightBlue\r\n            );\r\n\r\n            doc.setDrawColor(\r\n              ...border\r\n            );\r\n\r\n            doc.roundedRect(\r\n              marginX + 3,\r\n              y,\r\n              contentWidth - 6,\r\n              12,\r\n              1.5,\r\n              1.5,\r\n              \"FD\"\r\n            );\r\n\r\n\r\n            await addTextImage(\r\n              sourceTotal.textContent\r\n                .replace(\/\\s+\/g,\" \")\r\n                .trim(),\r\n              marginX + 4,\r\n              y + 0.8,\r\n              900,\r\n              contentWidth - 8,\r\n              {\r\n                fontSize:22,\r\n                fontWeight:800,\r\n                color:\"#071f39\",\r\n                align:\"right\"\r\n              }\r\n            );\r\n\r\n\r\n            y += 14;\r\n\r\n          } else {\r\n\r\n            y += 3;\r\n\r\n          }\r\n\r\n\r\n          y += 3;\r\n\r\n        }\r\n\r\n\r\n        \/*\r\n         * \u0418\u0442\u043e\u0433\u0438\r\n         *\/\r\n\r\n        const summary =\r\n          output.querySelector(\r\n            \".dv-summary\"\r\n          );\r\n\r\n\r\n        if (\r\n          summary\r\n        ) {\r\n\r\n          ensureSpace(40);\r\n\r\n\r\n          await addTextImage(\r\n            \"\u0421\u0432\u043e\u0434\u043d\u0430\u044f \u0441\u043c\u0435\u0442\u0430 \u0440\u0430\u0441\u0445\u043e\u0434\u043e\u0432\",\r\n            marginX,\r\n            y,\r\n            850,\r\n            contentWidth,\r\n            {\r\n              fontSize:28,\r\n              fontWeight:800,\r\n              color:\"#071f39\",\r\n              align:\"left\"\r\n            }\r\n          );\r\n\r\n\r\n          y += 13;\r\n\r\n\r\n          const summaryItems =\r\n            Array.from(\r\n              summary.querySelectorAll(\r\n                \".dv-summary-item\"\r\n              )\r\n            );\r\n\r\n\r\n          const sGap = 5;\r\n          const sBoxWidth =\r\n            (contentWidth - sGap) \/ 2;\r\n          const sBoxHeight = 24;\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 col = i % 2;\r\n            const rowIndex = Math.floor(i \/ 2);\r\n\r\n            const x =\r\n              marginX +\r\n              col * (\r\n                sBoxWidth +\r\n                sGap\r\n              );\r\n\r\n            const boxY =\r\n              y +\r\n              rowIndex * (\r\n                sBoxHeight +\r\n                sGap\r\n              );\r\n\r\n\r\n            doc.setFillColor(\r\n              ...lightBlue\r\n            );\r\n\r\n            doc.setDrawColor(\r\n              ...border\r\n            );\r\n\r\n            doc.roundedRect(\r\n              x,\r\n              boxY,\r\n              sBoxWidth,\r\n              sBoxHeight,\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 + 2,\r\n              boxY + 2,\r\n              560,\r\n              sBoxWidth - 4,\r\n              {\r\n                fontSize:20,\r\n                fontWeight:800,\r\n                color:\"#425a74\",\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 + 2,\r\n              boxY + 11,\r\n              560,\r\n              sBoxWidth - 4,\r\n              {\r\n                fontSize:26,\r\n                fontWeight:800,\r\n                color:\"#071f39\",\r\n                align:\"center\"\r\n              }\r\n            );\r\n\r\n          }\r\n\r\n\r\n          y +=\r\n            sBoxHeight * 2 +\r\n            sGap +\r\n            7;\r\n\r\n\r\n          const grandSource =\r\n            summary.querySelector(\r\n              \"#dvGrandTotal\"\r\n            );\r\n\r\n\r\n          doc.setFillColor(...blue);\r\n\r\n          doc.roundedRect(\r\n            marginX,\r\n            y,\r\n            contentWidth,\r\n            22,\r\n            2,\r\n            2,\r\n            \"F\"\r\n          );\r\n\r\n\r\n          await addTextImage(\r\n            \"\u041e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u0430\u044f \u043f\u043e\u043b\u043d\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0437\u0430\u0431\u043e\u0440\u0430\",\r\n            marginX + 2,\r\n            y + 2,\r\n            850,\r\n            contentWidth - 4,\r\n            {\r\n              fontSize:17,\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            grandSource\r\n              ? grandSource.textContent.trim()\r\n              : \"\",\r\n            marginX + 2,\r\n            y + 10,\r\n            850,\r\n            contentWidth - 4,\r\n            {\r\n              fontSize:40,\r\n              fontWeight:800,\r\n              color:\"#ffffff\",\r\n              align:\"center\"\r\n            }\r\n          );\r\n\r\n\r\n          y += 28;\r\n\r\n        }\r\n\r\n\r\n        \/*\r\n         * \u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435 \u0432\u043d\u0438\u0437\u0443\r\n         *\/\r\n\r\n        ensureSpace(10);\r\n\r\n\r\n        await addTextImage(\r\n          \"Datvale.ge \u2014 Datvale.ge \u2014 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u043e\u0439 \u0441\u043c\u0435\u0442\u043e\u0439..\",\r\n          marginX,\r\n          y,\r\n          850,\r\n          contentWidth,\r\n          {\r\n            fontSize:16,\r\n            fontWeight:600,\r\n            color:\"#425a74\",\r\n            align:\"center\"\r\n          }\r\n        );\r\n\r\n\r\n        doc.save(\r\n          \"Datvale-blokis-gobis-kharjtagricxva.pdf\"\r\n        );\r\n\r\n\r\n      } catch(error) {\r\n\r\n        console.error(\r\n          \"Datvale PDF generation error:\",\r\n          error\r\n        );\r\n\r\n        alert(\r\n          \"PDF-\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        pdfButton.disabled = false;\r\n        pdfButton.innerHTML = originalHTML;\r\n\r\n      }\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-b814932 e-flex e-con-boxed e-con e-parent\" data-id=\"b814932\" 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-34561b9 elementor-widget elementor-widget-html\" data-id=\"34561b9\" 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\r\n<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\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>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e19ecfc e-flex e-con-boxed e-con e-parent\" data-id=\"e19ecfc\" 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-eceda91 elementor-widget elementor-widget-html\" data-id=\"eceda91\" 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\r\n<section class=\"dv-partners\">\r\n\r\n  <div class=\"dv-partners-head\">\r\n\r\n    <span>\u041f\u0410\u0420\u0422\u041d\u0401\u0420\u042b 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 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u043c\u0438 \u043f\u0430\u0440\u0442\u043d\u0451\u0440\u0441\u043a\u0438\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439 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          \u0414\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 \u0440\u0435\u043c\u043e\u043d\u0442\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 \u0442\u043e\u0432\u0430\u0440\u043e\u0432 \u0434\u043b\u044f \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0438 \u0440\u0435\u043c\u043e\u043d\u0442\u0430,\r\n          \u043f\u0440\u043e\u0434\u0443\u043a\u0446\u0438\u044f \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0430 \u0438 \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0445 \u0431\u0440\u0435\u043d\u0434\u043e\u0432.\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 \u0434\u043b\u044f \u0432\u0430\u043d\u043d\u043e\u0439 \u043a\u043e\u043c\u043d\u0430\u0442\u044b \u0438 \u043a\u0435\u0440\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0439\r\n          \u043f\u043b\u0438\u0442\u043a\u0438 \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.\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\u0421\u0415 \u041f\u0410\u0420\u0422\u041d\u0401\u0420\u042b -->\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         * \u0417\u0430\u043a\u0440\u044b\u0442\u044c \u0432\u0441\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0435 \u043a\u0430\u0440\u0442\u043e\u0447\u043a\u0438\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         * \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u0443\u044e \u043a\u0430\u0440\u0442\u043e\u0447\u043a\u0443\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>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-edc7689 e-flex e-con-boxed e-con e-parent\" data-id=\"edc7689\" 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-229ff56 elementor-widget elementor-widget-text-editor\" data-id=\"229ff56\" 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<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<h3>\u0421\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432 \u2014 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b<\/h3>\r\n\u0421\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0430\u0441\u0447\u0451\u0442\u0430 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432. \u0418\u0442\u043e\u0433\u043e\u0432\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0437\u0430\u0431\u043e\u0440\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0435\u0433\u043e \u0434\u043b\u0438\u043d\u044b, \u0432\u044b\u0441\u043e\u0442\u044b, \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u0432 \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u0430, \u0442\u0438\u043f\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0431\u043b\u043e\u043a\u043e\u0432, \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0431\u0435\u0442\u043e\u043d\u0430 \u0438 \u0430\u0440\u043c\u0430\u0442\u0443\u0440\u044b, \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0431\u043e\u0442 \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0440\u0430\u0441\u0445\u043e\u0434\u043e\u0432.\r\n\r\n\u041a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432 \u043d\u0430 Datvale.ge \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0434\u043b\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u044b\u0439 \u0431\u044e\u0434\u0436\u0435\u0442. \u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u0437\u0430\u0431\u043e\u0440\u0430 \u0438 \u0436\u0435\u043b\u0430\u0435\u043c\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u0430 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0435\u0442 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438.\r\n<h3>\u041e\u0442 \u0447\u0435\u0433\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432?<\/h3>\r\n\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432 \u0438\u043d\u0434\u0438\u0432\u0438\u0434\u0443\u0430\u043b\u044c\u043d\u0430 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430. \u041d\u0430 \u0438\u0442\u043e\u0433\u043e\u0432\u044b\u0435 \u0440\u0430\u0441\u0445\u043e\u0434\u044b \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432\u043b\u0438\u044f\u044e\u0442 \u043e\u0431\u0449\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u0438 \u0432\u044b\u0441\u043e\u0442\u0430 \u0437\u0430\u0431\u043e\u0440\u0430. \u0427\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u0442\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0431\u043b\u043e\u043a\u043e\u0432, \u0431\u0435\u0442\u043e\u043d\u0430, \u0430\u0440\u043c\u0430\u0442\u0443\u0440\u044b \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f.\r\n\r\n\u041d\u0435 \u043c\u0435\u043d\u0435\u0435 \u0432\u0430\u0436\u0435\u043d \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442. \u041f\u0440\u043e\u0447\u043d\u043e\u0435 \u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0443\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0435 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u0433\u0440\u0430\u0435\u0442 \u043a\u043b\u044e\u0447\u0435\u0432\u0443\u044e \u0440\u043e\u043b\u044c \u0432 \u043d\u0430\u0434\u0451\u0436\u043d\u043e\u0441\u0442\u0438 \u0438 \u0434\u043e\u043b\u0433\u043e\u0432\u0435\u0447\u043d\u043e\u0441\u0442\u0438 \u0437\u0430\u0431\u043e\u0440\u0430. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0434\u0441\u0447\u0451\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0431\u043b\u043e\u043a\u043e\u0432. \u041f\u0440\u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0431\u044e\u0434\u0436\u0435\u0442\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442, \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b, \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b \u0438 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b.\r\n<h3>\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 \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432?<\/h3>\r\n\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u0432 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u0437\u0430\u0431\u043e\u0440\u0430. \u0417\u0430\u0442\u0435\u043c \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0435\u0442 \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u044b\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0432\u0430\u0448\u0435\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430.\r\n\r\n\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0441\u0447\u0451\u0442 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u043f\u043e\u043b\u0435\u0437\u0435\u043d, \u0435\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u043e\u0436\u043d\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u043a\u0430\u043a \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u0441\u044f \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u043c\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c.\r\n\r\n\u0422\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0431\u043e\u043b\u0435\u0435 \u0442\u0449\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432 \u0438 \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u044b\u0439 \u0431\u044e\u0434\u0436\u0435\u0442.\r\n<h3>\u041a\u0430\u043a\u0438\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b \u0434\u043b\u044f \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432?<\/h3>\r\n\u041f\u0435\u0440\u0435\u0447\u0435\u043d\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430. \u041e\u0431\u044b\u0447\u043d\u043e \u0434\u043b\u044f \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432 \u0442\u0440\u0435\u0431\u0443\u044e\u0442\u0441\u044f \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0431\u043b\u043e\u043a\u0438, \u0431\u0435\u0442\u043e\u043d, \u0430\u0440\u043c\u0430\u0442\u0443\u0440\u0430 \u0438 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b \u0434\u043b\u044f \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u0430. \u0422\u0430\u043a\u0436\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0439 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0438 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0435\u0439 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.\r\n\r\n\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043f\u043e\u043b\u043d\u044b\u0439 \u0431\u044e\u0434\u0436\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0438\u043b\u0438 \u043f\u043e\u0433\u043e\u043d\u043d\u043e\u0433\u043e \u043c\u0435\u0442\u0440\u0430 \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e. \u0414\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0440\u0430\u0441\u0447\u0451\u0442\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u0431\u043e\u0440\u0430.\r\n<h3>\u0421\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u043e\u0438\u0442 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432?<\/h3>\r\n\u041d\u0430 \u0432\u043e\u043f\u0440\u043e\u0441 \u00ab\u0421\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u043e\u0438\u0442 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432?\u00bb \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. \u0426\u0435\u043d\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432, \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u0430, \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0440\u0430\u0431\u043e\u0442 \u0438 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439.\r\n\r\n\u041a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 Datvale.ge \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0435\u0449\u0451 \u0434\u043e \u043d\u0430\u0447\u0430\u043b\u0430 \u0440\u0430\u0431\u043e\u0442 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0441\u043c\u0435\u0442\u0443 \u0438 \u043b\u0443\u0447\u0448\u0435 \u0441\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0441\u0445\u043e\u0434\u044b. \u041e\u043a\u043e\u043d\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0443\u0442\u043e\u0447\u043d\u044f\u0442\u044c \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0435\u0439 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u043d\u0430 \u0443\u0447\u0430\u0441\u0442\u043a\u0435, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u0446\u0435\u043d \u043d\u0430 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b \u0438 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b.\r\n<h3>\u041f\u043e\u0447\u0435\u043c\u0443 \u0432\u0430\u0436\u043d\u043e \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u0440\u0430\u0441\u0445\u043e\u0434\u044b \u0437\u0430\u0440\u0430\u043d\u0435\u0435?<\/h3>\r\n\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0441\u043c\u0435\u0442\u0430 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0439 \u0431\u044e\u0434\u0436\u0435\u0442, \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0438 \u0441\u043d\u0438\u0437\u0438\u0442\u044c \u0440\u0438\u0441\u043a \u043d\u0435\u043f\u0440\u0435\u0434\u0432\u0438\u0434\u0435\u043d\u043d\u044b\u0445 \u0440\u0430\u0441\u0445\u043e\u0434\u043e\u0432 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430.\r\n\r\n\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442\u0435 \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432, \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u0435 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0432\u044b\u0448\u0435 \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u044b\u0439 \u0440\u0430\u0441\u0447\u0451\u0442 \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0432\u0430\u0448\u0435\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430. \u041d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u0432\u044b \u0442\u0430\u043a\u0436\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0441\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u044d\u0442\u0430\u043f\u044b \u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0440\u0430\u0431\u043e\u0442.\r\n\r\n\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>.\r\n\r\n<\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><div>\r\n<div><\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><div>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<div><\/div><br><\/div><br><\/div><br><\/div><br><\/div><br><\/div>\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-409c014 e-flex e-con-boxed e-con e-parent\" data-id=\"409c014\" 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-0394f99 elementor-widget elementor-widget-image\" data-id=\"0394f99\" 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=\"298\" src=\"https:\/\/datvale.ge\/wp-content\/uploads\/2026\/08\/blokis-gobe-1-1024x298.webp\" class=\"attachment-large size-large wp-image-22482\" alt=\"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432\" srcset=\"https:\/\/datvale.ge\/wp-content\/uploads\/2026\/08\/blokis-gobe-1-1024x298.webp 1024w, https:\/\/datvale.ge\/wp-content\/uploads\/2026\/08\/blokis-gobe-1-300x87.webp 300w, https:\/\/datvale.ge\/wp-content\/uploads\/2026\/08\/blokis-gobe-1-768x224.webp 768w, https:\/\/datvale.ge\/wp-content\/uploads\/2026\/08\/blokis-gobe-1.webp 1100w, https:\/\/datvale.ge\/wp-content\/uploads\/2026\/08\/blokis-gobe-1-600x175.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 \u0437\u0430\u0431\u043e\u0440\u0430 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432 \u0432 2026 \u0433\u043e\u0434\u0443 \u2013 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u0438 \u0437\u0430\u0431\u043e\u0440\u0430 \u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u0414\u043b\u0438\u043d\u0430 \u0443\u0447\u0430\u0441\u0442\u043a\u0430 \u043c \u0428\u0438\u0440\u0438\u043d\u0430 \u0443\u0447\u0430\u0441\u0442\u043a\u0430 \u043c \u0412\u044b\u0441\u043e\u0442\u0430 \u0437\u0430\u0431\u043e\u0440\u0430 \u043c \u041e\u0431\u0449\u0430\u044f \u0448\u0438\u0440\u0438\u043d\u0430 \u0432\u043e\u0440\u043e\u0442 \u0438 \u043a\u0430\u043b\u0438\u0442\u043a\u0438 \u043c \u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044c \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0437\u0430\u0431\u043e\u0440\u0430 \u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u0435 \u0432\u0441\u0435 \u043f\u043e\u043b\u044f.. \u2713 \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 \u0414\u043b\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0440\u0430\u0441\u0447\u0451\u0442\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c \u043f\u0430\u043a\u0435\u0442 \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.. \u0414\u043b\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0440\u0430\u0441\u0447\u0451\u0442\u0430&#8230;<\/p>\n","protected":false},"author":67,"featured_media":0,"parent":0,"menu_order":9,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-22483","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/datvale.ge\/ru\/wp-json\/wp\/v2\/pages\/22483","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=22483"}],"version-history":[{"count":1,"href":"https:\/\/datvale.ge\/ru\/wp-json\/wp\/v2\/pages\/22483\/revisions"}],"predecessor-version":[{"id":23054,"href":"https:\/\/datvale.ge\/ru\/wp-json\/wp\/v2\/pages\/22483\/revisions\/23054"}],"wp:attachment":[{"href":"https:\/\/datvale.ge\/ru\/wp-json\/wp\/v2\/media?parent=22483"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}