body * {
  font-family: 'Lato', sans-serif !important;
  text-shadow: none !important; }

body .homepage-content {
  min-width: 332px; }
  body .homepage-content .slider-container {
    position: relative;
    width: 100%;
    max-width: 100vw;
    height: calc(100vw/4);
    margin: 0px auto 15px; }
    body .homepage-content .slider-container .slick-slider {
      height: inherit; }
      body .homepage-content .slider-container .slick-slider .slick-list {
        height: inherit; }
        body .homepage-content .slider-container .slick-slider .slick-list .slick-track {
          height: inherit; }
          body .homepage-content .slider-container .slick-slider .slick-list .slick-track .slick-slide {
            height: inherit; }
            body .homepage-content .slider-container .slick-slider .slick-list .slick-track .slick-slide div,
            body .homepage-content .slider-container .slick-slider .slick-list .slick-track .slick-slide img {
              margin: auto;
              width: 100%;
              height: inherit;
              object-fit: cover; }
      body .homepage-content .slider-container .slick-slider .slick-dots {
        bottom: 25px; }
        body .homepage-content .slider-container .slick-slider .slick-dots li button:before {
          font-size: 15px;
          color: #aba5bb;
          mix-blend-mode: exclusion; }
        body .homepage-content .slider-container .slick-slider .slick-dots li.slick-active button:before {
          color: #aba5bb; }
      body .homepage-content .slider-container .slick-slider .slick-next {
        right: 60px; }
      body .homepage-content .slider-container .slick-slider .slick-prev {
        left: 60px; }
      body .homepage-content .slider-container .slick-slider .slick-prev, body .homepage-content .slider-container .slick-slider .slick-next {
        top: 50%;
        z-index: 1;
        width: 65px;
        height: 65px; }
        body .homepage-content .slider-container .slick-slider .slick-prev:before, body .homepage-content .slider-container .slick-slider .slick-next:before {
          font-size: 60px;
          opacity: 0.75;
          color: #ccc; }
  body .homepage-content .description {
    border-style: solid; }
    body .homepage-content .description p {
      padding: 2% 6%; }
  body .homepage-content .description-html {
    all: initial; }
  body .homepage-content .img-not-present .list-step .list-item > div > div {
    padding: 30px 165px 30px 15px !important; }
  body .homepage-content .list-step .list-item .secondary-text-item {
    overflow: hidden;
    max-height: 50px;
    text-overflow: ellipsis;
    text-align: left !important; }
  body .homepage-content .service-details .left-div .interventions-list,
  body .homepage-content .service-details .left-div .intervention-sets-list {
    margin: 0px !important; }
    body .homepage-content .service-details .left-div .interventions-list > div > div,
    body .homepage-content .service-details .left-div .intervention-sets-list > div > div {
      padding: 0px !important; }
      body .homepage-content .service-details .left-div .interventions-list > div > div .list-step:last-child,
      body .homepage-content .service-details .left-div .intervention-sets-list > div > div .list-step:last-child {
        margin-bottom: 0px !important; }
    body .homepage-content .service-details .left-div .interventions-list button,
    body .homepage-content .service-details .left-div .intervention-sets-list button {
      width: 40% !important;
      border-radius: 4px !important;
      margin: 20px auto 10px  !important; }
      body .homepage-content .service-details .left-div .interventions-list button > div > span,
      body .homepage-content .service-details .left-div .intervention-sets-list button > div > span {
        text-transform: capitalize !important; }
  body .homepage-content .service-details .right-div .opening-hours .day {
    line-height: 2;
    border-width: 0px 0px 1px 0px;
    border-style: solid;
    color: #AAA;
    display: inline-block;
    width: 100%; }
    body .homepage-content .service-details .right-div .opening-hours .day .indicator {
      font-size: 16px;
      display: inline-block;
      vertical-align: middle;
      line-height: 20px;
      margin: 10px;
      width: 15px;
      height: 15px;
      content: '\2022';
      text-align: center;
      background-color: #FFF;
      color: transparent;
      border: 1px solid #AAA;
      border-radius: 50%;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
    body .homepage-content .service-details .right-div .opening-hours .day .open-timing {
      float: right;
      padding: 0px 10px; }
  body .homepage-content .service-details .right-div .opening-hours .active {
    color: #000; }
  body .homepage-content .service-details .right-div .address-section .map-section {
    position: relative; }
    body .homepage-content .service-details .right-div .address-section .map-section .map-container {
      position: relative;
      top: 0px; }
      body .homepage-content .service-details .right-div .address-section .map-section .map-container .map-header {
        display: none; }
      body .homepage-content .service-details .right-div .address-section .map-section .map-container .map-render-container {
        height: 200px !important; }
        body .homepage-content .service-details .right-div .address-section .map-section .map-container .map-render-container > div:first-child {
          border: 1px solid #DDD;
          border-radius: 4px; }
        body .homepage-content .service-details .right-div .address-section .map-section .map-container .map-render-container .gmnoprint {
          display: none; }
  body .homepage-content .service-details .right-div .address-section .contact-section {
    margin: 15px 0px; }
    body .homepage-content .service-details .right-div .address-section .contact-section .address,
    body .homepage-content .service-details .right-div .address-section .contact-section .contact {
      margin: 10px 0px; }
    body .homepage-content .service-details .right-div .address-section .contact-section .contact .label {
      margin-right: 8px; }
  body .homepage-content .service-details .additional-info {
    border-top: 1px solid #DDD;
    white-space: normal;
    margin-top: 20px; }
    body .homepage-content .service-details .additional-info .additional-info-title {
      margin-left: 12px; }
    body .homepage-content .service-details .additional-info > div {
      padding: 0px 12px; }
    body .homepage-content .service-details .additional-info p {
      margin: 10px 0px; }

@media only screen and (min-width: 960px) {
  .homepage-content .service-details .left-div {
    margin-right: 15px;
    float: left;
    width: calc(100% - 15px); }
    .homepage-content .service-details .left-div .list-item-name {
      display: flex;
      flex-direction: column-reverse; }
      .homepage-content .service-details .left-div .list-item-name .chip-div.notHighlighted {
        margin: 0 0 4px 0; }
        .homepage-content .service-details .left-div .list-item-name .chip-div.notHighlighted .not-highlighted {
          margin: 0; }
  .homepage-content .service-details .right-div-grid {
    float: left;
    width: calc(100% - 12px); }
    .homepage-content .service-details .right-div-grid .right-div .opening-hours,
    .homepage-content .service-details .right-div-grid .right-div .address-section {
      margin-left: 12px; } }

@media only screen and (max-width: 959px) {
  .homepage-content .highlighted-intervention {
    margin: 0px 12px; }
  .homepage-content .service-details {
    display: block !important; }
    .homepage-content .service-details .left-div {
      margin: 0px 12px; }
    .homepage-content .service-details .right-div .opening-hours,
    .homepage-content .service-details .right-div .address-section {
      margin: 0px 12px; } }

@media only screen and (min-width: 737px) {
  .homepage-content .highlighted-intervention .list-step .list-item > div > div,
  .homepage-content .service-details .left-div .list-step .list-item > div > div {
    padding-right: 165px !important; }
    .homepage-content .highlighted-intervention .list-step .list-item > div > div .right-button-list,
    .homepage-content .service-details .left-div .list-step .list-item > div > div .right-button-list {
      position: absolute !important;
      top: 50% !important;
      right: 16px;
      transform: translate(0px, -50%) !important; } }

@media only screen and (max-width: 736px) {
  .homepage-content .slider-container {
    margin-left: 0px !important;
    margin-right: 0px !important; }
    .homepage-content .slider-container .slick-next:before,
    .homepage-content .slider-container .slick-prev:before {
      font-size: 50px !important; }
  .homepage-content > div {
    margin: 0 6% 10px 6% !important; }
  .homepage-content .highlighted-intervention .list-step .list-item > div > div,
  .homepage-content .service-details .left-div .list-step .list-item > div > div {
    padding-right: 165px !important; }
    .homepage-content .highlighted-intervention .list-step .list-item > div > div .right-button-list,
    .homepage-content .service-details .left-div .list-step .list-item > div > div .right-button-list {
      position: absolute !important;
      right: 16px; }
  .homepage-content .highlighted-intervention .promotion-filter .promotion-warning,
  .homepage-content .service-details .left-div .promotion-filter .promotion-warning {
    padding: 10px 0 0 0;
    clear: both; } }

@media only screen and (max-width: 580px) {
  .homepage-content .slider-container {
    max-width: inherit !important; }
    .homepage-content .slider-container .slick-next,
    .homepage-content .slider-container .slick-prev {
      display: none !important; }
    .homepage-content .slider-container .slick-dots {
      bottom: 15px !important; }
      .homepage-content .slider-container .slick-dots li button:before {
        font-size: 10px !important; }
  .homepage-content .highlighted-intervention,
  .homepage-content .interventions-list,
  .homepage-content .intervention-sets-list {
    min-width: 270px; }
    .homepage-content .highlighted-intervention .img-present > div > div .list-item-title,
    .homepage-content .interventions-list .img-present > div > div .list-item-title,
    .homepage-content .intervention-sets-list .img-present > div > div .list-item-title {
      padding: 85px 0px 0px 0px;
      clear: both; }
  .homepage-content .highlighted-intervention .list-item-name {
    display: flex;
    flex-direction: column-reverse; } }

.stepper-container {
  width: 100%;
  height: 100px;
  padding: 0 !important;
  position: fixed;
  top: 100px;
  z-index: 100;
  text-align: center; }
  @media only screen and (max-width: 889px) {
    .stepper-container {
      top: 86px; } }
  .stepper-container > * {
    display: inline-block;
    vertical-align: top; }
  .stepper-container.without-buttons {
    top: 30px; }
  .stepper-container.no-header {
    top: 65px; }
  .stepper-container .stepper-steps {
    margin: 0 auto;
    max-width: 1066px;
    box-sizing: border-box;
    padding: 0;
    width: 82%; }
    @media only screen and (max-width: 889px) {
      .stepper-container .stepper-steps {
        width: 95%; } }
    @media only screen and (max-width: 736px) {
      .stepper-container .stepper-steps {
        width: 80%; } }
    @media only screen and (max-width: 420px) {
      .stepper-container .stepper-steps {
        width: 100%; } }
    .stepper-container .stepper-steps * {
      padding: 0 !important; }
    .stepper-container .stepper-steps > div {
      align-items: normal !important; }
      .stepper-container .stepper-steps > div > div {
        display: inline-block;
        vertical-align: top;
        width: 80px; }
        .stepper-container .stepper-steps > div > div:first-child {
          margin: 0; }
        .stepper-container .stepper-steps > div > div:not(.step-by-step) {
          position: relative;
          margin-top: 40px; }
    .stepper-container .stepper-steps button {
      width: 80px; }
      .stepper-container .stepper-steps button > div > span,
      .stepper-container .stepper-steps button > span {
        display: block !important;
        height: auto !important;
        margin: 29px 0 0 0; }
        .stepper-container .stepper-steps button > div > span span,
        .stepper-container .stepper-steps button > span span {
          display: block;
          width: 100%;
          height: 24px; }
          .stepper-container .stepper-steps button > div > span span svg,
          .stepper-container .stepper-steps button > span span svg {
            margin: 0 auto; }
        .stepper-container .stepper-steps button > div > span .step-name,
        .stepper-container .stepper-steps button > span .step-name {
          width: 100%;
          font-size: 12px;
          font-size: 0.75rem;
          margin: 12px 0 0 0;
          text-align: center; }
  @media only screen and (max-width: 1366px) {
    .stepper-container .stepper-steps {
      width: 95%; }
      .stepper-container .stepper-steps > div > div {
        width: 60px; }
        .stepper-container .stepper-steps > div > div.step-by-step {
          width: 80px;
          margin: 0; } }
  @media only screen and (max-width: 736px) {
    .stepper-container {
      height: 50px;
      top: auto;
      bottom: 0;
      border-bottom: 0 none !important;
      border-top: 2px solid;
      margin: 0 auto; }
      .stepper-container.no-header {
        top: unset; }
      .stepper-container .stepper-steps {
        width: 80%;
        margin: 12px auto 0; }
        [device="phone"] .stepper-container .stepper-steps {
          margin: 10px auto 0; }
        .stepper-container .stepper-steps text {
          display: block; }
        .stepper-container .stepper-steps > div > div {
          display: none; }
          .stepper-container .stepper-steps > div > div.step-by-step {
            display: inline-block;
            width: 40px;
            margin: 0 !important; }
        .stepper-container .stepper-steps button {
          width: 24px; }
          .stepper-container .stepper-steps button > * {
            width: 24px;
            height: 24px; }
          .stepper-container .stepper-steps button > div > span,
          .stepper-container .stepper-steps button > span {
            margin: 0; }
            .stepper-container .stepper-steps button > div > span span,
            .stepper-container .stepper-steps button > span span {
              display: block; }
              .stepper-container .stepper-steps button > div > span span svg,
              .stepper-container .stepper-steps button > span span svg {
                margin: 0 auto; }
            .stepper-container .stepper-steps button > div > span .step-name,
            .stepper-container .stepper-steps button > span .step-name {
              display: none; } }

.list-item .list-item-title {
  line-height: 26px; }
  .list-item .list-item-title .list-item-name {
    line-height: initial;
    display: flex; }
  .list-item .list-item-title .title-separator {
    display: inline-block;
    width: 10px; }

.list-item .item-name {
  display: flex; }
  .list-item .item-name .videoconference-div {
    width: 28px;
    margin-top: -1px; }

.list-item .chip-div {
  margin: 2px 0 0 10px;
  display: inline; }

.list-item .timer-intervention,
.list-item .price-intervention {
  display: inline-block;
  position: relative;
  padding-left: 20px;
  line-height: initial; }
  .list-item .timer-intervention span > span,
  .list-item .price-intervention span > span {
    font-size: small; }
  .list-item .timer-intervention svg,
  .list-item .price-intervention svg {
    position: absolute;
    width: 22px;
    top: -2px;
    left: -2px; }

.list-item .timer-intervention {
  margin-right: 15px; }

.list-item .price-intervention {
  padding-left: 22px; }
  .list-item .price-intervention span > span {
    font-size: 14px;
    font-variant: small-caps; }
  .list-item .price-intervention svg {
    width: 21px; }

.grid-items > div {
  height: auto !important;
  min-height: 30px;
  padding: 8px 0 !important; }

.list-mode > div > div {
  width: 100% !important;
  height: auto !important; }

.img-place-holder {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }
  .img-place-holder svg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto; }

.no-transform > div > div .right-button-list {
  transform: translate(0px, 0px) !important; }

.img-not-present > div > div {
  min-height: 16px !important; }

.summary-content .list-step .summary-menu {
  float: right; }
  .summary-content .list-step .summary-menu button span.MuiButton-label {
    text-transform: none; }

.summary-content .list-step.intervention .has-calendar .summary-menu {
  margin: 9px 0px; }

.summary-content .services-container .select-categories {
  width: 400px; }

@media only screen and (max-width: 580px) {
  .summary-content .list-step.intervention .summary-menu {
    margin: 0px; }
  .summary-content .list-step.pack .chip-div {
    margin-top: 6px;
    margin-left: 0px;
    display: block; }
  .summary-content .services-container .img-present > div > div .list-item-title {
    display: block; }
  .summary-content .services-container .select-categories {
    width: 300px; }
  .img-present > div > div {
    min-height: auto !important; }
    .img-present > div > div .list-item-title {
      padding: 45px 0px 0px 0px;
      clear: both; }
  .img-present .secondary-text-item {
    text-align: left !important;
    clear: both; } }

@media only screen and (min-width: 783px) and (max-width: 966px) {
  .grid-items > div {
    padding: 5px 0 !important; } }

@media only screen and (min-width: 651px) and (max-width: 782px), (max-width: 476px) {
  .grid-items > div {
    padding: 0 !important; }
    .grid-items > div > div > div {
      font-size: 14px !important; }
      .grid-items > div > div > div + div {
        font-size: 11px !important; } }

@media only screen and (max-width: 476px) {
  .summary-content .list-step.intervention .summary-menu {
    margin: 0px !important; }
  .summary-content .services-container .select-categories {
    width: 230px; }
  .list-item > div > div .list-item-title .item-estimate {
    clear: both; } }

@media only screen and (max-width: 736px) {
  .list-item-name {
    display: flex;
    word-break: break-word;
    flex-direction: column-reverse; }
    .list-item-name .item-name {
      display: flex; }
    .list-item-name .chip-div {
      margin: 0 0 4px 0; } }

.auth-step.step-container > div > div {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin-top: 20px;
  box-sizing: border-box; }
  .auth-step.step-container > div > div.loginForm {
    width: 60%;
    border-right: 1px solid #d6d6d6; }
    .auth-step.step-container > div > div.loginForm fieldset {
      margin: 20px 0 0 0; }
  .auth-step.step-container > div > div.registerForm {
    width: 40%; }
    .auth-step.step-container > div > div.registerForm fieldset {
      margin: 20px 0 0 auto; }
  @media only screen and (max-width: 1080px) {
    .auth-step.step-container > div > div.loginForm, .auth-step.step-container > div > div.registerForm {
      width: 50%; } }
  @media only screen and (max-width: 880px) {
    .auth-step.step-container > div > div.loginForm, .auth-step.step-container > div > div.registerForm {
      width: 100%;
      display: block; }
    .auth-step.step-container > div > div.loginForm {
      border-right: 0 none;
      border-bottom: 1px solid #d6d6d6; }
    .auth-step.step-container > div > div.registerForm {
      margin-top: 0; } }

.auth-step.step-container > div fieldset {
  width: calc(100% - 20px);
  padding: 15px 12px 20px 12px;
  border: 0 none;
  border-radius: 4px 4px 4px 4px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }
  .auth-step.step-container > div fieldset h4 {
    margin: 0 0 30px 0;
    padding: 0 15px;
    text-align: center !important; }
  .auth-step.step-container > div fieldset legend {
    font-size: 24px;
    font-size: 1.5rem;
    display: inline-block;
    margin: auto;
    padding: 0 8px;
    text-transform: uppercase; }

#appointments .item {
  padding: 20px 0 0; }
  @media only screen and (max-width: 736px) {
    #appointments .item {
      padding: 0; } }

.no-appointments {
  font-style: italic;
  margin-top: 2px;
  font-weight: 400; }

.step-container .slot-changer {
  position: relative;
  height: 48px; }
  .step-container .slot-changer > * {
    position: absolute;
    top: 0; }
  .step-container .slot-changer .prev-day {
    left: 0; }
  .step-container .slot-changer .next-day {
    right: 0; }
  @media only screen and (max-width: 736px) {
    .step-container .slot-changer .prev-day,
    .step-container .slot-changer .next-day {
      width: 48px; }
      .step-container .slot-changer .prev-day span,
      .step-container .slot-changer .next-day span {
        display: none; } }
  .step-container .slot-changer .date-selector {
    font-size: 16px;
    line-height: 24px;
    width: auto;
    height: 48px;
    display: block;
    margin: auto;
    position: relative;
    background-color: transparent;
    border: none;
    text-align: center;
    padding: 0 15px 0 15px; }
    .step-container .slot-changer .date-selector:hover {
      cursor: pointer;
      border-radius: 2px 2px 2px 2px;
      background-color: rgba(153, 153, 153, 0.25); }
    .step-container .slot-changer .date-selector.disabled:hover {
      cursor: default;
      background-color: unset; }

.step-container .day-slot {
  width: calc( 100% / 7 - 20px);
  *width: calc( 100% / 7 - 20px);
  display: inline-block;
  vertical-align: top;
  margin: 10px 10px 0 10px; }
  .step-container .day-slot .day-slot-header {
    text-align: center;
    margin: 10px 0 20px 0; }
    .step-container .day-slot .day-slot-header .light-day-slot-header {
      font-weight: 400;
      font-size: 12px;
      font-size: 0.75rem; }
    .step-container .day-slot .day-slot-header .bold-day-slot-header {
      font-weight: 700;
      font-size: 16px;
      font-size: 1rem; }
  .step-container .day-slot .day-slot-unavailable {
    font-size: 12px;
    font-size: 0.75rem;
    text-align: center;
    word-break: break-word;
    padding: 0 10px;
    position: relative;
    top: 50%;
    transform: translateY(-50%); }
  .step-container .day-slot .slot-container {
    width: 100%;
    height: 40px;
    border-radius: 4px 4px 4px 4px; }
    .step-container .day-slot .slot-container .button-selector {
      border-radius: 50% 50% 50% 50%;
      position: absolute;
      left: 84%;
      bottom: 53%;
      font-size: 20px;
      font-size: 1.25rem;
      font-weight: 700; }
    .step-container .day-slot .slot-container .slot-hour-choice {
      height: 40px;
      display: block;
      position: relative;
      text-align: center; }
  .step-container .day-slot .slot-container > button {
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: 700; }
  .step-container .day-slot .slot-container .hour {
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: 700; }
    .step-container .day-slot .slot-container .hour span {
      font-size: 12px;
      font-size: 0.75rem;
      font-weight: 400; }
  .step-container .day-slot div > div > span > span {
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
    line-height: normal; }
    .step-container .day-slot div > div > span > span > span {
      left: 20%;
      width: 100%;
      bottom: 20%;
      height: 100%;
      z-index: 1;
      display: block;
      position: absolute;
      text-align: center;
      line-height: 22px;
      font-weight: 600;
      border-radius: 50%;
      font-size: 20px;
      font-size: 1.25rem; }
      .facebook .step-container .day-slot div > div > span > span > span {
        font-weight: 500;
        line-height: 24px; }
      .Linux.Firefox .step-container .day-slot div > div > span > span > span {
        line-height: 26px; }
  @media only screen and (max-width: 1024px) {
    .step-container .day-slot {
      width: calc( 100% / 6 - 20px);
      *width: calc( 100% / 6 - 20px); } }
  @media only screen and (max-width: 880px) {
    .step-container .day-slot {
      width: calc( 100% / 5 - 20px);
      *width: calc( 100% / 5 - 20px); }
      .step-container .day-slot .slot-container .promotion-icon {
        right: 86%; } }
  @media only screen and (max-width: 736px) {
    .step-container .day-slot {
      width: calc( 100% / 4 - 10px);
      *width: calc( 100% / 4 - 10px);
      margin: 10px 5px 0 5px; }
      .step-container .day-slot .slot-container .promotion-icon {
        right: 87%; }
      .step-container .day-slot .slot-container .button-selector {
        left: 85%; } }
  @media only screen and (max-width: 650px) {
    .step-container .day-slot .slot-container .promotion-icon {
      right: 85%; }
    .step-container .day-slot .slot-container .button-selector {
      left: 84%; } }
  @media only screen and (max-width: 580px) {
    .step-container .day-slot {
      width: calc( 100% / 3 - 10px);
      *width: calc( 100% / 3 - 10px); }
      .step-container .day-slot .slot-container .promotion-icon {
        right: 87%; }
      .step-container .day-slot .slot-container .button-selector {
        left: 86%; } }
  @media only screen and (max-width: 480px) {
    .step-container .day-slot .slot-container .promotion-icon {
      right: 85%; }
    .step-container .day-slot .slot-container .button-selector {
      left: 84%; } }
  @media only screen and (max-width: 420px) {
    .step-container .day-slot {
      width: calc( 100% / 2 - 10px);
      *width: calc( 100% / 2 - 10px); }
      .step-container .day-slot .promotion-icon {
        right: 89%; }
      .step-container .day-slot .slot-container .promotion-icon {
        right: 89%; }
      .step-container .day-slot .slot-container .button-selector {
        left: 87%; } }
  @media only screen and (max-width: 360px) {
    .step-container .day-slot .slot-container .promotion-icon {
      right: 86%; }
    .step-container .day-slot .slot-container .button-selector {
      left: 85%; } }

.slot-hour-choice {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700; }
  .slot-hour-choice span {
    display: inline-block;
    margin-left: 5px;
    font-weight: 400;
    font-size: 12px;
    font-size: 0.75rem; }

.promotion-icon {
  border-radius: 50% 50% 50% 50%;
  position: absolute;
  right: 84%;
  bottom: 57%;
  font-size: 10px;
  font-weight: 700; }

/**
 * animation zoom
 * create a zoom animation
 */
@keyframes zoom {
  0% {
    transform: scale(1); }
  100% {
    transform: scale(12); } }

/**
 * animation spin
 * create rotation for spinner element
 */
@keyframes spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.header-container,
.noheader-container {
  position: fixed;
  width: 100%;
  height: 100px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  top: 0;
  z-index: 100; }
  .header-container.with-address .header-content,
  .noheader-container.with-address .header-content {
    margin: 10px 0 10px 0; }
    .header-container.with-address .header-content .button-menu,
    .noheader-container.with-address .header-content .button-menu {
      top: 6px; }
    .header-container.with-address .header-content .notLogged-button,
    .noheader-container.with-address .header-content .notLogged-button {
      top: 0px !important;
      line-height: 28px !important; }
      .header-container.with-address .header-content .notLogged-button span,
      .noheader-container.with-address .header-content .notLogged-button span {
        display: flex;
        margin-right: 4px; }
    .header-container.with-address .header-content #logo-bloc,
    .noheader-container.with-address .header-content #logo-bloc {
      margin-top: 10px;
      margin-bottom: 10px; }
  .header-container.with-address .link-btn,
  .noheader-container.with-address .link-btn {
    width: max-content;
    border: 0px;
    background: none;
    text-transform: none !important;
    cursor: pointer;
    outline: none; }
    .header-container.with-address .link-btn span,
    .noheader-container.with-address .link-btn span {
      text-decoration: underline; }
  .header-container .header-content,
  .noheader-container .header-content {
    position: relative;
    width: 100%;
    height: 44px;
    margin: 20px 0; }
    .header-container .header-content .button-menu,
    .noheader-container .header-content .button-menu {
      display: inline-block;
      position: absolute !important;
      text-align: center;
      top: 11px; }
    .header-container .header-content button,
    .noheader-container .header-content button {
      display: block !important;
      width: auto !important;
      height: auto !important;
      margin: 0 auto !important;
      border: 0 !important;
      min-width: auto !important; }
      .header-container .header-content button svg,
      .noheader-container .header-content button svg {
        width: 32px !important;
        height: 32px !important; }
        .header-container .header-content button svg.check-login,
        .noheader-container .header-content button svg.check-login {
          width: 12px !important;
          height: 12px !important;
          position: absolute;
          top: 1px;
          right: 19px;
          border-radius: 50% 50% 50% 50%; }
    .header-container .header-content .locale-switch button span,
    .header-container .header-content .logged-main button span,
    .header-container .header-content .logged-pro-main button span,
    .header-container .header-content .text-icon,
    .noheader-container .header-content .locale-switch button span,
    .noheader-container .header-content .logged-main button span,
    .noheader-container .header-content .logged-pro-main button span,
    .noheader-container .header-content .text-icon {
      display: block;
      width: 100%;
      font-family: "Lato", sans-serif;
      font-size: 8px !important;
      font-size: 0.5rem !important;
      font-size: 8px;
      font-size: 0.5rem;
      font-weight: bold !important;
      text-transform: uppercase; }
    .header-container .header-content .text-icon,
    .noheader-container .header-content .text-icon {
      position: absolute;
      right: 0;
      top: 32px; }
    .header-container .header-content .back-rdv-button,
    .noheader-container .header-content .back-rdv-button {
      left: 10px;
      width: 85px; }
      .header-container .header-content .back-rdv-button.with-home-button,
      .noheader-container .header-content .back-rdv-button.with-home-button {
        left: 65px; }
    .header-container .header-content .maps-button,
    .header-container .header-content .home-button,
    .noheader-container .header-content .maps-button,
    .noheader-container .header-content .home-button {
      left: 10px;
      width: 70px; }
      .header-container .header-content .maps-button.with-home-button,
      .header-container .header-content .home-button.with-home-button,
      .noheader-container .header-content .maps-button.with-home-button,
      .noheader-container .header-content .home-button.with-home-button {
        left: 65px; }
    .header-container .header-content .map-with-back-button,
    .noheader-container .header-content .map-with-back-button {
      left: 85px;
      width: 70px; }
      .header-container .header-content .map-with-back-button.with-home-button,
      .noheader-container .header-content .map-with-back-button.with-home-button {
        left: 140px; }
    .header-container .header-content .notLogged-button,
    .noheader-container .header-content .notLogged-button {
      right: 18px !important; }
      .header-container .header-content .notLogged-button.with-locale,
      .noheader-container .header-content .notLogged-button.with-locale {
        right: 80px !important; }
      .header-container .header-content .notLogged-button span,
      .noheader-container .header-content .notLogged-button span {
        display: flex;
        margin-right: 4px; }
    .header-container .header-content .logged-main,
    .header-container .header-content .logged-pro-main,
    .noheader-container .header-content .logged-main,
    .noheader-container .header-content .logged-pro-main {
      right: 85px; }
    .header-container .header-content .locale-switch,
    .noheader-container .header-content .locale-switch {
      right: 10px; }
    .header-container .header-content .logged-main,
    .header-container .header-content .logged-pro-main,
    .header-container .header-content .locale-switch,
    .noheader-container .header-content .logged-main,
    .noheader-container .header-content .logged-pro-main,
    .noheader-container .header-content .locale-switch {
      width: 70px; }
      .header-container .header-content .logged-main button,
      .header-container .header-content .logged-pro-main button,
      .header-container .header-content .locale-switch button,
      .noheader-container .header-content .logged-main button,
      .noheader-container .header-content .logged-pro-main button,
      .noheader-container .header-content .locale-switch button {
        width: 100% !important;
        line-height: normal !important;
        overflow: initial !important; }
        .header-container .header-content .logged-main button svg,
        .header-container .header-content .logged-pro-main button svg,
        .header-container .header-content .locale-switch button svg,
        .noheader-container .header-content .logged-main button svg,
        .noheader-container .header-content .logged-pro-main button svg,
        .noheader-container .header-content .locale-switch button svg {
          display: block !important;
          margin: 0 auto !important; }
        .header-container .header-content .logged-main button span,
        .header-container .header-content .logged-pro-main button span,
        .header-container .header-content .locale-switch button span,
        .noheader-container .header-content .logged-main button span,
        .noheader-container .header-content .logged-pro-main button span,
        .noheader-container .header-content .locale-switch button span {
          padding: 0 !important; }
      .header-container .header-content .logged-main .locale-button,
      .header-container .header-content .logged-pro-main .locale-button,
      .header-container .header-content .locale-switch .locale-button,
      .noheader-container .header-content .logged-main .locale-button,
      .noheader-container .header-content .logged-pro-main .locale-button,
      .noheader-container .header-content .locale-switch .locale-button {
        padding: 0 !important; }
    .header-container .header-content #logo-bloc,
    .noheader-container .header-content #logo-bloc {
      text-align: center;
      max-width: 500px;
      width: 100%;
      height: 50px;
      margin: 30px auto 0 auto;
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain;
      background-origin: content-box; }
      .header-container .header-content #logo-bloc.without-slogan,
      .noheader-container .header-content #logo-bloc.without-slogan {
        height: 55px; }
  .header-container .slogan,
  .noheader-container .slogan {
    font-size: 12px;
    font-size: 0.75rem;
    text-align: center;
    margin: 8px auto 0 auto;
    max-width: 580px; }

