@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;600;800&family=Source+Sans+Pro:ital,wght@0,400;0,600;0,700;1,400;1,600&display=swap");
@import url('https://use.fontawesome.com/releases/v5.13.0/css/all.css');


/* AI Assistant  */
#showFlyoutBtn {
	box-sizing: border-box;
    position: fixed; /* Keep the button in a fixed position */
    bottom: 0%;
    right: 0;
/*     transform: translateY(-50%); */
    background-color: #286594;
    color: #fff;
    padding: 10px 20px;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    cursor: pointer;
    transition: background-color 0.3s ease-in-out;
/*     border: 2px solid #fff; */
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    z-index: 9999; /* Increase the z-index value to ensure the button is on top */
    margin-bottom: 20px;
    font-size: 1rem;
}

#showFlyoutBtn:hover {
    background-color: #1c4767;
}

#flyoutPanel {
	box-sizing: border-box;
    display: none;
    position: fixed;
    top: 0%;
    bottom: 0%;
    right: -600px;
	margin-bottom: 20px;
    background-color: white;
    padding-bottom: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    z-index: 10000; /* Increase the z-index value to ensure the panel is on top */
    width: clamp(0px, 500px, 100%);
    transition: right 0.3s ease-in-out;
    resize: both;
}

#flyoutPanel.show {
    display: block;
    right: 0;
    transition: right 0.3s ease-in-out;
}

#flyoutPanel .flyoutPanelIframe {
	width: 100%;
	height: 100%;
	border: none;
	border-top: 2px solid #BBBBBB;
}

#closeFlyoutBtn {
	float: right;
	border: none;
	background-color: transparent;
	color: #333333;
	font-family: 'Montserrat', 'Open Sans', sans-serif, arial;
	font-size: 2rem;
	cursor: pointer;
}

#closeFlyoutBtn:hover {
	background-color: #DDDDDD;
}

/* NEW ENROLE CSS CART 2.0 VER 1.0 */

:after {
    clear: both;
}



:focus:not(:focus-visible) {
    box-shadow: 0 0 0 .25rem white;
    border-radius: 5rem;
    outline: .375rem double #015CAB;
    text-decoration: underline;
    text-underline-position: under;
}

:focus-visible {
    outline: .375rem double #485865;
    box-shadow: 0 0 0 .25rem white;
    border-radius: 5rem;
}

html {
    font-weight: 400;
}

body,
td,
th {
    font-size: .96rem;
    font-weight: 400;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif !important;
    color: #1c221c;
}

th {
    font-weight: 700;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif !important;
    font-weight: 800;
}

.overview-intro {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 24px;
}

.overview-intro .issue {
    width: 40%
}

.overview-intro .overview-descrip {
    width: 56%;
    line-height: 2rem;
}

.overview-title {
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
    font-size: 2.5rem;
    line-height: 105%;
    letter-spacing: -.15rem;
    margin: -24px 0 16px;
}

.overview-subtitle {
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
    color: #485865;
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 105%;
    letter-spacing: -.05rem;
    margin: 4px 0 16px;
}

.overview h3 {
    font-size: 1.1rem;
    font-weight: 800;
    line-height: 105%;
    letter-spacing: -.05rem;
    margin: 4px 0 8px;
    color: #1c221c;
}

.overview h4 {
    font-size: 1rem;
    font-weight: 800;
    line-height: 105%;
    letter-spacing: -.05rem;
    margin: 16px 0 8px 32px;
    color: #485865;
}

.overview .arrow,
.overview ul {
    margin: 0 0 32px 0;
    list-style-type: none;
    padding-left: 32px;
}

.overview .arrow li {
    text-indent: -8px;
    position: relative;
}

.overview li > a {
    font-weight: 600;
    text-decoration: underline;
    text-underline-position: under;
    -webkit-text-decoration-color: #b3bec6;
    text-decoration-color: #b3bec6;
}

/* .arrow used below appears on Pages with Sub-Sessions within Subsession Information>Price. Can colllide with left sidebar arrow so use with caution. */
.ttc-arrow,
ul.arrow {
    margin: 0 0 16px 0;
    list-style-type: none;
    padding: 0;
}

.ttc-arrow li ul.arrow li {
    position: relative;
    /* line-height: 2.6rem;
       padding-left: 8px;
    text-indent: -12px;
    margin-bottom: 4px;
    list-style-type: none;
    font-size: 1.6rem; */
}

.ttc-arrow li::before,
ul.arrow li::before {
    content: "\00bb";
    font-family: Inter, Roboto, "Helvetica Neue", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Oxygen, sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: .96rem;
    color: #015CAB;
    margin: 0 4px 4px 0;
    display: inline-block;
    padding-top: 2px;
    height: 16px;
}

.ttc-grey-arrow li::before,
ul.grey-arrow li::before {
    content: "\00bb";
    font-family: Inter, Roboto, "Helvetica Neue", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Oxygen, sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: .96rem;
    color: #485865;
    margin: 0 4px 4px 0;
    display: inline-block;
    padding-top: 2px;
    height: 16px;
}

.overview-descrip {
    margin: 0 0 24px;
    font-weight: 600;
    font-size: 1.2rem;
    line-height: 160%;
}

.overview .card {
    max-width: 248px;
    margin-bottom: 34px;
    display: flex;
    align-items: center;
}

.overview-descrip.last {
    margin: 0 0 24px;
}

.overview-img {
    border-radius: 8px;
    margin: 0 0 24px;
}

.other-interest {
    color: #5d6b76;
    margin: -10px 0 4px 4px;
    font-weight: 400;
    font-size: .88rem;
    font-style: italic;
    display: inline-block;
}

a.card {
    border-radius: 60px;
    font-size: .76rem;
    line-height: .82rem;
    height: 2.75rem;
    width: 90%;
    color: #485865;
    box-sizing: border-box;

}

.sub-ov + .cardContainer a.card:hover {
    color: #fff;
    background-color: #485865;
    border-color: #485865;
    /* box-sizing: border-box; */
}

#paymentinner h2 {
    font-size: .96rem;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
}

#wrapper {
    max-width: 100%;
}

a {
    color: #015CAB;
}

a:hover {
    color: #1c2226;
    text-decoration: underline;
    text-underline-position: under;
}


input {
    border-radius: 4px;
}

input.submit {
    background: linear-gradient(180deg, #015CAB 0, #0095da 100%);
    padding: 8px 16px;
    border-radius: 4px;
    border: 0;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    color: #fff;
}

input.submit:hover {
    padding: 8px 16px;
    border-radius: 4px;
    border: 0;
    background: linear-gradient(180deg, #485865 0, #353f46 100%);
}

input.submit:active {
    padding: 8px 16px;
    border-radius: 4px;
    border: 0;
    background: linear-gradient(180deg, #485865 0, #353f46 100%);
}

input.submit:focus {
    padding: 8px 16px;
    border-radius: 4px;
    border: 0;
    background: linear-gradient(180deg, #485865 0, #353f46 100%);
}

#breadcrumb a {
    color: #015CAB;
}

#breadcrumb a:hover {
    background-color: transparent;
    margin-left: 0;
    text-decoration: underline;
    text-underline-position: under;
}

#header {
    background: linear-gradient(180deg, #468FCC 0, #015CAB 100%);
    border: 0;
    padding: 0 24px;
    max-height: 90px;
    box-shadow: 0 6px 8px rgba(0, 0, 0, .15);
    z-index: 5;
    box-sizing: border-box;
}

#header tr {
    display: grid;
    grid-template-areas: "logo login cart";
    grid-template-columns: 132px 1fr 80px;
    height: 90px;
}

#header td {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.client-portal #header tr,
.instructor-portal #header tr,
.checkin-portal #header tr {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.client-portal #login,
.instructor-portal #login,
.checkin-portal #login {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Check-in Portal link styles */


.checkin-portal .ttcNextLink {
    position: relative;
    height: 26px;
    width: 26px;
}

.checkin-portal .ttcNextLink img[alt="Next"] {
    display: none;
    /* opacity: 0; */

}

.checkin-portal .ttcNextLink::before {
    display: inline-block;
    content: '';
    position: absolute;
    background-image: url("images/circle-arrow-right-red.svg");
    background-repeat: no-repeat;
    height: 24px;
    width: 24px;
    top: 1px;
    left: 1px;
    background-size: contain;


}

.checkin-portal .ttcNextLink:hover::before {
    background-image: url("images/circle-arrow-right.svg");
    transition-property: all;
    height: 26px;
    width: 26px;
    top: 0px;
    left: 0px;
}

.checkin-portal .ttcNextLink:active::before {
    background-image: url("images/circle-arrow-right-solid.svg");
    transition-property: all;
    height: 26px;
    width: 26px;
    top: 0px;
    left: 0px;
}

/* end checkin portal */
#header_title {
    background-color: transparent;
    padding: 0;
    float: none;
    height: auto;
}

#header_title a::after {
    display: block;
    width: 124px;
    height: auto;
}

#header table {
    width: 90%;
    max-width: none;
}

#header table td:last-child {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.selfreg-portal #header {
    height: 112px;
    max-height: 112px;
}

.selfreg-portal #header tr {
    grid-template-columns: 160px 1fr;
    height: 112px;
    align-items: center;
}

.selfreg-portal #header table td:last-child {
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
    justify-self: flex-end;
    align-self: center;
}

.selfreg-portal #ctForgot {
    align-self: flex-end;
    display: flex;
    justify-content: flex-end;
}

.selfreg-portal .forgotPw {
    margin: 0;
    padding: 0;
}

#header_title img {
    width: 132px;
    height: auto;
    margin: 0;
}

#login {
    background-color: transparent;
    color: #fff;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
    font-weight: 600;
    padding: 0;
    height: 90px;
    float: none;
    text-shadow: none;
}

.selfreg-portal #login {
    height: auto;
    margin-bottom: 12px;
}

#login a {
    background-color: transparent;
    background: linear-gradient(180deg, #F1582D 0, #f48566 100%);
    padding: 10px;
    margin-left: 20px;
    border-radius: 4px;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    text-transform: uppercase;
    font-size: .72rem;
    font-weight: 600;
    text-shadow: none;
    color: #fff;
    min-width: 48px;
    text-align: center;
}

.selfreg-portal #login a {
    margin-top: 8px;
}

.client-portal #login,
.instructor-portal #login,
.checkin-portal #login {
    color: #1c2226;
}

