/**
 * Niagara College Fee Schedule Frontend Styles
 *
 * @package ncf
 *
 * @since 1.0.0
 */
/*---------------------------------*\
   Fee Schedule
\*---------------------------------*/

/* common */
.a-hide {
	display:none;
}

/* SELECT2 IN A FORM CAUSES NATIVE SELECT IN IOS TO POP UP
 * @link https://github.com/select2/select2/issues/4772
*/
select.select2-hidden-accessible { visibility: hidden; }

/* Fee Schedule Styling */
.fee-schedule .overall-fee-info{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-column-gap: 30px;
}

.fee-schedule .year, .fee-schedule .intake {
	background-color: #f1f2f2;
	padding: 0.8rem;
	text-align: center;
	border-radius: 3px;
	font-weight: 700;
	color: #0077Be;
}

.fee-schedule .year strong, .fee-schedule .intake strong {
	color: #000;
	font-weight: 500;
}

.fee-schedule table:not(.full-program):not(.fee-breakdown-table) {
	margin:-10px 0 0 0 !important;
}

.fee-schedule table.full-program tr {
	background:none !important;
}

.fee-schedule table.full-program td {
	border: none !important;
	padding:0 !important;
}

.fee-schedule table.full-program .program-total td,
.fee-schedule table.full-program table.single-year tr.level-row > td,
.fee-schedule table.full-program table.single-year tr.year-total > td {
	padding:0.5rem 1rem !important;
}

.fee-schedule table.full-program .program-total td,
.fee-schedule .single-year .year-total td{
	padding-right:1rem !important;
}


/* fee schedule single year tables */
.fee-schedule .single-year {
	border-collapse: separate;
  border-spacing: 0 10px;
	box-shadow:none;
}

.fee-schedule .single-year thead tr th:nth-child(2),
.fee-schedule .single-year tbody tr.level-row:not(.co-op-row) td:nth-child(2),
.fee-schedule .single-year tbody tr.year-total td:nth-child(2),
.fee-schedule .single-year tfoot tr td:nth-child(2) {
    width: 130px;
    text-align: left;
    overflow: auto;
}

.fee-schedule .single-year .level-row.hidden .fa-caret-right,
.fee-schedule .single-year .level-row .fa-caret-right {
	margin-bottom:1px;
}

.fee-schedule .single-year tr:not(.year-total):not(.fee-breakdown){
	text-transform: capitalize;
	box-shadow: 0px 0px 0px 2px #F1F2F2;
	background-color:rgba(0,0,0,0);
}

	.fee-schedule .single-year td span {
		padding-right:5px;
}

	.fee-schedule .single-year i {
		color: #0077BE;
		margin-left:5px;
	}
		.fee-schedule .single-year tr.level-row{
			cursor:pointer;
		}

			.fee-schedule .single-year tr.level-row .term-total-row,
			.fee-schedule .single-year tr.level-row .co-op-text {
				display:flex;
				align-items:center;
				justify-content:space-between;
			}

			.fee-schedule .single-year tr.level-row .term-total-row.flex-end {
				justify-content:flex-end;
			}

			.fee-schedule .single-year tr.level-row:hover,
			.fee-schedule .single-year tr.level-row:focus {
				background:#F1F2F2 !important;
			}

				.fee-schedule .single-year tr.level-row:focus > td:first-child{
					border:2px solid #B6B6B6;
				}

				.fee-schedule .single-year tr.level-row.hidden .fa-caret-right{
					transform: rotate(0deg);
					transition: transform 0.1s linear;
				}

				.fee-schedule .single-year tr.level-row .fa-caret-right{
					transform: rotate(90deg);
					transition: transform 0.1s linear;
				}

				/* .fee-schedule .single-year tr.co-op-row {
					position:relative;
				}

					.fee-schedule .single-year tr.co-op-row td:nth-child(2) {
						position:absolute;
						right:0;
					} */

					.fee-schedule .single-year tr.co-op-row td:nth-child(2) {
						position: relative;
					}
					.fee-schedule .single-year tr.level-row .co-op-text {
						position: absolute;
						min-width: 175px;
						top: 0;
						right: 0;
						height: 100%;
						padding: 0.5rem 1rem 0.5rem 0;
					}

					#tuition-tool-results .fee-schedule .single-year tr.level-row .co-op-text {
						padding:0.5rem 0.7rem 0.5rem 0;
					}

					.fee-schedule .single-year tr.co-op-row span {
						color: #6e6e6e;
					}

				.fee-schedule .single-year tr.year-total,
				.fee-schedule .single-year-wrapper .single-year tr.year-total td {
					background-color:#EDF4FB !important;
					text-transform: capitalize;
					font-weight:500;
					color:#0077BE !important;
				}

				.fee-schedule .single-year .year-total {
					box-shadow: 0px 0px 0px 2px #EDF4FB;
				}

