@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0; }

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none !important;
  cursor: inherit !important;
  text-decoration: none !important; }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none; }

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none; }

/*
 * colibris -> indigo
 * blue-edg -> blue site educ.gouv 
 * subtitle -> sous-titres h3, h4
 * font -> couleur font
 */
@font-face {
  font-family: 'Archive';
  src: url("fonts/archive-regular-webfont.woff2") format("woff2"), url("fonts/archive-regular-webfont.woff") format("woff");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: 'Roboto';
  src: url("/static/xstatic/fonts/roboto/Roboto-Thin.woff2") format("woff2");
  font-weight: 100;
  font-style: normal; }

@font-face {
  font-family: "Roboto-Thin";
  src: url("/static/xstatic/fonts/roboto/Roboto-Thin.woff2") format("woff2"); }

@font-face {
  font-family: 'Roboto';
  src: url("/static/xstatic/fonts/roboto/Roboto-ThinItalic.woff2") format("woff2");
  font-weight: 100;
  font-style: italic; }

@font-face {
  font-family: "Roboto-ThinItalic";
  src: url("/static/xstatic/fonts/roboto/Roboto-ThinItalic.woff2") format("woff2"); }

@font-face {
  font-family: 'Roboto';
  src: url("/static/xstatic/fonts/roboto/Roboto-Light.woff2") format("woff2");
  font-weight: 300;
  font-style: normal; }

@font-face {
  font-family: "Roboto-Light";
  src: url("/static/xstatic/fonts/roboto/Roboto-Light.woff2") format("woff2"); }

@font-face {
  font-family: 'Roboto';
  src: url("/static/xstatic/fonts/roboto/Roboto-LightItalic.woff2") format("woff2");
  font-weight: 300;
  font-style: italic; }

@font-face {
  font-family: "Roboto-LightItalic";
  src: url("/static/xstatic/fonts/roboto/Roboto-LightItalic.woff2") format("woff2"); }

@font-face {
  font-family: 'Roboto';
  src: url("/static/xstatic/fonts/roboto/Roboto-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: "Roboto-Regular";
  src: url("/static/xstatic/fonts/roboto/Roboto-Regular.woff2") format("woff2"); }

@font-face {
  font-family: 'Roboto';
  src: url("/static/xstatic/fonts/roboto/Roboto-RegularItalic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic; }

@font-face {
  font-family: "Roboto-RegularItalic";
  src: url("/static/xstatic/fonts/roboto/Roboto-RegularItalic.woff2") format("woff2"); }

@font-face {
  font-family: 'Roboto';
  src: url("/static/xstatic/fonts/roboto/Roboto-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal; }

@font-face {
  font-family: "Roboto-Medium";
  src: url("/static/xstatic/fonts/roboto/Roboto-Medium.woff2") format("woff2"); }

@font-face {
  font-family: 'Roboto';
  src: url("/static/xstatic/fonts/roboto/Roboto-MediumItalic.woff2") format("woff2");
  font-weight: 500;
  font-style: italic; }

@font-face {
  font-family: "Roboto-MediumItalic";
  src: url("/static/xstatic/fonts/roboto/Roboto-MediumItalic.woff2") format("woff2"); }

@font-face {
  font-family: 'Roboto';
  src: url("/static/xstatic/fonts/roboto/Roboto-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal; }

@font-face {
  font-family: "Roboto-Bold";
  src: url("/static/xstatic/fonts/roboto/Roboto-Bold.woff2") format("woff2"); }

@font-face {
  font-family: 'Roboto';
  src: url("/static/xstatic/fonts/roboto/Roboto-BoldItalic.woff2") format("woff2");
  font-weight: 700;
  font-style: italic; }

@font-face {
  font-family: "Roboto-BoldItalic";
  src: url("/static/xstatic/fonts/roboto/Roboto-BoldItalic.woff2") format("woff2"); }

@font-face {
  font-family: 'Roboto';
  src: url("/static/xstatic/fonts/roboto/Roboto-Black.woff2") format("woff2");
  font-weight: 900;
  font-style: normal; }

@font-face {
  font-family: "Roboto-Black";
  src: url("/static/xstatic/fonts/roboto/Roboto-Black.woff2") format("woff2"); }

@font-face {
  font-family: 'Roboto';
  src: url("/static/xstatic/fonts/roboto/Roboto-BlackItalic.woff2") format("woff2");
  font-weight: 900;
  font-style: italic; }

@font-face {
  font-family: "Roboto-BlackItalic";
  src: url("/static/xstatic/fonts/roboto/Roboto-BlackItalic.woff2") format("woff2"); }

@font-face {
  font-family: 'FontAwesome';
  src: url("/static/xstatic/fonts/fontawesome-webfont.woff2") format("woff2"), url("/static/xstatic/fonts/fontawesome-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

.sr-only, .RadiobuttonsWidget.template-evaluation .star-label, .RadiobuttonsWidget.template-evaluation input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important; }

.clearfix::after {
  display: block;
  clear: both;
  content: ""; }

@supports (display: flow-root) {
  .clearfix {
    display: flow-root; }
    .clearfix::after {
      content: none; } }

[hidden] {
  display: none !important; }

.visibility-collapse {
  visibility: collapse; }

.visibility-hidden {
  visibility: hidden; }

.visibility-visible {
  visibility: visible; }

.bare-list {
  padding: 0;
  margin: 0;
  list-style: none; }

.stretch-to-edge {
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  padding-right: calc(50vw - 50%) !important;
  padding-left: calc(50vw - 50%) !important; }
  .stretch-to-edge.size--1-1 {
    flex-basis: 100vw !important;
    margin-left: calc(-50vw + 50% + (var(--grid-gutter, 0px) / 2)) !important;
    padding-left: calc(50vw - 50% + (var(--grid-gutter, 0px) / 2)) !important;
    margin-right: calc(-50vw + 50% - (var(--grid-gutter, 0px) / 2)) !important;
    padding-right: calc(50vw - 50% + (var(--grid-gutter, 0px) / 2)) !important; }

html {
  font-family: "Roboto", sans-serif;
  font-size: 100%;
  color: #000;
  background: white; }

body {
  scroll-behavior: smooth; }

a {
  color: #000;
  text-decoration: underline; }
  a:hover {
    color: #164092;
    text-decoration: underline; }

a > img {
  border: none; }

div#rub_service h2, div#tracking-code h3, div.ui-dialog .ui-dialog-titlebar, .gru-content div.a2-block h2,
.gru-content .block h2,
div.links-list h2,
.gru-content div.textcell h2:first-child,
.gru-content div.cell h2:first-child,
.theme-title, div#rub_service div.category h3,
div#services > ul > li > strong > a {
  position: relative;
  text-transform: uppercase;
  background: transparent;
  color: #228bcc;
  padding: 0.7rem 1rem;
  margin: 0;
  text-decoration: none;
  font-weight: normal;
  font-family: "Archive", "Roboto", Arial, Helvetica, sans-serif;
  font-style: normal;
  border-bottom: 0;
  border-top: 0; }

h2 {
  font-size: 1.4rem; }

h1, h2, h3, h4, h5, h6 {
  font-family: "Archive", "Roboto", Arial, Helvetica, sans-serif;
  font-weight: normal; }
  h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    color: inherit !important; }

* {
  box-sizing: border-box; }
  *::before, *::after {
    box-sizing: inherit; }

html, body {
  margin: 0;
  min-height: 100vh; }

div#page {
  display: flex;
  min-height: 100vh;
  flex-direction: column; }

div#page div#main-content-wrapper,
div#page main {
  flex: 1 0 auto;
  width: 100%; }

@media only screen and (max-width: 959px) {
  div#page div#main-content-wrapper {
    padding: 1.5rem;
    padding-top: 0; } }

@media only screen and (min-width: 960px) {
  div#header,
  div#footer,
  div#page {
    padding-left: 3rem;
    padding-right: 3rem; } }

@media only screen and (min-width: 600px) and (max-width: 959px) {
  div#header,
  div#footer,
  div#page {
    padding-left: 1rem;
    padding-right: 1rem; } }

div#header,
div#nav,
div#footer,
div#page {
  clear: both;
  margin: 0 auto; }
  @media only screen and (min-width: 1240px) {
    div#header,
    div#nav,
    div#footer,
    div#page {
      padding-left: 0;
      padding-right: 0;
      max-width: 1240px; } }
div#header {
  width: 100%;
  position: relative;
  top: 0px;
  z-index: 0;
  padding: 0; }
  div#header h1 {
    margin: 0; }

div#main-content-wrapper {
  position: relative;
  z-index: 100;
  margin: 0px auto 0px auto;
  padding: 0; }
  @media screen and (min-width: 1240px) {
    div#main-content-wrapper {
      max-width: 1240px; } }
  @media screen and (max-width: 960px) {
    div#main-content-wrapper {
      position: static;
      z-index: 0; } }
div#main-content {
  margin: 0;
  min-height: 300px; }

.column {
  float: left;
  width: 100%; }

#columns-wrapper {
  flex-grow: 1;
  max-width: 100%; }

.gru-content {
  display: flex; }
  .gru-content #sidebar {
    flex: 0 0 300px;
    max-width: 300px; }
    @media (min-width: 1240px) {
      .gru-content #sidebar {
        padding-right: 1rem; } }
    .gru-content #sidebar div.cell {
      margin-left: 0;
      margin-right: 20px; }

@media screen and (max-width: 960px) {
  #columns-wrapper {
    padding: 0em;
    max-width: 100%; }
  .column {
    float: none;
    width: auto; }
  .gru-content {
    flex-direction: column-reverse; }
    .gru-content #sidebar {
      flex: 0 0 auto;
      max-width: 100%;
      margin: 0em; }
      .gru-content #sidebar div.cell {
        margin-left: 0;
        margin-right: 0; } }

@media screen and (max-width: 960px) {
  .pk-desktop-only, .desktop-only {
    display: none; } }

@media screen and (min-width: 1240px) {
  .pk-mobile-only, .mobile-only {
    display: none; } }

#footer-wrapper {
  clear: both;
  margin-top: 1.5em;
  color: #000; }
  #footer-wrapper a {
    color: #000; }

#footer-wrapper {
  padding: 0.7em 0;
  background-color: transparent; }

#footer {
  display: flex;
  justify-content: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-top: 24px;
  padding-bottom: 15px;
  margin-left: 190px;
  margin-right: 190px;
  margin-top: 50px;
  margin-bottom: 10px;
  border-top: 1px solid #f1f1f1; }

body.has-header-background .site-header {
  background: url(/assets/header:background) top center no-repeat;
  background-size: cover; }

#logo a {
  display: inline-block; }

#logo.has-logo a {
  background: transparent url(/assets/header:logo) center left no-repeat;
  background-size: contain;
  min-width: 160px;
  text-indent: -10000px; }

div.gru-nav {
  background: white;
  color: black; }

div.gru-nav {
  padding: 0;
  margin: 10px auto;
  height: auto; }

div.gru-nav > ul {
  border-bottom: none;
  border-top: none; }
  @media only screen and (min-width: 960px) {
    div.gru-nav > ul {
      border-bottom: solid 1px #e9e9e9;
      border-top: solid 1px #e9e9e9;
      height: auto;
      padding: 0;
      overflow: hidden; } }
div.gru-nav > ul > li:first-child > a {
  border-radius: 0 0; }

div.gru-nav > ul > li {
  background: transparent;
  margin: 0;
  margin-right: 0px;
  display: inline-block;
  padding: 0; }
  div.gru-nav > ul > li > a > span {
    padding: 12px 20px;
    padding-bottom: 15px;
    display: block; }
    @media only screen and (max-width: 959px) {
      div.gru-nav > ul > li > a > span {
        font-weight: bold; } }
  div.gru-nav > ul > li a span:before {
    display: block;
    content: '';
    position: relative;
    top: -12px;
    left: 0;
    right: 0;
    background-color: transparent;
    height: 3px; }
  @media only screen and (min-width: 960px) {
    div.gru-nav > ul > li.selected a span:before, div.gru-nav > ul > li.selected:hover a span:before, div.gru-nav > ul > li:hover a span:before {
      background-color: #000000; } }
div.gru-nav > ul > li a {
  color: black;
  font-weight: normal;
  display: inline-block;
  line-height: 150%;
  transition: background 0.5s, color 0.5s;
  text-decoration: none; }
  @media only screen and (max-width: 959px) {
    div.gru-nav > ul > li a {
      font-weight: normal; } }
div.gru-nav li.selected > a {
  background-color: white;
  color: black; }

div.gru-nav li:focus-within > a,
div.gru-nav li:hover > a {
  background-color: white;
  color: black; }

@media only screen and (max-width: 959px) {
  div.gru-nav li.selected {
    border-top: 0 !important; }
    div.gru-nav li.selected > a {
      background-color: #5770be;
      color: white !important; } }

div.gru-nav > ul ul {
  display: none;
  position: absolute;
  background: white;
  z-index: 1000;
  min-width: 10em;
  list-style: none;
  padding: 0;
  text-align: left;
  border-radius: 0 0; }
  div.gru-nav > ul ul:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 10px 10px;
    border-color: transparent transparent #fff;
    position: absolute;
    top: -10px;
    left: 15px; }
  @media only screen and (min-width: 960px) {
    div.gru-nav > ul ul {
      margin-left: 17px;
      box-shadow: 0 0 16px RGB(2 2 1/30%); } }
  div.gru-nav > ul ul > li a {
    color: black; }

div.gru-nav > ul ul a {
  width: 100%; }
  div.gru-nav > ul ul a:hover {
    text-decoration: underline; }

div.gru-nav > ul ul li:last-child a {
  border-radius: 0 0; }

div.gru-nav > ul li:hover ul {
  display: block; }

div.gru-nav > ul ul li > a > span:before,
div.gru-nav > ul ul li:hover > a > span:before {
  display: none !important; }

div.gru-nav > ul ul li {
  padding: 1rem; }

@media screen and (min-width: 1240px) {
  div.gru-nav > ul li:focus-within ul {
    display: block; } }

.gru-nav-button::-moz-focus-inner {
  border: 0; }

.gru-nav-button {
  display: none;
  border-radius: 0 0;
  cursor: pointer; }

div.gru-nav span.badge,
div.menucell span.badge {
  font-size: 80%;
  line-height: 100%; }

div.gru-nav span.badge::before,
div.menucell span.badge::before {
  content: '('; }

div.gru-nav span.badge::after,
div.menucell span.badge::after {
  content: ')'; }

@media only screen and (max-width: 959px) {
  #header h1 {
    padding-left: calc(50px + 20px);
    background-position: calc(50px + 20px); }
  .gru-nav-wrapper {
    margin-top: calc(-1 * (50px + 10px)); }
  div.gru-nav {
    height: auto; }
  div.gru-nav {
    background: transparent; }
  div.gru-nav ul ul {
    position: static;
    display: block;
    background: transparent; }
    div.gru-nav ul ul li a {
      padding-left: 3em; }
  div.gru-nav .gru-nav-button {
    display: block;
    z-index: 200;
    position: relative;
    width: calc(50px + 2px);
    height: 50px;
    padding: 0;
    margin: 0;
    background: white;
    transition: all 0.25s ease;
    margin-left: 24px;
    margin-top: 15px;
    border: 0; }
    div.gru-nav .gru-nav-button .icon-bar {
      position: absolute;
      top: 0px;
      left: 8.3333333333px;
      width: 33.3333333333px;
      margin: 0;
      border: 1px solid black;
      transition: all 0.25s ease; }
    div.gru-nav .gru-nav-button .icon-bar-1 {
      top: 12.5px; }
    div.gru-nav .gru-nav-button .icon-bar-2 {
      top: 25px; }
    div.gru-nav .gru-nav-button .icon-bar-3 {
      top: 37.5px; }
    div.gru-nav .gru-nav-button + ul {
      display: block;
      overflow: hidden;
      height: 0px;
      border-top: none;
      margin-top: 1rem;
      background: white; }
      div.gru-nav .gru-nav-button + ul li {
        display: block;
        float: none;
        border-top: solid 1px #e9e9e9; }
      div.gru-nav .gru-nav-button + ul a {
        width: 100%;
        color: black;
        border-radius: 0; }
    div.gru-nav .gru-nav-button + ul li:last-child {
      border-bottom: 0 !important; }
  div.gru-nav .gru-nav-button.toggled .icon-bar-1 {
    top: 25px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg); }
  div.gru-nav .gru-nav-button.toggled .icon-bar-2 {
    opacity: 0; }
  div.gru-nav .gru-nav-button.toggled .icon-bar-3 {
    top: 25px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg); }
  div.gru-nav .gru-nav-button.toggled + ul {
    height: auto; } }
  @media only screen and (max-width: 959px) and (max-width: 959px) {
    div.gru-nav .gru-nav-button.toggled + ul {
      box-shadow: 0px 2px 5px 0px RGB(0 0 0/16%), 0px 2px 10px 0px RGB(0 0 0/12%);
      border-top: 1px solid #5770be4f; } }
.pwa-navigation {
  display: none; }

@media only screen and (max-width: 959px) {
  .pwa-navigation {
    display: block; } }

.pwa-navigation {
  background: white;
  position: fixed;
  bottom: 0;
  z-index: 1000;
  width: 100%; }
  .pwa-navigation #nav-wrapper {
    padding: 0;
    margin: 0; }
  .pwa-navigation div > ul,
  .pwa-navigation div#nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex; }
    .pwa-navigation div > ul li,
    .pwa-navigation div#nav ul li {
      flex: 1;
      position: relative;
      margin-left: 0;
      text-align: center; }
      .pwa-navigation div > ul li a,
      .pwa-navigation div#nav ul li a {
        text-decoration: none;
        transition: background 0.5s, color 0.5s;
        background: transparent 50% 10px no-repeat;
        color: black;
        display: block;
        width: 100%;
        line-height: 0.8em;
        padding: 0px 4px;
        height: 64px;
        padding-top: 32px;
        border-bottom: 0; }
        .pwa-navigation div > ul li a span,
        .pwa-navigation div#nav ul li a span {
          display: block;
          text-overflow: ellipsis;
          height: 32px;
          font-size: 10px;
          width: 100%;
          height: 100%;
          padding: 0.75em 20px; }
          .pwa-navigation div > ul li a span span.badge,
          .pwa-navigation div#nav ul li a span span.badge {
            display: block;
            background: #e22;
            color: white;
            font-size: 80%;
            position: absolute;
            top: 10px;
            left: calc(50% + 10px);
            border-radius: 100%;
            height: 16px;
            line-height: 16px;
            width: 16px; }
      .pwa-navigation div > ul li::before,
      .pwa-navigation div#nav ul li::before {
        position: absolute;
        background-position: 50% 2px;
        width: 100%; }

