:root {
  /* Official colors - style guide */
  --afp-blue: #325aff;
  --afp-black: #000;
  --afp-white: #fff;

  /* sub main colors */
  --afp-pink: #ff6e6e;
  --afp-yellow: #ffd223;
  --afp-orange: #ffa050;
  --afp-turquoise: #7dfaaf;
  --afp-purple: #cd73fa;
  --afp-light-blue: #87ebfa;
  --afp-darker-white: #f5f5f7;

  /* secondary colors */
  --afp-secondary-grey-100: #9b9187;
  --afp-secondary-grey-80: #afa79f;
  --afp-secondary-grey-60: #c3bdb7;
  --afp-secondary-grey-40: #d7d3cf;
  --afp-secondary-grey-20: #ebe9e7;
  --afp-secondary-grey-10: #f5f4f3;

  /* Additional colors - custom */
  --afp-light-green: #7dfaaf;
  --afp-darker-green: #65ce8f;
  --afp-lighter-bleu: #e8f8eb;
  --afp-darker-orange: #e06f12;
  --afp-blue-darker: #2544bf;
  --extremely-light-gray: rgba(0, 0, 0, 0.1);

  /* Other  */
  --max-height-landing-presentation-container: 1280px;
  /* Barely used, might me removed */
  --min-height-landing-presentation-container: min(
    var(--max-height-landing-presentation-container),
    min(100vh, 100vw)
  );

  /* Font-size and lengths */
  --font-size: 22px;
  --line-height: 1.5;
  --base-length: var(--font-size);
  --afp-h2: calc(1.5 * var(--font-size));
  --afp-h3: calc(1.1 * var(--font-size));
  --afp-h2-padding: calc(var(--afp-h2) / 2);
  --afp-h3-padding: calc(var(--afp-h3) / 2);
}
/* BASE CSS */
html {
  font-family: "Source Sans Pro", Arial, sans-serif;
}

html,
body {
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;

  margin: 0;
  scroll-behavior: smooth;
}
/*
    Josh's Custom CSS Reset
    https://www.joshwcomeau.com/css/custom-css-reset/
    */
body {
  -webkit-font-smoothing: antialiased;
}
img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}
input,
button,
textarea,
select {
  font: inherit;
}
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}
a {
  color: inherit;
}

#main-container {
  margin: auto;
  width: 100%;
}

#main-container h2,
#main-container h3,
#main-container h4 {
  margin-top: 0;
  margin-bottom: 0;
}

.presentation-content {
  width: 100%;
  margin: 0 auto;
}

/* This is a workaround given the frustrating nature of inline heights (they ignore the paddings, always)*/

.presentation-container {
  padding: var(--nav-initial-height) var(--base-length) 0;
}
h3.h3-presentation {
  padding: var(--afp-h3-padding);
  width: fit-content;
  width: -moz-fit-content;

  font-weight: bold;
  text-transform: uppercase;
  font-size: var(--afp-h3);
}

/* LANDING */

#landing-container {
  background-color: var(--afp-white);
  padding: 1rem 0rem 8rem;
  position: relative;
}
.h1-landing {
  font-size: 4rem;
  font-weight: 900;
  margin-bottom: 2rem;
  width: fit-content;
}
.landing-para {
  font-size: 1.5rem;
  margin-bottom: 2rem;
}
.video-landing .landing-para {
  font-size: 1.1rem;
}
.landing-para span {
  font-weight: bold;
}
.flex-landing {
  display: flex;
  flex-direction: row;
  gap: 3rem;
}
.video-landing {
  width: 50%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.vidyard-player-container {
  box-shadow: 12px 6px 9px var(--afp-secondary-grey-20);
  margin: 0 !important;
  margin-top: 1rem !important;
}
.bloc-landing {
  width: 50%;
}
/* landing-form */
#form-container,
#form-container form {
  width: 100% !important;
  font-family: "Source Sans Pro", Arial, sans-serif !important;
  font-size: 16px !important;
  margin-top: -2rem;
}
#form-container form span,
#form-container form a {
  color: var(--afp-black) !important;
  line-height: initial;
}
#form-container form input,
#form-container form textarea,
#form-container form select {
  width: 26vw !important;
  max-width: 400px;
  height: 45px;
  border-radius: 0; /*NEW*/
}
#form-container form .mktoOffset {
  width: 0px;
}
#form-container form .mktoGutter {
  float: none;
}
#form-container form .mktoFormCol,
#form-container form .mktoFieldWrap {
  width: 100% !important;
}
#form-container form .mktoAsterix {
  float: left;
}
#form-container form .mktoButtonWrap {
  margin-left: 0px !important;
}
#form-container form .mktoButtonWrap.mktoRound .mktoButton {
  border: none;
  background-color: var(--afp-blue);
  background-image: none;
  width: fit-content;
  width: -moz-fit-content;
  border-radius: 20px;
  padding: 10px 25px;
  margin-top: 15px;
}
#form-container form .mktoButtonWrap.mktoRound .mktoButton:hover {
  background-color: var(--afp-blue-darker);
}
@media screen and (max-width: 992px) {
  .flex-landing {
    flex-direction: column;
  }
  .video-landing,
  .bloc-landing {
    width: 100%;
    margin: auto;
  }
  #form-container form input,
  #form-container form textarea,
  #form-container form select {
    width: 90% !important;
    max-width: none;
  }
}
.mktoOffset,
.mktoAsterix {
  display: none !important;
}
.mktoFieldDescriptor {
  margin-bottom: 0px !important;
}
.mktoGutter {
  display: none !important;
}
.mktoFieldWrap {
  margin-bottom: 8px !important;
}
.mktoForm input[type="text"],
.mktoForm input[type="url"],
.mktoForm input[type="email"],
.mktoForm input[type="tel"],
.mktoForm input[type="number"],
.mktoForm input[type="date"],
.mktoForm select.mktoField,
.mktoForm textarea.mktoField {
  border-radius: 0px !important;
}
/* section 0 */
#presentation-container-0 {
  padding: 2em 0;
  background-color: var(--afp-secondary-grey-10);
}
.stats-row {
  display: flex;
  flex-direction: row;
  gap: 2rem;
  border-radius: 15px;
  box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.2);
  width: 80%;
  margin: auto;
  left: 0;
  right: 0;
  bottom: -121px;
  background-color: #232424;
  color: var(--afp-white);
  font-size: 2rem;
  flex-wrap: wrap;
  justify-content: space-around;
  text-align: center;
  font-weight: 900;
  padding: 3rem;
  position: absolute;
}

