/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** SECTION 1 - START HERE   ***************/

h1, .h1, .banner h1, h1.uppercase {
	font-size: 3.9em;
	line-height: 1.1em;
    font-weight: 500 !important;
	margin-bottom: .1em;
}
h2, .h2, .banner h2, h2.uppercase{
	font-size: 2.5em;
    line-height: 1.15em;
    margin-bottom: .2em;
}
h3, .h3, .banner h3, h3.uppercase {
	font-size: 1.95em;
    line-height: 1.25em;
    margin-bottom: .25em;
}
h4, .h4, .banner h4, h4.uppercase {
	font-size: 1.3em;
    line-height: 1.3em;
    margin-bottom: .25em;
}
.dark p {
		color: #ffffff;
}
.uppercase{
    letter-spacing: 0 !important;
}

/** HEADER + MENUS + OFF CANVAS **/

#masthead:not(.stuck #masthead) .header-nav-main.nav-right {
    border-bottom: 2px solid var(--secondary-color);
    padding-bottom: 5px;
}
.transparent .nav-dark .nav>li>a, #top-bar a{
    color: #fff;
}
.transparent .nav-dark .nav>li>a:hover, .button.primary i, .button.white i, .off-canvas .sidebar-menu a:not(.button):not(.social-icons a):hover{
    color: var(--secondary-color);
}
.off-canvas-left .mfp-content, .off-canvas-right .mfp-content{
    background-color: #fff;
}
.off-canvas .sidebar-menu a:not(.button):not(.social-icons a){
    color: var(--primary-color);
    font-size: .9em;
    font-weight: 600;
}

/* BUTTONS */

.button {
    letter-spacing: 0;
}
.button .icon-angle-right:before { 
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    content: '\f061' !important;
    font-size: 90%;
}
.dark .button.secondary.is-outline span, .button.secondary.is-outline:not(.dark .button.secondary.is-outline):hover span, .dark .button.success.is-outline span, .button.success.is-outline:hover span, .dark .button.success.is-outline:hover span, .button.success.is-outline:hover i{
    color: #fff !important;
}
.button.secondary.is-outline:not(.dark .button.secondary.is-outline) span, .button.success.is-outline:not(.dark .button.success.is-outline) span, .button.white:not(.is-link,.is-underline,.is-outline) span, .button.white:not(.is-link,.is-underline):hover span{
    color: var(--primary-color);
}
.button.success.is-outline i{
    color: var(--secondary-color);
}

/** OTHER STYLES **/

.hero-gradient:before{
    content: '';
    display: block;
    z-index: 1;
    position: absolute;
    height: 100%;
    overflow: hidden;
    width: 100%;
    background: linear-gradient(to right, rgba(31,47,31,0.77) 0%,rgba(31,47,31,0.77) 25%,rgba(31,47,31,0.33) 68%,rgba(31,47,31,0.06) 100%);
    /*Permalink: https://colorzilla.com/gradient-editor/#1f2f1f+0,1f2f1f+100&0.77+25,0.33+68,0.06+100*/ 
}
.corner-angle{
    border-radius: 0 0 120px 0;
    -webkit-border-radius: 0 0 120px 0;
    -moz-border-radius: 0 0 120px 0;
    corner-shape: bevel;
    overflow: hidden;
}
.tl-br-corner-angle {
    border-radius: 90px 0 90px 0;
    -webkit-border-radius: 90px 0 90px 0;
    -moz-border-radius: 90px 0 90px 0;
    corner-shape: bevel;
    overflow: hidden;
}
.tl-corner-angle{
    border-radius: 90px 0 0 0;
    -webkit-border-radius: 90px 0 0 0;
    -moz-border-radius: 90px 0 0 0;
    corner-shape: bevel;
    overflow: hidden;
}
.section-title-center span{
    margin: 6px 15px;
}
.section-title b{
    background-color: #f1ebe4;
    opacity: 1;
}
.section-boxed{
	margin-right: 3%;
	margin-left: 3%;
	width: inherit;
}
.banner h2, .banner h3, .banner h4, .banner h5, .banner h6, .banner p{
    margin-top: 0;
    margin-bottom: .1em;
}
ul li.bullet-arrow, ul li.bullet-checkmark, ul li.bullet-star, ul li.bullet-cross{
    border: none;
    padding: 5px 0 5px 23px;
}
ul li.bullet-arrow:before, ul li.bullet-checkmark:before, ul li.bullet-star:before{
    color: var(--secondary-color);
}
ul li::marker, ol li::marker{
    color: var(--secondary-color);
}
.slider .flickity-page-dots{
    bottom: -20px;
}
.flickity-page-dots .dot.is-selected{
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
}


/* ===============================
    CPT
=================================*/

.cpt-sidebar {
    background: url('/wp-content/uploads/2026/07/bg-courses-1.jpg');
    padding: 1em 1em 0 1em;
    margin-top: -150px;
    position: relative;
    z-index: 100;
    margin-bottom: 2em;
}

