PageSourceSearch

https://www.sgsw.ch/

html sgsw.ch collected 2026-10-02 04:53:22 UTC 108,604 bytes, 2,918 lines download raw bytes

1<!DOCTYPE html>
2
3<!-- live_stsg_internet_nlb32-7  -->
4
5
6
7
8
9
10
11
12	
13		<html prefix="fb: http://ogp.me/ns/fb# og: http://ogp.me/ns#" xml:lang="de" lang="de">
14			
15
16
17	
18
19
20
21	
22
23
24
25
26
27<head>
28	<title>St.Galler Stadtwerke</title>
29	
30	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
31	<meta http-equiv="Content-Language" content="de" />
32	
33	
34		<!-- START of Swiftype specific Meta Tags -->
35		<meta class="swiftype" name="title" data-type="string" content="St.Galler Stadtwerke" />
36		<meta class="swiftype" name="type" data-type="enum" content="Inhaltsseite" />
37		<meta class="swiftype" name="domain" data-type="string" content="www.sgsw.ch" />
38		<meta class="swiftype" name="published_at" data-type="date" content="2026-08-26" />
39		
40		
41		
42		<!-- END of Swiftype specific Meta Tags -->
43	
44	
45	
46		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
47		<meta name="apple-mobile-web-app-capable" content="yes" /><meta name="apple-mobile-web-app-title" content="sg.ch" />
48	    <!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><![endif]-->
49	
50	
51	<meta name="description" content="Die St.Galler Stadtwerke sind der zuverlässige Partner für die Versorgung der Stadt St.Gallen mit Energie, Wasser und Glasfasern."/>
52	<meta name="keywords" content="Energie, Strom, Elektrizität, Wasser, Gas, Erdgas, Biogas, Wärme, Glasfaser, Mobilität, Kundendienst, Telecom, sgsw, St.Galler, Stadtwerke, sgsw"/>
53	
54	<link rel="canonical" href="https://www.sgsw.ch/home.html"/>
55	
56	<meta http-equiv="last_modified" content="2026-08-26"/>
57	<meta name="modified" content="2026-08-26"/>
58	<meta http-equiv="created" content="2026-08-26"/>
59	<meta name="created" content="2026-08-26"/>
60	
61	
62
63	
64	
65    	<meta name="facebook-domain-verification" content="wti3cerg6yiq7yycx5pfn26z2u1xw3" />
66	
67	
68	
69  	
70  	
71  	<meta name="format-detection" content="telephone=no" />
72	
73	
74	
75
76	
77    
78
79
80	
81
82
83
84	<link href="/apps/core/docroot/styles/footable.css" rel="stylesheet" media="all" type="text/css"/>
85
86	<link href="/apps/core/docroot/styles/slick.css" rel="stylesheet" media="all" type="text/css"/>
87
88	<link href="/apps/core/docroot/styles/slick-theme_sgsw.css" rel="stylesheet" media="all" type="text/css"/>
89
90	<link href="/apps/apps/stsg/clientlibs/stsgFonts/fontawesomepro/css/fontawesome.css" rel="stylesheet" media="all" type="text/css"/>
91
92	<link href="/apps/apps/stsg/clientlibs/stsgFonts/fontawesomepro/css/light.css" rel="stylesheet" media="all" type="text/css"/>
93
94	<link href="/apps/apps/stsg/clientlibs/stsgFonts/fontawesomepro/css/regular.css" rel="stylesheet" media="all" type="text/css"/>
95
96	<link href="/apps/apps/stsg/clientlibs/stsgFonts/fontawesomepro/css/brands.css" rel="stylesheet" media="all" type="text/css"/>
97
98	<link href="/apps/apps/stsg/clientlibs/stsgFonts/fontawesomepro/css/solid.css" rel="stylesheet" media="all" type="text/css"/>
99
100	<link href="/apps/core/docroot/styles/sgsw_onlinewelt_bootstrap_theme.css" rel="stylesheet" media="all" type="text/css"/>
101
102	<link href="/apps/core/docroot/styles/sgsw_onlinewelt_bootstrap.css" rel="stylesheet" media="all" type="text/css"/>
103
104	<link href="/apps/core/docroot/styles/stadtsg_fonts.css" rel="stylesheet" media="all" type="text/css"/>
105
106	<link href="/apps/core/docroot/styles/bootstrap-datepicker.min.css" rel="stylesheet" media="all" type="text/css"/>
107
108	<link href="/apps/apps/stsg/clientlibs/stsgLibs/css/datatables.min.css" rel="stylesheet" media="all" type="text/css"/>
109
110	<link href="/apps/apps/stsg/clientlibs/stsgLibs/css/jquery.dataTables.yadcf.css" rel="stylesheet" media="all" type="text/css"/>
111
112	<link href="/apps/core/docroot/styles/sgsw_onlinewelt_formate.css" rel="stylesheet" media="all" type="text/css"/>
113
114	<link href="/apps/core/docroot/styles/sgsw_onlinewelt_content.css" rel="stylesheet" media="all" type="text/css"/>
115
116	<link href="/apps/core/docroot/styles/sgsw_onlinewelt_responsive.css" rel="stylesheet" media="all" type="text/css"/>
117
118	<link href="/apps/core/docroot/styles/sgsw_onlinewelt_blog.css" rel="stylesheet" media="all" type="text/css"/>
119
120	<link href="/apps/apps/stsg/clientlibs/stsgLibs/css/plyr.css" rel="stylesheet" media="all" type="text/css"/>
121
122	<link href="/apps/core/docroot/styles/swiftype_custom.css" rel="stylesheet" media="all" type="text/css"/>
123
124	<link href="/apps/core/docroot/styles/swiftype_custom_sgsw.css" rel="stylesheet" media="all" type="text/css"/>
125
126	<link href="/apps/core/docroot/styles/serper_search.css" rel="stylesheet" media="all" type="text/css"/>
127
128	<link href="/apps/core/docroot/styles/sgsw_onlinewelt_author.css" rel="stylesheet" media="all" type="text/css"/>
129
130
131	
132
133
134	<!--[if lte IE 5.5999]><link rel="stylesheet" href="/apps/core/docroot/styles/ie5.css" media="screen" type="text/css" /><![endif]-->
135
136
137	<link href="/apps/core/docroot/styles/sgsw_onlinewelt_print.css" rel="stylesheet" media="print" type="text/css"/>
138
139
140    
141    
142
143
144 
145	
146
147
148	
149	
150	
151		
152	
153
154  
155
156	<link rel="SHORTCUT ICON" href="/apps/core/docroot/images/favicons/sgsw.ico" type="image/vnd.microsoft.icon"/>
157	
158	<!-- CSRF Security -->
159	
159<script src="/etc.clientlibs/clientlibs/granite/jquery/granite/csrf.js"></script>
159
160
161	
162	
163		
163<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/jquery-3.7.1.min.js"></script>
163
164	
165		
165<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/jquery-migrate-3.5.2.min.js"></script>
165
166	
167		
167<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/bootstrap-datepicker.min.js"></script>
167
168	
169		
169<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/bootstrap-datepicker.de.js"></script>
169
170	
171		
171<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/sgsw_onlinewelt_preload.js"></script>
171
172	
173		
173<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/jquery.footable.js"></script>
173
174	
175		
175<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/slick.js"></script>
175
176	
177		
177<script language="javascript" type="text/javascript" src="/apps/apps/stsg/clientlibs/stsgLibs/js/plyr.js"></script>
177
178	
179		
179<script language="javascript" type="text/javascript" src="/apps/apps/stsg/clientlibs/stsgLibs/js/shariff.min.js"></script>
179
180	
181		
181<script language="javascript" type="text/javascript" src="/apps/apps/stsg/clientlibs/stsgLibs/js/datatables.min.js"></script>
181
182	
183		
183<script language="javascript" type="text/javascript" src="/apps/apps/stsg/clientlibs/stsgLibs/js/jquery.dataTables.yadcf.js"></script>
183
184	
185		
185<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/jquery.slimscroll.min.js"></script>
185
186	
187		
187<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/modernizr-2.6.1.min.js"></script>
187
188	
189		
189<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/sgsw_onlinewelt_bootstrap.js"></script>
189
190	
191		
191<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/sgsw_onlinewelt_blog.js"></script>
191
192	
193		
193<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/jquery.validate.js"></script>
193
194	
195		
195<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/Chart.bundle.min.js"></script>
195
196	
197		
197<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/chartjs-plugin-datalabels.min.js"></script>
197
198	
199		
199<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/chartjs-plugin-deferred.min.js"></script>
199
200	
201		
201<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/formConditionalVisibility.js"></script>
201
202	
203		
203<script language="javascript" type="text/javascript" src="/apps/core/docroot/js/sgsw_onlinewelt_postload.js"></script>
203
204	
205	<!-- Javascripts welche nur fuer responsive design verwendet werden  -->
206	
207		
208	
209	
210		<!--[if lt IE 9]>
210<script src="/apps/core/docroot/js/html5shiv.min.js"></script>
210<![endif]-->
211	
212		<!--[if lt IE 9]>
212<script src="/apps/core/docroot/js/respond.min.js"></script>
212<![endif]-->
213	
214	
215	
216	
217	
218	
219	
220		<!-- Google Tag Manager -->
221<script>
vendor: 331 bytes, lines 221-225
221(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
222new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
223j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
224'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
225})(window,document,'script','dataLayer','
225GTM-5RK8B4F
vendor: 3 bytes, line 225
225');
225</script>
225
226<!-- End Google Tag Manager -->
227
228<!-- Meta Pixel Code -->
229<script>
vendor: 408 bytes, lines 229-238
229
230!function(f,b,e,v,n,t,s)
231{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
232n.callMethod.apply(n,arguments):n.queue.push(arguments)};
233if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
234n.queue=[];t=b.createElement(e);t.async=!0;
235t.src=v;s=b.getElementsByTagName(e)[0];
236s.parentNode.insertBefore(t,s)}(window, document,'script',
237'https://connect.facebook.net/en_US/fbevents.js');
238fbq('init', '
238640793797038171
vendor: 32 bytes, lines 238-239
238');
239fbq('track', 'PageView');
240</script>
240
241<noscript>
242<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=640793797038171&ev=PageView&noscript=1"/>
243</noscript>
244<!-- End Meta Pixel Code -->
245	
246</head>
247			
248
249
250	
251
252
253
254
255<body data-spy="scroll" data-target="#sgsw-sidebar-scrollspy" data-offset="0">
256	
257		<!-- Google Tag Manager -->
vendor: 71 bytes, lines 257-258
257
258		<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
258GTM-5RK8B4F
vendor: 89 bytes, lines 258-260
258"
259		height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
260		
260<!-- End Google Tag Manager -->
261	
262	<div id="wrapper" class="sgsw home">
263		<div id="site-canvas">
264			<div id="site-menu" class="mobile-visible">
265				
266
267
268	
269
270
271
272
273<nav class="navbar navbar-inverse main-nav-sub mobile-visible" data-spy="affix" data-offset-top="155">
274    <div class="container">
275        <ul class="nav navbar-nav hotlink-nav pull-right">
276            
277            <li class="mobile-visible pull-left scrollspy-content-toggler-outer">
278	            
279		            
280		            
281		            
282					
283						<a style="height: 44px;"></a>
284					
285				
286			</li>
287        </ul>
288    </div>
289</nav>
290<div class="mobile-nav" id="mobileNav" aria-hidden="true">
291	<div class="mobile-nav__panel">
292		<div class="mobile-nav__header">
293			<button class="mobile-nav__back js-mobile-nav-back" type="button" aria-label="Zur&uuml;ck"><i class="fa fa-chevron-left"></i></button>
294			<div class="mobile-nav__brand js-mobile-nav-brand"><div class="logo"></div></div>
295			<div class="mobile-nav__title js-mobile-nav-title"></div>
296			<button class="mobile-nav__close js-mobile-menu-close" type="button" aria-label="Navigation schliessen"><i class="fa fa-times"></i></button>
297			<button class="mobile-nav__burger js-mobile-menu-close" type="button" aria-label="Navigation schliessen"><i class="fa fa-times"></i></button>
298		</div>
299		<!-- 1. Ebene -->
300		<div class="mobile-nav__screen mobile-nav__screen--level1 is-active" data-level="1">
301			<div class="mobile-nav__content">
302				<ul class="mobile-nav__main">
303					
304					
305						<li
306							>
307							<button type="button" class="js-open-submenu" data-target="strom">Strom</button>
308						</li>
309					
310						<li
311							>
312							<button type="button" class="js-open-submenu" data-target="wasser">Wasser</button>
313						</li>
314					
315						<li
316							>
317							<button type="button" class="js-open-submenu" data-target="heizen">Heizen</button>
318						</li>
319					
320						<li
321							>
322							<button type="button" class="js-open-submenu" data-target="glasfaser">Glasfaser</button>
323						</li>
324					
325						<li
326							>
327							<button type="button" class="js-open-submenu" data-target="e-mobilitaet">E-Mobilität</button>
328						</li>
329					
330					
331						<li>
332							
333
334
335	
336
337
338
339<script type="text/javascript" src="/apps/core/docroot/js/swiftype/hogan-3.0.1.js"></script>
339
340<div class="search mobile minimized">
341    <button type="button" class="search-toggler"><span>Suchen</span><i class="far fa-search"></i></button>
342    <div class="searchform-container-box not-shown">
343	    <form id="searchFormBox" name="searchFormBox" class="searchform" autocomplete="off">
344	        <label class="input-label search-label" for="searchfield">
345	            <span>Wonach suchen Sie?</span>
346	            <input type="text" placeholder="Wonach suchen Sie?" class="searchfield" name="searchfield" id="searchfield" />
347	        </label>
348	        <button type="submit" class="search-go"><i class="far fa-search"></i></button>
349	    </form>
350		<ul id="st-results-container" class="linklist hidden"></ul>
351		<ul class="linklist initialSearchLink">
352			<li><a href="/gn/suchen.html" title="Interner Link: Erweiterte Suche">Erweiterte Suche</a></li>
353		</ul>
354    </div>
355</div>
356
357<script type="text/javascript">
358	let searchResultsMobile = [];
359	
360	var searchConfigMobile = {
361		domain: "www.sgsw.ch",
362		facets: {},
363		isSearch: false,
364		activeFilter: 'content',
365		searchType: 'searchbox',
366		num: 10
367	};
368      
369	/**** Custom Result Templates ****/
370		
371	var resultTemplateMobile = Hogan.compile([
372    	"<li>",
373	        "<a href='{{url}}' title='{{title}}'>{{title}}</a>",
374		"</li>"
375	].join('') );
376	
377	let debounceTimeoutMobile;
378	$(document).on('keyup', '.mobile-nav #searchfield', function (key) {
379	  	if (key.keyCode != 13 && key.keyCode != null) {
380  			// Entfernt vorheriges Timeout, wenn eine neue Taste gedrueckt wird
381  			clearTimeout(debounceTimeoutMobile);
382		  
383  			debounceTimeoutMobile = setTimeout(function () {  // Setzt neues Timeout
384				var searchTag = $('.mobile-nav .tile-filter li.searchtag').text();
385				if(searchTag != ''){
386					resetSearchMobile(false);
387				}
388				var searchValue = $(".mobile-nav #searchfield").val();
389				if(searchValue == ''){
390					$('.mobile-nav .initialSearchLink').removeClass("hidden");
391					$('.mobile-nav #st-results-container').addClass("hidden");
392					$('.mobile-nav #st-results-container').empty();
393					getResultsMobile();
394				} else if(searchValue.length > 4){
395					searchValue = xssPreventionMobile(searchValue,true);
396					$('.mobile-nav .initialSearchLink').addClass("hidden");
397					$('.mobile-nav #st-results-container').removeClass("hidden");
398					window.searchConfigMobile.isSearch = true;
399					getResultsMobile();
400				}
401  			}, 500);  // Debounce-Zeit in Millisekunden
402	  	}
403    });
404	
405    $(document).on('submit', '.mobile-nav #searchFormBox', function (e) {
406        e.preventDefault();
407        var searchValue = $('.mobile-nav #searchfield').val();
408        if(searchValue.length > 0){
409        	searchValue = xssPreventionMobile(searchValue,true);
410  			var searchTag = "<li class='searchtag'><a href='#' onclick='javascript:resetSearchMobile(true)'>" + searchValue + "</a></li>";
411  			var $searchFacetContainer = $('.mobile-nav .tile-filter ul.inhaltstyp-items');
412		  	$searchFacetContainer.prepend(searchTag);
413            $searchFacetContainer.removeClass("hidden");
414			$('.mobile-nav #st-results-container').removeClass("hidden");
415			$('.mobile-nav .initialSearchLink').addClass("hidden");
416			$(".mobile-nav #searchfield").blur();
417            window.searchConfigMobile.isSearch = true;
418			getResultsMobile();
419        }else{
420        	resetSearchMobile(true);
421        }
422	});
423	
424    function getResultsMobile() {
425		var searchValue = encodeURI($(".mobile-nav #searchfield").val());
426		var domain = window.searchConfigMobile.domain;
427		var activeFilter = window.searchConfigMobile.activeFilter;
428		var searchType = window.searchConfigMobile.searchType;
429        var num = window.searchConfigMobile.num;
430        $.ajax({
431            type: "GET",
432            url: "/content/sgsw_onlinewelt/home.searchresults.html?search=true",
433            contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
434            //dataType: "json",
435            data: {
436            	searchValue: searchValue,
437            	isSearchPage: false,
438            	domain: domain,
439            	activeFilter: activeFilter,
440            	searchType: searchType,
441                num: num
442            },
443            encode: true,
444            success: function(data) {
445                var dataString = data;
446                var index = data.indexOf('<!--cq');
447                if(index >= 0){
448                    dataString = data.substring(0, index);
449                }
450                const jsonObj = JSON.parse(dataString);
451                searchResultsMobile = jsonObj.organic;
452                displayResultsMobile(searchResultsMobile);
453            }
454        });
455    }
456    
457    function displayResultsMobile(results) {
458        const resultContainer = $('.mobile-nav #st-results-container');
459        resultContainer.empty();
460        
461        const totalResultCount = results.length
462        var count = 0;
463        
464        Array.from(results).forEach((result) => {
465        	// cleanup title
466        	var resultTitle = result.title;
467        	resultTitle = resultTitle.replaceAll(" - stadt.sg.ch - Kanton St. Gallen", "")
468						        	.replaceAll(" | stadt.sg.ch - Kanton St. Gallen", "")
469						            .replaceAll(" - stadt.sg.ch - Kanton St.Gallen", "")
470						            .replaceAll(" | stadt.sg.ch - Kanton St.Gallen", "")
471						    		.replaceAll(" - stadt.sg.ch", "")
472						            .replaceAll(" | stadt.sg.ch", "")
473						            .replaceAll(" - Kanton St. Gallen", "")
474						            .replaceAll(" | Kanton St. Gallen", "")
475						            .replaceAll(" - Kanton St.Gallen", "")
476						            .replaceAll(" | Kanton St.Gallen", "")
477						            .replaceAll(" - St.Galler Stadtwerke", "")
478						            .replaceAll(" | St.Galler Stadtwerke", "");
479        	
480            var data = {
481                url: result.link,
482                title: resultTitle
483            };
484
485            if (result.link.indexOf(".ocFile") >= 0 || result.link.indexOf("/content/dam/") >= 0 || result.link.indexOf("/news/stsg_") >= 0 || result.link.indexOf("/news/sgsw_") >= 0  || result.link.indexOf("/home/news") >= 0) {
486                return;
487            }
488
489            count++;
490            if (count <= 10) {
491                const item = resultTemplateMobile.render(data);
492                resultContainer.append(item);
493            }
494        });
495        
496		var currentSearchValue = $(".mobile-nav #searchfield").val();
497		currentSearchValue = xssPreventionMobile(currentSearchValue,false);
498		
499		if (totalResultCount === 0) {
500			resultContainer.html("<li><a style='color: #e00025' href='/gn/suchen.html#stq=" + currentSearchValue + "'>Suche erweitern</a></li>");
501		} else {
502			var nofSearchTiles = 10;
503			if (totalResultCount === 10) {
504				resultContainer.append("<li><a style='color: #e00025' href='/gn/suchen.html#stq=" + currentSearchValue + "'>Weitere Ergebnisse</a></li>");
505			} else{
506				resultContainer.append("<li><a style='color: #e00025' href='/gn/suchen.html#stq=" + currentSearchValue + "'>Suche erweitern</a></li>");
507			}
508		}
509    }
510	
511	function resetSearchMobile(clearSearchField){
512		window.searchConfigMobile.isSearch = false;
513		$('.mobile-nav .tile-filter').addClass("hidden");
514		$('.mobile-nav .tile-filter ul.inhaltstyp-items').empty();
515		if(clearSearchField){
516			$(".mobile-nav #searchfield").val('');
517			$(".mobile-nav #searchfield").focus();
518			$('.mobile-nav #st-results-container').addClass("hidden");
519			$('.mobile-nav .initialSearchLink').removeClass("hidden");
520		}
521		window.location.hash = '';
522		getResultsMobile();
523	}
524	
525	function xssPreventionMobile(value,output){
526		var lt = /</g, 
527	    gt = />/g, 
528	    ap = /'/g, 
529	    ic = /"/g;
530	    if(output){
531	    	value = value.toString().replace(lt, "").replace(gt, "");
532	    }else{
533	    	value = value.toString().replace(lt, "").replace(gt, "").replace(ap, "&#39;").replace(ic, "&#34;");
534	    }
535		return value;
536	}
537</script>
537
538						</li>
539					
540				</ul>
541				<div class="mobile-nav__meta">
542					
543						<a href="/home/energieportal.html" title="Interner Link: Meine sgsw">Meine sgsw<i class="fa fa-user"></i></a>
544					
545					
546						<a href="/home/news.html" title="Interner Link: News">News</a>
547					
548						<a href="/home/ueber-uns.html" title="Interner Link: Über uns">Über uns</a>
549					
550						<a href="/home/jobs.html" title="Interner Link: Jobs">Jobs</a>
551					
552						<a href="/home/ueber-uns/kontakt.html" title="Interner Link: Kontakt">Kontakt</a>
553					
554					
555					
556						<a href="/home/downloads.html" title="Interner Link: Downloads">Downloads<i class="fas fa-download"></i></a>
557					
558				</div>
559				
560					<div class="mobile-nav__service">
561						<a href="/home/ueber-uns/kontakt.html" title="Interner Link: Kontakt"><i class="fa fa-phone-alt"></i>Kontakt</a>
562					</div>
563				
564			</div>
565		</div>
566		<!-- 2. Ebenen -->
567		
568			<div class="mobile-nav__screen mobile-nav__screen--level2" data-menu="strom">
569				<div class="mobile-nav__content">
570					
571						<div class="mobile-nav__cards">
572						
573							<a href="/home/strom/tarife.html#Par_sgsw_electricity_cal" title="Interner Link: Tarife#Par_sgsw_electricity_cal" class="mobile-nav__card">
574								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_berechnung.svg" alt="" class="svg-icon"></span>
575								<span class="content">
576									<span class="title">
576Strompreis-Rechner</span>
577									<span class="desc">Tarife, Zusammensetzung</span>
578								</span>
579							</a>
580						
581							<a href="/home/strom/energiegemeinschaften/leg.html" title="Interner Link: LEG" class="mobile-nav__card">
582								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_zusammenschluss-zum-eigenverbrauch.svg" alt="" class="svg-icon"></span>
583								<span class="content">
584									<span class="title">LEG</span>
585									<span class="desc">Lokale Elektrizitätsgemeinschaft</span>
586								</span>
587							</a>
588						
589							<a href="/home/strom/smart-meter.html" title="Interner Link: Smart Meter" class="mobile-nav__card">
590								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_inelligentes-last-management.svg" alt="" class="svg-icon"></span>
591								<span class="content">
592									<span class="title">Smart Meter</span>
593									<span class="desc">Intelligente Zähler</span>
594								</span>
595							</a>
596						
597						</div>
598					
599					<div class="mobile-nav__section">
600						
601						
602						<a href="/home/strom.html" title="Interner Link: Übersicht Strom" class="mobile-nav__link ">Übersicht Strom</a>
603					</div>
604					
605						
606							
607							
608								<div class="mobile-nav__section">
609									
610									
611									<a href="/home/strom/tarife.html" title="Interner Link: Tarife" class="mobile-nav__link ">Tarife</a>
612								</div>								
613								
614						
615					
616						
617							
618								<div class="mobile-nav__section has-accordion">
619									<div class="mobile-nav__accordion-head">
620										<a href="/home/strom/solarstrom.html" title="Interner Link: Solarstrom" class="mobile-nav__link">Solarstrom</a>
621										<button type="button" class="js-accordion-toggle" aria-expanded="false" aria-label="Solarstrom &ouml;ffnen"></button>
622									</div>
623									<div class="mobile-nav__accordion-body">
624										
625											
626											
627											<a href="/home/strom/solarstrom/solar-community.html" title="Interner Link: Solar Community">Solar Community</a>
628										
629									</div>
630								</div>
631							
632								
633						
634					
635						
636							
637								<div class="mobile-nav__section has-accordion">
638									<div class="mobile-nav__accordion-head">
639										<a href="/home/strom/energiegemeinschaften.html" title="Interner Link: Energiegemeinschaften" class="mobile-nav__link">Energiegemeinschaften</a>
640										<button type="button" class="js-accordion-toggle" aria-expanded="false" aria-label="Energiegemeinschaften &ouml;ffnen"></button>
641									</div>
642									<div class="mobile-nav__accordion-body">
643										
644											
645											
646											<a href="/home/strom/energiegemeinschaften/eigenverbrauch.html" title="Interner Link: Eigenverbrauch ZEV/EVG">Eigenverbrauch ZEV/EVG</a>
647										
648											
649											
650											<a href="/home/strom/energiegemeinschaften/leg.html" title="Interner Link: LEG">LEG</a>
651										
652									</div>
653								</div>
654							
655								
656						
657					
658						
659							
660							
661								<div class="mobile-nav__section">
662									
663									
664									<a href="/home/strom/smart-meter.html" title="Interner Link: Smart Meter" class="mobile-nav__link ">Smart Meter</a>
665								</div>								
666								
667						
668					
669						
670							
671								<div class="mobile-nav__section has-accordion">
672									<div class="mobile-nav__accordion-head">
673										<a href="/home/strom/stromservices.html" title="Interner Link: Services" class="mobile-nav__link">Services</a>
674										<button type="button" class="js-accordion-toggle" aria-expanded="false" aria-label="Services &ouml;ffnen"></button>
675									</div>
676									<div class="mobile-nav__accordion-body">
677										
678											
679											
680											<a href="/home/strom/stromservices.html#Par_sgsw_contactbusiness" title="Interner Link: Strom für Veranstaltungen">Strom für Veranstaltungen</a>
681										
682									</div>
683								</div>
684							
685								
686						
687					
688						
689							
690								<div class="mobile-nav__section has-accordion">
691									<div class="mobile-nav__accordion-head">
692										<a href="/home/strom/gebaeude.html" title="Interner Link: Gebäude " class="mobile-nav__link">Gebäude </a>
693										<button type="button" class="js-accordion-toggle" aria-expanded="false" aria-label="Gebäude  &ouml;ffnen"></button>
694									</div>
695									<div class="mobile-nav__accordion-body">
696										
697											
698											
699											<a href="/home/strom/gebaeude.html#Par_sgsw_imagetext" title="Interner Link: Energiedienstleistung PV">Energiedienstleistung PV</a>
700										
701											
702											
703											<a href="/home/strom/gebaeude.html#Par_sgsw_imagetext_5_cop" title="Interner Link: Hausinstallationskontrolle">Hausinstallationskontrolle</a>
704										
705											
706											
707											<a href="/home/strom/gebaeude.html#Par_sgsw_imagetext_7_cop" title="Interner Link: Installationsbewilligung">Installationsbewilligung</a>
708										
709									</div>
710								</div>
711							
712								
713						
714					
715						
716							
717							
718								<div class="mobile-nav__section">
719									
720									
721									<a href="/home/strom/geschaeftskunden.html" title="Interner Link: Geschäftskunden" class="mobile-nav__link ">Geschäftskunden</a>
722								</div>								
723								
724						
725					
726				</div>
727			</div>
728		
729			<div class="mobile-nav__screen mobile-nav__screen--level2" data-menu="wasser">
730				<div class="mobile-nav__content">
731					
732						<div class="mobile-nav__cards">
733						
734							<a href="/home/555-jahre-wasserversorgung-st-gallen.html" title="Interner Link: 555 Jahre Wasserversorgung St.Gallen" class="mobile-nav__card">
735								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_feiern_1.svg" alt="" class="svg-icon"></span>
736								<span class="content">
737									<span class="title">555 Jahre Wasser</span>
738									<span class="desc">Feiern Sie mit!</span>
739								</span>
740							</a>
741						
742							<a href="/home/wasser/formular.html" title="Interner Link: Bestellung «Wasser-Rappen»" class="mobile-nav__card">
743								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_recht-sauberes-wasser.svg" alt="" class="svg-icon"></span>
744								<span class="content">
745									<span class="title">Wasser-Rappen</span>
746									<span class="desc">Spendenformular ausfüllen</span>
747								</span>
748							</a>
749						
750							<a href="/news/sgsw_news/2026/07/die--st-galler-brunnen-challenge--startet-mit-zwei-neuen-routen.html" title="Interner Link: Die «St.Galler Brunnen-Challenge» startet mit zwei neuen Routen" class="mobile-nav__card">
751								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_quiz_1.svg" alt="" class="svg-icon"></span>
752								<span class="content">
753									<span class="title">Brunnen-Challenge</span>
754									<span class="desc">Zwei neue Routen zum Jubiläum</span>
755								</span>
756							</a>
757						
758						</div>
759					
760					<div class="mobile-nav__section">
761						
762						
763						<a href="/home/wasser.html" title="Interner Link: Übersicht Wasser" class="mobile-nav__link ">
763Übersicht Wasser</a>
764					</div>
765					
766						
767							
768							
769								<div class="mobile-nav__section">
770									
771									
772									<a href="/home/wasser/services.html" title="Interner Link: Services" class="mobile-nav__link ">Services</a>
773								</div>								
774								
775						
776					
777						
778							
779								<div class="mobile-nav__section has-accordion">
780									<div class="mobile-nav__accordion-head">
781										<a href="/home/wasser/gebaeude.html" title="Interner Link: Gebäude" class="mobile-nav__link">Gebäude</a>
782										<button type="button" class="js-accordion-toggle" aria-expanded="false" aria-label="Gebäude &ouml;ffnen"></button>
783									</div>
784									<div class="mobile-nav__accordion-body">
785										
786											
787											
788											<a href="/home/wasser/gebaeude.html#_Par_sgsw_downloadlist_1_" title="Interner Link: Hausinstallationskontrolle">Hausinstallationskontrolle</a>
789										
790									</div>
791								</div>
792							
793								
794						
795					
796				</div>
797			</div>
798		
799			<div class="mobile-nav__screen mobile-nav__screen--level2" data-menu="heizen">
800				<div class="mobile-nav__content">
801					
802						<div class="mobile-nav__cards">
803						
804							<a href="/home/heizen.html#Par_sgsw_product_advisor" title="Interner Link: St.Galler Wärme#Par_sgsw_product_advisor" class="mobile-nav__card">
805								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_heizung.svg" alt="" class="svg-icon"></span>
806								<span class="content">
807									<span class="title">Wärmelösung finden</span>
808									<span class="desc">Jetzt Adresse eingeben</span>
809								</span>
810							</a>
811						
812						</div>
813					
814					<div class="mobile-nav__section">
815						
816						
817						<a href="/home/heizen.html" title="Interner Link: Übersicht Heizen" class="mobile-nav__link ">Übersicht Heizen</a>
818					</div>
819					
820						
821							
822								<div class="mobile-nav__section has-accordion">
823									<div class="mobile-nav__accordion-head">
824										<a href="/home/heizen/fernwaerme.html" title="Interner Link: Fernwärme" class="mobile-nav__link">Fernwärme</a>
825										<button type="button" class="js-accordion-toggle" aria-expanded="false" aria-label="Fernwärme &ouml;ffnen"></button>
826									</div>
827									<div class="mobile-nav__accordion-body">
828										
829											
830											
831											<a href="/home/heizen/fernwaerme.html#Par_sgsw_product_electri" title="Interner Link: Produkte">Produkte</a>
832										
833											
834											
835											<a href="/home/heizen/fernwaerme.html#Par_sgsw_pricelist" title="Interner Link: Preise">Preise</a>
836										
837									</div>
838								</div>
839							
840								
841						
842					
843						
844							
845								<div class="mobile-nav__section has-accordion">
846									<div class="mobile-nav__accordion-head">
847										<a href="/home/heizen/gas.html" title="Interner Link: Gas" class="mobile-nav__link">Gas</a>
848										<button type="button" class="js-accordion-toggle" aria-expanded="false" aria-label="Gas &ouml;ffnen"></button>
849									</div>
850									<div class="mobile-nav__accordion-body">
851										
852											
853											
854											<a href="/home/heizen/gas.htm.html#Par_sgsw_product_electri" title="Interner Link: Produkte">Produkte</a>
855										
856											
857											
858											<a href="/home/heizen/gas.html#Par_sgsw_pricelist_copy" title="Interner Link: Preise">Preise</a>
859										
860											
861											
862											<a href="/home/heizen/gas.html#Par_sgsw_imagetext_copy_" title="Interner Link: Wartungs-Abo">Wartungs-Abo</a>
863										
864									</div>
865								</div>
866							
867								
868						
869					
870						
871							
872							
873								<div class="mobile-nav__section">
874									
875									
876									<a href="/home/heizen/waermepumpe.html" title="Interner Link: Wärmepumpe" class="mobile-nav__link ">Wärmepumpe</a>
877								</div>								
878								
879						
880					
881						
882							
883							
884								<div class="mobile-nav__section">
885									
886									
887									<a href="/home/heizen/blockheizkraftwerk.html" title="Interner Link: Blockheizkraftwerk" class="mobile-nav__link ">Blockheizkraftwerk</a>
888								</div>								
889								
890						
891					
892						
893							
894							
895								<div class="mobile-nav__section">
896									
897									
898									<a href="/home/heizen/geschaeftskunden.html" title="Interner Link: Geschäftskunden" class="mobile-nav__link ">Geschäftskunden</a>
899								</div>								
900								
901						
902					
903				</div>
904			</div>
905		
906			<div class="mobile-nav__screen mobile-nav__screen--level2" data-menu="glasfaser">
907				<div class="mobile-nav__content">
908					
909						<div class="mobile-nav__cards">
910						
911							<a href="/home/glasfaser.html#Par_sgsw_productinfo_lis" title="Interner Link: St.Galler Glasfaser#Par_sgsw_productinfo_lis" class="mobile-nav__card">
912								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_stecker.svg" alt="" class="svg-icon"></span>
913								<span class="content">
914									<span class="title">Jetzt Angebot bestellen</span>
915									<span class="desc">Steigen Sie auf Glasfaser um.</span>
916								</span>
917							</a>
918						
919							<a href="/home/glasfaser.html#Par_sgsw_contactbusiness_1720540927" title="Interner Link: St.Galler Glasfaser#Par_sgsw_contactbusiness_1720540927" class="mobile-nav__card">
920								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_kein-planungs-betriebsaufwand.svg" alt="" class="svg-icon"></span>
921								<span class="content">
922									<span class="title">Technischer Support</span>
923									<span class="desc">Probleme mit Glasfaseranschluss?</span>
924								</span>
925							</a>
926						
927						</div>
928					
929					<div class="mobile-nav__section">
930						
931						
932						<a href="/home/glasfaser.html" title="Interner Link: Übersicht Glasfaser" class="mobile-nav__link ">
932Übersicht Glasfaser</a>
933					</div>
934					
935						
936							
937							
938								<div class="mobile-nav__section">
939									
940									
941									<a href="/home/glasfaser/gebaeude.html" title="Interner Link: Gebäude" class="mobile-nav__link ">Gebäude</a>
942								</div>								
943								
944						
945					
946				</div>
947			</div>
948		
949			<div class="mobile-nav__screen mobile-nav__screen--level2" data-menu="e-mobilitaet">
950				<div class="mobile-nav__content">
951					
952					<div class="mobile-nav__section">
953						
954						
955						<a href="/home/e-mobilitaet.html" title="Interner Link: Übersicht E-Mobilität" class="mobile-nav__link ">Übersicht E-Mobilität</a>
956					</div>
957					
958						
959							
960								<div class="mobile-nav__section has-accordion">
961									<div class="mobile-nav__accordion-head">
962										<a href="/home/e-mobilitaet/zuhause.html" title="Interner Link: Zuhause" class="mobile-nav__link">Zuhause</a>
963										<button type="button" class="js-accordion-toggle" aria-expanded="false" aria-label="Zuhause &ouml;ffnen"></button>
964									</div>
965									<div class="mobile-nav__accordion-body">
966										
967											
968											
969											<a href="/home/e-mobilitaet/zuhause.html#Par_sgsw_facts_tiles" title="Interner Link: Fördergelder">Fördergelder</a>
970										
971									</div>
972								</div>
973							
974								
975						
976					
977						
978							
979							
980								<div class="mobile-nav__section">
981									
982									
983									<a href="/home/e-mobilitaet/arbeitsplatz.html" title="Interner Link: Arbeitsplatz" class="mobile-nav__link ">Arbeitsplatz</a>
984								</div>								
985								
986						
987					
988						
989							
990							
991								<div class="mobile-nav__section">
992									
993									
994									<a href="/home/e-mobilitaet/quartier.html" title="Interner Link: Quartier" class="mobile-nav__link ">Quartier</a>
995								</div>								
996								
997						
998					
999						
1000							
1001							
1002								<div class="mobile-nav__section">
1003									
1004									
1005									<a href="/home/e-mobilitaet/unterwegs.html" title="Interner Link: Unterwegs" class="mobile-nav__link ">Unterwegs</a>
1006								</div>								
1007								
1008						
1009					
1010				</div>
1011			</div>
1012		
1013	</div>
1014</div>
1015<script>
1016document.addEventListener('DOMContentLoaded', function () {
1017    const mobileNav = document.getElementById('mobileNav');
1018    const openButton = document.querySelector('.js-mobile-menu-open');
1019    const closeButtons = document.querySelectorAll('.js-mobile-menu-close');
1020    const backButton = document.querySelector('.js-mobile-nav-back');
1021    const titleEl = document.querySelector('.js-mobile-nav-title');
1022    const brandEl = document.querySelector('.js-mobile-nav-brand');
1023
1024    const level1 = mobileNav.querySelector('[data-level="1"]');
1025    const submenus = mobileNav.querySelectorAll('[data-menu]');
1026    const submenuTriggers = document.querySelectorAll('.js-open-submenu');
1027    const accordionToggles = mobileNav.querySelectorAll('.js-accordion-toggle');
1028
1029    function openMobileNav() {
1030        mobileNav.classList.add('is-open');
1031        mobileNav.setAttribute('aria-hidden', 'false');
1032        document.body.classList.add('mobile-nav-open');
1033        //showLevel1();
1034        showActiveLevel();
1035    }
1036
1037    function closeMobileNavOld() {
1038        mobileNav.classList.remove('is-open', 'is-submenu');
1039        mobileNav.setAttribute('aria-hidden', 'true');
1040        document.body.classList.remove('mobile-nav-open');
1041
1042        level1.classList.add('is-active');
1043        submenus.forEach(function (menu) {
1044            menu.classList.remove('is-active');
1045        });
1046
1047        titleEl.textContent = '';
1048        titleEl.hidden = true;
1049        brandEl.hidden = false;
1050    }
1051    
1052    function closeMobileNav() {
1053        mobileNav.classList.remove('is-open');
1054        mobileNav.setAttribute('aria-hidden', 'true');
1055        document.body.classList.remove('mobile-nav-open');
1056        titleEl.hidden = true;
1057        brandEl.hidden = false;
1058    }
1059
1060    function showLevel1() {
1061        mobileNav.classList.remove('is-submenu');
1062
1063        level1.classList.add('is-active');
1064        submenus.forEach(function (menu) {
1065            menu.classList.remove('is-active');
1066        });
1067
1068        titleEl.textContent = '';
1069        titleEl.hidden = true;
1070        brandEl.hidden = false;
1071    }
1072    
1073    function showActiveLevel() {
1074        const targetMenu = mobileNav.querySelector('.mobile-nav__screen.mobile-nav__screen--level2.is-active');
1075        if (targetMenu) {
1076            titleEl.hidden = false;
1077            brandEl.hidden = true;
1078        }
1079    }
1080
1081    function openSubmenu(menuName, menuTitle) {
1082        level1.classList.remove('is-active');
1083        submenus.forEach(function (menu) {
1084            menu.classList.remove('is-active');
1085        });
1086
1087        const targetMenu = mobileNav.querySelector('[data-menu="' + menuName + '"]');
1088        if (targetMenu) {
1089            targetMenu.classList.add('is-active');
1090            mobileNav.classList.add('is-submenu');
1091            titleEl.textContent = menuTitle;
1092            titleEl.hidden = false;
1093            brandEl.hidden = true;
1094        }
1095    }
1096
1097    if (openButton) {
1098        openButton.addEventListener('click', openMobileNav);
1099    }
1100
1101    closeButtons.forEach(function (button) {
1102        button.addEventListener('click', closeMobileNav);
1103    });
1104
1105    if (backButton) {
1106        backButton.addEventListener('click', showLevel1);
1107    }
1108
1109    submenuTriggers.forEach(function (trigger) {
1110        trigger.addEventListener('click', function () {
1111            const menuName = this.dataset.target;
1112            const menuTitle = this.textContent.trim();
1113            openSubmenu(menuName, menuTitle);
1114        });
1115    });
1116
1117    accordionToggles.forEach(function (toggle) {
1118        toggle.addEventListener('click', function () {
1119            const section = this.closest('.has-accordion');
1120            const isOpen = section.classList.contains('is-open');
1121
1122            section.classList.toggle('is-open');
1123            this.setAttribute('aria-expanded', String(!isOpen));
1124        });
1125    });
1126
1127    document.addEventListener('keydown', function (e) {
1128        if (e.key === 'Escape' && mobileNav.classList.contains('is-open')) {
1129            if (mobileNav.classList.contains('is-submenu')) {
1130                showLevel1();
1131            } else {
1132                closeMobileNav();
1133            }
1134        }
1135    });
1136});
1137</script>
1137
1138			</div>
1139            
1140
1141
1142	
1143
1144
1145<div id="accesskeys">
1146	<h2>Accesskeys</h2> 
1147	<ul>
1148		<li>
1149			<a href="/home.html" title="Interner Link: [Alt+0] Direkt zur Startseite" accesskey="0" tabindex="0">Direkt zur Startseite</a>
1150		</li>
1151		<li>
1152			<a href="#navigation" title="[Alt+1] Direkt zur Navigation" accesskey="1" tabindex="1">Direkt zur Navigation</a>
1153		</li>
1154		<li>
1155			<a href="#inhalt" title="[Alt+2] Direkt zum Inhalt" accesskey="2" tabindex="2">Direkt zum Inhalt</a>
1156		</li>
1157		
1158		
1159		<li> 
1160			<a href="#searchfield" title="[Alt+5] Direkt zur Suche" accesskey="5" tabindex="5">Direkt zur Suche</a>
1161		</li>
1162		
1163	</ul>
1164</div>
1165            
1166            <div id="main">
1167			    <div id="headerprint"><img src="/apps/core/docroot/images/design/sgsw-onlinewelt/bg-head-sgsw-print-img.gif" alt=""/></div>
1168			    <header>
1169			    	
1170				    	<div class="navigations">
1171				    		
1172
1173<nav class="navbar top-nav">
1174    <div class="container">
1175    	
1176        <ul class="nav navbar-nav navbar-right my-section desktop-visible">
1177        	
1178	            <li class="my-sgsw-account">
1179	                <a href="/home/energieportal.html" title="Interner Link: Meine sgsw"><i class="fa fa-user"></i><span class="mysgsw-description">Meine sgsw</span></a>
1180	            </li>
1181            
1182            
1183        </ul>
1184        <ul class="nav navbar-nav generic-section desktop-visible">
1185			
1186				<li><a href="/home/news.html" title="Interner Link: News">News</a></li>
1187			
1188				<li><a href="/home/ueber-uns.html" title="Interner Link: Über uns">Über uns</a></li>
1189			
1190				<li><a href="/home/jobs.html" title="Interner Link: Jobs">Jobs</a></li>
1191			
1192				<li><a href="/home/ueber-uns/kontakt.html" title="Interner Link: Kontakt">Kontakt</a></li>
1193			
1194			
1195			
1196			
1197				<li><a href="/home/downloads.html" title="Interner Link: Downloads"><i class="fas fa-download"></i>Downloads</a></li>
1198			
1199        </ul>
1200    </div>
1201</nav>
1202					    	
1203
1204<nav class="navbar main-nav-first" data-spy="affix" data-offset-top="100">
1205    <div class="container-fluid">
1206		<div class="navbar-header wide-screen">
1207			<a href="https://www.sgsw.ch" title="St.Galler Stadtwerke" class="navbar-brand"><div class="logo"></div></a>
1208		</div>
1209		<div class="container main-nav-container">
1210			<div class="navbar-header mid-screen desktop-visible">
1211				<a href="https://www.sgsw.ch" title="St.Galler Stadtwerke" class="navbar-brand"><div class="logo"></div></a>
1212			</div>
1213	        <ul class="nav navbar-nav desktop-visible" id="navigation">
1214	        	
1215				
1216					<li>
1217						<a class="js-mega-trigger" data-menu="strom" title="Strom" href="#">Strom</a>
1218				    </li>
1219				
1220					<li>
1221						<a class="js-mega-trigger" data-menu="wasser" title="Wasser" href="#">Wasser</a>
1222				    </li>
1223				
1224					<li>
1225						<a class="js-mega-trigger" data-menu="heizen" title="Heizen" href="#">Heizen</a>
1226				    </li>
1227				
1228					<li>
1229						<a class="js-mega-trigger" data-menu="glasfaser" title="Glasfaser" href="#">Glasfaser</a>
1230				    </li>
1231				
1232					<li>
1233						<a class="js-mega-trigger" data-menu="e-mobilitaet" title="E-Mobilität" href="#">E-Mobilität</a>
1234				    </li>
1235				
1236	        </ul>
1237	        
1238
1239
1240	
1241
1242
1243<nav class="navbar main-nav-megamenu">
1244	<div class="container mega-menu-content">
1245	    
1246			<div class="mega-menu-panel" data-menu-panel="strom">
1247				<button class="mega-close js-mega-close" type="button">Schliessen<i class="fal fa-times"></i></button>
1248				<div class="mega-menu-inner has-teaser">
1249					
1250						<div class="mega-col mega-teaser">
1251						
1252							<a href="/home/strom/tarife.html#Par_sgsw_electricity_cal" title="Interner Link: Tarife#Par_sgsw_electricity_cal" class="mega-box">
1253								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_berechnung.svg" alt="" class="svg-icon"></span>
1254								<span class="content">
1255									<span class="title">
1255Strompreis-Rechner</span>
1256									<span class="desc">Tarife, Zusammensetzung</span>
1257								</span>
1258							</a>
1259						
1260							<a href="/home/strom/energiegemeinschaften/leg.html" title="Interner Link: LEG" class="mega-box">
1261								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_zusammenschluss-zum-eigenverbrauch.svg" alt="" class="svg-icon"></span>
1262								<span class="content">
1263									<span class="title">LEG</span>
1264									<span class="desc">Lokale Elektrizitätsgemeinschaft</span>
1265								</span>
1266							</a>
1267						
1268							<a href="/home/strom/smart-meter.html" title="Interner Link: Smart Meter" class="mega-box">
1269								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_inelligentes-last-management.svg" alt="" class="svg-icon"></span>
1270								<span class="content">
1271									<span class="title">Smart Meter</span>
1272									<span class="desc">Intelligente Zähler</span>
1273								</span>
1274							</a>
1275						
1276						</div>
1277					
1278					<div class="mega-col mega-nav">
1279						<ul>
1280							<li class="parent-nav">
1281								<a href="/home/strom.html" title="Interner Link: Übersicht Strom">Übersicht Strom</a>
1282							</li>
1283							
1284								<li class="parent-nav">
1285									<a href="/home/strom/tarife.html" title="Interner Link: Tarife">Tarife</a>
1286									
1287								</li>
1288							
1289								<li class="parent-nav">
1290									<a href="/home/strom/solarstrom.html" title="Interner Link: Solarstrom">Solarstrom</a>
1291									
1292										<ul>
1293											
1294												<li><a href="/home/strom/solarstrom/solar-community.html" title="Interner Link: Solar Community">Solar Community</a></li>
1295											
1296										</ul>
1297									
1298								</li>
1299							
1300								<li class="parent-nav">
1301									<a href="/home/strom/energiegemeinschaften.html" title="Interner Link: Energiegemeinschaften">Energiegemeinschaften</a>
1302									
1303										<ul>
1304											
1305												<li><a href="/home/strom/energiegemeinschaften/eigenverbrauch.html" title="Interner Link: Eigenverbrauch ZEV/EVG">Eigenverbrauch ZEV/EVG</a></li>
1306											
1307												<li><a href="/home/strom/energiegemeinschaften/leg.html" title="Interner Link: LEG">LEG</a></li>
1308											
1309										</ul>
1310									
1311								</li>
1312							
1313								<li class="parent-nav">
1314									<a href="/home/strom/smart-meter.html" title="Interner Link: Smart Meter">Smart Meter</a>
1315									
1316								</li>
1317							
1318								<li class="parent-nav">
1319									<a href="/home/strom/stromservices.html" title="Interner Link: Services">Services</a>
1320									
1321										<ul>
1322											
1323												<li><a href="/home/strom/stromservices.html#Par_sgsw_contactbusiness" title="Interner Link: Strom für Veranstaltungen">Strom für Veranstaltungen</a></li>
1324											
1325										</ul>
1326									
1327								</li>
1328							
1329								<li class="parent-nav">
1330									<a href="/home/strom/gebaeude.html" title="Interner Link: Gebäude ">Gebäude </a>
1331									
1332										<ul>
1333											
1334												<li><a href="/home/strom/gebaeude.html#Par_sgsw_imagetext" title="Interner Link: Energiedienstleistung PV">Energiedienstleistung PV</a></li>
1335											
1336												<li><a href="/home/strom/gebaeude.html#Par_sgsw_imagetext_5_cop" title="Interner Link: Hausinstallationskontrolle">Hausinstallationskontrolle</a></li>
1337											
1338												<li><a href="/home/strom/gebaeude.html#Par_sgsw_imagetext_7_cop" title="Interner Link: Installationsbewilligung">Installationsbewilligung</a></li>
1339											
1340										</ul>
1341									
1342								</li>
1343							
1344								<li class="parent-nav">
1345									<a href="/home/strom/geschaeftskunden.html" title="Interner Link: Geschäftskunden">Geschäftskunden</a>
1346									
1347								</li>
1348							
1349						</ul>
1350					</div>
1351				</div>
1352			</div>
1353		
1354			<div class="mega-menu-panel" data-menu-panel="wasser">
1355				<button class="mega-close js-mega-close" type="button">Schliessen<i class="fal fa-times"></i></button>
1356				<div class="mega-menu-inner has-teaser">
1357					
1358						<div class="mega-col mega-teaser">
1359						
1360							<a href="/home/555-jahre-wasserversorgung-st-gallen.html" title="Interner Link: 555 Jahre Wasserversorgung St.Gallen" class="mega-box">
1361								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_feiern_1.svg" alt="" class="svg-icon"></span>
1362								<span class="content">
1363									<span class="title">555 Jahre Wasser</span>
1364									<span class="desc">Feiern Sie mit!</span>
1365								</span>
1366							</a>
1367						
1368							<a href="/home/wasser/formular.html" title="Interner Link: Bestellung «Wasser-Rappen»" class="mega-box">
1369								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_recht-sauberes-wasser.svg" alt="" class="svg-icon"></span>
1370								<span class="content">
1371									<span class="title">Wasser-Rappen</span>
1372									<span class="desc">Spendenformular ausfüllen</span>
1373								</span>
1374							</a>
1375						
1376							<a href="/news/sgsw_news/2026/07/die--st-galler-brunnen-challenge--startet-mit-zwei-neuen-routen.html" title="Interner Link: Die «St.Galler Brunnen-Challenge» startet mit zwei neuen Routen" class="mega-box">
1377								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_quiz_1.svg" alt="" class="svg-icon"></span>
1378								<span class="content">
1379									<span class="title">Brunnen-Challenge</span>
1380									<span class="desc">Zwei neue Routen zum Jubiläum</span>
1381								</span>
1382							</a>
1383						
1384						</div>
1385					
1386					<div class="mega-col mega-nav">
1387						<ul>
1388							<li class="parent-nav">
1389								<a href="/home/wasser.html" title="Interner Link: Übersicht Wasser">
1389Übersicht Wasser</a>
1390							</li>
1391							
1392								<li class="parent-nav">
1393									<a href="/home/wasser/services.html" title="Interner Link: Services">Services</a>
1394									
1395								</li>
1396							
1397								<li class="parent-nav">
1398									<a href="/home/wasser/gebaeude.html" title="Interner Link: Gebäude">Gebäude</a>
1399									
1400										<ul>
1401											
1402												<li><a href="/home/wasser/gebaeude.html#_Par_sgsw_downloadlist_1_" title="Interner Link: Hausinstallationskontrolle">Hausinstallationskontrolle</a></li>
1403											
1404										</ul>
1405									
1406								</li>
1407							
1408						</ul>
1409					</div>
1410				</div>
1411			</div>
1412		
1413			<div class="mega-menu-panel" data-menu-panel="heizen">
1414				<button class="mega-close js-mega-close" type="button">Schliessen<i class="fal fa-times"></i></button>
1415				<div class="mega-menu-inner has-teaser">
1416					
1417						<div class="mega-col mega-teaser">
1418						
1419							<a href="/home/heizen.html#Par_sgsw_product_advisor" title="Interner Link: St.Galler Wärme#Par_sgsw_product_advisor" class="mega-box">
1420								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_heizung.svg" alt="" class="svg-icon"></span>
1421								<span class="content">
1422									<span class="title">Wärmelösung finden</span>
1423									<span class="desc">Jetzt Adresse eingeben</span>
1424								</span>
1425							</a>
1426						
1427						</div>
1428					
1429					<div class="mega-col mega-nav">
1430						<ul>
1431							<li class="parent-nav">
1432								<a href="/home/heizen.html" title="Interner Link: Übersicht Heizen">Übersicht Heizen</a>
1433							</li>
1434							
1435								<li class="parent-nav">
1436									<a href="/home/heizen/fernwaerme.html" title="Interner Link: Fernwärme">Fernwärme</a>
1437									
1438										<ul>
1439											
1440												<li><a href="/home/heizen/fernwaerme.html#Par_sgsw_product_electri" title="Interner Link: Produkte">Produkte</a></li>
1441											
1442												<li><a href="/home/heizen/fernwaerme.html#Par_sgsw_pricelist" title="Interner Link: Preise">Preise</a></li>
1443											
1444										</ul>
1445									
1446								</li>
1447							
1448								<li class="parent-nav">
1449									<a href="/home/heizen/gas.html" title="Interner Link: Gas">Gas</a>
1450									
1451										<ul>
1452											
1453												<li><a href="/home/heizen/gas.htm.html#Par_sgsw_product_electri" title="Interner Link: Produkte">Produkte</a></li>
1454											
1455												<li><a href="/home/heizen/gas.html#Par_sgsw_pricelist_copy" title="Interner Link: Preise">Preise</a></li>
1456											
1457												<li><a href="/home/heizen/gas.html#Par_sgsw_imagetext_copy_" title="Interner Link: Wartungs-Abo">Wartungs-Abo</a></li>
1458											
1459										</ul>
1460									
1461								</li>
1462							
1463								<li class="parent-nav">
1464									<a href="/home/heizen/waermepumpe.html" title="Interner Link: Wärmepumpe">Wärmepumpe</a>
1465									
1466								</li>
1467							
1468								<li class="parent-nav">
1469									<a href="/home/heizen/blockheizkraftwerk.html" title="Interner Link: Blockheizkraftwerk">Blockheizkraftwerk</a>
1470									
1471								</li>
1472							
1473								<li class="parent-nav">
1474									<a href="/home/heizen/geschaeftskunden.html" title="Interner Link: Geschäftskunden">Geschäftskunden</a>
1475									
1476								</li>
1477							
1478						</ul>
1479					</div>
1480				</div>
1481			</div>
1482		
1483			<div class="mega-menu-panel" data-menu-panel="glasfaser">
1484				<button class="mega-close js-mega-close" type="button">Schliessen<i class="fal fa-times"></i></button>
1485				<div class="mega-menu-inner has-teaser">
1486					
1487						<div class="mega-col mega-teaser">
1488						
1489							<a href="/home/glasfaser.html#Par_sgsw_productinfo_lis" title="Interner Link: St.Galler Glasfaser#Par_sgsw_productinfo_lis" class="mega-box">
1490								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_stecker.svg" alt="" class="svg-icon"></span>
1491								<span class="content">
1492									<span class="title">Jetzt Angebot bestellen</span>
1493									<span class="desc">Steigen Sie auf Glasfaser um.</span>
1494								</span>
1495							</a>
1496						
1497							<a href="/home/glasfaser.html#Par_sgsw_contactbusiness_1720540927" title="Interner Link: St.Galler Glasfaser#Par_sgsw_contactbusiness_1720540927" class="mega-box">
1498								<span class="icon"><img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_kein-planungs-betriebsaufwand.svg" alt="" class="svg-icon"></span>
1499								<span class="content">
1500									<span class="title">Technischer Support</span>
1501									<span class="desc">Probleme mit Glasfaseranschluss?</span>
1502								</span>
1503							</a>
1504						
1505						</div>
1506					
1507					<div class="mega-col mega-nav">
1508						<ul>
1509							<li class="parent-nav">
1510								<a href="/home/glasfaser.html" title="Interner Link: Übersicht Glasfaser">
1510Übersicht Glasfaser</a>
1511							</li>
1512							
1513								<li class="parent-nav">
1514									<a href="/home/glasfaser/gebaeude.html" title="Interner Link: Gebäude">Gebäude</a>
1515									
1516								</li>
1517							
1518						</ul>
1519					</div>
1520				</div>
1521			</div>
1522		
1523			<div class="mega-menu-panel" data-menu-panel="e-mobilitaet">
1524				<button class="mega-close js-mega-close" type="button">Schliessen<i class="fal fa-times"></i></button>
1525				<div class="mega-menu-inner">
1526					
1527					<div class="mega-col mega-nav">
1528						<ul>
1529							<li class="parent-nav">
1530								<a href="/home/e-mobilitaet.html" title="Interner Link: Übersicht E-Mobilität">Übersicht E-Mobilität</a>
1531							</li>
1532							
1533								<li class="parent-nav">
1534									<a href="/home/e-mobilitaet/zuhause.html" title="Interner Link: Zuhause">Zuhause</a>
1535									
1536										<ul>
1537											
1538												<li><a href="/home/e-mobilitaet/zuhause.html#Par_sgsw_facts_tiles" title="Interner Link: Fördergelder">Fördergelder</a></li>
1539											
1540										</ul>
1541									
1542								</li>
1543							
1544								<li class="parent-nav">
1545									<a href="/home/e-mobilitaet/arbeitsplatz.html" title="Interner Link: Arbeitsplatz">Arbeitsplatz</a>
1546									
1547								</li>
1548							
1549								<li class="parent-nav">
1550									<a href="/home/e-mobilitaet/quartier.html" title="Interner Link: Quartier">Quartier</a>
1551									
1552								</li>
1553							
1554								<li class="parent-nav">
1555									<a href="/home/e-mobilitaet/unterwegs.html" title="Interner Link: Unterwegs">Unterwegs</a>
1556									
1557								</li>
1558							
1559						</ul>
1560					</div>
1561				</div>
1562			</div>
1563		
1564	</div>
1565</nav>
1566
1567<script>
1568document.addEventListener('DOMContentLoaded', function () {
1569    const triggers = document.querySelectorAll('.js-mega-trigger');
1570    const megaMenu = document.querySelector('.main-nav-megamenu');
1571    const panels = document.querySelectorAll('.mega-menu-panel');
1572    const overlay = document.querySelector('.page-overlay');
1573    const closeButtons = document.querySelectorAll('.js-mega-close');
1574
1575    function closeMegaMenu() {
1576        document.body.classList.remove('mega-menu-open');
1577        if (!CSS.supports('scrollbar-gutter: stable')) {
1578            document.body.style.paddingRight = '';
1579        }
1580        megaMenu.classList.remove('is-open');
1581
1582        panels.forEach(panel => {
1583            panel.classList.remove('is-active');
1584        });
1585
1586        triggers.forEach(trigger => {
1587            trigger.parentElement.classList.remove('is-open');
1588        });
1589    }
1590
1591    function openMegaMenu(menuName, clickedTrigger) {
1592        if (!CSS.supports('scrollbar-gutter: stable')) {
1593            const scrollBarWidth = window.innerWidth - document.documentElement.clientWidth;
1594            document.body.style.paddingRight = scrollBarWidth + 'px';
1595        }
1596        document.body.classList.add('mega-menu-open');
1597        megaMenu.classList.add('is-open');
1598
1599        panels.forEach(panel => {
1600            panel.classList.remove('is-active');
1601        });
1602
1603        const activePanel = megaMenu.querySelector(
1604            '[data-menu-panel="' + menuName + '"]'
1605        );
1606
1607        if (activePanel) {
1608            activePanel.classList.add('is-active');
1609        }
1610
1611        triggers.forEach(trigger => {
1612            trigger.parentElement.classList.remove('is-open');
1613        });
1614
1615        clickedTrigger.parentElement.classList.add('is-open');
1616    }
1617
1618    triggers.forEach(trigger => {
1619        trigger.addEventListener('click', function (e) {
1620            e.preventDefault();
1621
1622            const menuName = this.dataset.menu;
1623            const isAlreadyOpen = this.parentElement.classList.contains('is-open');
1624
1625            if (isAlreadyOpen) {
1626                closeMegaMenu();
1627            } else {
1628                openMegaMenu(menuName, this);
1629            }
1630        });
1631    });
1632
1633    closeButtons.forEach(button => {
1634        button.addEventListener('click', closeMegaMenu);
1635    });
1636
1637    if (overlay) {
1638        overlay.addEventListener('click', closeMegaMenu);
1639    }
1640
1641    document.addEventListener('keydown', function (e) {
1642        if (e.key === 'Escape') {
1643            closeMegaMenu();
1644        }
1645    });
1646});
1647</script>
1647
1648	        
1649				
1650
1651
1652
1653
1654<script type="text/javascript" src="/apps/core/docroot/js/swiftype/hogan-3.0.1.js"></script>
1654
1655
1656<div class="search minimized desktop-visible">
1657    <button type="button" class="search-toggler"><span>Suche</span><i class="far fa-search"></i></button>
1658    <div class="searchform-container-box not-shown">
1659	    <form id="searchFormBox" name="searchFormBox" class="searchform" autocomplete="off">
1660	        <label class="input-label search-label" for="searchfield">
1661	            <span><span class="inline-desktop-visible">Wonach suchen Sie?</span></span>
1662	            <input type="text" placeholder="Wonach suchen Sie?" class="searchfield" name="searchfield" id="searchfield" />
1663	        </label>
1664	        <button type="submit" class="search-go"><i class="far fa-search"></i></button>
1665	    </form>
1666		<ul id="st-results-container" class="linklist hidden"></ul>
1667		<ul class="linklist initialSearchLink">
1668			<li><a href="/gn/suchen.html" title="Interner Link: Erweiterte Suche">Erweiterte Suche</a></li>
1669		</ul>
1670    </div>
1671</div>
1672<div class="search hidden">
1673    <form id="swiftypeMainSearch" name="searchFormBox" class="searchform" method="post" action="/home.sendCQForm.html">
1674        <label class="input-label search-label" for="stq">
1675            <input type="text" class="searchfield" id="stq" name="stq" placeholder="Suche" />
1676        </label>
1677        <button type="submit" class="search-go"><i class="far fa-search"></i></button>
1678    </form>
1679</div>
1680
1681<script type="text/javascript">
1682	// mobile searchfield
1683	$(document).on('submit', '#site-menu #swiftypeMainSearch', function (e) {
1684		e.preventDefault();
1685		$("#st-search-input").val($('#site-canvas #stq').val());
1686		window.location = '/gn/suchen.html#stq___' + $('#site-canvas #stq').val();
1687	});
1688</script>
1688
1689
1690<script type="text/javascript">
1691	let searchResults = [];
1692	
1693	var searchConfig = {
1694		domain: "www.sgsw.ch",
1695		facets: {},
1696		isSearch: false,
1697		activeFilter: 'content',
1698		searchType: 'searchbox',
1699		num: 10
1700	};
1701      
1702	/**** Custom Result Templates ****/
1703		
1704	var resultTemplate = Hogan.compile([
1705    	"<li>",
1706	        "<a href='{{url}}' title='{{title}}'>{{title}}</a>",
1707		"</li>"
1708	].join('') );
1709	
1710	let debounceTimeout;
1711	$(document).on('keyup', '.main-nav-first #searchfield', function (key) {
1712	  	if (key.keyCode != 13 && key.keyCode != null) {
1713  			// Entfernt vorheriges Timeout, wenn eine neue Taste gedrueckt wird
1714  			clearTimeout(debounceTimeout);
1715		  
1716  			debounceTimeout = setTimeout(function () {  // Setzt neues Timeout
1717				var searchTag = $('.main-nav-first .tile-filter li.searchtag').text();
1718				if(searchTag != ''){
1719					resetSearch(false);
1720				}
1721				var searchValue = $(".main-nav-first #searchfield").val();
1722				if(searchValue == ''){
1723					$('.main-nav-first .initialSearchLink').removeClass("hidden");
1724					$('.main-nav-first #st-results-container').addClass("hidden");
1725					$('.main-nav-first #st-results-container').empty();
1726					getResults();
1727				} else if(searchValue.length > 4){
1728					searchValue = xssPrevention(searchValue,true);
1729					$('.main-nav-first .initialSearchLink').addClass("hidden");
1730					$('.main-nav-first #st-results-container').removeClass("hidden");
1731					window.searchConfig.isSearch = true;
1732					getResults();
1733				}
1734  			}, 500);  // Debounce-Zeit in Millisekunden
1735	  	}
1736    });
1737	
1738    $(document).on('submit', '.main-nav-first #searchFormBox', function (e) {
1739        e.preventDefault();
1740        var searchValue = $('.main-nav-first #searchfield').val();
1741        if(searchValue.length > 0){
1742        	searchValue = xssPrevention(searchValue,true);
1743  			var searchTag = "<li class='searchtag'><a href='#' onclick='javascript:resetSearch(true)'>" + searchValue + "</a></li>";
1744  			var $searchFacetContainer = $('.main-nav-first .tile-filter ul.inhaltstyp-items');
1745		  	$searchFacetContainer.prepend(searchTag);
1746            $searchFacetContainer.removeClass("hidden");
1747			$('.main-nav-first #st-results-container').removeClass("hidden");
1748			$('.main-nav-first .initialSearchLink').addClass("hidden");
1749			$(".main-nav-first #searchfield").blur();
1750            window.searchConfig.isSearch = true;
1751			getResults();
1752        }else{
1753        	resetSearch(true);
1754        }
1755	});
1756	
1757    function getResults() {
1758		var searchValue = encodeURI($(".main-nav-first #searchfield").val());
1759		var domain = window.searchConfig.domain;
1760		var activeFilter = window.searchConfig.activeFilter;
1761		var searchType = window.searchConfig.searchType;
1762        var num = window.searchConfig.num;
1763        $.ajax({
1764            type: "GET",
1765            url: "/content/sgsw_onlinewelt/home.searchresults.html?search=true",
1766            contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
1767            //dataType: "json",
1768            data: {
1769            	searchValue: searchValue,
1770            	isSearchPage: false,
1771            	domain: domain,
1772            	activeFilter: activeFilter,
1773            	searchType: searchType,
1774                num: num
1775            },
1776            encode: true,
1777            success: function(data) {
1778                var dataString = data;
1779                var index = data.indexOf('<!--cq');
1780                if(index >= 0){
1781                    dataString = data.substring(0, index);
1782                }
1783                const jsonObj = JSON.parse(dataString);
1784                searchResults = jsonObj.organic;
1785                displayResults(searchResults);
1786            }
1787        });
1788    }
1789    
1790    function displayResults(results) {
1791        const resultContainer = $('.main-nav-first #st-results-container');
1792        resultContainer.empty();
1793        
1794        const totalResultCount = results.length
1795        var count = 0;
1796        
1797        Array.from(results).forEach((result) => {
1798        	// cleanup title
1799        	var resultTitle = result.title;
1800        	resultTitle = resultTitle.replaceAll(" - stadt.sg.ch - Kanton St. Gallen", "")
1801						        	.replaceAll(" | stadt.sg.ch - Kanton St. Gallen", "")
1802						            .replaceAll(" - stadt.sg.ch - Kanton St.Gallen", "")
1803						            .replaceAll(" | stadt.sg.ch - Kanton St.Gallen", "")
1804						    		.replaceAll(" - stadt.sg.ch", "")
1805						            .replaceAll(" | stadt.sg.ch", "")
1806						            .replaceAll(" - Kanton St. Gallen", "")
1807						            .replaceAll(" | Kanton St. Gallen", "")
1808						            .replaceAll(" - Kanton St.Gallen", "")
1809						            .replaceAll(" | Kanton St.Gallen", "")
1810						            .replaceAll(" - St.Galler Stadtwerke", "")
1811						            .replaceAll(" | St.Galler Stadtwerke", "");
1812        	
1813            var data = {
1814                url: result.link,
1815                title: resultTitle
1816            };
1817
1818            if (result.link.indexOf(".ocFile") >= 0 || result.link.indexOf("/content/dam/") >= 0 || result.link.indexOf("/news/stsg_") >= 0 || result.link.indexOf("/news/sgsw_") >= 0  || result.link.indexOf("/home/news") >= 0) {
1819                return;
1820            }
1821
1822            count++;
1823            if (count <= 10) {
1824                const item = resultTemplate.render(data);
1825                resultContainer.append(item);
1826            }
1827        });
1828        
1829		var currentSearchValue = $(".main-nav-first #searchfield").val();
1830		currentSearchValue = xssPrevention(currentSearchValue,false);
1831		
1832		if (totalResultCount === 0) {
1833			resultContainer.html("<li><a style='color: #e00025' href='/gn/suchen.html#stq=" + currentSearchValue + "'>Suche erweitern</a></li>");
1834		} else {
1835			var nofSearchTiles = 10;
1836			if (totalResultCount === 10) {
1837				resultContainer.append("<li><a style='color: #e00025' href='/gn/suchen.html#stq=" + currentSearchValue + "'>Weitere Ergebnisse</a></li>");
1838			} else{
1839				resultContainer.append("<li><a style='color: #e00025' href='/gn/suchen.html#stq=" + currentSearchValue + "'>Suche erweitern</a></li>");
1840			}
1841		}
1842    }
1843	
1844	function resetSearch(clearSearchField){
1845		window.searchConfig.isSearch = false;
1846		$('.main-nav-first .tile-filter').addClass("hidden");
1847		$('.main-nav-first .tile-filter ul.inhaltstyp-items').empty();
1848		if(clearSearchField){
1849			$(".main-nav-first #searchfield").val('');
1850			$(".main-nav-first #searchfield").focus();
1851			$('.main-nav-first #st-results-container').addClass("hidden");
1852			$('.main-nav-first .initialSearchLink').removeClass("hidden");
1853		}
1854		window.location.hash = '';
1855		getResults();
1856	}
1857	
1858	function xssPrevention(value,output){
1859		var lt = /</g, 
1860	    gt = />/g, 
1861	    ap = /'/g, 
1862	    ic = /"/g;
1863	    if(output){
1864	    	value = value.toString().replace(lt, "").replace(gt, "");
1865	    }else{
1866	    	value = value.toString().replace(lt, "").replace(gt, "").replace(ap, "&#39;").replace(ic, "&#34;");
1867	    }
1868		return value;
1869	}
1870</script>
1870
1871			
1872			<div class="navbar-header pull-right">
1873				<a href="#site-menu" class="mobile-menu-toggle js-mobile-menu-open btn mobile-visible" id="toggle-button"><i class="fa fa-bars"></i><span class="sr-only">Men&uuml; aufklappen</span></a>
1874			</div>
1875		</div>
1876    </div>
1877</nav>
1878<div class="page-overlay"></div>
1879
1880
1881
1882					    </div>
1883					    
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895			    	
1896			    	
1897			    	
1898			    		
1899						    <div class="jumbotron">
1900						    	
1901
1902
1903
1904 
1905	
1906
1907
1908
1909	<div class="sgsw-slider">
1910		
1911		    
1912			
1913				<div class="image">
1914					
1915						<div style="background-image: url(/content/dam/bilder_library/sgsw-onlinewelt/keyvisuals/sgsw_keyvisual_homepage_2.jpg);"></div>
1916					
1917				</div>
1918			
1919		
1920	</div>
1921	<div class="sgsw-slider-mobile">
1922		
1923		    
1924			
1925				<div class="image">
1926					
1927						<div style="background-image: url(/content/dam/bilder_library/sgsw-onlinewelt/keyvisuals/sgsw_keyvisual_homepage_2.jpg);"></div>
1928					
1929				</div>
1930			
1931		
1932	</div>
1933	
1933<script type="text/javascript">
1934	    $('.sgsw-slider .image').slick({
1935	        dots: false,
1936	        infinite: true,
1937	        speed: 1000,
1938	        slidesToShow: 1,
1939	        adaptiveHeight: true,
1940	        autoplay: true,
1941	        autoplaySpeed: 5000,
1942	        fade: true,
1943	        pauseOnHover: false
1944	    });
1945	    
1946	    $('.sgsw-slider-mobile .image').slick({
1947	        dots: false,
1948	        infinite: true,
1949	        speed: 1000,
1950	        slidesToShow: 1,
1951	        adaptiveHeight: true,
1952	        autoplay: true,
1953	        autoplaySpeed: 5000,
1954	        fade: true,
1955	        pauseOnHover: false
1956	    });
1957	</script>
1957
1958
1959
1960
1961						        
1962
1963
1964
1965
1966	
1967
1968
1969
1970
1971<div class="teaser left">
1972	
1973	    <div class="teaser-content">
1974	        
1975	        <p class="content">Wie sieht unsere Energiezukunft aus?</p>
1976	        
1977	        <div class="teaser-canvas-arrow">&nbsp;</div>
1978	    </div>
1979	
1980</div>
1981
1982
1983						    </div>
1984						    <div class="LeadPar sgsw_productlead parbase">
1985
1986
1987
1988
1989	
1990
1991
1992
1993
1994<div class="row lead-box header color-grey" id="Par_LeadPar">
1995        
1996        	
1997        	
1998        	
1999        	    <div class="col-md-12">
2000       				<div class="container">
2001			        	<div class="stsg-tile">
2002				            <div class="row leadrow">
2003								
2004						            
2005						            
2006						            	<div class="col-md-12">
2007											<h1>Wir haben die Antwort.</h1>
2008											<p>Wer sich mit der Zukunft beschäftigt, möchte Klarheit.&nbsp;Gemeinsam mit Ihnen finden wir die für Sie bestmögliche Lösung. Damit Sie auch künftig wie gewohnt rund um die Uhr gut und sicher versorgt sind: Mit&nbsp;<a href="/home/strom.html">Strom</a>,&nbsp;<a href="/home/wasser.html">Wasser</a>,&nbsp;<a href="/home/heizen.html">Wärme</a>,&nbsp;<a href="/home/heizen/gas.html">Gas</a>,&nbsp;<a href="https://www.sgsw.ch/home/glasfaser.html" target="_blank">Glasfasern<span class="sr-only"> neues Fenster</span></a>&nbsp;und Lösungen für&nbsp;<a href="/home/e-mobilitaet.html">E-Mobilität</a>.</p>
2009						            	</div>
2010						            
2011					            
2012				            </div>
2013							
2014			        	</div>
2015					</div>
2016   				</div>
2017        	
2018        
2019</div>
2020	
2021</div>
2022
2023						    
2024
2025
2026
2027
2028	
2029
2030
2031
2032
2033
2034
2035
2036			    			
2037
2038
2039
2040
2041	
2042
2043
2044<div class="id-wissenswertes-linktiles" id="home-header-linktiles">
2045    <div class="container">
2046    	<div class="container intro">
2047    		<h2>Das könnte Sie interessieren:</h2>
2048    	</div>
2049        <div class="row link-boxes">
2050			
2051				<div class="col-xs-12 col-sm-6 col-md-4">
2052					<a href="/home/energieportal/rechnungen.html" title="Interner Link: Alles über Rechnungen" class="wrapper-link simple">Alles über Rechnungen</a>
2053				</div>
2054			
2055				<div class="col-xs-12 col-sm-6 col-md-4">
2056					<a href="https://meine.sgsw.ch/forms/notify-move-departure" title="Externer Link: Es öffnet sich ein neues Fenster: Umzug melden" class="wrapper-link simple" target="_blank">Umzug melden<span class="hidden"> neues Fenster</span></a>
2057				</div>
2058			
2059				<div class="col-xs-12 col-sm-6 col-md-4">
2060					<a href="/home/strom/solarstrom.html" title="Interner Link: Hier finden Sie unsere Solarstrom-Lösungen." class="wrapper-link simple">Solarstrom</a>
2061				</div>
2062			
2063				<div class="col-xs-12 col-sm-6 col-md-4">
2064					<a href="/home/555-jahre-wasserversorgung-st-gallen.html" title="Interner Link: Hier finden Sie alles über unser Jubiläum." class="wrapper-link simple">555 Jahre Trinkwasser</a>
2065				</div>
2066			
2067				<div class="col-xs-12 col-sm-6 col-md-4">
2068					<a href="/home/e-mobilitaet/zuhause.html" title="Interner Link: Hier erfahren Sie mehr über E-Ladestationen." class="wrapper-link simple">E-Ladestationen</a>
2069				</div>
2070			
2071				<div class="col-xs-12 col-sm-6 col-md-4">
2072					<a href="/home/stoerungen.html" title="Interner Link: Störung melden." class="wrapper-link simple">Störungen</a>
2073				</div>
2074			
2075        </div>
2076    </div>
2077</div>
2078
2079
2080			    		
2081			    		
2082			    		
2083			    		
2084			    	
2085			    </header>
2086			    
2087					<div class="scrolldown">
2088					    <div class="scroll icon"><i class="far fa-2x fa-angle-down"></i></div>
2089					</div>
2090			    
2091				<div class="scrolltop">
2092				    <div class="scroll icon"><i class="far fa-2x fa-angle-up"></i></div>
2093				</div>
2094            	<div class="container-fluid page-content" id="inhalt" data-swiftype-index="true">
2095            		
2096
2097
2098					
2099					
2100
2101
2102
2103
2104
2105
2106
2107
2108	
2109
2110
2111
2112	
2113
2114
2115
2116
2117
2118
2119<div class="row id-news-home overlay-bottom-white" id="Par_news-home">
2120	<div class="col-md-12">
2121		<div class="container">
2122			<div class="container intro">
2123				<div class="row">
2124					<div class="col-md-12">
2125						<div class="title-row">
2126							<h2>News</h2>
2127						</div>
2128					</div>
2129				</div>
2130			</div>
2131			<div class="home-news-overview">
2132				<div class="news-box leadstory">
2133				    <a href="https://www.sgsw.ch/news/sgsw_news/2026/09/wie-ein-altbau-fit-fuer-die-energiezukunft-wird.html" title="Interner Link: Wie ein Altbau fit für die Energiezukunft wird" class="newslink">
2134				        <div class="newsimage">
2135				            <span class="image" style="background-image:url('/content/dam/bilder_library/sgsw-onlinewelt/news/2026-09-02-grütlistrasse/Thumbnail.jpg')"></span>
2136				        </div>
2137				        <div class="tile-content">
2138				            <div class="content">
2139				                <div class="date">09.09.2026</div>
2140				                <div class="intro">Mehrfamilienhaus aus den 1960er-Jahren </div>
2141				                <div class="title hyphenate">Wie ein Altbau fit für die Energiezukunft wird</div>
2142				            </div>
2143				        </div>
2144				    </a>
2145				</div>
2146				<div class="news-box disorder">
2147					<div class="tile-content">
2148						<div class="current-disorder">
2149							<div class="title">Aktuelle St&ouml;rungen</div>
2150							<div class="description hyphenate">
2151								<p></p>
2152							</div>
2153							<div class="morelink">
2154								<a href="/home/stoerungen.html" title="Interner Link: Zu Störungen" class="disorder-link">Zu Störungen</a>
2155							</div>
2156						</div>
2157						<div class="report-disorder">
2158							<a href="/home/stoerungen.html" title="Interner Link: Störung melden" class="btn btn-link disorder">Störung melden</a>
2159						</div>
2160					</div>
2161				</div>
2162				
2163					<div class="news-box">
2164					    <a href="https://www.sgsw.ch/news/sgsw_news/2026/09/verwaltungsgerichtsurteil-zu-gasgebuehren-bundesgericht-tritt-nicht-auf-die-beschwerde-der-stadt-ein.html" title="Interner Link: Bundesgericht tritt nicht auf die Beschwerde der Stadt ein" class="newslink">
2165					        <div class="newsimage">
2166					            <span class="image" style="background-image:url('/content/dam/bilder_library/sgsw-onlinewelt/news/2026-09-30-medienmitteilung/thumbn
2166ail.jpg')"></span>
2167					        </div>
2168					        <div class="tile-content">
2169					            <div class="content">
2170					                <div class="date">30.09.2026<span class="medienmitteilung">Medienmitteilung</span></div>
2171					                <div class="intro">Verwaltungsgerichtsurteil zu Gasgebühren</div>
2172					                <div class="title hyphenate">Bundesgericht tritt nicht auf die Beschwerde der Stadt ein</div>
2173					            </div>
2174					        </div>
2175					    </a>
2176					</div>
2177				
2178					<div class="news-box">
2179					    <a href="https://www.sgsw.ch/news/sgsw_news/2026/09/ein-quartier-als-labor-wo-innovative-loesungen-fuer-die-ganze-stadt-entstehen.html" title="Interner Link: Wo innovative Lösungen für die ganze Stadt entstehen" class="newslink">
2180					        <div class="newsimage">
2181					            <span class="image" style="background-image:url('/content/dam/bilder_library/sgsw-onlinewelt/news/2026-09-15-philipp-ditzel/Philipp Ditzel Thumbnail.jpg')"></span>
2182					        </div>
2183					        <div class="tile-content">
2184					            <div class="content">
2185					                <div class="date">23.09.2026</div>
2186					                <div class="intro">5 Fragen an den Bereichsleiter Digitalisierung und Informatik</div>
2187					                <div class="title hyphenate">Wo innovative Lösungen für die ganze Stadt entstehen</div>
2188					            </div>
2189					        </div>
2190					    </a>
2191					</div>
2192				
2193					<div class="news-box">
2194					    <a href="https://www.sgsw.ch/news/sgsw_news/2026/08/leichter-anstieg-der-strompreise-ab-1--januar-2027-fuer-haushalt.html" title="Interner Link: Leichter Anstieg der Strompreise ab 1. Januar 2027 für Haushalte" class="newslink">
2195					        <div class="newsimage">
2196					            <span class="image" style="background-image:url('/content/applikationen/news/sgsw_news/2026/08/leichter-anstieg-der-strompreise-ab-1--januar-2027-fuer-haushalt/jcr:content/NewsdetailPar/image.imageWidth__630.jpg/headerimage.jpg')"></span>
2197					        </div>
2198					        <div class="tile-content">
2199					            <div class="content">
2200					                <div class="date">26.08.2026<span class="medienmitteilung">Medienmitteilung</span></div>
2201					                
2202					                <div class="title hyphenate">Leichter Anstieg der Strompreise ab 1. Januar 2027 für Haushalte</div>
2203					            </div>
2204					        </div>
2205					    </a>
2206					</div>
2207				
2208					<div class="news-box">
2209					    <a href="https://www.sgsw.ch/news/sgsw_news/2026/08/rund-1-500-gaeste-feiern--555-jahre-wasser-in-st-gallen-.html" title="Interner Link: Rund 1'500 Gäste feiern «555 Jahre Wasser in St.Gallen»" class="newslink">
2210					        <div class="newsimage">
2211					            <span class="image" style="background-image:url('/content/dam/bilder_library/sgsw-onlinewelt/news/2026-08-25-jubiläumsanlass-555/Jubiläumsanlass _555 Jahre Wasser in St.Gallen_ 8 t.jpg')"></span>
2212					        </div>
2213					        <div class="tile-content">
2214					            <div class="content">
2215					                <div class="date">26.08.2026</div>
2216					                <div class="intro">Jubiläumsfest auf dem Gallusplatz</div>
2217					                <div class="title hyphenate">Rund 1&#039;500 Gäste feiern «555 Jahre Wasser in St.Gallen»</div>
2218					            </div>
2219					        </div>
2220					    </a>
2221					</div>
2222				
2223					<div class="news-box">
2224					    <a href="https://www.sgsw.ch/news/sgsw_news/2026/08/rwsg-startet-mit-dem-bau-des-seewasserwerks-riet-ii-.html" title="Interner Link: RWSG startet mit dem Bau des Seewasserwerks Riet II " class="newslink">
2225					        <div class="newsimage">
2226					            <span class="image" style="background-image:url('/content/dam/bilder_library/sgsw-onlinewelt/news/2026-08-14-baustrat-riet-ii/Vertreterinnen und Vertreter der Aktionärspartner, Projektverantwortliche und weitere Beteiligte beim Baustart des Riet II t.jpg')"></span>
2227					        </div>
2228					        <div class="tile-content">
2229					            <div class="content">
2230					                <div class="date">14.08.2026<span class="medienmitteilung">Medienmitteilung</span></div>
2231					                
2232					                <div class="title hyphenate">RWSG startet mit dem Bau des Seewasserwerks Riet II </div>
2233					            </div>
2234					        </div>
2235					    </a>
2236					</div>
2237				
2238				<div class="news-box more-button">
2239					<a href="/home/news.html" title="Interner Link: Alle News ansehen" class="wrapper-link"><h4>Alle News ansehen</h4></a>
2240				</div>
2241			</div>
2242		</div>
2243	</div>
2244</div>
2245
2246
2247
2248
2249
2250
2251	
2252
2253
2254
2255
2256<div class="row id-produkte color-grey" id="Par_sgsw_available_produ">
2257	<link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
2258	<link rel="stylesheet" href="https://js.arcgis.com/3.18/esri/css/esri.css">
2259	<div class="col-md-12">
2260		<div class="container">
2261			<div class="container intro">
2262				<h2>Unsere Angebote an Ihrer Adresse:</h2>
2263				<p>Geben Sie Ihre Adresse ein und entdecken Sie die verfügbaren Angebote.</p>			
2264			</div>
2265		</div>
2266		<div class="row id-map-home">
2267			<div class="col-md-12 no-gutter">
2268		    	<div class="mapwrap">
2269					<div class="select-box panel panel-default">
2270						<div class="panel-heading text-left box-toggler">Nach Themen filtern<i class="far fa-angle-up toggler pull-right"></i></div>
2271						<div class="panel-body">
2272							<div id="layerSelect"></div>
2273						</div>
2274					</div>
2275		            <div class="overlay" onClick="style.pointerEvents='none'"></div>
2276		            <div id="maphome" class="map maphome">
2277		            	<button id="CloseButton" title="Karte schliessen"><i class="fal fa-times"></i></button>
2278						<div id="LocateButton"></div>
2279						<div id="BasemapToggle">
2280							<img id="BasemapThumbnail"/>
2281						</div>
2282		            </div>
2283		        </div>
2284			</div>
2285			<div id="overlay-msg" class="modal" role="dialog" style="display: none;">
2286				<div class="modal-dialog">
2287					<div class="modal-content">
2288						<div class="modal-header">
2289							<button type="button" class="close" data-dismiss="modal">×</button>
2290							<h3 class="modal-title">Hinweis</h3>
2291						</div>
2292						<div class="modal-body">
2293							<p>Die Eignung Photovoltaik ist auf diesem Zoom-Level nicht verf&uuml;gbar.<br/>Zoomen Sie weiter in die Karte hinein, bis die Eignung sichtbar wird.</p>
2294							<p><a href="https://www.sgsw.ch/home/strom/solarstrom.html" title="mehr zu Solarstrom" class="btn btn-link">mehr zu Solarstrom</a></p>
2295						</div>
2296					</div>
2297				</div>
2298			</div>
2299		</div>
2300		<div class="row available-products-search color-grey">
2301			<div class="col-md-12">
2302				<div class="container">
2303					<div class="row searchfield">
2304						<div class="col-xs-12">
2305							<form class="form adresse" id="form">
2306								<label class="input-label adresse" for="adresse">
2307									<span>Adresse eingeben</span>
2308									<input type="text" name="adresse" id="adresse">
2309								</label>
2310								<button type="submit" class="search-go toggle-available-products"><i class="fal fa-search"></i></button>
2311							</form>
2312							<a href="#" title="Karte ausklappen" class="icon-link inline-icon-link pulldown pull-right" id="map-toggler"></a>
2313						</div>
2314					</div>
2315				</div>
2316			</div>
2317		</div>
2318		<div class="row available-products-static color-grey">
2319			<div class="col-md-12">
2320				<div class="container">
2321					<div class="tilebox">
2322						<div class="stsg-tile product-tile width-33">
2323							<span class="title">Strom</span>
2324							<img class="img-responsive" src="/content/dam/bilder_library/sgsw-onlinewelt/products/sgsw_produkte_strom.svg"/>
2325							<span class="description">St.Galler Stromprodukte</span>
2326							<a href="/home/strom.html" title="Interner Link: Mehr Infos" class="btn btn-link">Mehr Infos</a>
2327						</div>
2328						<div class="stsg-tile product-tile width-33">
2329							<span class="title">Solar Community</span>
2330							<img class="img-responsive" src="/content/dam/bilder_library/sgsw-onlinewelt/products/[email protected]"/>
2331							<span class="description">St.Galler Solar Community</span>
2332							<a href="/home/strom/solarstrom/solar-community.html" title="Interner Link: Mehr Infos" class="btn btn-link">Mehr Infos</a>
2333						</div>
2334						<div class="stsg-tile product-tile width-33">
2335							<span class="title">Gas</span>
2336							<img class="img-responsive" src="/content/dam/bilder_library/sgsw-onlinewelt/products/sgsw_produkte_gas.svg"/>
2337							<span class="description">Erdgas und Biogas</span>
2338							<a href="/home/heizen/gas.html" title="Interner Link: Mehr Infos" class="btn btn-link">Mehr Infos</a>
2339						</div>
2340						<div class="stsg-tile product-tile width-33">
2341							<span class="title">Fernwärme</span>
2342							<img class="img-responsive" src="/content/dam/bilder_library/sgsw-onlinewelt/products/sgsw_produkte_waerme.svg"/>
2343							<span class="description">St.Galler Wärme</span>
2344							<a href="/home/heizen/fernwaerme.html" title="Interner Link: Mehr Infos" class="btn btn-link">Mehr Infos</a>
2345						</div>
2346						<div class="stsg-tile product-tile width-33">
2347							<span class="title">Glasfaser</span>
2348							<img class="img-responsive" src="/content/dam/bilder_library/sgsw-onlinewelt/products/sgsw_produkte_glasfasernetz.svg"/>
2349							<span class="description">St.Galler Glasfasernetz</span>
2350							<a href="/home/glasfaser.html" title="Interner Link: Mehr Infos" class="btn btn-link">Mehr Infos</a>
2351						</div>
2352						<div class="stsg-tile product-tile width-33">
2353							<span class="title">E-Mobilität</span>
2354							<img class="img-responsive" src="/content/dam/bilder_library/sgsw-onlinewelt/products/sgsw_produkte_mobilitaet.svg"/>
2355							<span class="description">E-Mobilitätslösungen</span>
2356							<a href="/home/e-mobilitaet.html" title="Interner Link: Mehr Infos" class="btn btn-link">Mehr Infos</a>
2357						</div>
2358					</div>
2359				</div>
2360			</div>
2361		</div>
2362		<div class="row available-products-results color-grey" style="display: none;"></div>
2363	</div>
2364	
2364<script src="/apps/core/docroot/js/jquery-ui.autocomplete.min.js"></script>
2364
2365	
2365<script src="https://js.arcgis.com/3.18/init.js"></script>
2365
2366	
2366<script>
2367	 	require(["dojo/dom", "dojo/dom-construct", "dijit/form/CheckBox", "esri/dijit/LocateButton", "esri/basemaps", "esri/arcgis/utils", "esri/geometry/Point", "esri/SpatialReference", "esri/symbols/PictureMarkerSymbol", "esri/graphic", "dojo/domReady!"], 
2368		function(dom, domConstruct, CheckBox, LocateButton, esriBasemaps, arcgisUtils, Point, SpatialReference, PictureMarkerSymbol, Graphic) 
2369		{
2370	        // WebMap - reference target WebMap created by RIZ 
2371	        var webMapItemID = "f8a9a2413b104a248dd6a89966823365";
2372	        var map;
2373	        var layerInfo;
2374	        var deferred = arcgisUtils.createMap(webMapItemID, "maphome", {
2375	            bingMapsKey: "quyKvCPHhi6hZQ4uTwzV~8-jJu5PN-YKsgCWXxxZu-Q~Ap7M4krA0-zSc_Z5GxdzLaeGSkcTCRsSNSCEtCfjYhCykr6qyH2odgO7eZo2tkGI"
2376	        });
2377	        deferred.then(function(response) {
2378	            map = response.map;
2379	            layerInfo = response.itemInfo.itemData.operationalLayers;
2380	            esriBasemaps.sgsw = {
2381	                baseMapLayers: response.itemInfo.itemData.baseMap.baseMapLayers,
2382	                thumbnailUrl: "https://js.arcgis.com/3.18/esri/images/basemap/satellite.jpg",
2383	                title: "Imagery"
2384	            };
2385	            viewReadyHandler();
2386	        });
2387	
2388	        // Spatial reference system for address search - wkid 3857 is fixed
2389	        var addressSR = new SpatialReference(3857);
2390	
2391	        // Symbol for address marker - can be any image of any size
2392	        var addressMarker = new PictureMarkerSymbol("/apps/core/docroot/images/design/sgsw-onlinewelt/map-marker-icon.png", 32, 32);
2393	
2394	        // event handler function - called once when map is ready
2395	        var viewReadyHandler = function() {
2396	            // LocationFinder autocomplete
2397	            $(function() {
2398	                $("#adresse").autocomplete({
2399	                    source: function(request, response) {
2400	                        $.ajax({
2401	                            url: "https://locationfinder.stadt.sg.ch:8085/Finder/Lookup?filter=type:AdresseSGSWOnline",
2402	                            dataType: "json",
2403	                            jsonp: false,
2404	                            data: {
2405	                                query: request.term
2406	                            },
2407	                            success: function(data) {
2408	                                // show only street addresses (street and house number)
2409	                                var filterData = jQuery.grep(data.locs, function(a) {
2410	                                    return a.type == "AdresseSGSWOnline";
2411	                                });
2412	                                var modData = jQuery.map(filterData, function(n, i) {
2413	                                    n.label = n.name;
2414	                                    return n;
2415	
2416	                                });
2417	                                modData.sort(compareAdresses);
2418	                                response(modData);
2419	                            }
2420	                        });
2421	                    },
2422	                    minLength: 2,
2423	                    // set address location after selection
2424	                    select: function(event, ui) {
2425	                        setAddress(ui.item.cx, ui.item.cy);
2426	                        checkAvailableProducts(ui.item.id, '');
2427	                    }
2428	                });
2429	            });
2430	
2431	            // compare LocationFinder results (alphanumeric sorting)
2432	            var compareAdresses = function(as, bs) {
2433	                as = as.name;
2434	                bs = bs.name;
2435	                var a, b, a1, b1, i = 0,
2436	                    n, L,
2437	                    rx = /(\.\d+)|(\d+(\.\d+)?)|([^\d.]+)|(\.\D+)|(\.$)/g;
2438	                if (as === bs) return 0;
2439	                a = as.toLowerCase().match(rx);
2440	                b = bs.toLowerCase().match(rx);
2441	                L = a.length;
2442	                while (i < L) {
2443	                    if (!b[i]) return 1;
2444	                    a1 = a[i],
2445	                        b1 = b[i++];
2446	                    if (a1 !== b1) {
2447	                        n = a1 - b1;
2448	                        if (!isNaN(n)) return n;
2449	                        return a1 > b1 ? 1 : -1;
2450	                    }
2451	                }
2452	                return b[i] ? -1 : 0;
2453	            }
2454	
2455	            // dynamic creation of the input elements used for layer selection
2456	            map.graphicsLayerIds.forEach(function(layerId, i) {
2457	                var id = "layerSelect" + i;
2458	                var layer = map.getLayer(layerId);
2459	                var box = new CheckBox({
2460	                    id: id,
2461	                    class: "layerSelectCheckBox",
2462	                    checked: layer.visible,
2463	                    onChange: function(visible) {
2464	                        layer.setVisibility(visible);
2465	                    }
2466	                });
2467	                box.placeAt("layerSelect", "first");
2468	                domConstruct.place('<label for="' + id + '">' + getLayerTitle(layer) + '</label>', dom.byId(id), 'before');
2469	            });
2470	
2471	            // register events for mouse-over and visiblity change
2472	            map.graphicsLayerIds.forEach(function(layerId, i) {
2473	                var layer = map.getLayer(layerId);
2474	                layer.on("mouse-over", mouseOverHandler);
2475	                layer.on("mouse-out", mouseOutHandler);
2476	                layer.on("visibility-change", visibilityChangeHandler);
2477	            });
2478	
2479	            // register event handler the change of zoom levels
2480	            map.on("extent-change", extentChangeHandler);
2481	
2482	            // create geolocate tool and button
2483	            var locateButton = new LocateButton({
2484	                map: map
2485	            }, "LocateButton");
2486	            locateButton.startup();
2487	
2488	            // create basemap tool and toggle button
2489	            var toggle = false;
2490	            var thumbnails = {
2491	                false: "https://js.arcgis.com/3.18/esri/images/basemap/topo.jpg",
2492	                true: esriBasemaps.sgsw.thumbnailUrl
2493	            };
2494	            $("#BasemapThumbnail").attr("src", thumbnails[toggle]);
2495	            $("#BasemapThumbnail").click(function() {
2496	                map.layerIds.map(function(s) {
2497	                    map.getLayer(s).setVisibility(toggle);
2498	                });
2499	                if (!toggle) map.setBasemap("topo");
2500	                if (toggle) map.setBasemap("sgsw");
2501	                toggle = !toggle;
2502	                $("#BasemapThumbnail").attr("src", thumbnails[toggle]);
2503	            });
2504	        };
2505	
2506	        // event handler for visibility change
2507	        var visibilityChangeHandler = function(evt) {
2508	            var layer = evt.target;
2509	            if (layer.visible && !layer.visibleAtMapScale) {
2510	                //alert("not visible at current zoom level: " + getLayerTitle(layer));
2511	                $('#overlay-msg').modal('show');
2512	            }
2513	            // close info window if parent layer is hidden
2514	            if (!layer.visible) {
2515	                if (map.infoWindow && map.infoWindow.features) {
2516	                    map.infoWindow.features.forEach(function(feature, i) {
2517	                        if (feature._graphicsLayer.id == layer.id) {
2518	                            if (map.infoWindow.isShowing) {
2519	                                map.infoWindow.hide();
2520	                            }
2521	                        }
2522	                    });
2523	                }
2524	            }
2525	        }
2526	
2527	        // event handler for change of zoom levels
2528	        var extentChangeHandler = function(evt) {
2529	            if (evt.levelChange) {
2530	                var hiddenLayers = getHiddenLayers();
2531	                var hiddenLayersMsg = hiddenLayers.map(function(item) {
2532	                    return getLayerTitle(item);
2533	                });
2534	                if (hiddenLayers.length > 0) {
2535	                    //alert("not visible at current zoom level: " + hiddenLayersMsg);
2536	                	//$('#overlay-msg').modal('show');
2537	                }
2538	            }
2539	        }
2540	
2541	        // returns all activated layers that are currently not visible due to map scale limitations
2542	        var getHiddenLayers = function() {
2543	            var hiddenLayers = [];
2544	            map.graphicsLayerIds.forEach(function(layerId, i) {
2545	                var layer = map.getLayer(layerId);
2546	                if (layer.visible && !layer.visibleAtMapScale) {
2547	                    hiddenLayers.push(layer);
2548	                }
2549	            });
2550	            return hiddenLayers;
2551	        }
2552	
2553	        // returns the human readable title of a layer as configured in the WebMap
2554	        var getLayerTitle = function(layer) {
2555	            for (i = 0; i < layerInfo.length; i++) {
2556	                if (layerInfo[i].id == layer.id) {
2557	                    return layerInfo[i].title;
2558	                }
2559	            }
2560	            return layer.name;
2561	        }
2562	
2563	        // mouse-over event handler for info window
2564	        var infoWindowTimer;
2565	        var mouseOverHandler = function(evt) {
2566	            infoWindowTimer = setTimeout(function() {
2567	                map.infoWindow.setFeatures([evt.graphic]);
2568	                map.infoWindow.show(evt.mapPoint, {
2569	                    closestFirst: true
2570	                });
2571	            }, 500);
2572	        }
2573	
2574	        // mouse-out event handler for info window
2575	        var mouseOutHandler = function(evt) {
2576	            clearTimeout(infoWindowTimer);
2577	        }
2578	
2579	        // set address location for immediate display in map
2580	        var setAddress = function(cx, cy) {
2581	            map.graphics.clear();
2582	            var addressPoint = new Point(cx, cy, addressSR);
2583	            var addressGraphic = new Graphic(addressPoint, addressMarker);
2584	            map.centerAndZoom(addressPoint, 19).then(function() {
2585	                map.graphics.add(addressGraphic);
2586	            });
2587	        }
2588	
2589			// additional functions by OC
2590			
2591			$('#addressLocator').click(function (e) {
2592				e.preventDefault();
2593				$('#LocateButton .zoomLocateButton').trigger('click');
2594			});
2595	
2596			$('#layerSelect').click(function (e) {
2597				$('.mapwrap .overlay').css("pointer-events", "none");
2598			});
2599			
2600			$('#adresse').change(function () {
2601				var adresse = $('#adresse').val();
2602				if(adresse == '') {
2603					resetMapData(true);
2604				}
2605			});
2606			
2607			$('#form').submit(function (e) {
2608				e.preventDefault();
2609				$('.toggle-available-products').trigger('click');
2610			});
2611	
2612			$('.toggle-available-products').click(function () {
2613				//var adresse = $('#adresse').val();
2614				var adresse = encodeURI($('#adresse').val());
2615				if(adresse == '') {
2616					resetMapData(true);
2617				} else {
2618					checkAvailableProducts(-1, adresse);
2619					$.ajax({
2620						url: "https://locationfinder.stadt.sg.ch:8085/Finder/Lookup?filter=type:AdresseSGSWOnline",
2621						dataType: "json",
2622						jsonp: false,
2623						data: {
2624							query: adresse
2625						},
2626						success: function(data) {
2627							if(data.count != 0){
2628								setAddress(data.locs[0].cx, data.locs[0].cy);
2629							} else {
2630								resetMapData(false);
2631							}
2632						}
2633					});
2634				}
2635			});
2636	
2637			function resetMapData(emptyAddress) {
2638				if(emptyAddress){
2639					$(".available-products-results").slideUp();
2640					$(".available-products-static").slideDown();
2641				}
2642				map.graphics.clear();
2643				map.setZoom(15);
2644			}
2645			
2646		});
2647		
2648		function checkAvailableProducts(addressId, addressValue) {
2649			$(".available-products-results").slideUp();
2650			$(".available-products-static").slideUp();
2651			$.ajax({
2652				type: "GET",
2653				url: "/content/sgsw_onlinewelt/home.availability.html?check=true",
2654				dataType: "html",
2655				data: {
2656					addressId: addressId,
2657					addressValue: addressValue,
2658					componentName: "sgsw_available_produ"
2659				},
2660				success: function(data) {
2661		        	var pane = $(".available-products-results");
2662		       		pane.html(data);
2663		       		pane.slideDown();
2664				}
2665			});
2666		}
2667		
2668	    $('.box-toggler').click(function () {
2669			$('.panel-heading.box-toggler + .panel-body').slideToggle();
2670	        $('.panel-heading.box-toggler i.far').toggleClass('fa-angle-up fa-angle-down');
2671		});
2672	    
2673	    $(document).on('click', '#map-toggler', function () {
2674	        $(".id-produkte .mapwrap").toggleClass("active");
2675	        $("#map-toggler").toggleClass("open");
2676	    });
2677	
2678	    $(document).on('click', '#CloseButton', function () {
2679	        $(".id-produkte .mapwrap").toggleClass("active");
2680	        $("#map-toggler").toggleClass("open");
2681	    });
2682	</script>
2682
2683</div>
2684
2685
2686
2687
2688
2689
2690	
2691
2692
2693
2694
2695<div class="row id-wissenswertes-linktiles color-grey" id="Par_sgsw_further_info_li">
2696    <div class="col-md-12">
2697        <div class="container">
2698			<div class="container intro">
2699				<h2>Kundenservice</h2>
2700				
2701			</div>
2702			<div class="row link-boxes">
2703				<div class="parsys">
2704
2705
2706
2707
2708	
2709
2710
2711
2712
2713<div class="col-xs-12 col-md-6">
2714	<a href="/home/energieportal.html" title="Interner Link: Energieportal" class="wrapper-link icon">
2715		<span class="link-icon">
2716			<img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_alles-aus-einer-hand.svg" alt="" class="svg-icon">
2717		</span>
2718		<span class="link-content">
2719			<span class="title">Energieportal</span>
2720			<span class="text">«Meine sgsw» – jederzeit Zugriff auf Ihre Daten.</span>
2721		</span>
2722	</a>
2723</div>
2724
2725
2726
2727
2728
2729
2730
2731
2732	
2733
2734
2735
2736
2737<div class="col-xs-12 col-md-6">
2738	<a href="https://meine.sgsw.ch/forms" title="Externer Link: Es öffnet sich ein neues Fenster: Online-Schalter" class="wrapper-link icon" target="_blank">
2739		<span class="link-icon">
2740			<img src="/content/dam/bilder_library/sgsw-onlinewelt/icons/positiv/sgsw_icon_rgb_betriebsfuehrung.svg" alt="" class="svg-icon">
2741		</span>
2742		<span class="link-content">
2743			<span class="title">Online-Schalter</span>
2744			<span class="text">Umzug melden, Produkte bestellen, Zahlungsart ändern etc.</span>
2745		</span>
2746	<span class="hidden"> neues Fenster</span></a>
2747</div>
2748
2749
2750
2751
2752</div>
2753
2754			</div>
2755        </div>
2756    </div>
2757</div>
2758
2759
2760
2761
2762            	</div>
2763            	
2764
2765
2766	
2767
2768
2769
2770
2771<footer id="footer">
2772    <div class="container">
2773        <div class="row footer">            
2774            <div class="col-md-7">
2775				<h4 class="contact-title desktop-visible">Kontakt</h4>
2776				<div class="contact">
2777					<p class="address">
2778						<span class="icon"><i class="fa fa-home"></i></span>
2779						<span class="text">
2780							<span class="address-title">St.Galler Stadtwerke</span><br />
2781							
2782							Vadianstrasse 8<br />
2783							9001 St.Gallen
2784						</span>
2785					</p>
2786					<div class="social-icons mobile-visible">
2787						<ul class="inline-list">
2788							<li class="footnote-element"><a class="social-icon" href="https://www.facebook.com/St.GallerStadtwerke/" title="Facebook" target="_blank"><i class="fab fa-2x fa-facebook"></i></a></li>
2789							
2790							<li class="footnote-element"><a class="social-icon" href="https://www.instagram.com/stgallerstadtwerke" title="Instagram" target="_blank"><i class="fab fa-2x fa-instagram"></i></a></li>
2791							<li class="footnote-element"><a class="social-icon" href="https://www.linkedin.com/company/stgaller-stadtwerke/" title="LinkedIn" target="_blank"><i class="fab fa-2x fa-linkedin"></i></a></li>
2792						</ul>
2793					</div>
2794					<ul class="iconlist">
2795                        <li class="phone"><a href="tel:+41848747900" title="Anrufen: 0848 747 900"><i class="fa fa-phone-alt"></i>0848 747 900</a></li>
2796                        <li class="fax inline-desktop-visible"><i class="fa fa-fax"></i>0848 747 950</li>
2797                        <li class="mail"><a href="mailto:[email protected]" title="Mail schreiben an: [email protected]"><i class="fa fa-envelope"></i>[email protected]</a></li>
2798                        <li class="standorte"><a href="/home/ueber-uns/kontakt.html" title="Interner Link: Unsere Standorte"><i class="fa fa-map-marker-alt"></i>Unsere Standorte</a></li>
2799					</ul>
2800                </div>
2801            </div>
2802            <div class="col-md-5 opening-hours">
2803                <div class="clearfix">
2804					<h4 class="kundenzentrum-oeffnungszeiten-title fs17">Kundendienst</h4>
2805					<ul class="list-2-col kundenzentrum-oeffnungszeiten-content">
2806                    	<li><span class="pull-left">Montag - Donnerstag:</span><span class="pull-left">08.30 - 11.30 Uhr und 13.30 - 17.00 Uhr</span></li>
2807                    	<li><span class="pull-left">Freitag:</span><span class="pull-left">08.30 - 11.30 Uhr und 13.30 - 16.30 Uhr</span></li>
2808                    	
2809                    	
2810                    	
2811                    </ul>
2812                    <a href="/home/ueber-uns/kontakt.html" title="Interner Link: Öffnungszeiten Kundenzentrum" class="btn btn-link kundenzentrum-oeffnungszeiten-button">Öffnungszeiten Kundenzentrum</a>
2813                </div>
2814                <div class="clearfix">
2815					<h4 class="shop-oeffnungszeiten-title fs17"></h4>
2816					<ul class="list-2-col shop-oeffnungszeiten-content">
2817                    	
2818                    	
2819                    	
2820                    	
2821                    	
2822                    </ul>
2823                    
2824                </div>
2825            </div>
2826            <div class="col-md-7">
2827				<h4 class="kundenservice-title fs17">Kundenservice</h4>
2828				<ul class="linklist kundenservice-content">
2829					
2830						<li class="halfwidth"><a href="/home/energieportal.html" title="Interner Link: Meine sgsw">Meine sgsw</a></li>
2831					
2832						<li class="halfwidth"><a href="https://meine.sgsw.ch/forms/notify-move-departure" title="Externer Link: Es öffnet sich ein neues Fenster: Umzug melden" target="_blank">Umzug melden<span class="hidden"> neues Fenster</span></a></li>
2833					
2834						<li class="halfwidth"><a href="/home/energieportal/rechnungen.html" title="Interner Link: Alles über Rechnungen">Alles über Rechnungen</a></li>
2835					
2836						<li class="halfwidth"><a href="https://www.stadt.sg.ch/home/mobilitaet-verkehr/baustellen-strassenunterhalt/bau
2836stellen.html" title="Externer Link: Es öffnet sich ein neues Fenster: Baustellen" target="_blank">Baustellen<span class="hidden"> neues Fenster</span></a></li>
2837					
2838						<li class="halfwidth"><a href="https://meine.sgsw.ch/forms" title="Externer Link: Es öffnet sich ein neues Fenster: Online-Schalter" target="_blank">Online-Schalter<span class="hidden"> neues Fenster</span></a></li>
2839					
2840						<li class="halfwidth"><a href="/home/stoerungen.html" title="Interner Link: Störung melden">Störung melden</a></li>
2841					
2842                   </ul>            
2843            </div>
2844            <div class="col-md-5">
2845				<h4 class="about-sgsw-title">Die sgsw</h4>
2846				<ul class="linklist about-sgsw-content">
2847					
2848						<li class="halfwidth"><a href="/home/news.html" title="Interner Link: News">News</a></li>
2849					
2850						<li class="halfwidth"><a href="/home/downloads.html" title="Interner Link: Downloads">Downloads</a></li>
2851					
2852						<li class="halfwidth"><a href="/home/news/newsletter.html" title="Interner Link: Newsletter und Push-Meldung">Newsletter und Push-Meldung</a></li>
2853					
2854						<li class="halfwidth"><a href="/home/ueber-uns.html" title="Interner Link: Über uns">Über uns</a></li>
2855					
2856						<li class="halfwidth"><a href="/home/jobs.html" title="Interner Link: Jobs">Jobs</a></li>
2857					
2858					
2859					
2860						<li class="halfwidth mobile-visible"><a href="/f/datenschutz.html" title="Interner Link: Datenschutz">Datenschutz</a></li>
2861					
2862						<li class="halfwidth mobile-visible"><a href="/f/impressum.html" title="Interner Link: Impressum">Impressum</a></li>
2863					
2864						<li class="halfwidth mobile-visible"><a href="/f/nutzungsbedingungen.html" title="Interner Link: Nutzungsbedingungen">Nutzungsbedingungen</a></li>
2865										
2866                   </ul>            
2867            </div>
2868        </div>
2869        <div class="row footerend">
2870            <div class="col-md-3">
2871                <div class="logo"></div>
2872            </div>
2873            <div class="col-md-4">
2874                <div class="bottom">&copy; 2026 St.Galler Stadtwerke</div>
2875            </div>
2876			<div class="col-md-5">
2877				<ul class="inline-list bottom">
2878					
2879						<li class="footnote-element inline-desktop-visible"><a href="/f/datenschutz.html" title="Interner Link: Datenschutz">Datenschutz</a></li>
2880					
2881						<li class="footnote-element inline-desktop-visible"><a href="/f/impressum.html" title="Interner Link: Impressum">Impressum</a></li>
2882					
2883				</ul>
2884				<div class="social-icons pull-right desktop-visible">
2885					<ul class="inline-list">       
2886						<li class="footnote-element"><a class="social-icon" href="https://www.facebook.com/St.GallerStadtwerke/" title="Facebook" target="_blank"><i class="fab fa-2x fa-facebook"></i></a></li>
2887						
2888						<li class="footnote-element"><a class="social-icon" href="https://www.instagram.com/stgallerstadtwerke" title="Instagram" target="_blank"><i class="fab fa-2x fa-instagram"></i></a></li>
2889						<li class="footnote-element"><a class="social-icon" href="https://www.linkedin.com/company/stgaller-stadtwerke/" title="LinkedIn" target="_blank"><i class="fab fa-2x fa-linkedin"></i></a></li>
2890					</ul>
2891				</div>
2892			</div>
2893        </div>
2894    </div>
2895</footer>
2896			</div>
2897		</div>
2898	</div>
2899	
2900		<!-- siteimprove Tracking Code -->
2901		
2901<script type="text/javascript">
2902			/*<![CDATA[*/
2903			(function() {
2904			var sz = document.createElement('script'); sz.type = 'text/javascript'; sz.async = true;
2905			sz.src = '//siteimproveanalytics.com/js/siteanalyze_6027256.js';
2906			var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(sz, s);
2907			})();
2908			/*]]>*/
2909		</script>
2909
2910	
2911</body>
2912			
2913		</html>
2914	
2915	
2916	
2917
2918

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.