body {
  font-family: 'Open Sans', sans-serif;
  font-weight: normal;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  margin-top: 0;
  margin-bottom: 0.5em;
  line-height: 1.6em;
}
h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
  line-height: 1.6em;
}
a, a:focus, a:visited {
  color: #1779ba;
  text-decoration: none;
}
p, li, div {
  line-height: 1.6em;
}
p, div {
  margin-top: 0;
  margin-bottom: 16px;
}
img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  margin-bottom: 16px;
}
abbr[title] {
  text-decoration: none;
}

/* form styles */

label {
  display: block;
  font-size: 14px;
  line-height: 1.8em;
}
input[type=text], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel] {
  background-color: #FEFEFE;
  display: block;
  width: 100%;
  padding: 10px 20px;
  box-sizing: border-box;
  border: 1px solid #dfdfdf;
  height: 55px;
  line-height: 1.5em;
  box-shadow: inset 0 1px 2px rgb(10 10 10 / 10%);
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-border-image: none;
}
input[type=text]:focus, input[type=email]:focus, input[type=number]:focus, input[type=password]:focus, input[type=search]:focus, input[type=tel]:focus {
  border: 1px solid #8c8c8c;
  box-shadow: 0 0 5px #a2a2a2;
  outline: none;
  -webkit-border-image: none;
}
input[type=checkbox] {
  margin: 0 10px 0 0;
}
input[type=checkbox] + input[type=hidden] + label {
  display: inline-block;
}
input[type=checkbox] + label {
  display: inline-block;
}
input[type=radio] {
  margin: 0 5px 0 0;
}
input[type=radio] + label {
  font-size: 16px;
  display: inline-block;
  margin-right: 10px;
}
input[type=submit], .LinkButton, button {
  display: inline-block;
  background-color: #e5423e;
  color: #fefefe;
  cursor: pointer;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  line-height: 1.15em;
  margin-top: 10px;
  padding: 15px 50px;
  border: 1px solid #dfdfdf;
  margin: 10px 0 0 0;
  border-radius: 0;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  user-select: none;
  white-space: pre;
}
.LinkButton, button {
  white-space: unset;
}
.LinkButton span {
  display: inline;
  color: #FFF;
}
select {
  margin-left: 1px;
  text-indent: 2px;
  line-height: 1.5em;
  margin-bottom: 5px;
  margin-top: 2px;
  width: 100%;
  padding: 2px 22px 2px 3px;
  height: 55px;
  border: 1px solid #dfdfdf;
  color: #222;
  margin: 0;
  font-size: inherit;
  font-family: inherit;
  letter-spacing: normal;
  box-sizing: border-box !important;
  appearance: none;
  border-radius: 0;
  background-color: #fefefe;
  font-weight: normal;
  background-image: url('//sysfilessacbe149174fee.blob.core.windows.net/public-container/clients/theatrerow_staging/resources/down-arrow.svg');
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  -webkit-appearance: none;
  -moz-appearance: none;
}
/* For IE <= 11 */
select::-ms-expand {
  display: none;
}
table {
  width: 100%;
}
table th {
  text-align: left;
  padding-bottom: 10px;
}
table th, table td {
  padding-left: 10px;
  padding-right: 10px;
}
.SpektrixFooter {
  display: none !important;
}

/* page styles */