.client-portal #login a:first-of-type,
.instructor-portal #login a:first-of-type,
.checkin-portal #login a:first-of-type {
    margin-right: 0;
    padding: 0;
    color: #015CAB;
    background-color: transparent;
    background: 0 0;
    text-transform: none;
    text-decoration: underline;
    text-underline-position: under;
    font-style: italic;
    font-size: .88rem;
    font-weight: 600;
}

#login a:hover {
    background-color: transparent;
    background: linear-gradient(180deg, #485865 0, #353f46 100%);
    text-decoration: none;
}

#login input {
    border: 1px solid #b3bec6;
    height: 22px;
}

.selfreg-portal img[src="../images/spacer.gif"] {
    display: none;
}

.selfreg-portal #login input {
    height: 28px;
}

.selfreg-portal .forgotPw a {
    font-size: .76rem;
    font-style: italic;
    color: #485865;
}

#login.not-in-mobile {
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-right: 24px;
    text-shadow: none;
    color: #fff;
    background-color: transparent;
}

.selfreg-portal #loginmobile {
    display: none !important;
}

.selfreg-portal #login {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    margin-right: 0;
}

.selfreg-portal #login form {
    margin-bottom: 0;
}

#login.not-in-mobile form {
    display: flex;
    align-items: center;
}

.alert {
    font-size: .95rem;
    display: inline-block;
    color: #485865;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
}

.selfreg-portal .alert.header-alert {
    background-color: #485865;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 48px;
}

#cartCount {
    text-shadow: none;
    padding: 0 8px;
    display: flex;
    align-items: center;
    background-color: #85bb65;
    border-radius: 4px;
    height: 32px;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
}

#cartCount img {
    display: none;
}

#cartCount a::before {
    content: url(https://tulsatech.edu/_layouts/enrole/images/cart-wht-16.svg);
    margin: 2px 4px 0 0;
    display: inline-block;
}

#cartCount a {
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    text-transform: uppercase;
    font-weight: 600;
    color: #fff;
    background-color: transparent;
    font-size: .72rem;
    display: flex;
    align-items: center;
}

#cartCount h1 {
    color: #fff;
    font-weight: 800;
    font-size: 1.5rem;
    margin-top: -22px;
}

.client-portal #cartCount,
.instructor-portal #cartCount,
.checkin-portal #cartCount {
    margin-left: 24px;
    background-color: transparent;
    width: auto;
    border-left: 1px solid #485465;
    border-radius: 0;
    padding: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    -o-border-radius: 0;
    height: 40px;
}

.client-portal #cartCount h1,
.instructor-portal #cartCount h1,
.checkin-portal #cartCount h1 {
    color: #015CAB;
    letter-spacing: -.05rem;
    font-size: 1rem;
    padding: 0;
    padding-left: 24px;
    margin: 0;
}

#login input.submit {
    color: #fff;
    background-color: #015CAB;
    background: linear-gradient(180deg, #468FCC 0, #0095da 100%);
    height: 32px;
    padding: 0 16px 0;
    /* border-color: #015CAB; */
    font-family: "Source Sans Pro", "Open Sans", sans-serif;
    text-transform: uppercase;
    font-weight: 600;
    font-size: .72rem;
    border-radius: 4px;
    box-shadow: none;
}

#login input.submit:hover {
    background-color: #015CAB;
    background: linear-gradient(180deg, #485865 0, #353f46 100%);
    color: #fff;
}

#topBar {
    padding-left: 0;
    margin-bottom: 75px;
    padding-top: 10px;
    grid-area: top;
}

.client-portal #topBar,
.instructor-portal #topBar,
.checkin-portal #topBar {
    padding-left: 20px;
}

#popularContainer {
    width: auto;
    grid-area: pop;
    background-color: #FFF;
    border-radius: 8px;
    padding: 8px 0 16px;
/*     border: 1px solid #f1f4f6; */
}

#content {
    width: auto;
    padding-left: 3%;
    grid-area: right;
}

.selfreg-portal #content {
    margin: 14px auto 24px
}

.client-portal #contentFull,
.instructor-portal #contentFull,
.checkin-portal #contentFull {
    grid-column: 1/span2
}

#contentinner {
    padding-left: 0;
    background-color: transparent;
}

#testBanner {
    background-color: #015CAB;
    border-bottom: 0 solid #c6c8c6;
    box-shadow: inset 0 7px 5px rgba(0, 0, 0, .15);
    z-index: 9999
}

#testBannerText {
    color: #fff;
    font-weight: 600;
    font-size: 1rem;
}

#wholeContent {
    margin: 14px auto 0;
    padding: 0 40px 40px;
    display: grid;
    grid-template-areas: "top top" "pop right";
    grid-template-columns: 1fr 2.75fr;
    max-width: 1360px;
}

.client-portal #wholeContent,
.instructor-portal #wholeContent,
.checkin-portal #wholeContent {
    padding-left: 24px;
}

#bulletin_header {
    border-bottom: 1px solid #c6c8c6;
    background-color: #015CAB;
}

#bulletin {
    background-color: #015CAB;
    color: #fff;
    font-weight: 600;
    font-size: 1rem;
    width: auto;
}

#breadcrumbTop {
    font-size: 0;
}

#breadcrumbTop a {
    color: #1c2226;
    font-weight: 600;
    text-transform: uppercase;
    font-size: .85rem;
    position: relative;
    padding: 2px 0;
    margin: 0 8px 0 8px;
}

#breadcrumbTop a:hover {
    margin: 0 8px 0 8px;
}

#breadcrumbTop a:before {
    content: "\00BB";
    font-family: Inter, Roboto, "Helvetica Neue", "Open Sans", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: .9rem;
    color: #015CAB;
    margin: 0 4px 0 0;
    display: inline-block;
    position: absolute;
    top: 3px;
    left: -14px;
}

#breadcrumbTop a:first-of-type:before {
    content: "";
}

#breadcrumbTop a:last-of-type {
    color: #1c2226;
    font-weight: 400;
}

#breadcrumbTop a:first-of-type {
    font-weight: 600;
    margin: 0 12px 0 0;
}

#breadcrumbTop #text {
    color: #fff;
}

#content .inner {
    padding: 0;
}

.cardContainer {
    display: grid;
    grid-auto-flow: row;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin: 0 0 32px 0;
}

a.card {
    border: 2px solid #d1d4d6;
    padding: 24px;
    font-family: Inter, Roboto, "Helvetica Neue", "Open Sans", sans-serif;
    margin: 0;
    border-radius: 60px;
    font-size: .90rem;
    line-height: .82rem;
    height: 3.75rem;
    width: 90%;
    color: #485865;
    justify-self: center;
}

a.card:hover {
    box-shadow: inset 0 0 0 1000px #485865;
    color: #fff;
    text-decoration: none;
    background-color: #485865;
    /* border-color: #485865; */
    border: 0;
    margin: 0;
}

hr {
    margin-bottom: 16px;
    background-color: #f1f4f6;
}

#content .courseinner {
    padding: 24px 24px 24px;
    background-color: #f1f4f6;
    border-radius: 8px;
    overflow: auto;
}

#content .courseinner hr {
    margin: 0;
}

#content .courseinner p {
    -webkit-margin-after: 0;
    margin-block-end: 0;
    -webkit-margin-before: 0;
    margin-block-start: 0;
}

#content .courseinner span.alert {
    display: inline-block;
    margin-top: 8px;
    margin-bottom: 8px;
}

.courseinner table tr td,
.courseinner table tr td.tableheading {
    color: #1c2226;
    font-size: .92rem;
    line-height: 110%;
    vertical-align: top;
}

.courseinner table tr td.tableheading {
    font-size: .96rem;
    font-weight: 700;
}

input#couponCode,
select#feeCode {
    margin-bottom: 8px;
}

.courseinner table tr td.tableheadingRight {
    color: #1c2226;
}

.courseinner td p u {
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
    font-weight: 800;
    font-size: .88rem;
}

.courseinner .courseThumbnail img {
    width: auto;
    height: auto;
    max-width: 136px;
    margin: 0 24px 8px 0;
    padding: 0;
    border-radius: 4px 4px 4px 4px;
    box-shadow: 0 5px 5px rgba(0, 0, 0, .15);
}

.courseinner a {
    font-family: Inter, Roboto, "Helvetica Neue", "Open Sans", sans-serif;
    font-weight: 600;
    font-size: .64rem;
    line-height: .8rem;
    text-decoration: underline;
    text-underline-position: under;
    -webkit-text-decoration-color: #b3bec6;
    text-decoration-color: #b3bec6;
    color: #015CAB;
}

.courseinner h3 {
    font-size: 1.1rem;
}

.highlight {
    padding: 8px 8px 8px 8px;
    font-weight: 700;
    font-size: 1rem;
    background-color: #fff;
    max-width: -webkit-max-content;
    max-width: -moz-max-content;
    max-width: max-content;
    border-radius: 6px;
    margin: 4px 0;
    position: relative;
    line-height: 120%;
}

.courses a {
    font-size: .85rem;
    text-decoration: underline;
    text-underline-position: under;
    -webkit-text-decoration-color: #b3bec6;
    text-decoration-color: #b3bec6;
    color: #015CAB;
}

.courses a:hover {
    color: #1c2226;
}

.subheadinglink a:hover {
    text-decoration: underline;
    text-underline-position: under;
    color: #1c2226;
}

/* Hide ugly icons in Session Details */
a:has(#fsprompt),
a:has(.ttc-addcal) {
    text-decoration: none;
}

a:has(#fsprompt):focus,
a:has(.ttc-addcal):focus {
    border-radius: 5rem;
}

a[href="javascript:void(0)"] img,
img[src="../images/calendar.gif"] {
    display: none;
}

/* a:has(#fsprompt) img,
a:has(.ttc-addcal) img{
    display:none;
} */
#fsprompt,
.ttc-addcal {
    margin-left: -10px;
    margin: 8px 0px 16px -10px;
    display: inline-block;
    text-decoration: none;
    background: linear-gradient(180deg, #015CAB 0, #0095da 100%);
    padding: 12px 16px 12px 32px;
    border-radius: 40px;
    color: #fff;
    letter-spacing: -.01rem;
    font-family: 'Source Sans Pro', sans-serif;
    text-transform: uppercase;
    position: relative;
}

#fsprompt:hover,
.ttc-addcal:hover {
    background: #485865;

}

#fsprompt::before {
    content: url('https://tulsatech.edu/_layouts/enrole/eye.svg');
    position: absolute;
    top: 11px;
    left: 10px;
    height: 16px;
    width: 14px;
    margin-right: 8px;
}

.ttc-addcal::before {
    content: url('https://tulsatech.edu/_layouts/enrole/cal-plus.svg');
    position: absolute;
    top: 9px;
    left: 14px;
    height: 16px;
    width: 14px;
    margin-right: 8px;

}

label[for="feeCode"] {
    display: inline-block;
    margin-top: -4px;
}

#maincontent {
    background-color: transparent;
}

div#maincontent .cart > .cartinner > table {
    margin-bottom: 0;
}