.row-main.negative .col-inner {
    background: #fff;
    border-bottom: solid 5px #333;
    margin-top: -100px;
    position: relative;
    border-radius: 80px 0 0 0;
    -webkit-border-radius: 80px 0 0 0;
    -moz-border-radius: 80px 0 0 0;
    corner-shape: bevel;
    overflow: hidden;
    padding: 4em 3.25em 1em 4em;
}

.extra-box {
    background-color: #f5f1ee;
    border-radius: 80px 0 0 0;
    -webkit-border-radius: 80px 0 0 0;
    -moz-border-radius: 80px 0 0 0;
    corner-shape: bevel;
    overflow: hidden;
    padding: 4em 3.25em 0em 4em;
    margin-bottom: 2em;
}

.negative-archive {
    margin-top: -210px;
    position: relative;
    z-index: 100;
}

.negative-archive .col-inner {
    background-color: #f5f1ee;
}


.post-type-archive-student-projects .negative-archive .col-inner {
    padding: 1em 1em 0 1em;
}

.negative-archive .col-inner .extra-padding {
    padding: 1.5em;
}

blockquote {
    border-left: 2px solid var(--fs-color-secondary);
    font-size: 1.3em;
    margin: 0 1.5em 1.25em 1.5em;
}

.row-main.negative ul li, .row-main.negative ol li {
    margin-left: 2em;
}

.gallery-icon.portrait p {
    background: #efefef;
    font-weight: normal;
    padding: .5em;
    font-size: .9em;
}

.gallery-icon.portrait img:hover {
    opacity: .4;
}

.testimony {
    font-style: italic;
    font-size: 1.1em;
}

.no-results {
    padding: 2.2em;
}
.single-courses-and-projects h1{
    font-size: 3.4em;
}
.single-courses-and-projects .gallery-item, .single-student-projects .gallery-item{
    padding-bottom: 15px;
}

/* ===============================
    FACETWP
=================================*/


input[type=button].facetwp-slider-reset {
    display: none !important;
}

.facetwp-facet {
    margin-bottom: 0 !important;
}

.facetwp-type-search .facetwp-input-wrap {
    width:100%;

}

.facetwp-facet input.facetwp-search {
    margin: 0;
    padding-right: 30px;
    min-width: 100% !important;
    max-width: 100% !important;
}

.facetwp-type-proximity .facetwp-input-wrap {
    float: left;
    margin-right: 1em !important;
}

.facetwp-facet input.facetwp-search, .facetwp-facet input.facetwp-location, .facetwp-dropdown, .tribe-events .tribe-events-c-events-bar .tribe-common-form-control-text__input, .facetwp-radius.facetwp-radius-dropdown, .facetwp-facet select{
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;   
}

.facetwp-pager {
    text-align: center;
    margin-bottom: 1em;
}

.facetwp-page {
    font-size: 1.1em;
    display: block;
    height: 2.25em;
    line-height: 2em;
    text-align: center;
    width: auto;
    min-width: 2.25em;
    padding: 0 7px;
    font-weight: bolder;
    border-radius: 99px;
    border: 2px solid currentColor;
    transition: all .3s;
    vertical-align: top;
}

.facetwp-pager-label {
    display: none !important;
}

.facetwp-page.active {
    background-color: var(--secondary-color);
    border: 2px solid var(--secondary-color);
    color: #fff;
}

a.facetwp-page {
    border: 2px solid currentColor;
} 

.facetwp-selection-label {
    display: none;
}

.facetwp-selection-value {
    margin-bottom: 0.5em;
    padding: 0.8em 1.5em;
    background: var(--secondary-color);
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;   
    display: block;
    width: 100%;
    font-size: .8em;
    color: #fff;
}

.facetwp-radius.facetwp-radius-dropdown {
    width: 50%;
    position: relative;
}

.facetwp-selections .facetwp-selection-value {
    background-position: 95% center !important;
 
}

.facetwp-selections ul {
    margin-bottom: 0;
}

.facetwp-selections ul li {
    margin-left: 0;
    width: 100%;
}


.facetwp-facet-school_proximity {
    padding: 1em 0 0 0;
}

.facetwp-counter {
    display: none;
}

.location-results {
    z-index: 10;
}

.facetwp-facet-alpha .facetwp-alpha.available {
    color: var(--alert-color) !important;
}

.facetwp-flyout-content  {
    padding: 10px 1.5em !important;
}

.facetwp-flyout-content h3 {
    font-family: 'Barlow Condensed', sans-serif;
    letter-spacing: 0;
    font-size: 1.5em;
    text-transform: uppercase;
    font-weight: 600;
    margin-top: 1.5em;
    padding-bottom: 0.5em;
    margin-bottom: 0.5em;
}

.facetwp-flyout-content h3:after {
    background-color: var(--secondary-color);
    display: block;
    height: 3px;
    margin: .8em 0 0 0;
    max-width: 30px;
    width: 100%;
    content:'';
}

.facetwp-flyout {
    position: fixed;
    width: 300px;
    max-width: 100%;
    top: 0;
    height: 100%;
    z-index: 9999;
    background: #e4e4e4 !important;
    border-right: 1px solid #eee;
    transition: all 400ms ease-in-out;
    transform: translateX(-100%);
}