@media only screen and (max-width: 959px) {
  .has-pwa-navigation footer {
    margin-bottom: 64px; } }

body.has-picture .site-nav::after {
  content: "";
  display: flex;
  width: 100%;
  position: relative;
  top: -1rem;
  background-image: var(--page-picture) !important;
  background-color: transparent;
  background-size: auto;
  background-repeat: no-repeat;
  background-position: center center;
  height: 100px; }
  @media only screen and (min-width: 960px) {
    body.has-picture .site-nav::after {
      padding: 6rem;
      margin-top: 2rem;
      margin-bottom: 0.2rem; } }
  @media only screen and (max-width: 959px) {
    body.has-picture .site-nav::after {
      padding: 0;
      margin-top: 2rem;
      image-rendering: optimizequality;
      background-size: cover; } }
@media only screen and (max-width: 959px) {
  div.gru-nav ul {
    padding: 0; } }

@media only screen and (max-width: 959px) {
  div.gru-nav-wrapper {
    background: none; } }

@media screen and (min-width: 1240px) {
  .column div.a2-block,
  .gru-content div.cell,
  .block {
    margin-left: 0px;
    margin-right: 0px; }
  .gru-content #columns > .cell,
  .column:first-child .block,
  .column:first-child div.a2-block,
  .gru-content .column:first-child .cell {
    margin-left: 0; }
  .gru-content #columns > .cell,
  .column:last-child .block,
  .column:last-child div.a2-block,
  .gru-content .column:last-child .cell {
    margin-right: 0; } }

.a2-block {
  margin: 4em auto;
  max-width: 45em; }
  .a2-block form, .a2-block p {
    margin: 1em 0.5em; }
  .a2-block p {
    line-height: 1.4; }
  @media screen and (max-width: 960px) {
    .a2-block {
      margin: 0 auto; } }
div#sidebar + div#columns div.a2-block {
  margin: 0 0 3em 0; }

div#sidebar + div#columns .methods2 .a2-block {
  margin-right: 2em; }

div.a2-continue,
div#services > ul > li,
div.a2-block,
.gru-content .cell,
.block {
  text-align: left;
  background: white;
  color: inherit;
  border: none; }

.column div.a2-block,
.gru-content div.cell,
.block {
  margin-top: 0;
  margin-bottom: 10px; }
  .column div.a2-block h2 + div,
  .column div.a2-block .cell--body,
  .gru-content div.cell h2 + div,
  .gru-content div.cell .cell--body,
  .block h2 + div,
  .block .cell--body {
    padding: 1rem; }
  .column div.a2-block h2 + div.links-list,
  .gru-content div.cell h2 + div.links-list,
  .block h2 + div.links-list {
    padding: 0; }

.gru-content .cell.wcsformsofcategorycell h2 ~ div.intro {
  padding: 1rem; }

.gru-content div.cell.categoriescell div div,
div#services > ul > li > strong {
  padding: 0;
  margin: 0; }

div#rub_service div.category h3,
div#services > ul > li > strong > a {
  position: relative; }

/* OVERRIDE */
.gru-content div.a2-block h2,
.gru-content .block h2,
div.links-list h2,
.gru-content div.textcell h2:first-child,
.gru-content div.cell h2:first-child,
.theme-title {
  margin: 30px 0;
  padding: 22px 0 0;
  line-height: 1.03;
  font-weight: normal !important; }
  .gru-content div.a2-block h2::before,
  .gru-content .block h2::before,
  div.links-list h2::before,
  .gru-content div.textcell h2:first-child::before,
  .gru-content div.cell h2:first-child::before,
  .theme-title::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    height: 6px;
    background-color: #228bcc;
    top: 7px;
    width: 72px; }

div.links-list p {
  margin: 1em; }

div#rub_service div.category ul,
div#services > ul > li > ul,
div#account-management ul,
div.links-list ul,
div.menucell ul,
div.wcsformcell,
div.categoriescell ul,
div.wcscurrentdraftscell ul,
div.wcscurrentformscell ul {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  z-index: 0; }
  div#rub_service div.category ul > li:not(:last-child),
  div#services > ul > li > ul > li:not(:last-child),
  div#account-management ul > li:not(:last-child),
  div.links-list ul > li:not(:last-child),
  div.menucell ul > li:not(:last-child),
  div.wcsformcell > li:not(:last-child),
  div.categoriescell ul > li:not(:last-child),
  div.wcscurrentdraftscell ul > li:not(:last-child),
  div.wcscurrentformscell ul > li:not(:last-child) {
    border-bottom: 1px solid #cecac4; }
  div#rub_service div.category ul > li > a,
  div#services > ul > li > ul > li > a,
  div#account-management ul > li > a,
  div.links-list ul > li > a,
  div.menucell ul > li > a,
  div.wcsformcell > li > a,
  div.categoriescell ul > li > a,
  div.wcscurrentdraftscell ul > li > a,
  div.wcscurrentformscell ul > li > a {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    padding: 1rem;
    color: #000;
    text-decoration: underline;
    font-weight: normal;
    position: relative; }
    div#rub_service div.category ul > li > a:hover,
    div#services > ul > li > ul > li > a:hover,
    div#account-management ul > li > a:hover,
    div.links-list ul > li > a:hover,
    div.menucell ul > li > a:hover,
    div.wcsformcell > li > a:hover,
    div.categoriescell ul > li > a:hover,
    div.wcscurrentdraftscell ul > li > a:hover,
    div.wcscurrentformscell ul > li > a:hover {
      text-decoration: underline;
      color: #164092;
      background-color: inherit; }
  div#rub_service div.category ul .add-more-items--button,
  div#services > ul > li > ul .add-more-items--button,
  div#account-management ul .add-more-items--button,
  div.links-list ul .add-more-items--button,
  div.menucell ul .add-more-items--button,
  div.wcsformcell .add-more-items--button,
  div.categoriescell ul .add-more-items--button,
  div.wcscurrentdraftscell ul .add-more-items--button,
  div.wcscurrentformscell ul .add-more-items--button {
    display: block;
    padding: 0.5rem 1rem;
    cursor: pointer;
    text-align: center; }
  div#rub_service div.category ul li div.description,
  div#services > ul > li > ul li div.description,
  div#account-management ul li div.description,
  div.links-list ul li div.description,
  div.menucell ul li div.description,
  div.wcsformcell li div.description,
  div.categoriescell ul li div.description,
  div.wcscurrentdraftscell ul li div.description,
  div.wcscurrentformscell ul li div.description {
    padding: 0 1rem;
    font-size: 90%;
    color: #666; }
    div#rub_service div.category ul li div.description p,
    div#services > ul > li > ul li div.description p,
    div#account-management ul li div.description p,
    div.links-list ul li div.description p,
    div.menucell ul li div.description p,
    div.wcsformcell li div.description p,
    div.categoriescell ul li div.description p,
    div.wcscurrentdraftscell ul li div.description p,
    div.wcscurrentformscell ul li div.description p {
      margin-top: 0;
      margin-bottom: 0.7em; }

.gru-content div.link-list-cell.has-asset-picture picture img,
.gru-content div.wcsformsofcategorycell.has-asset-picture picture img {
  max-width: 100%;
  display: block;
  padding: 0.5rem; }

div.list-of-forms span.form-number {
  flex-grow: 1;
  margin-right: 1rem;
  opacity: 0.76;
  font-size: 80%; }

div.list-of-forms span.form-status {
  margin-right: 0;
  margin-left: auto; }

div.list-of-forms span.form-title {
  margin-right: 1rem; }

div.cell div.intro p {
  margin: 0; }

div.cell div.intro p + p {
  margin-top: 0.7em; }

div.cell::after {
  content: "";
  display: block;
  clear: both; }

.gru-content div.cell.no-bottom-margin {
  margin-bottom: 0;
  border-radius: 0 0;
  border-bottom: 0; }
  .gru-content div.cell.no-bottom-margin p:last-child {
    margin-bottom: 0;
    padding-bottom: 0.7em; }
  .gru-content div.cell.no-bottom-margin ul > li:last-child {
    border-bottom: 1px solid #cecac4; }
  .gru-content div.cell.no-bottom-margin + div {
    margin-top: 0;
    border-radius: 0 0;
    border-top: 0; }
    .gru-content div.cell.no-bottom-margin + div.no-bottom-margin {
      border-radius: 0; }
    .gru-content div.cell.no-bottom-margin + div p:first-child {
      margin-top: 0;
      padding-top: 0.7em; }

.gru-content div.cell div.textcell {
  /* don't include margins/borders for textcells embedded in
		 * other cells (via extra placeholders) */
  border: 0;
  margin-left: 0;
  margin-right: 0; }
  .gru-content div.cell div.textcell p, .gru-content div.cell div.textcell h3, .gru-content div.cell div.textcell h4, .gru-content div.cell div.textcell h5 {
    margin-left: 0;
    margin-right: 0; }

div.menucell li li {
  border-bottom: none;
  border-top: 1px solid #cecac4; }
  div.menucell li li a {
    padding-left: 3em;
    font-size: 90%; }

div.searchcell form {
  position: relative;
  display: flex;
  padding: 1em; }
  div.searchcell form input {
    flex: 1;
    margin-right: 1rem; }
  div.searchcell form button {
    margin-right: 0; }
  div.searchcell form::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    height: 3px;
    background: #aaa;
    width: 0%; }
  div.searchcell form.searching::after {
    -webkit-animation: cell-loading-pulse 0.5s linear infinite alternate;
    animation: cell-loading-pulse 0.5s linear infinite alternate; }

#sidebar div.searchcell form {
  display: block; }
  #sidebar div.searchcell form input {
    width: 100%; }

div.cell div.loading {
  color: #444;
  position: relative; }

@-webkit-keyframes cell-loading-pulse {
  to {
    width: 100%; } }

@keyframes cell-loading-pulse {
  to {
    width: 100%; } }

div.cell div.loading span {
  position: relative;
  z-index: 10;
  padding: 0.3rem;
  display: inline-block; }

div.cell div.loading::after {
  content: "";
  position: absolute;
  z-index: 0;
  left: 0;
  width: 0px;
  background: #eee;
  height: 100%;
  -webkit-animation: cell-loading-pulse 2s linear infinite alternate;
  animation: cell-loading-pulse 2s linear infinite alternate; }

div.cell div.loading.error-loading {
  background: #f44; }

div.cell div.loading.error-loading::after {
  content: none; }

.gru-content div.cell.shown-because-admin {
  opacity: 0.5;
  background-image: repeating-linear-gradient(-45deg, #eee 0px, #eee 14px, transparent 15px, transparent 30px); }
  .gru-content div.cell.shown-because-admin h2 {
    background: transparent; }
  .gru-content div.cell.shown-because-admin:hover {
    opacity: 1;
    background-image: inherit; }
    .gru-content div.cell.shown-because-admin:hover h2 {
      background: inherit; }

.gru-content .lingo-basket-cell.cell h2 + .lingo-basket-cell--content {
  padding: 0; }

.lingo-basket-cell--regie-name {
  padding-left: 1rem;
  padding-right: 1rem; }

.lingo-basket-cell--list {
  list-style: none;
  margin: 0;
  padding: 0; }

.lingo-basket-cell--item {
  padding: 1rem;
  border-bottom: 1px solid #cecac4;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline; }
  .lingo-basket-cell--item-label {
    overflow: hidden; }
  .lingo-basket-cell--item-price {
    text-align: right;
    flex: 1 0 5rem; }
  @media (max-width: 960px) {
    .lingo-basket-cell--item-actions {
      flex: 1 0 100%; } }
  @media (min-width: 1240px) {
    .lingo-basket-cell--item-actions {
      margin-left: 1em; } }
  .lingo-basket-cell--item-remove {
    text-align: right; }

.lingo-basket-cell--total {
  padding-left: 1rem;
  padding-right: 1rem;
  text-align: right; }

div.lingobasketcell button, div.newsletterscell button,
div.lingobasketcell input[type=submit], div.newsletterscell input[type=submit] {
  margin: 0 1em 1em 1em; }

.newsletterscell table {
  width: 100%;
  font-size: 0.9em;
  margin: 0.5em 0; }
  .newsletterscell table thead td, .newsletterscell table tbody td {
    padding-left: 5px; }
  .newsletterscell table thead td {
    font-weight: bold;
    text-align: center; }
  .newsletterscell table tbody td:nth-child(1) {
    text-align: left; }
  .newsletterscell table tbody td {
    text-align: center; }

div.feedcell h3 {
  margin: 0 0 0.3em 0; }

div.feedcell div.feed-content div,
div.feedcell div.feed-content p {
  margin: 0.3em 0 1em 0; }

div.feedcell img {
  max-width: 100%; }

div.bookingcalendar p.paginator {
  position: relative;
  margin-top: 0;
  text-align: center; }
  div.bookingcalendar p.paginator span.previous, div.bookingcalendar p.paginator span.next {
    opacity: 0.5; }
  div.bookingcalendar p.paginator .previous {
    position: absolute;
    left: 0; }
  div.bookingcalendar p.paginator .next {
    position: absolute;
    right: 0; }

div.bookingcalendar table th {
  text-align: center;
  height: 2.2em; }

div.bookingcalendar table tbody th {
  padding-right: 0.7em; }

div.bookingcalendar table td {
  border: 1px solid #ddd;
  position: relative; }
  div.bookingcalendar table td input[type=checkbox] {
    position: relative;
    display: block;
    width: 100%;
    z-index: 10; }
  div.bookingcalendar table td input[type=checkbox] + label {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: white;
    transition: background 0.3s ease; }
  div.bookingcalendar table td input[type=checkbox]:disabled + label {
    background: #ccc; }
  div.bookingcalendar table td.active-column input, div.bookingcalendar table td.active-column label {
    pointer-events: none; }
  div.bookingcalendar table td.active-column.clickable input, div.bookingcalendar table td.active-column.clickable label {
    pointer-events: auto; }
  div.bookingcalendar table td input[type=checkbox]:checked + label {
    background: #00c500; }
  div.bookingcalendar table td.absent {
    background: #eee; }
  div.bookingcalendar table td.unavailable {
    background: #c50000; }

div.bookingcalendar table {
  margin-bottom: 1em; }

#login-page {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; }
  @media only screen and (min-width: 600px) {
    #login-page {
      padding: 3rem; } }
  @media only screen and (min-width: 960px) {
    #login-page {
      padding: 3rem 6rem; } }
  @media only screen and (min-width: 1240px) {
    #login-page {
      padding: 1rem 2rem; } }
  #login-page > .block {
    width: 100%; }
    #login-page > .block input[type=text],
    #login-page > .block input[type=password] {
      width: 100%; }
  @media only screen and (min-width: 960px) {
    #login-page.methods1 > .block, #login-page.methods2 > .block, #login-page.methods3 > .block {
      width: 60%; } }
  @media only screen and (min-width: 1240px) {
    #login-page.methods1 > .block, #login-page.methods2 > .block, #login-page.methods3 > .block {
      width: 40%; } }
  @media only screen and (min-width: 960px) {
    .page-template-standard #login-page.methods1 > .block, .page-template-standard #login-page.methods2 > .block, .page-template-standard #login-page.methods3 > .block {
      width: 60%; } }
  @media only screen and (min-width: 1240px) {
    .page-template-standard #login-page.methods1 > .block, .page-template-standard #login-page.methods2 > .block, .page-template-standard #login-page.methods3 > .block {
      width: 33%; } }
  #login-page .block + .block {
    padding-top: 3rem; }
  #login-page .block:first-child {
    padding-bottom: 3rem; }