/* events calendar */
.EventsCalendar {
  width: 100%;
  overflow-x: scroll;
}
.EventsCalendar .MonthList {
  list-style: none;
  margin: 0;
  padding: 0;
}
.EventsCalendar .MonthList li {
  display: inline-block;
}
.EventsCalendar .MonthList li:not(:last-child):after {
  content: 'â€¢';
  display: inline-block;
  padding-left: 5px;
  padding-right: 5px;
}
.EventsCalendar table {
  min-width: 722px;
  background-color: #FFF;
  color: #FFF;
}
.EventsCalendar table a {
  color: #1779ba;
  font-weight: 400;
}
.EventsCalendar table, .EventsCalendar table th, .EventsCalendar table td {
  vertical-align: top;
  padding: 0;
  line-height: 1.2em;
  table-layout: fixed;
  box-sizing: border-box;
  border-collapse: collapse;
}
.EventsCalendar table td {
  border: 2px solid #FFF;
}
.EventsCalendar .Description, .EventsCalendar .Thumbnail, .EventsCalendar .MoreInfo {
  display: none;
}
.EventsCalendar td.Date > div:first-child {
  display: flex;
  flex-direction: column;
  height: 100%;
  margin-bottom: 0;
}
.EventsCalendar .CalendarDate {
  margin-bottom: 0.5em;
  padding: 3px;
  background-color: #00a6da;
  box-sizing: border-box;
  text-align: center;
}
.EventsCalendar .CalendarDate span {
  line-height: 1.2em;
}
.EventsCalendar .Instance {
  margin-bottom: 0;
}
.EventsCalendar .Instance .Name {
  margin-bottom: 1em;
  line-height: 1.2em;
  display: block;
  padding: 0 10px;
  position: relative;
  box-sizing: border-box;
}
.EventsCalendar .Instance .Name::before {
  content: 'â€¢';
  display: block;
  position: absolute;
  top: 0;
  left: 2.365px;
  color: #000;
}

/* events list */
.EventsList {
  width: 100%;
  overflow-x: scroll;
}
.EventsList .MonthList {
  list-style: none;
  margin: 0 0 1em 0;
  padding: 0;
}
.EventsList .MonthList li {
  display: inline-block;
}
.EventsList .MonthList li:not(:last-child):after {
  content: 'â€¢';
  display: inline-block;
  padding-left: 5px;
  padding-right: 5px;
}
.EventsList .Event_Text > * {
  display: block;
}
.EventsList .Event_Name,
.EventsList .Event_Dates {
  margin-bottom: 0.5em;
}

/* event details */
.EventDetails .DatesAndTimesHeading,
.EventDetails .DateInstructions,
.EventDetails .MonthList.LinkList {
  display: block;
}
.EventDetails .MonthList.LinkList {
  list-style: none;
  padding: 0;
  margin: 0;
}
.EventDetails .EventDates select.EventDatesList {
  display: block;
}

/* choose seats */
.PlanControls {
  display: none;
}
.PriceBand div {
  margin-bottom: 0;
}
.SeatingAreaOptionalInstructions {
  display: none;
}

/* edit tickets */
.EditTickets > .Message {
  display: none;
}
.EditTickets h1.EditTicketsHeading {
  margin-bottom: 0;
}
.EditTickets .Separator {
  display: none;
}
.EditTickets .EventName {
  display: block;
}
.EditTickets .InstanceTime {
  display: block;
  margin-left: 1em;
  font-size: 24px;
}
.EditTickets h2.EditTicketsHeading {
  margin-left: 1em;
}
.EditTickets .Message, .EditTickets .Message + div + p {
  margin-left: 1.5em;
}
.EditTickets .Details {
  margin-left: 2em;
}
.EditTickets .Buttons {
  text-align: right;
  margin-right: 10px;
}