.Firefox .header-container .header-content .locale-switch .locale-button svg text,
.Firefox .noheader-container .header-content .locale-switch .locale-button svg text {
  transform: translateY(11%); }

@media only screen and (min-width: 890px) {
  .header-container .header-content.content-new-logo .new-logo {
    height: 40px !important;
    margin-top: 30px !important; }
  .header-container.with-address .header-content.content-new-logo {
    margin-bottom: 4px; }
    .header-container.with-address .header-content.content-new-logo #logo-bloc.without-slogan {
      height: 50px; }
    .header-container.with-address .header-content.content-new-logo #logo-bloc.new-logo {
      height: 38px !important;
      margin-top: 18px !important; } }

@media only screen and (max-width: 889px) {
  .header-container,
  .noheader-container {
    height: 85px; }
    .header-container.with-address .header-content,
    .noheader-container.with-address .header-content {
      height: 44px;
      margin: 8px 0; }
      .header-container.with-address .header-content #logo-bloc,
      .noheader-container.with-address .header-content #logo-bloc {
        margin-top: 8px;
        margin-bottom: 8px; }
      .header-container.with-address .header-content .notLogged-button,
      .noheader-container.with-address .header-content .notLogged-button {
        line-height: 21px !important; }
        .header-container.with-address .header-content .notLogged-button span,
        .noheader-container.with-address .header-content .notLogged-button span {
          flex-direction: column;
          margin-right: 0; }
      .header-container.with-address .header-content button svg:first-child,
      .noheader-container.with-address .header-content button svg:first-child {
        width: 28px !important;
        height: 28px !important; }
    .header-container .header-content,
    .noheader-container .header-content {
      margin: 18px 0 0 0;
      height: 54px; }
      .header-container .header-content .button-menu,
      .noheader-container .header-content .button-menu {
        top: 0px; }
      .header-container .header-content #logo-bloc,
      .noheader-container .header-content #logo-bloc {
        height: 24px;
        max-width: 200px; }
        .header-container .header-content #logo-bloc.without-slogan, .header-container .header-content #logo-bloc.without-buttons,
        .noheader-container .header-content #logo-bloc.without-slogan,
        .noheader-container .header-content #logo-bloc.without-buttons {
          height: 45px; }
        .header-container .header-content #logo-bloc.without-slogan-and-buttons,
        .noheader-container .header-content #logo-bloc.without-slogan-and-buttons {
          height: 50px; }
      .header-container .header-content .notLogged-button,
      .noheader-container .header-content .notLogged-button {
        width: 70px !important;
        line-height: 28px !important; }
        .header-container .header-content .notLogged-button span,
        .noheader-container .header-content .notLogged-button span {
          margin-right: -2px; }
        .header-container .header-content .notLogged-button div span,
        .noheader-container .header-content .notLogged-button div span {
          top: 33px; }
    .header-container .slogan,
    .noheader-container .slogan {
      margin: 9px auto 0 auto; } }