#registration-blocks > .a2-block > div,
#login-page > .block > div {
  padding: 0; }

@media screen and (max-width: 960px) {
  #registration-blocks.methods2 > .a2-block,
  #registration-blocks.methods3 > .a2-block {
    width: auto;
    float: none;
    margin: 0.7em; } }

#registration-blocks .a2-block:not(:first-child),
#login-page .block:not(:first-child) {
  border-top: 1px solid #999; }

#registration-blocks .a2-block:not(:first-child),
#login-page .block:not(.block:first-child) {
  border-radius: 0;
  overflow: visible;
  position: relative; }
  #registration-blocks .a2-block:not(:first-child)::before,
  #login-page .block:not(.block:first-child)::before {
    content: "OU";
    display: block;
    position: absolute;
    left: -1.5rem;
    width: 3rem;
    text-align: center;
    background: white;
    top: -1.5rem;
    height: 3rem;
    line-height: 3rem;
    margin: 0 50%; }

.block-oidc_federation-didentite .submit-button {
  margin-right: 0;
  width: 100%;
  border-radius: 40px;
  padding: 0;
  border: 2px solid #3d549d; }
  .block-oidc_federation-didentite .submit-button a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 10px 15px;
    text-decoration: none;
    color: white; }

#login-page {
  min-height: 60vh; }
  #login-page .external-user-text {
    text-align: center; }
  #login-page .external-user-button {
    margin-top: 12px;
    background-color: white !important;
    box-shadow: none;
    margin: 0 !important;
    width: 100%; }
    #login-page .external-user-button a {
      color: black; }
  #login-page .login-inputs {
    display: block;
    margin-top: 1.5rem; }
  #login-page .external-user-button + .login-inputs {
    display: none !important; }
  #login-page .external-user-button + .login-inputs.active {
    display: block !important; }

/* Block Auth FIM */
.block-oidc_federation-didentite {
  text-align: center; }
  .block-oidc_federation-didentite::before {
    content: none;
    display: none; }
  .block-oidc_federation-didentite .submit-button {
    padding: 0.4rem;
    font-size: 1.2rem;
    font-weight: bold; }

div.cell hr {
  width: 80%; }

.gru-content div.tipipaymentformcell > div > div {
  padding: 0 1em; }
  .gru-content div.tipipaymentformcell > div > div form #exer, .gru-content div.tipipaymentformcell > div > div form #idligne, .gru-content div.tipipaymentformcell > div > div form #idpce,
  .gru-content div.tipipaymentformcell > div > div form #rolrec, .gru-content div.tipipaymentformcell > div > div form #roldeb, .gru-content div.tipipaymentformcell > div > div form #roldet,
  .gru-content div.tipipaymentformcell > div > div form #montant_euros, .gru-content div.tipipaymentformcell > div > div form #montant_cents {
    width: auto; }

div.familyinfoscell h3 {
  padding: 5px 0;
  margin: 5px 0; }

div.familyinfoscell div.address {
  margin: 0.7em 0; }
  div.familyinfoscell div.address h4 {
    margin: 0; }

div.familyinfoscell div.family-data {
  padding-bottom: 1.5em;
  border-bottom: 0; }

div.familyinfoscell div.family_unlink {
  text-align: right; }

div.familyinfoscell div.family_members {
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 960px) {
    div.familyinfoscell div.family_members {
      flex-direction: column; } }
div.familyinfoscell div.family_adults, div.familyinfoscell div.family_children {
  width: 48%; }
  @media screen and (max-width: 960px) {
    div.familyinfoscell div.family_adults, div.familyinfoscell div.family_children {
      width: auto; } }
  div.familyinfoscell div.family_adults > div, div.familyinfoscell div.family_children > div {
    border-bottom: 0;
    padding-bottom: 0.7em;
    margin: 0.7em 0; }
  div.familyinfoscell div.family_adults .name, div.familyinfoscell div.family_children .name {
    font-size: 115%; }

div.familyinfoscell p {
  margin: 0;
  padding: 0; }
  div.familyinfoscell p span.label {
    font-weight: bold; }

div.cell.foldable > div > h2:first-child {
  cursor: pointer; }
  div.cell.foldable > div > h2:first-child::after {
    font-family: FontAwesome;
    content: "";
    position: absolute;
    right: 1em; }

div.cell.foldable > div > h2:first-child,
div.cell.foldable > div > picture {
  cursor: pointer; }

div.cell.foldable.folded > div > h2:first-child {
  display: block; }
  div.cell.foldable.folded > div > h2:first-child::after {
    content: ""; }

div.cell.foldable.folded > div > *:not(picture) {
  display: none; }

#footer .menucell {
  /* custom style for menu cells in footer, center links on a single line */
  text-align: center; }
  #footer .menucell li {
    display: flex;
    align-items: center;
    border: none;
    font-size: 13px; }
    #footer .menucell li:before {
      content: "|"; }
    #footer .menucell li a {
      border-radius: 0;
      border: none;
      color: #000;
      padding: 0.5rem 1rem; }
      #footer .menucell li a:hover {
        text-decoration: underline;
        background: none; }
        #footer .menucell li a:hover::after {
          content: none; }
  #footer .menucell:first-of-type li:before {
    content: "" !important; }
  @media only screen and (max-width: 599px) {
    #footer .menucell li:before {
      content: ""; } }
div.gallerycell div.gallery {
  text-align: center; }
  div.gallerycell div.gallery img {
    max-width: 100%;
    border: 1px solid #888; }

div.gru-content div.cell div.cell-items-pagination {
  padding: 1rem; }
  div.gru-content div.cell div.cell-items-pagination .cell-items-pagination-next {
    float: right;
    margin-right: 0; }

.column div.a2-block,
.gru-content div.cell,
.block {
  margin-top: 0;
  margin-bottom: 10px; }
  @media only screen and (max-width: 959px) {
    .column div.a2-block,
    .gru-content div.cell,
    .block {
      margin-bottom: 20px; } }
  .column div.a2-block h2 + div,
  .column div.a2-block .cell--body,
  .gru-content div.cell h2 + div,
  .gru-content div.cell .cell--body,
  .block h2 + div,
  .block .cell--body {
    padding: 0rem; }
  .column div.a2-block h2 + div.links-list,
  .gru-content div.cell h2 + div.links-list,
  .block h2 + div.links-list {
    padding: 0; }

#toplinks {
  position: absolute;
  top: 0;
  left: auto;
  right: 1em;
  border-radius: 0 0 1em 1em;
  background: white;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16), 0px 2px 10px 0px rgba(0, 0, 0, 0.12);
  width: auto;
  padding: 0.7em;
  border: 2px solid #5770be;
  border-width: 0 1px 1px 1px; }
  #toplinks a {
    text-decoration: none; }
  #toplinks a:hover {
    text-decoration: underline; }
  #toplinks a, #toplinks span {
    color: #5770be; }
  @media screen and (max-width: 960px) {
    #toplinks {
      position: absolute;
      top: 21px;
      left: auto;
      right: 1em;
      border-radius: 1em;
      background: white;
      box-shadow: 0px 2px 5px 0px RGB(0 0 0/16%), 0px 2px 10px 0px RGB(0 0 0/12%);
      width: auto;
      padding: 0.7em;
      border-width: 1px;
      right: 28px;
      max-width: 100%;
      border-radius: 1em;
      padding-right: 0.7em; }
      #toplinks span.sep {
        display: none; } }
  @media only screen and (max-width: 280px) {
    #toplinks {
      width: 120px; } }
#toplinks span.connected-user {
  padding-right: 0.7em; }
  @media screen and (max-width: 960px) {
    #toplinks span.connected-user {
      padding-right: 0; } }
body .ui-front {
  z-index: 3000; }

.ui-helper-hidden {
  display: none; }

.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.ui-widget-content {
  border: 1px solid #aaa;
  background: white; }
  .ui-widget-content .ui-widget-header {
    border: 1px solid #aaa;
    background: #ccc;
    position: relative;
    text-align: center;
    padding: 3px; }
    .ui-widget-content .ui-widget-header a {
      color: #333; }

.ui-datepicker {
  display: none;
  padding: .2em .2em 0; }
  .ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year {
    width: 49%; }
  .ui-datepicker .ui-datepicker-title {
    margin: 0 2.5em; }
  .ui-datepicker table {
    width: 100%;
    border-collapse: collapse; }
    .ui-datepicker table td {
      text-align: right; }
      .ui-datepicker table td a {
        background: #eee;
        border: 1px solid #aaa;
        display: block;
        padding: 0.3em 0.7em; }
        .ui-datepicker table td a:hover {
          border-color: #666; }
  .ui-datepicker a {
    border-bottom: 0; }
  .ui-datepicker .ui-datepicker-prev {
    display: block;
    position: absolute;
    left: 0.3em;
    cursor: pointer; }
    .ui-datepicker .ui-datepicker-prev::after {
      font-family: FontAwesome;
      content: "\f060"; }
    .ui-datepicker .ui-datepicker-prev span {
      display: none; }
  .ui-datepicker .ui-datepicker-next {
    display: block;
    position: absolute;
    right: 0.3em;
    cursor: pointer; }
    .ui-datepicker .ui-datepicker-next::after {
      font-family: FontAwesome;
      content: "\f061"; }
    .ui-datepicker .ui-datepicker-next span {
      display: none; }

.ui-helper-clearfix {
  min-height: 0; }
  .ui-helper-clearfix::before, .ui-helper-clearfix::after {
    content: "";
    display: table;
    border-collapse: collapse; }
  .ui-helper-clearfix::after {
    clear: both; }

div.ui-widget-overlay {
  background: #333;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.3;
  z-index: 1000; }

.ui-widget {
  font-size: 1.1em; }
  .ui-widget .ui-widget {
    font-size: 1em; }

div.ui-dialog {
  outline: 0;
  box-shadow: 0 0 3px 3px black;
  max-width: 85%;
  min-width: 30%;
  max-height: 80%;
  position: absolute;
  display: grid;
  grid-template-rows: auto 1fr auto; }
  div.ui-dialog .ui-dialog-titlebar {
    display: flex;
    align-items: start;
    text-align: left;
    cursor: move;
    border-left: none;
    border-right: none; }
    div.ui-dialog .ui-dialog-titlebar .ui-dialog-title {
      flex-grow: 1; }
    div.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close {
      color: inherit;
      margin-right: 0;
      margin-left: 1em;
      width: 1em;
      height: 1em;
      line-height: 1;
      overflow: hidden;
      flex-shrink: 0; }
      div.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon-closethick {
        display: block; }
        div.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon-closethick::after {
          content: "\f00d";
          font-family: FontAwesome; }
      div.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-button-text {
        display: block;
        text-indent: -9999999px; }
    div.ui-dialog .ui-dialog-titlebar button {
      padding: 0;
      border: 1px solid transparent;
      background: transparent;
      box-shadow: none;
      cursor: pointer; }
  div.ui-dialog .ui-widget-content {
    position: relative;
    border: 0;
    padding: .5em 1em;
    background: none;
    overflow: auto; }
  div.ui-dialog .ui-dialog-buttonpane {
    position: relative;
    background: transparent;
    padding: 0 1em 0.5em 0.4em; }
    div.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
      float: right; }
    div.ui-dialog .ui-dialog-buttonpane button {
      margin: 0.5em 0 0.5em 1em; }
  div.ui-dialog form p input,
  div.ui-dialog form p select,
  div.ui-dialog form p textarea {
    width: 100%; }
  div.ui-dialog form p input[type=radio], div.ui-dialog form p input[type=checkbox] {
    width: auto; }

.ui-tooltip {
  display: inline-block;
  box-shadow: #666 0px 0px 4px 0px;
  z-index: 100000; }
  .ui-tooltip div.ui-tooltip-content {
    background: white;
    padding: 0.7em; }

ul.ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default;
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: 15em;
  overflow-y: scroll;
  overflow-x: hidden; }
  ul.ui-autocomplete li {
    margin: 0;
    padding: 0 0.7em;
    position: relative;
    min-height: 0; }
    ul.ui-autocomplete li:hover {
      background: #eee; }

form.quixote h3, form.quixote h4 {
  font-size: 1.2rem; }

input, select, button, textarea {
  font-size: 100%;
  font-family: "Roboto", sans-serif;
  vertical-align: baseline; }

input, select {
  text-overflow: ellipsis;
  overflow: hidden; }

label {
  margin-bottom: 0; }

form div.widget {
  margin-bottom: 1.5em; }

div.error {
  font-weight: bold;
  background: transparent url(/static/dialog-warning.png) top left no-repeat;
  background-position: 0px;
  padding-left: 22px;
  margin-left: 0px;
  margin-top: 8px;
  margin-bottom: 8px;
  color: #f11616;
  font-weight: bold; }

span.required {
  margin-left: 0.3em;
  position: relative;
  top: -0.1em; }

div.widget div.title {
  margin-bottom: 0; }

div.widget [aria-invalid=true] {
  color: #f11616; }

div.buttons {
  margin-top: 2em; }

div.buttons div {
  display: inline-block; }
  div.buttons div input[name="submit"] {
    font-weight: bold; }

div.link-cell.pk-button ul > li > a, .link-cell.lingo-basket-cell--item-pay ul > li > a,
div.link-cell.pk-big-button ul > li > a, a.pk-button, a.lingo-basket-cell--item-pay, a.pk-big-button, div.table-container ul.pagination li.previous a, div.table-container ul.pagination li.next a, .fargo-pick-popup button,
button.ui-button,
a#a2-continue,
div.gru-content button,
input[type=submit],
div.buttons input, div.gru-content button.cancel-button,
div.buttons .cancel-button button {
  background: #5770be;
  text-align: center;
  color: white;
  padding: 10px 15px;
  cursor: pointer;
  border: 1px solid transparent;
  transition: background 0.5s ease, color 0.5s ease, border 0.5s ease;
  margin-right: 1.5em;
  vertical-align: middle;
  box-shadow: 1px 0px 5px rgba(0, 0, 0, 0.21); }
  div.link-cell.pk-button ul > li > a:hover, .link-cell.lingo-basket-cell--item-pay ul > li > a:hover,
  div.link-cell.pk-big-button ul > li > a:hover, a.pk-button:hover, a.lingo-basket-cell--item-pay:hover, a.pk-big-button:hover, div.table-container ul.pagination li.previous a:hover, div.table-container ul.pagination li.next a:hover, .fargo-pick-popup button:hover,
  button.ui-button:hover,
  a#a2-continue:hover,
  div.gru-content button:hover,
  input[type=submit]:hover,
  div.buttons input:hover,
  div.buttons .cancel-button button:hover {
    box-shadow: 0px 0px 5px #777;
    background: #5770be;
    color: white;
    text-decoration: none; }
  div.link-cell.pk-button ul > li > a:disabled, .link-cell.lingo-basket-cell--item-pay ul > li > a:disabled,
  div.link-cell.pk-big-button ul > li > a:disabled, a.pk-button:disabled, a.lingo-basket-cell--item-pay:disabled, a.pk-big-button:disabled, div.table-container ul.pagination li.previous a:disabled, div.table-container ul.pagination li.next a:disabled, .fargo-pick-popup button:disabled,
  button.ui-button:disabled,
  a#a2-continue:disabled,
  div.gru-content button:disabled,
  input[type=submit]:disabled,
  div.buttons input:disabled,
  div.buttons .cancel-button button:disabled {
    pointer-events: none;
    box-shadow: none;
    cursor: not-allowed;
    background: #8b8b8b;
    color: white;
    border-color: rgba(0, 0, 0, 0); }
  div.link-cell.pk-button ul > li > a:focus, .link-cell.lingo-basket-cell--item-pay ul > li > a:focus,
  div.link-cell.pk-big-button ul > li > a:focus, a.pk-button:focus, a.lingo-basket-cell--item-pay:focus, a.pk-big-button:focus, div.table-container ul.pagination li.previous a:focus, div.table-container ul.pagination li.next a:focus, .fargo-pick-popup button:focus,
  button.ui-button:focus,
  a#a2-continue:focus,
  div.gru-content button:focus,
  input[type=submit]:focus,
  div.buttons input:focus,
  div.buttons .cancel-button button:focus {
    outline: 1px dotted #5770be; }

div.gru-content form.disabled-during-submit div.buttons {
  cursor: wait; }
  div.gru-content form.disabled-during-submit div.buttons button {
    pointer-events: none;
    box-shadow: none;
    opacity: 0.7; }

input, input[type="search"], textarea, select {
  background: white;
  color: #000;
  border: 1px solid #AAA;
  border-radius: 0;
  margin: 0.2em 0px;
  padding: 0.4em 0.7em 0.4em 0.7em;
  max-width: 100%;
  transition: background 0.5s ease, color 0.5s ease, border 0.5s ease; }
  input:focus:not([readonly]), input[type="search"]:focus:not([readonly]), textarea:focus:not([readonly]), select:focus:not([readonly]) {
    background-color: white;
    border: 1px solid #AAA;
    color: #000;
    box-shadow: none; }
  input:focus, input[type="search"]:focus, textarea:focus, select:focus {
    outline: none;
    outline-offset: 0; }
  .error + input, .error + input[type="search"], .error + textarea, .error + select {
    border: 1px solid #f11616 !important; }

select option {
  background: none;
  color: black; }

input[readonly], select[readonly], textarea[readonly] {
  border-left-color: transparent;
  border-right-color: transparent;
  border-top-color: transparent;
  border-radius: 0; }

select[readonly] {
  background-image: none; }

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  padding-right: 4em;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NDQuOCA0NDQuOCIgd2lkdGg9IjQ0NC44IiBoZWlnaHQ9IjQ0NC44Ij48cGF0aCBkPSJNMjQ4LjEgMzUyTDQzNCAxNjUuOWM3LjItNi45IDEwLjgtMTUuNCAxMC44LTI1LjcgMC0xMC4zLTMuNi0xOC44LTEwLjgtMjUuN2wtMjEuNC0yMS43Yy03LTctMTUuNi0xMC42LTI1LjctMTAuNi05LjkgMC0xOC42IDMuNS0yNiAxMC42TDIyMi40IDIzMS41IDgzLjcgOTIuOGMtNy03LTE1LjYtMTAuNi0yNS43LTEwLjYtOS45IDAtMTguNiAzLjUtMjYgMTAuNmwtMjEuNCAyMS43Yy03IDctMTAuNiAxNS42LTEwLjYgMjUuN3MzLjUgMTguNyAxMC42IDI1LjdMMTk2LjQgMzUyYzcuNCA3IDE2LjEgMTAuNiAyNiAxMC42IDEwLjEgMCAxOC43LTMuNSAyNS43LTEwLjZ6Ii8+PC9zdmc+Cg==");
  background-position: right 1.3rem center;
  background-repeat: no-repeat;
  background-size: 1rem auto; }
  select::-ms-expand {
    display: none; }

input[type="checkbox"],
input[type="radio"] {
  margin-right: 0.7em;
  margin-bottom: 0.7em; }
  input[type="checkbox"]:focus,
  input[type="radio"]:focus {
    outline: 1px solid #AAA;
    outline-style: dotted; }

.content label input[type="checkbox"],
.content label input[type="radio"] {
  margin: 0 !important;
  margin-right: 0.7em !important; }

.RadiobuttonsWidget .content label, .CheckboxesWidget .content label {
  display: flex;
  align-items: center;
  margin-bottom: 1rem; }

.CheckboxesWidget.widget-inline-radio .content label,
.RadiobuttonsWidget.widget-inline-radio .content label {
  display: inline-block; }

input:not([type='checkbox']):not([type='radio']), textarea, select {
  font-size: 1.2rem;
  line-height: 1;
  border: 1px solid #aba1a1; }

div.content label {
  margin-right: 1em; }

div.widget div.content ul,
.RadiobuttonsWidget [role="radiogroup"] {
  padding: 0;
  padding-top: 12px;
  margin: 0;
  list-style: none; }

span.helptext,
div.hint {
  display: block;
  font-size: 80%; }

form p label {
  display: block;
  font-weight: bold; }

div.a2-block form input,
div.a2-block form select {
  width: 100%; }

div.a2-block form input[type=checkbox],
div.a2-block form input[type=radio] {
  width: auto; }

div.a2-block form button,
div.a2-block form input[type=submit] {
  width: auto;
  min-width: 12em; }
  @media screen and (max-width: 480px) {
    div.a2-block form button,
    div.a2-block form input[type=submit] {
      min-width: 8em; } }
div.a2-block ul#id_title {
  margin-left: 1em; }
  div.a2-block ul#id_title li {
    display: inline-block;
    margin-right: 2em; }
  div.a2-block ul#id_title label {
    font-weight: normal; }

div.a2-block ul#id_title {
  margin-left: 0;
  padding-left: 1em; }

