/* Financial Aid Page */

/* Three grid box */

:root {
    --ink: #0d110f;
    --slate: #1a1f1c;
    --stone: #2c3330;
    --sage: #4a5c52;     
    --lichen: #7a9484;
    --mist: #b0c4b8;
    --fog: #dce6e0;
    --snow: #f2f5f3;     
    --white: #ffffff;
    --ember: #b24d28;    
    --ember-hover: #9e3a1a;
    --ember-glow: rgba(178, 77, 40, 0.07);
    --sun: #faa61a;
    --ocean: #3aacb3;
}
.fl-builder-content.fl-builder-content-797218 .fl-row-content-wrap {
    margin-top: 150px;
}
.fl-theme-builder-header-sticky ul.menu li a span {
    color: #4a5c52 !important;
}
/* .fl-theme-builder-header-sticky ul.menu li a:hover {
    background: #f2f5f3 !important;
} */
.stat-card:hover {
    border-color: var(--ember);
    box-shadow: 0 8px 28px rgba(0,0,0,0.04);
}
.stat-card-black:hover {
    background: rgba(200, 82, 46, 0.04);
}
.fl-accordion .fl-accordion-item-active .fl-accordion-button-label{
	color:var(--ember);
}
.our-commitment-photo{
	overflow: hidden;
}
.our-commitment-photo img{
	 transition: transform 6s cubic-bezier(0.22, 1, 0.36, 1);
}
.our-commitment-photo:hover img {
    transform: scale(1.04);
}
.right-arrow-text-link .uabb-callout-outter{
	margin-left:15px;
}
.learn-more-box-button .fl-button i {
  font-size: 16px;
  margin-left: 6px !important;
	transition:0.3s all linear;
}
.learn-more-box-button .fl-button:hover i{
	 margin-left: 12px !important;
	 transition:0.3s all linear;
}
.container-image-radius {
    border-radius: 12px;
}

.fl-page{
	overflow-x:hidden
}
/* Get stratred Page */

.fl-module.large-stratum-font {
    font-weight: 900 !important;
}

/* Breadcrumb */

.custom-breadcrumb {
	font-size: 13px;
	line-height: 1.5;
}

.custom-breadcrumb a {
    text-decoration: none;
		color: var(--sage);
}
.custom-breadcrumb a:hover{
	color: var(--ember);
	transition:0.3s all linear;
}

.custom-breadcrumb .separator {
    margin: 0 5px;
}

.custom-breadcrumb .current {
   color: var(--lichen);
}

/* Accordion */

.fl-accordion-button,
.fl-accordion-button:focus,
.fl-accordion-button:active,
.fl-accordion-button:hover {
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}
.fl-accordion-button .fl-accordion-button-icon,
.fl-accordion-button .fl-accordion-button-icon:focus,
.fl-accordion-button .fl-accordion-button-icon:active {
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}
.fl-accordion-button {
    -webkit-tap-highlight-color: transparent;
}

/* Why NOLS for Organizations Page */

.left-dark-band-text {
    position: absolute;
    left: 48px;
    top: 50%;
    transform: translateY(-50%);
}
.dark-band-stat{
	backdrop-filter: blur(4px);
}
.custom-relative-position {
    position: relative;
}
.first-letter-large p::first-letter {
    font-size: 70px;
    font-weight: 700;
    line-height: 1;
    float: left; 
    margin-right: 7px;
	color:var(--ember)
}

body blockquote {
    border-left: 4px solid var(--ember);
    padding-left: 24px;
    font-size: 20px;
    font-style: italic;
    color: var(--stone);
    margin: 24px 0;
}

body ul,body ol{
	padding-left:20px;
}

body ul li:not(:last-child),body ol li:not(:last-child){
	margin-bottom:8px;
}

body ol.steps {
    counter-reset: step;
    list-style: none;
    padding-left: 0;
}

body ol.steps li {
    counter-increment: step;
    position: relative;
    padding-left: 46px;
    margin-bottom: 18px;
}

body ol.steps li::before {
    content: counter(step);
    position: absolute;
    left: 0;
    top: -2px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--ember-glow);
    color: var(--ember);
    font-weight: 700;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.table-wrap {
    overflow-x: auto;
    margin: 24px 0;
    -webkit-overflow-scrolling: touch;
}

body table {
    width: 100%;
    border-collapse: collapse;
    font-size: 15px;
    min-width: 520px;
}

body table th,
body table td {
    text-align: left;
    padding: 12px 16px;
    border-bottom: 1px solid var(--fog);
}

body table thead th {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--lichen);
}

body table tbody th {
    font-weight: 600;
    color: var(--ink);
}

body table td {
    color: var(--sage);
}

body table tbody tr:last-child td,
body table tbody tr:last-child th {
    border-bottom: none;
}

body table caption {
    caption-side: bottom;
    text-align: left;
    font-size: 12px;
    color: var(--lichen);
    padding-top: 12px;
}

body .icon-with-description-box .uabb-info-list-title {
	margin:0 0 3px !important;
}

body .credentials-icon-box > .fl-module:hover .icon-box{
	border-color: var(--ember);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
	transition:0.3s all linear;
}

/* Form CSS */

.custom-form-css form label {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--ink) !important;
    margin-bottom: 6px !important;
    font-family: 'DM Sans' !important;
}

.custom-form-css form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.custom-form-css form select,
.custom-form-css form textarea {
    padding: 12px 16px !important;
    height: 48px !important;
    border: 1px solid var(--fog) !important;
    border-radius: 10px !important;
    font-family: var(--font) !important;
    font-size: 14px !important;
    color: var(--ink) !important;
    background: var(--white) !important;
    outline: none !important;
    transition: border-color var(--dur) var(--ease),
                box-shadow var(--dur) var(--ease),
                background var(--dur) var(--ease) !important;
    -webkit-appearance: none !important;
    appearance: none !important;
	  width: 100%;
	  box-shadow: none;
}
.custom-form-css form fieldset legend {
    padding-bottom: 10px;
	  margin-bottom: 0;
    font-size: 11px;
    border-bottom: 0;
}
.custom-form-css form .hs-country select, .custom-form-css form .hs-message textarea {
    width: 100% !important;
}
.custom-form-css textarea {
    min-height: 100px;
    box-sizing: border-box !important;
}

.custom-form-css input[type="submit"] {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 14px 28px !important;
    border-radius: 100px !important;
    font-family: var(--font) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border: none !important;
    cursor: pointer !important;
    background: var(--ember) !important;
    color: var(--white) !important;
    line-height: normal !important;
	  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1) !important;
	  text-shadow: none;
}
.custom-form-css form .actions {
    margin-top: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.custom-form-css input[type="submit"]:hover {
    background-color: var(--ember-hover) !important;
	  transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(178, 77, 40, 0.25) !important;
}
.custom-form-css form label.hs-error-msg {
    color: #c02b0a !important;
    font-size: 12px !important;
    font-weight: 400 !important;
}
.custom-form-css form ul.hs-error-msgs {
    list-style-type: none;
    padding: 0;
}
.custom-form-css form label span.hs-form-required {
    color: #c02b0a !important;
}
.custom-form-css form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):focus, .custom-form-css form select:focus, .custom-form-css form textarea:focus {
    outline: none !important;
    border-color: var(--ember) !important;
    box-shadow: 0 0 0 3px var(--ember-glow);
}
.custom-form-css {
    width: 100% !important;
}
.custom-form-css form fieldset {
    max-width: 100%;
}
.custom-form-css form fieldset .hs-form-field {
    margin-bottom: 15px;
}
.custom-form-css form fieldset:last-child {
    margin-bottom: 0;
}
.custom-form-css form fieldset ul.inputs-list {
    list-style-type: none;
    padding: 0;
	  margin-bottom: 0;
}
.custom-form-css form label.hs-form-booleancheckbox-display {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px !important;
	  font-weight: 400 !important;
    background: var(--white);
    border: 1px solid var(--fog);
    border-radius: 10px;
    cursor: pointer;
    transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 400ms cubic-bezier(0.22, 1, 0.36, 1);
	  margin-bottom: 0 !important;
}
.custom-form-css form label.hs-form-booleancheckbox-display input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-top: 2px;
    flex-shrink: 0;
    accent-color: var(--ember);
    cursor: pointer;
}
.custom-form-css form label.hs-form-booleancheckbox-display:hover {
    border-color: var(--ember);
    box-shadow: 0 4px 16px rgba(178, 77, 40, 0.06);
}
.custom-form-css form label.hs-form-radio-display {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}
.custom-form-css form label.hs-form-radio-display input[type="radio"] {
    width: 18px;
    height: 18px;
    margin-top: 2px;
    flex-shrink: 0;
    accent-color: var(--ember);
    cursor: pointer;
}
.custom-form-css form .hs-fieldtype-select select, .custom-form-css form .hs-fieldtype-phonenumber select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%234a5c52' d='M6 8.5L1.5 4h9z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    padding-right: 40px !important;
    cursor: pointer;
	  box-shadow: none;
}

