:root {
  --basf-blue      : #00793A;
  --basf-light-blue: #cce9da;;
}

html {
  scroll-behavior: smooth;
  font-family    : "Roboto", sans-serif;
  box-sizing     : border-box;
}

a {
  text-decoration: none !important;
  color          : white;
}

ul {
  list-style: none;
}

body {
  color     : #000;
  font-size : 12px;
  height    : 100vh;
  overflow-x: hidden;
  margin    : 0;
  padding   : 0;
}

main {
  width: 100%;
}

body,
html {
  position   : relative;
  line-height: 1.6;
}

header {
  width  : 100%;
  z-index: 9999;
}

button {
  border       : 0;
  border-radius: 1rem;
}

input,
select {
  border       : 1px solid transparent;
  border-radius: 1rem;
}

input:hover,
select:hover {
  border: 1px solid black;
}

h1 {
  font-size: 1.9rem;
  margin   : 0;
}

h2 {
  font-size: 1.4rem;
  margin   : 0;
}

h3 {
  font-size: 1.2rem;
  margin   : 0;
}

@media only screen and (max-width: 480px) {
  .headerContainer .logoContainer img {
    margin-left: 0rem !important;
    width      : 150px !important;
    height     : auto !important;
  }
}

/* Header */

.headerContainer {
  width           : 100%;
  height          : auto;
  display         : flex;
  flex-direction  : column;
  background-color: var(--basf-blue);
}

.headerContainer .logoContainer {
  padding  : 0.5rem 0.5rem 0.5rem 0;
  max-width: 930px !important;
  width    : 100%;
  margin   : 0 auto;
}

.headerContainer .logoContainer img {
  width : 255px;
  height: 80px;
}

/*  */

/* Main content */

.mainContainer {
  max-width            : 930px !important;
  display              : grid;
  grid-template-columns: 1fr 1fr;
  margin               : 4rem auto 4rem;
}

/* left side */

.mainContainer .leftSide {
  width         : 100%;
  display       : flex;
  flex-direction: column;
  margin-right  : 2rem;
}

.leftSide .scientistPicture {
  height       : auto;
  width        : 33rem;
  object-fit   : cover;
  border-radius: 0.5rem;
  margin-top   : 1rem;
}

/* Arrows and titles */
.leftSide .arrowsContainer {
  position: relative;
  margin-top: 2rem;
}

.leftSide .firstCurling {
  position: absolute;
  height: 6.5rem;
  width: auto;
  left: 27rem;
  bottom: 7rem;
  background-size: cover;
  object-fit     : contain;
}

.leftSide .secondCurling {
  position: absolute;
  height: 5.5rem;
  bottom: 2rem;
  width: auto;
  background-size: cover;
  object-fit     : contain;
}

.leftSide p {
  font-size: 0.8rem;
}

.leftSide .pictureTitle {
  padding-right: 5rem;
  margin-bottom: 2rem;
}

.leftSide .secondTitle {
  padding: 0 1rem 0 7.5rem;
  margin-bottom: 2rem;
}

.leftSide .thirdTitle {
  padding-left: 4rem;
}

/*  */


.leftSide .secondTitleBox {
  width           : 96%;
  height          : 4rem;
  background-color: var(--basf-light-blue);
  margin          : 2rem 0;
  padding         : 1rem;
}

.secondTitleBox h3,
.secondTitleBox p {
  color: var(--basf-blue);
}

.leftSide .leftArrow {
  display       : flex;
  flex-direction: row;
  margin        : 1.5rem 0;
}

.leftArrow img {
  width          : 9rem;
  margin-right   : 1rem;
  background-size: cover;
  object-fit     : contain;
}

.leftSide .rightArrow {
  display       : flex;
  flex-direction: row;
  margin-left   : auto;
  margin        : 1.5rem 0 1.5rem auto;
}

.rightArrow img {
  width          : 9rem;
  margin-left    : 1rem;
  margin-right   : 0;
  background-size: cover;
  object-fit     : contain;
}

.leftArrow h3,
.rightArrow h3 {
  font-weight: 500;
  color: var(--basf-blue);
}

.leftArrow h3 b,
.rightArrow h3 b {
  color: var(--basf-blue);
}

.leftSide .leftArrowAdditional {
  display       : flex;
  flex-direction: row;
  margin        : 1.5rem auto 1.5rem 0;
  color: var(--basf-blue);
}

.leftArrowAdditional img {
  width          : 9rem;
  margin-right    : 2rem;
  margin-left   : 0;
  background-size: cover;
  object-fit     : contain;
}

.leftArrowAdditional h3 {
  font-weight: 500;
  margin     : auto 1rem auto 0rem;
}

