@charset "UTF-8";
/*$globalBodyFont:;
$globalHeadingFont:;*/
.pin-login, .login {
  display: block;
  text-align: center;
  z-index: 201;
  background: #fff;
  border-radius: 5px;
  width: 90%;
  max-width: 700px;
  position: relative;
  top: 20px;
  padding: 40px 20px 20px 20px;
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.15);
}

.portal-container, .portal--content {
  padding: 1rem;
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.15);
  border-radius: 0.2rem;
  background: #fff;
}

html {
  height: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-size: 100%;
}

body {
  font-size: 1em;
  line-height: 1.5em;
  font-family: 'Segoe UI', Calibri, arial, Verdana, Helvetica, sans-serif;
  color: #333333;
  height: 100%;
  background: #f1f5f8;
  font-weight: 400;
  margin: 0;
  padding: 0;
  padding-bottom: 40px;
}

a {
  outline: none !important;
}

a:active, a:focus, a:hover {
  text-decoration: none;
}

h1 {
  font-weight: bold;
  color: #000;
  font-size: 2em;
  margin-top: 0;
}

h2 {
  font-weight: bold;
  color: #000;
  font-size: 1.8em;
}

h3,
.h3 {
  font-weight: bold;
  color: #000 !important;
  font-size: 1.3em;
}

h4 {
  margin-top: 25px;
  float: left;
  clear: both;
}

label {
  margin-bottom: 2px;
}

.kalenteri_ilmo {
  background: #fff url("images/calendar_icon_active.png") no-repeat center;
  width: 80px;
  height: 35px;
  border: none;
}

.legend-ilmo {
  margin-bottom: 3px;
  font-size: unset;
  color: unset;
  border: unset;
  border-bottom: unset;
  font-weight: unset;
}

.lohko-btn.copy-subcustomer,
.lohko-btn.copy-customer {
  display: none !important;
}

#deleteMainCustomer {
  display: none !important;
}

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.row-spacing {
  margin-bottom: 10px;
}

.row-spacing:after {
  display: block;
  content: '';
  clear: both;
}

tbody.striped tr:nth-child(odd) {
  background-color: #f5f9fa;
}

tbody.striped tr:last-child {
  background-color: unset;
}

.clear-both {
  clear: both;
}

.glyphicon {
  padding-right: 4px;
}

.glyphicon-flip-y {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
  -webkit-transform: scale(-1, 1);
  -moz-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  -o-transform: scale(-1, 1);
  transform: scale(-1, 1);
  padding-right: 0;
  padding-left: 4px;
}

.glyphicon-noPadding {
  padding-left: 0;
  padding-right: 0;
}

.ui-checkbox .ui-btn,
.ui-checkbox-off:hover,
.ui-checkbox-off:focus,
.ui-checkbox-off:active,
.ui-checkbox-on:hover,
.ui-checkbox-on:focus,
.ui-checkbox-on:active {
  height: auto;
}

.ui-radio .ui-btn,
.ui-radio-off:hover,
.ui-radio-off:focus,
.ui-radio-off:active,
.ui-radio-on:hover,
.ui-radio-on:focus,
.ui-radio-on:active {
  height: auto;
}

.flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100%;
  flex-direction: column;
  height: 20px;
}

.flex-center-y {
  display: flex;
  justify-content: center;
  margin-right: -5px;
}

.flex-center-y > button {
  margin: 0;
  margin-right: 5px;
}

.flex-row {
  display: flex;
  flex-direction: row;
}

.flex-row-spacebetween {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.flex-row-center {
  display: flex;
  flex-direction: row;
  justify-content: center;
}

.flex-row-a-center {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.flex-column {
  display: flex;
  flex-direction: column;
}

.flex-child {
  flex: 1 auto;
}

.flex-child-small {
  width: 40px;
  flex: 0 0 40px;
}

.flex-child-tiny {
  width: 40px;
  flex: 0 0 40px;
  height: 25px;
}

.flex-item + .flex-item {
  margin-left: 15px;
}

.flex-fill {
  flex: 1 1 auto;
}

.autoRight {
  float: right !important;
  width: auto !important;
}

.autoLeft {
  float: left !important;
  width: auto !important;
}

.heroBackground {
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center !important;
  background-attachment: fixed !important;
}

.heading {
  color: #5b9943;
  width: 100%;
  display: block;
  text-align: center;
  font-weight: 700;
}

.cb-css [type='checkbox']:not(:checked),
.cb-css [type='checkbox']:checked {
  position: absolute;
  left: -9999px;
}

.cb-css [type='checkbox']:not(:checked):disabled + [type='hidden'] + label,
.cb-css [type='checkbox']:checked:disabled + [type='hidden'] + label {
  color: #999;
  cursor: not-allowed;
}

.cb-css [type='checkbox']:not(:checked):disabled + [type='hidden'] + label:before,
.cb-css [type='checkbox']:checked:disabled + [type='hidden'] + label:before {
  opacity: 0.7;
}

.cb-css [type='checkbox']:not(:checked):disabled + [type='hidden'] + label:after,
.cb-css [type='checkbox']:checked:disabled + [type='hidden'] + label:after {
  filter: grayscale(0.7);
}

.cb-css [type='checkbox']:not(:checked) + [type='hidden'] + label,
.cb-css [type='checkbox']:checked + [type='hidden'] + label {
  position: relative;
  padding: 8px 8px 8px 45px;
  cursor: pointer;
  height: auto;
  min-height: 30px;
  line-height: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.cb-css [type='checkbox']:not(:checked) + [type='hidden'] + label:hover,
.cb-css [type='checkbox']:checked + [type='hidden'] + label:hover {
  background-color: #f3f6f7;
  border-radius: 5px;
}

.cb-css [type='checkbox']:not(:checked) + [type='hidden'] + label:before,
.cb-css [type='checkbox']:checked + [type='hidden'] + label:before {
  content: url(images/checki.png);
  position: absolute;
  left: 8px;
  top: 50%;
  transform: translate(0, -50%);
  width: 28px;
  height: 27px;
}

.cb-css [type='checkbox']:not(:checked) + [type='hidden'] + label:after,
.cb-css [type='checkbox']:checked + [type='hidden'] + label:after {
  content: url(images/checked.png);
  position: absolute;
  left: 8px;
  top: 50%;
  transform: translate(0, -50%);
  width: 28px;
  height: 27px;
}

.cb-css [type='checkbox']:focus + [type='hidden'] + label {
  box-shadow: 0 0 4px #75ab35;
}

.cb-css [type='checkbox']:not(:checked) + [type='hidden'] + label:after {
  opacity: 0;
}

.cb-css [type='checkbox']:checked + [type='hidden'] + label:after {
  opacity: 1;
}

.btn-blue {
  height: 36px !important;
  line-height: 14px;
  margin: 0;
  border: 1px solid #cbe0e8;
  padding: 10px 15px;
  border-radius: 3px;
  text-transform: uppercase;
  background: #fff;
  color: #69a4cc;
  float: left;
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  width: auto;
}

.btn-blue:hover {
  background: #ecf5f9 !important;
}

.btn-blue:focus {
  box-shadow: 0 0 6px #38c;
  border: 1px solid #38c;
}

.btn-blue.disabled {
  opacity: 0.5;
  pointer-events: none;
}

.btn-green {
  background-color: #6eb068;
  color: #fff !important;
  font-size: 14px;
  border: 2px solid transparent;
  font-weight: bold;
  float: left;
  height: 30px;
  width: auto;
  min-width: 120px;
  padding: 5px 10px;
  border-radius: 3px;
  text-align: center;
  line-height: 15px;
  text-transform: uppercase;
}

.btn-green:hover, .btn-green:active {
  background-color: #83c37c;
  text-decoration: none;
}

.btn-green:focus {
  box-shadow: 0 0 6px #4696d7;
  border: 2px solid #d8efed;
}

.btn-green + .btn-green {
  margin-left: 7px;
}

.btn-green.disabled {
  opacity: 0.5;
  pointer-events: none;
}

.btn-green.disabledlink {
  opacity: 0.5;
  pointer-events: none;
}

.SumoSelect {
  width: 100% !important;
}

.SumoSelect:focus {
  box-shadow: 0 0 5px #38c;
}

.SumoSelect:focus > select + p {
  border: 1px solid transparent !important;
}

.SumoSelect > .CaptionCont {
  background: #fff none repeat scroll 0 0;
  border: 1px solid #cccccc !important;
  border-radius: 4px !important;
  color: #000;
  height: 30px !important;
  margin: 0;
  padding: 0;
  text-align: left;
  line-height: 1.2;
}

.SumoSelect > .CaptionCont > span {
  padding: 5px 0 0 5px;
}

.SumoSelect > .CaptionCont > label > i {
  background-size: contain;
  width: 9px !important;
  height: 9px !important;
}

.SumoSelect > select:disabled + p {
  color: #999;
  border: 1px solid rgba(0, 0, 0, 0.1) !important;
  background-color: #f3f4f6;
}

.SumoSelect:hover > select:disabled + p,
.SumoSelect:focus > select:disabled + p {
  box-shadow: none;
}

.SumoSelect.open > .optWrapper {
  top: 30px !important;
}

.SumoSelect .optWrapper label {
  padding: 3px 0;
}

.croppie-container .cr-resizer-vertical::after,
.croppie-container .cr-resizer-horisontal::after {
  border: 2px solid #fff !important;
  background: #5b9943 !important;
  width: 15px !important;
  height: 15px !important;
  border-radius: 15px !important;
}

.croppie-container .cr-resizer-horisontal::after {
  height: 60px !important;
  margin-top: -30px !important;
}

.croppie-container .cr-resizer-vertical::after {
  width: 60px !important;
  margin-left: -30px !important;
}

.cr-boundary {
  background-color: #444;
}

.field-validation-error {
  color: #a94442;
  font-weight: bold;
}

.field-validation-valid {
  display: none;
}

.input-validation-error {
  border: 1px solid #a94442;
  background-color: #fee;
}

.validation-summary-errors {
  font-weight: bold;
  color: #a94442;
}

.validation-summary-valid {
  display: none;
}

.registration-onsite-content {
  width: 90%;
  max-width: 1300px;
  margin: 10% auto 0 auto;
  clear: both;
}

.registration-onsite-content .onsite-btn {
  width: 100%;
  padding: 3em !important;
  border: 3px white solid !important;
  box-shadow: 4px 4px 5px 5px #dadada;
  transition: background-color 0.2s linear 0s, box-shadow 0.2s linear 0s;
  border-radius: 10px !important;
  margin-top: 90px;
  text-transform: none;
  background: linear-gradient(to bottom, #75ab35 0%, #5b9943 100%);
}

.registration-onsite-content .onsite-btn:hover {
  border-color: white !important;
  box-shadow: 0 0 5px 5px #6eb068 !important;
}

.registration-onsite-content .onsite-btn .onsite-major {
  font-size: 26px;
  line-height: 26px;
  font-weight: 700 !important;
}

.registration-onsite-content .onsite-btn .onsite-minor {
  margin-top: 15px;
  font-size: 22px;
  font-weight: 500 !important;
}

.custom {
  display: inline-block;
  height: 26px;
  width: 26px;
}

.custom input[type='checkbox']:not(:checked),
.custom input[type='checkbox']:checked {
  position: absolute;
  left: -9999px;
}

.custom input[type='checkbox']:not(:checked):disabled + [type='hidden'] + label,
.custom input[type='checkbox']:checked:disabled + [type='hidden'] + label {
  color: #999;
  cursor: not-allowed;
}

.custom input[type='checkbox']:not(:checked):disabled + [type='hidden'] + label:before,
.custom input[type='checkbox']:checked:disabled + [type='hidden'] + label:before {
  opacity: 0.7;
}

.custom input[type='checkbox']:not(:checked):disabled + [type='hidden'] + label:after,
.custom input[type='checkbox']:checked:disabled + [type='hidden'] + label:after {
  filter: grayscale(0.7);
}

.custom input[type='checkbox']:not(:checked) + label,
.custom input[type='checkbox']:checked + label {
  display: infline-flex;
  position: relative;
  cursor: pointer;
  height: 26px;
  width: 26px;
  line-height: 26px;
  flex-direction: column;
  justify-content: center;
  user-select: none;
}

.custom input[type='checkbox']:not(:checked) + label:hover,
.custom input[type='checkbox']:checked + label:hover {
  background-color: #f3f6f7;
  border-radius: 5px;
}

.custom input[type='checkbox']:not(:checked) + label:before,
.custom input[type='checkbox']:checked + label:before {
  content: '';
  position: absolute;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border: 1px solid black;
  width: 26px;
  height: 26px;
}

.custom input[type='checkbox']:not(:checked) + label:after,
.custom input[type='checkbox']:checked + label:after {
  content: '✓';
  position: absolute;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 26px;
  height: 26px;
}

.custom.style_thumb input[type='checkbox']:not(:checked) + label::after,
.custom.style_thumb input[type='checkbox']:checked + label::after {
  content: "👍";
}

.custom.style_heart input[type='checkbox']:not(:checked) + label::after,
.custom.style_heart input[type='checkbox']:checked + label::after {
  content: "❤️";
}

.custom.style_star input[type='checkbox']:not(:checked) + label::after,
.custom.style_star input[type='checkbox']:checked + label::after {
  content: "⭐";
}

.custom input[type='checkbox']:focus + label {
  box-shadow: 0 0 4px #222;
}

.custom input[type='checkbox']:not(:checked) + label:after {
  opacity: 0;
}

.custom input[type='checkbox']:checked + label:after {
  opacity: 1;
}

input[type='range'].themerange {
  width: 100%;
  max-width: 400px;
  margin: -1px 0;
  background-color: transparent;
  -webkit-appearance: none;
}

input[type='range'].themerange:focus {
  outline: none;
}

input[type='range'].themerange::-webkit-slider-runnable-track {
  background: #edf5f7;
  border: 0;
  border-radius: 25px;
  width: 100%;
  height: 14px;
  cursor: pointer;
}

input[type='range'].themerange::-webkit-slider-thumb {
  margin-top: 1px;
  width: 22px;
  height: 22px;
  background: #a7cfd5;
  border: 2.9px solid #93b5ba;
  border-radius: 100%;
  cursor: pointer;
  -webkit-appearance: none;
}

input[type='range'].themerange:focus::-webkit-slider-runnable-track {
  background: #713d47;
}

input[type='range'].themerange::-moz-range-track {
  background: #edf5f7;
  border: 0;
  border-radius: 25px;
  width: 100%;
  height: 14px;
  cursor: pointer;
}

input[type='range'].themerange::-moz-range-thumb {
  width: 22px;
  height: 22px;
  background: #a7cfd5;
  border: 2.9px solid #93b5ba;
  border-radius: 100%;
  cursor: pointer;
}

input[type='range'].themerange::-ms-track {
  background: transparent;
  border-color: transparent;
  border-radius: 25px;
  border-width: 0.8px 0;
  color: transparent;
  width: 100%;
  height: 14px;
  cursor: pointer;
}

input[type='range'].themerange::-ms-fill-lower {
  background: #1b0f11;
  border: 0;
  border-radius: 50px;
}

input[type='range'].themerange::-ms-fill-upper {
  background: #edf5f7;
  border: 0;
  border-radius: 50px;
}

input[type='range'].themerange::-ms-thumb {
  width: 22px;
  height: 22px;
  background: #a7cfd5;
  border: 2.9px solid #93b5ba;
  border-radius: 100%;
  cursor: pointer;
  margin-top: 0px;
  /*Needed to keep the Edge thumb centred*/
}

input[type='range'].themerange:focus::-ms-fill-lower {
  background: #edf5f7;
}

input[type='range'].themerange:focus::-ms-fill-upper {
  background: #713d47;
}

@supports (-ms-ime-align: auto) {
  input[type='range'].themerange {
    margin: 0;
  }
}

.rating-limit-text {
  font-family: 'Font Awesome 5 Free';
  display: inline-block;
  color: gray;
  font-size: 0.9rem;
}

.star-rating {
  font-family: 'Font Awesome 5 Free';
}

.star-rating .star-rating__low-description {
  margin-right: 0.5rem;
  display: inline-block;
  color: gray;
  font-size: 0.9rem;
}

.star-rating .star-rating__high-description {
  margin-right: 0.5rem;
  display: inline-block;
  color: gray;
  font-size: 0.9rem;
}

.star-rating .star-rating-mobile__descs {
  display: none;
}

.star-rating .star-rating-mobile__hilodesc {
  display: inline-block;
  color: gray;
  font-size: 0.9rem;
}

.star-rating > fieldset.star-rating__radios {
  border: none;
  display: inline-block;
  margin: 0;
  padding: 0;
}

.star-rating > fieldset.star-rating__radios:not(:checked) > input {
  position: absolute;
  visibility: hidden;
  clip: rect(0, 0, 0, 0);
}

.star-rating > fieldset.star-rating__radios:not(:checked) > label {
  float: right;
  width: auto;
  padding: 0 0.05em;
  overflow: visible;
  white-space: nowrap;
  cursor: pointer;
  font-size: 170%;
  color: #a7cfd5;
  font-weight: 900;
}

.star-rating > fieldset.star-rating__radios:not(:checked) > label:hover,
.star-rating > fieldset.star-rating__radios:not(:checked) > label:hover ~ label {
  color: #e9f3f5;
  text-shadow: 0 0 3px #e9f3f5;
}

.star-rating > fieldset.star-rating__radios > label:active {
  position: relative;
  top: 2px;
}

.star-rating > fieldset.star-rating__radios.showpoints input + label {
  position: relative;
  width: 2.7rem;
}

.star-rating > fieldset.star-rating__radios.showpoints input + label::after {
  position: absolute;
  content: attr(data-points);
  /*border: 1px solid black;*/
  font-size: 0.8rem;
  color: gray !important;
  top: 1.9rem;
  left: 0;
  text-shadow: none !important;
}

.star-rating > fieldset.star-rating__radios:not(:checked) > label:before {
  content: "";
  font-weight: 400;
}

.star-rating > fieldset.star-rating__radios:not(:checked) > label:hover,
.star-rating > fieldset.star-rating__radios:not(:checked) > label:hover ~ label:before {
  content: "";
  font-weight: 900;
}

.star-rating > fieldset.star-rating__radios > input:checked ~ label:before {
  content: "";
  font-weight: 900;
}

.star-rating > fieldset.star-rating__radios.style--thumbs:not(:checked) > label:before {
  content: "";
  font-weight: 400;
}

.star-rating > fieldset.star-rating__radios.style--thumbs:not(:checked) > label:hover,
.star-rating > fieldset.star-rating__radios.style--thumbs:not(:checked) > label:hover ~ label:before {
  content: "";
  font-weight: 900;
}

.star-rating > fieldset.star-rating__radios.style--thumbs > input:checked ~ label:before {
  content: "";
  font-weight: 900;
}

.star-rating > fieldset.star-rating__radios.style--hearts:not(:checked) > label:before {
  content: "";
  font-weight: 400;
}

.star-rating > fieldset.star-rating__radios.style--hearts:not(:checked) > label:hover,
.star-rating > fieldset.star-rating__radios.style--hearts:not(:checked) > label:hover ~ label:before {
  content: "";
  font-weight: 900;
}

.star-rating > fieldset.star-rating__radios.style--hearts > input:checked ~ label:before {
  content: "";
  font-weight: 900;
}

.star-rating > fieldset.star-rating__radios.style--balls:not(:checked) > label:before {
  content: "";
  font-weight: 400;
}

.star-rating > fieldset.star-rating__radios.style--balls:not(:checked) > label:hover,
.star-rating > fieldset.star-rating__radios.style--balls:not(:checked) > label:hover ~ label:before {
  content: "";
  font-weight: 900;
}

.star-rating > fieldset.star-rating__radios.style--balls > input:checked ~ label:before {
  content: "";
  font-weight: 900;
}

.star-rating > fieldset.star-rating__radios.style--jquerymobile > input ~ label::before {
  content: '' !important;
  width: 34px;
  height: 26px;
  display: block;
}

.star-rating > fieldset.star-rating__radios.style--jquerymobile:not(:checked) > label:before {
  background: url("./images/radio_feedback_bg.png") no-repeat left;
}

.star-rating > fieldset.star-rating__radios.style--jquerymobile > input:checked + label:before {
  background: url("./images/radio_feedback_image.png") no-repeat left;
}

.star-rating > fieldset.star-rating__radios.style--default > input {
  position: static;
  visibility: visible;
  clip: unset;
  min-width: 2.2rem;
}

.star-rating > fieldset.star-rating__radios.style--default:not(:checked) > label:before {
  content: "";
  font-weight: 400;
}

.star-rating > fieldset.star-rating__radios.style--default:not(:checked) > label:hover,
.star-rating > fieldset.star-rating__radios.style--default:not(:checked) > label:hover ~ label:before {
  content: "";
  font-weight: 900;
}

.star-rating > fieldset.star-rating__radios.style--default > input:checked ~ label:before {
  content: "";
  font-weight: 900;
}

@media only screen and (max-width: 480px) {
  .feedback__question-block {
    margin-bottom: 1.5rem;
    min-height: 3.25rem;
  }
  .star-rating .star-rating__low-description {
    display: none;
  }
  .star-rating .star-rating__high-description {
    display: none;
  }
  .star-rating .star-rating-mobile__descs {
    display: flex;
    justify-content: space-between;
  }
}

@media only screen and (max-width: 400px) {
  .star-rating > fieldset.star-rating__radios:not(:checked) > label {
    float: right;
    width: auto;
    padding: 0 0.05em;
    overflow: visible;
    white-space: nowrap;
    cursor: pointer;
    font-size: 130%;
    color: #a7cfd5;
    font-weight: 900;
  }
}

#toast-container .toast {
  position: relative;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  font-size: 18px;
  text-align: left;
  width: 100%;
  min-width: 350px;
  max-width: 500px;
}

#toast-container .toast-warning {
  background-color: #a94442;
}

#toast-container .toast-error {
  background-color: #a94442;
}

#toast-container .toast-info {
  background-color: #38c;
}

