/* Seattle Public Theatre 2338
   created 3/8/19 mk
   updated 8/16/19 - mk
   edited 1/6/2020 mk
   edited 8/22/20 mk
   edited 11/25/2020 mk
   edited 1/21/21 mk
   edited 5/24/21 mk
   edited 6/1/2021 mk
   edited 10/4/21 mk
   edited 8/2/23 mk*/

body {
    margin: 0px;
    font-weight: 400;
    font-style: normal;
    line-height: 1.5;
    background-color: #c380ff;
    font-family: 'Libre Franklin', sans-serif;
    font-size: 18px;
    color: #0d0c0c;
    min-height: 100%;
    -webkit-font-smoothing: antialiased;
}


/* ----------- Global settings ---------- */
/* Offsets the margin added to p tags so text is aligned across the page */
p {
    margin-top: 0;
}

/* Sets modal text color to black - required when body color is light */
[class^="modal-"] {
    color: #000;
}


/* Additional space below user name after log in */
#user-status {
    margin-bottom: 25px;
}

/* Styles the hr tag, often used between show descriptions on main ticketing page */
hr {
    color: #bdbdbd;
    background-color: #bdbdbd;
    border: 0;
    height: 1px;
    width: 100%;
}

#admin-pages-link a {
    position: relative;
    font-size: 18px;
    z-index: 9999;
    margin: 0 10px;
    color: #0d0c0c;
    text-decoration: underline;
}

#admin-pages-link a:hover {
    text-decoration: none;
}

#sysmsg-link a {
    position: relative;
    font-size: 18px;
    z-index: 9999;
    color: #0d0c0c;
    text-decoration: underline;
}

#sysmsg-link a:hover {
    text-decoration: none;
}

.announcement-bar {
    background: #599a09;
    height: 56px;
    top: 0;
    position: relative;
    font-size: 20px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: #fcefbe;
    text-align: center;
    font-family: 'league-gothic', sans-serif;
    padding-top: 12px;
}


.announcement-bar a {
    text-decoration: none;
    color: #fcefbe;
}

.announcement-bar a:hover {
    text-decoration: none;
    color: #fcefbe;
}

/* --------------- Header --------------- */

.header {
    height: 204px;
    min-height:  auto;
    display: block;
    width: 100%;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1001;
}

.header-inner {
    width: 100%;
    margin: 0 auto;
    padding: 40px 52px 0 45px;
    height:  204px;
    white-space: nowrap;
}

.logo-wrapper {
    float:  left;
    margin: 5px;
}

.logo {
    width: 154px;
    min-height:  auto;
}


/* ------------- Navigation ------------- */

.nav-wrapper {
    margin: 0 auto;
    float: right;
    padding: 60px 0 0 0;
}

nav {
    display: inline-block;
    position: relative;
    margin: 0;
    padding: 0;
}

nav ul {
    list-style: none;
    padding: 0;
    white-space: nowrap;
    display: inline-block;
    position: relative;
}

nav ul li {
    position: relative;
    display: inline-block;
    float: left;
    text-align: center;
}

nav a {
    position: relative;
    font-family: 'league-gothic', sans-serif;
    margin: 0 8.8px;
    text-decoration: none;
    color: #0d0c0c;
    display: inline-block;
    padding: 8px 2.5px;
    text-align: center;
    line-height: 27px;
    -webkit-transition: color 170ms ease-in-out, background-color 170ms ease-in-out;
    -moz-transition: color 170ms ease-in-out, background-color 170ms ease-in-out;
    -ms-transition: color 170ms ease-in-out, background-color 170ms ease-in-out;
    -o-transition: color 170ms ease-in-out, background-color 170ms ease-in-out;
    transition: color 170ms ease-in-out, background-color 170ms ease-in-out;
    font-weight: 400;
    font-style: normal;
    font-size: 19px;
    letter-spacing: .04em;
    text-transform: uppercase;
}

nav a:hover {
    color: rgba(0,0,0,.4);
    text-decoration: none;
}

ul {
    list-style: none;
}

/* ---------- Main content area --------- */


.maincell {
    width: 70%;
    min-width: 400px;
    margin: 20px auto 20px;
    min-height: 500px;
    padding: 10px;
}

