Files
felhom.eu/website/technologiak.html
T
admin be2fc507bf website: pre-Facebook content refresh — capability-map alignment + Zárt teszt landing
Audience shift: a Facebook post recruiting volunteer testers is about to send real
Hungarian households (mostly on phones) to a site that until now had zero stakes.
Every claim re-checked against documentation/architecture/00-capability-map.md.

- Naming ruling: "Felhő Felügyelő" removed site-wide (14 occurrences, now 0). The
  brand is Felhom; the interface is the vezérlőpult.
- index.html: new "Mit tud a doboz ma?" (8 map-traceable cards, incl. Hálózati
  megosztás and the customer-only recovery code) + new "Zárt teszt" section with
  stated limitations (one shared household password; TV-re streamelés hamarosan).
  CTA reuses the existing live contact-mailer via /kapcsolat?tema=zart-teszt.
- og:image was a site-wide 404 (pages pointed at a .png that never existed) —
  generated a branded 1200x630 card + width/height/alt. Load-bearing for the post.
- App count 45+ -> 53 (real catalog count).
- Cut unbacked claims: the Kubernetes/k3s section + multi-node tier, Tailscale ->
  WireGuard, the RAID card -> honest two-tier backup, gyik multi-user answer
  (both JSON-LD and visible copies), and the "azonnal értesítést kapsz" overclaim.

site_gates.py green. Mobile measured at 380px: scrollWidth == clientWidth == 365.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N1W4wBum4JSFrbaEoDkMBy
2026-07-18 21:27:10 +02:00