/* fee schedule fee-breakdown-table (within .single-year table) */
.fee-schedule .single-year tr.fee-breakdown {
	box-shadow: 0 0 0 2px #f1f2f2;
}

	.fee-schedule .single-year tr.fee-breakdown > td {
		background-color:#F1F2F2;
		padding:0.2rem 1rem !important;
	}
		.fee-schedule .single-year .fee-breakdown.hidden {
			display:none;
		}

		.fee-schedule .single-year tr.fee-breakdown.co-op-details > td {
			padding:1.5rem !important;
		}

		.fee-schedule .single-year table.fee-breakdown-table td {
			padding:0.5rem 0!important;
		}

			.fee-schedule .single-year table.fee-breakdown-table td:nth-child(2) {
				width: 98px;
				overflow: auto;
			}

			.fee-schedule .single-year .fee-breakdown-table tr:not(:first-child) {
				box-shadow: 0 -1px 0 #B6B6B6 !important; /* Border top */
			}

			.fee-schedule .single-year .fee-breakdown-table tr.term-total {
				box-shadow:0 -2px 0 #B6B6B6 !important; /* Border top */;
				text-transform: uppercase;
				font-weight:500;
			}

				.fee-schedule .single-year .fee-breakdown-table tr.term-total td {
					padding-top:0.65rem !important;
					text-transform:none;
				}


/* footer of full program table */
.fee-schedule tr.new td {
	background: rgba(255,243,174,0.7) !important;
	padding:0.5rem 1rem !important;
	text-align:center;
}

/* fee schedule program total */
.fee-schedule table.full-program  .program-total {
	background-color: #0077BE !important;
	box-shadow: 0px 0px 0px 2px #0077BE;
	color: #EDF4FB;
	margin:10px 0;
}

	.fee-schedule table.full-program .program-total td:nth-child(2) {
			width: 130px;
			text-align: left;
			overflow: auto;
	}

/* fees tab on program pages */
.fees-intro strong,
.panel.scholarships h6,
.costs-dates h6,
.fee-extra-info .panel.view-schedule h6 i,
.fee-extra-info .panel.view-schedule .dark-link:hover {
	color:#0077be;
}
.fee-extra-info .panel.view-schedule{
	margin-top:0 !important;
	background-color:#f1f2f2 !important;
}
.fee-extra-info .panel.view-schedule .dark-link{
	color:#000;
}
.program main .lorem .fee-extra-info .view-schedule .alert.yellow {
    font-size: 1rem;
    line-height: 1.5rem;
    padding: 15px 20px;
}
.program main .lorem .fee-extra-info .view-schedule p {
    font-size: 1.05rem;
    line-height: 1.65rem;
}

.fee-extra-info a.button{
	margin-top: 25px !important;
	display:block;
	width:100%;
}
.costs-dates h6,
.view-schedule h6 {
	position:relative;
}

.costs-dates {
	padding:0 30px 30px 30px;
}
.costs-dates h6,
.view-schedule h6 {
	position:relative;
	margin-left:1.7rem !important;
}
.program main .lorem .view-schedule h6 {
    font-size: 1.4rem;
}

	.costs-dates h6::before,
	.view-schedule h6::before {
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		font-size: 1.2rem;
		position: absolute;
		top: -1px;
		left:-25px;
	}

	.costs-dates h6::before {
		content: "\f059";
		color:rgba(0,0,0,0.7);
	}

	.view-schedule h6::before {
		content: "\f1ec";
		color:#0077be;
	}
	
.explaintuition {
	text-decoration:none;
	font-size:0.9rem;
}

/* Tuition Modal Styling */
#modal-explaintuition h4 {
	font-size:1.15rem;
	color:#000;
}
#modal-explaintuition .iziModal-content p {
    line-height: 1.4rem !important;
    margin: 20px 0 !important;
}
#modal-explaintuition .iziModal-content p:last-child {
    margin-bottom: 0 !important;
}

/* Error Styling */
.ncf-error {
	background: rgba(255,38,38,0.1);
	color: rgba(126,0,0,1);
	font-weight: 500;
	text-align: center;
	letter-spacing: 0.02rem;
	padding: 2.5rem 1rem !important;
}
	.ncf-error span {
		display: inline-block;
		border: 1px solid rgba(126, 0, 0, 0.2);
		border-radius: 10px;
		font-size: 0.85rem;
		padding: 2px 10px;
		margin-top: 10px;
	}

	.ncf-error span a {
		color: rgba(126,0,0,1) !important;
	}

/* Accordion Styling on Program Pages */
.Accordion {
  margin: 0;
  padding: 0;
}
.Accordion > h5 {
 margin: 0 !important;
  padding: 0;
}

.Accordion > h5 .Accordion-trigger {
	border: 2px solid #dedede;
  border-radius: 5px;
	position:relative;
}