.tt-page-4102 #TBL5779 #TBLitems {
    width: 460px;
    padding: 0 2px;
    margin-top: 10px;
}

.tt-page-4102 #TBL5779 #TBLitems .normal {
   font-size: 18px;
   font-weight: 600;
}

.tt-page-4102 #TBL5779 #TBLitems img {
    margin-left: 25px;
}


/* ------------- Links ------------------ */
/* Link outside of .content section, e.g. admin links at top of page, footer secti*/
 
a {
    color: #0a0a0a;
    text-decoration: underline;
}

a:hover {
    color: #0a0a0a94;
    text-decoration: none;
}

/* Link in divs or tables with content class (those inside a table or div with .content class) Include/style if
   the content area background color contrasts the page background. If no contrast, these rules can be removed */
.content a {
    color: #525252;
    text-decoration: underline;
}

.content a:hover {
    color: #90909094;
    text-decoration: none;
}

.tt-page-178 #A2538  {
      font-size: 16px;
      color: #0a0a0a;
      text-decoration: underline;
      line-height: 1.7;
      font-weight: 500;
      margin-left:  5px;
}

.tt-page-178 #A2538:hover  {
    color: #0a0a0a94;
    text-decoration: underline;
}

.form-control {
    font-size: 18px;
    line-height: 1.42857143;
    color: #555;
    display: block;
}

/* Styles buy/add buttons on following buy paths: Main ticketing, Retail, Membership, Passes */
#Abuy_tickets,
#Aitem_select,
#mem_select a,
#Apass_select {
    white-space: nowrap;
    z-index: 1;
    margin: 0 5px;
    text-align: center;
    position: relative;
    padding: 12px 26px;
    display: inline-block;
    text-decoration: none;
    background-color: #0d0d0d;
    -webkit-transition: .1s opacity linear;
    -moz-transition: .1s opacity linear;
    -o-transition: .1s opacity linear;
    transition: .1s opacity linear;
    font-family: league-gothic;
    font-size: 22px;
    font-weight: 400;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #fef7db;
}

#Abuy_tickets:hover,
#Aitem_select:hover,
#mem_select a:hover,
#Apass_select:hover {
    text-decoration: none;
    /* background-color: #0a0a0ae3; */
    opacity: .8;
    color: #fff1c2;
}


/* Removes underline on button label text. Necessary if a link is underlined*/
.btn-primary {
    color: #ffffff !important;
    text-decoration: none;
}

.btn-default {
    text-decoration: none !important;
}



/* --------------- Fonts ---------------- */
/* normal and content classes are included throughout the code;
   These declarations should match body */
.normal {
    font-size: 18px;
    color: #0d0c0c;
}

.content {
    font-size: 18px;
    color: #0d0c0c;
}

h1 {
    font-size: 38px;
    color: #0a0a0a;
    font-family: 'league-gothic', sans-serif;
    text-transform: uppercase;
    font-weight: 400;
    margin-top: 0;
    margin-bottom: 4px;
}

h2 {
    font-size: 26px;
    font-family: 'league-gothic', sans-serif;
     text-transform: uppercase;
    color: #0a0a0a;
    font-weight: 400;
    margin-top: 0;
    margin-bottom: 4px;
}

h3 {
    font-size: 20px;
    font-weight: 400;
    margin-top: 0;
    margin-bottom: 4px;
}

.emph {
    color: #0d0c0c;
    /* font-size: 20px; */
    font-weight: 400;
}

.message {
    background-color: #0a0a0a;
    color: #fff;
    font-size: 150%;
    padding: 5px;
}

.error {
    background-color: red;
    color: #fff;
    font-size: 150%;
    padding: 5px;
}

.tt-page-794 .help-block {
    color: #fff !important;
    font-size: 20px;
    background-color: red;
    padding: 5px 16px;
}

/* ------------ BUY TICKETS ------------- */
/* Adds line separator between shows on main ticketing page */
.tt-page-160 .show_text_div {
    border-top: solid 1px #bdbdbd;
    padding-top: 10px;
    min-width: 420px;
}

.tt-page-160 th div.show_text_div {
    border: transparent;
}

/* Add vert spacing between show img and desc on Select a perf page */
.tt-page-178 .show_text_div {
    padding-top: 20px;
}

/* Add horz space between show dividing line and buy tickets button */
#Abuy_tickets {
    margin-left: 10px;
}

