.elementor-208 .elementor-element.elementor-element-52db427{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-field-type-html{padding-bottom:0px;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-button[type="submit"]{color:#ffffff;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-208 .elementor-element.elementor-element-be8c2f1 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-208 .elementor-element.elementor-element-be8c2f1{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}#elementor-popup-modal-208 .dialog-widget-content{animation-duration:0.5s;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-208{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-208 .dialog-message{width:520px;height:auto;}#elementor-popup-modal-208 .dialog-close-button{display:flex;}/* Start custom CSS for container, class: .elementor-element-52db427 *//* POPUP – ULKOKUORI */

.sauna-contact-popup {
  background:
    radial-gradient(circle at top left, rgba(196,154,108,0.16), transparent 34%),
    linear-gradient(180deg, #F4F0E8 0%, #E9E0D2 100%);
  border: 1px solid rgba(83,68,48,0.18);
  border-radius: 18px;
  padding: 34px 32px 30px;
  box-shadow: 0 24px 76px rgba(0,0,0,0.34);
  max-width: 520px;
  overflow: hidden;
}

/* OTSIKKO */

.sauna-contact-popup .elementor-heading-title {
  color: #2B241D;
  font-size: 28px;
  line-height: 1.08;
  font-weight: 600;
  letter-spacing: -0.02em;
  margin: 0 0 10px;
}

/* KORISTEVIIVA OTSIKON ALLE */

.sauna-contact-popup .elementor-heading-title::after {
  content: "";
  display: block;
  width: 160px;
  height: 1px;
  margin: 14px 0 14px;
  background: linear-gradient(
    90deg,
    rgba(196,154,108,0.95),
    rgba(196,154,108,0.35),
    rgba(196,154,108,0)
  );
}

/* INGRESSI */

.sauna-contact-popup .elementor-widget-text-editor p {
  color: rgba(43,36,29,0.78);
  font-size: 15px;
  line-height: 1.45;
  margin: 0 0 22px;
}

/* LOMAKE – YLEISET */

.sauna-contact-form {
  margin-top: 4px;
}

.sauna-contact-form .elementor-form-fields-wrapper {
  row-gap: 11px;
}

.sauna-contact-form .elementor-field-group {
  margin-bottom: 0 !important;
  padding: 0 !important;
}

/* LABELIT */

.sauna-contact-form .elementor-field-label {
  color: rgba(43,36,29,0.72);
  font-size: 12px;
  line-height: 1.2;
  font-weight: 600;
  margin-bottom: 6px;
  letter-spacing: 0.02em;
}

/* KENTÄT */

.sauna-contact-form input,
.sauna-contact-form textarea,
.sauna-contact-form select {
  background: rgba(255,255,255,0.62) !important;
  border: 1px solid rgba(83,68,48,0.18) !important;
  border-radius: 10px !important;
  color: #2B241D !important;

  padding: 12px 13px !important;
  font-size: 14px !important;
  line-height: 1.25 !important;

  box-shadow: inset 0 1px 0 rgba(255,255,255,0.65) !important;
  outline: none !important;
  transition: border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}

.sauna-contact-form textarea {
  min-height: 108px;
  resize: vertical;
}

.sauna-contact-form input:focus,
.sauna-contact-form textarea:focus,
.sauna-contact-form select:focus {
  background: rgba(255,255,255,0.82) !important;
  border-color: rgba(47,74,50,0.55) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.7),
    0 0 0 3px rgba(47,74,50,0.12) !important;
}

/* PLACEHOLDERIT */

.sauna-contact-form input::placeholder,
.sauna-contact-form textarea::placeholder {
  color: rgba(43,36,29,0.42);
}

/* CHECKBOX / RADIO JOS LISÄÄT MYÖHEMMIN */

.sauna-contact-form .elementor-field-option {
  color: rgba(43,36,29,0.76);
  font-size: 13px;
  line-height: 1.35;
}

.sauna-contact-form input[type="checkbox"],
.sauna-contact-form input[type="radio"] {
  width: auto !important;
  accent-color: #2f4a32;
}

/* LÄHETYSNAPPI */

.sauna-contact-form .elementor-field-type-submit {
  margin-top: 4px;
}

.sauna-contact-form .elementor-button {
  width: 100%;
  background: linear-gradient(135deg, #2F4A32 0%, #1F3324 100%) !important;
  color: #F7F1E6 !important;

  border: 1px solid rgba(196,154,108,0.48);
  border-radius: 999px;

  padding: 13px 18px;
  font-size: 15px;
  line-height: 1.15;
  font-weight: 600;
  letter-spacing: 0.01em;

  box-shadow: 0 10px 24px rgba(0,0,0,0.18);
  transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease;
}

.sauna-contact-form .elementor-button:hover {
  transform: translateY(-1px);
  background: linear-gradient(135deg, #38593D 0%, #253D2B 100%) !important;
  color: #FFF8EA !important;
  box-shadow: 0 14px 30px rgba(0,0,0,0.24);
}

.sauna-contact-form .elementor-button:active {
  transform: translateY(0);
}

/* VIRHE- JA ONNISTUMISVIESTIT */

.sauna-contact-form .elementor-message {
  margin-top: 12px;
  font-size: 13px;
  line-height: 1.35;
  border-radius: 9px;
  padding: 10px 12px;
}

.sauna-contact-form .elementor-message-success {
  background: rgba(47,74,50,0.12);
  color: #263A2A;
}

.sauna-contact-form .elementor-message-danger {
  background: rgba(120,42,32,0.10);
  color: #6E2C22;
}

/* POPUPIN SULKUNAPPI */

.dialog-close-button {
  color: rgba(43,36,29,0.58) !important;
  font-size: 20px !important;
  top: 18px !important;
  right: 18px !important;
}

.dialog-close-button:hover {
  color: #2B241D !important;
}

/* MOBIILI */

@media (max-width: 767px) {
  .sauna-contact-popup {
    max-width: calc(100vw - 28px);
    padding: 26px 20px 22px;
    border-radius: 15px;
  }

  .sauna-contact-popup .elementor-heading-title {
    font-size: 23px;
  }

  .sauna-contact-popup .elementor-heading-title::after {
    width: 130px;
    margin: 12px 0 12px;
  }

  .sauna-contact-popup .elementor-widget-text-editor p {
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 18px;
  }

  .sauna-contact-form .elementor-form-fields-wrapper {
    row-gap: 9px;
  }

  .sauna-contact-form .elementor-field-label {
    font-size: 11px;
    margin-bottom: 5px;
  }

  .sauna-contact-form input,
  .sauna-contact-form textarea,
  .sauna-contact-form select {
    padding: 11px 12px !important;
    font-size: 14px !important;
  }

  .sauna-contact-form textarea {
    min-height: 92px;
  }

  .sauna-contact-form .elementor-button {
    padding: 12px 16px;
    font-size: 14px;
  }

  .dialog-close-button {
    top: 13px !important;
    right: 13px !important;
  }
}/* End custom CSS */