.Accordion > h5:first-child .Accordion-trigger {
	border-bottom:none;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

	.Accordion > h5:first-child .Accordion-trigger[aria-expanded="true"] {
		border-bottom: 2px solid #dedede;
	}

.Accordion > h5:last-of-type .Accordion-trigger {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	border-bottom:2px solid #dedede;
}

.Accordion > h5:last-of-type .Accordion-trigger[aria-expanded="true"]{
	border-bottom-left-radius:0;
	border-bottom-right-radius:0;
}

.Accordion.focus {
  border-color: #B6B6B6;
}


.Accordion-trigger {
  background: none;
  color: #000;
  display: block;
  font-size: 1rem;
  font-weight: normal;
  margin: 0;
  padding: 1rem 1.25rem;
  position: relative;
  text-align: left;
  width: 100%;
  outline: none;
}

.Accordion-trigger:focus,
.Accordion-trigger:hover {
  background: rgba(182, 182, 182, 0.2);
}

.Accordion *:first-child .Accordion-trigger {
  border-radius: 5px 5px 0 0;
}

.Accordion button {
  border-style: none;
}

.Accordion button::-moz-focus-inner {
  border: 0;
}

.Accordion-title {
	pointer-events: none;
	border: transparent 2px solid;
	border-radius: 5px;
	padding: 0.25em;
	outline: none;
	font-weight:600;
	font-size:1.4rem;
}

.Accordion-trigger:focus .Accordion-title {
  border:2px solid #B6B6B6;
}

.Accordion > h5 button#accordion-fees-domestic:before {
		font-family: "Font Awesome 5 Brands";
		content: "\f785";
		font-size: 1.5rem;
		color: rgba(0,0,0,0.4);
}

.Accordion > h5 button#accordion-fees-international:before {
		font-family: "Font Awesome 5 Free";
		content: "\f57e";
		font-size: 1.5rem;
		color: rgba(0,0,0,0.4);
		font-weight:900;
}

.Accordion-icon {
	color: #0077BE;
	font-size: 2rem;
	pointer-events: none;
	position: absolute;
	top: 25%;
	right: 1.5rem;
	transform: rotate(0);
}

.Accordion-trigger:focus .Accordion-icon,
.Accordion-trigger:hover .Accordion-icon {
  border-color: #B6B6B6;
}

.Accordion-trigger[aria-expanded="true"] .Accordion-icon {
  transform:rotate(90deg);
}

.Accordion-panel {
  margin: 0;
  padding: 2rem 1.5rem;
}

/* For Edge bug https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/4806035/ */
.Accordion-panel[hidden] {
  display: none;
}

/* Program Page Colour Changes */

/* adip */
.program-default main.adip .Accordion-icon,
.program-default main.adip .fees-intro strong,
.program-default main.adip .view-schedule h6::before,
.program-default main.adip .fee-schedule .year,
.program-default main.adip .fee-schedule .intake,
.program-default main.adip .fee-schedule .single-year i,
.program-default main.adip .panel.scholarships h6,
.program-default main.adip .fee-extra-info .panel.view-schedule .dark-link:hover {
	color:#00598e;
}

/* .gradcert = red - rgba(63,0,0,1)/rgba(63,0,0,0.05) */
.program-default main.gradcert .Accordion-icon,
.program-default main.gradcert .fees-intro strong,
.program-default main.gradcert .view-schedule h6::before,
.program-default main.gradcert .fee-schedule .year,
.program-default main.gradcert .fee-schedule .intake,
.program-default main.gradcert .fee-schedule .single-year i,
.program-default main.gradcert .panel.scholarships h6,
.program-default main.gradcert .fee-extra-info .panel.view-schedule .dark-link:hover {
	color:rgba(63,0,0,1);
}

/* .bach = yellow - rgba(142,103,41,1)/rgba(142,103,41,0.05) */
.program-default main.bach .Accordion-icon,
.program-default main.bach .fees-intro strong,
.program-default main.bach .view-schedule h6::before,
.program-default main.bach .fee-schedule .year,
.program-default main.bach .fee-schedule .intake,
.program-default main.bach .fee-schedule .single-year i,
.program-default main.bach .panel.scholarships h6,
.program-default main.bach .fee-extra-info .panel.view-schedule .dark-link:hover {
	color:rgba(142,103,41,1);
}

/* cert */
.program-default main.cert .Accordion-icon,
.program-default main.cert .fees-intro strong,
.program-default main.cert .view-schedule h6::before,
.program-default main.cert .fee-schedule .year,
.program-default main.cert .fee-schedule .intake,
.program-default main.cert .fee-schedule .single-year i,
.program-default main.cert .panel.scholarships h6,
.program-default main.cert .fee-extra-info .panel.view-schedule .dark-link:hover {
	color: #5c5c5c;
}

/* other page changes */
.program-default .tuition a.button:hover,
.program-default .tuition a.button:focus {
	background:rgba(255,255,255,0.5);
}


/*---------------------------------*\
   Tutition Tool Styling
\*---------------------------------*/
#tuition-tool-filters {
	background-color:#EEF9FF;
	border-radius:5px;
	padding:2rem;
	min-height:320px;
}

.ttf-progress-bar {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
	max-height:100px;
	margin:1rem 0 0;
}

button.ttf-progress-bar-btn {
  transition-property: all;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  transition-delay: 0s;
  position: relative;
	padding:20px 0 0;
	margin:0;
  color: #6c757d !important;
  text-indent: 0;
  border: none;
  background-color: transparent;
  outline: none !important;
  cursor: pointer;
}

