/* BASE */
/*
       _ _                     _   _
 _ __ / / | ___ _ __ ___  __ _| |_(_)_   _____
| '_ \| | |/ __| '__/ _ \/ _` | __| \ \ / / _ \
| |_) | | | (__| | |  __/ (_| | |_| |\ V /  __/
| .__/|_|_|\___|_|  \___|\__,_|\__|_| \_/ \___|
|_|

/*
|--------------------------------------------------------------------------
| Variables
| Author: P11
| Visit us: @ p11.com
|--------------------------------------------------------------------------
/* GLOBAL*/
/* FONTS*/
/* COLORS */
/* BREAKPOINTS */
/* Extra small mobile */
/* Mobile */
/* Tablet */
/* Middle Sized Devices */
/* Small Laptop */
/* Large Laptop / Desktop */
/* Large Desktop */
/*
       _ _                     _   _
 _ __ / / | ___ _ __ ___  __ _| |_(_)_   _____
| '_ \| | |/ __| '__/ _ \/ _` | __| \ \ / / _ \
| |_) | | | (__| | |  __/ (_| | |_| |\ V /  __/
| .__/|_|_|\___|_|  \___|\__,_|\__|_| \_/ \___|
|_|

/*
|--------------------------------------------------------------------------
| Mixins
| Author: P11 Interactive Team
| Visit us: @ p11.com
|--------------------------------------------------------------------------
| 1. Resets
| 2. Positioning
|
| Notes: Define patterns of property value pairs, which can then be reused in other rule sets
|
*/
/*
| Font Smoothing
| --------------------------------------------------
|
| Aligns most of the browsers with the same font antialiasing.
|
*/
/*
| Strict Button Style
| --------------------------------------------------
|
| Sets the button style appearance to none for various
| mobile browsers and OS's that will auto change the styling
|
*/
/*
| Positioning
| --------------------------------------------------
|
| The following mixins are used for positioning elements
| via the absolute rule
|
*/
/*
| Transition
| --------------------------------------------------
|
| Used to apply all browser prefixes for the css3
| transition property
|
*/
/*
| Box Shadow
| --------------------------------------------------
|
| Used to apply all browser prefixes for the css3
| box-shadow property
|
*/
/*
| Text Shadow
| --------------------------------------------------
|
| Used to apply all browser prefixes for the css3
| text-shadow property
|
*/
/*
| SVG Shadow
| --------------------------------------------------
|
| Used to apply all browser prefixes for the css3
| filter property
|
*/
/*
| Responsive Media Query Mixins
| --------------------------------------------------
|
| The following mixins are used for applying various
| media queries and specified breakpoints
|
*/
/*
| Transparent Colors
| --------------------------------------------------
|
| Function for creating transparent colors.
|
*/
/*
| Gradient Backgrounds
| --------------------------------------------------
|
| Mixin for creating gradient backgrounds
| @include bg-gradient(fn-transparent-color($color-black, 1), fn-transparent-color($color-black, 0), top, bottom, 0%, 100%);
|
*/
/*
| Rotation
| --------------------------------------------------
|
| Mixin for applying the correct browser prefixes for the
| transform: rotate property
|
*/
/*
| Keyframe animations
| --------------------------------------------------
| Mixin for applying animations to elements
|
*/
/* BLOCKS */
/*******************************************************
 BASIC FORM SCSS
********************************************************/
.form-styles {
  position: relative;
}
.form-styles :invalid,
.form-styles :-moz-submit-invalid,
.form-styles :-moz-ui-invalid {
  box-shadow: none;
}
.form-styles {
  display: block;
  width: 100%;
}
@media (max-width: 1024px) {
  .form-styles .half,
  .form-styles .fourth {
    width: 100% !important;
  }
}
.form-styles div.fielditem {
  position: relative;
  padding: 0 0 2em;
}
@media (max-width: 1024px) {
  .form-styles div.fielditem {
    padding: 0 0 1.5em;
  }
}
.form-styles div.fielditem.fieldlist {
  padding-bottom: 0;
}
.form-styles div.fielditem.focused label {
  transform: translateY(-125%);
  font-size: 0.75em;
  left: 5px;
}
.form-styles div.fieldinput label {
  position: absolute;
  left: 0;
  bottom: 55%;
  font-size: 17px;
  padding: 0;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.form-styles div.fieldinput.focused label {
  transform: translateY(-200%);
  font-size: 0.75em;
}
.form-styles div.fieldinput.focused#comments-input label {
  transform: translateY(-100%);
}
.form-styles div.fieldinput#comments-input {
  margin-top: 1em;
}
.form-styles div.fieldinput#comments-input textarea {
  border: 1px solid inherit;
}
.form-styles div.fieldinput#comments-input label {
  bottom: auto;
  top: 0.5em;
  left: 0.5em;
}
.form-styles div.fieldinput#comments-input.focused label {
  transform: translate(-0.5em, -200%);
  font-size: 0.75em;
}
.form-styles label {
  font-size: 17px;
  line-height: 1.25em;
  padding: 0.5 0.75em;
  z-index: 10;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.form-styles label.full {
  width: 10%;
  display: block;
}
.form-styles input[type=text], .form-styles input[type=email] {
  width: 100%;
  position: relative;
  background: none;
  padding: 0.75em 0.25em;
  border: none;
  font-size: 16px;
  z-index: 15;
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}
.form-styles .required-highlight {
  position: relative;
}
.form-styles .required-highlight:after {
  font-family: "Font Awesome 6 Pro";
  content: "\f06a";
  font-weight: 900;
  position: absolute;
  top: 0;
  right: 0;
  color: #ff0f0f;
  background-color: #ffffff;
  border-radius: 50%;
  border: 2px solid white;
  width: 20px;
  height: 20px;
  font-size: 16px;
}
.form-styles .required-highlight .control__indicator {
  border: 1px solid #ff0f0f;
}
.form-styles .required-highlight label.control {
  margin-left: 0;
}
.form-styles .select.required-highlight select {
  color: #ff0f0f;
  border-bottom: 1px solid #ff0f0f;
}
.form-styles .select.required-highlight .select__arrow {
  border-color: #ff0f0f transparent transparent transparent;
}
.form-styles .required-highlight label,
.form-styles label.required-highlight {
  /*margin-left: 10px;*/
}
.form-styles textarea {
  width: 100%;
  background: none;
  border: none;
  padding: 0.75em 0.25em;
  font-family: "montserrat", Arial, Helvetica, sans-serif;
  font-size: 16px;
  resize: none;
  height: 7em;
  overflow: auto;
  -webkit-transition: 0.2s all ease-in-out;
  -moz-transition: 0.2s all ease-in-out;
  -ms-transition: 0.2s all ease-in-out;
  -o-transition: 0.2s all ease-in-out;
  transition: 0.2s all ease-in-out;
}

/* CONTROL GROUP */
.control-group .full {
  margin-bottom: 1em;
}
.control-group {
  display: inline-block !important;
  vertical-align: top !important;
  text-align: left !important;
}

.control {
  display: block;
  position: relative;
  padding: 0 0 0 30px !important;
  margin-bottom: 0.9em !important;
  cursor: pointer;
}
.control input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.control__indicator {
  position: absolute;
  top: -3px;
  left: 0;
  height: 20px;
  width: 20px;
  border: 1px solid #ffffff;
  border-radius: 10px;
}

.control--radio .control__indicator {
  border-radius: 50%;
}

.control:hover input ~ .control__indicator {
  background: none;
}
.control input:focus ~ .control__indicator {
  background: none;
}
.control input:checked ~ .control__indicator {
  background: #ffffff !important;
}
.control input:checked ~ .control__indicator:after {
  font-family: "Font Awesome 5 Pro";
  content: "\f00c";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  text-align: center;
  padding-top: 25%;
  border: none;
}
.control:hover input:not([disabled]):checked ~ .control__indicator {
  background: none;
}
.control input:checked:focus ~ .control__indicator {
  background: none;
}
.control input:disabled ~ .control__indicator {
  background: #e6e6e6;
  opacity: 0.7;
  pointer-events: none;
}

.control__indicator:after {
  content: "";
  position: absolute;
  display: none;
}

.control input:checked ~ .control__indicator:after {
  display: block;
}

.checkboxitem {
  display: inline-block;
  margin-left: 0;
  vertical-align: sub;
}

.double-height-checkbox .checkboxitem label {
  padding: 0 0 0 50px !important;
  user-select: none;
}
.double-height-checkbox .control__indicator {
  height: 35px;
  width: 35px;
  border-radius: 0;
  border-width: 2px;
}

.control--checkbox {
  margin-left: 0 !important;
}
.control--checkbox .control__indicator {
  top: 0;
}
.control--checkbox .control__indicator:after {
  left: 7px;
  top: 3px;
  width: 5px;
  height: 10px;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.control--radio .control__indicator:after {
  left: 6px;
  top: 6px;
  height: 6px;
  width: 6px;
  border-radius: 50%;
}
.control--radio input:disabled ~ .control__indicator:after {
  background: #7b7b7b;
}
.control--radio input:checked ~ .control__indicator:after {
  padding-top: 10%;
  font-size: 13px;
}

.room-info-title {
  margin: 1em 0 1em;
  font-weight: 600;
}

.select {
  position: relative;
  display: inline-block;
  width: 100%;
}
.select label {
  transform: translateY(-90%) !important;
  font-size: 0.75em !important;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease;
  -moz-transition: opacity 0.5s ease;
  -ms-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  pointer-events: none;
  cursor: default;
}
.select select {
  display: inline-block;
  width: 100%;
  padding: 10px 15px;
  cursor: pointer;
  border: 0;
  border-radius: 0;
  outline: 0;
  font-size: 1em;
  font-weight: 300;
  padding: 0.7em 0;
  background: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  height: 44px;
}
.select.focused label {
  opacity: 1;
}
.select::-ms-expand {
  display: none;
}
.select:disabled {
  pointer-events: none;
  opacity: 0.5;
}
.select .select__arrow {
  position: absolute;
  bottom: 18px;
  right: 15px;
  width: 0;
  height: 0;
  pointer-events: none;
  border-width: 0 2px 2px 0;
  padding: 6px;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  /* SOLID ARROW */
}
.select:disabled ~ .select__arrow {
  border-top-color: #ccc;
}

.form-submit {
  position: relative;
}
.form-submit .required-text {
  position: absolute;
  right: 1em;
  top: 0.75em;
  display: inline-block;
  text-align: left;
}
@media (max-width: 768px) {
  .form-submit .required-text {
    right: 0;
    top: auto;
    position: relative;
    display: block;
    text-align: center;
    margin-top: 1.5rem;
  }
}

a.submit-button {
  margin: 2rem auto 0;
  text-align: center;
  position: relative;
  text-decoration: none;
}
@media (max-width: 1024px) {
  a.submit-button {
    text-align: left;
  }
}

.process,
.success {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  text-align: center;
}

.process h2,
.process .form-loader,
.success h2 {
  font-size: 2.25em;
  margin: 0 0 0.5em 0;
  padding: 0;
  text-align: center;
  color: #ffffff;
}

.process p,
.success p {
  color: #ffffff;
  text-align: center;
  margin: 0;
  padding: 0;
}

.process .form-loader {
  margin: 1rem auto 0;
}

.alert {
  background-color: #ffffff;
  text-align: center;
  clear: both;
  padding: 1em;
  margin: 0.9em 0;
  margin-bottom: 1.5em;
}
.alert p {
  margin: 0;
  padding: 0;
  color: #ff0f0f;
  text-transform: uppercase;
}

input:-webkit-autofill,
input:-webkit-autofill:focus {
  transition: background-color 0s 600000s, color 0s 600000s !important;
}

.form-section {
  overflow: hidden;
}

.grecaptcha-badge {
  visibility: hidden !important;
  opacity: 0 !important;
  display: none !important;
}

/*# sourceMappingURL=content-form.css.map */