.cart {
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
}

.cart th {
    font-size: 1rem;
    line-height: 100%;
    font-weight: 700;
    text-transform: uppercase;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    text-align: left;
    color: #485865;
}

.cart th.tableheadingRight {
    text-align: right;
}

.cart td.headingRight:last-child,
.cart th.tableheadingRight:last-child {
    padding-right: 24px;
}

.cart a:hover {
    color: #1c2226;
    text-decoration: underline;
    text-underline-position: under;
}

.cart {
    margin-bottom: 16px;
}

.reqUDFRow {
    display: flex;
    align-items: top;
    justify-content: space-between;
}

.reqUDFRow td:first-child {
    max-width: 56%;
    margin-right: 16px;
}

.cart label a {
    font-size: .88rem;
    color: #015CAB;
    line-height: 110%;
}

.cartinner {
    background-color: #f1f4f6;
    padding: 24px 16px 16px 24px;
}

.cartinner table {
    background-color: transparent;
    width: 100%;
}

.cartinner h2 {
    font-size: .88rem;
    font-weight: 600;
}

.cartinner td.heading h2 {
    font-size: .88rem;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    line-height: 1.4rem;
}

.cartinner table tr td.heading {
    font-size: .88rem;
    font-weight: 600;
}

.cartinner table tr td.heading:last-of-type {
    font-size: 1.1rem;
    font-weight: 800;
}

.cartinner table tr td.tableheading {
    color: #015CAB;
    font-size: 1.1rem;
}

.cartinner table tr td.tableheadingRight {
    color: #015CAB;
    font-size: .96rem;
    text-transform: uppercase;
}

.cartinner h2 > a,
.cartinner td > a {
    color: #015CAB;
    background-color: transparent;
}

.cartinner h2 > a:hover {
    color: #1c2226;
    text-decoration: underline;
    text-underline-position: under;
}

.cartinner td > a:hover {
    color: #1c2226;
    text-decoration: underline;
    text-underline-position: under;
}

.cartinner table tr td hr,
.historyinner hr {
    color: #d3dde3;
    background-color: #d3dde3;
    height: 1px;
}

.historyinner hr:last-of-type {
    margin-bottom: 0;
}

.cartinner table tr td select.dropdownCart {
    font-size: .8rem;
    height: 24px;
}

.cartinner table tr td.headingRight {
    font-size: .96rem;
    font-weight: 600;
    text-align: right;
}

.cartinner table tr td.heading label {
    font-size: .94rem;
    font-weight: 600;
}

#paymentinner fieldset,
#rowinterests fieldset,
.cartinner fieldset {
    font-size: .88rem;
    border: 1px solid #d3dde3;
    border-radius: 4px;
    margin-right: 24px;
    min-width: 236px;
}

#paymentinner fieldset legend,
#rowinterests fieldset legend,
.cartinner fieldset legend {
    padding: 4px;
}

#paymentinner fieldset {
    margin-right: 0;
    margin-top: 12px;
    padding: 12px 12px 0;
}

#paymentinner fieldset legend {
    display: none;
}

#discountForm {
    margin-bottom: 8px;
}

.cartinner #addedAttendee:hover {
    background-color: #d8e2e4;
    color: #015CAB;
}
 #discountForm input[type=text] {
    height: 24px;
    border: 1px solid #b3bec6;
    border-radius: 4px;
    margin-right: 16px;
    font-size: .88rem;
    padding: 4px 4px 4px 8px;
}

.cartOption {
    padding: 16px;
}

#paymentinner .cartOption {
    padding-left: 0;
}

#cartOption a,
.cartOption a {
    background-color: #015CAB;
    background: linear-gradient(180deg, #015CAB 0, #0095da 100%);
    color: #fff;
    border-radius: 4px;
    padding: 10px 16px;
    text-transform: uppercase;
    font-weight: 600;
    font-size: .72rem;
    min-height: 32px;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
}

#cartOption a {
    font-size: .72rem;
    padding: 10px 16px;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    letter-spacing: .02rem;
    min-height: 32px;
}

#cartOption a:hover,
.cartOption a:hover {
    background-color: #015CAB;
    background: linear-gradient(180deg, #485865 0, #353f46 100%);
    color: #fff;
    text-decoration: none;
}

.cartOption input.submit,
.checkin-portal form input[type="submit"] {
    background: linear-gradient(180deg, #015CAB 0, #0095da 100%);
    color: #fff;
    border: 0;
    border-radius: 4px;
    padding: 10px 16px;
    width: auto;
    text-transform: uppercase;
    font-size: .72rem;
    font-weight: 600;
    font-family: "Source Sans Pro",
    "Open Sans",
    "Helvetica Neue",
    sans-serif;
}

form#forgot {
    max-width: 72%;
}

form#forgot tr:first-of-type td {
    line-height: 160%;
    padding-bottom: 24px;
    font-weight: 600;
}

form#forgot tr td label {
    font-weight: 600;
}

.client-portal form[name=choose_object] > table > tbody > tr,
.client-portal form[name=login] > table > tbody > tr,
.instructor-portal form[name=choose_object] > table > tbody > tr,
.instructor-portal form[name=login] > table > tbody > tr,
.selfreg-portal #maincontent form[name=codeentry] > table > tbody > tr,
.checkin-portal form[name=sessionChooser] > table > tbody > tr {
    display: grid;
}

.client-portal form[name=choose_object] input,
.client-portal form[name=login] input,
.instructor-portal form[name=choose_object] input,
.instructor-portal form[name=login] input,
.checkin-portal form[name=sessionChooser] input,
.selfreg-portal form[name=codeentry] input {
    margin-bottom: 16px;
}

.client-portal form[name=choose_object] select,
.client-portal form[name=login] select,
.instructor-portal form[name=choose_object] select,
.instructor-portal form[name=login] select,
.checkin-portal form[name=sessionChooser] select,
.selfreg-portal form[name=codeentry] select {
    margin-bottom: 16px;
}

.client-portal form[name=choose_object] label,
.client-portal form[name=login] label,
.instructor-portal form[name=choose_object] label,
.instructor-portal form[name=login] label,
.checkin-portal form[name=sessionChooser] label,
.selfreg-portal form[name=codeentry] label {
    width: 160px;
    font-weight: 600;
}

.pdfalert.success {
    margin-top: 24px;
}

.selfreg-portal .pdfalert.info {
    padding: 40px 4px 0;
    font-size: .92rem;
    max-width: 340px;
    font-weight: 700;
}


.selfreg-portal span.alert {
    color: #015CAB;
}

.selfreg-portal #header_title {
    padding: 0 24px 0 0;
    position: relative;
}

.selfreg-portal #header_title::after {
    content: "Self-Registration";
    font-family: Inter, Roboto, "Helvetica Neue", "Open Sans", sans-serif;
    font-weight: 700;
    color: #015CAB;
    letter-spacing: -.05rem;
    font-size: 1rem;
    position: absolute;
    top: 10px;
    left: 156px;
    top: -1px;
    width: 150px;
    padding: 10px 0 10px 20px;
    border-left: 1px solid #485865;
}

.cartOption input.submit:hover {
    background: linear-gradient(180deg, #485865 0, #353f46 100%);
    text-decoration: none;
}

#footer {
    border-top: 0 solid #c6c8c6;
    font-size: .75rem;
    text-transform: uppercase;
    background-color: #1c2226;
    flex-shrink: 0;
    float: none;
}

#footer td,
#footer th {
    font-size: .75rem;
    text-transform: uppercase;
}

#footer table {
    color: #fff;
    background: linear-gradient(180deg, #468FCC 0, #015CAB 100%);
    padding-top: 15px;
}


#footer table tr td {
    color: #fff;
}

#footer a {
    background-color: transparent;
    text-decoration: underline;
    text-underline-position: under;
    font-size: .75rem;
}

#footer a:hover {
    color: #015CAB;
    background-color: transparent;
}

.courses {
    font-size: 1rem;
    line-height: 1.6rem;
    padding-top: 0;
}

.historyinner table tr td.tableheading {
    color: #015CAB;
}

.leftMenu {
    padding: 24px 0 16px 0;
    border-top: 2px solid #fff;
}

.leftMenu ul li {
    padding: 0 0;
}

.leftMenu ul li a {
    color: #1c2226;
    background-color: transparent;
    border-bottom: 1px dotted #e8eff4;
    border-radius: 0;
    font-weight: 600;
}

.leftMenu ul li a:hover {
    color: #015CAB;
    background-color: #f1f4f6;
}

.leftMenu ul.Level00 li a {
    padding: 12px 12px 12px 20px;
    min-height: 24px;
    color: #015CAB;
    background-color: #f5f5f5;
    text-transform: uppercase;
    font-size: .84rem;
    line-height: .88rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    border-bottom: 0;
    border-radius: 0;
}

.leftMenu:first-of-type {
    background-color: #fff;
    border-radius: 4px;
    padding: 8px 8px 2px;
    margin-bottom: 16px;
    border-top: 0;
}

.leftMenu:first-of-type ul li a {
    font-size: .8rem;
    font-weight: 700;
    font-family: Inter, Roboto, "Helvetica Neue", "Open Sans", sans-serif;
    padding: 8px 4px 7px 16px;
    border-bottom: 0;
    color: #485865;
    position: relative;
}

.leftMenu:first-of-type ul li a::after {
    content: "\00BB";
    font-family: Inter, Roboto, "Helvetica Neue", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Oxygen, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: .96rem;
    display: inline-block;
    margin: 4px 4px 0;
}