.custom-form-css input[type="submit"] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M268 112l144 144-144 144M392 256H100' fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='48'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 25px center !important;
    background-size: 18px 18px !important;
    padding-right: 50px !important;
}

.catalog-form-wrap.custom-form-css input[type="submit"]{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Crect x='48' y='96' width='416' height='320' rx='40' ry='40' fill='none' stroke='%23ffffff' stroke-width='32' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M112 160l144 112 144-112' fill='none' stroke='%23ffffff' stroke-width='32' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
} 

.white-breadcumb .custom-breadcrumb a,.white-breadcumb .custom-breadcrumb .current,.white-breadcumb .custom-breadcrumb .separator{
	color: #fff;
}

.white-breadcumb .custom-breadcrumb a:hover{
	color: var(--ember-hover);
}

/* Team page */

.custom-showcase-num {
    position: absolute;
    top: 16px;
    left: 18px;
}
.photo-title-wrap-box {
    position: relative;
}
.image-showcase-meta {
    position: absolute;
    bottom: 0;
}
.photo-title-wrap-box{
	overflow:hidden;
}
.loaction-gallery-photo{
	position:relative;
	 object-fit: cover;
   filter: grayscale(100%) contrast(1.05);
   transition: filter var(--dur-slow) var(--ease), transform var(--dur-slow) var(--ease);
	transition:0.3s all linear;
}
.loaction-gallery-photo:hover{
	filter: grayscale(0%);
	transform: scale(1.05);
	transition:0.3s all linear;
}
.loaction-gallery-photo::before {
    position: absolute;
    inset: 0;
    background: linear-gradient(transparent 38%, rgba(13, 17, 15, 0.88));
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
	z-index:1;
}
.loaction-gallery-photo:hover::before {
	display:none;
}
.photo-title-wrap-box::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    height: 3px;
    width: 0;
    background: var(--ember);
    z-index: 3;
    transition: width var(--dur) var(--ease);
	transition:0.3s all linear;
}
.photo-title-wrap-box:hover::after, .photo-title-wrap-box:focus-visible::after {
    width: 100%;
	transition:0.3s all linear;
}

/* location template */

.from-the-blog-sec-custom-css .uabb-blog-post-inner-wrap {
    display: flex;
    align-items: center;
    gap: 44px;
}
.from-the-blog-sec-custom-css .uabb-read-more-text a {
    border-bottom: 2px solid;
    padding-bottom: 6px;
    line-height: 2.5em;
}
.from-the-blog-sec-custom-css .uabb-read-more-text a:hover, .from-the-blog-sec-custom-css .uabb-read-more-text a:hover span{
	transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
		color:var(--ember) !important;
}
.from-the-blog-sec-custom-css .uabb-read-more-text a span{
	transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.from-the-blog-sec-custom-css .uabb-read-more-text a:hover span {
    transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
    padding-left: 8px;
}

.from-the-blog-sec-custom-css .uabb-blog-post-inner-wrap .uabb-post-thumbnail{
	border-radius:12px;
}
.from-the-blog-sec-custom-css .uabb-blog-post-inner-wrap  .uabb-blog-posts-description{
	padding-top:12px !important;
}
.community-instagram-grid-box iframe{
	min-width:auto !important;
}

/* Responsive */

@media (max-width: 2200px) and (min-width: 1201px){

	.large-stratum-font.very-large-font p{
			font-size:125px !important;
	}

}

@media (max-width: 1700px) and (min-width: 1201px){

	.large-stratum-font.very-large-font p {
			font-size: 100px !important;
	}
	
}

@media (max-width: 1550px) and (min-width: 1201px){

	.large-stratum-font p{
			font-size:125px !important;
	}

}

@media (max-width: 1400px) and (min-width: 1201px){

	.large-stratum-font.very-large-font p {
			font-size: 86px !important;
	}
}

@media (max-width: 1199px) and (min-width: 992px){
	.location-grid-row .uabb-blog-posts-grid .uabb-post-wrapper{
		width: calc((100% - 10px) / 3);
		margin-bottom:20px;
	}
}
	
@media (max-width: 1199px){	
	.from-the-blog-sec-custom-css .uabb-blog-post-inner-wrap {
			gap: 20px;
	}
}

@media (max-width: 992px){
	
	.large-stratum-font.very-large-font p br{
		display:none !important;
	}
		.left-dark-band-text {
			left: 20px;
	}
	.from-the-blog-sec-custom-css .uabb-blog-post-inner-wrap {
			flex-wrap:wrap;
		gap:30px;
	}
	.from-the-blog-sec-custom-css .uabb-blog-post-inner-wrap .uabb-blog-post-content, .from-the-blog-sec-custom-css .uabb-blog-post-inner-wrap .uabb-post-thumbnail{
		width:100%;
	}
	.from-the-blog-sec-custom-css .uabb-blog-post-inner-wrap .uabb-blog-post-content{
		padding:0;
	}
}

@media (max-width: 767px){
	.first-letter-large.small-device{
		max-width:330px;
	}
	
	.first-letter-large.small-device p::first-letter {
		font-size: 50px;
		margin-bottom: 15px;
	}
	.custom-form-css form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]) {
		width: 100% !important;
	}
	.custom-form-css form .hs-fieldtype-phonenumber select {
		width: 100% !important;
		margin-bottom: 15px !important;
	}
}



