/*---BS resets---*/
.row {
  margin: 0; }

.col, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7,
.col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-auto,
.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5,
.col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10,
.col-sm-11, .col-sm-12, .col-sm, .col-sm-auto, .col-md-1,
.col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6,
.col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11,
.col-md-12, .col-md, .col-md-auto, .col-lg-1, .col-lg-2,
.col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7,
.col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12,
.col-lg, .col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3,
.col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8,
.col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  padding: 0; }

.container-fluid {
  padding: 0;
  overflow: hidden; }

h1, h2, h3, h4, h5, h6,
p, ul {
  margin: 0; }

ul {
  list-style-type: none;
  padding: 0px; }

.form label {
  margin: 0px;
  position: absolute; }

/*---GLOBAL---*/
/*--CORE TAGS--*/
body, html {
  height: 100%;
  scroll-behavior: smooth;
  line-height: 1;
  font-family: 'Roboto', Arial, Helvetica, sans-serif; }

header,
footer,
section {
  max-width: 1720px;
  margin: auto; }

h1 {
  color: var(--main);
  font-weight: 900; }

h2 {
  color: var(--main);
  font-weight: 700;
  margin-bottom: 30px; }

h3 {
  color: var(--main);
  font-weight: 700;
  margin-bottom: 30px; }

h4 {
  color: var(--main);
  font-weight: 700;
  margin-bottom: 30px; }

/*---------------------------------------------------------------*/
p {
  margin-bottom: 30px;
  line-height: 1.6; }

ul {
  margin-bottom: 30px;
  line-height: 1.6; }

li {
  margin-bottom: 10px;
  line-height: 1.6; }

a {
  color: var(--main);
  transition: all 0.15s ease-in;
  text-decoration: underline; }

a:hover {
  color: white; }

.btn,
.button,
input[type="submit"] {
  display: inline-block;
  font-weight: 600;
  color: white;
  border: none;
  background: var(--main);
  padding: 12px 30px;
  line-height: 1.2;
  border-radius: 4px;
  font-size: 1.25em; }

.btn:hover,
.button:hover,
input[type="submit"]:hover {
  color: white;
  background: #313131;
  transition: all .25s ease-in-out; }

/*CORE CLASSES*/
.main {
  background-color: white; }

.flex_centre {
  display: flex;
  justify-content: center;
  align-items: center; }

.full_width {
  max-width: none; }

.main_padd {
  padding-left: 10vw;
  padding-right: 10vw;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto; }

@media only screen and (min-width: 1200px) {
  .main_padd {
    padding-left: 120px;
    padding-right: 120px; } }
@media only screen and (max-width: 576px) {
  .main_padd {
    padding-left: 4.8vw;
    padding-right: 4.8vw; } }
/*---FORM DEFAULTS--*/
/*submission box*/
.sub_message .message p {
  line-height: 1.2;
  font-size: 1em;
  margin-bottom: 25px; }

.form .success {
  color: #0075ff; }

.form .exists {
  color: red; }

.form .error {
  color: red; }

/*form layouts / inputs*/
.form {
  font-size: 1.12em; }

.form .form-group {
  margin-bottom: 22px; }

.form p {
  margin: 0px; }

.form .asterix {
  color: red; }

.form .form-control,
.form .form-control::placeholder,
.form .form-control:focus,
.form .custom-select {
  color: var(--black); }

.form input.form-control,
.form textarea.form-control,
.form select.custom-select {
  font-weight: 400;
  border-radius: 0px; }

.form .form-control.error:focus {
  border-color: #000000;
  box-shadow: 0 0 0 0.2rem #ff000040; }

.form .textarea_box {
  display: flex;
  flex-direction: column; }

.form .form-check-label {
  display: flex;
  flex-direction: column;
  position: static; }

/*form error messages*/
.form label.error {
  position: static;
  margin: 0px;
  padding-top: 5px;
  line-height: 1.1; }

.form select.error {
  font-weight: 400;
  color: #495057; }

.form .textarea_box label.error {
  order: 1;
  display: block; }

.form .form-check-label label.error {
  order: 1; }

/*-----------------------------------------------*/