.leftArrowAdditional h3 b {
  color: var(--basf-blue);
}

.leftArrowAdditional .saferChoice {
  width: 2.5rem;
}

.leftSide .graphContainer {
  width         : 98%;
  display       : flex;
  flex-direction: column;
  margin        : 1.5rem auto;
  padding       : 0.5rem;
}

.leftSide .biodegradablePicture {
  height: 2rem;
  width: 2rem;
  margin: 0;
}

.graphContainer img {
  width : 95%;
  margin: 0.5rem auto;
}

.graphContainer .legend {
  height: auto;
  margin: 0 auto 1rem;
}

.graphContainer h3 {
  text-align: center;
  color     : gray;
}

.graphContainer p {
  color: gray;
}

.leftSide .familyPicture {
  width : 100%;
  margin: 0.5rem auto;
}

.leftSide .bottomInfo {
  color     : var(--basf-blue);
  margin-top: 1rem;
}

/*  */

/* right side */

.mainContainer .rightSide {
  width         : 100%;
  display       : flex;
  flex-direction: column;
  margin-left   : 2rem;
}

.rightSide .formContainer {
  margin          : 0 auto;
  display         : flex;
  flex-direction  : column;
  background-color: var(--basf-light-blue);
  border          : 1px solid #cccccc;
  width           : 70%;
  border-radius   : 0.5rem;
  padding         : 1rem 2rem;
}

.formContainer h2 {
  text-align: center;
  color     : var(--basf-blue);
}

.formContainer .field {
  display       : flex;
  width         : 90%;
  margin        : 1rem auto;
  flex-direction: column;
}

.formContainer .phoneField {
  display        : flex;
  justify-content: space-evenly;
  width          : 100%;
}

.phoneField input {
  height: 1.8rem;
}

.phoneField select {
  width: 25%;
}

.phoneField input {
  width      : 67%;
  margin-left: auto;
}

.field label {
  text-align   : center;
  margin-bottom: 0.5rem;
  color        : var(--basf-blue);
  font-weight  : 600;
}


.field input {
  height: 1.8rem;
}

.field input::placeholder {
  padding-left: 0.5rem;
}

.field select {
  height: 2rem;
}

/*  */

/* Additional */
input#input_captcha_code {
  width : 60%;
  height: 30px;
}

#btn_captcha_refresh {
  border-radius: 0.5rem !important;
  display      : inline-block;
  width        : 30%;
  height       : 50%;
  white-space  : nowrap;
  cursor       : pointer;
  margin       : auto 0 0 auto;
  padding      : 10px 15px;
  font-weight  : 600;

  -webkit-user-select: none;
  -moz-user-select   : none;
  -ms-user-select    : none;
  user-select        : none;
  font-size          : 14px;
  color              : #ffff;
  text-align         : center;
  background         : var(--basf-blue);
  opacity            : 0.8;
  transition         : opacity 0.5s ease-in;
}

#btn_captcha_refresh:hover {
  opacity: 1;
}

.captcha_input {
  margin-top: 20px;
}

.focus {
  border: 1px solid red;
}

.cmp-formcontainer {
  display: none;
}

input:required:focus {
  border : 2px solid red;
  outline: none;
}

.accordion .accordion-row .accordion-title:focus {
  outline: none;
}

.accordion-content a {
  color: var(--basf-blue);
}

.sc-formfield-input {
  margin-bottom: 1rem;
}

.sc-formfield-input label {
  font-weight: 600;
}

.policyTitle {
  margin-top: 2rem;
}

.policyTitle a,
.policyTitle span {
  color      : var(--basf-blue);
  font-weight: 600;
  font-size  : 1rem;
}

.accordion .accordion-row:last-child {
  border-bottom: 1px solid #7c7c7c;
}

.inputsulid_BTN {
  background   : var(--basf-blue);
  color        : #ffffff;
  font-weight  : 600;
  font-size    : 14px;
  text-align   : center;
  border-radius: 12px;
  width        : 100%;
  margin-top   : 30px;
  padding      : 10px 15px;
  cursor       : pointer;
  opacity      : 0.8;
  transition   : opacity 0.3s ease-in;
}

.inputsulid_BTN:hover {
  opacity: 1;
}

:root {
  --color-highlight: #21a0d2;
}

a,
button {
  cursor     : pointer;
  border     : 0;
  font-family: "Helvetica Neue BASF", sans-serif;
  text-align : left;
}

.accordion .accordion-row .accordion-content {
  display    : none;
  padding-top: 2.5rem;
  overflow   : auto;
  transition : all 0.5s;
}