/* Common CSS */
.three-column-list ul {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.three-column-list ul li {
    flex: 0 0 calc(33.33% - 20px);
}

.infobox-hero-light-center .uabb-infobox-title-prefix {
    justify-content: center;
}

/** Banner css **/
a:focus {
    outline: none !important;
}

.nols-info-wrap .uabb-infobox-content .uabb-infobox-title-prefix {
    display: flex;
    align-items: center;
    gap: 10px;
}

.nols-info-wrap .uabb-infobox-content .uabb-infobox-title-prefix:before {
    content: "";
    width: 28px;
    height: 2px;
    background: var(--ember);
    display: inline-block;
    position: relative;
}

.nols-info-wrap .uabb-infobox-content .uabb-infobox-text-wrap {
    max-width: 480px;
}

/** Button css **/
.fl-button-group .fl-button-wrap .fl-button .fl-button-icon,
.fl-button-wrap .fl-button .fl-button-icon {
    font-size: 16px;
}

.fl-button-group .fl-button-group-button:first-child .fl-button,
.fl-button-group.button-style-2 .fl-button-group-button:last-child .fl-button {
    transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.fl-button-group .fl-button-group-button:first-child .fl-button:hover {
    background: var(--ember-hover);
    border-color: var(--ember-hover);
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(178, 77, 40, 0.25);
}

.fl-button-group.button-style-2 .fl-button-group-button:last-child .fl-button:hover,
.fl-button-group.button-style-3 .fl-button-group-button:last-child .fl-button:hover {
    transform: translateY(-2px);
}

.fl-button-group .fl-button-group-button:first-child .fl-button:hover .fl-button-text,
.fl-button-group .fl-button-group-button:first-child .fl-button:hover i {
    color: var(--white);
}

.fl-button-group .fl-button-group-button:last-child .fl-button {
    backdrop-filter: blur(8px);
    transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.fl-button-group .fl-button-group-button:last-child .fl-button:hover {
    background: #ffffff2e;
    border-color: #ffffff66;
}

.fl-button-group .fl-button-group-button:last-child .fl-button:hover .fl-button-text,
.fl-button-group .fl-button-group-button:last-child .fl-button:hover i {
    color: var(--white);
}

.fl-button-group.button-style-2 .fl-button-group-button:first-child .fl-button:hover {
    box-shadow: unset;
}

/** Employment Page css **/
.nols-gallery-photo .fl-photo-content figcaption.fl-photo-caption {
    background: linear-gradient(transparent, rgba(13, 17, 15, 0.7));
    text-align: left;
    padding: 20px;
}

.nols-gallery-photo .fl-photo-content {
    overflow: hidden;
}

.nols-gallery-photo .fl-photo-content img {
    transition: transform 6s cubic-bezier(0.22, 1, 0.36, 1);
}

.nols-gallery-photo .fl-photo-content:hover img {
    transform: scale(1.04);
}

.photo-strip-section.fl-module {
    grid-template-columns: 1fr 2fr 1fr 1fr;
}

.photo-strip-section.fl-module figure.fl-module-photo {
    height: 340px;
}

body .nols-width-auto {
    width: auto;
}

body .fl-module-box .left-transform-text {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 140px;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

body .fl-module-box .left-transform-text>p {
    transform: rotate(-90deg);
    white-space: nowrap;
}

body .fl-module.bold-stratum-font {
    font-weight: 700 !important;
}

.step-border-icon-box .uabb-infobox-content .uabb-infobox-title-prefix {
    border-bottom: 2px solid var(--fog);
    padding-bottom: 14px;
    transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.step-border-icon-box .uabb-infobox:hover .uabb-infobox-content .uabb-infobox-title-prefix {
    border-color: var(--ember);
}

/** Case Studies css **/
.case-studies-section .fl-post-grid .fl-post-column .fl-post-grid-post {
    transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
    overflow: hidden;
}

.case-studies-section .fl-post-grid .fl-post-column .fl-post-grid-post:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);
    border-color: transparent;
}

.post-pagination-hide .fl-builder-pagination {
    display: none;
}

body .case-studies-section .fl-post-grid-text .fl-post-grid-meta-terms a {
    background: var(--ember-glow);
    border: 1px solid rgba(178, 77, 40, 0.15);
    padding: 3px 12px;
    border-radius: 100px;
    font-size: 10px;
    display: inline-block;
}

.case-studies-section .fl-post-grid-image {
    overflow: hidden;
}

.case-studies-section .fl-post-grid .fl-post-grid-post img {
    transition: transform 5s cubic-bezier(0.22, 1, 0.36, 1);
}

.case-studies-section .fl-post-grid .fl-post-grid-post:hover img {
    transform: scale(1.06);
}

.case-studies-section .fl-post-grid .fl-post-grid-post .fl-post-grid-more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 600;
    color: var(--ember) !important;
    text-decoration: none;
    transition: gap 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.case-studies-section .fl-post-grid .fl-post-grid-post .fl-post-grid-more::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 2px;
    vertical-align: middle;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='none' stroke='%23b24d28' stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M268 112l144 144-144 144M392 256H100'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.case-studies-section .fl-post-grid .fl-post-grid-post .fl-post-grid-more:hover {
    gap: 12px;
}

/** Events css **/
.event-icon-list .fl-list {
    display: flex;
    align-items: center;
    gap: 18px;
}

.email-text-bold.fl-module a {
    font-weight: 600;
    color: var(--ember);
}

/* ─── CATEGORY TABS ─── */
.category-tabs {
    background: var(--white);
    border-bottom: 1px solid var(--fog);
    position: sticky;
    top: 72px;
    z-index: 50;
    display: flex;
    padding: 0 20px;
}

.tabs-inner {
    max-width: 1280px;
    margin: 0 auto;
    display: flex;
    gap: 6px;
    padding: 16px 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    flex-wrap: wrap;
    justify-content: center;
}

.chip {
    padding: 6px 20px;
    border-radius: 100px;
    border: 1px solid var(--fog);
    background: var(--white);
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    color: var(--sage);
    cursor: pointer;
    transition: all var(--dur) var(--ease);
    white-space: nowrap;
    flex-shrink: 0;
}

.chip:hover {
    border-color: var(--stone);
    color: var(--ink);
}

.chip.active {
    background: var(--ink);
    border-color: var(--ink);
    color: var(--white);
}

/* ─── FAQ ACCORDION ─── */
.faq-group {
    margin-bottom: 56px;
}

.faq-group:last-child {
    margin-bottom: 0;
}

.faq-group-title {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--ember);
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--fog);
}

.faq-item {
    border-bottom: 1px solid var(--fog);
}

.faq-question {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0;
    background: none;
    border: none;
    cursor: pointer;
    font-family: var(--font);
    font-size: 17px;
    font-weight: 600;
    color: var(--ink);
    text-align: left;
    transition: color var(--dur) var(--ease);
}

.faq-question:hover {
    color: var(--ember);
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height var(--dur) var(--ease), padding var(--dur) var(--ease);
}

.faq-item.open .faq-answer {
    max-height: 400px;
}

.faq-answer-inner {
    padding: 0 0 20px;
    font-size: 15px;
    color: var(--sage);
    line-height: 1.65;
}

.faq-icon {
    display: inline-block;
    width: 12px;
    height: 12px;
    position: relative;
}

.faq-icon::before {
    content: "";
    position: absolute;
    top: 2px;
    left: 2px;
    width: 10px;
    height: 10px;
    border-right: 2px solid var(--ember);
    border-bottom: 2px solid var(--ember);
    transform: rotate(45deg);
}

.faq-item.open .faq-icon::before {
    transform: rotate(-135deg);
}

/* ─── Related cards (P15, from row-library) ─── */
.related-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.related-card {
    background: var(--white);
    border: 1px solid var(--fog);
    border-radius: 10px;
    overflow: hidden;
    text-decoration: none;
    color: var(--ink);
    transition: all var(--dur) var(--ease);
    display: block;
}

.related-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}

.related-card-img {
    height: 250px;
    background: var(--fog) center/cover;
}

.related-card-body {
    padding: 16px;
}

.related-card-meta {
    font-size: 11px;
    font-weight: 600;
    color: var(--ember);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 6px;
    text-decoration: none;
}

.related-card h3 {
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 6px;
    text-decoration: none;
    margin-top: 0;
}

.related-card p {
    font-size: 12px;
    color: var(--sage);
}

/** Skills css **/
.skills-post-list .uabb-blog-posts .uabb-blog-post-element-link {
    outline: none !important;
}

.skills-post-list .uabb-blog-posts .uabb-post-thumbnail img {
    aspect-ratio: 1.2 / 1;
    object-fit: cover;
    width: 100%;
    transition: transform 6s cubic-bezier(0.22, 1, 0.36, 1);
}

.skills-post-list .uabb-blog-posts .uabb-blog-post-inner-wrap {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
}

.skills-post-list .uabb-blog-posts .uabb-blog-post-content {
    position: absolute;
    bottom: 20px;
    left: 20px;
    right: 20px;
    z-index: 999;
    width: calc(100% - 40px);
}

.skills-post-list .uabb-blog-posts .uabb-blog-post-inner-wrap:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    right: 0px;
    top: 0px;
    bottom: 0px;
    background: linear-gradient(180deg, rgba(13, 17, 15, 0.0) 30%, rgba(13, 17, 15, 0.85) 100%);
    display: block !important;
    border-radius: 12px;
    z-index: 1;
}