#toast-container .toast-success {
  background-color: #75ab35;
}

#toast-container .toast-top-right {
  top: 94px;
}

.modal-dialog button.btn_link {
  width: auto;
  float: right;
}

.modal-body {
  min-height: 75px;
}

.inline-txt {
  display: inline;
}

.modal-login-wrap {
  display: block;
  width: 100%;
  padding: 0 35px 20px;
}

.login .modal-login-wrap {
  padding: 0;
}

.modal-login-wrap .center-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: auto;
}

.payment-wrap {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 15px 15px 0 25px;
  justify-content: center;
  align-items: center;
  border-top: 1px solid #5b9943;
}

.payment-wrap .payment-method {
  flex: 0 0 90px;
  margin: 5px;
  width: 90px;
  height: 90px;
  display: flex;
  justify-content: center;
  align-content: center;
}

.payment-wrap .payment-method label {
  padding: 5px;
}

.payment-wrap .payment-method label img {
  width: 100%;
}

.pin-login {
  padding: 1.5rem;
  max-width: 600px;
}

.pin-login .wrap-pin-fields {
  display: flex;
  flex-direction: row;
  justify-content: center;
}

.pin-login .wrap-pin-fields .pin-fields {
  max-width: 300px;
}

.pin-login .wrap-pin-fields .pin-fields .form-control {
  max-width: 300px;
  margin-bottom: 0.9rem;
  height: 35px;
  text-align: center;
}

.pin-login .wrap-pin-fields .pin-fields .btn-green {
  max-width: 300px;
  width: 100%;
  margin-bottom: 0.9rem;
  height: 35px;
}

.registrationOnsite-body .registrationOnsite-language-wrapper .languagelink img {
  width: 34px;
  height: 34px;
  margin: 4px 12px;
}

.portal-container {
  clear: both;
}

.portal-container:after {
  display: table;
  content: '';
  clear: both;
}

.portal--content {
  width: 95%;
  max-width: 1300px;
  margin: 0 auto;
  clear: both;
}

.portal--content:after {
  display: table;
  content: '';
  clear: both;
}

.portal--content.subordinates {
  max-width: 100%;
}

.portal--content .toimintopainikkeet {
  position: static;
}

.portal--content .portal--content {
  padding: 0;
  border-radius: 0;
  box-shadow: none;
}

.ingress--wrapper {
  text-align: left;
}

.external--links--wrapper {
  display: flex;
  padding: 1rem;
  border: #99c4e6 solid 0.2rem;
  background-color: #e0edf7;
  border-radius: 0.2rem;
  align-items: center;
}

.external--links--wrapper > .external--link--img {
  flex: 0 0 auto;
  transition: opacity 0.2s ease-in-out;
}

.external--links--wrapper > .external--link--img:hover {
  opacity: 0.85;
}

.external--links--wrapper > .external--link--message {
  padding: 1rem;
  font-style: italic;
}

.portal-container .lectureSeries-heading {
  border-bottom: 1px solid #6eb068;
  display: block;
  padding: 0 0 0.25rem 0;
  margin-bottom: 0.5rem;
  font-size: 1.15rem;
}

.portal-container .lectureSeries-link {
  display: flex;
  justify-content: space-between;
  padding: 0.5rem;
  border: 1px solid lightgray;
  border-left: 4px solid #6eb068;
  box-shadow: 0 0 3px;
  background-color: #fff;
  flex: 0 1 97%;
}

.portal-container .lectureSeries-link:nth-child(odd) {
  background-color: #f5f9fc;
}

.portal-container .newBtnWrapper {
  padding: 1.25rem 0;
}

.portal-container .expireText {
  font-size: 0.8em;
  color: #888;
  margin: 0.25rem 0 1.5rem 0;
}

.portal-container .lectureSeries__wrapper {
  display: flex;
  align-items: center;
}

.portal-container .lectureSeries__wrapper:not(last-child) {
  margin-bottom: 0.4rem;
}

.portal-container .lectureSerieList__deleteCourseItem {
  flex: 0 0 3%;
  text-align-last: center;
}

.portal-container .lectureSerieList__item {
  padding: 0.2rem 0;
}

.participant-button-add {
  clear: both;
  margin: 25px 0;
}

.label-btn {
  font-size: 13px !important;
  float: none !important;
  display: inline-block !important;
  margin-bottom: 12px;
}

select[multiple],
select[size] {
  height: 20px !important;
}

#codeSubmitButton:disabled {
  opacity: 0.2;
  cursor: not-allowed;
}

.taulukko_label_paataso2 .taulukko_label {
  width: 100%;
}

.ilmo_loput #groupRegistrationDiv {
  float: left;
  clear: both;
  width: 100%;
}

.taulukko_label_paataso2 .taulukko_label .btn_link {
  width: 100%;
  text-align: left;
  font-size: 0.9em !important;
}

.ilmoituslomake_h3 {
  margin: 35px 0 15px 0 !important;
}

.valintalinkki {
  width: 100%;
  height: 100%;
  background: transparent;
  position: absolute;
  left: 0;
  margin-top: -20px;
  z-index: 2;
  border-radius: 2px;
}

.valintalinkki:hover {
  background: #6eb068;
  opacity: 0.2;
}

.viivalinkki {
  padding: 0;
  float: left;
  clear: both;
  width: 100%;
  margin-bottom: 0;
}

.viivalinkki .tapahtumalinkki {
  width: 100% !important;
  text-align: left !important;
  float: left;
  padding: 6px;
}

#customer-info-row .col-xs-8,
#groupRegistrationDiv .col-xs-8 {
  min-height: 36px;
}

#customer-info-row .logogallery_logo,
#groupRegistrationDiv .logogallery_logo {
  margin-left: 30px;
  margin-top: 6px;
}

#customer-info-row #photo .alert,
#groupRegistrationDiv #photo .alert {
  margin-left: 30px;
  margin-bottom: 0;
  margin-top: 6px;
}

.ilmo_button {
  display: flex;
  flex-direction: row;
  justify-content: center;
  padding: 30px;
}

.calendar_container h1 {
  font-weight: bold;
  color: #000;
  font-size: 2em;
  margin-top: 0;
}

label.h3 {
  margin-top: 0;
  margin-bottom: 0;
}

.infotext_long {
  color: #747474;
}

.ilmo_content .ui-select {
  max-width: 500px;
}

.ilmo_content .dropdown-toggle {
  max-width: 470px;
}

.ilmo_content .dropdown-toggle .multiselect-selected-text {
  width: 95%;
}

.ilmo_content .ui-select div {
  padding-left: 0;
}

.ilmo_content table tr p,
.ilmo_content table tr label {
  padding-left: 10px;
  margin-bottom: 5px;
}

.ilmo_content table tr a label {
  padding-left: 0px;
}

.ilmo_content table tr p b {
  display: inline-block;
  padding-top: 8px;
}

.ilmo_content table .henkilotiedot tr p b {
  padding-top: 0px;
}

.ilmo_content table .henkilotiedot tr p {
  padding-top: 8px;
}

.ilmo_content table h2 {
  margin-top: 30px;
}

.ilmo_content .customerUploadImage {
  margin: 10px 0 10px 18px;
}

.ilmontable table tr p,
.ilmontable table tr label {
  padding-left: 5px;
}

.container_ilmo .footer .col-xs-3 {
  padding-left: 0px;
  padding-top: 15px;
  padding-bottom: 25px;
}

.ilmo_content .ui-select div .caret {
  /*margin: 9px 10px 0 0;
    float: right;*/
}

#fade {
  display: none;
  position: fixed;
  top: 0;
  margin: 0;
  padding: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  /*for IE*/
  min-height: 100%;
  background-color: black;
  filter: alpha(opacity=0);
  /* IE */
  -moz-opacity: 0;
  /* Mozilla */
  opacity: 0;
  /* CSS3 */
  z-index: 1001;
}

.divi30 {
  width: 30%;
  float: left;
}

.divi70 {
  width: 68%;
  float: left;
  margin-left: 1%;
}

.divi70 .toimintopainikkeet .content {
  float: left;
}

.form-control::-moz-placeholder,
.ui-input-text input::-moz-placeholder,
.ui-input-search input::-moz-placeholder,
textarea.ui-input-text::-moz-placeholder,
.username::-moz-placeholder,
.password::-moz-placeholder {
  font-style: italic !important;
  color: #747474 !important;
}

*::-moz-placeholder .c_date *::-moz-placeholder {
  color: #747474 !important;
  font-style: italic;
}

::-webkit-input-placeholder {
  color: #747474;
  font-style: italic;
}

::-moz-placeholder,
.c_date ::-moz-placeholder {
  color: #747474;
  font-style: italic;
}

/* firefox 19+ */
:-ms-input-placeholder {
  color: #747474;
  font-style: italic;
}

/* ie */
input:-moz-placeholder {
  color: #747474;
  font-style: italic;
}

#modal {
  display: none;
  position: fixed;
  top: 40%;
  left: 45%;
  width: 200px;
  height: 200px;
  padding: 70px 70px 0px;
  background-color: none;
  z-index: 9999;
  text-align: center;
  overflow: auto;
}

.main {
  background: #edf3f5;
  padding: 0 0 20px 0;
  width: 100%;
  float: left;
}

.main_portal {
  padding-top: 20px;
  width: 100%;
  /*background: #f1f5f8;*/
  /*background: #fff;*/
  overflow: visible;
}

#ApplicationsTableForm .table_header th {
  white-space: nowrap;
}

.main_portal .main_portal {
  padding-top: 0;
  width: 100%;
  background: #fff;
  overflow: visible;
  margin-top: 0;
}

.main_portal .content-1 {
  padding-left: 0;
  padding-right: 0;
}

.portal_nav .nav .open > a,
.portal_nav .nav .open > a:focus,
.portal_nav .nav .open > a:hover {
  background: #1e2126 !important;
  color: #fff;
}

.portal_nav .dropdown-menu > li {
  width: 100%;
}

.portal_nav .dropdown-menu > li > a {
  width: 100%;
}

.ilmon_loppupainikkeet div {
  float: none;
  margin: auto;
}

.ilmon_loppupainikkeet .button_green {
  float: none !important;
}

.powertop {
  float: right;
  position: relative;
  color: #aaa;
  font-size: 0.9em;
  padding-top: 4px;
}

.powertop a {
  color: #aaa;
  text-decoration: underline;
}

.powertop a:hover {
  color: #000;
  text-decoration: underline;
}

.navbar-inverse {
  border-radius: 0;
  margin-bottom: 0;
  min-height: 40px !important;
  height: auto;
}

.navbar-nav > li > a {
  padding-bottom: 9px !important;
  padding-top: 9px !important;
}

.h2_kapea {
  border-bottom: 3px solid #e1ecf0;
  border-radius: 3px;
  color: #000 !important;
  font-size: 1.1em !important;
  font-weight: normal !important;
  margin-bottom: 10px !important;
  padding: 10px 0 10px 0 !important;
  text-transform: uppercase;
  background: transparent !important;
  margin-top: 30px;
  min-height: 40px !important;
}

#portalcontent .content-1 {
  padding-top: 0;
}

.nav .user_link {
  padding-top: 8px;
}

.navbar-brand {
  max-width: 200px;
  height: 40px;
}

.navbar-brand img {
  max-height: 20px;
}

.content {
  width: 90%;
  max-width: 1300px;
  margin: auto;
  clear: both;
}

.main_ilmo .registration-header {
  margin-top: -5px;
}

.content-1 {
  width: 100%;
  background: #fff;
  float: left;
  border-radius: 3px;
  margin-bottom: 30px;
  box-sizing: border-box;
  padding: 3%;
}

.laskutapa .btn {
  width: 90%;
  border: 2px solid #fff;
  margin-right: 1%;
  margin-left: 1%;
  background: #f5f8fa;
  font-family: 'Segoe UI', Calibri, arial, Verdana, Helvetica, sans-serif;
  text-align: center;
  color: #333;
  padding: 10px 12px 6px 12px;
  height: 185px;
  border-radius: 5px !important;
  white-space: normal;
  cursor: pointer;
  outline: none;
  float: none;
  box-shadow: 0 0 4px 4px rgba(1, 1, 1, 0.1);
}

.laskutapa .btn:hover {
  border: 2px solid #a6cde3;
  background: #fff;
}

.normallink {
  background: transparent;
  border: none;
  padding: 0;
  color: #38c;
  text-decoration: none;
}

.normallink:hover {
  text-decoration: underline;
}

.laskutapa .btn:focus,
.laskutapa .active:focus,
.laskutapa .inactive:focus,
.ilmo_content .laskutapa .focus,
.ui-datepicker-calendar td:focus,
.ui-datepicker-days-cell-over,
.fc-button-group button:focus,
.fc-center button:focus,
.fc-content-skeleton a:focus,
.close:focus,
.normallink:focus {
  box-shadow: 0 0 6px #86bfed !important;
}

.laskutapa .btn:active {
  outline: none;
}

.laskutapa .active {
  border: 2px solid #75ba5c !important;
  box-shadow: none !important;
  background: transparent;
  color: #333 !important;
  outline: none;
  font-weight: bold;
  border-radius: 5px !important;
}