/* cart or basket */
.OptionalMessage {
  display: none;
}
.Basket2 .Items {
  display: flex;
  flex-direction: column;
  width: 100%;
  position: relative;
  margin-bottom: 0;
}
.Basket2 .Items dd.Header {
  margin: 0;
  width: 60%;
  position: absolute;
  left: 40%;
}
.Basket2 .Items dd.Header .Breakdown {
  width: 100%;
}
.Basket2 .Items dd.Header:after {
  content: '';
  display: table;
  float: none;
  clear: both;
}
.Basket2 .Items .Header:first-child {
  display: inline-block;
  float: left;
  width: 40%;
}
.Basket2 .Items .Breakdown {
  display: inline-block;
  float: left;
  list-style-type: none;
  margin: 0;
  padding: 0;
  width: 60%;
}
.Basket2 .Items .Breakdown:after {
  content: '';
  display: table;
  float: none;
  clear: both;
}
.Basket2 .Items .Breakdown li {
  display: inline-block;
  float: left;
  padding: 0 10px;
  width: 50%;
  box-sizing: border-box;
  text-align: right;
}
.Basket2 .Items .Breakdown .Commission {
  display: none;
}
.Basket2 .Items .Item .Breakdown li .Label {
  display: none;
}
.Basket2 .Items .Item {
  margin: 0;
}
.Basket2 .Items .Item .Details {
  padding-left: 1em;
  box-sizing: border-box;
  width: 40%;
}
.Basket2 dt.Item {
  display: block;
  width: 40%;
}
.Basket2 .Items dd.Item {
  display: flex;
  flex-wrap: wrap;
}
.Basket2 .Items dd.Item .ViewDetails {
  order: 3;
  width: 100%;
}
.Basket2 .Items dd.Item .Buttons {
  order: 4;
  width: 100%;
  text-align: left !important;
}
.Basket2 .Items dd.Item .ViewDetails {
  margin-bottom: 0;
}
.Basket2 .Buttons {
  text-align: right;
}
.Basket2 .Items dt.Footer {
  display: none;
  width: 30%;
  margin-left: auto;
}
.Basket2 .Items dd.Footer {
  display: block;
  width: 100%;
  margin: 0;
}
.Basket2 .Items dd.Footer .Breakdown {
  display: block;
  width: 100%;
  margin-left: auto;
  float: none;
  margin-top: 1em;
  margin-bottom: 1em;
}
.Basket2 .Items dd.Footer .Breakdown li {
  display: block;
  float: none;
  width: 100%;
  padding: 0;
  text-align: right;
}
.Basket2 .Items dd.Footer .Breakdown .Commission {
  display: none;
}
.Basket2 .Promo {
  display: block;
  order: 2;
}
.Basket2 .PromoItems {
  margin: 0;
}
.Basket2 .Items .Item + .Promo {
  margin-top: 16px;
}
.Basket2 .Savings + div {
  margin-bottom: 0;
}

/* checkout */
.spx-link-edit {
  display: block;
  margin-bottom: 0.5em;
}
.spx-main-container__checkout section:before {
  display: block;
  content: '';
  border-bottom: 1px solid #999;
  margin-top: 2em;
  margin-bottom: 2em;
}
.spx-main-container__checkout section:first-of-type:before {
  display: none;
}
.spx-heading-title__checkout--start-checkout, .spx-heading-title__checkout--personal-details, .spx-heading-title__checkout--donations, .spx-heading-title__checkout--contact-preferences, .spx-heading-title__checkout--order-summary, .spx-heading-title__checkout--payment, .spx-heading-title__checkout--start-checkout-login, .spx-heading-title__checkout--billing-details, .spx-heading-title__checkout--edit-billing-details {
  display: none;
}
.spx-state-empty {
  display: none;
}
.spx-main-container__checkout--personal-details button[type=submit] {
  float: right;
}
.spx-main-container__checkout--personal-details button[type=submit]::after {
  content: '';
  display: table;
  float: none;
  clear: both;
}
fieldset .spx-field-container {
  margin-bottom: 0;
}
.spx-data-group-delivery-option-select .spx-field-container__checkout--ticket-delivery:nth-of-type(2) {
  display: none;
}

/* checkout login */
.spx-main-container__checkout--start-checkout-login .spx-text-copy__checkout--start-checkout-forgotten-password {
  margin-top: 2em;
  margin-bottom: 0;
}
.spx-main-container__checkout--start-checkout-login .spx-validation-summary-errors {
  display: none;
}
.Password-error {
  color: rgb(229, 66, 62);
}