div.a2-block #id_do_not_ask_again + span {
  font-weight: normal; }

form ul.errorlist {
  padding: 0;
  margin: 2em 0 0 0;
  list-style: none; }
  form ul.errorlist li::before {
    content: "\f06a";
    font-family: FontAwesome;
    padding-right: 0.7em; }

body .ui-front {
  z-index: 1000; }

div.select2-container,
span.select2-container {
  min-width: 20em;
  margin: 0.2em 0px;
  padding-bottom: 1px; }
  div.select2-container a.select2-choice,
  span.select2-container a.select2-choice {
    padding: 0.1em 0.7em; }
  div.select2-container span.select2-selection--single,
  div.select2-container a.select2-choice,
  div.select2-container a.select2-choice div,
  span.select2-container span.select2-selection--single,
  span.select2-container a.select2-choice,
  span.select2-container a.select2-choice div {
    box-sizing: content-box;
    padding: 0.2em 0 0.2em 0;
    background: white;
    color: #000;
    border-radius: 0;
    border: 1px solid #AAA; }
  div.select2-container.select2-container--focus span.select2-selection--single,
  div.select2-container.select2-container--focus a.select2-choice,
  div.select2-container.select2-container--focus a.select2-choice div, div.select2-container.select2-container--open span.select2-selection--single,
  div.select2-container.select2-container--open a.select2-choice,
  div.select2-container.select2-container--open a.select2-choice div,
  span.select2-container.select2-container--focus span.select2-selection--single,
  span.select2-container.select2-container--focus a.select2-choice,
  span.select2-container.select2-container--focus a.select2-choice div,
  span.select2-container.select2-container--open span.select2-selection--single,
  span.select2-container.select2-container--open a.select2-choice,
  span.select2-container.select2-container--open a.select2-choice div {
    background: white;
    border: 1px solid #AAA;
    color: #000; }
    div.select2-container.select2-container--focus span.select2-selection--single span,
    div.select2-container.select2-container--focus a.select2-choice span,
    div.select2-container.select2-container--focus a.select2-choice div span, div.select2-container.select2-container--open span.select2-selection--single span,
    div.select2-container.select2-container--open a.select2-choice span,
    div.select2-container.select2-container--open a.select2-choice div span,
    span.select2-container.select2-container--focus span.select2-selection--single span,
    span.select2-container.select2-container--focus a.select2-choice span,
    span.select2-container.select2-container--focus a.select2-choice div span,
    span.select2-container.select2-container--open span.select2-selection--single span,
    span.select2-container.select2-container--open a.select2-choice span,
    span.select2-container.select2-container--open a.select2-choice div span {
      color: #000; }
  div.select2-container.select2-container--focus span.select2-selection--single,
  span.select2-container.select2-container--focus span.select2-selection--single {
    outline: none;
    outline-offset: 0; }
  div.select2-container .select2-choices,
  div.select2-container .select2-choice,
  span.select2-container .select2-choices,
  span.select2-container .select2-choice {
    box-shadow: none; }
  div.select2-container .select2-search--dropdown input,
  div.select2-container .select2-search--dropdown input:active,
  div.select2-container .select2-search--dropdown input:focus,
  span.select2-container .select2-search--dropdown input,
  span.select2-container .select2-search--dropdown input:active,
  span.select2-container .select2-search--dropdown input:focus {
    background: white;
    color: #333;
    border: 1px solid #ccc; }
  div.select2-container .select2-selection--single .select2-selection__rendered,
  span.select2-container .select2-selection--single .select2-selection__rendered {
    padding-right: 50px; }
  div.select2-container .select2-selection--single .select2-selection__arrow,
  span.select2-container .select2-selection--single .select2-selection__arrow {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NDQuOCA0NDQuOCIgd2lkdGg9IjQ0NC44IiBoZWlnaHQ9IjQ0NC44Ij48cGF0aCBkPSJNMjQ4LjEgMzUyTDQzNCAxNjUuOWM3LjItNi45IDEwLjgtMTUuNCAxMC44LTI1LjcgMC0xMC4zLTMuNi0xOC44LTEwLjgtMjUuN2wtMjEuNC0yMS43Yy03LTctMTUuNi0xMC42LTI1LjctMTAuNi05LjkgMC0xOC42IDMuNS0yNiAxMC42TDIyMi40IDIzMS41IDgzLjcgOTIuOGMtNy03LTE1LjYtMTAuNi0yNS43LTEwLjYtOS45IDAtMTguNiAzLjUtMjYgMTAuNmwtMjEuNCAyMS43Yy03IDctMTAuNiAxNS42LTEwLjYgMjUuN3MzLjUgMTguNyAxMC42IDI1LjdMMTk2LjQgMzUyYzcuNCA3IDE2LjEgMTAuNiAyNiAxMC42IDEwLjEgMCAxOC43LTMuNSAyNS43LTEwLjZ6Ii8+PC9zdmc+Cg==");
    background-position: right 1.3rem center;
    background-repeat: no-repeat;
    background-size: 1rem auto;
    width: 50px;
    right: 0;
    top: 0;
    height: 100%; }
    div.select2-container .select2-selection--single .select2-selection__arrow b,
    span.select2-container .select2-selection--single .select2-selection__arrow b {
      display: none; }
  div.select2-container .select2-dropdown,
  span.select2-container .select2-dropdown {
    border: 1px solid #AAA; }
    div.select2-container .select2-dropdown.select2-dropdown--below,
    span.select2-container .select2-dropdown.select2-dropdown--below {
      position: relative;
      top: -6px; }
  div.select2-container .select2-results .loading-results,
  span.select2-container .select2-results .loading-results {
    position: absolute;
    display: inline-block;
    right: 0;
    color: black; }
    @media screen and (max-width: 600px) {
      div.select2-container .select2-results .loading-results,
      span.select2-container .select2-results .loading-results {
        display: none; } }
  div.select2-container .select2-results .loading-results:last-child,
  span.select2-container .select2-results .loading-results:last-child {
    position: static;
    display: block;
    color: inherit; }

div.select2-container.select2-drop-above .select2-choice {
  background: white;
  border-radius: 0; }

div.select2-drop {
  box-shadow: none;
  border-radius: 0; }

div.select2-search {
  margin-top: 4px; }

.BlockWidget .list-add {
  clear: both; }

.quixote:not(#wf-actions) div.buttons {
  display: flex;
  flex-wrap: wrap; }
  .quixote:not(#wf-actions) div.buttons .previous-button {
    order: 1; }
  .quixote:not(#wf-actions) div.buttons .submit-button {
    order: 2; }
  .quixote:not(#wf-actions) div.buttons .cancel-button {
    order: 3; }
  .quixote:not(#wf-actions) div.buttons .savedraft-button {
    display: none; }

/* mark forms optional fields and hide the required ones */
.widget-optional span.optional {
  display: none; }

.pk-mark-optional-fields .widget-required span.required {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important; }

.pk-mark-optional-fields .widget-optional:not(.django-checkbox-input) span.optional {
  display: inline;
  font-style: italic; }

/* Create a custom checkbox */
input[type="checkbox"] {
  height: 25px;
  width: 25px;
  background-color: #eee; }

/* On mouse-over, add a grey background color */
input ~ input[type="checkbox"] {
  background-color: #ccc; }

/* When the checkbox is checked, add a blue background */
input:checked ~ input[type="checkbox"] {
  background-color: #2196F3; }

/* Create the checkmark/indicator (hidden when not checked) */
input[type="checkbox"]:after {
  content: "";
  position: absolute;
  display: none; }

/* Show the checkmark when checked */
input:checked ~ input[type="checkbox"]:after {
  display: block; }

/* Style the checkmark/indicator */
input[type="checkbox"]:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); }

@media only screen and (max-width: 599px) {
  div.buttons div {
    display: block; }
    div.buttons div button {
      width: 100%; }
  input:not([type='checkbox']):not([type='radio']), textarea, select {
    display: block;
    width: 100%;
    padding: 8px 12px;
    font-size: 1.2rem;
    line-height: 1;
    border: 1px solid #aba1a1; }
  div#rub_service form input:not([type='checkbox']):not([type='radio']), div#rub_service form textarea, div#rub_service form select {
    display: block;
    width: 100%; } }

div.cell[class*=grid-],
div.dataview div[class*=grid-],
form.quixote div[class*=grid-] {
  clear: none; }
  div.cell[class*=grid-].newline,
  div.dataview div[class*=grid-].newline,
  form.quixote div[class*=grid-].newline {
    clear: both; }

div[class*=grid-] {
  float: left;
  padding-right: 1rem; }
  @media screen and (max-width: 480px) {
    div[class*=grid-]:not(.never-alone) {
      width: 100%;
      padding-right: 0; } }
  div[class*=grid-] table, div[class*=grid-] textarea, div[class*=grid-] select, div[class*=grid-] input[type=text], div[class*=grid-] input[type=password], div[class*=grid-] input[type=email], div[class*=grid-] input[type=url], div[class*=grid-] input[type=tel], div[class*=grid-] input[type=number], div[class*=grid-] input[type=search], div[class*=grid-] input[type=file], div[class*=grid-] input[type=date], div[class*=grid-] input[type=datetime-local], div[class*=grid-] input[type=month], div[class*=grid-] input[type=time], div[class*=grid-] input[type=week] {
    width: 100%; }
  div[class*=grid-] .select2-container {
    min-width: auto;
    width: 100% !important; }
  div[class*=grid-].newline {
    clear: both; }

div.dataview div[class*=grid-],
form div[class*=grid-] {
  box-sizing: content-box; }
  div.dataview div[class*=grid-] ~ h3, div.dataview div[class*=grid-] ~ h4,
  form div[class*=grid-] ~ h3,
  form div[class*=grid-] ~ h4 {
    padding-top: 1rem; }

form div[class*=grid-] ~ h3, form div[class*=grid-] ~ h4, form div[class*=grid-] ~ p, form div[class*=grid-] + div {
  clear: both; }

div.dataview div[class*=grid-] ~ div.title, div.dataview div[class*=grid-] ~ div.subtitle {
  clear: both; }

form div[class*=grid-] span.select2-selection,
form div[class*=grid-] div.select2-container {
  width: 100% !important; }

.gru-content #columns > .cell[class*=grid-] {
  padding-right: 0;
  margin-right: 1rem; }

.grid-1-1 {
  width: calc( 100% - 1rem); }

.grid-1-2 {
  width: calc( 50% - 1rem); }

.grid-2-2 {
  width: calc( 100% - 1rem); }

.grid-1-3 {
  width: calc( 33.3333333333% - 1rem); }

.grid-2-3 {
  width: calc( 66.6666666667% - 1rem); }

.grid-3-3 {
  width: calc( 100% - 1rem); }

.grid-1-4 {
  width: calc( 25% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-1-4 {
      width: calc(50% - 1rem); } }
.grid-2-4 {
  width: calc( 50% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-2-4 {
      width: calc(50% - 1rem); } }
.grid-3-4 {
  width: calc( 75% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-3-4 {
      width: calc(100% - 1rem); } }
.grid-4-4 {
  width: calc( 100% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-4-4 {
      width: calc(100% - 1rem); } }
.grid-1-6 {
  width: calc( 16.6666666667% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-1-6 {
      width: calc(33.3333333333% - 1rem); } }
.grid-2-6 {
  width: calc( 33.3333333333% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-2-6 {
      width: calc(33.3333333333% - 1rem); } }
.grid-3-6 {
  width: calc( 50% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-3-6 {
      width: calc(50% - 1rem); } }
.grid-4-6 {
  width: calc( 66.6666666667% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-4-6 {
      width: calc(66.6666666667% - 1rem); } }
.grid-5-6 {
  width: calc( 83.3333333333% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-5-6 {
      width: calc(66.6666666667% - 1rem); } }
.grid-6-6 {
  width: calc( 100% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-6-6 {
      width: calc(100% - 1rem); } }
.grid-1-12 {
  width: calc( 8.3333333333% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-1-12 {
      width: calc(33.3333333333% - 1rem); } }
.grid-2-12 {
  width: calc( 16.6666666667% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-2-12 {
      width: calc(33.3333333333% - 1rem); } }
.grid-3-12 {
  width: calc( 25% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-3-12 {
      width: calc(33.3333333333% - 1rem); } }
.grid-4-12 {
  width: calc( 33.3333333333% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-4-12 {
      width: calc(33.3333333333% - 1rem); } }
.grid-5-12 {
  width: calc( 41.6666666667% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-5-12 {
      width: calc(50% - 1rem); } }
.grid-6-12 {
  width: calc( 50% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-6-12 {
      width: calc(50% - 1rem); } }
.grid-7-12 {
  width: calc( 58.3333333333% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-7-12 {
      width: calc(50% - 1rem); } }
.grid-8-12 {
  width: calc( 66.6666666667% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-8-12 {
      width: calc(66.6666666667% - 1rem); } }
.grid-9-12 {
  width: calc( 75% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-9-12 {
      width: calc(66.6666666667% - 1rem); } }
.grid-10-12 {
  width: calc( 83.3333333333% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-10-12 {
      width: calc(66.6666666667% - 1rem); } }
.grid-11-12 {
  width: calc( 91.6666666667% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-11-12 {
      width: calc(66.6666666667% - 1rem); } }
.grid-12-12 {
  width: calc( 100% - 1rem); }
  @media screen and (max-width: 960px) {
    .grid-12-12 {
      width: calc(100% - 1rem); } }
@media only screen and (max-width: 599px) {
  div[class*=grid-] {
    float: none;
    width: 100%; } }

#djDebug {
  display: none !important; }

div#droite,
div#services > h3,
div#sidebox div#links {
  display: none; }

@media only screen and (min-width: 1240px) {
  div#gauche, div#rub_service {
    margin-top: 2em; } }

div#rub_service {
  background: white; }

div#gauche {
  text-align: center; }
  div#gauche div#tracking-code {
    display: inline-block;
    min-width: 15rem; }
    div#gauche div#tracking-code a {
      padding-left: 0; }

div#services > ul {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  -ms-column-count: 2;
  -o-column-count: 2;
  column-count: 2;
  padding: 0;
  margin: 0;
  list-style: none; }
  @media screen and (max-width: 960px) {
    div#services > ul {
      -webkit-column-count: 1;
      -moz-column-count: 1;
      -ms-column-count: 1;
      -o-column-count: 1;
      column-count: 1; } }
div#services > ul > li {
  display: inline-block; }

div#services ul li li {
  list-style: none; }

div#services > ul > li {
  margin: 0;
  margin-bottom: 10px;
  width: 100%; }

div#rub_service h2 {
  margin: 30px 0;
  padding: 22px 0 0;
  line-height: 1.03; }
  div#rub_service h2::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    height: 6px;
    background-color: #228bcc;
    top: 7px;
    width: 72px; }

div.gru-content div#rub_service h3,
div#rub_service h3 {
  border: none;
  text-align: left;
  border-bottom: 2px solid transparent; }

div#rub_service div.dataview,
div#rub_service dl#evolutions,
div#rub_service .drafts-recall,
div#rub_service form {
  padding: 0rem; }

div#rub_service .drafts-recall ul li {
  padding-bottom: 8px; }

div#rub_service div.dataview div.title h3 {
  font-size: 115%;
  border: 0; }

div#rub_service div.dataview div.subtitle h4 {
  font-size: 110%; }

div#rub_service div.dataview div.field.status {
  clear: both; }

div#tracking-code div.tracking-code-part + form {
  margin-top: 1em; }

div#tracking-code a {
  font-size: 150%;
  display: inline-block;
  padding: 0.3em 0 0 0.3em;
  color: #444; }

div#tracking-code {
  margin-bottom: 1em; }

div#services div.block-custom-text {
  margin: 1em; }

@media screen and (max-width: 960px) {
  div#gauche {
    float: none;
    width: 100%; }
  div#side {
    display: flex;
    flex-direction: column; }
    div#side > div {
      flex: 1 0 auto; }
  div#tracking-code {
    padding-top: 20px;
    font-size: 80%;
    order: 1; }
    div#tracking-code h3 {
      display: block;
      text-align: center;
      padding: 0 !important; }
    div#tracking-code .text-tracking-code-short-text {
      display: none; }
  div#gauche + div#rub_service,
  div#rub_service {
    width: 100%;
    margin: 0;
    float: none; }
  div#gauche {
    text-align: left; }
    div#gauche div#tracking-code a {
      padding-left: 0em;
      display: block;
      text-align: center; } }