.skills-post-list .uabb-blog-posts .uabb-post-heading {
    color: #FFFFFF;
}

.skills-post-list .uabb-blog-post-element-link:hover+.uabb-blog-posts-shadow .uabb-post-thumbnail img {
    transform: scale(1.04);
}

/** Study Abroad css **/
.custom-image-box .uabb-infobox .uabb-image-content,
.custom-image-box .uabb-infobox .uabb-image-content img {
    width: 100%;
}

.custom-image-box .uabb-infobox .uabb-image-content img {
    aspect-ratio: 1.5 / 1;
    object-fit: cover;
    border-radius: 12px 12px 0 0;
    transition: transform 6s cubic-bezier(0.22, 1, 0.36, 1);
}

.custom-image-box .uabb-infobox .uabb-infobox-title-wrap {
    padding: 25px;
}

.custom-image-box .uabb-infobox .uabb-infobox-module-link:hover+.uabb-infobox-content .uabb-image-content img {
    transform: scale(1.04);
}

.custom-image-box .uabb-infobox,
.custom-image-box .uabb-infobox .uabb-module-content {
    overflow: hidden;
}

.custom-image-box .uabb-infobox:hover {
    border-color: var(--ember);
}

.custom-image-box .fl-module-content,
.custom-image-box .fl-module-content .uabb-infobox {
    height: 100%;
}

.custom-post-slider .uabb-blog-posts-carousel .uabb-post-thumbnail.uabb-blog-post-section {
    border-radius: 12px;
}


/* ─── UPCOMING COURSES ─── */
.custom-course-loop-grid .courses-grid,
.custom-course-loop-grid .uabb-blog-post-content,
.custom-course-loop-grid .uabb-blog-post-inner-wrap {
    height: 100%;
}

.custom-course-loop-grid .courses-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 24px;
    margin-bottom: 40px;
}

.custom-course-loop-grid .course-card {
    border-radius: 10px;
    overflow: hidden;
    background: var(--white);
    border: 1px solid var(--fog);
    transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
    text-decoration: none;
    color: var(--ink);
    display: block;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.custom-course-loop-grid .course-card:hover {
    border-color: transparent;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);
    transform: translateY(-4px);
}

.custom-course-loop-grid .course-card-img {
    aspect-ratio: 1.7 / 1;
    width: 100%;
    background-size: cover;
    background-position: center;
    position: relative;
}

.custom-course-loop-grid .course-card-img::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 50%, rgba(13, 17, 15, 0.15) 100%);
}

.custom-course-loop-grid .course-card-body {
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 1;
}

.course-card-box-wrap {
    flex: 1;
}

.custom-course-loop-grid .course-card-type {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--ember);
    margin-bottom: 6px;
}

.custom-course-loop-grid .course-card h3 {
    font-size: 17px;
    font-weight: 700;
    color: var(--ink);
    line-height: 1.25;
    margin-bottom: 10px;
}

.custom-course-loop-grid .course-card-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 13px;
    color: var(--sage);
}

.custom-course-loop-grid .course-card-meta span {
    display: flex;
    align-items: center;
    gap: 6px;
}

.custom-course-loop-grid .course-card-meta ion-icon {
    font-size: 14px;
    color: var(--lichen);
    flex-shrink: 0;
}

.custom-course-loop-grid .course-card-price {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid var(--fog);
}

.custom-course-loop-grid .course-card-price .price {
    font-size: 18px;
    font-weight: 700;
    color: var(--ink);
}

.custom-course-loop-grid .course-card-price .view-link {
    font-size: 13px;
    font-weight: 600;
    color: var(--ember);
    display: flex;
    align-items: center;
    gap: 4px;
}

.custom-course-loop-grid .course-card-price .view-link ion-icon {
    font-size: 14px;
}

.custom-course-loop-grid .courses-more {
    text-align: center;
    margin-top: 40px;
}

.custom-course-loop-grid .uabb-blog-posts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    overflow: unset;
}

.custom-course-loop-grid .uabb-blog-posts .uabb-post-wrapper {
    position: unset !important;
    width: 100%;
}

.custom-course-loop-grid .uabb-blog-posts .uabb-blog-post-content {
    overflow: unset;
}

/* Single Product */
.single-product-page header,
.product-cat-page header {
    box-shadow: 0 1px 0 var(--fog);
}

.product-cat-schedule-form .session-detail .h4 {
    font-size: 16px
}

.nols-included ul {
    padding-left: 0;

    li {
        position: relative;
        padding-left: 30px;
        list-style-type: none;

        &::before {
            content: '';
            position: absolute;
            left: 0;
            top: 3px;
            border-radius: 50%;
            background-image: url(../images/check-circle.svg);
            background-size: 18px;
            background-repeat: no-repeat;
            background-position: center;
            height: 18px;
            width: 18px;
        }
    }
}

.nols-notincluded ul {
    padding-left: 0;

    li {
        position: relative;
        padding-left: 30px;
        list-style-type: none;

        &::before {
            content: '';
            position: absolute;
            left: 0;
            top: 3px;
            border-radius: 50%;
            background-image: url(../images/close-circle.svg);
            background-size: 18px;
            background-repeat: no-repeat;
            background-position: center;
            height: 18px;
            width: 18px;
        }
    }
}

/* ---- DIFFICULTY RATING ---- */
.difficulty-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 16px;
}

.difficulty-item {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 16px;
    background: var(--snow);
    border-radius: 12px;
    border: 1px solid var(--fog);
}

.difficulty-label {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--lichen);
}

.difficulty-dots {
    display: flex;
    gap: 6px;
}

.difficulty-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--fog);
}

.difficulty-dot.filled {
    background: var(--ember);
}

.challenges-grid,
.learn-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.challenge-card,
.learn-card {
    padding: 24px;
    background: var(--snow);
    border-radius: 12px;
    border: 1px solid var(--fog);
}

.learn-card {
    display: flex;
    gap: 16px;
    transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
    -webkit-transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
    -moz-transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
    -ms-transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
    -o-transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.learn-card:hover {
    border-color: var(--mist);
}

.challenge-card-icon,
.learn-card-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--white);
    border: 1px solid var(--fog);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    color: var(--sage);
    padding: 5px;
}

.learn-card-icon {
    background: var(--ember-glow);
    border-color: var(--ember-glow);
    flex: 0 0 40px;
}


.challenge-card-img,
.learn-card-icon img {
    width: 100%;
    height: 100%;
    max-width: 20px !important;
    object-fit: contain;
    display: block;
}

.challenge-card-title,
.learn-card-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 6px;
}

.learn-card-title {
    font-weight: 600;
    margin-bottom: 4px;
    margin-top: 0;
}

.challenge-card-description,
.learn-card-description {
    font-size: 14px;
    line-height: 1.6;
    color: var(--sage);
}

.credit-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
}

.credit-stat {
    padding: 0 20px;
    border-right: 1px solid var(--fog);
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.credit-stat:first-child {
    padding-left: 0;
}

.credit-stat:last-child {
    border-right: none;
    padding-right: 0;
}

.credit-stat-value {
    font-size: 22px;
    font-weight: 700;
    color: var(--ink);
    letter-spacing: -0.01em;
}

.credit-stat-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--lichen);
}

.credit-subjects {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.credit-subject {
    font-size: 13px;
    font-weight: 500;
    color: var(--ink);
    background: var(--white);
    border: 1px solid var(--fog);
    padding: 6px 12px;
    border-radius: 100px;
}

/** Timeline css **/
.nols-timeline-wrap .uabb-timeline-main .uabb-timeline-heading {
    margin: 6px 0;
}

.nols-timeline-wrap .uabb-timeline-vertical.uabb-timeline--left .uabb-timeline__line {
    left: 8px;
    top: 0 !important;
    bottom: 0 !important;
}

.nols-timeline-wrap .uabb-timeline-vertical .uabb-timeline-marker-wrapper {
    margin-top: 7px;
}

.nols-timeline-wrap .uabb-timeline-main .uabb-timeline-desc-content {
    max-width: 560px;
}

/*  */

.hover-border-with-shadow:hover {
    border-color: var(--fog);
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.04);
}