button.ttf-progress-bar-btn:before {
  position: absolute;
  top: 0;
  left: 49%;
  display: block;
  width: 13px;
  height: 13px;
  content: '';
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  transition: all 0.15s linear 0s, -webkit-transform 0.15s cubic-bezier(0.05, 1.09, 0.16, 1.4) 0s;
  transition: all 0.15s linear 0s, transform 0.15s cubic-bezier(0.05, 1.09, 0.16, 1.4) 0s;
  transition: all 0.15s linear 0s, transform 0.15s cubic-bezier(0.05, 1.09, 0.16, 1.4) 0s, -webkit-transform 0.15s cubic-bezier(0.05, 1.09, 0.16, 1.4) 0s;
  border: 2px solid currentColor;
  border-radius: 50%;
  background-color: #fff;
  box-sizing: border-box;
  z-index: 3;
}

.ttf-progress-bar-btn:after {
  position: absolute;
  top: 5px;
  left: calc(-50% - 13px / 2);
  transition-property: all;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  transition-delay: 0s;
  display: block;
  width: 100%;
  height: 2px;
  content: '';
  background-color: currentColor;
  z-index: 1;
}

button.ttf-progress-bar-btn:not([disabled]):hover,
button.ttf-progress-bar-btn:not([disabled]):focus {
	background-color:rgba(0,0,0,0);
	color:#0077be !important;
	text-decoration: underline !important;
}

.ttf-progress-bar-btn[disabled]{
	background-color:rgba(0,0,0,0);
	border-color:rgba(0,0,0,0);
	cursor:not-allowed;
	color:#a4a9ad !important;
	opacity:1;
}

button.ttf-progress-bar-btn[disabled]:hover,
button.ttf-progress-bar-btn[disabled]:focus {
	background-color:rgba(0,0,0,0);
	color:#a4a9ad !important;
	border-color:none;

}
button.ttf-progress-bar-btn:focus {
	outline:dotted;
}

.ttf-progress-bar-btn:first-child:after {
  display: none;
}

.ttf-progress-bar-btn.active {
  color: #0077be !important;
}

.ttf-progress-bar-btn.active:before {
  -webkit-transform: translateX(-50%) scale(1.2);
  transform: translateX(-50%) scale(1.2);
  background-color: currentColor;
}

.ttf-form {
	margin:0;
}

.ttf-form-panel-wrapper {
  position: relative;
	min-height:100px;
	margin:0.5rem auto 3rem;
	width:100%;
}

.ttf-form-panel-wrapper.review-set-height {
	min-height:130px;
	margin-top:1.5rem;
}

.ttf-form-panel {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  opacity: 0;
  visibility: hidden;
}

.ttf-form-panel.active {
  opacity: 1;
  visibility: visible;
}

.ttf-form-panel[data-animation="scaleIn"] {
  -webkit-transform: scale(0.9);
	transform: scale(0.9);
}

.ttf-form-panel[data-animation="scaleIn"].active {
  transition-property: all;
  transition-duration: 0.2s;
  transition-timing-function: linear;
  transition-delay: 0s;
  -webkit-transform: scale(1);
	transform: scale(1);
}

.ttf-form-panel .calculate-tuition-wrapper {
	height:400px;
}

.ttf-form .ttf-form-buttons{
	display:flex;
	align-items: center;
  justify-content: center;
}

	.ttf-form .ttf-form-buttons button {
		margin:0;
		border-radius:50px;
		padding:8px 30px;
		letter-spacing:0.2px;
		line-height:22px;
		font-size:16px;
		border:none;
	}


		.ttf-form .ttf-form-buttons button:hover{
			color:#024B75;
		}


	.ttf-form .ttf-form-buttons button[disabled]{
		background-color:#808080 !important;
		color:#cccccc !important;
		cursor: not-allowed;
	}

	.ttf-form .ttf-form-buttons #ttf-form-buttons-back {
		background: none;
		border:none;
		color: #0077be;
		position:relative;
	}

	.ttf-form .ttf-form-buttons #ttf-form-buttons-back::before {
		font-family: "Font Awesome 5 Free";
		content: "\f100";
		position: absolute;
		top: 8px;
		left: 7px;
		font-weight:700;
	}

.ttf-form .ttf-form-buttons #ttf-form-buttons-next,
.ttf-form .ttf-form-buttons .calculate-tuition {
	background-color:#0077be;
	color:#fff;
	transition:background-color 300ms ease-out;
}

	.ttf-form .ttf-form-buttons .calculate-tuition:hover,
	.ttf-form .ttf-form-buttons #ttf-form-buttons-next:hover,
	.ttf-form .ttf-form-buttons .calculate-tuition:focus,
	.ttf-form .ttf-form-buttons #ttf-form-buttons-next:focus{
		background-color:#024B75;
		color:#fff;
	}

#tuition-tool-filters fieldset {
	border:0;
	padding:0;
	margin:2rem 0 0 0;
}