.accordion .accordion-row {
  width     : 100%;
  padding   : 1.5rem 0;
  border-top: 1px solid #7c7c7c;
}

.accordion .accordion-row .accordion-title {
  font-size  : 1rem;
  position   : relative;
  display    : block;
  width      : 100%;
  background : transparent;
  font-family: Helvetica Neue LT W06, sans-serif;
  border     : 0;
  text-align : left;
  font-weight: 700;
  color      : var(--basf-blue);
  cursor     : pointer;
}

p,
.rich-text li,
.product-platforms__title,
li.product-platform>a,
.product-technical__subtitle,
.product-benefits>ul>li,
.learning-center-filters__title,
.product-block__content,
.icon-list-item__title,
.modal__inquiry-region,
.modal__inquiry-title {
  font-weight: 400;
  line-height: 160%;
}

.thankYouMessage {
  min-height    : 70%;
  display       : flex;
  flex-direction: column;
  padding       : 2rem 4rem;
  align-items   : center;
}

.thankYouMessage img {
  height       : 25rem;
  width        : auto;
  margin-bottom: 2rem;
}

.thankYouMessage h2 {
  margin    : auto;
  width     : 65%;
  text-align: center;
  color     : var(--basf-blue);
}

/*  */

@media only screen and (max-width: 680px) {
  .mainContainer {
    max-width     : auto;
    width         : auto;
    display       : flex;
    flex-direction: column;
    padding       : 0 0.5rem;
    margin        : 1.5rem auto 2rem;
  }

  .mainContainer .leftSide {
    width         : 100%;
    display       : flex;
    flex-direction: column;
    margin-right  : 0;
  }

  .leftSide .scientistPicture {
    height       : auto;
    width        : auto;
    object-fit   : cover;
    border-radius: 0.5rem;
    margin-top   : 1rem;
  }

  .leftSide h1 {
    font-size    : 1.5rem;
    margin-bottom: 0.5rem;
  }

  .leftSide h3 {
    font-size: 1rem;
  }

  .leftSide .pictureTitle {
    font-size: 1rem;
    margin   : 1.5rem 0 1.5rem 0.3rem;
  }

  .exampleContainer img {
    width: 48%;
  }

  .exampleContainer img:last-of-type {
    margin-left: 0rem;
  }

  .leftSide .secondTitleBox {
    width           : 92%;
    height          : auto;
    background-color: var(--basf-light-blue);
    margin          : 2rem auto;
    padding         : 0.6rem;
  }

  .leftSide .leftArrow {
    display       : flex;
    flex-direction: row;
    margin        : 1.5rem auto;
  }

  .leftArrow img {
    width          : 5.5rem;
    margin-right   : 1rem;
    background-size: cover;
    object-fit     : contain;
  }

  .leftSide .rightArrow {
    display       : flex;
    flex-direction: row;
    margin        : 1.5rem auto;
  }

  .rightArrow img {
    width          : 5.5rem;
    margin-left    : 1rem;
    margin-right   : 0;
    background-size: cover;
    object-fit     : contain;
  }

  .rightArrow h3 {
    font-size: 0.9rem;
  }

  .leftArrowAdditional img {
    width          : 5.5rem;
    margin-left    : 0rem;
    margin-right   : 0;
    background-size: cover;
    object-fit     : contain;
  }

  .leftArrowAdditional h3 {
    font-weight: 500;
    margin     : auto 0 auto 1rem;
  }

  .leftArrowAdditional .saferChoice {
    width: 2rem;
  }

  .leftSide .graphContainer {
    width  : 92%;
    padding: 0.5rem;
  }

  .mainContainer .rightSide {
    width         : 100%;
    display       : flex;
    flex-direction: column;
    margin        : 2rem auto 1rem;
  }

  .rightSide .formContainer {
    margin : 0 auto;
    width  : 94%;
    padding: 0.5rem;
  }

  .phoneField input {
    width      : 69%;
    margin-left: auto;
  }

  .accordion .accordion-row .accordion-title {
    font-size  : 0.9rem;
    position   : relative;
    display    : block;
    width      : 100%;
    background : transparent;
    font-family: Helvetica Neue LT W06, sans-serif;
    border     : 0;
    text-align : left;
    font-weight: 700;
    color      : var(--basf-blue);
    cursor     : pointer;
  }

  #btn_captcha_refresh {
    border-radius: 0.5rem !important;
    display      : inline-block;
    width        : 30%;
    height       : 50%;
    white-space  : nowrap;
    cursor       : pointer;
    margin       : auto 0 0 auto;
    padding      : 10px;
    font-weight  : 600;
  }
}