/* Formats information sidebar on main ticketing page */
#TBL180 {
    border-left: 1px solid #bdbdbd;
    padding: 10px;
}


/* Center add-on item check box on ticket buy path */
#person_type_table input[type=checkbox] {
    margin: 4px 0 0 45%;
}

/* Formats information sidebar on preseason page */
#TBL3681 {
    border-left: 2px solid #777;
    padding-left: 5px;
    width: 200px;
}

/* Formats col headers in review order table */
.pp-order-summary th {
    text-align: left;
}

/* ------------ Tables Global ----------- */
/* Formats column header text */
.headtext {
    color: #ffffff;
    font-weight: 400;
}

.htable th {
    background-color: #191919;
    color: #fff;
    font-size: 15px;
    padding: 0 5px;
}

.htable td {
    color: #0a0a0a;
    padding: 1px 0px 1px;
    text-align: left;
}

/* Formats tables, like the email table on the Customer Info page, and the "Subscribe" column header text in that table */
.table-bordered th {
    background-color: #191919;
    color: #fff;
    font-weight: 400;
    padding: 3px 5px;
}

/* Sets the asterisk color to white / increases font size - helpful if the table-bordered th background color is dark */
.table-bordered .required_asterisk {
    color: #fff;
    font-size: 18px;
    line-height: 100%;
}

/* Email address table */
#TBLemails td {
    text-align: center;
}

/* --------------- PASSES --------------- */
/* Vertically align text in passes for sale table */
#TBLpasses td {
    vertical-align: top;
    padding: 10px 10px 10px 0;
}

#TBLpasses td:last-of-type {
    padding-right: 0;
}

/* Adds vert spacing betwen Passes in Cart and Passes for Sale tables */
#TBLpass_cart {
    margin-bottom: 20px;
    width: 780px;
}

/* Formats table for gift certificate sales */
#TBL5776 {
    border-left: 2px solid #777;
    padding-left: 5px;
    min-width: 250px;
}

/* Formats width for "Add this item to your cart" text */
#TBL4146 {
    min-width: 230px;
}

.tt-page-6923 .leftCol {
    padding-right: 15px;
}

/* ------------- ENROLLMENT ------------- */
/* Adds padding between liability release text and signature block */
.tt-page-9512 .kcolumn td {
    padding: 0 20px 20px 0;
}

/* Formats "I agree to the release" button to match btn-primary */
.tt-page-9512 #BTN9517 {
    color: #fff;
    background-color: #337ab7;
    border-color: #2e6da4;
}

/* ------------- MEMBERSHIP ------------- */
/* Formats membership listing table */
#membership_level_table th {
    background-color: #191919;
    color: #fff;
    font-size: 18px;
    padding: 5px 15px 5px 5px;
    white-space: nowrap;
    font-weight:  400;
}

/* Formats membership listing table and renewal table on membership page */
#mem_amount {
    text-align: center;
}

/* Adds a dollar sign in front of the membership prices */
td#mem_amount:before {
    content: "$";
}

/* Formats Select Membership link on membership public page; supplemental to format in links section */
#mem_select {
    font-weight: bold;
    text-transform: uppercase;
}

/* Adds padding to memberships in membership list */
#membership_level_table td {
    padding: 5px 3px;
}

/* Move Back to donation details button to the left, under Membership header */
#BTNbackFromPayment {
    position: relative;
    left: -230px;
}

/* Formats the Membership Renewal table (not to be confused with the List of Memberships table) */
#membership_table {
    border-bottom: 1px dashed #333;
    box-shadow: inset 0 -1px 0 0 #333, 0 1px 0 0 #333;
    margin-bottom: 10px;
    padding-bottom: 10px;
}

#membership_table th {
    background-color: #191919;
    color: #fff;
    font-size: 15px;
    padding: 5px 8px 5px 10px;
    vertical-align: top;
}

#membership_table td {
    color: #0a0a0a;
    padding: 0 5px;
}

/* --------------- IMAGES --------------- */
/* Images on main ticketing page */
.show_image_div img {
    max-width: 240px;
    padding-right: 15px;
    min-height: auto;
}

/* Images on Select a perf page */
#TBL2885 #TBL236 img {
    width: 240px;
    padding-right: 5px;
}

