
/* Form
--------------------------------------------- */
.form {
font-family: "Open Sans", sans-serif; }
  .form__header {
    text-align: center;
    margin-bottom: 1rem; }
    fieldset.form-group {
      border: 0;
    }
    .form-group {
      margin-bottom: .5rem;
    }
  .form__title {
    display: inline-block;
    font-weight: 700;
    font-size: 1.5rem;
    margin-bottom: 0;
    color: #1c1c1c; }
    .form__title::after {
      display: inline-block;
      content: "";
      background-image: url('data:image/svg+xml,<svg width="1em" height="1em" viewBox="0 0 16 16" class="bi bi-arrow-90deg-right" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M9.896 2.396a.5.5 0 0 0 0 .708l2.647 2.646-2.647 2.646a.5.5 0 1 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 0 0-.708 0z"/><path fill-rule="evenodd" d="M13.25 5.75a.5.5 0 0 0-.5-.5h-6.5a2.5 2.5 0 0 0-2.5 2.5v5.5a.5.5 0 0 0 1 0v-5.5a1.5 1.5 0 0 1 1.5-1.5h6.5a.5.5 0 0 0 .5-.5z"/></svg>');
      background-repeat: no-repeat;
      background-size: 1.5rem 1.5rem;
      width: 1.5rem;
      height: 1.5rem;
      transform: rotate(90deg);
      position: relative;
      top: 4px; }
  .form__details {
    background: #ffffff;
    border-radius: 5px;
    margin-bottom: 1rem;
    border: 1px solid #dddde1;
    padding: 0.75rem 0 0; }
    .form__details > div.d-flex {
      padding: 0 .75rem .75rem; }
  .form__image img {
    margin: 0 0.75rem 0 0;
    display: block;
    width: 80px;
    height: 80px;
    min-width: 80px; }
  .form__subtitle {
    font-size: 1rem;
    display: block;
    margin-bottom: 0.25rem;
    line-height: 1.2;
    font-weight: 700;
    color: #1c1c1c; }
  .form__list {
    margin: 0 0 0.5rem;
    padding: 0;
    list-style-position: inside;
    font-size: 0.875rem; }
  .form__price {
    display: inline-block;
    font-size: 0.875rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
    margin-right: 0.25rem;
    color: #1c1c1c; }
  .form__delivery {
    display: inline-block;
    font-size: 0.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
    border-radius: 50em;
    padding: 0.25rem 0.5rem;
    background-color: #c9e8ea;
    color: #1c1c1c; }
  .form__security {
    display: block;
    margin-bottom: 0; }
  .form__safe {
    display: inline-block;
    font-size: 0.75rem;
    margin-bottom: 0.25rem;
    margin-right: 0.25rem;
    color: #1c1c1c; }
  .form__ssl {
    display: inline-block;
    padding: 0.25rem 0.5rem;
    background-color: #84CC16;
    color: #ffffff;
    font-size: 0.75rem;
    font-weight: 700;
    border-radius: 50em; }
    .form__ssl::before {
      display: inline-block;
      content: "";
      background-image: url('data:image/svg+xml,<svg width="1em" height="1em" viewBox="0 0 16 16" class="bi bi-lock-fill" fill="white" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 9a2 2 0 0 1 2-2h7a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-7a2 2 0 0 1-2-2V9z"/><path fill-rule="evenodd" d="M4.5 4a3.5 3.5 0 1 1 7 0v3h-1V4a2.5 2.5 0 0 0-5 0v3h-1V4z"/></svg>');
      background-repeat: no-repeat;
      background-size: 0.875rem 0.875rem;
      width: 0.875rem;
      height: 0.875rem;
      position: relative;
      top: 2px;
      margin-right: 0.25rem; }
  .form__vit {
    background-color: #fbbf24;
    padding: .25rem .5rem .25rem;
    text-align: center;
    color: #1c1c1c;
    font-weight: 700;
    font-size: 1.125rem;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px; }
  .form .form-control {
    border-color: #9d9d9d;
    border-width: 2px;
    color: #1c1c1c;
    font-weight: 500; }
    .form .form-control:focus {
      border-color: #383838;
      box-shadow: none;
      color: #1c1c1c; }
    .form .form-control::placeholder {
      color: #9d9d9d; }
  .form .form-check:not(:last-child) {
    margin-bottom: 0.5rem; }
  .form .col-form-label {
    color: #1c1c1c; }
  .form .form-check-label {
    font-size: 1rem;
    color: #1c1c1c;
    font-weight: 400;
    padding: 0.25rem 0rem;
    width: 100%;
    cursor: pointer; }
    .form .form-check-label a {
      color: #1c1c1c;
      text-decoration: underline; }
  .form input[type="radio"].form-check-input {
    margin-top: 4px; }
  .form input[type="checkbox"].form-check-input {
    margin-top: 4px; }
  .form__legal {
    font-size: 0.75rem;
    color: #897b7b;
    margin-bottom: 0.5rem; }
    .form__legal a {
      font-size: 0.75rem;
      color: #897b7b;
      text-decoration: underline;
      display: block;
      margin-bottom: 0.5rem; }
  .form__submit {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem; }
    .form__submit .btn {
      font-size: 1.5rem;
      padding-left: 2rem;
      padding-right: 2rem;
      margin: 0 auto;
      font-weight: 700;
      border-radius: 50em;
      background-color: #7E22CE;
      border-color: #7E22CE;
      color: #ffffff; }
  .form__footer {
    font-size: 0.875rem;
    font-weight: 400;
    color: #897b7b;
    margin-bottom: 0; }
  .form__error-info {
    border: 1px solid #ff4949;
    background-color: #ff4949;
    border-radius: 0.25rem;
    padding: 0.5rem;
    margin-bottom: 1rem; }
    .form__error-info:before {
      content: "";
      display: inline-block;
      background-image: url('data:image/svg+xml,<svg class="bi bi-exclamation-diamond-fill" width="1em" height="1em" viewBox="0 0 16 16" fill="%23FFFFFF" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098L9.05.435zM8 4a.905.905 0 00-.9.995l.35 3.507a.552.552 0 001.1 0l.35-3.507A.905.905 0 008 4zm.002 6a1 1 0 100 2 1 1 0 000-2z" clip-rule="evenodd"/></svg>');
      background-size: no-repeat;
      background-size: 1rem 1rem;
      width: 1rem;
      height: 1rem;
      min-width: 1rem;
      margin-right: 0.5rem; }
    .form__error-info span {
      margin: 0;
      display: inline-block;
      width: auto;
      font-size: 0.875rem;
      color: #ffffff;
      font-weight: 700; }
  .form .field_with_errors .form-control {
    border-color: #ff4949;
    box-shadow: none; }
  .form .field_with_errors:not(.field_with_errors--no-icon) .form-control {
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }
  .form .error {
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.75rem;
    font-weight: 700;
    color: #ff4949;
    display: block; }
  .form .form-check .field_with_errors .form-check-label {
    background-color: #ffcdd2;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    position: relative; }
    .form .form-check .field_with_errors .form-check-label::before {
      background-color: #ffcdd2;
      position: absolute;
      width: 1.25rem;
      height: 100%;
      display: block;
      content: "";
      top: 0;
      left: -1.25rem; }

/* Media Query - MD
--------------------------------------------- */
@media (min-width: 576px) {
  .form__header {
    text-align: left; }
  .form__image img {
    width: 100px;
    height: 100px;
    min-width: 100px; }
  .form__price {
    font-size: 1rem;
    margin-bottom: 0.5rem; }
  .form__delivery {
    margin-bottom: 0.5rem; }
  .form__safe {
    margin-bottom: 0; } }
/* Media Query - LG
--------------------------------------------- */
@media (min-width: 992px) {
  .form__image img {
    width: 80px;
    height: 80px;
    min-width: 80px; }
   }
/* Media Query - XL
--------------------------------------------- */
@media (min-width: 1200px) {
  .form__image img {
    width: 100px;
    height: 100px;
    min-width: 100px; } }

/* Legal
--------------------------------------------- */
.legal {
  font-family: "Roboto", sans-serif;
  padding: 1rem 0;
}
.legal__title {
  font-size: 1.75rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  color: #1c1c1c;
  font-family: "Roboto", sans-serif;
}
.legal__content h2 {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  color: #1c1c1c;
  font-family: "Roboto", sans-serif;
}
.legal__content h3 {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  color: #1c1c1c;
  font-family: "Roboto", sans-serif;
}
.legal__content h4 {
  font-size: 1.125rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  color: #1c1c1c;
  font-family: "Roboto", sans-serif;
}
.legal__content h5 {
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  color: #1c1c1c;
  font-family: "Roboto", sans-serif;
}
.legal__content p {
  margin-bottom: 1rem;
  font-family: "Roboto", sans-serif;
}
.legal__content p,
.legal__content li {
  font-size: 0.875rem;
  font-family: "Roboto", sans-serif;
}
.legal__content ol,
.legal__content ul {
  margin-top: 0;
  margin-bottom: 1rem;
  padding-left: 2rem;
  font-family: "Roboto", sans-serif;
}
.legal__content ol ol,
.legal__content ol ul,
.legal__content ul ol,
.legal__content ul ul {
  margin-bottom: 0;
}
.legal__content a {
  color: #1976d2;
  transition: all 0.15s ease-in-out;
  font-family: "Roboto", sans-serif;
}
.legal__content a:hover {
  color: #0d47a1;
}

.legal.contact .form-control {
  border-color: #9d9d9d;
  border-width: 2px;
  color: #1c1c1c;
  font-weight: 500;
}
.legal.contact .form-control:focus {
  border-color: #383838;
  box-shadow: none;
  color: #1c1c1c;
}
.legal.contact .form-control::placeholder {
  color: #9d9d9d;
}
.legal.contact .form-check:not(:last-child) {
  margin-bottom: 0.5rem;
}
.legal.contact .col-form-label {
  color: #1c1c1c;
}
.legal.contact .form-check-label {
  font-size: 0.875rem;
  color: #1c1c1c;
  font-weight: 400;
  padding: 0.25rem 0rem;
  cursor: pointer;
}
.legal.contact .form-check-label a {
  color: #1c1c1c;
  text-decoration: underline;
}
.legal.contact input[type="checkbox"].form-check-input {
  margin-top: 8px;
}
.legal.contact .contact__legal {
  font-size: 0.75rem;
  color: #897b7b;
  margin-bottom: 0.5rem;
}
.legal.contact .contact__legal a {
  font-size: 0.75rem;
  color: #897b7b;
  text-decoration: underline;
}
.legal.contact .btn {
  font-size: 1.25rem;
  padding-left: 2rem;
  padding-right: 2rem;
  margin: 0 auto;
  font-weight: 700;
  border-radius: 50em;
  background-color: #59c114;
  border-color: #59c114;
  color: #ffffff;
}

/* Modal
--------------------------------------------- */
.site-modal__content {
  border: 1px solid #757575;
}
.site-modal__header {
  border-bottom: 1px solid #e0e0e0;
}
.site-modal__title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #212121;
  font-family: "Roboto", sans-serif;
}
.site-modal__close {
  color: #757575;
}
.site-modal__close:hover {
  color: #616161;
}
.site-modal__footer {
  border-top: 1px solid #e0e0e0;
}
.site-modal__footer .btn {
  font-size: 0.875rem;
  padding: 0.5rem 1rem;
}
