.sdEventForm select {
 min-width: 100%;
 max-width: 100%;
}

.multiSessionSelector .sessionSelectorCheckbox {
 margin-right: 10px;
}

.form-horizontal .control-label {
 text-align: left !important;
}

.form-horizontal input[type=checkbox] {
 margin-top: 11px !important;
}

.regform-summary-container .discountCodeUsed {
 display: inline-block;
 margin-left: 10px;
}

.discountCodeRemove {
 cursor: pointer;
}

#middle_0_wide .block {
 padding-left: 20px;
 padding-right: 20px;
}

.guestRemove {
 font-size: 24px;
 cursor: pointer;
}

label.control-label.required:after, .form-group.required .control-label:after {
    content: '*';
    color: #eb4d4b;
}

.fullWidthCheckboxSelectorWrapper > .checkboxElement.sdRequired:after, .attendingRequired:after {
 content: ' *';
 color: #eb4d4b;
}

.btn-cm {
 border: none;
}

button.btn-cm {
    display: inline-block;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    -webkit-text-size-adjust: none;
    mso-hide: all;
    padding: 10px 15px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.regform-action-button-container[sd-action-btn-style="FW"] .btn-cm {
 width: 40%;
 margin-bottom: 20px;
}

.regform-action-button-container[sd-action-btn-style="FW"] .reg-btn .btn-cm {
 margin-bottom: 0px;
}

.regform-action-button-container[sd-action-btn-style="STS"] .btn-cm {
 width: 40%;
}

#layout .form-control {
 height: 44px;
}

.applyDiscountBtn {
 border-radius: 0px;
 border-radius: 0px 4px 4px 0px;
 -moz-border-radius: 0px 4px 4px 0px;
 -webkit-border-radius: 0px 4px 4px 0px;
 height: 44px;
}

.discountCodeTextbox {
 border-radius: 0px;
 border-radius: 4px 0px 0px 4px;
 -moz-border-radius: 4px 0px 0px 4px;
 -webkit-border-radius: 4px 0px 0px 4px;
}

.childSessionName {
 font-weight: bold;
}

/* Custom checkboxes and radio - START */
/* The container */
.sd-cr {
 display: inline-block;
 position: relative;
 padding-left: 25px !important;
 margin-bottom: 12px;
 cursor: pointer;
 -webkit-user-select: none;
 -moz-user-select: none;
 -ms-user-select: none;
 user-select: none;
}

.sd-cr-inline {
 display: initial !important;
}

/* Hide the browser's default checkbox */
.sd-cr input {
 position: absolute;
 opacity: 0;
 cursor: pointer;
 height: 0;
 width: 0;
}

/* Create a custom checkbox */
.checkmark-checkbox {
 position: absolute;
 top: 0;
 left: 0;
 height: 18px;
 width: 18px;
 background-color: #eee;
}

#layout .form-horizontal .checkmark-checkbox {
 margin-top: 5px;
}

/* On mouse-over, add a grey background color */
.sd-cr:hover input ~ .checkmark-checkbox {
 background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.sd-cr input:checked ~ .checkmark-checkbox {
 background-color: #2196F3 !important;
}

/* Create the checkmark-checkbox/indicator (hidden when not checked) */
.checkmark-checkbox:after {
 content: "";
 position: absolute;
 display: none;
}

/* Show the checkmark-checkbox when checked */
.sd-cr input:checked ~ .checkmark-checkbox:after {
 display: block;
}

/* Style the checkmark-checkbox/indicator */
.sd-cr .checkmark-checkbox:after {
 left: 6px;
 top: 2px;
 width: 6px;
 height: 11px;
 border: solid white;
 border-width: 0 3px 3px 0;
 -webkit-transform: rotate(45deg);
 -ms-transform: rotate(45deg);
 transform: rotate(45deg);
}

/* Create a custom radio button */
.checkmark-radio {
 position: absolute;
 top: 0;
 left: 0;
 height: 18px;
 width: 18px;
 background-color: #eee;
 border-radius: 50%;
}

/* On mouse-over, add a grey background color */
.sd-cr:hover input ~ .checkmark-radio {
 background-color: #ccc;
}

/* When the radio button is checked, add a blue background */
.sd-cr input:checked ~ .checkmark-radio {
 background-color: #2196F3 !important;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmark-radio:after {
 content: "";
 position: absolute;
 display: none;
}

/* Show the indicator (dot/circle) when checked */
.sd-cr input:checked ~ .checkmark-radio:after {
 display: block;
}

/* Style the indicator (dot/circle) */
.sd-cr .checkmark-radio:after {
  top: 7px;
 left: 7px;
 width: 4px;
 height: 4px;
 border-radius: 50%;
 background: white;
}

.radio .sd-cr {
 padding-left: 22px !important;
}

#layout .form-horizontal .checkbox, .form-horizontal .checkbox-inline, #layout .form-horizontal .radio, #layout .form-horizontal .radio-inline {
 padding-top: 0;
}
/* Custom checkboxes and radio - FINISH */