.maksulabel_text {
  clear: both;
  display: table-cell;
  height: 70px;
  vertical-align: middle;
  width: 100%;
  font-size: 0.85em;
  cursor: pointer;
}

.laskutapa .active .maksulabel_text {
  background: #fff url("images/radio-check2.png") no-repeat center bottom !important;
  padding-bottom: 20px;
}

.laskutapa .inactive .maksulabel_text {
  background: url("images/radio.png") no-repeat center bottom !important;
  padding-bottom: 20px;
}

.laskutapa .btn .maksulabel_text {
  padding-bottom: 20px;
}

.has-success .form-control {
  border: 1px solid #6eb068;
}

.row {
  margin-bottom: 0.5rem;
  clear: both;
}

.login_box {
  background: #fff;
  margin: auto;
  width: 90%;
  max-width: 700px;
  padding: 3% 5%;
  margin-top: 20px;
  text-align: center;
}

.login_box2 {
  background: #fff;
  margin: auto;
  width: 90%;
  max-width: 700px;
  padding: 1% 1% 2% 1%;
  margin-top: 20px;
  text-align: center;
}

.login_box2 .button_green {
  width: auto;
}

.login_box h1 {
  text-align: center;
}

.form-control {
  height: 30px !important;
  box-shadow: none;
  border-radius: 3px;
  padding: 4px 6px !important;
  color: #000 !important;
}

.form-control.sm {
  max-width: 200px;
}

.clabelother .ui-checkbox .checkbox_label {
  float: left;
  width: auto;
  min-width: 180px;
}

.clabelother .ui-checkbox input {
  margin-top: 10px !important;
}

.tablediv table {
  width: 98%;
}

.checkbox_label {
  font-weight: normal;
  height: auto;
}

.ui-page-theme-a .ui-btn:focus,
html .ui-bar-a .ui-btn:focus,
html .ui-body-a .ui-btn:focus,
html body .ui-group-theme-a .ui-btn:focus,
html head + body .ui-btn.ui-btn-a:focus,
.ui-page-theme-a .ui-focus,
html .ui-bar-a .ui-focus,
html .ui-body-a .ui-focus,
html body .ui-group-theme-a .ui-focus,
html head + body .ui-btn-a.ui-focus,
html head + body .ui-body-a.ui-focus {
  box-shadow: 0 0 6px #86bfed !important;
}

.login .login--content {
  width: 90%;
  margin: 0 auto;
}

.login .login__heading {
  font-size: 1.25rem;
  display: block;
  margin: 0 1rem 0.75rem 1rem;
  border-bottom: 1px solid #5b9943;
  padding-bottom: 0.5rem;
}

.login .login__forgot-password-link {
  display: inline-block;
  margin: 0.5rem 0 0 0;
}

.login .login__button-link {
  border: none;
  display: inline-block;
  margin: 0.25rem 0;
  color: #38c;
  background: none;
}

.login .login__button-link:hover, .login .login__button-link:focus {
  color: #1a4466;
}

.login .login__form-wrapper {
  border: 1px solid lightgray;
  border-radius: 0.5rem;
}

.login .alert {
  display: block;
  margin: 0.5rem 0;
}

h2.login-heading {
  color: #5b9943;
  width: 100%;
  display: block;
  text-align: center;
}

.login-input {
  min-height: 3rem;
}

.username {
  background: url("images/kayttaja.png") no-repeat scroll left center transparent;
  border: 1px solid #ccc;
  border-radius: 3px;
  box-sizing: border-box;
  clear: both;
  font-size: 1.1em;
  height: 50px !important;
  outline: medium none;
  padding: 0 0 0 50px !important;
  width: 100% !important;
  font-family: sans-serif;
}

.password {
  background: url("images/salasana.png") no-repeat scroll left center transparent;
  border: 1px solid #ccc;
  border-radius: 3px;
  box-sizing: border-box;
  clear: both;
  font-size: 1.1em;
  height: 50px !important;
  outline: medium none;
  padding: 0 0 0 50px !important;
  width: 100% !important;
  font-family: sans-serif;
}

.login_info {
  text-align: center;
}

.vahvistus_table_td_1 {
  width: 40%;
  max-width: 300px !important;
}

.vahvistus_table_td_lisa_1 {
  float: left;
  width: 40%;
  clear: both;
}

.vahvistus_table_td_lisa_2 {
  float: right;
  width: 60%;
  margin-bottom: 10px;
}

.login_button {
  background: #6eb068 !important;
  border-bottom: 1px solid #cccccc;
  border-radius: 5px;
  border: 2px solid transparent;
  color: #fff !important;
  cursor: pointer;
  display: block;
  font-weight: bold !important;
  line-height: 50px;
  margin-right: 0;
  min-height: 50px;
  text-align: center;
  text-decoration: none;
  width: 90%;
  margin: auto;
  text-transform: uppercase;
  font-size: 1.1em;
}

.login_button:hover {
  background: #83c37c !important;
  text-decoration: none !important;
}

.username:focus,
.password:focus,
.form-control:focus {
  box-shadow: 0 0 6px #86bfed !important;
  border: 1px solid #a3cdca !important;
}

.toimintopainikkeet {
  background: #fff none repeat scroll 0 0;
  box-shadow: 0 6px 4px -6px #bbb;
  padding: 3px 0 3px;
  position: fixed;
  width: 100%;
  z-index: 199;
}

.div_top {
  background: #222222;
  padding-top: 7px;
  width: 100%;
  height: 43px;
  position: fixed;
  top: 0px;
  z-index: 1040;
}

.div_top .navbar-header {
  background: #222222;
}

.div_top_portal .nav .open > a,
.div_top_portal .nav .open > a:focus,
.div_top_portal .nav .open > a:hover,
.div_top_portal .nav .open > a:focus,
.div_top_portal .nav .open > a:active {
  background: #000;
}

.portaali_link {
  padding: 6px !important;
  margin-top: 2px;
}

.portaali_link:hover {
  background: #ecf5f9 !important;
  text-decoration: none;
}

.portal_logo {
  background: #fff;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
  margin-top: -6px;
  padding: 8px;
  float: left;
  max-height: 40px;
  min-height: 40px;
  max-width: 200px;
  text-align: center;
}

.portal_logo img {
  max-height: 95%;
  max-width: 75%;
}

.user_link {
  float: none;
}

.user_link button {
  background: transparent;
  color: #d3d3d3;
  border: none;
  font-weight: normal !important;
  max-width: 150px;
  overflow: hidden;
  text-overflow: ellipsis;
  background: url("images/kayttaja3.png") no-repeat !important;
  padding-left: 30px;
  margin-left: 10px;
}

.user_link button:hover,
.user_link button:focus {
  color: #fff;
  outline: none;
}

.user_link ul {
  margin-left: 30px;
}

.portal_nav {
  float: left;
  width: auto;
}

.portal_nav a {
  color: #d3d3d3;
  padding: 8px 10px !important;
  letter-spacing: 1px;
  margin-right: 10px;
  font-weight: 400;
}

.portal_nav .content-1-calendar a {
  padding: 16px 0 6px 0 !important;
  margin-right: 0;
}

.portal_nav .content-1-calendar {
  margin-left: 20px;
}

.portal_toimintopainikkeet {
  padding: 3px 0 16px 0;
  width: 100%;
  overflow: auto;
  height: 48px;
}

.panel-heading .panel-title .blue_link {
  color: #38c !important;
  font-size: 1em !important;
}

.panel-heading .panel-title .blue_link:hover {
  color: #2468a1 !important;
}

.tr_paataso_keski2 .no_icon_link,
.tr_paataso_alempi .no_icon_link {
  font-size: 1.1em !important;
}

.tr_paataso_alempi td {
  padding-top: 2px !important;
}

.button-container {
  display: flex;
}

.button-container button {
  width: 12rem !important;
  border-radius: 20px !important;
  background: none;
  color: #5b9943 !important;
  border: 2px solid !important;
  font-weight: 500 !important;
  margin-bottom: 20px !important;
  height: 2.5rem !important;
}

.button-container button:hover {
  background: #5b9943 !important;
  color: white !important;
}

.button-container button.selected {
  background: #5b9943 !important;
  color: white !important;
}

.portallinkki.portallinkkivalk.ui-link.active-link {
  color: #75ab35 !important;
  font-weight: 700;
}

#add_popup2 .modal-dialog {
  width: 90%;
  max-width: 900px;
}

.ui-datepicker {
  background: #fff !important;
  box-shadow: 0 4px 3px 3px #ddd;
}

.ui-datepicker .ui-state-active {
  background: #ebf0f1 !important;
}

.ui-datepicker .ui-datepicker-calendar td:hover {
  background: #f5f8fa !important;
}

.ui-datepicker-header {
  border: none !important;
}

.nav-pills > li.active > a,
.nav-pills > li.active > a:focus,
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover {
  background: #5b9744;
  color: #95c13e;
}

.nav > li > a:hover {
  background: #1e2126;
}

.nav-pills > li.active > a,
.nav-pills > li.active > a:focus,
.nav-pills > li.active > a:hover,
.nav-pills a:focus {
  background: #2d3136;
  outline: 0;
}

.portal_table {
  border-collapse: collapse;
  width: 100%;
}

.portal_table_no_border {
  border-collapse: collapse;
  width: 100%;
}

.portal_table td,
.portal_table th {
  border: 1px solid #e8eff0;
  padding: 6px;
}

.portal_table_no_border td {
  padding: 6px;
}

.table_main_row_clickable:hover {
  cursor: pointer;
  background: #ecf5f9;
}

.table_main_row_clickable label:hover {
  cursor: pointer;
}

.ui-datepicker-next,
.ui-datepicker-next:hover {
  background: url("images/calendar_right.png") no-repeat !important;
  cursor: pointer;
}

.ui-datepicker-next span,
.ui-datepicker-prev span {
  background: none !important;
}

.ui-datepicker-prev,
.ui-datepicker-prev:hover {
  background: url("images/calendar_left.png") no-repeat !important;
  cursor: pointer;
}

.tr_alt td,
.tr_alt {
  background: #f4f8f9;
}

.tr_rajaava {
  border-bottom: 1px solid #eee;
}

.tr_rajaava td {
  padding-bottom: 5px;
  padding-top: 5px;
}

.dropdown-menu > .active > a,
.dropdown-menu > .active > a:focus,
.dropdown-menu > .active > a:hover {
  background: #7bbd74;
}

.dropdown-menu {
  max-height: 500px;
  overflow: auto;
}

.modal-body .dropdown-menu {
  max-height: 300px;
  overflow: auto;
}

.btn-group,
.btn-group button {
  width: 100%;
  text-align: left;
}

.main_row_mark {
  font-weight: bold;
  font-size: 1.1em;
}

.portal_label {
  font-weight: bold;
}

.btn_link {
  border: 1px solid #cbe0e8;
  padding: 10px 15px;
  border-radius: 3px;
  text-transform: uppercase;
  background: #fff;
  color: #69a4cc;
  float: left;
  cursor: pointer;
  font-weight: normal !important;
  margin: auto 2% 10px auto;
  background: #fff !important;
  text-align: center;
  text-decoration: none;
  width: auto;
}

.btn_link_smaller {
  border: 1px solid #a3c5d4;
  padding: 3px 5px;
  border-radius: 3px;
  text-transform: uppercase;
}

.btn_link:hover,
.btn_link_smaller:hover,
.ilmontable .btn_link:hover,
.btnlinknohover_button:hover,
.viivalinkki .tapahtumalinkki:hover,
.ui-link:hover {
  background: #ecf5f9 !important;
  cursor: pointer;
}

.ui-link label {
  cursor: pointer;
  width: 100%;
  padding: 6px;
}

.btn_link label {
  cursor: pointer;
}

.ui-link label {
  cursor: pointer;
}

.btn_link_no_hover {
  border: 1px solid #9ac4e1;
  padding: 10px 15px;
  border-radius: 3px;
  background: #fff;
  color: #69a4cc;
  float: left;
  cursor: pointer;
  font-weight: normal !important;
  margin: auto 2% 10px auto;
  background: #fff !important;
  text-align: left;
  text-decoration: none;
  width: 100%;
}

.btnlinknohover_button {
  width: 100%;
  padding: 10px 5px;
  text-align: left;
}

.green {
  color: #5b9744;
}

.red {
  color: #ae312e;
}

.tr_alt3 {
  background: #f3f7fa;
}

.tr_alt2 {
  background: #fafcfe;
}

.tr_alt2 td:first-child,
.tr_alt3 td:first-child {
  background: #fff;
}

.tablediv {
  overflow-x: auto;
  overflow-y: hidden;
  width: 100%;
}

.tablediv table {
  width: 98%;
}

.btn_link_rek:hover {
  text-decoration: none;
  cursor: pointer;
  background-color: rgba(239, 248, 250, 0.5);
}

.btn_link_rek label:hover {
  text-decoration: none !important;
}

.indent-left {
  margin-left: 30px !important;
}

.heading-underline {
  border-bottom: 1px solid #dadada;
}

.heading-underline-heavy {
  border-bottom: 1px solid #222222;
}

.force-small-ui-checkbox .ui-checkbox label {
  max-width: 34px;
  width: 34px;
  padding: 0;
}

.force-small-ui-checkbox .checkbox_span {
  display: none !important;
}

.force-no-ui-checkbox .ui-checkbox {
  display: none !important;
}

.lecture-date {
  text-align: right;
  float: right;
  padding-right: 75px;
  padding-top: 6px;
}

.rekkari .div_rek {
  background: #fff none repeat scroll 0 0;
  border: 1px solid #ddd !important;
  border-radius: 6px !important;
  margin: 0 0 15px;
  padding: 30px;
  overflow: auto;
  cursor: default !important;
}

.rekkari .div_rek .rTableCell,
.rekkari .div_rek .rTableCell .tapahtuman_button {
  cursor: default !important;
}

/*Styles for registration form start:*/
.main_ilmo {
  width: 100%;
  height: 100%;
  background: #f5f8fa;
  overflow: auto;
}

.multiselect-item .input-group-btn {
  font-size: 15px !important;
  position: absolute;
  right: 0;
  width: 40px;
  z-index: 5;
}

.btn-group .multiselect-container {
  width: 100%;
}

.phone1 {
  width: 45px !important;
}

.phone2 {
  width: 180px !important;
}

.phoneplus {
  float: left;
  padding-top: 6px;
  padding-right: 5px;
}

.container_ilmo {
  width: 90%;
  max-width: 1000px;
  margin: auto;
  background: #fff;
  clear: both;
  box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.15);
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  margin-top: 20px;
  /*overflow: auto;*/
}

.container_ilmo .file-style-full {
  text-align: center;
}

.actionButton-wrap {
  width: 90%;
  display: flex;
  max-width: 1000px;
  margin: auto;
  white-space: nowrap;
}

.actionButton-wrap .ui-link {
  display: block;
  padding: 0.25rem;
  border-radius: 0.2rem;
  font-size: 1rem;
}

.actionButton-wrap .ui-link + .ui-link {
  margin-left: 0.8rem;
}

#customerInformation input.form-control {
  width: 100%;
}

#customerInformation .logogallery_logo .img-thumbnail {
  padding-left: 15px;
}

.content-wrap {
  max-width: 1000px;
  width: 90%;
  margin: 0 auto;
  padding: 25px;
}

#GiveFeedbackForm .container_ilmo,
#thanksPage_container {
  padding: 3%;
}

#GiveFeedbackForm .file-style-left {
  margin-bottom: 30px;
  padding-left: 0;
}

#GiveFeedbackForm .file-style-middle {
  margin-bottom: 30px;
  padding-left: 7px;
  padding-right: 7px;
}

#GiveFeedbackForm .file-style-right {
  margin-bottom: 30px;
  padding-right: 0;
}

.container_ilmo img {
  max-width: 100%;
}

.ilmo_content_language {
  width: 100%;
  background: transparent;
  margin: auto;
  clear: both;
  float: left;
  height: 40px;
}

.mobile_textbox.kpl {
  float: right;
}

.ilmo_content {
  margin: auto;
}

.registration-summary {
  margin-top: 5rem;
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0.3em;
}

.ilmo_content h2,
.main_calendar .content-1 .ilmoituslomake_h3 {
  background: #eff5f6;
  font-size: 1.3em;
  padding: 10px 18px;
  border-radius: 3px;
  margin-bottom: 20px;
  font-weight: bold !important;
  color: #000;
}

.ticket_content .ilmo_content {
  padding: 0;
}

.ilmo_loput .ticket_content {
  width: 100%;
  float: left;
  padding: 0;
}

.ilmo_content .container_div_margin,
.container_div_margin {
  padding: 18px 18px 0 18px;
}

.ilmo_ylaosa {
  position: relative;
}

.file-style-full,
.file-style-row {
  margin: 0 0px;
  width: auto;
}

.file-style-row .file-style-full {
  margin: 0;
}

.file-style-row {
  width: auto !important;
}

.ilmo_logo {
  /* position: absolute; top: 30px;*/
  position: relative;
  overflow: auto;
  margin-top: 15px;
}

.maksulabel {
  height: 95px !important;
  margin-bottom: 1px;
  display: table-cell;
  vertical-align: middle;
  cursor: pointer;
  width: 100%;
}

.maksulabel img {
  border: none !important;
  max-height: 100%;
  max-width: 100% !important;
}

.ilmodiv .col-xs-4 {
  width: 100%;
  margin-bottom: 4px;
}

.ilmodiv .col-xs-8 {
  width: 100%;
}

.ilmodiv .postcode {
  max-width: 200px;
  width: 29%;
  float: left;
  margin-right: 5px;
}

.ilmodiv .postkontor {
  max-width: 500px;
  width: 69%;
  float: left;
}