@media only screen and (max-width: 620px) {
  .header-container,
  .noheader-container {
    height: 110px; }
    .header-container.with-address .header-content,
    .noheader-container.with-address .header-content {
      margin: 12px 0 0 0;
      height: 72px; }
      .header-container.with-address .header-content .button-menu,
      .noheader-container.with-address .header-content .button-menu {
        top: 32px; }
      .header-container.with-address .header-content .notLogged-button,
      .noheader-container.with-address .header-content .notLogged-button {
        top: 26px !important;
        line-height: 34px !important; }
        .header-container.with-address .header-content .notLogged-button span,
        .noheader-container.with-address .header-content .notLogged-button span {
          flex-direction: column; }
        .header-container.with-address .header-content .notLogged-button .text-icon,
        .noheader-container.with-address .header-content .notLogged-button .text-icon {
          margin-top: -3px; }
      .header-container.with-address .header-content #logo-bloc.without-slogan, .header-container.with-address .header-content #logo-bloc.without-buttons,
      .noheader-container.with-address .header-content #logo-bloc.without-slogan,
      .noheader-container.with-address .header-content #logo-bloc.without-buttons {
        margin-top: 12px; }
      .header-container.with-address .header-content #logo-bloc.without-slogan-and-buttons,
      .noheader-container.with-address .header-content #logo-bloc.without-slogan-and-buttons {
        margin: 12px auto; }
    .header-container .header-content,
    .noheader-container .header-content {
      margin: 30px 0 0 0;
      height: 78px; }
      .header-container .header-content button svg,
      .noheader-container .header-content button svg {
        width: 26px !important;
        height: 26px !important; }
      .header-container .header-content .button-menu,
      .noheader-container .header-content .button-menu {
        top: 32px; }
      .header-container .header-content .text-icon,
      .noheader-container .header-content .text-icon {
        top: 27px; }
      .header-container .header-content .back-rdv-button,
      .noheader-container .header-content .back-rdv-button {
        left: 5px; }
      .header-container .header-content .maps-button,
      .header-container .header-content .home-button,
      .noheader-container .header-content .maps-button,
      .noheader-container .header-content .home-button {
        left: 5px; }
        .header-container .header-content .maps-button.with-back-button,
        .header-container .header-content .home-button.with-back-button,
        .noheader-container .header-content .maps-button.with-back-button,
        .noheader-container .header-content .home-button.with-back-button {
          left: 90px; }
      .header-container .header-content .home-with-map-button,
      .noheader-container .header-content .home-with-map-button {
        left: 80px; }
        .header-container .header-content .home-with-map-button.with-back-button,
        .noheader-container .header-content .home-with-map-button.with-back-button {
          left: 170px; }
      .header-container .header-content .notLogged-button,
      .noheader-container .header-content .notLogged-button {
        width: 70px !important;
        top: 26px;
        right: 5px !important; }
        .header-container .header-content .notLogged-button .text-icon,
        .noheader-container .header-content .notLogged-button .text-icon {
          top: 24px; }
        .header-container .header-content .notLogged-button.with-locale,
        .noheader-container .header-content .notLogged-button.with-locale {
          right: 70px !important; }
      .header-container .header-content .logged-main,
      .header-container .header-content .logged-pro-main,
      .noheader-container .header-content .logged-main,
      .noheader-container .header-content .logged-pro-main {
        right: 80px; }
      .header-container .header-content .locale-switch,
      .noheader-container .header-content .locale-switch {
        right: 5px; }
      .header-container .header-content .logged-main,
      .header-container .header-content .logged-pro-main,
      .header-container .header-content .locale-switch,
      .noheader-container .header-content .logged-main,
      .noheader-container .header-content .logged-pro-main,
      .noheader-container .header-content .locale-switch {
        right: 5px; }
      .header-container .header-content #logo-bloc,
      .noheader-container .header-content #logo-bloc {
        height: 18px; }
        .header-container .header-content #logo-bloc.without-slogan, .header-container .header-content #logo-bloc.without-buttons,
        .noheader-container .header-content #logo-bloc.without-slogan,
        .noheader-container .header-content #logo-bloc.without-buttons {
          margin-top: 25px; }
        .header-container .header-content #logo-bloc.without-slogan-and-buttons,
        .noheader-container .header-content #logo-bloc.without-slogan-and-buttons {
          margin: 25px auto; } }

