Alloy 825 Pipe Weight Calculator

Alloy 825 Pipe Weight Calculator & Guide :root { –primary-color: #004a99; –success-color: #28a745; –background-color: #f8f9fa; –text-color: #333; –border-color: #dee2e6; –card-background: #ffffff; –shadow: 0 4px 8px rgba(0,0,0,0.1); } body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background-color: var(–background-color); color: var(–text-color); line-height: 1.6; margin: 0; padding: 0; display: flex; flex-direction: column; align-items: center; min-height: 100vh; } .container { width: 100%; max-width: 960px; margin: 20px auto; padding: 20px; background-color: var(–card-background); border-radius: 8px; box-shadow: var(–shadow); } header { background-color: var(–primary-color); color: white; padding: 20px 0; text-align: center; width: 100%; margin-bottom: 20px; } header h1 { margin: 0; font-size: 2.2em; } h1, h2, h3 { color: var(–primary-color); } h1 { font-size: 2.5em; text-align: center; margin-bottom: 15px; } h2 { font-size: 1.8em; margin-top: 30px; margin-bottom: 15px; border-bottom: 2px solid var(–primary-color); padding-bottom: 5px;} h3 { font-size: 1.4em; margin-top: 20px; margin-bottom: 10px;} p { margin-bottom: 15px; } .calculator-wrapper { background-color: var(–card-background); padding: 30px; border-radius: 8px; box-shadow: var(–shadow); margin-bottom: 30px; border: 1px solid var(–border-color); } .loan-calc-container h2 { margin-top: 0; color: var(–primary-color); text-align: center; margin-bottom: 25px; } .input-group { margin-bottom: 20px; text-align: left; } .input-group label { display: block; margin-bottom: 8px; font-weight: bold; color: var(–primary-color); } .input-group input[type="number"], .input-group input[type="text"], .input-group select { width: calc(100% – 22px); padding: 10px; border: 1px solid var(–border-color); border-radius: 4px; box-sizing: border-box; font-size: 1em; } .input-group input[type="number"]:focus, .input-group select:focus { outline: none; border-color: var(–primary-color); box-shadow: 0 0 0 2px rgba(0, 74, 153, 0.2); } .input-group small { display: block; margin-top: 5px; color: #6c757d; font-size: 0.9em; } .error-message { color: #dc3545; font-size: 0.9em; margin-top: 5px; min-height: 1.2em; } .button-group { display: flex; justify-content: space-between; margin-top: 25px; gap: 10px; flex-wrap: wrap; } button { padding: 12px 20px; border: none; border-radius: 5px; cursor: pointer; font-size: 1em; font-weight: bold; transition: background-color 0.3s ease, transform 0.2s ease; flex-grow: 1; min-width: 150px; } button.primary { background-color: var(–primary-color); color: white; } button.primary:hover { background-color: #003366; transform: translateY(-2px); } button.secondary { background-color: #6c757d; color: white; } button.secondary:hover { background-color: #5a6268; transform: translateY(-2px); } button.copy { background-color: var(–success-color); color: white; } button.copy:hover { background-color: #218838; transform: translateY(-2px); } #results { background-color: #e9ecef; padding: 20px; border-radius: 5px; margin-top: 25px; border: 1px solid var(–border-color); } #results h3 { margin-top: 0; color: var(–primary-color); text-align: center; margin-bottom: 15px; } .result-item { margin-bottom: 10px; display: flex; justify-content: space-between; align-items: center; } .result-item span:first-child { font-weight: bold; } .result-item span:last-child { font-size: 1.1em; color: var(–primary-color); } .main-result { font-size: 1.8em !important; font-weight: bold; color: var(–success-color); margin-top: 15px; padding: 10px; background-color: #f0fff0; border: 2px dashed var(–success-color); border-radius: 5px; text-align: center; } .formula-explanation { font-size: 0.95em; margin-top: 15px; padding: 10px; background-color: #e0e0e0; border-left: 3px solid var(–primary-color); color: #555; } table { width: 100%; border-collapse: collapse; margin-top: 25px; box-shadow: var(–shadow); } caption { caption-side: top; font-weight: bold; font-size: 1.2em; color: var(–primary-color); margin-bottom: 15px; text-align: left; } th, td { padding: 12px; text-align: left; border: 1px solid var(–border-color); } th { background-color: #004a9920; color: var(–primary-color); font-weight: bold; } tbody tr:nth-child(even) { background-color: #f2f2f2; } tbody tr:hover { background-color: #e0e0e0; } canvas { margin-top: 25px; border: 1px solid var(–border-color); border-radius: 5px; background-color: white; } .chart-caption { font-size: 0.95em; margin-top: 10px; text-align: center; color: #6c757d; } .article-content { text-align: left; margin-top: 30px; background-color: var(–card-background); padding: 30px; border-radius: 8px; box-shadow: var(–shadow); border: 1px solid var(–border-color); } .article-content p, .article-content ul, .article-content ol { margin-bottom: 15px; } .article-content li { margin-bottom: 8px; } .article-content a { color: var(–primary-color); text-decoration: none; } .article-content a:hover { text-decoration: underline; } .faq-item { margin-bottom: 15px; padding: 15px; background-color: #f8f9fa; border: 1px solid var(–border-color); border-radius: 5px; } .faq-item h3 { margin-top: 0; margin-bottom: 8px; cursor: pointer; position: relative; padding-left: 25px; } .faq-item h3::before { content: '+'; position: absolute; left: 5px; top: 0; font-weight: bold; color: var(–primary-color); font-size: 1.2em; } .faq-item.open h3::before { content: '-'; } .faq-item div { display: none; padding-left: 15px; margin-top: 10px; border-left: 3px solid var(–primary-color); } .faq-item.open div { display: block; } #related-tools ul { list-style: none; padding: 0; } #related-tools li { margin-bottom: 10px; padding: 10px; border: 1px solid var(–border-color); border-radius: 4px; background-color: #e9ecef; } #related-tools li a { font-weight: bold; } #related-tools li p { margin-top: 5px; margin-bottom: 0; font-size: 0.9em; color: #555; } @media (max-width: 768px) { .container { margin: 10px auto; padding: 15px; } header h1 { font-size: 1.8em; } h1 { font-size: 2em; } h2 { font-size: 1.5em; } h3 { font-size: 1.2em; } button { width: 100%; margin-bottom: 10px; } .button-group { flex-direction: column; align-items: center; } .result-item { flex-direction: column; align-items: flex-start; } .result-item span:last-child { margin-top: 5px; } }

Alloy 825 Pipe Weight Calculator

Alloy 825 Pipe Weight Calculator

Enter the outer diameter of the pipe in millimeters.
Enter the wall thickness of the pipe in millimeters.
Enter the total length of the pipe in meters.

Calculation Results

Inner Diameter:
Cross-Sectional Area:
Volume (m³):
— kg
Formula: The weight is calculated by finding the volume of the pipe material (outer cylinder volume minus inner cylinder volume) and multiplying it by the density of Alloy 825. Weight (kg) = Volume (m³) × Density (kg/m³) Volume (m³) = π × ( (Outer Diameter/2)² – (Inner Diameter/2)² ) × Length (m)

What is Alloy 825 Pipe Weight?

The "Alloy 825 Pipe Weight" refers to the calculated mass of a specific length of pipe manufactured from Alloy 825. This is a crucial parameter in various engineering, procurement, and construction (EPC) projects, particularly in industries dealing with corrosive environments like chemical processing, oil and gas, and marine applications. Accurately determining the weight of Alloy 825 pipes is essential for logistics planning, structural load calculations, material cost estimations, and ensuring structural integrity.

Who should use this calculator? Engineers, project managers, procurement specialists, fabricators, installers, and anyone involved in specifying or handling Alloy 825 piping systems will find this calculator invaluable. It provides a quick and reliable method to estimate pipe weight for project planning and material management.

Common misconceptions: A common misconception is that pipe weight is solely dependent on its diameter and length. However, the material's density and the specific wall thickness (which determines the amount of material present) are equally, if not more, critical. Another misconception is that all stainless steels have similar densities; while often close, variations exist and must be accounted for, especially for specialized alloys like Alloy 825.

Alloy 825 Pipe Weight Formula and Mathematical Explanation

The calculation of Alloy 825 pipe weight is based on fundamental geometric principles and the material's density. Here's a breakdown of the formula and its components:

The core idea is to determine the volume of the metal that makes up the pipe wall and then multiply that volume by the density of Alloy 825.

Step 1: Calculate the Inner Diameter (ID)
The inner diameter is found by subtracting twice the wall thickness from the outer diameter. ID = OD - 2 × WT

Step 2: Calculate the Cross-Sectional Area of the Pipe Wall
This is the area of the metal ring that forms the pipe's cross-section. It's calculated by subtracting the area of the inner circle from the area of the outer circle. Area = π/4 × (OD² - ID²) Alternatively, using radii: Area = π × (R_outer² - R_inner²) where R = Diameter/2

Step 3: Calculate the Volume of the Pipe
Multiply the cross-sectional area by the length of the pipe. Ensure units are consistent (e.g., meters for length and area in m² to get volume in m³). Volume = Area × Length

Step 4: Calculate the Weight
Multiply the volume by the density of Alloy 825. Weight = Volume × Density

The density of Alloy 825 is approximately 8.14 g/cm³, which converts to 8140 kg/m³.

Variables and Units

Variable Meaning Unit Typical Range
OD Outer Diameter mm 10 – 1000+
WT Wall Thickness mm 1 – 50+
ID Inner Diameter mm OD – 2*WT
L Pipe Length m 0.5 – 12+
Area Cross-Sectional Area of Pipe Wall Calculated
Volume Volume of Pipe Material Calculated
Density Density of Alloy 825 kg/m³ ~8140
Weight Total Weight of Pipe kg Calculated

Practical Examples (Real-World Use Cases)

Understanding the practical application of the Alloy 825 pipe weight calculator can highlight its importance.

Example 1: Chemical Processing Plant Piping

A chemical plant needs to install a section of piping for handling hot, corrosive acids. They select Alloy 825 due to its excellent resistance to sulfuric and phosphoric acids.

  • Pipe Outer Diameter (OD): 168.3 mm
  • Pipe Wall Thickness (WT): 8.15 mm
  • Pipe Length (L): 10 meters

Using the calculator:

Estimated Inputs:
OD: 168.3 mm
WT: 8.15 mm
Length: 10 m

Calculator Output:
Inner Diameter: 152.0 mm
Cross-Sectional Area: 0.0118 m²
Volume: 0.118 m³
Total Weight: ~962 kg

Interpretation: This weight information is crucial for the structural engineers designing the pipe supports and the logistics team planning the transportation and installation of this 10-meter section.

Example 2: Offshore Oil and Gas Application

An offshore platform requires piping for seawater injection systems, where corrosion resistance and high strength are paramount. Alloy 825 is chosen for its performance in harsh marine environments.

  • Pipe Outer Diameter (OD): 219.1 mm
  • Pipe Wall Thickness (WT): 6.35 mm
  • Pipe Length (L): 6 meters

Using the calculator:

Estimated Inputs:
OD: 219.1 mm
WT: 6.35 mm
Length: 6 m

Calculator Output:
Inner Diameter: 206.4 mm
Cross-Sectional Area: 0.0077 m²
Volume: 0.0462 m³
Total Weight: ~376 kg

Interpretation: The ~376 kg weight per 6-meter section helps in calculating the total material requirement for the project, estimating lifting equipment needs, and planning assembly sequences on the offshore platform.

How to Use This Alloy 825 Pipe Weight Calculator

Using the Alloy 825 Pipe Weight Calculator is straightforward and designed for efficiency. Follow these simple steps to get accurate weight estimations:

  1. Input Pipe Dimensions:
    • Enter the Outer Diameter (OD) of the Alloy 825 pipe in millimeters (mm).
    • Enter the Wall Thickness (WT) of the pipe in millimeters (mm).
    • Enter the total Length (L) of the pipe section in meters (m).
  2. Validate Inputs: Ensure all entered values are positive numerical figures. The calculator includes inline validation to help catch common errors such as empty fields or non-numeric entries.
  3. Calculate: Click the "Calculate Weight" button. The results will update instantly.
  4. Review Results:
    • The primary result shown in large, bold font is the Total Weight of the pipe section in kilograms (kg).
    • Key intermediate values like Inner Diameter, Cross-Sectional Area, and Volume are also displayed.
    • Refer to the formula explanation for a clear understanding of how the weight was derived.
  5. Copy Results: If you need to use these figures elsewhere, click the "Copy Results" button. This will copy the main result, intermediate values, and key assumptions to your clipboard.
  6. Reset: To start a new calculation, click the "Reset" button to clear all fields and return to default sensible values.

Decision-making guidance: Use these weight estimations to verify material quantities against purchase orders, confirm structural load capacities for installation, and refine project budget forecasts.

Key Factors That Affect Alloy 825 Pipe Weight Results

While the calculator uses standard formulas, several real-world factors can influence the actual weight and must be considered:

  • Material Density Variations: Although we use a standard density for Alloy 825 (~8140 kg/m³), slight variations can occur due to manufacturing tolerances or specific alloy compositions. Always refer to the manufacturer's data sheet for the most accurate density.
  • Dimensional Tolerances: Real-world pipes have manufacturing tolerances for both outer diameter and wall thickness. These deviations can lead to slight differences between the calculated and actual weight.
  • Pipe Length Deviations: Actual installed pipe lengths might vary slightly from planned lengths due to installation requirements, fittings, or site conditions.
  • Fittings and Welds: The calculated weight is for straight pipe sections only. The addition of elbows, tees, flanges, and the filler material used in welds will add extra weight to the overall system.
  • Surface Treatments and Coatings: If the pipes are coated or lined for additional protection or insulation, this will also increase the total weight.
  • Temperature Effects: While density is relatively stable, extreme temperature fluctuations can cause minor thermal expansion or contraction, slightly altering dimensions and thus volume/weight. This is usually negligible for standard weight calculations.
  • Units of Measurement: Inconsistent use of units (e.g., inches for diameter and meters for length) is a common source of error. Always ensure all inputs are in the correct units (mm for diameter/thickness, m for length) for accurate kg output.

Frequently Asked Questions (FAQ)

What is the density of Alloy 825?

The density of Alloy 825 is approximately 8.14 grams per cubic centimeter (g/cm³), which is equivalent to 8140 kilograms per cubic meter (kg/m³). This value is used in the weight calculation.

Can I use this calculator for different pipe materials?

This calculator is specifically calibrated for Alloy 825 using its standard density. For other materials (like different stainless steel grades or carbon steel), you would need to adjust the density input or use a calculator specific to that material.

Does the calculator account for pipe schedule or pressure rating?

No, this calculator focuses purely on the physical dimensions (outer diameter, wall thickness, length) and material density to determine weight. Pipe schedule (like Sch 40, Sch 80) and pressure rating are related to wall thickness and are implicitly considered if you input the correct wall thickness corresponding to that schedule.

What is the difference between OD and ID?

OD stands for Outer Diameter, which is the measurement across the widest part of the pipe, including the wall. ID stands for Inner Diameter, which is the measurement across the internal hollow space of the pipe. ID is calculated as OD – (2 * Wall Thickness).

Why is calculating Alloy 825 pipe weight important?

Accurate weight calculation is vital for:
  • Logistics: Planning shipping, handling, and transportation.
  • Structural Design: Determining load capacities for supports and foundations.
  • Cost Estimation: Budgeting for materials and installation.
  • Inventory Management: Tracking stock levels.
  • Safety: Ensuring proper lifting and handling procedures.

Are there any limitations to this calculator?

The primary limitation is that it calculates the weight of straight pipe sections only. It does not include the weight of fittings, flanges, or any coatings/linings. Also, it relies on standard density values; actual weights may vary slightly due to manufacturing tolerances.

What is Alloy 825 known for?

Alloy 825 is a nickel-iron-chromium alloy known for its excellent resistance to a wide range of corrosive environments, including seawater, sulfuric acid, phosphoric acid, and stress-corrosion cracking. It offers good mechanical strength and formability at elevated temperatures.

How precise are the results?

The calculator provides a highly accurate theoretical weight based on the provided dimensions and the standard density of Alloy 825. For critical applications, always cross-reference with the pipe manufacturer's specifications and consider the weight of additional components like fittings and welds.

Weight vs. Length and Thickness Chart

This chart visualizes how the weight of an Alloy 825 pipe changes with its length and wall thickness, assuming a constant outer diameter of 114.3 mm (4.5 inches).

© 2023 Your Company Name. All rights reserved. | Disclaimer: This calculator provides estimates for informational purposes only.

var densityAlloy825 = 8140; // kg/m³ function validateInput(id, errorId, min, max, isRequired = true) { var element = document.getElementById(id); var errorElement = document.getElementById(errorId); var value = parseFloat(element.value); errorElement.textContent = ""; // Clear previous error if (isRequired && (element.value.trim() === "" || isNaN(value))) { errorElement.textContent = "This field is required."; return false; } if (!isNaN(value)) { if (value max) { errorElement.textContent = `Value cannot exceed ${max}.`; return false; } } return true; } function calculateWeight() { var isValid = true; isValid &= validateInput('pipeDiameter', 'pipeDiameterError', 0); isValid &= validateInput('pipeWallThickness', 'pipeWallThicknessError', 0); isValid &= validateInput('pipeLength', 'pipeLengthError', 0); if (!isValid) { return; } var od_mm = parseFloat(document.getElementById('pipeDiameter').value); var wt_mm = parseFloat(document.getElementById('pipeWallThickness').value); var length_m = parseFloat(document.getElementById('pipeLength').value); // Convert mm to meters for area calculation var od_m = od_mm / 1000; var wt_m = wt_mm / 1000; var id_m = od_m – 2 * wt_m; if (id_m <= 0) { document.getElementById('pipeWallThicknessError').textContent = "Wall thickness is too large for the given diameter."; isValid = false; } if (!isValid) return; // Area in m^2 var outerRadius_m = od_m / 2; var innerRadius_m = id_m / 2; var crossSectionalArea_m2 = Math.PI * (Math.pow(outerRadius_m, 2) – Math.pow(innerRadius_m, 2)); // Volume in m^3 var volume_m3 = crossSectionalArea_m2 * length_m; // Weight in kg var totalWeight_kg = volume_m3 * densityAlloy825; document.getElementById('innerDiameter').textContent = (id_m * 1000).toFixed(2) + " mm"; document.getElementById('crossSectionalArea').textContent = crossSectionalArea_m2.toFixed(6) + " m²"; document.getElementById('volume').textContent = volume_m3.toFixed(5) + " m³"; document.getElementById('totalWeight').textContent = totalWeight_kg.toFixed(2) + " kg"; updateChart(od_mm, length_m); // Update chart with current inputs } function resetCalculator() { document.getElementById('pipeDiameter').value = '114.3'; document.getElementById('pipeWallThickness').value = '5.0'; document.getElementById('pipeLength').value = '6.0'; document.getElementById('innerDiameter').textContent = "–"; document.getElementById('crossSectionalArea').textContent = "–"; document.getElementById('volume').textContent = "–"; document.getElementById('totalWeight').textContent = "– kg"; // Clear errors document.getElementById('pipeDiameterError').textContent = ""; document.getElementById('pipeWallThicknessError').textContent = ""; document.getElementById('pipeLengthError').textContent = ""; } function copyResults() { var mainResult = document.getElementById('totalWeight').innerText; var innerDiameter = document.getElementById('innerDiameter').innerText; var crossSectionalArea = document.getElementById('crossSectionalArea').innerText; var volume = document.getElementById('volume').innerText; var od = document.getElementById('pipeDiameter').value; var wt = document.getElementById('pipeWallThickness').value; var length = document.getElementById('pipeLength').value; var copyText = `— Alloy 825 Pipe Weight Calculation — Outer Diameter: ${od} mm Wall Thickness: ${wt} mm Length: ${length} m Results: Main Result (Total Weight): ${mainResult} Inner Diameter: ${innerDiameter} Cross-Sectional Area: ${crossSectionalArea} Volume: ${volume} Assumptions: Density of Alloy 825: ${densityAlloy825} kg/m³ `; navigator.clipboard.writeText(copyText).then(function() { alert('Results copied to clipboard!'); }, function(err) { console.error('Failed to copy: ', err); alert('Failed to copy results. Please copy manually.'); }); } var chartInstance = null; // Global variable to hold the chart instance function updateChart(baseDiameterMm = 114.3, baseLengthM = 6.0) { var canvas = document.getElementById('weightChart'); var ctx = canvas.getContext('2d'); // Chart dimensions based on canvas size var chartWidth = canvas.width; var chartHeight = canvas.height; // Clear previous chart if it exists if (chartInstance) { chartInstance.destroy(); } // Define data series // Series 1: Varying Length, Constant Thickness (e.g., 5mm) var lengths = [1, 3, 6, 9, 12]; // m var weightsByLength = lengths.map(function(len) { var od_m = baseDiameterMm / 1000; var wt_m = 5.0 / 1000; // Fixed thickness for this series var id_m = od_m – 2 * wt_m; if (id_m <= 0) return 0; var area_m2 = Math.PI * (Math.pow(od_m / 2, 2) – Math.pow(id_m / 2, 2)); var vol_m3 = area_m2 * len; return vol_m3 * densityAlloy825; }); // Series 2: Varying Thickness, Constant Length (e.g., 6m) var thicknesses = [2, 4, 6, 8, 10]; // mm var weightsByThickness = thicknesses.map(function(thick) { var od_m = baseDiameterMm / 1000; var wt_m = thick / 1000; var id_m = od_m – 2 * wt_m; if (id_m <= 0) return 0; var area_m2 = Math.PI * (Math.pow(od_m / 2, 2) – Math.pow(id_m / 2, 2)); var vol_m3 = area_m2 * baseLengthM; return vol_m3 * densityAlloy825; }); chartInstance = new Chart(ctx, { type: 'line', data: { labels: lengths.map(String), // X-axis for length series datasets: [{ label: 'Weight vs. Pipe Length (Thickness=5mm)', data: weightsByLength, borderColor: 'rgba(0, 74, 153, 1)', backgroundColor: 'rgba(0, 74, 153, 0.2)', fill: false, tension: 0.1 }, { label: 'Weight vs. Wall Thickness (Length=6m)', // Use thicknesses as labels for the second dataset data: weightsByThickness, borderColor: 'rgba(40, 167, 69, 1)', backgroundColor: 'rgba(40, 167, 69, 0.2)', fill: false, tension: 0.1 }] }, options: { responsive: true, maintainAspectRatio: false, scales: { x: { title: { display: true, labelString: 'Pipe Length (m) / Wall Thickness (mm)' // Combined label } }, y: { title: { display: true, labelString: 'Weight (kg)' }, beginAtZero: true } }, plugins: { tooltip: { callbacks: { label: function(context) { var label = context.dataset.label || ''; if (label) { label += ': '; } if (context.parsed.y !== null) { label += context.parsed.y.toFixed(2) + ' kg'; } return label; } } }, legend: { labels: { // Custom labels to clarify which axis is used for each dataset generateLabels: function(chart) { var originalLabels = Chart.defaults.plugins.legend.labels.generateLabels(chart); originalLabels.forEach(function(label) { if (label.datasetIndex === 0) { label.text = 'Weight vs. Pipe Length (Thickness=5mm)'; } else if (label.datasetIndex === 1) { label.text = 'Weight vs. Wall Thickness (Length=6m)'; } }); return originalLabels; } } } } } }); // Adjust x-axis labels to reflect the dual nature of the chart var chartConfig = ctx.chart.options; chartConfig.scales.x.labels = lengths.map(function(l, i) { return `${l}m (Len)`; }); // Manually add thickness labels for the second dataset, or create a combined axis // For simplicity, we'll keep lengths on X and infer thickness from the second series // A more complex chart might use two separate charts or a dual-axis chart if library supported it easily. // For pure JS/Canvas, keeping it simple is best. The legend helps differentiate. // Let's explicitly add the thickness labels to the chart's internal structure if needed, or rely on legend. // Re-apply labels for clarity in the legend and tooltip if needed chartConfig.data.datasets[0].label = 'Weight vs. Pipe Length (Thickness=5mm)'; chartConfig.data.datasets[1].label = 'Weight vs. Wall Thickness (Length=6m)'; // Add explicit thickness labels to the chart's scale if desired, though this makes the x-axis confusing. // It's better to rely on the legend and the descriptive chart title. // Example: chartConfig.scales.x.ticks.callback = function(value, index, ticks) { … } } // Initial chart render on load document.addEventListener('DOMContentLoaded', function() { // Initialize chart with default values or based on initial inputs var initialDiameter = parseFloat(document.getElementById('pipeDiameter').value) || 114.3; var initialLength = parseFloat(document.getElementById('pipeLength').value) || 6.0; updateChart(initialDiameter, initialLength); }); function toggleFaq(element) { var parent = element.parentElement; parent.classList.toggle('open'); }

Leave a Comment