.hover-box-shadow:hover {
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.05);
}

.hover-border-none:hover {
    border-color: transparent;
}

.hover-move-up:hover {
    transform: translateY(-4px);
}

/*  */

.categories-widget ul li.cat-parent {
    background: var(--snow);
    padding: 20px;
    margin-bottom: 20px !important;
    border-radius: 12px;
}

.categories-widget ul li.cat-parent>a {
    display: inline-block;
    margin-bottom: 15px;
    font-size: 24px;
}

.categories-widget ul ul.children {
    padding-block: 20px;
    border-radius: 12px;
}

.categories-widget ul ul.children li {
    padding: 0 20px 0;
    border-radius: 12px;
}

.categories-widget ul li a {
    color: var(--ember);
}

.categories-widget ul li a:hover {
    color: var(--ink);
}

/* Checkout */
body .checkout-column {
    overflow: hidden;
}

body .checkout-card-header {
    padding-inline: 0 !important;
    padding-top: 10px;
}

body .checkout-card-title {
    font-size: clamp(24px, 21.71px + 0.71vw, 32px) !important;
}

body .checkout-container .form-row label {
    font-family: "DM Sans", sans-serif !important;
    font-size: 15px !important;
}

body .checkout-card-content {
    padding: 10px 0 0;
}

.woocommerce form .form-row input.input-text,
.woocommerce-page form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-page form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-page form .form-row select,
.woocommerce table.cart td.actions .coupon .input-text,
.woocommerce-page table.cart td.actions .coupon .input-text,
.select2-container .select2-selection--single,
.select2-container--default .select2-search--dropdown .select2-search__field {
    font-family: "DM Sans", sans-serif !important;
    border: 1px solid #dce6e0 !important;
    border-radius: 100px !important;
    background: #fff !important;
    font-size: 15px !important;
    height: auto !important;
    padding: 8px 15px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 26px;
    position: absolute;
    top: 10px;
    right: 11px;
    width: 20px;
}

#billing_address_1_field,
#billing_address_2_field,
.checkout-container #billing_city_field,
.checkout-container #billing_state_field,
.checkout-container #billing_postcode_field {
    width: 100% !important;
}

body #checkout-left-column .button,
body .wpo365-mssignin-button,
body #place_order {
    display: inline-block;
    background-color: var(--ember) !important;
    color: #ffffff !important;
    padding: 14px 16px;
    border-radius: 100px !important;
    font-size: 15px !important;
    font-weight: 600;
    font-family: "DM Sans", sans-serif !important;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
    text-align: center;
}

body #checkout-left-column .button:hover,
body .wpo365-mssignin-button:hover,
body #place_order:hover {
    background: var(--ember-hover) !important;
    border-color: var(--ember-hover) !important;
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(178, 77, 40, 0.25);
}

.woocommerce-page form.checkout_coupon input {
    display: inline-block;
    background-color: #fff !important;
    color: var(--ember) !important;
    padding: 10px 16px;
    border-radius: 100px !important;
    font-size: 15px !important;
    font-weight: 600;
    font-family: "DM Sans", sans-serif !important;
    text-decoration: none;
    border: 1px solid var(--ember) !important;
    cursor: pointer;
    transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
    text-align: center;
    height: auto !important;
}

.woocommerce-page form.checkout_coupon input::placeholder {
    color: var(--ember) !important;
}

body.woocommerce #payment,
body.woocommerce-page #payment,
body.woocommerce #payment div.payment_box,
body.woocommerce-page #payment div.payment_box {
    border: 1px solid var(--fog);
    background: var(--snow);
    padding: 15px 5px;
}

body .checkout-container .woocommerce-checkout-review-order-table {
    font-size: 14px !important;
    font-family: "DM Sans", sans-serif !important;
    border: 1px solid var(--fog);
}

body .woocommerce-checkout-review-order-table .order-total {
    background-color: var(--snow);
}

body .woocommerce-checkout-review-order-table dl.variation dt {
    width: 160px;
}

.woocommerce #order_review,
.woocommerce-page #order_review {
    padding: 20px 0 !important;
}

.woocommerce-checkout-review-order-table .product-remove a.remove:hover {
    background-color: var(--ember-hover);
}

.accordion {
    border: 1px solid var(--fog);
    border-radius: 12px;
    overflow: hidden;
    background: var(--white);
    margin-top: 32px;
}

.accordion-item {
    border-bottom: 1px solid var(--fog);
}

.accordion-trigger {
    width: 100%;
    background: none;
    border: none;
    padding: 20px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    font-family: var(--font);
    font-size: 16px;
    font-weight: 600;
    color: var(--ink);
    text-align: left;
    transition: background var(--dur) var(--ease);
}

.accordion-panel {
    display: none;
    padding: 0 24px 20px;
    font-size: 15px;
    line-height: 1.7;
    color: var(--sage);
}

.photo-strip[data-count="4"] {
    grid-template-columns: 1fr 2fr 1fr 1fr;
    height: 340px;
}

.photo-strip {
    display: grid;
    gap: 4px;
}

.photo-strip-cell {
    overflow: hidden;
}

.photo-strip-cell img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 5s var(--ease);
}

.product-category-archive-gallery .uabb-photo-gallery {
    display: grid;
    /* grid-template-columns: 2fr 4fr 2fr fr; */
    /* grid-template-columns: 1fr 2fr 1fr 1fr; */
    grid-template-columns: repeat(5, 1fr);
}

/* Row 1 */
.product-category-archive-gallery .uabb-photo-gallery-item:nth-child(2) {
    grid-column: span 2;
}

/* Row 2 - 3 elements */
.product-category-archive-gallery .uabb-photo-gallery-item:nth-child(7) {
    grid-column: span 2;
}

/* Row 3 - 2 elements */
.product-category-archive-gallery .uabb-photo-gallery-item:nth-child(10) {
    grid-column: span 2;
}

/* Row 4 - 2 elements */
.product-category-archive-gallery .uabb-photo-gallery-item:nth-child(15) {
    grid-column: span 2;
}

/* Row 5 - 3 elements */
.product-category-archive-gallery .uabb-photo-gallery-item:nth-child(18) {
    grid-column: span 2;
}

.product-category-archive-gallery .uabb-photo-gallery-item {
    height: 350px !important;
    width: 100% !important;
}

.product-category-archive-gallery .uabb-photo-gallery-content,
.uabb-photo-gallery-link a {
    height: 100% !important;
}

.product-category-archive-gallery .uabb-photo-gallery-content .uabb-gallery-img {
    height: 100% !important;
    object-fit: cover;
}

/** Product Category css **/
.facet-filters {
    font-family: "DM Sans", sans-serif;
}

.nols-sessions-sort {
    display: flex;
    align-items: center;
    gap: 10px;
}

.nols-sessions-sort-label {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--lichen);
}

.nols-sessions-sort .facetwp-facet select {
    appearance: none;
    -webkit-appearance: none;
    background: var(--white);
    border: 1px solid var(--fog);
    border-radius: 100px;
    padding: 6px 36px 6px 16px;
    font-family: "DM Sans", sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--ink);
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234a5c52' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 14px;
    transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.nols-sessions-sort .facetwp-facet select:hover {
    border-color: var(--lichen);
}

.facetwp-facet.facetwp-type-pager {
    font-size: 13px;
    color: var(--sage);
    font-weight: 500;
}

.nols-facet-filters .facetwp-facet input.facetwp-search {
    width: 100%;
    background: var(--white);
    border: 1px solid var(--fog);
    border-radius: 100px;
    padding: 9px 16px 9px 38px;
    font-size: 14px;
    color: var(--ink);
    font-family: "DM Sans", sans-serif;
    transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.nols-facet-filters .facetwp-facet input.facetwp-search:focus {
    outline: none;
    border-color: var(--ember);
    box-shadow: 0 0 0 3px var(--ember-glow);
}

.nols-facet-filters .facetwp-icon {
    right: unset;
    left: 10px;
    font-size: 12px;
}

.nols-facet-filters .facetwp-icon:before {
    width: 25px;
    background-size: 15px 15px;
}

.nols-facet-filters .nols-facet-title {
    width: 100%;
    background: none;
    border: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ink);
    margin-bottom: 12px;
}