@media only screen and (max-width: 480px) {
  .header-container .header-content #logo-bloc.without-slogan, .header-container .header-content #logo-bloc.without-buttons,
  .noheader-container .header-content #logo-bloc.without-slogan,
  .noheader-container .header-content #logo-bloc.without-buttons {
    height: 30px; }
  .header-container .header-content #logo-bloc.without-slogan-and-buttons,
  .noheader-container .header-content #logo-bloc.without-slogan-and-buttons {
    height: 35px; } }

.header-container .slogan,
.noheader-container .slogan {
  margin: 2px auto 0 auto;
  font-size: 0.65rem; }

.noheader-container {
  height: 65px; }
  .noheader-container.no-button {
    height: 0;
    border: 0 none; }
  .noheader-container .header-content {
    position: relative;
    width: 100%;
    margin: 10px 0 0 0; }
    .noheader-container .header-content .button-menu {
      top: 3px; }
    .noheader-container .header-content .text-icon {
      top: 32px; }
    .noheader-container .header-content .notLogged-button {
      top: -1px !important;
      overflow: visible !important; }
  @media only screen and (max-width: 889px) {
    .noheader-container .header-content .notLogged-button {
      top: -1.5px !important; }
      .noheader-container .header-content .notLogged-button .text-icon {
        top: 23px; } }
  @media only screen and (max-width: 480px) {
    .noheader-container {
      height: 50px; }
      .noheader-container .header-content .button-menu {
        top: -2px; }
      .noheader-container .header-content .text-icon {
        top: 27px; }
      .noheader-container .header-content .notLogged-button {
        top: -11px !important; }
        .noheader-container .header-content .notLogged-button .text-icon {
          top: 21px; }
      .noheader-container .header-content .logged-main button span,
      .noheader-container .header-content .logged-pro-main button span,
      .noheader-container .header-content .locale-switch button span {
        margin-top: 1px !important; } }