.leftMenu ul.Level01 li a,
.leftMenu ul.Level02 li a,
.leftMenu ul.Level03 li a,
.leftMenu ul.Level04 li a {
    padding: 8px 20px;
    color: #1c2226;
    background-color: #fff;
    text-transform: none;
    font-size: .8rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    min-height: 18px;
    font-family: Inter, Roboto, "Helvetica Neue", "Open Sans", sans-serif;
}

.leftMenu ul.Level00 li a.active {
    color: #fff;
    background-color: #015CAB;
}

.leftMenu ul.Level01 li a.active,
.leftMenu ul.Level02 li a.active,
.leftMenu ul.Level03 li a.active,
.leftMenu ul.Level04 li a.active {
    color: #015CAB;
    background-color: #fff;
    font-weight: 800;
}

.leftMenu ul.Level00 li a.active:hover,
.leftMenu ul.Level00 li a:hover,
.leftMenu ul.Level00 li a:hover > i.arrow.right,
.leftMenu ul.Level01 li a.active:hover,
.leftMenu ul.Level01 li a:hover,
.leftMenu ul.Level02 li a.active:hover,
.leftMenu ul.Level02 li a:hover,
.leftMenu ul.Level03 li a.active:hover,
.leftMenu ul.Level03 li a:hover,
.leftMenu ul.Level04 li a.active:hover,
.leftMenu ul.Level04 li a:hover {
    color: #fff;
    text-decoration: none;
    background-color: #485865;
}

.leftMenu ul li a i,
.leftMenu ul.Level00 li:hover > a > i.arrow.right {
    border-color: #F1582D;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 4px;
    margin-right: 8px;
}

.leftMenu ul li a i:hover,
.leftMenu ul.Level00 li:hover > a > i.arrow.right {
    border-color: #fff;
}

.leftMenu ul li a i.down {
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    border-color: #F1582D;
    margin-bottom: 4px;
}

#popularContainer h3 {
    color: #1c2226;
}

#maincontent > h2 {
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.5rem;
    color: #485865;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
}

.instructor-portal #maincontent input.text,
.checkin-portal #maincontent input.text {
    height: 32px;
    font-size: .8rem;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
}

#maincontent input.text {
    font-size: .8rem;
    padding-top: 4px;
    padding-bottom: 3px;
    padding-left: 8px;
    margin-right: 12px;
    border: 1px solid #b3bec6;
    height: 24px;
    border-radius: 4px;
    width: 100%;
    box-sizing: border-box;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
}

form[name=choose_company] input[type=text],
form[name=choose_object] input[type=text] {
    font-size: .8rem;
    padding-top: 4px;
    padding-bottom: 3px;
    padding-left: 8px;
    margin-right: 12px;
    border: 1px solid #b3bec6;
    height: 32px;
    border-radius: 4px;
    width: 250px;
    box-sizing: border-box;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
}

form[name=choose_company] td:first-child,
form[name=choose_object] td:first-child {
    font-weight: 600;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
    font-size: .8rem;
}

#maincontent form[name=login] input.text {
    height: 32px;
    font-size: .8rem;
}

#maincontent select {
    width: 100%;
}

.cartinner table tr td select.dropdown,
.cartinner table tr td select.dropdownCart,
.courseinner table tr td select.dropdown,
select#questionDropdown {
    font-size: .8rem;
    padding-top: 4px;
    padding-bottom: 3px;
    padding-left: 4px;
    padding-right: 4px;
    border: 1px solid #b3bec6;
    border-radius: 4px;
    height: 32px;
    width: 262px;
}

.cartinner #addedAttendee {
    border: 1px solid #b3bec6;
    background-color: #fff;
    vertical-align: text-top;
    padding-right: 12px;
    padding-left: 16px;
    border-radius: 15px;
    font-size: .8rem;
}

.cartinner #addedAttendee:hover {
    background-color: #d8e2e4;
    color: #015CAB;
}

.cartinner #addedAttendee a,
.cartinner #addedAttendee a:active,
.cartinner #addedAttendee a:hover {
    background-color: transparent;
}

.cartinner #addedAttendee img {
    padding: 1px 3px 0 8px;
    vertical-align: middle;
}

.cartinner table tr td.total {
    font-size: 1.08rem;
}

.cart a img {
    background-color: transparent;
    padding-left: 4px;
}

.client-portal form[name=login],
.instructor-portal form[name=login],
.checkin-portal form[name=login],
form[name=choose_company],
form[name=choose_object] {
    background-color: #f1f4f6;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
    padding: 40px 32px;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
}

.client-portal form[name=login] hr,
.instructor-portal form[name=login] hr,
.checkin-portal form[name=login] hr {
    margin: 16px 0;
    background-color: #f1f4f6;
}

.logform {
    background: #fff;
    border-radius: 10px;
    border: 1px hsla(189, 19%, 87%, .8) solid;
    box-shadow: none;
}


.logHeading {
    margin-bottom: 24px;
    font-size: 1.1rem;
    color: #1c2226;
}

.logform input {
    background-color: #f1f4f6;
}

.logform button {
    background: #015CAB;
    color: #fff;
    border-radius: 4px;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    font-weight: 600;
    font-size: .88rem;
    max-width: 144px;
    height: 40px;
    padding: 8px 16px;
}

.logform .message {
    color: #015CAB;
}

.logform .message a {
    color: #015CAB;
    text-decoration: underline;
    text-underline-position: under;
}

#loginHeader {
    color: #015CAB;
    background-color: #f1f4f6;
    width: 80%;
}

.loginContent table tr td {
    color: #1c2226;
}

.loginContent input.button {
    background-color: #015CAB;
    background: linear-gradient(180deg, #ba2334 0, #9f1934 100%);
    color: #fff;
    text-decoration: none;
    border-color: #015CAB;
}

.loginContent a {
    color: #015CAB;
}

.loginContent input.button:hover {
    background-color: #c6c8c6;
    color: #1c2226;
}

input[value="Save Changes"]:hover {
    background-color: transparent;
    background: linear-gradient(180deg, #485865 0, #353f46 100%);
}

#forgot input[type=submit]:hover,
.loginContent input.submit:hover {
    background: linear-gradient(180deg, #485865 0, #353f46 100%);
    color: #f1f4f6;
}

.selfreg-portal form[name=login] tr {
    display: grid;
    max-width: 600px;
}

.selfreg-portal #maincontent form[name=login] tr > td:first-child {
    font-weight: 600;
    font-size: .8rem;
    padding-top: 8px;
}

.client-portal #maincontent form[name=login] tr#rowinterests table td,
.instructor-portal #maincontent form[name=login] tr#rowinterests table td,
.selfreg-portal #maincontent form[name=login] tr#rowinterests table td,
.checkin-portal #maincontent form[name=login] tr#rowinterests table td {
    font-weight: 400;
    font-size: .88rem;
    padding-top: 0;
}

.selfreg-portal #maincontent select[for="udfdata_OI*COVIDWAIVER"] {
    margin-top: 8px;
}

.selfreg-portal #maincontent label[for="udfdata_OI*COVIDWAIVER"] a {
    text-decoration: underline;
    text-underline-position: under;
}

.selfreg-portal #maincontent .cartOption {
    padding-left: 0;
}

.selfreg-portal #maincontent form[name=login] input.text,
.selfreg-portal #maincontent form[name=login] select.dropdown {
    width: 100%;
    max-width: 320px;
}

form[name=login] tr > td:first-child {
    font-weight: 700;
}

#subHeader {
    border-bottom: 0 solid #f1f4f6;
    color: #1c2226;
    font-size: 1.1rem;
}

.selfreg-portal #maincontent #subHeader {
    font-size: .96rem;
    margin-bottom: -12px;
}

.selfreg-portal #maincontent #note {
    font-size: .8rem;
}

div#maincontent table {
    background-color: transparent;
}

.client-portal #maincontent,
.instructor-portal #maincontent,
.checkin-portal #maincontent {
    margin-top: -48px;
}

#rowinterests fieldset table,
.cartinner fieldset table {
    margin-bottom: 0;
}

.client-portal #subHeader,
.instructor-portal #subHeader,
.checkin-portal #subHeader,
.subHeader {
    border-bottom: 0 solid #f1f4f6;
    color: #1c2226;
    font-family: Inter, Roboto, "Helvetica Neue", system-ui, -apple-system, BlinkMacSystemFont, "Open Sans";
    font-weight: 800;
    margin-top: 0;
    margin-bottom: 8px;
    font-size: 1.5rem;
    letter-spacing: -.05rem;
}

.client-portal #subHeader,
.instructor-portal #subHeader,
.checkin-portal #subHeader {
    margin: 16px 0 8px;
    padding-left: 0;
    margin-right: 0;
    width: 100%;
}

.client-portal div#maincontent > table,
.instructor-portal div#maincontent > table,
.checkin-portal div#maincontent > table {
    background-color: #f1f4f6;
    padding: 24px;
    border-radius: 8px;
    width: 100%;
}

.client-portal div#maincontent > table tr > td,
.instructor-portal div#maincontent > table tr > td {
    padding: 4px 0;
}

.client-portal div#maincontent table td,
.instructor-portal div#maincontent table td,
.checkin-portal div#maincontent > table td {
    font-size: .88rem;
    line-height: 1.1rem;
}

.client-portal div#maincontent table td[nowrap],
.instructor-portal div#maincontent table td[nowrap],
.checkin-portal div#maincontent > table td[nowrap] {
    font-weight: 700;
}

.client-portal div#maincontent table td a,
.instructor-portal div#maincontent table td a,
.checkin-portal div#maincontent > table td a {
    font-size: .88rem;
    text-decoration: underline;
    text-underline-position: under;
    -webkit-text-decoration-color: #b3bec6;
    text-decoration-color: #b3bec6;
    color: #015CAB;
    display: flex;
    align-items: center;
}

/* checkin portal extra table styles */
.ttcSessionTable {
    border-collapse: collapse;
}

.ttcSessionTable tbody tr {
    border-bottom: 1px solid #48586550;
}

.ttcSessionTable tbody tr:last-of-type {
    border-bottom: 3px solid #48586550;
}

.ttcSessionTable tr th {
    padding-top: 16px;
    background-color: #48586550;

}

.ttcSessionTable th:nth-of-type(1) {
    padding-left: 24px;
    border-radius: 8px 0 0;
}

.ttcSessionTable th:nth-of-type(4) {
    border-radius: 0 8px 0 0;
}