.nols-facet-filters .facetwp-facet .facetwp-checkbox {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    cursor: pointer;
    font-size: 13px;
    color: var(--sage);
    transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
    padding: 4px 0;
    background-image: none;
}

.nols-facet-filters .facetwp-facet .facetwp-checkbox span.facetwp-display-value {
    position: relative;
    display: flex;
}

.nols-facet-filters .facetwp-facet .facetwp-checkbox span.facetwp-display-value:before {
    content: "";
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    max-width: 16px;
    display: inline-block;
    top: 4px;
    margin-right: 8px;
    border: 1px solid var(--lichen);
    border-radius: 4px;
    background: var(--white);
    position: relative;
    transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1), background 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.nols-facet-filters .facetwp-facet .facetwp-checkbox.checked span.facetwp-display-value:before {
    background: var(--ember);
    border-color: var(--ember);
}

.nols-facet-filters .facetwp-facet .facetwp-checkbox span.facetwp-display-value:after {
    content: "";
    position: absolute;
    top: 6px;
    left: 5px;
    width: 5px;
    height: 9px;
    border: solid var(--white);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    opacity: 0;
}

.nols-facet-filters .facetwp-facet .facetwp-checkbox.checked span.facetwp-display-value:after {
    opacity: 1;
}

.nols-facet-filters .facetwp-facet.facetwp-facet-reset {
    text-align: left;
    margin: 0 0 16px !important;
}

.nols-facet-filters .facetwp-facet.facetwp-facet-reset button.facetwp-reset {
    border-radius: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    color: var(--ember);
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.nols-facet-filters .facetwp-selections {
    margin-top: 20px;
}

.nols-facet-filters .facetwp-selections ul {
    padding: 0;
}

.nols-facet-filters .facetwp-facet.facetwp-facet-reset button.facetwp-reset {
    position: relative;
    padding-left: 20px;
}

.nols-facet-filters .facetwp-facet.facetwp-facet-reset button.facetwp-reset:before {
    content: "";
    background-image: url(../images/cross-red-circle.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 14px;
    height: 15px;
    width: 15px;
    position: absolute;
    left: 0;
}

.nols-facet-filters .facet-date .facetwp-facet .facetwp-date {
    width: 100%;
    background: var(--white);
    border: 1px solid var(--fog);
    border-radius: 8px;
    padding: 8px 12px;
    font-family: var(--font);
    font-size: 13px;
    color: var(--ink);
}

.nols-facet-filters .facetwp-type-fselect .fs-wrap {
    width: 100%;
	outline: none !important;
}

.nols-facet-filters .facetwp-type-fselect .fs-wrap .fs-label {
    padding: 0;
}
.nols-facet-filters .facetwp-type-fselect .fs-wrap .fs-dropdown {
    font-size: 13px;
}
.nols-facet-filters .facetwp-type-fselect .fs-wrap .fs-label-wrap {
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
/*     background-image: url(data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234a5c52' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E);
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 12px; */
    padding-right: 32px;
    width: 100%;
    background: var(--white);
    border: 1px solid var(--fog);
    border-radius: 8px;
    padding: 11px 12px;
    font-family: var(--font);
    font-size: 13px;
    color: var(--ink);
    margin-bottom: 6px;
}

.nols-facet-filters .facetwp-type-fselect .fs-wrap .fs-arrow {
    right: 15px;
}

.uabb-offcanvas .frm_display_format_buttons .frm_label_button_container {
    border-radius: 100px;
    padding: 7px 18px;
}

.uabb-offcanvas .frm_display_format_buttons .frm_checkbox input[type=checkbox]:checked+.frm_label_button_container {
    background-color: var(--ember);
    border-color: var(--ember);
}

/* Results grid */
.cf-list .fl-post-grid {
    display: flex;
    flex-wrap: wrap;
}

.cf-list .fl-post-column .fl-post-grid-post {
    height: 100% !important;
}

.cf-card {
    background: var(--white);
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid var(--fog);
    height: 100%;
    transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
    -webkit-transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
    -moz-transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
    -ms-transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
    -o-transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-card:hover {
    border-color: var(--lichen);
    box-shadow: 0 16px 40px rgba(13, 17, 15, 0.08);
    transform: translateY(-2px);
}

.cf-card-link {
    display: block;
    text-decoration: none;
    color: inherit;
}

.cf-card-img {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    background-color: var(--snow);
}

.cf-card-img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.cf-card-badges {
    position: absolute;
    top: 12px;
    left: 12px;
    right: 12px;
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.nols-session-card-spaceavail {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 100px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    line-height: 1.4;
}

.cf-badge-pick {
    background: var(--ember);
    color: var(--white);
}

.nols-session-card-spaceavail.nullspaces,
.nols-session-card-spaceavail.cf-spaceavail {
    background: var(--white);
    color: var(--ink);
    border: 1px solid var(--fog);
}

.nols-session-card-spaceavail.cf-badge-full {
    background: var(--ink);
    color: var(--white);
    border: 1px solid var(--ink);
}

.cf-card-body {
    padding: 18px 20px 22px;
}

.cf-card-title {
    font-family: var(--font);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -0.01em;
    color: var(--ink);
    margin: 0 0 14px;
    min-height: 2.5em;
}

.cf-card:hover .cf-card-title {
    color: var(--ember);
}

.cf-card-meta {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 13px;
}

.cf-meta-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    line-height: 1.4;
}

.cf-meta-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--lichen);
    flex-shrink: 0;
}

.cf-meta-val {
    color: var(--ink);
    text-align: right;
    font-weight: 500;
}

.cf-tuition-row {
    padding-top: 8px;
    margin-top: 4px;
    border-top: 1px solid var(--fog);
}

.cf-tuition {
    font-weight: 700;
    font-size: 15px;
    color: var(--ember);
}

.courseFilterSidebar .theiaStickySidebar {
    padding-right: 8px;
}

.courseFilterSidebar.is-sticky .theiaStickySidebar {
    max-height: calc(100vh - 100px);
    overflow-y: auto;
    /* top: 20px !important; */
}

.courseFilterSidebar .theiaStickySidebar::-webkit-scrollbar {
    width: 6px;
}

.courseFilterSidebar .theiaStickySidebar::-webkit-scrollbar-thumb {
    background: var(--fog);
    border-radius: 3px;
}

body .mobile-filter-btn .uabb-button {
    font-weight: 600 !important;
    font-size: 15px !important;
    text-transform: capitalize;
    text-decoration: none;
    border-style: solid;
    border-width: 0;
    color: var(--white) !important;
    background-color: var(--ember) !important;
    border-color: var(--ember);
    border-top-width: 2px !important;
    border-right-width: 2px !important;
    border-bottom-width: 2px !important;
    border-left-width: 2px !important;
    border-top-left-radius: 100px !important;
    border-top-right-radius: 100px !important;
    border-bottom-left-radius: 100px !important;
    border-bottom-right-radius: 100px !important;
}

body .mobile-filter-btn .uabb-button .uabb-button-text {
    color: #fff !important;
}


/* Pagination */
body .fl-builder-pagination ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 48px;
}

body .fl-builder-pagination ul li .page-numbers {
    width: 38px;
    height: 38px;
    padding: 0 12px;
    border-radius: 100px;
    background: var(--white);
    border: 1px solid var(--fog);
    color: var(--ink);
    font-family: var(--font);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all var(--dur) var(--ease);
    cursor: pointer;
}

body .fl-builder-pagination ul li .page-numbers.prev,
body .fl-builder-pagination ul li .page-numbers.next {
    width: auto;
    height: 38px;
    margin-top: -5px;
}