.stats-row div {
  flex: 1 1 0px;
}
@media screen and (max-width: 430px) {
  .stats-row {
    font-size: 1.2rem;
  }
}

/* Section 1 */
.presentation-container-body {
  display: flex;

  width: 100%;

  flex-wrap: wrap;
  justify-content: space-between;
}
.presentation-content {
  width: 90%;
  padding-top: 4em;
}
#presentation-container-1 {
  background-color: var(--afp-blue);
  display: flex;
  align-items: end;
  padding-top: 10rem;
}
@media screen and (max-width: 1006px) {
  .stats-row {
    position: initial;
    margin-top: 3rem;
    padding: 3rem 1rem;
  }
  #landing-container {
    padding-bottom: 2rem;
  }
  #presentation-container-1 {
    padding-top: 2rem;
  }
  .padding-stats {
    width: 80%;
    margin: auto;
  }
}
.presentation-text-container {
  max-width: 90%;
}

.stats-row > div > p {
  font-size: 2rem !important;
}

@media (min-width: 992px) {
  .presentation-text-container {
    width: 33.33333%;
  }
}
#h1-presentation-1 {
  background-color: var(--afp-pink);
  color: var(--afp-white);
  padding-right: 10px;
  padding-left: 10px;
}
#h3-presentation-1 {
  background-color: var(--afp-pink);
  color: var(--afp-black);
}
.h3-subheader-presentation-container {
  margin: calc(0.25 * var(--base-length)) 0 calc(0.45 * var(--base-length));
}

.h3-subheader-presentation {
  padding: var(--afp-h3-padding);
  background-color: var(--afp-black);

  line-height: 1.6;
  text-transform: uppercase;
  font-size: var(--afp-h3);
  font-weight: bold;
  color: var(--afp-white);

  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
.presentation-text-title-container {
  margin-bottom: calc(2 * var(--base-length));
}

.presentation-text-description {
  font-size: var(--font-size);
  margin-bottom: 1em;
}

.presentation-illustration-container {
  width: 100%;
  align-self: flex-end;
}

@media (min-width: 992px) {
  .presentation-illustration-container {
    width: 62%;
  }
}
.svg-container {
  position: relative;
  display: flex;
  /* width: fit-content;
    width: -moz-fit-content; */
}
.video-container {
  position: absolute;
  /* Magic numbers. Sorry. */
  top: 5.5%;
  left: 11.75%;
  width: 77%;
}
#presentation-text-description-1 {
  color: var(--afp-white);
  margin-left: -2em;
  margin-bottom: 3rem;
}
#presentation-text-description-1 li {
  margin-bottom: 1em;
}

/* Section 2 */
#presentation-container-2 {
  background-color: var(--afp-yellow);
  display: flex;
  align-items: end;
}
#h3-presentation-2 {
  background-color: var(--afp-turquoise);
  color: var(--afp-black);
}
#presentation-text-description-2 {
  color: var(--afp-black);
  margin-left: 2em;
  margin-bottom: 3rem;
}
#presentation-text-description-2 li {
  margin-bottom: 1em;
}
#presentation-container-2 .presentation-text-title-container {
  margin-left: 1.2em;
}