.ilmo_language {
  margin-top: 1%;
  margin: auto;
  max-width: 1000px;
  width: 100%;
}

.ilmo_language .btn-group {
  max-width: 200px;
  width: 200px;
  float: right;
}

.btn-default:active:hover,
.open > .dropdown-toggle.btn-default.focus,
.open > .dropdown-toggle.btn-default:focus,
.open > .dropdown-toggle.btn-default:hover {
  background-color: #fff;
}

.col-xs-8 .btn-group .disabled {
  background: #eee;
  border-bottom: 1px solid #ccc;
  color: #64666d !important;
  height: 35px;
  padding: 0 !important;
  text-align: left;
}

.rekkari {
  max-width: 1000px;
  margin: auto;
}

.numberField {
  width: 100%;
  max-width: 160px;
  text-align: right;
}

.button_green:focus,
.login_button:focus {
  box-shadow: 0 0 6px #4696d7 !important;
  background-color: #83c37c !important;
  border: 2px solid #d8efed !important;
}

.powerbottom {
  display: none;
}

.btn_link:focus,
.kalenteri_oikea_painikkeet .btn_link:focus {
  border-radius: 2px;
  color: #23527c;
  box-shadow: 0 0 6px #86bfed !important;
  border: 1px solid #90c5ef;
  background: #fff !important;
}

#calendar-lang-update-div .btn_link:focus {
  box-shadow: 0 0 6px #86bfed !important;
}

.ui-link:focus {
  border-radius: 2px;
  color: none;
  background: none !important;
  box-shadow: 0 0 6px #86bfed !important;
}

.ilmontable .btn_link {
  overflow: auto;
  width: auto;
  display: block;
  padding: 6px 11px;
}

.ilmontable .ui-link {
  overflow: auto;
  width: auto;
  display: block;
  padding: 0;
}

.tooltipevent {
  position: absolute !important;
  width: 400px !important;
}

.ui-field-contain select {
  display: inherit !important;
}

.container_ilmo .ui-field-contain {
  background: #fff;
  border-bottom: 1px solid #ccc;
  color: #64666d;
  height: 35px !important;
  padding: 0;
  text-align: left;
  border-radius: 4px;
  margin: 0;
  border: 2px solid #cccccc !important;
}

.container_ilmo .ui-field-contain span {
  text-align: left;
  margin-left: 5px;
  color: #000;
}

.ui-field-contain .btn-group {
  display: none;
}

.ui-btn span {
  /*display: none !important;*/
}

.checkbox_label span {
  display: inherit !important;
}

.btn-group .multiselect span {
  display: inherit !important;
}

.btn-group .multiselect {
  background: transparent linear-gradient(to bottom, #fff 0%, #f5f5f5 100%, #f46666 100%, #ccc 100%) repeat scroll 0 0;
  border-bottom: 1px solid #ccc;
  background: #f5f8fa;
  color: #64666d !important;
  height: 35px;
  padding: 0 !important;
  text-align: left;
}

.btn-group .multiselect:focus,
.btn-group .multiselect:hover {
  box-shadow: 0 0 6px #86bfed !important;
}

.pudotusvalikko {
  background: transparent linear-gradient(to bottom, #fff 0%, #f5f5f5 100%, #f46666 100%, #ccc 100%) repeat scroll 0 0;
  border: 1px solid #eee;
  color: #64666d !important;
  height: 35px;
  padding: 0 !important;
  text-align: left;
}

.btn-group,
.btn-group-vertical {
  display: inline-block;
  position: relative;
  vertical-align: middle;
}

.btn-group,
.btn-group button {
  width: 100%;
}

.modal-body .ui-responsive {
  width: 100%;
}

.modal-body .ui-responsive th,
.modal-body .ui-responsive td {
  border: 1px solid #eee;
  padding: 5px;
}

.portal_toiminnot_mobile {
  display: none;
}

.portal_toiminnot_screen {
  width: 70%;
  float: left;
  padding-top: 4px;
}

#ApprovalReason {
  width: 100%;
}

.fc-day-number.fc-other-month {
  opacity: 0.7 !important;
}

#calendarTree .collapsed:focus {
  border: 2px solid #becdd9;
  border-radius: 3px;
  height: 26px;
}

#calendarTree .collapsed:hover {
  background-color: #f3f7f9 !important;
  border-radius: 3px;
  height: 26px;
}

.calendar_login_box {
  width: 30%;
  background: #fff;
  float: left;
  margin-right: 3%;
  padding: 3%;
  text-align: center;
}

.calendar_login_box .button_green {
  float: none;
  margin: auto;
  display: block;
}

.calendar_login_box .infotext {
  width: 100%;
  text-align: center;
}

.paddingleft15 {
  padding-left: 15px;
}

.paddingright {
  padding-right: 17px !important;
}

.totalrow td label {
  font-weight: bold !important;
}

.fc-view {
  background: #fff;
}

.fc td,
.fc th {
  border-color: #f1f5f8 !important;
  padding: 3px !important;
}

.textarea_iso {
  height: 100px !important;
}

.caret {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px dashed;
  display: inline-block;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  width: 0;
}

.button_green {
  background-color: #6eb068 !important;
  border: 2px solid transparent !important;
  color: #fff !important;
  font-size: 1em;
  font-weight: bold !important;
  float: left;
  margin-right: 2%;
  padding: 6px 12px !important;
  border-radius: 3px !important;
  text-align: center;
  line-height: 20px;
  text-transform: uppercase;
}

.button_green.remove--float {
  float: none !important;
}

.ilmon_loppupainikkeet {
  width: 100%;
  margin: auto;
}

.button_green:hover,
.button_green:active,
.button_green:focus,
.ilmon_loppupainikkeet .button_green:focus {
  background-color: #83c37c !important;
  color: #fff !important;
  text-decoration: none !important;
}

.ui-btn .multiselect-selected-text,
.multiselect-selected-text {
  display: inherit !important;
  float: left;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 90%;
  padding-left: 5px;
}

.multiselect-selected-text {
  font-weight: bold;
}

.ilmo_event_information {
  text-align: center;
  padding-bottom: 20px;
  overflow: hidden;
  float: left;
  width: 100%;
  margin-top: 30px;
}

.ilmo_event_information h1 {
  margin-bottom: 20px;
  font-size: 2.4em;
  width: auto;
}

.ilmo_event_information label {
  font-size: 1em;
  margin: 5px 0 5px 0;
  font-weight: normal;
  width: 100%;
}

.tooltippi .tapahtumalinkki i {
  border: 2px solid transparent;
  border-radius: 9px;
  padding: 4px;
}

.tooltippi .tapahtumalinkki:focus i,
.tooltippi .tapahtumalinkki:hover i {
  border: 2px solid #becdd9;
  border-radius: 9px;
  border-color: #9dc97d !important;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 6px #badee3 !important;
}

.ilmontable tr:hover,
.ilmontable tr:hover td {
  /*background: #eff8fa;*/
}

.ilmontable .btn_link {
  background: transparent !important;
  border: none;
  color: #337ab7;
  text-transform: none;
}

.ilmontable {
  width: 100%;
}

.ilmontable th {
  padding-top: 5px;
  border-bottom: 1px solid #d9e5e7;
}

.ilmontable td {
  padding: 2px;
}

.ilmontable .btn_link {
  text-align: left;
}

.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
  background-color: #f3f4f6 !important;
  box-shadow: none !important;
  border: 1px solid #ccc !important;
}

.ilmo_logo {
  margin-bottom: 20px;
}

.ilmo_logo img {
  max-width: 100%;
}

.right_align {
  text-align: right;
}

.ui-radio .ui-radio-off {
  background: url("images/radio_normal.png") no-repeat scroll left center transparent;
  padding-left: 37px !important;
}

.ui-radio .ui-radio-off:hover {
  background: url("images/radio-hover2.png") no-repeat scroll left center transparent;
  padding-left: 37px !important;
}

.ui-radio .ui-radio-on {
  background: url("images/radio-check2.png") no-repeat scroll left center transparent;
  padding-left: 37px !important;
}

.ui-radio .ui-radio-off:focus {
  background: red !important;
  padding-left: 37px !important;
}

.ui-radio {
  min-height: 34px;
  clear: both;
  float: left;
  width: 100%;
}

.ui-radio input {
  opacity: 0;
  position: absolute;
  top: 2px;
  left: 10px;
}

.ui-radio label {
  position: relative;
}

.ilmo_alaosa.space-before-after.clearfix {
  margin: 0 -25px -70px;
}

.ui-checkbox-on {
  background: url("images/check-checked2.png") no-repeat scroll left center transparent;
  padding-left: 39px !important;
  min-height: 34px;
}

.ui-checkbox-off {
  background: url("images/check.png") no-repeat scroll left center transparent;
  padding-left: 39px !important;
  min-height: 34px;
}

.ui-checkbox input {
  opacity: 0;
}

.ui-checkbox-off:hover,
.ui-checkbox-off:focus,
.ui-checkbox-off:active {
  background: #ecf5f9 url("images/check-hover2.png") no-repeat scroll left center;
  padding-left: 39px !important;
  min-height: 34px;
}

.ui-checkbox-on:hover {
  background: #ecf5f9 url("images/check-checked2.png") no-repeat scroll left center;
  padding-left: 39px !important;
  min-height: 34px;
}

.ui-checkbox .ui-btn span {
  display: inherit !important;
}

.ilmodiv .infotext,
.infotext {
  margin: 3px 0 0.5rem;
  color: #747474;
  font-style: italic;
  float: none;
  padding: 0;
}

.toplinkki {
  float: left;
  text-decoration: none;
  color: #d3d3d3;
  font-size: 1em;
  padding: 6px 10px;
}

.toplinkki:hover, .toplinkki:active, .toplinkki:focus {
  color: #fff;
  text-decoration: none;
  background: #000;
}

.m_date label {
  font-size: 0.93em;
}

select.ilmoselect {
  opacity: 1;
  width: 100%;
  height: 100%;
  cursor: pointer;
  position: absolute;
  z-index: 3;
  border-width: 0;
}

.lisakysymysdivi .checkbox_label,
.lisakysymykset .checkbox_label {
  margin-left: -3px !important;
}

.lisakysymysdivi .ui-radio input {
  opacity: 0;
}

/*Styles for registration form end*/
.table1tasoinen tr:nth-child(2n + 1) {
  background: #f5f9fa;
}

.table1tasoinen tr.table_header {
  background: #fff !important;
}

.table_header th {
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 5px;
}

/*Styles for calendar start:*/
.main_calendar {
  overflow: auto;
  padding: 0 0 40px 0;
  width: 100%;
  background: #f1f5f8;
  min-height: 600px;
}

.main_calendar .widediv:after {
  content: '';
  clear: both;
  display: table;
}

.main_calendar .widediv .calendar_title {
  margin-top: 0.7rem;
  float: left;
  width: 70%;
  margin-bottom: 0.7rem;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: bold;
  color: #000;
  font-size: 2.2em;
  line-height: 1.2em;
}

.main_calendar .calendar_nakymat {
  float: right;
}

.main_calendar .calendar_nakymat .calendar_nakyma {
  float: left;
  margin-top: 0.7rem;
  margin-bottom: 0.7rem;
  width: 80px;
  margin-left: 0.5rem;
}

.main_calendar .content-1 {
  padding: 20px;
  margin-bottom: 10px;
}

.main_calendar .content1tausta {
  position: relative;
  background: #fff;
}

.main_calendar .content-70-tapahtumavalinta .content-1 {
  padding: 30px;
  margin-bottom: 20px;
}

.main_calendar .infotext {
  margin: 10px 0 30px 0;
  float: left;
  clear: both;
}

.calendar_container {
  min-height: 100%;
  position: relative;
  background: transparent;
}

.calendar_footer {
  background: #fff;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 150px;
}

.calendar__some {
  display: flex;
  float: left;
}

.calendar__someholder {
  padding: 2px;
  margin-right: 8px;
}

.calendar__add--icon {
  height: 20px;
  cursor: pointer;
}

.calendar_container .usernamelink {
  color: #ddd;
}

.calendar_container .usernamelink:hover {
  color: #eee;
}

.calendar_contentti {
  padding-bottom: 150px;
}

.mobimenu .dropdown {
  float: left;
  width: auto !important;
}

.toiminnot_mobiili .mobimenu {
  width: 100%;
  /*margin-top: 40px;*/
}

.toiminnot_mobiili .btn span {
  color: #000;
  font-size: 16px;
  font-weight: bold;
}

.toiminnot_mobiili ul .btn .caret {
  color: #38c;
}

.toimintopainikkeet .content {
  padding-top: 3px;
}

.toimintopainikkeet {
  padding: 0;
}

.toiminnot_mobiili .btn {
  background: transparent linear-gradient(to bottom, #fff 0%, #f4f7f7 100%, #fff 100%, #ccc 100%) repeat scroll 0 0;
}

.calendar_header {
  background: #fff;
  margin-top: 40px;
  padding-top: 30px;
}

.calendar_header .btn_link,
.main_calendar .btn_link {
  padding: 10px 15px !important;
}

#calendarDiv {
  margin-bottom: 100px;
}

.content-30-tapahtumavalinta {
  background: #fff;
  width: 32%;
  padding: 2% 2%;
  border-radius: 3px;
  float: left;
}

.content-70-tapahtumavalinta {
  background: #fff;
  width: 65%;
  padding: 2% 2%;
  border-radius: 3px;
  float: right;
  display: flex;
  flex-direction: column;
}

.content-70-tapahtumavalinta .bottom {
  font-family: 'Segoe UI';
  font-size: 1em;
  color: #4a4a4a;
  text-decoration: none !important;
}

.content-70-tapahtumavalinta .bottom a,
.content-70-tapahtumavalinta .bottom a label {
  text-decoration: none !important;
}

.calendar_search .ui-input-text {
  float: left;
  height: 42px !important;
  margin-right: 5px;
  width: 80%;
}

.calendar_search #calendarSearchText {
  height: 42px !important;
}

.form-control {
  font-size: 1em;
}

.calendar_search .button_green {
  background: #6eb068 url("images/search_icon.png") no-repeat scroll center center;
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
  float: left;
  height: 42px;
  line-height: 30px;
  width: 60px !important;
}

.calendar_search .ui-input-text input {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
  height: 42px !important;
  padding-left: 10px;
}

.calendar--search {
  padding: 1rem 0 0.5rem 0;
}

.calendar--search .calendar--search--basic {
  display: flex;
  margin-bottom: 0.5rem;
  align-items: center;
}

.calendar--search .calendar--search--basic .calender_search > input.form-control {
  width: 98%;
}

.calendar--search .calendar--search--basic .calendar--search--basic--dates {
  flex: 0 0 auto;
  display: flex;
}

.calendar--search .calendar--search--basic .calendar--search--basic--dates > div {
  margin-left: 0.75rem;
}

.calendar--search .calendar--search--basic .calendar--search--basic--dates > div .customer_datepicker {
  height: 42px !important;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}

.calendar--search .calendar--search--basic .calendar--search--basic--dates > div .input-group-addon {
  background-color: #6eb068;
  border: 2px solid transparent;
  color: #fff;
  font-size: 1em;
  line-height: 20px;
  transition: background-color 0.2s ease-in-out;
}

.calendar--search .calendar--search--basic .calendar--search--basic--dates > div .input-group-addon:hover, .calendar--search .calendar--search--basic .calendar--search--basic--dates > div .input-group-addon:active, .calendar--search .calendar--search--basic .calendar--search--basic--dates > div .input-group-addon:focus {
  background-color: #83c37c;
  color: #fff;
  text-decoration: none;
}

@media screen and (max-width: 993px) {
  .calendar--search .calendar--search--basic {
    display: block;
  }
  .calendar--search .calendar--search--basic .calendar--search--basic--dates > div:first-child {
    margin-left: 0;
  }
}

.calendar--search .calendar--search--ingress {
  color: #333;
  font-size: 0.85rem;
  font-style: italic;
  margin-bottom: 0.5rem;
  border-radius: 0.25rem;
  border: 1px solid #38c;
  background-color: aliceblue;
  display: flex;
}

.calendar--search .calendar--search--ingress .calendar--search--ingress--icon {
  flex: 0 0 3rem;
  display: flex;
  justify-content: center;
  padding: 0.5rem;
  align-items: center;
  font-size: 1.2rem;
  color: #38c;
}

.calendar--search .calendar--search--ingress .calendar--search--ingress--content {
  flex: 1 1 auto;
  padding: 0.25rem;
  display: flex;
  align-items: center;
}

.calendar--search .calendar--search--advanced {
  display: flex;
  margin-bottom: 0.5rem;
}

.calendar--search .calendar--search--advanced .calendar--search--advanced--field {
  display: flex;
  flex-direction: column;
  margin-right: 1rem;
}

.calendar--search .calendar--search--advanced .calendar--search--advanced--field > label {
  flex: 0 0 auto;
  margin-right: 0.5rem;
}

.calendar--search .calendar--search--advanced .calendar--search--advanced--field > div {
  flex: 1 1 auto;
}

.calendar--search .calendar--search--advanced .calendar--search--advanced--clear {
  align-self: flex-end;
  flex: 0 0 30px;
}

@media screen and (max-width: 767px) {
  .calendar--search .calendar--search--advanced {
    display: block;
  }
  .calendar--search .calendar--search--advanced .calendar--search--advanced--field {
    margin-bottom: 0.5rem;
  }
  .calendar--search .calendar--search--advanced .calendar--search--advanced--field:not(:last-child) {
    margin-right: 0;
  }
}

.ui-input-text input,
.ui-input-search input,
textarea.ui-input-text,
.c_date input {
  border: 1px solid #ccc !important;
  box-shadow: none;
  height: 33px;
  padding: 0.4em;
}

