diff --git a/ippisite/ippidb/static/css/main.css b/ippisite/ippidb/static/css/main.css
new file mode 100644
index 0000000000000000000000000000000000000000..b24d8b78c265bf18a2e09e492ac842154938ef82
--- /dev/null
+++ b/ippisite/ippidb/static/css/main.css
@@ -0,0 +1,836 @@
+/*
+Theme Name: IPPI-DB
+Theme URI: https://ippidb.pasteur.fr/
+Author: Rachel Torchet
+Description: IPPI-DB Theme
+*/
+
+/* HEAD */
+
+.hide {
+  display: none;
+}
+
+.clear_all{
+    font-size: 14px;
+}
+
+#main-header{
+    margin-bottom: 2px;
+}
+
+#head-top {
+    background-color: #211b1d;
+    height: 33px;
+    position:relative;
+}
+
+/* -- Header Menu -- */
+
+#head-top #mainmenu {
+    position: relative;
+}
+
+#head-top #mainmenu ul{
+    list-style: outside none none;
+    margin: 0px;
+    padding: 0px;
+    border: 0px none;
+}
+
+#head-top #mainmenu ul li{
+    float: left;
+    list-style: none;
+    display: inline-block;
+    vertical-align: middle;
+    margin: 0px 10px;
+}
+
+#head-top #mainmenu ul li a{
+    font-size: 11px;
+    font-family: "BrandonGrotesqueBld";
+    color:#fff;
+    text-transform: uppercase;
+    text-decoration: none;
+    position: relative;
+    display: inline-block;
+    padding: 9px 35px;
+    text-align: center;
+
+}
+
+#head-top #mainmenu ul li a:hover{
+    background: #FFF none repeat scroll 0% 0%;
+    color: #2D80E2;
+    text-decoration: none;
+}
+
+#head-top #mainmenu ul li a:focus{
+    background: #FFF none repeat scroll 0% 0%;
+    color: #2D80E2;
+    text-decoration: none;
+}
+
+div.tabs {
+    will-change: transform;
+    position: fixed;
+    bottom: 0px;
+    right: 0px;
+    left: 0px;
+    z-index: 999;
+    margin: 0px;
+    text-align: center;
+}
+
+div.hidden {
+    display: none;
+}
+
+.locale-block {
+    float: right;
+    margin-left: 10px;
+    margin-top: 5px;
+}
+
+/* -- Jumbotron -- */
+
+.logoJum {
+    padding: 50px;
+    margin-bottom: 0px;
+    color: inherit;
+    background-image: url("../images/banner.png");
+    background-repeat: no-repeat;
+    background-color: #F9F9F9;
+    background-size: cover;
+}
+
+.logoJum h1 {
+    font-family: "BrandonGrotesqueBlk";
+    font-size:81px;
+}
+
+.logoJum p {
+    font-family: "BrandonGrotesqueReg";
+    font-size:22.5px;
+}
+
+.logoJum a {
+    color: rgb(0, 0, 0);
+    text-decoration: none;
+}
+
+.logoJum a:hover {
+    color: rgb(0, 0, 0);
+    text-decoration: none;
+}
+
+.logoJum a:focus {
+    color: rgb(0, 0, 0);
+    text-decoration: none;
+}
+
+
+
+/* -- Main Menu -- */
+
+#mainnav{
+    overflow: hidden;
+    border-bottom: 1px solid #AEB7C0;
+    background-color: #F9F9F9;
+}
+
+.main-nav{
+    margin-left: auto;
+    margin-right: auto;
+    position: relative;
+    width: 600px;
+    text-align: center;
+    height: 35px;
+}
+
+.main-nav ul {
+    list-style: outside none none;
+    margin: 0px;
+    padding: 0px;
+    border: 0px none;
+}
+
+.main-nav ul li {
+    float: left;
+    list-style: none;
+    display: inline-block;
+    vertical-align: middle;
+    margin: 0px 30px;
+}
+
+.main-nav ul li a{
+    font-size: 12px;
+    font-family: "BrandonGrotesqueBlk";
+    color:#000;
+    text-transform: uppercase;
+    text-decoration: none;
+    padding: 5px 0px;
+    position: relative;
+    display: inline-block;
+}
+
+.main-nav ul li a:hover {
+    font-size: 12px;
+    font-family: "BrandonGrotesqueBlk";
+    color:#211B1D;
+    text-transform: uppercase;
+    text-decoration: none;
+    padding: 5px 0px;
+    position: relative;
+    display: inline-block;
+}
+
+.main-nav ul li a:hover::after {
+    content: "";
+    position: absolute;
+    bottom: 0px;
+    left: 0px;
+    right: 0px;
+    height: 2px;
+    background: #211B1D none repeat scroll 0% 0%;
+}
+
+.main-nav ul li a:focus {
+    font-size: 12px;
+    font-family: "BrandonGrotesqueBlk";
+    color:#211B1D;
+    text-transform: uppercase;
+    text-decoration: none;
+    padding: 5px 0px;
+    position: relative;
+    display: inline-block;
+}
+
+.main-nav ul li a:focus::after {
+    content: "";
+    position: absolute;
+    bottom: 0px;
+    left: 0px;
+    right: 0px;
+    height: 2px;
+    background: #211B1D none repeat scroll 0% 0%;
+}
+
+.main-nav ul li a:active {
+    font-size: 12px;
+    font-family: "BrandonGrotesqueBlk";
+    color:#211B1D;
+    text-transform: uppercase;
+    text-decoration: none;
+    padding: 5px 0px;
+    position: relative;
+    display: inline-block;
+}
+
+.main-nav ul li a:active::after {
+    content: "";
+    position: absolute;
+    bottom: 0px;
+    left: 0px;
+    right: 0px;
+    height: 2px;
+    background: #211B1D none repeat scroll 0% 0%;
+}
+
+/* -- Secondary Menu -- */
+
+.secondary-nav {
+background: #F0F3F4 none repeat scroll 0% 0%;
+padding: 15px 0px;
+text-align: center;
+}
+
+.secondary-nav ul {
+    list-style: outside none none;
+    margin: 0px;
+    padding: 0px;
+    border: 0px none;
+}
+
+.secondary-nav ul li {
+    margin: 0px 35px;
+    display: inline-block;
+}
+
+.secondary-nav ul li a {
+    font-size: 11px;
+    font-family: "BrandonGrotesqueBlk";
+    color:#414144;
+    text-transform: uppercase;
+    text-decoration: none;
+    padding: 0px 0px;
+    position: relative;
+    display: inline-block;
+}
+
+.secondary-nav ul li a:active {
+    font-size: 11px;
+    font-family: "BrandonGrotesqueBlk";
+    color:#000;
+    text-transform: uppercase;
+    text-decoration: none;
+    padding: 0px 0px;
+    position: relative;
+    display: inline-block;
+}
+
+.secondary-nav ul li a:focus::after {
+    content: "";
+    position: absolute;
+    bottom: 0px;
+    left: 0px;
+    right: 0px;
+    height: 2px;
+    background: #414144 none repeat scroll 0% 0%;
+    text-decoration: none;
+    color: #000;
+}
+
+.secondary-nav ul li a:active::after {
+    content: "";
+    position: absolute;
+    bottom: 0px;
+    left: 0px;
+    right: 0px;
+    height: 2px;
+    background: #414144 none repeat scroll 0% 0%;
+    text-decoration: none;
+    color: #000;
+}
+
+.secondary-nav ul li a:hover::after {
+    content: "";
+    position: absolute;
+    bottom: 0px;
+    left: 0px;
+    right: 0px;
+    height: 2px;
+    background: #414144 none repeat scroll 0% 0%;
+    text-decoration: none;
+}
+
+
+/* -- Breadcrumb -- */
+
+.breadNav {
+    color: #C6C5C6;
+    max-width: 1200px;
+    background-color: #fff;
+    font-family: "BrandonGrotesqueBld";
+}
+
+.breadNav-label {
+    position: absolute !important;
+    clip: rect(1px,1px,1px,1px);
+    padding: 0 !important;
+    border: 0 !important;
+    height: 1px !important;
+    width: 1px !important;
+    overflow: hidden;
+    font-family: "BrandonGrotesqueBld";
+}
+
+.breadNav-link {
+    font-family: "BrandonGrotesqueReg";
+    color: #C6C5C6;
+    text-decoration: underline;
+}
+
+.breadNav-link a:hover {
+    font-family: "BrandonGrotesqueReg";
+    color: #2D96FA;
+    text-decoration: underline;
+}
+
+.breadNav-link a:focus {
+    font-family: "BrandonGrotesqueReg";
+    color: #2D96FA;
+    text-decoration: underline;
+}
+
+/* -- Page Header -- */
+
+.adv-page__header{
+margin-left: -50px;
+margin-right: -50px;
+box-shadow: 0px 0px 0px 1500px rgba(0, 0, 0, 0.1) inset;
+min-height: 260px;
+line-height: 260px;
+background-repeat: no-repeat;
+background-size: cover;
+position: relative;
+text-align:center;
+background-image:url("https://research.pasteur.fr/wp-content/uploads/2015/03/Facebook-offers-its-Proxygen-server-on-Open-Source-Platform-for-developers-1000x300.jpg")
+
+}
+
+.header__inner {
+    display: inline-block;
+    vertical-align: middle;
+    line-height: 1.2;
+    min-width: 450px;
+font-size: 42px;
+    font-family: "BrandonGrotesqueBlk";
+    color:#fff;
+    text-transform: uppercase;
+}   
+
+.node-fiche-page--full .node__title {
+    font-weight: 800;
+    text-transform: uppercase;
+    text-align: center;
+    line-height: 1.2;
+    margin: 0px;
+    font-size: 58px;
+    padding-top: 150px;
+    color: #FFF;
+}
+
+.node-fiche-page--full {
+    background-repeat: no-repeat;
+    background-position: 50% top;
+    background-size: 100% auto;
+    position: relative;
+    background-color: #fff;
+}
+
+.header__bg {
+    box-shadow: 0px 0px 0px 1500px rgba(0, 0, 0, 0.15) inset;
+    background-size: 100%;
+    background-repeat: no-repeat;
+}
+
+.node-fiche-page--full .header__bg {
+    position: absolute;
+}
+
+.node-fiche-page--full header {
+    position: relative;
+    min-height: 345px;
+}
+
+.node-fiche-page--full .content {
+    background: #FFF none repeat scroll 0% 0%;
+    padding: 15px 65px;
+}
+
+.page-title {
+    margin: 0px 0px 30px;
+    text-transform: uppercase;
+    text-align: center;
+    font-size: 42px;
+    line-height: 1.2;
+    color: #1D1D1B;
+    font-family:"BrandonGrotesqueBlk";
+}
+
+.page-intro {
+    color:#414144;
+    font-size: 20px;
+    font-weight: normal;
+    line-height: 1.4;
+    text-align: justify;
+    padding-bottom: 20px;
+    font-family:"BrandonGrotesqueReg";
+}
+
+.page-intro ul {
+    margin-left: 30px;
+}
+
+.page-intro ul li {
+    font-size: 20px;
+    font-weight: normal;
+    line-height: 1.4;
+}
+
+
+.main-content {
+    width: auto;
+    float: none;
+}
+
+.main__inner {
+    position: relative;
+}
+
+.btn--gift {
+    display: block;
+    text-align: center;
+    float: right;
+    background: #FFF none repeat scroll 0% 0%;
+    color: #414144;
+    font-weight: bold;
+    text-transform: uppercase;
+    font-size: 16px;
+    padding: 10px;
+    margin-top: 0px;
+    text-decoration: none;
+}
+
+.btn--gift:hover {
+    display: block;
+    text-align: center;
+    float: right;
+    background: #0275E3 none repeat scroll 0% 0%;
+    color: #FFF;
+    font-weight: bold;
+    text-transform: uppercase;
+    font-size: 16px;
+    padding: 10px;
+    margin-top: 0px;
+    text-decoration: none;
+}
+
+/*   MAIN PAGE   */
+.main-publi {
+    text-align: center;
+}
+
+.link-publication a {
+    text-decoration: none;
+    color:#2D96FA;
+}
+
+.link-publication a:hover {
+    text-decoration: underline;
+    color:#2D96FA;
+}
+
+.link-publication a:focus {
+    text-decoration: underline;
+    color:#2D96FA;
+}
+
+.latest-publi {
+    font-family: "BrandonGrotesqueBld";
+}
+
+.box {
+    margin-top: 50px;
+    position: relative;
+    width: 1200px;
+    height: 500px;
+}
+
+.boxs {
+    margin-top: 50px;
+    position: relative;
+    width: auto;
+    height: auto;
+}
+
+.box__inner {
+    position: absolute;
+    min-width: 49%;
+    min-height: 49%;
+    text-align:center;
+    background-color:white;
+    transition:all .1s ease;
+}
+
+.box__inner h2 {
+    font-family: "BrandonGrotesqueBld";
+    font-size: 20px;
+    padding: 10px;
+}
+
+.box__inner.left {
+    left:0;
+    border: 1px solid #E8E0E0;
+    margin-right: 5px;
+}
+
+.box__inner.right {
+    right:0;
+    margin-right: 5px;
+}
+
+.box__inner.top {
+    top:0;
+    border: 1px solid #E8E0E0;
+    margin-bottom: 5px;
+}
+
+.box__inner.bottom {
+    bottom:0;
+    border: 1px solid #E8E0E0;
+    margin-top: 5px;
+}
+
+.box__inner.box--active {
+    min-width:100%;
+    min-height:100%;
+    z-index:1;
+}
+
+
+/*   READ MORE   */
+.read_more {
+    position: absolute;
+    bottom: 20px;
+    right:20px;
+}
+
+
+.read_more a {
+    font-family: "BrandonGrotesqueBlk";
+    color: #2D96FA;
+    font-size: 13px;
+    text-transform: uppercase;
+    padding-right: 6px;
+    text-decoration: none;
+}
+
+.read_more a::before{
+    content: "";
+    display: inline-block;
+    vertical-align: middle;
+    margin-right: 10px;
+    margin-top: -8px;
+    background-image: url("/static/images/Other/sprites.png");
+    background-position: -186px -164px;
+    width: 22px;
+    height: 8px;
+    text-decoration: none;
+
+}
+
+
+/*   FORMS   */
+
+.form_div {
+    font-family: "BrandonGrotesqueReg";
+    margin: 20px auto;
+    width: 43%
+}
+
+#Form{
+    border: 1px solid #E3E9EB;
+    padding: 15px;
+    min-height: 150px;
+    text-align: center;
+    min-height: 350px;
+    border-top: 1px solid #2D96FA;
+}
+
+.readonly {
+    background-color: #E8E0E0;
+    color: #8D8889;
+    text-overflow: ellipsis;
+    overflow: hidden;
+    white-space: nowrap;
+    padding: 5px;
+    width: 80%;
+    margin: 2px;
+}
+
+.readonlyfields label{
+    display: block;
+    width: 150px;
+    float: left;
+}
+
+
+
+.input_size{
+    width:80%;
+}
+
+.input_fields_wrap {
+    display:inline-block;
+}
+
+.PperPocket {
+    width: 150px;
+    border-bottom: 1px solid #2d96fa;
+    border-top: 1px solid #E3E9EB;
+    border-left: 1px solid #E3E9EB;
+    border-right: 1px solid #E3E9EB;
+    text-align: center;
+}
+
+/* BUTTONS */
+
+
+/* CONTENT */
+
+#content{
+    min-height: 1300px;
+    margin-bottom: 50px;
+}
+
+
+
+
+/* PARAGRAPH */
+.paragraph {
+    border: 1px solid #E8E0E0;
+    padding: 10px;
+}
+
+.paragraph h2 {
+    text-align: center;
+    font-family: BrandonGrotesqueBld;
+    font-size: 24px;
+    padding-bottom: 10px;
+}
+
+.paragraph ul {
+    padding-left: 30px;
+}
+
+/* FOOTER */
+
+.main-footer {
+    padding: 80px 0px;
+    background: #211B1D none repeat scroll 0% 0%;
+    color: #FFF;
+    font: 12px "BrandonGrotesqueReg","Arial","Helvetica",sans-serif;
+line-height: 21px;
+}
+
+.main-footer a {
+    color: #FFF;
+}
+
+.inner-wrap {
+    max-width: 1200px;
+    margin: 0px auto;
+    position: relative;
+}
+
+.footer__address::before {
+    content: "";
+    display: inline-block;
+    vertical-align: middle;
+    background: transparent url("https://www.pasteur.fr/sites/all/themes/custom/pasteur/assets/img/map.png") no-repeat scroll left top;
+    width: 152px;
+    height: 153px;
+    margin-right: 40px;
+    float: left;
+}
+
+.clearfix::after {
+    content: ".";
+    display: block;
+    height: 0px;
+    clear: both;
+    visibility: hidden;
+}
+
+.footer__address {
+    margin-right: 40px;
+    display: inline-block;
+    vertical-align: middle;
+    min-width: 400px;
+}
+
+.footer__address .block {
+    display: block;
+    margin-top: -15px;
+}
+
+.footer__address .footer__logo {
+    display: inline-block;
+    margin-top: 20px;
+}
+
+.footer__address .block {
+    display: block;
+    margin-top: -15px;
+}
+
+.footer__section {
+    display: inline-block;
+    vertical-align: middle;
+}
+
+.footer__menu-social, .footer__menu-2, .footer__menu-1 {
+    vertical-align: top;
+    min-height: 172px;
+    border-left: 1px solid #2D96FA;
+    padding: 10px 50px;
+}
+
+.footer__menu-social .content {
+    text-align: center;
+}
+
+.footer__menu-social .content li {
+    margin-bottom: 15px;
+}
+
+.footer__menu-social .content a {
+    display: inline-block;
+    vertical-align: middle;
+    text-indent: -9999px;
+}
+
+.footer__menu-social ul, .footer__menu-2 ul, .footer__menu-1 ul {
+    list-style: outside none none;
+    margin: 0px;
+    padding: 0px;
+    border: 0px none;
+
+}
+
+.footer__menu-2 li, .footer__menu-1 li {
+    margin-bottom: 8px;
+}
+
+.footer__menu-social a, .footer__menu-2 a, .footer__menu-1 a {
+    text-transform: uppercase;
+    text-decoration: none;
+}
+
+.footer__menu-2 a:hover, .footer__menu-1 a:hover {
+    text-transform: uppercase;
+    text-decoration: underline;
+
+}
+
+.footer__menu-2 a:focus, .footer__menu-1 a:focus {
+    text-transform: uppercase;
+    text-decoration: underline;
+
+}
+
+.footer__menu-2 a:active, .footer__menu-1 a:active {
+    text-transform: uppercase;
+    text-decoration: underline;
+
+}
+
+.main-footer .donate a {
+    color: #2D96FA;
+    font-family:"BrandonGrotesqueBld";
+}
+
+.suivre_pasteur_facebook {
+    background-image: url("https://www.pasteur.fr/sites/all/themes/custom/pasteur/assets/img/sprites.png?0afff4d5b47e28179e26b2749a597aee");
+    background-position: -230px -28px;
+    width: 11px;
+    height: 20px;
+}
+
+.suivre_pasteur_linkedin {
+    background-image: url("https://www.pasteur.fr/sites/all/themes/custom/pasteur/assets/img/sprites.png?0afff4d5b47e28179e26b2749a597aee");
+    background-position: -167px -177px;
+    width: 15px;
+    height: 15px;
+}
+
+.suivre_pasteur_twitter {
+    background-image: url("https://www.pasteur.fr/sites/all/themes/custom/pasteur/assets/img/sprites.png?0afff4d5b47e28179e26b2749a597aee");
+    background-position: -100px -177px;
+    width: 19px;
+    height: 16px;
+}
+
+