#tuition-tool-filters fieldset legend {
	background:none;
	font-weight:600;
	font-size:1.2rem;
	color:#0077BE;
	margin:0 auto 1.3rem;
	font-size:1.2rem;
	text-transform:uppercase;
	text-align:center;
}
	#tuition-tool-filters .applicant-type-list {
		list-style-type:none;
		padding:0;
		margin:0;
		text-align:center;
		display:flex;
		flex-wrap:wrap;
		justify-content:center;
		max-width:100%;
	}

	#tuition-tool-filters .applicant-type-list li {
		display:inline-block;

	}
		#tuition-tool-filters .applicant-type-list li input {
			margin:0;
			position: fixed;
			opacity: 0;
		}

		#tuition-tool-filters .applicant-type-list li input + label {
			display:inline-block;
			margin:0 10px;
		}

		#tuition-tool-filters .applicant-type-list li input:focus + label {
			border-style: dotted;
		}

		#tuition-tool-filters .applicant-type-list li input:checked + label {
			color:#EEF9FF;
			background-color:#0077BE;
		}

		#tuition-tool-filters .applicant-type-list li input:checked + label:before {
			color:#EEF9FF;
		}

		#tuition-tool-filters .applicant-type-list li label,
		.tuition-tool-reset {
			color:#0077BE;
			border:1px solid #0077BE;
			padding:12px 35px;
			border-radius:50px;
			letter-spacing:0.2px;
			line-height:1.1rem;
			font-size:1rem;
		}

		#tuition-tool-filters .applicant-type-list li label {
			font-size:1.1rem;
		}

	 	#tuition-tool-filters .applicant-type-list li label:before{
		 	font-size: 1.1rem;
			color: #0077BE;
		 	padding-right:0.5rem;
		}

	  #tuition-tool-filters .applicant-type-list li label[for=at-domestic]:before {
			font-family: "Font Awesome 5 Brands";
			content: "\f785";
		}

		#tuition-tool-filters .applicant-type-list li label[for=at-international]:before {
			font-family: "Font Awesome 5 Free";
			content: "\f57e";
			font-weight: 900;
		}

#tuition-tool-filters .select-filters {
	margin-top:1rem;
}

	#tuition-tool-filters .select-filters label,
	#tuition-tool-filters .calculate-tuition-wrapper h6{
		display:block;
		font-weight:600;
		color:#0077BE !important;
		font-size:1.2rem;
		cursor: default;
		text-align:center;
		text-transform: uppercase;
		line-height:2rem;
		margin-top:0.6rem;
	}

	#tuition-tool-filters span.label-explain {
		font-size: 0.8rem;
		display: block;
		text-transform: none;
		font-weight: 500;
		line-height: 1rem;
	}

	#tuition-tool-filters .select-filters .select2-container {
		width:50% !important;
		font-weight:400;
		margin-left:1rem;
		display:block;
		margin: 1rem auto 0;
		font-size:1rem;
		text-transform:none;
	}

	#tuition-tool-filters .select-filters .select2-container .select2-selection--single {
		height:100%;
	}

	#tuition-tool-filters .select-filters.select2-container .select2-selection--single .select2-selection__rendered {
		padding-top:0.2rem;
		padding-bottom:0.2rem;
	}

	#tuition-tool-filters .select-filters .select2-container--default .select2-selection--single .select2-selection__placeholder {
		color:#000;
		font-size:1rem;
}

		#tuition-tool-filters .select-filters .select2-container--default .select2-selection--single .select2-selection__arrow {
			top:2px;
			right:5px;
		}

#tuition-tool-filters .select-filters .select2.select2-container.select2-container--default.select2-container--disabled {
	opacity:0.3;
}

#tuition-tool-filters .calculate-tuition-wrapper h6 {
	margin:0;
}

#tuition-tool-filters .calculate-tuition-wrapper ul {
 	display: grid;
  grid-template-columns: 1fr 1fr 1fr;
	list-style: none;
	margin:0.5rem auto 0;
	width:80%;
}
	#tuition-tool-filters .calculate-tuition-wrapper li.review-col-full {
		grid-column: 1 / -1;
		border-bottom: 1px solid grey;
		padding-bottom: 10px;
		margin-bottom:10px;
	}

	#tuition-tool-filters .calculate-tuition-wrapper li {
		display: block;
		font-size: 0.8rem;
		letter-spacing: 0.04rem;
		opacity: 0.85;
		text-transform: uppercase;
		text-align:center;
		line-height:1.4;
	}

		#tuition-tool-filters .calculate-tuition-wrapper li span {
			display:block;
			font-size:1rem;
			opacity:1;
			color:#363636;
			letter-spacing:0rem;
			text-transform:capitalize;
		}

.tuition-tool-reset {
	background:none;
	color:#0077BE !important;		
	margin:1rem 0;
	float:right;
}
	.tuition-tool-reset:hover {
		color:#fff !important;		
	}

/* Addition Styling Needed for Fee Schedule on Tuition Tool */
#tuition-tool-results {
	clear:both;
	margin-top:3rem;
}
.fee-schedule.single-year-wrapper {
	border: 2px solid #F2F2F2;
	background-color:#fff;
	margin-bottom:1rem;
	padding:1.5rem 1.5rem 1rem !important;
}

.fee-schedule.single-year-wrapper .prog-year-info p,
.fee-schedule.single-year-wrapper .level-row .term-desc,
.fee-schedule .single-year .level-row .term-desc {
	display: inline-block;
	background: #EEF9FF;
	color: #0077BE;
	text-transform: uppercase;
	padding: 2px 8px;
	border-radius: 3px;
	margin:0;
}