.kalenteri_oikea_painikkeet {
  text-align: right;
  padding-right: 0;
}

.kalenteri_vasen_haku,
.kalenteri_oikea_painikkeet {
  padding-top: 15px;
}

.kalenteri_paivat {
  margin-top: 2px;
  float: left;
  clear: both;
}

.languagelink .ui-link:hover {
  background-color: none;
}

.languagelink:hover,
.languagelink:focus {
  background-color: #353535 !important;
}

.languagelink img {
  width: 28px;
  height: 28px;
}

.kalenteri_paivat input {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  border-right: none !important;
}

.div_top_portal .navbar-toggle {
  border: 1px solid #484c4d !important;
  margin-top: -2px;
}

.div_top_portal .navbar-toggle:hover {
  border: 1px solid #484c4d !important;
  background: #484c4d;
  margin-top: -2px;
}

.div_top_portal .navbar-toggle span {
  background: #fff !important;
}

.div_top_portal .navbar-collapse {
  background: #222222;
}

.koulutus_lista {
  background: #fff none repeat scroll 0 0;
  border-radius: 3px;
  clear: both;
  float: left;
  margin-bottom: 10px;
  min-height: 90px;
  padding: 10px;
  position: relative;
  width: 100%;
}

.boxlink {
  background: transparent none repeat scroll 0 0;
  border: medium none !important;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}

.osallistujalohko_header h2.participantname-field {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row;
  line-height: 1.7;
}

.osallistujalohko_header h2.participantname-field.extraInfo span {
  flex: 0 0 33.333%;
}

.osallistujalohko_header span.ticketname-field {
  font-weight: 400 !important;
  padding-left: 10px;
  font-size: 0.95em;
  display: inline-block;
  text-align: center;
}

.osallistuja_lohko {
  position: relative;
  width: 100%;
  float: left;
  clear: both;
  border-radius: 5px;
  margin: 5px 0;
}

.ilmo_loput > .osallistuja_lohko {
  margin-top: 15px;
}

.osallistujalohko_header h2,
.osallistujalohko_header_paa h2,
.nayttelylohko_header h2 {
  margin-bottom: 0;
  margin-top: 0;
  font-weight: bold !important;
  font-size: 1.1em;
  background: transparent url(images/arrow_up.png) no-repeat -6px center !important;
  display: block;
  padding-left: 46px;
  white-space: normal;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
  padding-right: 140px;
}

.osallistujalohko_header.collapsed h2,
.nayttelylohko_header.collapsed h2 {
  background: transparent url(images/arrow_down.png) no-repeat left center !important;
}

.osallistujalohko_header,
.nayttelylohko_header {
  width: 100%;
  background: #e1ecf0;
  outline: none !important;
  padding: 1px !important;
  min-height: 46px;
}

.osallistuja_lohko_linkit {
  float: right;
  position: absolute;
  z-index: 2;
  right: 0;
  width: 100px;
}

.osallistuja_lohko_linkit2 {
  position: absolute;
  top: 0;
  width: 100%;
  z-index: auto;
}

.lohko-btn-wrap {
  position: absolute;
  top: 0;
  z-index: 3;
  right: 0;
  pointer-events: none;
}

.lohko-btn-wrap a,
.lohko-btn-wrap a:link {
  pointer-events: initial;
}

.lohko-btn-wrap .glyphicon {
  font-size: 1.1em;
  color: #38c;
}

.lohko-btn-wrap .glyphicon-pencil {
  top: 13px;
  padding-right: 15px;
}

.lohko-btn-wrap .glyphicon-ok {
  top: 13px;
  padding-right: 10px;
  color: #75ab35;
}

.lohko-btn-wrap .lohko-btn {
  margin: 7px 12px 0 0;
  float: left;
  padding: 5px;
}

.osallistujalohko_header_paa {
  background: #e9eff1;
  outline: none !important;
  padding: 1% 2% !important;
  width: 100%;
}

.osallistujalohko_header:hover,
.nayttelylohko_header:hover {
  background: #e9f2f5;
  border: 1px solid #fff !important;
}

.osallistujalohko_header_paa:hover {
  background: #eff4f5;
}

.osallistuja_lohko .btn:focus {
  box-shadow: 0 0 6px #86bfed !important;
  border: 1px solid #90c5ef;
}

.select-paymentMethod {
  margin: 20px 0 10px 0;
}

.file-upload-section {
  margin-top: 2rem;
  margin-bottom: 3rem;
}

.bizmoduleselect label {
  height: 110px;
}

.valitsetapahtuma {
  margin-bottom: 4px;
  border: 1px solid #ddd;
  border-radius: 3px;
  height: 80px;
  padding: 10px;
}

.footer {
  padding: 0;
  float: none;
  clear: both;
  width: 90%;
  color: #333333;
  margin: auto;
  max-width: 1000px;
  overflow: auto;
  background-color: rgba(255, 255, 255, 0.6);
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.ilmo_loput .ui-checkbox input {
  width: 10px;
}

.footer .col-xs-3 label {
  clear: both;
  float: left;
  color: #333333;
  padding-left: 5px;
  padding-right: 5px;
}

.info-block label {
  width: 100%;
}

.bizmoduleselect .active h5 {
  font-weight: bold !important;
}

.valittutapahtuma img {
  max-width: 120px;
  max-height: 100px;
}

.koodinkysely {
  width: 250px !important;
}

.onnistunutkoodi {
  background: #f5fdef !important;
  border: 1px solid #c9e4b6 !important;
  width: 250px !important;
}

.ilmonkirjaus,
button.ilmonkirjaus {
  float: right;
  color: #ccc !important;
  margin-top: 4px;
  margin-left: 15px;
  font-size: 0.9em;
  text-decoration: underline;
  width: auto !important;
  background: transparent !important;
  border: none;
  padding: 0;
}

.ilmonkirjaus:hover {
  color: #fff !important;
  text-decoration: underline;
  background: transparent !important;
  cursor: pointer;
}

.ilmonkirjaus:focus {
  background: transparent !important;
}

*::-moz-placeholder {
  color: #777;
  font-style: italic;
}

.kooditable {
  width: auto;
  margin: auto;
  margin-bottom: 20px;
}

.kooditable td {
  padding: 6px 10px 6px 0;
  display: table-cell;
  float: none;
}

.kooditable .kooditable_check {
  height: 50px;
}

.kooditable .button_green {
  float: none;
  margin: auto;
}

.modal_header_style {
  float: left;
  width: 100%;
  padding: 5px 20px;
}

.modal_header_style .modal-title {
  float: left;
  padding-left: 10px;
  width: 90%;
}

.koulutus_button {
  border-radius: 1.6rem;
  color: #fff;
  font-size: 0.8em;
  text-align: center;
  width: 122px;
  height: 26px;
  margin-left: 0.5rem;
  line-height: 26px;
}

.koulutus_button.status-cancelled {
  background: #e17575;
}

.koulutus_button.status-openForApplication {
  background: #75ba5c;
}

.koulutus_button.status-applicationPeriodExpired {
  background: #ebad42;
}

.koulutus_button.status-inProgress {
  background: #a2ca56;
}

.koulutus_button.status-finished {
  background: #6692be;
}

.koulutus_button.status-default {
  background: #c488d8;
}

.tapahtuman_button {
  border: medium none;
  border-radius: 6px;
  cursor: pointer;
  float: left;
  font-size: 0.8em;
  padding: 2px;
  text-align: center;
  background: #a2ca56 url(images/k_icon.png) no-repeat center center;
  width: 90px;
  height: 90px;
  line-height: 85px;
  color: #000 !important;
}

.koulutus_image {
  float: left;
  width: 10%;
  height: 7rem;
}

.koulutus_image img {
  width: 100%;
  border-radius: 2px;
  max-height: 7.2rem;
}

.koulutus_infosect {
  float: left;
  margin-left: 0.25rem;
  width: 88%;
}

.koulutus_tiedot {
  float: left;
  margin-left: 10px;
  width: 90%;
}

.with_trainings {
  width: 50% !important;
}

.koulutus_polku {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  float: right;
  height: 100%;
  padding: 10px;
  /*position: absolute;*/
  right: 0;
  width: 400px;
  z-index: 2;
}

.koulutus_polku .ui-link {
  padding: 6px;
  border-radius: 2px;
}

.calendar_search {
  clear: both;
  display: inline-block;
  width: 100%;
}

.calendar_search .ui-input-text {
  width: 360px;
  float: left;
}

.calendar_search .ui-input-text input {
  height: 42px !important;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  padding-left: 10px;
}

.calendar_search .button_green:hover {
  background: #83c37c url("images/search_icon.png") no-repeat center !important;
  cursor: pointer;
}

.popover .button_green {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.popover_iso + .popover {
  max-width: 600px;
}

.koulutus_lista .koulutus_tiedot text {
  padding-left: 2px;
}

.calendar_tarkennettu_haku {
  height: 100%;
  padding: 10px;
  float: left;
  border-radius: 2px;
  margin-top: 2px;
  background: url("images/transparent.png") repeat;
}

.panel-default > .panel-heading {
  background-color: #fff !important;
}

.calendar_search .ui-input-text,
.form-control {
  width: 80%;
  float: left;
  height: 42px;
  margin-right: 5px;
}

#customer-info-row .ilmodiv .col-xs-8 .form-control,
#customer-row .ilmodiv .form-control,
#customer-questions-row .form-control,
.ilmodiv .form-control {
  width: 100% !important;
}

.ilmodiv_eipadding {
  padding-left: 0 !important;
  padding-right: 30px;
}

#customer-row .ilmodiv textarea.form-control,
#customer-questions-row textarea.form-control {
  width: 100% !important;
  height: 150px !important;
}

.calendar_tarkennettu_haku:hover {
  text-decoration: none;
}

.ilmodiv #Customer_Organizations {
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
}

.koulutus_lista {
  clear: both;
  float: left;
  width: 100%;
  background: #fff;
  padding: 10px;
  margin-bottom: 10px;
  border-radius: 3px;
  min-height: 90px;
  position: relative;
}

.totalrow td {
  border-top: 1px solid #d9e5e7;
  font-weight: bold;
}

.koulutus_button:hover {
  text-decoration: none;
  background: #6aae51;
}

.koulutus_button_noborder {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  float: left;
  word-wrap: break-word;
}

.koulutus_button_noborder:hover {
  text-decoration: none;
}

.koulutus_nimi .koulutus_button_noborder {
  font-size: 1.1em;
}

.koulutus_tiedot a:link {
  font-weight: normal !important;
  font-size: 1em;
  color: #64666d !important;
}

.koulutus_tiedot .koulutus_nimi .koulutus_paikka .koulutus_polku .tapahtumalinkki_calendar {
  white-space: nowrap;
  overflow: hidden !important;
  text-overflow: ellipsis;
  width: 100%;
  display: inline-block;
  text-align: left;
  color: #38c;
}

.tapahtumalinkki_calendar {
  overflow: hidden !important;
  text-overflow: ellipsis;
  width: 100%;
  display: inline-block;
  text-align: left;
  color: #38c;
}

.koulutus_nimi {
  width: 100%;
  float: left;
  clear: both;
}

.koulutus_nimi button {
  line-height: 1.3;
  float: left;
  clear: both;
  text-align: left;
  font-size: 1.2em;
}

.calendarpvm {
  color: #aaa;
}

#trainingpaths_div .modal-dialog {
  width: auto;
  max-width: 1200px;
}

#trainingpaths_div .modal-dialog .row {
  overflow: auto;
}

.koulutus_polku button {
  float: left;
  clear: both;
  text-align: left;
  color: #38c;
  cursor: pointer;
}

.koulutuspolku a {
  cursor: pointer;
}

.koulutuspolku_button_noborder {
  color: #414141;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  float: left;
}

.logo_portal {
  width: 130px;
  border-bottom-left-radius: 5px;
  cursor: default;
}

.h1_portal {
  font-weight: bold;
  text-decoration: none !important;
  margin-bottom: 10px;
  margin-top: 40px;
}

.koulutuspolku_button_noborder:hover {
  text-decoration: none;
}

.koulutus_polku .koulutus_button_noborder {
  margin-bottom: 3px;
}

.boxlink {
  height: 100%;
  width: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border: none !important;
  background: transparent;
  z-index: 1;
}

.boxlink:hover {
  background: #bcd2e2;
  opacity: 0.1;
  border: 1px solid #becdd9;
}

.boxlink:focus {
  background: #3e89c1;
  opacity: 0.1;
  border: 1px solid #becdd9;
}

.not_link {
  color: #000;
  font-size: 1em !important;
}

.rTableCell .not_link {
  color: #000;
  font-size: 0.9em !important;
}

.rTableCell .event_name {
  font-size: 1.1em;
}

.rTable {
  display: table;
  width: 100%;
  border-collapse: collapse;
}

.rTableRow {
  display: table-row;
  outline: thin solid;
  cursor: pointer;
}

.rTableRow2 {
  display: table-row;
  outline: none;
  border-top: 1px solid #eee;
}

.invoicing .rTableRow2 {
  display: table-row;
  outline: none;
  border-top: none;
}

.rTableHeading {
  display: table-header-group;
}

.rTableRow2 .rTableCell,
.rTableRow2 .rTableHead {
  display: table-cell;
  cursor: default;
  height: auto;
  font-size: 1.2em;
  vertical-align: middle;
  padding-top: 5px;
  padding-bottom: 5px;
}

.rTableRow2 .rTableCell.rTableCell--aligntop {
  vertical-align: top;
}

.rTableRow2 .rTableCell .surcharge {
  display: flex;
  flex-direction: column;
}

.rTableCell,
.rTableHead {
  display: table-cell;
  min-height: 100px;
  cursor: pointer;
  font-size: 1.2em;
  vertical-align: middle;
}

.laskutapa .rTableCell {
  width: 19%;
  padding: 0;
  margin-bottom: 0;
}

.main_calendar .calendar-page-link {
  display: block;
  background: #6eb068;
  color: #fff;
  text-decoration: none;
  padding: 1rem;
  border-radius: .5rem;
}

.main_calendar .calendar-page-link:hover {
  background: #83c37c;
}

.calendar_top {
  background: #393d42;
  height: 30px;
}

*.calendar_search .ui-input-text .form-control:focus {
  box-shadow: none !important;
}

.label_container {
  overflow: hidden;
  clear: both;
}

.calendar_label_bold {
  margin-top: 20px;
  padding-left: 5px;
}

.label_container label {
  float: left;
}

.calendar_label_bold {
  font-weight: 600 !important;
  font-size: 1.1em;
  float: left;
  clear: both;
  margin-bottom: 5px;
}

.calendar_label_info {
  clear: both;
  float: left;
  margin-bottom: 10px;
  padding-left: 5px;
}

.content-30-tapahtumavalinta .calendar_label_info {
  margin-bottom: 2px;
}

.lista_active {
  background: #fff url("images/list_icon.png") no-repeat center;
  width: 80px;
  height: 52px;
  border: 0px solid transparent;
  border-radius: 2px;
  cursor: default !important;
  box-shadow: inset 0 0 3px #cccccc;
}

.kalenteri {
  background: #fff url("images/calendar_icon_active.png") no-repeat center;
  width: 80px;
  height: 50px;
  box-shadow: 0 0 3px #d8d8d8;
  border-radius: 2px;
  border: 1px solid #cbe0e8;
}

.puu {
  background: #fff url("images/tree_icon_active.png") no-repeat center;
  width: 80px;
  height: 50px;
  box-shadow: 0 0 3px #d8d8d8;
  border-radius: 2px;
  border: 1px solid #cbe0e8;
}

.koulutukset_kalenterina .fc-scroller {
  height: auto !important;
  overflow: auto;
}

.lista {
  background: #fff url("images/list_icon_active.png") no-repeat center;
  width: 80px;
  height: 50px;
  border-radius: 2px;
  border: 1px solid #cbe0e8;
}

.lista:hover {
  background: #f7fafc url("images/list_icon_active.png") no-repeat center;
  width: 80px;
  height: 50px;
  border: 1px solid #cbe0e8;
}

.lista:focus,
.lista_active:focus {
  background: #fff url("images/list_icon_active.png") no-repeat center;
  width: 80px;
  height: 52px;
  border: 1px solid #becdd9;
  box-shadow: 0 0 6px #86bfed !important;
}

.kalenteri_active {
  background: #fff url("images/calendar_icon.png") no-repeat center;
  width: 80px;
  height: 52px;
  border-radius: 2px;
  cursor: default !important;
  box-shadow: inset 0 0 3px #cccccc;
  border: none;
}

.puu_active {
  background: #fff url("images/tree_icon.png") no-repeat center;
  width: 80px;
  height: 52px;
  border: 1px solid transparent;
  border-radius: 2px;
  cursor: default !important;
  box-shadow: inset 0 0 3px #cccccc;
}

.input-group-addon {
  color: #555;
  background-color: #f1f5f8;
  cursor: pointer;
}

.input-group-addon:hover,
.input-group-addon:focus,
.input-group-addon:active {
  background-color: #f1f5f8;
  cursor: pointer;
}

.kalenteri:hover {
  background: #f7fafc url("images/calendar_icon_active.png") no-repeat center;
  width: 80px;
  height: 51px;
  border: 1px solid #cbe0e8;
}

.kalenteri:focus,
.kalenteri_active:focus {
  background: #fff url("images/calendar_icon_active.png") no-repeat center;
  width: 80px;
  height: 51px;
  border: 1px solid #becdd9;
  box-shadow: 0 0 6px #86bfed !important;
}

