


<style id="elementor-post-21842">.elementor-21842 .elementor-element.elementor-element-7bae03e{--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:-133px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-21842 .elementor-element.elementor-element-457062c{--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-21842 .elementor-element.elementor-element-c72078c > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-21842 .elementor-element.elementor-element-c72078c{text-align:center;}.elementor-21842 .elementor-element.elementor-element-c72078c .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-21842 .elementor-element.elementor-element-c72078c .elementor-heading-title a{transition-duration:0s;}.elementor-21842 .elementor-element.elementor-element-b89c651{--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-21842 .elementor-element.elementor-element-2500ed0{--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-21842 .elementor-element.elementor-element-75ad8e0{--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-21842 .elementor-element.elementor-element-01f352f{--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-21842 .elementor-element.elementor-element-b276abc{--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 );}@media(max-width:1024px){.elementor-21842 .elementor-element.elementor-element-c72078c > .elementor-widget-container{padding:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-21842 .elementor-element.elementor-element-a564b7c > .elementor-widget-container{margin:95px 0px 0px 0px;}.elementor-21842 .elementor-element.elementor-element-457062c{--margin-top:-19px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21842 .elementor-element.elementor-element-c72078c > .elementor-widget-container{padding:010px 010px 5px 010px;}.elementor-21842 .elementor-element.elementor-element-c72078c{text-align:center;}.elementor-21842 .elementor-element.elementor-element-c72078c .elementor-heading-title{font-size:17px;-webkit-text-stroke-width:0px;stroke-width:0px;}.elementor-21842 .elementor-element.elementor-element-b89c651{--margin-top:-42px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(min-width:768px){.elementor-21842 .elementor-element.elementor-element-457062c{--content-width:1600px;}}</style>{"id":21842,"date":"2026-09-24T13:40:15","date_gmt":"2026-09-24T09:40:15","guid":{"rendered":"https:\/\/datvale.ge\/%e1%83%98%e1%83%90%e1%83%a2%e1%83%90%e1%83%99%e1%83%98%e1%83%a1-%e1%83%9b%e1%83%9d%e1%83%ae%e1%83%95%e1%83%94%e1%83%ac%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\/"},"modified":"2026-10-07T18:10:13","modified_gmt":"2026-10-07T14:10:13","slug":"floor-sanding-calculator","status":"publish","type":"page","link":"https:\/\/datvale.ge\/en\/floor-sanding-calculator\/","title":{"rendered":"Floor Sanding Calculator"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"21842\" class=\"elementor elementor-21842 elementor-20566\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7bae03e e-flex e-con-boxed e-con e-parent\" data-id=\"7bae03e\" 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-a564b7c elementor-widget elementor-widget-html\" data-id=\"a564b7c\" 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=\"Datvale Calculators\"\r\n  >\r\n\r\n<\/div>\r\n\r\n<style>\r\n\r\n.dv-kalkulatorebi-banner,\r\n.dv-kalkulatorebi-banner *{\r\n  box-sizing:border-box;\r\n}\r\n\r\n.dv-kalkulatorebi-banner{\r\n  position:relative;\r\n  overflow:hidden;\r\n\r\n  width:100%;\r\n  height:215px;\r\n\r\n  margin:18px 0;\r\n\r\n  border-radius:22px;\r\n\r\n  background:#eef1f4;\r\n}\r\n\r\n.dv-kalkulatorebi-banner img{\r\n  display:block;\r\n\r\n  width:100%;\r\n  height:100%;\r\n\r\n  margin:0;\r\n  padding:0;\r\n\r\n  border:0;\r\n\r\n  object-fit:cover;\r\n  object-position:center;\r\n\r\n  image-rendering:auto;\r\n}\r\n\r\n\r\n\/* TABLET *\/\r\n\r\n@media(max-width:900px){\r\n\r\n  .dv-kalkulatorebi-banner{\r\n    height:190px;\r\n  }\r\n\r\n}\r\n\r\n\r\n\/* MOBILE *\/\r\n\r\n@media(max-width:700px){\r\n\r\n  .dv-kalkulatorebi-banner{\r\n    height:183px;\r\n\r\n    margin:10px 0;\r\n\r\n    border-radius:14px;\r\n  }\r\n\r\n}\r\n\r\n\r\n\/* SMALL MOBILE *\/\r\n\r\n@media(max-width:380px){\r\n\r\n  .dv-kalkulatorebi-banner{\r\n    height:165px;\r\n  }\r\n\r\n}\r\n\r\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-457062c e-flex e-con-boxed e-con e-parent\" data-id=\"457062c\" 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-c72078c elementor-widget elementor-widget-heading\" data-id=\"c72078c\" 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\">Floor Sanding Cost 2026 \u2013 Floor Sanding Calculator<\/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-b89c651 e-flex e-con-boxed e-con e-parent\" data-id=\"b89c651\" 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-8ee24d3 elementor-widget elementor-widget-html\" data-id=\"8ee24d3\" 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-floor-refinishing-calculator\">\r\n\r\n<style>\r\n#dv-floor-refinishing-calculator,\r\n#dv-floor-refinishing-calculator *{box-sizing:border-box}\r\n\r\n#dv-floor-refinishing-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\r\n  position:relative;\r\n  width:100%;\r\n  max-width:1260px;\r\n  margin:26px auto;\r\n  padding:42px 22px;\r\n  border:1px solid var(--dv-border);\r\n  border-radius:24px;\r\n  background:\r\n    radial-gradient(circle at top right,rgba(52,86,150,.09),transparent 34%),\r\n    linear-gradient(180deg,#f8fbff 0%,#eef4fb 100%);\r\n  color:var(--dv-text);\r\n  font-family:system-ui,-apple-system,BlinkMacSystemFont,\"Segoe UI\",sans-serif;\r\n  box-shadow:0 16px 42px rgba(11,58,120,.10);\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-calculator{width:100%;max-width:1180px;margin:0 auto}\r\n\r\n#dv-floor-refinishing-calculator .dv-input-card,\r\n#dv-floor-refinishing-calculator .dv-result-card,\r\n#dv-floor-refinishing-calculator .dv-summary,\r\n#dv-floor-refinishing-calculator .dv-info-card,\r\n#dv-floor-refinishing-calculator .dv-related{\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-floor-refinishing-calculator .dv-input-card{padding:28px;margin-bottom:24px}\r\n\r\n#dv-floor-refinishing-calculator .dv-section-title{\r\n  display:inline-flex;align-items:center;gap:11px;margin:0 0 22px;\r\n  color:var(--dv-text);font-size:24px;font-weight:950;line-height:1.18\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-section-number{\r\n  display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;\r\n  flex:0 0 36px;border-radius:50%;\r\n  background:linear-gradient(135deg,var(--dv-blue),var(--dv-blue-2));\r\n  color:#fff;font-size:14px;font-weight:950\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-input-grid{\r\n  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-field label{\r\n  display:block;min-height:21px;margin-bottom:8px;color:var(--dv-text);font-size:14px;font-weight:850\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-input-wrap{position:relative}\r\n\r\n#dv-floor-refinishing-calculator input,\r\n#dv-floor-refinishing-calculator select{\r\n  display:block;width:100%;height:56px;margin:0;border:1px solid #d8e3ef;border-radius:14px;\r\n  outline:none;background:#f8fbff;color:var(--dv-text);font-size:16px;font-weight:800\r\n}\r\n\r\n#dv-floor-refinishing-calculator input{padding:0 52px 0 15px}\r\n#dv-floor-refinishing-calculator select{padding:0 42px 0 15px;cursor:pointer}\r\n\r\n#dv-floor-refinishing-calculator input:focus,\r\n#dv-floor-refinishing-calculator select:focus{\r\n  border-color:var(--dv-blue-2);background:#fff;box-shadow:0 0 0 4px rgba(23,100,189,.10)\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-unit{\r\n  position:absolute;top:50%;right:14px;transform:translateY(-50%);\r\n  color:var(--dv-muted);font-size:13px;font-weight:850;pointer-events:none\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-note{\r\n  margin-top:20px;padding:14px 16px;border:1px solid #dce7f2;border-radius:14px;\r\n  background:#f8fbff;color:#526b84;font-size:13px;line-height:1.55;font-weight:650\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-calculate-v2{\r\n  width:100%;min-height:58px;margin-top:22px;padding:14px 24px;border:0;border-radius:14px;\r\n  cursor:pointer;background:linear-gradient(135deg,var(--dv-blue),var(--dv-blue-2));\r\n  color:#fff;font-size:17px;font-weight:950;box-shadow:0 12px 28px rgba(11,58,120,.22)\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-error{\r\n  display:none;margin-top:14px;padding:13px 15px;border:1px solid rgba(174,32,32,.18);\r\n  border-radius:12px;background:#fff2f2;color:#a32020;font-size:14px;font-weight:850\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-output{display:none;scroll-margin-top:140px}\r\n#dv-floor-refinishing-calculator .dv-output.dv-show{display:block}\r\n\r\n#dv-floor-refinishing-calculator .dv-results{\r\n  display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:1080px;margin:0 auto\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-result-card{overflow:hidden}\r\n\r\n#dv-floor-refinishing-calculator .dv-result-head{\r\n  display:flex;align-items:center;gap:10px;padding:17px 20px;\r\n  background:linear-gradient(135deg,var(--dv-blue),var(--dv-blue-2));color:#fff\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-result-icon{\r\n  display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;\r\n  flex:0 0 34px;border-radius:10px;background:rgba(255,255,255,.14);font-size:17px\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-result-head h3{margin:0;color:#fff;font-size:18px;font-weight:950}\r\n#dv-floor-refinishing-calculator .dv-result-body{padding:10px 18px 15px}\r\n\r\n#dv-floor-refinishing-calculator .dv-row{\r\n  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;align-items:center;\r\n  padding:12px 0;border-bottom:1px dashed #d9e4ef\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-row:last-child{border-bottom:0}\r\n#dv-floor-refinishing-calculator .dv-row-name{color:#425a74;font-size:14px;line-height:1.45;font-weight:650}\r\n#dv-floor-refinishing-calculator .dv-row-value{color:var(--dv-text);text-align:right;white-space:nowrap;font-size:15px;font-weight:950}\r\n\r\n#dv-floor-refinishing-calculator .dv-card-total{\r\n  margin:7px 0 2px;padding:14px 15px;border:1px solid #d8e3ef;border-radius:13px;\r\n  background:#f4f8fd;color:var(--dv-text);font-size:15px;font-weight:950;text-align:right\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-summary{max-width:1080px;margin:22px auto 0;padding:26px}\r\n\r\n#dv-floor-refinishing-calculator .dv-summary-grid{\r\n  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-summary-item{\r\n  padding:18px;border:1px solid #e1e9f3;border-radius:16px;background:#f8fbff;text-align:center\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-summary-label{\r\n  display:block;margin-bottom:7px;color:var(--dv-muted);font-size:13px;font-weight:850\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-summary-value{color:var(--dv-text);font-size:22px;font-weight:950}\r\n\r\n#dv-floor-refinishing-calculator .dv-grand-total{\r\n  margin-top:16px;padding:29px 20px;border-radius:18px;\r\n  background:linear-gradient(135deg,var(--dv-blue),var(--dv-blue-2));\r\n  color:#fff;text-align:center;box-shadow:0 14px 30px rgba(11,58,120,.20)\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-grand-total small{\r\n  display:block;margin-bottom:8px;color:rgba(255,255,255,.82);font-size:14px;font-weight:850\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-grand-total strong{\r\n  display:block;color:#fff;font-size:clamp(34px,6vw,52px);line-height:1;font-weight:1000\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-info-card{max-width:1080px;margin:20px auto 0;padding:22px}\r\n#dv-floor-refinishing-calculator .dv-info-card h3{margin:0 0 10px;color:var(--dv-text);font-size:20px;font-weight:950}\r\n#dv-floor-refinishing-calculator .dv-info-card p{margin:0;color:#526b84;font-size:13px;line-height:1.65;font-weight:650}\r\n\r\n#dv-floor-refinishing-calculator .dv-related{max-width:1080px;margin:20px auto 0;padding:22px}\r\n#dv-floor-refinishing-calculator .dv-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}\r\n\r\n#dv-floor-refinishing-calculator .dv-related-link{\r\n  display:flex;align-items:center;gap:12px;padding:17px 16px;border:1px solid #d8e3ef;\r\n  border-radius:16px;background:#f8fbff;color:var(--dv-blue);text-decoration:none\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-related-icon{\r\n  display:inline-flex;width:42px;height:42px;flex:0 0 42px;align-items:center;justify-content:center;\r\n  border-radius:12px;color:#fff;background:linear-gradient(135deg,var(--dv-blue),var(--dv-blue-2));font-size:20px\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-related-text{min-width:0;flex:1}\r\n#dv-floor-refinishing-calculator .dv-related-text strong{display:block;margin-bottom:4px;color:var(--dv-blue);font-size:15px;font-weight:950}\r\n#dv-floor-refinishing-calculator .dv-related-text small{display:block;color:var(--dv-muted);font-size:12px;line-height:1.45}\r\n#dv-floor-refinishing-calculator .dv-related-arrow{font-size:18px;font-weight:950}\r\n\r\n@media(max-width:900px){\r\n  #dv-floor-refinishing-calculator .dv-input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}\r\n  #dv-floor-refinishing-calculator .dv-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}\r\n  #dv-floor-refinishing-calculator .dv-results{grid-template-columns:1fr}\r\n  #dv-floor-refinishing-calculator .dv-related-grid{grid-template-columns:1fr}\r\n}\r\n\r\n@media(max-width:600px){\r\n  #dv-floor-refinishing-calculator{margin:18px auto;padding:24px 12px}\r\n  #dv-floor-refinishing-calculator .dv-input-card,\r\n  #dv-floor-refinishing-calculator .dv-summary,\r\n  #dv-floor-refinishing-calculator .dv-related{padding:18px}\r\n  #dv-floor-refinishing-calculator .dv-input-grid,\r\n  #dv-floor-refinishing-calculator .dv-summary-grid{grid-template-columns:1fr}\r\n  #dv-floor-refinishing-calculator .dv-row{grid-template-columns:minmax(0,1fr);gap:5px}\r\n  #dv-floor-refinishing-calculator .dv-row-name,\r\n  #dv-floor-refinishing-calculator .dv-row-value{\r\n    width:100%;\r\n    max-width:100%;\r\n    min-width:0;\r\n  }\r\n  #dv-floor-refinishing-calculator .dv-row-value{\r\n    text-align:left;\r\n    white-space:normal;\r\n    overflow-wrap:anywhere;\r\n    word-break:break-word;\r\n  }\r\n  #dv-floor-refinishing-calculator .dv-card-total{\r\n    text-align:left;\r\n    white-space:normal;\r\n    overflow-wrap:anywhere;\r\n  }\r\n  #dv-floor-refinishing-calculator .dv-summary-item{\r\n    min-width:0;\r\n    overflow:hidden;\r\n  }\r\n  #dv-floor-refinishing-calculator .dv-summary-value{\r\n    display:block;\r\n    max-width:100%;\r\n    white-space:normal;\r\n    overflow-wrap:anywhere;\r\n  }\r\n}\r\n\r\n\/* After the first free calculation *\/\r\n#dv-floor-refinishing-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-floor-refinishing-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-floor-refinishing-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-floor-refinishing-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-floor-refinishing-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-floor-refinishing-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:600px){\r\n  #dv-floor-refinishing-calculator .dv-free-next-step.dv-show{\r\n    grid-template-columns:1fr;\r\n  }\r\n\r\n  #dv-floor-refinishing-calculator .dv-free-next-step{\r\n    padding:18px;\r\n  }\r\n\r\n  #dv-floor-refinishing-calculator .dv-free-next-step a{\r\n    width:100%;\r\n    min-width:0;\r\n  }\r\n}\r\n\r\n\r\n\/* Company call request *\/\r\n#dv-floor-refinishing-calculator .dv-call-request{\r\n  display:none;\r\n  width:100%;\r\n  max-width:100%;\r\n  min-width:0;\r\n  margin-top:14px;\r\n  padding:18px;\r\n  border:1px solid #d8e3ef;\r\n  border-radius:16px;\r\n  background:#f8fbff;\r\n  overflow:hidden;\r\n}\r\n\r\n#dv-floor-refinishing-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-floor-refinishing-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-floor-refinishing-calculator .dv-call-request-row{\r\n  display:grid;\r\n  width:100%;\r\n  max-width:100%;\r\n  min-width:0;\r\n  grid-template-columns:minmax(0,1fr) auto;\r\n  gap:10px;\r\n  align-items:center;\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-call-phone{\r\n  display:block;\r\n  width:100%;\r\n  max-width:100%;\r\n  min-width:0;\r\n  height:52px;\r\n  padding:0 14px;\r\n  border:1px solid #d8e3ef;\r\n  border-radius:12px;\r\n  outline:none;\r\n  background:#fff;\r\n  color:var(--dv-text);\r\n  font-size:15px;\r\n  font-weight:750;\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-call-phone:focus{\r\n  border-color:#13795b;\r\n  box-shadow:0 0 0 4px rgba(19,121,91,.10);\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-call-request-row.dv-has-saved-phone{\r\n  grid-template-columns:1fr;\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-call-request-row.dv-has-saved-phone .dv-call-phone{\r\n  display:none;\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-request-call-btn{\r\n  min-height:52px;\r\n  max-width:100%;\r\n  min-width:0;\r\n  padding:13px 20px;\r\n  border:0;\r\n  border-radius:12px;\r\n  cursor:pointer;\r\n  background:linear-gradient(135deg,#13795b,#0e9a70);\r\n  color:#fff;\r\n  font-size:14px;\r\n  font-weight:950;\r\n  white-space:nowrap;\r\n  box-shadow:0 10px 24px rgba(19,121,91,.22);\r\n}\r\n\r\n#dv-floor-refinishing-calculator .dv-request-call-btn:disabled{\r\n  opacity:.65;\r\n  cursor:wait;\r\n}\r\n\r\n#dv-floor-refinishing-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-floor-refinishing-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-floor-refinishing-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:600px){\r\n  #dv-floor-refinishing-calculator .dv-call-request,\r\n  #dv-floor-refinishing-calculator .dv-call-request-row,\r\n  #dv-floor-refinishing-calculator .dv-call-phone,\r\n  #dv-floor-refinishing-calculator .dv-request-call-btn{\r\n    width:100%;\r\n    max-width:100%;\r\n    min-width:0;\r\n  }\r\n\r\n  #dv-floor-refinishing-calculator .dv-call-request{\r\n    overflow:hidden;\r\n  }\r\n\r\n  #dv-floor-refinishing-calculator .dv-call-request-row{\r\n    grid-template-columns:minmax(0,1fr);\r\n  }\r\n\r\n  #dv-floor-refinishing-calculator .dv-request-call-btn{\r\n    display:block;\r\n    white-space:normal;\r\n    overflow-wrap:anywhere;\r\n  }\r\n}\r\n\r\n<\/style>\r\n\r\n<div class=\"dv-calculator\">\r\n\r\n  <div class=\"dv-input-card\">\r\n    <h3 class=\"dv-section-title\"><span class=\"dv-section-number\">1<\/span>Select the floor sanding details<\/h3>\r\n\r\n    <div class=\"dv-input-grid\">\r\n\r\n      <div class=\"dv-field\">\r\n        <label for=\"dvFArea\">Floor area<\/label>\r\n        <div class=\"dv-input-wrap\">\r\n          <input id=\"dvFArea\" type=\"number\" min=\"5\" max=\"1000\" step=\"1\" placeholder=\"e.g. 50\" inputmode=\"decimal\">\r\n          <span class=\"dv-unit\">m\u00b2<\/span>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"dv-field\">\r\n        <label for=\"dvFService\">Service package<\/label>\r\n        <select id=\"dvFService\">\r\n          <option value=\"18\">Standard sanding \u2014 18 \u20be\/m\u00b2<\/option>\r\n          <option value=\"25\" selected>Premium sanding \u2014 25 \u20be\/m\u00b2<\/option>\r\n        <\/select>\r\n      <\/div>\r\n\r\n      <div class=\"dv-field\">\r\n        <label for=\"dvFDamage\">Floor condition<\/label>\r\n        <select id=\"dvFDamage\">\r\n          <option value=\"0\">Undamaged<\/option>\r\n          <option value=\"0.15\" selected>Minor damage<\/option>\r\n          <option value=\"0.30\">Significant damage<\/option>\r\n        <\/select>\r\n      <\/div>\r\n\r\n      <div class=\"dv-field\">\r\n        <label for=\"dvFFinish\">Final finish<\/label>\r\n        <select id=\"dvFFinish\">\r\n          <option value=\"0\">Sanding only<\/option>\r\n          <option value=\"14\" selected>Lacquer \/ Finish \u2014 14 \u20be\/m\u00b2<\/option>\r\n          <option value=\"16\">Premium Lacquer \/ Oil \u2014 16 \u20be\/m\u00b2<\/option>\r\n        <\/select>\r\n      <\/div>\r\n\r\n      <div class=\"dv-field\">\r\n        <label for=\"dvFRepair\">Gap filling<\/label>\r\n        <select id=\"dvFRepair\">\r\n          <option value=\"0\" selected>Not required<\/option>\r\n          <option value=\"4\">Basic filler \u2014 4 \u20be\/m\u00b2<\/option>\r\n          <option value=\"7\">Enhanced filling \u2014 7 \u20be\/m\u00b2<\/option>\r\n        <\/select>\r\n      <\/div>\r\n\r\n      <div class=\"dv-field\">\r\n        <label for=\"dvFTravel\">Site complexity<\/label>\r\n        <select id=\"dvFTravel\">\r\n          <option value=\"0\" selected>Standard<\/option>\r\n          <option value=\"120\">Separate visit \/ Small site \u2014 +120 \u20be<\/option>\r\n          <option value=\"250\">Difficult access \/ Additional logistics \u2014 +250 \u20be<\/option>\r\n        <\/select>\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n    <div class=\"dv-note\">\r\n      Prices are estimates based on average market ranges in Georgia. Board replacement, restoration of deep damage, and complex local repairs may be priced separately.\r\n    <\/div>\r\n\r\n    <button type=\"button\" class=\"dv-calculate-v2\" id=\"dvFCalculateFreeFlowV2\">Calculate Cost<\/button>\r\n\r\n    <div class=\"dv-error\" id=\"dvFError\">Please enter the floor area correctly.<\/div>\r\n  <\/div>\r\n\r\n  <div class=\"dv-output\" id=\"dvFOutput\">\r\n\r\n    <div class=\"dv-free-next-step\" id=\"dvFFreeNextStep\">\r\n      <div>\r\n        <span class=\"dv-free-next-step-kicker\">\u2713 Free calculation used<\/span>\r\n        <h3>A package is required for the next calculation<\/h3>\r\n        <p>\r\n          You have used one free calculation.\r\n          Choose a package to make another calculation.\r\n        <\/p>\r\n      <\/div>\r\n\r\n      <a href=\"https:\/\/datvale.ge\/en\/packages\/\">\r\n        Choose a Package\r\n      <\/a>\r\n    <\/div>\r\n\r\n    <div class=\"dv-results\">\r\n\r\n      <div class=\"dv-result-card\">\r\n        <div class=\"dv-result-head\">\r\n          <span class=\"dv-result-icon\">\ud83e\udeb5<\/span>\r\n          <h3>Detailed Work Breakdown<\/h3>\r\n        <\/div>\r\n\r\n        <div class=\"dv-result-body\">\r\n          <div class=\"dv-row\"><span class=\"dv-row-name\">Floor area<\/span><span class=\"dv-row-value\" id=\"dvFResArea\">0 m\u00b2<\/span><\/div>\r\n          <div class=\"dv-row\"><span class=\"dv-row-name\">Base Sanding Cost<\/span><span class=\"dv-row-value\" id=\"dvFResBase\">0 \u20be<\/span><\/div>\r\n          <div class=\"dv-row\"><span class=\"dv-row-name\">Damage Adjustment<\/span><span class=\"dv-row-value\" id=\"dvFResDamage\">0 \u20be<\/span><\/div>\r\n          <div class=\"dv-row\"><span class=\"dv-row-name\">Gap filling<\/span><span class=\"dv-row-value\" id=\"dvFResRepair\">0 \u20be<\/span><\/div>\r\n          <div class=\"dv-card-total\">Work Total: <span id=\"dvFResWorkTotal\">0 \u20be<\/span><\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"dv-result-card\">\r\n        <div class=\"dv-result-head\">\r\n          <span class=\"dv-result-icon\">\u2728<\/span>\r\n          <h3>Materials and Additional Costs<\/h3>\r\n        <\/div>\r\n\r\n        <div class=\"dv-result-body\">\r\n          <div class=\"dv-row\"><span class=\"dv-row-name\">Lacquer \/ Finish Material<\/span><span class=\"dv-row-value\" id=\"dvFResFinish\">0 \u20be<\/span><\/div>\r\n          <div class=\"dv-row\"><span class=\"dv-row-name\">Logistics \/ Additional Cost<\/span><span class=\"dv-row-value\" id=\"dvFResTravel\">0 \u20be<\/span><\/div>\r\n          <div class=\"dv-row\"><span class=\"dv-row-name\">Price per 1 m\u00b2<\/span><span class=\"dv-row-value\" id=\"dvFResPerM2\">0 \u20be<\/span><\/div>\r\n          <div class=\"dv-row\"><span class=\"dv-row-name\">Selected Condition<\/span><span class=\"dv-row-value\" id=\"dvFResState\">\u2014<\/span><\/div>\r\n          <div class=\"dv-card-total\">Materials and Extras: <span id=\"dvFResExtrasTotal\">0 \u20be<\/span><\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n    <div class=\"dv-summary\">\r\n\r\n      <h3 class=\"dv-section-title\"><span class=\"dv-section-number\">2<\/span>Quick Summary<\/h3>\r\n\r\n      <div class=\"dv-summary-grid\">\r\n\r\n        <div class=\"dv-summary-item\">\r\n          <span class=\"dv-summary-label\">Area<\/span>\r\n          <div class=\"dv-summary-value\" id=\"dvFSumArea\">0 m\u00b2<\/div>\r\n        <\/div>\r\n\r\n        <div class=\"dv-summary-item\">\r\n          <span class=\"dv-summary-label\">Service package<\/span>\r\n          <div class=\"dv-summary-value\" id=\"dvFSumService\">\u2014<\/div>\r\n        <\/div>\r\n\r\n        <div class=\"dv-summary-item\">\r\n          <span class=\"dv-summary-label\">Condition<\/span>\r\n          <div class=\"dv-summary-value\" id=\"dvFSumDamage\">\u2014<\/div>\r\n        <\/div>\r\n\r\n        <div class=\"dv-summary-item\">\r\n          <span class=\"dv-summary-label\">Average Price per 1 m\u00b2<\/span>\r\n          <div class=\"dv-summary-value\" id=\"dvFSumPerM2\">0 \u20be<\/div>\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n      <div class=\"dv-grand-total\">\r\n        <small>Estimated Total Floor Sanding Cost<\/small>\r\n        <strong id=\"dvFGrandTotal\">0 \u20be<\/strong>\r\n      <\/div>\r\n\r\n      <div class=\"dv-call-request\" id=\"dvFCallRequest\">\r\n        <h4 class=\"dv-call-request-title\">Would you like a company consultation?<\/h4>\r\n\r\n        <p class=\"dv-call-request-text\">\r\n          Request a company call and they will contact you with additional information.\r\n        <\/p>\r\n\r\n        <div class=\"dv-call-request-row\" id=\"dvFCallRow\">\r\n\r\n          <input\r\n            class=\"dv-call-phone\"\r\n            id=\"dvFCallPhone\"\r\n            type=\"tel\"\r\n            inputmode=\"tel\"\r\n            autocomplete=\"tel\"\r\n            placeholder=\"e.g. 599123456\"\r\n          >\r\n\r\n          <button\r\n            class=\"dv-request-call-btn\"\r\n            id=\"dvFRequestCall\"\r\n            type=\"button\"\r\n          >\r\n            Request a Company Call\r\n          <\/button>\r\n\r\n        <\/div>\r\n\r\n        <div\r\n          class=\"dv-call-request-status\"\r\n          id=\"dvFCallStatus\"\r\n          aria-live=\"polite\"\r\n        ><\/div>\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n    <div class=\"dv-info-card\">\r\n      <h3>Important Note<\/h3>\r\n      <p>\r\n        The calculator provides an estimated price. If the floor has deep damage, separated boards,\r\n        localized rot, or requires board replacement, the final price may change after an on-site inspection.\r\n      <\/p>\r\n    <\/div>\r\n\r\n    <div class=\"dv-related\">\r\n\r\n      <h3 class=\"dv-section-title\"><span class=\"dv-section-number\">3<\/span>Other Related Calculators<\/h3>\r\n\r\n      <div class=\"dv-related-grid\">\r\n\r\n        <a class=\"dv-related-link\" href=\"https:\/\/datvale.ge\/en\/flooring-calculators\/\">\r\n          <span class=\"dv-related-icon\">\ud83d\udcd0<\/span>\r\n          <span class=\"dv-related-text\">\r\n            <strong>Flooring Installation<\/strong>\r\n            <small>Parquet and laminate installation cost<\/small>\r\n          <\/span>\r\n          <span class=\"dv-related-arrow\">\u2192<\/span>\r\n        <\/a>\r\n\r\n        <a class=\"dv-related-link\" href=\"https:\/\/datvale.ge\/en\/floor-care-calculator\/\">\r\n          <span class=\"dv-related-icon\">\ud83e\uddf4<\/span>\r\n          <span class=\"dv-related-text\">\r\n            <strong>Floor Care<\/strong>\r\n            <small>Estimated care and cleaning cost<\/small>\r\n          <\/span>\r\n          <span class=\"dv-related-arrow\">\u2192<\/span>\r\n        <\/a>\r\n\r\n        <a class=\"dv-related-link\" href=\"https:\/\/datvale.ge\/en\/three-layer-parquet-calculator\/\">\r\n          <span class=\"dv-related-icon\">\ud83c\udfe0<\/span>\r\n          <span class=\"dv-related-text\">\r\n            <strong>Three-Layer Parquet<\/strong>\r\n            <small>Material and installation calculator<\/small>\r\n          <\/span>\r\n          <span class=\"dv-related-arrow\">\u2192<\/span>\r\n        <\/a>\r\n\r\n      <\/div>\r\n    <\/div>\r\n\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function(){\r\n\r\n  const box = document.getElementById('dv-floor-refinishing-calculator');\r\n\r\n  if(!box || box.dataset.init === '1') return;\r\n\r\n  box.dataset.init = '1';\r\n\r\n  const el = id => document.getElementById(id);\r\n\r\n  const area = el('dvFArea');\r\n  const service = el('dvFService');\r\n  const damage = el('dvFDamage');\r\n  const finish = el('dvFFinish');\r\n  const repair = el('dvFRepair');\r\n  const travel = el('dvFTravel');\r\n  const error = el('dvFError');\r\n  const output = el('dvFOutput');\r\n\r\n  const dvFCallRequest = el('dvFCallRequest');\r\n  const dvFRequestCall = el('dvFRequestCall');\r\n  const dvFCallPhone = el('dvFCallPhone');\r\n  const dvFCallStatus = el('dvFCallStatus');\r\n  const dvFCallRow = el('dvFCallRow');\r\n\r\n  let dvFCallConfig = {\r\n    enabled:false,\r\n    isLoggedIn:false,\r\n    hasSavedPhone:false\r\n  };\r\n\r\n  function floorRefinishAjaxUrl(){\r\n    return (\r\n      window.cpdf_auth &&\r\n      window.cpdf_auth.ajaxurl\r\n    )\r\n      ? window.cpdf_auth.ajaxurl\r\n      : \"\/wp-admin\/admin-ajax.php\";\r\n  }\r\n\r\n  function setFloorRefinishCallStatus(message,type){\r\n\r\n    if(!dvFCallStatus) return;\r\n\r\n    dvFCallStatus.textContent = message || \"\";\r\n\r\n    dvFCallStatus.classList.remove(\r\n      \"dv-success\",\r\n      \"dv-error\"\r\n    );\r\n\r\n    if(type){\r\n      dvFCallStatus.classList.add(\r\n        type === \"success\"\r\n          ? \"dv-success\"\r\n          : \"dv-error\"\r\n      );\r\n    }\r\n  }\r\n\r\n  function syncFloorRefinishPhoneVisibility(){\r\n\r\n    const useSavedPhone =\r\n      dvFCallConfig.isLoggedIn &&\r\n      dvFCallConfig.hasSavedPhone;\r\n\r\n    if(dvFCallRow){\r\n      dvFCallRow.classList.toggle(\r\n        \"dv-has-saved-phone\",\r\n        useSavedPhone\r\n      );\r\n    }\r\n\r\n    if(dvFCallPhone){\r\n\r\n      dvFCallPhone.required =\r\n        !useSavedPhone;\r\n\r\n      if(useSavedPhone){\r\n        dvFCallPhone.value = \"\";\r\n      }\r\n    }\r\n  }\r\n\r\n  async function loadFloorRefinishCallConfig(){\r\n\r\n    try{\r\n\r\n      const response =\r\n        await fetch(\r\n          floorRefinishAjaxUrl() +\r\n          \"?action=gosms_call_request_config&calculator=floor_refinishing&_=\" +\r\n          Date.now(),\r\n          {\r\n            method:\"GET\",\r\n            credentials:\"same-origin\",\r\n            cache:\"no-store\"\r\n          }\r\n        );\r\n\r\n      const json =\r\n        await response.json();\r\n\r\n      if(\r\n        !json ||\r\n        !json.success ||\r\n        !json.data\r\n      ){\r\n        return;\r\n      }\r\n\r\n      dvFCallConfig = {\r\n        enabled:\r\n          json.data.enabled === true,\r\n\r\n        isLoggedIn:\r\n          json.data.is_logged_in === true,\r\n\r\n        hasSavedPhone:\r\n          json.data.has_saved_phone === true\r\n      };\r\n\r\n      if(dvFCallRequest){\r\n\r\n        dvFCallRequest.style.display =\r\n          dvFCallConfig.enabled\r\n            ? \"block\"\r\n            : \"none\";\r\n      }\r\n\r\n      syncFloorRefinishPhoneVisibility();\r\n\r\n    }catch(error){\r\n\r\n      if(dvFCallRequest){\r\n        dvFCallRequest.style.display = \"none\";\r\n      }\r\n    }\r\n  }\r\n\r\n  async function requestFloorRefinishCompanyCall(){\r\n\r\n    if(\r\n      !dvFRequestCall ||\r\n      !dvFCallConfig.enabled\r\n    ){\r\n      return;\r\n    }\r\n\r\n    const useSavedPhone =\r\n      dvFCallConfig.isLoggedIn &&\r\n      dvFCallConfig.hasSavedPhone;\r\n\r\n    const phone =\r\n      !useSavedPhone &&\r\n      dvFCallPhone\r\n        ? String(\r\n            dvFCallPhone.value || \"\"\r\n          ).trim()\r\n        : \"\";\r\n\r\n    if(\r\n      !useSavedPhone &&\r\n      !phone\r\n    ){\r\n\r\n      setFloorRefinishCallStatus(\r\n        \"Please enter a phone number, e.g. 599123456\",\r\n        \"error\"\r\n      );\r\n\r\n      if(dvFCallPhone){\r\n        dvFCallPhone.focus();\r\n      }\r\n\r\n      return;\r\n    }\r\n\r\n    const originalText =\r\n      dvFRequestCall.textContent;\r\n\r\n    dvFRequestCall.disabled = true;\r\n\r\n    dvFRequestCall.textContent =\r\n      \"Sending...\";\r\n\r\n    setFloorRefinishCallStatus(\r\n      \"\",\r\n      null\r\n    );\r\n\r\n    try{\r\n\r\n      const body =\r\n        new URLSearchParams();\r\n\r\n      body.set(\r\n        \"action\",\r\n        \"gosms_request_call\"\r\n      );\r\n\r\n      body.set(\r\n        \"calculator\",\r\n        \"floor_refinishing\"\r\n      );\r\n\r\n      if(phone){\r\n        body.set(\r\n          \"phone\",\r\n          phone\r\n        );\r\n      }\r\n\r\n      const response =\r\n        await fetch(\r\n          floorRefinishAjaxUrl(),\r\n          {\r\n            method:\"POST\",\r\n            credentials:\"same-origin\",\r\n            headers:{\r\n              \"Content-Type\":\r\n                \"application\/x-www-form-urlencoded; charset=UTF-8\"\r\n            },\r\n            body:\r\n              body.toString()\r\n          }\r\n        );\r\n\r\n      const json =\r\n        await response.json();\r\n\r\n      if(\r\n        json &&\r\n        json.success\r\n      ){\r\n\r\n        setFloorRefinishCallStatus(\r\n          json.data &&\r\n          json.data.message\r\n            ? json.data.message\r\n            : \"Your request has been received. You will be contacted soon.\",\r\n          \"success\"\r\n        );\r\n\r\n        return;\r\n      }\r\n\r\n      const data =\r\n        json &&\r\n        json.data\r\n          ? json.data\r\n          : {};\r\n\r\n      if(\r\n        data &&\r\n        data.disabled\r\n      ){\r\n\r\n        dvFCallConfig.enabled =\r\n          false;\r\n\r\n        if(dvFCallRequest){\r\n          dvFCallRequest.style.display =\r\n            \"none\";\r\n        }\r\n\r\n        return;\r\n      }\r\n\r\n      if(\r\n        data &&\r\n        data.need_phone\r\n      ){\r\n\r\n        dvFCallConfig.hasSavedPhone =\r\n          false;\r\n\r\n        syncFloorRefinishPhoneVisibility();\r\n\r\n        setFloorRefinishCallStatus(\r\n          data.message ||\r\n          \"Please enter a phone number.\",\r\n          \"error\"\r\n        );\r\n\r\n        if(dvFCallPhone){\r\n          dvFCallPhone.focus();\r\n        }\r\n\r\n        return;\r\n      }\r\n\r\n      setFloorRefinishCallStatus(\r\n        data &&\r\n        data.message\r\n          ? data.message\r\n          : \"The request could not be sent. Please try again.\",\r\n        \"error\"\r\n      );\r\n\r\n    }catch(error){\r\n\r\n      setFloorRefinishCallStatus(\r\n        \"The request could not be sent. Please try again.\",\r\n        \"error\"\r\n      );\r\n\r\n    }finally{\r\n\r\n      dvFRequestCall.disabled =\r\n        false;\r\n\r\n      dvFRequestCall.textContent =\r\n        originalText;\r\n    }\r\n  }\r\n\r\n  async function triggerFloorRefinishCompletedSms(){\r\n\r\n    try{\r\n\r\n      const body =\r\n        new URLSearchParams();\r\n\r\n      body.set(\r\n        \"action\",\r\n        \"gosms_calculator_completed\"\r\n      );\r\n\r\n      body.set(\r\n        \"calculator\",\r\n        \"floor_refinishing\"\r\n      );\r\n\r\n      await fetch(\r\n        floorRefinishAjaxUrl(),\r\n        {\r\n          method:\"POST\",\r\n          credentials:\"same-origin\",\r\n          headers:{\r\n            \"Content-Type\":\r\n              \"application\/x-www-form-urlencoded; charset=UTF-8\"\r\n          },\r\n          body:\r\n            body.toString()\r\n        }\r\n      );\r\n\r\n    }catch(error){\r\n      \/* SMS failure must never break the calculator. *\/\r\n    }\r\n  }\r\n\r\n  loadFloorRefinishCallConfig();\r\n\r\n  if(dvFRequestCall){\r\n\r\n    dvFRequestCall.addEventListener(\r\n      \"click\",\r\n      requestFloorRefinishCompanyCall\r\n    );\r\n  }\r\n\r\n  function formatMoney(value){\r\n\r\n    return new Intl.NumberFormat(\r\n      'en-US',\r\n      {\r\n        maximumFractionDigits:0\r\n      }\r\n    ).format(\r\n      Math.round(value)\r\n    ) + ' \u20be';\r\n  }\r\n\r\n  let dvFloorRefinishClickBusy = false;\r\n\r\n  function showFloorRefinishFreeNextStep(){\r\n\r\n    const cta =\r\n      el(\"dvFFreeNextStep\");\r\n\r\n    if(cta){\r\n      cta.classList.add(\r\n        \"dv-show\"\r\n      );\r\n    }\r\n  }\r\n\r\n  function openFloorRefinishRegistrationPopup(){\r\n\r\n    const redirect =\r\n      window.location.pathname +\r\n      window.location.search +\r\n      window.location.hash;\r\n\r\n    if(\r\n      typeof window.openAuthModal ===\r\n      \"function\"\r\n    ){\r\n\r\n      window.openAuthModal(\r\n        \"register\",\r\n        redirect\r\n      );\r\n\r\n      return true;\r\n    }\r\n\r\n    const trigger =\r\n      document.querySelector(\r\n        '.cpdf-auth[data-auth-action=\"register\"]'\r\n      );\r\n\r\n    if(trigger){\r\n\r\n      trigger.setAttribute(\r\n        \"data-redirect\",\r\n        redirect\r\n      );\r\n\r\n      trigger.click();\r\n\r\n      return true;\r\n    }\r\n\r\n    window.location.href =\r\n      \"\/en\/login\/?redirect_to=\" +\r\n      encodeURIComponent(redirect);\r\n\r\n    return false;\r\n  }\r\n\r\n  function openFloorRefinishPackagePrompt(){\r\n\r\n    if(\r\n      typeof window.jQuery !==\r\n        \"undefined\" &&\r\n      window.jQuery(\r\n        \"#membership-modal\"\r\n      ).length\r\n    ){\r\n\r\n      window.jQuery(\r\n        \"#membership-modal\"\r\n      ).css(\r\n        \"display\",\r\n        \"block\"\r\n      );\r\n\r\n      return true;\r\n    }\r\n\r\n    const trigger =\r\n      document.querySelector(\r\n        \"#membership-purchase-btn, .membership-purchase-btn, [data-membership-modal]\"\r\n      );\r\n\r\n    if(trigger){\r\n\r\n      trigger.click();\r\n\r\n      return true;\r\n    }\r\n\r\n    window.location.href =\r\n      \"\/en\/packages\/\";\r\n\r\n    return false;\r\n  }\r\n\r\n  async function authorizeFloorRefinishFlow(){\r\n\r\n    if(\r\n      !window.DatvaleHtmlAccess ||\r\n      typeof window.DatvaleHtmlAccess.authorize !==\r\n        \"function\"\r\n    ){\r\n\r\n      alert(\r\n        \"The access system could not be loaded. Refresh the page and try again.\"\r\n      );\r\n\r\n      return {\r\n        allowed:false,\r\n        mode:\"error\"\r\n      };\r\n    }\r\n\r\n    const result =\r\n      await window.DatvaleHtmlAccess.authorize(\r\n        \"floor_refinishing\"\r\n      );\r\n\r\n    if(\r\n      result &&\r\n      result.success &&\r\n      result.data &&\r\n      result.data.allowed === true\r\n    ){\r\n\r\n      return {\r\n        allowed:true,\r\n        mode:\r\n          result.data.mode ||\r\n          \"membership\"\r\n      };\r\n    }\r\n\r\n    const data =\r\n      result &&\r\n      result.data\r\n        ? result.data\r\n        : {};\r\n\r\n    if(\r\n      data.code ===\r\n      \"login_required\"\r\n    ){\r\n\r\n      openFloorRefinishRegistrationPopup();\r\n\r\n      return {\r\n        allowed:false,\r\n        mode:\"login_required\"\r\n      };\r\n    }\r\n\r\n    if(\r\n      data.code ===\r\n      \"package_required\"\r\n    ){\r\n\r\n      openFloorRefinishPackagePrompt();\r\n\r\n      return {\r\n        allowed:false,\r\n        mode:\"package_required\"\r\n      };\r\n    }\r\n\r\n    alert(\r\n      data.message ||\r\n      \"Access could not be verified. Please try again.\"\r\n    );\r\n\r\n    return {\r\n      allowed:false,\r\n      mode:\"error\"\r\n    };\r\n  }\r\n\r\n  async function claimFloorRefinishFreeCalculation(){\r\n\r\n    if(\r\n      !window.DatvaleHtmlAccess ||\r\n      typeof window.DatvaleHtmlAccess.claimFree !==\r\n        \"function\"\r\n    ){\r\n\r\n      return false;\r\n    }\r\n\r\n    const result =\r\n      await window.DatvaleHtmlAccess.claimFree(\r\n        \"floor_refinishing\"\r\n      );\r\n\r\n    return !!(\r\n      result &&\r\n      result.success &&\r\n      result.data &&\r\n      result.data.claimed === true\r\n    );\r\n  }\r\n\r\n  function calculate(){\r\n\r\n    const areaValue =\r\n      parseFloat(\r\n        area.value ||\r\n        '0'\r\n      );\r\n\r\n    if(\r\n      !areaValue ||\r\n      areaValue < 5\r\n    ){\r\n\r\n      error.style.display =\r\n        'block';\r\n\r\n      output.classList.remove(\r\n        'dv-show'\r\n      );\r\n\r\n      return false;\r\n    }\r\n\r\n    error.style.display =\r\n      'none';\r\n\r\n    const serviceRate =\r\n      parseFloat(\r\n        service.value ||\r\n        '0'\r\n      );\r\n\r\n    const damagePercent =\r\n      parseFloat(\r\n        damage.value ||\r\n        '0'\r\n      );\r\n\r\n    const finishRate =\r\n      parseFloat(\r\n        finish.value ||\r\n        '0'\r\n      );\r\n\r\n    const repairRate =\r\n      parseFloat(\r\n        repair.value ||\r\n        '0'\r\n      );\r\n\r\n    const travelCost =\r\n      parseFloat(\r\n        travel.value ||\r\n        '0'\r\n      );\r\n\r\n    const baseCost =\r\n      areaValue *\r\n      serviceRate;\r\n\r\n    const damageCost =\r\n      baseCost *\r\n      damagePercent;\r\n\r\n    const repairCost =\r\n      areaValue *\r\n      repairRate;\r\n\r\n    const workTotal =\r\n      baseCost +\r\n      damageCost +\r\n      repairCost;\r\n\r\n    const finishCost =\r\n      areaValue *\r\n      finishRate;\r\n\r\n    const extrasTotal =\r\n      finishCost +\r\n      travelCost;\r\n\r\n    const grandTotal =\r\n      workTotal +\r\n      extrasTotal;\r\n\r\n    const perM2 =\r\n      grandTotal \/\r\n      areaValue;\r\n\r\n    const damageText =\r\n      damage.options[\r\n        damage.selectedIndex\r\n      ].text;\r\n\r\n    const serviceText =\r\n      service.options[\r\n        service.selectedIndex\r\n      ].text.replace(\r\n        \/ \u2014 .*$\/,\r\n        ''\r\n      );\r\n\r\n    el('dvFResArea').textContent =\r\n      areaValue +\r\n      ' m\u00b2';\r\n\r\n    el('dvFResBase').textContent =\r\n      formatMoney(\r\n        baseCost\r\n      );\r\n\r\n    el('dvFResDamage').textContent =\r\n      formatMoney(\r\n        damageCost\r\n      );\r\n\r\n    el('dvFResRepair').textContent =\r\n      formatMoney(\r\n        repairCost\r\n      );\r\n\r\n    el('dvFResWorkTotal').textContent =\r\n      formatMoney(\r\n        workTotal\r\n      );\r\n\r\n    el('dvFResFinish').textContent =\r\n      formatMoney(\r\n        finishCost\r\n      );\r\n\r\n    el('dvFResTravel').textContent =\r\n      formatMoney(\r\n        travelCost\r\n      );\r\n\r\n    el('dvFResPerM2').textContent =\r\n      formatMoney(\r\n        perM2\r\n      );\r\n\r\n    el('dvFResState').textContent =\r\n      damageText;\r\n\r\n    el('dvFResExtrasTotal').textContent =\r\n      formatMoney(\r\n        extrasTotal\r\n      );\r\n\r\n    el('dvFSumArea').textContent =\r\n      areaValue +\r\n      ' m\u00b2';\r\n\r\n    el('dvFSumService').textContent =\r\n      serviceText;\r\n\r\n    el('dvFSumDamage').textContent =\r\n      damageText;\r\n\r\n    el('dvFSumPerM2').textContent =\r\n      formatMoney(\r\n        perM2\r\n      );\r\n\r\n    el('dvFGrandTotal').textContent =\r\n      formatMoney(\r\n        grandTotal\r\n      );\r\n\r\n    output.classList.add(\r\n      'dv-show'\r\n    );\r\n\r\n    output.scrollIntoView({\r\n      behavior:'smooth',\r\n      block:'start'\r\n    });\r\n\r\n    return true;\r\n  }\r\n\r\n  const calculateButton =\r\n    el(\r\n      \"dvFCalculateFreeFlowV2\"\r\n    );\r\n\r\n  if(calculateButton){\r\n\r\n    calculateButton.addEventListener(\r\n      \"click\",\r\n      async function(event){\r\n\r\n        event.preventDefault();\r\n        event.stopPropagation();\r\n        event.stopImmediatePropagation();\r\n\r\n        if(\r\n          dvFloorRefinishClickBusy\r\n        ){\r\n          return;\r\n        }\r\n\r\n        dvFloorRefinishClickBusy =\r\n          true;\r\n\r\n        const originalText =\r\n          calculateButton.textContent;\r\n\r\n        calculateButton.disabled =\r\n          true;\r\n\r\n        calculateButton.textContent =\r\n          \"Checking access...\";\r\n\r\n        try{\r\n\r\n          const access =\r\n            await authorizeFloorRefinishFlow();\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            calculate();\r\n\r\n          if(!success){\r\n            return;\r\n          }\r\n\r\n          triggerFloorRefinishCompletedSms();\r\n\r\n          if(\r\n            access.mode ===\r\n            \"free\"\r\n          ){\r\n\r\n            const claimed =\r\n              await claimFloorRefinishFreeCalculation();\r\n\r\n            if(claimed){\r\n\r\n              showFloorRefinishFreeNextStep();\r\n            }\r\n          }\r\n\r\n        }finally{\r\n\r\n          calculateButton.disabled =\r\n            false;\r\n\r\n          calculateButton.textContent =\r\n            originalText;\r\n\r\n          dvFloorRefinishClickBusy =\r\n            false;\r\n        }\r\n\r\n      },\r\n      true\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-2500ed0 e-flex e-con-boxed e-con e-parent\" data-id=\"2500ed0\" 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-26d3a17 elementor-widget elementor-widget-html\" data-id=\"26d3a17\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<a\r\n  href=\"https:\/\/datvale.ge\/en\/property-insurance\/\"\r\n  class=\"dv-property-offer\"\r\n  aria-label=\"Calculate the cost of property insurance\"\r\n>\r\n\r\n  <div class=\"dv-property-offer-copy\">\r\n\r\n    <strong>\r\n      Calculate the cost of property insurance\r\n    <\/strong>\r\n\r\n    <span>\r\n      Get a special offer for your apartment or house\r\n    <\/span>\r\n\r\n  <\/div>\r\n\r\n  <div class=\"dv-property-offer-button\">\r\n    Calculate Price\r\n    <b>\u2192<\/b>\r\n  <\/div>\r\n\r\n<\/a>\r\n\r\n\r\n<style>\r\n\r\n.dv-property-offer,\r\n.dv-property-offer *{\r\n  box-sizing:border-box;\r\n}\r\n\r\n.dv-property-offer{\r\n  position:relative;\r\n  overflow:hidden;\r\n\r\n  width:100%;\r\n\r\n  display:flex;\r\n  align-items:center;\r\n  justify-content:space-between;\r\n\r\n  gap:20px;\r\n\r\n  padding:18px 20px;\r\n\r\n  border:1px solid rgba(110,73,22,.16);\r\n  border-radius:18px;\r\n\r\n  background:\r\n    radial-gradient(\r\n      circle at 90% 0%,\r\n      rgba(255,255,255,.88),\r\n      transparent 28%\r\n    ),\r\n    linear-gradient(\r\n      135deg,\r\n      #f4dfb4 0%,\r\n      #d6aa5c 48%,\r\n      #b88132 100%\r\n    );\r\n\r\n  box-shadow:\r\n    0 14px 34px rgba(106,70,19,.20),\r\n    inset 0 1px 0 rgba(255,255,255,.58);\r\n\r\n  text-decoration:none !important;\r\n\r\n  transition:\r\n    transform .22s ease,\r\n    box-shadow .22s ease;\r\n}\r\n\r\n.dv-property-offer::before{\r\n  content:\"\";\r\n\r\n  position:absolute;\r\n  top:-80px;\r\n  right:90px;\r\n\r\n  width:170px;\r\n  height:170px;\r\n\r\n  border-radius:50%;\r\n\r\n  background:\r\n    radial-gradient(\r\n      circle,\r\n      rgba(255,255,255,.36),\r\n      transparent 68%\r\n    );\r\n\r\n  pointer-events:none;\r\n}\r\n\r\n.dv-property-offer:hover{\r\n  transform:translateY(-2px);\r\n\r\n  box-shadow:\r\n    0 18px 42px rgba(106,70,19,.27),\r\n    inset 0 1px 0 rgba(255,255,255,.62);\r\n\r\n  text-decoration:none !important;\r\n}\r\n\r\n\r\n.dv-property-offer-copy{\r\n  position:relative;\r\n  z-index:2;\r\n\r\n  min-width:0;\r\n\r\n  display:flex;\r\n  flex-direction:column;\r\n\r\n  gap:4px;\r\n}\r\n\r\n.dv-property-offer-copy strong{\r\n  color:#2e2111;\r\n\r\n  font-size:19px;\r\n  line-height:1.2;\r\n\r\n  font-weight:950;\r\n\r\n  letter-spacing:-.01em;\r\n}\r\n\r\n.dv-property-offer-copy span{\r\n  color:rgba(46,33,17,.78);\r\n\r\n  font-size:13px;\r\n  line-height:1.35;\r\n\r\n  font-weight:700;\r\n}\r\n\r\n\r\n.dv-property-offer-button{\r\n  position:relative;\r\n  z-index:2;\r\n\r\n  flex:0 0 auto;\r\n\r\n  display:inline-flex;\r\n  align-items:center;\r\n  justify-content:center;\r\n\r\n  gap:7px;\r\n\r\n  min-height:46px;\r\n\r\n  padding:11px 16px;\r\n\r\n  border:1px solid rgba(46,33,17,.10);\r\n  border-radius:11px;\r\n\r\n  background:#21170c;\r\n\r\n  color:#ffffff;\r\n\r\n  font-size:13px;\r\n  line-height:1;\r\n\r\n  font-weight:900;\r\n\r\n  white-space:nowrap;\r\n\r\n  box-shadow:\r\n    0 7px 18px rgba(33,23,12,.20);\r\n}\r\n\r\n.dv-property-offer-button b{\r\n  font-size:15px;\r\n  line-height:1;\r\n\r\n  transition:transform .2s ease;\r\n}\r\n\r\n.dv-property-offer:hover\r\n.dv-property-offer-button b{\r\n  transform:translateX(2px);\r\n}\r\n\r\n\r\n\/* TABLET *\/\r\n\r\n@media(max-width:900px){\r\n\r\n  .dv-property-offer{\r\n    padding:16px 17px;\r\n\r\n    border-radius:15px;\r\n  }\r\n\r\n  .dv-property-offer-copy strong{\r\n    font-size:17px;\r\n  }\r\n\r\n}\r\n\r\n\r\n\/* MOBILE *\/\r\n\r\n@media(max-width:600px){\r\n\r\n  .dv-property-offer{\r\n    gap:10px;\r\n\r\n    padding:12px;\r\n\r\n    border-radius:13px;\r\n  }\r\n\r\n  .dv-property-offer-copy{\r\n    gap:2px;\r\n  }\r\n\r\n  .dv-property-offer-copy strong{\r\n    font-size:14px;\r\n    line-height:1.2;\r\n  }\r\n\r\n  .dv-property-offer-copy span{\r\n    font-size:10.5px;\r\n    line-height:1.25;\r\n  }\r\n\r\n  .dv-property-offer-button{\r\n    min-height:37px;\r\n\r\n    padding:8px 10px;\r\n\r\n    border-radius:8px;\r\n\r\n    font-size:10.5px;\r\n  }\r\n\r\n  .dv-property-offer-button b{\r\n    font-size:12px;\r\n  }\r\n\r\n}\r\n\r\n\r\n\/* SMALL MOBILE *\/\r\n\r\n@media(max-width:380px){\r\n\r\n  .dv-property-offer{\r\n    gap:8px;\r\n\r\n    padding:10px;\r\n  }\r\n\r\n  .dv-property-offer-copy strong{\r\n    font-size:13px;\r\n  }\r\n\r\n  .dv-property-offer-copy span{\r\n    font-size:9.5px;\r\n  }\r\n\r\n  .dv-property-offer-button{\r\n    padding:7px 8px;\r\n\r\n    font-size:10px;\r\n  }\r\n\r\n}\r\n\r\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-75ad8e0 e-flex e-con-boxed e-con e-parent\" data-id=\"75ad8e0\" 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-3090941 elementor-widget elementor-widget-html\" data-id=\"3090941\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section class=\"dv-partners\">\r\n\r\n  <div class=\"dv-partners-head\">\r\n\r\n    <span>DATVALE.GE PARTNERS<\/span>\r\n\r\n    <h2>Special Offers<\/h2>\r\n\r\n    <p>\r\n      Take advantage of special offers from Datvale partner companies\r\n      for renovation, construction and interior projects.\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        View Offer\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          Lighting Store\r\n        <\/div>\r\n\r\n\r\n        <p>\r\n          A wide selection of international lighting brands, including\r\n          Philips, Eglo, Artemide, Luceplan, Vibia, Osram and more.\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          Up to 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        View Offer\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          Construction & Renovation Hypermarket\r\n        <\/div>\r\n\r\n\r\n        <p>\r\n          A wide range of construction and renovation products,\r\n          including own-brand manufacturing and international brands\r\n          for renovation and construction projects.\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        View Offer\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          Sanitary Ware & Ceramic Tiles\r\n        <\/div>\r\n\r\n\r\n        <p>\r\n          A wide selection of bathroom sanitary ware and ceramic tiles\r\n          for creating a modern and functional bathroom.\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        View Offer\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          Paints & Finishing Materials\r\n        <\/div>\r\n\r\n\r\n        <p>\r\n          An international brand of interior and facade paints,\r\n          decorative coatings and finishing materials.\r\n        <\/p>\r\n\r\n\r\n        <div class=\"dv-address\">\r\n\r\n          <span>\r\n            Tbilisi \u2014 8 Petre Kavtaradze St. \u2022 599 44 55 67\r\n          <\/span>\r\n\r\n          <span>\r\n            Tbilisi \u2014 15 Samtredia St. \u2022 599 58 26 25\r\n          <\/span>\r\n\r\n          <span>\r\n            Batumi \u2014 35 Pushkin St. \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  <!-- ALL PARTNERS -->\r\n\r\n  <div class=\"dv-all-partners\">\r\n\r\n    <a href=\"https:\/\/datvale.ge\/en\/partners\/\">\r\n      All Partners\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         * Close all open cards\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                'View Offer';\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         * Open the selected card\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            'Close Offer';\r\n\r\n\r\n          button.setAttribute(\r\n            'aria-expanded',\r\n            'true'\r\n          );\r\n\r\n        }\r\n\r\n      }\r\n    );\r\n\r\n  });\r\n\r\n})();\r\n\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-01f352f e-flex e-con-boxed e-con e-parent\" data-id=\"01f352f\" 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-9ed674e elementor-widget elementor-widget-text-editor\" data-id=\"9ed674e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>Floor Sanding Cost<\/h2>\n<p><strong>Floor sanding cost<\/strong> depends on the floor area, the condition of the parquet, the level of damage, the equipment used, and the type of final finish. Refinishing parquet that is in good condition is relatively simple, while deep scratches, gaps, or heavily worn surfaces require more work and increase the total cost.<\/p>\n<p>Datvale\u2019s calculator allows you to estimate in just a few steps how much <strong>floor sanding<\/strong> may cost. Enter the floor area, floor condition, type of work, and final finish, and the system will automatically calculate the estimated cost.<\/p>\n<h2>What Is Included in the Floor Sanding Cost?<\/h2>\n<p><strong>Floor sanding cost<\/strong> does not include only the sanding work itself. The total cost may include surface sanding, additional treatment, gap filling, lacquer or oil materials, and in some cases additional restoration.<\/p>\n<p>If the floor is in good condition, the work is relatively simple. If the parquet is damaged, several stages of treatment may be required.<\/p>\n<p>For this reason, <strong>parquet sanding cost<\/strong> should be estimated according to the actual condition of the floor.<\/p>\n<h2>Floor Sanding<\/h2>\n<p><strong>Floor sanding<\/strong> is one of the main methods used to restore old wooden flooring. During sanding, the worn surface layer, old lacquer, scratches, and other visible damage are removed.<\/p>\n<p>After proper sanding, the natural color and texture of the wood become more visible, and the surface is prepared for a new protective finish.<\/p>\n<p><strong>Floor sanding<\/strong> is especially important when restoring old parquet that does not need to be completely replaced.<\/p>\n<h2>Parquet Sanding<\/h2>\n<p><strong>Parquet sanding<\/strong> is used to restore both classic parquet and other types of natural wood flooring.<\/p>\n<p>The difficulty of the work depends on how worn the surface is. In the case of light scratches, standard sanding may be enough, while significant damage may require deeper treatment.<\/p>\n<p>For this reason, the calculator allows you to select undamaged, minor damage, or significant damage.<\/p>\n<h2>Parquet Refinishing<\/h2>\n<p><strong>Parquet refinishing<\/strong> involves mechanical treatment of the wooden floor surface using specialized equipment.<\/p>\n<p>During refinishing, the old protective layer and surface damage are removed. The quality of the work depends greatly on the equipment used and the experience of the specialist.<\/p>\n<p>Modern equipment used for <strong>parquet refinishing<\/strong> provides a more even surface and helps reduce excessive dust.<\/p>\n<h2>Parquet Sanding Cost<\/h2>\n<p><strong>Parquet sanding cost<\/strong> varies depending on the floor area and its condition.<\/p>\n<p>For an undamaged surface, the main expenses are sanding and the final finish. In the case of minor damage, additional labor may be required, while significant damage may require gap filling, deeper sanding, or local restoration.<\/p>\n<p>For this reason, the price per square meter is not the same for every project.<\/p>\n<h2>Sanding an Undamaged Floor<\/h2>\n<p>If the parquet is structurally in good condition and only has surface wear or minor scratches, <strong>floor sanding<\/strong> is relatively straightforward.<\/p>\n<p>In this case, the process mainly involves removing the old finish, leveling the surface, and applying new lacquer or oil.<\/p>\n<p>For an undamaged floor, the overall cost of the work is also relatively lower.<\/p>\n<h2>Sanding Parquet with Minor Damage<\/h2>\n<p>Minor damage may include relatively deep scratches, small gaps, or uneven surface wear.<\/p>\n<p>In such cases, <strong>parquet sanding<\/strong> requires additional time and treatment.<\/p>\n<p>Gap filling or deeper surface treatment may also be necessary, which increases the <strong>parquet sanding cost<\/strong>.<\/p>\n<h2>Restoring Parquet with Significant Damage<\/h2>\n<p>If the parquet has deep damage, wide gaps, moving boards, or heavy wear, standard sanding alone may not always be sufficient.<\/p>\n<p>Additional restoration, repair, or replacement of individual elements may be required.<\/p>\n<p>For significant damage, the calculator applies an additional adjustment based on the complexity of the work, although difficult restoration may still require an on-site assessment.<\/p>\n<h2>Lacquer and Final Finish<\/h2>\n<p>After sanding is completed, the parquet surface needs protection.<\/p>\n<p>Lacquer or special oil is commonly used to protect the wood from moisture, dirt, and everyday wear.<\/p>\n<p>The type of final finish affects both the visual result and the total <strong>floor sanding cost<\/strong>.<\/p>\n<h2>What Affects the Final Floor Sanding Cost?<\/h2>\n<p>The main factors affecting the final price are:<\/p>\n<ul>\n<li>Floor area<\/li>\n<li>Condition of the parquet<\/li>\n<li>Level of damage<\/li>\n<li>Type of sanding<\/li>\n<li>Need for gap filling<\/li>\n<li>Use of lacquer or oil<\/li>\n<li>Additional restoration<\/li>\n<li>Site accessibility<\/li>\n<\/ul>\n<p>Depending on these factors, the <strong>parquet sanding cost<\/strong> may vary significantly.<\/p>\n<h2>How to Use the Floor Sanding Calculator<\/h2>\n<p>First, enter the floor area. Then select the type of work and assess the condition of the floor.<\/p>\n<p>You can choose:<\/p>\n<p><strong>Undamaged<\/strong><br \/>For normal wear or surface scratches.<\/p>\n<p><strong>Minor Damage<\/strong><br \/>For deeper scratches or small gaps.<\/p>\n<p><strong>Significant Damage<\/strong><br \/>For heavily worn or more difficult-to-treat surfaces.<\/p>\n<p>Then select the final finish and, if necessary, gap filling.<\/p>\n<p>The calculator will automatically estimate the <strong>floor sanding cost<\/strong>, the cost of <strong>parquet refinishing<\/strong>, additional work, and the total estimated budget.<\/p>\n<p>The result will help you estimate the <strong>parquet sanding cost<\/strong> in advance and plan your floor restoration expenses.<\/p>\n<p>Follow us on <a href=\"http:\/\/facebook.com\/datvale.ge\">Facebook<\/a> and <a href=\"http:\/\/youtube.com\/@datvale\" target=\"_blank\" rel=\"noopener\">YouTube<\/a>.<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b276abc e-flex e-con-boxed e-con e-parent\" data-id=\"b276abc\" 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-d8f10e6 elementor-widget elementor-widget-image\" data-id=\"d8f10e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"341\" src=\"https:\/\/datvale.ge\/wp-content\/uploads\/2026\/09\/iatakis-moxvewa-1024x341.webp\" class=\"attachment-large size-large wp-image-21841\" alt=\"Floor Sanding Cost\" srcset=\"https:\/\/datvale.ge\/wp-content\/uploads\/2026\/09\/iatakis-moxvewa-1024x341.webp 1024w, https:\/\/datvale.ge\/wp-content\/uploads\/2026\/09\/iatakis-moxvewa-300x100.webp 300w, https:\/\/datvale.ge\/wp-content\/uploads\/2026\/09\/iatakis-moxvewa-768x256.webp 768w, https:\/\/datvale.ge\/wp-content\/uploads\/2026\/09\/iatakis-moxvewa.webp 1100w, https:\/\/datvale.ge\/wp-content\/uploads\/2026\/09\/iatakis-moxvewa-600x200.webp 600w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Floor Sanding Cost 2026 \u2013 Floor Sanding Calculator 1Select the floor sanding details Floor area m\u00b2 Service package Standard sanding \u2014 18 \u20be\/m\u00b2Premium sanding \u2014 25 \u20be\/m\u00b2 Floor condition UndamagedMinor damageSignificant damage Final finish Sanding onlyLacquer \/ Finish \u2014 14 \u20be\/m\u00b2Premium Lacquer \/ Oil \u2014 16 \u20be\/m\u00b2 Gap filling Not requiredBasic filler \u2014 4 \u20be\/m\u00b2Enhanced&#8230;<\/p>\n","protected":false},"author":67,"featured_media":0,"parent":0,"menu_order":16,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-21842","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/datvale.ge\/en\/wp-json\/wp\/v2\/pages\/21842","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/datvale.ge\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/datvale.ge\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/datvale.ge\/en\/wp-json\/wp\/v2\/users\/67"}],"replies":[{"embeddable":true,"href":"https:\/\/datvale.ge\/en\/wp-json\/wp\/v2\/comments?post=21842"}],"version-history":[{"count":1,"href":"https:\/\/datvale.ge\/en\/wp-json\/wp\/v2\/pages\/21842\/revisions"}],"predecessor-version":[{"id":22121,"href":"https:\/\/datvale.ge\/en\/wp-json\/wp\/v2\/pages\/21842\/revisions\/22121"}],"wp:attachment":[{"href":"https:\/\/datvale.ge\/en\/wp-json\/wp\/v2\/media?parent=21842"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}