PageSourceSearch

https://riversideca.gov/

html riversideca.gov collected 2026-10-01 10:21:59 UTC 105,610 bytes, 2,633 lines download raw bytes

1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN"
2  "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">
3<html lang="en" dir="ltr"
4  xmlns:content="http://purl.org/rss/1.0/modules/content/"
5  xmlns:dc="http://purl.org/dc/terms/"
6  xmlns:foaf="http://xmlns.com/foaf/0.1/"
7  xmlns:og="http://ogp.me/ns#"
8  xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
9  xmlns:sioc="http://rdfs.org/sioc/ns#"
10  xmlns:sioct="http://rdfs.org/sioc/types#"
11  xmlns:skos="http://www.w3.org/2004/02/skos/core#"
12  xmlns:xsd="http://www.w3.org/2001/XMLSchema#">
13<head profile="http://www.w3.org/1999/xhtml/vocab">
14<!-- Google tag (gtag.js) -->
vendor: 65 bytes, lines 14-15
14
15<script async src="https://www.googletagmanager.com/gtag/js?id=
15G-B1J3RWJCLC
vendor: 13 bytes, line 15
15"></script>
16<script>
17  
vendor: 138 bytes, lines 17-21
17window.dataLayer = window.dataLayer || [];
18  function gtag(){dataLayer.push(arguments);}
19  gtag('js', new Date());
20
21  gtag('config', '
21G-B1J3RWJCLC
vendor: 5 bytes, line 21
21');
22</script>
22
23  <meta charset="utf-8">
24  <meta http-equiv="X-UA-Compatible" content="IE=edge">
25  <meta name="viewport" content="width=device-width, initial-scale=1.0">
26  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
27<link rel="shortcut icon" href="https://www.riversideca.gov/sites/all/themes/city_of_riverside/favicon.ico" type="image/vnd.microsoft.icon" />
28<meta name="Generator" content="Drupal 7 (http://drupal.org)" />
29  <title>Riverside, California | City of Arts & Innovation </title>
30
31<link rel="preconnect" href="https://fonts.googleapis.com">
32<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
33<link rel="preconnect" href="https://www.riversideca.gov" crossorigin>
34<link rel="dns-prefetch" href="https://cdnjs.cloudflare.com">
35
36<!-- StyleSheets  -->
37<link type="text/css" rel="stylesheet" href="/css/corweb/system.base.css"/>
38<link type="text/css" rel="stylesheet" href="/css/corweb/field.css" />
39<link type="text/css" rel="stylesheet" href="/css/corweb/views.css"/>
40<link type="text/css" rel="stylesheet" href="/css/corweb/ctools.css"/>
41<link type="text/css" rel="stylesheet" href="/css/corweb/reset.css"/>
42<link type="text/css" rel="stylesheet" href="/css/corweb/style.css"/>
43<link type="text/css" rel="stylesheet" href="/css/corweb/main.css"/>
44<link href="https://prod-druid-cdn-clients.azureedge.net/cityofriverside-hs/Rivy-56ab1b4e-737c-4fa0-a723-08dd8c0983b3/webchatfiles/druid_webchat_v2.css" rel="stylesheet">
45<link href="https://www.riversideca.gov/js/riv-lib/fontawesome/css/all.min.css" rel="stylesheet">
46<style>
47    @import url("https://www.riversideca.gov/sites/default/files/fontyourface/font.css?oqtub7");
48</style>
49
50<link type="text/css" rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato:300,700,italic,regular&amp;subset=latin" media="all" />
51<!-- HTML5 element support for IE6-8 -->
52<!--[if lt IE 9]>
53<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
53
54<![endif]-->
55
56<style>	
57
58   
59@media (max-width: 700px){
60    .emergencyBar{
61        margin-top: 80px;
62    }
63    .main-container, .wide-container {
64        margin-top: 0px;
65    }
66    .region-slider {
67            margin-top: 0px;
68    }
69}
70				
71.sociali {
72    position: relative !important;
73    font-size: 20px !important;
74    padding: 5px !important;
75}
76			
77@media (max-width: 700px){
78	.emergencyBar{
79		margin-top: 80px;
80	}
81	.main-container, .wide-container {
82        margin-top: 0px;
83	}
84	.region-slider {
85        margin-top: 0px;
86	}
87
88}
89
90/* Slideout Menu - match /fire */
91.slideout-menu .menu-link,
92.slideout-menu .city-links a {
93    display: block;
94    padding: 12px 16px;
95    border-bottom: 1px solid #444;
96    font-weight: bold;
97    text-transform: uppercase;
98    color: #fff;
99    text-decoration: none;
100}
101
102.slideout-menu .main-menu-links,
103.slideout-menu .city-links {
104    margin-top: 20px;
105}
106
107/* removed to match corweb slideout menu style */
108/* .slideout-menu h4 {
109    font-size: 18px;
110    color: #fff;
111    margin: 20px 16px 10px;
112    font-weight: bold;
113} */
114
115.slideout-menu .social-media ul {
116    display: flex;
117    justify-content: flex-start;
118    gap: 16px;
119    /* padding: 16px; */
120}
121
122.slideout-menu .social-media i {
123    font-size: 18px !important;
124    color: #fff !important;
125}
126
127@media screen and (min-width: 768px){
128    .carousel-indicators {
129        bottom: -50px;
130    }
131    .riversideHeader{
132        margin-bottom:37px; 
133    }
134}
135
136@media screen and (max-width: 768px){
137    .carousel-indicators {
138        position: absolute;
139        bottom: -48px;
140        left: 50%;
141        z-index: 15;
142        width: 60%;
143        margin-left: -30%;
144        padding-left: 0;
145        list-style: none;
146        text-align: center;
147    }
148    .riversideHeader{
149        margin-bottom: 10px;
150        margin-top: 50px;
151    }
152}
153
154.fade-carousel .carousel-indicators>li {
155    margin: 0 2px;
156    width: 15px;
157    height: 15px;
158    background-color: #cecece;;
159    border: none;
160    opacity: .8;
161}
162
163.card a:hover, a:focus p{
164    color: #428bca;
165    text-decoration: none!important;
166}
167
168.crt-panel-next, .crt-panel-prev{
169    display:none;
170}
171
172.calendarTitle{
173    font-size:20px;
174}
175
176
177  /* General button style (reset) */
178.bttn {
179    border: none;
180    font-size: 14px;
181    color: #fff !important;
182    background: none;
183    cursor: pointer;
184    padding: 10px 20px;
185    display: inline-block;
186    text-transform: uppercase;
187    letter-spacing: 1px;
188    font-weight: 700;
189    outline: none;
190    position: relative;
191    -webkit-transition: all 0.3s;
192    -moz-transition: all 0.3s;
193    transition: all 0.3s;
194    margin-bottom: 30px; 
195    text-decoration: none !important; 
196}
197
198.bttn:after {
199    content: '';
200    position: absolute;
201    z-index: -1;
202    -webkit-transition: all 0.3s;
203    -moz-transition: all 0.3s;
204    transition: all 0.3s;
205}
206
207  /* Button 1 */
208.bttn-1 {
209    background: #002856;
210    color: #fff;
211    box-shadow: 0 6px #000;
212    -webkit-transition: none;
213    -moz-transition: none;
214    transition: none;
215}
216
217  /* Button 1c */
218.bttn-1c {
219    border-radius: 5px;
220}
221
222.bttn-1c:hover {
223    box-shadow: 0 4px #000;
224    top: 2px;
225}
226
227.bttn-1c:active {
228    box-shadow: 0 0 #000;
229    top: 6px;
230}
231
232  /* Button 1c */
233.bttn-1c {
234    border-radius: 5px;
235}
236
237.bttn-1c:hover {
238    box-shadow: 0 4px #000;
239    top: 2px;
240}
241
242.bttn-1c:active {
243    box-shadow: 0 0 #000;
244    top: 6px;
245}
246
247
248
249  /* Button 2 */
250.bttn-2 {
251    background: #005870;
252    color: #fff;
253    box-shadow: 0 6px #00303d;
254    -webkit-transition: none;
255    -moz-transition: none;
256    transition: none;
257}
258
259  /* Button 2c */
260.bttn-2c {
261    border-radius: 5px;
262}
263
264.bttn-2c:hover {
265    box-shadow: 0 4px #00303d;
266    top: 2px;
267}
268
269.bttn-2c:active {
270    box-shadow: 0 0 #00303d;
271    top: 6px;
272}
273
274  /* Button 2c */
275.bttn-2c {
276    border-radius: 5px;
277}
278
279.bttn-2c:hover {
280    box-shadow: 0 4px #00303d;
281    top: 2px;
282}
283
284.bttn-2c:active {
285    box-shadow: 0 0 #00303d;
286    top: 6px;
287}
288
289  /* Button 3 */
290.bttn-3 {
291    background: #ecaa00;
292    color: #fff;
293    box-shadow: 0 6px #a67800;
294    -webkit-transition: none;
295    -moz-transition: none;
296    transition: none;
297}
298
299  /* Button 3c */
300.bttn-3c {
301    border-radius: 5px;
302}
303
304.bttn-3c:hover {
305    box-shadow: 0 4px #a67800;
306    top: 2px;
307}
308
309.bttn-3c:active {
310    box-shadow: 0 0 #a67800;
311    top: 6px;
312}
313
314  /* Button 4 */
315.bttn-4 {
316    background: #84332e;
317    color: #fff;
318    box-shadow: 0 6px #4e1c19;
319    -webkit-transition: none;
320    -moz-transition: none;
321    transition: none;
322}
323
324  /* Button 4c */
325.bttn-4c {
326    border-radius: 5px;
327}
328
329.bttn-4c:hover {
330    box-shadow: 0 4px #4e1c19;
331    top: 2px;
332}
333
334.bttn-4c:active {
335    box-shadow: 0 0 #4e1c19;
336    top: 6px;
337}
338
339  /* Button 5 */
340.bttn-5 {
341    background: #59621d;
342    color: #fff;
343    box-shadow: 0 6px #3a4010;
344    -webkit-transition: none;
345    -moz-transition: none;
346    transition: none;
347}
348
349  /* Button 5c */
350.bttn-5c {
351    border-radius: 5px;
352}
353
354.bttn-5c:hover {
355    box-shadow: 0 4px #3a4010;
356    top: 2px;
357}
358
359.bttn-5c:active {
360    box-shadow: 0 0 #3a4010;
361    top: 6px;
362}
363
364  /* Button 6 */
365.bttn-6 {
366    background: #a85623;
367    color: #fff;
368    box-shadow: 0 6px #612e0e;
369    -webkit-transition: none;
370    -moz-transition: none;
371    transition: none;
372}
373
374  /* Button 6c */
375.bttn-6c {
376    border-radius: 5px;
377}
378
379.bttn-6c:hover {
380    box-shadow: 0 4px #612e0e;
381    top: 2px;
382}
383
384.bttn-6c:active {
385    box-shadow: 0 0 #612e0e;
386    top: 6px;
387}
388
389
390.bttn {
391    margin-bottom: 30px;
392    text-decoration: none !important;
393}
394  
395figure.pressCard {
396    font-family: Lato;
397    color: #fff;
398    position: relative;
399    float: left;
400    overflow: hidden;
401    margin: 10px 1%;
402    min-width: 220px;
403    max-width: 221px;
404    height: 340px;
405    width: 100%;
406    background-color: #fff;
407    color: #000;
408    text-align: left;
409    font-size: 16px;
410}
411
412figure.pressCard .date, figure.pressCard i, figure.pressCard .date .month {
413    background-color: #fff;
414}
415
416/* fixing the mobile menu to reflect corweb styles */
417.slide-menu-container .menu.nav li {
418    border-bottom: 1px solid #7c7c7c;
419}
420
421.slide-menu-container .menu.nav li>a {
422    text-transform: uppercase;
423}
424
425@media( max-width: 700px ){
426    #main-menu-links a{
427        color: #fff !important;
428    }
429}
430/* .slideout-menu .navbar-nav a{
431color: #fff !important; */
432/* text-transform: uppercase; */
433/* border-bottom: 1px solid #7c7c7c; */
434/* margin-left: 15px; */
435            /* } */
436
437            
438/* .slideout-menu .navbar-nav li:hover{
439    background: #ECAA00 !important;
440} */
441
442/* edit to fix the background color on main nav */
443.navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:hover, .navbar-default .navbar-nav>.active>a:focus {
444    background-color: #eeeeee;
445    color: #002856;
446}
447
448
449/* .nav>li>a:hover, .nav>li>a:focus {
450    text-decoration: none;
451    background-color: #ECAA00 !important;
452} */
453
454.slideout-menu .social-media ul {
455    display: flex;
456    justify-content: center !important;
457    gap: 0px !important;
458    /* padding: 16px; */
459    align-content: center !important;
460}
461
462</style>
463
464
465</head>
466<body class="html front not-logged-in no-sidebars page-node" >
467    <div id="skip-link">
468        <a href="#main-content" class="element-invisible element-focusable">Skip to main content</a>
469    </div>
470    <!--Header + Navigation-->      
471    <nav id="menu">
472        <button style="font-family: Lato;" href="#" id="nav-close" class="nav-close-container nav-close-btn" >PAGE MENU <span class="pull-right nav-close-x" style="margin-right:10px">X</span></button>
473        <div class="slide-menu-container">
474            <div class="search-container ">
475                <form class="search-form clearfix" action="https://www.riversideca.gov/search" method="get" id="searchform"
476                role="search" aria-label="Search site">
477                    <div class="form-wrapper form-group" id="edit-basic">
478                        <input name="t" type="hidden" value="h" />
479                        <input type="hidden" name="form_id" value="search_form" />
480                        <div class="search-group">
481                            <input type="text" name="addsearch" id="m-coresearch" class="searchInput"
482                                placeholder="Search RiversideCA.gov">
483                            <label for="m-coresearch" class="sr-only">Search RiversideCA.gov</label>
484                            <button type="submit" class="btn btn-default search-btn" aria-label="Search">
485                                <i class="fa fa-search"></i>
486                                <span class="sr-only">Search</span>
487                            </button>
488                        </div>
489                    </div>
490                </form> 
491            </div>
492            <h4 class="slide-menu-title">Main Menu Links</h4>
493            <ul class="menu nav navbar-nav clearfix"><li class="menu-739 last"><a class="" href="/" title="/" alt="">RiversideCA.gov</a></li></ul>
494            <ul id="main-menu-links" class="menu nav navbar-nav clearfix">
495                <li class="menu-574"><a href="/about-riverside" class="">About Riverside</a></li>
496                <li class="menu-575 "><a href="/residents" class="">Residents</a></li>
497                <li class="menu-576"><a href="/government">Government</a></li>
498                <li class="menu-577"><a href="/business">Business</a></li>
499                <li class="menu-578"><a href="/services">Services</a></li>
500                <li class="menu-579"><a href="/media">Media</a></li>
501                <li class="menu-602"><a href="/connect">Connect</a></li>
502                <li class="menu-580 last"><a href="/jobs" title="Riverside City Jobs">Jobs</a></li>
503            </ul>           
504            <div style="margin-top:20px" class="text-center social-media">
505                <ul class="nav nav-pills">
506                    <li>
507                        <a target="_blank" href="https://www.facebook.com/CityofRiverside" aria-label="Facebook">
508                            <i class="fa fa-facebook fa-2x" aria-hidden="true"></i>
509                        </a>
510                    </li>
511                    <li>
512                        <a target="_blank" href="https://instagram.com/cityofriverside" aria-label="Instagram">
513                            <i class="fa fa-instagram  fa-2x" aria-hidden="true"></i>
514                        </a>
515                    </li>
516                    <li>
517                        <a target="_blank" href="https://twitter.com/riversidecagov" aria-label="Twitter">
518                            <i class="fa-brands fa-square-x-twitter fa-2x" aria-hidden="true"></i>
519                        </a>
520                    </li>
521                    <li>
522                        <a target="_blank" href="https://member.everbridge.net/index/453003085614598" aria-label="Riverside Alerts" rel="noopener noreferrer">
523                            <svg class="svg-inline--fa" aria-hidden="true" xmlns="http://www.w3.org/2000/svg"
524                                viewBox="0 0 86.31 86.11">
525                                <path fill="currentColor"
526                                    d="M42.53 9.95c-18.06 0-32.68 14.64-32.68 32.69s14.64 32.69 32.69 32.69 32.68-14.64 32.68-32.69S60.59 9.95 42.53 9.95m-2.1 16.88c.2-.22.46-.34.76-.35 7.78-.22 14.56 5.5 15.68 13.16.04.29-.03.58-.22.81-.19.24-.47.38-.77.41l-.97.09h-.1c-.56 0-1.05-.43-1.14-1a12.134 12.134 0 0 0-12.03-10.27h-.2c-.63 0-1.14-.46-1.19-1.05l-.09-.97c-.03-.3.07-.61.27-.83m8.88 14.6c-.55 0-1.04-.41-1.16-.98a6.69 6.69 0 0 0-6.24-5.24c-.62-.03-1.13-.49-1.18-1.07l-.11-1.32c-.03-.31.07-.61.28-.84.2-.22.46-.33.75-.33 4.96 0 9.19 3.55 10.05 8.43.05.28-.02.57-.2.8-.19.24-.47.39-.78.42l-1.32.12h-.1.01Zm7.98 16.77-.78.78c-1.66 1.66-4.26 3.01-7.81 4.06-2.72-1.15-5.44-2.68-8.16-4.6-2.71-1.92-5.42-4.24-8.12-6.94-2.74-2.74-5.08-5.48-7.04-8.23s-3.52-5.5-4.7-8.27h.01c.88-3.4 2.18-5.98 3.91-7.71l.66-.67c1.06-1.06 2.03-1.57 2.92-1.53.88.05 1.91.66 3.08 1.83 3.33 3.34 3.8 6.2 1.41 8.6l-1.07 1.07c-.81.81-1.28 1.51-1.4 2.09s.05 1.4.5 2.44c.78 1.82 2.51 4.07 5.18 6.74s4.98 4.43 6.84 5.18c1.64.65 3.09.34 4.34-.91l1.02-1.02c2.45-2.45 5.37-1.99 8.74 1.39 1.14 1.14 1.75 2.14 1.81 2.99.07.85-.38 1.75-1.34 2.71" />
527                                <path fill="currentColor"
528                                    d="M86.31 0 67.1 10.9c-6.98-5.38-15.48-8.31-24.44-8.33h-.06c-10.72 0-20.8 4.17-28.4 11.74C6.59 21.89 2.39 31.99 2.38 42.73c0 8.99 2.91 17.53 8.31 24.53L0 86.11l18.98-10.76c6.81 4.96 14.97 7.65 23.56 7.66h.06c10.72 0 20.8-4.17 28.4-11.74 7.61-7.58 11.81-17.68 11.82-28.42.01-8.53-2.62-16.66-7.51-23.46zM68.72 68.99c-6.99 6.97-16.26 10.8-26.13 10.8h-.06c-9.88-.01-19.17-3.88-26.15-10.88S5.57 52.61 5.58 42.73s3.88-19.17 10.88-26.15c6.99-6.97 16.26-10.8 26.13-10.8h.05c9.88.01 19.17 3.88 26.15 10.88s10.81 16.3 10.8 26.18-3.88 19.17-10.88 26.15Z" />
529                            </svg>
530                        </a>
531                    </li>
532                </ul>
533            </div>
534            <h4 class="slide-menu-title" >City Links</h4>
535            <ul id="main-menu-links" class="links nav navbar-nav clearfix">
536                <li class="menu-340 first"><a href="http://www.riversideca.gov/" title="City of Riverside Home Page">RiversideCA.gov</a></li>
537                <li class="menu-309"><a href="http://www.engageriverside.com" title="">Engage Riverside</a></li>
538                <li class="menu-342"><a href="http://www.shopriversidenow.com" title="Shop Riverside">Shop Riverside</a></li>
539                <li class="menu-343">
539<a href="http://www.riversidepublicutilities.com" title="RPU Website">Public Utilities</a></li>
540            </ul>
541            <div class="gtranslate_wrapper"></div>
542        </div>
543    </nav>
544
545    <main id="panel">
546        <div class="highlighted-sites hidden-xs ">
547            <div class="container flex between align-items-center">
548                <div class="">
549                    <ul class="links"><li class="menu-340 first"><a href="http://www.riversideca.gov/" title="City of Riverside Home Page">RiversideCA.gov</a></li>
550                        <li class="menu-309"><a href="http://www.engageriverside.com" title="">Engage Riverside</a></li>
551                        <li class="menu-342"><a href="http://www.shopriversidenow.com" title="Shop Riverside">Shop Riverside</a></li>
552                        <li class="menu-343 "><a href="http://www.riversidepublicutilities.com" title="RPU Website">Public Utilities</a></li>
553                    </ul>       
554                </div>
555                <div class="searchTranslate flex align-items-center">
556                    <div class="search-container">
557                        <form class="search-form clearfix" action="https://www.riversideca.gov/search" method="get"
558                            id="searchform" role="search" aria-label="Search site">
559                            <div class="form-wrapper form-group" id="edit-basic">
560                                <input name="t" type="hidden" value="h" />
561                                <input type="hidden" name="form_id" value="search_form" />
562                                <div class="search-group">
563                                    <input type="text" name="addsearch" id="coresearch" class="searchInput"
564                                        placeholder="Search RiversideCA.gov">
565                                    <label for="coresearch" class="sr-only">Search RiversideCA.gov</label>
566
567                                    <button type="submit" class="btn btn-default search-btn" aria-label="Search">
568                                        <i class="fa fa-search"></i>
569                                        <span class="sr-only">Search</span>
570                                    </button>
571                                </div>
572                            </div>
573                        </form>
574
575                    </div>
576
577                    <div class="gt-container marginLeftTen" style="margin-top: 2px; position: relative;">
578                        <div class="gtranslate_wrapper"></div>
579                        
579<script>window.gtranslateSettings = { "default_language": "en", "wrapper_selector": ".gtranslate_wrapper", "alt_flags": { "en": "usa", "es": "mexico" } }</script>
579
580                        
580<script src="https://cdn.gtranslate.net/widgets/latest/popup.js" defer></script>
580
581                    </div>
582                </div>
583            </div>
584        </div>
585
586        <div class="departmentbar">riversideca.gov</div>
587
588        
589        <!-- <div class="emergencyBar" style="padding: 0 !important; margin-bottom: 0 !important;text-align: center;background-color: #cc0000;">
590            <a href="https://riversideca.gov/press/bain-fire-information-riverside-residents" style="font-weight: 600;padding: 14px 14px 14px 14px;line-height: 20px; text-decoration: underline; display: block;color: white;font-size: 16px; letter-spacing: 2px;">City of Riverside Residents: Bain Fire Evacuation Updates</a>  
591        </div>  -->
592
593        <div id="header-banner" class="hidden-xs">
594            <div class="container flex between">
595                <a class="name navbar-brand hidden-xs" href="/" title="City of Riverside home"><img src="/images/corweb-homepage/cor-logo.jpg" class="main-logo" alt="City of Riverside Logo" width="100" height="102"></a>
596                            
597                <div class="socialm" >
598                    <a href="https://riversideca.gov/calendar" class="minilink">
599                        <i class="fa fa-calendar" aria-hidden="true"></i> &nbsp;&nbsp;Community Calendar
600                    </a> |
601                    <a href="https://riversideca.legistar.com/Calendar.aspx" class="minilink">
602                        <i class="fa fa-users" aria-hidden="true"></i> &nbsp;&nbsp;Government Meetings
603                    </a>
604                    <a class="sociali" href="https://www.facebook.com/CityofRiverside" target="_blank"
605                        aria-label="Facebook">
606                        <i class="fa fa-facebook fa" aria-hidden="true"></i>
607                    </a>
608                    <a class="sociali" href="http://instagram.com/cityofriverside" target="_blank" aria-label="Instagram">
609                        <i class="fa fa-instagram fa" aria-hidden="true"></i>
610                    </a>
611                    <a class="sociali" href="https://twitter.com/riversidecagov" target="_blank" aria-label="Twitter">
612                        <i class="fa-brands fa-square-x-twitter" aria-hidden="true"></i>
613                    </a>
614                    <a class="sociali" href="http://www.youtube.com/cityofriverside" target="_blank" aria-label="YouTube">
615                        <i class="fa fa-youtube fa" aria-hidden="true"></i>
616                    </a>
617                    <a class="sociali" href="https://member.everbridge.net/index/453003085614598" target="_blank"
618                        aria-label="Riverside Alerts">
619                     <svg class="svg-inline--fa" aria-hidden="true"
620     height="20" 
621     preserveAspectRatio="xMidYMid meet"
622     viewBox="0 0 86.31 86.11"
623     xmlns="http://www.w3.org/2000/svg">
624  <path fill="currentColor"
625    d="M42.53 9.95c-18.06 0-32.68 14.64-32.68 32.69s14.64 32.69 32.69 32.69 32.68-14.64 32.68-32.69S60.59 9.95 42.53 9.95m-2.1 16.88c.2-.22.46-.34.76-.35 7.78-.22 14.56 5.5 15.68 13.16.04.29-.03.58-.22.81-.19.24-.47.38-.77.41l-.97.09h-.1c-.56 0-1.05-.43-1.14-1a12.134 12.134 0 0 0-12.03-10.27h-.2c-.63 0-1.14-.46-1.19-1.05l-.09-.97c-.03-.3.07-.61.27-.83m8.88 14.6c-.55 0-1.04-.41-1.16-.98a6.69 6.69 0 0 0-6.24-5.24c-.62-.03-1.13-.49-1.18-1.07l-.11-1.32c-.03-.31.07-.61.28-.84.2-.22.46-.33.75-.33 4.96 0 9.19 3.55 10.05 8.43.05.28-.02.57-.2.8-.19.24-.47.39-.78.42l-1.32.12h-.1.01Zm7.98 16.77-.78.78c-1.66 1.66-4.26 3.01-7.81 4.06-2.72-1.15-5.44-2.68-8.16-4.6-2.71-1.92-5.42-4.24-8.12-6.94-2.74-2.74-5.08-5.48-7.04-8.23s-3.52-5.5-4.7-8.27h.01c.88-3.4 2.18-5.98 3.91-7.71l.66-.67c1.06-1.06 2.03-1.57 2.92-1.53.88.05 1.91.66 3.08 1.83 3.33 3.34 3.8 6.2 1.41 8.6l-1.07 1.07c-.81.81-1.28 1.51-1.4 2.09s.05 1.4.5 2.44c.78 1.82 2.51 4.07 5.18 6.74s4.98 4.43 6.84 5.18c1.64.65 3.09.34 4.34-.91l1.02-1.02c2.45-2.45 5.37-1.99 8.74 1.39 1.14 1.14 1.75 2.14 1.81 2.99.07.85-.38 1.75-1.34 2.71" />
626  <path fill="currentColor"
627    d="M86.31 0 67.1 10.9c-6.98-5.38-15.48-8.31-24.44-8.33h-.06c-10.72 0-20.8 4.17-28.4 11.74C6.59 21.89 2.39 31.99 2.38 42.73c0 8.99 2.91 17.53 8.31 24.53L0 86.11l18.98-10.76c6.81 4.96 14.97 7.65 23.56 7.66h.06c10.72 0 20.8-4.17 28.4-11.74 7.61-7.58 11.81-17.68 11.82-28.42.01-8.53-2.62-16.66-7.51-23.46zM68.72 68.99c-6.99 6.97-16.26 10.8-26.13 10.8h-.06c-9.88-.01-19.17-3.88-26.15-10.88S5.57 52.61 5.58 42.73s3.88-19.17 10.88-26.15c6.99-6.97 16.26-10.8 26.13-10.8h.05c9.88.01 19.17 3.88 26.15 10.88s10.81 16.3 10.8 26.18-3.88 19.17-10.88 26.15Z" />
628</svg>
629
630                    </a>
631                </div>
632            </div>
633        </div>
634
635        <div id="navigation" role="banner" class="navbar container navbar-default">
636            <div class="navbar-header">
637                <button id="nav-expander" class="nav-expander navbar-toggle visible-xs fixed"
638                    aria-label="Toggle mobile navigation menu">
639                    <i class="fa-solid fa-bars fa-2x"></i>
640                </button>
641            </div>
642            <div class="container">
643                <div class="navbar-collapse collapse">
644                    <div role="navigation">
645                        <div class="hidden-xs">
646                            <ul id="main-menu-links" class="menu nav navbar-nav clearfix">
647                                <li class="menu-575"><a href="/about-riverside" class="">About Riverside</a></li>
648                                <li class="menu-575"><a href="/residents" class="">Residents</a></li>
649                                <li class="menu-576"><a href="/government">Government</a></li>
650                                <li class="menu-577"><a href="/business">Business</a></li>
651                                <li class="menu-578"><a href="/services">Services</a></li>
652                                <li class="menu-579"><a href="/media">Media</a></li>
653                                <li class="menu-602"><a href="/connect">Connect</a></li>
654                                <li class="menu-580 last"><a href="/jobs" title="Riverside City Jobs">Jobs</a></li>
655                            </ul>       
656                        </div>
657                        <ul id="main-menu-links" class="links visible-xs nav navbar-nav clearfix"><li class="menu-340 first"><a href="http://www.riversideca.gov/" title="City of Riverside Home Page">RiversideCA.gov</a></li>
658                            <li class="menu-309"><a href="http://www.engageriverside.com" title="">Engage Riverside</a></li>
659                            <li class="menu-342"><a href="http://www.shopriversidenow.com" title="Shop Riverside">Shop Riverside</a></li>
660                            <li class="menu-343 last">
660<a href="http://www.riversidepublicutilities.com" title="RPU Website">Public Utilities</a></li>
661                        </ul>         
662                    </div>
663                </div>
664            </div>
665        </div>
666
667
668<style>
669
670figure.pressCard .date, figure.pressCard i, figure.pressCard .date .month {
671	background-color: #fff;
672}
673figure.pressCard {
674	max-width: 310px;
675	height: 473px;
676	background-color: #fff;
677
678}
679figure.pressCard img {
680	height: auto;
681}
682figure.pressCard h4 {
683	font-size: 18px;
684}
685figcaption{
686	margin-top: 53px;
687}
688
689.calendarTitle {
690	font-size: 16px;
691	color:#002856;
692	font-weight:500;
693}
694.card .card-content p {
695	font-size: 14px;
696	color:gray !important
697}
698.card .date .day {
699	font-size: 25px;
700}
701.calendar-post {
702	height: 144px;
703}
704.reviews{
705	margin-top: 28px;
706}
707.reviews div{
708	display: inline-block;
709	positon: absolute;
710	left: 260px;
711	/*//left: 156px;*/
712}
713.socials div{
714	display: inline-block;
715}
716.hexQuickLinkRow i{
717	color: white;
718	font-size: 50px;
719	line-height: 60px;
720	text-shadow: 2px 2px 10px black;
721}
722
723.hexQuickLinkRow #hexagon {
724	width: 100px;
725	height: 60px;
726	background: #002856;
727	position: relative;
728	text-align: center;
729	-webkit-transition: all 0.3s ease-in-out;
730	-moz-transition: all 0.3s ease-in-out;
731	-ms-transition: all 0.3s ease-in-out;
732	-o-transition: all 0.3s ease-in-out;
733	transition: all 0.3s ease-in-out;
734	margin-top: 48px;
735	margin-right: 15px;
736}
737
738.hexQuickLinkRow #hexagon p{
739	padding-top:30px;
740	font-weight: 600;
741}
742
743
744.hexQuickLinkRow #hexagon:before {
745	content: "";
746	position: absolute;
747	top: -25px;
748	left: 0;
749	width: 0;
750	height: 0;
751	border-left: 50px solid transparent;
752	border-right: 50px solid transparent;
753	border-bottom: 25px solid #002856;
754	-webkit-transition: all 0.3s ease-in-out;
755	-moz-transition: all 0.3s ease-in-out;
756	-ms-transition: all 0.3s ease-in-out;
757	-o-transition: all 0.3s ease-in-out;
758	transition: all 0.3s ease-in-out;
759}
760.hexQuickLinkRow #hexagon:after {
761	content: "";
762	position: absolute;
763	bottom: -24px;
764	left: 0;
765	width: 0;
766	height: 0;
767	border-left: 50px solid transparent;
768	border-right: 50px solid transparent;
769	border-top: 25px solid #002856;
770	-webkit-transition: all 0.3s ease-in-out;
771	-moz-transition: all 0.3s ease-in-out;
772	-ms-transition: all 0.3s ease-in-out;
773	-o-transition: all 0.3s ease-in-out;
774	transition: all 0.3s ease-in-out;
775}
776
777.hexQuickLinkRow #hexagon:hover{
778	background: #ecaa00;
779}
780.hexQuickLinkRow #hexagon p:hover{
781	color: #002856;
782}
783
784.hexQuickLinkRow #hexagon:hover:after{
785	border-top: 25px solid #ecaa00;
786}
787.hexQuickLinkRow #hexagon:hover:before{
788	border-bottom: 25px solid #ecaa00;
789}
790figure.pressCard {
791	max-width: 310px;
792	height: 473px;
793}
794figure.pressCard img {
795	height: 225px;
796}
797figure.pressCard h4 {
798	font-size: 18px;
799}
800figcaption{
801	margin-top: 53px;
802}
803.calendarTitle {
804	font-size: 16px;
805	font-weight:bold;
806}
807.card .card-content p {
808	font-size: 14px;
809}
810.card .date .day {
811	font-size: 25px;
812}
813.calendar-post {
814	height: 144px;
815}
816
817.row{
818	margin-right:auto;
819	margin-left:auto;
820}
821.hexQuickLinkRow{
822	margin-bottom:30px;
823	margin-top:33px;
824}
825.main-container, .wide-container {
826	padding-top: 20px;
827	padding-bottom: 50px;
828}
829.hexDropDown:hover {
830	cursor:pointer;
831	text-decoration: none;
832}
833.hexDropDown .home-link p{
834	color: #002856;
835}
836.calendarDates{
837	width: 70%;
838}
839.hexDropRow{
840	margin-bottom:30px;
841	margin-top:50px;
842}
843.socialRow{
844	margin-bottom:30px;
845	margin-top:20px;
846}
847.textDecorationNone{
848	text-decoration:none;
849	color:none;
850}
851.quckLinkHexHome{
852	color:#6a6a6a;
853	text-decoration: none;
854}
855.quckLinkHexHome:hover {
856	color: #002856;
857	text-decoration: none;
858}
859.crt-panel-arrow{
860	display: none !important;
861}
862@media screen and (max-width: 1600px) and (min-width: 1200px) {
863	figure.pressCard {
864		max-width: 247px;
865	}
866	figure.pressCard img {
867		height: 200px;
868	}	
869
870}
871@media (max-width: 700px){
872	figure.pressCard {
873		left: 0%;
874	}
875	figure.pressCard {
876		margin-right: auto;
877		margin-left: auto;
878		float: inherit;
879	}
880	.hexQuickLinkRow #hexagon:before {
881		top: -24px;
882	}
883	.hexQuickLinkRow #hexagon {
884		height: 60px;
885		margin-top: 49px;
886	}
887}
888@media (max-width: 767px){
889	.region-slider {
890		margin-right: 0px;
891	}
892	.main-container, .wide-container {
893		margin-top: 20px;
894	}
895}
896
897.red #hexagon:before {
898	content: "";
899	position: absolute;
900	top: -25px;
901	left: 0;
902	width: 0;
903	height: 0;
904	border-left: 50px solid transparent;
905	border-right: 50px solid transparent;
906	border-bottom: 25px solid #a00a08;
907	-webkit-transition: all 0.3s ease-in-out;
908	-moz-transition: all 0.3s ease-in-out;
909	-ms-transition: all 0.3s ease-in-out;
910	-o-transition: all 0.3s ease-in-out;
911	transition: all 0.3s ease-in-out;
912}
913.red #hexagon:after {
914	content: "";
915	position: absolute;
916	bottom: -24px;
917	left: 0;
918	width: 0;
919	height: 0;
920	border-left: 50px solid transparent;
921	border-right: 50px solid transparent;
922	border-top: 25px solid #a00a08;
923	-webkit-transition: all 0.3s ease-in-out;
924	-moz-transition: all 0.3s ease-in-out;
925	-ms-transition: all 0.3s ease-in-out;
926	-o-transition: all 0.3s ease-in-out;
927	transition: all 0.3s ease-in-out;
928}
929.red #hexagon{
930	background: #a00a08;
931}
932
933</style>   
934<style>
935
936
937.hexQuickLinkRow #hexagon:before {
938	top: -24px !important;
939}
940@media only screen and (max-width: 600px) {
941
942#homepage-slider {
943	margin-top: 80px;
944	
945}
946}
947
948.hexQuickLinkRow #hexagon {
949width: 100px;
950    height: 60px;
951    background: #002856;
952    position: relative;
953    text-align: center;
954    -webkit-transition: all 0.3s ease-in-out;
955    -moz-transition: all 0.3s ease-in-out;
956    -ms-transition: all 0.3s ease-in-out;
957    -o-transition: all 0.3s ease-in-out;
958    transition: all 0.3s ease-in-out;
959    margin-top: 48px;
960    margin-right: 15px;
961}
962
963
964.hexQuickLinkRow #hexagon .svg-inline--fa{
965width: 50px !important;
966height: 50px !important;
967padding-top: 5px;
968color: #fff !important;
969}
970
971/*
972.hexQuickLinkRow #hexagon2 {
973width: 100px;
974    height: 60px;
975    background: #ecaa00;
976    position: relative;
977    text-align: center;
978    -webkit-transition: all 0.3s ease-in-out;
979    -moz-transition: all 0.3s ease-in-out;
980    -ms-transition: all 0.3s ease-in-out;
981    -o-transition: all 0.3s ease-in-out;
982    transition: all 0.3s ease-in-out;
983    margin-top: 48px;
984    margin-right: 15px;
985}
986
987.hexQuickLinkRow #hexagon2 .svg-inline--fa{
988width: 50px !important;
989height: 50px !important;
990padding-top: 5px;
991color: #fff !important;
992}
993
994*/
995
996
997.yellow #hexagon:before {
998	content: "";
999	position: absolute;
1000	top: -25px;
1001	left: 0;
1002	width: 0;
1003	height: 0;
1004	border-left: 50px solid transparent;
1005	border-right: 50px solid transparent;
1006	border-bottom: 25px solid #ecaa00;
1007	-webkit-transition: all 0.3s ease-in-out;
1008	-moz-transition: all 0.3s ease-in-out;
1009	-ms-transition: all 0.3s ease-in-out;
1010	-o-transition: all 0.3s ease-in-out;
1011	transition: all 0.3s ease-in-out;
1012}
1013.yellow #hexagon:after {
1014	content: "";
1015	position: absolute;
1016	bottom: -24px;
1017	left: 0;
1018	width: 0;
1019	height: 0;
1020	border-left: 50px solid transparent;
1021	border-right: 50px solid transparent;
1022	border-top: 25px solid #ecaa00;
1023	-webkit-transition: all 0.3s ease-in-out;
1024	-moz-transition: all 0.3s ease-in-out;
1025	-ms-transition: all 0.3s ease-in-out;
1026	-o-transition: all 0.3s ease-in-out;
1027	transition: all 0.3s ease-in-out;
1028}
1029.yellow #hexagon{
1030	background: #ecaa00;
1031}
1032
1033[data-acsb="trigger"],
1034.acsb-trigger,
1035#acsb-trigger {
1036  left: auto !important;
1037  right: 20px !important;
1038  bottom: 20px !important;
1039}
1040
1041</style>
1042
1043
1044<div class="page-wrap region region-slider">
1045	<div class="row" id="homepage-slider" style="background-image: url('https://riversideca.gov/fire/sites/all/themes/city_of_riverside/images/riverside-plaza-bg.jpg'); background-size: cover;">
1046		<div class="container">
1047			<div class="carousel fade-carousel slide" data-ride="carousel" data-interval="4000" id="bs-carousel">
1048				<!-- Overlay -->
1049				<!--<div class="overlay"></div>-->
1050
1051				<!-- Indicators -->
1052				<ol class="carousel-indicators">
1053					<!-- <li data-target="#bs-carousel" data-slide-to="0" class="active"></li>
1054					<li data-target="#bs-carousel" data-slide-to="1"></li>
1055					<li data-target="#bs-carousel" data-slide-to="2"></li>
1056					<li data-target="#bs-carousel" data-slide-to="3"></li> -->
1057					<!-- <li data-target="#bs-carousel" data-slide-to="4"></li> -->
1058                    <!-- <li data-target="#bs-carousel" data-slide-to="5"></li> -->
1059				</ol>
1060                <!-- Wrapper for slides -->
1061
1062                <div class="carousel-inner">
1063                    
1064                </div>
1065                
1065<script>
1066    /*
1067    {
1068        a : "",
1069        src: "", //311 page, if not for 311 use false
1070        web: "",  //web page, if not for web use false
1071        alt: "",
1072        start: "", // optional; 3/01/2026 starts on/after this date
1073        end: "" // 3/24/2026 ends after this date
1074    },
1075    
1076
1077    */
1078    let data = [
1079
1080        {
1081            a: "https://riversideca.gov/press/local-vibes-event-series",
1082            src: "https://riversideca.gov/lobby-tv/img/Sliders/2026/Fall%20Festival%202026-City_TV.jpg?v=3",
1083            web: "https://riversideca.gov/lobby-tv/img/Sliders/2026/Fall Festival 2026-Web-311.jpg?v=2",
1084            alt: "Fall Festival 2026",
1085            end: "10/10/2026"
1086        },
1087        {
1088            a: "https://riversidepublicutilites.com/outages",
1089            src: "https://riversideca.gov/lobby-tv/img/Sliders/RPU_Webslider_City_TV.jpg?v=2",
1090            web: false,
1091            alt: "Riverside Public Utilities",
1092            end: ""
1093        },
1094        {
1095            a: "https://riversideca.gov/cdbg",
1096            src: "https://riversideca.gov/webslider-img/2026/CDBG-Meetings-Webslider_City_TV311.jpg",
1097            web: "https://riversideca.gov/webslider-img/2026/CDBG-Meetings-Webslider_City_Web.jpg",
1098            alt: "Hud Annual Action Plan 27/28",
1099            start: "09/23/2026",
1100            end: "10/29/2026"
1101        },
1102        {
1103            a : "https://sur-vey.typeform.com/to/DVY2DioQ",
1104            src: "https://riversideca.gov/webslider-img/2026/Riverside-GPU-Mobility-Circulation-OH-Website-Ad.png", //311 page, if not for 311 use false
1105            web: "https://riversideca.gov/webslider-img/2026/Riverside-GPU-Mobility-Circulation-OH-Website-Ad.png",  //web page, if not for web use false
1106            alt: "Join us for mobility & circulation open house",
1107            start: "", // optional; 3/01/2026 starts on/after this date
1108            end: "10/14/2026" // 3/24/2026 ends after this date
1109        },
1110        {
1111            a : "https://riversidetv.com/Local-Sports",
1112            src: "https://riversideca.gov/webslider-img/2026/RiversideTV-Sports_TV-Webslide-V1.jpg", //311 page, if not for 311 use false
1113            web: "https://riversideca.gov/webslider-img/2026/RiversideTV-Sports_Webslider.jpg",  //web page, if not for web use false
1114            alt: "Local Sports Football",
1115            end: "" //ends after this date
1116        },
1117        
1118        {
1119            a : "https://riversideca.gov/explore",
1120            src: "https://riversideca.gov/webslider-img/2026/Explore-Riverside-Fall-2026_Webslider_311TV.jpg", //311 page, if not for 311 use false
1121            web: "https://riversideca.gov/webslider-img/2026/Explore-Riverside-Fall-2026_Webslider_Web.jpg",  //web page, if not for web use false
1122            alt: "Explore fall 2026",
1123            end: "10/5/2026" //ends after this date
1124        },
1125        // {
1126        //     a : "https://riversideca.gov/SlowDown",
1127        //     src: "https://riversideca.gov/webslider-img/2026/Slow Down_Webslider_TV311.jpg", //311 page, if not for 311 use false
1128        //     web: "https://riversideca.gov/webslider-img/2026/Slow Down_Webslider_Web.jpg",  //web page, if not for web use false
1129        //     alt: "Slow Down Save Lives Web slider",
1130        //     start: "",
1131        //     end: "10/5/2026" //ends after this date
1132        // },
1133        {
1134            a : "https://riversideca.gov/sustainability/ycaf",
1135            src: "https://riversideca.gov/webslider-img/2026/OOS-Youth-Climate-Action-Fund-Webslider_TV311.jpg", //311 page, if not for 311 use false
1136            web: "https://riversideca.gov/webslider-img/2026/OOS-Youth-Climate-Action-Fund-Webslider_Mainpage.jpg",  //web page, if not for web use false
1137            alt: "Youth Climate Action Fund",
1138            end: "9/25/2026" //ends after this date
1139        },
1140        {
1141            a : "https://riversideca.gov/calendar",
1142            src: "https://riversideca.gov/webslider-img/2026/America-250-TV_Explore.jpg", //311 page, if not for 311 use false
1143            web: false,  //web page, if not for web use false
1144            alt: "Explore whats happening in Riverside",
1145            end: "" //ends after this date
1146        },
1147    ];
1148
1149    function normalize(dateStr) {
1150        const ex = /^(0?[1-9]|1[0-2])[\/-](0?[1-9]|[12][0-9]|3[01])[\/-](\d{2}|\d{4})$/;
1151        let date = null;
1152        let m = ex.exec(dateStr);
1153        if (m) {
1154            const mon = Number( m[1] );
1155            const day = Number( m[2] );
1156            let year = m[3];
1157            if ( year.length == 2) {
1158                year = new Date().getFullYear().toString().slice(0, 2) + year;
1159            }
1160            date = new Date( Number( year ), mon - 1, day );
1161        }
1162        return date;
1163    }
1164
1165    function startOfToday() {
1166        const d = new Date();
1167        d.setHours(0, 0, 0, 0);
1168        return d;
1169    }
1170
1171    function hasStarted(startDate) {
1172        const sod = startOfToday();
1173        if (!startDate) return true;
1174        return startDate <= sod;
1175    }
1176
1177    function isPast(endDate) {
1178        const eod = startOfToday();
1179        if (!endDate) return false;
1180        return endDate < eod;
1181    }
1182    
1183    // show items when start date is today/past and end date is today/future
1184    const DATA = data.filter(item => {
1185        const start = normalize(item.start);
1186        const end = normalize(item.end);
1187        return hasStarted(start) && !isPast(end);
1188    });
1189</script>
1189
1190                
1190<script>
1191                    
1192                    var slide = document.querySelector(".carousel-inner");
1193
1194                    let first = true;
1195                    let str = '';
1196                    let i = 0;
1197                    DATA.forEach( item => {
1198                        if( item.web !== false ){
1199                            str += '<div class="item slides ';
1200                            if( first ) { str += 'active">'; }
1201                            else{ str += '">'; }
1202
1203                            const lazyAttrs = first ? '' : ' loading="lazy" decoding="async"';
1204                            first = false;
1205                            str += `<a href="${item.a}" target="_blank" rel="noopener noreferrer" aria-label="${item.alt}">`;
1206                            str += `<img class="img-responsive" src="${item.web}" alt="${item.alt}" width="1200" height="400"${lazyAttrs}>`
1207                            str += "</a></div>";
1208                            i++;
1209                        }
1210                    } );
1211                    // console.log( str );
1212
1213                    let indictator = document.querySelector( '.carousel-indicators' );
1214                    let s = '';
1215                    for( let j = 0; j < i; j++ ){
1216                        s+= `<li data-target="#bs-carousel" data-slide-to="${j}" class="${j == 0 ? 'active' : ''}" role="button" tabindex="0" aria-label="Go to slide ${j + 1}"></li>`
1217                    }
1218                    indictator.innerHTML = s;
1219                    slide.innerHTML = str;
1220
1221                </script>
1221
1222            </div>
1223        </div>
1224    </div>
1225</div>   
1226
1227<div class="col-sm-10 col-sm-offset-1" style="margin-top: 25px;">
1228	<h1 class="text-center">Welcome to the City of Riverside</h1>
1229</div>
1230
1231<div class="row hexQuickLinkRow" style="margin-top: 25px;">
1232	<div class="col-sm-12 col-md-10 col-md-offset-1 text-center">
1233		<div class="socials col-sm-12">
1234			
1235			<a class="quckLinkHexHome yellow" href="https://www.riversideca.gov/readyriverside">
1236				<div id="hexagon"> <i class="fa fa-exclamation-triangle" aria-hidden="true"></i>					<p>Ready Riverside</p>
1237				</div>
1238			</a>
1239
1240			<a class="quckLinkHexHome" href="https://www.riversideca.gov/311">
1241				<div id="hexagon"> <i class="fa fa-info-circle" aria-hidden="true"></i>					<p>311 Non-Emergency</p>
1242				</div>
1243			</a>
1244			<a class="quckLinkHexHome" href="https://riversideca.gov/awards">
1245				<div id="hexagon"><i class="fa fa-trophy" aria-hidden="true"></i>
1246					<p>City<br>Awards</p>
1247				</div>
1248			</a>
1249			<a class="quckLinkHexHome" href="https://riversideca.gov/jobs">
1250				<div id="hexagon"><i class="fa fa-briefcase" aria-hidden="true"></i>
1251					<p>Job<br>Opportunities</p>
1252				</div>
1253			</a>
1254			<a class="quckLinkHexHome" href="https://www.riversideca.gov/cityclerk/government-meetings">
1255				<div id="hexagon"><i class="fa fa-users" aria-hidden="true"></i>
1256					<p>Government Meetings</p>
1257				</div>
1258			</a>
1259			<a class="quckLinkHexHome" href="https://billpay.riversideca.gov/iwr/user/login.seam">
1260
1261				<div id="hexagon"><i class="fa fa-tint" aria-hidden="true"></i>
1262					<p>Pay Your Utility Bill</p>
1263				</div>
1264			</a>
1265
1266			<a class="quckLinkHexHome" href="https://riversideca.gov/utilities/power-outage-information">
1267
1268				<div id="hexagon"><i class="fa fa-bolt" aria-hidden="true"></i>
1269					<p>Utility Outages</p>
1270				</div>
1271			</a>
1272
1273            <!-- <a href="/vote" class="quckLinkHexHome">
1274                <div id="hexagon"><i class="fa-solid fa-check-to-slot" aria-hidden="true"></i>
1275                    <p>June 2 Ballot Information</p>
1276                </div>
1277            </a> -->
1278			
1279	
1280		</div>
1281	</div>
1282</div>
1283
1284
1285<div class="row homepage-press-section" style="background-color:#ecf0f1;">
1286	
1287	<div class="wide-container container homepage-press-title-wrap">
1288		<h2 class="text-center riversideHeader">What's Happening in Riverside</h2>
1289	</div>
1290
1291	<div class="homepage-press-bleed">
1292		<div class="wide-container container">
1293			<div class="col-sm-12 col-md-12 col-lg-8 col-lg-offset-2">
1294				<div class="view view-media-press-release view-id-media_press_release view-display-id-page_7 view-dom-id-1fe389da951f9da358e859a0838e3979">
1295					<div class="view-content">
1296						<div class="views-responsive-grid views-responsive-grid-horizontal views-columns-3">
1297							<div class="views-row-1">
1298								
1299								<div class="views-column-1 is-fallback" id="homepage-press-cards" aria-busy="true" aria-live="polite">
1300                                    <div class="views-field views-field-field-press-release-department">        
1301                                        <div class="field-content">
1302                                            <div class="">
1303<!-- fallback fig 1 (replaced by latest /media cards when JS loads) -->
1304<figure class="pressCard card-1"><a href="https://riversideca.gov/press/riverside-public-utilities-power-customers-benefit-greater-efficiency-improved-resiliency" aria-label="Riverside Public Utilities Power Customers to Benefit From Greater Efficiency, Improved Resiliency"><img typeof="foaf:Image" class="img-responsive" src="https://riversideca.gov/sites/default/files/styles/medium/public/press/img/ADED_Logo_.png?itok=9wl9lFZ8" width="220" height="147" alt="All Day Every Day RPU" loading="lazy" decoding="async"></a>  
1305              <div class="date">
1306              <span class="day">25</span>
1307              <span class="month">June</span></div>
1308    <figcaption>
1309      <h4 class="departmentCard">RPU</h4>
1310      <h4><p>Riverside Public Utilities Power Customers to Benefit From Greater Efficiency, Improved Resiliency</p></h4>
1311    </figcaption>
1312  </figure>
1313                                            </div>
1314                                        </div>
1315                                    </div>
1316
1317									<div class="views-field views-field-field-press-release-department">        
1318										<div class="field-content">
1319											<div class="">
1320<!-- fallback fig 2 -->
1321<figure class="pressCard card-1"><a href="https://riversideca.gov/press/fireworks-are-illegal-city-riverside-0" aria-label="Fireworks Are Illegal in the City of Riverside"><img typeof="foaf:Image" class="img-responsive" src="https://riversideca.gov/sites/default/files/styles/medium/public/press/img/Booms%20Burn%20Riverside_MediaCard.jpg?itok=qZoil22B" width="220" height="160" alt="All Fireworks are Illegal Booms Burns Riverside" loading="lazy" decoding="async"></a>  
1322              <div class="date">
1323              <span class="day">11</span>
1324              <span class="month">June</span></div>
1325    <figcaption>
1326      <h4 class="departmentCard">Fire</h4>
1327      <h4><p>Fireworks Are Illegal in the City of Riverside</p></h4>
1328    </figcaption>
1329  </figure>						
1330                                            </div> 		
1331                                        </div>
1332                                    </div>
1333                                    <div class="views-field views-field-field-press-release-department">        
1334                                        <div class="field-content">
1335                                            <div class="">
1336<!-- fallback fig 3 -->
1337<figure class="pressCard card-1"><a href="https://riversideca.gov/press/city-riverside%E2%80%99s-sustainability-leadership-continues-attract-national-investment-and" aria-label="City of Riverside’s Sustainability Leadership Continues to Attract National Investment and Recognition"><img typeof="foaf:Image" class="img-responsive" src="https://riversideca.gov/sites/default/files/styles/medium/public/press/img/BP_Social_YouthClimateActionFund_Background-Badge2.jpg?itok=fwv_XNTZ" width="220" height="92" alt="Youth Climate Action Fund" loading="lazy" decoding="async"></a>  
1338              <div class="date">
1339              <span class="day">21</span>
1340              <span class="month">May</span></div>
1341    <figcaption>
1342      <h4 class="departmentCard">Citywide</h4>
1343      <h4><p>City of Riverside’s Sustainability Leadership Continues to Attract National Investment and Recognition</p></h4>
1344    </figcaption>
1345  </figure>
1346                                            </div>
1347                                        </div> 			
1348                                    </div> 	
1349                                </div>
1350                            </div>
1351                        </div>
1352
1353                        <div class="clearfix" style="clear:both;"></div>
1354                        <div class="center-block homepage-press-cta">
1355                            <a href="/media" class="btn btn-hero2 btn-lg btn-block">View All Media</a>
1356                        </div>
1357                    </div>
1358                </div>
1359
1360<style>
1361/*
1362  Homepage press carousel layout. Keeps figure.pressCard / h4 caption structure
1363  so existing pressCard CSS (padding, date badge) still applies.
1364  Scoped overrides neutralize site float / fixed-height / min-width rules that
1365  break horizontal swipe on phones.
1366
1367  Mobile full-bleed (see @media max-width:767px):
1368  - Title stays in .homepage-press-title-wrap (.container padding intact).
1369  - .homepage-press-bleed uses width:100vw + margin-left:calc(50% - 50vw)
1370    so nesting depth / unknown gutters cannot leave side margins.
1371  - Inner .container / [class*="col-"] padding zeroed on that bleed path only.
1372  - Section overflow-x clips any 100vw scrollbar-gap so the page does not scroll.
1373  - Press cards use normal-flow captions (padding-top:0) so department + title
1374    stay visible under the image; site 188px h4 padding trick is desktop-only.
1375  - Critical: main.css sets figure.pressCard > a { position:absolute; inset:0 }.
1376    With height:auto that pulls the image out of flow, the figure collapses to
1377    the caption box, and the img paints over department/title. Mobile must
1378    force the image link back into normal flow.
1379*/
1380#homepage-press-cards {
1381  max-width: 100%;
1382  box-sizing: border-box;
1383}
1384.homepage-press-carousel {
1385  position: relative;
1386  display: flex;
1387  align-items: stretch;
1388  gap: 6px;
1389  width: 100%;
1390  max-width: 100%;
1391  margin: 0 auto 8px;
1392  box-sizing: border-box;
1393}
1394.homepage-press-track {
1395  display: flex;
1396  flex: 1 1 auto;
1397  min-width: 0;
1398  max-width: 100%;
1399  overflow-x: auto;
1400  overflow-y: hidden;
1401  scroll-snap-type: x mandatory;
1402  -webkit-overflow-scrolling: touch;
1403  overscroll-behavior-x: contain;
1404  touch-action: pan-x pinch-zoom;
1405  scroll-behavior: smooth;
1406  /* Desktop: exact 3-up — 2 gaps between 3 slides; no peek of card 4 */
1407  gap: 12px;
1408  padding: 4px 0 12px;
1409  outline: none;
1410  box-sizing: border-box;
1411  scrollbar-width: thin;
1412}
1413.homepage-press-track:focus {
1414  box-shadow: 0 0 0 3px #ecaa00;
1415}
1416.homepage-press-track:focus:not(:focus-visible) {
1417  box-shadow: none;
1418}
1419.homepage-press-track:focus-visible {
1420  box-shadow: 0 0 0 3px #ecaa00;
1421}
1422.homepage-press-slide {
1423  /* (100% - 2×12px gap) / 3 — three cards fill the track with no 4th-card peek */
1424  flex: 0 0 calc((100% - 24px) / 3);
1425  max-width: calc((100% - 24px) / 3);
1426  scroll-snap-align: start;
1427  scroll-snap-stop: normal;
1428  box-sizing: border-box;
1429  padding: 0;
1430  min-width: 0;
1431}
1432.homepage-press-slide .views-field,
1433.homepage-press-slide .field-content,
1434.homepage-press-slide .field-content > div {
1435  height: auto;
1436  max-width: 100%;
1437}
1438.homepage-press-slide figure.pressCard {
1439  float: none !important;
1440  display: block;
1441  position: relative;
1442  margin: 10px auto;
1443  width: 100%;
1444  max-width: 310px;
1445  min-width: 0 !important; /* site CSS uses min-width:220px */
1446  left: auto !important;
1447  box-sizing: border-box;
1448}
1449.homepage-press-slide figure.pressCard img {
1450  display: block;
1451  width: 100%;
1452  max-width: 100%;
1453  height: auto;
1454}
1455/* Full-card click overlay used by JS render; harmless if absent on fallbacks */
1456.homepage-press-slide figure.pressCard > a.pressCard-hitarea,
1457#homepage-press-cards figure.pressCard > a.pressCard-hitarea {
1458  position: absolute;
1459  left: 0;
1460  right: 0;
1461  top: 0;
1462  bottom: 0;
1463  z-index: 1;
1464  background: transparent;
1465}
1466.homepage-press-btn {
1467  flex: 0 0 auto;
1468  align-self: center;
1469  width: 44px;
1470  height: 44px;
1471  min-width: 44px;
1472  min-height: 44px;
1473  padding: 0;
1474  border: 2px solid #002856;
1475  border-radius: 4px;
1476  background: #fff;
1477  color: #002856;
1478  font-size: 28px;
1479  line-height: 1;
1480  cursor: pointer;
1481  z-index: 2;
1482  -webkit-tap-highlight-color: transparent;
1483  touch-action: manipulation;
1484}
1485.homepage-press-btn:hover,
1486.homepage-press-btn:focus {
1487  background: #002856;
1488  color: #fff;
1489  outline: none;
1490}
1491.homepage-press-btn:focus-visible {
1492  outline: 3px solid #ecaa00;
1493  outline-offset: 2px;
1494}
1495.homepage-press-btn:disabled {
1496  opacity: 0.35;
1497  cursor: not-allowed;
1498  background: #fff;
1499  color: #002856;
1500}
1501.homepage-press-btn span {
1502  display: block;
1503  transform: translateY(-1px);
1504}
1505/* Fallback (no JS): keep three static cards readable in a row */
1506#homepage-press-cards.is-fallback {
1507  display: flex;
1508  flex-wrap: wrap;
1509  justify-content: center;
1510  max-width: 100%;
1511}
1512#homepage-press-cards.is-fallback .views-field {
1513  flex: 0 1 310px;
1514  max-width: 100%;
1515}
1516#homepage-press-cards.is-fallback figure.pressCard {
1517  float: none !important;
1518  margin-left: auto;
1519  margin-right: auto;
1520  min-width: 0 !important;
1521  max-width: min(310px, 100%);
1522}
1523@media (max-width: 991px) {
1524  /* Exact 2-up: one gap between two slides */
1525  .homepage-press-slide {
1526    flex-basis: calc((100% - 12px) / 2);
1527    max-width: calc((100% - 12px) / 2);
1528  }
1529}
1530/*
1531  Phone / small tablet: true viewport full-bleed for carousel + CTA.
1532  Title remains in its own padded container sibling.
1533*/
1534@media (max-width: 767px) {
1535  .homepage-press-section {
1536    overflow-x: clip;
1537    overflow-x: hidden; /* fallback */
1538    box-sizing: border-box;
1539  }
1540  /* Nesting-agnostic breakout (works even if parent chain adds unknown padding) */
1541  .homepage-press-bleed {
1542    width: 100vw;
1543    max-width: 100vw;
1544    margin-left: calc(50% - 50vw);
1545    margin-right: 0;
1546    box-sizing: border-box;
1547    padding-left: env(safe-area-inset-left, 0px);
1548    padding-right: env(safe-area-inset-right, 0px);
1549  }
1550  .homepage-press-bleed > .wide-container.container,
1551  .homepage-press-bleed > .container {
1552    width: 100% !important;
1553    max-width: none !important;
1554    padding-left: 0 !important;
1555    padding-right: 0 !important;
1556  }
1557  .homepage-press-bleed [class*="col-"] {
1558    padding-left: 0 !important;
1559    padding-right: 0 !important;
1560    float: none;
1561    width: 100%;
1562    margin-left: 0 !important;
1563  }
1564  #homepage-press-cards {
1565    width: 100%;
1566    max-width: 100%;
1567    margin: 0;
1568    box-sizing: border-box;
1569  }
1570  .homepage-press-carousel {
1571    display: flex;
1572    flex-wrap: wrap;
1573    justify-content: center;
1574    align-items: flex-start;
1575    gap: 8px 12px;
1576    width: 100%;
1577    max-width: 100%;
1578    margin: 0 0 4px;
1579    padding: 0;
1580  }
1581  .homepage-press-track,
1582  #homepage-press-cards .homepage-press-track {
1583    flex: 1 1 100%;
1584    order: 1;
1585    width: 100%;
1586    padding: 4px 0 8px;
1587    /*
1588      overflow-x:auto forces overflow-y to compute to auto (not visible).
1589      Keep the track tall enough for image+caption so nothing clips.
1590    */
1591    overflow-x: auto !important;
1592    overflow-y: hidden !important;
1593    align-items: stretch;
1594    height: auto !important;
1595    max-height: none !important;
1596  }
1597  .homepage-press-slide,
1598  #homepage-press-cards .homepage-press-slide {
1599    /* ~90% viewport primary card + clear peek of next */
1600    flex-basis: 90%;
1601    max-width: 90%;
1602    padding: 0 6px;
1603    scroll-snap-align: center;
1604    scroll-snap-stop: always;
1605    height: auto !important;
1606    max-height: none !important;
1607    min-height: 0 !important;
1608    overflow: visible !important;
1609    align-self: flex-start;
1610  }
1611  .homepage-press-slide .views-field,
1612  .homepage-press-slide .field-content,
1613  .homepage-press-slide .field-content > div,
1614  #homepage-press-cards .views-field,
1615  #homepage-press-cards .field-content,
1616  #homepage-press-cards .field-content > div {
1617    height: auto !important;
1618    max-height: none !important;
1619    overflow: visible !important;
1620  }
1621  /*
1622    Beat main.css + homepage-css.inc fixed card chrome on phones.
1623    Dual selectors: carousel slides AND #homepage-press-cards fallbacks.
1624  */
1625  .homepage-press-bleed figure.pressCard,
1626  #homepage-press-cards figure.pressCard,
1627  .homepage-press-slide figure.pressCard {
1628    margin: 8px auto !important;
1629    float: none !important;
1630    width: 100% !important;
1631    max-width: 100% !important;
1632    min-width: 0 !important;
1633    left: auto !important;
1634    height: auto !important;
1635    min-height: 0 !important;
1636    max-height: none !important;
1637    overflow: visible !important;
1638    color: #333 !important;
1639    background-color: #fff !important;
1640  }
1641  /*
1642    ROOT CAUSE FIX: main.css figure.pressCard a { position:absolute; inset:0 }.
1643    Absolute link removes the image from flow. With height:auto the figure
1644    collapses to the caption, and the img paints over department + title.
1645    Put the image link back in normal flow on mobile (not the hitarea).
1646  */
1647  .homepage-press-bleed figure.pressCard > a:not(.pressCard-hitarea),
1648  #homepage-press-cards figure.pressCard > a:not(.pressCard-hitarea),
1649  .homepage-press-slide figure.pressCard > a:not(.pressCard-hitarea) {
1650    position: static !important;
1651    left: auto !important;
1652    right: auto !important;
1653    top: auto !important;
1654    bottom: auto !important;
1655    display: block !important;
1656    width: 100% !important;
1657    height: auto !important;
1658    z-index: auto !important;
1659  }
1660  /* Keep full-card click target; transparent overlay above image, under date */
1661  .homepage-press-bleed figure.pressCard > a.pressCard-hitarea,
1662  #homepage-press-cards figure.pressCard > a.pressCard-hitarea,
1663  .homepage-press-slide figure.pressCard > a.pressCard-hitarea,
1664  .homepage-press-slide figure.pressCard a.pressCard-hitarea {
1665    position: absolute !important;
1666    left: 0 !important;
1667    right: 0 !important;
1668    top: 0 !important;
1669    bottom: 0 !important;
1670    display: block !important;
1671    width: auto !important;
1672    height: auto !important;
1673    z-index: 1 !important;
1674    background: transparent !important;
1675  }
1676  .homepage-press-bleed figure.pressCard img,
1677  #homepage-press-cards figure.pressCard img,
1678  .homepage-press-slide figure.pressCard img {
1679    display: block !important;
1680    width: 100% !important;
1681    max-width: 100% !important;
1682    height: auto !important;
1683    max-height: 220px !important;
1684    object-fit: cover;
1685  }
1686  .homepage-press-bleed figure.pressCard .date,
1687  #homepage-press-cards figure.pressCard .date,
1688  .homepage-press-slide figure.pressCard .date {
1689    z-index: 2 !important;
1690  }
1691  .homepage-press-bleed figure.pressCard figcaption,
1692  #homepage-press-cards figure.pressCard figcaption,
1693  .homepage-press-slide figure.pressCard figcaption {
1694    position: relative !important;
1695    display: block !important;
1696    height: auto !important;
1697    min-height: 0 !important;
1698    max-height: none !important;
1699    margin-top: 0 !important;
1700    padding: 12px 14px 18px !important;
1701    overflow: visible !important;
1702    background-color: #fff !important;
1703  }
1704  .homepage-press-bleed figure.pressCard h4,
1705  #homepage-press-cards figure.pressCard h4,
1706  .homepage-press-slide figure.pressCard h4 {
1707    font-size: 16px !important;
1708    padding-top: 0 !important;
1709    margin: 0 0 6px !important;
1710    color: #002856 !important;
1711    word-wrap: break-word !important;
1712    overflow-wrap: break-word !important;
1713    white-space: normal !important;
1714    overflow: visible !important;
1715    text-overflow: clip !important;
1716    max-height: none !important;
1717    -webkit-line-clamp: unset !important;
1718    line-clamp: unset !important;
1719  }
1720  .homepage-press-bleed figure.pressCard h4.departmentCard,
1721  .homepage-press-bleed figure.pressCard .departmentCard,
1722  #homepage-press-cards figure.pressCard h4.departmentCard,
1723  #homepage-press-cards figure.pressCard .departmentCard,
1724  .homepage-press-slide figure.pressCard h4.departmentCard,
1725  .homepage-press-slide figure.pressCard .departmentCard {
1726    display: block !important;
1727    visibility: visible !important;
1728    opacity: 1 !important;
1729    padding-top: 0 !important;
1730    margin: 0 0 6px !important;
1731    color: #ecaa00 !important;
1732    font-weight: 600 !important;
1733  }
1734  .homepage-press-bleed figure.pressCard h4 p,
1735  #homepage-press-cards figure.pressCard h4 p,
1736  .homepage-press-slide figure.pressCard h4 p {
1737    margin-top: 0 !important;
1738    margin-bottom: 0 !important;
1739    padding: 0 !important;
1740    padding-top: 0 !important;
1741    color: #002856 !important;
1742    font-size: 16px !important;
1743    line-height: 1.35 !important;
1744    white-space: normal !important;
1745    overflow: visible !important;
1746    text-overflow: clip !important;
1747    max-height: none !important;
1748    -webkit-line-clamp: unset !important;
1749    line-clamp: unset !important;
1750  }
1751  /* Prev/Next below the track — never overlay the date badge */
1752  .homepage-press-btn {
1753    position: static;
1754    top: auto;
1755    left: auto;
1756    right: auto;
1757    transform: none;
1758    order: 2;
1759    width: 48px;
1760    height: 48px;
1761    min-width: 48px;
1762    min-height: 48px;
1763    font-size: 28px;
1764    background: #fff;
1765    box-shadow: none;
1766  }
1767  .homepage-press-btn:hover,
1768  .homepage-press-btn:focus {
1769    background: #002856;
1770  }
1771  .homepage-press-btn:disabled {
1772    background: #fff;
1773  }
1774  .homepage-press-cta {
1775    width: 100%;
1776    max-width: 100%;
1777    margin: 8px 0 4px;
1778    padding: 0 16px;
1779    box-sizing: border-box;
1780  }
1781  .homepage-press-cta .btn {
1782    display: block;
1783    width: 100%;
1784    max-width: 100%;
1785    box-sizing: border-box;
1786    font-size: 18px;
1787    line-height: 1.3;
1788    padding: 14px 20px;
1789  }
1790}
1791/* Small phones: swipe + scrollbar only (no arrow chrome) */
1792@media (max-width: 480px) {
1793  .homepage-press-btn {
1794    display: none;
1795  }
1796  .homepage-press-slide {
1797    flex-basis: 88%;
1798    max-width: 88%;
1799  }
1800  .homepage-press-cta {
1801    padding: 0 12px;
1802  }
1803}
1804@media (prefers-reduced-motion: reduce) {
1805  .homepage-press-track {
1806    scroll-behavior: auto;
1807  }
1808}
1809</style>
1810<script>
1811/*
1812==============================================================================
1813  HOMEPAGE PRESS CAROUSEL — /inc/cor-new/homepage-press-data.inc
1814==============================================================================
1815  Included from default.asp near the "What's Happening" press section.
1816
1817  PURPOSE
1818  -------
1819  Builds a horizontal carousel of homepage press cards from /media (or from
1820  manual overrides). Users can page with Previous/Next, keyboard arrows, or
1821  touch swipe (CSS scroll-snap). Roughly three cards show at a time on desktop.
1822
1823  WHERE TO EDIT
1824  -------------
1825  Edit ONLY the window.HOMEPAGE_PRESS config object below (autoFromMedia,
1826  count, mediaUrl, overrides). Do not change the IIFE unless you are updating
1827  fetch/render/carousel logic.
1828
1829  Also see:
1830    • default.asp → #homepage-press-cards (static fallback HTML + SSI include)
1831    • Local work-folder README.md (editors' summary; do not deploy README)
1832
1833------------------------------------------------------------------------------
1834  HOW AUTO + CAROUSEL MODE WORKS (default)
1835------------------------------------------------------------------------------
1836  1. Page loads with static <figure> fallbacks in default.asp (if JS fails).
1837  2. This script fetches mediaUrl (default "/media") same-origin.
1838  3. It parses figure.pressCard elements (latest first; duplicate hrefs skipped).
1839  4. It builds up to "count" cards (default 24 — a large set, not just 3):
1840       - overrides[i] as an object pins that slide index (0 = first card).
1841       - overrides[i] as null (or missing) is filled from /media.
1842       - Remaining feed items fill later slides until "count" is reached.
1843  5. Pinned stories are excluded from auto-fill so they are not duplicated.
1844  6. #homepage-press-cards is replaced with the carousel (track + buttons).
1845
1846------------------------------------------------------------------------------
1847  OVERRIDES IN CAROUSEL MODE
1848------------------------------------------------------------------------------
1849  Overrides still mean “pin this story at this slide index,” not “only show 3.”
1850
1851  • Pin the first slide, auto-fill the rest from /media:
1852      overrides: [ { href, title, ... }, null, null ]
1853      (You only need as many override entries as pins; extra nulls optional.)
1854
1855  • Pin slides 1 and 3 (indexes 0 and 2); all other slides from /media:
1856      overrides: [ { ... }, null, { ... } ]
1857
1858  • Fully manual carousel (no /media fetch) — only listed objects, in order:
1859      autoFromMedia: false,
1860      overrides: [ { ... }, { ... }, { ... } ]
1861
1862  • All automatic (default):
1863      autoFromMedia: true,
1864      overrides: [ null, null, null ],
1865      count: 24
1866
1867  Tip: Raising "count" shows more of /media in the carousel (swipe/page farther).
1868  Lowering it shortens the carousel. Overrides beyond count-1 are ignored.
1869
1870------------------------------------------------------------------------------
1871  HOW TO USE (visitors)
1872------------------------------------------------------------------------------
1873  Desktop: Previous / Next buttons, or focus the card strip and use ← →.
1874  Tablet (~≤991px): ~2 cards; phone (~≤767px): one primary card (~88–90% vw)
1875  + peek of next. Mobile full-bleed uses .homepage-press-bleed (100vw breakout
1876  + zeroed container/col padding). Prev/Next sit below the track on phones;
1877  hidden on ≤480px (swipe + thin scrollbar). “View All Media” matches bleed width.
1878
1879------------------------------------------------------------------------------
1880  FIELD REFERENCE (override objects)
1881------------------------------------------------------------------------------
1882  Required:
1883    href        Link to the press/media article (absolute or site-relative).
1884    title       Headline shown under the department label.
1885
1886  Strongly recommended:
1887    img         Image URL (medium style from Drupal is typical).
1888    alt         Image alt text (defaults to title if omitted).
1889    day         Day number as shown on the card (e.g. "22").
1890    month       Month abbreviation/name (e.g. "Jul" or "July").
1891    department  Department label (defaults to "News" if omitted; prefer real
1892                dept from /media .departmentCard when auto-filling).
1893
1894  Optional:
1895    width       Image width attribute (default 220).
1896    height      Image height attribute (default 160).
1897
1898  Config keys on window.HOMEPAGE_PRESS:
1899    autoFromMedia  true = fill empty slots from /media; false = overrides only.
1900    count          Max slides to show (default 24). Was “3 slots”; now carousel size.
1901    mediaUrl       Path/URL to fetch (default "/media").
1902    overrides      Sparse pin list: object or null at each slide index.
1903
1904------------------------------------------------------------------------------
1905  ACCESSIBILITY NOTES
1906------------------------------------------------------------------------------
1907  • Carousel has role="region", aria-roledescription="carousel".
1908  • Slides use role="group", aria-roledescription="slide", "n of N" labels.
1909  • Prev/Next buttons have accessible names; disabled at ends; ≥44×44px.
1910  • Track is keyboard-focusable (tabindex="0"); arrow keys page the strip.
1911  • prefers-reduced-motion disables smooth scrolling.
1912  • Captions keep h4 / .departmentCard so existing pressCard CSS still works.
1913  • Mobile CSS scopes overrides (float/min-width/fixed height) under the
1914    carousel only so /media page cards are unchanged.
1915
1916------------------------------------------------------------------------------
1917  TROUBLESHOOTING
1918------------------------------------------------------------------------------
1919  • Cards look outdated after publish:
1920      Hard-refresh the homepage. Confirm this include is deployed to
1921      /inc/cor-new/homepage-press-data.inc and default.asp still SSI-includes it.
1922
1923  • Fetch fails / network error / /media markup changes:
1924      Static fallback figures in default.asp remain; aria-busy becomes false.
1925      Update those fallbacks if you want fresher offline defaults.
1926
1927  • Override not showing:
1928      Check commas/quotes. Need at least href + title. Invalid objects ignored.
1929
1930  • Duplicate story:
1931      Auto-fill skips pinned hrefs. Pinning the same href twice still shows twice.
1932
1933  • Want a different source page:
1934      Change mediaUrl (must return HTML with figure.pressCard markup).
1935
1936  • Carousel feels too short/long:
1937      Adjust count (e.g. 12, 24, 36).
1938
1939  • Mobile: side margins / smushed cards / arrow over date badge:
1940      Full-bleed is .homepage-press-bleed in default.asp + this file’s CSS
1941      (100vw + calc(50% - 50vw), not a fixed -30px guess). Site .pressCard
1942      float / fixed height / min-width:220px are overridden inside the
1943      carousel only — do not globally change homepage-css.inc unless /media
1944      cards also need a change.
1945==============================================================================
1946*/
1947window.HOMEPAGE_PRESS = {
1948  autoFromMedia: true,
1949  /* Max slides in the carousel (large set from /media). Raise to show more. */
1950  count: 24,
1951  mediaUrl: "/media",
1952  overrides: [
1953    null, // slide 1 (index 0) — set an object here to pin this card
1954    null, // slide 2
1955    null  // slide 3 — further slides fill from /media automatically
1956
1957    // Example override (paste into a slot above, replace null):
1958    // {
1959    //   href: "https://www.riversideca.gov/press/example-story",
1960    //   img: "https://www.riversideca.gov/sites/default/files/styles/medium/public/press/img/example.jpg",
1961    //   alt: "Example story image",
1962    //   day: "22",
1963    //   month: "Jul",
1964    //   department: "Citywide",
1965    //   title: "Example story headline",
1966    //   width: 220,
1967    //   height: 160
1968    // }
1969  ]
1970};
1971
1972(function () {
1973  function escapeHtml(value) {
1974    return String(value == null ? "" : value)
1975      .replace(/&/g, "&amp;")
1976      .replace(/</g, "&lt;")
1977      .replace(/>/g, "&gt;")
1978      .replace(/"/g, "&quot;")
1979      .replace(/'/g, "&#39;");
1980  }
1981
1982  function decodeEntities(value) {
1983    var textarea = document.createElement("textarea");
1984    textarea.innerHTML = value == null ? "" : String(value);
1985    return textarea.value.replace(/\s+/g, " ").trim();
1986  }
1987
1988  function absoluteUrl(url) {
1989    try {
1990      return new URL(url, window.location.origin).href;
1991    } catch (e) {
1992      return url;
1993    }
1994  }
1995
1996  function normalizeCard(card) {
1997    if (!card || !card.href || !card.title) return null;
1998    var dept = (card.department == null ? "" : String(card.department)).replace(/\s+/g, " ").trim();
1999    return {
2000      href: absoluteUrl(card.href),
2001      img: absoluteUrl(card.img || ""),
2002      alt: card.alt || card.title,
2003      day: card.day || "",
2004      month: card.month || "",
2005      department: dept || "News",
2006      title: decodeEntities(card.title),
2007      width: card.width || 220,
2008      height: card.height || 160
2009    };
2010  }
2011
2012  function parseCardsFromMediaHtml(html) {
2013    var doc = new DOMParser().parseFromString(html, "text/html");
2014    var figures = doc.querySelectorAll("figure.pressCard");
2015    var cards = [];
2016    var seen = {};
2017    for (var i = 0; i < figures.length; i++) {
2018      var fig = figures[i];
2019      var link = fig.querySelector("a[href]");
2020      var img = fig.querySelector("img");
2021      var dayEl = fig.querySelector(".date .day");
2022      var monthEl = fig.querySelector(".date .month");
2023      var deptEl = fig.querySelector(".departmentCard") ||
2024        fig.querySelector("figcaption h4.departmentCard") ||
2025        fig.querySelector("h4.departmentCard");
2026      var titleEl = fig.querySelector("figcaption h4:not(.departmentCard) p") ||
2027        fig.querySelector("figcaption h4:not(.departmentCard)") ||
2028        fig.querySelector("figcaption p");
2029      if (!link || !titleEl) continue;
2030      var deptText = deptEl ? deptEl.textContent.replace(/\s+/g, " ").trim() : "";
2031      var card = normalizeCard({
2032        href: link.getAttribute("href"),
2033        img: img ? (img.getAttribute("src") || "") : "",
2034        alt: img ? (img.getAttribute("alt") || "") : "",
2035        day: dayEl ? dayEl.textContent.trim() : "",
2036        month: monthEl ? monthEl.textContent.trim() : "",
2037        department: deptText,
2038        title: titleEl.textContent,
2039        width: img ? img.getAttribute("width") : 220,
2040        height: img ? img.getAttribute("height") : 160
2041      });
2042      if (!card || seen[card.href]) continue;
2043      seen[card.href] = true;
2044      cards.push(card);
2045    }
2046    return cards;
2047  }
2048
2049  function renderCard(card) {
2050    var lazy = ' loading="lazy" decoding="async"';
2051    var href = escapeHtml(card.href);
2052    var title = escapeHtml(card.title);
2053    var dept = escapeHtml(card.department);
2054    return '' +
2055      '<div class="views-field views-field-field-press-release-department">' +
2056        '<div class="field-content"><div class="">' +
2057          '<figure class="pressCard card-1">' +
2058            '<a href="' + href + '" aria-label="' + title + '">' +
2059              '<img typeof="foaf:Image" class="img-responsive" src="' + escapeHtml(card.img) + '"' +
2060                ' width="' + escapeHtml(card.width) + '" height="' + escapeHtml(card.height) + '"' +
2061                ' alt="' + escapeHtml(card.alt) + '"' + lazy + '>' +
2062            '</a>' +
2063            '<div class="date">' +
2064              '<span class="day">' + escapeHtml(card.day) + '</span>' +
2065              '<span class="month">' + escapeHtml(card.month) + '</span>' +
2066            '</div>' +
2067            '<figcaption>' +
2068              '<h4 class="departmentCard">' + dept + '</h4>' +
2069              '<h4><p>' + title + '</p></h4>' +
2070            '</figcaption>' +
2071            /* Transparent full-card hit target (desktop absolute <a> is static on mobile) */
2072            '<a class="pressCard-hitarea" href="' + href + '" tabindex="-1" aria-hidden="true"></a>' +
2073          '</figure>' +
2074        '</div></div>' +
2075      '</div>';
2076  }
2077
2078  function mergeCards(config, feedCards) {
2079    var maxCount = config.count || 24;
2080    var overrides = config.overrides || [];
2081    var slots = [];
2082    var i;
2083
2084    if (config.autoFromMedia === false) {
2085      for (i = 0; i < overrides.length; i++) {
2086        var manual = normalizeCard(overrides[i]);
2087        if (manual) slots.push(manual);
2088      }
2089      return slots.slice(0, maxCount);
2090    }
2091
2092    for (i = 0; i < maxCount; i++) {
2093      slots[i] = i < overrides.length ? normalizeCard(overrides[i]) : null;
2094    }
2095
2096    var used = {};
2097    for (i = 0; i < slots.length; i++) {
2098      if (slots[i]) used[slots[i].href] = true;
2099    }
2100
2101    var feedIndex = 0;
2102    for (i = 0; i < slots.length; i++) {
2103      if (slots[i]) continue;
2104      while (feedIndex < feedCards.length && used[feedCards[feedIndex].href]) {
2105        feedIndex++;
2106      }
2107      if (feedIndex < feedCards.length) {
2108        slots[i] = feedCards[feedIndex];
2109        used[feedCards[feedIndex].href] = true;
2110        feedIndex++;
2111      }
2112    }
2113
2114    return slots.filter(Boolean);
2115  }
2116
2117  function prefersReducedMotion() {
2118    return window.matchMedia && window.matchMedia("(prefers-reduced-motion: reduce)").matches;
2119  }
2120
2121  function pageScrollAmount(track) {
2122    if (!track) return 0;
2123    var slide = track.querySelector(".homepage-press-slide");
2124    if (!slide) return Math.max(track.clientWidth * 0.9, 200);
2125    var styles = window.getComputedStyle(track);
2126    var gap = parseFloat(styles.columnGap || styles.gap) || 0;
2127    /* Page by ~one viewport of slides (desktop ≈ 3; phone ≈ 1 with peek). */
2128    var slideWidth = slide.offsetWidth + gap;
2129    if (!slideWidth) return Math.max(track.clientWidth * 0.85, 160);
2130    var perPage = Math.max(1, Math.round(track.clientWidth / slideWidth));
2131    return slideWidth * perPage;
2132  }
2133
2134  function updateCarouselControls(track, prevBtn, nextBtn) {
2135    if (!track || !prevBtn || !nextBtn) return;
2136    var maxScroll = Math.max(0, track.scrollWidth - track.clientWidth);
2137    var left = track.scrollLeft;
2138    var epsilon = 4;
2139    prevBtn.disabled = left <= epsilon;
2140    nextBtn.disabled = left >= maxScroll - epsilon;
2141  }
2142
2143  function scrollTrackBy(track, direction) {
2144    if (!track) return;
2145    var amount = pageScrollAmount(track) * direction;
2146    var behavior = prefersReducedMotion() ? "auto" : "smooth";
2147    if (typeof track.scrollBy === "function") {
2148      track.scrollBy({ left: amount, behavior: behavior });
2149    } else {
2150      track.scrollLeft += amount;
2151    }
2152  }
2153
2154  function initCarousel(root) {
2155    var carousel = root.querySelector(".homepage-press-carousel");
2156    var track = root.querySelector(".homepage-press-track");
2157    var prevBtn = root.querySelector(".homepage-press-prev");
2158    var nextBtn = root.querySelector(".homepage-press-next");
2159    if (!carousel || !track || !prevBtn || !nextBtn) return;
2160
2161    function refresh() {
2162      updateCarouselControls(track, prevBtn, nextBtn);
2163    }
2164
2165    prevBtn.addEventListener("click", function () {
2166      scrollTrackBy(track, -1);
2167    });
2168    nextBtn.addEventListener("click", function () {
2169      scrollTrackBy(track, 1);
2170    });
2171
2172    track.addEventListener("scroll", refresh, { passive: true });
2173    track.addEventListener("keydown", function (event) {
2174      if (event.key === "ArrowLeft") {
2175        event.preventDefault();
2176        scrollTrackBy(track, -1);
2177      } else if (event.key === "ArrowRight") {
2178        event.preventDefault();
2179        scrollTrackBy(track, 1);
2180      } else if (event.key === "Home") {
2181        event.preventDefault();
2182        track.scrollTo({ left: 0, behavior: prefersReducedMotion() ? "auto" : "smooth" });
2183      } else if (event.key === "End") {
2184        event.preventDefault();
2185        track.scrollTo({
2186          left: track.scrollWidth,
2187          behavior: prefersReducedMotion() ? "auto" : "smooth"
2188        });
2189      }
2190    });
2191
2192    window.addEventListener("resize", refresh);
2193    refresh();
2194    /* After images load, scrollWidth can change — refresh once. */
2195    window.setTimeout(refresh, 400);
2196  }
2197
2198  function paint(cards) {
2199    var mount = document.getElementById("homepage-press-cards");
2200    if (!mount) return;
2201    if (!cards.length) return;
2202
2203    var total = cards.length;
2204    var slides = cards.map(function (card, index) {
2205      return '' +
2206        '<div class="homepage-press-slide" role="group" aria-roledescription="slide" ' +
2207          'aria-label="' + escapeHtml((index + 1) + " of " + total) + '">' +
2208          renderCard(card) +
2209        '</div>';
2210    }).join("");
2211
2212    mount.classList.remove("is-fallback");
2213    mount.innerHTML = '' +
2214      '<div class="homepage-press-carousel" role="region" aria-roledescription="carousel" ' +
2215        'aria-label="What\'s Happening press stories">' +
2216        '<button type="button" class="homepage-press-btn homepage-press-prev" ' +
2217          'aria-label="Previous press stories" aria-controls="homepage-press-track">' +
2218          '<span aria-hidden="true">&#8249;</span>' +
2219        '</button>' +
2220        '<div class="homepage-press-track" id="homepage-press-track" tabindex="0">' +
2221          slides +
2222        '</div>' +
2223        '<button type="button" class="homepage-press-btn homepage-press-next" ' +
2224          'aria-label="Next press stories" aria-controls="homepage-press-track">' +
2225          '<span aria-hidden="true">&#8250;</span>' +
2226        '</button>' +
2227      '</div>';
2228    mount.setAttribute("aria-busy", "false");
2229    initCarousel(mount);
2230  }
2231
2232  function loadHomepagePress() {
2233    var config = window.HOMEPAGE_PRESS || { autoFromMedia: true, count: 24, overrides: [] };
2234    var mount = document.getElementById("homepage-press-cards");
2235    if (!mount) return;
2236
2237    if (config.autoFromMedia === false) {
2238      paint(mergeCards(config, []));
2239      return;
2240    }
2241
2242    var url = config.mediaUrl || "/media";
2243    fetch(url, { credentials: "same-origin" })
2244      .then(function (res) {
2245        if (!res.ok) throw new Error("Media fetch failed: " + res.status);
2246        return res.text();
2247      })
2248      .then(function (html) {
2249        paint(mergeCards(config, parseCardsFromMediaHtml(html)));
2250      })
2251      .catch(function () {
2252        // Keep the static fallback markup already in the page.
2253        if (mount) {
2254          mount.classList.add("is-fallback");
2255          mount.setAttribute("aria-busy", "false");
2256        }
2257      });
2258  }
2259
2260  if (document.readyState === "loading") {
2261    document.addEventListener("DOMContentLoaded", loadHomepagePress);
2262  } else {
2263    loadHomepagePress();
2264  }
2265})();
2266</script>
2266
2267
2268			</div>
2269		</div>
2270	</div>
2271</div> 
2272
2273
2274
2275
2276	<div class="container">
2277
2278		<header role="banner" id="page-header">
2279
2280		</header> <!-- /#page-header -->
2281
2282		<div class="row">
2283
2284
2285			<section class="col-sm-12">	
2286
2287
2288
2289		<!--<div class="row welcome-message">
2290			<div class="col-sm-12">
2291				<h1 class="text-center" style="color:#0e2f51">Welcome to the City of Riverside</h1>
2292				 <div class="col-md-10 col-md-offset-1">
2293					<p class="text-center">The community of Riverside offers a vibrant lifestyle for both your personal and professional life. Between
2294					thriving education institutions for all ages, a variety of parks and spaces, and its commitment to culture and the arts.</p>
2295					<p class="text-center">Experience the many wonderful restaurants, outdoor areas, and entertainment venues Riverside has to offer. Whether you're
2296					looking for a night out or a weekend trip, you'll never be without something to do. Riverside is truly an extraordinary place to live.</p>
2297				</div> 
2298			</div>
2299		</div>-->
2300
2301		<div class="row hexDropRow">
2302			<div class="col-sm-4 col-md-3">
2303				<div class="hexDropDown">
2304					<div class="home-link" style="background-color:#e6e8e9;padding:25px;" role="button" tabindex="0" data-toggle="collapse" data-target="#apply-fors" aria-expanded="false" aria-controls="apply-fors">
2305						<p class="text-center"><img src="https://www.riversideca.gov/images/corweb-homepage/apply-for-logo1.png" alt="Apply For" width="80" height="80" loading="lazy" decoding="async"/></p>
2306						<h3 class="text-center" style="color:#0e2f51">APPLY FOR A...</h3>
2307						<p class="text-center">Whether you're looking to apply for a library card, license, passport, or permit you'll find it below.</p>
2308					</div>
2309					<div id="apply-fors" class="collapse home-link-links">
2310						<ul style="padding-left:25px;">
2311							<li class="marginBottomTen marginTopTen"><a href="https://www.riversideca.gov/cedd/building-safety/building-safety-services/permits">Building Permit</a></li>
2312							<li class="marginBottomTen"><a href="/finance/license.asp">Business License</a></li>
2313							<li class="marginBottomTen"><a href="https://www.riversidegotransit.com/">Discounted Bus Pass</a></li>
2314							<li class="marginBottomTen"><a href="https://www.riversideca.gov/human/employee-hub/internships">Internship Opportunities</a></li>
2315							<li class="marginBottomTen"><a href="http://cityjobs.riversideca.gov">Jobs</a></li>
2316							<li class="marginBottomTen"><a href="https://read.riversideca.gov/patronaccount/selfregister.aspx" target="_blank">Library Card</a></li>
2317							<li class="marginBottomTen"><a href="https://www.riversideca.gov/cityclerk//cityclerk/passport">Passport</a></li>
2318							<li class="marginBottomTen"><a href="https://riversideca.gov/publicworks/other-services/animal-services">Pet License</a></li>
2319							<li class="marginBottomTen"><a href="https://www.riversideca.gov/publicworks/engineering/engineering/public-works-permitting">Public Works Permit</a></li>
2320							<li class="marginBottomTen"><a href="https://www.riversideca.gov/utilities/residents/rebates.asp">Rebate</a></li>
2321							<li class="marginBottomTen"><a href="https://riversideca.gov/cedd/arts-cultural-affairs/forms-permits/special-events">Special Event Permit</a></li>
2322							<li class="marginBottomTen"><a href="https://www.riversideca.gov/human/volunteer">Volunteer Opportunities</a></li>
2323						</ul>
2324					</div>
2325					<button style="height:26px;background-color:#f7b602;width:100%;position:relative;border:none;" type="button" data-toggle="collapse" data-target="#apply-fors" aria-label="Expand Apply for a options" aria-controls="apply-fors"><i style="color:white;font-size:18px;" class="fa fa-caret-down" aria-hidden="true"></i></button>
2326				</div>
2327			</div>
2328			<div class="col-sm-4 col-md-3">
2329				<div class="hexDropDown">
2330					<div class="home-link" style="background-color:#e6e8e9;padding:25px;" role="button" tabindex="0" data-toggle="collapse" data-target="#pay-my" aria-expanded="false" aria-controls="pay-my">
2331						<p class="text-center"><img src="https://www.riversideca.gov/images/corweb-homepage/pay-my-logo1.png" alt="Pay My" width="80" height="80" loading="lazy" decoding="async"/></p>
2332						<h3 class="text-center" style="color:#0e2f51">PAY MY...</h3>
2333						<p class="text-center">Whether you're looking to pay for a Library Fees, business license, or a utility bill you'll find it below.</p>
2334					</div>
2335					<div id="pay-my" class="collapse home-link-links">
2336						<ul style="padding-left:25px;">
2337							<li class="marginBottomTen marginTopTen"><a href="https://arpay.riversideca.gov">AR Invoice</a></li>
2338							<li class="marginBottomTen"><a href="https://riverside.hdlgov.com/">Business License Renewal</a></li>
2339							<li class="marginBottomTen"><a href="http://www.riversideca.gov/fire/payment/">Fire Department Fees</a></li>
2340							<li class="marginBottomTen"><a href="https://pdalarm.riversideca.gov/">False Alarm Penalties</a></li>
2341							<li class="marginBottomTen"><a href="https://spov2.comprisesmartpay.com/?ID=RiversideCASP">Library Fees &amp; Fines</a></li>
2342							<li class="marginBottomTen"><a href="https://apm.activecommunities.com/riversideprcsd">Parks &amp; Recreation Activities</a></li>
2343							<li class="marginBottomTen"><a href="https://riverside.citationinfo.com/CitationSearch.aspx" target="_blank">Parking Citation </a></li>
2344							<li class="marginBottomTen"><a href="https://riversidecounty.docupet.com/en_US/">Pet License</a></li>
2345							<li class="marginBottomTen"><a href="/finance/licensetot.asp">Transient Occupancy Tax (T.O.T.)</a></li>
2346							<li class="marginBottomTen"><a href="https://billpay.riversideca.gov/iwr/user/login.seam">Utility Bill</a></li>
2347
2348						</ul>
2349					</div>
2350					<button style="height:26px;background-color:#f7b602;width:100%;position:relative;border:none;" type="button" data-toggle="collapse" data-target="#pay-my" aria-label="Expand Pay my options" aria-controls="pay-my"><i style="color:white;font-size:18px;" class="fa fa-caret-down" aria-hidden="true"></i></button>
2351				</div>
2352			</div>
2353
2354			<div class="col-sm-4 col-md-3">
2355				<div class="hexDropDown">
2356					<div class="home-link" style="background-color:#e6e8e9;padding:25px;" role="button" tabindex="0" data-toggle="collapse" data-target="#report-a" aria-expanded="false" aria-controls="report-a">
2357						<p class="text-center"><img src="https://www.riversideca.gov/images/corweb-homepage/report-a-logo1.png" alt="Report A" width="80" height="80" loading="lazy" decoding="async"/></p>
2358						<h3 class="text-center" style="color:#0e2f51">REPORT A...</h3>
2359						<p class="text-center">Whether you're looking to report a crime in progress, graffiti, or street light outage you'll find it below.</p>
2360					</div>
2361					<div id="report-a" class="collapse home-link-links">
2362						<ul style="padding-left:25px;">
2363							<li class="marginBottomTen"><a href="https://riversideca.gov/code/">Code Violation</a></li>
2364							<li class="marginBottomTen marginTopTen"> <a href="https://www.riversideca.gov/rpd/about-contact/administration/support-services/dispat
2364ch">Crime in progress</a></li>
2365							<li class="marginBottomTen"><a href="https://crmweb.riversideca.gov/">Graffiti</a></li>
2366							<li class="marginBottomTen"><a href="https://www.riversideca.gov/utilities/residents/contact-us">Street Light Outage</a></li>
2367						</ul>
2368					</div>
2369					<button style="height:26px;background-color:#f7b602;width:100%;position:relative;border:none;" type="button" data-toggle="collapse" data-target="#report-a" aria-label="Expand Report a options" aria-controls="report-a"><i style="color:white;font-size:18px;" class="fa fa-caret-down" aria-hidden="true"></i></button>
2370				</div>
2371			</div>
2372
2373			<div class="col-sm-4 col-md-3">
2374				<div class="hexDropDown">
2375					<div class="home-link" style="background-color:#e6e8e9;padding:25px;" role="button" tabindex="0" data-toggle="collapse" data-target="#how-do" aria-expanded="false" aria-controls="how-do">
2376						<p class="text-center"><img src="https://www.riversideca.gov/images/corweb-homepage/how-do-i-logo1.png" alt="How Do I" width="80" height="80" loading="lazy" decoding="async"/></p>
2377						<h3 class="text-center" style="color:#0e2f51">HOW DO I...</h3>
2378						<p class="text-center">Whether you're looking to volunteer or contact a representative you'll find it below.</p>
2379					</div>
2380					<div id="how-do" class="collapse home-link-links">
2381						<ul style="padding-left:25px;">                 
2382							<li class="marginBottomTen"><a href="https://riversideca.legistar.com/Calendar.aspx">All Meeting Agendas</a></li>
2383							<li class="marginBottomTen"><a href="https://www.riversideca.gov/human/employee-hub/internships">Apply for an Internship</a></li>
2384							<li class="marginBottomTen"><a href="https://www.riversideca.gov/citymanager/lgbtq-liaison">Contact LGBTQ Liaison</a></li>
2385							<li class="marginBottomTen"><a href="http://www.riversideca.gov/council/">Contact My Council Representative</a></li>
2386							<li class="marginBottomTen"><a href="https://riversideca.gov/mayor/contact">Contact the Mayor</a></li>
2387							<li class="marginBottomTen"><a href="https://cityofriverside.maps.arcgis.com/apps/webappviewer/index.html?id=11ce33add2f9410d8d79b03bb8656722">Find My Ward</a></li>
2388							<li class="marginBottomTen"><a href="https://riversideca.gov/finance/budget.asp">Learn about the Budget</a></li>
2389							<li class="marginBottomTen"><a href="https://riversideca.gov/transparency/records/">Make Public Records Request</a></li>
2390							<li class="marginBottomTen"><a href="https://www.riversideca.gov/generalservices/commission-disabilities/request-for-accommodation">Make An ADA Complaint</a></li>
2391							<li class="marginBottomTen"><a href="https://riversideca.gov/park_rec/programs-sports/seniors/special-transportation-division">Secure Special Transportation</a></li>
2392							<li class="marginBottomTen"><a href="http://crmweb.riversideca.gov/">Schedule a Bulky Item Pickup</a></li>
2393							<li class="marginBottomTen"><a href="https://riversideca.gov/utilities/residents/startstop-service/about" target="_blank">Start Residential Utility Services</a></li>
2394							<li class="marginBottomTen"><a href="https://www.riversideca.gov/cityclerk/online-documents/claims-damages">Submit a Claim for Damages</a></li>
2395							<li class="marginBottomTen"><a target="_blank" href="https://awardrecognition.riversideca.gov/">Submit a request for either a proclamation or certificate</a></li>
2396							<li class="marginBottomTen"><a target="_blank" href="http://riversideca.gov/transparency/results/">View Strategic Goals & Performance Measure</a></li>
2397							<li class="marginBottomTen"><a href="http://www.riversideca.gov/residents/get-involved">Volunteer</a></li>
2398
2399						</ul>
2400					</div>
2401					<button style="height:26px;background-color:#f7b602;width:100%;position:relative;border:none;" type="button" data-toggle="collapse" data-target="#how-do" aria-label="Expand How do I options" aria-controls="how-do"><i style="color:white;font-size:18px;" class="fa fa-caret-down" aria-hidden="true"></i></button>
2402				</div>
2403			</div>  
2404		</div> <!-- End of Quick Links Row -->
2405
2406
2407
2408
2409		
2410		
2411	</section>
2412
2413	
2414</div>
2415</div>
2416<div class="row socialRow" id="press-releases" >
2417	<div class="container">
2418		<div class="col-md-12" style="margin-top:20px;margin-bottom:20px;">
2419			<h2 class="text-center" >Connect with us</h2>
2420		</div>
2421		<div class="col-sm-6">
2422			<div class="card" style="margin-top: 0px;">
2423				<div class="card-image" style="height: 200px;">
2424					<img class="img-responsive" src="https://www.riversideca.gov/images/RiversideVistortsBureau1388.jpg" alt="Riverside City Hall and downtown Riverside" width="555" height="200" loading="lazy" decoding="async">
2425
2426				</div>
2427
2428				<div class="card-content">
2429					<h3 class="text-center" style="color:#002856; margin-top: 0px;">Riverside City Hall</h3>
2430					<h5>
2431						<i class="fa fa-map-marker fa-lg" aria-hidden="true"></i>
2432						<a href="https://goo.gl/maps/WLvUKt2qSbG2" target="_blank" rel="noopener noreferrer"> 3900 Main St, Riverside, CA 92522</a>
2433					</h5>
2434					<h5>
2435						<i class="fa fa-phone fa-lg" aria-hidden="true"> </i> <a href="/who-call-city-hall" target="_blank" rel="noopener noreferrer"> Who to Call at City Hall</a>
2436					</h5>
2437					<h5>
2438						<!-- <i class="fa fa-clock-o fa-lg" aria-hidden="true"></i>  Monday - Friday 7:30 AM – 5:00 PM --> <a href="https://www.riversideca.gov/services/online-services">Online Services</a>
2439					</h5>
2440
2441
2442				</div>
2443			</div>      
2444		</div>
2445		<div class="col-sm-6">
2446			<!--<a class="twitter-timeline" href="https://twitter.com/riversidecagov"  data-chrome="nofooter" data-link-color="#002856" data-border-color="#ecaa00" data-tweet-limit="1">Tweets by riversidecagov</a> 
2446<script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>
2446 -->
2447			<div id="curator-feed-homepage-city-feed"><a href="https://curator.io" target="_blank" rel="noopener noreferrer" class="crt-logo crt-tag">Powered by Curator.io</a></div>
2448		</div>
2449	</div>
2450</div>
2451
2452<div class="row">
2453</div>
2454
2455
2456<!-- The Javascript can be moved to the end of the html page before the </body> tag -->
2457<script type="text/javascript">
2458	/* curator-feed-homepage-city-feed */
2459	(function(){
2460		var i, e, d = document, s = "script";i = d.createElement("script");i.async = 1;i.charset = "UTF-8";
2461		i.src = "https://cdn.curator.io/published/7a281da6-8ed6-4e46-8fdc-ecde41a0f445.js";
2462		e = d.getElementsByTagName(s)[0];e.parentNode.insertBefore(i, e);
2463	})();
2464</script>
2464
2465
2466
2467
2468
2469
2470<script type="text/javascript">
2471	(function ($) { 
2472		$(document).ready(function(){
2473			var images = ['Header-one.jpg', 'Header-two.jpg', 'Header-three.jpg', 'Header-four.jpg', 'Header-five.jpg'];
2474			$('#homepage-slider').css({'background-image': 'url(/sites/all/themes/city_of_riverside/images/' + images[Math.floor(Math.random() * images.length)] + ')'});
2475		});  
2476	});	
2477</script>
2477
2478<!--Hard Coded Footer-->		
2479<footer class="footer" id="footer">
2480<div class="container">
2481	<img id="footer-raincross" src="/sites/all/themes/city_of_riverside/images/raincross-orange.png" alt="City of Riverside Raincross" width="25" height="27" loading="lazy" decoding="async">	
2482  <div class="row">
2483	<div class="col-md-3">
2484		<h4><a href="https://www.riversideca.gov/">Home</a></h4>
2485        <ul>
2486            <li><a href="/residents">Residents</a></li>
2487            <li><a href="/government">Government</a></li>
2488            <li><a href="/business">Business</a></li>
2489            <li><a href="/services">Services</a></li>
2490            <li><a href="/media">Media</a></li>
2491            <li><a href="/connect">Connect</a></li>
2492            <li><a href="/jobs">Jobs</a></li>
2493            <li><a href="/human/volunteer">Volunteer</a></li>
2494        </ul>
2495	</div>
2496	<div class="col-md-3">
2497		<h4>Popular</h4>
2498        <ul>
2499            <li><a href="/government">City Departments</a></li>
2500            <li><a href="https://www.riversideca.gov/mayor">Mayor</a></li>
2501            <li><a href="https://www.riversideca.gov/council">City Council</a></li>
2502            <li><a href="https://www.riversideca.gov/library">Library</a></li>
2503            <li><a href="https://www.riversideca.gov/museum">Museum</a></li>
2504            <li><a href="https://www.riversideca.gov/park_rec">Parks and Recreation</a></li>
2505            <li><a href="https://www.riversideca.gov/utilities">Public Utilities</a></li>
2506        </ul>
2507	</div>
2508	<div class="col-md-3">
2509		<h4><a href="/gov-whotocall.asp">Contact</a></h4>
2510        <ul>
2511            <li><a href="/who-call-city-hall">Who to Call at City Hall</a></li>
2512            <li><a href="https://crmweb.riversideca.gov">311 Services</a></li>
2513            <li><a href="/cdn-cgi/l/email-protection#a2c1c3cecec1c7ccd6c7d0e2d0cbd4c7d0d1cbc6c7c1c38cc5cdd4">Email Call Center</a></li>
2514        </ul>
2515	</div>
2516	<div class="col-md-3">
2517		<h4>Resources</h4>
2518        <ul>
2519            <li><a href="https://library.municode.com/ca/riverside/codes/code_of_ordinances">Charter and Municipal Code</a></li>							
2520            <li><a href="https://www.riversideca.gov/awards.asp">Our Awards</a></li>
2521            <li><a href="/media">Media Page</a></li>
2522            <li><a href="https://www.riversideca.gov/calendar">Community Calendar</a></li>
2523            <li><a href="/city-apps">Mobile Apps</a></li>
2524            <li><a href="https://www.riversideca.gov/transparency">EngageRiverside</a></li>
2525            <li><a href="https://riversideca.gov/finance/investor/monthlyreports.asp" target="_blank">Assembly Bill 2854 Compliance</a></li>
2526        </ul>
2527	</div>
2528  </div><!--end row-->
2529<p>&nbsp;</p>
2530
2531  <div class="row" style="padding-bottom:10px">
2532        <div class="col-md-6">
2533                <img src="/sites/all/themes/city_of_riverside/images/cor-logo-30x30.png" alt="City of Riverside Logo" width="30" height="30" loading="lazy" decoding="async">&nbsp;&nbsp;<a href="https://www.riversideca.gov/">City of Riverside</a>&nbsp;&nbsp;|&nbsp;&nbsp;<a href="https://www.exploreriverside.com">Explore Riverside</a>
2534		</div>
2535		<div class="col-md-3">
2536				<style>
2537						    #google_translate_element select{
2538							width:180px;
2539							}
2540						</style>
2541						<div id="google_translate_element" style="padding-left:10px;padding-right:10px;"></div>
vendor: 108 bytes, line 2541
2541<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
2541<script type="text/javascript">
2542							function googleTranslateElementInit() {
2543							  new google.translate.TranslateElement({pageLanguage: 'en', gaTrack: true, gaId: 'UA-10797445-1'}, 'google_translate_element');
2544							}
2545							</script>
2545
2546							
2546<script type="text/javascript" src="https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
2546
2547							
2548							 
2548<script type="text/javascript">// <![CDATA[
2549function googleTranslateElementInit() {
2550new google.translate.TranslateElement({pageLanguage: 'en', layout: google.translate.TranslateElement.InlineLayout.SIMPLE}, 'google_translate_element');
2551}
2552// ]]></script>
2552
2553        </div>
2554        <div class="col-md-3">
2555			<a class="space first" href="https://www.facebook.com/CityofRiverside" target="_blank" aria-label="Facebook"><i class="fa fa-facebook fa-2x" aria-hidden="true"></i></a>
2556			<a class="space" href="https://twitter.com/riversidecagov" target="_blank" aria-label="Twitter"><i class="fa-brands fa-square-x-twitter" aria-hidden="true" style="font-size: 2em; color: #fff;"></i></a> 
2557			<a class="space" href="https://instagram.com/cityofriverside" target="_blank" aria-label="Instagram"><i class="fa fa-instagram fa-2x" aria-hidden="true"></i></a> 
2558            <a class="space last" href="https://www.youtube.com/cityofriverside" target="_blank" aria-label="YouTube"><i class="fa fa-youtube fa-2x" aria-hidden="true"></i></a> 
2559			<a class="space last" target="_blank" href="https://member.everbridge.net/index/453003085614598#/login" style="margin-left:15px" aria-label="Riverside Alerts" rel="noopener noreferrer"><img src="/sites/all/themes/city_of_riverside/images/Riverside Alert_Logo_White_27x32.png" alt="" width="27" height="32" style="margin-top:-12px" aria-hidden="true"></a>
2560    
2561        </div>
2562         
2563
2564  </div>
2565
2566</div><!-- end container -->
2567  <div class="row" style="margin-left: 0px; margin-right: 0px;">
2568  	  	<div style="background-color: #111; border-top: solid 1px #666;">
2569		<div class="layout font10 footer-container container" style="color: #999;">
2570            <div style="text-align:center; padding-top: 10px; height:auto; padding-bottom:10px; ">Copyright © 2016 - 2026 City of Riverside | <a href="https://riversideca.gov/accessibility-statement">Accessibility Policy</a> | <a href="https://riversideca.gov/website-disclaimer-limit-liability">Website Disclaimer</a> | <a href="https://riversideca.gov/privacy-policy">Privacy Policy</a>
2571			<!--
2572			<div class="visible-xs visible-sm" style="padding-top:8px">
2573				<img class="center-image" border="0" style="padding-right:8px;" src="/images/facebook-logo.png">
2574				<img class="center-image" border="0" style="padding-right:8px;" src="/images/twitter-logo.png">
2575				<img class="center-image" border="0" style="padding-right:8px;" src="/images/youtube-logo.png">
2576				<img class="center-image" border="0" style="padding-right:8px;" src="/images/linkedin-logo.png">
2577				<img class="center-image" border="0" style="padding-right:8px;" src="/images/rss-logo.png">
2578			</div>
2579			-->
2580		</div>
2581	</div>
2582
2583
2584
2585<!--
2585<script type="text/javascript" src="https://www.riversideca.gov/js/custom.js"></script>
2585-->
2586
2587<script defer type="text/javascript" src="/js/jquery-3.4.1.min.js"></script>
vendor: 2 bytes, line 2587
2587
2588<script defer type="text/javascript" src="/js/jquery-migrate-3.1.0.min.js"></script>
vendor: 2 bytes, line 2588
2588
2589<script defer src="/js/corweb/drupal.js"></script>
vendor: 2 bytes, line 2589
2589
2590<script defer src="/js/corweb/jquery.once.js"></script>
vendor: 2 bytes, line 2590
2590
2591<script defer src="/js/corweb/bootstrap/affix.js"></script>
vendor: 2 bytes, line 2591
2591
2592<script defer src="/js/corweb/bootstrap/alert.js"></script>
vendor: 2 bytes, line 2592
2592
2593<script defer src="/js/corweb/bootstrap/button.js"></script>
vendor: 2 bytes, line 2593
2593
2594<script defer src="/js/corweb/bootstrap/carousel.js"></script>
vendor: 2 bytes, line 2594
2594
2595<script defer src="/js/corweb/bootstrap/collapse.js"></script>
vendor: 2 bytes, line 2595
2595
2596<script defer src="/js/corweb/bootstrap/dropdown.js"></script>
vendor: 2 bytes, line 2596
2596
2597<script defer src="/js/corweb/bootstrap/modal.js"></script>
vendor: 2 bytes, line 2597
2597
2598<script defer src="/js/corweb/bootstrap/tooltip.js"></script>
vendor: 2 bytes, line 2598
2598
2599<script defer src="/js/corweb/bootstrap/popover.js?oqtub7"></script>
vendor: 2 bytes, line 2599
2599
2600<script defer src="/js/corweb/bootstrap/scrollspy.js?oqtub7"></script>
vendor: 2 bytes, line 2600
2600
2601<script defer src="/js/corweb/bootstrap/tab.js?oqtub7"></script>
vendor: 2 bytes, line 2601
2601
2602<script defer src="/js/corweb/bootstrap/transition.js?oqtub7"></script>
vendor: 2 bytes, line 2602
2602
2603<script defer src="/js/corweb/slideout.min.js?oqtub7"></script>
vendor: 2 bytes, line 2603
2603
2604<script defer src="/js/corweb/side-menu.js?oqtub7"></script>
2604
2605
2606<script defer src="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/js/all.min.js" integrity="sha512-uKQ39gEGiyUJl4AI6L+ekBdGKpGw4xJ55+xyJG7YFlJokPNYegn9KwQ3P8A7aFQAUtUsAQHep+d/lrGqrbPIDQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
vendor: 2 bytes, line 2606
2606
2607<script defer src="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/js/v4-shims.min.js" integrity="sha512-6n3X18GAJomziz6HVPbmyBOEZeoB8+unwEBTRXFs3IZTRYYCkbXNAWNV68uHujamEvDBqaGe2FTW19o81h1/RA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
2607  </div>
2608  
2609      </footer>
2610
2611	</main>  
2611<script defer src="https://www.riversideca.gov/sites/all/themes/bootstrap/js/bootstrap.js?q57fm9"></script>
2611
2612
2613<!-- Include the script file   -->
2614<script defer type="text/javascript" src="https://prod-druid-cdn-clients.azureedge.net/cityofriverside-hs/Rivy-56ab1b4e-737c-4fa0-a723-08dd8c0983b3/webchatfiles/druid_webchat_v2.js"></script>
2614
2615<!-- Init the webchat component on document load -->
2616<script type="text/javascript">
2617            document.addEventListener("DOMContentLoaded", function(event) {
2618                DruidWebchat_v2.init({
2619<!-- Common settings  -->
2620                    botId: "56ab1b4e-737c-4fa0-a723-08dd8c0983b3",
2621                    baseUrl: "https://druidapi.us.druidplatform-hs.com",
2622                    queryParams: "", // pass queryParams to AuthorizeAsync method
2623                });
2624            });
2625</script>
2625
2626
2627<!-- accessWidget -->
2628
2629
2630<script> (function(){ var s = document.createElement('script'); var h = document.querySelector('head') || document.body; s.src = 'https://acsbapp.com/apps/app/dist/js/app.js'; s.async = true; s.onload = function(){ acsbJS.init(); }; h.appendChild(s); })(); </script>
vendor: 2 bytes, line 2630
2630
2631<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"a666049ed83c478d9f39bc171e47c2be","spa":2}' crossorigin="anonymous"></script>
2631
2632</body>
2633</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.