PageSourceSearch

https://www.cloud-tec.nl/cybersecurity

html cloud-tec.nl collected 2026-10-09 22:55:52 UTC 48,264 bytes, 299 lines download raw bytes

1<!doctype html>
2<html lang="nl">
3  <head>
4    <meta charset="UTF-8" />
5    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6    <link rel="icon" type="image/png" href="/media/cloud-tec-logo.png" />
7    <link rel="preconnect" href="https://fonts.googleapis.com" />
8    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
vendor: 141 bytes, lines 8-9
8
9    <script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="5e9437ed42af08713a5e05ef-|49"></script>
9<link
10      rel="preload"
11      as="style"
12      href="https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap"
13      onload="this.onload=null;this.rel='stylesheet'"
14    />
15    <noscript>
16      <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap" />
17    </noscript>
18    
18<script type="5e9437ed42af08713a5e05ef-module" crossorigin src="/assets/index-vbgLSXs8.js"></script>
18
19    <link rel="stylesheet" crossorigin href="/assets/index-Cn3TxURV.css">
20    
20<script type="5e9437ed42af08713a5e05ef-module">
21window.onerror = (message, source, lineno, colno, errorObj) => {
22	const errorDetails = errorObj ? JSON.stringify({
23		name: errorObj.name,
24		message: errorObj.message,
25		stack: errorObj.stack,
26		source,
27		lineno,
28		colno,
29	}) : null;
30
31	window.parent.postMessage({
32		type: 'horizons-runtime-error',
33		message,
34		error: errorDetails
35	}, '*');
36};
37</script>
37
38    
38<script type="5e9437ed42af08713a5e05ef-module">
39const observer = new MutationObserver((mutations) => {
40	for (const mutation of mutations) {
41		for (const addedNode of mutation.addedNodes) {
42			if (
43				addedNode.nodeType === Node.ELEMENT_NODE &&
44				(
45					addedNode.tagName?.toLowerCase() === 'vite-error-overlay' ||
46					addedNode.classList?.contains('backdrop')
47				)
48			) {
49				handleViteOverlay(addedNode);
50			}
51		}
52	}
53});
54
55observer.observe(document.documentElement, {
56	childList: true,
57	subtree: true
58});
59
60function handleViteOverlay(node) {
61	if (!node.shadowRoot) {
62		return;
63	}
64
65	const backdrop = node.shadowRoot.querySelector('.backdrop');
66
67	if (backdrop) {
68		const overlayHtml = backdrop.outerHTML;
69		const parser = new DOMParser();
70		const doc = parser.parseFromString(overlayHtml, 'text/html');
71		const messageBodyElement = doc.querySelector('.message-body');
72		const fileElement = doc.querySelector('.file');
73		const messageText = messageBodyElement ? messageBodyElement.textContent.trim() : '';
74		const fileText = fileElement ? fileElement.textContent.trim() : '';
75		const error = messageText + (fileText ? ' File:' + fileText : '');
76
77		window.parent.postMessage({
78			type: 'horizons-vite-error',
79			error,
80		}, '*');
81	}
82}
83</script>
83
84    
84<script type="5e9437ed42af08713a5e05ef-module">
85const originalConsoleError = console.error;
86const MATCH_LINE_COL_REGEX = /:(\d+):(\d+)\)?\s*$/; // regex to match the :lineNum:colNum
87const MATCH_AT_REGEX = /^\s*at\s+(?:async\s+)?(?:.*?\s+)?\(?/; // regex to remove the 'at' keyword and any 'async' or function name
88const MATCH_PATH_REGEX = /^\//; // regex to remove the leading slash
89
90function parseStackFrameLine(line) {
91	const lineColMatch = line.match(MATCH_LINE_COL_REGEX);
92	if (!lineColMatch) return null;
93	const [, lineNum, colNum] = lineColMatch;
94	const suffix = `:${lineNum}:${colNum}`;
95	const idx = line.lastIndexOf(suffix);
96	if (idx === -1) return null;
97	const before = line.substring(0, idx);
98	const path = before.replace(MATCH_AT_REGEX, '').trim();
99	
100	if (!path) return null;
101
102	try {
103		const pathname = new URL(path).pathname;
104		const filePath = pathname.replace(MATCH_PATH_REGEX, '') || pathname;
105		return `${filePath}:${lineNum}:${colNum}`;
106	} catch (e) {
107		const filePath = path.replace(MATCH_PATH_REGEX, '') || path;
108		return `${filePath}:${lineNum}:${colNum}`;
109	}
110}
111
112function getFilePathFromStack(stack, skipFrames = 0) {
113	if (!stack || typeof stack !== 'string') return null;
114	const lines = stack.split('\n').slice(1);
115
116	const frames = lines.map(line => parseStackFrameLine(line.replace(/\r$/, ''))).filter(Boolean);
117
118	return frames[skipFrames] ?? null;
119}
120
121function formatConsoleMessage(args, skipStackFrames = 1) {
122	let messageString = '';
123	let filePath = null;
124
125	for (let i = 0; i < args.length; i++) {
126		const arg = args[i];
127		if (arg instanceof Error) {
128			filePath = getFilePathFromStack(arg.stack, 0);
129			messageString = `${arg.name}: ${arg.message}`;
130			if (filePath) {
131				messageString = `${messageString} at ${filePath}`;
132			}
133			break;
134		}
135	}
136
137	if (!messageString) {
138		messageString = args.map(arg => typeof arg === 'object' ? JSON.stringify(arg) : String(arg)).join(' ');
139		const stack = new Error().stack;
140		filePath = getFilePathFromStack(stack, skipStackFrames);
141		if (filePath) {
142			messageString = `${messageString} at ${filePath}`;
143		}
144	}
145
146	return messageString;
147}
148
149console.error = function(...args) {
150	originalConsoleError.apply(console, args);
151
152	window.parent.postMessage({
153		type: 'horizons-console-error',
154		error: formatConsoleMessage(args, 1)
155	}, '*');
156};
157
158const originalConsoleWarn = console.warn;
159
160console.warn = function(...args) {
161	originalConsoleWarn.apply(console, args);
162
163	window.parent.postMessage({
164		type: 'horizons-console-warn',
165		warning: formatConsoleMessage(args, 1)
166	}, '*');
167};
168</script>
168
169    
169<script type="5e9437ed42af08713a5e05ef-module">
170// Prevents authentication failures (PB returns 400) from crashing the app — use console.info, not console.error/PM2.
171// [urlPattern, bodyPattern] tuples; align with sandboxErrorUtils ERROR_BLACKLIST.
172const BENIGN_FETCH_ERRORS = [
173	[/hcgi\/platform\/api\/collections\/.*auth-with-password.*/i, /Failed to authenticate/i],
174	[/hcgi\/api\//i, /Insufficient credits/i],
175];
176
177function isBenignFetchError(url, body) {
178	return BENIGN_FETCH_ERRORS.some(([urlPattern, bodyPattern]) =>
179		urlPattern.test(url) && (!bodyPattern || bodyPattern.test(body)));
180}
181
182const PLATFORM_URL_PATTERN = /hcgi\/platform\//i;
183const VALIDATION_CODE_TEXT_PATTERN = /validation_/;
184
185function hasValidationCode(value) {
186	if (value == null) {
187		return false;
188	}
189	if (typeof value === 'string') {
190		return value.startsWith('validation_');
191	}
192	if (Array.isArray(value)) {
193		return value.some(hasValidationCode);
194	}
195	if (typeof value === 'object') {
196		return Object.values(value).some(hasValidationCode);
197	}
198	return false;
199}
200
201function isValidationFetchWarning(url, body) {
202	if (!PLATFORM_URL_PATTERN.test(url)) {
203		return false;
204	}
205	try {
206		return hasValidationCode(JSON.parse(body));
207	} catch {
208		return VALIDATION_CODE_TEXT_PATTERN.test(body);
209	}
210}
211
212const originalFetch = window.fetch;
213
214window.fetch = function(...args) {
215	const url = args[0] instanceof Request ? args[0].url : args[0];
216
217	// Skip WebSocket URLs
218	if (url.startsWith('ws:') || url.startsWith('wss:')) {
219		return originalFetch.apply(this, args);
220	}
221
222	return originalFetch.apply(this, args)
223		.then(async response => {
224			const contentType = response.headers.get('Content-Type') || '';
225
226			// Exclude HTML document responses
227			const isDocumentResponse =
228				contentType.includes('text/html') ||
229				contentType.includes('application/xhtml+xml');
230
231			if (!response.ok && !isDocumentResponse) {
232					const responseClone = response.clone();
233					const errorFromRes = await responseClone.text();
234					const requestUrl = response.url;
235					const errorMessage = `Fetch error from ${requestUrl}: ${errorFromRes}`;
236
237					if (isBenignFetchError(requestUrl, errorFromRes)) {
238						console.info(errorMessage);
239					} else if (isValidationFetchWarning(requestUrl, errorFromRes)) {
240						console.warn(errorMessage);
241					} else {
242						console.error(errorMessage);
243					}
244			}
245
246			return response;
247		})
248		.catch(error => {
249			if (!url.match(/.html?$/i)) {
250				// Cancelled in-flight fetch (e.g. preview reload) — not a server failure.
251				if (error?.name === 'AbortError') {
252					console.info(error);
253				} else {
254					console.error(error);
255				}
256			}
257
258			throw error;
259		});
260};
261</script>
261
262    
262<script type="5e9437ed42af08713a5e05ef-module">
263if (window.navigation && window.self !== window.top) {
264	window.navigation.addEventListener('navigate', (event) => {
265		const url = event.destination.url;
266
267		try {
268			const destinationUrl = new URL(url);
269			const destinationOrigin = destinationUrl.origin;
270			const currentOrigin = window.location.origin;
271
272			if (destinationOrigin === currentOrigin) {
273				return;
274			}
275		} catch (error) {
276			return;
277		}
278
279		window.parent.postMessage({
280			type: 'horizons-navigation-error',
281			url,
282		}, '*');
283	});
284}
285</script>
285
286      <title data-rh="true">Cybersecurity | Cloud-Tec</title>
287    <meta data-rh="true" name="description" content="Cybersecurity oplossingen en services voor bescherming van uw bedrijf. Voorkom dreigingen met onze robuuste beveiligingsdiensten."/><meta data-rh="true" property="og:type" content="website"/><meta data-rh="true" property="og:url" content="https://www.cloud-tec.nl/cybersecurity"/><meta data-rh="true" property="og:title" content="Cybersecurity Oplossingen | Cloud-Tec"/><meta data-rh="true" property="og:description" content="Cybersecurity oplossingen en services voor bescherming van uw bedrijf. Voorkom dreigingen met onze robuuste beveiligingsdiensten."/><meta data-rh="true" property="og:image" content="https://www.cloud-tec.nl/media/cloud-tec-logo.png"/><meta data-rh="true" name="twitter:card" content="summary_large_image"/><meta data-rh="true" name="twitter:url" content="https://www.cloud-tec.nl/cybersecurity"/><meta data-rh="true" name="twitter:title" content="Cybersecurity Oplossingen | Cloud-Tec"/><meta data-rh="true" name="twitter:description" content="Cybersecurity oplossingen en services voor bescherming van uw bedrijf. Voorkom dreigingen met onze robuuste beveiligingsdiensten."/><meta data-rh="true" name="twitter:image" content="https://www.cloud-tec.nl/media/cloud-tec-logo.png"/>
288    <link data-rh="true" rel="canonical" href="https://www.cloud-tec.nl/cybersecurity"/>
289    
289<script data-rh="true" type="application/ld+json">{"@context":"https://schema.org","@type":"Service","serviceType":"Cybersecurity","provider":{"@type":"Organization","name":"Cloud-Tec","url":"https://www.cloud-tec.nl/"},"description":"Cybersecurity oplossingen en services voor bescherming van uw bedrijf","areaServed":"NL"}</script>
289
290  </head>
291  <body>
292    <div id="root"><div class="min-h-screen flex flex-col bg-background"><header class="sticky top-0 z-50 w-full border-b bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/60"><div class="container mx-auto px-4 sm:px-6 lg:px-8"><div class="flex h-16 items-center justify-between"><a class="flex items-center gap-2 font-semibold text-xl hover:opacity-80 transition-opacity" href="/" data-discover="true"><img src="/media/cloud-tec-logo.webp" alt="Cloud-Tec logo" class="h-10 w-auto"/></a><div class="flex items-center gap-2"><nav class="hidden lg:flex items-center gap-1"><a class="px-4 py-2 rounded-lg text-sm font-medium transition-all duration-200 text-foreground/80 hover:text-foreground hover:bg-muted " href="/" data-discover="true">Home</a><a class="px-4 py-2 rounded-lg text-sm font-medium transition-all duration-200 text-foreground/80 hover:text-foreground hover:bg-muted " href="/over-ons" data-discover="true">Over ons</a><a class="px-4 py-2 rounded-lg text-sm font-medium transition-all duration-200 text-foreground/80 hover:text-foreground hover:bg-muted " href="/diensten" data-discover="true">Diensten</a><a class="px-4 py-2 rounded-lg text-sm font-medium transition-all duration-200 bg-accent text-accent-foreground " href="/cybersecurity" data-discover="true">Cybersecurity</a><a class="px-4 py-2 rounded-lg text-sm font-medium transition-all duration-200 text-foreground/80 hover:text-foreground hover:bg-muted " href="/cybersecurity-nieuws" data-discover="true">Nieuws</a><a class="px-4 py-2 rounded-lg text-sm font-medium transition-all duration-200 text-foreground/80 hover:text-foreground hover:bg-muted " href="/ai" data-discover="true">AI-oplossingen</a><a class="px-4 py-2 rounded-lg text-sm font-medium transition-all duration-200 text-foreground/80 hover:text-foreground hover:bg-muted " href="/partners" data-discover="true">Partners</a><a class="px-4 py-2 rounded-lg text-sm font-medium transition-all duration-200 text-foreground/80 hover:text-foreground hover:bg-muted " href="/contact" data-discover="true">Contact</a></nav><div class="cloudtec-language-switcher notranslate shrink-0" aria-label="Taal kiezen" data-nosnippet="true"><label class="sr-only" for="cloudtec-language">Taal kiezen</label><div class="relative"><span class="pointer-events-none absolute left-2 top-1/2 z-10 -translate-y-1/2"><svg viewBox="0 0 3 2" class="h-3.5 w-5 rounded-[2px]" aria-hidden="true"><rect width="3" height="2" fill="#fff"></rect><rect width="3" height="0.6667" fill="#ae1c28"></rect><rect y="1.3333" width="3" height="0.6667" fill="#21468b"></rect></svg></span><select id="cloudtec-language" class="h-8 w-[116px] rounded-lg border border-slate-200 bg-white py-1 pl-8 pr-1 text-xs font-medium text-slate-700 shadow-sm outline-none transition-colors hover:bg-slate-50 focus:border-blue-500 focus:ring-2 focus:ring-blue-500/20 sm:w-[126px] sm:pr-2 sm:text-[13px]"><option value="nl" selected="">Nederlands</option><option value="en">English</option></select></div><div class="gtranslate_wrapper hidden" aria-hidden="true"></div></div><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 hover:bg-accent hover:text-accent-foreground h-9 w-9 lg:hidden" aria-label="Menu"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu w-5 h-5"><line x1="4" x2="20" y1="12" y2="12"></line><line x1="4" x2="20" y1="6" y2="6"></line><line x1="4" x2="20" y1="18" y2="18"></line></svg></button></div></div></div></header><main class="flex-1"><section class="relative min-h-[85dvh] flex items-center justify-center overflow-hidden bg-[#0a0f1a]"><div class="absolute inset-0 z-0"><img src="/media/cloud-tec-cybersecurity-hero-2026.webp" alt="Cybersecurity en veilige cloudwerkplek op een moderne laptop" class="w-full h-full object-cover object-[70%_center] sm:object-center opacity-95" loading="eager" fetchPriority="high" decoding="async"/><div class="absolute inset-0 bg-gradient-to-r from-[#0a0f1a]/90 via-[#0a0f1
292a]/40 to-transparent"></div><div class="absolute inset-0 bg-gradient-to-t from-[#0a0f1a]/60 via-transparent to-transparent"></div></div><div class="container mx-auto px-4 sm:px-6 lg:px-8 relative z-10"><div class="max-w-3xl" style="opacity:0;transform:translateY(30px)"><div class="inline-flex items-center gap-2 px-3 py-1.5 rounded-full bg-primary/20 text-primary-foreground border border-primary/30 mb-8 backdrop-blur-sm"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield w-4 h-4"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><span class="text-sm font-medium tracking-wide uppercase">Next-Gen Protectie</span></div><h1 class="text-5xl md:text-6xl lg:text-7xl font-bold leading-tight mb-6 text-white" style="letter-spacing:-0.02em">CYBERSECURITY</h1><p class="text-xl md:text-2xl text-slate-300 mb-10 leading-relaxed max-w-2xl font-light">Cyberaanvallen worden steeds geavanceerder. Bescherm jouw waardevolle bedrijfsgegevens met de proactieve en allesomvattende security-oplossingen van Cloud-Tec B.V.</p><div class="flex flex-col sm:flex-row gap-4"><a class="inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 rounded-md h-14 px-8 text-base bg-primary hover:bg-primary/90 text-primary-foreground transition-all duration-200 shadow-lg shadow-primary/20" href="/contact" data-discover="true">Contact opnemen<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-2 w-5 h-5"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a><a class="inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 border shadow-sm hover:text-accent-foreground rounded-md h-14 px-8 text-base bg-transparent text-white border-slate-600 hover:bg-slate-800 transition-all duration-200" href="/contact?subject=offerte" data-discover="true">Offerte aanvragen</a></div></div></div></section><section class="py-24 bg-muted/30"><div class="container mx-auto px-4 sm:px-6 lg:px-8"><div class="text-center max-w-3xl mx-auto mb-16" style="opacity:0;transform:translateY(20px)"><h2 class="text-3xl md:text-4xl font-bold mb-6 text-foreground">Het moderne dreigingslandschap</h2><p class="text-lg text-muted-foreground leading-relaxed">Stilstand is achteruitgang, maar in de IT is stilstand ook gevaarlijk. Hackers zitten niet stil. Ontdek de grootste risico&#x27;s waar organisaties tegenwoordig mee te maken hebben.</p></div><div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 auto-rows-[minmax(200px,auto)]"><div class="bg-card border border-border/50 rounded-3xl p-8 flex flex-col justify-between group hover:shadow-xl hover:-translate-y-1 transition-all duration-300 col-span-1 md:col-span-2" style="opacity:0;transform:translateY(20px)"><div><div class="w-14 h-14 rounded-2xl bg-primary/10 flex items-center justify-center mb-6 group-hover:scale-110 transition-transform duration-300"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-lock w-7 h-7 text-primary"><rect width="18" height="11" x="3" y="11" rx="2" ry="2"></rect><path d="M7 11V7a5 5 0 0 1 10 0v4"></path></svg></div><h3 class="text-2xl font-bold mb-4 text-card-foreground">Ransomware</h3><p class="text-muted-foreground leading-relaxed text-lg">Gijzelsoftware versleutelt bedrijfsgegevens totdat er losgeld is betaald, wat leidt tot catastrofale stilstand en dataverlies.</p></div></div><div class="bg-card border border-border/50 rounded-3xl p-8 flex flex-col justify-between group hover:shadow-xl hover:-translate-y-1 transition-all duration-300 col-span-1" style="opacity:0;transform:translateY(20px)"><div>
292<div class="w-14 h-14 rounded-2xl bg-primary/10 flex items-center justify-center mb-6 group-hover:scale-110 transition-transform duration-300"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert w-7 h-7 text-primary"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg></div><h3 class="text-2xl font-bold mb-4 text-card-foreground">Phishing</h3><p class="text-muted-foreground leading-relaxed text-lg">Valse e-mails of berichten ontworpen om inloggegevens of gevoelige informatie van medewerkers te stelen.</p></div></div><div class="bg-card border border-border/50 rounded-3xl p-8 flex flex-col justify-between group hover:shadow-xl hover:-translate-y-1 transition-all duration-300 col-span-1" style="opacity:0;transform:translateY(20px)"><div><div class="w-14 h-14 rounded-2xl bg-primary/10 flex items-center justify-center mb-6 group-hover:scale-110 transition-transform duration-300"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database w-7 h-7 text-primary"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg></div><h3 class="text-2xl font-bold mb-4 text-card-foreground">Datalekken</h3><p class="text-muted-foreground leading-relaxed text-lg">Ongeautoriseerde toegang tot vertrouwelijke bedrijfs- of klantgegevens, met grote financiële en reputatieschade tot gevolg.</p></div></div><div class="bg-card border border-border/50 rounded-3xl p-8 flex flex-col justify-between group hover:shadow-xl hover:-translate-y-1 transition-all duration-300 col-span-1" style="opacity:0;transform:translateY(20px)"><div><div class="w-14 h-14 rounded-2xl bg-primary/10 flex items-center justify-center mb-6 group-hover:scale-110 transition-transform duration-300"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-user-x w-7 h-7 text-primary"><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"></path><circle cx="9" cy="7" r="4"></circle><line x1="17" x2="22" y1="8" y2="13"></line><line x1="22" x2="17" y1="8" y2="13"></line></svg></div><h3 class="text-2xl font-bold mb-4 text-card-foreground">Interne dreigingen</h3><p class="text-muted-foreground leading-relaxed text-lg">Risico&#x27;s van binnenuit, zoals onzorgvuldige medewerkers of gecompromitteerde accounts.</p></div></div><div class="bg-card border border-border/50 rounded-3xl p-8 flex flex-col justify-between group hover:shadow-xl hover:-translate-y-1 transition-all duration-300 col-span-1 md:col-span-1 lg:col-span-2" style="opacity:0;transform:translateY(20px)"><div><div class="w-14 h-14 rounded-2xl bg-primary/10 flex items-center justify-center mb-6 group-hover:scale-110 transition-transform duration-300"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-network w-7 h-7 text-primary"><rect x="16" y="16" width="6" height="6" rx="1"></rect><rect x="2" y="16" width="6" height="6" rx="1"></rect><rect x="9" y="2" width="6" height="6" rx="1"></rect><path d="M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3"></path><path d="M12 12V8"></path></svg></div><h3 class="text-2xl font-bold mb-4 text-card-foreground">DDoS-aanvallen</h3><p class="text-muted-foreground leading-relaxed text-lg">Overbelasting van systemen of netwerken waardoor deze tijdelijk onbruikbaar worden voor legitieme gebruikers.</p></div></div></div></div></section><section class="py-24 overflow-hidden"><div class="container mx-auto px-4 sm:px-6 lg:px-8 space-y-32"><div class="grid grid-cols-1 lg:grid-cols-2 gap-12 lg:gap-20 items-center"><div class="order-2 lg:order-1" style="opacity:0;transform:translateX(-30px)"><h2 class="text-3xl md:text-4xl font-bold mb-6 leading-tight">Geavanceerde netwerkbeveiliging</h2><p class="text-lg text-muted-foreground mb-8 leading-relaxed">
292Een sterk netwerk is de basis van een veilige IT-omgeving. Wij ontwerpen en implementeren robuuste firewalls en netwerkarchitecturen die ongeautoriseerde toegang blokkeren en dataverkeer beveiligen.</p><ul class="space-y-4 mb-8"><li class="flex items-center gap-3"><div class="w-6 h-6 rounded-full bg-primary/10 flex items-center justify-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-check w-4 h-4 text-primary"><circle cx="12" cy="12" r="10"></circle><path d="m9 12 2 2 4-4"></path></svg></div><span class="font-medium">Volledig beheerde firewalls</span></li><li class="flex items-center gap-3"><div class="w-6 h-6 rounded-full bg-primary/10 flex items-center justify-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-check w-4 h-4 text-primary"><circle cx="12" cy="12" r="10"></circle><path d="m9 12 2 2 4-4"></path></svg></div><span class="font-medium">Endpoint detection &amp; response (EDR)</span></li><li class="flex items-center gap-3"><div class="w-6 h-6 rounded-full bg-primary/10 flex items-center justify-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-check w-4 h-4 text-primary"><circle cx="12" cy="12" r="10"></circle><path d="m9 12 2 2 4-4"></path></svg></div><span class="font-medium">Geautomatiseerde back-ups</span></li><li class="flex items-center gap-3"><div class="w-6 h-6 rounded-full bg-primary/10 flex items-center justify-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-check w-4 h-4 text-primary"><circle cx="12" cy="12" r="10"></circle><path d="m9 12 2 2 4-4"></path></svg></div><span class="font-medium">Regelmatige kwetsbaarheidsscans</span></li></ul><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground py-2 h-12 px-6 group"><a class="flex items-center" href="/contact" data-discover="true">Adviesgesprek inplannen<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-2 w-4 h-4 transition-transform group-hover:translate-x-1"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></button></div><div class="order-1 lg:order-2 relative" style="opacity:0;transform:scale(0.95)"><div class="absolute inset-0 bg-gradient-to-tr from-primary/20 to-transparent rounded-3xl -m-4 -z-10 blur-2xl"></div><img src="/media/cloud-tec-cybersecurity-network-security.webp" alt="Geavanceerde netwerkbeveiliging met firewalls" class="w-full h-[500px] object-cover rounded-3xl shadow-2xl"/></div></div><div class="grid grid-cols-1 lg:grid-cols-2 gap-12 lg:gap-20 items-center"><div class="relative" style="opacity:0;transform:scale(0.95)"><div class="absolute inset-0 bg-gradient-to-tr from-secondary/50 to-transparent rounded-3xl -m-4 -z-10 blur-2xl"></div><img src="/media/cloud-tec-cybersecurity-soc.webp" alt="24/7 Security Operations Center monitoring" class="w-full h-[500px] object-cover rounded-3xl shadow-2xl"/></div><div style="opacity:0;transform:translateX(30px)"><h2 class="text-3xl md:text-4xl font-bold mb-6 leading-tight">Threat Monitoring &amp; Response</h2><p class="text-lg text-muted-foreground mb-6 leading-relaxed">Met behulp van geavanceerde AI en machine learning detecteren we afwijkende patronen voordat ze zich ontwikkelen tot ernstige incidenten.</p><p class="text-lg text-muted-foreground mb-8 leading-relaxed">Zodra er een dreiging wordt gesignaleerd, isoleert ons platform automatisch de getroffen componenten.</p><div class="grid grid-cols-2 gap-6 p-6 bg-muted rounded-2xl border border-border/50"><div><h4 class="text-4xl font-bold text-primary mb-1">99%</h4><span class="text-sm text-muted-foreground font-medium">Bedreigingen geblokkeerd</span></div><div><h4 class="text-4xl font-bold text-primary mb-1">&lt; 1u</h4><span class="text-sm text-muted-foreground font-medium">Gemiddelde responstijd</span></div></div></div></div></div></section><section class="py-24 bg-card border-y border-border/50"><div class="container mx-auto px-4 sm:px-6 lg:px-8"><div class="max-w-3xl mb-16" style="opacity:0;transform:translateY(20px)"><h2 class="text-3xl md:text-4xl font-bold mb-6">Onze 7-stappen beschermingsstrategie</h2><p class="text-lg text-muted-foreground">Cybersecurity is geen eenmalig project, maar een doorlopend proces. Cloud-Tec hanteert een bewezen methodiek om risico&#x27;s structureel te minimaliseren.</p></div><div class="flex flex-col gap-12 max-w-5xl mx-auto"><div class="flex gap-6 md:gap-10 group" style="opacity:0;transform:translateX(-20px)"><div class="hidden sm:block text-6xl md:text-7xl font-extrabold text-primary/10 tracking-tighter shrink-0 pt-2 transition-colors group-hover:text-primary/20">01</div><div><div class="flex items-center gap-4 mb-3"><div class="sm:hidden text-3xl font-extrabold text-primary/20">01</div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield w-6 h-6 text-primary"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><h3 class="text-2xl font-bold">Strikt Toegangsbeheer (Zero Trust)</h3></div><p class="text-lg text-muted-foreground leading-relaxed sm:pl-0 pl-12 max-w-3xl">Implementatie van Zero Trust architecturen met Multi-Factor Authenticatie (MFA) en strikte autorisatiecontroles. We zorgen ervoor dat alleen bevoegde personen toegang hebben tot specifieke systemen en data.</p></div></div><div class="flex gap-6 md:gap-10 group" style="opacity:0;transform:translateX(-20px)"><div class="hidden sm:block text-6xl md:text-7xl font-extrabold text-primary/10 tracking-tighter shrink-0 pt-2 transition-colors group-hover:text-primary/20">02</div><div><div class="flex items-center gap-4 mb-3"><div class="sm:hidden text-3xl font-extrabold text-primary/20">02</div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-refresh-cw w-6 h-6 text-primary"><path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path><path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"></path><path d="M8 16H3v5"></path></svg><h3 class="text-2xl font-bold">Patch management</h3></div><p class="text-lg text-muted-foreground leading-relaxed sm:pl-0 pl-12 max-w-3xl">Proactief beheer van software-updates en security patches. We zorgen ervoor dat besturingssystemen, applicaties en netwerkapparatuur altijd up-to-date zijn om bekende kwetsbaarheden te dichten.</p></div></div><div class="flex gap-6 md:gap-10 group" style="opacity:0;transform:translateX(-20px)"><div class="hidden sm:block text-6xl md:text-7xl font-extrabold text-primary/10 tracking-tighter shrink-0 pt-2 transition-colors group-hover:text-primary/20">03</div><div><div class="flex items-center gap-4 mb-3"><div class="sm:hidden text-3xl font-extrabold text-primary/20">03</div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-network w-6 h-6 text-primary"><rect x="16" y="16" width="6" height="6" rx="1"></rect><rect x="2" y="16" width="6" height="6" rx="1"></rect><rect x="9" y="2" width="6" height="6" rx="1"></rect><path d="M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3"></path><path d="M12 12V8"></path></svg><h3 class="text-2xl font-bold">Netwerkbeveiliging</h3></div><p class="text-lg text-muted-foreground leading-relaxed sm:pl-0 pl-12 max-w-3xl">
292Robuuste verdediging van je infrastructuur door middel van geavanceerde firewalls, Intrusion Detection Systems (IDS) en Intrusion Prevention Systems (IPS) om ongeautoriseerd netwerkverkeer te blokkeren.</p></div></div><div class="flex gap-6 md:gap-10 group" style="opacity:0;transform:translateX(-20px)"><div class="hidden sm:block text-6xl md:text-7xl font-extrabold text-primary/10 tracking-tighter shrink-0 pt-2 transition-colors group-hover:text-primary/20">04</div><div><div class="flex items-center gap-4 mb-3"><div class="sm:hidden text-3xl font-extrabold text-primary/20">04</div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-key w-6 h-6 text-primary"><path d="m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4"></path><path d="m21 2-9.6 9.6"></path><circle cx="7.5" cy="15.5" r="5.5"></circle></svg><h3 class="text-2xl font-bold">Geavanceerde Encryptie &amp; Data Protection</h3></div><p class="text-lg text-muted-foreground leading-relaxed sm:pl-0 pl-12 max-w-3xl">We beveiligen gevoelige bedrijfsinformatie zowel in rust (at rest) als tijdens verzending (in transit) met ijzersterke encryptie, zodat data onleesbaar is voor onbevoegden.</p></div></div><div class="flex gap-6 md:gap-10 group" style="opacity:0;transform:translateX(-20px)"><div class="hidden sm:block text-6xl md:text-7xl font-extrabold text-primary/10 tracking-tighter shrink-0 pt-2 transition-colors group-hover:text-primary/20">05</div><div><div class="flex items-center gap-4 mb-3"><div class="sm:hidden text-3xl font-extrabold text-primary/20">05</div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database w-6 h-6 text-primary"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><h3 class="text-2xl font-bold">Back-up en herstel</h3></div><p class="text-lg text-muted-foreground leading-relaxed sm:pl-0 pl-12 max-w-3xl">Regelmatige, geautomatiseerde back-ups en geteste herstelprocedures (disaster recovery). Zo garanderen we dat je bedrijfsgegevens snel en veilig hersteld kunnen worden na een incident of dataverlies.</p></div></div><div class="flex gap-6 md:gap-10 group" style="opacity:0;transform:translateX(-20px)"><div class="hidden sm:block text-6xl md:text-7xl font-extrabold text-primary/10 tracking-tighter shrink-0 pt-2 transition-colors group-hover:text-primary/20">06</div><div><div class="flex items-center gap-4 mb-3"><div class="sm:hidden text-3xl font-extrabold text-primary/20">06</div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open w-6 h-6 text-primary"><path d="M12 7v14"></path><path d="M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z"></path></svg><h3 class="text-2xl font-bold">Security Awareness Training</h3></div><p class="text-lg text-muted-foreground leading-relaxed sm:pl-0 pl-12 max-w-3xl">Doorlopende trainingen en phishing-simulaties voor medewerkers om menselijke fouten te minimaliseren en het bewustzijn rondom cyberdreigingen binnen de organisatie te vergroten.</p></div></div><div class="flex gap-6 md:gap-10 group" style="opacity:0;transform:translateX(-20px)"><div class="hidden sm:block text-6xl md:text-7xl font-extrabold text-primary/10 tracking-tighter shrink-0 pt-2 transition-colors group-hover:text-primary/20">07</div><div><div class="flex items-center gap-4 mb-3"><div class="sm:hidden text-3xl font-extrabold text-primary/20">07</div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text w-6 h-6 text-primary"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"></path><path d="M14 2v4a2 2 0 0 0 2 2h4"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg><h3 class="text-2xl font-bold">Beveiligingsbeleid</h3></div><p class="text-lg text-muted-foreground leading-relaxed sm:pl-0 pl-12 max-w-3xl">Ontwikkeling en handhaving van heldere security policies en procedures. We creëren een strategisch raamwerk dat aansluit bij de geldende wet- en regelgeving, zoals de AVG/GDPR.</p></div></div></div></div></section><section class="py-20 bg-muted/30 border-y border-border/50"><div class="container mx-auto px-4 sm:px-6 lg:px-8"><div class="max-w-5xl mx-auto rounded-3xl border border-border/60 bg-card p-8 shadow-sm md:p-12" style="opacity:0;transform:translateY(20px)"><div class="flex flex-col items-start gap-8 md:flex-row md:items-center md:justify-between"><div class="flex max-w-3xl items-start gap-5"><div class="hidden h-14 w-14 shrink-0 items-center justify-center rounded-2xl bg-primary/10 sm:flex"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-newspaper h-7 w-7 text-primary" aria-hidden="true"><path d="M4 22h16a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v16a2 2 0 0 1-2 2Zm0 0a2 2 0 0 1-2-2v-9c0-1.1.9-2 2-2h2"></path><path d="M18 14h-8"></path><path d="M15 18h-5"></path><path d="M10 6h8v4h-8V6Z"></path></svg></div><div><p class="mb-2 text-sm font-semibold uppercase tracking-[0.14em] text-primary">Blijf geïnformeerd</p><h2 class="mb-4 text-3xl font-bold md:text-4xl">Het laatste cybersecurity nieuws</h2><p class="text-lg leading-relaxed text-muted-foreground">Bekijk actuele berichten van Security.NL en recente beveiligingsadviezen van het NCSC in één overzicht.</p></div></div><a class="inline-flex items-center justify-center gap-2 whitespace-nowrap text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 bg-primary text-primary-foreground shadow hover:bg-primary/90 h-10 rounded-md px-8 group shrink-0" href="/cybersecurity-nieuws" data-discover="true">Bekijk het nieuws<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-2 h-5 w-5 transition-transform group-hover:translate-x-1"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></div></div></div></section><section class="py-20 bg-gradient-to-br from-primary/5 to-secondary/5 border-y border-border/50"><div class="container mx-auto px-4 sm:px-6 lg:px-8"><div class="max-w-3xl mx-auto text-center" style="opacity:0;transform:translateY(20px)"><h2 class="text-3xl md:text-4xl font-bold mb-6">Cybersecurity en AI: een sterke combinatie</h2><p class="text-lg text-muted-foreground mb-8 leading-relaxed">Moderne bedrijven willen AI inzetten voor productiviteit, maar niet ten koste van veiligheid. Ontdek hoe je Microsoft Copilot veilig en verantwoord kunt implementeren met de juiste security-maatregelen.</p><a class="inline-flex items-center justify-center gap-2 whitespace-nowrap text-sm font-medium focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 bg-primary text-primary-foreground shadow hover:bg-primary/90 h-10 rounded-md px-8 transition-all duration-200 active:scale-[0.98]" href="/ai" data-discover="true">Meer over veilige AI-implementatie<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-2 w-5 h-5"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></div></div></section><section class="py-24 bg-primary text-primary-foreground relative overflow-hidden"><div class="absolute inset-0 bg-black/10 mix-blend-multiply pointer-events-none"></div><div class="container mx-auto px-4 sm:px-6 lg:px-8 relative z-10 text-center"><div class="max-w-3xl mx-auto" style="opacity:0;transform:translateY(20px)"><h2 class="text-4xl font-bold mb-6 text-balance">Neem de veiligheid van je data serieus</h2>
292<p class="text-xl text-primary-foreground/90 mb-10 leading-relaxed">Voorkom dat jouw organisatie het volgende slachtoffer wordt. Plan een vrijblijvende security audit in en ontdek direct waar jouw zwakke plekken zitten.</p><div class="flex flex-col sm:flex-row gap-4 justify-center"><a class="inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 shadow rounded-md h-14 px-8 bg-white text-primary hover:bg-white/90 text-lg transition-all duration-200" href="/contact" data-discover="true">Contact opnemen</a><a class="inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 rounded-md h-14 px-8 text-base bg-blue-600 hover:bg-blue-700 text-white transition-all duration-200 shadow-lg shadow-blue-600/30" href="/contact?subject=offerte" data-discover="true">Offerte aanvragen</a></div></div></div></section></main><footer id="site-footer" class="bg-secondary text-secondary-foreground border-t"><div class="container mx-auto px-4 sm:px-6 lg:px-8 pt-12 pb-24 lg:pb-12"><div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-8"><div><img src="/media/cloud-tec-logo.webp" alt="Cloud-Tec logo" class="h-9 w-auto mb-4"/><p class="text-secondary-foreground/80 leading-relaxed">Professionele IT-oplossingen voor moderne bedrijven. Veilig, flexibel en innovatief.</p></div><div><p class="font-semibold mb-4">Snelle links</p><nav class="flex flex-col gap-2"><a class="text-secondary-foreground/80 hover:text-secondary-foreground transition-colors" href="/" data-discover="true">Home</a><a class="text-secondary-foreground/80 hover:text-secondary-foreground transition-colors" href="/over-ons" data-discover="true">Over ons</a><a class="text-secondary-foreground/80 hover:text-secondary-foreground transition-colors" href="/diensten" data-discover="true">Diensten</a><a class="text-secondary-foreground/80 hover:text-secondary-foreground transition-colors" href="/cybersecurity" data-discover="true">Cybersecurity</a><a class="text-secondary-foreground/80 hover:text-secondary-foreground transition-colors" href="/cybersecurity-nieuws" data-discover="true">Cybersecurity Nieuws</a><a class="text-secondary-foreground/80 hover:text-secondary-foreground transition-colors" href="/ai" data-discover="true">AI-oplossingen</a><a class="text-secondary-foreground/80 hover:text-secondary-foreground transition-colors" href="/partners" data-discover="true">Partners</a><a class="text-secondary-foreground/80 hover:text-secondary-foreground transition-colors" href="/contact" data-discover="true">Contact</a></nav></div><div><p class="font-semibold mb-4">Contact</p><div class="flex flex-col gap-3"><a href="/cdn-cgi/l/email-protection#8fe6e1e9e0cfece3e0faeba2fbeaeca1e1e3" class="flex items-center gap-2 text-secondary-foreground/80 hover:text-secondary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mail w-4 h-4"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg><span><span class="__cf_email__" data-cfemail="0861666e67486b64677d6c257c6d6b266664">[email&#160;protected]</span></span></a><a href="tel:+31204230333" class="flex items-center gap-2 text-secondary-foreground/80 hover:text-secondary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-phone w-4 h-4"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg><span>020-4230333</span></a><a href="tel:+31204275221" class="flex items-center gap-2 text-secondary-foreground
292/80 hover:text-secondary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-phone w-4 h-4"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg><span><span class="font-medium text-secondary-foreground">24/7 AI-Helpdesk:</span> 020-4275221</span></a></div></div><div><p class="font-semibold mb-4">Bedrijfsinformatie</p><dl class="flex flex-col gap-2 text-secondary-foreground/80"><div class="flex gap-2"><dt class="font-medium text-secondary-foreground">KvK:</dt><dd>88307875</dd></div><div class="flex gap-2"><dt class="font-medium text-secondary-foreground">BTW:</dt><dd>NL864573741B01</dd></div></dl></div></div><div class="border-t border-secondary-foreground/10 mt-8 pt-8 grid grid-cols-1 md:grid-cols-[1fr_auto_1fr] items-center gap-4"><p class="order-2 text-center text-sm text-secondary-foreground/70 md:order-1 md:justify-self-start md:text-left">© <!-- -->2026<!-- --> Cloud-Tec B.V. Alle rechten voorbehouden.</p><nav aria-label="Juridische informatie" class="order-1 flex flex-wrap justify-center gap-x-6 gap-y-2 text-center md:order-2"><a class="text-sm text-secondary-foreground/70 hover:text-secondary-foreground transition-colors" href="/privacy" data-discover="true">Privacy Policy</a><a class="text-sm text-secondary-foreground/70 hover:text-secondary-foreground transition-colors" href="/terms" data-discover="true">Algemene Voorwaarden</a></nav><div aria-hidden="true" class="hidden md:block md:order-3"></div></div></div></footer></div><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section></div>
293    <!-- Cloudflare Web Analytics -->
vendor: 113 bytes, lines 293-294
293
294    <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
vendor: 98 bytes, line 294
294<script defer src="https://static.cloudflareinsights.com/beacon.min.js" data-cf-beacon='{"token":"
29447be8f9e0e784589b2c1a96c74f8e8d5
vendor: 66 bytes, lines 294-295
294"}' type="5e9437ed42af08713a5e05ef-text/javascript"></script>
295    
295<!-- End Cloudflare Web Analytics -->
296    <!-- Cloudflare laadt de AI-assistent alleen in toegestane landen. -->
297    
297<script src="/api/elevenlabs-widget?v=2" defer type="5e9437ed42af08713a5e05ef-text/javascript"></script>
vendor: 145 bytes, lines 297-298
297
298  <script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="5e9437ed42af08713a5e05ef-|49" defer></script>
298</body>
299</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.