.ttcSessionTable tbody tr td {
    padding: 6px 0;
}

.ttcSessionTable tr td:nth-of-type(1) {
    padding-left: 24px;
}

.ttcSessionTable tr td:nth-of-type(4) {
    display: flex;
    justify-content: flex-end;
    padding-right: 24px;
}

.ttcSessionTable tr td:nth-of-type(4) a {
    text-align: center;
}

.ttcSessionTable tbody tr:hover {
    background-color: #015CAB15;
}

/* end check-in portal extra table styles */
.client-portal div#maincontent table td a img,
.instructor-portal div#maincontent table td a img .checkin-portal div#maincontent > table td a img {
    margin-right: 4px;
}

.client-portal .subHeader td[align=left][width="80%"] {
    width: 50%;
}

#schedule {
    padding: 12px 16px 16px 16px;
    background-color: #fff;
    border-radius: 4px;
    margin-bottom: 8px;
    box-sizing: content-box;
}

#schedule table {
    border-collapse: collapse;
}

#schedule td,
#schedule th {
    font-size: .88rem;
    padding: 4px 0;
}

#schedule td {
    border-bottom: 1px dotted #ccc;
}

form[name=register] select {
    height: 24px;
    margin: 4px;
}

form[name=cancelreg] input[name=submit],
form[name=register] input[name=submit] {
    display: flex;
    align-items: center;
    border: 0;
    border-radius: 4px;
    background-color: #015CAB;
    color: #fff;
    height: 24px;
    text-transform: uppercase;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    font-weight: 600;
    margin-right: 4px;
}

form[name=cancelreg] input[name=submit]:hover,
form[name=register] input[name=submit]:hover {
    border: 0;
    border-radius: 4px;
    background-color: #485865;
    color: #fff;
}

.pdfalert.jobinfo {
    background-color: #353f46;
    border-radius: 8px;
    font-weight: 600;
    line-height: 180%;
}

form[name=attendanceForm] {
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif !important;
}

#instructorbreak li {
    font-weight: 700;
    font-size: 1rem;
    list-style-type: none;
    border-bottom: 1px dotted #48586550;
    padding-bottom: 4px;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif !important;
}

.studentline li {
    font-size: .96rem;
    font-weight: 700;
    list-style-type: none;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif !important;
}

.attendancecaption {
    font-size: .96rem;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif !important;
    padding-bottom: 8px;
}

.attendanceline td {
    padding: 0 8px 8px 0;
    text-align: center;
    color: #485865;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif !important;
}

.attendanceline tr:last-of-type td {
    font-size: 1.4rem !important;
    padding: 0 8px 16px;
}

.awardrow {
    margin-top: 4px;
}

input.attendance.grade,
input.attendance.hours {
    height: 20px;
    border-radius: 4px;
    border: 1px solid #b3bec6 !important;
    font-size: .8rem;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
}

#portalOption input.submit {
    background: linear-gradient(180deg, #ba2334 0, #9f1934 100%);
    padding: 8px 16px;
    border-radius: 4px;
    border: 0;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    color: #fff;
    width: auto;
}

.changeday,
.verifyall,
label[for=selectall] {
    font-size: .96rem;
}

.markallpresent {
    margin-top: 16px;
}

input[checked]:active {
    background-color: #015CAB;
    border-color: #015CAB;
}

.studentline.present li {
    padding-left: 32px;
}

#wholeContent #footer {
    grid-column: 1/span2;
}

.pdfalert.attendanceprint {
    background-color: #f1f4f6;
    border-radius: 8px;
    font-size: .8rem;
    line-height: 180%;
    font-weight: 600;
}

td.courseinner {
    background-color: transparent;
    border-left: 1px solid #015CAB;
    border-radius: 0;
    padding-left: 8px !important;
    line-height: 172% !important;
}

.courseinner .rosterName {
    display: flex;
    align-items: center;
}

#searchBox {
    border: 0;
    border-radius: 8px;
    background-color: #f1f4f6;
    padding: 24px;
}

#attendeeBox {
    padding-left: 8px !important;
    border: 0;
    border-left: 1px solid #015CAB;
}

#portalOption {
    display: flex;
    flex-wrap: wrap;
}

#portalOption a {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #015CAB;
    border-radius: 34px;
    background-color: #fff;
    color: #015CAB;
    height: 30px;
    line-height: 120%;
    padding: 2px 12px;
    margin-bottom: 8px;
    width: auto;
    min-width: 80px;
    text-transform: uppercase;
}

#portalOption a:hover {
    border: 2px solid #485865;
    background-color: #f1f4f6;
    color: #485865;
}

.tableHeaderRow td {
    font-weight: 600;
}

td > .subHeader {
    margin-bottom: 8px;
}

input[name=feeCode],
label[for=feeCode] {
    padding-top: 4px;
}

#subHeaderNote {
    border-bottom: 0 solid #eee;
    background-color: #fdb7bb;
    color: #1c2226;
    line-height: 144%;
    padding: 16px 16px 16px 16px;
    box-sizing: border-box;
    width: 100%;
    font-weight: 600;
}

#subCategories a {
    color: #1c2226;
}

#subCategories a:hover {
    background-color: #1c2226;
}

.courses > .subheadinglink > a,
h2.subheadinglink > a {
    margin-bottom: 4px;
    font-size: 1.05rem;
    text-decoration: none;
    font-weight: 800;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
}

.courses > .subheadinglink > a:hover,
h2.subheadinglink > a:hover {
    text-decoration: underline;
    text-underline-position: under;
    -webkit-text-decoration-color: #768b9e;
    text-decoration-color: #F1582D;
    color: #485865;
}

#profileinner,
.profileinner {
    background-color: #f1f4f6;
    border-radius: 8px;
    padding: 24px;
    margin-bottom: 24px;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
}

div#maincontent .profileinner table {
    background-color: #f1f4f6;
    margin-bottom: 0;
}

#profileinner tr td,
.profileinner tr td {
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
    font-size: .8rem;
    line-height: 120%;
}

#profileinner tr td:first-child,
.profileinner tr td:first-child {
    font-weight: 600;
    padding: 4px 16px 4px 0;
}

textarea {
    border-color: #b3bec6;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    padding: 8px;
}

#profileOption a {
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    margin-left: 16px;
}

#maincontent input.money {
    background-color: #fff;
    font-size: .75rem;
    padding-top: 5px;
    padding-bottom: 3px;
    padding-left: 5px;
    margin-right: 0;
    text-align: right;
    border: 1px solid #a8b1b7;
}

input[type=checkbox] {
    height: 12px;
    width: 12px;
    border-radius: 4px;
}

input[type=checkbox]:checked {
    background-color: #015CAB;
}

#profileinner table tr td select.dropdown,
.profileinner table tr td select.dropdown,
select.dropdown {
    width: 250px;
    height: 32px;
    border-radius: 4px;
    border-color: #b3bec6;
    font-size: .8rem;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
}

.profileinner label {
    font-size: .8rem;
    font-weight: 600;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
}

.instructorbreak {
    background-color: #f1f4f6;
    color: #1c2226;
}

.cal {
    padding: 5px 5px 5px 5px;
}

.calHeader {
    background-color: #fff;
    border-bottom: 0 solid #f1f4f6;
    color: #1c2226;
    font-family: Inter, Roboto, Helvetica, sans-serif;
    letter-spacing: -.05rem;
    font-size: 1.5rem;
    font-weight: 800;
    padding-left: 0;
    padding-bottom: 4px;
    margin-bottom: 24px;
}

.calFooter,
.calFooterCenter,
.calFooterLeft,
.calFooterRight,
.calSubheaderDOW {
    background-color: #485865;
    border-color: #1c2226;
    font-family: Inter, Roboto, Helvetica, sans-serif;
    font-weight: 600;
}

.calSubheaderDOW {
    height: 32px;
}

.calFooter td {
    height: 40px;
    padding: 0 16px;
}

.highlight span:first-of-type {
    color: #015CAB;}



.upcomingCourse a {
    font-weight: 600;
    font-size: .96rem;
    color: #015CAB;
}



.truncate a {
    background-color: #f1f4f6;
    color: #015CAB;
}



.calSubheader td {
    height: 40px;
    background-color: #015CAB;
    color: #fff;
}

.calSubheader a {
    font-family: Inter, Roboto, Helvetica, sans-serif;
    color: #fff;
    font-weight: 600;
    padding: 8px 16px 8px;
    min-height: 40px;
    margin-bottom: 16px;
}

.calCatSelect {
    color: #fff;
    margin: 4px 12px 8px;
    display: flex;
    align-items: center;
}

.calCatSelect select {
    margin-left: 8px;
    height: 32px;
    font-size: .88rem;
    border-radius: 4px;
    border: 1px solid #b3bec6;
    max-width: 32%;
}

.calCatSelect button {
    height: 32px;
    width: 56px;
    border-radius: 4px;
    border: 0 solid #b3bec6;
    margin-top: 1px;
    cursor: pointer;
    background-color: #f1f4f6;
    text-transform: uppercase;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    font-weight: 600;
    font-size: .8rem;
    color: #015CAB;
}

.calCatSelect button:hover {
    background-color: #485865;
    color: #fff;
    border: 1px solid #293239;
}

.calCatOption {
    color: #1c2226;
}

.calDOW {
    background-color: #f1f4f6;
    padding: 2px;
    min-width: 72px;
}

.calTodayDOWlisting {
    padding: 0 4px;
    border-radius: 2px;
    font-weight: 500;
}

.colDOWContainer {
    font-size: .6rem;
}

#payment #paymentinner table tr td.tableheading {
    color: #1c2226;
}

.historyinner {
    padding: 24px;
    background-color: #f1f4f6;
}

#payment #paymentinner {
    padding: 12px 24px 24px;
    background-color: #f1f4f6;
}

#paymentinner table,
.historyinner table {
    background-color: #f1f4f6;
    margin-bottom: 0 !important;
}

#payment #paymentinner table tr td {
    font-size: .94rem;
}

.historyinner table tr td,
.historyinner table tr td.heading {
    font-size: .94rem;
    padding-right: 16px;
}

.historyinner #arrow2 {
    display: none;
}

.history a {
    padding-top: 0;
    font-size: .94rem;
    font-weight: 700;
    color: #015CAB;
    background-color: #f1f4f6;
    display: flex;
    align-items: center;
}