.tt-page-178 #TBLperformances .image_user  {
     margin-right: 5px;
     margin-top: 8px;
}

/* Positions text at the top of cell instead of in the
   middle, which tends to be the default otherwise */

td {
    vertical-align: top;
    padding: 0;
}

.page_public {
    width: 100%;
}

.pp-order-summary td {
    font-family: unset;
}

/* ----------- SEATING CHART ------------ */
/* Formats STAGE text on seatmap page */
.stagelabel {
    background-color: #191919;
    color: #fff;
    font-size: 24px;
    text-align: center;
    vertical-align: middle;
}

/* Formats labels on dining table seating chart */
.table {
    background-color: #191919;
    color: #fff;
    text-align: center;
    vertical-align: middle;
}

.table_round {
    background-color: #191919;
    border-radius: 50%;
    color: #fff;
}

/* Formats row labels and other text on seatmap */
.seat_label_td {
    color: #0a0a0a;
    font-size: 10px;
}

/* ----------- FOOTER SECTION ----------- */

.footer-wrap {
    height: 250px;
    min-height:  auto;
    position: relative;
    color: rgba(148,148,148,.7);
    padding-top: 60px;
    font-weight: 400;
    line-height: 42px;
    font-size: 18px;
    background-color: #1a1a1a;
}

.footer-wrap a {
    color: rgba(148,148,148,.7);
    text-decoration: none;
        -webkit-transition: all 170ms ease-in-out;
    -moz-transition: all 170ms ease-in-out;
    -ms-transition: all 170ms ease-in-out;
    -o-transition: all 170ms ease-in-out;
    transition: all 170ms ease-in-out;
}

.footer-wrap a:hover {
    color: #a8a8a8;
    text-decoration: none;
}

.footer {
    margin: 0 auto;
    padding: 0;
    font-weight:  400;
    line-height: 1.5em;
    height: 130px;
    text-align: center;
}

.social {
   display: inline-block;
   width: 100%;
   margin-bottom: 20px;
}

.social a {
    display: inline-block;
    width: 48px;
    height: 48px;
    padding: 12px;
    border-radius: 50%;
    color: #fff;
    font-size: 24px;
    text-align: center;
    margin: 8px;
    text-decoration: none;
    background-color: #212121;
}

.social a:hover {
    color: #a8a8a8;
}


/*Custom formatting below - mk */



/*fixes formatting issues on subscription Pages */

#CBshow_select input[type=checkbox] {
    margin: 4px 0 0 45%;
} 

.tt-page-10931 input[type=radio] {
    margin: 4px 28px;
    margin-top: 1px\9;
    line-height: normal;
}

.tt-page-10931 li {
    /* list-style: disc; */
}

.tt-page-10931 #TBLpackages input[type=checkbox] {
    text-align: center;
    margin: 4px 0 0 30%;
}

.tt-page-10968 input[type=radio] {
    margin: 4px 50px 0;
     line-height: normal;
}
 
.tt-page-10968 .htable td {
    color: #000;
    padding: 1px 45px 1px 0;
    text-align: left;
}  

.tt-page-11182 #TBLsubscription-tickets {
    width: 420px;
}

.tt-page-11182 #TBLpayment_details {
    margin: 45px 5px;
}

.tt-page-11182 #TBL786 {
    margin: 0 10px;
}

.tt-page-11182 .pp-order-summary {
   width: 500px !important;
   margin-right: 10px;
}


.tt-page-11102 #BTNcreate_login {
    margin-left: 28px;
}




/*Formats Retail Page */
.tt-page-4102 #BTNbackFromPayment, #BTNcancel {
    background:#666;
}

.tt-page-4102 .htable th {
    background: #191919;
}

.tt-page-4102 #TBLitems td {
    vertical-align:middle;
}

.tt-page-4102 #TBLitems tr td {
    background:#f4f4f4;
    padding:16px 10px;
    font-weight:bold;
}

.tt-page-4102 #TBLitems tr:nth-child(odd) td {
    background:#dedede;
}

.tt-page-4102 #TBL5776 {
    border:none;
    margin-left:36px;
}

.tt-page-4102 #gift_cert_intro p {
    text-align:left !important;
    padding-left:0 !important;
}