html {
  min-width: 300px;
  height: 100%; }
  html #didomi-notice {
    border-style: double; }
  html body {
    position: relative;
    min-height: 100%;
    margin: 0 auto;
    padding: 0;
    font-family: 'Lato', sans-serif;
    font-weight: 400;
    font-style: normal;
    white-space: pre-wrap; }
    html body #root {
      min-height: calc(100% - 115px);
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      margin: 0 auto; }
    html body .loader {
      position: fixed;
      z-index: 999;
      background-color: #FFF;
      overflow: hidden;
      margin: auto;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      opacity: 1;
      filter: alpha(opacity=100); }
      html body .loader img {
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 100px;
        height: 100px; }
      html body .loader.loaded {
        transition: all 0.25s ease-in-out;
        transition-delay: 0.5s;
        opacity: 0;
        filter: alpha(opacity=0);
        z-index: -999; }
        html body .loader.loaded img {
          transform: rotate(0deg);
          /**
                     * use 'animation zoom' on spinner svg
                     * for exit loader view
                     */
          animation: zoom 1s ease-in-out 0s 1 normal forwards; }
    html body .email-overlay,
    html body .pwd-overlay {
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      width: 100%;
      height: 100%;
      flex-direction: column;
      position: fixed;
      z-index: 9999;
      padding-top: 200px;
      text-align: center;
      vertical-align: middle;
      overflow: hidden;
      margin: auto;
      background-color: rgba(15, 128, 243, 0.6);
      color: white;
      display: table-cell; }
    html body .pwd-overlay {
      z-index: 1490;
      background-color: rgba(255, 255, 255, 0.6);
      color: black; }
    html body .content-container {
      width: 100%;
      margin: 0 auto;
      padding: 100px 0 20px 0; }
      html body .content-container > div {
        max-width: 1066px;
        width: 92%;
        margin: 0 auto 20px auto;
        padding: 0;
        box-sizing: border-box; }
        html body .content-container > div.stepper-container, html body .content-container > div.summary-container, html body .content-container > div.content-container {
          width: auto;
          max-width: none; }
        html body .content-container > div.summary-container {
          padding: 15px 0 0; }
        html body .content-container > div.content-container {
          padding: 0 0 10px 0; }
        html body .content-container > div.confirm-step .appointment-content {
          width: 100%;
          max-width: 380px;
          padding: 0 0 20px;
          margin: auto; }
          html body .content-container > div.confirm-step .appointment-content > * {
            margin: 0 6%; }
            html body .content-container > div.confirm-step .appointment-content > *.listAppointment {
              margin: 0 0;
              border: 1px solid red; }
              html body .content-container > div.confirm-step .appointment-content > *.listAppointment > div > div {
                padding: 15px 6% !important; }
              html body .content-container > div.confirm-step .appointment-content > *.listAppointment .list-item-title {
                display: flex; }
                html body .content-container > div.confirm-step .appointment-content > *.listAppointment .list-item-title .list-item-name {
                  display: flex;
                  margin-top: -2px;
                  line-height: initial; }
                html body .content-container > div.confirm-step .appointment-content > *.listAppointment .list-item-title .title-separator {
                  display: inline-block;
                  width: 10px; }
                html body .content-container > div.confirm-step .appointment-content > *.listAppointment .list-item-title .videoconference-div {
                  display: flex;
                  width: 28px;
                  margin-top: -1px; }
                html body .content-container > div.confirm-step .appointment-content > *.listAppointment .list-item-title .item-name {
                  display: flex; }
          html body .content-container > div.confirm-step .appointment-content h1 {
            font-size: 20px; }
          html body .content-container > div.confirm-step .appointment-content .price-details {
            display: flex; }
            html body .content-container > div.confirm-step .appointment-content .price-details .currency {
              margin-left: 8px;
              color: inherit !important; }
          html body .content-container > div.confirm-step .appointment-content .total-cost .price-details {
            font-weight: bold; }
          html body .content-container > div.confirm-step .appointment-content .discount-cost .price-details {
            color: #FF0000; }
        html body .content-container > div.confirm-step .button-container {
          margin: 0px 170px; }
          html body .content-container > div.confirm-step .button-container .appointment-btn-details {
            text-align: center;
            margin-bottom: 15px; }
            html body .content-container > div.confirm-step .button-container .appointment-btn-details .icon-button {
              width: 50% !important; }
              html body .content-container > div.confirm-step .button-container .appointment-btn-details .icon-button > svg {
                margin: 0px !important; }
              html body .content-container > div.confirm-step .button-container .appointment-btn-details .icon-button > span {
                font-weight: bold;
                text-transform: none !important; }
            html body .content-container > div.confirm-step .button-container .appointment-btn-details #add-to-calendar-btn {
              border: 0px !important; }
            html body .content-container > div.confirm-step .button-container .appointment-btn-details #go-there-btn {
              border-width: 0px 0px 0px 1px !important;
              border-radius: 0px !important; }
            html body .content-container > div.confirm-step .button-container .appointment-btn-details #new-appointment-btn {
              margin-left: 5px; }
            html body .content-container > div.confirm-step .button-container .appointment-btn-details .MuiButton-startIcon {
              margin: 0px; }
          html body .content-container > div.confirm-step .button-container .link-btn {
            width: max-content;
            border: 0px;
            background: none;
            font-weight: bold;
            text-decoration: underline;
            text-transform: none !important;
            cursor: pointer;
            outline: none; }
          html body .content-container > div.confirm-step .button-container #return-url-btn, html body .content-container > div.confirm-step .button-container #cancel-appointment-btn, html body .content-container > div.confirm-step .button-container #change-appointment-btn {
            margin: 10px; }
        html body .content-container > div.search-container, html body .content-container > div.appointment-list {
          padding-bottom: 40px; }
      html body .content-container.has-stepper {
        padding: 200px 0 20px 0; }
        html body .content-container.has-stepper.no-header {
          padding: 165px 0 20px 0; }
        html body .content-container.has-stepper .stepper-container {
          margin: 0; }
        html body .content-container.has-stepper .fiches-step .gdpr-info {
          font-size: 14px;
          font-style: normal;
          color: #7a7a7a; }
        html body .content-container.has-stepper .fiches-step .gdpr-comments {
          margin: 10px 0;
          font-size: 0.75em;
          font-style: italic;
          color: #7a7a7a;
          line-height: 1.1; }
        html body .content-container.has-stepper .fiches-step #jitsiTermsContainer > div {
          padding-bottom: 5px !important; }
        html body .content-container.has-stepper .fiches-step #jitsiTermsContainer .collapsible-help-text {
          padding: 0px 30px; }
          html body .content-container.has-stepper .fiches-step #jitsiTermsContainer .collapsible-help-text .help-text {
            font-size: 15px;
            font-style: normal; }
      html body .content-container.no-header {
        padding-top: 65px; }
      html body .content-container.map-container {
        padding: 0;
        position: absolute;
        top: 100px;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 1;
        height: calc(100% - 100px); }
        html body .content-container.map-container > div {
          position: relative;
          margin: 0;
          max-width: none;
          width: auto; }
          html body .content-container.map-container > div.map-render-container {
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            padding: 0; }
        html body .content-container.map-container.no-header {
          top: 65px; }
        html body .content-container.map-container .map-header svg:hover {
          cursor: pointer; }
      html body .content-container.notFound-container {
        display: flex;
        padding: 0;
        min-height: inherit;
        position: absolute; }
        html body .content-container.notFound-container > div {
          width: 100%;
          margin: auto;
          text-align: center;
          padding: 0 16px; }
          html body .content-container.notFound-container > div h1 {
            font-weight: 300;
            font-size: 4rem; }
          html body .content-container.notFound-container > div p {
            font-size: 2rem;
            margin-top: 5rem;
            margin-bottom: 0;
            font-weight: 300; }
      html body .content-container.inactive-container {
        display: flex;
        min-height: inherit;
        position: absolute;
        padding: 50px 0 20px 0; }
        html body .content-container.inactive-container > div {
          width: 100%;
          margin: auto;
          text-align: center;
          padding: 0 16px; }
          html body .content-container.inactive-container > div h1 {
            font-weight: 300;
            font-size: 3rem; }
            html body .content-container.inactive-container > div h1 span {
              font-weight: 500; }
      html body .content-container .summary-container {
        margin: 0; }
        html body .content-container .summary-container .summary-content {
          width: 82%;
          max-width: 1066px;
          margin: 0 auto;
          padding: 0;
          box-sizing: border-box; }
          html body .content-container .summary-container .summary-content .list-item-name {
            display: flex; }
            html body .content-container .summary-container .summary-content .list-item-name .item-name {
              display: flex;
              vertical-align: middle;
              line-height: initial; }
              html body .content-container .summary-container .summary-content .list-item-name .item-name .videoconference-div {
                width: 28px;
                margin-top: -1px; }
        html body .content-container .summary-container .chip-div {
          margin: 4px 0 0 10px;
          display: inline; }
        html body .content-container .summary-container .pack-preposition {
          float: right;
          margin-right: 10px;
          margin-top: 3px;
          font-size: 0.8em;
          font-weight: 600; }
        html body .content-container .summary-container .pack-item {
          padding: 5px 50px 10px 40px; }
        html body .content-container .summary-container .pack-int-label {
          display: inline-flex; }
      html body .content-container .content-bloc {
        white-space: normal; }
        html body .content-container .content-bloc .custom-text h1,
        html body .content-container .content-bloc .custom-text h2,
        html body .content-container .content-bloc .custom-text h3,
        html body .content-container .content-bloc .custom-text h4,
        html body .content-container .content-bloc .custom-text h5,
        html body .content-container .content-bloc .custom-text p {
          margin: 10px 0 0; }
        html body .content-container .content-bloc .custom-text > div > :first-child {
          margin: 0; }
      html body .content-container .content-bloc,
      html body .content-container .step-container {
        width: 82%;
        margin: 0 auto 20px auto; }
        html body .content-container .content-bloc .list-step,
        html body .content-container .step-container .list-step {
          border-bottom: 1px solid #F5F5F5; }
          html body .content-container .content-bloc .list-step:last-child,
          html body .content-container .step-container .list-step:last-child {
            border-bottom: 1px solid #FFF; }
        html body .content-container .content-bloc .strong-txt,
        html body .content-container .step-container .strong-txt {
          font-weight: bold; }
        html body .content-container .content-bloc .warningInfo,
        html body .content-container .step-container .warningInfo {
          text-align: center;
          line-height: 1.5;
          border-radius: 4px 4px 4px 4px; }
      html body .content-container .list-apts {
        min-height: 60px; }
        html body .content-container .list-apts p {
          margin: 0 !important; }
    html body .main-container {
      position: relative;
      min-height: inherit;
      background: #FFF;
      padding-bottom: 115px; }
      html body .main-container.no-footer {
        padding-bottom: 5px; }
    html body .clearfix {
      *zoom: 1;
      white-space: normal; }
      html body .clearfix:before, html body .clearfix:after {
        content: " ";
        display: table; }
      html body .clearfix:after {
        clear: both; }
    html body .register-container #gdpr-register {
      font-size: 14px;
      margin: 10px 0 20px 0;
      color: #7a7a7a; }
  html {
    font-size: 16px; }
  html .Firefox .list-apts > div:first-child .dateApt > div:first-child {
    margin-top: -6px !important; }
  html .Firefox .list-apts > div:first-child .dateApt > div + div {
    margin-top: -2px !important; }

.txt_bold {
  font-weight: bold; }

.txt_xxl {
  font-size: 26px; }

.txt_xl {
  font-size: 18px; }

.txt_l {
  font-size: 16px; }

.txt_s {
  font-size: 11px; }

.txt_xs {
  font-size: 9px; }

@media only screen and (max-width: 1366px) {
  html body .content-container .content-bloc,
  html body .content-container .step-container {
    width: 92%; }
  html body .content-container .summary-container .summary-content {
    width: 92%; }
    html body .content-container .summary-container .summary-content .summary-pack {
      white-space: break-spaces; }
  html body .content-container.inactive-container {
    padding: 50px 0; } }

@media only screen and (max-width: 889px) {
  html body .content-container {
    padding: 85px 0 20px 0; }
    html body .content-container.has-stepper {
      padding: 185px 0 20px 0; }
      html body .content-container.has-stepper .stepper-container {
        margin: 0; }
    html body .content-container.map-container {
      top: 85px;
      height: calc(100% - 85px); }
    html body .content-container.inactive-container {
      padding: 42px 0; }
      html body .content-container.inactive-container > div h1 {
        font-size: 2.8rem; }
    html body .content-container > div.confirm-step .button-container {
      margin: auto; } }

@media only screen and (max-width: 860px) {
  html body .content-container .summary-container .pack-int-label {
    width: calc(100% - 280px); } }

@media only screen and (max-width: 736px) {
  html body #root {
    min-height: calc(100% - 180px); }
  html body .content-container {
    padding: 85px 0 0 0; }
    html body .content-container.has-stepper {
      padding: 85px 0 0 0; }
      html body .content-container.has-stepper.no-header {
        padding: 65px 0 0 0; }
    html body .content-container > div {
      margin: 0 6% 80px 6%;
      padding: 0;
      width: auto; }
      html body .content-container > div.confirm-step .appointment-content {
        max-width: 320px; }
        html body .content-container > div.confirm-step .appointment-content h1 {
          font-size: 18px; }
    html body .content-container .content-bloc {
      margin: 0 auto 15px; }
    html body .content-container .step-container {
      margin: 0 auto 20px; }
      html body .content-container .step-container .promotion-filter .promotion-warning {
        padding: 10px 0 0 0;
        clear: both; }
    html body .content-container.has-stepper .step-container {
      margin: 0 auto 10px; }
    html body .content-container.notFound-container {
      top: 85px;
      max-height: calc(100% - 115px); }
      html body .content-container.notFound-container > div h1 {
        font-size: 3rem; }
      html body .content-container.notFound-container > div p {
        font-size: 1.3rem;
        margin-top: 1rem; }
    html body .content-container.inactive-container {
      padding: 75px 0; }
      html body .content-container.inactive-container > div h1 {
        font-size: 2.5rem; }
    html body .content-container .content-bloc,
    html body .content-container .step-container {
      width: 92%; }
    html body .content-container .summary-container .summary-content {
      width: 92%;
      padding: 0; }
      html body .content-container .summary-container .summary-content .pack-item {
        padding: 5px 0 10px 0; }
      html body .content-container .summary-container .summary-content .list-item-name {
        display: flex;
        flex-direction: column-reverse; }
        html body .content-container .summary-container .summary-content .list-item-name .item-name {
          display: flex; }
        html body .content-container .summary-container .summary-content .list-item-name .chip-div {
          margin: 0 0 4px 0; }
    html body .content-container .list-apts p {
      font-size: 14px; }
  html body .main-container {
    padding-bottom: 180px; }
  html body .Firefox .list-apts > div:first-child .dateApt > div:first-child {
    margin-top: -3px !important; }
  html body .Firefox .list-apts > div:first-child .dateApt > div + div {
    margin-top: -7px !important; } }

@media only screen and (max-width: 620px) {
  html body .content-container {
    padding: 110px 0 0 0 !important; } }

@media only screen and (max-width: 550px) {
  html body .content-container > div.summary-container {
    padding: 28px 0 0; }
  html body .content-container .summary-container .pack-preposition {
    float: none;
    margin-right: 0;
    margin-left: 24px;
    margin-top: -21px;
    position: absolute; }
  html body .content-container .summary-container .pack-int-label {
    width: unset; }
  html body .content-container.map-container {
    padding: 10px 0 0 0; }
  html body .content-container .list-apts {
    padding: 10px 45px 10px 70px !important;
    min-height: 52px !important; }
    html body .content-container .list-apts > div:first-child {
      width: 50px !important;
      height: 50px !important;
      top: 11px !important; }
      html body .content-container .list-apts > div:first-child .dateApt > div:first-child {
        font-size: 30px !important;
        margin-top: -6px !important; }
      html body .content-container .list-apts > div:first-child .dateApt > div + div {
        margin-top: -5px !important; }
    html body .content-container .list-apts div + div button {
      padding: 1px 12px 12px !important; } }

@media only screen and (max-width: 480px) {
  html body #root > div[device="desktop"] .content-container.notFound-container > div {
    padding: 0; }
  html body #root > div[device="desktop"] .content-container.inactive-container > div h1 {
    font-size: 1.8rem; }
  html body .content-container {
    padding: 105px 0 0 0; }
    html body .content-container.no-header {
      padding-top: 50px 0 0 0; }
    html body .content-container > div.confirm-step .appointment-content {
      max-width: 320px; }
      html body .content-container > div.confirm-step .appointment-content h1 {
        font-size: 18px; }
    html body .content-container > div.confirm-step .button-container #return-url-btn {
      width: 120px !important;
      padding: 0 10px !important; }
      html body .content-container > div.confirm-step .button-container #return-url-btn span {
        font-size: 14px !important; }
    html body .content-container > div.confirm-step .button-container #cancel-appointment-btn {
      width: 120px !important;
      padding: 0 10px !important; }
      html body .content-container > div.confirm-step .button-container #cancel-appointment-btn span {
        font-size: 14px !important; }
    html body .content-container.has-stepper > div.stepper-container {
      margin: 0; }
    html body .content-container.has-stepper.no-header {
      padding: 50px 0 0 0; }
    html body .content-container .tabs-menu-toggle > div:nth-child(2) {
      position: relative;
      left: -6%;
      width: 113%;
      right: 0; }
    html body .content-container.map-container {
      padding: 10px 0 0 0; }
      html body .content-container.map-container.no-header {
        top: 0; }
    html body .content-container.inactive-container > div h1 {
      font-size: 2rem; }
  html body .main-container {
    padding-bottom: 180px; } }

