PageSourceSearch

https://cigue.ch/the-cigue/

html cigue.ch collected 2026-10-02 17:26:07 UTC 53,554 bytes, 1,118 lines download raw bytes

1<!doctype html>
2<html class="no-js" lang="en-US">
3<head>
4  <meta charset="utf-8">
5  <meta http-equiv="X-UA-Compatible" content="IE=edge">
6  <meta name="viewport" content="width=device-width, initial-scale=1">
7
8  <link rel="alternate" type="application/rss+xml" title="La Ciguë Feed" href="https://cigue.ch/en/feed/">
9
10<link rel="apple-touch-icon" sizes="57x57" href="/wp/apple-touch-icon-57x57.png">
11<link rel="apple-touch-icon" sizes="114x114" href="/wp/apple-touch-icon-114x114.png">
12<link rel="apple-touch-icon" sizes="72x72" href="/wp/apple-touch-icon-72x72.png">
13<link rel="apple-touch-icon" sizes="144x144" href="/wp/apple-touch-icon-144x144.png">
14<link rel="apple-touch-icon" sizes="60x60" href="/wp/apple-touch-icon-60x60.png">
15<link rel="apple-touch-icon" sizes="120x120" href="/wp/apple-touch-icon-120x120.png">
16<link rel="apple-touch-icon" sizes="76x76" href="/wp/apple-touch-icon-76x76.png">
17<link rel="apple-touch-icon" sizes="152x152" href="/wp/apple-touch-icon-152x152.png">
18<link rel="apple-touch-icon" sizes="180x180" href="/wp/apple-touch-icon-180x180.png">
19<link rel="icon" type="image/png" href="/wp/favicon-192x192.png" sizes="192x192">
20<link rel="icon" type="image/png" href="/wp/favicon-160x160.png" sizes="160x160">
21<link rel="icon" type="image/png" href="/wp/favicon-96x96.png" sizes="96x96">
22<link rel="icon" type="image/png" href="/wp/favicon-16x16.png" sizes="16x16">
23<link rel="icon" type="image/png" href="/wp/favicon-32x32.png" sizes="32x32">
24<meta name="msapplication-TileColor" content="#ffff00">
25<meta name="msapplication-TileImage" content="/mstile-144x144.png">
26
27
28  <title>The Ciguë &#8211; La Ciguë</title>
29<meta name='robots' content='max-image-preview:large' />
30<link rel="alternate" href="https://cigue.ch/la-cigue-2/" hreflang="fr" />
31<link rel="alternate" href="https://cigue.ch/the-cigue/" hreflang="en" />
32<link rel='dns-prefetch' href='//ajax.googleapis.com' />
33<link rel="alternate" type="application/rss+xml" title="La Ciguë &raquo; The Ciguë Comments Feed" href="https://cigue.ch/the-cigue/feed/" />
34<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://cigue.ch/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fcigue.ch%2Fthe-cigue%2F&#038;lang=en" />
35<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://cigue.ch/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fcigue.ch%2Fthe-cigue%2F&#038;format=xml&#038;lang=en" />
36<style id="wp-img-auto-sizes-contain-inline-css">
37img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
38/*# sourceURL=wp-img-auto-sizes-contain-inline-css */
39</style>
40<link rel='stylesheet' id='dashicons-css' href='https://cigue.ch/wp/wp-includes/css/dashicons.css?ver=7.1.2' media='all' />
41<link rel='stylesheet' id='wp-jquery-ui-dialog-css' href='https://cigue.ch/wp/wp-includes/css/jquery-ui-dialog.css?ver=7.1.2' media='all' />
42<link rel='stylesheet' id='bup_font_awesome-css' href='https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro/css/css/font-awesome.min.css?ver=7.1.2' media='all' />
43<link rel='stylesheet' id='bup_style-css' href='https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro/templates/css/styles.css?ver=7.1.2' media='all' />
44<link rel='stylesheet' id='bup_phone_code_detect_css-css' href='https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro/js/int-phone-code/css/intlTelInput.css?ver=7.1.2' media='all' />
45<style id="wp-emoji-styles-inline-css">
46
47	img.wp-smiley, img.emoji {
48		display: inline !important;
49		border: none !important;
50		box-shadow: none !important;
51		height: 1em !important;
52		width: 1em !important;
53		margin: 0 0.07em !important;
54		vertical-align: -0.1em !important;
55		background: none !important;
56		padding: 0 !important;
57	}
58/*# sourceURL=wp-emoji-styles-inline-css */
59</style>
60<style id="wp-block-library-inline-css">
61/**
62 * Colors
63 */
64/**
65 * Typography
66 */
67/**
68 * SCSS Variables.
69 *
70 * Please use variables from this sheet to ensure consistency across the UI.
71 * Don't add to this sheet unless you're pretty sure the value will be reused in many places.
72 * For example, don't add rules to this sheet that affect block visuals. It's purely for UI.
73 */
74/**
75 * Fonts & basic variables.
76 */
77/**
78 * Typography
79 */
80/**
81 * Grid System.
82 * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
83 */
84/**
85 * Radius scale.
86 */
87/**
88 * Elevation scale.
89 */
90/**
91 * Dimensions.
92 */
93/**
94 * Mobile specific styles
95 */
96/**
97 * Editor styles.
98 */
99/**
100 * Block & Editor UI.
101 */
102/**
103 * Block paddings.
104 */
105/**
106 * React Native specific.
107 * These variables do not appear to be used anywhere else.
108 */
109/**
110 * Breakpoints & Media Queries
111 */
112/**
113*  Converts a hex value into the rgb equivalent.
114*
115* @param {string} hex - the hexadecimal value to convert
116* @return {string} comma separated rgb values
117*/
118/**
119 * Long content fade mixin
120 *
121 * Creates a fading overlay to signify that the content is longer
122 * than the space allows.
123 */
124/**
125 * Breakpoint mixins
126 */
127/**
128 * Focus styles.
129 */
130/**
131 * Standard focus rings for the WordPress Design System.
132 *
133 * Apply `outset-ring__focus` inside the relevant pseudo-class at the call site,
134 * e.g. `&:focus { @include outset-ring__focus(); }`.
135 */
136/**
137 * Applies editor left position to the selector passed as argument
138 */
139/**
140 * Styles that are reused verbatim in a few places
141 */
142/**
143 * Allows users to opt-out of animations via OS-level preferences.
144 */
145/**
146 * Reset default styles for JavaScript UI based pages.
147 * This is a WP-admin agnostic reset
148 */
149/**
150 * Reset the WP Admin page styles for Gutenberg-like pages.
151 */
152/**
153 * Creates a checkerboard pattern background to indicate transparency.
154 * @param {String} $size - The size of the squares in the checkerboard pattern. Default is 12px.
155 */
156:root {
157  --wp-block-synced-color: #7a00df;
158  --wp-block-synced-color--rgb: 122, 0, 223;
159  --wp-bound-block-color: var(--wp-block-synced-color);
160  --wp-editor-canvas-background: #ddd;
161  --wp-admin-theme-color: #007cba;
162  --wp-admin-theme-color--rgb: 0, 124, 186;
163  --wp-admin-theme-color-darker-10: rgb(0, 107, 160.5);
164  --wp-admin-theme-color-darker-10--rgb: 0, 107, 160.5;
165  --wp-admin-theme-color-darker-20: #005a87;
166  --wp-admin-theme-color-darker-20--rgb: 0, 90, 135;
167  --wp-admin-border-width-focus: 2px;
168}
169@media (min-resolution: 192dpi) {
170  :root {
171    --wp-admin-border-width-focus: 1.5px;
172  }
173}
174
175/**
176 * Element styles.
177 */
178.wp-element-button {
179  cursor: pointer;
180}
181
182:root .has-very-light-gray-background-color {
183  background-color: #eee;
184}
185:root .has-very-dark-gray-background-color {
186  background-color: #313131;
187}
188:root .has-very-light-gray-color {
189  color: #eee;
190}
191:root .has-very-dark-gray-color {
192  color: #313131;
193}
194:root {
195  /* stylelint-disable @stylistic/function-comma-space-after -- We can not use spacing because of WP multi site kses rule. */
196}
197:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background {
198  background: linear-gradient(135deg, rgb(0, 208, 132) 0%, rgb(6, 147, 227) 100%);
199}
200:root .has-purple-crush-gradient-background {
201  background: linear-gradient(135deg, rgb(52, 226, 228) 0%, rgb(71, 33, 251) 50%, rgb(171, 29, 254) 100%);
202}
203:root .has-hazy-dawn-gradient-background {
204  background: linear-gradient(135deg, rgb(250, 172, 168) 0%, rgb(218, 208, 236) 100%);
205}
206:root .has-subdued-olive-gradient-background {
207  background: linear-gradient(135deg, rgb(250, 250, 225) 0%, rgb(103, 166, 113) 100%);
208}
209:root .has-atomic-cream-gradient-background {
210  background: linear-gradient(135deg, rgb(253, 215, 154) 0%, rgb(0, 74, 89) 100%);
211}
212:root .has-nightshade-gradient-background {
213  background: linear-gradient(135deg, rgb(51, 9, 104) 0%, rgb(49, 205, 207) 100%);
214}
215:root .has-midnight-gradient-background {
216  background: linear-gradient(135deg, rgb(2, 3, 129) 0%, rgb(40, 116, 252) 100%);
217}
218:root {
219  /* stylelint-enable @stylistic/function-comma-space-after */
220  --wp--preset--font-size--normal: 16px;
221  --wp--preset--font-size--huge: 42px;
222}
223
224.has-regular-font-size {
225  font-size: 1em;
226}
227
228.has-larger-font-size {
229  font-size: 2.625em;
230}
231
232.has-normal-font-size {
233  font-size: var(--wp--preset--font-size--normal);
234}
235
236.has-huge-font-size {
237  font-size: var(--wp--preset--font-size--huge);
238}
239
240:root .has-text-align-center {
241  text-align: center;
242}
243
244:root .has-text-align-left {
245  /*rtl:ignore*/
246  text-align: left;
247}
248
249:root .has-text-align-right {
250  /*rtl:ignore*/
251  text-align: right;
252}
253
254.has-fit-text {
255  white-space: nowrap !important;
256}
257
258#end-resizable-editor-section {
259  display: none;
260}
261
262.aligncenter {
263  clear: both;
264}
265
266.items-justified-left {
267  justify-content: flex-start;
268}
269
270.items-justified-center {
271  justify-content: center;
272}
273
274.items-justified-right {
275  justify-content: flex-end;
276}
277
278.items-justified-space-between {
279  justify-content: space-between;
280}
281
282.screen-reader-text {
283  border: 0;
284  clip-path: inset(50%);
285  height: 1px;
286  margin: -1px;
287  overflow: hidden;
288  padding: 0;
289  position: absolute;
290  width: 1px;
291  word-wrap: normal !important;
292  word-break: normal !important;
293}
294
295.screen-reader-text:focus {
296  background-color: #ddd;
297  clip-path: none;
298  color: #444;
299  display: block;
300  font-size: 1em;
301  height: auto;
302  left: 5px;
303  line-height: normal;
304  padding: 15px 23px 14px;
305  text-decoration: none;
306  top: 5px;
307  width: auto;
308  z-index: 100000;
309}
310
311/**
312 * The following provide a simple means of applying a default border style when
313 * a user first makes a selection in the border block support panel.
314 * This prevents issues such as where the user could set a border width
315 * and see no border due there being no border style set.
316 *
317 * This is intended to be removed once intelligent defaults can be set while
318 * making border selections via the block support.
319 *
320 * See: https://github.com/WordPress/gutenberg/pull/33743
321 */
322html :where(.has-border-color) {
323  border-style: solid;
324}
325
326html :where([style^=border-color],
327[style*=";border-color"],
328[style*="; border-color"]) {
329  border-style: solid;
330}
331
332html :where([style^=border-top-color],
333[style*=";border-top-color"],
334[style*="; border-top-color"]) {
335  border-top-style: solid;
336}
337
338html :where([style^=border-right-color],
339[style*=";border-right-color"],
340[style*="; border-right-color"]) {
341  /*rtl:ignore*/
342  border-right-style: solid;
343}
344
345html :where([style^=border-bottom-color],
346[style*=";border-bottom-color"],
347[style*="; border-bottom-color"]) {
348  border-bottom-style: solid;
349}
350
351html :where([style^=border-left-color],
352[style*=";border-left-color"],
353[style*="; border-left-color"]) {
354  /*rtl:ignore*/
355  border-left-style: solid;
356}
357
358html :where([style^=border-width],
359[style*=";border-width"],
360[style*="; border-width"]) {
361  border-style: solid;
362}
363
364html :where([style^=border-top-width],
365[style*=";border-top-width"],
366[style*="; border-top-width"]) {
367  border-top-style: solid;
368}
369
370html :where([style^=border-right-width],
371[style*=";border-right-width"],
372[style*="; border-right-width"]) {
373  /*rtl:ignore*/
374  border-right-style: solid;
375}
376
377html :where([style^=border-bottom-width],
378[style*=";border-bottom-width"],
379[style*="; border-bottom-width"]) {
380  border-bottom-style: solid;
381}
382
383html :where([style^=border-left-width],
384[style*=";border-left-width"],
385[style*="; border-left-width"]) {
386  /*rtl:ignore*/
387  border-left-style: solid;
388}
389
390/**
391 * Provide baseline responsiveness for images.
392 */
393html :where(img[class*=wp-image-]) {
394  height: auto;
395  max-width: 100%;
396}
397
398/**
399 * Reset user agent styles for figure element margins.
400 */
401:where(figure) {
402  margin: 0 0 1em 0;
403}
404
405html :where(.is-position-sticky) {
406  --wp-admin--admin-bar--position-offset: var(--wp-admin--admin-bar--height, 0px);
407}
408
409@media screen and (max-width: 600px) {
410  html :where(.is-position-sticky) {
411    --wp-admin--admin-bar--position-offset: 0px;
412  }
413}
414
415/*# sourceURL=/wp-includes/css/dist/block-library/common.css */
416</style>
417<style id="classic-theme-styles-inline-css">
418/**
419 * These rules are needed for backwards compatibility.
420 * They should match the button element rules in the base theme.json file.
421 */
422.wp-block-button__link {
423	color: #ffffff;
424	background-color: #32373c;
425	border-radius: 9999px; /* 100% causes an oval, but any explicit but really high value retains the pill shape. */
426
427	/* This needs a low specificity so it won't override the rules from the button element if defined in theme.json. */
428	box-shadow: none;
429	text-decoration: none;
430
431	/* The extra 2px are added to size solids the same as the outline versions.*/
432	padding: calc(0.667em + 2px) calc(1.333em + 2px);
433
434	font-size: 1.125em;
435}
436
437.wp-block-file__button {
438	background: #32373c;
439	color: #ffffff;
440	text-decoration: none;
441}
442
443/*# sourceURL=/wp-includes/css/classic-themes.css */
444</style>
445
446<style id="global-styles-inline-css">
447:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,
4470) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
447.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
448/*# sourceURL=global-styles-inline-css */
449</style>
450
451<link rel='stylesheet' id='wp-downloadmanager-css' href='https://cigue.ch/wp/wp-content/plugins/wp-downloadmanager/download-css.css?ver=1.69.2' media='all' />
452<link rel='stylesheet' id='slb_core-css' href='https://cigue.ch/wp/wp-content/plugins/simple-lightbox/client/css/app.css?ver=2.9.5' media='all' />
453<link rel='stylesheet' id='bup_profile_style-css' href='https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro-complement/templates/user-account-styles.css' media='all' />
454<link rel='stylesheet' id='bup_profile_style_profile-css' href='https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro-complement/templates/profile.css' media='all' />
455<link rel='stylesheet' id='bup_profile_style_staff_list-css' href='https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro-complement/templates/staff_list.css' media='all' />
456<link rel='stylesheet' id='roots_css-css' href='https://cigue.ch/wp/wp-content/themes/cigue/assets/css/main.min.css?7fcf7e7a746012234807a4983dc26cba' media='all' />
457<script id="jquery-js" src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
vendor: 1 bytes, line 457
457
458<script>window.jQuery || document.write('
458<script src="https://cigue.ch/wp/wp-content/themes/cigue/assets/vendor/jquery/dist/jquery.min.js?1.11.1"><\/script>')</script>
vendor: 1 bytes, line 458
458
459<script id="jquery-migrate-js" src="https://cigue.ch/wp/wp-content/plugins/jquery-manager/assets/js/jquery-migrate-1.4.1.js"></script>
vendor: 1 bytes, line 459
459
460<script id="bup_phone_code_detect_js-js" src="https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro/js/int-phone-code/js/intlTelInput.min.js"></script>
vendor: 1 bytes, line 460
460
461<script id="bup-front_js-js-extra">
462var bup_pro_front = {"wait_submit":"\u003Cimg src=\"https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro/admin/images/loaderB16.gif\" width=\"16\" height=\"16\" /\u003E\u003C/span\u003E\u00a0 Please wait ...","country_detection":"yes","button_legend_step2":"Search Again","button_legend_step3":"\u003C\u003C Back","button_legend_step3_cart":"Book More","message_wait_staff_box":"Please wait ...","bb_date_picker_format":"dd/mm/yy","country_util_url":"https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro/js/int-phone-code/js/utils.js","message_wait_availability":"\u003Cp\u003E\u003Cimg src=\"https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro/admin/images/loaderB16.gif\" width=\"16\" height=\"16\" /\u003E\u003C/span\u003E\u00a0 Please wait ...\u003C/p\u003E"};
463var BUPDatePicker = {"closeText":"Done","currentText":"Today","prevText":"Prev","nextText":"Next","monthNames":["January","February","March","April","May","June","July","August","September","October","November","December"],"monthNamesShort":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"monthStatus":"Show a different month","dayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"dayNamesShort":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"dayNamesMin":["S","M","T","W","T","F","S"],"firstDay":"1","isRTL":""};
464var BUPdayslimitarray = {"dayslimit_key":"0","version":"1"};
465//# sourceURL=bup-front_js-js-extra
466</script>
vendor: 1 bytes, line 466
466
467<script id="bup-front_js-js" src="https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro/js/bup-front.js"></script>
vendor: 1 bytes, line 467
467
468<script id="moxiejs-js" src="https://cigue.ch/wp/wp-includes/js/plupload/moxie.js?ver=1.3.5.1"></script>
vendor: 1 bytes, line 468
468
469<script id="plupload-js" src="https://cigue.ch/wp/wp-includes/js/plupload/plupload.js?ver=2.1.9"></script>
vendor: 1 bytes, line 469
469
470<script id="form-validate-lang-js" src="https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro/js/languages/jquery.validationEngine-en.js?ver=7.1.2"></script>
vendor: 1 bytes, line 470
470
471<script id="form-validate-js" src="https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro/js/jquery.validationEngine.js?ver=7.1.2"></script>
vendor: 1 bytes, line 471
471
472<script id="bup_profile_js-js-extra">
473var bup_profile_v98 = {"msg_wait_cropping":"Please wait ...","msg_wait":"\u003Cimg src=\"https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro-complement//templates/images/loaderB16.gif\" width=\"16\" height=\"16\" /\u003E \u00a0 Please wait ... ","msg_make_selection":"You must make a selection first","msg_wait_reschedule":"Please wait ...","err_message_time_slot":"Please select a slot!","err_message_service":"Please select a service","err_message_start_date":"Please select a date","are_you_sure":"Are you sure?","err_message_note_title":"Please input a title","err_message_note_text":"Please write a message","err_message_payment_amount":"Please input an amount","err_message_payment_date":"Please set a date","message_delet_note_conf":"Are you sure?","message_profile_display_name":"Please type a Display Name for your Profile","bb_date_picker_format":"dd/mm/yy"};
474var BUPDatePicker = {"closeText":"Done","currentText":"Today","prevText":"Prev","nextText":"Next","monthNames":["January","February","March","April","May","June","July","August","September","October","November","December"],"monthNamesShort":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"monthStatus":"Show a different month","dayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"dayNamesShort":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"dayNamesMin":["S","M","T","W","T","F","S"],"firstDay":"1","isRTL":""};
475//# sourceURL=bup_profile_js-js-extra
476</script>
vendor: 1 bytes, line 476
476
477<script id="bup_profile_js-js" src="https://cigue.ch/wp/wp-content/plugins/booking-ultra-pro-complement/js/bup-profile.js"></script>
477
478<link rel="https://api.w.org/" href="https://cigue.ch/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://cigue.ch/wp-json/wp/v2/pages/656" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://cigue.ch/wp/xmlrpc.php?rsd" />
479<meta name="generator" content="WordPress 7.1.2" />
480<link rel="canonical" href="https://cigue.ch/the-cigue/" />
481<link rel='shortlink' href='https://cigue.ch/?p=656' />
482<script type="text/javascript">var ajaxurl = "https://cigue.ch/wp/wp-admin/admin-ajax.php";
483</script>
483<style>.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style><link rel="icon" href="https://cigue.ch/wp/wp-content/uploads/2018/05/cropped-logo-CIGUE-type-32x32.jpg" sizes="32x32" />
484<link rel="icon" href="https://cigue.ch/wp/wp-content/uploads/2018/05/cropped-logo-CIGUE-type-192x192.jpg" sizes="192x192" />
485<link rel="apple-touch-icon" href="https://cigue.ch/wp/wp-content/uploads/2018/05/cropped-logo-CIGUE-type-180x180.jpg" />
486<meta name="msapplication-TileImage" content="https://cigue.ch/wp/wp-content/uploads/2018/05/cropped-logo-CIGUE-type-270x270.jpg" />
487<style id="wp-custom-css">
488.language { 
489z-index:1000;
490}
491</style>
492<style id="core-block-supports-inline-css">
493/**
494 * Core styles: block-supports
495 */
496
497/*# sourceURL=core-block-supports-inline-css */
498</style>
499
500</head>
501<body data-rsssl=1 class="wp-singular page-template-default page page-id-656 wp-theme-cigue the-cigue sidebar-primary">
502
503  <!--[if lt IE 8]>
504    <div class="alert alert-warning">
505      You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.    </div>
506  <![endif]-->
507
508  <header class="banner navbar navbar-default navbar-static-top" role="banner">
509
510  <div class="entete">
511
512    <div class="container ">
513
514      <div class="row">
515
516
517        <div class="col-md-1 col-md-push-11">
518
519            <img class="logo" src="https://cigue.ch/wp/wp-content/themes/cigue/assets/img/logo.png" title="" width="116 " height="110" />
520
521        </div>
522
523
524        <div class="col-md-9  col-md-pull-1 entete-texte">
525
526               <a href="https://cigue.ch/welcome"><h1>La Ciguë </h1>
527            <h3><span>Coopérative de logement</span>pour personnes<br/>en formation</h3></a>
528
529
530
531        </div>
532
533
534      </div>
535
536    </div>
537
538  </div>
539
540
541</header>
542
543  <div class="wrap container" role="document">
544    <div class="content row">
545    <div class="col-sm-2  banner navbar navbar-default navbar-static-top">
546
547      <div class="navbar-header">
548      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target=".navbar-collapse">
549        <span class="sr-only">Toggle navigation</span>
550        <span class="icon-bar"></span>
551        <span class="icon-bar"></span>
552        <span class="icon-bar"></span>
553      </button>
554
555      <ul class="langue list-inline visible-xs" style="float:right">	<li class="lang-item lang-item-3 lang-item-fr lang-item-first"><a lang="fr-FR" hreflang="fr-FR" href="https://cigue.ch/la-cigue-2/">Fr</a></li>
556	<li class="lang-item lang-item-5 lang-item-en current-lang"><a lang="en-US" hreflang="en-US" href="https://cigue.ch/the-cigue/" aria-current="true">En</a></li>
557</ul>
558
559    </div>
560
561    <nav class="collapse navbar-collapse" role="navigation">
562      <ul id="menu-primary" class="nav navbar-nav"><li class="active dropdown menu-overview"><a class="dropdown-toggle" data-toggle="dropdown" data-target="#" href="https://cigue.ch/the-cigue/" aria-current="page">Overview <b class="caret"></b></a>
563<ul class="dropdown-menu">
564	<li class="menu-organization-and-functioning"><a href="https://cigue.ch/how-it-works/">Organization and functioning</a></li>
565	<li class="menu-texts"><a href="https://cigue.ch/texts/">Texts</a></li>
566	<li class="menu-housing-policy"><a href="https://cigue.ch/housing-policy/">Housing Policy</a></li>
567	<li class="menu-history-of-the-cooperative"><a href="https://cigue.ch/history-of-the-cooperative/">History of the cooperative</a></li>
568</ul>
569</li>
570<li class="dropdown menu-get-a-room"><a class="dropdown-toggle" data-toggle="dropdown" data-target="#" href="https://cigue.ch/members/">Get a room <b class="caret"></b></a>
571<ul class="dropdown-menu">
572	<li class="menu-admission-criteria"><a href="https://cigue.ch/getting-a-room/">Admission criteria</a></li>
573	<li class="menu-be-informed-of-available-rooms"><a href="https://cigue.ch/available-rooms/">Be informed of available rooms</a></li>
574	<li class="menu-signing-your-lease"><a href="https://cigue.ch/signing-your-lease/">Signing your lease</a></li>
575</ul>
576</li>
577<li class="dropdown menu-participatory-functioning"><a class="dropdown-toggle" data-toggle="dropdown" data-target="#" href="https://cigue.ch/get-involved-with-the-cigue/">Participatory functioning <b class="caret"></b></a>
578<ul class="dropdown-menu">
579	<li class="menu-get-involved-with-la-cigue"><a href="https://cigue.ch/get-involved/">Get involved with la Ciguë</a></li>
580	<li class="menu-general-assemblies"><a href="https://cigue.ch/general-assemblies-2/">General Assemblies</a></li>
581	<li class="menu-board-of-directors"><a href="https://cigue.ch/board-of-directors/">Board of Directors</a></li>
582	<li class="menu-comittees"><a href="https://cigue.ch/comittees/">Comittees</a></li>
583	<li class="menu-delegates-and-janitors"><a href="https://cigue.ch/delegates-and-janitors/">Delegates and janitors</a></li>
584	<li class="menu-participatory-budget"><a href="https://cigue.ch/participatory-budget/">Participatory budget</a></li>
585</ul>
586</li>
587<li class="dropdown menu-for-the-cooperators"><a class="dropdown-toggle" data-toggle="dropdown" data-target="#" href="https://cigue.ch/participate/">For the cooperators <b class="caret"></b></a>
588<ul class="dropdown-menu">
589	<li class="menu-paying-your-rent"><a href="https://cigue.ch/paying-rent/">Paying your rent</a></li>
590	<li class="menu-sublettting"><a href="https://cigue.ch/sublettting/">Sublettting</a></li>
591	<li class="menu-organizing-attributions"><a href="https://cigue.ch/how-to-attributions/">Organizing attributions</a></li>
592	<li class="menu-delegates-janitors-coordinators"><a href="https://cigue.ch/useful-contacts/">Delegates-janitors-coordinators</a></li>
593	<li class="menu-genevas-tips"><a href="https://cigue.ch/genevas-tips">Geneva&#8217;s tips</a></li>
594	<li class="menu-newsletter"><a href="https://cigue.ch/newsletter/">Newsletter</a></li>
595	<li class="menu-bed-bugs"><a href="https://cigue.ch/bed-bugs/">Bed Bugs</a></li>
596	<li class="menu-equipment-and-funds-available"><a>Equipment and funds available</a></li>
597	<li class="menu-problems-at-home"><a href="https://cigue.ch/problems-at-home/">Problems at home</a></li>
598</ul>
599</li>
600<li class="menu-general-assembly"><a href="https://cigue.ch/general-assembly-3/">General Assembly</a></li>
601<li class="menu-our-housings"><a href="https://cigue.ch/our-housings/">Our housings</a></li>
602<li class="menu-offer-us-housing"><a href="https://cigue.ch/offer-us-housing/">Offer us housing</a></li>
603<li class="menu-rent-an-event-space"><a href="https://cigue.ch/common_rooms/">Rent an event space</a></li>
604<li class="dropdown menu-contact-qa"><a class="dropdown-toggle" data-toggle="dropdown" data-target="#" href="https://cigue.ch/contact-2/">Contact / Q&#038;A <b class="caret"></b></a>
605<ul class="dropdown-menu">
606	<li class="menu-address-and-office-hours"><a href="https://cigue.ch/office-hours/">Address and office hours</a></li>
607	<li class="menu-the-work-team"><a href="https://cigue.ch/the-team/">The work team</a></li>
608	<li class="menu-useful-links"><a href="https://cigue.ch/useful-links/">Useful links</a></li>
609</ul>
610</li>
611</ul>    </nav>
612    </div>
613    <div class="col-sm-1 col-md-1 col-lg-1 hidden-xs language">
614
615      <ul class="list-inline ">	<li class="lang-item lang-item-3 lang-item-fr lang-item-first"><a lang="fr-FR" hreflang="fr-FR" href="https://cigue.ch/la-cigue-2/">Fr</a></li>
616	<li class="lang-item lang-item-5 lang-item-en current-lang"><a lang="en-US" hreflang="en-US" href="https://cigue.ch/the-cigue/" aria-current="true">En</a></li>
617</ul>
618
619    </div>
620      <div class="col-sm-9 main-content" role="main">
621          <div class="page-header">
622  <h1>
623    The Ciguë  </h1>
624</div>
625        </div><!-- /.main -->
626       <div class=" hidden-sm col-md-1 col-lg-1"></div>
627
628
629  </div>
630  </div><!-- /.wrap -->
631
632  <footer class="content-info" role="contentinfo">
633  <div class="container">
634  <div class="row">
635	  <div class="col-md-3"></div>
636	  <div class="col-md-9 principal">
637	  	 <ul id="menu-footer-en" class="list-inline"><li class="menu-the-cigues-structure"><a href="https://cigue.ch/how-it-works/">The Ciguë&#8217;s structure</a></li>
638<li class="menu-common-rooms"><a href="https://cigue.ch/common_rooms/">Common Rooms</a></li>
639<li class="menu-admission-criteria"><a href="https://cigue.ch/getting-a-room/">Admission criteria</a></li>
640<li class="menu-contact"><a href="https://cigue.ch/office-hours/">Contact</a></li>
641</ul>	  </div>
642	  <div class="col-md-1"></div>
643  </div>
644  </div>
645</footer>
646
647  
647<script type="speculationrules">
648{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp/wp-*.php","/wp/wp-admin/*","/wp/wp-content/uploads/*","/wp/wp-content/*","/wp/wp-content/plugins/*","/wp/wp-content/themes/cigue/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
649</script>
vendor: 1 bytes, line 649
649
650<script id="jquery-ui-core-js-before">
651jQuery.uiBackCompat = true;
652//# sourceURL=jquery-ui-core-js-before
653</script>
vendor: 1 bytes, line 653
653
654<script id="jquery-ui-core-js" src="https://cigue.ch/wp/wp-content/plugins/enable-jquery-migrate-helper/js/jquery-ui/core.min.js?ver=1.11.4-wp"></script>
vendor: 1 bytes, line 654
654
655<script id="jquery-ui-widget-js" src="https://cigue.ch/wp/wp-content/plugins/enable-jquery-migrate-helper/js/jquery-ui/widget.min.js?ver=1.11.4-wp"></script>
vendor: 1 bytes, line 655
655
656<script id="jquery-ui-mouse-js" src="https://cigue.ch/wp/wp-content/plugins/enable-jquery-migrate-helper/js/jquery-ui/mouse.min.js?ver=1.11.4-wp"></script>
vendor: 1 bytes, line 656
656
657<script id="jquery-ui-resizable-js" src="https://cigue.ch/wp/wp-content/plugins/enable-jquery-migrate-helper/js/jquery-ui/resizable.min.js?ver=1.11.4-wp"></script>
vendor: 1 bytes, line 657
657
658<script id="jquery-ui-draggable-js" src="https://cigue.ch/wp/wp-content/plugins/enable-jquery-migrate-helper/js/jquery-ui/draggable.min.js?ver=1.11.4-wp"></script>
vendor: 1 bytes, line 658
658
659<script id="jquery-ui-button-js" src="https://cigue.ch/wp/wp-content/plugins/enable-jquery-migrate-helper/js/jquery-ui/button.min.js?ver=1.11.4-wp"></script>
vendor: 1 bytes, line 659
659
660<script id="jquery-ui-position-js" src="https://cigue.ch/wp/wp-content/plugins/enable-jquery-migrate-helper/js/jquery-ui/position.min.js?ver=1.11.4-wp"></script>
vendor: 1 bytes, line 660
660
661<script id="jquery-ui-dialog-js" src="https://cigue.ch/wp/wp-content/plugins/enable-jquery-migrate-helper/js/jquery-ui/dialog.min.js?ver=1.11.4-wp"></script>
vendor: 1 bytes, line 661
661
662<script id="jquery-ui-datepicker-js" src="https://cigue.ch/wp/wp-content/plugins/enable-jquery-migrate-helper/js/jquery-ui/datepicker.min.js?ver=1.11.4-wp"></script>
vendor: 1 bytes, line 662
662
663<script id="jquery-ui-datepicker-js-after">
664jQuery(function(jQuery){jQuery.datepicker.setDefaults({"closeText":"Close","currentText":"Today","monthNames":["January","February","March","April","May","June","July","August","September","October","November","December"],"monthNamesShort":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"nextText":"Next","prevText":"Previous","dayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"dayNamesShort":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"dayNamesMin":["S","M","T","W","T","F","S"],"dateFormat":"d MM yy","firstDay":1,"isRTL":false});});
665//# sourceURL=jquery-ui-datepicker-js-after
666</script>
vendor: 1 bytes, line 666
666
667<script id="jquery-ui-progressbar-js" src="https://cigue.ch/wp/wp-content/plugins/enable-jquery-migrate-helper/js/jquery-ui/progressbar.min.js?ver=1.11.4-wp"></script>
vendor: 1 bytes, line 667
667
668<script id="modernizr-js" src="https://cigue.ch/wp/wp-content/themes/cigue/assets/js/vendor/modernizr.min.js"></script>
vendor: 1 bytes, line 668
668
669<script id="roots_js-js" src="https://cigue.ch/wp/wp-content/themes/cigue/assets/js/scripts.min.js?00e39869b28018284ba86a5375e6653d"></script>
vendor: 1 bytes, line 669
669
670<script id="wp-emoji-settings" type="application/json">
671{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"wpemoji":"https://cigue.ch/wp/wp-includes/js/wp-emoji.js?ver=7.1.2","twemoji":"https://cigue.ch/wp/wp-includes/js/twemoji.js?ver=7.1.2"}}
672</script>
vendor: 1 bytes, line 672
672
673<script type="module">
674/**
675 * @output wp-includes/js/wp-emoji-loader.js
676 */
677
678/* eslint-env es6 */
679
680// Note: This is loaded as a script module, so there is no need for an IIFE to prevent pollution of the global scope.
681
682/**
683 * Emoji Settings as exported in PHP via _print_emoji_detection_script().
684 * @typedef WPEmojiSettings
685 * @type {object}
686 * @property {?object} source
687 * @property {?string} source.concatemoji
688 * @property {?string} source.twemoji
689 * @property {?string} source.wpemoji
690 */
691
692const selector = 'script#wp-emoji-settings';
693const script = document.querySelector( selector );
694if ( ! ( script instanceof HTMLScriptElement ) ) {
695	throw new Error( `Element missing: ${ selector }`);
696}
697const settings = /** @type {WPEmojiSettings} */ ( JSON.parse( script.text ) );
698
699// For compatibility with other scripts that read from this global, in particular wp-includes/js/wp-emoji.js (source file: js/_enqueues/wp/emoji.js).
700window._wpemojiSettings = settings;
701
702/**
703 * Support tests.
704 * @typedef SupportTests
705 * @type {object}
706 * @property {?boolean} flag
707 * @property {?boolean} emoji
708 */
709
710const sessionStorageKey = 'wpEmojiSettingsSupports';
711const tests = [ 'flag', 'emoji' ];
712
713/**
714 * Checks whether the browser supports offloading to a Worker.
715 *
716 * @since 6.3.0
717 *
718 * @private
719 *
720 * @returns {boolean}
721 */
722function supportsWorkerOffloading() {
723	return (
724		typeof Worker !== 'undefined' &&
725		typeof OffscreenCanvas !== 'undefined' &&
726		typeof URL !== 'undefined' &&
727		URL.createObjectURL &&
728		typeof Blob !== 'undefined'
729	);
730}
731
732/**
733 * @typedef SessionSupportTests
734 * @type {object}
735 * @property {number} timestamp
736 * @property {SupportTests} supportTests
737 */
738
739/**
740 * Get support tests from session.
741 *
742 * @since 6.3.0
743 *
744 * @private
745 *
746 * @returns {?SupportTests} Support tests, or null if not set or older than 1 week.
747 */
748function getSessionSupportTests() {
749	try {
750		/** @type {SessionSupportTests} */
751		const item = JSON.parse(
752			sessionStorage.getItem( sessionStorageKey )
753		);
754		if (
755			typeof item === 'object' &&
756			typeof item.timestamp === 'number' &&
757			new Date().valueOf() < item.timestamp + 604800 && // Note: Number is a week in seconds.
758			typeof item.supportTests === 'object'
759		) {
760			return item.supportTests;
761		}
762	} catch ( e ) {}
763	return null;
764}
765
766/**
767 * Persist the supports in session storage.
768 *
769 * @since 6.3.0
770 *
771 * @private
772 *
773 * @param {SupportTests} supportTests Support tests.
774 */
775function setSessionSupportTests( supportTests ) {
776	try {
777		/** @type {SessionSupportTests} */
778		const item = {
779			supportTests: supportTests,
780			timestamp: new Date().valueOf()
781		};
782
783		sessionStorage.setItem(
784			sessionStorageKey,
785			JSON.stringify( item )
786		);
787	} catch ( e ) {}
788}
789
790/**
791 * Checks if two sets of Emoji characters render the same visually.
792 *
793 * This is used to determine if the browser is rendering an emoji with multiple data points
794 * correctly. set1 is the emoji in the correct form, using a zero-width joiner. set2 is the emoji
795 * in the incorrect form, using a zero-width space. If the two sets render the same, then the browser
796 * does not support the emoji correctly.
797 *
798 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing
799 * scope. Everything must be passed by parameters.
800 *
801 * @since 4.9.0
802 *
803 * @private
804 *
805 * @param {CanvasRenderingContext2D} context 2D Context.
806 * @param {string} set1 Set of Emoji to test.
807 * @param {string} set2 Set of Emoji to test.
808 *
809 * @return {boolean} True if the two sets render the same.
810 */
811function emojiSetsRenderIdentically( context, set1, set2 ) {
812	// Cleanup from previous test.
813	context.clearRect( 0, 0, context.canvas.width, context.canvas.height );
814	context.fillText( set1, 0, 0 );
815	const rendered1 = new Uint32Array(
816		context.getImageData(
817			0,
818			0,
819			context.canvas.width,
820			context.canvas.height
821		).data
822	);
823
824	// Cleanup from previous test.
825	context.clearRect( 0, 0, context.canvas.width, context.canvas.height );
826	context.fillText( set2, 0, 0 );
827	const rendered2 = new Uint32Array(
828		context.getImageData(
829			0,
830			0,
831			context.canvas.width,
832			context.canvas.height
833		).data
834	);
835
836	return rendered1.every( ( rendered2Data, index ) => {
837		return rendered2Data === rendered2[ index ];
838	} );
839}
840
841/**
842 * Checks if the center point of a single emoji is empty.
843 *
844 * This is used to determine if the browser is rendering an emoji with a single data point
845 * correctly. The center point of an incorrectly rendered emoji will be empty. A correctly
846 * rendered emoji will have a non-zero value at the center point.
847 *
848 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing
849 * scope. Everything must be passed by parameters.
850 *
851 * @since 6.8.2
852 *
853 * @private
854 *
855 * @param {CanvasRenderingContext2D} context 2D Context.
856 * @param {string} emoji Emoji to test.
857 *
858 * @return {boolean} True if the center point is empty.
859 */
860function emojiRendersEmptyCenterPoint( context, emoji ) {
861	// Cleanup from previous test.
862	context.clearRect( 0, 0, context.canvas.width, context.canvas.height );
863	context.fillText( emoji, 0, 0 );
864
865	// Test if the center point (16, 16) is empty (0,0,0,0).
866	const centerPoint = context.getImageData(16, 16, 1, 1);
867	for ( let i = 0; i < centerPoint.data.length; i++ ) {
868		if ( centerPoint.data[ i ] !== 0 ) {
869			// Stop checking the moment it's known not to be empty.
870			return false;
871		}
872	}
873
874	return true;
875}
876
877/**
878 * Determines if the browser properly renders Emoji that Twemoji can supplement.
879 *
880 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing
881 * scope. Everything must be passed by parameters.
882 *
883 * @since 4.2.0
884 *
885 * @private
886 *
887 * @param {CanvasRenderingContext2D} context 2D Context.
888 * @param {string} type Whether to test for support of "flag" or "emoji".
889 * @param {Function} emojiSetsRenderIdentically Reference to emojiSetsRenderIdentically function, needed due to minification.
890 * @param {Function} emojiRendersEmptyCenterPoint Reference to emojiRendersEmptyCenterPoint function, needed due to minification.
891 *
892 * @return {boolean} True if the browser can render emoji, false if it cannot.
893 */
894function browserSupportsEmoji( context, type, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ) {
895	let isIdentical;
896
897	switch ( type ) {
898		case 'flag':
899			/*
900			 * Test for Transgender flag compatibility. Added in Unicode 13.
901			 *
902			 * To test for support, we try to render it, and compare the rendering to how it would look if
903			 * the browser doesn't render it correctly (white flag emoji + transgender symbol).
904			 */
905			isIdentical = emojiSetsRenderIdentically(
906				context,
907				'\uD83C\uDFF3\uFE0F\u200D\u26A7\uFE0F', // as a zero-width joiner sequence
908				'\uD83C\uDFF3\uFE0F\u200B\u26A7\uFE0F' // separated by a zero-width space
909			);
910
911			if ( isIdentical ) {
912				return false;
913			}
914
915			/*
916			 * Test for Sark flag compatibility. This is the least supported of the letter locale flags,
917			 * so gives us an easy test for full support.
918			 *
919			 * To test for support, we try to render it, and compare the rendering to how it would look if
920			 * the browser doesn't render it correctly ([C] + [Q]).
921			 */
922			isIdentical = emojiSetsRenderIdentically(
923				context,
924				'\uD83C\uDDE8\uD83C\uDDF6', // as the sequence of two code points
925				'\uD83C\uDDE8\u200B\uD83C\uDDF6' // as the two code points separated by a zero-width space
926			);
927
928			if ( isIdentical ) {
929				return false;
930			}
931
932			/*
933			 * Test for English flag compatibility. England is a country in the United Kingdom, it
934			 * does not have a two letter locale code but rather a five letter sub-division code.
935			 *
936			 * To test for support, we try to render it, and compare the rendering to how it would look if
937			 * the browser doesn't render it correctly (black flag emoji + [G] + [B] + [E] + [N] + [G]).
938			 */
939			isIdentical = emojiSetsRenderIdentically(
940				context,
941				// as the flag sequence
942				'\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67\uDB40\uDC7F',
943				// with each code point separated by a zero-width space
944				'\uD83C\uDFF4\u200B\uDB40\uDC67\u200B\uDB40\uDC62\u200B\uDB40\uDC65\u200B\uDB40\uDC6E\u200B\uDB40\uDC67\u200B\uDB40\uDC7F'
945			);
946
947			return ! isIdentical;
948		case 'emoji':
949			/*
950			 * Is there a large, hairy, humanoid mythical creature living in the browser?
951			 *
952			 * To test for Emoji 17.0 support, try to render a new emoji: Hairy Creature.
953			 *
954			 * The hairy creature emoji is a single code point emoji. Testing for browser
955			 * support required testing the center point of the emoji to see if it is empty.
956			 *
957			 * 0xD83E 0x1FAC8 (\uD83E\u1FAC8) == 🫈 Hairy creature.
958			 *
959			 * When updating this test, please ensure that the emoji is either a single code point
960			 * or switch to using the emojiSetsRenderIdentically function and testing with a zero-width
961			 * joiner vs a zero-width space.
962			 */
963			const notSupported = emojiRendersEmptyCenterPoint( context, '\uD83E\u1FAC8' );
964			return ! notSupported;
965	}
966
967	return false;
968}
969
970/**
971 * Checks emoji support tests.
972 *
973 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing
974 * scope. Everything must be passed by parameters.
975 *
976 * @since 6.3.0
977 *
978 * @private
979 *
980 * @param {string[]} tests Tests.
981 * @param {Function} browserSupportsEmoji Reference to browserSupportsEmoji function, needed due to minification.
982 * @param {Function} emojiSetsRenderIdentically Reference to emojiSetsRenderIdentically function, needed due to minification.
983 * @param {Function} emojiRendersEmptyCenterPoint Reference to emojiRendersEmptyCenterPoint function, needed due to minification.
984 *
985 * @return {SupportTests} Support tests.
986 */
987function testEmojiSupports( tests, browserSupportsEmoji, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ) {
988	let canvas;
989	if (
990		typeof WorkerGlobalScope !== 'undefined' &&
991		self instanceof WorkerGlobalScope
992	) {
993		canvas = new OffscreenCanvas( 300, 150 ); // Dimensions are default for HTMLCanvasElement.
994	} else {
995		canvas = document.createElement( 'canvas' );
996	}
997
998	const context = canvas.getContext( '2d', { willReadFrequently: true } );
999
1000	/*
1001	 * Chrome on OS X added native emoji rendering in M41. Unfortunately,
1002	 * it doesn't work when the font is bolder than 500 weight. So, we
1003	 * check for bold rendering support to avoid invisible emoji in Chrome.
1004	 */
1005	context.textBaseline = 'top';
1006	context.font = '600 32px Arial';
1007
1008	const supports = {};
1009	tests.forEach( ( test ) => {
1010		supports[ test ] = browserSupportsEmoji( context, test, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint );
1011	} );
1012	return supports;
1013}
1014
1015/**
1016 * Adds a script to the head of the document.
1017 *
1018 * @ignore
1019 *
1020 * @since 4.2.0
1021 *
1022 * @param {string} src The url where the script is located.
1023 *
1024 * @return {void}
1025 */
1026function addScript( src ) {
1027	const script = document.createElement( 'script' );
1028	script.src = src;
1029	script.defer = true;
1030	document.head.appendChild( script );
1031}
1032
1033settings.supports = {
1034	everything: true,
1035	everythingExceptFlag: true
1036};
1037
1038// Obtain the emoji support from the browser, asynchronously when possible.
1039new Promise( ( resolve ) => {
1040	let supportTests = getSessionSupportTests();
1041	if ( supportTests ) {
1042		resolve( supportTests );
1043		return;
1044	}
1045
1046	if ( supportsWorkerOffloading() ) {
1047		try {
1048			// Note that the functions are being passed as arguments due to minification.
1049			const workerScript =
1050				'postMessage(' +
1051				testEmojiSupports.toString() +
1052				'(' +
1053				[
1054					JSON.stringify( tests ),
1055					browserSupportsEmoji.toString(),
1056					emojiSetsRenderIdentically.toString(),
1057					emojiRendersEmptyCenterPoint.toString()
1058				].join( ',' ) +
1059				'));';
1060			const blob = new Blob( [ workerScript ], {
1061				type: 'text/javascript'
1062			} );
1063			const worker = new Worker( URL.createObjectURL( blob ), { name: 'wpTestEmojiSupports' } );
1064			worker.onmessage = ( event ) => {
1065				supportTests = event.data;
1066				setSessionSupportTests( supportTests );
1067				worker.terminate();
1068				resolve( supportTests );
1069			};
1070			return;
1071		} catch ( e ) {}
1072	}
1073
1074	supportTests = testEmojiSupports( tests, browserSupportsEmoji, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint );
1075	setSessionSupportTests( supportTests );
1076	resolve( supportTests );
1077} )
1078	// Once the browser emoji support has been obtained from the session, finalize the settings.
1079	.then( ( supportTests ) => {
1080		/*
1081		 * Tests the browser support for flag emojis and other emojis, and adjusts the
1082		 * support settings accordingly.
1083		 */
1084		for ( const test in supportTests ) {
1085			settings.supports[ test ] = supportTests[ test ];
1086
1087			settings.supports.everything =
1088				settings.supports.everything && settings.supports[ test ];
1089
1090			if ( 'flag' !== test ) {
1091				settings.supports.everythingExceptFlag =
1092					settings.supports.everythingExceptFlag &&
1093					settings.supports[ test ];
1094			}
1095		}
1096
1097		settings.supports.everythingExceptFlag =
1098			settings.supports.everythingExceptFlag &&
1099			! settings.supports.flag;
1100
1101		// When the browser can not render everything we need to load a polyfill.
1102		if ( ! settings.supports.everything ) {
1103			const src = settings.source || {};
1104
1105			if ( src.concatemoji ) {
1106				addScript( src.concatemoji );
1107			} else if ( src.wpemoji && src.twemoji ) {
1108				addScript( src.twemoji );
1109				addScript( src.wpemoji );
1110			}
1111		}
1112	} );
1113//# sourceURL=https://cigue.ch/wp/wp-includes/js/wp-emoji-loader.js
1114</script>
vendor: 1 bytes, line 1114
1114
1115<script type="text/javascript" id="slb_context">/* <![CDATA[ */if ( !!window.jQuery ) {(function($){$(document).ready(function(){if ( !!window.SLB ) { {$.extend(SLB, {"context":["public","user_guest"]});} }})})(jQuery);}/* ]]> */</script>
1115
1116
1117</body>
1118</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.