@media screen and (max-width: 991px) {
  .order2 {
    order: 2;
  }
  #presentation-container-2 .presentation-text-title-container,
  #presentation-text-description-2 {
    margin-left: 2em;
  }
}

/* Section 3 */
#presentation-container-3 {
  background-color: var(--afp-pink);
  display: flex;
  align-items: end;
  overflow: hidden;
}
#presentation-text-description-3 {
  margin-left: -2em;
  margin-bottom: 3rem;
}
#presentation-text-description-3 li {
  margin-bottom: 1em;
}
#h3-presentation-3 {
  background-color: var(--afp-turquoise);
  color: var(--afp-black);
}
#h3-presentation-4 {
  background-color: var(--afp-blue);
  color: var(--afp-white);
}
.align-in-div {
  position: relative;
}
#align-mobile {
  position: absolute;
  bottom: 0;
  height: 85% !important;
}
#align-tab {
  position: absolute;
  bottom: 0;
  height: 80% !important;
  left: 32em;
}
@media (max-width: 1200px) {
  #align-tab {
    left: 23em;
  }
}
@media (max-width: 768px) {
  #align-tab {
    left: 19em;
  }
}
@media (max-width: 456px) {
  #align-tab {
    left: 11em;
  }
}

/* Section 4 */

#presentation-container-4 {
  width: 90%;
  padding: 1em;
  margin: auto;
}

/* API core */

#api-search-result {
  box-sizing: border-box;

  display: flex;
  flex-direction: column;

  overflow-x: scroll;
  scrollbar-color: #000 #fff;
  scrollbar-width: large;

  padding: 1rem 1rem 0;
  background-color: white;

  line-height: 1.25;
  font-family: "Source Sans Pro", Arial, sans-serif;

  width: 90%;
  margin: auto;
}

#api-search-result:lang(ar),
#api-search-result:lang(he) {
  direction: rtl;
}

#api-search-result .titles-row,
#api-search-result .times-row,
#api-search-result .photos-row,
#api-search-result .copyrights-row,
#api-search-result .summaries-row {
  width: fit-content;
  width: -moz-fit-content;
  display: flex;
  gap: 2rem;
  margin: auto;
}

#api-search-result .titles-row > *,
#api-search-result .times-row > *,
#api-search-result .photos-row > *,
#api-search-result .copyrights-row > *,
#api-search-result .summaries-row > * {
  width: 320px;
}

#api-search-result .doc-title {
  margin-bottom: 0.5rem;

  color: black;
  font-size: 1.3rem;
  font-weight: bolder;
}

#api-search-result .doc-time {
  margin-bottom: 0.5rem;

  color: #325aff;
  font-size: 0.9rem;
}

#api-search-result .doc-image {
  margin-bottom: 0.25rem;
  min-width: 320px;
}

#api-search-result .doc-image-copyright {
  margin-bottom: 0.5rem;

  font-weight: 300;
  font-size: 0.9em;
  text-align: center;
}

#api-search-result .doc-summary {
  position: relative;
  z-index: 1;

  max-height: 200px;
  overflow: hidden;

  flex-grow: 2;

  color: black;
  font-size: 1.1rem;
  text-align: justify;

  user-select: none;
}

#api-search-result .doc-summary-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;

  width: 100%;
  height: 100%;

  background: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
}

/*Css drupal adaptation*/
#main-container img {
  margin: 0 !important;
}
#presentation-container-2 img,
#presentation-container-1 img {
  margin-bottom: 4em !important;
}
#main-container ul {
  list-style-type: disc;
}
#h3-central-header-offers {
  font-weight: bold;
  font-size: 1.17em;
  text-align: center;
}
.list_dotted li:before {
  display: none;
}
.list_dotted li {
  padding: 0;
  list-style-type: disc;
}
#navbar-administration .navbar-tray-vertical > .navbar-lining {
  display: none !important;
}
.adjust-drupal {
  margin-left: -4em;
}
.margin-l {
  margin-left: 2rem;
}

@media screen and (max-width: 992px) {
  .adjust-drupal,
  #presentation-text-description-1,
  #presentation-text-description-3 {
    margin-left: 2em;
  }
}
@media screen and (max-width: 768px) {
  .stats-column-separator {
    margin: auto;
  }
}
/* remove drupal title */
.node-type-afp-produit
  .panel-pane.pane-entity-view.pane-node
  .line.mb1.bgblue.line.relative.mb2.pt1.pb2.pa0m,
.info_social.mb2 {
  display: none;
}
/*For mozilla*/
#breadcrumb.line.hidem {
  display: none;
}

/* Drupal10 adaptation */

main strong {
  font-weight: 700 !important;
}