.sessionSelector:disabled {
 cursor: not-allowed;
}

.checkmark-checkbox.disabled, .checkmark-radio.disabled {
 cursor: not-allowed;
}

.sd-recaptcha-wrapper {
 margin-top: 10px;
 margin-bottom: 20px;
}

.sd-recaptcha-error {
 color: #A9443F;
}

.sd-recaptcha-error {
 display: none;
}

.soldout {
 cursor: not-allowed !important;
 text-decoration: line-through;
}

.donationHidden {
 display: none;
}

.regform-summary-header-desc {
 width: 80%;
}

.regform-summary-header-price {
 width: 20%;
}

.regform-summary-container .regform-summary, .regform-summary-total-table {
 border-collapse: collapse;
}

.regform-summary-container .regform-summary-total-table tbody th {
 width: 80%;
}

.regform-summary-container .regform-summary-total-table tbody td {
 width: 20%;
}

.regform-summary-container .regform-summary thead tr th:nth-child(1) {
 width: 60%;
}

.regform-summary-container .regform-summary th.regform-summary-header-availability, .regform-summary-container .regform-summary th.regform-summary-header-price {
 width: 16%;
}

.regform-summary-container .regform-summary-header, .regform-summary-desc, .regform-summary-session {
 padding-bottom: 15px;
}

.eventCloseBlock #handlerMsg, .eventFullBlock #handlerMsg, .eventNotOpenBlock #handlerMsg {
 text-align: center;
}

.regform-summary .ticketSessionElement {
 padding-top: 6px;
}

.regform-summary .ticketSessionWrapper > .ticketSessionElement {
 padding-top: 6px;
}

.regform-summary .ticketSessionWrapper > .ticketSessionElement:first-child {
 padding-top: 0;
}