.tt-page-4102 #TBL5776 td {
    padding:10px 0;
}

.tt-page-4102 #TBL4146 {
    background:#eee;

}

.tt-page-4102 #TBL4146> tbody > tr>  td {
    padding:16px;
}

.tt-page-4102 #BTNitem_add {
    margin-bottom:16px;
}


/*Formats Membership Page */
.tt-page-8573 #membership_level_table th {
    background:#191919;
}

.tt-page-8573 #membership_level_table td {
    padding:10px 10px;
}

.tt-page-8573 #membership_level_table tr td {
    background:#f4f4f4;
}

.tt-page-8573 #membership_level_table tr:nth-child(odd) td {
    background:#ddd
}



/* This fixes formatting on Donation Page*/
.tt-page-3465 #TBL4188 .leftCol {
    width: 375px;
    line-height: 1.5em;
}

.tt-page-3465 h1 {
   margin-bottom: 35px;
}



/* This reduces the bottom margin for Person Types on the GA performance screen*/
.tt-page-794 .ga-person-type-selector .person-type-container {
    margin-bottom: 1px;
}

/*Formats Passes Page */

.tt-page-6923 .htable th {
    background: #0a0a0a;
}

.tt-page-6923 #TBLpasses {
    margin-top: 10px;
}

.tt-page-6923 #TXTpass_description {
    font-weight: 400;
    color: #1a1a1a !important;
}

.tt-page-6923 #TXTpass_description li {
    font-weight: 700;
    list-style: disc;
}

.tt-page-6923 #TBLpasses td {
    vertical-align:middle;
}

.tt-page-6923 #TBLpasses tr td {
    background:#f4f4f4;
    padding:16px 10px;
    color: #1a1a1a !important;
}

.tt-page-6923 #TBLpasses tr:nth-child(odd) td {
    background:#dedede;
}

.tt-page-6923 #TXTpass_name {
    color:  #1a1a1a;
}

.tt-page-6923 #TXTpass_cost {
    color:  #1a1a1a;
}


/*Passes on Retail Page */

.tt-page-4102 #TBLpasses tr:nth-child(even) td {
    background:#f4f4f4;
    color: #1a1a1a;
}

.tt-page-4102 #TBLpasses tr:nth-child(odd) td {
    background:#dedede;
    color: #1a1a1a;
}

.tt-page-4102 #pass_name {
    color:  #1a1a1a;
}

.tt-page-4102 #pass_cost {
    color:  #1a1a1a;
}

.tt-page-4102 #TBLpasses {
    margin-top: 35px;
}

.tt-page-4102 #TBLpasses tr td {
    background:#f4f4f4;
    padding:16px 10px;
}

.tt-page-4102 #pass_description {
    color: #1a1a1a;
}

.tt-page-4102 #TBLitems .normal {
      color: #1a1a1a;
}



/*Formats Enrollment Page */

.tt-page-9498 .restore_pos {
    font-weight: 700;
    color: #000;
    text-decoration: underline;
}

.tt-page-9498 TBLclassList li {
    list-style: disc;
}
   
.tt-page-9498 #TRselect_term  li {
    list-style: disc;
}

.tt-page-9498 .TBLclassList tr td {
    background:#f4f4f4;
    padding:16px 10px;
}

.tt-page-6923 .TBLclassList tr:nth-child(odd) td {
    background:#dedede;
}

.tt-page-6923 .TBLclassList tr:nth-child(even) td {
    background:#f4f4f4;
}



/*Removes hr from top event*/
#TBL412 > tbody > tr:nth-child(2) > td > table > tbody > tr:nth-child(2) > td:nth-child(2) > div {
    border-top: 0px solid #ccc;
    padding-top: 5px;
}



/* Adds line separator between shows on preseason ticketing page */
.tt-page-3679 #TBL3686 > tbody > tr:nth-child(3) > td > table > tbody > tr:nth-child(n) > td:nth-child(2) {
   border-top: 1px solid #818181;
   padding-bottom: 20px;
   padding-top: 10px;
}

/*Removes hr from top event on preseason ticketing page*/
.tt-page-3679 #TBL3686 > tbody > tr:nth-child(3) > td > table > tbody > tr:nth-child(2) > td:nth-child(2) {
    border-top: 0px solid #ccc;
    padding-top: 5px;
}