#tracking-code,
.wcs-tracking-code-input button {
  width: 100%; }

li.required-authentication span {
  display: none; }

li.required-authentication a:after {
  content: "\f084";
  font-family: FontAwesome;
  position: absolute;
  right: 0.7em;
  color: #444; }

ul#evolutions,
div.gru-content #disclose-dataview,
div#receipt-intro {
  margin: 1em;
  padding: 0;
  display: block; }

div.qommon-map {
  height: 280px; }

p.use-file-from-fargo span {
  cursor: pointer;
  border-bottom: 1px dotted #999; }

ul#evolutions {
  list-style: none;
  padding: 0;
  margin: 0;
  position: relative; }

#evolutions:after {
  content: "";
  background: #bbb;
  position: absolute;
  width: 1px;
  top: 40px;
  left: 30px;
  height: calc(100% - 40px);
  z-index: 0;
  border-radius: 3px; }

ul#evolutions > li {
  list-style-image: none;
  margin: 1em 0 2em 0;
  z-index: 10;
  position: relative; }
  ul#evolutions > li li {
    margin: 1rem 0; }

ul#evolutions > li:after {
  content: "";
  background: #bbb;
  position: absolute;
  width: 100px;
  left: 30px;
  top: 39px;
  height: 1px;
  z-index: -10; }

ul#evolutions div.evolution-metadata {
  width: auto;
  display: inline-block;
  background: white;
  margin-left: 60px;
  padding: 0.7em;
  padding-top: 30px;
  padding-bottom: 0;
  margin-bottom: 0; }

ul#evolutions span.time {
  display: block;
  color: #aaa; }

ul#evolutions li div.msg span.time {
  padding-left: 0; }

ul#evolutions span.status {
  font-weight: bold;
  display: inline-block; }

ul#evolutions span.user {
  display: block;
  opacity: 0.5; }

ul#evolutions span.user span {
  font-size: 80%; }

ul#evolutions li div.msg {
  padding: 0.7em;
  padding-top: 0;
  position: relative;
  background: white;
  margin-left: 60px;
  margin-right: 30px; }
  ul#evolutions li div.msg p.wf-attachment {
    overflow: hidden;
    text-overflow: ellipsis; }

ul#evolutions li div.msg div.comment {
  padding: 0.7em 1em;
  background: #EEEEEE; }

#evolutions .msg-system {
  margin-bottom: 30px; }

ul#evolutions li span.item {
  position: absolute;
  text-align: center;
  width: 31px;
  height: 31px;
  display: block;
  left: 15px;
  border-radius: 20px;
  border: 1px solid #888;
  top: 24px;
  background: white !important;
  box-shadow: 0 0 0px 5px white; }
  ul#evolutions li span.item::before {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    background: #5770be;
    position: relative;
    left: 11px;
    top: 11px;
    border-radius: 5px; }

div.dataview div.field {
  margin-bottom: 0.7em; }

div.dataview div.field-type-items .value ul {
  margin-top: 0;
  margin-bottom: 0; }

div.dataview span.label {
  font-weight: bold; }

div.dataview .value {
  display: block;
  margin-left: 0.7em; }

div.dataview .field-type-block > .value {
  margin-left: 0; }

form div.errornotice {
  margin-top: 0; }

div.halfwidth {
  width: 45%;
  float: left; }

div.widget.halfwidth.right {
  clear: none;
  margin-left: 5%; }

div.fullwidth {
  width: 95%; }

div.halfwidth textarea, div.halfwidth select, div.halfwidth input,
div.fullwidth textarea,
div.fullwidth select,
div.fullwidth input {
  width: 100%; }

div.buttons,
div.dataview > p,
div.dataview div.page {
  clear: both; }

form div.page::after,
div.dataview div.page::after {
  content: "";
  display: block;
  clear: both; }

div.form-validation div.page {
  background: #f0f0f0;
  padding-left: 0.7em; }

div.form-validation div.page > h3 {
  padding-top: 0.7em;
  font-size: 140%; }

div#rub_service div.form-validation div.page div h3 {
  border-bottom-width: 1px; }

label.activity {
  display: block;
  background: url(/static/img/spinner.gif) no-repeat top right;
  padding-right: 30px; }

span.geoloc-error {
  padding-left: 0.7em;
  font-weight: normal;
  font-size: smaller;
  float: right; }
  @media screen and (max-width: 960px) {
    span.geoloc-error {
      padding-left: 0;
      float: none;
      display: block;
      z-index: 100;
      background: red;
      color: white;
      text-align: center; } }
