{"id":17926,"date":"2026-06-09T18:18:51","date_gmt":"2026-06-09T15:18:51","guid":{"rendered":"https:\/\/zeolife.gr\/?page_id=17926"},"modified":"2026-06-09T19:42:37","modified_gmt":"2026-06-09T16:42:37","slug":"zeolite-agriculture-dosage-calculator","status":"publish","type":"page","link":"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/","title":{"rendered":"Zeolite Agricultural Dosage Calculator"},"content":{"rendered":"\n\n<!-- ==========================================================\n     Zeolite Agricultural Dosage Calculator (EN) \u2014 WP-Ready\n     Path: \/en\/zeolite-agriculture-dosage-calculator\/\n     Paste into a WP Custom HTML block\n     ========================================================== -->\n<!-- Schema markup -->\n<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@graph\": [\n    {\n      \"@type\": \"WebApplication\",\n      \"name\": \"Zeolite Agricultural Dosage Calculator\",\n      \"url\": \"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/\",\n      \"description\": \"Interactive zeolite dosage calculator for agricultural use: olive, vineyard, walnut, fruit trees, cereals, lawn, ornamentals. Supports 3 brands (Greek Thracian, IMERYS, ZeoGravel\u00ae ZEOCEM) and 3 soil types. Hectare-based for international markets.\",\n      \"applicationCategory\": \"AgricultureApplication\",\n      \"operatingSystem\": \"Any (web)\",\n      \"inLanguage\": \"en\",\n      \"isAccessibleForFree\": true,\n      \"audience\": {\n        \"@type\": \"Audience\",\n        \"audienceType\": \"Farmers, Agronomists, Agricultural Cooperatives, Exporters\"\n      },\n      \"publisher\": { \"@type\": \"Organization\", \"name\": \"Zeolife\", \"url\": \"https:\/\/zeolife.gr\/\" }\n    },\n    {\n      \"@type\": \"HowTo\",\n      \"name\": \"How to calculate the correct zeolite dose for your agricultural application\",\n      \"description\": \"Guide for calculating zeolite dosage by crop, soil type and product brand.\",\n      \"step\": [\n        { \"@type\": \"HowToStep\", \"name\": \"Select crop\", \"text\": \"Choose from 10 categories: olives, vineyard, walnut, fruit trees, cereals, lawn, ornamentals, seed production, cacti, palm trees.\" },\n        { \"@type\": \"HowToStep\", \"name\": \"Enter quantity\", \"text\": \"Number of trees\/vines\/plants or hectares. For trees and vines, select planting phase.\" },\n        { \"@type\": \"HowToStep\", \"name\": \"Select soil type\", \"text\": \"Light (sandy), Medium (loamy) or Heavy (clay). Determines zeolite granularity.\" },\n        { \"@type\": \"HowToStep\", \"name\": \"Choose brand\", \"text\": \"Greek Thracian, IMERYS, ZeoGravel\u00ae (ZEOCEM) or let us recommend.\" },\n        { \"@type\": \"HowToStep\", \"name\": \"Application strategy\", \"text\": \"First phase, full program (3 or 4 years), or maintenance.\" }\n      ]\n    }\n  ]\n}\n<\/script>\n<style>\n.zagri-en {\n  --za-brand: #5b7e0e;\n  --za-brand-dark: #425a0a;\n  --za-accent: #eff3dd;\n  --za-text: #1f2933;\n  --za-muted: #5a6470;\n  --za-border: #d8dee5;\n  --za-warn: #fff4e5;\n  --za-warn-bd: #e0a800;\n  --za-info: #e8f1fa;\n  --za-info-bd: #1976d2;\n  --za-success: #e6f4ea;\n  --za-success-bd: #2e7d32;\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif;\n  color: var(--za-text);\n  line-height: 1.6;\n  max-width: 920px;\n  margin: 1.5rem auto;\n}\n.zagri-en * { box-sizing: border-box; }\n.zagri-en .intro { background: linear-gradient(135deg, var(--za-accent), #fff); border: 2px solid var(--za-brand); border-radius: 10px; padding: 1.25rem 1.5rem; margin-bottom: 1.5rem; }\n.zagri-en .intro h2 { color: var(--za-brand-dark); margin: 0 0 0.5rem; font-size: 1.4rem; }\n.zagri-en .intro p { margin: 0.5rem 0; }\n.zagri-en .badges { display: flex; gap: 0.5rem; flex-wrap: wrap; margin-top: 0.75rem; }\n.zagri-en .badge { background: #fff; border: 1px solid var(--za-brand); color: var(--za-brand-dark); padding: 0.25rem 0.7rem; border-radius: 999px; font-size: 0.82rem; font-weight: 600; }\n.zagri-en .step { background: #fff; border: 1px solid var(--za-border); border-radius: 8px; padding: 1.25rem 1.5rem; margin-bottom: 1rem; transition: border-color 0.15s; }\n.zagri-en .step.active { border-color: var(--za-brand); box-shadow: 0 2px 8px rgba(91,126,14,0.08); }\n.zagri-en .step-num { display: inline-block; width: 28px; height: 28px; line-height: 28px; text-align: center; background: var(--za-brand); color: #fff; border-radius: 50%; font-weight: 700; margin-right: 0.5rem; font-size: 0.95rem; }\n.zagri-en .step h3 { margin: 0 0 0.85rem; color: var(--za-brand-dark); font-size: 1.1rem; display: flex; align-items: center; }\n.zagri-en .options { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0.6rem; }\n.zagri-en .options.cols-3 { grid-template-columns: repeat(3, 1fr); }\n.zagri-en .options.cols-4 { grid-template-columns: repeat(4, 1fr); }\n.zagri-en .options.cols-5 { grid-template-columns: repeat(5, 1fr); }\n@media (max-width: 700px) { .zagri-en .options, .zagri-en .options.cols-3, .zagri-en .options.cols-4, .zagri-en .options.cols-5 { grid-template-columns: 1fr 1fr; } }\n@media (max-width: 480px) { .zagri-en .options, .zagri-en .options.cols-3, .zagri-en .options.cols-4, .zagri-en .options.cols-5 { grid-template-columns: 1fr; } }\n.zagri-en .option { display: block; cursor: pointer; padding: 0.85rem 1rem; border: 2px solid var(--za-border); border-radius: 6px; transition: all 0.15s; background: #fafbfc; }\n.zagri-en .option:hover { border-color: var(--za-brand); background: var(--za-accent); }\n.zagri-en .option input { display: none; }\n.zagri-en .option:has(input:checked) { border-color: var(--za-brand); background: var(--za-accent); box-shadow: 0 0 0 3px rgba(91,126,14,0.1); }\n.zagri-en .opt-title { font-weight: 600; display: block; margin-bottom: 0.2rem; }\n.zagri-en .opt-desc { font-size: 0.85rem; color: var(--za-muted); display: block; }\n.zagri-en .qty-input { width: 100%; padding: 0.75rem 1rem; border: 2px solid var(--za-border); border-radius: 6px; font-size: 1rem; transition: border-color 0.15s; }\n.zagri-en .qty-input:focus { outline: none; border-color: var(--za-brand); box-shadow: 0 0 0 3px rgba(91,126,14,0.1); }\n.zagri-en .qty-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0.6rem; align-items: end; }\n@media (max-width: 600px) { .zagri-en .qty-row { grid-template-columns: 1fr; } }\n.zagri-en .qty-label { font-weight: 600; display: block; margin-bottom: 0.4rem; font-size: 0.92rem; }\n.zagri-en .sublabel { font-size: 0.85rem; color: var(--za-muted); margin-top: 0.4rem; }\n.zagri-en .hidden { display: none !important; }\n.zagri-en .actions { display: flex; gap: 0.6rem; flex-wrap: wrap; margin-top: 1rem; }\n.zagri-en .btn { background: var(--za-brand); color: #fff; border: none; padding: 0.8rem 1.5rem; border-radius: 6px; font-weight: 600; cursor: pointer; font-size: 0.95rem; transition: background 0.15s; text-decoration: none; display: inline-block; }\n.zagri-en .btn:hover { background: var(--za-brand-dark); }\n.zagri-en .btn:disabled { background: #b5c08c; cursor: not-allowed; }\n.zagri-en .btn-secondary { background: transparent; color: var(--za-brand); border: 2px solid var(--za-brand); padding: calc(0.8rem - 2px) calc(1.5rem - 2px); }\n.zagri-en .btn-secondary:hover { background: var(--za-brand); color: #fff; }\n.zagri-en .btn-print { background: transparent; color: var(--za-muted); border: 1px solid var(--za-border); padding: calc(0.8rem - 1px) calc(1.5rem - 1px); }\n.zagri-en .btn-print:hover { background: #f3f4f6; }\n.zagri-en .result { display: none; background: #fff; border: 3px solid var(--za-brand); border-radius: 10px; padding: 1.5rem; margin-top: 1.5rem; animation: zaSlideEn 0.4s ease; }\n@keyframes zaSlideEn { from { opacity: 0; transform: translateY(15px); } to { opacity: 1; transform: translateY(0); } }\n.zagri-en .result.show { display: block; }\n.zagri-en .result h3 { color: var(--za-brand-dark); margin-top: 0; font-size: 1.3rem; padding-bottom: 0.5rem; border-bottom: 2px solid var(--za-accent); }\n.zagri-en .result h4 { color: var(--za-brand-dark); margin: 1.25rem 0 0.5rem; font-size: 1.05rem; }\n.zagri-en .product-card { background: linear-gradient(135deg, var(--za-accent), #fff); border: 2px solid var(--za-brand); padding: 1.25rem 1.5rem; border-radius: 8px; margin: 0.75rem 0; }\n.zagri-en .product-card .product-name { color: var(--za-brand-dark); font-size: 1.15rem; font-weight: 700; display: block; margin-bottom: 0.4rem; }\n.zagri-en .product-card .product-reason { font-size: 0.92rem; color: var(--za-text); }\n.zagri-en .dose-table { width: 100%; border-collapse: collapse; margin: 0.75rem 0; font-size: 0.95rem; }\n.zagri-en .dose-table th, .zagri-en .dose-table td { padding: 0.6rem 0.7rem; border: 1px solid var(--za-border); text-align: left; }\n.zagri-en .dose-table th { background: var(--za-accent); color: var(--za-brand-dark); font-weight: 700; }\n.zagri-en .dose-table tr:nth-child(even) td { background: #fafbfc; }\n.zagri-en .discount-banner { background: linear-gradient(135deg, #fef3c7, #fef9e7); border: 2px solid #f59e0b; padding: 1rem 1.25rem; border-radius: 8px; margin: 1rem 0; text-align: center; }\n.zagri-en .discount-banner strong { color: #b45309; font-size: 1.1rem; }\n.zagri-en .timeline { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.6rem; margin: 0.75rem 0; }\n@media (max-width: 800px) { .zagri-en .timeline { grid-template-columns: repeat(2, 1fr) !important; } }\n@media (max-width: 480px) { .zagri-en .timeline { grid-template-columns: 1fr !important; } }\n.zagri-en .year-card { background: #fff; border: 2px solid var(--za-border); border-radius: 8px; padding: 1rem; text-align: center; }\n.zagri-en .year-card.now { border-color: var(--za-brand); background: var(--za-accent); }\n.zagri-en .year-card .year-label { font-size: 0.85rem; color: var(--za-muted); font-weight: 600; }\n.zagri-en .year-card .year-kg { font-size: 1.4rem; color: var(--za-brand-dark); font-weight: 700; margin: 0.3rem 0; }\n.zagri-en .year-card .year-sacks { font-size: 0.88rem; color: var(--za-muted); }\n.zagri-en .year-card .year-percent { font-size: 0.8rem; color: var(--za-brand); font-weight: 600; }\n.zagri-en .info-box { background: var(--za-info); border-left: 4px solid var(--za-info-bd); padding: 0.85rem 1.1rem; margin: 0.75rem 0; border-radius: 4px; }\n.zagri-en .info-box strong { display: block; margin-bottom: 0.3rem; }\n.zagri-en .warning { background: var(--za-warn); border-left: 4px solid var(--za-warn-bd); padding: 0.85rem 1.1rem; margin: 0.75rem 0; border-radius: 4px; }\n.zagri-en .warning strong { display: block; margin-bottom: 0.3rem; color: #b45309; }\n.zagri-en .wholesale-cta { background: linear-gradient(135deg, var(--za-brand-dark), var(--za-brand)); color: #fff; padding: 1.25rem 1.5rem; border-radius: 8px; margin: 1.25rem 0; text-align: center; }\n.zagri-en .wholesale-cta strong { font-size: 1.1rem; display: block; margin-bottom: 0.5rem; }\n.zagri-en .wholesale-cta .wholesale-btns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.5rem; margin-top: 0.75rem; }\n@media (max-width: 600px) { .zagri-en .wholesale-cta .wholesale-btns { grid-template-columns: 1fr; } }\n.zagri-en .wholesale-cta a { background: #fff; color: var(--za-brand-dark); padding: 0.7rem 1rem; border-radius: 6px; text-decoration: none; font-weight: 600; font-size: 0.92rem; }\n.zagri-en .wholesale-cta a:hover { background: var(--za-accent); }\n.zagri-en .cta-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0.6rem; margin-top: 1.25rem; }\n@media (max-width: 600px) { .zagri-en .cta-row { grid-template-columns: 1fr; } }\n.zagri-en .disclaimer { font-size: 0.85rem; color: var(--za-muted); border-top: 1px solid var(--za-border); padding-top: 1rem; margin-top: 1.25rem; font-style: italic; }\n.zagri-en .progress { height: 4px; background: var(--za-border); border-radius: 2px; margin: 1rem 0 1.5rem; overflow: hidden; }\n.zagri-en .progress-bar { height: 100%; background: var(--za-brand); width: 0%; transition: width 0.3s; }\n.zagri-en .sub-group { margin-top: 1rem; padding-top: 1rem; border-top: 1px dashed var(--za-border); }\n.zagri-en .print-only { display: none; }\n@media print {\n  .zagri-en .step:not(.active), .zagri-en .actions, .zagri-en .progress, .zagri-en .intro, .zagri-en .wholesale-cta a { display: none; }\n  .zagri-en .print-only { display: block; }\n  .zagri-en .result { border: 1px solid #000; box-shadow: none; }\n}\n<\/style>\n<div class=\"zagri-en\">\n<div class=\"intro\">\n  <h2>\ud83c\udf3e Zeolite Agricultural Dosage Calculator<\/h2>\n  <p>Give us 5 inputs and we&#8217;ll recommend the <strong>right product<\/strong> from our 3 ranges (Greek Thracian, IMERYS, ZeoGravel\u00ae ZEOCEM) with <strong>precise dosage<\/strong>, multi-year program and automatic discount calculation.<\/p>\n  <div class=\"badges\">\n    <span class=\"badge\">10 crops<\/span>\n    <span class=\"badge\">3 qualities \u00d7 9 products<\/span>\n    <span class=\"badge\">New plantings<\/span>\n    <span class=\"badge\">Full 3-year programs<\/span>\n    <span class=\"badge\">Discounts up to 40%<\/span>\n  <\/div>\n<\/div>\n<div class=\"progress\" aria-hidden=\"true\"><div class=\"progress-bar\" id=\"zeProgress\"><\/div><\/div>\n<!-- STEP 1: CROP -->\n<div class=\"step active\" data-step=\"1\">\n  <h3><span class=\"step-num\">1<\/span>Select crop<\/h3>\n  <div class=\"options cols-3\">\n    <label class=\"option\"><input type=\"radio\" name=\"crop\" value=\"olive\">\n      <span class=\"opt-title\">\ud83e\uded2 Olive trees<\/span>\n      <span class=\"opt-desc\">up to 24 kg\/tree or 6 t\/hectare<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"crop\" value=\"walnut\">\n      <span class=\"opt-title\">\ud83e\udd5c Walnut trees<\/span>\n      <span class=\"opt-desc\">up to 24 kg\/tree or 6 t\/hectare<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"crop\" value=\"fruit\">\n      <span class=\"opt-title\">\ud83c\udf4e Fruit trees<\/span>\n      <span class=\"opt-desc\">up to 15 kg\/tree or 4.5 t\/hectare<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"crop\" value=\"vineyard\">\n      <span class=\"opt-title\">\ud83c\udf47 Vineyard<\/span>\n      <span class=\"opt-desc\">up to 1.2 kg\/vine<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"crop\" value=\"palm\">\n      <span class=\"opt-title\">\ud83c\udf34 Palm trees<\/span>\n      <span class=\"opt-desc\">up to 24 kg\/tree<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"crop\" value=\"cereals\">\n      <span class=\"opt-title\">\ud83c\udf3e Cereals \/ Corn<\/span>\n      <span class=\"opt-desc\">up to 3 t\/hectare<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"crop\" value=\"lawn\">\n      <span class=\"opt-title\">\ud83c\udf3f Lawn<\/span>\n      <span class=\"opt-desc\">up to 3 t\/hectare<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"crop\" value=\"ornamentals\">\n      <span class=\"opt-title\">\ud83c\udf39 Ornamentals<\/span>\n      <span class=\"opt-desc\">Pot or garden<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"crop\" value=\"seedling\">\n      <span class=\"opt-title\">\ud83c\udf31 Seed production<\/span>\n      <span class=\"opt-desc\">20% by soil weight<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"crop\" value=\"succulents\">\n      <span class=\"opt-title\">\ud83c\udf35 Cacti \/ Succulents<\/span>\n      <span class=\"opt-desc\">20% by soil weight<\/span>\n    <\/label>\n  <\/div>\n<\/div>\n<!-- STEP 2: QUANTITY (dynamic) -->\n<div class=\"step\" data-step=\"2\">\n  <h3><span class=\"step-num\">2<\/span>Quantity<\/h3>\n  <div id=\"zeQtyContainer\">\n    <p style=\"color:var(--za-muted);font-style:italic;\">First select a crop in Step 1.<\/p>\n  <\/div>\n<\/div>\n<!-- STEP 3: SOIL -->\n<div class=\"step\" data-step=\"3\">\n  <h3><span class=\"step-num\">3<\/span>Soil type<\/h3>\n  <div class=\"options cols-3\">\n    <label class=\"option\"><input type=\"radio\" name=\"soil\" value=\"light\">\n      <span class=\"opt-title\">\ud83d\udfe1 Light<\/span>\n      <span class=\"opt-desc\">Sandy, loose<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"soil\" value=\"medium\">\n      <span class=\"opt-title\">\ud83d\udfe0 Medium<\/span>\n      <span class=\"opt-desc\">Loamy, balanced<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"soil\" value=\"heavy\">\n      <span class=\"opt-title\">\ud83d\udfe4 Heavy<\/span>\n      <span class=\"opt-desc\">Clay, compacted<\/span>\n    <\/label>\n  <\/div>\n  <p class=\"sublabel\">\ud83d\udca1 <strong>Not sure?<\/strong> Take some moist soil in your palm: dissolves easily \u2192 light, forms a ball that breaks \u2192 medium, becomes clay-like and sticky \u2192 heavy.<\/p>\n<\/div>\n<!-- STEP 4: BRAND -->\n<div class=\"step\" data-step=\"4\">\n  <h3><span class=\"step-num\">4<\/span>Brand preference<\/h3>\n  <div class=\"options\">\n    <label class=\"option\"><input type=\"radio\" name=\"brand\" value=\"greek_thracian\">\n      <span class=\"opt-title\">\ud83c\uddec\ud83c\uddf7 Greek Thracian Zeolite<\/span>\n      <span class=\"opt-desc\">80% clinoptilolite, local production<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"brand\" value=\"imerys\">\n      <span class=\"opt-title\">\u2b50 IMERYS Zeolite<\/span>\n      <span class=\"opt-desc\">\u226585% clinoptilolite, established brand<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"brand\" value=\"zeocem\">\n      <span class=\"opt-title\">\u26a1 ZeoGravel\u00ae (ZEOCEM)<\/span>\n      <span class=\"opt-desc\">\u226585% clinoptilolite + activation<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"brand\" value=\"best_value\">\n      <span class=\"opt-title\">\ud83d\udca1 Recommend for me<\/span>\n      <span class=\"opt-desc\">Smart pick based on soil type<\/span>\n    <\/label>\n  <\/div>\n<\/div>\n<!-- STEP 5: STRATEGY -->\n<div class=\"step\" data-step=\"5\">\n  <h3><span class=\"step-num\">5<\/span>Application strategy<\/h3>\n  <div class=\"options cols-3\">\n    <label class=\"option\"><input type=\"radio\" name=\"strategy\" value=\"year1\">\n      <span class=\"opt-title\">\ud83d\udfe2 First phase<\/span>\n      <span class=\"opt-desc\">New: planting dose (in pit) \u00b7 Existing: 40% of total<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"strategy\" value=\"full3\">\n      <span class=\"opt-title\">\ud83d\udcc5 Full program<\/span>\n      <span class=\"opt-desc\">3 years (existing) or 4 years (new planting)<\/span>\n    <\/label>\n    <label class=\"option\"><input type=\"radio\" name=\"strategy\" value=\"maintenance\">\n      <span class=\"opt-title\">\ud83d\udd04 Maintenance<\/span>\n      <span class=\"opt-desc\">15% of total dose<\/span>\n    <\/label>\n  <\/div>\n<\/div>\n<div class=\"actions\">\n  <button type=\"button\" class=\"btn\" id=\"zeCalculate\" disabled=\"\">\ud83d\udcca Calculate dosage<\/button>\n  <button type=\"button\" class=\"btn btn-secondary\" id=\"zeReset\">\ud83d\udd04 Reset<\/button>\n  <button type=\"button\" class=\"btn btn-print\" id=\"zePrint\">\ud83d\udda8\ufe0f Print<\/button>\n<\/div>\n<!-- RESULT -->\n<div class=\"result\" id=\"zeResult\">\n  <div class=\"print-only\" style=\"text-align:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #5b7e0e;\">\n    <img decoding=\"async\" src=\"https:\/\/zeolife.gr\/wp-content\/uploads\/\/2019\/11\/logo-zeolife-hor.svg\" alt=\"Zeolife.gr\" style=\"max-width:280px;height:auto;margin:0 auto 0.5rem;display:block;\">\n    <h2 style=\"color:#425a0a;margin:0;font-size:1.2rem;\">Zeolite Agricultural Application Plan<\/h2>\n    <p style=\"margin:0.3rem 0 0;font-size:0.9rem;color:#5a6470;\">www.zeolife.gr \u00b7 \u260e +30 2311 29 55 20 \u00b7 \u2709 info@zeolife.gr<\/p>\n    <p style=\"margin:0.3rem 0 0;font-size:0.8rem;color:#5a6470;font-style:italic;\">Calculation date: <span id=\"zePrintDate\"><\/span><\/p>\n  <\/div>\n  <h3 id=\"zeResultTitle\">Your personalized dosage recommendation<\/h3>\n  <div id=\"zeResultBody\"><\/div>\n<\/div>\n<\/div>\n<script>\n(function(){\n  \/\/ ===== DATA (hectare-based, converted from decare baseline: 1 ha = 10 decares) =====\n  var cropData = {\n    olive: {\n      name: 'Olive trees',\n      icon: '\ud83e\uded2',\n      mode: 'tree',\n      phases: {\n        'new': { label: '\ud83c\udf31 New planting', kg: 2, method: 'Mix with soil in the planting pit' },\n        existing: { label: '\ud83c\udf33 Existing planting', kg: 24, method: 'From the trunk to the canopy of the tree' }\n      },\n      perHaMax: 6000,\n      season: 'Autumn (Oct-Nov) or early spring before budding',\n      depth: 'From the trunk to the canopy of the tree \u00b7 Incorporate where possible up to 20 cm deep (for new planting: mix with planting pit soil)'\n    },\n    walnut: {\n      name: 'Walnut trees',\n      icon: '\ud83e\udd5c',\n      mode: 'tree',\n      phases: {\n        'new': { label: '\ud83c\udf31 New planting', kg: 2, method: 'Mix with soil in the planting pit' },\n        existing: { label: '\ud83c\udf33 Existing planting', kg: 24, method: 'From the trunk to the canopy of the tree' }\n      },\n      perHaMax: 6000,\n      season: 'Autumn (Oct-Nov)',\n      depth: 'From the trunk to the canopy of the tree \u00b7 Incorporate where possible up to 20 cm deep (for new planting: mix with planting pit soil)'\n    },\n    fruit: {\n      name: 'Fruit trees',\n      icon: '\ud83c\udf4e',\n      mode: 'tree',\n      phases: {\n        'new': { label: '\ud83c\udf31 New planting', kg: 1, method: 'Mix with soil in the planting pit' },\n        existing: { label: '\ud83c\udf33 Existing planting', kg: 15, method: 'From the trunk to the canopy of the tree' }\n      },\n      perHaMax: 4500,\n      season: 'Autumn or before blossoming',\n      depth: 'From the trunk to the canopy of the tree \u00b7 Incorporate where possible up to 20 cm deep (for new planting: mix with planting pit soil)'\n    },\n    vineyard: {\n      name: 'Vineyard',\n      icon: '\ud83c\udf47',\n      mode: 'vine',\n      phases: {\n        'new': { label: '\ud83c\udf31 New planting', kg: 0.2, method: 'Mix with soil in the planting pit (200 g\/vine)' },\n        existing: { label: '\ud83c\udf47 Existing planting', kg: 1.2, method: 'Around the vine root, mixed with soil' }\n      },\n      perHaMax: 4500,\n      season: 'Autumn after harvest',\n      depth: 'Around the root \u00b7 Incorporate where possible up to 20 cm deep (for new planting: mix with planting pit soil)'\n    },\n    palm: {\n      name: 'Palm trees',\n      icon: '\ud83c\udf34',\n      mode: 'tree',\n      phases: {\n        'new': { label: '\ud83c\udf31 New planting', kg: 2, method: 'Mix with soil in the planting pit' },\n        existing: { label: '\ud83c\udf33 Existing planting', kg: 24, method: 'From the trunk to the canopy' }\n      },\n      perHaMax: 0,\n      season: 'Spring',\n      depth: 'From the trunk to the canopy \u00b7 Incorporate where possible up to 20 cm deep (for new planting: mix with planting pit soil)'\n    },\n    cereals: {\n      name: 'Cereals \/ Corn',\n      icon: '\ud83c\udf3e',\n      mode: 'hectare',\n      perHaMax: 3000,\n      season: 'Before sowing (autumn for winter crops, spring for summer)',\n      depth: '15-20 cm incorporation by plowing'\n    },\n    lawn: {\n      name: 'Lawn',\n      icon: '\ud83c\udf3f',\n      mode: 'lawn',\n      existingKg: 1000,\n      newKg: 3000,\n      season: 'Spring or autumn',\n      depth: 'Top-dressing or 10-15 cm incorporation if newly established'\n    },\n    ornamentals: {\n      name: 'Ornamentals',\n      icon: '\ud83c\udf39',\n      mode: 'ornamental',\n      potPercent: 10,\n      potPercentMin: 5,\n      potPercentMax: 20,\n      gardenPerPlant: 60,\n      gardenPerPlantMin: 30,\n      gardenPerPlantMax: 120,\n      season: 'Planting or soil refresh',\n      depth: 'Full mix (pot) or 5-10 cm (garden)'\n    },\n    seedling: {\n      name: 'Seed production',\n      icon: '\ud83c\udf31',\n      mode: 'soil_weight',\n      percent: 20,\n      season: 'Full mix before sowing',\n      depth: 'Homogeneous mixing with entire substrate'\n    },\n    succulents: {\n      name: 'Cacti \/ Succulents',\n      icon: '\ud83c\udf35',\n      mode: 'soil_weight',\n      percent: 20,\n      season: 'Planting or transplanting',\n      depth: 'Full mix with soil + river sand'\n    }\n  };\n  var products = {\n    greek_thracian: {\n      label: 'Greek Thracian Zeolite',\n      purity: '80%',\n      doseModifier: 1.2,\n      powder: { name: 'Greek Thracian Zeolite 0-1mm (Powder)', url: 'https:\/\/shop.zeolife.gr\/product\/greek-zeolite-zero-to-one-mm\/' },\n      fine: { name: 'Greek Thracian Zeolite 1-2.5mm (Fine gravel)', url: 'https:\/\/shop.zeolife.gr\/product\/greek-zeolite-one-to-2point5mm\/' },\n      gravel: { name: 'Greek Thracian Zeolite 2.5-5mm (Gravel)', url: 'https:\/\/shop.zeolife.gr\/product\/greek-zeolite-2point5-to-5mm\/' }\n    },\n    imerys: {\n      label: 'IMERYS Zeolite',\n      purity: '\u226585%',\n      doseModifier: 1.0,\n      powder: { name: 'IMERYS Zeolite up to 0.8mm (Powder)', url: 'https:\/\/shop.zeolife.gr\/product\/zeolite-0point8mm\/' },\n      fine: { name: 'IMERYS Zeolite 0.8-2.5mm (Fine gravel)', url: 'https:\/\/shop.zeolife.gr\/product\/zeolite-0point8-to-2point5mm\/' },\n      gravel: { name: 'IMERYS Zeolite 2.5-5mm (Gravel)', url: 'https:\/\/shop.zeolife.gr\/product\/zeolite-2point5-to-5mm\/' }\n    },\n    zeocem: {\n      label: 'ZeoGravel\u00ae Activated ZEOCEM',\n      purity: '\u226585% + activation',\n      doseModifier: 1.0,\n      powder: null,\n      fine: { name: 'ZeoGravel\u00ae Activated ZEOCEM 1-2.5mm (Fine gravel)', url: 'https:\/\/shop.zeolife.gr\/product\/zeogravel-1-2point5\/' },\n      gravel: { name: 'ZeoGravel\u00ae Activated ZEOCEM 2.5-5mm (Gravel)', url: 'https:\/\/shop.zeolife.gr\/product\/zeogravel-2point5to5\/' }\n    }\n  };\n  var soilToGran = { light: 'powder', medium: 'fine', heavy: 'gravel' };\n  var soilLabels = { light: 'light (sandy)', medium: 'medium (loamy)', heavy: 'heavy (clay)' };\n  var granLabels = { powder: 'Powder', fine: 'Fine gravel', gravel: 'Gravel' };\n  var smartByS = { light: 'imerys', medium: 'zeocem', heavy: 'greek_thracian' };\n  var smartReason = {\n    light: 'IMERYS offers the finest granularity (up to 0.8mm), ideal for light soils.',\n    medium: 'ZeoGravel\u00ae (ZEOCEM) is thermally activated \u2014 increased reactivity for medium soils.',\n    heavy: 'Greek Thracian Zeolite is locally sourced (low carbon footprint) and ideal for heavy soils.'\n  };\n  \/\/ ===== ELEMENTS =====\n  var calc = document.querySelector('.zagri-en');\n  var steps = calc.querySelectorAll('.step');\n  var progressBar = document.getElementById('zeProgress');\n  var calcBtn = document.getElementById('zeCalculate');\n  var resetBtn = document.getElementById('zeReset');\n  var printBtn = document.getElementById('zePrint');\n  var resultBox = document.getElementById('zeResult');\n  var resultBody = document.getElementById('zeResultBody');\n  var qtyContainer = document.getElementById('zeQtyContainer');\n  \/\/ ===== HELPERS =====\n  function getChecked(name) {\n    var el = calc.querySelector('input[name=\"' + name + '\"]:checked');\n    return el ? el.value : null;\n  }\n  function getVal(id) {\n    var el = document.getElementById(id);\n    return el ? el.value : null;\n  }\n  function fmtKg(n) {\n    if (n >= 1000) return (n \/ 1000).toFixed(1).replace('.0','') + ' tonnes (' + Math.round(n).toLocaleString('en-US') + ' kg)';\n    return Math.round(n).toLocaleString('en-US') + ' kg';\n  }\n  function fmtNum(n) { return Math.round(n).toLocaleString('en-US'); }\n  \/\/ ===== STEP 2 RENDER =====\n  function renderQtyStep(crop) {\n    if (!crop) {\n      qtyContainer.innerHTML = '<p style=\"color:var(--za-muted);font-style:italic;\">First select a crop in Step 1.<\/p>';\n      return;\n    }\n    var data = cropData[crop];\n    var html = '';\n    if (data.mode === 'tree' || data.mode === 'vine') {\n      var unit = data.mode === 'tree' ? 'trees' : 'vines';\n      var unitSingular = data.mode === 'tree' ? 'tree' : 'vine';\n      var hasHa = data.perHaMax > 0;\n      if (hasHa) {\n        html += '<div class=\"qty-row\">';\n        html += '<div><label class=\"qty-label\">How many ' + unit + '?<\/label>';\n        html += '<input type=\"number\" id=\"zeQty\" class=\"qty-input\" min=\"1\" placeholder=\"e.g. 100\"><\/div>';\n        html += '<div><label class=\"qty-label\">Or how many hectares? (existing planting only)<\/label>';\n        html += '<input type=\"number\" id=\"zeQtyHa\" class=\"qty-input\" min=\"0\" step=\"0.1\" placeholder=\"e.g. 0.5\"><\/div>';\n        html += '<\/div>';\n      } else {\n        html += '<label class=\"qty-label\">How many ' + unit + '?<\/label>';\n        html += '<input type=\"number\" id=\"zeQty\" class=\"qty-input\" min=\"1\" placeholder=\"e.g. 20\">';\n      }\n      html += '<div class=\"sub-group\"><label class=\"qty-label\">Planting phase<\/label>';\n      html += '<div class=\"options\">';\n      var phases = data.phases;\n      for (var key in phases) {\n        html += '<label class=\"option\"><input type=\"radio\" name=\"phaseGroup\" value=\"' + key + '\">';\n        html += '<span class=\"opt-title\">' + phases[key].label + '<\/span>';\n        html += '<span class=\"opt-desc\">' + phases[key].kg + ' kg\/' + unitSingular + ' \u00b7 ' + phases[key].method + '<\/span>';\n        html += '<\/label>';\n      }\n      html += '<\/div><\/div>';\n    } else if (data.mode === 'hectare') {\n      html += '<label class=\"qty-label\">How many hectares?<\/label>';\n      html += '<input type=\"number\" id=\"zeQty\" class=\"qty-input\" min=\"0\" step=\"0.1\" placeholder=\"e.g. 5\">';\n      html += '<p class=\"sublabel\">Dose: up to ' + (data.perHaMax\/1000) + ' t\/ha (' + data.perHaMax + ' kg\/ha)<\/p>';\n    } else if (data.mode === 'lawn') {\n      html += '<div class=\"qty-row\">';\n      html += '<div><label class=\"qty-label\">How many hectares?<\/label>';\n      html += '<input type=\"number\" id=\"zeQty\" class=\"qty-input\" min=\"0\" step=\"0.1\" placeholder=\"e.g. 0.2\"><\/div>';\n      html += '<div><label class=\"qty-label\">Lawn type<\/label>';\n      html += '<div class=\"options\">';\n      html += '<label class=\"option\"><input type=\"radio\" name=\"lawnType\" value=\"existing\">';\n      html += '<span class=\"opt-title\">Existing<\/span><span class=\"opt-desc\">1 t\/ha<\/span><\/label>';\n      html += '<label class=\"option\"><input type=\"radio\" name=\"lawnType\" value=\"new\">';\n      html += '<span class=\"opt-title\">New<\/span><span class=\"opt-desc\">3 t\/ha<\/span><\/label>';\n      html += '<\/div><\/div><\/div>';\n    } else if (data.mode === 'ornamental') {\n      html += '<label class=\"qty-label\">Application type<\/label>';\n      html += '<div class=\"options\">';\n      html += '<label class=\"option\"><input type=\"radio\" name=\"ornType\" value=\"pot\">';\n      html += '<span class=\"opt-title\">\ud83e\udeb4 Pot<\/span><span class=\"opt-desc\">% by soil weight<\/span><\/label>';\n      html += '<label class=\"option\"><input type=\"radio\" name=\"ornType\" value=\"garden\">';\n      html += '<span class=\"opt-title\">\ud83c\udf3a Garden<\/span><span class=\"opt-desc\">Grams per plant<\/span><\/label>';\n      html += '<\/div>';\n      html += '<div id=\"zeOrnDetail\" class=\"sub-group hidden\"><\/div>';\n    } else if (data.mode === 'soil_weight') {\n      html += '<label class=\"qty-label\">How many kg of soil will you mix?<\/label>';\n      html += '<input type=\"number\" id=\"zeQty\" class=\"qty-input\" min=\"0\" step=\"1\" placeholder=\"e.g. 50\">';\n      html += '<p class=\"sublabel\">Dose: ' + data.percent + '% by weight (full mix)<\/p>';\n    }\n    qtyContainer.innerHTML = html;\n    \/\/ attach listeners for new inputs\n    var newInputs = qtyContainer.querySelectorAll('input');\n    for (var i = 0; i < newInputs.length; i++) {\n      newInputs[i].addEventListener('input', updateProgress);\n      newInputs[i].addEventListener('change', function(e) {\n        if (e.target.name === 'ornType') renderOrnDetail(e.target.value);\n        if (e.target.name === 'phaseGroup') handlePhaseChange(e.target.value);\n        updateProgress();\n      });\n    }\n  }\n  function handlePhaseChange(phaseValue) {\n    var haInput = document.getElementById('zeQtyHa');\n    if (!haInput) return;\n    var wrapper = haInput.parentElement;\n    if (phaseValue === 'new') {\n      haInput.disabled = true;\n      haInput.value = '';\n      haInput.placeholder = 'Not applicable for new planting';\n      if (wrapper) wrapper.style.opacity = '0.4';\n    } else {\n      haInput.disabled = false;\n      haInput.placeholder = 'e.g. 0.5';\n      if (wrapper) wrapper.style.opacity = '1';\n    }\n  }\n  function renderOrnDetail(ornType) {\n    var detail = document.getElementById('zeOrnDetail');\n    if (!detail) return;\n    var html = '';\n    if (ornType === 'pot') {\n      html += '<label class=\"qty-label\">How many kg of pot soil?<\/label>';\n      html += '<input type=\"number\" id=\"zeQty\" class=\"qty-input\" min=\"0\" step=\"1\" placeholder=\"e.g. 10\">';\n      html += '<p class=\"sublabel\">Default 10% by weight (range 5-20%)<\/p>';\n    } else if (ornType === 'garden') {\n      html += '<label class=\"qty-label\">How many plants?<\/label>';\n      html += '<input type=\"number\" id=\"zeQty\" class=\"qty-input\" min=\"1\" placeholder=\"e.g. 50\">';\n      html += '<p class=\"sublabel\">Default 60 g\/plant (range 30-120 g)<\/p>';\n    }\n    detail.innerHTML = html;\n    detail.classList.remove('hidden');\n    var newInput = detail.querySelector('input');\n    if (newInput) newInput.addEventListener('input', updateProgress);\n  }\n  \/\/ ===== HELPERS =====\n  function isPositive(v) {\n    if (!v) return false;\n    if (Number(v) <= 0) return false;\n    return true;\n  }\n  \/\/ ===== STEP 2 VALIDATION =====\n  function isStep2Valid(crop) {\n    if (!crop) return false;\n    var data = cropData[crop];\n    if (data.mode === 'tree' || data.mode === 'vine') {\n      var qty = getVal('zeQty');\n      var ha = getVal('zeQtyHa');\n      var phaseVal = getChecked('phaseGroup');\n      if (!phaseVal) return false;\n      \/\/ For new planting, require per-tree count (hectare not applicable)\n      if (phaseVal === 'new') {\n        return isPositive(qty);\n      }\n      \/\/ For existing planting, either qty or hectare works\n      if (isPositive(qty)) return true;\n      if (isPositive(ha)) return true;\n      return false;\n    }\n    if (data.mode === 'lawn') {\n      var qty2 = getVal('zeQty');\n      var lawnType = getChecked('lawnType');\n      if (!isPositive(qty2)) return false;\n      if (!lawnType) return false;\n      return true;\n    }\n    if (data.mode === 'ornamental') {\n      var ornType = getChecked('ornType');\n      var qty3 = getVal('zeQty');\n      if (!ornType) return false;\n      if (!isPositive(qty3)) return false;\n      return true;\n    }\n    var qty4 = getVal('zeQty');\n    return isPositive(qty4);\n  }\n  \/\/ ===== PROGRESS =====\n  function updateProgress() {\n    var crop = getChecked('crop');\n    var soil = getChecked('soil');\n    var brand = getChecked('brand');\n    var strategy = getChecked('strategy');\n    var step2OK = isStep2Valid(crop);\n    var filled = 0;\n    if (crop) filled++;\n    if (step2OK) filled++;\n    if (soil) filled++;\n    if (brand) filled++;\n    if (strategy) filled++;\n    progressBar.style.width = (filled \/ 5 * 100) + '%';\n    steps.forEach(function(s, i) {\n      var isActive = (i === filled) || (i === filled - 1);\n      s.classList.toggle('active', isActive);\n    });\n    calcBtn.disabled = filled < 5;\n  }\n  \/\/ ===== CROP CHANGE LISTENER =====\n  calc.querySelectorAll('input[name=\"crop\"]').forEach(function(r) {\n    r.addEventListener('change', function() {\n      renderQtyStep(r.value);\n      updateProgress();\n    });\n  });\n  \/\/ ===== ALL RADIO LISTENERS =====\n  var excludedNames = ['crop', 'phaseGroup', 'lawnType', 'ornType'];\n  calc.querySelectorAll('input[type=\"radio\"]').forEach(function(r) {\n    if (excludedNames.indexOf(r.name) === -1) {\n      r.addEventListener('change', updateProgress);\n    }\n  });\n  \/\/ ===== RESET =====\n  resetBtn.addEventListener('click', function() {\n    calc.querySelectorAll('input[type=\"radio\"]').forEach(function(r) { r.checked = false; });\n    calc.querySelectorAll('input[type=\"number\"]').forEach(function(r) { r.value = ''; });\n    qtyContainer.innerHTML = '<p style=\"color:var(--za-muted);font-style:italic;\">First select a crop in Step 1.<\/p>';\n    resultBox.classList.remove('show');\n    updateProgress();\n    steps[0].classList.add('active');\n    steps[0].scrollIntoView({ behavior: 'smooth', block: 'start' });\n  });\n  \/\/ ===== PRINT =====\n  printBtn.addEventListener('click', function() {\n    if (!resultBox.classList.contains('show')) {\n      alert('Please calculate dosage first.');\n      return;\n    }\n    var dateEl = document.getElementById('zePrintDate');\n    if (dateEl) {\n      var now = new Date();\n      dateEl.textContent = now.toLocaleDateString('en-US', { day: '2-digit', month: 'long', year: 'numeric' });\n    }\n    window.print();\n  });\n  \/\/ ===== CALCULATE BASE DOSE =====\n  function calcBaseDose(crop, phaseGroup, qty, haQty, lawnType, ornType) {\n    var data = cropData[crop];\n    if (data.mode === 'tree' || data.mode === 'vine') {\n      var unitLabel = data.mode === 'tree' ? 'trees' : 'vines';\n      var phaseLabel = '';\n      if (phaseGroup) {\n        if (data.phases[phaseGroup]) {\n          phaseLabel = data.phases[phaseGroup].label.replace(\/^[^\\s]+\\s\/, '');\n        }\n      }\n      \/\/ Prefer per-tree if provided, else use hectare (only for existing phase)\n      if (isPositive(qty)) {\n        if (phaseGroup) {\n          var kgPerUnit = data.phases[phaseGroup].kg;\n          return { kg: Number(qty) * kgPerUnit, breakdown: fmtNum(qty) + ' ' + unitLabel + ' \u00d7 ' + kgPerUnit + ' kg (' + phaseLabel + ') = ' + fmtKg(Number(qty) * kgPerUnit) };\n        }\n      }\n      if (isPositive(haQty)) {\n        if (data.perHaMax > 0) {\n          \/\/ Hectare logic applies to existing phase only\n          return { kg: Number(haQty) * data.perHaMax, breakdown: fmtNum(haQty) + ' ha \u00d7 ' + (data.perHaMax\/1000) + ' t (existing planting) = ' + fmtKg(Number(haQty) * data.perHaMax) };\n        }\n      }\n    }\n    if (data.mode === 'hectare') {\n      return { kg: Number(qty) * data.perHaMax, breakdown: fmtNum(qty) + ' ha \u00d7 ' + (data.perHaMax\/1000) + ' t = ' + fmtKg(Number(qty) * data.perHaMax) };\n    }\n    if (data.mode === 'lawn') {\n      var kgPerHa = lawnType === 'new' ? data.newKg : data.existingKg;\n      return { kg: Number(qty) * kgPerHa, breakdown: fmtNum(qty) + ' ha \u00d7 ' + (kgPerHa\/1000) + ' t = ' + fmtKg(Number(qty) * kgPerHa) };\n    }\n    if (data.mode === 'ornamental') {\n      if (ornType === 'pot') {\n        var kg = Number(qty) * (data.potPercent \/ 100);\n        return { kg: kg, breakdown: fmtNum(qty) + ' kg soil \u00d7 ' + data.potPercent + '% = ' + kg.toFixed(2) + ' kg zeolite' };\n      }\n      var g = Number(qty) * data.gardenPerPlant;\n      return { kg: g \/ 1000, breakdown: fmtNum(qty) + ' plants \u00d7 ' + data.gardenPerPlant + ' g = ' + g + ' g (' + (g\/1000).toFixed(2) + ' kg)' };\n    }\n    if (data.mode === 'soil_weight') {\n      var kgS = Number(qty) * (data.percent \/ 100);\n      return { kg: kgS, breakdown: fmtNum(qty) + ' kg soil \u00d7 ' + data.percent + '% = ' + kgS.toFixed(2) + ' kg zeolite' };\n    }\n    return { kg: 0, breakdown: '' };\n  }\n  \/\/ ===== DISCOUNT =====\n  function getDiscount(kg) {\n    var sacks = Math.ceil(kg \/ 25);\n    if (sacks >= 40) return { sacks: sacks, percent: 40, label: '40+ bags', savings: '\ud83c\udf81 40% discount' };\n    if (sacks >= 30) return { sacks: sacks, percent: 30, label: '30-39 bags', savings: '\ud83c\udf81 30% discount' };\n    if (sacks >= 20) return { sacks: sacks, percent: 20, label: '20-29 bags', savings: '\ud83c\udf81 20% discount' };\n    if (sacks >= 10) return { sacks: sacks, percent: 10, label: '10-19 bags', savings: '\ud83c\udf81 10% discount' };\n    return { sacks: sacks, percent: 0, label: '< 10 bags', savings: '' };\n  }\n  \/\/ ===== STRATEGY =====\n  function applyStrategy(baseDose, matureDose, strategy, phase, isTreeVine) {\n    \/\/ For tree\/vine new planting \u2192 4-year program\n    if (isTreeVine) {\n      if (phase === 'new') {\n        if (strategy === 'year1') {\n          return { display: baseDose, year1: baseDose, year2: 0, year3: 0, year4: 0, label: 'New planting only (planting phase)', is4Year: false };\n        }\n        if (strategy === 'full3') {\n          var y1 = baseDose;\n          var y2 = matureDose * 0.4;\n          var remaining = matureDose - y1 - y2;\n          if (remaining < 0) remaining = 0;\n          var y3 = remaining \/ 2;\n          var y4 = remaining \/ 2;\n          return { display: y1 + y2 + y3 + y4, year1: y1, year2: y2, year3: y3, year4: y4, label: 'Full 4-year program (new planting)', is4Year: true };\n        }\n        if (strategy === 'maintenance') {\n          var maintNew = matureDose * 0.15;\n          return { display: maintNew, year1: maintNew, year2: 0, year3: 0, year4: 0, label: 'Maintenance (15% of mature dose)', is4Year: false };\n        }\n      }\n    }\n    \/\/ Default: 3-year program (existing planting &#038; non-tree crops)\n    if (strategy === 'year1') {\n      return { display: baseDose * 0.4, year1: baseDose * 0.4, year2: 0, year3: 0, year4: 0, label: 'First year (40% of total dose)', is4Year: false };\n    }\n    if (strategy === 'full3') {\n      return { display: baseDose, year1: baseDose * 0.4, year2: baseDose * 0.3, year3: baseDose * 0.3, year4: 0, label: 'Full 3-year program', is4Year: false };\n    }\n    if (strategy === 'maintenance') {\n      return { display: baseDose * 0.15, year1: baseDose * 0.15, year2: 0, year3: 0, year4: 0, label: 'Maintenance (15% of first application dose)', is4Year: false };\n    }\n    return { display: baseDose, year1: baseDose, year2: 0, year3: 0, year4: 0, is4Year: false };\n  }\n  \/\/ ===== MAIN CALCULATION =====\n  function calculate() {\n    var crop = getChecked('crop');\n    var soil = getChecked('soil');\n    var brand = getChecked('brand');\n    var strategy = getChecked('strategy');\n    var phaseGroup = getChecked('phaseGroup');\n    var lawnType = getChecked('lawnType');\n    var ornType = getChecked('ornType');\n    var qty = getVal('zeQty');\n    var haQty = getVal('zeQtyHa');\n    var data = cropData[crop];\n    \/\/ 1. Base dose\n    var base = calcBaseDose(crop, phaseGroup, qty, haQty, lawnType, ornType);\n    var baseKg = base.kg;\n    \/\/ 1b. Compute mature dose (for 4-year program of new tree\/vine planting)\n    var isTreeVine = (data.mode === 'tree' || data.mode === 'vine');\n    var matureKg = baseKg;\n    if (isTreeVine) {\n      if (phaseGroup === 'new') {\n        \/\/ Mature dose = existing.kg \u00d7 qty (since hectare is disabled for new)\n        if (isPositive(qty)) {\n          matureKg = Number(qty) * data.phases.existing.kg;\n        }\n      }\n    }\n    \/\/ 2. Brand selection (smart logic for best_value)\n    var brandKey = brand;\n    var smartBrandNote = '';\n    if (brand === 'best_value') {\n      brandKey = smartByS[soil];\n      smartBrandNote = '\ud83d\udca1 <strong>Smart pick for ' + soilLabels[soil] + ' soil:<\/strong> ' + smartReason[soil];\n    }\n    var selectedBrand = products[brandKey];\n    \/\/ 3. Apply brand modifier\n    var modifier = selectedBrand.doseModifier;\n    var finalKg = baseKg * modifier;\n    var finalMatureKg = matureKg * modifier;\n    \/\/ 4. Map to granularity\n    var gran = soilToGran[soil];\n    var product = selectedBrand[gran];\n    var fallbackNote = '';\n    if (!product) {\n      \/\/ ZEOCEM doesn't have powder - fallback\n      fallbackNote = '\u26a0\ufe0f ' + selectedBrand.label + ' is not available in powder form. We recommend instead:';\n      product = products.imerys.powder;\n      brandKey = 'imerys';\n      modifier = 1.0;\n      finalKg = baseKg * modifier;\n      finalMatureKg = matureKg * modifier;\n    }\n    \/\/ 5. Strategy\n    var plan = applyStrategy(finalKg, finalMatureKg, strategy, phaseGroup, isTreeVine);\n    \/\/ 6. Discount\n    var discount = getDiscount(plan.display);\n    \/\/ 7. Wholesale check\n    var isWholesale = plan.display >= 23000;\n    \/\/ 8. Render HTML\n    var html = '';\n    if (smartBrandNote) {\n      html += '<div class=\"info-box\"><strong>\ud83e\udd16 Smart Recommendation<\/strong>' + smartBrandNote + '<\/div>';\n    }\n    if (fallbackNote) {\n      html += '<div class=\"warning\"><strong>' + fallbackNote + '<\/strong><\/div>';\n    }\n    \/\/ PRODUCT CARD\n    html += '<h4>\ud83c\udfaf Recommended product<\/h4>';\n    html += '<div class=\"product-card\">';\n    html += '<span class=\"product-name\">' + product.name + '<\/span>';\n    html += '<span class=\"product-reason\">Purity: <strong>' + selectedBrand.purity + ' clinoptilolite<\/strong>';\n    if (modifier > 1) {\n      html += ' \u00b7 Dose adjusted +20% due to lower purity';\n    }\n    html += '<br>Granularity: <strong>' + granLabels[gran] + '<\/strong> \u00b7 Ideal for <strong>' + soilLabels[soil] + '<\/strong> soil.';\n    html += '<br>Packaging: <strong>25 kg bags<\/strong><\/span>';\n    html += '<\/div>';\n    \/\/ DOSE TABLE\n    html += '<h4>\ud83d\udcca Dosage calculation<\/h4>';\n    html += '<table class=\"dose-table\">';\n    html += '<tr><th style=\"width:40%;\">Crop<\/th><td>' + data.icon + ' ' + data.name + '<\/td><\/tr>';\n    html += '<tr><th>Base calculation<\/th><td>' + base.breakdown + '<\/td><\/tr>';\n    if (modifier > 1) {\n      html += '<tr><th>Brand modifier (+20%)<\/th><td>' + fmtKg(baseKg) + ' \u00d7 1.2 = <strong>' + fmtKg(finalKg) + '<\/strong><\/td><\/tr>';\n    }\n    html += '<tr><th>Strategy<\/th><td>' + plan.label + '<\/td><\/tr>';\n    html += '<tr><th>Order now<\/th><td><strong style=\"color:var(--za-brand-dark);font-size:1.1rem;\">' + fmtKg(plan.display) + '<\/strong><\/td><\/tr>';\n    html += '<tr><th>Bags (25 kg)<\/th><td><strong>' + discount.sacks + ' bags<\/strong><\/td><\/tr>';\n    html += '<\/table>';\n    \/\/ DISCOUNT BANNER\n    if (discount.percent > 0) {\n      html += '<div class=\"discount-banner\">';\n      html += '<strong>' + discount.savings + '<\/strong><br>';\n      html += 'With ' + discount.sacks + ' bags (' + discount.label + ') you get auto-discount <strong>' + discount.percent + '%<\/strong> at checkout!';\n      html += '<\/div>';\n    }\n    \/\/ TIMELINE (3-year or 4-year)\n    if (strategy === 'full3') {\n      if (plan.is4Year) {\n        \/\/ 4-YEAR TIMELINE (new planting)\n        html += '<h4>\ud83d\udcc5 4-Year Program (New planting)<\/h4>';\n        html += '<p style=\"font-size:0.92rem;color:var(--za-muted);margin:0 0 0.5rem;\">New planting starts with the planting dose and ramps up to the full mature dose over 4 years.<\/p>';\n        html += '<div class=\"timeline\" style=\"grid-template-columns:repeat(4,1fr);\">';\n        html += '<div class=\"year-card now\"><div class=\"year-label\">\ud83c\udf31 Year 1 (planting)<\/div>';\n        html += '<div class=\"year-kg\">' + fmtKg(plan.year1) + '<\/div>';\n        html += '<div class=\"year-sacks\">' + Math.ceil(plan.year1 \/ 25) + ' bags<\/div>';\n        html += '<div class=\"year-percent\">Planting dose<\/div><\/div>';\n        html += '<div class=\"year-card\"><div class=\"year-label\">\ud83d\udfe1 Year 2<\/div>';\n        html += '<div class=\"year-kg\">' + fmtKg(plan.year2) + '<\/div>';\n        html += '<div class=\"year-sacks\">' + Math.ceil(plan.year2 \/ 25) + ' bags<\/div>';\n        html += '<div class=\"year-percent\">40% of total<\/div><\/div>';\n        html += '<div class=\"year-card\"><div class=\"year-label\">\ud83d\udfe1 Year 3<\/div>';\n        html += '<div class=\"year-kg\">' + fmtKg(plan.year3) + '<\/div>';\n        html += '<div class=\"year-sacks\">' + Math.ceil(plan.year3 \/ 25) + ' bags<\/div>';\n        html += '<div class=\"year-percent\">Remainder \/ 2<\/div><\/div>';\n        html += '<div class=\"year-card\"><div class=\"year-label\">\ud83d\udfe1 Year 4<\/div>';\n        html += '<div class=\"year-kg\">' + fmtKg(plan.year4) + '<\/div>';\n        html += '<div class=\"year-sacks\">' + Math.ceil(plan.year4 \/ 25) + ' bags<\/div>';\n        html += '<div class=\"year-percent\">Remainder \/ 2<\/div><\/div>';\n        html += '<\/div>';\n      } else {\n        \/\/ 3-YEAR TIMELINE\n        html += '<h4>\ud83d\udcc5 3-Year Program<\/h4>';\n        html += '<div class=\"timeline\">';\n        html += '<div class=\"year-card now\"><div class=\"year-label\">\ud83d\udfe2 Year 1 (now)<\/div>';\n        html += '<div class=\"year-kg\">' + fmtKg(plan.year1) + '<\/div>';\n        html += '<div class=\"year-sacks\">' + Math.ceil(plan.year1 \/ 25) + ' bags<\/div>';\n        html += '<div class=\"year-percent\">40% of dose<\/div><\/div>';\n        html += '<div class=\"year-card\"><div class=\"year-label\">\ud83d\udfe1 Year 2<\/div>';\n        html += '<div class=\"year-kg\">' + fmtKg(plan.year2) + '<\/div>';\n        html += '<div class=\"year-sacks\">' + Math.ceil(plan.year2 \/ 25) + ' bags<\/div>';\n        html += '<div class=\"year-percent\">30% of dose<\/div><\/div>';\n        html += '<div class=\"year-card\"><div class=\"year-label\">\ud83d\udfe1 Year 3<\/div>';\n        html += '<div class=\"year-kg\">' + fmtKg(plan.year3) + '<\/div>';\n        html += '<div class=\"year-sacks\">' + Math.ceil(plan.year3 \/ 25) + ' bags<\/div>';\n        html += '<div class=\"year-percent\">30% of dose<\/div><\/div>';\n        html += '<\/div>';\n      }\n    }\n    \/\/ SEASONALITY + DEPTH\n    html += '<h4>\u23f0 Application<\/h4>';\n    html += '<div class=\"info-box\">';\n    html += '<strong>\ud83d\udcc5 Best season:<\/strong>' + data.season + '<br>';\n    html += '<strong>\ud83d\udccf Depth \/ method:<\/strong>' + data.depth;\n    html += '<\/div>';\n    \/\/ WHOLESALE CTA\n    if (isWholesale) {\n      html += '<div class=\"wholesale-cta\">';\n      html += '<strong>\ud83d\ude9a Large quantity (>23 tonnes)<\/strong>';\n      html += 'For wholesale pricing, contact us:';\n      html += '<div class=\"wholesale-btns\">';\n      html += '<a href=\"tel:+302311295520\">\ud83d\udcde Call +30 2311 29 55 20<\/a>';\n      html += '<a href=\"https:\/\/wa.me\/302311295520?text=' + encodeURIComponent('Hello! I am interested in wholesale pricing for ' + fmtKg(plan.display) + ' of zeolite for ' + data.name + '.') + '\" target=\"_blank\">\ud83d\udcac WhatsApp<\/a>';\n      html += '<a href=\"https:\/\/zeolife.gr\/en\/contact\/\">\u2709\ufe0f Contact form<\/a>';\n      html += '<\/div><\/div>';\n    }\n    \/\/ UNIVERSAL TIPS\n    html += '<h4>\ud83d\udca1 Application tips<\/h4>';\n    html += '<ul style=\"line-height:1.8;\">';\n    html += '<li>Apply <strong>before rainfall<\/strong> or water thoroughly after application.<\/li>';\n    html += '<li>For <strong>organic farming<\/strong>, natural zeolite is 100% compatible.<\/li>';\n    html += '<li>Zeolite acts as a <strong>slow-release reservoir<\/strong>: retains fertilizers, water and nutrients for many years.<\/li>';\n    html += '<li>Combine with <strong>regular fertilization<\/strong> \u2014 zeolite does not replace fertilizers, it makes them more efficient.<\/li>';\n    html += '<\/ul>';\n    \/\/ CTAs\n    html += '<div class=\"cta-row\">';\n    html += '<a href=\"' + product.url + '\" class=\"btn\">\ud83d\uded2 Order now<\/a>';\n    html += '<a href=\"https:\/\/zeolife.gr\/en\/zeolite-agriculture\/\" class=\"btn btn-secondary\">\ud83d\udcd6 Agriculture info<\/a>';\n    html += '<\/div>';\n    \/\/ DISCLAIMER\n    html += '<p class=\"disclaimer\"><strong>Note:<\/strong> Dosages are indicative and based on official supplier guidelines for zeolite with \u226580% clinoptilolite content. For special cases (organic certification, high salinity, unusual soil chemistry), consult an agronomist. Zeolife.gr technical support: +30 2311 29 55 20.<\/p>';\n    resultBody.innerHTML = html;\n    resultBox.classList.add('show');\n    resultBox.scrollIntoView({ behavior: 'smooth', block: 'start' });\n  }\n  calcBtn.addEventListener('click', calculate);\n  updateProgress();\n})();\n<\/script>\n\n","protected":false},"excerpt":{"rendered":"<p>\ud83c\udf3e Zeolite Agricultural Dosage Calculator Give us 5 inputs and we&#8217;ll recommend the right product from our 3 ranges (Greek Thracian, IMERYS, ZeoGravel\u00ae ZEOCEM) with precise dosage, multi-year program and automatic discount calculation. 10 crops 3 qualities \u00d7 9 products New plantings Full 3-year programs Discounts up to 40% 1Select crop \ud83e\uded2 Olive trees up&#8230;<\/p>\n","protected":false},"author":7,"featured_media":13886,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"content-type":"","_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"class_list":["post-17926","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.6 (Yoast SEO v27.7) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Zeolite Agricultural Dosage Calculator<\/title>\n<meta name=\"description\" content=\"Interactive dosage calculator for agricultural zeolite use: olive trees, vineyard, walnut, fruit trees, cereals, lawn, ornamentals.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Zeolite Agricultural Dosage Calculator\" \/>\n<meta property=\"og:description\" content=\"Interactive dosage calculator for agricultural zeolite use: olive trees, vineyard, walnut, fruit trees, cereals, lawn, ornamentals.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/\" \/>\n<meta property=\"og:site_name\" content=\"Greek Zeolite, Zeolite products and industrial minerals | Zeolife.gr\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/zeolifegr\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-09T16:42:37+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/zeolife.gr\/wp-content\/uploads\/2014\/11\/amp-header-buy-zeolite-zeolifegr-600x413px.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"600\" \/>\n\t<meta property=\"og:image:height\" content=\"413\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@ZeolifeGr\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/zeolite-agriculture-dosage-calculator\\\/\",\"url\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/zeolite-agriculture-dosage-calculator\\\/\",\"name\":\"Zeolite Agricultural Dosage Calculator\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/zeolite-agriculture-dosage-calculator\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/zeolite-agriculture-dosage-calculator\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/zeolife.gr\\\/wp-content\\\/uploads\\\/2014\\\/11\\\/amp-header-buy-zeolite-zeolifegr-600x413px.jpg\",\"datePublished\":\"2026-06-09T15:18:51+00:00\",\"dateModified\":\"2026-06-09T16:42:37+00:00\",\"description\":\"Interactive dosage calculator for agricultural zeolite use: olive trees, vineyard, walnut, fruit trees, cereals, lawn, ornamentals.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/zeolite-agriculture-dosage-calculator\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/zeolife.gr\\\/en\\\/zeolite-agriculture-dosage-calculator\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/zeolite-agriculture-dosage-calculator\\\/#primaryimage\",\"url\":\"https:\\\/\\\/zeolife.gr\\\/wp-content\\\/uploads\\\/2014\\\/11\\\/amp-header-buy-zeolite-zeolifegr-600x413px.jpg\",\"contentUrl\":\"https:\\\/\\\/zeolife.gr\\\/wp-content\\\/uploads\\\/2014\\\/11\\\/amp-header-buy-zeolite-zeolifegr-600x413px.jpg\",\"width\":600,\"height\":413,\"caption\":\"\u0391\u03b3\u03bf\u03c1\u03ac \u03b6\u03b5\u03cc\u03bb\u03b9\u03b8\u03bf\u03c5 \u03ba\u03b1\u03b9 \u03c3\u03c5\u03bc\u03b2\u03bf\u03c5\u03bb\u03b5\u03c5\u03c4\u03b9\u03ba\u03ae \u03b1\u03c0\u03cc \u03c4\u03b7 Zeolife.gr\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/zeolite-agriculture-dosage-calculator\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Zeolite Agricultural Dosage Calculator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/\",\"name\":\"\u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03cc\u03c2 \u0396\u03b5\u03cc\u03bb\u03b9\u03b8\u03bf\u03c2 & \u0392\u03b9\u03bf\u03bc\u03b7\u03c7\u03b1\u03bd\u03b9\u03ba\u03ac \u039f\u03c1\u03c5\u03ba\u03c4\u03ac \u2013 \u0395\u03c6\u03b1\u03c1\u03bc\u03bf\u03b3\u03ad\u03c2 & \u03a0\u03bb\u03b7\u03c1\u03bf\u03c6\u03bf\u03c1\u03af\u03b5\u03c2 | Zeolife.gr\",\"description\":\"Applications and purchase of Greek zeolite, zeolite products and industrial minerals | Zeolife.gr\",\"publisher\":{\"@id\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/#organization\"},\"alternateName\":\"\u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03cc\u03c2 \u0396\u03b5\u03cc\u03bb\u03b9\u03b8\u03bf\u03c2: \u0399\u03b4\u03b9\u03cc\u03c4\u03b7\u03c4\u03b5\u03c2, \u03a7\u03c1\u03ae\u03c3\u03b5\u03b9\u03c2 & \u03a0\u03c1\u03bf\u03ca\u03cc\u03bd\u03c4\u03b1 | Zeolife.gr\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/#organization\",\"name\":\"Zeolite | Diatomite | Zeolife.gr\",\"alternateName\":\"Zeolife.gr\",\"url\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/zeolife.gr\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/icon-color-square.png\",\"contentUrl\":\"https:\\\/\\\/zeolife.gr\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/icon-color-square.png\",\"width\":1200,\"height\":1200,\"caption\":\"Zeolite | Diatomite | Zeolife.gr\"},\"image\":{\"@id\":\"https:\\\/\\\/zeolife.gr\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/zeolifegr\",\"https:\\\/\\\/x.com\\\/ZeolifeGr\",\"https:\\\/\\\/www.instagram.com\\\/zeolife.gr\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/zeolifegr\",\"https:\\\/\\\/www.pinterest.com\\\/zeolifegr\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCUR1v-vb6vutCU3uvnu98WQ\",\"https:\\\/\\\/zeolifegr.tumblr.com\\\/\",\"https:\\\/\\\/www.tiktok.com\\\/@zeolifegr\"],\"description\":\"\u03a6\u03c5\u03c3\u03b9\u03ba\u03cc\u03c2 \u03b5\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03cc\u03c2 \u03ba\u03bb\u03b9\u03bd\u03bf\u03c0\u03c4\u03b9\u03bb\u03cc\u03bb\u03b9\u03b8\u03bf\u03c2 \u03b3\u03b9\u03b1 \u03b3\u03b5\u03c9\u03c1\u03b3\u03af\u03b1, \u03c5\u03b3\u03b5\u03af\u03b1 \u03ba\u03b1\u03b9 \u03b2\u03b9\u03bf\u03bc\u03b7\u03c7\u03b1\u03bd\u03af\u03b1. \u0391\u03c0\u03cc \u03c4\u03bf 2010.\",\"email\":\"info@zeolife.gr\",\"telephone\":\"2311295520\",\"foundingDate\":\"2010-01-01\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":\"1\",\"maxValue\":\"10\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Zeolite Agricultural Dosage Calculator","description":"Interactive dosage calculator for agricultural zeolite use: olive trees, vineyard, walnut, fruit trees, cereals, lawn, ornamentals.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/","og_locale":"en_US","og_type":"article","og_title":"Zeolite Agricultural Dosage Calculator","og_description":"Interactive dosage calculator for agricultural zeolite use: olive trees, vineyard, walnut, fruit trees, cereals, lawn, ornamentals.","og_url":"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/","og_site_name":"Greek Zeolite, Zeolite products and industrial minerals | Zeolife.gr","article_publisher":"https:\/\/www.facebook.com\/zeolifegr","article_modified_time":"2026-06-09T16:42:37+00:00","og_image":[{"width":600,"height":413,"url":"https:\/\/zeolife.gr\/wp-content\/uploads\/2014\/11\/amp-header-buy-zeolite-zeolifegr-600x413px.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_site":"@ZeolifeGr","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/","url":"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/","name":"Zeolite Agricultural Dosage Calculator","isPartOf":{"@id":"https:\/\/zeolife.gr\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/#primaryimage"},"image":{"@id":"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/#primaryimage"},"thumbnailUrl":"https:\/\/zeolife.gr\/wp-content\/uploads\/2014\/11\/amp-header-buy-zeolite-zeolifegr-600x413px.jpg","datePublished":"2026-06-09T15:18:51+00:00","dateModified":"2026-06-09T16:42:37+00:00","description":"Interactive dosage calculator for agricultural zeolite use: olive trees, vineyard, walnut, fruit trees, cereals, lawn, ornamentals.","breadcrumb":{"@id":"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/#primaryimage","url":"https:\/\/zeolife.gr\/wp-content\/uploads\/2014\/11\/amp-header-buy-zeolite-zeolifegr-600x413px.jpg","contentUrl":"https:\/\/zeolife.gr\/wp-content\/uploads\/2014\/11\/amp-header-buy-zeolite-zeolifegr-600x413px.jpg","width":600,"height":413,"caption":"\u0391\u03b3\u03bf\u03c1\u03ac \u03b6\u03b5\u03cc\u03bb\u03b9\u03b8\u03bf\u03c5 \u03ba\u03b1\u03b9 \u03c3\u03c5\u03bc\u03b2\u03bf\u03c5\u03bb\u03b5\u03c5\u03c4\u03b9\u03ba\u03ae \u03b1\u03c0\u03cc \u03c4\u03b7 Zeolife.gr"},{"@type":"BreadcrumbList","@id":"https:\/\/zeolife.gr\/en\/zeolite-agriculture-dosage-calculator\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zeolife.gr\/en\/"},{"@type":"ListItem","position":2,"name":"Zeolite Agricultural Dosage Calculator"}]},{"@type":"WebSite","@id":"https:\/\/zeolife.gr\/en\/#website","url":"https:\/\/zeolife.gr\/en\/","name":"\u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03cc\u03c2 \u0396\u03b5\u03cc\u03bb\u03b9\u03b8\u03bf\u03c2 & \u0392\u03b9\u03bf\u03bc\u03b7\u03c7\u03b1\u03bd\u03b9\u03ba\u03ac \u039f\u03c1\u03c5\u03ba\u03c4\u03ac \u2013 \u0395\u03c6\u03b1\u03c1\u03bc\u03bf\u03b3\u03ad\u03c2 & \u03a0\u03bb\u03b7\u03c1\u03bf\u03c6\u03bf\u03c1\u03af\u03b5\u03c2 | Zeolife.gr","description":"Applications and purchase of Greek zeolite, zeolite products and industrial minerals | Zeolife.gr","publisher":{"@id":"https:\/\/zeolife.gr\/en\/#organization"},"alternateName":"\u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03cc\u03c2 \u0396\u03b5\u03cc\u03bb\u03b9\u03b8\u03bf\u03c2: \u0399\u03b4\u03b9\u03cc\u03c4\u03b7\u03c4\u03b5\u03c2, \u03a7\u03c1\u03ae\u03c3\u03b5\u03b9\u03c2 & \u03a0\u03c1\u03bf\u03ca\u03cc\u03bd\u03c4\u03b1 | Zeolife.gr","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/zeolife.gr\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/zeolife.gr\/en\/#organization","name":"Zeolite | Diatomite | Zeolife.gr","alternateName":"Zeolife.gr","url":"https:\/\/zeolife.gr\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zeolife.gr\/en\/#\/schema\/logo\/image\/","url":"https:\/\/zeolife.gr\/wp-content\/uploads\/2019\/11\/icon-color-square.png","contentUrl":"https:\/\/zeolife.gr\/wp-content\/uploads\/2019\/11\/icon-color-square.png","width":1200,"height":1200,"caption":"Zeolite | Diatomite | Zeolife.gr"},"image":{"@id":"https:\/\/zeolife.gr\/en\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/zeolifegr","https:\/\/x.com\/ZeolifeGr","https:\/\/www.instagram.com\/zeolife.gr\/","https:\/\/www.linkedin.com\/in\/zeolifegr","https:\/\/www.pinterest.com\/zeolifegr\/","https:\/\/www.youtube.com\/channel\/UCUR1v-vb6vutCU3uvnu98WQ","https:\/\/zeolifegr.tumblr.com\/","https:\/\/www.tiktok.com\/@zeolifegr"],"description":"\u03a6\u03c5\u03c3\u03b9\u03ba\u03cc\u03c2 \u03b5\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03cc\u03c2 \u03ba\u03bb\u03b9\u03bd\u03bf\u03c0\u03c4\u03b9\u03bb\u03cc\u03bb\u03b9\u03b8\u03bf\u03c2 \u03b3\u03b9\u03b1 \u03b3\u03b5\u03c9\u03c1\u03b3\u03af\u03b1, \u03c5\u03b3\u03b5\u03af\u03b1 \u03ba\u03b1\u03b9 \u03b2\u03b9\u03bf\u03bc\u03b7\u03c7\u03b1\u03bd\u03af\u03b1. \u0391\u03c0\u03cc \u03c4\u03bf 2010.","email":"info@zeolife.gr","telephone":"2311295520","foundingDate":"2010-01-01","numberOfEmployees":{"@type":"QuantitativeValue","minValue":"1","maxValue":"10"}}]}},"taxonomy_info":[],"featured_image_src_large":["https:\/\/zeolife.gr\/wp-content\/uploads\/2014\/11\/amp-header-buy-zeolite-zeolifegr-600x413px.jpg",600,413,false],"author_info":{"display_name":"\u03a7\u03c1\u03c5\u03c3\u03bf\u03b2\u03b1\u03bb\u03ac\u03bd\u03c4\u03b7\u03c2 \u03a7\u03b1\u03c4\u03b6\u03b7\u03b3\u03b5\u03c9\u03c1\u03b3\u03af\u03bf\u03c5","author_link":"https:\/\/zeolife.gr\/en\/author\/valantis\/"},"comment_info":0,"_links":{"self":[{"href":"https:\/\/zeolife.gr\/en\/wp-json\/wp\/v2\/pages\/17926","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zeolife.gr\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/zeolife.gr\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/zeolife.gr\/en\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/zeolife.gr\/en\/wp-json\/wp\/v2\/comments?post=17926"}],"version-history":[{"count":3,"href":"https:\/\/zeolife.gr\/en\/wp-json\/wp\/v2\/pages\/17926\/revisions"}],"predecessor-version":[{"id":17933,"href":"https:\/\/zeolife.gr\/en\/wp-json\/wp\/v2\/pages\/17926\/revisions\/17933"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/zeolife.gr\/en\/wp-json\/wp\/v2\/media\/13886"}],"wp:attachment":[{"href":"https:\/\/zeolife.gr\/en\/wp-json\/wp\/v2\/media?parent=17926"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}