.puu:hover {
  background: #f7fafc url("images/tree_icon_active.png") no-repeat center;
  width: 80px;
  height: 51px;
  border: 1px solid #cbe0e8;
}

.puu:focus,
.puu_active:focus {
  background: #fff url("images/tree_icon_active.png") no-repeat center;
  width: 80px;
  height: 52px;
  border: 1px solid #becdd9;
  box-shadow: 0 0 6px #86bfed !important;
}

#trainingpath-modal-content .modal-body {
  padding: 25px;
}

.modal-header {
  background: #2f2e2c;
  border-bottom: 1px solid #e5e5e5;
  min-height: 16.43px;
  padding: 0 15px 15px 7px;
}

.modal-header .close {
  color: #fff !important;
  opacity: 0.9;
  margin-top: 10px;
}

.modal-header h4 {
  float: none;
  color: #ddd !important;
  font-size: 1.2em !important;
  font-weight: bold;
  margin-left: 20px !important;
}

.modal-header h3,
.modal-header h1 {
  float: none;
  color: #ddd !important;
  font-size: 1.2em !important;
  font-weight: bold;
  margin-left: 20px !important;
  padding-top: 10px;
}

#portalcontent #add_popup_content2 .modal-header {
  margin-top: -20px;
  padding-top: 1px;
}

.border_link {
  float: left;
  margin-right: 5px;
  font-weight: normal !important;
  background: #fff;
  color: #69a4cc;
  padding: 10px 20px;
  text-align: center;
  border: 1px solid #9ac4e1;
  text-decoration: none;
  margin: auto 2% 10px auto;
  text-transform: uppercase;
  border-radius: 3px;
  background: transparent none repeat scroll 0% 0%;
}

.border_link:hover {
  background: #ededed;
  background: #e7f2f6 none repeat scroll 0% 0%;
  border: 1px solid #afd2ea;
}

.koulutus_jarjestaja .koulutus_pvm_jakso {
  clear: both;
}

.koulutus_jarjestaja,
.koulutus_paikka {
  clear: both;
  font-size: 0.9em;
}

.kalenteri_paivat {
  clear: both;
  float: left;
}

.panel-title a:link {
  width: 100%;
  line-height: 25px;
  float: left;
  padding: 10px 10px 10px 15px;
  outline: 0 none;
  background-color: #f3f7f9;
  border: none !important;
  border-radius: 3px;
  text-decoration: none !important;
  font-weight: bold;
  font-size: 1em;
  padding-left: 45px;
  background: #f3f7f9 url(images/arrow_up.png) no-repeat left;
  color: #515151 !important;
}

.panel-title .notexpandable {
  border-radius: 3px;
  width: 100%;
  line-height: 25px;
  float: left;
  padding: 10px 10px 10px 15px;
  padding-left: 45px;
  background-color: #f6fafb;
  border: 1px solid transparent;
  font-weight: bold;
}

.panel-title .collapsed:link {
  background: #ebf0f1 url("images/arrow_down.png") no-repeat scroll left center;
  border-radius: 3px;
  color: #515151;
  font-size: 1em;
  font-weight: bold;
  padding-left: 45px;
  text-decoration: none !important;
  border: 1px solid transparent;
}

.panel-title .collapsed:hover,
.panel-title a:hover {
  background-color: #f3f7f9 !important;
  font-weight: bold;
  color: #515151 !important;
}

.panel-title .collapsed:focus,
.panel-title a:focus,
.panel-title .CollapseMark:focus,
.CollapseMark a:focus {
  color: #515151 !important;
  font-weight: bold;
  border-radius: 3px;
  box-shadow: 0 0 6px #86bfed !important;
  border: 1px solid #becdd9 !important;
}

.panel-heading,
.panel-group,
.panel-default,
.panel-collapse,
.panel-body,
.panel-title {
  clear: both;
  float: left;
  width: 100%;
}

.content-1-calendar {
  padding-top: 7px;
}

.calendar_top_link {
  border: 1px solid transparent;
  border-radius: 2px;
  padding: 3px 2px;
}

.calendar_top_link:hover {
  background: transparent !important;
  color: #fff !important;
}

.calendar_top_link:focus {
  background: transparent !important;
  border: 1px solid #5d8aaf;
  box-shadow: none !important;
}

/*Styles for calendar end*/
/*Styles for portal start:*/
.portalkielet a {
  padding-left: 3px !important;
  padding-right: 3px !important;
  font-size: 0.9em;
}

.portalkielet {
  margin-left: 30px;
}

.div_top .navbar-brand {
  padding: 10px 0;
  margin-right: 30px;
}

.hakukriteerit {
  max-width: 400px;
  margin-bottom: 10px;
  float: left;
  clear: both;
  width: 90%;
}

.ticketrow {
  width: 100%;
  background: #fafafa;
  outline: none !important;
  padding: 1% 2% !important;
}

.ticket_code {
  clear: both;
  font-weight: normal;
}

.ticket_ticket {
  clear: both;
}

.ticket_content {
  padding: 0 2%;
}

/* Portal FutureEvents (index) begins */
/* Portal FutureEvents (index) ends */
/*Styles for portal end*/
.ticket_portal .col-xs-2,
.ticket_portal .col-xs-1,
.ticket_portal .col-xs-3 {
  word-wrap: break-word;
  text-align: left;
  white-space: pre;
  /* CSS 2.0 */
  white-space: pre-wrap;
  /* CSS 2.1 */
  white-space: pre-line;
  /* CSS 3.0 */
  white-space: -pre-wrap;
  /* Opera 4-6 */
  white-space: -o-pre-wrap;
  /* Opera 7 */
  white-space: -moz-pre-wrap;
  /* Mozilla */
  white-space: -hp-pre-wrap;
  /* HP Printers */
  word-wrap: break-word;
  /* IE 5+ */
  line-height: 14px;
}

.ticket_number {
  font-weight: bold;
  width: 30px;
}

.ticket_main_div {
  border: 1px solid #eee !important;
  width: 100%;
  clear: both;
  margin-bottom: 5px;
  border-radius: 3px;
}

.ticket_main_div_paaosallistuja {
  width: 100%;
  clear: both;
  margin-bottom: 10px;
  border-radius: 3px;
}

.usernamebutton {
  background: transparent;
  color: #ccc;
}

.usernamebutton:hover,
.usernamebutton:active,
.usernamebutton:focus {
  background: #000;
  color: #fff !important;
}

.ticket_main_div .osallistujalohko_header,
.ticket_main_div_paaosallistuja .osallistujalohko_header {
  background: #e1ecf0;
}

.ticket_main_div .osallistujalohko_header:hover,
.ticket_main_div_paaosallistuja .osallistujalohko_header:hover {
  background: #e9f2f5;
}

.osallistujalohko_header div {
  font-size: 1.1em;
}

.portal_icons {
  float: left;
  margin-right: 10px;
  font-size: 1em;
  position: absolute;
  z-index: 10;
  top: 10px;
  right: 0;
}

.ticket_main_div_lisaosallistuja {
  width: 100%;
  clear: both;
  margin-bottom: 10px;
  border-radius: 3px;
}

.ticket_header {
  padding: 1% 2% !important;
  width: 100% !important;
  font-weight: bold;
  font-size: 1em;
}

.ticket_header_mob {
  padding: 5px 0 !important;
  width: 100% !important;
  font-weight: bold;
  font-size: 1em;
}

.ilmon_loppupainikkeet a {
  display: inline-block;
  margin-bottom: 20px;
}

/*Styles for feedback form start:*/
.feedback__points-text {
  font-weight: bold;
  font-size: 13px;
}

.kysymys {
  margin-bottom: 40px;
  float: left;
  clear: both;
  overflow-x: auto;
  width: 98%;
}

.timetext {
  color: #507da1;
}

.kysymys .button_green {
  float: none;
  margin: auto;
  max-width: 300px;
}

.kysymys .col-xs-12 {
  padding-left: 0;
  padding-bottom: 1px;
}

.skaala_td {
  text-align: center;
  padding-left: 4px;
  padding-right: 4px;
}

.kysymys h3 {
  background: #e1eef2 none repeat scroll 0 0;
  border-radius: 3px;
  font-size: 1.3em;
  font-weight: bold !important;
  margin-bottom: 0;
  padding: 10px;
  color: #000;
}

.lomake {
  background: #fff none repeat scroll 0 0;
  border-radius: 6px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  clear: both;
  margin: auto;
  max-width: 1000px;
  padding: 3%;
  width: 90%;
  margin-top: 20px;
}

.matriisitaulukko td {
  padding: 8px !important;
}

.kysymys .ui-buttonset {
  width: 100%;
}

.checkbox,
.radio {
  margin-top: 0;
  margin-bottom: 0;
}

.checkbox label,
.radio label {
  padding-left: 0 !important;
}

.tekstikentta_rivi {
  height: 36px !important;
  box-shadow: none;
  border-radius: 3px;
  padding: 6px 8px !important;
  border: 1px solid #ddd;
  width: 100%;
  max-width: 500px;
}

.tekstikentta_skaalattava {
  box-shadow: none;
  border-radius: 3px;
  padding: 6px 8px !important;
  border: 1px solid #ddd;
  width: 100%;
  max-width: 500px;
}

.ohjeteksti {
  color: #666;
  margin-bottom: 30px;
}

.ohjeteksti2 {
  color: #666;
  font-size: 0.85em;
}

.kysymys_ohje {
  color: #4b4b4b;
}

.kysymys label {
  font-weight: bold;
}

.kysymys_teksti {
  font-weight: normal !important;
}

.bottom {
  margin-top: 15px;
  text-align: center;
  font-size: 0.9em;
  color: #333333;
  padding-top: 20px;
  float: left;
  clear: both;
  width: 100%;
}

.footer .col-xs-3 {
  padding-top: 15px;
  padding-left: 0;
  padding-right: 0;
}

.matriisi_eka_rivi th {
  padding: 10px 0px 0px 15px;
}

.bottom a {
  color: #333333 !important;
  text-decoration: underline;
  border: 1px solid transparent;
  padding-left: 2px;
  padding-right: 2px;
  border-radius: 2px;
}

.bottom a:hover {
  color: #2e2e2e !important;
  text-decoration: underline !important;
  border: 1px solid transparent;
}

.bottom a:focus {
  color: #2e2e2e !important;
  text-decoration: underline !important;
  box-shadow: 0 0 6px #38c;
}

.skaalarivi td {
  padding: 0 3px;
}

.skaalavaihtoehto {
  width: 20%;
}

.skaalarivi {
  display: table;
  width: 100%;
}

.skaala_tr {
  display: table-row;
}

.skaala_td {
  display: table-cell;
  width: 50px;
}

.feedback_h1 {
  margin-top: 20px;
}

h2.feedback__subheader {
  margin-bottom: 1.5rem;
}

.feedback__subheader {
  margin: 0.25rem 0;
  padding: 0;
}

.feedback__info-block {
  margin-bottom: 1.5rem;
}

.feedback__info-content {
  margin-bottom: 0.5rem;
}

.feedback__question-block {
  margin-bottom: 2.5rem;
}

.feedback__question-text {
  font-size: 17px;
  font-weight: 600;
}

/*Styles for feedback form end*/
.donation {
  height: 30px !important;
  width: 85px !important;
  float: right;
  text-align: right !important;
  margin-right: 0;
}

.order-quantity {
  height: 30px !important;
  width: 45px;
  margin-right: 0;
  text-align: right;
}

/* Portal content header begin */
.portalevent_contextmenu {
  display: flex;
  align-items: center;
  width: 100%;
  position: fixed;
  margin-top: 42px;
  background: #fff;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.33);
  z-index: 199;
  height: auto;
}

.portalevent_contextmenu .portalevent_contextmenu__inner {
  display: flex;
  justify-content: space-between;
  padding: 8px;
  width: 100%;
  max-width: 1184px;
  margin: 0 auto;
}

.portalevent_contextmenu .portalevent_contextmenu__inner .eventname_nav {
  font-weight: 500;
  padding: 0 0 0 12px;
  margin-right: 1rem;
  flex: 0 0 auto;
}

.portalevent_contextmenu .portalevent_contextmenu__inner .formname_nav {
  font-weight: 500;
  padding: 0 0 0 12px;
  margin-right: 1rem;
  flex: 0 0 auto;
}

.portalevent_contextmenu .portalevent_contextmenu__inner .contextmenu__links {
  display: flex;
  flex: 1 1 auto;
  justify-content: flex-end;
}

.portalevent_contextmenu .portalevent_contextmenu__inner .contextmenu__links .materials_link {
  margin-right: 1.1em;
}

.portalevent_contextmenu .portalevent_contextmenu__inner .contextmenu__links .rewards_link {
  margin-right: 1.1em;
}

.portalevent_contextmenu .portalevent_contextmenu__inner .contextmenu__links .lectureserieses_link {
  margin-right: 1.1em;
}

@media only screen and (max-width: 940px) {
  .portalevent_contextmenu {
    height: auto;
  }
  .portalevent_contextmenu .portalevent_contextmenu__inner .eventname_nav {
    font-weight: 500;
    padding: 0 0 0 12px;
    margin-right: 2rem;
  }
  .portalevent_contextmenu .portalevent_contextmenu__inner .contextmenu__links {
    flex-wrap: wrap;
    display: flex;
    flex: 0 0 50%;
  }
  .portalevent_contextmenu .portalevent_contextmenu__inner .contextmenu__links .materials_link {
    display: flex;
    flex: 0 0 50%;
    margin: 0;
  }
  .portalevent_contextmenu .portalevent_contextmenu__inner .contextmenu__links .rewards_link {
    display: flex;
    flex: 0 0 50%;
    margin: 0;
  }
  .portalevent_contextmenu .portalevent_contextmenu__inner .contextmenu__links .lectureserieses_link {
    display: flex;
    flex: 0 0 50%;
    margin: 0;
  }
  .portalevent_contextmenu .portalevent_contextmenu__inner .contextmenu__links .notifications_link {
    display: flex;
    flex: 0 0 50%;
    margin: 0;
  }
}

/* Portal content header end */
/* Portal FutureEvent (index) begins */
.hr-container {
  border-color: #75ab35;
}

.portal_container {
  max-width: 1200px;
  margin: 80px auto 0 auto;
  padding: 10px;
}

.portal_eventcard_main {
  display: flex;
  border-left: 2px solid #16a30e;
  min-height: 7.5em;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.33);
  background-color: white;
  padding: 6px;
  margin-bottom: 1rem;
}

.portal_eventcard_eventlogo {
  display: flex;
  align-items: center;
  width: 7.5rem;
  height: 7.5rem;
  padding: 0 0.6rem;
}

.portal_eventcard_eventlogo img {
  width: 6rem;
  height: 6rem;
  border-radius: 4px;
}

.hr-mobile {
  display: none;
}

.portal_eventcard_wrapper {
  width: 100%;
  padding: 0 0.5rem;
}

.portal_eventcard_header {
  display: flex;
  justify-content: space-between;
  min-width: 100%;
}

.portal_eventcard_contentwrapper {
  display: flex;
  justify-content: space-between;
}

.portal_eventcard_inner_wrapper {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.portal_eventcard_contentwrapper .lectureserie_list {
  display: flex;
  flex-direction: column;
  padding: 0.5rem 2rem;
}

.portal_eventcard_content {
  padding: 7px 0;
}

.portal_eventcard_eventinfo {
  display: flex;
  flex-direction: column;
  flex: 0 0 22%;
}

.portal_eventcard_date {
  display: flex;
  flex: 0 0 22%;
  align-items: center;
}

.eventcard_links_section {
  margin-left: 1rem;
  width: 100%;
}

.portal_eventcard_title {
  font-weight: 400;
  font-size: 1.3em;
}

.title_separator {
  margin-top: 4px;
  margin-bottom: 4px;
  width: 100%;
}

.registration_detail {
  padding: 2px;
  display: flex;
}

.materials_link_regdetails {
  margin-right: 0.5rem;
}

.rewards_link_regdetails {
  margin-right: 0.5rem;
}

.lectureserieslist_link_regdetails {
  margin-right: 0.5rem;
}

.portal_eventcard_eventlogo_md {
  display: none;
}

.portal_eventcard_eventinfo_wrapper {
  display: flex;
  font-weight: 600;
}

.portal_eventcard_eventinfo_title {
  display: flex;
  font-weight: 600;
}

.portal_eventcard_eventinfo_content {
  display: flex;
  margin-left: 0.5rem;
  font-weight: 400;
}

@media only screen and (max-width: 805px) {
  .portal_eventcard_title {
    display: flex;
  }
  .portal_eventcard_main {
    flex-direction: row;
  }
  .portal_eventcard_contentwrapper {
    display: flex;
    flex-direction: column;
  }
  .hr-mobile {
    display: block !important;
    margin: 4px 0 2px 0;
    width: 100%;
  }
  .portal_eventcard_header {
    display: flex;
  }
  .portal_event_card_contentwrapper {
    flex-direction: column;
  }
}

@media only screen and (max-width: 640px) {
  .portal_eventcard_main {
    flex-direction: column;
    display: flex;
    border-left: none;
    border-bottom: 2px solid #16a30e;
    min-height: 7.5em;
    padding: 6px;
    margin-bottom: 1rem;
  }
  .portal_eventcard_wrapper_md {
    display: flex;
  }
  .portal_eventcard_title {
    display: block;
    overflow: hidden;
  }
  .portal_eventcard_header {
    flex-direction: column;
    justify-content: flex-start;
    min-width: unset;
  }
  .portal_eventcard_eventlogo_md {
    display: flex;
    align-items: center;
    min-width: 5rem;
    min-height: 5rem;
    padding: 0.5rem;
    flex: 0 0 25%;
  }
  .portal_eventcard_eventlogo_md img {
    width: 4rem;
    height: 4rem;
    border-radius: 4px;
  }
  .portal_eventcard_eventlogo {
    display: none;
  }
  .eventcard_links_section {
    margin-left: 0 !important;
    display: flex;
    flex-wrap: wrap;
  }
  .materials_link_regdetails {
    margin-right: 0 !important;
    display: flex;
    flex: 0 0 50%;
    align-items: center;
  }
  .rewards_link_regdetails {
    margin-right: 0 !important;
    display: flex;
    flex: 0 0 50%;
    align-items: center;
  }
  .lectureserieslist_link_regdetails {
    margin-right: 0 !important;
    display: flex;
    flex: 0 0 50%;
    align-items: center;
  }
  .notifications_link_regdetails {
    margin-right: 0 !important;
    display: flex;
    flex: 0 0 50%;
    align-items: center;
  }
  .portal_container {
    padding: 0;
    margin: 80px 0 0 0;
  }
}

/* Portal FutureEvents ends */
/* Portal PastEvents start */
.portal__past_events__main {
  display: flex;
  width: 100%;
  background: #fff;
  border-left: 2px solid #16a30e;
  border-bottom: 2px solid #16a30e;
  padding: 0.5rem;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.33);
  margin-bottom: 1.5rem;
}

