diff --git a/client/src/components/Button.tsx b/client/src/components/Button.tsx
index 25ddf39..0d401a2 100644
--- a/client/src/components/Button.tsx
+++ b/client/src/components/Button.tsx
@@ -49,6 +49,7 @@
   VideoCameraIcon,
   VolumeIcon,
 } from './SvgIcon';
+import CustomTooltip from './Tooltip';
 
 type ShapedButtonProps = IconButtonProps & {
   Icon: ComponentType<SvgIconProps>;
@@ -99,8 +100,15 @@
   return <RoundButton {...props} aria-label="take picture" Icon={CameraIcon} size="large" />;
 };
 
-export const InfoButton = (props: IconButtonProps) => {
-  return <RoundButton {...props} aria-label="informations" Icon={InfoIcon} size="small" />;
+type InfoButtonProps = IconButtonProps & {
+  tooltipTitle: string;
+};
+export const InfoButton = ({ tooltipTitle, ...props }: InfoButtonProps) => {
+  return (
+    <CustomTooltip className="tooltip" title={tooltipTitle}>
+      <RoundButton {...props} aria-label="informations" Icon={InfoIcon} size="small" />
+    </CustomTooltip>
+  );
 };
 
 export const TipButton = (props: IconButtonProps) => {
diff --git a/client/src/components/Copyright.tsx b/client/src/components/Copyright.tsx
new file mode 100644
index 0000000..a89855f
--- /dev/null
+++ b/client/src/components/Copyright.tsx
@@ -0,0 +1,34 @@
+/*
+ * Copyright (C) 2022 Savoir-faire Linux Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation; either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this program.  If not, see
+ * <https://www.gnu.org/licenses/>.
+ */
+import { Link } from '@mui/material';
+import Typography from '@mui/material/Typography';
+
+// TODO: Choose on which pages to put this.
+export default function Copyright() {
+  return (
+    <Typography variant="body2" color="textSecondary" align="center" sx={{ position: 'absolute', bottom: 0, left: 0 }}>
+      {'Copyright © 2016-'}
+      {new Date().getFullYear()}
+      {' Savoir-faire Linux Inc.'}
+      <Link color="inherit" href="https://jami.net/">
+        Jami.net
+      </Link>{' '}
+      {'.'}
+    </Typography>
+  );
+}
diff --git a/client/src/components/Input.tsx b/client/src/components/Input.tsx
index 47ad45b..e867e26 100644
--- a/client/src/components/Input.tsx
+++ b/client/src/components/Input.tsx
@@ -15,11 +15,22 @@
  * License along with this program.  If not, see
  * <https://www.gnu.org/licenses/>.
  */
-import { IconButtonProps, Stack, TextField, TextFieldProps } from '@mui/material';
+import { GppMaybe, Warning } from '@mui/icons-material';
+import {
+  IconButtonProps,
+  List,
+  ListItem,
+  ListItemIcon,
+  Stack,
+  TextField,
+  TextFieldProps,
+  Typography,
+} from '@mui/material';
 import { styled } from '@mui/material/styles';
 import { ChangeEvent, ReactElement, useCallback, useEffect, useState } from 'react';
 
 import { InfoButton, ToggleVisibilityButton } from './Button';
+import RulesDialog from './RulesDialog';
 import { CheckedIcon, LockIcon, PenIcon, PersonIcon, RoundSaltireIcon } from './SvgIcon';
 
 const iconsHeight = '16px';
@@ -36,15 +47,17 @@
 const StyledPersonIconLight = styled(PersonIcon)({ height: iconsHeight, color: '#03B9E9' });
 const StyledLockIcon = styled(LockIcon)({ height: iconsHeight, color: '#03B9E9' });
 
-type InputProps = TextFieldProps & {
+export type InputProps = TextFieldProps & {
   infoButtonProps?: IconButtonProps;
   success?: boolean;
+  tooltipTitle: string;
 };
 
-export const UsernameInput = ({ infoButtonProps, onChange: _onChange, ...props }: InputProps) => {
+export const UsernameInput = ({ infoButtonProps, onChange: _onChange, tooltipTitle, ...props }: InputProps) => {
   const [isSelected, setIsSelected] = useState(false);
   const [input, setInput] = useState(props.defaultValue);
   const [startAdornment, setStartAdornment] = useState<ReactElement | undefined>();
+  const [isDialogOpened, setIsDialogOpened] = useState<boolean>(false);
 
   const onChange = useCallback(
     (event: ChangeEvent<HTMLInputElement>) => {
@@ -69,27 +82,35 @@
   }, [props.error, props.success, isSelected, input]);
 
   return (
-    <TextField
-      {...props}
-      label="Choose an identifier"
-      variant="standard"
-      InputLabelProps={{ shrink: !!(isSelected || input) }}
-      onChange={onChange}
-      InputProps={{
-        startAdornment,
-        endAdornment: <InfoButton {...infoButtonProps} />,
-      }}
-      onFocus={() => setIsSelected(true)}
-      onBlur={() => setIsSelected(false)}
-    />
+    <>
+      <RulesDialog openDialog={isDialogOpened} title="Username rules :" closeDialog={() => setIsDialogOpened(false)}>
+        <UsernameRules />
+      </RulesDialog>
+      <TextField
+        {...props}
+        label={'Choose an identifier'}
+        variant="standard"
+        InputLabelProps={{ shrink: !!(isSelected || input) }}
+        onChange={onChange}
+        InputProps={{
+          startAdornment,
+          endAdornment: (
+            <InfoButton tooltipTitle={tooltipTitle} {...infoButtonProps} onClick={() => setIsDialogOpened(true)} />
+          ),
+        }}
+        onFocus={() => setIsSelected(true)}
+        onBlur={() => setIsSelected(false)}
+      />
+    </>
   );
 };
 
-export const PasswordInput = ({ infoButtonProps, onChange: _onChange, ...props }: InputProps) => {
+export const PasswordInput = ({ infoButtonProps, onChange: _onChange, tooltipTitle, ...props }: InputProps) => {
   const [showPassword, setShowPassword] = useState(false);
   const [isSelected, setIsSelected] = useState(false);
   const [input, setInput] = useState(props.defaultValue);
   const [startAdornment, setStartAdornment] = useState<ReactElement | undefined>();
+  const [isDialogOpened, setIsDialogOpened] = useState<boolean>(false);
 
   const toggleShowPassword = () => {
     setShowPassword((showPassword) => !showPassword);
@@ -118,26 +139,31 @@
   }, [props.error, props.success, isSelected, input]);
 
   return (
-    <TextField
-      {...props}
-      label="Password"
-      type={showPassword ? 'text' : 'password'}
-      variant="standard"
-      autoComplete="current-password"
-      InputLabelProps={{ shrink: !!(isSelected || input) }}
-      onChange={onChange}
-      InputProps={{
-        startAdornment,
-        endAdornment: (
-          <Stack direction="row" spacing="14px">
-            <InfoButton {...infoButtonProps} />
-            <ToggleVisibilityButton visible={showPassword} onClick={toggleShowPassword} />
-          </Stack>
-        ),
-      }}
-      onFocus={() => setIsSelected(true)}
-      onBlur={() => setIsSelected(false)}
-    />
+    <>
+      <RulesDialog openDialog={isDialogOpened} title="Password rules :" closeDialog={() => setIsDialogOpened(false)}>
+        <PasswordRules />
+      </RulesDialog>
+      <TextField
+        {...props}
+        label="Password"
+        type={showPassword ? 'text' : 'password'}
+        variant="standard"
+        autoComplete="current-password"
+        InputLabelProps={{ shrink: !!(isSelected || input) }}
+        onChange={onChange}
+        InputProps={{
+          startAdornment,
+          endAdornment: (
+            <Stack direction="row" spacing="14px" alignItems="center">
+              <InfoButton tooltipTitle={tooltipTitle} {...infoButtonProps} onClick={() => setIsDialogOpened(true)} />
+              <ToggleVisibilityButton visible={showPassword} onClick={toggleShowPassword} />
+            </Stack>
+          ),
+        }}
+        onFocus={() => setIsSelected(true)}
+        onBlur={() => setIsSelected(false)}
+      />
+    </>
   );
 };
 
@@ -208,3 +234,82 @@
     />
   );
 };
+
+export function inputColor(
+  error?: boolean,
+  success?: boolean
+): 'success' | 'error' | 'primary' | 'secondary' | 'info' | 'warning' | undefined {
+  return error ? 'error' : success ? 'success' : 'primary';
+}
+
+const PasswordRules = () => {
+  return (
+    <Typography variant="body1">
+      <List>
+        <ListItem>
+          <ListItemIcon>
+            <GppMaybe />
+          </ListItemIcon>
+          The password must contain at least 1 lowercase alphabetical character.
+        </ListItem>
+        <ListItem>
+          <ListItemIcon>
+            <GppMaybe />
+          </ListItemIcon>
+          The password must contain at least 1 uppercase alphabetical character.
+        </ListItem>
+        <ListItem>
+          <ListItemIcon>
+            <GppMaybe />
+          </ListItemIcon>
+          The password must contain at least 1 numeric character.
+        </ListItem>
+        <ListItem>
+          <ListItemIcon>
+            <GppMaybe />
+          </ListItemIcon>
+          The password must contain at least one special character.
+        </ListItem>
+        <ListItem>
+          <ListItemIcon>
+            <GppMaybe />
+          </ListItemIcon>
+          The password must be eight characters or longer for Strong strength.
+        </ListItem>
+      </List>
+    </Typography>
+  );
+};
+
+const UsernameRules = () => {
+  return (
+    <Typography variant="body1">
+      <List>
+        <ListItem>
+          <ListItemIcon>
+            <Warning />
+          </ListItemIcon>
+          The username must be 3 to 32 characters long.
+        </ListItem>
+        <ListItem>
+          <ListItemIcon>
+            <Warning />
+          </ListItemIcon>
+          The username may contain lowercase and uppercase alphabetical characters.
+        </ListItem>
+        <ListItem>
+          <ListItemIcon>
+            <Warning />
+          </ListItemIcon>
+          The username may contain hyphens {'(-)'}.
+        </ListItem>
+        <ListItem>
+          <ListItemIcon>
+            <Warning />
+          </ListItemIcon>
+          The username may contain underscores {'(_)'}.
+        </ListItem>
+      </List>
+    </Typography>
+  );
+};
diff --git a/client/src/components/JamiWelcomeLogo.tsx b/client/src/components/JamiWelcomeLogo.tsx
new file mode 100644
index 0000000..8002aab
--- /dev/null
+++ b/client/src/components/JamiWelcomeLogo.tsx
@@ -0,0 +1,45 @@
+/*
+ * Copyright (C) 2022 Savoir-faire Linux Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation; either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this program.  If not, see
+ * <https://www.gnu.org/licenses/>.
+ */
+import { Box, SxProps, Typography } from '@mui/material';
+
+import { ReactComponent as JamiLogo } from '../icons/jami-logo-icon.svg';
+import { jamiLogoDefaultSize } from '../utils/constants';
+
+interface WelcomeLogoProps {
+  logoWidth?: string;
+  logoHeight?: string;
+  boxSxProps?: SxProps;
+}
+
+export default function JamiWelcomeLogo(props: WelcomeLogoProps) {
+  return (
+    <Box
+      sx={{
+        display: 'flex',
+        alignItems: 'center',
+        justifyContent: 'center',
+        textAlign: 'center',
+        flexDirection: 'column',
+        ...props.boxSxProps,
+      }}
+    >
+      <JamiLogo width={props.logoWidth ?? jamiLogoDefaultSize} height={props.logoHeight ?? jamiLogoDefaultSize} />
+      <Typography variant="h1">Welcome to Jami!</Typography>
+    </Box>
+  );
+}
diff --git a/client/src/components/ProcessingRequest.tsx b/client/src/components/ProcessingRequest.tsx
new file mode 100644
index 0000000..c7da9a4
--- /dev/null
+++ b/client/src/components/ProcessingRequest.tsx
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2022 Savoir-faire Linux Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation; either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this program.  If not, see
+ * <https://www.gnu.org/licenses/>.
+ */
+import Backdrop from '@mui/material/Backdrop';
+import CircularProgress from '@mui/material/CircularProgress';
+
+export default function ProcessingRequest(props: { open: boolean }) {
+  return (
+    <Backdrop sx={{ color: '#fff', zIndex: (theme) => theme.zIndex.drawer + 1 }} open={props.open} onClick={() => {}}>
+      <CircularProgress color="inherit" />
+    </Backdrop>
+  );
+}
diff --git a/client/src/components/RulesDialog.tsx b/client/src/components/RulesDialog.tsx
new file mode 100644
index 0000000..5e1e929
--- /dev/null
+++ b/client/src/components/RulesDialog.tsx
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2022 Savoir-faire Linux Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation; either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this program.  If not, see
+ * <https://www.gnu.org/licenses/>.
+ */
+import { Button, Dialog, DialogActions, DialogContent, DialogTitle } from '@mui/material';
+
+interface RulesDialogProps {
+  openDialog: boolean;
+  title: string;
+  closeDialog: () => void;
+  children: React.ReactNode;
+}
+
+export default function RulesDialog(props: RulesDialogProps) {
+  return (
+    <Dialog open={props.openDialog} onClose={props.closeDialog}>
+      <DialogTitle>
+        {props.title}
+        <br />
+      </DialogTitle>
+      <DialogContent>{props.children}</DialogContent>
+      <DialogActions>
+        <Button onClick={props.closeDialog} autoFocus>
+          Close
+        </Button>
+      </DialogActions>
+    </Dialog>
+  );
+}
diff --git a/client/src/components/Tooltip.tsx b/client/src/components/Tooltip.tsx
new file mode 100644
index 0000000..a6ea84b
--- /dev/null
+++ b/client/src/components/Tooltip.tsx
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2022 Savoir-faire Linux Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation; either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this program.  If not, see
+ * <https://www.gnu.org/licenses/>.
+ */
+import { Stack } from '@mui/material';
+import { styled } from '@mui/material/styles';
+import Tooltip, { tooltipClasses, TooltipProps } from '@mui/material/Tooltip';
+
+export default styled(({ className, title, ...props }: TooltipProps) => (
+  <Tooltip {...props} classes={{ popper: className }} title={<span style={{ whiteSpace: 'pre-line' }}>{title}</span>}>
+    <Stack>{props.children}</Stack>
+  </Tooltip>
+))(({ theme }) => ({
+  [`& .${tooltipClasses.tooltip}`]: {
+    backgroundColor: theme.InfoTooltip.backgroundColor.main,
+    color: theme.InfoTooltip.color.main,
+    maxWidth: 220,
+    fontSize: theme.typography.pxToRem(15),
+    boxShadow: '3px 3px 7px #00000029',
+    borderRadius: '5px',
+  },
+}));
diff --git a/client/src/components/welcome.jsx b/client/src/components/welcome.jsx
index 39e222b..9f3978d 100644
--- a/client/src/components/welcome.jsx
+++ b/client/src/components/welcome.jsx
@@ -15,10 +15,12 @@
  * License along with this program.  If not, see
  * <https://www.gnu.org/licenses/>.
  */
-import { Button, Container } from '@mui/material';
+import { Container } from '@mui/material';
 import { AnimatePresence, motion } from 'framer-motion';
 import { useState } from 'react';
 
+import { ReactComponent as JamiLogo } from '../icons/jami-logo-icon.svg';
+
 const list = {
   hidden: { opacity: 0 },
   visible: {
@@ -49,29 +51,15 @@
             onAnimationComplete={(a) => {
               if (a === 'hidden') {
                 props.onComplete();
-              } else if (!props.showSetup) {
+              } else {
                 setVisible(false);
               }
             }}
           >
             <motion.div variants={item}>
-              <img
-                src="/jami-logo-icon.svg"
-                style={{
-                  width: '32',
-                  height: '32',
-                }}
-                alt="jami n/logo"
-              />
+              <JamiLogo width="95%" />
             </motion.div>
             <motion.h1 variants={item}>Welcome to Jami</motion.h1>
-            {props.showSetup && (
-              <motion.div variants={item}>
-                <Button variant="outlined" onClick={() => setVisible(false)}>
-                  Start setup
-                </Button>
-              </motion.div>
-            )}
           </motion.div>
         )}
       </AnimatePresence>
diff --git a/client/src/icons/jami-logo-icon.svg b/client/src/icons/jami-logo-icon.svg
new file mode 100644
index 0000000..9dfb207
--- /dev/null
+++ b/client/src/icons/jami-logo-icon.svg
@@ -0,0 +1,991 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 21.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Calque_1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 511.99999 511.99999"
+   xml:space="preserve"
+   sodipodi:docname="jami-logo-icon.svg"
+   width="512"
+   height="512"
+   inkscape:version="0.92.2 5c3e80d, 2017-08-06"><metadata
+     id="metadata505"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+     id="defs503" /><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1365"
+     inkscape:window-height="808"
+     id="namedview501"
+     showgrid="false"
+     inkscape:zoom="0.7174428"
+     inkscape:cx="240.66587"
+     inkscape:cy="273.58391"
+     inkscape:window-x="0"
+     inkscape:window-y="0"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="Calque_1" /><style
+     type="text/css"
+     id="style2">
+	.st0{fill:url(#SVGID_1_);}
+	.st1{fill:url(#SVGID_2_);}
+	.st2{fill:url(#SVGID_3_);}
+	.st3{fill:url(#SVGID_4_);}
+	.st4{fill:url(#SVGID_5_);}
+	.st5{fill:url(#SVGID_6_);}
+	.st6{opacity:0.4;fill:url(#SVGID_7_);enable-background:new    ;}
+	.st7{fill:url(#SVGID_8_);}
+	.st8{fill:url(#SVGID_9_);}
+	.st9{fill:url(#SVGID_10_);}
+	.st10{fill:url(#SVGID_11_);}
+	.st11{fill:url(#SVGID_12_);}
+	.st12{fill:url(#SVGID_13_);}
+	.st13{fill:url(#SVGID_14_);}
+	.st14{fill:url(#SVGID_15_);}
+	.st15{fill:url(#SVGID_16_);}
+	.st16{opacity:0.2;fill:url(#SVGID_17_);enable-background:new    ;}
+	.st17{fill:url(#SVGID_18_);}
+	.st18{fill:url(#SVGID_19_);}
+	.st19{opacity:0.25;fill:url(#SVGID_20_);enable-background:new    ;}
+	.st20{fill:url(#SVGID_21_);}
+	.st21{fill:url(#SVGID_22_);}
+	.st22{opacity:0.2;fill:url(#SVGID_23_);enable-background:new    ;}
+	.st23{fill:url(#SVGID_24_);}
+</style><g
+     id="g498"
+     transform="matrix(3.9195101,0,0,3.9195101,28.080488,28.128079)"><g
+       id="g496"><linearGradient
+         id="SVGID_1_"
+         gradientUnits="userSpaceOnUse"
+         x1="69.032799"
+         y1="454.9245"
+         x2="64.443497"
+         y2="449.57031"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2B3B6A"
+           id="stop4" /><stop
+           offset="1"
+           style="stop-color:#2B3B6A"
+           id="stop6" /></linearGradient><polygon
+         class="st0"
+         points="62,55.6 58.4,62.2 54.9,55.8 "
+         id="polygon9"
+         style="fill:url(#SVGID_1_)" /><linearGradient
+         id="SVGID_2_"
+         gradientUnits="userSpaceOnUse"
+         x1="108.534"
+         y1="457.23331"
+         x2="108.534"
+         y2="494.03271"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2B3B6A"
+           id="stop11" /><stop
+           offset="7.040000e-02"
+           style="stop-color:#2D4576"
+           id="stop13" /><stop
+           offset="0.2165"
+           style="stop-color:#2E5589"
+           id="stop15" /><stop
+           offset="0.3608"
+           style="stop-color:#2B5E97"
+           id="stop17" /><stop
+           offset="0.5"
+           style="stop-color:#29629C"
+           id="stop19" /><stop
+           offset="0.6392"
+           style="stop-color:#2B5E97"
+           id="stop21" /><stop
+           offset="0.7835"
+           style="stop-color:#2E5589"
+           id="stop23" /><stop
+           offset="0.9296"
+           style="stop-color:#2D4576"
+           id="stop25" /><stop
+           offset="1"
+           style="stop-color:#2B3B6A"
+           id="stop27" /></linearGradient><path
+         class="st1"
+         d="m 85.5,57.5 c 26.1,4.2 29.8,10.7 29.8,10.7 0,0.4 0,0.8 0,1.2 0,0.2 -0.1,0.4 -0.2,0.7 -0.1,0.3 -2.7,5.7 -19.6,9.3 z"
+         id="path30"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_2_)" /><linearGradient
+         id="SVGID_3_"
+         gradientUnits="userSpaceOnUse"
+         x1="26.7686"
+         y1="496.82779"
+         x2="38.709099"
+         y2="475.56781"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#252B59"
+           id="stop32" /><stop
+           offset="8.590000e-02"
+           style="stop-color:#2B3A69"
+           id="stop34" /><stop
+           offset="0.2267"
+           style="stop-color:#2E4A7C"
+           id="stop36" /><stop
+           offset="0.3658"
+           style="stop-color:#2E5487"
+           id="stop38" /><stop
+           offset="0.5"
+           style="stop-color:#2D578C"
+           id="stop40" /><stop
+           offset="0.6342"
+           style="stop-color:#2E5487"
+           id="stop42" /><stop
+           offset="0.7733"
+           style="stop-color:#2E4A7C"
+           id="stop44" /><stop
+           offset="0.9141"
+           style="stop-color:#2B3A69"
+           id="stop46" /><stop
+           offset="1"
+           style="stop-color:#252B59"
+           id="stop48" /></linearGradient><path
+         class="st2"
+         d="m 19.8,78.5 c -5.9,15.7 -2.9,20.6 -2.7,21 0.1,0.2 0.2,0.4 0.4,0.5 0.4,0 0.8,-0.1 1.2,-0.2 0,0 10.7,-0.5 23.2,-18.3 z"
+         id="path51"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_3_)" /><linearGradient
+         id="SVGID_4_"
+         gradientUnits="userSpaceOnUse"
+         x1="60.8512"
+         y1="424.64859"
+         x2="41.0872"
+         y2="401.59052"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#181844"
+           id="stop53" /><stop
+           offset="2.840000e-02"
+           style="stop-color:#1E1E4C"
+           id="stop55" /><stop
+           offset="0.1353"
+           style="stop-color:#283261"
+           id="stop57" /><stop
+           offset="0.2468"
+           style="stop-color:#2D4172"
+           id="stop59" /><stop
+           offset="0.3647"
+           style="stop-color:#2E4A7C"
+           id="stop61" /><stop
+           offset="0.5"
+           style="stop-color:#2E4D7F"
+           id="stop63" /><stop
+           offset="0.6177"
+           style="stop-color:#2D4576"
+           id="stop65" /><stop
+           offset="0.8125"
+           style="stop-color:#273160"
+           id="stop67" /><stop
+           offset="1"
+           style="stop-color:#181844"
+           id="stop69" /></linearGradient><path
+         class="st3"
+         d="M 58.8,18.6 C 44.5,2.9 37.5,3.8 37.1,3.9 c -0.2,0 -0.5,0.1 -0.7,0.2 -0.5,0.2 -1,1.8 -1,1.8 0,0 -3,8.7 9.1,31.9 z"
+         id="path72"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_4_)" /><linearGradient
+         id="SVGID_5_"
+         gradientUnits="userSpaceOnUse"
+         x1="99.972099"
+         y1="499.3526"
+         x2="84.703598"
+         y2="450.16641"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#181844"
+           id="stop74" /><stop
+           offset="2.840000e-02"
+           style="stop-color:#1E1E4C"
+           id="stop76" /><stop
+           offset="0.1353"
+           style="stop-color:#283261"
+           id="stop78" /><stop
+           offset="0.2468"
+           style="stop-color:#2D4172"
+           id="stop80" /><stop
+           offset="0.3647"
+           style="stop-color:#2E4A7C"
+           id="stop82" /><stop
+           offset="0.5"
+           style="stop-color:#2E4D7F"
+           id="stop84" /><stop
+           offset="0.6177"
+           style="stop-color:#2D4576"
+           id="stop86" /><stop
+           offset="0.8125"
+           style="stop-color:#273160"
+           id="stop88" /><stop
+           offset="1"
+           style="stop-color:#181844"
+           id="stop90" /></linearGradient><path
+         class="st4"
+         d="m 71.2,78.8 c 19.4,22.2 26.2,21 26.2,21 0.4,0.1 0.9,0.2 1.3,0.2 0.2,-0.1 0.3,-0.3 0.4,-0.5 0.3,-0.4 5.8,-9.4 -12.8,-41.8 z"
+         id="path93"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_5_)" /><linearGradient
+         id="SVGID_6_"
+         gradientUnits="userSpaceOnUse"
+         x1="31.644699"
+         y1="457.23309"
+         x2="31.644699"
+         y2="494.03171"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2B3B6A"
+           id="stop95" /><stop
+           offset="7.040000e-02"
+           style="stop-color:#2D4576"
+           id="stop97" /><stop
+           offset="0.2165"
+           style="stop-color:#2E5589"
+           id="stop99" /><stop
+           offset="0.3608"
+           style="stop-color:#2B5E97"
+           id="stop101" /><stop
+           offset="0.5"
+           style="stop-color:#29629C"
+           id="stop103" /><stop
+           offset="0.6392"
+           style="stop-color:#2B5E97"
+           id="stop105" /><stop
+           offset="0.7835"
+           style="stop-color:#2E5589"
+           id="stop107" /><stop
+           offset="0.9296"
+           style="stop-color:#2D4576"
+           id="stop109" /><stop
+           offset="1"
+           style="stop-color:#2B3B6A"
+           id="stop111" /></linearGradient><path
+         class="st5"
+         d="M 46.1,82.2 C 6.1,80.5 1.3,70.6 1.1,70.1 1.1,69.9 1,69.7 1,69.5 c 0.1,-0.7 1.5,-2 1.5,-2 0,0 10.6,-6.5 28.3,-10 z"
+         id="path114"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_6_)" /><linearGradient
+         id="SVGID_7_"
+         gradientUnits="userSpaceOnUse"
+         x1="51.890598"
+         y1="421.1236"
+         x2="66.336998"
+         y2="421.1236"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2B3B6A"
+           id="stop116" /><stop
+           offset="1"
+           style="stop-color:#2B3B6A"
+           id="stop118" /></linearGradient><path
+         class="st6"
+         d="m 57.6,17.4 c -5,5.4 -9.6,11.2 -13.8,17.2 h 1 C 47.9,30.7 55.6,20.9 58.2,18.1 Z"
+         id="path121"
+         inkscape:connector-curvature="0"
+         style="opacity:0.4;fill:url(#SVGID_7_);enable-background:new" /><linearGradient
+         id="SVGID_8_"
+         gradientUnits="userSpaceOnUse"
+         x1="70.970901"
+         y1="436.4003"
+         x2="70.970901"
+         y2="401.6908"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#252B59"
+           id="stop123" /><stop
+           offset="0.5"
+           style="stop-color:#2D578C"
+           id="stop125" /><stop
+           offset="0.6934"
+           style="stop-color:#2D5588"
+           id="stop127" /><stop
+           offset="0.8038"
+           style="stop-color:#2E4F80"
+           id="stop129" /><stop
+           offset="0.8932"
+           style="stop-color:#2D4474"
+           id="stop131" /><stop
+           offset="0.971"
+           style="stop-color:#283463"
+           id="stop133" /><stop
+           offset="1"
+           style="stop-color:#252B59"
+           id="stop135" /></linearGradient><path
+         class="st7"
+         d="M 73.8,35.4 C 84.2,10.7 80.2,5 80.2,5 80.1,4.7 80,4.3 79.9,4 79.7,3.9 79.5,3.9 79.2,3.8 78.7,3.7 67.8,2.3 44.8,34.5 Z"
+         id="path138"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_8_)" /><linearGradient
+         id="SVGID_9_"
+         gradientUnits="userSpaceOnUse"
+         x1="39.266899"
+         y1="503.76541"
+         x2="102.6764"
+         y2="407.91721"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2867A2"
+           id="stop140" /><stop
+           offset="8.239999e-02"
+           style="stop-color:#177EBC"
+           id="stop142" /><stop
+           offset="0.1675"
+           style="stop-color:#0E91D1"
+           id="stop144" /><stop
+           offset="0.2527"
+           style="stop-color:#10A2E1"
+           id="stop146" /><stop
+           offset="0.337"
+           style="stop-color:#18ACEA"
+           id="stop148" /><stop
+           offset="0.42"
+           style="stop-color:#24B1ED"
+           id="stop150" /><stop
+           offset="0.5"
+           style="stop-color:#28B1ED"
+           id="stop152" /><stop
+           offset="0.58"
+           style="stop-color:#24B1ED"
+           id="stop154" /><stop
+           offset="0.663"
+           style="stop-color:#18ACEA"
+           id="stop156" /><stop
+           offset="0.7473"
+           style="stop-color:#10A2E1"
+           id="stop158" /><stop
+           offset="0.8325"
+           style="stop-color:#0E91D1"
+           id="stop160" /><stop
+           offset="0.9176"
+           style="stop-color:#177EBC"
+           id="stop162" /><stop
+           offset="1"
+           style="stop-color:#2867A2"
+           id="stop164" /></linearGradient><path
+         class="st8"
+         d="m 58,97.4 c -14.2,15.4 -21,14.5 -21.4,14.5 -0.6,-0.2 -1.2,-0.5 -1.7,-0.8 l -17.3,-11 C 24.9,98.5 33.9,89.9 43.3,78.8 Z"
+         id="path167"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_9_)" /><linearGradient
+         id="SVGID_10_"
+         gradientUnits="userSpaceOnUse"
+         x1="33.568001"
+         y1="505.68729"
+         x2="58.682999"
+         y2="483.20071"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2C5D95"
+           id="stop169" /><stop
+           offset="8.220001e-02"
+           style="stop-color:#246EAB"
+           id="stop171" /><stop
+           offset="0.1808"
+           style="stop-color:#1B79B9"
+           id="stop173" /><stop
+           offset="0.3007"
+           style="stop-color:#1080C2"
+           id="stop175" /><stop
+           offset="0.5"
+           style="stop-color:#0E81C5"
+           id="stop177" /><stop
+           offset="0.6993"
+           style="stop-color:#1080C2"
+           id="stop179" /><stop
+           offset="0.8192"
+           style="stop-color:#1B79B9"
+           id="stop181" /><stop
+           offset="0.9178"
+           style="stop-color:#246EAB"
+           id="stop183" /><stop
+           offset="1"
+           style="stop-color:#2C5D95"
+           id="stop185" /></linearGradient><path
+         class="st9"
+         d="m 58.6,98 c -14.2,15.4 -21,14.5 -21.4,14.5 -0.6,-0.2 -1.2,-0.5 -1.7,-0.8 L 17.6,100 c 7.3,-1.6 16.9,-9.6 26.3,-20.7 z"
+         id="path188"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_10_)" /><linearGradient
+         id="SVGID_11_"
+         gradientUnits="userSpaceOnUse"
+         x1="31.321199"
+         y1="407.25909"
+         x2="89.6399"
+         y2="504.45679"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2C5D95"
+           id="stop190" /><stop
+           offset="1.760000e-02"
+           style="stop-color:#2A6199"
+           id="stop192" /><stop
+           offset="0.1407"
+           style="stop-color:#1C79B7"
+           id="stop194" /><stop
+           offset="0.2631"
+           style="stop-color:#0A8CCA"
+           id="stop196" /><stop
+           offset="0.3837"
+           style="stop-color:#0B97D4"
+           id="stop198" /><stop
+           offset="0.5"
+           style="stop-color:#0E9AD8"
+           id="stop200" /><stop
+           offset="0.6163"
+           style="stop-color:#0B97D4"
+           id="stop202" /><stop
+           offset="0.7369"
+           style="stop-color:#0A8CCA"
+           id="stop204" /><stop
+           offset="0.8593"
+           style="stop-color:#1C79B7"
+           id="stop206" /><stop
+           offset="0.9824"
+           style="stop-color:#2A6199"
+           id="stop208" /><stop
+           offset="1"
+           style="stop-color:#2C5D95"
+           id="stop210" /></linearGradient><path
+         class="st10"
+         d="m 20.7,38 c -6.3,-16.2 -3.2,-21.3 -3,-21.6 0.4,-0.5 0.9,-0.9 1.4,-1.2 l 17.3,-11 c -1.5,7.1 2.3,18 8.2,30.7 z"
+         id="path213"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_11_)" /><linearGradient
+         id="SVGID_12_"
+         gradientUnits="userSpaceOnUse"
+         x1="94.402802"
+         y1="503.86551"
+         x2="56.903801"
+         y2="456.63391"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2C5D95"
+           id="stop215" /><stop
+           offset="2.570000e-02"
+           style="stop-color:#2A6199"
+           id="stop217" /><stop
+           offset="0.2053"
+           style="stop-color:#1C79B7"
+           id="stop219" /><stop
+           offset="0.384"
+           style="stop-color:#0A8CCA"
+           id="stop221" /><stop
+           offset="0.5599"
+           style="stop-color:#0B97D4"
+           id="stop223" /><stop
+           offset="0.7296"
+           style="stop-color:#0E9AD8"
+           id="stop225" /><stop
+           offset="0.7925"
+           style="stop-color:#0B97D4"
+           id="stop227" /><stop
+           offset="0.8577"
+           style="stop-color:#0A8CCA"
+           id="stop229" /><stop
+           offset="0.9239"
+           style="stop-color:#1C79B7"
+           id="stop231" /><stop
+           offset="0.9905"
+           style="stop-color:#2A6199"
+           id="stop233" /><stop
+           offset="1"
+           style="stop-color:#2C5D95"
+           id="stop235" /></linearGradient><path
+         class="st11"
+         d="m 57.2,57.2 c -8.7,0 -17.4,0.7 -26,1.9 0.3,0.5 4.3,7.2 7.2,11.7 27.8,42.8 40.8,41.1 41.4,41 0.6,-0.2 1.2,-0.5 1.7,-0.8 L 98.8,100 C 87,97.5 70.6,78.2 57.2,57.2 Z"
+         id="path238"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_12_)" /><linearGradient
+         id="SVGID_13_"
+         gradientUnits="userSpaceOnUse"
+         x1="40.217499"
+         y1="431.07239"
+         x2="32.916401"
+         y2="404.7886"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2C5D95"
+           id="stop240" /><stop
+           offset="8.220001e-02"
+           style="stop-color:#246EAB"
+           id="stop242" /><stop
+           offset="0.1808"
+           style="stop-color:#1B79B9"
+           id="stop244" /><stop
+           offset="0.3007"
+           style="stop-color:#1080C2"
+           id="stop246" /><stop
+           offset="0.5"
+           style="stop-color:#0E81C5"
+           id="stop248" /><stop
+           offset="0.6993"
+           style="stop-color:#1080C2"
+           id="stop250" /><stop
+           offset="0.8192"
+           style="stop-color:#1B79B9"
+           id="stop252" /><stop
+           offset="0.9178"
+           style="stop-color:#246EAB"
+           id="stop254" /><stop
+           offset="1"
+           style="stop-color:#2C5D95"
+           id="stop256" /></linearGradient><path
+         class="st12"
+         d="M 20.1,38.5 C 13.8,22.3 16.9,17.2 17.1,16.9 17.5,16.4 18,16 18.5,15.7 l 18,-11.6 c -1.5,7.1 1.7,18.6 7.6,31.2 z"
+         id="path259"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_13_)" /><linearGradient
+         id="SVGID_14_"
+         gradientUnits="userSpaceOnUse"
+         x1="122.9025"
+         y1="448.79709"
+         x2="9.1478996"
+         y2="448.79709"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2867A2"
+           id="stop261" /><stop
+           offset="1.280000e-02"
+           style="stop-color:#256BA7"
+           id="stop263" /><stop
+           offset="0.1121"
+           style="stop-color:#0B83C3"
+           id="stop265" /><stop
+           offset="0.2115"
+           style="stop-color:#1797D8"
+           id="stop267" /><stop
+           offset="0.3099"
+           style="stop-color:#25A3E2"
+           id="stop269" /><stop
+           offset="0.4066"
+           style="stop-color:#27ABE7"
+           id="stop271" /><stop
+           offset="0.5"
+           style="stop-color:#2AAEEA"
+           id="stop273" /><stop
+           offset="0.5934"
+           style="stop-color:#27ABE7"
+           id="stop275" /><stop
+           offset="0.6901"
+           style="stop-color:#25A3E2"
+           id="stop277" /><stop
+           offset="0.7885"
+           style="stop-color:#1797D8"
+           id="stop279" /><stop
+           offset="0.8879"
+           style="stop-color:#0B83C3"
+           id="stop281" /><stop
+           offset="0.9872"
+           style="stop-color:#256BA7"
+           id="stop283" /><stop
+           offset="1"
+           style="stop-color:#2867A2"
+           id="stop285" /></linearGradient><path
+         class="st13"
+         d="m 85.5,59.6 c 13.5,1.9 24.7,4.7 29.8,9.8 V 48.9 c 0,-0.6 -0.1,-1.3 -0.2,-1.9 -0.1,-0.3 -2.7,-5.6 -19,-9.1 z"
+         id="path288"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_14_)" /><linearGradient
+         id="SVGID_15_"
+         gradientUnits="userSpaceOnUse"
+         x1="90.294098"
+         y1="447.1362"
+         x2="122.8074"
+         y2="448.8884"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2E5284"
+           id="stop290" /><stop
+           offset="6.100000e-03"
+           style="stop-color:#2E5486"
+           id="stop292" /><stop
+           offset="9.120000e-02"
+           style="stop-color:#29649D"
+           id="stop294" /><stop
+           offset="0.1876"
+           style="stop-color:#236FAD"
+           id="stop296" /><stop
+           offset="0.3049"
+           style="stop-color:#1D77B6"
+           id="stop298" /><stop
+           offset="0.5"
+           style="stop-color:#1C78B9"
+           id="stop300" /><stop
+           offset="0.6951"
+           style="stop-color:#1D77B6"
+           id="stop302" /><stop
+           offset="0.8124"
+           style="stop-color:#236FAD"
+           id="stop304" /><stop
+           offset="0.9088"
+           style="stop-color:#29649D"
+           id="stop306" /><stop
+           offset="0.9939"
+           style="stop-color:#2E5486"
+           id="stop308" /><stop
+           offset="1"
+           style="stop-color:#2E5284"
+           id="stop310" /></linearGradient><path
+         class="st14"
+         d="m 85.5,58.8 c 13.5,1.9 24.7,5.5 29.8,10.6 V 48.1 c 0,-0.6 -0.1,-1.3 -0.2,-1.9 -0.1,-0.3 -2.7,-5.6 -19,-9.1 z"
+         id="path313"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_15_)" /><linearGradient
+         id="SVGID_16_"
+         gradientUnits="userSpaceOnUse"
+         x1="9.0577002"
+         y1="447.19119"
+         x2="67.718597"
+         y2="447.19119"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2867A2"
+           id="stop315" /><stop
+           offset="2.250000e-02"
+           style="stop-color:#256BA7"
+           id="stop317" /><stop
+           offset="0.1971"
+           style="stop-color:#0B83C3"
+           id="stop319" /><stop
+           offset="0.3718"
+           style="stop-color:#1797D8"
+           id="stop321" /><stop
+           offset="0.5447"
+           style="stop-color:#25A3E2"
+           id="stop323" /><stop
+           offset="0.7147"
+           style="stop-color:#27ABE7"
+           id="stop325" /><stop
+           offset="0.8788"
+           style="stop-color:#2AAEEA"
+           id="stop327" /><stop
+           offset="0.9015"
+           style="stop-color:#27ABE7"
+           id="stop329" /><stop
+           offset="0.9249"
+           style="stop-color:#25A3E2"
+           id="stop331" /><stop
+           offset="0.9487"
+           style="stop-color:#1797D8"
+           id="stop333" /><stop
+           offset="0.9728"
+           style="stop-color:#0B83C3"
+           id="stop335" /><stop
+           offset="0.9969"
+           style="stop-color:#256BA7"
+           id="stop337" /><stop
+           offset="1"
+           style="stop-color:#2867A2"
+           id="stop339" /></linearGradient><path
+         class="st15"
+         d="M 73.2,35.1 C 70.2,35 63.7,34.7 58.1,34.7 7.1,34.7 1.4,46.5 1.2,47 1,47.6 1,48.3 1,48.9 v 20.6 c 5,-5 15.9,-7.7 29.2,-9.7 8.6,-1.2 17.2,-1.9 25.9,-2 1.6,0 3.2,0 4.8,0 -0.1,0 15.4,-22.6 12.3,-22.7 z"
+         id="path342"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_16_)" /><linearGradient
+         id="SVGID_17_"
+         gradientUnits="userSpaceOnUse"
+         x1="50.312599"
+         y1="432.0108"
+         x2="28.266399"
+         y2="428.91061"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2B3B6A"
+           id="stop344" /><stop
+           offset="1"
+           style="stop-color:#2B3B6A"
+           id="stop346" /></linearGradient><path
+         class="st16"
+         d="M 44.1,33.5 C 33.4,34 25.7,34.8 19.3,36.6 l 0.3,0.8 c 0.6,-0.1 1.3,-0.3 1.9,-0.4 7.7,-1.2 15.4,-2 23.1,-2.3 z"
+         id="path349"
+         inkscape:connector-curvature="0"
+         style="opacity:0.2;fill:url(#SVGID_17_);enable-background:new" /><linearGradient
+         id="SVGID_18_"
+         gradientUnits="userSpaceOnUse"
+         x1="72.745102"
+         y1="450.86691"
+         x2="10.4435"
+         y2="442.10559"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2867A2"
+           id="stop351" /><stop
+           offset="3.820000e-02"
+           style="stop-color:#2174B1"
+           id="stop353" /><stop
+           offset="0.1177"
+           style="stop-color:#0B86C4"
+           id="stop355" /><stop
+           offset="0.2081"
+           style="stop-color:#0A94D2"
+           id="stop357" /><stop
+           offset="0.3177"
+           style="stop-color:#0C9BDB"
+           id="stop359" /><stop
+           offset="0.5"
+           style="stop-color:#109EDE"
+           id="stop361" /><stop
+           offset="0.6823"
+           style="stop-color:#0C9BDB"
+           id="stop363" /><stop
+           offset="0.7919"
+           style="stop-color:#0A94D2"
+           id="stop365" /><stop
+           offset="0.8823"
+           style="stop-color:#0B86C4"
+           id="stop367" /><stop
+           offset="0.9618"
+           style="stop-color:#2174B1"
+           id="stop369" /><stop
+           offset="1"
+           style="stop-color:#2867A2"
+           id="stop371" /></linearGradient><path
+         class="st17"
+         d="M 73.2,34.3 C 70.2,34.2 63.7,33.9 58.1,33.9 7,33.9 1.4,45.7 1.1,46.3 1,46.8 1,47.5 1,48.1 V 69.5 C 6,64.5 16.9,61 30.2,59 c 8.6,-1.2 17.2,-1.9 25.9,-2 1.6,0 3.2,0 4.8,0 2.3,0.1 15.4,-22.6 12.3,-22.7 z"
+         id="path374"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_18_)" /><linearGradient
+         id="SVGID_19_"
+         gradientUnits="userSpaceOnUse"
+         x1="101.6202"
+         y1="407.733"
+         x2="71.993301"
+         y2="458.75711"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2867A2"
+           id="stop376" /><stop
+           offset="0.1238"
+           style="stop-color:#177EBC"
+           id="stop378" /><stop
+           offset="0.2516"
+           style="stop-color:#0E91D1"
+           id="stop380" /><stop
+           offset="0.3797"
+           style="stop-color:#10A2E1"
+           id="stop382" /><stop
+           offset="0.5064"
+           style="stop-color:#18ACEA"
+           id="stop384" /><stop
+           offset="0.631"
+           style="stop-color:#24B1ED"
+           id="stop386" /><stop
+           offset="0.7513"
+           style="stop-color:#28B1ED"
+           id="stop388" /><stop
+           offset="0.7911"
+           style="stop-color:#24B1ED"
+           id="stop390" /><stop
+           offset="0.8324"
+           style="stop-color:#18ACEA"
+           id="stop392" /><stop
+           offset="0.8743"
+           style="stop-color:#10A2E1"
+           id="stop394" /><stop
+           offset="0.9167"
+           style="stop-color:#0E91D1"
+           id="stop396" /><stop
+           offset="0.959"
+           style="stop-color:#177EBC"
+           id="stop398" /><stop
+           offset="1"
+           style="stop-color:#2867A2"
+           id="stop400" /></linearGradient><path
+         class="st18"
+         d="M 58.2,58.8 C 72.1,37.9 82.4,16 79.8,4.1 l 17.3,11 c 0.5,0.3 1,0.7 1.4,1.2 0.3,0.5 7.1,11.7 -20.7,54.5 -2,3.2 -3.9,6.9 -4.6,7.2 C 69.1,74 60.6,62.4 58.5,59.5 58.3,59.1 58.2,58.8 58.2,58.8 Z"
+         id="path403"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_19_)" /><linearGradient
+         id="SVGID_20_"
+         gradientUnits="userSpaceOnUse"
+         x1="105.3445"
+         y1="433.3988"
+         x2="94.557503"
+         y2="453.6416"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2B3B6A"
+           id="stop405" /><stop
+           offset="1"
+           style="stop-color:#2B3B6A"
+           id="stop407" /></linearGradient><path
+         class="st19"
+         d="M 96.6,37.2 C 93.5,45 89.8,52.5 85.5,59.6 l 1.3,0.2 c 5.5,-9.5 8.7,-16.5 10.9,-22.4 z"
+         id="path410"
+         inkscape:connector-curvature="0"
+         style="opacity:0.25;fill:url(#SVGID_20_);enable-background:new" /><linearGradient
+         id="SVGID_21_"
+         gradientUnits="userSpaceOnUse"
+         x1="100.6479"
+         y1="408.8533"
+         x2="70.927002"
+         y2="464.6275"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2867A2"
+           id="stop412" /><stop
+           offset="3.820000e-02"
+           style="stop-color:#2174B1"
+           id="stop414" /><stop
+           offset="0.1177"
+           style="stop-color:#0B86C4"
+           id="stop416" /><stop
+           offset="0.2081"
+           style="stop-color:#0A94D2"
+           id="stop418" /><stop
+           offset="0.3177"
+           style="stop-color:#0C9BDB"
+           id="stop420" /><stop
+           offset="0.5"
+           style="stop-color:#109EDE"
+           id="stop422" /><stop
+           offset="0.6823"
+           style="stop-color:#0C9BDB"
+           id="stop424" /><stop
+           offset="0.7919"
+           style="stop-color:#0A94D2"
+           id="stop426" /><stop
+           offset="0.8823"
+           style="stop-color:#0B86C4"
+           id="stop428" /><stop
+           offset="0.9618"
+           style="stop-color:#2174B1"
+           id="stop430" /><stop
+           offset="1"
+           style="stop-color:#2867A2"
+           id="stop432" /></linearGradient><path
+         class="st20"
+         d="M 78.5,71.4 C 106.3,28.6 99.5,17.4 99.2,16.9 98.8,16.4 98.3,16 97.8,15.7 L 79.8,4.1 c 2.5,11.8 -7.4,34.6 -21.2,55.5 4.6,7.1 9.4,14 14.5,19.9 1,-1.2 3.6,-5.2 5.4,-8.1 z"
+         id="path435"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_21_)" /><linearGradient
+         id="SVGID_22_"
+         gradientUnits="userSpaceOnUse"
+         x1="102.9539"
+         y1="410.10971"
+         x2="72.971397"
+         y2="466.375"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2867A2"
+           id="stop437" /><stop
+           offset="3.820000e-02"
+           style="stop-color:#2174B1"
+           id="stop439" /><stop
+           offset="0.1177"
+           style="stop-color:#0B86C4"
+           id="stop441" /><stop
+           offset="0.2081"
+           style="stop-color:#0A94D2"
+           id="stop443" /><stop
+           offset="0.3177"
+           style="stop-color:#0C9BDB"
+           id="stop445" /><stop
+           offset="0.5"
+           style="stop-color:#109EDE"
+           id="stop447" /><stop
+           offset="0.6823"
+           style="stop-color:#0C9BDB"
+           id="stop449" /><stop
+           offset="0.7919"
+           style="stop-color:#0A94D2"
+           id="stop451" /><stop
+           offset="0.8823"
+           style="stop-color:#0B86C4"
+           id="stop453" /><stop
+           offset="0.9618"
+           style="stop-color:#2174B1"
+           id="stop455" /><stop
+           offset="1"
+           style="stop-color:#2867A2"
+           id="stop457" /></linearGradient><path
+         class="st21"
+         d="M 72.6,80.2 C 72.7,80.1 72.8,80.1 72.8,80 67.5,73.8 62.6,67.2 58.1,60.3 c -0.1,0.1 -0.2,0.2 -0.2,0.4 0,-0.1 9.7,15.2 14.7,19.5 z"
+         id="path460"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_22_)" /><linearGradient
+         id="SVGID_23_"
+         gradientUnits="userSpaceOnUse"
+         x1="54.563702"
+         y1="474.08539"
+         x2="62.254002"
+         y2="494.91971"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2B3B6A"
+           id="stop462" /><stop
+           offset="1"
+           style="stop-color:#2B3B6A"
+           id="stop464" /></linearGradient><path
+         class="st22"
+         d="M 58.2,98.4 C 57.9,98.1 47.7,86.1 43.1,79 l -0.8,0.9 C 46.9,86.6 52,93 57.6,99 Z"
+         id="path467"
+         inkscape:connector-curvature="0"
+         style="opacity:0.2;fill:url(#SVGID_23_);enable-background:new" /><linearGradient
+         id="SVGID_24_"
+         gradientUnits="userSpaceOnUse"
+         x1="69.167397"
+         y1="452.6575"
+         x2="78.220901"
+         y2="509.02249"
+         gradientTransform="translate(-8.0854,-395.1333)"><stop
+           offset="0"
+           style="stop-color:#2E5284"
+           id="stop469" /><stop
+           offset="2.440000e-02"
+           style="stop-color:#2C5C92"
+           id="stop471" /><stop
+           offset="8.880000e-02"
+           style="stop-color:#2075B1"
+           id="stop473" /><stop
+           offset="0.1599"
+           style="stop-color:#0B86C4"
+           id="stop475" /><stop
+           offset="0.2403"
+           style="stop-color:#0A94D2"
+           id="stop477" /><stop
+           offset="0.3378"
+           style="stop-color:#0E9CDA"
+           id="stop479" /><stop
+           offset="0.5"
+           style="stop-color:#109EDE"
+           id="stop481" /><stop
+           offset="0.6718"
+           style="stop-color:#0C9BDB"
+           id="stop483" /><stop
+           offset="0.7751"
+           style="stop-color:#0A94D2"
+           id="stop485" /><stop
+           offset="0.8603"
+           style="stop-color:#0B86C4"
+           id="stop487" /><stop
+           offset="0.9351"
+           style="stop-color:#2174B1"
+           id="stop489" /><stop
+           offset="1"
+           style="stop-color:#2C5D95"
+           id="stop491" /></linearGradient><path
+         class="st23"
+         d="M 72.9,79.9 C 67.6,73.7 62.7,67.1 58.2,60.2 c -0.5,-0.8 -1.1,-1.6 -1.6,-2.4 -8.7,0 -17.4,0.7 -26,1.9 0.3,0.5 4.3,7.2 7.2,11.7 27.8,42.8 40.8,41.1 41.4,41 0.6,-0.2 1.2,-0.5 1.7,-0.8 L 98.8,100 C 91.4,98.4 82.1,90.6 72.9,79.9 Z"
+         id="path494"
+         inkscape:connector-curvature="0"
+         style="fill:url(#SVGID_24_)" /></g></g></svg>
\ No newline at end of file
diff --git a/client/src/pages/LoginDialog.tsx b/client/src/pages/LoginDialog.tsx
index fb01ccd..ee990bc 100644
--- a/client/src/pages/LoginDialog.tsx
+++ b/client/src/pages/LoginDialog.tsx
@@ -22,27 +22,11 @@
 import DialogContent from '@mui/material/DialogContent';
 import DialogTitle from '@mui/material/DialogTitle';
 import FormControlLabel from '@mui/material/FormControlLabel';
-import Link from '@mui/material/Link';
 import TextField from '@mui/material/TextField';
-import Typography from '@mui/material/Typography';
 import { ChangeEvent, Component, MouseEvent } from 'react';
 
 import authManager from '../AuthManager';
 
-function Copyright() {
-  return (
-    <Typography variant="body2" color="textSecondary" align="center">
-      {'Copyright © 2016-'}
-      {new Date().getFullYear()}
-      {' Savoir-faire Linux Inc.'}
-      <Link color="inherit" href="https://jami.net/">
-        Jami.net
-      </Link>{' '}
-      {'.'}
-    </Typography>
-  );
-}
-
 type SignInPageProps = {
   open: boolean;
 };
diff --git a/client/src/themes/Default.ts b/client/src/themes/Default.ts
index 3ba20ab..c0f5884 100644
--- a/client/src/themes/Default.ts
+++ b/client/src/themes/Default.ts
@@ -15,7 +15,23 @@
  * License along with this program.  If not, see
  * <https://www.gnu.org/licenses/>.
  */
-import { createTheme } from '@mui/material';
+import { createTheme, SimplePaletteColorOptions } from '@mui/material';
+
+declare module '@mui/material/styles' {
+  interface Theme {
+    InfoTooltip: {
+      backgroundColor: SimplePaletteColorOptions;
+      color: SimplePaletteColorOptions;
+    };
+  }
+
+  interface ThemeOptions {
+    InfoTooltip: {
+      backgroundColor: SimplePaletteColorOptions;
+      color: SimplePaletteColorOptions;
+    };
+  }
+}
 
 const theme = createTheme({
   palette: {
@@ -31,6 +47,14 @@
       main: '#009980',
     },
   },
+  InfoTooltip: {
+    backgroundColor: {
+      main: '#FFFFFF',
+    },
+    color: {
+      main: '#292929',
+    },
+  },
   typography: {
     fontFamily: 'Ubuntu',
     allVariants: {
diff --git a/client/src/themes/ThemeDemonstrator.tsx b/client/src/themes/ThemeDemonstrator.tsx
index 8b3ceb1..dd82953 100644
--- a/client/src/themes/ThemeDemonstrator.tsx
+++ b/client/src/themes/ThemeDemonstrator.tsx
@@ -59,7 +59,7 @@
           <TakePictureButton />
         </Stack>
         <Stack direction="row" spacing="5px">
-          <InfoButton />
+          <InfoButton tooltipTitle={''} />
           <TipButton />
         </Stack>
         <Stack direction="row" spacing="5px">
@@ -70,10 +70,10 @@
           <Switch />
         </Stack>
         <Stack padding="5px" width="300px">
-          <UsernameInput />
-          <UsernameInput error defaultValue="Cyrille" />
-          <PasswordInput />
-          <PasswordInput error defaultValue="SavoirFaireLinux" />
+          <UsernameInput onChange={() => {}} tooltipTitle={'Test'} />
+          <UsernameInput onChange={() => {}} tooltipTitle={'Test'} error defaultValue="Cyrille" />
+          <PasswordInput onChange={() => {}} tooltipTitle={'Test'} />
+          <PasswordInput onChange={() => {}} tooltipTitle={'Test'} error defaultValue="SavoirFaireLinux" />
           <NickNameInput />
           <RegularInput />
         </Stack>