.fee-schedule.single-year-wrapper h4 {
	font-weight: 600;
	text-transform:capitalize;
	margin:0.5rem 0 !important;
	font-size:30px !important;
}

	.fee-schedule.single-year-wrapper h4 a {
		text-decoration: underline;
	}

		.fee-schedule.single-year-wrapper h4 a:hover,
		.fee-schedule.single-year-wrapper h4 a:focus {
			color:#000;
		}

.fee-schedule.single-year-wrapper .prog-year-info p.prog-code,
.fee-schedule.single-year-wrapper .level-row .term-desc,
.fee-schedule .single-year .level-row .term-desc {
	color:#333;
	background:#E6E7E8;
}

.fee-schedule.single-year-wrapper table.single-year {
	margin:0 !important;
	border:none;
}

.fee-schedule.single-year-wrapper table.single-year tr td {
	font-size:1rem;
	line-height:1.2rem;
}

.single-year-wrapper .year-total .written-total,
.single-year-wrapper .year-total .number-total{
	font-weight:600 !important;
	color:#0077BE !important;
}

.fee-schedule.single-year-wrapper table.fee-breakdown-table {
	background:none;
	margin:0;
	border:none;
	box-shadow: none;
}

	.fee-schedule.single-year-wrapper .level-row .term-desc,
	.fee-schedule .single-year .level-row .term-desc {
		font-size: 0.83rem;
		margin-left: 5px;
		font-weight: 600;
		padding: 2px 6px;
	}
	.fee-schedule.single-year-wrapper table.fee-breakdown-table tr:nth-of-type(2n){
		background:none;
	}

	.fee-schedule.single-year-wrapper .single-year .fee-breakdown-table tr.term-total{
		font-weight:600;
	}

/* fee results skeleton loader styles */
#fee-results-skeleton {
	border: 2px solid #F2F2F2;
	padding:1.5rem !important;
}

#fee-results-skeleton .sk-prog-year-info div,
#fee-results-skeleton .sk-single-year div {
	display: inline-block;
	background: rgba(0,0,0,0.07);
	width:25%;
	height:30px;
	border-radius: 3px;
	margin-bottom:0.8rem;
	margin-right:0.3rem;
}

#fee-results-skeleton .sk-prog-year-info div.program-title {
	display:block;
	width:65%;
	height:45px;
	margin-right:0;
	border-radius:0;
}

#fee-results-skeleton .sk-prog-year-info div.program-code {
	width:30%;
	height:33px;
}

#fee-results-skeleton .sk-single-year div {
	display:block;
	height:45px;
	width:100%;
	border-radius:0;
}

#fee-results-skeleton .sk-single-year div:last-child{
	margin-bottom:0;
}

#fee-results-skeleton .loading {
    position: relative;
    overflow: hidden;
  }
  #fee-results-skeleton .loading:after {
    content: "";
    display: block;
    background-color: rgba(0,0,0,0.05);
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    transform: translateX(0);
    animation: 1.5s loading-placeholder ease-in-out infinite;
  }

  @keyframes loading-placeholder {

    0% {
      transform: translateX(-100%);
    }
    100% {
      transform: translateX(100%);
    }

  }

/* MEDIA QUERIES */
@media screen and (max-width: 700px) {
	.fee-schedule .overall-fee-info,
	.fee-schedule-program-pages .overall-fee-info {
		grid-column-gap: 15px;
	}

	.ttf-progress-bar {
		margin:1rem 0 0;
	}

  .ttf-progress-bar-btn {
    text-indent: -9999px;
  }

	.ttf-form-panel-wrapper {
		min-height:120px;
		margin:0 auto 2rem;
	}

	.ttf-form-panel-wrapper.review-set-height {
		min-height:150px;
		margin-top:0;
	}

	#tuition-tool-filters .select-filters .select2-container {
		width:90% !important;
	}

	.fee-schedule.single-year-wrapper .prog-year-info p{
		margin:0 0 10px;
	}

	.scholarships a.button {
		width:100%;
	}
}

@media screen and (max-width: 540px) {
	.ttf-progress-bar {
		margin:0;
	}

	.ttf-form-panel-wrapper {
		min-height:150px;
		margin:0.5rem auto 1rem;
	}

	.ttf-form-panel-wrapper.review-set-height {
		min-height:275px;
		margin-top:0;
	}

	#tuition-tool-filters fieldset {
		margin:0;
	}

	#tuition-tool-filters .select-filters label {
		margin-top:1rem;
	}

	#tuition-tool-filters .calculate-tuition-wrapper ul {
		display:block;
		margin:1rem auto 0;
		width:100%;
	}

		#tuition-tool-filters .calculate-tuition-wrapper li.review-col-full {
			padding-bottom:0;
			border-bottom:none;
		}

	.ttf-form .ttf-form-buttons button {
		width:60%;
		padding:8px 15px;
	}

	.ttf-form .ttf-form-buttons #ttf-form-buttons-back:before{
		left:5px;
		top:8px;
	}
	.ttf-form .ttf-form-buttons #ttf-form-buttons-back{
		width:35%;
		padding:8px 10px;
	}
	.ttf-form .ttf-form-buttons #ttf-form-buttons-next{
		padding:13px 30px;
	}
	#tuition-tool-filters .select-filters {
		margin-top:0;
	}

	.tuition-tool-reset {
		width:100%;
		float:none;
	}

	#tuition-tool-filters .applicant-type-list li input + label {
		margin:0 10px 10px;
	}

	.fee-schedule.single-year-wrapper h4 {
		font-size:20px !important;
	}

	.fee-schedule.single-year-wrapper .prog-year-info p.prog-code {
		margin:0;
	}

	.fee-schedule.single-year-wrapper .level-row .term-desc,
	.fee-schedule .single-year .level-row .term-desc {
		margin-left:0;
		margin-top:2px;
	}

}