499 lines
28 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="hu">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Technológiák — Docker, vezérlőpult, Proxmox otthoni szerverhez | Felhom.eu</title>
<meta name="description" content="Ipari szintű technológiák otthon: Docker konténerek, magyar nyelvű vezérlőpult, Proxmox virtualizáció. SSL, tűzfal, VPN — professzionális biztonság.">
<meta name="keywords" content="Docker, vezérlőpult, Proxmox, konténer, virtualizáció, reverse proxy, SSL, tűzfal, VPN, otthoni szerver technológia">
<meta name="robots" content="index, follow">
<link rel="canonical" href="https://felhom.eu/technologiak">
<meta property="og:type" content="article">
<meta property="og:url" content="https://felhom.eu/technologiak">
<meta property="og:title" content="Professzionális technológiák otthoni szerverhez">
<meta property="og:description" content="Docker, magyar nyelvű vezérlőpult, Proxmox — ipari szintű megoldások otthoni környezetben.">
<meta property="og:image" content="https://felhom.eu/assets/og-image.png">
<meta property="og:locale" content="hu_HU">
<meta property="og:site_name" content="Felhom.eu">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="Professzionális technológiák otthoni szerverhez">
<meta name="twitter:description" content="Docker, magyar nyelvű vezérlőpult, Proxmox — ipari megoldások, otthoni környezetben.">
<meta name="twitter:image" content="https://felhom.eu/assets/og-image.png">
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Alkalmazott technológiák otthoni szerverekhez",
"description": "Docker konténerek, magyar nyelvű vezérlőpult és Proxmox virtualizáció otthoni szerverre.",
"author": {"@type": "Organization", "name": "Felhom.eu"},
"publisher": {"@type": "Organization", "name": "Felhom.eu", "logo": {"@type": "ImageObject", "url": "https://felhom.eu/assets/logo.png"}},
"mainEntityOfPage": "https://felhom.eu/technologiak"
}
</script>
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
<link rel="stylesheet" href="/assets/site.css?v=1">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
</head>
<body class="page-technologiak">
<nav>
<div class="container">
<a href="/" class="logo">
<img src="/assets/logo.png" alt="Felhom.eu logo">
<span class="logo-text">felhom.eu</span>
</a>
<ul class="nav-links">
<li><a href="/#szolgaltatasok">Szolgáltatások</a></li>
<li><a href="/alkalmazasok">Alkalmazások</a></li>
<li><a href="/technologiak" class="active">Technológiák</a></li>
<li><a href="/biztonsagimentes">Mentések</a></li>
<li><a href="/gyik">GYIK</a></li>
<li><a href="/kapcsolat">Kapcsolat</a></li>
</ul>
<button class="hamburger" id="hamburger" aria-label="Menü megnyitása" aria-expanded="false">
<span class="hamburger-box">
<span class="hamburger-line"></span>
<span class="hamburger-line"></span>
<span class="hamburger-line"></span>
</span>
</button>
</div>
</nav>
<div class="mobile-overlay" id="mobileOverlay"></div>
<main>
<section class="page-header">
<div class="container">
<h1>Alkalmazott <span>Technológiák</span></h1>
<p>Modern, bevált megoldások az otthoni szerverek üzemeltetéséhez. Íme, hogyan építjük fel a rendszereket.</p>
</div>
</section>
<!-- Table of Contents -->
<section class="content-section" style="padding-top: 0;">
<div class="container">
<div class="toc-nav">
<h3>Tartalom</h3>
<ul class="toc-links">
<li><a href="#kontenerek">Miért konténerek?</a></li>
<li><a href="#single-node">A kezelőréteg (vezérlőpult)</a></li>
<li><a href="#proxmox">Virtualizáció (Proxmox)</a></li>
<li><a href="#halozat">Hálózat és biztonság</a></li>
<li><a href="#tarolas">Tárolás</a></li>
<li><a href="#hardver">Hardver konfigurációk</a></li>
</ul>
</div>
</div>
</section>
<!-- Miért konténerek? -->
<section class="content-section alt-bg" id="kontenerek">
<div class="container">
<div class="section-header">
<h2>Miért <span>konténerek?</span></h2>
<p>A modern szerverüzemeltetés alapköve</p>
</div>
<div class="info-card">
<h3><span class="icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-package"/></svg></span> Mi az a konténer?</h3>
<p>Képzeld el, hogy minden alkalmazás egy saját, elszigetelt „dobozban" fut. Ez a doboz tartalmazza az alkalmazást és minden függőségét így garantáltan ugyanúgy működik bárhol, bármilyen szerveren.</p>
<p>A konténerek (Docker) forradalmasították a szerverüzemeltetést: egyszerűbb telepítés, könnyebb frissítés, és megbízhatóbb működés.</p>
<div class="highlight-box">
<p><strong>Analógia:</strong> Mintha minden alkalmazás a saját lakásában élne egy társasházban. Van saját bejárata, saját közműórája, és nem zavarja a szomszédokat de mégis egy épületen osztoznak.</p>
</div>
</div>
<div class="comparison-grid">
<div class="comparison-card">
<div class="card-icon"><svg class="ico-tile" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-monitor"/></svg></div>
<h3>Hagyományos telepítés</h3>
<div class="subtitle">„Közvetlenül a rendszerre"</div>
<p>Az alkalmazások közvetlenül az operációs rendszerre települnek. Ütközhetnek egymással, nehéz eltávolítani őket.</p>
<ul class="feature-list cons">
<li>Függőségek összeakadhatnak</li>
<li>Nehéz reprodukálni más szerveren</li>
<li>Frissítés = kockázat</li>
<li>Eltávolítás „szemetet" hagy</li>
</ul>
</div>
<div class="comparison-card recommended">
<div class="card-icon"><svg class="ico-tile" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-container"/></svg></div>
<h3>Konténerizált telepítés</h3>
<div class="subtitle">Docker / Podman</div>
<p>Minden alkalmazás elszigetelten fut. Tiszta, rendezett, könnyen kezelhető rendszer.</p>
<ul class="feature-list">
<li>Teljesen izolált alkalmazások</li>
<li>Egy parancs = telepítés</li>
<li>Egyszerű frissítés és visszaállás</li>
<li>Bárhol reprodukálható</li>
</ul>
</div>
</div>
</div>
</section>
<!-- Single Node - vezérlőpult -->
<section class="content-section" id="single-node">
<div class="container">
<div class="section-header">
<h2>A kezelőréteg: <span>a vezérlőpult</span></h2>
<p>Minden Felhom doboz magyar nyelvű kezelőfelülete</p>
</div>
<div class="info-card">
<h3><span class="icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-target"/></svg></span> Mit csinál a vezérlőpult?</h3>
<p>A vezérlőpult minden Felhom dobozon ott van: ez a magyar nyelvű kezelőfelület, amely a Proxmox alapra épülő rendszeredet vezérli. Egy kimondottan otthoni szerverekre tervezett felület, ahol pár kattintással telepíthetsz alkalmazásokat, és nem kell parancssorhoz nyúlnod — a háttérben a Docker és a Proxmox dolgozik helyetted.</p>
<ul class="feature-list">
<li>Magyar nyelvű webes felület nincs szükség parancssor ismeretre</li>
<li>Alkalmazás katalógus 53 app telepíthető pár kattintással</li>
<li>Erőforrás figyelés memória és tárhely használat valós időben</li>
<li>Automatikus mentések adatbázis és fájl backup, állapotfigyeléssel</li>
<li>Alkalmazás frissítések egy kattintással, naplózással</li>
<li>Rendszer monitoring folyamatos egészségfigyelés, riasztások</li>
</ul>
<div class="highlight-box">
<p><strong>Tökéletes:</strong> Otthoni média szerver, családi felhő, személyes projektek, kis irodai használat.</p>
</div>
</div>
<div class="stack-diagram">
<h3>Egy Felhom doboz felépítése</h3>
<div class="stack-layers">
<div class="stack-layer">
<div class="layer-label">Kezelő + appok</div>
<div class="layer-content highlight">
<div class="layer-name">Vezérlőpult + Alkalmazások</div>
<div class="layer-tech">Magyar kezelőfelület · Nextcloud, Jellyfin, Immich…</div>
</div>
</div>
<div class="stack-layer">
<div class="layer-label">Konténer motor</div>
<div class="layer-content">
<div class="layer-name">Docker</div>
<div class="layer-tech">Az appok elszigetelt konténerekben futnak</div>
</div>
</div>
<div class="stack-layer">
<div class="layer-label">Rendszerkörnyezet</div>
<div class="layer-content">
<div class="layer-name">Izolált rendszerkörnyezet</div>
<div class="layer-tech">A te dobozod — tisztán elkülönített rendszer</div>
</div>
</div>
<div class="stack-layer">
<div class="layer-label">Alapréteg</div>
<div class="layer-content">
<div class="layer-name">Proxmox VE</div>
<div class="layer-tech">Virtualizációs alap · pillanatkép, mentés, visszaállítás</div>
</div>
</div>
<div class="stack-layer">
<div class="layer-label">Hardver</div>
<div class="layer-content">
<div class="layer-name">A szerver gépe</div>
<div class="layer-tech">Mini PC, tower vagy szerver</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Proxmox -->
<section class="content-section alt-bg" id="proxmox">
<div class="container">
<div class="section-header">
<h2>Az alapréteg: <span>Proxmox</span></h2>
<p>Erre a stabil alapra építünk minden Felhom gépet</p>
</div>
<div class="info-card">
<h3><span class="icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-layers"/></svg></span> Mi az a Proxmox?</h3>
<p>A Proxmox VE egy ingyenes, professzionális virtualizációs platform — ugyanaz a fajta technológia, amelyet adatközpontok és cégek használnak. Ez a Felhom rendszerek alapja: erre építünk minden gépet, és erre települ az izolált rendszerkörnyezet, amelyben az alkalmazásaid futnak.</p>
<div class="highlight-box">
<p><svg class="ico" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-layers"/></svg> <strong>Az alap, nem opció:</strong> A Proxmox minden Felhom dobozon ott van. Nem kell róla tudnod és nem kell vele foglalkoznod — csendben a háttérben dolgozik, és ez teszi a rendszeredet biztonságossá és menthetővé.</p>
</div>
</div>
<div class="info-card">
<h3><span class="icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-target"/></svg></span> Mit ad neked a Proxmox alap?</h3>
<ul class="feature-list">
<li><strong>Pillanatkép minden változtatás előtt</strong> frissítés vagy beállítás előtt a rendszer pillanatképet készít, így bármi gond esetén pillanatok alatt visszaállunk az előző állapotra</li>
<li><strong>Az egész rendszer menthető</strong> nem csak az adataid, hanem a teljes dobozod biztonsági mentésbe tehető, és szükség esetén egy új gépre is visszaállítható</li>
<li><strong>Tiszta elkülönítés</strong> a kezelőréteg és az alkalmazásaid erősen elkülönítve futnak, így stabilabb és biztonságosabb a rendszer</li>
<li><strong>Gyors, megismételhető telepítés</strong> egy új doboz beüzemelése gyors és kiszámítható, mindig ugyanúgy</li>
</ul>
<div class="highlight-box">
<p><strong>És ha többre van szükséged…</strong> ugyanez az alap teszi lehetővé a haladó igényeket is: Windows-os szoftver vagy hálózati szolgáltatás (pl. pfSense/OPNsense) külön virtuális gépben, tesztkörnyezetek, vagy egy app extra erős elkülönítése — kérésre.</p>
</div>
</div>
</div>
</section>
<!-- Hálózat -->
<section class="content-section alt-bg" id="halozat">
<div class="container">
<div class="section-header">
<h2>Hálózat és <span>biztonság</span></h2>
<p>Hogyan éred el a szervered biztonságosan, bárhonnan?</p>
</div>
<div class="info-card">
<h3><span class="icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-rotate-cw"/></svg></span> Reverse Proxy</h3>
<p>A reverse proxy egy „kapus", aki fogadja a beérkező kéréseket és továbbítja a megfelelő alkalmazáshoz. Emellett kezeli a HTTPS titkosítást is.</p>
<div class="network-flow">
<div class="flow-node">
<div class="node-icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-globe"/></svg></div>
<div class="node-label">Internet</div>
</div>
<div class="flow-arrow"></div>
<div class="flow-node">
<div class="node-icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-lock"/></svg></div>
<div class="node-label">Reverse Proxy</div>
<div class="node-tech">Traefik / Nginx</div>
</div>
<div class="flow-arrow"></div>
<div class="flow-node">
<div class="node-icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-package"/></svg></div>
<div class="node-label">Alkalmazás</div>
</div>
</div>
<ul class="feature-list">
<li><strong>Traefik</strong> automatikus SSL, dinamikus konfiguráció</li>
<li><strong>Nginx Proxy Manager</strong> egyszerű webes felület</li>
<li><strong>Caddy</strong> minimalista, automatikus HTTPS</li>
</ul>
</div>
<div class="info-card">
<h3><span class="icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-shield"/></svg></span> Tűzfal és védelem</h3>
<ul class="feature-list">
<li><strong>UFW tűzfal</strong> csak a szükséges portok nyitva</li>
<li><strong>Fail2ban</strong> brute-force támadások blokkolása</li>
<li><strong>Geo-blocking</strong> kérések szűrése földrajzi hely alapján</li>
<li><strong>WireGuard VPN</strong> biztonságos, titkosított távoli elérés</li>
</ul>
</div>
</div>
</section>
<!-- Tárolás -->
<section class="content-section" id="tarolas">
<div class="container">
<div class="section-header">
<h2>Tárolás és <span>adatvédelem</span></h2>
<p>Hol és hogyan tárold az adataidat?</p>
</div>
<div class="comparison-grid">
<div class="comparison-card">
<div class="card-icon"><svg class="ico-tile" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-zap"/></svg></div>
<h3>SSD (NVMe/SATA)</h3>
<div class="subtitle">Gyors tárolás</div>
<ul class="feature-list">
<li>Operációs rendszer</li>
<li>Adatbázisok</li>
<li>Alkalmazások</li>
</ul>
</div>
<div class="comparison-card">
<div class="card-icon"><svg class="ico-tile" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-database"/></svg></div>
<h3>HDD</h3>
<div class="subtitle">Nagy kapacitás</div>
<ul class="feature-list">
<li>Média könyvtár</li>
<li>Fotó archívum</li>
<li>Mentések</li>
</ul>
</div>
</div>
<div class="info-card" style="margin-top: 32px;">
<h3><span class="icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-rotate-cw"/></svg></span> Kétszintű mentés így védjük az adataidat</h3>
<p>A Felhom dobozon minden éjjel készül egy <strong>helyi másodpéldány</strong> egy második meghajtóra, és egy <strong>titkosított másolat egy távoli tárhelyre</strong>. A két szint együtt véd: a helyi gyors, a távoli túléli azt is, ha a doboznak fizikailag baja esik.</p>
<div class="warning-box">
<p><svg class="ico" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-triangle-alert"/></svg> <strong>A több lemez önmagában nem mentés!</strong> A RAID-szerű megoldások a hardver meghibásodás ellen védenek, de nem a véletlen törlés vagy a zsarolóvírus ellen. Ezért nálunk a mentés mindig külön szinten van, nem a lemezekben.</p>
</div>
</div>
</div>
</section>
<!-- Hardver konfigurációk -->
<section class="content-section alt-bg" id="hardver">
<div class="container">
<div class="section-header">
<h2>Hardver <span>konfigurációk</span></h2>
<p>Milyen gépre van szükséged? Néhány példa konfiguráció</p>
</div>
<div class="hardware-grid">
<div class="hardware-card">
<div class="hardware-card-header">
<div class="hw-icon"><svg class="ico-tile" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-package"/></svg></div>
<h3>Mini PC + NAS</h3>
<div class="hw-subtitle">Kezdő / Otthoni</div>
</div>
<div class="hardware-card-body">
<p>Kompakt, halk, energiatakarékos megoldás.</p>
<ul class="spec-list">
<li><span class="spec-label">CPU</span><span class="spec-value">Intel N100</span></li>
<li><span class="spec-label">RAM</span><span class="spec-value">16-32 GB</span></li>
<li><span class="spec-label">SSD</span><span class="spec-value">256-512 GB</span></li>
<li><span class="spec-label">Fogyasztás</span><span class="spec-value">15-35W</span></li>
</ul>
<div class="price-range">
<div class="label">Becsült költség</div>
<div class="price">80.000 - 150.000 Ft</div>
</div>
</div>
</div>
<div class="hardware-card">
<div class="hardware-card-header">
<div class="hw-icon"><svg class="ico-tile" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-radio-tower"/></svg></div>
<h3>Tower szerver</h3>
<div class="hw-subtitle">Haladó / Családi</div>
</div>
<div class="hardware-card-body">
<p>Nagyobb teljesítmény és tárolókapacitás.</p>
<ul class="spec-list">
<li><span class="spec-label">CPU</span><span class="spec-value">Intel i5/i7</span></li>
<li><span class="spec-label">RAM</span><span class="spec-value">32-64 GB</span></li>
<li><span class="spec-label">Tárolás</span><span class="spec-value">4-8 TB</span></li>
<li><span class="spec-label">Fogyasztás</span><span class="spec-value">50-120W</span></li>
</ul>
<div class="price-range">
<div class="label">Becsült költség</div>
<div class="price">200.000 - 400.000 Ft</div>
</div>
</div>
</div>
<div class="hardware-card">
<div class="hardware-card-header">
<div class="hw-icon"><svg class="ico-tile" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-building-2"/></svg></div>
<h3>Rack szerver</h3>
<div class="hw-subtitle">Üzleti / igény szerint</div>
</div>
<div class="hardware-card-body">
<p>Ipari minőség, nagy megbízhatóság.</p>
<ul class="spec-list">
<li><span class="spec-label">CPU</span><span class="spec-value">Xeon / EPYC</span></li>
<li><span class="spec-label">RAM</span><span class="spec-value">64-256 GB ECC</span></li>
<li><span class="spec-label">Tárolás</span><span class="spec-value">8-24 bay</span></li>
<li><span class="spec-label">Extra</span><span class="spec-value">IPMI, red. PSU</span></li>
</ul>
<div class="price-range">
<div class="label">Becsült költség (használt)</div>
<div class="price">150.000 - 600.000 Ft</div>
</div>
</div>
</div>
</div>
<div class="info-card" style="margin-top: 48px;">
<h3><span class="icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-lightbulb"/></svg></span> Melyiket válaszd?</h3>
<div class="highlight-box">
<p><strong>Tanácsunk:</strong> Kezdj kicsiben! Egy jó mini PC elegendő a legtöbb otthoni igényhez, és később bővítheted. A rack szerver üzleti / igény szerinti konfiguráció — otthonra ritkán szükséges.</p>
</div>
</div>
</div>
</section>
<!-- CTA -->
<section class="cta-section">
<div class="container">
<h2>Nem vagy biztos, melyik <span>megoldás neked való?</span></h2>
<p>Beszéljük át az igényeidet, és segítünk megtalálni a tökéletes konfigurációt.</p>
<a href="/kapcsolat" class="cta-button">Kapcsolatfelvétel →</a>
<a href="/alkalmazasok" class="cta-button-secondary">Alkalmazások böngészése →</a>
</div>
</section>
</main>
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
</div>
</footer>
<script>
(function() {
var hamburger = document.getElementById('hamburger');
var navLinks = document.querySelector('.nav-links');
var overlay = document.getElementById('mobileOverlay');
var body = document.body;
if (!hamburger || !navLinks || !overlay) {
console.warn('[mobile-menu] Missing elements:', {
hamburger: !!hamburger,
navLinks: !!navLinks,
overlay: !!overlay
});
return;
}
function openMenu() {
hamburger.classList.add('is-active');
navLinks.classList.add('is-open');
overlay.classList.add('is-visible');
body.classList.add('menu-open');
hamburger.setAttribute('aria-expanded', 'true');
hamburger.setAttribute('aria-label', 'Menü bezárása');
}
function closeMenu() {
hamburger.classList.remove('is-active');
navLinks.classList.remove('is-open');
overlay.classList.remove('is-visible');
body.classList.remove('menu-open');
hamburger.setAttribute('aria-expanded', 'false');
hamburger.setAttribute('aria-label', 'Menü megnyitása');
}
hamburger.addEventListener('click', function() {
if (navLinks.classList.contains('is-open')) {
closeMenu();
} else {
openMenu();
}
});
overlay.addEventListener('click', closeMenu);
navLinks.querySelectorAll('a').forEach(function(link) {
link.addEventListener('click', closeMenu);
});
document.addEventListener('keydown', function(e) {
if (e.key === 'Escape' && navLinks.classList.contains('is-open')) {
closeMenu();
}
});
window.addEventListener('resize', function() {
if (window.innerWidth > 900 && navLinks.classList.contains('is-open')) {
closeMenu();
}
});
})();
</script>
</body>
</html>
================================================================================
Summary: 13 files included, 218 skipped
================================================================================