.history a:hover {
    color: #485865;
}

.not-in-mobile tr {
    padding-bottom: 20px;
}

.featuredCourse {
    border: 1px solid #f1f4f6;
    padding: 15px;
    line-height: 140%;
    border-spacing: 10px;
}

.featuredCourse span {
    font-size: 95%;
    margin-top: 10px;
    display: inline-block;
}

.featuredCourseTitle a:hover {
    color: #1c2226;
}

.upcomingCourse {
    margin-bottom: 32px;
}

.upcomingCourse ul {
    border-bottom: 1px dotted #ccc;
}

.upcomingCourse li {
    list-style-type: none;
    margin-left: 0;
}

#search {
    margin-right: 0;
    padding-right: 0;
    width: auto;
}

#search form {
    position: relative;
    margin-right: -3px;
}

input.searchImg {
    position: absolute;
    top: 0;
    right: 2px;
    opacity: 0;
    width: 40px;
    height: 37px;
    z-index: 999;
}

#search form::after {
    background-image: url(http://tulsatech.edu/_layouts/enrole/images/search-icon.png);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ___________";
    font-weight: 500;
    height: 16px;
    width: 16px;
    position: absolute;
    top: 12px;
    right: 2px;
    cursor: pointer;
    color: rgba(172, 27, 44, 0);
}

#search input[type=text] {
    display: flex;
    align-items: center;
    background-color: #468FCC;
    border: 3px solid #fff;
    color: #fff;
    font-size: .88rem;
    border-radius: 40px;
    padding: 2px 0 2px 16px;
    font-weight: 400;
    transition: width .5s ease-out .2s;
    position: absolute;
    top: 0;
    right: -12px;
    outline: transparent;
    box-shadow: inset 0 3.39779px 3.39779px rgba(0, 0, 0, .25);
    width: 224px;
    font-family: "Source Sans Pro", "Open Sans", sans-serif;
    box-sizing: border-box;
    height: 40px;
}

#search input[type=text]::-webkit-input-placeholder {
    vertical-align: middle;
    line-height: 3.2rem;
    font-weight: 700;
    color: #e8e9e8;
    font-style: italic;
    font-size: .88rem;
    font-family: "Source Sans Pro", "Open Sans", sans-serif;
}

#search input[type=text]::-moz-placeholder {
    vertical-align: middle;
    line-height: 3.2rem;
    font-weight: 700;
    color: #e8e9e8;
    font-style: italic;
    font-size: .88rem;
    font-family: "Source Sans Pro", "Open Sans", sans-serif;
}

#search input[type=text]:-ms-input-placeholder {
    vertical-align: middle;
    line-height: 3.2rem;
    font-weight: 700;
    color: #e8e9e8;
    font-style: italic;
    font-size: .88rem;
    font-family: "Source Sans Pro", "Open Sans", sans-serif;
}

#search input[type=text]::-ms-input-placeholder {
    vertical-align: middle;
    line-height: 3.2rem;
    font-weight: 700;
    color: #e8e9e8;
    font-style: italic;
    font-size: .88rem;
    font-family: "Source Sans Pro", "Open Sans", sans-serif;
}

#search input[type=text]::placeholder {
    vertical-align: middle;
    line-height: 3.2rem;
    font-weight: 700;
    color: #e8e9e8;
    font-style: italic;
    font-size: .88rem;
    font-family: "Source Sans Pro", "Open Sans", sans-serif;
}

#search input[type=text]:hover {
    transition: width .5s ease-out;
}

#search input[type=text]:active,
#search input[type=text]:focus,
#search input[type=text]:focus-within {
    border: 3px solid #768b9e;
    outline: transparent;
}

#instructors table tr td {
    border-radius: 8px;
    background-color: #f1f4f6;
    font-size: .88rem;
    padding: 24px;
}

#instructors table tr td:first-child {
    display: none;
}

.calTodayDOWlisting {
    color: #fff;
    background-color: #015CAB;
}

#instructors img {
    height: auto;
    width: 80px;
}

#note,
.note {
    color: #485865;
    font-weight: 700;
    font-size: 1rem;
    margin-bottom: 16px;
    padding-left: 0;
    line-height: 120%;
}

#rowinterests table {
    margin-top: 4px;
}

.pdfalert.info {
    background-color: transparent;
    color: #015CAB;
    opacity: 1;
    transition: none;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
    font-weight: 800;
}

.pdfalert.error {
    background-color: #015CAB;
    opacity: 1;
    transition: none;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
    font-weight: 800;
}

#importantDescription {
    font-size: .8rem;
    line-height: 1.2rem;
    margin: 0 auto;
    text-align: left;
}

#importantDescription a {
    text-decoration: underline;
    text-underline-position: under;
    color: inherit;
}

.logform .forgotPw a {
    color: #015CAB;
    font-size: .8rem;
    text-align: right;
    text-decoration: underline;
    text-underline-position: under;
}

.logform .forgotPw a:hover {
    color: #1c2226;

}

.login-page.logform {
    position: relative;
}

.logform {
    padding: 24px;
    color: #485865;
}

.logform p:empty {
    margin: 0;
}

.login-form {
    background-color: #f1f4f6;
    padding: 16px;
    border-radius: 4px;
}

.logform .message {
    color: #015CAB;
}

.logform .message a {
    color: #015CAB;
    text-decoration: underline;
    text-underline-position: under;
}

.login-form .alert {
    color: #fff;
    font-style: italic;
    font-size: 1rem;
    line-height: 110%;
    padding: 8px;
    margin-top: 8px;
    background-color: #485865;
    display: block;
    box-sizing: border-box;
}

.login-form input {
    background-color: #fff;
    border: 1px solid #b3bec6;
}

.logform > button {
    margin-top: 72px;
    position: relative;
    margin-bottom: 16px;
}

.logform > button:before {
    content: "New Customer";
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
    font-weight: 800;
    font-size: 1.1rem;
    text-transform: none;
    background-color: transparent;
    color: #1c2226;
    position: absolute;
    top: -36px;
    left: 0;
    right: 0;
}

#importantN {
    margin: 12px auto 4px;
}

.client-portal input.submit,
.instructor-portal input.submit {
    margin-bottom: 16px;
}

#loginHeader {
    color: #015CAB;
    background-color: #f1f4f6;
    width: 80%;
}

.loginContent input.button {
    background-color: #015CAB;
    background: linear-gradient(180deg, #015CAB 0, #0095da 100%);
    color: #fff;
    text-decoration: none;
    border-color: #015CAB;
}

.loginContent a {
    color: #015CAB;
}

.loginContent input.button:hover {
    background-color: #c6c8c6;
    color: #1c2226;
}

/* ----------Instructor Portal------------ */
/* -----------Attendance print-------- */

.instructor-portal div#maincontent .attendanceprint ~ table {
    border-collapse: collapse;
    border: 1px solid #485865;
    background-color: transparent;
}

.instructor-portal .attendanceprint ~ table .regDate,
.instructor-portal .attendanceprint ~ table .registerDate {
    width: 8%;
    padding: 4px 0;
}

.instructor-portal .attendanceprint ~ table .regDate:last-of-type,
.instructor-portal .attendanceprint ~ table .registerDate:last-of-type {
    width: 4.0%;
}


.instructor-portal div#maincontent .datesHeader,
.instructor-portal div#maincontent .rosterCells {
    width: 3.5%;
    padding: 4px 0;
}

.instructor-portal div#maincontent .enrollee {
    min-width: 15%;
    max-width: 44% !important;
    border: 1px solid black;
    padding: 4px 0 4px 8px;

}

.instructor-portal div#maincontent .rosterName {
    padding-left: 8px;
    min-width: 15%;
    max-width: 44% !important;
}

.instructor-portal .attendanceprint ~ table tr:nth-of-type(even) {
    background-color: #f5f8fa;
}


.instructor-portal .attendanceprint ~ table th {
    font-family: "inter", sans-serif;
    font-size: .72rem;
    font-weight: 600;
    line-height: 112%;
    background-color: #485865;
    color: #fff;
    /* min-height: 40px; */
    padding: 6px 0 !important;
    text-align: center;
}

.instructor-portal .attendanceprint ~ table th h3 {
    color: #fff;
    font-size: .72rem;
    font-weight: 600;
}

/* ------END Attendance print-------- */
/* -------END Instructor Portal------------ */
.alert-2020 {
    padding: 16px 24px;
    color: #485865;
    display: grid;
    grid-template-rows: .3fr 1fr;
    gap: 16px;
    background-color: #f1f4f6;
    justify-content: center;
    align-items: center;
    font-size: 1rem;
    letter-spacing: -.05rem;
    font-weight: 800;
    border-radius: 8px;
    text-align: center;
}

.feature-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-flow: row;
    margin-top: 24px;
    gap: 24px;
}

.catalog {
    display: grid;
    grid-template-rows: auto auto;
    align-items: center;
    justify-content: center;
    background: #f1f4f6;
    border-radius: 8px;
    padding: 24px;
    padding-bottom: 4px;
    width: auto;
    text-align: center;
}

.catalog a,
.catalog p {
    font-size: 1.1rem;
    line-height: 1.3rem;
    letter-spacing: -.05rem;
    color: #015CAB;
    font-weight: 800;
    align-self: end;
}

.catalog a img {
    height: 144px;
    width: auto;
    justify-self: center;
}

.alert-2020 img {
    max-width: 112px;
}

.alert-2020 a {
    font-size: 1.1rem;
    line-height: 1.3rem;
    letter-spacing: -.05rem;
    color: #015CAB;
    font-weight: 800;
}

.selfreg-portal #login.not-in-mobile input.text {
    max-width: 120px;
}

/* Subsessions */
.custom_subsession {
    margin-right: 16px;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
}

.custom_subsession > h2:empty {

    margin: 0;
}

.custom_subsession > h2:last-of-type {
    margin: 0 0 4px 0;
    /* border-left:8px solid #48586550;
    padding-left: 6px; */
    font-size: 1rem;
    color: #485865;
}

.custom_subdesc {
    font-size: .9rem;
    font-weight: 400;
    padding: 4px 0 6px 8px !important;
    border-left: 2px solid #48586530;
    margin: 0 0 4px 2px !important;
    text-align: justify;
}

.custom_subsched {
    font-weight: 400;
    /* margin: 0 0 6px 8px!important; */
}

.custom_subsched > span {
    font-weight: 700;
    font-size: .9rem;
}