/*------------------------------------------*\
   Program Page Tuition Tab - Fees Schedule
\*------------------------------------------*/

/* Year & Start Term */
.fee-schedule-program-pages .overall-fee-info {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-column-gap: 15px;
}
	.fee-schedule-program-pages .overall-fee-info > div {
		background-color: #f1f2f2;
		padding: 10px;
		text-align: center;
		border-radius: 3px;
		font-size: 1rem;
		line-height: 1.4rem;
		letter-spacing: 0.02rem;
		margin: 10px 0;
		font-weight: 500;
	}
		.fee-schedule-program-pages .overall-fee-info > div span {
			font-weight: 600;
			color: #0077be;
		}
/* Note to expand level for breakdown */
.tab-content.tuition .fee-schedule-program-pages .expand-fyi {
	background-color: #f1f2f2;
	padding: 10px;
	text-align: center;
	border-radius: 3px;
	font-size: 0.85rem;
	line-height: 1.4rem;
	margin: 0;
  }
/* Year heading */
.tab-content.tuition .fee-schedule-program-pages h6.single-year {
    color: #0077be;
    margin: 20px 0 6px 0;
    font-size: 1.2rem;
    line-height: 1.5rem;
    font-weight: 600;
    padding: 0 0 0 0;
    letter-spacing: 0;
}
/* Disclosure Accordions */
.fees-single-year details {
    margin: 5px 0;
}
.fees-single-year details summary {
    text-transform: capitalize;
    cursor: pointer;
    border: solid 2px #e3e3e3;
    border-radius: 4px;
    padding: 9px 2.5rem 8px 12px;
    position: relative;
    display: flex;
    justify-content: space-between;
}
	/* -> Hover & focus states */
	.fees-single-year details summary:hover,
	.fees-single-year details summary:focus {
		border-color: #F0F0F0;
		background: #F0F0F0;
	}
		.fees-single-year details[open] summary:hover .level,
		.fees-single-year details[open] summary:focus .level {
			text-decoration: underline;
		}
		.fees-single-year details summary:hover .level,
		.fees-single-year details summary:focus .level {
			text-decoration: underline;
		}
	/* -> Icon */
	.fees-single-year details summary:after {
		content: "\f0d7";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		position: absolute;
		right: 12px;
		color: #0077be;
	}

/* -> Accordion - Open */
.fees-single-year details[open] summary {
	border-radius: 4px 4px 0 0;
	background: #fff;
	border: solid 2px #e3e3e3;
	font-weight: 600;
	letter-spacing: 0.02rem;
}
	.fees-single-year details[open] summary:after {
		transform: rotate(180deg);
	}
	.fees-single-year details[open] summary .level {
		text-decoration: none;
	}
	.fees-single-year details[open] summary .total {
		clip: rect(1px, 1px, 1px, 1px);
		height: 1px !important;
		width: 1px !important;
		margin: 0 !important;
		overflow: hidden !important;
		position: absolute;
	}
	.fees-single-year details[open] .details-inner {
		background: #f1f2f2;
		padding: 8px 12px;
		margin-bottom: 10px;
	}
	.fees-single-year details[open] .details-inner.coop p {
		font-size: 0.95rem;
		line-height: 1.4rem;
	}
	.fees-single-year details .details-inner table.fee-breakdown-table {
		margin: 0 !important;
		width: 100% !important;
	}
		.fees-single-year details .details-inner table.fee-breakdown-table tr {
			background: none !important;
			border-bottom: dotted 1px rgba(0,0,0,0.8) !important;
		}
			.fees-single-year details .details-inner table.fee-breakdown-table tr:last-child {
				border-top: solid 2px rgba(0,0,0,0.15) !important;
				border-bottom: none !important;
			}
			.fees-single-year details .details-inner table.fee-breakdown-table tr:nth-last-child(2) td {
				padding-bottom: 10px !important;
			}
		.fees-single-year details .details-inner table.fee-breakdown-table tr td {
			padding: 7px 0 !important;
			border: none !important;
			font-size: 0.95rem !important;
			line-height: 1.2rem !important;
		}
			.fees-single-year details .details-inner table.fee-breakdown-table tr td:nth-child(2) {
				text-align: right !important;
				padding-right: 1.8rem !important;
			}
			.fees-single-year details .details-inner table.fee-breakdown-table tr.term-total {
				text-transform: capitalize !important;
				font-weight: 600 !important;
				font-size: 0.85rem !important;
				line-height: 1.2rem !important;
				color: rgba(0,0,0,0.7) !important;
			}
			.fees-single-year details .details-inner table.fee-breakdown-table tr.term-total td.term-total-cost {
				color: #0077be !important;
			}
			.fees-single-year details .details-inner table.fee-breakdown-table tr.term-total td.term-total-label {
				letter-spacing: 0.02rem !important;
			}