.fileprogress {
  border: 1px solid #888; }

.fileprogress .bar {
  background: #5770be;
  line-height: 1.5em;
  padding-left: 0.7em;
  white-space: nowrap;
  transition: background linear 0.1s; }

.fileprogress.upload-error .bar {
  background: #FF7575;
  color: black;
  width: 100% !important;
  white-space: normal; }

.fileinfo {
  line-height: 1.5em; }

div.fileinfo a.remove {
  text-indent: 0;
  background: none;
  color: transparent;
  display: inline-block;
  width: 16px;
  text-indent: -10000px;
  position: absolute;
  top: 0;
  right: 0; }
  div.fileinfo a.remove::before {
    font-family: FontAwesome;
    content: "\f057";
    color: #5770be;
    text-indent: 0;
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    width: 2rem;
    height: 2rem;
    line-height: 2rem;
    text-align: center; }

div.RankedItemsWidget label input {
  margin-right: 1em; }

div.RadiobuttonsWidget.pk-hidden, div.RadiobuttonsWidget.hidden, div.SingleSelectHintWidget.pk-hidden, div.SingleSelectHintWidget.hidden,
div.SingleSelectWidget.pk-hidden,
div.SingleSelectWidget.hidden, div.SingleSelectWidgetWithOther.pk-hidden, div.SingleSelectWidgetWithOther.hidden {
  display: none !important; }

div.CheckboxesWidget div.content ul li.disabled {
  color: gray; }

div.RadiobuttonsWidget div.content input[disabled] + span {
  color: gray; }

div.file-upload-widget:not([class*="grid-"]) div.file-button {
  max-width: 100%; }

div.file-upload-widget div.file-button {
  overflow: hidden;
  background: white;
  margin: 0;
  border: 1px solid #AAA;
  border-radius: 0;
  min-height: 150px;
  position: relative;
  text-align: center; }
  div.file-upload-widget div.file-button:focus-within {
    border: 1px solid #AAA;
    outline: 1px solid #AAA;
    outline-style: dotted; }
  div.file-upload-widget div.file-button div.widget.FileWidget {
    margin-bottom: 0; }
  div.file-upload-widget div.file-button input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.001;
    margin: 0;
    font-size: 0;
    cursor: pointer; }
  div.file-upload-widget div.file-button div.upload-done {
    display: none; }
  div.file-upload-widget div.file-button div.click-to-upload {
    display: block; }
  div.file-upload-widget div.file-button div.widget-message {
    padding-top: 20px; }
    div.file-upload-widget div.file-button div.widget-message::before {
      pointer-events: none;
      content: "\f016";
      font-family: FontAwesome;
      font-size: 40px;
      display: block;
      padding-top: 20px;
      padding-bottom: 10px; }
    div.file-upload-widget div.file-button div.widget-message::after {
      pointer-events: none;
      content: "\f055";
      font-family: FontAwesome;
      font-size: 20px;
      display: block;
      position: absolute;
      left: calc(50% + 10px);
      top: 30px;
      color: #5770be; }
    div.file-upload-widget div.file-button div.widget-message.upload-done::after {
      content: "\f05d"; }
  div.file-upload-widget div.file-button.file-image div.widget-message::before {
    content: "\f1c5"; }

div.file-upload-widget.has-file div.file-button div.upload-done {
  display: block; }

div.file-upload-widget.has-file div.file-button div.click-to-upload {
  display: none; }

div.file-upload-widget .filename {
  white-space: pre;
  text-overflow: ellipsis;
  display: block;
  overflow: hidden;
  max-width: 95%;
  margin: 0 auto; }

div.file-upload-widget.widget-readonly div.file-button {
  height: 150px; }
  div.file-upload-widget.widget-readonly div.file-button .fileinfo.thumbnail {
    height: 100%; }
  div.file-upload-widget.widget-readonly div.file-button div.widget-message {
    display: none; }
  div.file-upload-widget.widget-readonly div.file-button .fileinfo.thumbnail span.filename {
    display: none; }
  div.file-upload-widget.widget-readonly div.file-button span.filename {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: block;
    padding-top: 30px; }
    div.file-upload-widget.widget-readonly div.file-button span.filename::before {
      pointer-events: none;
      content: "\f016";
      font-family: FontAwesome;
      font-size: 40px;
      display: block;
      padding-top: 40px;
      padding-bottom: 10px; }
  div.file-upload-widget.widget-readonly div.file-button img {
    max-height: 100%;
    position: relative;
    z-index: 10; }

div.file-upload-widget.short div.file-button {
  min-height: 110px; }

div.file-upload-widget.short.widget-readonly div.file-button {
  height: 110px; }

div.file-upload-widget.short div.file-button div.widget-message {
  padding-top: 0px; }
  div.file-upload-widget.short div.file-button div.widget-message::before {
    padding-top: 10px; }
  div.file-upload-widget.short div.file-button div.widget-message::after {
    top: 5px; }

div.file-upload-widget div.fileprogress {
  position: absolute;
  border: none;
  overflow: hidden;
  width: 100%;
  left: 0;
  bottom: 0; }

.TableListRowsWidget .widget {
  margin-bottom: 0; }

.responsive-tableWidget {
  min-width: 100%;
  table-layout: fixed; }
  .responsive-tableWidget th, .responsive-tableWidget td::before {
    text-align: left;
    font-weight: normal; }
  @media (max-width: 960px) {
    .responsive-tableWidget, .responsive-tableWidget tbody {
      display: block; }
    .responsive-tableWidget thead th {
      display: none; }
    .responsive-tableWidget tbody th {
      display: block; }
    .responsive-tableWidget tbody tr {
      display: block;
      padding-top: 0.5rem;
      padding-bottom: 0.5rem; }
      .responsive-tableWidget tbody tr:nth-child(even) {
        background-color: rgba(0, 0, 0, 0.065); }
    .responsive-tableWidget tbody td {
      display: flex;
      align-items: last baseline; }
    .responsive-tableWidget tbody td::before {
      content: attr(data-col-header);
      display: block;
      flex: 0 1 33%;
      margin-right: .66em; } }
  @media (max-width: 480px) {
    .responsive-tableWidget tbody td {
      display: block; } }
p.use-file-from-fargo {
  margin-top: 0; }

div.section.foldable {
  margin-bottom: 1rem; }
  div.section.foldable > h2:first-child {
    cursor: pointer; }
    div.section.foldable > h2:first-child::after {
      font-family: FontAwesome;
      content: "\f106";
      position: absolute;
      right: 1em; }
    div.section.foldable > h2:first-child:focus span.disclose-message, div.section.foldable > h2:first-child:hover span.disclose-message {
      text-decoration: underline; }
  div.section.foldable span.disclose-message {
    padding-left: 1ex;
    font-size: 1rem;
    display: none; }
  div.section.foldable.folded span.disclose-message {
    display: inline-block; }
    @media screen and (max-width: 960px) {
      div.section.foldable.folded span.disclose-message {
        display: none; } }
  div.section.foldable.folded div {
    display: none; }
  div.section.foldable.folded > h2:first-child::after {
    content: "\f107"; }

.wcs-block-with-remove-button .BlockSubWidget {
  position: relative; }
  .wcs-block-with-remove-button .BlockSubWidget::after {
    display: block;
    clear: both;
    content: ""; }
  @supports (display: flow-root) {
    .wcs-block-with-remove-button .BlockSubWidget {
      display: flow-root; }
      .wcs-block-with-remove-button .BlockSubWidget::after {
        content: none; } }

.wcs-block-with-remove-button .remove-button {
  position: absolute;
  right: 3px;
  top: 0.5em;
  margin-right: 0; }
  .wcs-block-with-remove-button .remove-button span {
    display: none; }
  .wcs-block-with-remove-button .remove-button::after {
    font-family: FontAwesome;
    content: "\f1f8"; }

.pk-blocks-zebra .BlockSubWidget {
  position: relative; }
  .pk-blocks-zebra .BlockSubWidget::after {
    display: block;
    clear: both;
    content: ""; }
  @supports (display: flow-root) {
    .pk-blocks-zebra .BlockSubWidget {
      display: flow-root; }
      .pk-blocks-zebra .BlockSubWidget::after {
        content: none; } }

.pk-blocks-zebra .error ~ .BlockSubWidget:nth-child(odd),
.pk-blocks-zebra .BlockSubWidget:first-child ~ .BlockSubWidget:nth-child(even) {
  background: rgba(0, 0, 0, 0.05);
  box-shadow: -0.5em -0.5em 0 0.5em rgba(0, 0, 0, 0.05); }

.template-evaluation label.star-choice span.star::before,
div.star-choice span.star::before {
  position: static;
  height: auto;
  width: auto;
  border: none;
  font-family: FontAwesome;
  content: "\f006";
  color: #776;
  font-size: 22px;
  display: inline-block;
  transition: transform ease 0.2s; }

.template-evaluation label.star-choice span.star.selected::before, .template-evaluation label.star-choice span.star:hover::before,
div.star-choice span.star.selected::before,
div.star-choice span.star:hover::before {
  content: "\f005";
  color: #ffaa00; }

.template-evaluation label.star-choice input[type=radio]:hover + span.star::before,
.template-evaluation label.star-choice input[type=radio]:focus + span.star::before,
.template-evaluation label.star-choice span.star:hover::before,
div.star-choice input[type=radio]:hover + span.star::before,
div.star-choice input[type=radio]:focus + span.star::before,
div.star-choice span.star:hover::before {
  transform: scale(1.4);
  opacity: 0.8; }

.RadiobuttonsWidget.template-evaluation br {
  display: none; }

.RadiobuttonsWidget.template-evaluation input:focus + span.star {
  outline: 1px solid #AAA;
  outline-style: dotted; }

.RadiobuttonsWidget.template-evaluation input + span::after {
  display: none; }

.RadiobuttonsWidget.template-evaluation label {
  margin-right: 0; }

.RadiobuttonsWidget.template-evaluation input + span {
  padding-left: 0; }

.wcs-steps {
  background: transparent;
  margin-bottom: 0.7rem; }
  .wcs-steps h2 {
    display: none; }
  .wcs-steps.steps-1 {
    display: none; }
  .wcs-steps--list {
    margin: 0;
    padding: 0;
    list-style: none;
    color: #767676;
    justify-content: center; }

.wcs-step {
  background-color: transparent;
  display: flex; }
  .wcs-step--marker {
    text-decoration: none;
    font-family: "Archive", "Roboto", Arial, Helvetica, sans-serif;
    font-size: 1em;
    text-align: center;
    display: flex;
    color: #767676;
    background: transparent;
    width: 2.1em;
    height: 2.1em;
    flex: 0 0 2.1em; }
    .wcs-step--marker-nb {
      margin: auto; }
    .wcs-step--marker-total {
      display: none; }
  .wcs-step--label {
    display: block;
    align-self: center;
    letter-spacing: 1px;
    line-height: 1.25;
    text-align: center; }
  .wcs-step.current {
    font-weight: bold;
    background: transparent; }
  .wcs-step.current .wcs-step--marker {
    background: #228bcc;
    color: white; }
  .wcs-step.current .wcs-step--label {
    color: #228bcc; }
  .wcs-step:not(.current) .wcs-step--label {
    display: none; }

@media (max-width: 480px) {
  .wcs-step--marker {
    width: 2.9em;
    height: 2.9em;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center; }
    .wcs-step--marker-nb {
      margin: 0;
      transform: translateY(-0.5em);
      order: 1; }
    .wcs-step--marker-total {
      display: block;
      transform: translateY(0.5em);
      font-size: 0.75em;
      font-weight: normal;
      order: 3; }
    .wcs-step--marker::before {
      content: "";
      display: block;
      flex: 0 0 0.1em;
      height: 2em;
      margin: 0 0.1em;
      background: currentColor;
      transform: rotate(30deg);
      order: 2; }
  .wcs-step--label {
    margin-left: 0.7rem; }
  .wcs-step:not(.current) {
    display: none; } }

@media (min-width: 481px) {
  .wcs-steps--list {
    position: relative;
    display: flex;
    flex-wrap: wrap; }
  .wcs-step {
    margin-bottom: 0.35rem;
    margin-right: 0.7rem;
    border-bottom: none; }
    .wcs-step:last-child {
      margin-right: 0; }
    .wcs-step--label {
      position: absolute;
      top: 100%;
      left: 0;
      width: 100%;
      padding-bottom: 0.35rem;
      text-align: center; }
    .wcs-step.current {
      border-bottom: none; } }

@media (min-width: 1240px) {
  .wcs-steps {
    font-size: 1.25em; }
    .wcs-steps--list {
      justify-content: center; }
  .wcs-step {
    margin-bottom: 1.05rem;
    margin-right: 1.05rem; }
    .wcs-step--label {
      text-align: center; } }

/*
 *	Nearby form
 *	
 *	Ajout de styles à un champ carte pour sélectionner un signalement identique à proximité
 *
 *	Template
 *		quommon/forms/widgets/nearby-forms.html
 *	JS
 *		static/js/plus1.js
 */
.nearby-forms {
  margin: 0;
  padding: 0; }

.nearby-form {
  margin: 5px auto;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: space-between;
  border: 1px solid #AAA;
  padding: 5px; }

.nearby-form--digest, .nearby-form--datetime, .nearby-form--marker-counter {
  margin: 0 5px; }

.nearby-form--digest {
  width: 60%; }

.nearby-form--datetime {
  width: 20%; }
  @media screen and (max-width: 960px) {
    .nearby-form--datetime {
      width: 30%; } }
.nearby-form--marker-counter {
  background: #5770be;
  color: white;
  width: 1.8em;
  height: 1.8em;
  line-height: 1.8em;
  text-align: center;
  border-radius: 3px; }

.template-nearby-forms div.leaflet-div-icon {
  box-sizing: content-box;
  padding: 3px;
  margin: auto;
  border-radius: 3px;
  display: flex; }
  .template-nearby-forms div.leaflet-div-icon a {
    line-height: 1;
    margin: auto; }

.signalements-thanks ~ .buttons .submit-button, .signalements-thanks ~ .buttons .previous-button {
  display: none; }

.signalements-thanks ~ .buttons .cancel-button button {
  text-indent: -9999px;
  line-height: 0; }
  .signalements-thanks ~ .buttons .cancel-button button::after {
    text-indent: 0;
    line-height: initial;
    display: block;
    content: 'Continuer'; }

.wcs-page #side #tracking-code {
  display: none; }
  .wcs-page #side #tracking-code.active {
    display: block; }

div.textcell h3, div.textcell h4, div.textcell h5, div.textcell p, div.textcell table {
  margin: 0rem; }

div.textcell p, div.textcell table, div.textcell ul, div.textcell ol {
  line-height: 1.4; }

.gru-content div.textcell h3, .gru-content div.textcell h4, .gru-content div.textcell h5, .gru-content div.textcell p, .gru-content div.textcell table {
  margin: 0.7em 0; }

@media screen and (max-width: 960px) {
  img {
    max-width: 100%; } }

span#environment-label,
div#footer div.cell.test-banner {
  position: fixed;
  line-height: 200%;
  font-weight: bold;
  color: white;
  top: 5em;
  right: -5em;
  background: red;
  width: 25em;
  z-index: 1000;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transform-origin: center center;
  -moz-transform-origin: center center;
  -ms-transform-origin: center center;
  -o-transform-origin: center center;
  transform-origin: center center;
  text-align: center;
  border: 2px solid #cc0000;
  white-space: pre;
  opacity: 0.9;
  pointer-events: none; }
  @media screen and (max-width: 960px) {
    span#environment-label,
    div#footer div.cell.test-banner {
      top: auto;
      bottom: 3rem;
      right: -1rem;
      width: 25vw;
      padding: 0 1rem;
      font-size: 70%;
      opacity: 0.7;
      border: 0;
      -webkit-transform: rotate(-45deg);
      -moz-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
      -o-transform: rotate(-45deg);
      transform: rotate(-45deg);
      -webkit-transform-origin: bottom right;
      -moz-transform-origin: bottom right;
      -ms-transform-origin: bottom right;
      -o-transform-origin: bottom right;
      transform-origin: bottom right; } }
div#footer div.cell.test-banner p {
  margin: 0; }

#login-methods {
  width: 48%;
  float: left; }

#welcome-text {
  padding: 0 1em;
  width: 48%;
  width: calc(48% - 2em);
  float: right; }

@media screen and (max-width: 960px) {
  #welcome-text,
  #login-methods {
    width: auto;
    float: none; } }

div#login-methods label {
  display: block; }

div#login-methods input {
  margin-left: 0.7em; }

.block-fc a.button:focus {
  outline: 1px dotted #5770be; }

div.card span.label,
#profile span.label,
.profile-cell .profile span.label {
  color: #333333;
  font-size: 90%;
  display: block; }

div.card .value,
#profile .value,
.profile-cell .profile .value {
  display: block;
  margin-left: 0;
  margin-bottom: 0.7em; }
  div.card .value span.nodata,
  #profile .value span.nodata,
  .profile-cell .profile .value span.nodata {
    font-style: italic; }

div.card p {
  margin-top: 0;
  margin-bottom: 0; }

.authorized-oauth-services--list {
  padding-left: 0;
  list-style: none; }

.authorized-oauth-services--form {
  display: flex;
  justify-content: space-between; }

.authorized-oauth-services--client {
  display: block;
  font-size: 110%; }

.authorized-oauth-services--dates {
  font-size: 90%; }

@media screen and (max-width: 960px) {
  .authorized-oauth-services--since, .authorized-oauth-services--expired {
    display: block; }
  .authorized-oauth-services--separator {
    display: none; } }

.authorized-oauth-services form div button {
  margin-right: 0;
  min-width: auto; }

a#publik-portal-agent {
  z-index: 10000;
  position: absolute;
  top: 0px;
  right: 5px;
  background: white;
  color: #767676;
  padding: 5px 10px;
  border: 1px solid;
  border-width: 0 1px 1px 1px; }
  @media screen and (max-width: 960px) {
    a#publik-portal-agent {
      display: none; } }
div#consent_banner {
  position: fixed;
  width: 100%;
  z-index: 10000;
  background: rgba(255, 255, 255, 0.95);
  text-align: center;
  box-shadow: 0 0 8px 1px #666;
  padding: 0.7em 0;
  bottom: 0; }
  div#consent_banner div.actions {
    padding-top: 0.7em; }
  div#consent_banner button {
    position: absolute;
    right: 0;
    top: 0;
    background: transparent;
    border: none;
    cursor: pointer; }

@media screen and (max-width: 960px) {
  .has-pwa-navigation div#consent_banner {
    position: absolute;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 0 8px 1px #333;
    top: 0;
    bottom: auto; } }

.block-password input[type=text], .block-password input[type=password] {
  width: 25em; }

ul.logout-list {
  padding: 0;
  margin: 1em; }

div#continue-link {
  margin: 1em; }

div#page-change-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  transition: all 0.3s ease;
  z-index: 100000;
  background: white;
  opacity: 0; }

div#page-change-overlay.on {
  z-index: 100000;
  opacity: 0.9; }

#messages ul {
  margin: 0;
  padding: 0;
  list-style: none; }