@media only screen and (max-width: 320px) {
  html body .content-container > div {
    margin: 0 6% 80px 6%; }
    html body .content-container > div.confirm-step .button-container #return-url-btn {
      margin-left: 20px !important; }
  html body .content-container.notFound-container > div {
    padding: 0; }
    html body .content-container.notFound-container > div h1 {
      margin-top: -3.3rem;
      font-size: 2rem; }
    html body .content-container.notFound-container > div p {
      font-size: 1rem; }
  html body .content-container.inactive-container > div h1 {
    font-size: 1.5rem; }
  html body .content-container .summary-container .summary-content {
    padding: 0; }
    html body .content-container .summary-container .summary-content .pack-preposition {
      margin-left: 0; } }

#footer {
  position: absolute;
  right: 0;
  left: 0;
  padding: 20px 0;
  border-top: 2px solid;
  font-size: 10px;
  font-size: 0.625rem;
  text-align: center;
  line-height: 24px; }
  #footer .footer-slogan {
    line-height: 16px; }
  #footer .footer-link a,
  #footer .footer-link a:hover,
  #footer .footer-link a:focus,
  #footer .footer-link a:visited,
  #footer .footer-link a:active {
    color: inherit; }
  #footer .copyright .corpo {
    font-size: 12px;
    font-size: 0.75rem; }
  @media only screen and (max-width: 736px) {
    #footer {
      padding-bottom: 20px; }
      #footer.has-stepper {
        padding-bottom: 60px; } }