tr.ttc-subform select[name="subFeeCode"] {
    margin: -6px 0 0;
    float: left;
    height: 30px !important;
    width: 100%;
}

tr.ttc-subform input.qty[name="subQuantity"] {
    margin: -6px 0px -11px;
    float: right;
    height: 26px;
    border-color: #b3bec6;
    border-width: 1px;
    width: 25px;
    font-size: .8rem;

}

/* reduce height of empty row (selecting adjacent sibling )*/
tr.ttc-subform + tr > td.tableheading {
    line-height: 10px;
}

/* Set width of cells in form rows */
tr.ttc-subform > td:nth-child(1) {
    width: 3%;
}

tr.ttc-subform > td:nth-child(2) {
    /* width: -webkit-min-content;
    width: -moz-min-content; */
    width: 50%;
}

tr.ttc-subform > td:nth-child(3) {
    width: 4%;
}

tr.ttc-subform > td:nth-child(4) {

    width: 10%;
}
tr.ttc-subform > td:nth-child(5) {
    width: 0%;
}

/* Bulletin----
(Selector added through Vocabulary <h1 class="subHeader ttc-bulletin">Bulletin</h1>)
----*/

.ttc-bulletin {
    position: relative;
    padding-left: 36px;
    margin-top: 16px;
    color: #aa272f;

}

.ttc-bulletin::before {
    content: url('https://tulsatech.edu/_layouts/enrole/star.svg');
    position: absolute;
    top: 2px;
    left: 4px;
    height: 24px;
    width: 24px;
}

/* .ttc-bulletin::after{
    content:'  Please Note!';
    color:#aa272f;
    font-weight:700;
    font-size:.88rem;
    padding-left:4px;
} */
h3 ~ ul {
    margin-top: 0;
}

/* Promo codes */
.promo {
    display: inline-block;
    padding: 0 4px;
    border: 2px dashed #aa272f;
    background-color: #fff;
    border-radius: 4px;
    letter-spacing: .02rem;
    font-family: Inter, Roboto, "Helvetica Neue", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Oxygen, sans-serif;
    font-weight: 700;
    font-size: .80rem;
}

td:has(input[name="feeCode"]) {
    position: relative;
}

/* td:has(input[name="feeCode"])::after{
    content: '(Total for session)';
    position: absolute;
    bottom:1px;
    font-weight:700;
    padding-left:2px;
    }
    */


/* *Check-In Portal Begin* */
.checkin-portal h2 {
    font-weight: 700 !important;
}

.checkin-portal #cartCount {
    background-color: transparent;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.checkin-portal #cartCount.not-in-mobile + div {
    display: none !important;
}

.checkin-portal form input[type="submit"] {

    margin: 32px 0;
}

.checkin-portal form[name="sessionChooser"] table tr td:first-child {
    font-size: .88rem;
    font-weight: 600;
}

.checkin-portal form[name="sessionChooser"] table tr td input[type="text"] {
    font-size: .8rem;
    padding-top: 4px;
    padding-bottom: 3px;
    padding-left: 8px;
    margin-right: 12px;
    border: 1px solid #b3bec6;
    height: 32px;
    border-radius: 4px;
    width: 250px;
    box-sizing: border-box;
    font-family: Inter, Roboto, OpenSans, Arial, Helvetica, sans-serif;
}

.checkin-portal form[name="sessionChooser"] ~ table tr.tableHeaderRow th:nth-child(2) {
    width: 50%;
}

.checkin-portal form[name="scan"] tr {
    display: flex;
    flex-wrap: wrap;
}

.checkin-portal form[name="scan"] .cartOption {
    padding-top: 0;
}

.checkin-portal form[name="scan"] .cartOption .submit {
    margin-left: -8px;
}

.checkin-portal div#cartOption {
    margin-bottom: 40px;
}

.checkin-portal .alert {
    display: block;
    padding: 32px;
    background-color: #f1f4f6;
    border-radius: 8px;
    color: #015CAB;
}

.checkin-portal table .alert {
    padding: unset;
    background-color: unset;
    display: inline-block;

}

/* *Check-In Portal End* */

.loginContent input.submit,
form[name=forgot] input[type=submit],
input[value="Save Changes"] {
    background-color: #015CAB;
    background: linear-gradient(180deg, #015CAB 0, #0095da 100%);
    color: #fff;
    border-color: transparent;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    font-weight: 600;
    font-size: .72rem;
    text-transform: uppercase;
    padding: 10px 16px;
    border-radius: 4px;
    min-height: 32px;
}

input[value="Save Changes"]:hover {
    background-color: transparent;
    background: linear-gradient(180deg, #485865 0, #353f46 100%);
}

#forgot input[type=submit]:hover,
.loginContent input.submit:hover {
    background: linear-gradient(180deg, #485865 0, #353f46 100%);
    color: #f1f4f6;
}



input[type=checkbox]:checked {
    background-color: #015CAB;
}



#portalOption input.submit {
    background: linear-gradient(180deg, #015CAB 0, #0095da 100%);
    padding: 8px 16px;
    border-radius: 4px;
    border: 0;
    font-family: "Source Sans Pro", "Open Sans", "Helvetica Neue", sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    color: #fff;
    width: auto;
}

#portalOption a {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #015CAB;
    border-radius: 34px;
    background-color: #fff;
    color: #015CAB;
    height: 30px;
    line-height: 120%;
    padding: 2px 12px;
    margin-bottom: 8px;
    width: auto;
    min-width: 80px;
    text-transform: uppercase;
}

#portalOption a:hover {
    border: 2px solid #485865;
    background-color: #f1f4f6;
    color: #485865;
}



.ttc-bulletin {
    position: relative;
    padding-left: 36px;
    margin-top: 16px;
    color: #015CAB;
}

.ttc-bulletin::before {
    content: url('https://tulsatech.edu/_layouts/enrole/star.svg');
    position: absolute;
    top: 2px;
    left: 4px;
    height: 24px;
    width: 24px;
}



.promo {
    display: inline-block;
    padding: 0 4px;
    border: 2px dashed #015CAB;
    background-color: #fff;
    border-radius: 4px;
    letter-spacing: .02rem;
    font-family: Inter, Roboto, "Helvetica Neue", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Oxygen, sans-serif;
    font-weight: 700;
    font-size: .80rem;
}



.checkin-portal .alert {
    display: block;
    padding: 32px;
    background-color: #f1f4f6;
    border-radius: 8px;
    color: #015CAB;
}

@media only screen and (max-width:1200px) {

    .alert-2020,
    .alert-2020 a,
    .catalog a,
    .catalog p {
        font-size: 1rem;
        line-height: 1.1rem;
    }
}

@media only screen and (max-width:1120px) {
    .calDOW {
        min-width: 0;
    }

    a.card {
        width: 100%;
    }

    #wholeContent {
        padding: 0 24px 40px;
    }
}

@media only screen and (max-width:1023px) {

    h1,
    h2 {
        text-indent: -2px;
    }

    .overview-title {
        font-size: 2rem;
        letter-spacing: -.1rem;
    }

    #cartCount {
        min-width: 64px;
    }

    .feature-row {
        grid-template-columns: 1fr;
    }

    #wholeContent {
        grid-template-columns: 1fr 2fr;
        padding: 0 24px 24px;
    }

    .client-portal #topBar,
    .instructor-portal #topBar {
        padding-left: 14px;
    }

    a.card {
        width: 100%;
    }



    .ttcSessionTable tbody tr td {
        padding: 6px 8px;
    }

    .ttcSessionTable th:nth-of-type(1) {
        padding-left: 16px;
    }

    .ttcSessionTable tr td:nth-of-type(1) {
        padding-left: 16px;
    }

    .ttcSessionTable tr td:nth-of-type(4) {

        padding-right: 16px;
    }
}

@media only screen and (max-width:848px) {
    .selfreg-portal #header {
        height: 136px;
        max-height: unset;
    }

    .selfreg-portal #header td {
        flex-direction: column;
        justify-content: flex-start;
    }

    .selfreg-portal #header tr {
        grid-template-columns: auto 1fr;
        height: 136px;
        align-items: start;
    }

    .selfreg-portal #header_title {
        padding: 24% 0;
        border: 0;
    }

    .selfreg-portal #header_title::after {
        left: 4px;
        top: 96px;
        font-size: 1.2rem;
        content: unset;
    }

    .selfreg-portal #header table td:last-child {
        justify-content: center;
    }

    .selfreg-portal #ctForgot,
    .selfreg-portal #login {
        height: auto;
        align-self: flex-end;
    }

    .selfreg-portal .pdfalert.info {
        position: relative;
        margin: 32px 0 0;
    }

    .selfreg-portal .pdfalert.info::before {
        position: absolute;
        content: 'Self-Registration Portal';
        color: #485865;
        font-size: 1.4rem;
        letter-spacing: -.08rem;
        top: -16px;
    }
}

@media only screen and (max-width:768px) {

    .client-portal #header,
    .instructor-portal #header,
    .checkin-portal #header tr {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        max-height: 136px;
        padding: 0 8px;
        height: 136px;
    }

    .checkin-portal #header {
        min-height: 106px;
        padding-top: 16px;
    }

    .client-portal #header table,
    .instructor-portal #header table {
        margin-bottom: 0;
        height: auto;
    }

    .client-portal #header tr,
    .instructor-portal #header tr,
    .checkin-portal #header tr {
        flex-direction: column;
        align-items: center;
        flex-wrap: wrap;
        max-height: 136px;
        height: auto;
    }

    .checkin-portal #header tr {
        max-height: none
    }



    .client-portal #header td,
    .instructor-portal #header td {
        padding: 12px 0;
    }

    #login {
        padding-right: 10px;
    }

    .client-portal #login,
    .instructor-portal #login,
    .checkin-portal #login {
        height: auto;
    }

    .client-portal #topBar,
    .instructor-portal #topBar {
        padding-left: 9px;
    }

    #search {
        margin: 0 auto;
        width: 50%;
        text-align: center;
    }

    .client-portal #contentFull,
    .instructor-portal #contentFull {
        padding-left: 0;
    }

    .searchImg {
        margin-bottom: -5px;
    }

    #header table {
        margin-left: 0;
        margin-right: 0;
        margin-top: 0;
        height: 90px;
    }

    #cartCount {
        margin-right: 0;
    }

    #fsprompt,
    .ttc-addcal {
        margin-left: 0px;
    }
}