#messages li.error,
.errornotice,
form ul.errorlist.nonfield li {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: white !important;
  color: #000;
  margin: 1rem 0;
  padding: 0.5rem;
  padding-left: 4rem !important;
  position: relative;
  min-height: 5rem;
  border-left: 5px solid #f11616 !important;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16), 0px 2px 10px 0px rgba(0, 0, 0, 0.12); }
  #messages li.error::before,
  .errornotice::before,
  form ul.errorlist.nonfield li::before {
    color: white;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
  #messages li.error p,
  .errornotice p,
  form ul.errorlist.nonfield li p {
    margin: 0 0 0.6rem 0; }
    #messages li.error p:first-child,
    .errornotice p:first-child,
    form ul.errorlist.nonfield li p:first-child {
      padding-top: 0rem; }
    #messages li.error p:last-child,
    .errornotice p:last-child,
    form ul.errorlist.nonfield li p:last-child {
      margin-bottom: 0; }
  @media only screen and (max-width: 959px) {
    #messages li.error,
    .errornotice,
    form ul.errorlist.nonfield li {
      border-left: 0px !important;
      border-top: 5px solid #f11616 !important;
      flex-direction: column;
      justify-content: center;
      margin: 1rem 0;
      padding: 1rem !important;
      position: relative;
      min-height: 3rem; } }
  #messages li.error::before,
  .errornotice::before,
  form ul.errorlist.nonfield li::before {
    color: #f11616 !important;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
    @media only screen and (max-width: 959px) {
      #messages li.error::before,
      .errornotice::before,
      form ul.errorlist.nonfield li::before {
        padding-bottom: 10px;
        position: relative;
        left: 0rem;
        top: 0rem;
        text-align: left; } }
  #messages li.error[class*=grid-].comment-field,
  .errornotice[class*=grid-].comment-field,
  form ul.errorlist.nonfield li[class*=grid-].comment-field {
    box-sizing: border-box;
    margin-right: 1rem; }
  #messages li.error:not([class*=grid-]).comment-field,
  .errornotice:not([class*=grid-]).comment-field,
  form ul.errorlist.nonfield li:not([class*=grid-]).comment-field {
    clear: both; }
  #messages li.error.cell h2:first-child,
  .errornotice.cell h2:first-child,
  form ul.errorlist.nonfield li.cell h2:first-child {
    background: transparent !important;
    font-weight: bold !important;
    margin: 0.7em 0em !important;
    padding: 0 !important;
    color: #380303 !important;
    border-color: #380303 !important; }
    #messages li.error.cell h2:first-child:before,
    .errornotice.cell h2:first-child:before,
    form ul.errorlist.nonfield li.cell h2:first-child:before {
      display: none !important; }
  #messages li.error h1, #messages li.error h2, #messages li.error h3, #messages li.error h4, #messages li.error h5, #messages li.error h6,
  .errornotice h1,
  form ul.errorlist.nonfield li h1,
  .errornotice h2,
  form ul.errorlist.nonfield li h2,
  .errornotice h3,
  form ul.errorlist.nonfield li h3,
  .errornotice h4,
  form ul.errorlist.nonfield li h4,
  .errornotice h5,
  form ul.errorlist.nonfield li h5,
  .errornotice h6,
  form ul.errorlist.nonfield li h6 {
    font-family: "Roboto", sans-serif !important; }

#messages li.warning,
.warningnotice {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: white !important;
  color: #000;
  margin: 1rem 0;
  padding: 0.5rem;
  padding-left: 4rem !important;
  position: relative;
  min-height: 5rem;
  border-left: 5px solid #f6a106 !important;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16), 0px 2px 10px 0px rgba(0, 0, 0, 0.12); }
  #messages li.warning::before,
  .warningnotice::before {
    color: white;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
  #messages li.warning p,
  .warningnotice p {
    margin: 0 0 0.6rem 0; }
    #messages li.warning p:first-child,
    .warningnotice p:first-child {
      padding-top: 0rem; }
    #messages li.warning p:last-child,
    .warningnotice p:last-child {
      margin-bottom: 0; }
  @media only screen and (max-width: 959px) {
    #messages li.warning,
    .warningnotice {
      border-left: 0px !important;
      border-top: 5px solid #f6a106 !important;
      flex-direction: column;
      justify-content: center;
      margin: 1rem 0;
      padding: 1rem !important;
      position: relative;
      min-height: 3rem; } }
  #messages li.warning::before,
  .warningnotice::before {
    color: #f6a106 !important;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
    @media only screen and (max-width: 959px) {
      #messages li.warning::before,
      .warningnotice::before {
        padding-bottom: 10px;
        position: relative;
        left: 0rem;
        top: 0rem;
        text-align: left; } }
  #messages li.warning[class*=grid-].comment-field,
  .warningnotice[class*=grid-].comment-field {
    box-sizing: border-box;
    margin-right: 1rem; }
  #messages li.warning:not([class*=grid-]).comment-field,
  .warningnotice:not([class*=grid-]).comment-field {
    clear: both; }
  #messages li.warning.cell h2:first-child,
  .warningnotice.cell h2:first-child {
    background: transparent !important;
    font-weight: bold !important;
    margin: 0.7em 0em !important;
    padding: 0 !important;
    color: #2f1f01 !important;
    border-color: #2f1f01 !important; }
    #messages li.warning.cell h2:first-child:before,
    .warningnotice.cell h2:first-child:before {
      display: none !important; }
  #messages li.warning h1, #messages li.warning h2, #messages li.warning h3, #messages li.warning h4, #messages li.warning h5, #messages li.warning h6,
  .warningnotice h1,
  .warningnotice h2,
  .warningnotice h3,
  .warningnotice h4,
  .warningnotice h5,
  .warningnotice h6 {
    font-family: "Roboto", sans-serif !important; }

#messages li.success,
.successnotice {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: white !important;
  color: #000;
  margin: 1rem 0;
  padding: 0.5rem;
  padding-left: 4rem !important;
  position: relative;
  min-height: 5rem;
  border-left: 5px solid #00cf06 !important;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16), 0px 2px 10px 0px rgba(0, 0, 0, 0.12); }
  #messages li.success::before,
  .successnotice::before {
    color: white;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
  #messages li.success p,
  .successnotice p {
    margin: 0 0 0.6rem 0; }
    #messages li.success p:first-child,
    .successnotice p:first-child {
      padding-top: 0rem; }
    #messages li.success p:last-child,
    .successnotice p:last-child {
      margin-bottom: 0; }
  @media only screen and (max-width: 959px) {
    #messages li.success,
    .successnotice {
      border-left: 0px !important;
      border-top: 5px solid #00cf06 !important;
      flex-direction: column;
      justify-content: center;
      margin: 1rem 0;
      padding: 1rem !important;
      position: relative;
      min-height: 3rem; } }
  #messages li.success::before,
  .successnotice::before {
    color: #00cf06 !important;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
    @media only screen and (max-width: 959px) {
      #messages li.success::before,
      .successnotice::before {
        padding-bottom: 10px;
        position: relative;
        left: 0rem;
        top: 0rem;
        text-align: left; } }
  #messages li.success[class*=grid-].comment-field,
  .successnotice[class*=grid-].comment-field {
    box-sizing: border-box;
    margin-right: 1rem; }
  #messages li.success:not([class*=grid-]).comment-field,
  .successnotice:not([class*=grid-]).comment-field {
    clear: both; }
  #messages li.success.cell h2:first-child,
  .successnotice.cell h2:first-child {
    background: transparent !important;
    font-weight: bold !important;
    margin: 0.7em 0em !important;
    padding: 0 !important;
    color: #000300 !important;
    border-color: #000300 !important; }
    #messages li.success.cell h2:first-child:before,
    .successnotice.cell h2:first-child:before {
      display: none !important; }
  #messages li.success h1, #messages li.success h2, #messages li.success h3, #messages li.success h4, #messages li.success h5, #messages li.success h6,
  .successnotice h1,
  .successnotice h2,
  .successnotice h3,
  .successnotice h4,
  .successnotice h5,
  .successnotice h6 {
    font-family: "Roboto", sans-serif !important; }

#messages li.info,
.infonotice {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: white !important;
  color: #000;
  margin: 1rem 0;
  padding: 0.5rem;
  padding-left: 4rem !important;
  position: relative;
  min-height: 5rem;
  border-left: 5px solid #5770be !important;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16), 0px 2px 10px 0px rgba(0, 0, 0, 0.12); }
  #messages li.info::before,
  .infonotice::before {
    color: white;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
  #messages li.info p,
  .infonotice p {
    margin: 0 0 0.6rem 0; }
    #messages li.info p:first-child,
    .infonotice p:first-child {
      padding-top: 0rem; }
    #messages li.info p:last-child,
    .infonotice p:last-child {
      margin-bottom: 0; }
  @media only screen and (max-width: 959px) {
    #messages li.info,
    .infonotice {
      border-left: 0px !important;
      border-top: 5px solid #5770be !important;
      flex-direction: column;
      justify-content: center;
      margin: 1rem 0;
      padding: 1rem !important;
      position: relative;
      min-height: 3rem; } }
  #messages li.info::before,
  .infonotice::before {
    color: #5770be !important;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
    @media only screen and (max-width: 959px) {
      #messages li.info::before,
      .infonotice::before {
        padding-bottom: 10px;
        position: relative;
        left: 0rem;
        top: 0rem;
        text-align: left; } }
  #messages li.info[class*=grid-].comment-field,
  .infonotice[class*=grid-].comment-field {
    box-sizing: border-box;
    margin-right: 1rem; }
  #messages li.info:not([class*=grid-]).comment-field,
  .infonotice:not([class*=grid-]).comment-field {
    clear: both; }
  #messages li.info.cell h2:first-child,
  .infonotice.cell h2:first-child {
    background: transparent !important;
    font-weight: bold !important;
    margin: 0.7em 0em !important;
    padding: 0 !important;
    color: #141c35 !important;
    border-color: #141c35 !important; }
    #messages li.info.cell h2:first-child:before,
    .infonotice.cell h2:first-child:before {
      display: none !important; }
  #messages li.info h1, #messages li.info h2, #messages li.info h3, #messages li.info h4, #messages li.info h5, #messages li.info h6,
  .infonotice h1,
  .infonotice h2,
  .infonotice h3,
  .infonotice h4,
  .infonotice h5,
  .infonotice h6 {
    font-family: "Roboto", sans-serif !important; }

.pk-information {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: white !important;
  color: #000;
  margin: 1rem 0;
  padding: 0.5rem;
  padding-left: 4rem !important;
  position: relative;
  min-height: 5rem;
  border-left: 5px solid #5770be !important;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16), 0px 2px 10px 0px rgba(0, 0, 0, 0.12); }
  .pk-information::before {
    color: white;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
  .pk-information p {
    margin: 0 0 0.6rem 0; }
    .pk-information p:first-child {
      padding-top: 0rem; }
    .pk-information p:last-child {
      margin-bottom: 0; }
  @media only screen and (max-width: 959px) {
    .pk-information {
      border-left: 0px !important;
      border-top: 5px solid #5770be !important;
      flex-direction: column;
      justify-content: center;
      margin: 1rem 0;
      padding: 1rem !important;
      position: relative;
      min-height: 3rem; } }
  .pk-information::before {
    color: #5770be !important;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
    @media only screen and (max-width: 959px) {
      .pk-information::before {
        padding-bottom: 10px;
        position: relative;
        left: 0rem;
        top: 0rem;
        text-align: left; } }
  .pk-information[class*=grid-].comment-field {
    box-sizing: border-box;
    margin-right: 1rem; }
  .pk-information:not([class*=grid-]).comment-field {
    clear: both; }
  .pk-information.cell h2:first-child {
    background: transparent !important;
    font-weight: bold !important;
    margin: 0.7em 0em !important;
    padding: 0 !important;
    color: #141c35 !important;
    border-color: #141c35 !important; }
    .pk-information.cell h2:first-child:before {
      display: none !important; }
  .pk-information h1, .pk-information h2, .pk-information h3, .pk-information h4, .pk-information h5, .pk-information h6 {
    font-family: "Roboto", sans-serif !important; }
  .pk-information.cell p, .pk-information p, .pk-information.cell h2, .pk-information h2, .pk-information.cell a, .pk-information a, .pk-information.cell * {
    color: #000 !important; }
  .pk-information.cell p + p, .pk-information p + p {
    margin-bottom: 8px; }
  .pk-information h2, .pk-information h2:first-child, .pk-information.cell h2, .pk-information.cell h2:first-child {
    font-size: 1.2rem;
    font-weight: normal !important;
    margin-top: 0.35em !important;
    margin-bottom: 0.35em !important; }
  .gru-content .pk-information h2:before {
    display: none !important; }

.pk-attention {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: white !important;
  color: #000;
  margin: 1rem 0;
  padding: 0.5rem;
  padding-left: 4rem !important;
  position: relative;
  min-height: 5rem;
  border-left: 5px solid #f6a106 !important;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16), 0px 2px 10px 0px rgba(0, 0, 0, 0.12); }
  .pk-attention::before {
    color: white;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
  .pk-attention p {
    margin: 0 0 0.6rem 0; }
    .pk-attention p:first-child {
      padding-top: 0rem; }
    .pk-attention p:last-child {
      margin-bottom: 0; }
  @media only screen and (max-width: 959px) {
    .pk-attention {
      border-left: 0px !important;
      border-top: 5px solid #f6a106 !important;
      flex-direction: column;
      justify-content: center;
      margin: 1rem 0;
      padding: 1rem !important;
      position: relative;
      min-height: 3rem; } }
  .pk-attention::before {
    color: #f6a106 !important;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
    @media only screen and (max-width: 959px) {
      .pk-attention::before {
        padding-bottom: 10px;
        position: relative;
        left: 0rem;
        top: 0rem;
        text-align: left; } }
  .pk-attention[class*=grid-].comment-field {
    box-sizing: border-box;
    margin-right: 1rem; }
  .pk-attention:not([class*=grid-]).comment-field {
    clear: both; }
  .pk-attention.cell h2:first-child {
    background: transparent !important;
    font-weight: bold !important;
    margin: 0.7em 0em !important;
    padding: 0 !important;
    color: #2f1f01 !important;
    border-color: #2f1f01 !important; }
    .pk-attention.cell h2:first-child:before {
      display: none !important; }
  .pk-attention h1, .pk-attention h2, .pk-attention h3, .pk-attention h4, .pk-attention h5, .pk-attention h6 {
    font-family: "Roboto", sans-serif !important; }
  .pk-attention.cell p, .pk-attention p, .pk-attention.cell h2, .pk-attention h2, .pk-attention.cell a, .pk-attention a, .pk-attention.cell * {
    color: #000 !important; }
  .pk-attention.cell p + p, .pk-attention p + p {
    margin-bottom: 8px; }
  .pk-attention h2, .pk-attention h2:first-child, .pk-attention.cell h2, .pk-attention.cell h2:first-child {
    font-size: 1.2rem;
    font-weight: normal !important;
    margin-top: 0.35em !important;
    margin-bottom: 0.35em !important; }
  .gru-content .pk-attention h2:before {
    display: none !important; }

.pk-error {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: white !important;
  color: #000;
  margin: 1rem 0;
  padding: 0.5rem;
  padding-left: 4rem !important;
  position: relative;
  min-height: 5rem;
  border-left: 5px solid #f11616 !important;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16), 0px 2px 10px 0px rgba(0, 0, 0, 0.12); }
  .pk-error::before {
    color: white;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
  .pk-error p {
    margin: 0 0 0.6rem 0; }
    .pk-error p:first-child {
      padding-top: 0rem; }
    .pk-error p:last-child {
      margin-bottom: 0; }
  @media only screen and (max-width: 959px) {
    .pk-error {
      border-left: 0px !important;
      border-top: 5px solid #f11616 !important;
      flex-direction: column;
      justify-content: center;
      margin: 1rem 0;
      padding: 1rem !important;
      position: relative;
      min-height: 3rem; } }
  .pk-error::before {
    color: #f11616 !important;
    content: "";
    font-family: FontAwesome;
    font-size: 2rem;
    position: absolute;
    left: 1rem; }
    @media only screen and (max-width: 959px) {
      .pk-error::before {
        padding-bottom: 10px;
        position: relative;
        left: 0rem;
        top: 0rem;
        text-align: left; } }
  .pk-error[class*=grid-].comment-field {
    box-sizing: border-box;
    margin-right: 1rem; }
  .pk-error:not([class*=grid-]).comment-field {
    clear: both; }
  .pk-error.cell h2:first-child {
    background: transparent !important;
    font-weight: bold !important;
    margin: 0.7em 0em !important;
    padding: 0 !important;
    color: #380303 !important;
    border-color: #380303 !important; }
    .pk-error.cell h2:first-child:before {
      display: none !important; }
  .pk-error h1, .pk-error h2, .pk-error h3, .pk-error h4, .pk-error h5, .pk-error h6 {
    font-family: "Roboto", sans-serif !important; }
  .pk-error.cell p, .pk-error p, .pk-error.cell h2, .pk-error h2, .pk-error.cell a, .pk-error a, .pk-error.cell * {
    color: #000 !important; }
  .pk-error.cell p + p, .pk-error p + p {
    margin-bottom: 8px; }
  .pk-error h2, .pk-error h2:first-child, .pk-error.cell h2, .pk-error.cell h2:first-child {
    font-size: 1.2rem;
    font-weight: normal !important;
    margin-top: 0.35em !important;
    margin-bottom: 0.35em !important; }
  .gru-content .pk-error h2:before {
    display: none !important; }

form ul.errorlist.nonfield {
  margin-top: 0; }
  form ul.errorlist.nonfield li {
    margin-top: 0; }

table.invoices th.invoice-amount {
  text-align: right;
  padding-right: 0.7em; }

td.amount {
  text-align: right; }

table.invoices {
  width: 100%; }
  table.invoices th {
    text-align: left;
    padding: 0.3em; }
  table.invoices td {
    padding: 0.3em 0.7em; }
  table.invoices tr:nth-child(even) {
    background: #eee; }
  table.invoices td:last-child {
    width: 8em;
    line-height: 150%; }
  table.invoices a.icon-view, table.invoices a.icon-pdf {
    white-space: nowrap; }
  table.invoices a.icon-view:before {
    padding-right: 0.7em;
    font-family: FontAwesome;
    content: "\f06e\00a0"; }
  table.invoices a.icon-pdf:before {
    padding-right: 0.7em;
    font-family: FontAwesome;
    content: "\f1c1\00a0"; }

div.ui-dialog #item span.amount, div.ui-dialog #item span.timestamp {
  position: absolute;
  right: 1em; }

div.ui-dialog #item div {
  margin: 1.5em 0;
  border-bottom: 1px dotted #ccc;
  padding-bottom: 0.3em; }
  div.ui-dialog #item div.paid-info::before, div.ui-dialog #item div.no-online-payment-reason::before {
    content: '\f05a';
    font-family: FontAwesome;
    margin-right: 0.3em; }

div.ui-dialog.alert .ui-dialog-titlebar {
  background: #E65050; }

div#user-files {
  position: relative; }
  div#user-files table {
    width: 100%;
    border-collapse: collapse; }
  div#user-files th {
    text-align: left;
    padding: 0.3em;
    text-transform: lowercase; }
  div#user-files th a {
    color: inherit; }
  div#user-files tbody tr {
    cursor: pointer; }
  div#user-files tbody tr:hover td.title {
    text-decoration: underline; }
  div#user-files tr.description-row {
    cursor: auto;
    font-size: 90%; }
  div#user-files td {
    padding: 0.3em 1em;
    border: 1px solid white; }
  div#user-files td.size {
    text-align: right; }
  div#user-files td.thumbnail {
    text-align: center; }
  div#user-files tbody tr.odd {
    background: white; }
  div#user-files tbody tr.even {
    background: #eee; }
  div#user-files a.icon-remove,
  div#user-files a.icon-edit {
    display: inline-block; }
    div#user-files a.icon-remove::before,
    div#user-files a.icon-edit::before {
      font-family: FontAwesome;
      font-weight: normal;
      font-style: normal;
      display: inline-block;
      text-decoration: none;
      content: "\f040";
      color: #5770be; }
  div#user-files a.icon-remove::before {
    content: "\f057"; }
  div#user-files button.icon-remove-sign {
    border: none;
    background: none;
    box-shadow: none;
    padding: 2px;
    line-height: 100%;
    color: #5770be;
    margin-right: 0; }
  div#user-files button.icon-remove-sign::before {
    font-family: FontAwesome;
    content: "\f057"; }
  div#user-files td.action-column {
    width: 1.5em;
    text-align: center;
    vertical-align: middle; }
  div#user-files tr::before {
    font-family: FontAwesome;
    content: "";
    vertical-align: middle;
    text-align: center;
    display: table-cell;
    width: 2em; }
  div#user-files tr.mime-text::before {
    content: "\f0f6"; }
  div#user-files tr.mime-image::before {
    content: "\f1c5"; }
  div#user-files tr.mime-audio::before {
    content: "\f1c7"; }
  div#user-files tr.mime-video::before {
    content: "\f1c8"; }
  div#user-files tr.mime-application::before {
    content: "\f016"; }
  div#user-files tr.mime-application-pdf::before {
    content: "\f1c1"; }
  div#user-files td.thumbnail {
    max-width: 100px; }
    div#user-files td.thumbnail img {
      min-width: 60px;
      max-width: 100%; }

div.table-container ul.pagination {
  min-height: 2rem;
  list-style: none;
  margin: 0 0 1em 0;
  padding: 1.5em 0.7em 1em 0; }
  div.table-container ul.pagination li {
    display: none;
    float: left;
    line-height: 150%; }
  div.table-container ul.pagination > li.cardinality {
    float: right; }
  div.table-container ul.pagination li.previous, div.table-container ul.pagination li.next {
    display: block; }
  div.table-container ul.pagination li.current {
    display: block;
    position: absolute;
    right: 1rem; }

.fargo-pick-popup th {
  text-align: left;
  padding: 0.3em;
  text-transform: lowercase; }

table.shades tbody tr:nth-child(2n+1) {
  background: #eee; }

table.headers th {
  background: #5770be;
  color: white;
  padding: 0.7em 1em; }

table.centered-cells td {
  text-align: center; }

.combo-search-results em {
  background: yellow; }

div.a2-continue {
  padding: 1em; }

div.meetings_table {
  margin-top: 0.7em;
  display: flex;
  align-items: flex-start;
  width: 100%; }
  div.meetings_table > div {
    flex: 0 1 auto;
    width: 20%;
    padding: 0 2px;
    text-align: center;
    display: none; }
  div.meetings_table div.head {
    padding-bottom: 0.7em; }
  div.meetings_table button {
    margin: 0;
    width: 3em;
    height: 3em; }
    div.meetings_table button.next {
      margin-left: 1em; }
    div.meetings_table button.prev {
      margin-right: 1em; }
  div.meetings_table div span {
    display: block;
    cursor: pointer;
    padding: 0.2em 0;
    margin-bottom: 4px; }
    div.meetings_table div span.disabled {
      opacity: 0.3;
      cursor: not-allowed; }
  div.meetings_table span.selectable {
    background: rgba(87, 112, 190, 0.2); }
    div.meetings_table span.selectable:hover {
      background: #5770be;
      color: white;
      box-shadow: 1px 0px 5px #5770be; }
    div.meetings_table span.selectable.on {
      background: #5770be;
      color: white; }
  div.meetings_table.mobile > div {
    width: 100%; }
  div.meetings_table.mobile div span {
    display: inline-block;
    padding: 0.5em;
    margin: 0.5em; }
  div.meetings_table.mobile button.prev, div.meetings_table.mobile button.next {
    margin: 0; }

div.location-icon {
  pointer-events: none;
  width: 10px;
  height: 10px;
  background: red;
  border-radius: 100%;
  position: relative;
  top: -5px;
  left: -5px;
  border: 1px solid #800;
  z-index: -100 !important; }

div.leaflet-control-gps.pending {
  opacity: 0.5; }
  div.leaflet-control-gps.pending a {
    cursor: wait; }

#fc-linking {
  padding: 0 1rem; }
  #fc-linking.no-account {
    text-align: center; }

div.leaflet-bottom, div.leaflet-top {
  z-index: 800; }

.login-actions ul, .login-actions li {
  margin: 0;
  padding: 0;
  list-style: none; }

.field-live-hint {
  position: absolute;
  background: #ffffee;
  color: #333;
  z-index: 1000000;
  padding: 1em 1em;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16); }
  .field-live-hint span::before {
    font-family: FontAwesome;
    content: "\f0eb";
    padding-right: 0.5em; }
  .field-live-hint button.action,
  .field-live-hint button.close {
    margin: 0 1em;
    padding: 0;
    color: blue !important;
    border: none !important;
    text-decoration: underline !important;
    background: transparent !important;
    box-shadow: none !important;
    min-width: auto; }
  .field-live-hint button.close {
    color: #333 !important;
    margin: 0;
    text-decoration: none !important; }
    .field-live-hint button.close::after {
      content: "×"; }

#nav-skip {
  position: absolute;
  top: 0;
  width: 12em; }
  #nav-skip ul, #nav-skip li {
    list-style: none;
    margin: 0;
    padding: 0; }

#nav-skip a {
  position: absolute;
  left: -7000px;
  z-index: 100;
  padding: 0.25em;
  background-color: white; }
  #nav-skip a:focus {
    left: 0; }