.portal__past_events__header {
  margin-top: 0.5rem;
  font-weight: 600;
}

.portal__past_events__eventname {
  font-weight: 700;
}

.portal__past_events__links {
  display: flex;
}

.portal__past_events__organizer {
  margin-top: 1rem;
}

.portal__past_events--link {
  margin-right: 1rem;
}

.portal__past_events__wrapper {
  flex: 0 0 50%;
  flex-direction: column;
}

/* Portal PastEvents ends */
/*Style for Pro Medico (siirrettävä muualle*/
.pallo {
  float: left;
  height: 128px;
  margin-right: -34px;
  position: relative;
  width: 128px;
  z-index: 2;
}

.pallo_laaketiede {
  background: url(images/promedico/pallo_laaketiede_harmaa.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_laaketiede:hover {
  background: url(images/promedico/pallo_laaketiede.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_laaketiede-checked {
  background: url(images/promedico/pallo_laaketiede.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_tiedonhallinta {
  background: url(images/promedico/pallo_tiedonhallinta_harmaa.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_tiedonhallinta:hover {
  background: url(images/promedico/pallo_tiedonhallinta.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_tiedonhallinta-checked {
  background: url(images/promedico/pallo_tiedonhallinta.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_professionalismi {
  background: url(images/promedico/pallo_professionalismi_harmaa.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_professionalismi:hover {
  background: url(images/promedico/pallo_professionalismi.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_professionalismi-checked {
  background: url(images/promedico/pallo_professionalismi.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_vuorovaikutus {
  background: url(images/promedico/pallo_vuorovaikutus_harmaa.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_vuorovaikutus:hover {
  background: url(images/promedico//pallo_vuorovaikutus.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_vuorovaikutus-checked {
  background: url(images/promedico//pallo_vuorovaikutus.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_yhteistyo {
  background: url(images/promedico/pallo_yhteistyo_harmaa.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_yhteistyo:hover {
  background: url(images/promedico/pallo_yhteistyo.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_yhteistyo-checked {
  background: url(images/promedico/pallo_yhteistyo.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_terveys {
  background: url(images/promedico/pallo_terveys_harmaa.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_terveys:hover {
  background: url(images/promedico/pallo_terveys.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_terveys-checked {
  background: url(images/promedico/pallo_terveys.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_toiminnanohjaus {
  background: url(images/promedico/pallo_toiminnanohjaus_harmaa.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_toiminnanohjaus:hover {
  background: url(images/promedico/pallo_toiminnanohjaus.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

.pallo_toiminnanohjaus-checked {
  background: url(images/promedico/pallo_toiminnanohjaus.png) no-repeat;
  float: left;
  width: 128px;
  height: 128px;
}

/*Styles for Pro Medico end*/
.fade.in {
  -webkit-animation-duration: 225ms;
  -webkit-animation-name: none !important;
  -moz-animation-duration: 225ms;
  -moz-animation-name: none !important;
  animation-duration: 225ms;
  animation-name: none !important;
}

.tooltip.in {
  opacity: 1;
  filter: alpha(opacity=100);
}

/*ilmo/portal*/
.ilmo_ylaosa {
  position: relative;
}

.ilmo_alaosa .col-xs-4 {
  padding: 0;
}

.ilmo_loput {
  top: 0;
  z-index: 2;
  margin: auto;
  width: 100%;
  padding: 90px 25px 70px 25px;
}

.file-style-middle,
.file-style-left,
.file-style-right {
  display: block;
  text-align: center;
}

.logoRowRelative {
  position: relative;
  margin: 0 -0px;
  padding-top: 25px;
  padding-bottom: 15px;
}

.logoRowAbsolute {
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  transform: translateY(-50%);
  z-index: 100;
  margin: 0 0px;
}

.ilmon_ylaosa1 {
  margin: 0 0px;
}

.ilmon_ylaosa .file-style-left,
.ilmon_ylaosa .file-style-middle,
.ilmon_ylaosa .file-style-right {
  padding: 0 !important;
}

#cal-searchform-div .dropdown-menu {
  overflow-y: auto;
}

#cal-searchform-div .btn-group .multiselect-container {
  width: initial;
}

/*Media queries start*/
@media only screen and (max-width: 1400px) {
  .main_calendar .col-xs-8 {
    width: 66.6667% !important;
  }
  .main_portal .divi30,
  .main_portal .divi70 {
    clear: both !important;
    width: 100% !important;
  }
  .main_portal .main_portal .content {
    width: 100%;
  }
  .portal_nav {
    margin-top: 10px;
    background: #fff;
    width: 100%;
    position: absolute;
    top: 37px;
  }
  .portal_nav a {
    color: #4a4a4a;
  }
  .portal_nav a:hover {
    color: #337ab7;
    background: transparent !important;
  }
}

@media only screen and (max-width: 1200px) {
  .content-70-tapahtumavalinta,
  .content-30-tapahtumavalinta {
    clear: both;
    width: 100%;
  }
  .portaaliuser {
    display: none;
  }
  .tooltipevent {
    position: absolute !important;
    left: 15% !important;
    width: 70% !important;
  }
  .navbar-brand {
    max-width: 140px;
  }
  .div_top .navbar-brand {
    padding: 15px;
  }
  .portal_links {
    max-width: 600px;
  }
  .portal_links li {
    width: 25%;
    height: 100%;
  }
  .portal_links li a {
    text-align: center;
    height: 100%;
    padding-left: 12px;
    padding-right: 12px;
  }
  .portalkielet {
    width: 100px;
    margin-top: 10px;
  }
  .portalkielet a {
    padding-top: 4px !important;
    padding-bottom: 0px !important;
    font-size: 0.8em;
  }
}

.registration-header {
  min-height: 300px;
  min-width: 100%;
}

#RegistrationMainUpdateDiv {
  /*margin-top: -5px;*/
  padding-top: 5px;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

@media only screen and (max-width: 1000px) {
  .ticket_portal .col-xs-2,
  .ticket_portal .col-xs-1,
  .ticket_portal .col-xs-3 {
    width: 50%;
  }
  .ticket_portal .ticket_check {
    width: 50px !important;
  }
  .ticket_header {
    display: none;
  }
  #portalcontent .main_portal .col-xs-6 {
    width: 100%;
  }
  .ilmodiv .row .col-xs-9 {
    max-width: 220px;
  }
  .laskutapa .rTableCell {
    margin-bottom: 1%;
  }
  .content {
    width: 94%;
  }
  .ticket_main_div_paaosallistuja .col-xs-5,
  .ticket_main_div_lisaosallistuja .col-xs-5,
  .ticket_main_div_paaosallistuja .col-xs-2,
  .ticket_main_div_lisaosallistuja .col-xs-2 {
    width: 98%;
  }
}

@media only screen and (max-width: 900px) {
  .content-30-tapahtumavalinta,
  .content-70-tapahtumavalinta {
    padding: 4%;
  }
  .col-xs-2 {
    width: 25% !important;
  }
  .koulutus_polku {
    clear: both;
    width: 100%;
  }
  .kysymys textarea {
    width: 100%;
  }
  .koulutukset_lista {
    float: left;
    clear: both;
    height: auto;
    width: 100%;
  }
  .panel-title a:link {
    height: auto !important;
  }
  .calendar_login_box {
    width: 100%;
    clear: both;
    text-align: center;
    float: none;
    margin: auto;
    margin-top: 20px;
  }
  .main_calendar .content-1 {
    padding: 5%;
  }
  .calendar_login_box .button_green {
    float: none;
  }
  .navbar-brand {
    max-width: 120px;
  }
  .div_top .navbar-brand {
    padding: 20px;
  }
  .ilmodiv .row .col-xs-9 {
    max-width: 550px;
    margin-top: 5px;
    width: 100%;
    padding-right: 0;
  }
}

@media only screen and (max-width: 900px) {
  .registration-header {
    min-height: 150px;
  }
  .ticket_portal .col-xs-2,
  .ticket_portal .col-xs-1,
  .ticket_portal .col-xs-3 {
    width: 100% !important;
  }
  .ticket_main_div .ilmodiv,
  .ticket_main_div_lisaosallistuja .ilmodiv,
  .ticket_main_div_paaosallistuja .ilmodiv {
    padding: 4%;
  }
  .portal_nav .navbar-toggle {
    width: 100%;
    background: url("images/search_icon.png") no-repeat scroll center center;
  }
}

@media only screen and (max-width: 767px) {
  .osallistujalohko_header h2.participantname-field {
    flex-direction: column;
  }
  .force-small-ui-checkbox .indent-left {
    margin-left: 0 !important;
  }
  .container_ilmo {
    padding: 70px 10px;
  }
  .file-style-full,
  .file-style-row,
  .logoRowRelative {
    margin-left: -10px;
    margin-right: -10px;
  }
  .portal_links {
    max-width: 96%;
  }
  table.tableresp {
    width: 100%;
  }
  table.tableresp thead {
    display: none;
  }
  table.tableresptr:nth-of-type(2n) {
    background-color: inherit;
  }
  table.tableresp tr td:first-child {
    font-weight: bold;
    padding-top: 20px !important;
  }
  table.tableresp tbody td {
    display: block;
    text-align: left;
    padding-bottom: 10px;
  }
  table.tableresp tbody td:before {
    content: attr(data-th);
    /*display: block;*/
    text-align: left;
  }
  table.tableresp tr .deletelink {
    padding-bottom: 14px;
  }
  table.tableresp tr td {
    font-weight: bold;
  }
  table.tableresp tr td label {
    font-weight: normal;
    padding-left: 10px;
  }
  .tableresp .right_align,
  .tableresp .mobile_select {
    text-align: left;
    padding-left: 10px;
  }
  .tableresp .mobile_textbox {
    text-align: left;
    padding-left: 10px;
  }
  .tableresp .mobile_textbox div input {
    float: left;
  }
  .mobile_textbox .form-control {
    float: none;
    margin: auto;
    font-weight: normal;
  }
  .mobile_checkbox .ui-checkbox {
    width: 35px !important;
    margin: auto;
    margin-top: -8px;
  }
  table.tableresp tbody td {
    padding-bottom: 1px;
  }
  table.tableresp .mobile_checkbox .checkbox_label {
    width: 32px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  table.tableresp tr .mobile_checkbox {
    width: 100%;
    float: left;
    padding-top: 10px !important;
  }
  table.tableresp .mobile_checkbox .ui-checkbox {
    float: left;
  }
  table.tableresp .mobile_select {
    width: 100%;
    float: left;
  }
  .totalrow td {
    border: none;
  }
  .totalrow .mobile_select {
    display: none;
  }
  table.tableresp .verollinen {
    float: left;
    width: 100%;
    clear: both;
  }
  table.tableresp .veroton,
  table.tableresp .kpl {
    float: left;
    width: 100%;
  }
  table.tableresp tbody .totalrow .notmobile::before {
    content: none;
  }
  .toimintopainikkeet div .portal_toiminnot_mobile .btn_link {
    width: 100% !important;
    padding: 5px !important;
    height: 32px !important;
    min-height: 32px !important;
    color: #337ab7;
  }
  .laskutapa .rTableCell {
    width: 50%;
  }
  .div_top_portal ul li {
    min-height: 35px;
  }
  .div_top_portal ul li.divider {
    min-height: 1px;
  }
  .powerbottom {
    display: inherit;
  }
  .mobiilimenu {
    margin-top: 32px !important;
    width: 100%;
  }
  .mobiilimenu li a {
    color: #337ab7 !important;
  }
  .portal_toiminnot_screen {
    display: none;
  }
  .portal_toiminnot_mobile {
    display: inherit;
  }
  .powertop {
    display: none;
  }
  .logo_portal {
    width: 100%;
    text-align: center;
    margin-top: 20px;
  }
  .logo_portal img {
    margin: auto;
  }
  .toimintopainikkeet div .btn_link {
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    background: transparent linear-gradient(to bottom, #fff 0%, #f4f7f7 100%, #fff 100%, #ccc 100%) repeat scroll 0 0 !important;
    border-color: #dee4ed #dee4ed #d1d8e2 !important;
    border-image: none;
    border-style: solid !important;
    border-width: 1px !important;
    display: block;
    float: left;
    height: 35px;
    margin-bottom: 5px;
    margin-right: 2%;
    margin-top: 0 !important;
    min-height: 40px;
    padding-bottom: 8px !important;
    padding-top: 10px !important;
    width: 23% !important;
  }
  .toiminnot_mobiili {
    width: 100%;
  }
  .osallistujalohko_header .selitedivi {
    width: 80%;
  }
  .osallistujalohko_header .divi100 {
    width: 100%;
  }
  .h1_portal {
    margin-top: 0;
  }
  #GiveFeedbackForm .file-style-left {
    margin-bottom: 30px;
  }
  .laskutapa .active,
  .laskutapa .btn {
    margin-bottom: 5px;
  }
  .laskutapa .active {
    box-shadow: none !important;
    color: #333 !important;
    font-weight: bold;
    outline: medium none;
  }
  .portal_logo {
    width: 150px;
  }
  .rTableCell {
    width: 100%;
    float: left;
  }
  .div_top_portal .toplinkki {
    width: 100%;
  }
  .div_top_portal .dropdown-menu a {
    color: #d3d3d3;
  }
  .div_top_portal .dropdown-menu a:hover {
    color: #fff;
    background: transparent;
  }
  .div_top_portal ul {
    background: #222222;
  }
  .ilmontable td {
    padding: 5px;
    border-top: none !important;
  }
  #customer-row .ilmodiv .lisakysymykset input.form-control,
  #customer-questions-row .ilmodiv .lisakysymykset input.form-control {
    width: 100% !important;
  }
  .content-30-tapahtumavalinta,
  .content-70-tapahtumavalinta {
    padding: 3% 5%;
  }
  #GiveFeedbackForm .file-style-middle {
    margin-bottom: 30px;
    padding-left: 7px;
    padding-right: 7px;
  }
  #GiveFeedbackForm .file-style-right {
    margin-bottom: 30px;
  }
  .calendar_search .ui-input-text {
    width: 70%;
  }
  .form-control {
    width: 100%;
  }
  .portal_logo {
    max-width: 120px;
  }
  #GiveFeedbackForm .container_ilmo {
    padding: 6%;
  }
  .portal_links li {
    width: 100%;
    height: auto;
  }
  .portal_links li a {
    text-align: left;
    height: auto;
    padding-left: 10px;
    padding-right: 10px;
  }
  .ilmo_event_information h1 {
    font-size: 2em;
    white-space: normal;
    word-wrap: break-word;
  }
  .skaalarivi {
    display: block;
    width: 100%;
    float: left;
  }
  .skaala_tr {
    display: block;
  }
  .skaala_td {
    display: block;
    text-align: center;
  }
  .str1 .skaala_td {
    height: 40px;
    width: 50px;
  }
  .str2 .skaala_td {
    height: 40px;
    width: 50px;
    padding-top: 10px;
  }
  .str1 {
    width: 100% !important;
    float: left;
    position: relative;
    left: 0;
  }
  .str2 {
    width: 90%;
    float: right;
    text-align: left !important;
    position: absolute;
    left: 40px;
  }
  .user_link ul {
    margin-left: 0;
  }
  .user_link button {
    display: none;
  }
  .user_link .dropdown-menu {
    display: inherit;
    top: 0;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
  }
  .user_link {
    height: 100px;
  }
  .user_link ul li a {
    padding-left: 10px !important;
    color: #9d9d9d !important;
    box-shadow: none !important;
  }
  .user_link ul li a:hover {
    padding-left: 10px !important;
    color: #000 !important;
    box-shadow: none !important;
  }
  .portalkielet {
    width: 96%;
    margin: 7.5px -7px;
  }
  .portalkielet li {
    width: auto;
  }
  .portalkielet a {
    padding-top: 4px !important;
    padding-bottom: 0px !important;
    font-size: 0.8em;
  }
  .kalenteri_oikea_painikkeet .ui-link,
  .content-30-tapahtumavalinta .btn_link {
    width: 100%;
    display: block;
    margin: auto;
    margin-bottom: 5px;
  }
  .ilmontable .floatclear {
    clear: both;
    width: 100%;
    float: left;
  }
  .no_mobile {
    display: none;
  }
}

@media only screen and (max-width: 697px) {
  .btn-green {
    padding: 14px 8px;
    font-size: 16px;
    height: 50px;
  }
  .ilmo_content .col-xs-6 {
    width: 100%;
  }
  #first-row .ilmodiv {
    padding-left: 0;
    padding-right: 0;
  }
  .osallistujalohko_header h2,
  .osallistujalohko_header_paa h2 {
    font-size: 1.1em;
  }
  .footer .col-xs-3 {
    width: 100%;
    margin-bottom: 20px;
  }
  #registration-custinfo #customer-info-row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .laskutapa .active {
    background: #fff url("images/radio-check2.png") no-repeat scroll center left !important;
  }
  .laskutapa .inactive {
    background: url("images/radio.png") no-repeat scroll center left !important;
  }
  .kalenteri_vasen_haku {
    padding-bottom: 10px !important;
  }
  .laskutapa .btn {
    height: 160px;
  }
  .kalenteri_oikea_painikkeet {
    padding-right: 15px;
  }
  .laskutapa .active .maksulabel_text,
  .laskutapa .btn .maksulabel_text {
    background: none !important;
    padding-bottom: 20px !important;
  }
  .ilmon_loppupainikkeet .button_green {
    width: 100%;
    float: left !important;
    margin-bottom: 5px;
  }
  .laskutapa rTableCell {
    height: 120px;
  }
  #portalcontent .main_portal .col-xs-6 .row .col-xs-4,
  #portalcontent .main_portal .col-xs-6 .row .col-xs-8 {
    width: 100%;
  }
  .laskutapa .rTableCell {
    width: 100%;
  }
  .ilmo_content h1 {
    font-size: 1.9em;
  }
  .ilmontable .m_selite .ui-link {
    overflow: initial;
  }
  .ilmontable .m_selite button {
    font-size: 1.1em;
  }
  .ilmontable .ui-link {
    overflow: initial;
  }
  .ticket_main_div .ilmodiv,
  .ticket_main_div_lisaosallistuja .ilmodiv,
  .ticket_main_div_paaosallistuja .ilmodiv {
    width: 100% !important;
  }
  .ilmontable .float_left {
    float: left;
  }
  .m_checkbox {
    width: auto;
  }
  .m_selite {
    width: 100%;
    float: left;
  }
  .m_label_normal {
    padding-left: 10px;
  }
  #cal-searchform-div .col-xs-6,
  .col6rivitys .col-xs-6 {
    width: 100%;
  }
  .no_mobile {
    display: none;
  }
  .responsive_table tr td .btn_link {
    margin: 0;
    padding: 5px 5px 5px 10px;
  }
  .responsive_table tr .m_date {
    width: auto !important;
    float: left;
    clear: none;
  }
}

.session_timer_wrap {
  position: sticky;
  top: 4.25rem;
  right: 0;
  z-index: 1200;
  display: flex;
  justify-content: end;
  padding-right: .75rem;
  height: 0;
}

.session_timer_wrap button.session_keepalive_btn {
  padding: .5rem;
  color: #FFF;
  background: rgba(0, 0, 0, 0.4);
  z-index: 1200;
  max-width: 5.5rem;
  border: none;
  box-shadow: 0 0 3px 3px rgba(0, 0, 0, 0.25);
  transition: background-color ease-in-out .15s, color ease-in-out .15s;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.session_timer_wrap button.session_keepalive_btn:hover,
.session_timer_wrap button.session_keepalive_btn:focus {
  background: rgba(0, 0, 0, 0.6);
}

.session-timer-dialog-timedisplay {
  font-size: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 1rem 0;
}

.session-timer-dialog-actions {
  display: flex;
  justify-content: center;
  align-items: center;
}

.session-timer-dialog-actions > button.btn_link {
  margin: 0;
  width: 100%;
}

@media only screen and (max-width: 600px) {
  .lohko-btn-wrap .glyph-text {
    display: none;
  }
  .lohko-btn-wrap .glyphicon {
    font-size: 1.5em;
  }
  .lohko-btn-wrap .lohko-btn {
    margin-right: 6px;
  }
  table.tableresp .mobile_checkbox,
  table.tableresp .mobile_select,
  table.tableresp .verollinen,
  table.tableresp .veroton,
  table.tableresp .kpl {
    clear: both;
    width: 100%;
  }
  .str1 {
    width: 20%;
    float: left;
  }
  .str2 {
    width: 80%;
    float: right;
    text-align: left !important;
  }
  .portal_logo {
    width: 90px;
  }
  .kooditable {
    width: 100% !important;
  }
  .kooditable .button_green {
    float: none !important;
  }
  .kooditable .kooditable_check {
    height: auto !important;
  }
  .valitsemasitapahtumat .col-xs-3 {
    width: 98%;
    float: left;
  }
  #calendar-LogoContainer .col-xs-4 {
    width: 100%;
    text-align: center;
  }
  #calendar-LogoContainer .col-xs-4 img {
    max-width: 90%;
    text-align: center;
    float: none;
    margin-left: 0 !important;
    margin-bottom: 20px;
  }
  .ilmo_ylaosa .modal-footer .btn_link,
  .ilmo_ylaosa .modal-footer .button_green {
    width: 100%;
    margin-right: 0;
  }
  table td {
    font-size: 1em;
  }
  .responsive_table tr {
    clear: both !important;
    width: 100%;
  }
  .responsive_table tr #total-sum label {
    white-space: nowrap;
  }
  .responsive_table tr td {
    border-bottom: none !important;
  }
  .responsive_table tr .m_checkbox {
    float: left;
    clear: none;
  }
  .responsive_table tr .m_selite {
    width: auto;
    max-width: 80% !important;
    clear: none;
  }
  .responsive_table tr td .btn_link {
    margin: 0;
    padding: 5px 5px 5px 5px;
  }
  .responsive_table tr td .ui-checkbox-on {
    height: 37px !important;
  }
}

@media only screen and (max-width: 520px) {
  .portal_logo {
    display: none;
  }
  .tooltipevent {
    left: 5% !important;
    position: absolute !important;
    width: 90% !important;
  }
}

/*Media queries end*/
.appHeader {
  cursor: pointer;
  color: #38c;
}

.tr_paataso td {
  font-size: 1em;
  padding: 4px !important;
}

.tr_paataso_keski td {
  font-size: 0.9em;
  padding-top: 8px !important;
}

.tr_paataso_keski2 td,
.tr_paataso_alempi td {
  font-size: 0.9em;
  padding-top: 8px !important;
}

.tr_paataso_keski2 td {
  padding-left: 16px;
}

.tr_paataso_keski td .btn_link {
  font-weight: bold !important;
}

.tr_paataso_alempi td {
  padding-left: 29px;
}

.tr_paataso_alempi td a {
  font-weight: normal !important;
}

.paataso_tr td {
  border-bottom: none;
  background: #eff5f6;
  font-size: 1.1em;
  padding-top: 8px;
  padding-bottom: 8px;
}

#calendarTree .paataso_tr td {
  padding-top: 3px;
  padding-bottom: 0px;
}

.ui-responsive .paataso_tr {
  background: #eff5f6;
}

.paataso_tr td .btn_link {
  font-weight: bold !important;
  font-size: 1.1em !important;
  margin-bottom: 0 !important;
  color: #38c;
}

#calendarTree .paataso_tr td .btn_link {
  font-weight: bold !important;
  font-size: 0.9em !important;
  margin-bottom: 0 !important;
  color: #38c;
  padding: 5px !important;
}

#calendarTree .paataso_tr td .btn_link:hover {
  background: #f3f7f9 !important;
}

.table_subheader {
  font-weight: bold !important;
  font-size: 0.9em;
  /*border-top: 1px solid #eee !important;*/
  color: #666;
}

.table_subheader td {
  padding-top: 5px;
  padding-bottom: 5px;
}

.taso2 {
  padding-left: 40px !important;
}

.CollapseMark a:link {
  height: 22px;
  line-height: 20px;
  float: left;
  text-decoration: none !important;
  font-weight: bold;
  font-size: 1em;
  padding-left: 20px;
  background: url(images/arrow_up.png) no-repeat left;
}

#calendarTree .CollapseMark a:link {
  height: 26px;
}

.CollapseMark .collapsed:link {
  background: url(images/arrow_down.png) no-repeat center;
  border: 2px solid transparent;
}

.panel-title .collapsed:link {
  color: #515151;
  background-color: #f6f6f6;
  background: #ebf0f1 url(images/arrow_down.png) no-repeat left;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  text-decoration: none !important;
  font-weight: normal;
  font-size: 0.95em;
  border-radius: 3px;
  font-weight: bold;
  padding-left: 45px;
}

.CollapseMark .no_icon_link {
  background: none !important;
  padding-left: 8px !important;
  padding-top: 2px;
}

.main_calendar .ui-responsive tr .btn_link {
  padding: 0 0 0 5px !important;
  border: none !important;
  background: none !important;
  text-transform: none;
}

/*
.collapse.in {
display: block !important;
}
*/
.sidebar-nav {
  padding: 9px 0;
}

.dropdown-menu .sub-menu {
  left: 100%;
  position: absolute;
  top: 0;
  visibility: hidden;
  margin-top: -1px;
}

.dropdown-menu li:hover .sub-menu {
  visibility: visible;
}

.dropdown:hover .dropdown-menu {
  display: block;
}

.nav-tabs .dropdown-menu,
.nav-pills .dropdown-menu,
.navbar .dropdown-menu {
  margin-top: 0;
}

.navbar .sub-menu:before {
  border-bottom: 7px solid transparent;
  border-left: none;
  border-right: 7px solid rgba(0, 0, 0, 0.2);
  border-top: 7px solid transparent;
  left: -7px;
  top: 10px;
}

.navbar .sub-menu:after {
  border-top: 6px solid transparent;
  border-left: none;
  border-right: 6px solid #fff;
  border-bottom: 6px solid transparent;
  left: 10px;
  top: 11px;
  left: -6px;
}

/*.ilmo_logo_confirmation {
    width: 100%;
    position: relative;
}
.ilmo_logo {
    width: 100%;
    position: relative;
}*/
.file-style-full {
  /*todo: kuva ei pidä venyä, vaan täyttää koko tila (osa kuvasta jää piiloon jos kuva on värän muotoinen)*/
}

.file-style-header {
  /*todo: header*/
}

.file-style-background {
  /*todo: background*/
}

#calendar-LogoContainer .col-xs-4 {
  padding: 0;
}

#calendar-LogoContainer .col-xs-4 img {
  max-width: 80%;
}

.tapahtumalinkki label {
  color: #38c;
  cursor: pointer;
}

/*Responsiivinen taulukko:*/
table {
  width: 100%;
}

@media screen and (max-width: 600px) {
  table {
    border: 0;
  }
  .kooditable td {
    width: 100% !important;
    float: left !important;
    text-align: center;
  }
  .kooditable tr {
    width: 100%;
    margin-bottom: 5px;
    float: left;
    padding-bottom: 10px;
    border-top: 1px solid #eee;
  }
  .kooditable td input {
    float: none !important;
    margin: auto;
  }
  .matriisi_vaihtoehdot label {
    width: 100%;
  }
  .fc-toolbar .fc-left {
    float: none !important;
    margin: auto;
    width: 210px;
  }
  .fc-center h2 {
    font-size: 1.1em !important;
  }
  .fc-center {
    margin-top: 15px;
  }
  .calendar_nakymat {
    float: none;
    margin: auto;
    width: 280px;
  }
  .calendar_title,
  .main_calendar h1 {
    margin-bottom: 10px;
    width: 100%;
    margin-top: 10px;
    font-size: 1.8em;
  }
  .matriisi_kysymys {
    max-width: 600px;
    border-bottom: none;
    font-size: 1.1em;
  }
  table td:last-child {
    border-bottom: 0;
  }
  table td:before {
    float: left;
  }
  table.tableresp td:before {
    float: none;
  }
}

.ui-autocomplete li {
  clear: both;
  padding: 5px 10px;
}

.ui-autocomplete {
  background: #fff !important;
  border: 1px solid #ccc !important;
}

#ApplicationSubmitForm {
  margin-bottom: -28px;
}

/*Responsiivinen taulukko päättyy*/
.eventqueue-div {
  margin: 10px;
  display: block;
  margin: 15px auto auto;
  z-index: 201;
  background: #fff;
  border-radius: 3px;
  width: 90%;
  max-width: 700px;
  position: relative;
  top: 30px;
  padding: 40px 40px 20px 40px;
  text-align: center;
}

.fade.in {
  -webkit-animation-duration: 225ms;
  -webkit-animation-name: none !important;
  -moz-animation-duration: 225ms;
  -moz-animation-name: none !important;
  animation-duration: 225ms;
  animation-name: none !important;
}

@media screen and (max-width: 560px) {
  .tr_rajaava {
    border: none;
  }
}

@media only screen and (max-width: 1100px) {
  .rekkari .col-xs-8 {
    width: 90%;
  }
}

@media only screen and (max-width: 700px) {
  .rekkari .col-xs-6 {
    width: 100%;
    margin-bottom: 20px;
  }
}

.btn_link_rek {
  border-bottom: 1px solid #eee;
  padding: 10px 15px;
  border-radius: 3px;
  background: #fff;
}

.btn_link_rek .label {
  line-height: 1.2em;
  width: auto !important;
  font-size: 1.2em;
  max-width: 60%;
  height: 170px;
  float: left;
}

.rTableCell img {
  max-width: 100px;
}

@media only screen and (max-width: 1200px) {
  .rekkari .col-xs-8 {
    width: 90%;
    margin-bottom: 20px;
  }
}

.rTable .ui-link label {
  width: 130px !important;
  max-width: 130px !important;
  border-bottom-left-radius: 5px;
  color: #000 !important;
}

.overlay-layer {
  width: 200px;
  height: 40px;
  position: absolute;
  margin-top: -40px;
  opacity: 0.5;
  background-color: #000000;
  z-index: 0;
  font-size: 25px;
  color: #ffffff;
  text-align: center;
  line-height: 40px;
}

.upload_btn {
  position: absolute;
  height: 40px;
  margin-top: -20px;
  z-index: 10;
  opacity: 0;
  cursor: pointer !important;
}

.tooltipPosition {
  float: right;
  margin-top: 5px;
  margin-right: 15px;
}

.progress-bar-new {
  background-color: purple;
}

.portalNavContainer {
  display: flex;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 993px) {
  .portalNavContainer .container {
    margin: 0;
    padding: 0;
  }
}

@media screen and (max-width: 993px) {
  .portal-mobile {
    top: 36px;
  }
}

.responsive-wrapper {
  display: flex;
  position: absolute;
  right: 0;
  justify-content: space-between;
}

@media screen and (max-width: 993px) {
  .responsive-wrapper {
    width: 100%;
  }
}

/* CustomerCard Formin taitto    */
.column-1 {
  flex: 33.3%;
}

.column-3 {
  flex: 66.6%;
}

.abstract {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.abstract-separator {
  width: 100%;
}

.abstract__wrapper {
  display: flex;
  margin-top: 2rem;
}

.abstract__wrapper__header {
  display: flex;
  flex: 0 0 25%;
}

.abstract__wrapper__content {
  display: flex;
  flex-direction: column;
  flex: 0 1 75%;
}

.abstract__wrapper__content__element {
  display: flex;
  align-items: center;
}

.abstract__wrapper__content__elementmobile {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
}

.abstract__wrapper__content__element--cb {
  display: flex;
  flex: 0 1 auto;
}

.abstract__wrapper__content__element--label {
  display: flex;
  flex: 1 1 auto;
}

.abstract__wrapper__content__element--textbox {
  flex: 1 1 auto;
}

.abstract__wrapper__content__element--textarea {
  flex: 1 1 auto;
}

.abstract__wrapper__content__element--helper {
  width: 35%;
  font-size: 0.9em;
  justify-content: center;
  padding-left: 0.5rem;
}

.abstract__wrapper__content__element--tooltip {
  width: 30px;
  text-align: end;
}

.abstract__wrapper__content__element--btn {
  border: 0;
  background: #5b9943;
  border-radius: 2px !important;
  width: 7.5rem !important;
  color: #fff;
  padding: 0.25rem;
}

.abstract__wrapper__content__element--btn:hover {
  background: #3d7721;
}

.abstract__wrapper__content__element__files {
  display: flex;
  flex-direction: column;
  margin-top: 1rem;
}

@media only screen and (max-width: 1000px) {
  .abstract__wrapper__content__elementmobile {
    display: block;
    align-items: flex-start;
  }
}

@media only screen and (max-width: 767px) {
  .abstract__wrapper {
    display: flex;
    flex-direction: column;
  }
  .abstract__wrapper__content__element--textbox {
    width: 100%;
  }
  .abstract__wrapper__content__element--textarea {
    width: 100%;
    resize: vertical;
  }
  .abstract__wrapper__content__element--helper {
    width: 100%;
    font-size: 0.9em;
    justify-content: flex-start;
    padding-left: unset;
  }
}

@media only screen and (max-width: 767px) {
  .container_ilmo {
    width: 100%;
  }
  .ilmo_loput {
    padding-right: 0;
    padding-left: 0;
  }
  .ilmo_content .container_div_margin,
  .container_div_margin {
    padding: 10px 6px 0 6px;
  }
}

.ilmo__top-container--pdf-download {
  margin: 1.25rem;
}

.program__eventinfo__wrapper {
  display: flex;
  max-height: 2rem;
  width: 100%;
  margin: 4px 0;
}

.program__eventinfo__title {
  flex: 0 0 15%;
  font-weight: bold;
}

.program__eventinfo__content {
  flex: 0 1 auto;
}

.program__eventinfo__main {
  margin-bottom: 2.5rem;
}

@-moz-document url-prefix() {
  .ui-mobile fieldset {
    display: block !important;
  }
}
