PageSourceSearch

https://www.santfeliudecodines.cat/

html santfeliudecodines.cat collected 2026-10-02 08:09:48 UTC 142,462 bytes, 2,047 lines download raw bytes

1<!DOCTYPE HTML>
2<html lang="ca" xmlns="http://www.w3.org/1999/xhtml" xml:lang="ca" >
3    <head>
4        <!-- METADATA -->
5<meta charset="utf-8">
6<meta name="viewport" content="width=device-width, initial-scale=1">
7<meta name="title" lang="ca" content="Ajuntament de Sant Feliu de Codines">
8<meta name="description" lang="ca" content="Ajuntament de Sant Feliu de Codines">
9<meta name="author" lang="ca" content="Ajuntament de Sant Feliu de Codines">
10<meta name="date" lang="ca" content="2026-10-02">
11<meta name="generator" lang="ca" content="Ajuntament de Sant Feliu de Codines">
12<meta name="robots" content="index, follow">
13
14        <title>Ajuntament de Sant Feliu de Codines</title>
15
16        <!-- Global Site Tag (gtag.js) - Google Analytics v4-->
vendor: 124 bytes, lines 16-17
16
17<script type="text/plain" data-type="text/javascript" data-name="ga" data-src="https://www.googletagmanager.com/gtag/js?id=
17G-G5K25D5ZP4
vendor: 12 bytes, line 17
17"></script>
18<script type="text/plain" data-type="text/javascript" data-name="ga">
19    
vendor: 140 bytes, lines 19-23
19window.dataLayer = window.dataLayer || [];
20    function gtag(){dataLayer.push(arguments);}
21    gtag('js', new Date());
22
23    gtag('config', '
23G-G5K25D5ZP4
vendor: 8 bytes, lines 23-24
23');
24    
24// Creates the default tracker.
25    gtag('event', 'page_view', { 'send_to': 'G-G5K25D5ZP4' });
26</script>
26
27<!-- End of code Global Site Tag (gtag.js) - Google Analytics v4-->
28        <link rel="canonical" href="https://www.santfeliudecodines.cat">
29
30        <link rel="stylesheet" href="/front/view/js/bower_components/bootstrap/dist/css/bootstrap.min.css?ver=1790928587">
31<link rel="stylesheet" href="/front/view/js/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.min.css?ver=1790928587">
32<link rel="stylesheet" href="/front/view/js/bower_components/bootstrap-icons.min/index.css?ver=1790928587">
33<link rel="stylesheet" href="/front/view/js/bower_components/tempus-dominus.min.css/index.css?ver=1790928587">
34<link rel="stylesheet" href="/common/bower_components/select2/dist/css/select2.min.css?ver=1790928587">
35
36        <!-- Real Favicon Genenrator-->
37<link rel="apple-touch-icon" href="/themes/santfeliudecodines/images/favicons/apple-touch-icon.png">
38<link rel="icon" type="image/png" href="/themes/santfeliudecodines/images/favicons/favicon-16x16.png" sizes="16x16">
39<link rel="icon" type="image/png" href="/themes/santfeliudecodines/images/favicons/favicon-32x32.png" sizes="32x32">
40<link rel="shortcut icon" href="/themes/santfeliudecodines/images/favicons/favicon.ico">
41        
41<script src="/front/controller/klaro-config.php"></script>
vendor: 1 bytes, line 41
41
42<script>
43	// Fallback defensiu: si per algun motiu el PHP no retorna la configuració,
44	// assegurem una configuració mínima perquè Klaro no falli i mostri el banner.
45	window.klaroConfig = window.klaroConfig || {
46		version: '1.0',
47		elementID: 'klaro',
48		storageMethod: 'cookie',
49		storageName: 'klaro',
50		cookieName: 'klaro',
51		htmlTexts: true,
52		acceptAll: true,
53		hideDeclineAll: false,
54		services: []
55	};
56</script>
vendor: 1 bytes, line 56
56
57<script src="/front/view/js/klaro.min.js?ver=1790928587"></script>
vendor: 1 bytes, line 57
57
58<script src="/front/view/js/klaro-init.js?ver=1790928587"></script>
58
59
60        <!-- Twitter Card data -->
61<meta name="twitter:card" content="summary">
62<meta name="twitter:site" content="@AjSFCodines">
63<meta name="twitter:title" content="Ajuntament de Sant Feliu de Codines">
64<meta name="twitter:description" content="">
65<meta name="twitter:image" content="https://www.santfeliudecodines.cat/themes/santfeliudecodines/images/logos/header.png">
66    <meta name="twitter:image:alt" content="Logo">
67        <meta property="fb:admins" content="475170035826906">
68<!-- Open Graph data -->
69<meta property="og:title" content="Ajuntament de Sant Feliu de Codines">
70<meta property="og:type" content="website">
71<meta property="og:url" content="https://www.santfeliudecodines.cat">
72<meta property="og:image" content="https://www.santfeliudecodines.cat/themes/santfeliudecodines/images/logos/header.png">
73    <meta property="og:image:alt" content="Logo">
74    <meta property="og:image" content="https://www.santfeliudecodines.cat/themes/santfeliudecodines/images/logos/header_inv.png">
75    <meta property="og:image:alt" content="Logo invertit">
76    <meta property="og:description" content="">
77<meta property="og:site_name" content="Ajuntament de Sant Feliu de Codines">
78
79        <!-- HTML5 compatible tags -->
80<script>
81    document.createElement('header');
82    document.createElement('footer');
83    document.createElement('section');
84    document.createElement('aside');
85    document.createElement('nav');
86    document.createElement('article');
87    document.createElement('hgroup');
88    document.createElement('lh');
89</script>
89
90        
90<script>window.mapsConfig = { layerType: 'OpenStreetMap_Mapnik' };</script>
90
91<link rel="stylesheet" href="/front/view/js/bower_components/FreezeUI/freeze-ui.min.css">
92<link rel="stylesheet" href="/front/view/js/bower_components/Leaflet/default/leaflet.css">
93<link rel="stylesheet" href="/front/view/js/bower_components/Leaflet/default/Control.Loading.css">
94<script  src="/front/view/js/bower_components/FreezeUI/freeze-ui.min.js"></script>
vendor: 1 bytes, line 94
94
95<script  src="/front/view/js/bower_components/Leaflet/default/leaflet.js"></script>
vendor: 1 bytes, line 95
95
96<script src="/front/view/js/bower_components/es6-promise/es6-promise.min.js"></script>
vendor: 1 bytes, line 96
96
97<script>ES6Promise.polyfill();</script>
vendor: 1 bytes, line 97
97
98<script  src='/front/view/js/bower_components/Leaflet/default/Leaflet.GoogleMutant.js'></script>
vendor: 1 bytes, line 98
98
99<script src="/front/view/js/googleMapsInit.js"></script>
vendor: 1 bytes, line 99
99
100<script type="text/plain" data-type="text/javascript" data-name="maps" data-src="https://maps.google.com/maps/api/js?key=AIzaSyDzMQfPcdyACxfYosZzQs43alxB8BKfkx8&amp;loading=async&amp;callback=onGoogleMapsReady"></script>
vendor: 1 bytes, line 100
100
101<script  src="/front/view/js/bower_components/Leaflet/default/leaflet.maps.js"></script>
vendor: 1 bytes, line 101
101
102<script  src="/front/view/js/bower_components/Leaflet/default/leaflet.clone.js"></script>
vendor: 1 bytes, line 102
102
103<script  src="/front/view/js/bower_components/Leaflet/default/Control.Loading.js"></script>
vendor: 1 bytes, line 103
103
104<script src="/front/view/js/bower_components/jquery.min/index.js"></script>
vendor: 1 bytes, line 104
104
105<script src="/front/view/js/maps.js"></script>
105        <!-- Init addHeadExtraStyles -->
106        <style>html body{font-size:1em !important;} .backgroundImageHeader {background-repeat: repeat;  background-size: cover;  background-image:url("/media/repository/capcaleres/capcaleres_web/fons.jpg");} </style>
107        <!-- End addHeadExtraStyles -->
108        <!-- Font Awesome 7 + v4-shims for backward compatibility -->
109        <link href="https://cdn.jsdelivr.net/npm/@fortawesome/[email protected]/css/all.min.css" rel="stylesheet">
110        <link href="https://cdn.jsdelivr.net/npm/@fortawesome/[email protected]/css/v4-shims.min.css" rel="stylesheet">
111        <!-- Popperjs + Tempus Dominus -->
112        
112<script src="/front/view/js/bower_components/popper.min/index.js?ver=1790928587"></script>
vendor: 1 bytes, line 112
112
113<script src="/front/view/js/bower_components/tempus-dominus.min.js/index.js?ver=1790928587"></script>
113
114                <link rel="stylesheet" media="all" href="/themes/santfeliudecodines/styles/style.min.css?ver=1790928587">
115            </head>
116    <body class="home id-0">
117        <nav class="skip-links" aria-label="Dreceres d&#039;accessibilitat"><ul><li><a href="#site-header">Saltar a la capçalera</a></li><li><a href="#main-content">Saltar al contingut</a></li><li><a href="#footer-content">Saltar al peu de pàgina</a></li></ul></nav>        <header id="site-header" tabindex="-1">
118                                    <div class="js-widget o-widget o-widget--header o-widget-contenidor  clearfix boxBX  WidgetContainer " data-id="1" >  <div class="o-widget-wrapper clearfix default-BX  " data-id="1"><div class="o-widget-container  row"><div class="js-widget o-widget o-widget--legacy-header col-xs-12 col-sm-12 col-md-12 col-lg-12 clearfix boxBX  WidgetLegacyHeader " data-id="4" >  <div class="o-widget-wrapper clearfix default-BX   row " data-id="4"><div class="o-widget-container "><div class="js-widget__content o-widget__content clearfix "><div class="toolbar clearfix">
119    <div class="container-xl">
120                <div class="fright">
121            <div class="toolbarItem">
122    <div class="toolbarItem page-62 page-contacte">
123    <a 
124        href="/altres-continguts/contacte"
125        target="_self"
126        rel=""
127            >
128        Contacte    </a>
129</div>
130</div>                        <div id="social" class="toolbarItem">
131                  
132    <a target="_blank" aria-label="Twitter" href="https://twitter.com/ajsfcodines" title="Obre en finestra nova: Twitter">
133        <span style="display: none">Twitter</span>
134        <img src="/front/view/images/icons/social/twitter.png" alt="Twitter" width="32" height="32">
135    </a>
136  
137    <a target="_blank" aria-label="Facebook" href="https://www.facebook.com/Ajuntament-de-Sant-Feliu-de-Codines-475170035826906/" title="Obre en finestra nova: Facebook">
138        <span style="display: none">Facebook</span>
139        <img src="/front/view/images/icons/social/facebook.png" alt="Facebook" width="32" height="32">
140    </a>
141  
142    <a target="_blank" aria-label="Youtube" href="https://www.youtube.com/@CanalCodinenc/videos" title="Obre en finestra nova: Youtube">
143        <span style="display: none">Youtube</span>
144        <img src="/front/view/images/icons/social/youtube.png" alt="Youtube" width="32" height="32">
145    </a>
146  
147    <a target="_blank" aria-label="LinkedIn" href="https://www.linkedin.com/company/ajsfcodines" title="Obre en finestra nova: LinkedIn">
148        <span style="display: none">LinkedIn</span>
149        <img src="/front/view/images/icons/social/linkedin.png" alt="LinkedIn" width="32" height="32">
150    </a>
151  
152    <a target="_blank" aria-label="Instagram" href="https://www.instagram.com/ajsfcodines/" title="Obre en finestra nova: Instagram">
153        <span style="display: none">Instagram</span>
154        <img src="/front/view/images/icons/social/instagram.png" alt="Instagram" width="32" height="32">
155    </a>
156            </div>
157                        <div class="toolbarItem">
158                <div id="toolbarLanguages">
159    <ul id="languages">
160        <li><a href="#" role="button" aria-expanded="false" aria-controls="languagesList" id="languagesToggle">Idiomes</a>
161            <ul id="languagesList">
162                                    <li><a class="link-language" href="https://www.santfeliudecodines.cat/?lang=ca" data-target="https://www.santfeliudecodines.cat/?lang=ca">Català</a></li>
163                                    <li><a class="link-language" href="https://translate.google.es/translate?js=y&amp;prev=_t&amp;hl=esie=UTF-8&amp;u=https://www.santfeliudecodines.cat/&amp;sl=ca&amp;tl=es" data-target="https://translate.google.es/translate?js=y&amp;prev=_t&amp;hl=esie=UTF-8&amp;u=https://www.santfeliudecodines.cat/&amp;sl=ca&amp;tl=es">Castellà</a></li>
164                                    <li><a class="link-language" href="https://translate.google.es/translate?js=y&amp;prev=_t&amp;hl=enie=UTF-8&amp;u=https://www.santfeliudecodines.cat/&amp;sl=ca&amp;tl=en" data-target="https://translate.google.es/translate?js=y&amp;prev=_t&amp;hl=enie=UTF-8&amp;u=https://www.santfeliudecodines.cat/&amp;sl=ca&amp;tl=en">Anglès</a></li>
165                                    <li><a class="link-language" href="https://translate.google.es/translate?js=y&amp;prev=_t&amp;hl=deie=UTF-8&amp;u=https://www.santfeliudecodines.cat/&amp;sl=ca&amp;tl=de" data-target="https://translate.google.es/translate?js=y&amp;prev=_t&amp;hl=deie=UTF-8&amp;u=https://www.santfeliudecodines.cat/&amp;sl=ca&amp;tl=de">Alemany</a></li>
166                                    <li><a class="link-language" href="https://translate.google.es/translate?js=y&amp;prev=_t&amp;hl=frie=UTF-8&amp;u=https://www.santfeliudecodines.cat/&amp;sl=ca&amp;tl=fr" data-target="https://translate.google.es/translate?js=y&amp;prev=_t&amp;hl=frie=UTF-8&amp;u=https://www.santfeliudecodines.cat/&amp;sl=ca&amp;tl=fr">Francès</a></li>
167                            </ul>
168        </li>
169    </ul>
170</div>
171<script>
172(function () {
173    var toggle = document.getElementById('languagesToggle');
174    if (!toggle) return;
175    var li = toggle.parentElement;
176    var submenu = li.querySelector('ul');
177    var links = Array.prototype.slice.call(submenu.querySelectorAll('a'));
178
179    function keyName(e) {
180        return e.key || e.code || e.keyCode;
181    }
182
183    function isSpaceKey(e) {
184        var key = keyName(e);
185        return key === ' ' || key === 'Spacebar' || key === 'Space' || key === 32;
186    }
187
188    function open(focusFirst) {
189        li.classList.add('is-open');
190        submenu.style.display = 'block';
191        submenu.style.padding = '1em';
192        toggle.setAttribute('aria-expanded', 'true');
193        if (focusFirst && links.length) links[0].focus();
194    }
195
196    function close() {
197        li.classList.remove('is-open');
198        submenu.style.display = '';
199        submenu.style.padding = '';
200        toggle.setAttribute('aria-expanded', 'false');
201    }
202
203    function isOpen() {
204        return toggle.getAttribute('aria-expanded') === 'true';
205    }
206
207    function focusLink(index) {
208        if (!links.length) return;
209        links[(index + links.length) % links.length].focus();
210    }
211
212    function focusedLinkIndex() {
213        return links.indexOf(document.activeElement);
214    }
215
216    toggle.addEventListener('click', function (e) {
217        e.preventDefault();
218        isOpen() ? close() : open(false);
219    });
220
221    toggle.addEventListener('keydown', function (e) {
222        var key = keyName(e);
223        if (key === 'Enter' || isSpaceKey(e)) {
224            e.preventDefault();
225            isOpen() ? close() : open(false);
226        } else if (key === 'ArrowDown' || key === 40) {
227            e.preventDefault();
228            open(true);
229        } else if (key === 'ArrowUp' || key === 38) {
230            e.preventDefault();
231            open(false);
232            focusLink(links.length - 1);
233        } else if (key === 'Escape' || key === 'Esc' || key === 27) {
234            if (isOpen()) {
235                e.preventDefault();
236                close();
237            }
238        }
239    });
240
241    submenu.addEventListener('keydown', function (e) {
242        var key = keyName(e);
243        var index = focusedLinkIndex();
244
245        if (key === 'ArrowDown' || key === 40) {
246            e.preventDefault();
247            focusLink(index + 1);
248        } else if (key === 'ArrowUp' || key === 38) {
249            e.preventDefault();
250            focusLink(index - 1);
251        } else if (key === 'Home' || key === 36) {
252            e.preventDefault();
253            focusLink(0);
254        } else if (key === 'End' || key === 35) {
255            e.preventDefault();
256            focusLink(links.length - 1);
257        } else if (isSpaceKey(e)) {
258            e.preventDefault();
259            if (document.activeElement && document.activeElement.click) {
260                document.activeElement.click();
261            }
262        } else if (key === 'Escape' || key === 'Esc' || key === 27) {
263            e.preventDefault();
264            close();
265            toggle.focus();
266        }
267    });
268
269    li.addEventListener('focusout', function () {
270        window.setTimeout(function () {
271            if (!li.contains(document.activeElement)) close();
272        }, 0);
273    });
274
275    document.addEventListener('click', function (e) {
276        if (!li.contains(e.target)) close();
277    });
278})();
279</script>
279
280                <div class="currentDate" style='padding:9px;color:white'>
281    <span id="clock" class="clock" title='Data i hora oficial' >
282        02.10.2026 | 10:09    </span>
283</div>            </div>
284        </div>
285    </div>
286</div>
287<div class="header backgroundImageHeader">
288    <div class="branding">
289        <div class="container-xl">
290            <div class="row">
291                <div class="col-md-8 col-sm-8 col-lg-8 logo_box">
292    <a class="logo" href="/" aria-label="Ajuntament de Sant Feliu de Codines - Pàgina d'inici">
293        <img src="/themes/santfeliudecodines/images/logos/header.png" alt="" width="271" height="111" id="mainLogo">
294    </a>
295        <h1 class="d-none">Ajuntament de Sant Feliu de Codines</h1>
296    </div>                <div class="col-md-4 col-sm-4 col-lg-4 middle search_box">
297    <form id="search_box" aria-label="Cercar:" name="search_box" method="get" action="/search">
298        <label for="search" accesskey="4">
299            <span class="visually-hidden">Cercar:</span>
300        </label>
301        <input id="search" name="search" type="text" aria-label="Cercar:" title="Cerca a tot el web" value="" placeholder="Cercar...">
302        <button type="submit" class="search-button" aria-label="Cerca"><i class="fa fa-search"></i></button>
303    </form>
304</div>
305            </div>
306        </div>
307    </div>
308        <div id="navbar-top" class="navbar navbar-expand-lg navbar-dark"><div class="nav"><div class="container-xl"><div class="row"><div class="col"><nav class="menu_principal" aria-label="menú"><div class="menu-flexible__wrapper menu-font-medium menu-alignment-left menu-spacing-normal menu-animation-fade menu-text-transform-none menu-columns-1" style="--menu-cols:1;--menu-submenu-width:200px;--menu-hover-delay:300ms;--menu-image-width:160px;" data-menu-columns="1" data-expand-type="hover" data-menu-sticky="false" data-menu-alignment="left" data-menu-spacing="normal" data-menu-animation="fade" data-menu-external-icon="auto" data-menu-external-dim="false" data-menu-text-transform="none"><div class="menu-flexible__topbar"><a href="#" class="menu-flexible__toggle phoneMenuButton" aria-label="Menú" aria-expanded="false"><i class="fa fa-bars"></i></a></div><ul class="menu-flexible menu-flexible__list"><li class="menu-flexible__item page-1 level1"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/ajuntament" ><span class="menu-flexible__item-text">Ajuntament</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-12 level2"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/alcaldia" ><span class="menu-flexible__item-text">Alcaldia</span></a></li><li class="menu-flexible__item page-8 level2"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/ajuntament/govern" ><span class="menu-flexible__item-text">Govern</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-13 level3"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/govern/consistori" ><span class="menu-flexible__item-text">Consistori</span></a></li><li class="menu-flexible__item page-14 level3"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/govern/regidories-organitzacio-municipal" ><span class="menu-flexible__item-text">Regidories</span></a></li><li class="menu-flexible__item page-116 level3"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/govern/agenda-institucional" ><span class="menu-flexible__item-text">Agenda Institucional</span></a></li><li class="menu-flexible__item page-127 level3"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/govern/resultats-electorals" ><span class="menu-flexible__item-text">Resultats electorals</span></a></li></ul></li><li class="menu-flexible__item page-15 level2"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/grups-municipals" ><span class="menu-flexible__item-text">Grups municipals</span></a></li><li class="menu-flexible__item page-24 level2"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/pressupostos-i-plantilles" ><span class="menu-flexible__item-text">Pressupostos i plantilles</span></a></li><li class="menu-flexible__item page-143 level2"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/ajuntament/informacio-oficial" ><span class="menu-flexible__item-text">Informació oficial</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-20 level3"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/informacio-oficial/juntes-de-govern" ><span class="menu-flexible__item-text">Juntes de govern</span></a></li><li class="menu-flexible__item page-80 level3"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/informacio-oficial/ple-municipal" ><span class="menu-flexible__item-text">
308Ple municipal</span></a></li><li class="menu-flexible__item page-169 level3"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/informacio-oficial/comissio-de-comptes" ><span class="menu-flexible__item-text">Comissió de comptes</span></a></li><li class="menu-flexible__item page-18 level3"><a class="menu-flexible__link menu-link--external" aria-expanded="false" href="https://santfeliudecodines.eadministracio.cat/board" target="_blank" rel="noopener noreferrer"><span class="menu-flexible__item-text">Anuncis / Edictes</span><i class="align-middle fa fa-external-link ms-2"></i></a></li><li class="menu-flexible__item page-22 level3"><a class="menu-flexible__link menu-link--external" aria-expanded="false" href="https://www.seu-e.cat/ca/web/santfeliudecodines/govern-obert-i-transparencia/accio-de-govern-i-normativa/normativa-plans-i-programes" target="_blank" rel="noopener noreferrer"><span class="menu-flexible__item-text">Ordenances </span><i class="align-middle fa fa-external-link ms-2"></i></a></li><li class="menu-flexible__item page-28 level3"><a class="menu-flexible__link menu-link--external" aria-expanded="false" href="https://www.seu-e.cat/web/santfeliudecodines/govern-obert-i-transparencia/accio-de-govern-i-normativa/urbanisme" target="_blank" rel="noopener noreferrer"><span class="menu-flexible__item-text">Urbanisme</span><i class="align-middle fa fa-external-link ms-2"></i></a></li></ul></li><li class="menu-flexible__item page-16 level2"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/plans-campanyes-i-programes" ><span class="menu-flexible__item-text">Plans, campanyes i programes</span></a></li><li class="menu-flexible__item page-17 level2"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/tecnics-municipals" ><span class="menu-flexible__item-text">Tècnics municipals</span></a></li><li class="menu-flexible__item page-26 level2"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/perfil-de-contractant" ><span class="menu-flexible__item-text">Perfil de contractant</span></a></li><li class="menu-flexible__item page-162 level2"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/imatge-corporativa" ><span class="menu-flexible__item-text">Imatge corporativa</span></a></li><li class="menu-flexible__item page-161 level2"><a class="menu-flexible__link menu-link--external" aria-expanded="false" href="https://santfeliudecodines.eadministracio.cat/info.0" target="_blank" rel="noopener noreferrer"><span class="menu-flexible__item-text">Seu electrònica</span><i class="align-middle fa fa-external-link ms-2"></i></a></li><li class="menu-flexible__item page-123 level2"><a class="menu-flexible__link menu-link--external" aria-expanded="false" href="https://seu-e.cat/ca/web/santfeliudecodines/govern-obert-i-transparencia" target="_blank" rel="noopener noreferrer"><span class="menu-flexible__item-text">Transparència</span><i class="align-middle fa fa-external-link ms-2"></i></a></li><li class="menu-flexible__item page-132 level2"><a class="menu-flexible__link" aria-expanded="false" href="/ajuntament/altres-administracions" ><span class="menu-flexible__item-text">Altres administracions</span></a></li></ul></li><li class="menu-flexible__item page-10 level1"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/serveis-i-tramits" ><span class="menu-flexible__item-text">Serveis i tràmits</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-31 level2"><a class="menu-flexible__link menu-link--external" aria-expanded="false" href="https://santfeliudecodines.eadministracio.cat/info.0" target="_blank" rel="noopener noreferrer"><span class="menu-flexible__item-text">Seu electrònica</span><i class="align-middle fa fa-external-link ms-2"></i></a></li><li class="menu-flexible__item page-82 level2"><a class="menu-flexible__link" aria-expanded="false" href="/serveis-i-tramits/oficines-municipals" ><span class="menu-flexible__item-text">Oficines municipals</span></a></li><li class="menu-flexible__item page-144 level2"><a class="menu-flexible__link menu-link--external" aria-expanded="false" href="https://santfeliudecodines.eadministracio.cat/citaprevia.3" target="_blank" rel="noopener noreferrer"><span class="menu-flexible__item-text">Cita prèvia serveis municipals</span><i class="align-middle fa fa-external-link ms-2"></i></a></li><li class="menu-flexible__item page-218 level2"><a class="menu-flexible__link menu-link--external" aria-expanded="false" href="https://formularis.aoc.cat/to/B33tK7MB#codi_ens=821070005" target="_blank" rel="noopener noreferrer"><span class="menu-flexible__item-text">Canal intern d&#039;alertes</span><i class="align-middle fa fa-external-link ms-2"></i></a></li><li class="menu-flexible__item page-133 level2"><a class="menu-flexible__link" aria-expanded="false" href="/serveis-i-tramits/finestreta-unica-empresarial-fue" ><span class="menu-flexible__item-text">Finestreta Única Empresarial (FUE)</span></a></li><li class="menu-flexible__item page-140 level2"><a class="menu-flexible__link" aria-expanded="false" href="/serveis-i-tramits/cataleg-de-serveis" ><span class="menu-flexible__item-text">Catàleg de Serveis</span></a></li><li class="menu-flexible__item page-32 level2"><a class="menu-flexible__link" aria-expanded="false" href="/serveis-i-tramits/impostos-i-rebuts" ><span class="menu-flexible__item-text">Impostos i rebuts</span></a></li><li class="menu-flexible__item page-88 level2"><a class="menu-flexible__link" aria-expanded="false" href="/serveis-i-tramits/factura-electronica" ><span class="menu-flexible__item-text">Factura electrònica</span></a></li><li class="menu-flexible__item page-199 level2"><a class="menu-flexible__link" aria-expanded="false" href="/serveis-i-tramits/arxiu-municipal" ><span class="menu-flexible__item-text">
308Arxiu Municipal</span></a></li></ul></li><li class="menu-flexible__item page-2 level1"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/sant-feliu-un-poble-viu" ><span class="menu-flexible__item-text">Sant Feliu un poble viu</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-7 level2"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/sant-feliu-un-poble-viu/informacio-del-municipi" ><span class="menu-flexible__item-text">Informació del municipi</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-46 level3"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/informacio-del-municipi/historia-del-municipi" ><span class="menu-flexible__item-text">Història del municipi</span></a></li><li class="menu-flexible__item page-36 level3"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/informacio-del-municipi/guia-de-carrers--planol" ><span class="menu-flexible__item-text">Guia de carrers / Plànol</span></a></li><li class="menu-flexible__item page-47 level3"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/informacio-del-municipi/el-municipi-en-xifres" ><span class="menu-flexible__item-text">El municipi en xifres</span></a></li><li class="menu-flexible__item page-163 level3"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/informacio-del-municipi/guia-dacollida" ><span class="menu-flexible__item-text">Guia d&#039;acollida</span></a></li><li class="menu-flexible__item page-177 level3"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/informacio-del-municipi/guia-municipal" ><span class="menu-flexible__item-text">Guia Municipal</span></a></li><li class="menu-flexible__item page-48 level3"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/informacio-del-municipi/informacio-geografica" ><span class="menu-flexible__item-text">Informació geogràfica</span></a></li><li class="menu-flexible__item page-49 level3"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/informacio-del-municipi/patrimoni-cultural" ><span class="menu-flexible__item-text">Patrimoni cultural</span></a></li></ul></li><li class="menu-flexible__item page-34 level2"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/com-arribar-hi" ><span class="menu-flexible__item-text">Com arribar-hi</span></a></li><li class="menu-flexible__item page-37 level2"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/equipaments-del-municipi" ><span class="menu-flexible__item-text">Equipaments del municipi</span></a></li><li class="menu-flexible__item page-171 level2"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/centres-educatius" ><span class="menu-flexible__item-text">Centres Educatius</span></a></li><li class="menu-flexible__item page-40 level2"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/entitats-i-associacions" ><span class="menu-flexible__item-text">Entitats i associacions</span></a></li><li class="menu-flexible__item page-39 level2"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/empreses-i-comercos" ><span class="menu-flexible__item-text">Empreses i comerços</span></a></li><li class="menu-flexible__item page-5 level2"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/adreces-i-telefons-dinteres" ><span class="menu-flexible__item-text">Adreces i telèfons d&#039;interès</span></a></li><li class="menu-flexible__item page-43 level2"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/emergencies" ><span class="menu-flexible__item-text">Emergències</span></a></li><li class="menu-flexible__item page-42 level2"><a class="menu-flexible__link" aria-expanded="false" href="/sant-feliu-un-poble-viu/subministraments" ><span class="menu-flexible__item-text">Subministraments</span></a></li></ul></li><li class="menu-flexible__item page-131 level1"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/turisme" ><span class="menu-flexible__item-text">Turisme</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-41 level2"><a class="menu-flexible__link" aria-expanded="false" href="/turisme/llocs-dinteres" ><span class="menu-flexible__item-text">Llocs d&#039;interès</span></a></li><li class="menu-flexible__item page-164 level2"><a class="menu-flexible__link" aria-expanded="false" href="/turisme/els-murals" ><span class="menu-flexible__item-text">Els murals</span></a></li><li class="menu-flexible__item page-145 level2"><a class="menu-flexible__link" aria-expanded="false" href="/turisme/parcs-places-i-espais-verds" ><span class="menu-flexible__item-text">Parcs, places i espais verds</span></a></li><li class="menu-flexible__item page-129 level2"><a class="menu-flexible__link" aria-expanded="false" href="/turisme/rutes" ><span class="menu-flexible__item-text">Rutes</span></a></li><li class="menu-flexible__item page-130 level2"><a class="menu-flexible__link" aria-expanded="false" href="/turisme/on-menjar" ><span class="menu-flexible__item-text">On menjar</span></a></li><li class="menu-flexible__item page-38 level2"><a class="menu-flexible__link" aria-expanded="false" href="/turisme/on-dormir" ><span class="menu-flexible__item-text">On dormir</span></a></li><li class="menu-flexible__item page-165 level2"><a class="menu-flexible__link" aria-expanded="false" href="/turisme/entorn-natural" ><span class="menu-flexible__item-text">Entorn natural</span></a></li><li class="menu-flexible__item page-50 level2"><a class="menu-flexible__link" aria-expanded="false" href="/turisme/fires-i-mercats" ><span class="menu-flexible__item-text">Fires i mercats</span></a></li><li class="menu-flexible__item page-146 level2"><a class="menu-flexible__link" aria-expanded="false" href="/turisme/festes" ><span class="menu-flexible__item-text">Festes</span></a></li><li class="menu-flexible__item page-147 level2"><a class="menu-flexible__link" aria-expanded="false" href="/turisme/la-festa-major" ><span class="menu-flexible__item-text">La Festa Major</span></a></li></ul></li><li class="menu-flexible__item page-4 level1"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/actualitat" ><span class="menu-flexible__item-text">Actualitat</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-128 level2"><a class="menu-flexible__link" aria-expanded="false" href="/actualitat/avisos" ><span class="menu-flexible__item-text">Avisos</span></a></li><li class="menu-flexible__item page-53 level2"><a class="menu-flexible__link" aria-expanded="false" href="/actualitat/noticies" ><span class="menu-flexible__item-text">Notícies</span></a></li><li class="menu-flexible__item page-54 level2"><a class="menu-flexible__link" aria-expanded="false" href="/actualitat/agenda" ><span class="menu-flexible__item-text">Agenda</span></a></li><li class="menu-flexible__item page-56 level2"><a class="menu-flexible__link" aria-expanded="false" href="/actualitat/publicacions-municipals" ><span class="menu-flexible__item-text">Publicacions municipals</span></a></li><li class="menu-flexible__item page-55 level2"><a class="menu-flexible__link" aria-expanded="false" href="/actualitat/butlleti-electronic" ><span class="menu-flexible__item-text">Butlletí electrònic</span></a></li><li class="menu-flexible__item page-58 level2"><a class="menu-flexible__link" aria-expanded="false" href="/actualitat/hemeroteca" ><span class="menu-flexible__item-text">Hemeroteca</span></a></li><li class="menu-flexible__item page-148 level2"><a class="menu-flexible__link" aria-expanded="false" href="/actualitat/prediccio-meteorologica-" ><span class="menu-flexible__item-text">Predicció meteorològica </span></a></li><li class="menu-flexible__item page-149 level2"><a class="menu-flexible__link" aria-expanded="false" href="/actualitat/ona-codinenca" ><span class="menu-flexible__item-text">Ona Codinenca</span></a></li><li class="menu-flexible__item page-150 level2"><a class="menu-flexible__link menu-link--external" aria-expanded="false" href="https://www.youtube.com/user/ajuntamentSFdC/videos?flow=grid&amp;view=1" target="_blank" rel="noopener noreferrer"><span class="menu-flexible__item-text">
308Canal codinenc</span><i class="align-middle fa fa-external-link ms-2"></i></a></li><li class="menu-flexible__item page-182 level2"><a class="menu-flexible__link menu-link--external" aria-expanded="false" href="https://www.youtube.com/watch?v=oHsTlb_XPNc" target="_blank" rel="noopener noreferrer"><span class="menu-flexible__item-text">Webcam a la Plaça</span><i class="align-middle fa fa-external-link ms-2"></i></a></li><li class="menu-flexible__item page-151 level2"><a class="menu-flexible__link menu-link--external" aria-expanded="false" href="https://www.youtube.com/watch?v=IgTjHkzo4EY" target="_blank" rel="noopener noreferrer"><span class="menu-flexible__item-text">Xarxes socials</span><i class="align-middle fa fa-external-link ms-2"></i></a></li></ul></li><li class="menu-flexible__item page-93 level1"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/temes" ><span class="menu-flexible__item-text">Temes</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-136 level2"><a class="menu-flexible__link" aria-expanded="false" href="/temes/cultura" ><span class="menu-flexible__item-text">Cultura</span></a></li><li class="menu-flexible__item page-139 level2"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/temes/educacio" ><span class="menu-flexible__item-text">Educació</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-202 level3"><a class="menu-flexible__link menu-link--external" aria-expanded="false" href="https://www.santfeliudecodines.cat/temes/educacio/pla-educatiu-dentorn-pee.html" target="_blank" rel="noopener noreferrer"><span class="menu-flexible__item-text">Pla Educatiu d&#039;Entorn</span><i class="align-middle fa fa-external-link ms-2"></i></a></li><li class="menu-flexible__item page-203 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/educacio/consell-dinfants" ><span class="menu-flexible__item-text">Consell d&#039;infants</span></a></li><li class="menu-flexible__item page-251 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/educacio/inscripcions-a-lextraescolar-dart-octubre-desembre-2026" ><span class="menu-flexible__item-text">Inscripcions a l&#039;extraescolar d&#039;art (octubre-desembre 2026)</span></a></li><li class="menu-flexible__item page-252 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/educacio/inscripcions-a-lextraescolar-de-fotografia-octubre-desembre-2026" ><span class="menu-flexible__item-text">Inscripcions a l&#039;extraescolar de fotografia (octubre-desembre 2026)</span></a></li></ul></li><li class="menu-flexible__item page-153 level2"><a class="menu-flexible__link" aria-expanded="false" href="/temes/joves" ><span class="menu-flexible__item-text">Joves</span></a></li><li class="menu-flexible__item page-236 level2"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/temes/igualtat" ><span class="menu-flexible__item-text">Igualtat</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-237 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/igualtat/feminisme" ><span class="menu-flexible__item-text">Feminisme</span></a></li><li class="menu-flexible__item page-238 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/igualtat/lgtbi" ><span class="menu-flexible__item-text">LGTBI+</span></a></li></ul></li><li class="menu-flexible__item page-134 level2"><a class="menu-flexible__link" aria-expanded="false" href="/temes/esport" ><span class="menu-flexible__item-text">Esport</span></a></li><li class="menu-flexible__item page-135 level2"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/temes/medi-ambient" ><span class="menu-flexible__item-text">Medi ambient</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-194 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/medi-ambient/recollida-porta-a-porta" ><span class="menu-flexible__item-text">Recollida Porta a Porta</span></a></li><li class="menu-flexible__item page-239 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/medi-ambient/convivencia-amb-la-natura" ><span class="menu-flexible__item-text">
308Convivència amb la natura</span></a></li></ul></li><li class="menu-flexible__item page-152 level2"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/temes/atencio-a-les-persones" ><span class="menu-flexible__item-text">Atenció a les persones</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-216 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/atencio-a-les-persones/inscripcio-a-lacte-de-benvinguda-de-les-noves-persones-empadronades" ><span class="menu-flexible__item-text">Inscripció a l&#039;acte de benvinguda de les noves persones empadronades</span></a></li><li class="menu-flexible__item page-235 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/atencio-a-les-persones/inscripcio-a-la-jornada-intercultural" ><span class="menu-flexible__item-text">Inscripció a la Jornada Intercultural</span></a></li></ul></li><li class="menu-flexible__item page-189 level2"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/temes/aigua" ><span class="menu-flexible__item-text">Aigua</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-253 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/aigua/campanya-naturalment-de-casa" ><span class="menu-flexible__item-text">Campanya &quot;Naturalment de casa&quot;</span></a></li></ul></li><li class="menu-flexible__item page-154 level2"><a class="menu-flexible__link" aria-expanded="false" href="/temes/gent-gran" ><span class="menu-flexible__item-text">Gent gran</span></a></li><li class="menu-flexible__item page-138 level2"><a class="menu-flexible__link" aria-expanded="false" href="/temes/urbanisme-i-mobilitat" ><span class="menu-flexible__item-text">Urbanisme i Mobilitat</span></a></li><li class="menu-flexible__item page-137 level2"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/temes/salut" ><span class="menu-flexible__item-text">Salut</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-209 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/salut/pla-local-de-salut-2025-2028" ><span class="menu-flexible__item-text">Pla Local de Salut 2025-2028</span></a></li><li class="menu-flexible__item page-197 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/salut/grup-de-suport-al-dol" ><span class="menu-flexible__item-text">Grup de suport al dol</span></a></li><li class="menu-flexible__item page-195 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/salut/alertes-sanitaries" ><span class="menu-flexible__item-text">Alertes sanitàries</span></a></li><li class="menu-flexible__item page-246 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/salut/prevencio-de-plagues" ><span class="menu-flexible__item-text">Prevenció de plagues</span></a></li></ul></li><li class="menu-flexible__item page-156 level2"><a class="menu-flexible__link" aria-expanded="false" href="/temes/participacio-ciutadana" ><span class="menu-flexible__item-text">Participació ciutadana</span></a></li><li class="menu-flexible__item page-157 level2"><a class="menu-flexible__link menu-flexible__link--dropdown" aria-expanded="false" href="/temes/comerc-consum-ocupacio-i-promocio-economica" ><span class="menu-flexible__item-text">Comerç, consum, ocupació i promoció econòmica</span></a><ul class="menu-flexible menu-flexible__submenu"><li class="menu-flexible__item page-192 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/comerc-consum-ocupacio-i-promocio-economica/ofertes-de-treball" ><span class="menu-flexible__item-text">Ofertes de treball</span></a></li><li class="menu-flexible__item page-183 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/comerc-consum-ocupacio-i-promocio-economica/finestreta-unica-empresarial" ><span class="menu-flexible__item-text">Finestreta Única Empresarial</span></a></li><li class="menu-flexible__item page-159 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/comerc-consum-ocupacio-i-promocio-economica/poligon-industrial-pla-de-la-costa" ><span class="menu-flexible__item-text">Polígon industrial Pla de la Costa</span></a></li><li class="menu-flexible__item page-160 level3"><a class="menu-flexible__link" aria-expanded="false" href="/temes/comerc-consum-ocupacio-i-promocio-economica/formacio" ><span class="menu-flexible__item-text">Formació</span></a></li></ul></li></ul></li></ul></div>
308<script>(function() {
309    'use strict';
310
311    // Mega panel
312
313    function initMegaPanels(navContainer) {
314        var menuItems = Array.prototype.slice.call(navContainer.querySelectorAll('[data-mega-id]'));
315        if (!menuItems.length) return;
316
317        var navUl    = navContainer.querySelector('ul');
318        var topItems = navUl
319            ? menuItems.filter(function(el) { return el.parentElement === navUl; })
320            : menuItems;
321
322        var wrapper    = navContainer.closest('.menu-flexible__wrapper');
323        var isClick    = wrapper && wrapper.getAttribute('data-expand-type') === 'click';
324
325        menuItems.forEach(function(item) {
326            var panel = getPanelForItem(item, navContainer);
327            if (!panel) return;
328
329            if (isClick) {
330                var link = item.querySelector('a');
331                if (link) {
332                    link.addEventListener('click', function(e) {
333                        // En mòbil, els elements naveguen directament sense desplegar submenús
334                        if (window.innerWidth <= 992) return;
335                        if (panel.classList.contains('mf-mega-visible')) {
336                            // Segon clic: navegar
337                            return;
338                        }
339                        e.preventDefault();
340                        hideAllMegaPanels(navContainer);
341                        showPanel(item, panel);
342                    });
343                }
344            } else {
345                var hoverDelay = parseInt(
346                    getComputedStyle(wrapper).getPropertyValue('--menu-hover-delay'), 10
347                ) || 0;
348                var hoverTimer = null;
349
350                var leaveTimer = null;
351
352                item.addEventListener('mouseenter', function() {
353                    clearTimeout(hoverTimer);
354                    clearTimeout(leaveTimer);
355                    if (hoverDelay > 0) {
356                        hoverTimer = setTimeout(function() { showPanel(item, panel); }, hoverDelay);
357                    } else {
358                        showPanel(item, panel);
359                    }
360                });
361                item.addEventListener('mouseleave', function(e) {
362                    clearTimeout(hoverTimer);
363                    if (!panel.contains(e.relatedTarget)) {
364                        leaveTimer = setTimeout(function() { hidePanel(item, panel); }, 300);
365                    }
366                });
367                panel.addEventListener('mouseenter', function() {
368                    clearTimeout(leaveTimer);
369                });
370                panel.addEventListener('mouseleave', function(e) {
371                    clearTimeout(hoverTimer);
372                    clearTimeout(leaveTimer);
373                    if (!item.contains(e.relatedTarget)) hidePanel(item, panel);
374                });
375
376                // Tàctil: fallback quan hover no disponible (només escriptori tàctil)
377                var link = item.querySelector('a');
378                if (link) {
379                    link.addEventListener('click', function(e) {
380                        if (window.matchMedia('(hover: none)').matches && window.innerWidth > 992) {
381                            if (panel.classList.contains('mf-mega-visible')) {
382                                // Segon clic en tàctil: navegar
383                                return;
384                            }
385                            e.preventDefault();
386                            hideAllMegaPanels(navContainer);
387                            showPanel(item, panel);
388                        }
389                    });
390                }
391            }
392        });
393
394        navContainer.addEventListener('keydown', function(e) {
395            handleMegaKeydown(e, navContainer, topItems);
396        });
397
398        if (!isClick) {
399            navContainer.addEventListener('focusin', function(e) {
400                var item = e.target.closest('[data-mega-id]');
401                if (!item) return;
402                var panel = getPanelForItem(item, navContainer);
403                if (!panel) return;
404                hideAllMegaPanels(navContainer);
405                showPanel(item, panel);
406            });
407        }
408
409        navContainer.addEventListener('focusout', function() {
410            setTimeout(function() {
411                if (!navContainer.contains(document.activeElement)) {
412                    hideAllMegaPanels(navContainer);
413                }
414            }, 0);
415        });
416
417        document.addEventListener('click', function(e) {
418            if (!navContainer.contains(e.target)) {
419                hideAllMegaPanels(navContainer);
420            }
421        });
422    }
423
424    function handleMegaKeydown(e, navContainer, topItems) {
425        var focused = document.activeElement;
426        if (!focused) return;
427
428        var currentItem = focused.closest('[data-mega-id]');
429        var currentPanel = focused.closest('.menu-flexible__mega-panel');
430        var key = e.key || e.code || e.keyCode;
431
432        function directLink(item) {
433            if (!item) return null;
434            return Array.prototype.slice.call(item.children).find(function(el) {
435                return el.tagName === 'A';
436            }) || item.querySelector('a');
437        }
438
439        function itemForPanel(panel) {
440            if (!panel) return null;
441            var id = panel.getAttribute('data-mega-id');
442            return id ? navContainer.querySelector('li[data-mega-id="' + id + '"]') : null;
443        }
444
445        function focusPanelLink(panel, index) {
446            var links = Array.prototype.slice.call(panel.querySelectorAll('a'));
447            if (!links.length) return;
448            links[(index + links.length) % links.length].focus();
449        }
450
451        function focusPanelSibling(panel, offset) {
452            var links = Array.prototype.slice.call(panel.querySelectorAll('a'));
453            var idx = links.indexOf(focused);
454            if (idx === -1) return;
455            links[(idx + offset + links.length) % links.length].focus();
456        }
457
458        function panelColumnForLink(link) {
459            return link ? link.closest('.menu-flexible__mega-col') : null;
460        }
461
462        function focusAdjacentPanelColumn(panel, offset) {
463            var columns = Array.prototype.slice.call(panel.querySelectorAll('.menu-flexible__mega-col'));
464            var currentColumn = panelColumnForLink(focused);
465            var idx = columns.indexOf(currentColumn);
466            if (idx === -1) return false;
467
468            var targetColumn = columns[(idx + offset + columns.length) % columns.length];
469            var targetLink = targetColumn.querySelector('a');
470            if (targetLink) {
471                targetLink.focus();
472                return true;
473            }
474
475            return false;
476        }
477
478        function focusTopItem(item, offset) {
479            var idx = topItems.indexOf(item);
480            if (idx === -1) return;
481
482            var next = topItems[(idx + offset + topItems.length) % topItems.length];
483            hideAllMegaPanels(navContainer);
484
485            var nextLink = directLink(next);
486            if (nextLink) {
487                nextLink.focus();
488                var nextPanel = getPanelForItem(next, navContainer);
489                if (nextPanel) showPanel(next, nextPanel);
490            }
491        }
492
493        switch (key) {
494            case 'Escape':
495            case 'Esc':
496            case 27: {
497                e.preventDefault();
498                hideAllMegaPanels(navContainer);
499                if (currentPanel) {
500                    var item = itemForPanel(currentPanel);
501                    var lnk = directLink(item);
502                    if (lnk) lnk.focus();
503                }
504                break;
505            }
506
507            case 'ArrowRight':
508            case 39:
509            case 'ArrowLeft':
510            case 37: {
511                var direction = (key === 'ArrowRight' || key === 39) ? 1 : -1;
512                e.preventDefault();
513
514                if (currentPanel) {
515                    if (!focusAdjacentPanelColumn(currentPanel, direction)) {
516                        var ownerItem = itemForPanel(currentPanel);
517                        focusTopItem(ownerItem, direction);
518                    }
519                    break;
520                }
521
522                if (!currentItem) return;
523                focusTopItem(currentItem, direction);
524                break;
525            }
526
527            case 'ArrowDown':
528            case 40: {
529                e.preventDefault();
530                if (currentPanel) {
531                    focusPanelSibling(currentPanel, 1);
532                    break;
533                }
534                if (!currentItem) return;
535                var panel = getPanelForItem(currentItem, navContainer);
536                if (!panel) return;
537                if (!panel.classList.contains('mf-mega-visible')) {
538                    hideAllMegaPanels(navContainer);
539                    showPanel(currentItem, panel);
540                }
541                focusPanelLink(panel, 0);
542                break;
543            }
544
545            case ' ':
546            case 'Space':
547            case 'Spacebar':
548            case 32: {
549                if (currentPanel || !currentItem) return;
550                var spacePanel = getPanelForItem(currentItem, navContainer);
551                if (!spacePanel) return;
552
553                e.preventDefault();
554                if (spacePanel.classList.contains('mf-mega-visible')) {
555                    hidePanel(currentItem, spacePanel);
556                } else {
557                    hideAllMegaPanels(navContainer);
558                    showPanel(currentItem, spacePanel);
559                }
560                break;
561            }
562
563            case 'ArrowUp':
564            case 38: {
565                if (!currentPanel) return;
566                e.preventDefault();
567                var panelLinks = Array.prototype.slice.call(currentPanel.querySelectorAll('a'));
568                var focusedIndex = panelLinks.indexOf(focused);
569
570                if (focusedIndex > 0) {
571                    focusPanelLink(currentPanel, focusedIndex - 1);
572                } else {
573                    var parentItem = itemForPanel(currentPanel);
574                    var parentLink = directLink(parentItem);
575                    if (parentLink) parentLink.focus();
576                    if (parentItem) hidePanel(parentItem, currentPanel);
577                }
578                break;
579            }
580        }
581    }
582
583    function getPanelForItem(item, navContainer) {
584        var id = item.getAttribute('data-mega-id');
585        return id
586            ? navContainer.querySelector('.menu-flexible__mega-panel[data-mega-id="' + id + '"]')
587            : null;
588    }
589
590    function showPanel(item, panel) {
591        panel.classList.add('mf-mega-visible');
592        panel.setAttribute('aria-hidden', 'false');
593        var link = item.querySelector('a');
594        if (link) link.setAttribute('aria-expanded', 'true');
595    }
596
597    function hidePanel(item, panel) {
598        panel.classList.remove('mf-mega-visible');
599        panel.setAttribute('aria-hidden', 'true');
600        var link = item.querySelector('a');
601        if (link) link.setAttribute('aria-expanded', 'false');
602    }
603
604    function hideAllMegaPanels(navContainer) {
605        navContainer.querySelectorAll('.menu-flexible__mega-panel.mf-mega-visible')
606            .forEach(function(panel) {
607                var id   = panel.getAttribute('data-mega-id');
608                var item = id ? navContainer.querySelector('li[data-mega-id="' + id + '"]') : null;
609                if (item) {
610                    hidePanel(item, panel);
611                } else {
612                    panel.classList.remove('mf-mega-visible');
613                    panel.setAttribute('aria-hidden', 'true');
614                }
615            });
616    }
617
618
619    // Tecles de fletxa (menú estàndard)
620
621    function initStandardKeyboard(wrapper) {
622        var menu = wrapper.querySelector('.menu-flexible__list');
623        if (!menu) return;
624
625        function closeAll() {
626            Array.prototype.slice.call(menu.querySelectorAll('.menu-flexible__item[focus="true"]'))
627                .forEach(function(item) {
628                    item.setAttribute('focus', 'false');
629                    var submenu = Array.prototype.slice.call(item.children).find(function(el) {
630                        return el.classList && el.classList.contains('menu-flexible__submenu');
631                    });
632                    if (submenu) {
633                        submenu.style.left = '';
634                        submenu.style.opacity = '';
635                        submenu.style.visibility = '';
636                        submenu.style.pointerEvents = '';
637                        submenu.style.transform = '';
638                    }
639                    var link = Array.prototype.slice.call(item.children).find(function(el) {
640                        return el.tagName === 'A';
641                    });
642                    if (link && link.classList.contains('menu-flexible__link--dropdown')) {
643                        link.setAttribute('aria-expanded', 'false');
644                    }
645                });
646        }
647
648        wrapper.addEventListener('keydown', function(e) {
649            handleStandardKeydown(e, menu);
650        });
651
652        wrapper.addEventListener('focusout', function() {
653            setTimeout(function() {
654                if (!wrapper.contains(document.activeElement)) {
655                    closeAll();
656                }
657            }, 0);
658        });
659    }
660
661    function handleStandardKeydown(e, menu) {
662        var focused = document.activeElement;
663        if (!focused || !menu.contains(focused)) return;
664
665        var itemSel = '.menu-flexible__item';
666        var linkSel = '.menu-flexible__link';
667
668        var currentLi = focused.closest(itemSel);
669        if (!currentLi) return;
670
671        var parentUl = currentLi.parentElement;
672        var isLevel1 = parentUl === menu;
673
674        function directLink(li) {
675            var direct = Array.prototype.slice.call(li.children).find(function(el) {
676                return el.tagName === 'A';
677            });
678            return direct || li.querySelector(linkSel);
679        }
680
681        function siblingItems(ul) {
682            return Array.prototype.slice.call(ul.children).filter(function(el) {
683                return el.matches(itemSel);
684            });
685        }
686
687        function childMenu(li) {
688            return Array.prototype.slice.call(li.children).find(function(el) {
689                return el.classList && el.classList.contains('menu-flexible__submenu');
690            });
691        }
692
693        function setSubmenuVisible(li, visible) {
694            var submenu = childMenu(li);
695            if (!submenu) return;
696
697            if (visible) {
698                submenu.style.left = li.parentElement === menu ? '0' : '100%';
699                submenu.style.opacity = '1';
700                submenu.style.visibility = 'visible';
701                submenu.style.pointerEvents = 'auto';
702                submenu.style.transform = 'none';
703            } else {
704                submenu.style.left = '';
705                submenu.style.opacity = '';
706                submenu.style.visibility = '';
707                submenu.style.pointerEvents = '';
708                submenu.style.transform = '';
709            }
710        }
711
712        function setExpanded(li, expanded) {
713            li.setAttribute('focus', expanded ? 'true' : 'false');
714            setSubmenuVisible(li, expanded);
715            var lnk = directLink(li);
716            if (lnk && lnk.classList.contains('menu-flexible__link--dropdown')) {
717                lnk.setAttribute('aria-expanded', expanded ? 'true' : 'false');
718            }
719            if (!expanded) {
720                Array.prototype.slice.call(li.querySelectorAll(itemSel + '[focus="true"]'))
721                    .forEach(function(item) {
722                        item.setAttribute('focus', 'false');
723                        setSubmenuVisible(item, false);
724                        var childLink = directLink(item);
725                        if (childLink && childLink.classList.contains('menu-flexible__link--dropdown')) {
726                            childLink.setAttribute('aria-expanded', 'false');
727                        }
728                    });
729            }
730        }
731
732        function closeSiblings(li) {
733            Array.prototype.slice.call(li.parentElement.children)
734                .filter(function(item) {
735                    return item !== li && item.matches(itemSel);
736                })
737                .forEach(function(item) {
738                    setExpanded(item, false);
739                });
740        }
741
742        function openChild(li) {
743            var submenu = childMenu(li);
744            if (!submenu) return false;
745            closeSiblings(li);
746            setExpanded(li, true);
747            var firstChild = submenu.querySelector(linkSel);
748            if (firstChild) firstChild.focus();
749            return true;
750        }
751
752        function focusSibling(offset) {
753            var sibs = siblingItems(parentUl);
754            var idx  = sibs.indexOf(currentLi);
755            var lnk  = directLink(sibs[(idx + offset + sibs.length) % sibs.length]);
756            if (lnk) lnk.focus();
757        }
758
759        var key = e.key || e.code || e.keyCode;
760
761        switch (key) {
762            case 'ArrowRight':
763            case 39: {
764                if (!isLevel1) return;
765                e.preventDefault();
766                setExpanded(currentLi, false);
767                focusSibling(1);
768                break;
769            }
770            case 'ArrowLeft':
771            case 37: {
772                if (!isLevel1) return;
773                e.preventDefault();
774                setExpanded(currentLi, false);
775                focusSibling(-1);
776                break;
777            }
778            case 'ArrowDown':
779            case 40: {
780                e.preventDefault();
781                if (focused === directLink(currentLi) && openChild(currentLi)) {
782                    break;
783                }
784                var sibsDown = siblingItems(parentUl);
785                var idxDown  = sibsDown.indexOf(currentLi);
786                if (idxDown < sibsDown.length - 1) {
787                    var lnkDown = directLink(sibsDown[idxDown + 1]);
788                    if (lnkDown) lnkDown.focus();
789                }
790                break;
791            }
792            case 'ArrowUp':
793            case 38: {
794                e.preventDefault();
795                var sibsUp = siblingItems(parentUl);
796                var idxUp  = sibsUp.indexOf(currentLi);
797                if (idxUp > 0) {
798                    var lnkUp = directLink(sibsUp[idxUp - 1]);
799                    if (lnkUp) lnkUp.focus();
800                } else if (!isLevel1) {
801                    var parentItemUp = parentUl.closest(itemSel);
802                    if (parentItemUp) {
803                        setExpanded(parentItemUp, false);
804                        var parentLinkUp = directLink(parentItemUp);
805                        if (parentLinkUp) parentLinkUp.focus();
806                    }
807                }
808                break;
809            }
810            case ' ':
811            case 'Space':
812            case 'Spacebar':
813            case 32: {
814                if (!focused.classList.contains('menu-flexible__link--dropdown')) return;
815                e.preventDefault();
816                currentLi.getAttribute('focus') === 'true'
817                    ? setExpanded(currentLi, false)
818                    : openChild(currentLi);
819                break;
820            }
821            case 'Escape':
822            case 'Esc':
823            case 27: {
824                if (isLevel1 && currentLi.getAttribute('focus') !== 'true') return;
825                e.preventDefault();
826                if (!isLevel1) {
827                    var parentItemEsc = parentUl.closest(itemSel);
828                    if (parentItemEsc) {
829                        setExpanded(parentItemEsc, false);
830                        var parentLinkEsc = directLink(parentItemEsc);
831                        if (parentLinkEsc) parentLinkEsc.focus();
832                    }
833                } else {
834                    setExpanded(currentLi, false);
835                }
836                break;
837            }
838        }
839    }
840
841
842    // Click mode: expandir submenús via [focus=true]
843
844    function initClickExpand(wrapper) {
845        var menu = wrapper.querySelector('.menu-flexible__list');
846        if (!menu) return;
847
848        var itemSel        = '.menu-flexible__item';
849        var dropdownSel    = '.menu-flexible__link--dropdown';
850
851        function closeAll(container) {
852            Array.prototype.slice.call(container.querySelectorAll(itemSel + '[focus="true"]'))
853                .forEach(function(el) { el.setAttribute('focus', 'false'); });
854        }
855
856        function closeSiblings(item) {
857            var parentUl = item.parentElement;
858            Array.prototype.slice.call(parentUl.children)
859                .filter(function(el) {
860                    return el !== item
861                        && el.matches(itemSel)
862                        && el.getAttribute('focus') === 'true';
863                })
864                .forEach(function(el) {
865                    el.setAttribute('focus', 'false');
866                    closeAll(el);
867                });
868        }
869
870        menu.addEventListener('click', function(e) {
871            var link = e.target.closest(dropdownSel);
872            if (!link || !menu.contains(link)) return;
873
874            var item = link.parentElement;
875            if (!item || !item.matches(itemSel)) return;
876
877            // En mòbil, els elements naveguen directament sense desplegar submenús
878            if (window.innerWidth <= 992) return;
879
880            var isOpen = item.getAttribute('focus') === 'true';
881
882            if (isOpen) {
883                // Segon clic: navegar
884                return;
885            }
886
887            e.preventDefault();
888            closeSiblings(item);
889            item.setAttribute('focus', 'true');
890        });
891
892        document.addEventListener('click', function(e) {
893            var openItem = menu.querySelector(itemSel + '[focus="true"]');
894            if (!openItem) return;
895            if (!openItem.contains(e.target)) {
896                closeAll(menu);
897            }
898        });
899    }
900
901
902    // Hamburger (mòbil ≤992px)
903
904    class MenuFlexible {
905        constructor(wrapper) {
906            this.wrapper   = wrapper;
907            this.hamburger = wrapper.querySelector('.menu-flexible__toggle');
908            this.menu      = wrapper.querySelector('.menu-flexible__list');
909
910            if (!this.hamburger || !this.menu) return;
911
912            var parent  = this.menu.parentElement;
913            this.isMega = parent && parent.classList.contains('menu-flexible__nav-container');
914            this.target = this.isMega ? parent : this.menu;
915
916            // Ancestre que en mòbil és barra fixa de 44px amb overflow:clip i retalla
917            // el menú desplegat. En obrir, l'eixamplem; en tancar, el restaurem.
918            this.clipper = wrapper.closest('.nav');
919
920            this.init();
921            window.addEventListener('resize', () => this.handleResize());
922        }
923
924        init() {
925            this.hamburger.addEventListener('click', (e) => {
926                e.preventDefault();
927                e.stopPropagation();
928                this.toggleMenu();
929            });
930
931            document.addEventListener('click', (e) => {
932                if (!this.wrapper.contains(e.target) && this.isOpen()) {
933                    this.closeMenu();
934                }
935            });
936
937            this.menu.querySelectorAll('a').forEach(link => {
938                link.addEventListener('click', () => {
939                    if (window.innerWidth <= 992 && this.isOpen()) {
940                        this.closeMenu();
941                    }
942                });
943            });
944        }
945
946        isOpen()     { return this.target.classList.contains('show'); }
947        toggleMenu() { this.isOpen() ? this.closeMenu() : this.openMenu(); }
948
949        liftClip() {
950            if (this.clipper && window.innerWidth <= 992) {
951                this.clipper.style.height = 'auto';
952                this.clipper.style.maxHeight = 'none';
953                this.clipper.style.overflow = 'visible';
954            }
955        }
956
957        restoreClip() {
958            if (this.clipper) {
959                this.clipper.style.height = '';
960                this.clipper.style.maxHeight = '';
961                this.clipper.style.overflow = '';
962            }
963        }
964
965        openMenu() {
966            this.target.classList.add('show');
967            this.target.style.display = this.isMega ? 'block' : 'flex';
968            if (this.isMega) this.menu.style.display = 'flex';
969            this.liftClip();
970            this.hamburger.classList.add('active');
971            this.hamburger.setAttribute('aria-expanded', 'true');
972        }
973
974        closeMenu() {
975            this.target.classList.remove('show');
976            this.target.style.display = 'none';
977            if (this.isMega) {
978                this.menu.style.display = '';
979                var nc = this.wrapper.querySelector('.menu-flexible__nav-container');
980                if (nc) hideAllMegaPanels(nc);
981            }
982            this.restoreClip();
983            this.hamburger.classList.remove('active');
984            this.hamburger.setAttribute('aria-expanded', 'false');
985        }
986
987        handleResize() {
988            if (window.innerWidth > 992) {
989                this.target.classList.remove('show');
990                this.target.style.display = '';
991                if (this.isMega) this.menu.style.display = '';
992                this.restoreClip();
993                this.hamburger.classList.remove('active');
994                this.hamburger.setAttribute('aria-expanded', 'false');
995            }
996        }
997    }
998
999
1000    // Init
1001
1002    function init() {
1003        document.querySelectorAll('.menu-flexible__wrapper').forEach(function(wrapper) {
1004            var navContainer = wrapper.querySelector('.menu-flexible__nav-container');
1005            if (navContainer) {
1006                initMegaPanels(navContainer);
1007            } else {
1008                initStandardKeyboard(wrapper);
1009                if (wrapper.getAttribute('data-expand-type') === 'click') {
1010                    initClickExpand(wrapper);
1011                }
1012            }
1013            new MenuFlexible(wrapper);
1014            if (wrapper.getAttribute('data-menu-sticky') === 'true') {
1015                var stickyTarget = wrapper.closest('#navbar-top')
1016                                || wrapper.closest('.navbar')
1017                                || wrapper.closest('nav');
1018                if (stickyTarget) {
1019                    stickyTarget.classList.add('menu-sticky-enabled');
1020                    document.body.classList.add('has-sticky-menu');
1021
1022                    var navbarHeight   = stickyTarget.offsetHeight;
1023                    var navbarTop      = stickyTarget.getBoundingClientRect().top + window.scrollY;
1024                    var bodyPadApplied = false;
1025
1026                    function updateStickyOffset() {
1027                        navbarHeight = stickyTarget.offsetHeight;
1028                        document.documentElement.style.setProperty('--skip-links-sticky-offset', navbarHeight + 'px');
1029
1030                        if (bodyPadApplied) {
1031                            document.body.style.paddingTop = navbarHeight + 'px';
1032                        }
1033                    }
1034
1035                    function getTargetFromHash(hash) {
1036                        if (!hash || hash.charAt(0) !== '#') {
1037                            return null;
1038                        }
1039
1040                        try {
1041                            return document.getElementById(decodeURIComponent(hash.substring(1)));
1042                        } catch (error) {
1043                            return document.getElementById(hash.substring(1));
1044                        }
1045                    }
1046
1047                    function scrollToSkipTarget(hash) {
1048                        var target = getTargetFromHash(hash);
1049                        if (!target) {
1050                            return;
1051                        }
1052
1053                        updateStickyOffset();
1054
1055                        var expectedTop = target.getBoundingClientRect().top + window.scrollY - navbarHeight;
1056                        if (expectedTop > navbarTop) {
1057                            applyFixed();
1058                        } else {
1059                            removeFixed();
1060                        }
1061
1062                        try {
1063                            target.focus({ preventScroll: true });
1064                        } catch (error) {
1065                            target.focus();
1066                        }
1067
1068                        var targetTop = target.getBoundingClientRect().top + window.scrollY;
1069                        window.scrollTo(0, Math.max(targetTop - navbarHeight, 0));
1070                    }
1071
1072                    document.querySelectorAll('.skip-links a[href^="#"]').forEach(function(link) {
1073                        link.addEventListener('click', function(event) {
1074                            var hash = link.getAttribute('href');
1075                            var target = getTargetFromHash(hash);
1076                            if (!target) {
1077                                return;
1078                            }
1079
1080                            event.preventDefault();
1081
1082                            if (window.history && window.history.pushState) {
1083                                window.history.pushState(null, '', hash);
1084                            } else {
1085                                window.location.hash = hash;
1086                            }
1087
1088                            scrollToSkipTarget(hash);
1089                        });
1090                    });
1091
1092                    updateStickyOffset();
1093
1094                    function applyFixed() {
1095                        if (!stickyTarget.classList.contains('fixed-top')) {
1096                            updateStickyOffset();
1097                            stickyTarget.classList.add('fixed-top');
1098                            document.body.style.paddingTop = navbarHeight + 'px';
1099                            bodyPadApplied = true;
1100                        }
1101                    }
1102
1103                    function removeFixed() {
1104                        if (stickyTarget.classList.contains('fixed-top')) {
1105                            stickyTarget.classList.remove('fixed-top');
1106                            document.body.style.paddingTop = '';
1107                            bodyPadApplied = false;
1108                        }
1109                    }
1110
1111                    window.addEventListener('scroll', function() {
1112                        if (window.scrollY > navbarTop) {
1113                            applyFixed();
1114                        } else {
1115                            removeFixed();
1116                        }
1117                    });
1118
1119                    window.addEventListener('resize', function() {
1120                        updateStickyOffset();
1121                        if (!stickyTarget.classList.contains('fixed-top')) {
1122                            navbarTop = stickyTarget.getBoundingClientRect().top + window.scrollY;
1123                        }
1124                    });
1125
1126                    if ('ResizeObserver' in window) {
1127                        new ResizeObserver(updateStickyOffset).observe(stickyTarget);
1128                    }
1129
1130                    stickyTarget.querySelectorAll('img').forEach(function(image) {
1131                        if (!image.complete) {
1132                            image.addEventListener('load', updateStickyOffset, { once: true });
1133                        }
1134                    });
1135
1136                    window.addEventListener('load', updateStickyOffset);
1137
1138                    if (window.scrollY > navbarTop) applyFixed();
1139
1140                    if (window.location.hash) {
1141                        window.setTimeout(function() {
1142                            scrollToSkipTarget(window.location.hash);
1143                        }, 0);
1144                    }
1145                }
1146            }
1147        });
1148    }
1149
1150    if (document.readyState === 'loading') {
1151        document.addEventListener('DOMContentLoaded', init);
1152    } else {
1153        init();
1154    }
1155})();
1156</script>
1156</nav></div></div></div></div></div>        <div class="homeHeader clearfix"  >
1157    <div class="container">
1158        <div class="row">
1159                            <div class="col-xs-12 col-sm-12 col-md-4 col-lg-4 ">
1160                    <div class="procedures">
1161    <div class="contentlist ">
1162        <div id="Tramits">
1163            <h2>Administració electrònica</h2>
1164            <a href="https://santfeliudecodines.eadministracio.cat/info.4" target="_blank">
1165    <span class="text">Seu electrònica </span>
1166</a>
1167<a href="https://santfeliudecodines.eadministracio.cat/board" target="_blank">
1168    <span class="text">Tauler d'anuncis</span>
1169</a>
1170<a href="https://www.seu-e.cat/ca/web/santfeliudecodines/govern-obert-i-transparencia" target="_blank">
1171    <span class="text">Govern obert i transparència</span>
1172</a>
1173            <a class="more " href="/serveis-i-tramits/seu-electronica/181-tramits-i-gestions">
1174                Més informació            </a>
1175        </div>
1176    </div>
1177</div>                </div>
1178                <div class="col-xs-12 col-sm-12 col-md-8 col-lg-8">
1179                        
1180<div class="dinamic">
1181        <div class="clear slider tplSliderBig">
1182        <div id="slider90000" class="bxslider slider90000" data-id="90000" data-interval="15000">
1183            <div class='item '>
1184            <div class="txt ">
1185            <div class="meta">
1186                            </div>
1187                                                            <a href="https://www.santfeliudecodines.cat/actualitat/noticies/calendari-fiscal-2026.html" target="_self" >
1188                    <span class="title">Calendari fiscal 2026</span>
1189                </a>
1190                                                                    <div class="description ddbbtext" onclick="redirect('https://www.santfeliudecodines.cat/actualitat/noticies/calendari-fiscal-2026.html','_self')">
1191                    <p>Aquest és el calendari fiscal de 2026 de l'Ajuntament de Sant Feliu de Codines.</p>
1192                </div>
1193                    </div>
1194            <div class="img  ">
1195                                <a href="https://www.santfeliudecodines.cat/actualitat/noticies/calendari-fiscal-2026.html" target="_self" >
1196                <span class="visually-hidden">Calendari fiscal 2026</span>
1197                <img src="/media/repository/agenda/CALENDARI_FISCAL_2026.jpg"
1198                     alt="Calendari fiscal 2026">
1199            </a>
1200            </div>
1201    </div>
1202<div class='item '>
1203            <div class="txt ">
1204            <div class="meta">
1205                            </div>
1206                                                            <a href="https://www.santfeliudecodines.cat/actualitat/agenda" target="_self" >
1207                    <span class="title">Agenda d'activitats OCTUBRE 2026 </span>
1208                </a>
1209                                                                    <div class="description ddbbtext" onclick="redirect('https://www.santfeliudecodines.cat/actualitat/agenda','_self')">
1210                    <p>L'agenda d'activitats mensual es distribueix a totes les llars. Consulteu totes les activitats aquí&nbsp;</p>
1211                </div>
1212                    </div>
1213            <div class="img  ">
1214                                <a href="https://www.santfeliudecodines.cat/actualitat/agenda" target="_self" >
1215                <span class="visually-hidden">Agenda d'activitats OCTUBRE 2026 </span>
1216                <img src="/media/repository/agenda/Octubre_2026_-_agenda__1_.png"
1217                     alt="Agenda d'activitats OCTUBRE 2026 ">
1218            </a>
1219            </div>
1220    </div>
1221<div class='item '>
1222            <div class="txt ">
1223            <div class="meta">
1224                            </div>
1225                                                            <a href="https://www.santfeliudecodines.cat/temes/medi-ambient/recollida-porta-a-porta" target="_self" >
1226                    <span class="title">Parlem de la recollida Porta a Porta!</span>
1227                </a>
1228                                                                    <div class="description ddbbtext" onclick="redirect('https://www.santfeliudecodines.cat/temes/medi-ambient/recollida-porta-a-porta','_self')">
1229                    <p>
1229La recollida selectiva porta a porta consisteix en lliurar els residus ben separats davant la porta de casa seguint un calendari preestablert per a cada fracció.<br />
1230<strong>Consulta el calendari de recollida i tota la informació aquí!</strong></p>
1231                </div>
1232                    </div>
1233            <div class="img  ">
1234                                <a href="https://www.santfeliudecodines.cat/temes/medi-ambient/recollida-porta-a-porta" target="_self" >
1235                <span class="visually-hidden">Parlem de la recollida Porta a Porta!</span>
1236                <img src="/media/repository/NOTiCIES_2023-2024/banner_PARLEM_DE_LA_RECOLLIDA_PORTA_A_PORTA.png"
1237                     alt="banner parlem del porta a porta">
1238            </a>
1239            </div>
1240    </div>
1241<div class='item '>
1242            <div class="txt ">
1243            <div class="meta">
1244                            </div>
1245                                                            <a href="https://www.santfeliudecodines.cat/actualitat/noticies/nou-canal-de-whatsapp-de-lajuntament.html" target="_self" >
1246                    <span class="title">Nou canal de WhatsApp de l'Ajuntament</span>
1247                </a>
1248                                                                    <div class="description ddbbtext" onclick="redirect('https://www.santfeliudecodines.cat/actualitat/noticies/nou-canal-de-whatsapp-de-lajuntament.html','_self')">
1249                    <p>L'Ajuntament estrena canal oficial de WhatsApp per mantenir-te informat/ada de manera ràpida i senzilla.</p>
1250
1251<p>És un canal unidireccional, <strong>uneix-t'hi</strong>!</p>
1252                </div>
1253                    </div>
1254            <div class="img  ">
1255                                <a href="https://www.santfeliudecodines.cat/actualitat/noticies/nou-canal-de-whatsapp-de-lajuntament.html" target="_self" >
1256                <span class="visually-hidden">Nou canal de WhatsApp de l'Ajuntament</span>
1257                <img src="/media/repository/noticies/nou_canal_whatsApp.jpg"
1258                     alt="Nou canal de WhatsApp de l'Ajuntament">
1259            </a>
1260            </div>
1261    </div>
1262<div class='item '>
1263            <div class="txt ">
1264            <div class="meta">
1265                            </div>
1266                                                            <a href="http://www.santfeliuunpobleviu.cat/" target="_blank" title ='Obre-ho en una finestra nova'>
1267                    <span class="title">APP de notificació d'incidències</span>
1268                </a>
1269                                                                    <div class="description ddbbtext" onclick="redirect('http://www.santfeliuunpobleviu.cat/','_blank')">
1270                    <p id="">Descarrega't l'APP i informa de manera ràpida i fàcil de qualsevol incidència detectada a l'espai públic i fes-ne el seguiment.</p>
1271
1272<p>Amb tu, millorem Sant Feliu de Codines!</p>
1273                </div>
1274                    </div>
1275            <div class="img  ">
1276                                <a href="http://www.santfeliuunpobleviu.cat/" target="_blank" title ='Obre-ho en una finestra nova'>
1277                <span class="visually-hidden">APP de notificació d'incidències</span>
1278                <img src="/media/repository/baners_destacats/destacat/APP_INCIDENCIES.png"
1279                     alt="APP notificació d'incidències">
1280            </a>
1281            </div>
1282    </div>
1283<div class='item '>
1284            <div class="txt ">
1285            <div class="meta">
1286                            </div>
1287                                                            <a href="https://docs.google.com/forms/d/e/1FAIpQLSd04I6zbrHTTRk-A7XhRHcnxAMSGBH0gKAIr84IxrGK81UYoQ/viewform" target="_blank" title ='Obre-ho en una finestra nova'>
1288                    <span class="title">Visita el campanar de l'Església</span>
1289                </a>
1290                                                                    <div class="description ddbbtext" onclick="redirect('https://docs.google.com/forms/d/e/1FAIpQLSd04I6zbrHTTRk-A7XhRHcnxAMSGBH0gKAIr84IxrGK81UYoQ/viewform','_blank')">
1291                    <p>Cada primer diumenge de mes d'11 a 13h. La resta de diumenges, visites concertades. Omple el <a href="https://docs.google.com/forms/d/e/1FAIpQLSd04I6zbrHTTRk-A7XhRHcnxAMSGBH0gKAIr84IxrGK81UYoQ/viewform" target="_blank">formulari d'inscripció</a></p>
1292                </div>
1293                    </div>
1294            <div class="img  ">
1295                                <a href="https://docs.google.com/forms/d/e/1FAIpQLSd04I6zbrHTTRk-A7XhRHcnxAMSGBH0gKAIr84IxrGK81UYoQ/viewform" target="_blank" title ='Obre-ho en una finestra nova'>
1296                <span class="visually-hidden">Visita el campanar de l'Església</span>
1297                <img src="/media/repository/agenda/campanar8.jpg"
1298                     alt="Visita el campanar de l'Església">
1299            </a>
1300            </div>
1301    </div>
1302<div class='item '>
1303            <div class="txt ">
1304            <div class="meta">
1305                            </div>
1306                                                            <a href="https://www.santfeliudecodines.cat//continguts//podeu-contactar-amb-cassa-aigues.html" target="_self" >
1307                    <span class="title">Podeu contactar amb CASSA Aigües</span>
1308                </a>
1309                                                                    <div class="description ddbbtext" onclick="redirect('https://www.santfeliudecodines.cat//continguts//podeu-contactar-amb-cassa-aigues.html','_self')">
1310                    <p>Tel. atenció a la ciutadania (feiners de 8 a 15 hores): 931 227 333<br />
1311Tel. avaries i fuites (24h tots els dies): 900 878 583<br />
1312<a href="https://grupcassa-avaries.viredweb.com/?city=SantFeliuDeCodines&lang=ca" target="_blank">Consulta incidències temps real i previsió interrupcions / Clica aquí</a></p>
1313                </div>
1314                    </div>
1315            <div class="img  ">
1316                                <a href="https://www.santfeliudecodines.cat//continguts//podeu-contactar-amb-cassa-aigues.html" target="_self" >
1317                <span class="visually-hidden">Podeu contactar amb CASSA Aigües</span>
1318                <img src="/media/repository/NOTiCIES_2023-2024/AVARIA_CASSA2.jpg"
1319                     alt="aigua">
1320            </a>
1321            </div>
1322    </div>
1323        </div>
1324    </div>
1325    </div>
1326<script>
1327    function callMenuBeforeJQueryLoaded() {
1328        var sliders = document.getElementsByClassName('bxslider');
1329        for (let item of sliders) {
1330            if (item.id !== '' && $('#' + item.id).is('[data-interval]')) {
1331                var interval = $('#' + item.id).attr('data-interval');
1332                var id = $('#' + item.id).attr('data-id');
1333
1334                if (interval > 0) {
1335                    $('#' + item.id).bxSlider({
1336                        infiniteLoop: true,
1337                        adaptiveHeight: true,
1338                        hideControlOnEnd: true,
1339                        autoControls: true,
1340                        startText: '<i class="fa fa-play" aria-hidden="true"></i><span class="visually-hidden">Iniciar presentació</span>',
1341                        stopText: '<i class="fa fa-pause" aria-hidden="true"></i><span class="visually-hidden">Aturar presentació</span>',
1342                        nextText: 'Següent',
1343                        prevText: 'Anterior',
1344                        auto: true,
1345                        autoStart: true,
1346                        pause: interval,
1347                        speed: 500,
1348                        preventDefaultSwipeX: true,
1349                        onSliderLoad: function () {
1350                            $('#slider' + id).css('visibility', 'visible');
1351                        }
1352                    });
1353                } else {
1354                    $('#' + item.id).bxSlider({
1355                        infiniteLoop: true,
1356                        adaptiveHeight: true,
1357                        hideControlOnEnd: true,
1358                        preventDefaultSwipeX: true,
1359                        autoControls: true,
1360                        startText: '<i class="fa fa-play" aria-hidden="true"></i><span class="visually-hidden">Iniciar presentació</span>',
1361                        stopText: '<i class="fa fa-pause" aria-hidden="true"></i><span class="visually-hidden">Aturar presentació</span>',
1362                        nextText: 'Següent',
1363                        prevText: 'Anterior',
1364                        onSliderLoad: function () {
1365                            $('#slider' + id).css('visibility', 'visible');
1366                        }
1367                    });
1368                }
1369            }
1370        }
1371    }
1372</script>
1372
1373            </div>
1374        </div>
1375    </div>
1376</div></div></div></div>  </div></div></div>  </div></div>        </header>
1377                <main id="main-content" tabindex="-1">
1378            <div class="content">
1379                                <div class="container-xl columns">
1380                                        <div class="js-widget o-widget o-widget--body o-widget-contenidor  clearfix boxBX  WidgetContainer " data-id="2" >  <div class="o-widget-wrapper clearfix default-BX   row " data-id="2"><div class="o-widget-container  row"><div class="js-widget o-widget o-widget--contenidor-legacy o-widget-contenidor  o-widget-contenidor--columnes  col-xs-12 col-sm-12 col-md-12 col-lg-12 clearfix boxBX  WidgetContainer " data-id="6" >  <div class="o-widget-wrapper clearfix default-BX  mt-3  row " data-id="6"><div class="o-widget-container  row"><div class="js-widget o-widget o-widget--contenidor-intern-legacy o-widget-contenidor  col-xs-12 col-sm-3 col-md-3 col-lg-3 clearfix boxBX  WidgetContainer " data-id="7" >  <div class="o-widget-wrapper clearfix default-BX   row " data-id="7"><div class="o-widget-container  row"><div class="view-23 js-widget o-widget o-widget--mosaicFlexible contentView-42 col-xs-12 col-sm-12 col-md-12 col-lg-12 clearfix boxBX  WidgetContentsList " data-id="11" >  <div class="o-widget-wrapper clearfix backgroundTitleBar-BX   row  o-widget-wrapper--title-top o-widget-wrapper--title-style-bar" data-id="11"><div class="o-widget-title-slot o-widget__title_Bar"><span>Avisos</span></div><div class="o-widget-container "><div class="js-widget__content o-widget__content clearfix "><div class="dinamic mosaic-flexible">
1381        <ul class="clear article-list row gx-5 justify-content-start liststylenone">
1382      <li class="article-item hover nohover col-12 col-md-12">
1383    <div class="row">
1384            <div class="item-noticia col-12 col-md-12  info">
1385        <span class="data-item bt"><span class="">07-set.-2026</span></span>                    <a href="https://www.santfeliudecodines.cat/actualitat/avisos/oficina-datencio-ciutadana.html" target="_self" class="title">Oficina d'Atenció Ciutadana</a>
1386                        <div class="entradeta ddbbtext"><p><strong>D</strong><b>e dilluns a divendres de 9&nbsp;a 14h.</b></p>
1387
1388<ul>
1389	<li>Pl. Josep Umbert Ventura, 2</li>
1390	<li>93 866 27 68</li>
1391	<li><a href="mailto:[email protected]">[email protected]</a></li>
1392</ul>
1393
1394<p>Tràmits 24h a la <a href="http://santfeliudecodines.eadministracio.cat/info.0" target="_blank">seu electrònica</a></p>
1395</div>            </div>
1396        <div class="order-first col-12 col-md-0 image " onclick="redirect('https://www.santfeliudecodines.cat/actualitat/avisos/oficina-datencio-ciutadana.html','_self')">
1397            <div class="default">
1398                                    <img src="/media/repository/NOTiCIES_2023-2024/oac.jpg" alt="oac" class="img">
1399                            </div>
1400        </div>    </div>
1401    <!-- Media icons section: shown AFTER text and image when enabled in view params -->
1402    <div class="row">
1403        <div class="col-12">
1404                    </div>
1405    </div>
1406</li>
1407<li class="article-item hover nohover col-12 col-md-12">
1408    <div class="row">
1409            <div class="item-noticia col-12 col-md-12  info">
1410        <span class="data-item bt"><span class="">03-set.-2026</span></span>                    <a href="https://www.santfeliudecodines.cat/temes/medi-ambient/recollida-porta-a-porta" target="_self" class="title">Horaris de la deixalleria</a>
1411                        <div class="entradeta ddbbtext"><ul>
1412	<li>Dilluns tancat</li>
1413	<li>Dimarts de 16.00 a 19.00h</li>
1414	<li>De dimecres a divendres de 9.30 a 13.30h i de 16.00 a 19.00h</li>
1415	<li>Dissabte de 9.00 a 15.00</li>
1416	<li>Diumenge de 9.00 a 14.30h<br />
1417	&nbsp;</li>
1418</ul>
1419
1420<ul>
1421	<li>Polígon Industrial Pla de la Costa&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</li>
1422	<li>C/ Indústria, 10 - Tel. 661 23 69 89</li>
1423</ul>
1424</div>            </div>
1425        <div class="order-first col-12 col-md-0 image " onclick="redirect('https://www.santfeliudecodines.cat/temes/medi-ambient/recollida-porta-a-porta','_self')">
1426            <div class="default">
1427                                    <img src="/media/repository/NOTiCIES_2023-2024/2024-03-08_deixalleria_1.jpg" alt="" class="img">
1428                            </div>
1429        </div>    </div>
1430    <!-- Media icons section: shown AFTER text and image when enabled in view params -->
1431    <div class="row">
1432        <div class="col-12">
1433                    </div>
1434    </div>
1435</li>
1436
1437  </ul>
1438  <a class="readMore" href="/actualitat/avisos" target="_self">Més avisos</a></div></div></div>  </div></div><div class="js-widget o-widget o-widget--banner contentView-2 o-widget--destacats-esq col-xs-12 col-sm-12 col-md-12 col-lg-12 clearfix boxBX  WidgetContentsList " data-id="10" >  <div class="o-widget-wrapper clearfix default-BX   row " data-id="10"><div class="o-widget-container "><div class="js-widget__content o-widget__content clearfix "><div class="dinamic">
1439        <ul class="clear articlelist default">
1440            <li class="tplBanner col-md-12 ">
1441                <a href="https://santfeliudecodines.eadministracio.cat/info.0" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1442                        <span class="visually-hidden">seu electronica</span>
1443            <img src="/media/repository/baners_destacats/banners/seu_electronica.png" alt="seu electronica">
1444        </a>
1445    </li>
1446    <li class="tplBanner col-md-12 ">
1447                <a href="https://www.seu-e.cat/ca/web/santfeliudecodines/govern-obert-i-transparencia" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1448                        <span class="visually-hidden">transparencia</span>
1449            <img src="/media/repository/baners_destacats/banners/transparencia.png" alt="transparencia">
1450        </a>
1451    </li>
1452    <li class="tplBanner col-md-12 ">
1453                <a href="https://contractaciopublica.cat/ca/perfils-contractant/detall/10349776?categoria=0" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1454                        <span class="visually-hidden">perfil del contractant</span>
1455            <img src="/media/repository/baners_destacats/banners/perfil_del_contractant.png" alt="perfil del contractant">
1456        </a>
1457    </li>
1458    <li class="tplBanner col-md-12 ">
1459                <a href="https://formularis.aoc.cat/to/B33tK7MB#codi_ens=821070005" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1460                        <span class="visually-hidden">Canal intern d'alertes</span>
1461            <img src="/media/repository/baners_destacats/Administracio_Elec./Banners_Ajuntament_Sant_Feliu.png" alt="Canal intern d'alertes">
1462        </a>
1463    </li>
1464    <li class="tplBanner col-md-12 ">
1465                <a href="https://canalempresa.gencat.cat/ca/fue" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1466                        <span class="visually-hidden">Finestreta única empresarial</span>
1467            <img src="/media/repository/baners_destacats/banners/fue.png" alt="Finestreta única empresarial">
1468        </a>
1469    </li>
1470    <li class="tplBanner col-md-12 ">
1471                <a href="https://santfeliudecodines.eadministracio.cat/citaprevia.7" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1472                        <span class="visually-hidden">Cita prèvia serveis municipals</span>
1473            <img src="/media/repository/baners_destacats/banners/cita_serveis.png" alt="Cita prèvia serveis municipals">
1474        </a>
1475    </li>
1476    <li class="tplBanner col-md-12 ">
1477                <a href="https://www.idcat.cat/" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1478                        <span class="visually-hidden">idcat</span>
1479            <img src="/media/repository/baners_destacats/banners/idcat_certificat.png" alt="idcat">
1480        </a>
1481    </li>
1482    <li class="tplBanner col-md-12 ">
1483                <a href="https://www.santfeliuunpobleviu.cat/lv/incidencias_online.asp" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1484                        <span class="visually-hidden">APP incidències</span>
1485            <img src="/media/repository/baners_destacats/banners/app_incidencies.png" alt="APP incidències">
1486        </a>
1487    </li>
1488    </ul>
1489    </div></div></div>  </div></div></div>  </div></div><div class="js-widget o-widget o-widget--contenidor-intern-legacy o-widget-contenidor  col-xs-12 col-sm-6 col-md-6 col-lg-6 clearfix boxBX  WidgetContainer " data-id="8" >  <div class="o-widget-wrapper clearfix default-BX   row " data-id="8"><div class="o-widget-container  row"><div class="view-23 js-widget o-widget o-widget--mosaicDataTitol contentView-12 col-xs-12 col-sm-12 col-md-12 col-lg-12 clearfix boxBX  WidgetContentsList " data-id="12" >  <div class="o-widget-wrapper clearfix backgroundTitleBar-BX   row  o-widget-wrapper--title-top o-widget-wrapper--title-style-bar" data-id="12"><div class="o-widget-title-slot o-widget__title_Bar"><span>Notícies</span></div><div class="o-widget-container "><div class="js-widget__content o-widget__content clearfix "><div class="dinamic mosaic-data-titol">
1490        <ul class="clear article-list">
1491      <li class="article-item hover nohover col-md-12">
1492    <div class="item-noticia">
1493                <div class="col-md-3 image ">
1494            <div class="default">
1495                                <a href="https://www.santfeliudecodines.cat/actualitat/noticies/acte-de-benvinguda-als-nous-veins-i-veines.html" target="_self" aria-hidden="true" tabindex="-1">                <img src="/media/repository/noticies/Acte_benvinguda_nouvinguts__Cartell__A3_vertical____4_.png"
1496                    alt="Acte de benvinguda als nous veïns i veïnes"
1497                    class="img">
1498                </a>                            </div>
1499        </div>
1500                <div class="item-noticia col-md-8 info">
1501        <span class="data-item bt"><span class="">1/10/2026</span></span>                    <div class="title"><a href="https://www.santfeliudecodines.cat/actualitat/noticies/acte-de-benvinguda-als-nous-veins-i-veines.html" target="_self">Acte de benvinguda als nous veïns i veïnes</a></div>
1502                        <div class="entradeta ddbbtext"><p>Si fa poc que has arribat a Sant Feliu de Codines i t’has empadronat al municipi, et convidem a participar en l’acte de benvinguda a les noves persones empadronades, el <strong>divendres 30 d'octubre a les 19.00h a la sala de Plens de l'Ajuntament.</strong><br />
1503<br />
1504Inscripcions <strong><a href="http://Inscripcions: https://www.santfeliudecodines.cat/temes/atencio-a-les-persones/inscripcio-a-lacte-de-benvinguda-de-les-noves-persones-empadronades" target="_blank">aquí</a></strong></p>
1505</div>        </div>
1506    </div>
1507</li>
1508<li class="article-item hover nohover col-md-12">
1509    <div class="item-noticia">
1510                <div class="col-md-3 image ">
1511            <div class="default">
1512                                <a href="https://www.santfeliudecodines.cat/actualitat/noticies/acte-inaugural-del-curs-escolar-20262027-dimecres-7-doctubre.html" target="_self" aria-hidden="true" tabindex="-1">                <img src="/media/repository/noticies/_Acte_inaugural_curs_escolar_26-27.png"
1513                    alt="Acte inaugural del curs escolar 2026/2027, dimecres 7 d'octubre"
1514                    class="img">
1515                </a>                            </div>
1516        </div>
1517                <div class="item-noticia col-md-8 info">
1518        <span class="data-item bt"><span class="">1/10/2026</span></span>                    <div class="title"><a href="https://www.santfeliudecodines.cat/actualitat/noticies/acte-inaugural-del-curs-escolar-20262027-dimecres-7-doctubre.html" target="_self">Acte inaugural del curs escolar 2026/2027, dimecres 7 d'octubre</a></div>
1519                        <div class="entradeta ddbbtext"><p>Com podem construir, des de la comunitat, una educació més inclusiva i amb oportunitats per a tothom?</p>
1520
1521<p>L'acte d'inauguració del curs escolar comptarà amb la "Èxit educatiu per a tothom", a càrrec de Miquel Àngel Essomba Gelabert, professor de Pedagogia Aplicada de la UAB i investigador en diversitat, inclusió i educació comunitària.<br />
1522<br />
1523📅 Dimecres 7 d’octubre<br />
1524🕠 De 17.30 a 19.00h<br />
1525📍 Sala d’actes del Centre Cívic La Fonteta</p>
1526</div>        </div>
1527    </div>
1528</li>
1529<li class="article-item hover nohover col-md-12">
1530    <div class="item-noticia">
1531                <div class="col-md-3 image ">
1532            <div class="default">
1533                                <a href="https://www.santfeliudecodines.cat/actualitat/noticies/la-policia-local-dete-una-persona-per-distribucio-de-drogues.html" target="_self" aria-hidden="true" tabindex="-1">                <img src="/media/repository/noticies/drogues.png"
1534                    alt=""
1535                    class="img">
1536                </a>                            </div>
1537        </div>
1538                <div class="item-noticia col-md-8 info">
1539        <span class="data-item bt"><span class="">28/9/2026</span></span>                    <div class="title"><a href="https://www.santfeliudecodines.cat/actualitat/noticies/la-policia-local-dete-una-persona-per-distribucio-de-drogues.html" target="_self">La Policia Local deté una persona per distribució de drogues</a></div>
1540                        <div class="entradeta ddbbtext"><p>Durant els dies de la Festa Major, la Policia Local va detenir una persona per un presumpte delicte contra la salut pública, relacionat amb la venda i distribució de drogues a Sant Feliu.</p>
1541</div>        </div>
1542    </div>
1543</li>
1544<li class="article-item hover nohover col-md-12">
1545    <div class="item-noticia">
1546                <div class="col-md-3 image ">
1547            <div class="default">
1548                                <a href="https://www.santfeliudecodines.cat/actualitat/noticies/millorant-els-entorns-escolars-i-la-mobilitat-a-peu.html" target="_self" aria-hidden="true" tabindex="-1">                <img src="/media/repository/noticies/NOVA_SENYALITZACIO_2026-09_4.jpg"
1549                    alt="Millorant els entorns escolars i la mobilitat a peu"
1550                    class="img">
1551                </a>                            </div>
1552        </div>
1553                <div class="item-noticia col-md-8 info">
1554        <span class="data-item bt"><span class="">25/9/2026</span></span>                    <div class="title"><a href="https://www.santfeliudecodines.cat/actualitat/noticies/millorant-els-entorns-escolars-i-la-mobilitat-a-peu.html" target="_self">Millorant els entorns escolars i la mobilitat a peu</a></div>
1555                        <div class="entradeta ddbbtext"><p>En el marc de la planificació de millora dels entorns escolars, aquesta setmana s’estan duent a terme diferents actuacions de senyalització viària, tant vertical com horitzontal, per millorar la seguretat i la visibilitat dels itineraris a peu.</p>
1556</div>        </div>
1557    </div>
1558</li>
1559<li class="article-item hover nohover col-md-12">
1560    <div class="item-noticia">
1561                <div class="col-md-3 image ">
1562            <div class="default">
1563                                <a href="https://www.santfeliudecodines.cat/actualitat/noticies/sobre-la-convocatoria-de-subvencions-per-a-beques-de-transport-per-a-estudis-postobligatoris-pel-curs-2026-2027.html" target="_self" aria-hidden="true" tabindex="-1">                <img src="/media/repository/noticies/INFOGRAFIA_BEQUES_TRANSPORT_2627__A5___1_.png"
1564                    alt="S'obre la convocatòria de subvencions per a beques de transport per a estudis postobligatoris pel curs 2026-2027"
1565                    class="img">
1566                </a>                            </div>
1567        </div>
1568                <div class="item-noticia col-md-8 info">
1569        <span class="data-item bt"><span class="">24/9/2026</span></span>                    <div class="title"><a href="https://www.santfeliudecodines.cat/actualitat/noticies/sobre-la-convocatoria-de-subvencions-per-a-beques-de-transport-per-a-estudis-postobligatoris-pel-curs-2026-2027.html" target="_self">S'obre la convocatòria de subvencions per a beques de transport per a estudis postobligatoris pel curs 2026-2027</a></div>
1570                        <div class="entradeta ddbbtext"><p>Oberta la&nbsp;convocatòria de beques de transport per a estudiants que cursen estudis postobligatoris fora del municipi pel curs 26/27.&nbsp;Aquestes ajudes estan dirigides a <strong>facilitar les despeses de desplaçament en transport públic col·lectiu a l'alumnat empadronat al municipi </strong>i formen part del programa “Mirada Jove”, inclòs en el Pla d'Actuació del Mandat.</p>
1571</div>        </div>
1572    </div>
1573</li>
1574<li class="article-item hover nohover col-md-12">
1575    <div class="item-noticia">
1576                <div class="col-md-3 image ">
1577            <div class="default">
1578                                <a href="https://www.santfeliudecodines.cat/actualitat/noticies/xxi-fira-de-la-carbassa-i-productes-de-la-terra-el-26-i-27-de-setembre.html" target="_self" aria-hidden="true" tabindex="-1">                <img src="/media/repository/noticies/poster-fira_26-final.png"
1579                    alt="XXI Fira de la Carbassa i productes de la terra, el 26 i 27 de setembre"
1580                    class="img">
1581                </a>                            </div>
1582        </div>
1583                <div class="item-noticia col-md-8 info">
1584        <span class="data-item bt"><span class="">21/9/2026</span></span>                    <div class="title"><a href="https://www.santfeliudecodines.cat/actualitat/noticies/xxi-fira-de-la-carbassa-i-productes-de-la-terra-el-26-i-27-de-setembre.html" target="_self">XXI Fira de la Carbassa i productes de la terra, el 26 i 27 de setembre</a></div>
1585                        <div class="entradeta ddbbtext"><p>El cap de setmana del 26 i 27 de setembre tindrà lloc la XXI Fira de la Carbassa i dels productes de la terra a Sant Feliu de Codines, davant del Centre Cívic La Fonteta.<br />
1586&nbsp;</p>
1587
1588<p>Consulteu el <a href="https://santfeliudecodines.webmunicipal.diba.cat/media/repository/noticies/programa_firacarbassa_2026.pdf?_t=1789555622" target="_blank">programa </a>d'activitats.</p>
1589</div>        </div>
1590    </div>
1591</li>
1592<li class="article-item hover nohover col-md-12">
1593    <div class="item-noticia">
1594                <div class="col-md-3 image ">
1595            <div class="default">
1596                                <a href="https://www.santfeliudecodines.cat/actualitat/noticies/extraescolar-dart-per-a-infants-de-8-a-12-anys-obertes-les-inscripcions.html" target="_self" aria-hidden="true" tabindex="-1">                <img src="/media/repository/noticies/extraescolar_art_2026.jpeg"
1597                    alt="Extraescolar d'art per a infants de 8 a 12 anys. Obertes les inscripcions!"
1598                    class="img">
1599                </a>                            </div>
1600        </div>
1601                <div class="item-noticia col-md-8 info">
1602        <span class="data-item bt"><span class="">16/9/2026</span></span>                    <div class="title"><a href="https://www.santfeliudecodines.cat/actualitat/noticies/extraescolar-dart-per-a-infants-de-8-a-12-anys-obertes-les-inscripcions.html" target="_self">Extraescolar d'art per a infants de 8 a 12 anys. Obertes les inscripcions!</a></div>
1603                        <div class="entradeta ddbbtext"><p>L'Ajuntament organitza, a través del Pla Educatiu d'Entorn, una extraescolar d'art adreçada a infants de 8 a 12 anys, pensada per <strong>fomentar la creativitat, l'expressió artística</strong> i el gaudi de l'art a través de diferents tècniques plàstiques.</p>
1604</div>        </div>
1605    </div>
1606</li>
1607<li class="article-item hover nohover col-md-12">
1608    <div class="item-noticia">
1609                <div class="col-md-3 image ">
1610            <div class="default">
1611                                <a href="https://www.santfeliudecodines.cat/actualitat/noticies/extraescolar-de-fotografia-per-a-joves-de-12-a-17-anys-inscriu-te.html" target="_self" aria-hidden="true" tabindex="-1">                <img src="/media/repository/noticies/extraescolar_Fotografia_2026.jpeg"
1612                    alt="Extraescolar de fotografia per a joves de 12 a 17 anys. Inscriu-te!"
1613                    class="img">
1614                </a>                            </div>
1615        </div>
1616                <div class="item-noticia col-md-8 info">
1617        <span class="data-item bt"><span class="">16/9/2026</span></span>                    <div class="title"><a href="https://www.santfeliudecodines.cat/actualitat/noticies/extraescolar-de-fotografia-per-a-joves-de-12-a-17-anys-inscriu-te.html" target="_self">Extraescolar de fotografia per a joves de 12 a 17 anys. Inscriu-te!</a></div>
1618                        <div class="entradeta ddbbtext"><p>Obertes les inscripcions a l'extraescolar de fotografia que organitza l'Ajuntament a través del Pla Educatiu d'Entorn, adreçada als&nbsp;joves de 12 a 17 anys.&nbsp;<br />
1619Les sessions tindran lloc els dijous a la tarda.</p>
1620</div>        </div>
1621    </div>
1622</li>
1623  </ul>
1624  <a class="readMore" href="/actualitat/noticies/" target="_self">Més notícies</a></div></div></div>  </div></div></div>  </div></div><div class="js-widget o-widget o-widget--contenidor-intern-legacy o-widget-contenidor  col-xs-12 col-sm-3 col-md-3 col-lg-3 clearfix boxBX  WidgetContainer " data-id="9" >  <div class="o-widget-wrapper clearfix default-BX   row " data-id="9"><div class="o-widget-container  row"><div class="view-23 js-widget o-widget o-widget--calendari contentView-3 col-xs-12 col-sm-12 col-md-12 col-lg-12 clearfix boxBX  WidgetContentsList " data-id="18" >  <div class="o-widget-wrapper clearfix backgroundTitleBar-BX   row  o-widget-wrapper--title-top o-widget-wrapper--title-style-bar" data-id="18"><div class="o-widget-title-slot o-widget__title_Bar"><span>Agenda</span></div><div class="o-widget-container "><div class="js-widget__content o-widget__content clearfix "><div id="dv_calendar_18" data-category="0" data-type='12'></div>
1625<script>
1626    if (typeof calendars === 'undefined') {
1627        calendars = [];
1628    }
1629
1630    var data = {
1631        'id': 'dv_calendar_18',
1632        'data': {"20261002":{"klass":"dia_marcat","lin":"\/actualitat\/agenda?date=2026-10-02","day":"2"},"20261003":{"klass":"dia_marcat","lin":"\/actualitat\/agenda?date=2026-10-03","day":"3"},"20261004":{"klass":"dia_marcat","lin":"\/actualitat\/agenda?date=2026-10-04","day":"4"},"20261007":{"klass":"dia_marcat","lin":"\/actualitat\/agenda?date=2026-10-07","day":"7"},"20261024":{"klass":"dia_marcat","lin":"\/actualitat\/agenda?date=2026-10-24","day":"24"},"20261030":{"klass":"dia_marcat","lin":"\/actualitat\/agenda?date=2026-10-30","day":"30"}},
1633        'type': 12,
1634    };
1635                        calendars.push(data);
1636            window.addEventListener("load", function() {
1637                setDataCalendar(data.id, data.data, data.type);
1638            });
1639            </script>
1639
1640</div></div>  </div></div><div class="js-widget o-widget o-widget--combinacioTitolData contentView-5 col-xs-12 col-sm-12 col-md-12 col-lg-12 clearfix boxBX  WidgetContentsList " data-id="13" >  <div class="o-widget-wrapper clearfix default-BX   row " data-id="13"><div class="o-widget-container "><div class="js-widget__content o-widget__content clearfix "><div class="dinamic">
1641        <ul class="clear articlelist combinacioTitolData">
1642        <li class="article-item col-md-12">    <li class="tplCombinacioTitolData ">
1643                <a class="title" href="https://www.santfeliudecodines.cat/actualitat/agenda/club-de-lectura-per-adults-amb-lobra-francesca-de-barcelona.html" target="_self" >
1644            Club de lectura per adults amb l'obra "Francesca de Barcelona"        </a>            
1645                <span class="date">
1646            02-10-2026        </span>
1647          </li>
1648</li><li class="article-item col-md-12">    <li class="tplCombinacioTitolData ">
1649                <a class="title" href="https://www.santfeliudecodines.cat/actualitat/agenda/15048-birrada-artesanal-codinenca.html" target="_self" >
1650            Birrada artesanal codinenca        </a>            
1651                <span class="date">
1652            03-10-2026        </span>
1653          </li>
1654</li><li class="article-item col-md-12">    <li class="tplCombinacioTitolData ">
1655                <a class="title" href="https://www.santfeliudecodines.cat/actualitat/agenda/15041-el-museu-municipal-can-xifreda-obre-d11-a-14h.html" target="_self" >
1656            El Museu Municipal Can Xifreda obre d'11 a 14h        </a>            
1657                <span class="date">
1658            04-10-2026        </span>
1659          </li>
1660</li><li class="article-item col-md-12">    <li class="tplCombinacioTitolData ">
1661                <a class="title" href="https://www.santfeliudecodines.cat/actualitat/agenda/15042-visita-el-campanar-de-lesglesia-i-el-museu-del-rellotge.html" target="_self" >
1662            Visita el campanar de l'Església i el Museu del Rellotge        </a>            
1663                <span class="date">
1664            04-10-2026        </span>
1665          </li>
1666</li>    </ul>
1667    <a class="readMore" href="/actualitat/agenda/" target="_self">Més activitats</a></div></div></div>  </div></div><div class="view-23 js-widget o-widget o-widget--combinacioDataTitol contentView-4 o-widget--agenda-institucional col-xs-12 col-sm-12 col-md-12 col-lg-12 clearfix boxBX  WidgetContentsList " data-id="146" >  <div class="o-widget-wrapper clearfix backgroundTitleBar-BX   row  o-widget-wrapper--title-top o-widget-wrapper--title-style-bar" data-id="146"><div class="o-widget-title-slot o-widget__title_Bar"><span>Agenda Institucional</span></div><div class="o-widget-container "><div class="js-widget__content o-widget__content clearfix "><div class="dinamic">
1668        
1669    <ul class="clear articlelist combinacioDataTitol">
1670        <li class="article-item col-md-12"><li class="tplCombinacioDataTitol ">
1671            <span class="date">
1672            22-10-2026        </span>
1673                <a class="title" href="https://www.santfeliudecodines.cat/ajuntament/govern/agenda-institucional/14988-ple-municipal-sessio-ordinaria.html" target="_self" >
1674         Ple municipal. Sessió ordinària    </a>
1675    </li>
1676</li><li class="article-item col-md-12"><li class="tplCombinacioDataTitol ">
1677            <span class="date">
1678            26-11-2026        </span>
1679                <a class="title" href="https://www.santfeliudecodines.cat/ajuntament/govern/agenda-institucional/14989-ple-municipal-sessio-ordinaria.html" target="_self" >
1680         Ple municipal. Sessió ordinària    </a>
1681    </li>
1682</li>    </ul>
1683    <a class="readMore" href="/ajuntament/govern/agenda-institucional/" target="_self">Més activitats</a></div></div></div>  </div></div><div class="js-widget o-widget o-widget--banner contentView-2 o-widget--destacats-dret col-xs-12 col-sm-12 col-md-12 col-lg-12 clearfix boxBX  WidgetContentsList " data-id="148" >  <div class="o-widget-wrapper clearfix default-BX   row " data-id="148"><div class="o-widget-container "><div class="js-widget__content o-widget__content clearfix "><div class="dinamic">
1684        <ul class="clear articlelist default">
1685            <li class="tplBanner col-md-12 ">
1686                <a href="https://participa311-santfeliudecodines.diba.cat/?locale=ca" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1687                        <span class="visually-hidden">participa</span>
1688            <img src="/media/repository/baners_destacats/banners/participacio.jpg" alt="participa">
1689        </a>
1690    </li>
1691    <li class="tplBanner col-md-12 ">
1692                <a href="https://plans-santfeliudecodines.diba.cat/planes/pam-sant-feliu-de-codines/2024/" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1693                        <span class="visually-hidden">PAM</span>
1694            <img src="/media/repository/baners_destacats/banners/pam.png" alt="PAM">
1695        </a>
1696    </li>
1697    <li class="tplBanner col-md-12 ">
1698                <a href="https://poligons.vallesoriental.cat/santfeliudecodines" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1699                        <span class="visually-hidden"></span>
1700            <img src="/media/repository/baners_destacats/banners/Banner_PAE.jpg" alt="">
1701        </a>
1702    </li>
1703    <li class="tplBanner col-md-12 ">
1704                <a href="https://www.entrapolis.com/organitzador/ajuntament-de-sant-feliu-de-codines" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1705                        <span class="visually-hidden">Compra la teva entrada online</span>
1706            <img src="/media/repository/baners_destacats/banners/entrades.png" alt="Compra la teva entrada online">
1707        </a>
1708    </li>
1709    <li class="tplBanner col-md-12 ">
1710                <a href="https://www.youtube.com/c/CanalCodinenc" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1711                        <span class="visually-hidden">canal codinenc</span>
1712            <img src="/media/repository/baners_destacats/banners/canal_codinenc.png" alt="canal codinenc">
1713        </a>
1714    </li>
1715    <li class="tplBanner col-md-12 ">
1716                <a href="https://www.onacodinenca.cat" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1717                        <span class="visually-hidden">Ràdio municipal Ona Codineca</span>
1718            <img src="/media/repository/baners_destacats/banners/radio.png" alt="Ràdio municipal Ona Codineca">
1719        </a>
1720    </li>
1721    <li class="tplBanner col-md-12 ">
1722                <a href="http://santfeliudecodines.webmunicipal.diba.cat/actualitat/webcam-a-la-placa/" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1723                        <span class="visually-hidden">Webcam</span>
1724            <img src="/media/repository/baners_destacats/banners/webcam.png" alt="Webcam">
1725        </a>
1726    </li>
1727    <li class="tplBanner col-md-12 ">
1728                <a href="https://www.xifreda.org" target="_blank"  title="Obre-ho en pestanya nova" class="clearfix" >
1729                        <span class="visually-hidden">Museu municipal </span>
1730            <img src="/media/repository/baners_destacats/banners/museu_can_xifreda.png" alt="Museu municipal ">
1731        </a>
1732    </li>
1733    </ul>
1734    </div></div></div>  </div></div></div>  </div></div></div>  </div></div></div>  </div></div>                </div>
1735            </div>
1736        </main>
1737        <footer id="footer-content" tabindex="-1">
1738            <div class="js-widget o-widget o-widget--footer o-widget-contenidor  clearfix boxBX  WidgetContainer " data-id="3" >  <div class="o-widget-wrapper clearfix default-BX  " data-id="3"><div class="o-widget-container  row"><div class="js-widget o-widget col-xs-12 col-sm-12 col-md-12 col-lg-12 clearfix boxBX  WidgetLegacyFooter " data-id="47" >  <div class="o-widget-wrapper clearfix default-BX  " data-id="47"><div class="o-widget-container "><div class="js-widget__content o-widget__content clearfix "><div class="footer">
1739    <div class="shortcuts">
1740    <div class="container-xl">            
1741        <div class="featuredItem responsiveHeight">
1742    <h2 class="title">RSS</h2>
1743    <p class="subtitle">L'actualitat a un clic</p>
1744    <ul id="cm_rss">
1745        <li style="background-image: url('/front/view/images/ico_16_rss.png');">
1746    <a href="/rss/12">
1747           Agenda    </a>
1748</li>
1749<li style="background-image: url('/front/view/images/ico_16_rss.png');">
1750    <a href="/rss/13">
1751           Avisos    </a>
1752</li>
1753<li style="background-image: url('/front/view/images/ico_16_rss.png');">
1754    <a href="/rss/11">
1755           Notícies    </a>
1756</li>
1757<li style="background-image: url('/front/view/images/ico_16_rss.png');">
1758    <a href="/rss/14">
1759           Publicacions    </a>
1760</li>
1761    </ul>
1762</div>
1763<div class="featuredItem responsiveHeight">
1764    <h2 class="title">Adreces i telèfons</h2>
1765    
1766    <img width="96" height="96" src="/front/view/images/icons/plugin_home.png" alt="">
1767
1768    <p class="elem_button">
1769        <a href="/sant-feliu-un-poble-viu/adreces-i-telefons-dinteres" aria-label="Adreces i telèfons">
1770            Accedeix        </a>
1771    </p>
1772</div>
1773<div class="featuredItem">
1774    <h2 class="title">Meteo</h2>
1775    <div id="cm_meteocat">
1776        <ul class="bxslider">
1777            <li>
1778    Divendres, 2 d’octubre    <img width="80" height="80"
1779        alt="sol i núvols alts"
1780        src="/front/view/images/meteocat/nubsol.png"
1781    >
1782    <p>
1783        T.Màx: 23&deg;
1784        <br>
1785        T.Min: 13&deg;
1786    </p>
1787            <p>
1788            Tarda
1789            <img alt="xàfec amb tempesta" width="24" height="24"
1790                src="/front/view/images/meteocat/tempesta.png"
1791            >
1792        </p>
1793    </li>
1794<li>
1795    Dissabte, 3 d’octubre    <img width="80" height="80"
1796        alt="entre poc i mig ennuvolat"
1797        src="/front/view/images/meteocat/nuvolina.png"
1798    >
1799    <p>
1800        T.Màx: 21&deg;
1801        <br>
1802        T.Min: 13&deg;
1803    </p>
1804            <p>
1805            Tarda
1806            <img alt="xàfec" width="24" height="24"
1807                src="/front/view/images/meteocat/pluja.png"
1808            >
1809        </p>
1810    </li>
1811        </ul>
1812        <div class="outside">
1813            <p><span id="slider-prev"></span><span id="slider-next"></span></p>
1814        </div>
1815
1816    </div>
1817</div>
1818<div class="featuredItem responsiveHeight">
1819    <h2 class="title">Butlletí digital</h2>
1820    <img width="96" height="96" src="/front/view/images/icons/plugin_newsletter.png" alt="">
1821    <p class="elem_button">
1822        <a href="/actualitat/butlleti-electronic" aria-label="Butlletí digital">
1823            Subscriu-te        </a>
1824    </p>
1825</div>
1826<div id="cm_planol" class="featuredItem responsiveHeight">
1827    <h2 class="title">Plànol / Carrers</h2>
1828
1829    <img width="96" height="96" src="/front/view/images/icons/plugin_map.png" alt="">
1830
1831    <p class="elem_button">
1832        <a href="/sant-feliu-un-poble-viu/informacio-del-municipi/guia-de-carrers--planol" aria-label="Plànol">
1833            Accedeix        </a>
1834    </p>
1835</div>
1836    </div>
1837</div>
1838    <div class="hightlights">
1839        <div class="container-xl">
1840                    </div>
1841    </div>
1842    <nav class="menu" aria-label="Peu de menú">
1843        <ul class="container-xl sitemap">
1844            <li class="page-1 Inferior">  <a class="page-1" href="/ajuntament" target="_self" >Ajuntament  </a><ul id="footer-menu-1"><li class="subMenuPage-12">  <a class="subMenuPage-12" href="/ajuntament/alcaldia" target="_self" >Alcaldia  </a></li><li class="subMenuPage-8">  <a class="subMenuPage-8" href="/ajuntament/govern" target="_self" >Govern  </a></li><li class="subMenuPage-15">  <a class="subMenuPage-15" href="/ajuntament/grups-municipals" target="_self" >Grups municipals  </a></li><li class="subMenuPage-24">  <a class="subMenuPage-24" href="/ajuntament/pressupostos-i-plantilles" target="_self" >Pressupostos i plantilles  </a></li><li class="subMenuPage-143">  <a class="subMenuPage-143" href="/ajuntament/informacio-oficial" target="_self" >Informació oficial  </a></li><li class="subMenuPage-16">  <a class="subMenuPage-16" href="/ajuntament/plans-campanyes-i-programes" target="_self" >Plans, campanyes i programes  </a></li><li class="subMenuPage-17">  <a class="subMenuPage-17" href="/ajuntament/tecnics-municipals" target="_self" >Tècnics municipals  </a></li><li class="subMenuPage-26">  <a class="subMenuPage-26" href="/ajuntament/perfil-de-contractant" target="_self" >Perfil de contractant  </a></li><li class="subMenuPage-162">  <a class="subMenuPage-162" href="/ajuntament/imatge-corporativa" target="_self" >Imatge corporativa  </a></li><li class="subMenuPage-161">  <a class="subMenuPage-161" href="https://santfeliudecodines.eadministracio.cat/info.0" target="_blank" rel="noopener noreferrer" >Seu electrònica<i class="fa fa-external-link"></i>  </a></li><li class="subMenuPage-123">  <a class="subMenuPage-123" href="https://seu-e.cat/ca/web/santfeliudecodines/govern-obert-i-transparencia" target="_blank" rel="noopener noreferrer" >Transparència<i class="fa fa-external-link"></i>  </a></li><li class="subMenuPage-132">  <a class="subMenuPage-132" href="/ajuntament/altres-administracions" target="_self" >Altres administracions  </a></li></ul></li><li class="page-10 Inferior">  <a class="page-10" href="/serveis-i-tramits" target="_self" >Serveis i tràmits  </a><ul id="footer-menu-10"><li class="subMenuPage-31">  <a class="subMenuPage-31" href="https://santfeliudecodines.eadministracio.cat/info.0" target="_blank" rel="noopener noreferrer" >Seu electrònica<i class="fa fa-external-link"></i>
1844  </a></li><li class="subMenuPage-82">  <a class="subMenuPage-82" href="/serveis-i-tramits/oficines-municipals" target="_self" >Oficines municipals  </a></li><li class="subMenuPage-144">  <a class="subMenuPage-144" href="https://santfeliudecodines.eadministracio.cat/citaprevia.3" target="_blank" rel="noopener noreferrer" >Cita prèvia serveis municipals<i class="fa fa-external-link"></i>  </a></li><li class="subMenuPage-218">  <a class="subMenuPage-218" href="https://formularis.aoc.cat/to/B33tK7MB#codi_ens=821070005" target="_blank" rel="noopener noreferrer" >Canal intern d'alertes<i class="fa fa-external-link"></i>  </a></li><li class="subMenuPage-133">  <a class="subMenuPage-133" href="/serveis-i-tramits/finestreta-unica-empresarial-fue" target="_self" >Finestreta Única Empresarial (FUE)  </a></li><li class="subMenuPage-140">  <a class="subMenuPage-140" href="/serveis-i-tramits/cataleg-de-serveis" target="_self" >Catàleg de Serveis  </a></li><li class="subMenuPage-32">  <a class="subMenuPage-32" href="/serveis-i-tramits/impostos-i-rebuts" target="_self" >Impostos i rebuts  </a></li><li class="subMenuPage-88">  <a class="subMenuPage-88" href="/serveis-i-tramits/factura-electronica" target="_self" >Factura electrònica  </a></li><li class="subMenuPage-199">  <a class="subMenuPage-199" href="/serveis-i-tramits/arxiu-municipal" target="_self" >Arxiu Municipal  </a></li></ul></li><li class="page-2 Inferior">  <a class="page-2" href="/sant-feliu-un-poble-viu" target="_self" >Sant Feliu un poble viu  </a><ul id="footer-menu-2"><li class="subMenuPage-7">  <a class="subMenuPage-7" href="/sant-feliu-un-poble-viu/informacio-del-municipi" target="_self" >Informació del municipi  </a></li><li class="subMenuPage-34">  <a class="subMenuPage-34" href="/sant-feliu-un-poble-viu/com-arribar-hi" target="_self" >Com arribar-hi  </a></li><li class="subMenuPage-37">  <a class="subMenuPage-37" href="/sant-feliu-un-poble-viu/equipaments-del-municipi" target="_self" >Equipaments del municipi  </a></li><li class="subMenuPage-171">  <a class="subMenuPage-171" href="/sant-feliu-un-poble-viu/centres-educatius" target="_self" >Centres Educatius  </a></li><li class="subMenuPage-40">  <a class="subMenuPage-40" href="/sant-feliu-un-poble-viu/entitats-i-associacions" target="_self" >Entitats i associacions  </a></li><li class="subMenuPage-39">  <a class="subMenuPage-39" href="/sant-feliu-un-poble-viu/empreses-i-comercos" target="_self" >Empreses i comerços  </a></li><li class="subMenuPage-5">  <a class="subMenuPage-5" href="/sant-feliu-un-poble-viu/adreces-i-telefons-dinteres" target="_self" >Adreces i telèfons d'interès  </a></li><li class="subMenuPage-43">  <a class="subMenuPage-43" href="/sant-feliu-un-poble-viu/emergencies" target="_self" >Emergències  </a></li><li class="subMenuPage-42">  <a class="subMenuPage-42" href="/sant-feliu-un-poble-viu/subministraments" target="_self" >Subministraments  </a></li></ul></li><li class="page-4 Inferior">  <a class="page-4" href="/actualitat" target="_self" >Actualitat  </a><ul id="footer-menu-4"><li class="subMenuPage-128">  <a class="subMenuPage-128" href="/actualitat/avisos" target="_self" >Avisos  </a></li><li class="subMenuPage-53">  <a class="subMenuPage-53" href="/actualitat/noticies" target="_self" >Notícies  </a></li><li class="subMenuPage-54">  <a class="subMenuPage-54" href="/actualitat/agenda" target="_self" >Agenda  </a></li><li class="subMenuPage-56">  <a class="subMenuPage-56" href="/actualitat/publicacions-municipals" target="_self" >Publicacions municipals  </a></li><li class="subMenuPage-55">  <a class="subMenuPage-55" href="/actualitat/butlleti-electronic" target="_self" >Butlletí electrònic  </a></li><li class="subMenuPage-58">  <a class="subMenuPage-58" href="/actualitat/hemeroteca" target="_self" >Hemeroteca  </a></li><li class="subMenuPage-148">  <a class="subMenuPage-148" href="/actualitat/prediccio-meteorologica-" target="_self" >Predicció meteorològica   </a></li><li class="subMenuPage-149">  <a class="subMenuPage-149" href="/actualitat/ona-codinenca" target="_self" >Ona Codinenca  </a></li><li class="subMenuPage-150">  <a class="subMenuPage-150" href="https://www.youtube.com/user/ajuntamentSFdC/videos?flow=grid&view=1" target="_blank" rel="noopener noreferrer" >
1844Canal codinenc<i class="fa fa-external-link"></i>  </a></li><li class="subMenuPage-182">  <a class="subMenuPage-182" href="https://www.youtube.com/watch?v=oHsTlb_XPNc" target="_blank" rel="noopener noreferrer" >Webcam a la Plaça<i class="fa fa-external-link"></i>  </a></li><li class="subMenuPage-151">  <a class="subMenuPage-151" href="https://www.youtube.com/watch?v=IgTjHkzo4EY" target="_blank" rel="noopener noreferrer" >Xarxes socials<i class="fa fa-external-link"></i>  </a></li></ul></li><li class="page-93 Inferior">  <a class="page-93" href="/temes" target="_self" >Temes  </a><ul id="footer-menu-93"><li class="subMenuPage-136">  <a class="subMenuPage-136" href="/temes/cultura" target="_self" >Cultura  </a></li><li class="subMenuPage-139">  <a class="subMenuPage-139" href="/temes/educacio" target="_self" >Educació  </a></li><li class="subMenuPage-153">  <a class="subMenuPage-153" href="/temes/joves" target="_self" >Joves  </a></li><li class="subMenuPage-236">  <a class="subMenuPage-236" href="/temes/igualtat" target="_self" >Igualtat  </a></li><li class="subMenuPage-134">  <a class="subMenuPage-134" href="/temes/esport" target="_self" >Esport  </a></li><li class="subMenuPage-135">  <a class="subMenuPage-135" href="/temes/medi-ambient" target="_self" >Medi ambient  </a></li><li class="subMenuPage-152">  <a class="subMenuPage-152" href="/temes/atencio-a-les-persones" target="_self" >Atenció a les persones  </a></li><li class="subMenuPage-189">  <a class="subMenuPage-189" href="/temes/aigua" target="_self" >Aigua  </a></li><li class="subMenuPage-154">  <a class="subMenuPage-154" href="/temes/gent-gran" target="_self" >Gent gran  </a></li><li class="subMenuPage-138">  <a class="subMenuPage-138" href="/temes/urbanisme-i-mobilitat" target="_self" >Urbanisme i Mobilitat  </a></li><li class="subMenuPage-137">  <a class="subMenuPage-137" href="/temes/salut" target="_self" >Salut  </a></li><li class="subMenuPage-156">  <a class="subMenuPage-156" href="/temes/participacio-ciutadana" target="_self" >Participació ciutadana  </a></li><li class="subMenuPage-157">  <a class="subMenuPage-157" href="/temes/comerc-consum-ocupacio-i-promocio-economica" target="_self" >Comerç, consum, ocupació i promoció econòmica  </a></li></ul></li>        </ul>
1845    </nav>
1846    <div class="links">
1847        <div class="container-xl">
1848            <div class="row">
1849                <div class="xxss col-md-6 col-sm-6 col-lg-6 middle">                
1850                        <span class="titol">Xarxes socials:</span>
1851  
1852    <a target="_blank" aria-label="Twitter" href="https://twitter.com/ajsfcodines" title="Obre en finestra nova: Twitter">
1853        <span style="display: none">Twitter</span>
1854        <img src="/front/view/images/icons/social/twitter.png" alt="Twitter" width="32" height="32">
1855    </a>
1856  
1857    <a target="_blank" aria-label="Facebook" href="https://www.facebook.com/Ajuntament-de-Sant-Feliu-de-Codines-475170035826906/" title="Obre en finestra nova: Facebook">
1858        <span style="display: none">Facebook</span>
1859        <img src="/front/view/images/icons/social/facebook.png" alt="Facebook" width="32" height="32">
1860    </a>
1861  
1862    <a target="_blank" aria-label="Youtube" href="https://www.youtube.com/@CanalCodinenc/videos" title="Obre en finestra nova: Youtube">
1863        <span style="display: none">Youtube</span>
1864        <img src="/front/view/images/icons/social/youtube.png" alt="Youtube" width="32" height="32">
1865    </a>
1866  
1867    <a target="_blank" aria-label="LinkedIn" href="https://www.linkedin.com/company/ajsfcodines" title="Obre en finestra nova: LinkedIn">
1868        <span style="display: none">LinkedIn</span>
1869        <img src="/front/view/images/icons/social/linkedin.png" alt="LinkedIn" width="32" height="32">
1870    </a>
1871  
1872    <a target="_blank" aria-label="Instagram" href="https://www.instagram.com/ajsfcodines/" title="Obre en finestra nova: Instagram">
1873        <span style="display: none">Instagram</span>
1874        <img src="/front/view/images/icons/social/instagram.png" alt="Instagram" width="32" height="32">
1875    </a>
1876                </div>
1877                <div class="col-md-6 col-sm-6 col-lg-6 middle">
1878                    <nav class="menu"><ul id="Inferior2"><li class="page-63">  <a href="/altres-continguts/credits" target="_self" >Crèdits  </a></li><li class="page-62">  <a href="/altres-continguts/contacte" target="_self" >Contacte  </a></li><li class="page-60">  <a href="/altres-continguts/proteccio-de-dades" target="_self" >Protecció de dades  </a></li><li class="page-59">  <a href="/altres-continguts/avis-legal" target="_self" >Avís legal  </a></li><li class="page-61">  <a href="/altres-continguts/accessibilitat" target="_self" >Accessibilitat  </a></li></ul></nav>                </div>
1879            </div>
1880        </div>
1881    </div>
1882    <div class="contact">
1883        <div class="container-xl">
1884            <div class="row">
1885                <address class="address col-md-6 col-sm-6 col-lg-6">
1886    <div class="title">
1887        Ajuntament de Sant Feliu de Codines    </div>
1888    Plaça Josep Umbert Ventura, 2<br>08182 Sant Feliu de Codines<br>Tel. +34 938 662 768<br>NIF P0820900I<br></address><div class="diba col-md-6 col-sm-6 col-lg-6" id="diba-partner">
1889    <div class="title">
1890        Amb la col·laboració de:    </div>
1891    <a href="http://diba.cat/" target="_blank" aria-label="Anar a la web Diputació de Barcelona" title="Obre en finestra nova: Diputació de Barcelona">
1892        <span style="display: none">Diputació de Barcelona</span>
1893        <img src="/front/view//images/logoDiba/Negre.svg" alt="Diputació de Barcelona" class="logo-diba">
1894    </a>
1895</div>            </div>
1896        </div>
1897    </div>
1898</div>
1899</div></div>  </div></div></div>  </div></div>        </footer>
1900        <!-- Llibreries de tercers + js propis registrats a AssetManager (jQuery primer) -->
1901<script src="/front/view/js/bower_components/jquery/dist/jquery.min.js?ver=1790928587"></script>
vendor: 1 bytes, line 1901
1901
1902<script src="/front/view/js/bower_components/bootstrap/dist/js/bootstrap.bundle.min.js?ver=1790928587"></script>
vendor: 1 bytes, line 1902
1902
1903<script src="/front/view/js/bower_components/bxslider-4/dist/jquery.bxslider.js?ver=1790928587"></script>
vendor: 1 bytes, line 1903
1903
1904<script src="/front/view/js/bower_components/jscal/index.js?ver=1790928587"></script>
vendor: 1 bytes, line 1904
1904
1905<script src="/common/bower_components/select2/dist/js/select2.min.js?ver=1790928587"></script>
vendor: 1 bytes, line 1905
1905
1906<script src="/common/bower_components/select2/dist/js/i18n/ca.js?ver=1790928587"></script>
vendor: 1 bytes, line 1906
1906
1907<script src="/common/bower_components/strength.js/src/strength.min.js?ver=1790928587"></script>
vendor: 1 bytes, line 1907
1907
1908<script src="/front/view/js/bower_components/masonry-layout/dist/masonry.pkgd.min.js?ver=1790928587"></script>
vendor: 1 bytes, line 1908
1908
1909<script src="/front/view/js/constants.js?ver=1790928587"></script>
vendor: 1 bytes, line 1909
1909
1910<script src="/front/view/js/functions.js?ver=1790928587"></script>
vendor: 1 bytes, line 1910
1910
1911<script src="/front/view/js/functions/footer.js?ver=1790928587"></script>
vendor: 1 bytes, line 1911
1911
1912<script src="/front/view/js/bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js?ver=1790928587"></script>
vendor: 1 bytes, line 1912
1912
1913<script src="/front/view/js/bower_components/jquery.prettyPhoto/index.js?ver=1790928587"></script>
vendor: 1 bytes, line 1913
1913
1914<script>
1915    $(document).ready(function(){
1916                    $("a[rel^='prettyPhoto']").prettyPhoto();
1917            $("a[rel^='prettyFrame']").prettyPhoto();
1918            });
1919</script>
vendor: 1 bytes, line 1919
1919
1920<script>
1921        var TWITTER = null;
1922            var FACEBOOK = null;
1923        $(window).on("load", function() {
1924        start();
1925    });
1926        
1927    // Initialize Select2 with icon support for category filter
1928    $(document).ready(function() {
1929        if ($('#categoryFilter').length) {
1930            $('#categoryFilter').select2({
1931                templateResult: function(option) {
1932                    if (!option.id) return option.text;
1933                    var icon = $(option.element).data('icon');
1934                    if (!icon) return option.text;
1935                    return $('<span><img src="' + icon + '" style="width: 16px; height: 16px; margin-right: 6px; vertical-align: middle;"> ' + option.text + '</span>');
1936                },
1937                templateSelection: function(option) {
1938                    if (!option.id) return option.text;
1939                    var icon = $(option.element).data('icon');
1940                    if (!icon) return option.text;
1941                    return $('<span><img src="' + icon + '" style="width: 16px; height: 16px; margin-right: 6px; vertical-align: middle;"> ' + option.text + '</span>');
1942                },
1943                allowHtml: true
1944            });
1945        }
1946    });
1947</script>
1947
1948        <!-- CSS final-->
1949
1950        
1950<script>
1951          const css = "";
1952          const style = document.createElement('style');
1953          style.textContent = css;
1954          document.head.appendChild(style);
1955        </script>
1955
1956
1957        <!-- Start Modal views-->
1958        
1959        <div class="modal fade" id="videoModal" tabindex="-1" role="dialog"  aria-hidden="true">
1960    <div class="modal-dialog modal-dialog-centered" role="document">
1961        <div class="modal-content">
1962            <div class="modal-header">
1963                <div class="title-head"></div>
1964            </div>
1965            <div class="modal-body">
1966                <div class="tiktok-div-embed"></div>
1967                <iframe id="iframeVideo" title="Vídeo" class="iframeVideo" allowfullscreen></iframe>
1968
1969            </div>
1970            <div class="modal-footer">
1971                <span id="titleVideo" class="titleVideo"></span>
1972                <a id="closeModalVideo" class="close" href="javascript:void(0)" data-bs-dismiss="modal"><span style="display: none">X</span></a>
1973
1974            </div>
1975        </div>
1976    </div>
1977</div>        <div class="modal fade" id="pdfModal" tabindex="-1" role="dialog"  aria-hidden="true">
1978    <div id="documentDialog" class="modal-dialog modal-dialog-centered" role="document">
1979        <div class="modal-content">
1980            <div class="modal-header">
1981                <div class="title-head"></div>
1982            </div>
1983            <div class="modal-body">
1984                <iframe id="iframePdf" title='Document' class="pdfview" style="width: 100%; height: 100%"></iframe>
1985            </div>
1986            <div class="modal-footer">
1987                <span id="titlePdf" class="titlePdf"></span>
1988                <a id="closeModalPDF" class="close" href="javascript:void(0)"><span style="display: none">X</span></a>
1989            </div>
1990        </div>
1991    </div>
1992</div>        <!-- End Modal views -->
1993        
1993<script src="/front/view/js/endScript.js?ver=1790928587"></script>
1993
1994        <!-- Només activar per desenvolupament
1995        
1995<script src="../../../node_modules/axe-core/axe.js"></script>
1995
1996        
1996<script src="../../../dist/my-first-webpack.bundle.js"></script>
1996
1997        -->
1998                
1998<script>
1999            $(document).ready(function () {
2000                startClock(1790928587);
2001                if (typeof (callMenuAfterJQueryLoaded) == "function") {
2002                    callMenuAfterJQueryLoaded();
2003                }
2004                
2005                datepickerInit();
2006                carouselControlSmall();
2007
2008                if (typeof (callMenuBeforeJQueryLoaded) == "function") {
2009                    callMenuBeforeJQueryLoaded();
2010                }
2011
2012                if (typeof (callMenuBeforeTopJQueryLoaded) == "function") {
2013                    callMenuBeforeTopJQueryLoaded();
2014                }
2015                addAttributesDivVcards();
2016                modalsImage();
2017                modalsPdf();
2018                translateWeb();
2019                var carousel = $('#carouselControls');
2020                carousel.on('slide.bs.carousel', function (event) {
2021                    toSlideImage(event);
2022                });
2023                /** Només activar per desenvolupament
2024                axe.configure({
2025                    locale: {
2026                        lang: 'es',
2027                    }
2028                });
2029
2030                axe.run().then(results => {
2031                        if (results.violations.length) {
2032                            console.log(results.violations);
2033                            throw new Error('Accessibility issues found');
2034                        }
2035                    })
2036                    .catch(err => {
2037                        console.log('Something bad happened:', err.message);
2038                    });
2039                */
2040            });
2041
2042            $(window).resize(function() {
2043                equalHeightIconTime();
2044            })
2045        </script>
2045
2046                    </body>
2047</html>

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