body .fl-builder-pagination ul li .page-numbers:hover {
    border-color: var(--lichen);
    color: var(--ember);
}

body .fl-builder-pagination ul li .page-numbers.current {
    background: var(--ink);
    color: var(--white);
    border-color: var(--ink);
}

body .fl-builder-pagination ul li .page-numbers.is-disabled {
    opacity: 0.4;
    pointer-events: none;
}

body .fl-builder-pagination ul li .page-numbers.dots {
    color: var(--lichen);
    border: 0;
    height: auto;
    width: auto;
    padding: 0 4px;
}

/* Product Category Archive */
.course-hero-box>.fl-module-box:first-child {
    border-left: 0 !important;
}

.product-category-testimonial .uabb-testimonials.box .uabb-testimonial {
    display: table;
    border-radius: 16px;
    border: 1px solid var(--fog);
    padding: 0 32px 32px;
}

.product-category-testimonial .testimonial-arrow-down {
    display: none !important;
}

.product-category-hero-gallery {
    overflow: hidden;
}

.product-category-hero-gallery .uabb-image-carousel,
.product-category-hero-gallery .slick-list,
.product-category-hero-gallery .slick-track,
.product-category-hero-gallery .uabb-image-carousel-content,
.product-category-hero-gallery .uabb-gallery-img {
    height: 100% !important;
}

.product-category-hero-gallery .uabb-gallery-img {
    object-fit: cover;
}

.related-courses .related-scroll {
    grid-template-columns: repeat(4, 1fr);
}

.related-courses .related-scroll .related-card-price {
    padding-top: 0;
}

.related-courses .related-card-meta img {
    max-width: 13px;
}

.course-code-details {
    background: #fff;
    border-radius: 12px;
}

.course-code-details .nols-session-flex-container {
    margin-bottom: 0;
}

.course-code-details .fl-post-feed-post {
    padding: 10px 20px;
    border-bottom: 1px solid var(--fog);
}

.course-code-details .fl-post-feed-post:last-child {
    border-bottom: 0;
}

.course-code-details .nols-session-flex-box p {
    margin-bottom: 5px;
}

.course-code-details .nols-tuition {
    padding-right: 10px;
}

.course-code-details .fl-post-grid-empty {
    padding: 10px;
    text-align: center;
}

.course-code-details .fl-post-grid-empty p {
    margin: 0 !important;
}

/* .product-sidebar .theiaStickySidebar{
    transform: translateY(100px) !important;
    -webkit-transform: translateY(100px) !important;
    -moz-transform: translateY(100px) !important;
    -ms-transform: translateY(100px) !important;
    -o-transform: translateY(100px) !important;
} */

/** Responsive css **/


@media screen and (min-width: 992px) {
    .skills-post-list .uabb-blog-posts .uabb-post-wrapper {
        width: calc(100% / 3);
    }

    .product-content-section.is-sticky > .fl-row-content-wrap {
        padding-bottom:160px;
    }
}