/* -> Total - By Year */
.fees-single-year .year-total {
	background: #EDF5FB;
	color: rgba(0,0,0,0.8);
	padding: 8px 2.5rem 8px 12px;
	margin: 6px 0 0 0;
	font-weight: 600;
	text-transform: capitalize;
	display: flex;
	justify-content: space-between;
	border: solid 2px #EDF5FB;
  }
  .fees-single-year .year-total .written-total {
		letter-spacing: 0.03rem;
	}
/* -> Program Total */
.program-total {
    background: #0077be;
    color: #fff;
    margin: 12px 0 0 0;
    padding: 18px 2.5rem 18px 12px;
    display: flex;
    justify-content: space-between;
    font-size: 1.1rem;
    font-weight: 500;
}
	.program-total span:first-child {
		position: relative;
		padding: 0 0 0 1.5rem;
	}
	.program-total span:first-child:before {
		content: "\f058";
			font-weight: 400;
			font-family: "Font Awesome 6 Free";
			position: absolute;
			left: 0;
	}
/* -> Colour Coding */
/* --> Degree */
.program-default main.bach .fee-schedule-program-pages .overall-fee-info > div span,
.program-default main.bach .tab-content.tuition .fee-schedule-program-pages h6.single-year,
.program-default main.bach .lorem .tab-content.tuition .fee-schedule-program-pages details .details-inner table.fee-breakdown-table tr.term-total td.term-total-cost,
.program-default main.bach .tab-content.tuition .fee-schedule-program-pages details summary:after {
    color: #8e6729;
}
.program-default main.bach .tab-content.tuition .fee-schedule-program-pages .year-total {
    background: #f7edde;
    border-color: #f7edde;
}
.program-default main.bach .fee-schedule-program-pages .program-total {
    background: #8e6729;
}
/* --> Grad Cert */
.program-default main.gradcert .fee-schedule-program-pages .overall-fee-info > div span,
.program-default main.gradcert .tab-content.tuition .fee-schedule-program-pages h6.single-year,
.program-default main.gradcert .lorem .tab-content.tuition .fee-schedule-program-pages details .details-inner table.fee-breakdown-table tr.term-total td.term-total-cost,
.program-default main.gradcert .tab-content.tuition .fee-schedule-program-pages details summary:after {
    color: #3f0000;
}
.program-default main.gradcert .tab-content.tuition .fee-schedule-program-pages .year-total {
    background: #f5e8e8;
    border-color: #f5e8e8;
}
.program-default main.gradcert .fee-schedule-program-pages .program-total {
    background: #3f0000;
}
/* --> Advanced Diploma */
.program-default main.adip .fee-schedule-program-pages .overall-fee-info > div span,
.program-default main.adip .tab-content.tuition .fee-schedule-program-pages h6.single-year,
.program-default main.adip .lorem .tab-content.tuition .fee-schedule-program-pages details .details-inner table.fee-breakdown-table tr.term-total td.term-total-cost,
.program-default main.adip .tab-content.tuition .fee-schedule-program-pages details summary:after {
    color: #00598e;
}
.program-default main.adip .tab-content.tuition .fee-schedule-program-pages .year-total {
    background: #eaf4f9;
    border-color: #eaf4f9;
}
.program-default main.adip .fee-schedule-program-pages .program-total {
    background: #00598e;
}
/* --> Certificate */
.program-default main.cert .fee-schedule-program-pages .overall-fee-info > div span,
.program-default main.cert .tab-content.tuition .fee-schedule-program-pages h6.single-year,
.program-default main.cert .lorem .tab-content.tuition .fee-schedule-program-pages details .details-inner table.fee-breakdown-table tr.term-total td.term-total-cost,
.program-default main.cert .tab-content.tuition .fee-schedule-program-pages details summary:after {
    color: #5c5c5c;
}
.program-default main.cert .tab-content.tuition .fee-schedule-program-pages .year-total {
    background: #f0f0f0;
    border-color: #f0f0f0;
}
.program-default main.cert .fee-schedule-program-pages .program-total {
    background: #5c5c5c;
}
/* --> Media queries */

@media only screen and (max-width: 959px) {
    .Accordion-panel {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }
}
@media only screen and (max-width: 540px) {
    .Accordion-panel {
        padding: 20px 0;
    }
    .fee-schedule-program-pages .overall-fee-info {
        grid-template-columns: 1fr;
        grid-row-gap: 10px;
    }
    .fee-schedule-program-pages .overall-fee-info > div {
        margin: 0;
    }
    .tab-content.tuition .fee-schedule-program-pages .expand-fyi {
        margin: 10px 0 0 0;
    }
}