/*************** SECTION 2 - MOBILE QA FIXES ONLY  ***************/
@media only screen and (max-width: 549px) {
    h1, .h1, .banner h1, h1.uppercase, .single-courses-and-projects h1 {
		font-size: 2.4em;
    }
    h2, .h2, .banner h2, h2.uppercase{
		font-size: 1.8em;
    }
    h3, .h3, .banner h3, h3.uppercase {
		font-size: 1.5em;
    }
    h4, .h4, .banner h4, h4.uppercase {
		font-size: 1.2em;
    }
    .transparent .header-main{
        height: 85px !important;
    }
    .transparent #logo img {
        max-height: 85px !important;
    }
    .tl-br-corner-angle {
        border-radius: 50px 0 50px 0;
        -webkit-border-radius: 50px 0 50px 0;
        -moz-border-radius: 50px 0 50px 0;
    }
    .corner-angle{
        border-radius: 0 0 60px 0;
        -webkit-border-radius: 0 0 60px 0;
        -moz-border-radius: 0 0 60px 0;
    }
    .tl-corner-angle{
        border-radius: 60px 0 0 0;
        -webkit-border-radius: 60px 0 0 0;
        -moz-border-radius: 60px 0 0 0;
    }
    .hero-gradient:before{
        /* Permalink - https://colorzilla.com/gradient-editor/#1f2f1f+0,1f2f1f+100&0.77+25,0.33+100 */
        background: linear-gradient(to right, rgba(31,47,31,0.77) 0%,rgba(31,47,31,0.77) 25%,rgba(31,47,31,0.33) 100%);
    }
    .section-boxed{
        margin-left: 2.5%;
        margin-right: 2.5%;
    }
    .extra-box {
        border-radius: 40px 0 0 0;
        -webkit-border-radius: 40px 0 0 0;
        -moz-border-radius: 40px 0 0 0;
        padding: 2em 1.75em 0em 2em;
    }
    .row-main.negative .col-inner {
        border-radius: 40px 0 0 0;
        -webkit-border-radius: 40px 0 0 0;
        -moz-border-radius: 40px 0 0 0;
        padding: 2em 1.75em 1em 2em;
        margin-top: -40px;
    }
    blockquote {
        font-size: 1.1em;
        margin: 0 0.5em 1.25em 0.5em;
    }
}   
/*************** SECTION 3 - MEDIUM GRID AND UP  ***************/
@media only screen and (min-width: 550px) and (max-width: 850px) {
    h1, .h1, .banner h1, h1.uppercase, .single-courses-and-projects h1 {
		font-size: 3.3em;
    }
    h2, .h2, .banner h2, h2.uppercase{
		font-size: 2.1em;
    }
    h3, .h3, .banner h3, h3.uppercase {
		font-size: 1.75em;
    }
    h4, .h4, .banner h4, h4.uppercase {
		font-size: 1.25em;
    }
    .transparent .header-main{
        height: 85px !important;
    }
    .transparent #logo img {
        max-height: 85px !important;
    }
    .tl-br-corner-angle {
        border-radius: 70px 0 70px 0;
        -webkit-border-radius: 70px 0 70px 0;
        -moz-border-radius: 70px 0 70px 0;
    }
    .corner-angle{
        border-radius: 0 0 80px 0;
        -webkit-border-radius: 0 0 80px 0;
        -moz-border-radius: 0 0 80px 0;
    }
    .tl-corner-angle{
        border-radius: 80px 0 0 0;
        -webkit-border-radius: 80px 0 0 0;
        -moz-border-radius: 80px 0 0 0;
    }
    .hero-gradient:before{
        /* Permalink - https://colorzilla.com/gradient-editor/#1f2f1f+0,1f2f1f+100&0.77+25,0.33+100 */
        background: linear-gradient(to right, rgba(31,47,31,0.77) 0%,rgba(31,47,31,0.77) 25%,rgba(31,47,31,0.33) 100%); 
    }
    .section-boxed{
        margin-left: 2.5%;
        margin-right: 2.5%;
    }
    .extra-box {
        border-radius: 60px 0 0 0;
        -webkit-border-radius: 60px 0 0 0;
        -moz-border-radius: 60px 0 0 0;
        padding: 3em 2.5em 0em 3em;
    }
    .row-main.negative .col-inner {
        border-radius: 60px 0 0 0;
        -webkit-border-radius: 60px 0 0 0;
        -moz-border-radius: 60px 0 0 0;
        padding: 3em 2.5em 1em 3em;
        margin-top: -80px;
    }
    blockquote {
        font-size: 1.2em;
    }

}

/*************** SECTION 3 - MEDIUM GRID AND UP  ***************/
@media only screen and (min-width: 850px) and (max-width: 1125px) {
    .nav-spacing-xlarge>li {
        margin: 0px 9px;
    }
    .nav-size-large>li>a {
        font-size: .95em;
    }
    #logo {
        width: 210px !important;
    }
}

/*************** SECTION 4 - DESKTOP AND UP  ***************/
@media only screen and (min-width: 1000px) {
    
}