@media screen and (max-width: 1199px) {
    .product-category-archive-gallery .uabb-photo-gallery {
        grid-template-columns: repeat(3, 1fr);
    }

    .product-category-archive-gallery .uabb-photo-gallery-item:nth-child(10) {
        grid-column: span 1;
    }

    .product-category-archive-gallery .uabb-photo-gallery-item:nth-child(11) {
        grid-column: span 2;
    }

    .product-category-archive-gallery .uabb-photo-gallery-item:nth-child(16) {
        grid-column: span 2;
    }

    .product-category-archive-gallery .uabb-photo-gallery-item {
        height: 280px !important;
    }

    .related-courses .related-scroll {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 992px) {
    .product-content-section.product-category-content-section .fl-col-group {
        flex-direction: column-reverse;
    }
}
@media screen and (max-width: 991px) {
    body .fl-module-box .left-transform-text {
        position: unset;
        display: block;
        width: auto;
    }

    body .fl-module-box .left-transform-text>p {
        transform: none;
        white-space: unset;
    }

    .related-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .custom-image-box .uabb-infobox .uabb-infobox-title-wrap {
        padding: 20px;
    }

    .custom-course-loop-grid .uabb-blog-posts {
        grid-template-columns: repeat(2, 1fr);
    }

    .photo-strip-section.fl-module {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;
    }

    .photo-strip[data-count="4"] {
        grid-template-columns: 1fr 2fr;
        height: 750px;
    }
}

@media screen and (max-width: 768px) {
    .course-hero-box>.fl-module-box:last-child {
        border-bottom: 0 !important;
    }
}

@media screen and (max-width: 767px) {
    .event-icon-list .fl-list {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }

    .related-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .difficulty-grid {
        grid-template-columns: 2fr 2fr;
    }

    .cf-card-title {
        min-height: 0;
    }

    .nols-mobile-selection-result ul {
        text-align: center;
    }

    .related-courses .related-scroll {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 575px) {
    .custom-course-loop-grid .uabb-blog-posts {
        grid-template-columns: repeat(1, 1fr);
    }

    .photo-strip-section.fl-module {
        grid-template-columns: 1fr;
        grid-template-rows: 1fr 1fr 1fr 1fr;
    }

    .custom-course-loop-grid .courses-grid,
    .custom-course-loop-grid .uabb-blog-post-content,
    .custom-course-loop-grid .uabb-blog-post-inner-wrap {
        height: auto !important;
    }

    .learn-grid,
    .related-courses .related-scroll {
        grid-template-columns: 1fr;
    }



}

@media screen and (max-width: 480px) {
    .woocommerce-checkout-review-order-table .variation {
        grid-template-columns: 1fr;
    }

    body .woocommerce-checkout-review-order-table dl.variation dt {
        text-align: left;
        white-space: inherit;
    }

    .woocommerce-checkout-review-order-table .variation dd {
        padding-left: 0;
    }

    .woocommerce-checkout-review-order-table .product-name {
        margin-top: 40px;
    }

    .woocommerce-checkout-review-order-table .product-name,
    .woocommerce-checkout-review-order-table .product-remove,
    .woocommerce-checkout-review-order-table .product-total {
        grid-column: 1;
        grid-row: 1;
    }

    .photo-strip[data-count="4"] {
        grid-template-columns: 1fr;
        height: auto;
    }

    .credit-stats,
    .difficulty-grid {
        grid-template-columns: 1fr;
    }

    .credit-stat {
        padding-inline: 0;
        border: 0;
    }

    .product-category-archive-gallery .uabb-photo-gallery {
        grid-template-columns: 1fr;
    }

    .product-category-archive-gallery .uabb-photo-gallery-item {
        grid-column: auto !important;
    }
}

/* ============================================================
   Alumni course finder (/courses/alum/) — exp course-finder cosmetics
   Mirrors the cf-card + .nols-facet-filters styles (custom.css) onto the
   alum archive's nols-session-card / facet markup. Styles only — markup
   and facets untouched. Scoped to the alum product-cat archive.
   ============================================================ */

/* --- Results grid: flex + equal-height cards --- */
.tax-product_cat.term-alum .facetwp-template .fl-post-grid {
    display: flex;
    flex-wrap: wrap;
}

.tax-product_cat.term-alum .facetwp-template .fl-post-column .fl-post-grid-post {
    height: 100% !important;
}

/* --- Card shell --- */
.tax-product_cat.term-alum .facetwp-template .nols-session-card {
    background: var(--white);
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid var(--fog);
    height: 100%;
    box-shadow: none;
    transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.tax-product_cat.term-alum .facetwp-template .nols-session-card:hover {
    border-color: var(--lichen);
    box-shadow: 0 16px 40px rgba(13, 17, 15, 0.08);
    transform: translateY(-2px);
}

/* --- Card image --- */
.tax-product_cat.term-alum .facetwp-template .nols-session-card-image {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    background-color: var(--snow);
    margin: 0;
}

.tax-product_cat.term-alum .facetwp-template .nols-session-card-image a {
    display: block;
    height: 100%;
}

.tax-product_cat.term-alum .facetwp-template .nols-session-card-image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

/* --- Card body --- */
.tax-product_cat.term-alum .facetwp-template .nols-session-card-content {
    padding: 18px 20px 22px;
}

.tax-product_cat.term-alum .facetwp-template h6.nols-session-card-title {
    font-family: var(--font);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -0.01em;
    margin: 0 0 14px;
    min-height: 2.5em;
}

.tax-product_cat.term-alum .facetwp-template h6.nols-session-card-title a {
    color: var(--ink) !important;
    text-decoration: none;
    transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.tax-product_cat.term-alum .facetwp-template .nols-session-card:hover h6.nols-session-card-title a {
    color: var(--ember) !important;
}

/* --- Meta rows (Dates / Length / Tuition) --- */
.tax-product_cat.term-alum .facetwp-template .nols-session-card-columns {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    line-height: 1.4;
    font-size: 13px;
    margin-bottom: 6px;
}

.tax-product_cat.term-alum .facetwp-template .nols-session-card-col1 {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--lichen);
    flex-shrink: 0;
    width: auto;
}

.tax-product_cat.term-alum .facetwp-template .nols-session-card-col2 {
    color: var(--ink);
    text-align: right;
    font-weight: 500;
    width: auto;
}

/* Tuition = last meta row */
.tax-product_cat.term-alum .facetwp-template .nols-session-card-columns:last-child {
    padding-top: 8px;
    margin-top: 4px;
    margin-bottom: 0;
    border-top: 1px solid var(--fog);
}

.tax-product_cat.term-alum .facetwp-template .nols-session-card .nols-tuition {
    font-weight: 700;
    font-size: 15px;
    color: var(--ember);
}

/* ============================================================
   Sidebar / off-canvas facets — mirror of .nols-facet-filters styles
   Scoped to the whole alum archive so both the desktop sidebar and the
   mobile off-canvas facets pick them up.
   ============================================================ */

/* Facet group headings (alum markup has bare h6, no .nols-facet-title) */
.tax-product_cat.term-alum .facet-filters h6,
.tax-product_cat.term-alum .uabb-offcanvas h6 {
    width: 100%;
    background: none;
    border: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ink);
    margin-bottom: 12px;
}

/* Search box */
.tax-product_cat.term-alum .facetwp-facet input.facetwp-search {
    width: 100%;
    background: var(--white);
    border: 1px solid var(--fog);
    border-radius: 100px;
    padding: 9px 16px 9px 38px;
    font-size: 14px;
    color: var(--ink);
    font-family: "DM Sans", sans-serif;
    transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.tax-product_cat.term-alum .facetwp-facet input.facetwp-search:focus {
    outline: none;
    border-color: var(--ember);
    box-shadow: 0 0 0 3px var(--ember-glow);
}

.tax-product_cat.term-alum .facetwp-icon {
    right: unset;
    left: 10px;
    font-size: 12px;
}

.tax-product_cat.term-alum .facetwp-icon:before {
    width: 25px;
    background-size: 15px 15px;
}

/* Checkboxes */
.tax-product_cat.term-alum .facetwp-facet .facetwp-checkbox {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    cursor: pointer;
    font-size: 13px;
    color: var(--sage);
    transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
    padding: 4px 0;
    background-image: none;
}

.tax-product_cat.term-alum .facetwp-facet .facetwp-checkbox span.facetwp-display-value {
    position: relative;
    display: flex;
}

.tax-product_cat.term-alum .facetwp-facet .facetwp-checkbox span.facetwp-display-value:before {
    content: "";
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    max-width: 16px;
    display: inline-block;
    top: 4px;
    margin-right: 8px;
    border: 1px solid var(--lichen);
    border-radius: 4px;
    background: var(--white);
    position: relative;
    transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1), background 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.tax-product_cat.term-alum .facetwp-facet .facetwp-checkbox.checked span.facetwp-display-value:before {
    background: var(--ember);
    border-color: var(--ember);
}

.tax-product_cat.term-alum .facetwp-facet .facetwp-checkbox span.facetwp-display-value:after {
    content: "";
    position: absolute;
    top: 6px;
    left: 5px;
    width: 5px;
    height: 9px;
    border: solid var(--white);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    opacity: 0;
}

.tax-product_cat.term-alum .facetwp-facet .facetwp-checkbox.checked span.facetwp-display-value:after {
    opacity: 1;
}

/* Reset button */
.tax-product_cat.term-alum .facetwp-facet.facetwp-facet-reset {
    text-align: left;
    margin: 0 0 16px !important;
}

.tax-product_cat.term-alum .facetwp-facet.facetwp-facet-reset button.facetwp-reset {
    border-radius: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    color: var(--ember);
    background: none;
    border: none;
    padding: 0 0 0 20px;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    position: relative;
}

.tax-product_cat.term-alum .facetwp-facet.facetwp-facet-reset button.facetwp-reset:before {
    content: "";
    background-image: url(../images/cross-red-circle.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 14px;
    height: 15px;
    width: 15px;
    position: absolute;
    left: 0;
}

/* Selections */
.tax-product_cat.term-alum .facetwp-selections {
    margin-top: 20px;
}

.tax-product_cat.term-alum .facetwp-selections ul {
    padding: 0;
}

/* Date range inputs */
.tax-product_cat.term-alum .facet-date .facetwp-facet .facetwp-date {
    width: 100%;
    background: var(--white);
    border: 1px solid var(--fog);
    border-radius: 8px;
    padding: 8px 12px;
    font-family: var(--font);
    font-size: 13px;
    color: var(--ink);
}

/* fSelect dropdowns (Country / State / City) */
.tax-product_cat.term-alum .facetwp-type-fselect .fs-wrap {
    width: 100%;
}

.tax-product_cat.term-alum .facetwp-type-fselect .fs-wrap .fs-label {
    padding: 0;
}

.tax-product_cat.term-alum .facetwp-type-fselect .fs-wrap .fs-label-wrap {
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
/*     background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234a5c52' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 12px; */
    width: 100%;
    background-color: var(--white);
    border: 1px solid var(--fog);
    border-radius: 8px;
    padding: 11px 32px 11px 12px;
    font-family: var(--font);
    font-size: 13px;
    color: var(--ink);
    margin-bottom: 6px;
}

.tax-product_cat.term-alum .facetwp-type-fselect .fs-wrap .fs-arrow {
    right: 15px;
}

/* Course count ("9 Courses") */
.tax-product_cat.term-alum .facetwp-counts {
    font-size: 13px;
    color: var(--sage);
    font-weight: 500;
}

/* --- Top spacing: clear the transparent header (mirrors exp hero row 150/130px) --- */
.tax-product_cat.term-alum .fl-node-73gqj4vf9so1>.fl-row-content-wrap {
    padding-top: 150px;
    padding-bottom: 50px;
}

@media (max-width: 768px) {
    .tax-product_cat.term-alum .fl-node-73gqj4vf9so1>.fl-row-content-wrap {
        padding-top: 130px;
    }
}

/* --- Off-canvas triggers (Filter Courses / Start Your Search) are the mobile
       coursefinder experience; hide on desktop like exp does --- */
@media (min-width: 769px) {

    .tax-product_cat.term-alum .fl-node-rto9wc6fsepm,
    .tax-product_cat.term-alum .fl-node-ztobpishjdx1 {
        display: none;
    }
}

/* --- Sort select: exp pill style --- */
.tax-product_cat.term-alum .facetwp-type-sort select {
    appearance: none;
    -webkit-appearance: none;
    background: var(--white);
    border: 1px solid var(--fog);
    border-radius: 100px;
    padding: 6px 36px 6px 16px;
    font-family: "DM Sans", sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--ink);
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234a5c52' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 14px;
    transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}

.tax-product_cat.term-alum .facetwp-type-sort select:hover {
    border-color: var(--lichen);
}