/* donation */
span.spx-text-copy__checkout--donation {
  display: none;
}
.spx-subsection-summary-container__checkout--personal-details .spx-data-email {
  display: block;
}
.spx-subsection-summary-container__checkout--personal-details .spx-data-first-name {
  display: inline-block;
}
.spx-subsection-summary-container__checkout--personal-details .spx-data-last-name {
  display: inline-block;
}
.spx-subsection-summary-container__checkout--personal-details .spx-data-phone-number:before {
  content: '';
  display: table;
  float: none;
  clear: both;
}
.spx-subsection-summary-container__checkout--personal-details .spx-data-phone-number {
  display: block;
}
button.spx-intent-decrement, button.spx-intent-increment {
  padding: 10.67px 15px;
}
.spx-section-container__checkout--donations button.spx-intent-continue {
  float: right;
}
.spx-section-container__checkout--donations form:after {
  content: '';
  display: table;
  float: none;
  clear: both;
}

/* checkout donations */
.spx-main-container__checkout--donations .spx-heading-headline__checkout--personal-details {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--donations .spx-link-edit__checkout--personal-details {
  display: block;
  margin-bottom: 1em;
}
.spx-main-container__checkout--donations .spx-heading-headline__checkout--donations {
  margin-bottom: 0.8em;
}

/* contact preferences */
.spx-main-container__checkout--contact-preferences .spx-section-container .spx-heading-headline {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--contact-preferences .spx-link-edit__checkout--personal-details {
  display: block;
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--contact-preferences .spx-link-edit__checkout--donations {
  display: block;
  margin-bottom: 1em;
}
.spx-main-container__checkout--contact-preferences .spx-list-contact-preferences__checkout--contact-preferences,
.spx-main-container__checkout--contact-preferences .spx-list-contact-preferences__checkout--contact-preferences {
  list-style-type: none;
  padding: 0 0 0 1em;
}
.spx-main-container__checkout--contact-preferences button.spx-intent-continue {
  float: right;
}
.spx-main-container__checkout--contact-preferences form:after {
  content: '';
  display: table;
  float: none;
  clear: both;
}

/* order summary */
.spx-main-container__checkout--order-summary .spx-heading-headline__checkout--personal-details {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--order-summary .spx-link-edit__checkout--personal-details {
  display: block;
  margin-bottom: 0.6em;
}
.spx-main-container__checkout--order-summary .spx-heading-headline__checkout--donations {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--order-summary .spx-link-edit__checkout--donations {
  display: block;
  margin-bottom: 1em;
}
.spx-main-container__checkout--order-summary .spx-heading-headline__checkout--contact-preferences {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--order-summary .spx-heading-headline__checkout--order-summary {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--order-summary .spx-link-edit__checkout--order-summary {
  display: block;
  margin-bottom: 1em;
}
.spx-main-container__checkout--order-summary .spx-intent-continue {
  float: right;
}
.spx-main-container__checkout--order-summary form:after {
  content: '';
  display: table;
  float: none;
  clear: both;
}

/* billing details */
.spx-main-container__checkout--billing-details .spx-heading-headline__checkout--personal-details {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--billing-details .spx-link-edit__checkout--personal-details {
  display: block;
  margin-bottom: 0.6em;
}
.spx-main-container__checkout--billing-details .spx-heading-headline__checkout--donations {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--billing-details .spx-link-edit__checkout--donations {
  display: block;
  margin-bottom: 1em;
}
.spx-main-container__checkout--billing-details .spx-heading-headline__checkout--contact-preferences {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--billing-details .spx-heading-headline__checkout--order-summary {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--billing-details .spx-link-edit__checkout--order-summary {
  display: block;
  margin-bottom: 1em;
}
.spx-main-container__checkout--billing-details .spx-link-edit__checkout--select-address {
  display: block;
}
.spx-main-container__checkout--billing-details .spx-intent-continue {
  float: right;
}
.spx-main-container__checkout--billing-details form:after {
  content: '';
  display: table;
  float: none;
  clear: both;
}

/* edit billing details */
.spx-main-container__checkout--edit-billing-details .spx-heading-headline__checkout--personal-details {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--edit-billing-details .spx-link-edit__checkout--personal-details {
  display: block;
  margin-bottom: 0.6em;
}
.spx-main-container__checkout--edit-billing-details .spx-heading-headline__checkout--donations {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--edit-billing-details .spx-link-edit__checkout--donations {
  display: block;
  margin-bottom: 1em;
}
.spx-main-container__checkout--edit-billing-details .spx-heading-headline__checkout--contact-preferences {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--edit-billing-details .spx-heading-headline__checkout--order-summary {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--edit-billing-details .spx-link-edit__checkout--order-summary {
  display: block;
  margin-bottom: 1em;
}
.spx-main-container__checkout--edit-billing-details .spx-intent-continue {
  float: right;
}
.spx-main-container__checkout--edit-billing-details form:after {
  content: '';
  display: table;
  float: none;
  clear: both;
}

/* checkout payment */
.spx-main-container__checkout--payment .spx-heading-headline__checkout--personal-details {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--payment .spx-link-edit__checkout--personal-details {
  display: block;
  margin-bottom: 0.6em;
}
.spx-main-container__checkout--payment .spx-heading-headline__checkout--donations {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--payment .spx-link-edit__checkout--donations {
  display: block;
  margin-bottom: 1em;
}
.spx-main-container__checkout--payment .spx-heading-headline__checkout--contact-preferences {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--payment .spx-heading-headline__checkout--order-summary {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--payment .spx-link-edit__checkout--order-summary {
  display: block;
  margin-bottom: 1em;
}
.spx-main-container__checkout--payment .spx-heading-headline__checkout--billing-details {
  margin-bottom: 0.5em;
}
.spx-main-container__checkout--payment  .spx-link-edit__checkout--billing-details {
  display: block;
  margin-bottom: 1em;
}
.spx-main-container__checkout--payment .spx-heading-headline__checkout--payment {
  margin-bottom: 0;
}
.spx-iframe__checkout {
  height: 620px;
}
.PaymentOptions .Container.Expiry,
.PaymentOptions .Container.CVV {
  display: inline-block;
  width: 50%;
  float: left;
}
.PaymentOptions .Container.Expiry input {
  width: calc(100% - 10px) !important;
  margin-right: 10px;
}
.PaymentOptions .ThreeDSecureNotice {
  display: block;
  clear: both;
}
.PaymentOptions .Buttons {
  text-align: right;
}

/* register */
.Container.DateOfBirth select {
  display: inline-block;
  width: calc(50% - 10px);
  float: left;
  margin-bottom: 1em;
}
.Container.DateOfBirth select:first-of-type {
  margin-right: 10px;
}
.Container.DateOfBirth select:nth-of-type(2) {
  margin-left: 10px;
}
.Container.DateOfBirth input[type=text] {
  width: 100% !important;
}

/* my account */
.MyAccountHeading {
  display: none;
}

/* donation page */
.Donations label {
  margin-bottom: 0.5em;
}
.Donations .FundContainer > div::after {
  content: '';
  display: table;
  clear: both;
      font-family: 'Open Sans', sans-serif;
    font-weight: normal;
    font-size: 16px;
    -webkit-font-smoothing: antialiased;
    line-height: 1.6em;
    margin-top: 0;
    margin-bottom: 16px;
}
.Donations .DonationAmount span:first-of-type {
  display: inline-block;
  width: 10px;
  float: left;
  padding: 15px 10px 15px 0;
  vertical-align: middle;
}
.Donations .DonationAmount .MoneyTextBox {
  display: inline-block;
  width: 150px;
  float: left;
  vertical-align: middle;
}
.Donations .IsAnonymousTickBox, .Donations .AddTributeTickBox {
  float: left;
  display: inline-block;
  padding: 6px 0;
}
.Donations .IsAnonymousTickBoxLabel, .Donations .AddTributeTickBoxLabel {
  display: inline-block;
  width: calc(100% - 25px);
  float: left;
}