@layer framework, utils, ogulcan, connor, zoe;
@font-face {
font-family:'Playfair Display';
font-display:swap;
font-style:normal;
font-weight:400 900;
src:url(https://goodshep.exceleron.dev/assets/files/fonts/playfairdisplay-variablefont-wght.ttf) format('truetype');
}
@font-face {
font-family:'Playfair Display';
font-display:swap;
font-style:italic;
font-weight:400 900;
src:url(https://goodshep.exceleron.dev/assets/files/fonts/playfairdisplay-italic-variablefont-wght.ttf) format('truetype');
}
@font-face {
font-family:'Roboto';
font-display:swap;
font-style:normal;
font-weight:100 900;
src:url(https://goodshep.exceleron.dev/assets/files/fonts/roboto-variablefont-wdth,wght.ttf) format('truetype');
}
@font-face {
font-family:'Roboto';
font-display:swap;
font-style:italic;
font-weight:100 900;
src:url(https://goodshep.exceleron.dev/assets/files/fonts/roboto-italic-variablefont-wdth,wght.ttf) format('truetype');
}
@layer utils {
    :root {
    --roboto: 'Roboto', sans-serif; 
    --playfair-display: 'Playfair Display', serif;
    --sm: 35px;
    --md: 95px;
    --lg: 120px;
    --xl: 170px;
    --display-1: 50px;
    --display-2: 48px;
    --fz-title-1: 44px;
    --fz-title-2: 40px;
    --fz-title-3: 30px;
    --fz-title-4: 21px;
    --fz-title-5: 18px;
    --fz-title-6: 16px;
    --fz-content-base: var(--fz-title-6);
    --bs-border-radius: 10px;
    --header-font: var(--playfair-display);
    --nav-height:136px;
    font-size: var(--fz-content-base);
}
@media (min-width:768px){
    :root{
        --fz-title-1: 72px;
        --display-1: 90px;
        --display-2: 80px;
    }
}
@media (min-width:992px){
    :root{
        --display-2: 90px;
    }
}
@media (min-width:1400px){
    :root {
        --display-1: 100px;
    }
}
[data-sal] {
        --sal-easing: cubic-bezier(.25, .46, .45, .94);
    }
body{
    width:100%;
    overflow-x:hidden;
    font-family:var(--roboto);
    position:Relative;
    & p{
        font-size:21px;
        line-height:30px;
        letter-spacing:0.025em;
    }
}
body.loader-active:not(.loaded) > *:not(.loader-wrapper) {
    content-visibility: hidden;
}
main{
    position:Relative;
}
h1, .h1,
h2, .h2,
.header-font{
    font-family:var(--header-font), serif;
    font-weight:400;
}
h1, .h1{
    font-weight:400;
    font-size:var(--fz-title-1);
    line-height:1;
    color:var(--bs-dark);
}
h2, .h2{
    font-size:var(--fz-title-2);
    line-height:calc(36 / 32);
    font-weight:400;
    color:var(--bs-dark);
    margin-bottom:.75rem;
}
h3, .h3{
    font-size:var(--fz-title-3);
    line-height:36px;
    font-weight:400;
    color:var(--bs-dark);
}
h4, .h4{
    font-size:var(--fz-title-4);
    line-height:30px;
    font-weight:400;
    color:var(--bs-dark);
}
h5, .h5{
    font-size:var(--fz-title-5);
    line-height:calc(36 / 21);
    color:inherit;
    font-weight:400;
}
h6, .h6{
    font-size:var(--fz-title-6);
    font-weight:400;
}
.display-1{
    font-size:var(--display-1);
    line-height:calc(74 / 100);
    font-weight:800;
}
.display-2{
    font-size:var(--display-2);
    line-height:1;
    font-weight:400;
    font-family:var(--header-font), serif;
    letter-spacing:0.025em;
}
.lead{
    font-size:24px;
    line-height:34px;
}
img[width][height] {
    content-visibility: auto;
}
img {
    max-width: 100%;
    height: auto;
}
.roboto{
    font-family:var(--roboto);
}
.btn{
    --bs-btn-font-family: var(--roboto);
    --bs-btn-border-radius: 40px;
    --bs-btn-font-size: var(--fz-title-4);
    --bs-btn-padding-x: 1.5rem;
    --bs-btn-padding-y: 1.407rem;
    --bs-btn-border-width: 2px;
    --bs-btn-font-weight: 400;
    line-height:1;
    letter-spacing:0.025em;
    @media(min-width:768px){
       --bs-btn-padding-x: 2.675rem; 
    }
}
.btn-sm{
    --bs-btn-padding-y: 0.75rem;
    line-height:22px;
}
.btn-secondary {
    --bs-btn-color: var(--bs-dark);
    --bs-btn-bg: var(--bs-secondary);
    --bs-btn-border-color: var(--bs-secondary);
    --bs-btn-hover-color: var(--bs-secondary);
    --bs-btn-hover-bg: var(--bs-dark);
    --bs-btn-hover-border-color: var(--bs-secondary);
    --bs-btn-focus-shadow-rgb: var(--bs-secondary-tgb);
    --bs-btn-active-color: var(--bs-dark);
    --bs-btn-active-bg: var(--bs-secondary);
    --bs-btn-active-border-color: var(--bs-secondary);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(var(--bs-secondary-rgb), 0.125);
    --bs-btn-disabled-color: var(--bs-dark);
    --bs-btn-disabled-bg: var(--bs-secondary);
    --bs-btn-disabled-border-color: var(--bs-secondary);
}
.btn-primary {
        --bs-btn-color: #fff;
        --bs-btn-bg: var(--bs-primary);
        --bs-btn-border-color: var(--bs-primary);
        --bs-btn-hover-color: var(--bs-primary);
        --bs-btn-hover-bg: #fff;
        --bs-btn-hover-border-color:var(--bs-primary);
        --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
        --bs-btn-active-color: #fff;
        --bs-btn-active-bg: var(--bs-primary);
        --bs-btn-active-border-color: var(--bs-primary);
        --bs-btn-active-shadow: inset 0 3px 5px rgba(var(--bs-primary-rgb), 0.125);
        --bs-btn-disabled-color: #fff;
        --bs-btn-disabled-bg: var(--bs-primary);
        --bs-btn-disabled-border-color: var(--bs-primary);
    }
.btn-info {
    --bs-btn-color: var(--bs-light-yellow);
    --bs-btn-bg: var(--bs-info);
    --bs-btn-border-color: var(--bs-info);
    --bs-btn-hover-color: var(--bs-info);
    --bs-btn-hover-bg: var(--bs-light-yellow);
    --bs-btn-hover-border-color: var(--bs-info);
    --bs-btn-focus-shadow-rgb: var(--bs-info-rgb);
    --bs-btn-active-color: var(--bs-info);
    --bs-btn-active-bg: var(--bs-light-yellow);
    --bs-btn-active-border-color: var(--bs-info);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(var(--bs-info-rgb), 0.125);
    --bs-btn-disabled-color: var(--bs-light-yellow);
    --bs-btn-disabled-bg: var(--bs-info);
    --bs-btn-disabled-border-color: var(--bs-info);
}
.btn-warning {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--bs-warning);
    --bs-btn-border-color: var(--bs-warning);
    --bs-btn-hover-color: var(--bs-warning);
    --bs-btn-hover-bg: #fff;
    --bs-btn-hover-border-color: var(--bs-warning);
    --bs-btn-focus-shadow-rgb: var(--bs-warning-rgb);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-warning);
    --bs-btn-active-border-color: var(--bs-warning);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(var(--bs-warning-rgb), 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--bs-warning);
    --bs-btn-disabled-border-color: var(--bs-warning);
}
.btn-light {
    --bs-btn-color: var(--bs-info);
    --bs-btn-bg: var(--bs-light);
    --bs-btn-border-color: var(--bs-light);
    --bs-btn-hover-color: var(--bs-info);
    --bs-btn-hover-bg: #fff;
    --bs-btn-hover-border-color: var(--bs-light);
    --bs-btn-focus-shadow-rgb: var(--bs-info-rgb);
    --bs-btn-active-color: var(--bs-info);
    --bs-btn-active-bg: var(--bs-light);
    --bs-btn-active-border-color: var(--bs-light);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(var(--bs-info-rgb), 0.125);
    --bs-btn-disabled-color: var(--bs-info);
    --bs-btn-disabled-bg: var(--bs-light);
    --bs-btn-disabled-border-color: var(--bs-light);
}
.bg-tertiary{
    background-color:var(--bs-tertiary);
}
.text-tertiary{
    color:var(--bs-tertiary);
}
section,
.pt-sm,
.py-sm {
    padding-top: var(--sm);
}
section,
.pb-sm,
.py-sm {
    padding-bottom: var(--sm);
}
.pt-md,
.py-md {
    padding-top: var(--md);
}
.pb-md,
.py-md {
    padding-bottom: var(--md);
}
.pt-lg,
.py-lg {
    padding-top: var(--lg);
}
.pb-lg,
.py-lg {
    padding-bottom: var(--lg);
}
.mt-sm,
.my-sm {
    margin-top: var(--sm);
}
.mb-sm,
.my-sm {
    margin-bottom: var(--sm);
}    
.mt-md,
.my-md {
    margin-top: var(--md);
}
.mb-md,
.my-md {
    margin-bottom: var(--md);
}
.mt-lg,
.my-lg {
    margin-top: var(--lg);
}
.mb-lg,
.my-lg {
    margin-bottom: var(--lg);
}
@media (min-width: 576px) {
    .pt-sm-mob,
    .py-sm-mob {
        padding-top: var(--sm);
    }
    .pb-sm-mob,
    .py-sm-mob {
        padding-bottom: var(--sm);
    }
    .pt-md-mob,
    .py-md-mob {
        padding-top: var(--md);
    }
    .pb-md-mob,
    .py-md-mob {
        padding-bottom: var(--md);
    }
    .pt-lg-mob,
    .py-lg-mob {
        padding-top: var(--lg);
    }
    .pb-lg-mob,
    .py-lg-mob {
        padding-bottom: var(--lg);
    }
    .mt-sm-mob,
    .my-sm-mob {
        margin-top: var(--sm);
    }
    .mb-sm-mob,
    .my-sm-mob {
        margin-bottom: var(--sm);
    }    
    .mt-md-mob,
    .my-md-mob {
        margin-top: var(--md);
    }
    .mb-md-mob,
    .my-md-mob {
        margin-bottom: var(--md);
    }
    .mt-lg-mob,
    .my-lg-mob {
        margin-top: var(--lg);
    }
    .mb-lg-mob,
    .my-lg-mob {
        margin-bottom: var(--lg);
    }
}
@media (min-width: 768px) {
    .pt-sm-tab,
    .py-sm-tab {
        padding-top: var(--sm);
    }
    .pb-sm-tab,
    .py-sm-tab {
        padding-bottom: var(--sm);
    }
    section,
    .pt-md-tab,
    .py-md-tab {
        padding-top: var(--md);
    }
    section,
    .pb-md-tab,
    .py-md-tab {
        padding-bottom: var(--md);
    }
    .pt-lg-tab,
    .py-lg-tab {
        padding-top: var(--lg);
    }
    .pb-lg-tab,
    .py-lg-tab {
        padding-bottom: var(--lg);
    }
    .mt-sm-tab,
    .my-sm-tab {
        margin-top: var(--sm);
    }
    .mb-sm-tab,
    .my-sm-tab {
        margin-bottom: var(--sm);
    }    
    .mt-md-tab,
    .my-md-tab {
        margin-top: var(--md);
    }
    .mb-md-tab,
    .my-md-tab {
        margin-bottom: var(--md);
    }
    .mt-lg-tab,
    .my-lg-tab {
        margin-top: var(--lg);
    }
    .mb-lg-tab,
    .my-lg-tab {
        margin-bottom: var(--lg);
    }
}
@media (min-width: 992px) {
    .pt-sm-lap,
    .py-sm-lap {
        padding-top: var(--sm);
    }
    .pb-sm-lap,
    .py-sm-lap {
        padding-bottom: var(--sm);
    }
    .pt-md-lap,
    .py-md-lap {
        padding-top: var(--md);
    }
    .pb-md-lap,
    .py-md-lap {
        padding-bottom: var(--md);
    }
    .pt-lg-lap,
    .py-lg-lap {
        padding-top: var(--lg);
    }
    .pb-lg-lap,
    .py-lg-lap {
        padding-bottom: var(--lg);
    }
    .mt-sm-lap,
    .my-sm-lap {
        margin-top: var(--sm);
    }
    .mb-sm-lap,
    .my-sm-lap {
        margin-bottom: var(--sm);
    }    
    .mt-md-lap,
    .my-md-lap {
        margin-top: var(--md);
    }
    .mb-md-lap,
    .my-md-lap {
        margin-bottom: var(--md);
    }
    .mt-lg-lap,
    .my-lg-lap {
        margin-top: var(--lg);
    }
    .mb-lg-lap,
    .my-lg-lap {
        margin-bottom: var(--lg);
    }
}
@media (min-width: 1200px) {
    .pt-sm-desk,
    .py-sm-desk {
        padding-top: var(--sm);
    }
    .pb-sm-desk,
    .py-sm-desk {
        padding-bottom: var(--sm);
    }
    .pt-md-desk,
    .py-md-desk {
        padding-top: var(--md);
    }
    .pb-md-desk,
    .py-md-desk {
        padding-bottom: var(--md);
    }
    .pt-lg-desk,
    .py-lg-desk {
        padding-top: var(--lg);
    }
    .pb-lg-desk,
    .py-lg-desk {
        padding-bottom: var(--lg);
    }
    .mt-sm-desk,
    .my-sm-desk {
        margin-top: var(--sm);
    }
    .mb-sm-desk,
    .my-sm-desk {
        margin-bottom: var(--sm);
    }    
    .mt-md-desk,
    .my-md-desk {
        margin-top: var(--md);
    }
    .mb-md-desk,
    .my-md-desk {
        margin-bottom: var(--md);
    }
    .mt-lg-desk,
    .my-lg-desk {
        margin-top: var(--lg);
    }
    .mb-lg-desk,
    .my-lg-desk {
        margin-bottom: var(--lg);
    }
}
}

@layer connor {
    
    }
@layer ogulcan {
    
    }
@layer zoe {
    .nav-wrapper{
    z-index:999;
    & .bg-white{
        font-size:18px;
        line-height:32px;
        color:#9fbee3;
    }
}
.top-link{
    color:var(--bs-info);
    text-decoration:none;
    transition: color .3s ease;
    &:hover{
        color:var(--bs-primary);
    }
    &:focus{
        color:var(--bs-primary);
    }
}
.login-link{
    color:var(--bs-primary);
    text-decoration:none;
    font-weight:500;
    text-transform:uppercase;
    transition: color .3s ease;
    &:hover{
        color:var(--bs-tertiary);
    }
    &:focus{
        color:var(--bs-tertiary);
    }
}
.btn-close{
    --bs-btn-close-bg: ;
    --bs-btn-close-color: var(--bs-dark);
    --bs-btn-close-opacity: 1;
    --bs-btn-close-hover-opacity: 0.75;
    --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
    --bs-btn-close-focus-opacity: .75;
}
.navbar{
    --bs-navbar-brand-padding-y: 0;
    --bs-navbar-nav-link-padding-x: 1rem;
    --bs-navbar-active-color: #fff;
    & .navbar-nav{
        --bs-nav-link-color: #fff;
        --bs-nav-link-font-size:24px;
        --bs-nav-link-hover-color: #fff;
        & .nav-link{
            position:relative;
            & .blue-bar{
                height:4px;
                width:0;
                background-color:var(--bs-info);
                display:block;
                position:absolute;
                bottom:0;
                transition: width 0.3s ease-in-out;
                @media (min-width: 1200px) {
                    width:0;
                    bottom:0px;
                }
            }
            &.active{
                & .blue-bar{
                    width:100%;
                    transition: width 0.3s ease-in-out;
                    @media (min-width: 1200px) {
                        width:calc(100% - (2 * var(--bs-navbar-nav-link-padding-x)));
                    }
                }
            }
            &.show{
                & .blue-bar{
                    width:100%;
                    transition: width 0.3s ease-in-out;
                    @media (min-width: 992px) {
                        width:calc(100% - (2 * var(--bs-navbar-nav-link-padding-x)));
                    }
                }
            }
            &:hover{
                & .blue-bar{
                    width:100%;
                    transition: width 0.3s ease-in-out;
                    @media (min-width: 992px) {
                        width:calc(100% - (2 * var(--bs-navbar-nav-link-padding-x)));
                    }
                }
            }
            &:focus{
                & .blue-bar{
                    width:100%;
                    transition: width 0.3s ease-in-out;
                    @media (min-width: 992px) {
                        width:calc(100% - (2 * var(--bs-navbar-nav-link-padding-x)));
                    }
                }
            }
        }
        & .nav-item.active{
            & .nav-link{
                & .blue-bar{
                    width:100%;
                    transition: width 0.3s ease-in-out;
                    @media (min-width: 1200px) {
                        width:calc(100% - (2 * var(--bs-navbar-nav-link-padding-x)));
                    }
                }
            }
        }
        & .dropdown{
            & .dropdown-menu{
                --bs-dropdown-border-radius: 0;
                --bs-dropdown-spacer: 1.35rem;
                --bs-dropdown-border-width: 0;
                --bs-dropdown-bg: var(--bs-light);
                --bs-dropdown-link-color: var(--bs-info);
                --bs-dropdown-link-hover-color: var(--bs-primary);
                --bs-dropdown-link-hover-bg: var(--bs-light);
                --bs-dropdown-link-active-color: var(--bs-primary);
                --bs-dropdown-link-active-bg: var(--bs-light);
                --bs-dropdown-font-size: 21px;
                --bs-dropdown-color: var(--bs-dark);
                
                & .dropdown-item{
                    &.active{
                        font-weight:700;
                    }
                }
            }
            &.dropdown-mega{
                & .dropdown-menu{
                    --bs-dropdown-padding-y: 1.5rem;
                    --bs-dropdown-item-padding-x: 0rem;
                    --bs-dropdown-spacer: 0rem;
                    &[data-bs-popper]{
                        right:0;
                        left:0;
                    }
                }
            }
        }
    }
    & .navbar-brand{
        & svg{
            height:80px;
        }
    }
    & .btn.btn-info{
        --bs-btn-font-weight: 400;
        text-transform:uppercase;
        --bs-btn-padding-y: 1.094rem;
        @media (min-width:768px){
            --bs-btn-padding-x: 3rem;
        }
    }
    & .dropdown-toggle::after{
        display:none;
    }
    
}
.offcanvas.offcanvas-search{
    --bs-offcanvas-height: 20vh;
    --form-font-size:18px;
    & .form-control{
        color:#fff;
        background-color: var(--bs-primary);
        border: none;
        border-radius: 0;
        font-weight:300;
        font-size:var(--form-font-size);
        padding-left:0;
        &::placeholder{
            color: #5c83b0;
        }
        &:focus{
            box-shadow: 0 0 0 .25rem rgba(255,255,255,.25);
        }
    }
    & .input-group{
        border-bottom:1px solid #fff;
        align-items:center;
    }
    & .btn-close{
        --bs-btn-close-color: #fff;
        --bs-btn-close-opacity: 1;
        --bs-btn-close-hover-opacity: 1;
        --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(255,255,255, 0.25);
        height:100%;
        width:auto;
        border-radius:0;
        font-size:25px;
        &:hover{
            --bs-btn-close-color: var(--bs-tertiary);
        }
        &:focus{
            --bs-btn-close-color: var(--bs-tertiary);
        }
    }
    @media (min-width:768px){
        --form-font-size:26px;
    }
    @media (min-width:1200px){
        --form-font-size:40px;
    }
}
.plain-link{
    color:var(--bs-info);
    text-decoration:none;
    font-size:21px;
    line-height:32px;
    letter-spacing:.025rem;
    & svg{
        font-size:18px;
        margin-left:.5rem;
    }
    &:hover{
        color:var(--bs-primary);
    }
    &:focus{
        color:var(--bs-primary);
    }
}
.content{
    & li{
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0.025em;
        padding:.25rem 0;
    }
    & p + h2{
        padding-top:1.5rem;
    }
    & p a{
        color:var(--bs-body-color);
        &:hover{
            color:var(--bs-info);
        }
        &:focus{
            color:var(--bs-info);
        }
    }
}
.category-main{
    color:var(--bs-info);
    font-size:16px;
    line-height:28px;
    letter-spacing:0;
    margin-bottom:.25rem;
}
.date-main{
    font-size:16px;
    line-height:28px;
    letter-spacing:0;
    margin-bottom:.25rem;
}
.swiper-main .swiper-pagination {
    bottom: unset;
    top: unset;
    left: unset;
    position: relative;
    width: auto;
    text-align: end;
}
.swiper-main .swiper-pagination-bullet {
    --swiper-pagination-bullet-border-radius: 0;
    --swiper-pagination-bullet-inactive-opacity: 1;
    --swiper-pagination-bullet-height:10px;
    --swiper-pagination-bullet-width:10px;
    --swiper-pagination-top: unset;
    --swiper-pagination-bottom: 0;
    --swiper-navigation-sides-offset:unset;
    --swiper-navigation-top-offset: unset;
    line-height:1;
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
    display: inline-block;
    border-radius: 100%;
    background: var(--swiper-pagination-bullet-inactive-color, rgba(20,20,20,.2));
    opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
.swiper-main .swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--bs-primary));
}
.swiper-main .swiper-button-next{
    border:none;
    -webkit-appearance:none;
    background:transparent;
    color:var(--bs-dark);
    font-size:11px;
    transition: color 0.3s ease-in-out;
    position:relative;
    top:unset;
    height:auto;
    line-height:1;
    display:block;
    padding:0;
    padding-top:1px;
    left:unset;
    right:unset;
    &:after{
        display:none;
    }
    & svg{
        width:auto;
    }
    &:hover{
        color:var(--bs-primary);
    }
    &:focus{
        color:var(--bs-primary);
    }
}
.swiper-main .swiper-slide-title{
    font-size:14px;
    font-weight:500;
    line-height:18px;
    letter-spacing:0.025em;
    color:var(--bs-primary);
}
.swiper-main .swiper-fraction{
    font-size:14px;
    font-weight:500;
    line-height:18px;
    letter-spacing:0.025em;
    color:var(--bs-dark);
}
.link-list{
    margin-bottom:0;
    display:flex;
    flex-wrap:wrap;
    flex-direction: column;
    gap:.5rem;
    margin-top:3rem;
}
.background-grid {
    height: auto;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    overflow: hidden;
    position: relative;
    width: 100%;
    padding-top: 0;
    padding-bottom: 0;
    & .container-lg {
        position: relative;
        z-index: 3;
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        align-self: center;
        padding-block: var(--md);
        @media (min-width:768px) {
            padding-block: 0;
        }
    }
    & .container-xl {
        position: relative;
        z-index: 3;
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        align-self: center;
        padding-block: var(--md);
        @media (min-width:768px) {
            padding-block: 0;
        }
    }
    &.opacity-bkg::before {
        content: '';
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        position: relative;
        z-index: 2;
        display: block;
        width: 100%;
        background: rgba(0, 0, 0, .3);
        @media (min-width:768px){
            background: rgba(0, 0, 0, .2);
        }
    }
    & .hero-picture {
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        height: 100%;
        width: 100%;
        position: relative;
        z-index: 1;
        top: 0;
        background: #000;
        & .bg-image {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover;
            object-position: center;
            position: relative;
            opacity: .7;
        }
        @media (min-width: 768px) {
            height: 100vh;
        }
    }
    & h1{
        color:#fff;
        & b{
            display:block;
        }
    }
    & h2{
        color:#fff;
    }
    & h3{
        color:#fff;
    }
    & p{
        color:#fff;
    }
    & .plain-link{
        color:#fff;
        &:hover{
            color:#c5c5c5;
        }
        &:focus{
            color:#c5c5c5;
        }
    }
    &.cta{
        & .hero-picture{
            @media (min-width: 768px) {
                height: 700px;
            }
        }
        & .link-list{
            gap:0;
        }
        @media (min-width: 768px) {
            height: 700px;
        }
    }
    @media (min-width: 768px) {
        height: 100vh;
    }
}
header{
    margin-top:var(--nav-height);
    & .background-grid{
        & .hero-picture{
            @media (min-width: 768px) {
                height: calc(100vh - var(--nav-height));
            }
        }
        @media (min-width: 768px) {
            height: calc(100vh - var(--nav-height));
        }
    }
}
.hero-grid-one{
    height: auto;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 300px 1fr;
    overflow: hidden;
    position: relative;
    width: 100%;
    & .hero-picture{
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        height: 100%;
        width: 100%;
        position: relative;
        z-index: 1;
        top: 0;
        overflow:hidden;
        & .bg-image {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover;
            object-position: center;
            position: relative;
        }
        @media (min-width:992px){
            grid-column: 1 / span 14;
            grid-row: 1 / span 2;
        }
    }
    & .youtube-background {
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        height: 100%;
        width: 100%;
        position: relative;
        z-index: 1;
        background-repeat: no-repeat;
        background-size: cover;
        overflow:hidden;
        & video {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover;
            object-position: center;
            position: relative;
        }
        @media (min-width: 992px) {
            grid-column: 1 / span 14;
            grid-row: 1 / span 2;
        }
    }
    & .container-lg {
        position: relative;
        z-index: 3;
        grid-column: 1 / span 1;
        grid-row: 2 / span 1;
        align-self: center;
        padding-block: var(--sm);
        @media (min-width:992px){
            grid-column: 1 / span 14;
            grid-row: 2 / span 2;
            padding-block: var(--md);
        }
    }
    & .container-xl {
        position: relative;
        z-index: 3;
        grid-column: 1 / span 1;
        grid-row: 2 / span 1;
        align-self: center;
        padding-block: var(--sm);
        @media (min-width:992px){
            grid-column: 1 / span 14;
            grid-row: 2 / span 2;
            padding-block: var(--md);
        }
    }
    & .mid-lay{
        position:relative;
        grid-column: 1 / span 1;
        grid-row: 2 / span 1;
        z-index: 2;
        @media (min-width:992px){
            grid-column: 6 / span 9;
            grid-row: 2 / span 2;
        }
    }
    & .h3{
        color:var(--bs-dark);
    }
    @media (min-width: 992px) {
        grid-template-columns: 1fr repeat(12, calc((960px / 12) - 1.5rem)) 1fr;
        grid-template-rows: 500px 70px 1fr;
    }
    @media (min-width: 1200px) {
        grid-template-columns: 1fr repeat(12, calc((1140px / 12) - 1.5rem)) 1fr;
    }
    @media (min-width: 1400px) {
        grid-template-columns: 1fr repeat(12, calc((1320px / 12) - 1.5rem)) 1fr;
    }
}
.hero-grid-two{
    height: auto;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 300px;
    overflow: hidden;
    position: relative;
    width: 100%;
    & .hero-picture{
        grid-column: 1 / span 1;
        grid-row: 2 / span 1;
        height: 100%;
        width: 100%;
        position: relative;
        z-index: 1;
        top: 0;
        overflow:hidden;
        & .bg-image {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover;
            object-position: center;
            position: relative;
        }
        @media (min-width:992px){
            grid-column: 1 / span 14;
            grid-row: 2 / span 2;
        }
    }
    & .youtube-background {
        grid-column: 1 / span 1;
        grid-row: 2 / span 1;
        height: 100%;
        width: 100%;
        position: relative;
        z-index: 1;
        background-repeat: no-repeat;
        background-size: cover;
        overflow:hidden;
        & video {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover;
            object-position: center;
            position: relative;
        }
        @media (min-width: 992px) {
            grid-column: 1 / span 14;
            grid-row: 2 / span 2;
        }
    }
    & .container-lg {
        position: relative;
        z-index: 3;
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        align-self: center;
        padding-block: var(--sm);
        @media (min-width:992px){
            grid-column: 1 / span 14;
            grid-row: 1 / span 2;
            padding-block: var(--md);
        }
    }
    & .container-xl {
        position: relative;
        z-index: 3;
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        align-self: center;
        padding-block: var(--sm);
        @media (min-width:992px){
            grid-column: 1 / span 14;
            grid-row: 1 / span 2;
            padding-block: var(--md);
        }
    }
    & .mid-lay{
        position:relative;
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        z-index: 2;
        @media (min-width:992px){
            grid-column: 6 / span 9;
            grid-row: 1 / span 2;
        }
    }
    & .h3{
        color:var(--bs-dark);
    }
    &.big-hero{
        @media (min-width: 992px) {
            grid-template-rows: 1fr 70px 730px;
        }
    }
    &.bell-version{
        grid-template-rows: 1fr auto;
        & .collage{
            grid-column: 1 / span 1;
            grid-row: 2 / span 1;
            height: 100%;
            width: 100%;
            position: relative;
            z-index: 1;
            @media (min-width:992px){
                grid-column: 1 / span 14;
                grid-row: 2 / span 2;
            }
        }
        @media (min-width: 992px) {
            grid-template-rows: 1fr 70px auto;
        }
    }
    &.contact-hero{
        & .container-xl.cta-part{
            grid-column: 1 / span 1;
            grid-row: 2 / span 1;
            @media (min-width:992px){
                grid-column: 1 / span 14;
                grid-row: 2 / span 2;
            }
            & h2{
                color:#fff;
            }
            & p{
                color:#fff;
            }
            & .plain-link{
                color:#fff;
                &:hover{
                    color: #c5c5c5;
                }
                &:focus{
                    color: #c5c5c5;
                }
            }
        }
    }
    @media (min-width: 992px) {
        grid-template-columns: 1fr repeat(12, calc((960px / 12) - 1.5rem)) 1fr;
        grid-template-rows: 1fr 70px 600px;
    }
    @media (min-width: 1200px) {
        grid-template-columns: 1fr repeat(12, calc((1140px / 12) - 1.5rem)) 1fr;
    }
    @media (min-width: 1400px) {
        grid-template-columns: 1fr repeat(12, calc((1320px / 12) - 1.5rem)) 1fr;
    }
}
.hero-grid-three{
    height: auto;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    overflow: hidden;
    position: relative;
    width: 100%;
    & .container-lg {
        position: relative;
        z-index: 3;
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        align-self: center;
        padding-block: var(--sm);
        @media (min-width:992px){
            grid-column: 1 / span 14;
            grid-row: 1 / span 2;
            padding-block: var(--md);
        }
    }
    & .container-xl {
        position: relative;
        z-index: 3;
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        align-self: center;
        padding-block: var(--sm);
        @media (min-width:992px){
            grid-column: 1 / span 14;
            grid-row: 1 / span 2;
            padding-block: var(--md);
        }
    }
    & .mid-lay{
        position:relative;
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        z-index: 2;
        @media (min-width:992px){
            grid-column: 6 / span 9;
            grid-row: 1 / span 2;
        }
    }
    & .h3{
        color:var(--bs-dark);
    }
    @media (min-width: 992px) {
        grid-template-columns: 1fr repeat(12, calc((960px / 12) - 1.5rem)) 1fr;
    }
    @media (min-width: 1200px) {
        grid-template-columns: 1fr repeat(12, calc((1140px / 12) - 1.5rem)) 1fr;
    }
    @media (min-width: 1400px) {
        grid-template-columns: 1fr repeat(12, calc((1320px / 12) - 1.5rem)) 1fr;
    }
}
body{
    & .ken-burns{
        & .hero-picture{
            will-change: transform;
            & .bg-image{
                transform: scale(1);
                transition: transform 4.75s linear;
                transition-delay: 0.5s;
            }
        }
    }
    &.loaded .ken-burns .hero-picture .bg-image{
        transform: scale(1.075);
    }
    @media (prefers-reduced-motion: reduce) {
        & .ken-burns{
            will-change: opacity;
            & .hero-picture .bg-image{
                transition: opacity 4.75s linear;
                opacity: 0;
            }
        }
        &.loaded .ken-burns .hero-picture .bg-image{
            opacity: 1;
        }
    }
}
.home-hero-slider{
    position:relative;
    & .swiper-pagination{
        color:#fff;
        font-weight:300;
        line-height:1;
        font-size:40px;
        text-align:left;
        & .swiper-pagination-current{
            font-size:60px;
            vertical-align:top;
        }
    }
    & .main-slider{
        z-index:1;
        --swiper-pagination-bottom: calc(var(--lg) * 1.375);
    }
    & .thumb-container{
        z-index:2;
        position:absolute;
        right:0;
        bottom:var(--lg);
        & .white-box{
            background-color:#fff;
            position:relative;
            padding:.5rem .5rem;
            & .swiper-button-next{
                -webkit-appearance: none;
                left:unset;
                right:unset;
                text-transform:uppercase;
                color:var(--bs-info);
                top:unset;
                position:relative;
                font-size:14px;
                line-height:1;
                letter-spacing:.1em;
                background-color:#fff;
                border:none;
                height:auto;
                width:auto;
                display:block;
                padding:0;
                text-align:left;
                & svg{
                    font-size:12px;
                }
            }
            & p{
                margin-bottom:0;
                margin-top:auto;
                color:var(--bs-primary);
                font-size:14px;
                line-height:20px;
            }
        }
        & .swiper-slide{
            width:225px;
            opacity:.5;
            transition-property: transform, opacity;
            &.swiper-slide-thumb-active{
                opacity:1;
            }
        }
    }
    & .social-media-group{
        z-index:3;
        position:absolute;
        right:0;
        bottom:50%;
        right:0;
        padding:0 .75rem;
        width:calc(100% / 12);
        & a{
            border-radius:50%;
            background-color:#fff;
            color:var(--bs-warning);
            opacity:.8;
            font-size:18px;
            text-align:center;
            display:block;
            padding-top:12px;
            height:48px;
            width:48px;
            transition:opacity .3s ease, padding-top .3s ease, height .3s ease, width .3s ease, font-size .3s ease;
            &:hover{
                padding-top:15px;
                opacity:1;
                width:58px;
                height:58px;
                font-size:21px;
            }
            &:focus{
                padding-top:15px;
                opacity:1;
                width:58px;
                height:58px;
                font-size:21px;
            }
        }
        @media (min-width:1200px){
            right:calc((100% - 1140px)/2);
            width:calc(1140px / 12);
        }
        @media (min-width:1400px){
            right:calc((100% - 1320px)/2);
            width:calc(1320px / 12);
        }
    }
    & .btn-warning{
        --bs-btn-padding-x: .75rem;
        --bs-btn-font-size: 18px;
        --bs-btn-padding-y: 1.165rem;
    }
}
.leader-message{
    & p em{
        font-style:normal;
        font-size:18px;
        line-height:24px;
        letter-spacing:0;
        color:var(--bs-primary);
    }
}
.job-details{
    color:var(--bs-tertiary);
    & p{
        margin-bottom:0;
        font-size: 18px;
    }
    & .hstack{
        align-items: start;
    }
}
.quote{
    & blockquote{
        & p{
            color:var(--bs-tertiary);
            margin-bottom:0;
            font-size:var(--fz-title-2);
            line-height:calc(36 / 32);
            font-family:var(--header-font), serif;
        }
    } 
    & .author{
        color:#505050;
        font-size:18px;
    }
}
.bg-primary:not(.navbar){
    & h1, .h1, h2, .h2, h5, .h5, h3, .h3{
        color:#fff;
    }
    & p{
        color:#cdc8b9;
    }
    & .plain-link{
        color:#fff;
        &:hover{
            color:#c5c5c5;
        }
        &:focus{
            color:#c5c5c5;
        }
    }
    & .milestone-list{
        color:#cdc8b9;
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0.025em;
        padding-top:1.5rem;
        &.board-list{
            color:#fff;
        }
        &.career-list{
            margin-bottom:0;
            & .list-inline-item:not(:last-child) {
                margin-right:0;
                @media (min-width:992px){
                    &:nth-child(2n+1){
                        margin-right: 1.5rem;
                    }
                }
            }
            & li{
                width: 100%;
                @media (min-width:992px){
                    width: calc(50% - .75rem);
                }
            }
            &.even-list{
                & li{
                    border-bottom:none;
                    border-top:1px solid rgb(103, 103, 103);
                    &:first-child{
                        border-top:none;
                    }
                    @media (min-width:992px){
                       &:nth-child(2){
                           border-top:none;
                       } 
                    }
                }
            }
        }
        & li{
            padding:17px 0;
            & svg{
                color:#fff;
                margin-right:.5rem;
            }
            &:not(:last-child){
                border-bottom:1px solid rgb(103, 103, 103);
            }
        }
    }
}
.bracket-box{
    position:relative;
    & .h2{
        color:#673a95;
    }
    & .row{
        position:relative;
        z-index:5;
    }
    &:before{
        position:absolute;
        top:0;
        bottom:0;
        left:0;
        width:65px;
        height:100%;
        border:1px solid #673a95;
        border-right:none;
        content: ' ';
    }
    &:after{
        position:absolute;
        top:0;
        bottom:0;
        right:0;
        width:65px;
        height:100%;
        border:1px solid #673a95;
        border-left:none;
        content: ' ';
    }
}
.top-table{
    & p, li{
        font-size:18px;
    }
}
.about-mid-grid{
    position: relative;
    grid-template-rows: auto;
    display: grid;
    & .header{
        position: relative;
        z-index: 1;
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
        padding:0 .75rem;
        & p{
            margin-bottom:0;
        }
        @media (min-width: 768px) {
            grid-column: 1 / span 14;
        }
        @media (min-width: 992px) {
            grid-row: 1 / span 1;
            grid-column: 1 / span 6;
            align-self:center;
        }
        @media (min-width: 1200px) {
            grid-column: 2 / span 5;
        }
        @media (min-width: 1400px) {
            grid-column: 3 / span 4;
        }
    }
    & .list{
        position: relative;
        z-index: 1;
        grid-column: 1 / span 1;
        grid-row: 2 / span 1;
        padding:0 .75rem var(--sm);
        @media (min-width: 768px) {
            grid-column: 1 / span 14;
        }
        @media (min-width: 992px) {
            grid-row: 1 / span 2;
            grid-column: 7 / span 8;
            padding-bottom:var(--md);
        }
        @media (min-width: 1200px) {
            grid-column: 7 / span 7;
        }
        @media (min-width: 1400px) {
            grid-column: 7 / span 6;
        }
    }
    & .bg-light{
        position: relative;
        display:none;
        z-index: 1;
        margin-right:.75rem;
        @media (min-width: 992px) {
            display:block;
            grid-row: 2 / span 1;
            grid-column: 1 / span 6;
        }
    }
    @media (min-width: 768px) {
        grid-template-columns: 1fr repeat(12, calc(720px / 12)) 1fr;
    }
    @media (min-width: 992px) {
        grid-template-rows: 3fr 5fr;
        grid-template-columns: 1fr repeat(12, calc(960px / 12)) 1fr;
    }
    @media (min-width: 1200px) {
        grid-template-columns: 1fr repeat(12, calc(1140px / 12)) 1fr;
    }
    @media (min-width: 1400px) {
        grid-template-columns: 1fr repeat(12, calc(1320px / 12)) 1fr;
        
    }
}
.about-list ul{
    padding-left:0;
    margin-bottom:0;
    list-style:none;
    & li{
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0.025em;
        padding:.5rem 1rem;
        &:not(:last-child){
            border-bottom:1px solid rgb(174, 174, 174);
        }
    }
}
.part-one-overlap-section{
    margin-top:-60px;
    position: relative;
    grid-template-rows: 105px auto;
    display: grid;
    &.not-home{
        margin-top:0;
        @media (min-width:992px){
            & .text{
                padding-top:0;
            }
        }
        & .text{
            @media (min-width: 1200px) {
                grid-column: 1 / span 7;
            }
            @media (min-width: 1400px) {
                grid-column: 2 / span 5;
            }
        }
        &:is(header){
            margin-top:var(--nav-height);
        }
        &.welcome-version{
            & .text{
                @media (min-width:992px){
                    grid-row: 2 / span 3;
                }
                @media (min-width:1400px){
                    grid-column: 2 / span 6;
                }
            }
            & .image{
                @media (min-width:992px){
                    grid-row: 2 / span 2;
                }
            }
            @media (min-width:992px){
                grid-template-rows: 105px 5fr 55px 1fr;
            }
        }
        &.history-version{
            & .text{
                & h3{
                    font-size:var(--fz-title-4);
                }
                @media (min-width: 1200px) {
                    grid-column: 2 / span 6;
                }
                @media (min-width: 1400px) {
                    grid-column: 3 / span 4;
                }
            }
        }
        &.art-version{
            & .text{
                & blockquote{
                    width:75%;
                    padding-left:1rem;
                    padding-top:1rem;
                    & p{
                        font-weight:500;
                        font-style:italic;
                        font-size:18px;
                    }
                }
                @media (min-width:768px) {
                    grid-row: 2 / span 2;
                    padding-top: 3rem;
                }
            }
            &.bell-version{
                @media (min-width:992px){
                    grid-template-rows: 105px 1fr 80px;
                }
            }
            @media (min-width:992px){
                grid-template-rows: 105px 3fr 2fr;
            }
        }
    }
    &.tuition-version{
        & .text{
            @media (min-width:992px){
                padding-top:3rem;
            }
        }
        &.history-bottom-version{
            & h3{
                font-size:var(--fz-title-4);
            }
            & .left-image{
                position: relative;
                grid-column: 1 / span 1;
                grid-row: 3 / span 1;
                z-index: 3;
                padding-left:.75rem;
                padding-right:.75rem;
                @media (min-width: 768px) {
                    grid-column: 2 / span 12;
                }
                @media (min-width: 992px) {
                    grid-column: 1 / span 5;
                    grid-row: 3 / span 3;
                }
                @media (min-width: 1200px) {
                    grid-column: 2 / span 4;
                }
            }
            & .right-image{
                position: relative;
                grid-row: 4 / span 1;
                z-index: 3;
                padding-left:.75rem;
                padding-right:.75rem;
                @media (min-width: 992px) {
                    grid-column: 6 / span 4;
                    grid-row: 3 / span 3;
                }
                @media (min-width: 1200px) {
                    grid-column: 6 / span 3;
                }
            }
            & .bg-light{
                @media (min-width:992px){
                    grid-row: 1 / span 3;
                }
            }
            @media (min-width:992px){
                grid-template-rows: 105px 1fr 55px 55px auto var(--md);
            }
        }
    }
    & .image{
        position: relative;
        grid-column: 1 / span 1;
        grid-row: 2 / span 1;
        z-index: 2;
        padding-left:.75rem;
        padding-right:.75rem;
        @media (min-width: 768px) {
            grid-column: 2 / span 12;
        }
        @media (min-width: 992px) {
            grid-row: 2 / span 3;
            grid-column: 8 / span 7;
        }
        @media (min-width: 1200px) {
            grid-column: 8 / span 6;
        }
        & .youtube-background {
            height: 100%;
            width: 100%;
            position: relative;
            background-repeat: no-repeat;
            background-size: cover;
            overflow:hidden;
            & video {
                width: 100% !important;
                height: 100% !important;
                object-fit: cover;
                object-position: center;
                position: relative;
            }
        }
    }
    & .text{
        position: relative;
        grid-column: 1 / span 1;
        grid-row: 3 / span 1;
        z-index: 2;
        padding-left:.75rem;
        padding-right:.75rem;
        @media (min-width: 768px) {
            grid-column: 2 / span 12;
        }
        @media (min-width: 992px) {
            grid-row: 2 / span 1;
            grid-column: 1 / span 7;
            padding-top:var(--md);
        }
        @media (min-width: 1200px) {
            grid-column: 2 / span 6;
        }
        @media (min-width: 1400px) {
            grid-column: 3 / span 4;
        }
    }
    & .bg-light{
        position: relative;
        grid-column: 1 / span 1;
        grid-row: 1 / span 2;
        z-index: 1;
        @media (min-width: 768px) {
            grid-column: 1 / span 14;
        }
        @media (min-width: 992px) {
            grid-row: 1 / span 2;
            grid-column: 5 / span 10;
        }
        @media (min-width: 1200px) {
            grid-column: 6 / span 9;
        }
    }
    @media (min-width: 768px) {
        grid-template-columns: 1fr repeat(12, calc(720px / 12)) 1fr;
    }
    @media (min-width: 992px) {
        grid-template-rows: 105px 1fr 55px;
        grid-template-columns: 1fr repeat(12, calc(960px / 12)) 1fr;
    }
    @media (min-width: 1200px) {
        grid-template-columns: 1fr repeat(12, calc(1140px / 12)) 1fr;
    }
    @media (min-width: 1400px) {
        grid-template-columns: 1fr repeat(12, calc(1320px / 12)) 1fr;
        
    }
}
.part-two-overlap-section{
    margin-top:-105px;
    position: relative;
    grid-template-rows: 49px 1fr var(--md) auto auto;
    display: grid;
    &.not-home{
        margin-top:0;
        & .text{
            grid-row: 3 / span 1;
            align-self:center;
            @media (min-width: 992px) {
                grid-column: 9 / span 6;
                grid-row: 2 / span 1;
            }
            @media (min-width: 1200px) {
                grid-column: 9 / span 5;
            }
        }
        & .bg-light{
            @media (min-width:992px){
                grid-row: 1 / span 3;
            }
        }
        & .left-image{
            @media (min-width:992px){
                grid-row: 2 / span 1;
            }
        }
        & .right-image{
            @media (min-width:992px){
                grid-row: 2 / span 1;
            }
        }
        @media (min-width:992px){
            margin-top:-105px;
            grid-template-rows: 165px 1fr var(--lg);
        }
    }
    &.history-version{
        @media (min-width:992px){
            grid-template-rows: 49px 1fr var(--xl) auto var(--lg);
        }
        & .bg-light{
            @media (min-width:992px){
                grid-row: 2 / span 4;
            }
        }
    }
    &.aid-version{
        margin-top:0;
        padding-top:1.5rem;
        & .text{
            grid-row: 1 / span 1;
            padding-top:2rem;
            @media (min-width: 992px) {
                grid-column: 1 / span 6;
                grid-row: 1 / span 2;
            }
            @media (min-width: 1200px) {
                grid-column: 2 / span 5;
            }
        }
        & .dates{
            position: relative;
            grid-column: 1 / span 1;
            grid-row: 2 / span 1;
            z-index: 2;
            padding-left:.75rem;
            padding-right:.75rem;
            padding-top:2rem;
            @media (min-width: 768px) {
                grid-column: 2 / span 12;
            }
            @media (min-width: 992px) {
                grid-column: 7 / span 7;
                grid-row: 1 / span 1;
                padding-bottom:var(--md);
            }
            @media (min-width: 1200px) {
                grid-column: 7 / span 6;
            }
        }
        & .bg-light{
            grid-row: 2 / span 2;
            @media (min-width:992px){
                grid-row: 1 / span 2;
            }
        }
        & .statistics{
            grid-row: 3 / span 1;
            @media (min-width: 992px) {
                grid-row: 2 / span 1;
            }
        }
        @media (min-width:992px){
            margin-top:0;
            grid-template-rows: 1fr auto;
        }
    }
    &.tuition-version{
       & .text{
           @media (min-width: 992px) {
                grid-column: 1 / span 14;
            }
            @media (min-width: 1200px) {
                grid-column: 2 / span 12;
            }
       }
       &.not-home{
           & .text{
                grid-row: 3 / span 1;
                align-self:center;
           }
           & .bg-light{
                @media (min-width:992px){
                    grid-row: 1 / span 4;
                }
            }
           @media (min-width: 992px) {
                grid-template-rows: 80px 3fr 2fr var(--md) ;
            }
       }
    }
    & .left-image{
        position: relative;
        grid-column: 1 / span 1;
        grid-row: 1 / span 2;
        z-index: 3;
        padding-left:.75rem;
        padding-right:.75rem;
        @media (min-width: 768px) {
            grid-column: 2 / span 12;
        }
        @media (min-width: 992px) {
            grid-column: 1 / span 5;
        }
        @media (min-width: 1200px) {
            grid-column: 2 / span 4;
        }
    }
    & .right-image{
        position: relative;
        grid-row: 1 / span 2;
        z-index: 3;
        padding-left:.75rem;
        padding-right:.75rem;
        @media (min-width: 992px) {
            grid-column: 6 / span 4;
        }
        @media (min-width: 1200px) {
            grid-column: 6 / span 3;
        }
    }
    & .text{
        position: relative;
        grid-column: 1 / span 1;
        grid-row: 4 / span 1;
        z-index: 2;
        padding-left:.75rem;
        padding-right:.75rem;
        @media (min-width: 768px) {
            grid-column: 2 / span 12;
        }
        @media (min-width: 992px) {
            grid-column: 1 / span 6;
        }
        @media (min-width: 1200px) {
            grid-column: 2 / span 5;
        }
    }
    & .statistics{
        position: relative;
        grid-column: 1 / span 1;
        grid-row: 5 / span 1;
        z-index: 2;
        @media (min-width: 768px) {
            grid-column: 1 / span 14;
        }
        @media (min-width: 992px) {
            grid-row: 4 / span 1;
            grid-column: 7 / span 8;
            padding-left:.75rem;
        }
    }
    & .bg-light{
        position: relative;
        grid-column: 1 / span 1;
        grid-row: 2 / span 3;
        z-index: 1;
        @media (min-width: 768px) {
            grid-column: 1 / span 14;
        }
        @media (min-width: 992px) {
            grid-column: 1 / span 9;
        }
    }
    @media (min-width: 768px) {
        grid-template-columns: 1fr repeat(12, calc(720px / 12)) 1fr;
    }
    @media (min-width: 992px) {
        grid-template-rows: 49px 1fr var(--lg) auto;
        grid-template-columns: 1fr repeat(12, calc(960px / 12)) 1fr;
    }
    @media (min-width: 1200px) {
        grid-template-columns: 1fr repeat(12, calc(1140px / 12)) 1fr;
    }
    @media (min-width: 1400px) {
        grid-template-columns: 1fr repeat(12, calc(1320px / 12)) 1fr;
        
    }
}
.partial-overlay{
    position:relative;
    z-index:20;
}
.list-overlay{
    margin-top:-50px;
    position: relative;
    grid-template-rows: var(--md) auto auto;
    display: grid;
    & .left-image{
        position: relative;
        grid-column: 1 / span 1;
        grid-row: 2 / span 1;
        z-index: 3;
        padding-left:.75rem;
        padding-right:.75rem;
        padding-bottom:2rem;
        @media (min-width: 768px) {
            grid-column: 2 / span 12;
        }
        @media (min-width: 992px) {
            grid-column: 1 / span 5;
        }
        @media (min-width: 1200px) {
            grid-column: 2 / span 4;
        }
    }
    & .text{
        position: relative;
        grid-column: 1 / span 1;
        grid-row: 3 / span 1;
        z-index: 2;
        padding-left:.75rem;
        padding-right:.75rem;
        & .milestone-list{
            @media (min-width:992px){
                padding-top:2rem;
            }
            & svg{
                color:var(--bs-tertiary);
            }
            & li{
                padding:17px 0;
                & svg{
                    margin-right:.5rem;
                }
                &:not(:last-child){
                    border-bottom:1px solid rgb(197, 197, 197);
                }
                & span{
                    vertical-align: top;
                }
            }
        }
        @media (min-width: 768px) {
            grid-column: 2 / span 12;
        }
        @media (min-width: 992px) {
            grid-row: 2 / span 2;
            grid-column: 7 / span 8;
        }
        @media (min-width: 1200px) {
            grid-column: 7 / span 7;
        }
    }
    & .bg-light{
        position: relative;
        grid-column: 1 / span 1;
        grid-row: 1 / span 2;
        z-index: 1;
        @media (min-width: 768px) {
            grid-column: 1 / span 14;
        }
        @media (min-width: 992px) {
            grid-column: 1 / span 9;
        }
    }
    @media (min-width: 768px) {
        grid-template-columns: 1fr repeat(12, calc(720px / 12)) 1fr;
    }
    @media (min-width: 992px) {
        grid-template-rows: var(--lg) 2fr 1fr;
        grid-template-columns: 1fr repeat(12, calc(960px / 12)) 1fr;
    }
    @media (min-width: 1200px) {
        grid-template-columns: 1fr repeat(12, calc(1140px / 12)) 1fr;
    }
    @media (min-width: 1400px) {
        grid-template-columns: 1fr repeat(12, calc(1320px / 12)) 1fr;
        
    }
}
.stat-tpl{
    aspect-ratio: 1 / 1;
    padding:0rem 1.5rem;
    & p{
        margin-bottom:0;
        color:#fff;
    }
    & .stat-grid{
        height:100%;
        row-gap: 1.5rem;
        position: relative;
        grid-template-rows: 3fr 2fr;
        display: grid;
        overflow:hidden;
        grid-template-columns: 1fr;
        & .stat-value{
            position: relative;
            grid-column: 1 / span 1;
            grid-row: 1 / span 1;
            z-index: 1;
        }
        & .stat-title{
            position: relative;
            grid-column: 1 / span 1;
            grid-row: 2 / span 1;
            z-index: 1;
        }
    }
}
.statistics{
    & .stat-tpl{
        &:first-child{
            background-color:var(--bs-primary);
        }
        &:nth-child(2){
            background-color:var(--bs-info);
        }
        &:nth-child(3){
            background-color:var(--bs-warning);
        }
    }
}
.scholar-swiper{
    --swiper-navigation-color: var(--bs-info);
    --swiper-navigation-size: auto;
    & button{
        border:none;
        background:#fff;
    }
    & .swiper-button-prev{
        left:unset;
        right:unset;
        top:unset;
        position:relative;
        justify-content:unset;
        font-size:var(--fz-title-3);
        padding:0;
        &:not(.swiper-button-disabled){
            &:hover{
                color:var(--bs-primary);
            }
            &:focus{
                color:var(--bs-primary);
            }
        }
    }
    & .swiper-button-next{
        left:unset;
        right:unset;
        top:unset;
        position:relative;
        justify-content:unset;
        font-size:var(--fz-title-3);
        padding:0;
        &:not(.swiper-button-disabled){
            &:hover{
                color:var(--bs-primary);
            }
            &:focus{
                color:var(--bs-primary);
            }
        }
    }
    & .hstack{
        gap:2rem;
    }
    & .swiper-navigation-icon{
       display:none; 
    }
    & .card.scholarship-card{
        --bs-card-border-width: 0;
        --bs-card-title-color: var(--bs-dark);
        --bs-card-border-radius: 0;
        --bs-card-inner-border-radius: 0;
        --bs-card-bg: #f0ebf4;
        --bs-card-spacer-y: 2rem;
        --bs-card-title-spacer-y: 1.5rem;
        & .vstack{
            gap:2rem;
        }
        & p {
            font-size:18px;
            & strong{
                color:var(--bs-dark);
                font-weight:400;
            }
        }
        & .lists{
            & p{
                margin-bottom:.5rem;
            }
            & ul{
                padding-left:0;
                list-style:none;
                & li{
                    font-size: 18px;
                    line-height: 30px;
                    letter-spacing: 0.025em;
                    padding:.5rem 0;
                    &:not(:last-child){
                        border-bottom:1px solid rgb(174, 174, 174);
                    }
                }
            }
        }
        & .closing{
            h4{
                color:var(--bs-dark);
            }
            & p{
                color:#673a95;
            }
        }
    }
}
.step-tpl{
    & .title{
      color:var(--bs-dark);  
      margin-bottom:.75rem;
    }
    & p:not(.title, .display-2){
        font-size: 18px;
        & a{
            color:var(--bs-body-color);
            &:hover{
                color:var(--bs-info);
            }
            &:focus{
                color:var(--bs-info);
            }
        }
    }
    & ul{
        list-style:none;
        padding-left:0;
    }
    & li{
        padding:5px 0;
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0.025em;
        & svg{
            color:var(--bs-primary);
            margin-right:.5rem;
        }
    }
}
.icon-card-tpl{
    & svg{
        height:64px;
        width:auto;
        margin-bottom:1rem;
    }
    & .card-title{
        color:var(--bs-dark);
        margin-bottom:.5rem;
    }
    & p:not(.card-title){
        font-size:18px;
        margin-bottom:.5rem;
    }
    & li{
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0.025em;
    }
}
.accordion{
    --bs-accordion-border-width: 0;
    --bs-accordion-active-color: var(--bs-primary);
    --bs-accordion-btn-color: var(--bs-primary);
    --bs-accordion-btn-icon: ;
    --bs-accordion-btn-active-icon: ;
    --bs-accordion-active-bg: #fff;
    --bs-accordion-btn-bg: var(--bs-light);
    --bs-accordion-btn-padding-y: 2.5rem;
    --bs-accordion-btn-focus-box-shadow: none;
    & .accordion-button{
        font-size: inherit;
        text-decoration:underline;
        text-decoration-thickness:2px;
           text-underline-offset:4px;
        &:hover{
            --bs-accordion-btn-bg: #fff;
            text-decoration:underline;
        }
        &:focus{
            --bs-accordion-btn-bg: #fff;
            text-decoration:underline;
        }
        &:not(.collapsed){
            text-decoration:underline;
        }
    }
    & .accordion-body{
        padding-top: 0;
    }
}
.table{
    --bs-table-color: var(--bs-body-color);
    --bs-table-striped-color: var(--bs-body-color);
    --bs-table-striped-bg: #e7ecf1;
    font-size:21px;
    letter-spacing:0.025em;
    border:1px solid var(--bs-primary);
    & td{
        border:none;
        padding:1rem .75rem;
        &:first-child{
            color:var(--bs-dark);
        }
    }
    & th{
        background-color:var(--bs-primary);
        color:#fff;
        padding:2rem .75rem;
        font-weight:400;
    }
}
.tuition-box{
    padding:2rem .75rem;
    background-color:#f0ebf4;
    margin-top:1.5rem;
    & h3{
        color:var(--bs-dark);
        margin-bottom:1rem;
    }
    & p:not(.h4){
        font-size:18px;
    }
    & .disclaimer{
        font-weight:700;
        margin-top:3rem;
        font-style:italic;
    }
    & ul{
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0.025em;
        & li{
            padding:.25rem 0;
            color:#673a95;
        }
    }
    & .highlight{
        & .h4{
            color:var(--bs-dark);
        }
        & p:not(.h4){
            color:#673a95;
        }
    }
    &.career-version{
        & li{
            color:var(--bs-body-color);
        }
    }
}
.flex-collapse{
    display: flex;
    flex-wrap: wrap;
    gap:1.5rem;
    &::-webkit-scrollbar {
        display: none;
    }
    @media (min-width:992px){
        flex-wrap: nowrap;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
    }
    & .flex-item{
        flex: 0 0 auto;
        width:100%;
        overflow:hidden;
        height:560px;
        display:block;
        cursor:pointer;
        transition: flex 0.5s ease-in-out;
        & .testimony-grid{
            height: 560px;
            display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: 1fr;
            overflow: hidden;
            position: relative;
            width: 100%;
            & img{
                grid-column: 1 / span 1;
                grid-row: 1 / span 1;
                position: relative;
                z-index: 1;
                height:560px;
                width:100%;
                object-fit:cover;
                object-position:center;
                transition: width 0.5s ease-in-out;
            }
            & .quote{
                position: relative;
                z-index: 3;
                grid-column: 1 / span 1;
                grid-row: 1 / span 1;
                align-self: end;
                padding: 1.5rem 20px;
                color:#fff;
                & h3{
                    color:#fff;
                }
                & .quote-mark{
                    font-family:var(--header-font), serif;
                    font-size:72px;
                    line-height:48px;
                }
                & p:not(.quote-mark){
                    line-height:28px;
                }
                & .author{
                    margin-bottom:0;
                    color:#fff;
                }
                & ul{
                    padding-left:1rem;
                }
                & li{
                    font-size: 18px;
                    line-height: 30px;
                    letter-spacing: 0.025em;
                }
                @media (min-width: 1200px) { 
                    opacity:0;
                    transition: opacity 0.5s ease-in-out 0.1s;
                }
            }
            &::before{
                background-image: linear-gradient( 180deg, rgba(var(--bs-dark-rgb),0) 0%, rgba(var(--bs-dark-rgb),.25) 25%, rgba(var(--bs-dark-rgb),.75) 50%, rgb(var(--bs-dark-rgb)) 100%);
                content:'';
                z-index:2;
                grid-column: 1 / span 1;
                grid-row: 1 / span 1;
                position:relative;
                width:100%;
                height:100%;
                display:block;
                @media (min-width: 1200px) { 
                    opacity:0;
                    transition: opacity 0.5s ease-in-out .1s;
                }
            }
        }
        @media(min-width:768px){
            width:50%;
        }
        @media (min-width: 1200px) {
            width:auto;
            flex: 1;
            &:hover,
            &:focus{
                flex-grow:2.5;
                & .testimony-grid{
                    &::before{
                        opacity:.6;
                    }
                    & .quote{
                        opacity:1;
                    }
                }
            }
            scroll-snap-align: start;
        }
    }
}
.related-title{
    padding:0 .75rem;
}
.card.article-card{
    --bs-card-border-radius: 0;
    --bs-card-inner-border-radius: 0;
    --bs-card-spacer-x: 0rem;
    --bs-card-spacer-y: 0rem;
    --bs-card-border-width: 0;
    --bs-card-title-color: var(--bs-primary);
    padding:.75rem;
    & .category{
        color:var(--bs-info);
        font-size:15px;
        line-height:28px;
        letter-spacing:0;
        margin-bottom:.25rem;
    }
    & .date{
        font-size:15px;
        line-height:28px;
        letter-spacing:0;
        margin-bottom:.25rem;
    }
    & .card-title{
        font-size:18px;
        margin-bottom:0;
        line-height:24px;
        letter-spacing:0;
    }
    & .article-item-grid{
        row-gap:.75rem;
        column-gap:.75rem;
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr;
        overflow: hidden;
        position: relative;
        & img{
            position: relative;
            z-index: 1;
            grid-column: span 1;
            grid-row: span 1;
            @media (min-width:576px){
                grid-column: 1 / span 1;
            }
        }
        & .card-body{
            position: relative;
            z-index: 1;
            grid-column: span 1;
            grid-row: span 1;
            @media (min-width:576px){
                grid-column: 2 / span 1;
            }
        }
        @media (min-width: 576px){
            grid-template-columns: 2fr 3fr;
        }
    }
    &:first-child{
        & .card-body{
            padding-top:.25rem;
            & .card-title{
                font-size:30px;
                line-height:38px;
            }
        }
    }
    &:has(a:hover){
        --bs-card-bg: var(--bs-light);
        & .card-title{
           text-decoration:underline; 
           text-decoration-thickness:1px;
           text-underline-offset:4px;
        }
    }
    &:has(a:focus){
        --bs-card-bg: var(--bs-light);
        & .card-title{
           text-decoration:underline; 
           text-decoration-thickness:1px;
           text-underline-offset:4px;
        }
    }
}
.card.default-article-card{
    --bs-card-border-radius: 0;
    --bs-card-inner-border-radius: 0;
    --bs-card-spacer-x: 0rem;
    --bs-card-spacer-y: 0rem;
    --bs-card-border-width: 0;
    --bs-card-title-color: var(--bs-primary);
    & .category{
        color:var(--bs-info);
        font-size:15px;
        line-height:28px;
        letter-spacing:0;
        margin-bottom:.25rem;
    }
    & .date{
        font-size:15px;
        line-height:28px;
        letter-spacing:0;
        margin-bottom:.25rem;
    }
    & .card-title{
        font-size:var(--fz-title-3);
        margin-bottom:.5rem;
        line-height:36px;
        letter-spacing:0;
    }
    & .blurb p{
        font-size:16px;
    }
    &:has(a:hover){
        & .card-title{
           text-decoration:underline; 
           text-decoration-thickness:1px;
           text-underline-offset:4px;
        }
    }
    &:has(a:focus){
        & .card-title{
           text-decoration:underline; 
           text-decoration-thickness:1px;
           text-underline-offset:4px;
        }
    }
}
.btn-more{
    width:auto !important;
    text-transform:uppercase;
    font-size:16px;
    margin-top:var(--sm) !important;
    @media (min-width:992px){
        margin-top:var(--md) !important;
    }
}
.card.leader-card{
    --bs-card-border-radius: 0;
    --bs-card-inner-border-radius: 0;
    --bs-card-spacer-x: 0rem;
    --bs-card-spacer-y: 1rem;
    --bs-card-border-width: 0;
    --bs-card-title-color: var(--bs-dark);
    & .title{
        margin-bottom:0;
        color:var(--bs-dark);
        font-size:18px;
        line-height:24px;
        letter-spacing:0;
    }
}
.article-display-grid{
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    overflow: hidden;
    position: relative;
    & .article-card{
        position: relative;
        z-index: 1;
        grid-column: span 1;
        grid-row: span 1;
        @media (min-width:992px){
            grid-column: 2 / span 1;
            grid-row: span 1;
            &:first-child{
                grid-column: 1 / span 1;
                grid-row: 1 / span 4;
            }
        }
    }
    @media (min-width:992px){
        grid-template-columns: 7fr 5fr;
        grid-template-rows: 1fr 1fr 1fr 1fr;
    }
}
.logo-tpl{
    & img{
        transition: opacity 0.3s ease-in-out;
    }
    &:has(a:hover){
        & img {
            opacity:.5;
        }
    }
    &:has(a:focus){
        & img {
            opacity:.5;
        }
    }
}
.card.department-card{
    --bs-card-title-color: var(--bs-dark);
    --bs-card-border-width: 0;
    --bs-card-border-radius: 0;
    --bs-card-inner-border-radius: 0;
    --bs-card-bg: transparent;
    --bs-card-color: var(--bs-dark);
    --bs-card-spacer-x: 0;
    --bs-card-title-spacer-y: 1rem;
    height:100%;
    & .card-body{
        padding-bottom:0;
    }
    & .card-title{
        font-size:var(--fz-title-3);
        line-height:24px;
        transition color .3s ease;
    }
    & .card-text{
        font-size:var(--fz-title-4);
        transition color .3s ease;
    }
    & img{
        transition opacity .3s ease;
    }
    & .date-label{
        color:var(--bs-card-title-color);
    }
    &.camp-version{
        --bs-card-title-spacer-y: .75rem;
        --bs-card-color: var(--bs-body-color);
        & .card-body{
            display:flex;
            flex-wrap:wrap;
            flex-direction: column;
        }
        & .card-title{
            font-size:var(--fz-title-4);
            line-height:30px;
        }
        & .card-text{
            font-size:var(--fz-title-5);
        }
        & .top-table{
            margin-top:auto;
        }
    }
    &:has(a:hover){
        --bs-card-title-color: var(--bs-primary);
        --bs-card-color: var(--bs-primary);
        & img{
            opacity:.5;
        }
    }
    &:has(a:focus){
        --bs-card-title-color: var(--bs-primary);
        --bs-card-color: var(--bs-primary);
        & img{
            opacity:.5;
        }
    }
}
.modal{
    --bs-modal-border-width: 0px;
    --bs-modal-border-radius: 0px;
    --bs-modal-inner-border-radius: 0px;
    & .modal-title{
        margin-bottom:0;
    }
    & .modal-header{
        align-items:start;
    }
}
.card.teacher-card{
    --bs-card-title-color: var(--bs-dark);
    --bs-card-border-width: 0;
    --bs-card-border-radius: 0;
    --bs-card-inner-border-radius: 0;
    --bs-card-spacer-y: 0;
    --bs-card-spacer-x: 0;
    --bs-card-title-spacer-y: .25rem;
    --bs-card-bg: transparent;
    & .title{
        color:var(--bs-dark);
    }
    & hr{
        margin:1.5rem 0;
        color:rgb(197, 197, 197);
        opacity:1;
    }
    & .details{
        color:var(--bs-tertiary);
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0.025em;
        & .list-inline-item:not(:last-child){
            margin-right: 1.5rem;
        }
    }
}
.tour-card{
    padding:2rem 1rem;
    & .title{
        color:var(--bs-dark);
    }
    & p a{
        color:var(--bs-body-color);
        &:hover{
            color:var(--bs-info);
        }
        &:focus{
            color:var(--bs-info);
        }
    }
    & ul{
        list-style:none;
        padding-left:0;
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0.025em;
        & li{
            padding:.25rem 0;
        }
    }
}
.tour-section{
    & .h4{
        color:var(--bs-dark);
        margin-bottom:1rem;
    }
    & h4{
        color:var(--bs-dark);
        margin-bottom:1rem;
    }
    & p{
        font-size:18px;
    }
    & ul{
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0.025em;
    }
}
.library-tabs{
    & .nav-tabs{
        --bs-nav-tabs-border-width: 0;
        --bs-nav-tabs-border-radius: 0;
        --bs-nav-tabs-link-active-color: var(--bs-info);
        --bs-nav-link-font-weight: 400;
        --bs-nav-link-color: var(--bs-info);
        --bs-nav-link-hover-color: var(--bs-info);
        --bs-nav-link-padding-x: 1.79rem;
        --bs-nav-link-padding-y: 1.25rem;
        & .nav-link{
            font-size:21px;
            letter-spacing:0.025em;
            line-height:40px;
            &:hover{
                --bs-nav-link-font-weight: 500;
            }
            &:focus{
                --bs-nav-link-font-weight: 500;
            }
            &.active{
                --bs-nav-link-font-weight: 500;
            }
        }
    }
    & .accordion{
        --bs-accordion-bg: var(--bs-primary);
        --bs-accordion-btn-bg: var(--bs-primary);
        --bs-accordion-active-bg: rgba(var(--bs-warning-rgb), .5);
        --bs-accordion-btn-color: var(--bs-warning);
        --bs-accordion-active-color: var(--bs-warning);
        --bs-accordion-border-color: var(--bs-warning);
        --bs-accordion-border-width: 1px;
        --bs-accordion-border-radius: 0;
        --bs-accordion-inner-border-radius: 0;
        --bs-accordion-body-padding-x: 1.5rem;
        --bs-accordion-body-padding-y: 2.75rem;
        & .accordion-header{
            line-height:45px;
        }
        & .accordion-button{
            font-size:45px;
            line-height:1;
            font-family: var(--header-font), serif;
            &:hover{
                --bs-accordion-btn-bg: rgba(var(--bs-warning-rgb), .5);
                text-decoration: none;
            }
        }
        & .accordion-body{
            padding-top:var(--bs-accordion-body-padding-y);
            background-color:var(--bs-light-yellow);
            & .subtitle{
                color: var(--bs-primary);
                font-size:var(--fz-title-3);
            }
            & p:not(.subtitle){
                color:var(--bs-body-color);
                margin-bottom:0;
            }
        }
    }
    & .card.timeline-card{
        --bs-card-border-radius: 0;
        --bs-card-border-width: 0;
        --bs-card-inner-border-radius: 0;
        --bs-card-bg: var(--bs-light-yellow);
        --bs-card-title-color: var(--bs-primary);
        --bs-card-spacer-y: 2.75rem;
        --bs-card-spacer-x: 1.5rem;
        --bs-card-title-spacer-y: 1.5rem;
        & p.card-title{
            color: var(--bs-card-title-color);
            font-size:var(--fz-title-3);
        }
        & p:not(.card-title){
            margin-bottom:0;
            color:var(--bs-body-color);
        }
    }
    & .carousel-indicators{
        position:relative;
        right:unset;
        left:unset;
        bottom:unset;
        justify-content:start;
        margin-right:0;
        margin-left:0;
        margin-bottom:2rem;
        & [data-bs-target]{
            width:auto;
            height:auto;
            background-color:transparent;
            background-clip:unset;
            border-top:none;
            border-bottom:none;
            text-indent:0;
            font-family: var(--header-font), serif;
            font-size: 60px;
            color:var(--bs-warning);
            & .line{
                width:100px;
                height:1px;
                background-color:var(--bs-warning);
                display:inline-block;
                align-self:center;
                margin:10px 5px;
            }
            @media (min-width:992px){
                font-size: 30px;
            }
            @media (min-width:1200px){
                font-size: 45px;
            }
        }
    }
}
.stat-collage-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-auto-rows:1fr;
    overflow: hidden;
    position: relative;
    &.version-two{
        & .gallery-tpl{
            @media (min-width:1200px){
                &:nth-child(6n+1){
                    grid-column: span 2;
                    grid-row: span 2;
                }
                &:nth-child(6n+2){
                    grid-column: span 2;
                    grid-row: span 2;
                }
            }
            @media (min-width:1600px){
                grid-column: span 3;
                grid-row: span 3;
                &:nth-child(6n+1){
                    grid-column: span 3;
                    grid-row: span 3;
                }
                &:nth-child(6n+2){
                    grid-column: span 3;
                    grid-row: span 3;
                }
                &:nth-child(8n+1){
                    grid-column: span 5;
                    grid-row: span 5;
                }
                &:nth-child(8n+2){
                    grid-column: span 5;
                    grid-row: span 5;
                }
                &:nth-child(8n+3){
                    grid-column: span 5;
                    grid-row: span 5;
                }
            }
        }
        @media (min-width:1600px){
            grid-template-columns: repeat(15, 1fr);
        }
    }
    & .gallery-tpl{
        position:relative;
        z-index: 1;
        grid-column: span 1;
        grid-row: span 1;
        background-color:var(--bs-primary);
        & img{
            width: 100% !important;
            height: 100% !important;
            object-fit: cover;
            object-position: center;
            position: relative;
            transition: opacity .3s ease;
        }
        &:has(a:hover){
            & img{
                opacity:.5;
            }
        }
        &:has(a:focus){
            & img{
                opacity:.5;
            }
        }
    }
    & .stat-tpl{
        position:relative;
        z-index: 1;
        padding: 1.5rem;
        &.stat-1{
            background-color: var(--bs-primary);
            grid-column: 1 / span 1;
            grid-row: 1 / span 1;
        }
        &.stat-2{
            background-color: var(--bs-info);
            grid-column: 2 / span 1;
            grid-row: 2 / span 1;
            @media (min-width:1200px){
                grid-column: 3 / span 1;
                grid-row: 1 / span 1;
            }
        }
        &.stat-3{
            background-color: var(--bs-warning);
            grid-column: 1 / span 1;
            grid-row: 3 / span 1;
            @media (min-width:768px){
                grid-column: 3 / span 1;
            }
            @media (min-width:1200px){
                grid-column: 2 / span 1;
                grid-row: 2 / span 1;
            }
        }
        &.stat-4{
            background-color: var(--bs-tertiary);
            grid-column: 2 / span 1;
            grid-row: 4 / span 1;
            @media (min-width:768px){
                grid-column: 1 / span 1;
            }
            @media (min-width:1200px){
                grid-column: 4 / span 1;
                grid-row: 2 / span 1;
            }
        }
        &.stat-5{
            background-color: #da1e48;
            grid-column: 1 / span 1;
            grid-row: 5 / span 1;
            @media (min-width:768px){
                grid-column: 2 / span 1;
            }
            @media (min-width:1200px){
                grid-column: 1 / span 1;
                grid-row: 3 / span 1;
            }
            @media (min-width:1600px){
                grid-column: 3 / span 1;
            }
        }
        &.stat-6{
            background-color: #673a95;
            grid-column: 2 / span 1;
            grid-row: 6 / span 1;
            @media (min-width:768px){
                grid-column: 3 / span 1;
            }
            @media (min-width:1200px){
                grid-column: 3 / span 1;
                grid-row: 3 / span 1;
            }
            @media (min-width:1600px){
                grid-column: 5 / span 1;
            }
        }
        &.stat-7{
            background-color: var(--bs-primary);
            grid-column: 1 / span 1;
            grid-row: 7 / span 1;
            @media (min-width:768px){
                grid-column: 1 / span 1;
            }
            @media (min-width:1200px){
                grid-column: 2 / span 1;
                grid-row: 4 / span 1;
            }
        }
        &.stat-8{
            background-color: var(--bs-info);
            grid-column: 2 / span 1;
            grid-row: 8 / span 1;
            @media (min-width:768px){
                grid-column: 2 / span 1;
            }
            @media (min-width:1200px){
                grid-column: 4 / span 1;
                grid-row: 4 / span 1;
            }
        }
    }
    @media (min-width:768px){
        grid-template-columns: 1fr 1fr 1fr;
    }
    @media (min-width:1200px){
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
    @media (min-width:1600px){
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    }
}
.bg-light-v2{
    background-color:#e8edf2;
}
.btn-check+.btn:hover {
    color: var(--bs-btn-hover-color);
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color);
}
.btn-check:checked+.btn{
    & span{
        display:none;
    }
    &:before{
        content: 'Session Selected';
    }
}
.btn-check:disabled+.btn, .btn-check[disabled]+.btn {
    pointer-events: none;
    filter: none;
    opacity: 1;
    background: var(--bs-body-color);
    border-color: var(--bs-body-color);
    color:#fff;
    & span{
        display:none;
    }
    &:before{
        content: 'Selection Disabled';
    }
}
.form{
    & label{
        &:not(.btn){
            color:var(--bs-dark);
        }
        & .error{
            color:var(--bs-danger);
        }
        & .bs-warning{
            color:var(--bs-danger);
        }
        &.form-label{
            display:block;
        }
        &.btn.btn-info{
            width:100%;
            --bs-btn-padding-x: 0.675rem;
        }
    }
    & .error{
        color:var(--bs-danger);
    }
    & .form-control{
        color: var(--bs-dark);
        font-size:21px;
        line-height:24px;
        background-clip:unset;
        border-color: rgb(218, 218, 218);
        background-color: rgb(248, 248, 248);
        border-radius:0;
        padding: 1rem .75rem;
        &:focus{
            border-color: var(--bs-primary);
            box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb),.25);
        }
    }
    & legend{
        margin-bottom:0;
        color:var(--bs-dark);
        font-family: var(--header-font), serif;
        font-size:var(--fz-title-3);
        line-height:36px;
        font-weight:400;
        & small{
          font-size:.7em;  
        }
    }
    & textarea{
        min-height:150px;
    }
    & .instruct{
        margin-bottom:0;
        margin-top:1rem;
        font-size:16px;
        color:var(--bs-primary);
        font-style:italic;
        line-height:28px;
    }
    & .form-select{
        color: var(--bs-dark);
        font-size:21px;
        line-height:24px;
        background-clip:unset;
        border-color: rgb(218, 218, 218);
        background-color: rgb(248, 248, 248);
        border-radius:0;
        padding: 1rem .75rem;
        &:focus{
            border-color: var(--bs-primary);
            box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb),.25);
        }
    }
    & input.btn{
        --bs-btn-padding-y: .782rem;
        --bs-btn-font-weight: 400;
    }
}
.card.summer-week-card{
    --bs-card-title-color: var(--bs-secondary);
    --bs-card-border-width: 0;
    --bs-card-border-radius: 0;
    --bs-card-inner-border-radius: 0;
    --bs-card-spacer-y: 0;
    --bs-card-spacer-x: 0;
    --bs-card-title-spacer-y: 0rem;
    --bs-card-bg: transparent;
    & .date{
        font-size:16px;
        line-height:28px;
        letter-spacing:0;
    }
    & .cost{
        color:var(--bs-info);
        font-size:24px;
        margin-bottom:0rem;
    }
    & .note{
        font-size:14px;
        line-height:28px;
        letter-spacing:0;
        margin-bottom:0rem;
    }
} 
.plain-list li{
    padding:.5rem 0;
}
.job-row{
    position:relative;
    padding:2rem .75rem;
    background-color:#fff;
    & p{
        margin-bottom:0;
        &.h3{
            color:var(--bs-primary);
        }
    }
    &:has(a:hover){
        background-color:var(--bs-light);
        & .h3{
            text-decoration:underline;
            text-decoration-thickness:1px;
        }
    }
    &:has(a:focus){
        background-color:var(--bs-light);
        & .h3{
            text-decoration:underline;
            text-decoration-thickness:1px;
        }
    }
}
.contact-grid{
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    overflow: hidden;
    position: relative;
    & .text{
        position: relative;
        z-index: 1;
        grid-column: span 1;
        grid-row: span 1;
        padding: var(--md) .75rem;
        & address{
            font-size: 21px;
            line-height: 30px;
            letter-spacing: 0.025em;
        }
        @media (min-width:768px){
            grid-column: 1 / span 14;
        }
        @media (min-width:992px){
            padding:var(--xl) .75rem;
            grid-column: 1 / span 7;
        }
        @media (min-width:1200px){
            grid-column: 2 / span 5;
        }
        @media (min-width:1400px){
            grid-column: 2 / span 4;
        }
    }
    & .map{
        position: relative;
        z-index: 1;
        grid-column: span 1;
        grid-row: span 1;
        height:400px;
        @media (min-width:768px){
            grid-column: 1 / span 14;
        }
        @media (min-width:992px){
            height:100%;
            grid-row: 1 / span 1;
            grid-column: 8 / span 7;
        }
    }
    @media (min-width: 768px) {
        grid-template-columns: 1fr repeat(12, calc(720px / 12)) 1fr;
    }
    @media (min-width: 992px) {
        grid-template-columns: 1fr repeat(12, calc(960px / 12)) 1fr;
    }
    @media (min-width: 1200px) {
        grid-template-columns: 1fr repeat(12, calc(1140px / 12)) 1fr;
    }
    @media (min-width: 1400px) {
        grid-template-columns: 1fr repeat(12, calc(1320px / 12)) 1fr;
    }
}
footer{
    padding-block:var(--md);
    & .social-link{
        color:var(--bs-warning);
        font-size:21px;
        &:hover{
            color:var(--bs-tertiary);
        }
        &:focus{
            color:var(--bs-tertiary);
        }
    }
    & p{
        color:var(--bs-light-yellow);
        font-size:16px;
        line-height:21px;
        & a{
            color:var(--bs-light-yellow);
            &:hover{
                color:var(--bs-warning);
            }
            &:focus{
                color:var(--bs-warning);
            }
        }
        &.copyright{
            font-size:13px;
            color:var(--bs-body-color);
            & a{
                color:var(--bs-body-color);
                &:hover{
                    color:var(--bs-warning);
                }
                &:focus{
                    color:var(--bs-warning);
                }
            }
        }
    }
    & address{
        color:var(--bs-light-yellow);
        font-size:16px;
        line-height:21px;
    }
    & .footer-header{
        color:var(--bs-light-yellow);
        line-height:24px;
        margin-bottom:.75rem;
        font-size:18px;
    }
    & .footer-link{
        text-decoration:none;
        color:var(--bs-info);
        line-height:24px;
        font-size:18px;
        & svg{
            font-size:15px;
            margin-left:.5rem;
        }
        &:hover{
            color:var(--bs-warning);
        }
        &:focus{
            color:var(--bs-warning);
        }
    }
    & .copy-link{
        font-size:13px;
        line-height:21px;
        color:var(--bs-body-color);
        &:hover{
            color:var(--bs-warning);
        }
        &:focus{
            color:var(--bs-warning);
        }
    }
}
    }