/* Global style from Morgan - START */
#middle_0_wide .block[data-sd-content="subscription"], #middle_0_wide .block[data-sd-content="sd-total-summary"],
#middle_0_wide .block[data-sd-content="event-reg-action"], #middle_0_wide .block[data-sd-content="sd-session-selector"] {padding-left: 60px; padding-right: 60px; padding-top: 30px;}
.childSessionElement:first-child {padding-top: 0px;}
.childSessionElement:not(:first-child) {padding-top: 6px;}
.checkboxElement:not(:first-child) {padding-top: 6px;}
.radioBreakElement {padding-left: 8px;}
.radioBreakElement:not(:first-child) {padding-top: 6px;}
.sessionSelectorWrapper {padding-bottom: 30px;}
.sessionSelectorWrapper:last-child {padding-bottom: 0px;}
.childSessionName  {padding-top: 0px;}
/*.childSessionSelectWrapper {padding-left: 5px; width: 97%;}*/
.fullWidthCheckboxSelectorWrapper padding-left: 5px;}
.radioBreakSelectorWrapper padding-left: 5px;}
#layout label {font-weight: 400;}
/*#layout .form-control:not(.itemQtyValue) {font-size:18px;line-height:27px;}*/
#layout .form-control:focus {box-shadow: none;}
.guestHeadingWrapper {padding-top: 30px; border-top: 2px solid #eeeeee; padding-bottom: 30px;}
.regform-summary-container {padding-top: 30px; border-top: 2px solid #eeeeee; padding-bottom: 30px;}
.regform-summary-header {padding-bottom: 30px;}
#layout .form-group {margin-bottom: 25px;}
.intro-text {padding-bottom: 15px; padding-top: 15px;}
.regform-summary, .regform-summary-total-table {font-size: 15px; line-height: 22px;}
/*#layout .form-horizontal .control-label {padding-top: 0px;}*/
#layout .radio {margin-bottom: 5px;}
#layout .sessionSelectorWrapper .checkmark-checkbox {margin-top: 5px;}
#layout .fullWidthCheckboxWrapper .checkmark-checkbox {margin-top: 5px;}
#layout .radioBreakWrapper .checkmark-checkbox {margin-top: 5px;}
#layout .checkmark-radio {border: 1px solid #000000; background-color: #ffffff;}
#layout .checkmark-checkbox  {border: 1px solid #000000; background-color: #ffffff;}
#layout .sd-cr input:checked ~ .checkmark-checkbox {border: 0px;}
#layout .sd-cr input:checked ~ .checkmark-radio {border: 0px;}
.radioBreakWrapper .sd-cr { margin-top: 5px; }
#handlerMsg {padding-top: 0px; padding-bottom: 0px;}
.waitlistYes, .waitlistNo {width: 75%;}
.regform-summary-container[sd-style="STS"] .discountCodeWrapper {margin-bottom: 5px;}
.ticketWrapper { margin-bottom: 0px; }
.regform-summary-header-qty { width: 145px; }
.itemQtyValue { text-align: center; text-align-last: center; }
.sdEventForm #thankyou { margin-top: 45px; margin-bottom: 45px; }
.swal2-popup { font-size: 1.6rem !important; }
.itemQtyValue[type=number]::-webkit-inner-spin-button,
.itemQtyValue[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.itemQtyValue[type=number] { -moz-appearance:textfield; }
#layout .regform-summary-container .itemQtyValue { height: 34px; }
.table-bordered>thead>tr>th {border-bottom-width: 1px;}
.regform-summary th, .regform-summary-total-table th {background-color: transparent;}
.regform-summary-header-availability {width: 10%;}
.ticket-soldout { background: #F5F5F5; }
/*#layout .sd-session-selector-main .radio {margin-top: 5px; width: 3%;}
#layout .sd-session-selector-main .childSessionSelectWrapper { width: 97%; }*/
#layout .multiSessionElement { display: table; }
#layout .sd-session-selector-main .radio, #layout .sd-session-selector-main .checkbox { display: table-cell; }
#layout .childSessionSelectWrapper { padding-top: 0px; display: table-cell; padding-left: 10px;}
#layout .sd-session-selector-container .multiSessionElement .checkbox .sd-cr { top: 5px; }
#layout .guestHeaderTitleText {width: 90%;}
#layout .checkmark-checkbox.disabled, #layout .checkmark-radio.disabled { border-color: #ddd; background-color: #ddd; cursor: not-allowed;}
#layout .sd-pay-btn { margin-top: 10px; }
#layout .sd-session-selector-main .fullWidthCheckboxWrapper .checkmark-checkbox {margin-top: 0px;}
#layout .itemQtyBtn {
  background-color: #ffffff;
  color: #555;
  font-size: 14px;
  line-height: 14px;
  padding: 6px;
  border: 1px solid #ccc;
  border-collapse: inherit;
 height: 30px;
}
#layout table.regform-summary tr > td, #layout table.regform-summary tr > th { vertical-align: middle; }
#layout .discountCodeWrapper label { padding-top: 10px; }
input[readonly].itemQtyValue {
  background-color: #fff;
  cursor: default;
}
#layout .checkmark-radio-disabled {
 cursor: not-allowed;
 border: 1px solid #c9c9c9 !important;
 background-color: #e9e9e9 !important;
}


#layout .input-group {border-collapse: inherit;}
#layout .regform-summary-container .itemQtyValue {height: 30px; font-size: 14px; min-width: 50px; line-height: 100%}
.regform-summary-container {padding-top: 0px; border-top: 0px;}

@media screen and (max-width:768px) {
 #middle_0_wide .block {padding-left: 30px; padding-right: 30px;}
 .fullWidthCheckboxSelectorWrapper {width: 90%;}
 .radioBreakSelectorWrapper {width: 90%;}
 #layout label {padding-bottom: 10px;}
}

/* Summary Table - START */
.twTable {
  border: 1px solid #ccc;
  border-collapse: collapse;
  margin: 0;
  padding: 0;
  width: 100%;
  table-layout: fixed;
  margin-bottom: 20px;
}

.twTable caption {
  font-size: 1.5em;
  margin: .5em 0 .75em;
}

.twTable tr {
  border: 1px solid #ddd;
  padding: .35em;
}

.twTable th, .twTable td {
  padding: .625em;
  text-align: left;
  font-size: .85em;
  line-height: 1.6em;
}

.twTable th {
  font-size: .85em;
  border-top: initial;
  border-bottom: initial;
}

#layout .regform-summary-container .itemQtyValue {box-shadow: none; border: 1px solid #ccc;}

@media screen and (max-width:998px) {
  .twQuantity {
    width: 27%;
  }

  .twAvailability {
    width: 27%;
  }
}

@media screen and (max-width: 998px) {
 .regform-summary-container .regform-summary th.regform-summary-header-availability, .regform-summary-container .regform-summary th.regform-summary-header-price {width: 16%;}
 .regform-summary-container .regform-summary thead tr th:nth-child(1) {width: auto;}
}

@media screen and (max-width: 670px) {
  .twTable {
    border: 0;
  }

  .twTable caption {
    font-size: 1.3em;
  }

  .twTable thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }

  .twTable tr {
    border-bottom: 3px solid #ddd;
    display: block;
    margin-bottom: .625em;
  }

  .twTable td {
    border-bottom: 1px solid #ddd;
    display: block;
    font-size: .8em;
    text-align: right;
    line-height: 1.8em;
  }

  .twTable td::before {
    /* aria-label has no advantage, it won't be read inside a table content: attr(aria-label); */
    content: attr(data-label);
    float: left;
    font-weight: bold;
    padding-right: 30px;
  }

  .twTable td:last-child {
    border-bottom: 0;
  }
}
/* Summary Table - START */

/* Global style from Morgan - END */