@media only screen and (max-width:767px) {
    h1 > span.alert {
        text-indent: 0;
    }

    #content {
        padding-left: 0;
        margin-top: 32px;
        width: 100%;
    }

    .selfreg-portal #content {
        padding-left: 10px;
        width: auto;
    }

    #wholeContent {
        grid-template-areas: "top" "pop" "right";
        grid-template-columns: 1fr;
        padding: 0 24px 24px;
        margin: 14px auto 12px;
    }

    .client-portal #wholeContent,
    .instructor-portal #wholeContent,
    .checkin-portal #wholeContent {
        padding: 0 8px;
    }

    .inner {
        padding-top: 0;
        background-color: transparent;
    }

    #cartCount {
        margin-right: 0;
    }

    .client-portal #cartCount h1,
    .instructor-portal #cartCount h1,
    .checkin-portal #cartCount h1 {
        line-height: 1.1rem;
        padding-left: 16px;
    }

    .client-portal #cartCount,
    .instructor-portal #cartCount,
    .checkin-portal #cartCount {
        margin-left: 16px;
    }

    #login.not-in-mobile {
        margin-right: 8px;
        margin-left: 0;
    }

    .selfreg-portal #header {
        height: 136px;
        padding-left: 16px;
    }

    .selfreg-portal #header tr {
        height: 136px;
        position: relative;
    }

    .selfreg-portal #login.not-in-mobile {
        margin-right: 0;
        padding-right: 0;
        min-width: 140px;
    }

    .selfreg-portal #login a {
        align-self: flex-end;
    }

    #login a {
        margin-left: 12px;
    }

    #login.not-in-mobile input.text {
        display: none;
    }

    .selfreg-portal #login.not-in-mobile input.text {
        display: unset;
        margin: 0 0 4px 4px;
    }

    #maincontent {
        padding: 0 8px 0 2px;
    }

    #header table {
        margin-left: auto !important;
        margin-right: auto !important;
        margin-top: 0;
        height: 90px;
    }

    .selfreg-portal #header table {
        height: unset;
    }

    #header table tr {
        height: 90px;
    }

    #header_title img {
        padding-top: 0;
    }

    #login {
        height: auto;
    }

    .client-portal form[name=choose_object],
    .client-portal form[name=login],
    .instructor-portal form[name=choose_object],
    .instructor-portal form[name=login] {
        padding: 16px !important;
    }

    .client-portal #loginContent form[name=login],
    .instructor-portal #loginContent form[name=login] {
        padding: 16px;
    }

    .nav-toggle.active {
        margin-bottom: 2px;
    }

    nav.nav-collapse.nav-collapse-0.opened {
        margin-top: 24px;
    }

    #popularContainer {
        margin: -24px 8px 0;
        padding: 2px 0 8px;
    }

    .leftMenu {
        padding: 24px 0 24px 0;
    }

    .leftMenu:first-of-type {
        margin: 0 0 8px 0;
    }

    .leftMenu:first-of-type ul li a {
        padding: 6px 4px 6px 16px;
        font-size: .8rem;
    }

    .leftMenu ul.Level00 li a {
        padding: 12px 4px 12px 16px;
    }

    .leftMenu ul.Level01 li a,
    .leftMenu ul.Level02 li a,
    .leftMenu ul.Level03 li a,
    .leftMenu ul.Level04 li a {
        font-size: .88rem;
    }

    .cardContainer {
        gap: 8px;
    }

    a.card {
        font-size: .8rem;
        line-height: 120%;
    }

    #login input.text {
        font-size: .75rem;
        padding-top: 5px;
        padding-bottom: 3px;
        padding-left: 5px;
        margin-right: 1px;
    }

    #login input.submit {
        margin-right: 5px;
    }

    .selfreg-portal #login input.submit {
        margin-right: 0;
        padding: 0 2%;
        line-height: .76rem;
    }

    .selfreg-portal .not-in-mobile form {
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    .cartinner {
        padding: 16px 0 16px 12px;
    }

    .cartinner table {
        background-color: transparent;
        padding: 24px 0 16px 0;
    }

    .cart td.headingRight:last-child,
    .cart th.tableheadingRight:last-child {
        padding-right: 0;
    }

    td.heading,
    td.headingRight {
        font-size: .8rem;
        line-height: 120%;
    }

    .cart th {
        font-size: .72rem;
    }

    .leftMenu ul li a i {
        margin-right: 8px;
        padding: .6%;
    }

    .instructorline {
        padding: 12px 0;
    }

    #instructorinner ul li {
        list-style-type: none;
        padding: 8px 16px 12px;
    }

    #instructorinner ul {
        padding-left: 0;
    }

    .nav-toggle {
        font-size: 1.1rem !important;
        padding: 0 24px 12px;
        margin: 24px 0 0 24px;
    }

    .nav-toggle:hover {
        color: #1c221c;
        font-weight: 800;
        margin: 24px 0 0 24px;
    }

    .nav-toggle::before {
        content: "\2630";
        top: 6px !important;
        box-shadow: none;
        background: 0 0;
    }

    .cartinner select.dropdownCart {
        width: 112px !important;
    }

    .cartinner table tr td.total {
        font-size: .96rem;
        line-height: 110%;
        vertical-align: bottom;
    }

    #search input[type=text] {
        right: 0;
    }

    #search form::after,
    input.searchImg {
        right: 14px;
    }
}

@media only screen and (max-width:512px) {
    .leftMenu {
        padding: 24px 0 24px 0;
    }

    .overview-title {
        font-size: 1.5rem;
        letter-spacing: -.05rem;
    }

    .calCatSelect select {
        max-width: 60%;
    }

    .calDOW,
    .calDOWlisting,
    .calEmptyDOW,
    .calTodayDOWlisting {
        width: auto;
        font-size: .9rem !important;
    }

    #login.not-in-mobile {
        display: none;
    }

    .selfreg-portal #login.not-in-mobile {
        display: flex;
        padding-left: 5%;
    }

    .cartOption {
        padding-left: 0;
        padding-right: 40px;
    }

    #discountForm input[type=text] {
        margin-bottom: 16px;
        margin-right: 8px;
        width: 115px;
    }

    #maincontent input.text,
    #maincontent select {
        width: 100%;
    }

    .client-portal form[name=choose_object],
    .client-portal form[name=login],
    .instructor-portal form[name=choose_object],
    .instructor-portal form[name=login],
    form[name=choose_company],
    form[name=choose_object] {
        padding: 16px;
    }

    .client-portal form[name=login] input[type=text],
    .instructor-portal form[name=login] input[type=text] {
        width: 100%;
    }

    form[name=choose_company] input[type=text],
    form[name=choose_object] input[type=text] {
        max-width: 156px;
    }

    .cartinner #addedAttendee {
        padding-right: 4px;
        padding-left: 8px;
    }

    .cart a {
        font-size: .8rem;
        line-height: 120%;
    }

    #content .courseinner {
        padding: 16px 16px 12px;
    }

    .subHeader {
        font-size: 1.2rem;
    }

    .js .nav-collapse-0.opened {
        margin-top: 16px;
    }

    .cardContainer {
        grid-template-columns: repeat(2, 1fr);
    }

    form#forgot {
        max-width: 100%;
    }

    #loginHeader {
        width: 100%;
    }
}

@media only screen and (max-width:425px) {

    #header,
    #main,
    #wrapper {
        width: 100%;
    }

    #header {
        padding-left: 16px;
        padding-right: 16px;
    }

    .checkin-portal #header {
        min-height: 124px;
        padding: 16px 0 0;
    }

    .checkin-portal #login {
        margin-top: 16px;
    }

    .checkin-portal #login a {
        margin-left: 0;
    }

    .checkin-portal #login a:last-of-type {
        margin-right: 0;
    }

    .selfreg-portal #header {
        height: 156px;
    }

    .selfreg-portal #header tr {
        height: 156px;
    }

    #search input[type=text] {
        right: 10px;
    }

    #search form::after,
    input.searchImg {
        right: 24px;
    }

    .client-portal #login,
    .instructor-portal #login,
    .checkin-portal #login {
        padding-right: 0;
    }

    .client-portal #login a:first-of-type,
    .instructor-portal #login a:first-of-type,
    .checkin-portal #login a:first-of-type {
        margin-right: 0;
    }

    #header table {
        width: 100%;
        height: 90px;
    }

    #wholeContent {
        padding: 0 8px 0 8px;
    }

    .selfreg-portal #login.not-in-mobile {
        width: unset;
        margin-left: 0;
    }

    #popularContainer {
        margin-left: 5px;
    }

    .leftMenu {
        padding-left: 0;
    }

    .leftMenu ul.Level00 li a {
        padding: 12px 12px 12px 12px;
    }

    .leftMenu:first-of-type ul li a {
        padding: 12px 12px 12px 12px;
    }

    .cardContainer,
    .overview,
    .sub-ov {
        margin-left: 8px;
    }

    .subHeader {
        margin-left: 8px;
    }

    .courses {
        margin-left: 8px;
    }

    .client-portal #header_title img,
    .instructor-portal #header_title img {
        width: 132px;
    }

    #login input.submit {
        margin-top: 10px;
        margin-right: 5px;
    }

    .selfreg-portal #login input.submit {
        margin: 0;
    }

    h1.calHeader {
        font-size: 1.32px;
    }

    th.calSubheaderDOW {
        font-size: .72rem !important;
    }

    .calCatSelect select {
        max-width: 50%;
    }

    .cartinner h2 {
        font-size: .8rem;
        line-height: 120%;
    }

    .cartinner table tr td.headingRight {
        font-size: .8rem;
    }
}

@media only screen and (max-width:367px) {
    #search input[type=text] {
        right: 52px;
    }

    #search form::after,
    input.searchImg {
        right: 64px;
    }

    .cardContainer,
    .overview,
    .sub-ov {
        margin-left: 0;
    }

    .selfreg-portal #header {
        padding-left: 10px;
    }

    .selfreg-portal #header tr {
        display: block;
    }

    .selfreg-portal #header td:first-child {
        float: left;
    }

    .selfreg-portal #header td:nth-child(2) {
        padding-top: 16px;
    }

    .selfreg-portal #header_title img {
        width: 124px;
    }
}

@media print {
    /* @import url("style_tcc-print.css"); */
}