/* $carrousel-height: height of carrousel image */
/* $carrousel-text-position: [vertical option] [horizontal option] */
/* vertical options: top | middle | bottom */
/* horizontal options: left | middle | right */
/* Default: middle (eq to "middle middle"); */
/* $carrousel-navigation: visible or none */
/* $carrousel-navigation-color : color of navigation items (next, prev, bullet) */
/* $carrousel-navigation-bullet-color: color of active slide bullet */
/* $carrousel-navigation-bullet-size: height/width of slide bullets */
/* $carrousel-navigation-bullet-border: border of slide bullets */
/* $carrousel-arrows: visible or none */
/* $carrousel-arrows-color: color of prev and next arrows */
div.carrousel-content {
  position: relative;
  height: 20rem;
  overflow: hidden; }
  div.carrousel-content input {
    visibility: hidden; }
  div.carrousel-content input + div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    pointer-events: none;
    transition: opacity ease 0.5s; }
    div.carrousel-content input + div div.carrousel-item {
      position: relative;
      display: flex;
      background-position: center center;
      width: 100%;
      height: 100%;
      background-size: cover;
      padding: 10px;
      color: white;
      font-size: 120%; }
      div.carrousel-content input + div div.carrousel-item::after {
        content: "";
        display: block;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        position: absolute;
        background: rgba(0, 0, 0, 0.3); }
      div.carrousel-content input + div div.carrousel-item div.carrousel-item-content {
        margin-bottom: 1.5rem;
        z-index: 1;
        line-height: 110%; }
        div.carrousel-content input + div div.carrousel-item div.carrousel-item-content > a {
          display: block;
          color: inherit; }
        div.carrousel-content input + div div.carrousel-item div.carrousel-item-content > a {
          padding: 1rem;
          margin-left: 6rem;
          margin-right: 6rem; }
          @media screen and (max-width: 960px) {
            div.carrousel-content input + div div.carrousel-item div.carrousel-item-content > a {
              margin-left: 2rem;
              margin-right: 2rem; } }
        div.carrousel-content input + div div.carrousel-item div.carrousel-item-content p {
          margin-left: auto;
          margin-right: auto; }
        div.carrousel-content input + div div.carrousel-item div.carrousel-item-content p {
          max-width: 25em; }
  div.carrousel-content input:checked + div {
    opacity: 1;
    pointer-events: auto; }
  div.carrousel-content div.carrousel-nav {
    position: absolute;
    display: block;
    bottom: 10px;
    text-align: center;
    width: 100%;
    height: 20px;
    z-index: 100; }
    div.carrousel-content div.carrousel-nav label {
      display: inline-block;
      margin: 0 10px;
      width: 12px;
      height: 12px;
      border: 1px solid white;
      border-radius: 50%;
      cursor: pointer;
      transition: background-color 0.25s; }
  div.carrousel-content a.carrousel-previous,
  div.carrousel-content a.carrousel-next {
    display: block;
    position: absolute;
    text-decoration: none;
    top: calc(50% - 3rem);
    color: white;
    height: 6rem;
    line-height: 6rem;
    width: 6rem;
    cursor: pointer;
    z-index: 1000;
    text-align: center; }
    div.carrousel-content a.carrousel-previous::after,
    div.carrousel-content a.carrousel-next::after {
      font-family: FontAwesome;
      font-size: 24px; }
    div.carrousel-content a.carrousel-previous.carrousel-previous,
    div.carrousel-content a.carrousel-next.carrousel-previous {
      left: 0.7em; }
      div.carrousel-content a.carrousel-previous.carrousel-previous::after,
      div.carrousel-content a.carrousel-next.carrousel-previous::after {
        content: "\f053"; }
    div.carrousel-content a.carrousel-previous.carrousel-next,
    div.carrousel-content a.carrousel-next.carrousel-next {
      right: 0.7em; }
      div.carrousel-content a.carrousel-previous.carrousel-next::after,
      div.carrousel-content a.carrousel-next.carrousel-next::after {
        content: "\f054"; }
    @media screen and (max-width: 960px) {
      div.carrousel-content a.carrousel-previous,
      div.carrousel-content a.carrousel-next {
        display: none; } }
  div.carrousel-content .carrousel-radio-1:checked ~ .carrousel-nav label.carrousel-label-1 {
    background-color: white; }
  div.carrousel-content .carrousel-radio-2:checked ~ .carrousel-nav label.carrousel-label-2 {
    background-color: white; }
  div.carrousel-content .carrousel-radio-3:checked ~ .carrousel-nav label.carrousel-label-3 {
    background-color: white; }
  div.carrousel-content .carrousel-radio-4:checked ~ .carrousel-nav label.carrousel-label-4 {
    background-color: white; }
  div.carrousel-content .carrousel-radio-5:checked ~ .carrousel-nav label.carrousel-label-5 {
    background-color: white; }
  div.carrousel-content .carrousel-radio-6:checked ~ .carrousel-nav label.carrousel-label-6 {
    background-color: white; }
  div.carrousel-content .carrousel-radio-7:checked ~ .carrousel-nav label.carrousel-label-7 {
    background-color: white; }
  div.carrousel-content .carrousel-radio-8:checked ~ .carrousel-nav label.carrousel-label-8 {
    background-color: white; }
  div.carrousel-content .carrousel-radio-9:checked ~ .carrousel-nav label.carrousel-label-9 {
    background-color: white; }
  div.carrousel-content .carrousel-radio-10:checked ~ .carrousel-nav label.carrousel-label-10 {
    background-color: white; }

.carrousel-item {
  align-items: center;
  justify-content: center;
  text-align: center; }

.back-top {
  display: none; }

.back-top--link {
  display: inline-flex;
  align-items: center; }
  .back-top--link::before {
    content: "";
    font-family: fontawesome, sans-serif;
    font-size: 2.5em; }

.back-top--link-label {
  margin-left: 0.33em;
  margin-right: 0.33em; }

.back-top--link {
  position: static;
  z-index: 1000; }

.back-top {
  text-align: right; }

@keyframes back-top-show {
  0% {
    opacity: 0;
    z-index: -1; }
  1% {
    z-index: 1000; }
  100% {
    opacity: 1;
    z-index: 1000; } }

@keyframes back-top-hide {
  0% {
    opacity: 1;
    z-index: 1000; }
  99% {
    z-index: -1; }
  100% {
    opacity: 0;
    z-index: -1; } }

.back-top-scrollY {
  animation-fill-mode: both;
  animation-duration: 600ms; }
  .back-top-scrollY.below-scroll-limit {
    animation-name: back-top-show; }
  .back-top-scrollY.above-scroll-limit {
    animation-name: back-top-hide; }

a.pk-button, a.lingo-basket-cell--item-pay, a.pk-big-button {
  display: inline-block;
  margin: 0;
  height: auto; }
  a.pk-button.pk-button, a.lingo-basket-cell--item-pay, a.pk-big-button.pk-button, .pk-big-button.lingo-basket-cell--item-pay {
    padding: 0.5rem 1rem; }
  a.pk-button.pk-big-button, a.pk-big-button.pk-big-button {
    padding: 2rem 4rem; }

div.link-cell.pk-button ul > li > a, .link-cell.lingo-basket-cell--item-pay ul > li > a,
div.link-cell.pk-big-button ul > li > a {
  display: block;
  margin: 0;
  height: auto; }

div.link-cell.pk-button.pk-button ul > li > a, .link-cell.pk-button.lingo-basket-cell--item-pay ul > li > a, .link-cell.lingo-basket-cell--item-pay ul > li > a,
div.link-cell.pk-big-button.pk-button ul > li > a,
.pk-big-button.lingo-basket-cell--item-pay ul > li > a {
  padding: 0.5rem 1rem; }

div.link-cell.pk-button.pk-big-button ul > li > a, .link-cell.pk-big-button.lingo-basket-cell--item-pay ul > li > a,
div.link-cell.pk-big-button.pk-big-button ul > li > a {
  padding: 2rem 4rem; }

.pk-transparent.cell {
  border-color: transparent !important;
  background: transparent !important; }

.pk-table-wrapper {
  overflow: auto;
  max-width: 100%;
  background: linear-gradient(to right, white 30%, transparent), linear-gradient(to right, transparent, white 70%) 0 100%, radial-gradient(farthest-side at 0% 50%, rgba(0, 0, 0, 0.25), transparent), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.25), transparent) 0 100%;
  background-repeat: no-repeat;
  background-color: white;
  background-size: 40px 100%, 40px 100%, 14px 100%, 14px 100%;
  background-position: 0 0, 100%, 0 0, 100%;
  background-attachment: local, local, scroll, scroll; }

table.pk-data-table {
  border-collapse: collapse; }
  table.pk-data-table caption {
    caption-side: top;
    color: #228bcc;
    font-size: 120%;
    padding: 1rem; }
  table.pk-data-table th, table.pk-data-table td {
    padding: 0.3em 1.5em 0.3em 0.7em;
    border-bottom: 1px solid #aaa; }
  table.pk-data-table th {
    border-bottom-width: 2px; }

.pk-table-headers.pk-data-table thead th {
  background: transparent;
  color: #228bcc;
  font-style: 1.4rem;
  font-weight: normal;
  text-transform: uppercase;
  font-family: "Archive", "Roboto", Arial, Helvetica, sans-serif; }

.pk-table-borders.pk-data-table th, .pk-table-borders.pk-data-table td {
  border: 1px solid #aaa; }

.pk-table-borders.pk-data-table th {
  border-bottom-width: 2px; }

.pk-table-center.pk-data-table th, .pk-table-center.pk-data-table td {
  text-align: center; }

.pk-table-🦓.pk-data-table tbody tr:nth-child(2n+1),
.pk-table-zebra.pk-data-table tbody tr:nth-child(2n+1) {
  background: rgba(0, 0, 0, 0.065); }

.pk-important.widget .title label {
  font-weight: bold; }

.pk-budget-table table,
.budget-table table {
  width: 100%; }

.pk-budget-table th,
.budget-table th {
  text-align: left;
  font-weight: normal; }

.pk-budget-table tbody td:last-child,
.budget-table tbody td:last-child {
  width: 30%; }

div#header {
  padding: 0; }

div#logo {
  height: 60px; }
  @media only screen and (min-width: 960px) {
    div#logo {
      height: auto;
      padding-top: 20px; } }
div#logo a {
  text-indent: -9999px;
  display: none; }
  div#logo a::after {
    display: none; }
  @media only screen and (min-width: 960px) {
    div#logo a {
      display: block;
      margin-top: 10px;
      margin-bottom: 10px;
      background: url(img/logo-men.png) no-repeat left bottom;
      background-size: contain;
      height: 158px;
      width: 200px; }
      div#logo a::after {
        content: "";
        display: flex;
        width: 320px;
        height: 80px;
        background-image: url(img/titre-colibri.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: 43%;
        position: relative;
        left: 12rem;
        right: 0; } }
body {
  text-rendering: optimizeSpeed;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%; }

form.quixote div.comment-field {
  padding: 1rem 0; }

form.quixote div.title label {
  font-weight: bold; }

form.quixote div.TableWidget th span {
  font-style: italic;
  font-weight: normal; }

form.quixote button.cancel {
  background: #D4CAC8;
  color: #222; }

@media only screen and (max-width: 959px) {
  form[action="removedraft"] {
    width: 100%;
    text-align: center; } }

form[action="removedraft"] button {
  background: #f11616;
  margin-right: 0 !important; }
  form[action="removedraft"] button:hover {
    background-color: #c80c0c; }

@media only screen and (min-width: 960px) {
  div#logo a {
    background: url(img/logo.jpg) no-repeat -10px bottom;
    height: 137px !important;
    background-size: cover;
    width: 245px; }
    div#logo a::after {
      height: 36px !important; } }

/*# sourceMappingURL=style.css.map */