/*
Theme Name: Graduation Alliance Theme
Theme URI: https://www.graduationalliance.com/
Author: CA
Description: A custom theme using ACF and Bootstrap
Version: 1.0
License: GNU General Public License v2 or later
Text Domain: graduationalliance
*/
/* Global */
:root {
    /* Color Palette */
    --teal: #2F606B;
    --gold: #D7B229;
    --lt-blue: #E6EFF0;    
    --dk-gray: #191919;
    /* Typography */
    --open: 'Open Sans', sans-serif;
    --jost: 'Jost', sans-serif;
    --font-base: 18px;
    --font-height: 1.6;
    --font-weight: 400;
}
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
html {
    scroll-behavior: smooth;
}
body {
    margin: 0 auto;
    font-family: var(--open);
}
p, a, span, li {

}
h1, h2, h3, h4, h5, h6 {
    
}
main {
    z-index: 0;
    position: relative;
}
a {
  transition: opacity 0.3s ease-in-out, color 0.3s ease-in-out;
  opacity: 1;
}
p.int-sub {
  font-size:24px !important;
  line-height: 38px !important;
}
p.int-head {
  font-size:30px !important;
  line-height: 34px !important;
  color:var(--teal) !important;
  font-weight:700 !important;
  margin-bottom: 0.3rem !important;
  margin-top:2rem;
}
p.bolder-head {
font-size: 18px !important;
    font-weight: 700;
    margin-bottom: 0.2rem !important;
    line-height: 28px !important;
}
.skip-to-content {
  position: absolute;
  top: -40px;
  left: 0;
  background: #000;
  color: #fff;
  padding: 8px 16px;
  z-index: 100;
  text-decoration: none;
  border-radius: 4px;
  font-size: 16px;
}
.skip-to-content:focus {
  top: 10px;
  outline: 2px solid #fff;
  outline-offset: 2px;
}
@media (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1200px;
    }
}
.btn.btn-primary, .btn.btn-cta {
  font-family: var(--jost);
  background: var(--teal);
  border: none;
  font-size:16px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
  border-radius: 0;
  padding: 1.35rem 2.4rem;
  color:#fff;
}
.btn.btn-primary:hover, .btn.btn-cta:hover, .cta-banner-section .phone-link:hover {
    color:#fff;
    background:#1A3D45
}
.btn.btn-primary.request {
    padding: 0;
    height: 50px;
    width: 183px;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media (max-width: 767px) {
.btn.btn-primary, .btn.btn-cta {
padding: 1.25rem 2.4rem;
}
}
/* Header - Navigation */
/* Header Styles */
header .main-header {
    background: white;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    position: relative;
    z-index: 1000;
    min-height: 120px;
}

header .navbar {
    padding: 0;
    height: 100%;
}
header.sticky-nav {
  position: fixed;
  background-color: #fff;
  top: var(--alert-height, 0);
  left: 0;
  right: 0;
  border-bottom: 1px solid #ccc;
  z-index: 1000;
}
header.sticky-nav .btn.btn-primary.request {
    display:none;
}
header.sticky-nav .nav-item {
    padding: 2.1rem 0;
}
header.sticky-nav .navbar-collapse {
    padding:0;
}
header.sticky-nav .navbar-brand {
    padding:20px 0;
}
header.sticky-nav .navbar-brand img {
    height:60px;
}
header.sticky-nav .nav-link:hover:after {
    bottom: -33px;
}
header .navbar-brand {
    display: flex;
    align-items: center;
    padding: 20px 0 0;
}

header .navbar-brand img {
    height: 80px;
}

/* Desktop Navigation */
header .navbar-collapse {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    gap: 15px;
    padding: 20px 0 0;
}

header .btn-primary {
    background: var(--teal);
    color: white;
    padding: 12px 24px;
    text-decoration: none;
    border-radius: 4px;
    font-weight: 600;
    transition: background 0.3s ease;
    order: -1;
}

header .navbar-nav {
    display: flex;
    list-style: none;
    gap: 25px;
    margin: 0;
}

header .nav-item {
    position: relative;
    padding:1rem 0;
}

header .nav-link {
    text-decoration: none;
    color: var(--dk-gray);
    font-weight: 700;
    padding: 5px 0;
    transition: color 0.3s ease;
    cursor: pointer;
    font-size: 16px;
    position: relative;
}
header .nav-link:hover:after {
    content:'';
    position:absolute;
    bottom: -16px;
    background-color:var(--gold);
    height:4px;
    width:100%;
    left:0;
}
header .nav-link.active {
    color: var(--gold);
}
.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
    color: var(--gold);
}
/* Mega Menu */

header .navbar {
    position: relative;
}

header .mega-menu {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    background: white;
    opacity: 0;
    border-top: 1px solid var(--gold);
    visibility: hidden;
    transition: all 0.3s ease;
    padding: 40px 0;
    z-index: 999;
    pointer-events: none;
}

header .mega-menu .container {
    max-width: 1200px;
    height: auto;
    padding: 0;
    width: 100%;
    margin: 0 auto;
}

header .nav-item.dropdown {
    position: static;
}
header .nav-item.dropdown:nth-of-type(4) .mega-menu,  header .mobile-nav-item:nth-of-type(4) .mobile-chevron {
    display:none;
}
header .mega-menu .mega-menu-col:last-child {
    border-left:1px solid #ccc;
    padding-left: 2rem;
}
header .nav-item:hover .mega-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

header .mega-menu .row {
    display: flex;
    gap: 40px;
}

header .mega-menu-col {
    flex: 1;
}
header .mega-menu-col .btn.btn-primary {
        padding: 0.75rem 2rem;
}
header .mega-menu-col h6 {
    color: #000;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 15px;
    text-transform: uppercase;
}

header .mega-menu-col a {
    display: block;
    color: var(--teal);
    text-decoration: none;
    padding: 8px 0;
    font-weight:600;
    transition: color 0.3s ease;
}

header .mega-menu-col a:hover {
    color: #191919;
}

header .contact-item {
    margin-bottom: 15px;
    font-size: 14px;
}

header .contact-item strong {
    display: block;
    color: #333;
    margin-bottom: 5px;
}

/* Mobile Controls Container */
header .mobile-controls {
    display: none;
    align-items: center;
    gap: 15px;
}

/* Mobile Menu Toggle */
header .mobile-toggle {
    display: flex;
    flex-direction: column;
    gap: 4px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 5px;
}

header .mobile-toggle span {
    width: 25px;
    height: 3px;
    background: #333;
    transition: all 0.3s ease;
}

header .btn-request {
    background: var(--teal);
    color: white;
    border: none;
    padding: 12px 16px;
    font-weight: 600;
    margin-right:1rem;
    font-size: 12px;
    text-decoration: none;
    display: inline-block;
}

/* Mobile Menu */
header .mobile-menu {
    position: fixed;
    top: 0;
    right: -100%;
    width: 100%;
    margin-top:5.3rem;
    height: 100vh;
    background: var(--teal);
    z-index: 9999;
    transition: right 0.3s ease;
}

header .mobile-menu.active {
    right: 0;
}

header .mobile-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
    background: rgba(255,255,255,0.1);
}

header .mobile-header .navbar-brand img {
    height: 30px;
    filter: brightness(0) invert(1);
}

header .mobile-header .btn-request {
    background: white;
    color: var(--teal);
}

header .mobile-close {
background: none;
    border: none;
    color: var(--gold);
    font-size: 45px;
    cursor: pointer;
    top: -76px;
    right: 15px;
    position: absolute;
}

header .mobile-panel {
    position: absolute;
    top: 0;
    left: 100%;
    width: 100%;
    height: 100%;
    background: var(--teal);
    padding:0 15px;
    transition: left 0.3s ease;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

header .mobile-panel.active {
    left: 0;
}

header .mobile-back {
    display: flex;
    align-items: center;
    gap: 10px;
    color: white;
    text-decoration: none;
    padding: 20px;
    font-weight: 700;
    font-size: 20px;
    border-bottom: 1px solid rgba(255,255,255,0.2);
}

header .mobile-nav-item {
    border-bottom: 1px solid rgba(255,255,255,0.1);
    display: flex;
    align-items: center;
    position: relative;
}

header #main-panel .mobile-nav-link {
    flex: 1;
    color: white;
    text-decoration: none;
    padding: 10px 20px;
    font-weight: 700;
    font-size: 20px;
    transition: background 0.3s ease;
}
header .mobile-nav-link {
    flex: 1;
    color: white;
    text-decoration: none;
    padding: 10px 20px;
    font-weight: 400;
    font-size: 20px;
    transition: background 0.3s ease;
}
header .mobile-nav-link:hover {
    background: rgba(255,255,255,0.1);
}

header #main-panel .mobile-chevron {
    background: none;
    border: none;
    color: white;
    padding: 10px 20px;
    cursor: pointer;
    font-weight: 700;
    font-size: 20px;
    transition: background 0.3s ease;
}

header .mobile-chevron:hover {
    background: rgba(255,255,255,0.1);
}

/* Mobile Overlay */
header .mobile-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}
.main-header:has(.mobile-menu.active) .mobile-toggle.hamburger {
  visibility: hidden;
}

@media (max-width: 1200px) {
header .navbar-brand img {
    height: 61px;
}
}
/* Responsive */
@media (max-width: 991px) {
    header .navbar-collapse {
        display: none;
    }
header .navbar-brand {
    padding:1rem 0;
}
    header .mobile-controls {
        display: flex;
    }

    header .mobile-toggle {
        display: flex;
    }

    header .mega-menu {
        display: none;
    }
    header .navbar-brand img {
    height: 50px;
}

}
@media (max-width: 767px) {
    header .navbar-brand img, header.sticky-nav .navbar-brand img {
    height: 45px;
}
header .navbar-brand {
    padding:20px 0;
}
}


.four-o-four h1 {
    color:var(--teal) !important;
    font-weight:700;
}
.four-o-four .btn-outline-primary {
    border-color: var(--teal) !important;
    color: var(--teal) !important;
}
.four-o-four .btn-outline-primary:hover {
    background: var(--teal) !important;
    color: white !important;
}
/* Breadcrumbs*/
.breadcrumb-nav {
  border-top:1px solid #ccc;
  font-size:14px;
}
.breadcrumb-nav a {
  color: var(--dk-gray);
  text-decoration: none;
}
.breadcrumb-nav a:hover {
  text-decoration: underline;
}
.breadcrumb-nav li.breadcrumb-item.active {
  color: var(--teal);
}
/* Home Hero */
.home-hero {
    position: relative;
    z-index: 1;
    /*overflow: hidden;
    display: flex;
    align-items: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;*/
}
.home-hero .hero-video-container {
   /*position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;*/
	position:relative;
	@media (min-width: 1300px) {
		width: 100%;
		max-width: 1600px;
		margin-left:auto;
		margin-right:auto;
	}
}
.home-hero .hero-video {
    /*position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    transform: translate(-50%, -50%);
    object-fit: cover;*/
	aspect-ratio: 16 / 9;
    max-width: 100%;
	@media (min-width: 1300px) {
		max-width: 1600px;
		margin-left:auto;
		margin-right:auto;
		display:block;
	}
}
.home-hero .hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    pointer-events: none;
    height: 100%;
    /* background: rgba(0, 0, 0, 0.4); */
    z-index: 2;
}
.home-hero .hero-content {
    position: relative;
    z-index: 3;
    width: 100%;
    color: white;
}
.home-hero .hero-text {
    max-width: 600px;
    text-align: left;
}
.home-hero .hero-heading {
    font-size: clamp(2.5rem, 5vw, 92px);
    font-weight: 600;
    line-height: 80px;
    font-family:var(--jost);
}
.home-hero .hero-heading span.small-text {
    font-size: clamp(2.5rem, 5vw, 59px);
    font-weight: 400;
}

.home-hero .video-control-btn {
    position: absolute;
    bottom: 5%;
    right: 2%;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: transparent;
    border: 1px solid #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 100; /* Above overlay */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
	z-index:55555;
	@media (min-width: 1200px) {
		 right: 10%;
	}
}

.home-hero .video-control-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}

.home-hero .video-control-btn i {
    color: #fff;
    font-size: 20px;
}

.home-hero .hero-content {
    position: relative;
    z-index: 2;
}
@media (max-width: 1199.98px) {
    .home-hero .hero-heading {
        font-size: 3rem;
    }
}

@media (max-width: 991.98px) {
    .home-hero .hero-heading {
        font-size: 2.5rem;
    }
    .home-hero .video-control-btn {
    height:35px;
    width:35px;
    }
    .home-hero {
        border-bottom: 9px solid var(--gold);
    }
        .home-hero video {
            margin-bottom: -6px;
    }
}

@media (max-width: 767.98px) {
    .home-hero .hero-heading {
        font-size: 2rem;
        padding: 0 1rem;
    }
    .home-hero .hero-heading {
    line-height: 48px;
}
  .home-hero .hero-heading p {
   font-size:50px;
}
.home-hero .video-control-btn {
    top: auto;
    bottom: 5%;
}
.home-hero .hero-heading span.small-text {
    font-size: 28px;
    font-weight: 400;
}

}

@media (max-width: 575.98px) {
    .home-hero .hero-heading {
        font-size: 1.75rem;
    }
}
@media (prefers-reduced-motion: reduce) {
    .home-hero .hero-video {
        display: none;
    }
}
@media (prefers-contrast: high) {
    .home-hero .hero-overlay {
        background: rgba(0, 0, 0, 0.7);
    }
}

/* Tabbed Section */
.tabbed-section {
  margin: -120px 0 50px 0;
  z-index: 1;
  position: relative;
  max-width: 1200px;
  margin-left:auto;
  margin-right: auto;
}
.tabbed-section .tab-content .tab-pane.fade {
    border-bottom: 1px solid var(--gold);
    padding-bottom: 4rem;
}
.tabbed-section .tab-nav {
    border-bottom: none;
    margin-bottom: 3rem;
	display: flex;
    justify-content: center;
}
.tabbed-section .tab-nav .nav-item {
    margin: 0 0.5rem;
    width:29%;
}
.tabbed-section .tab-nav .nav-item:first-child {
    margin: 0 0.5rem 0 0;
}
.tabbed-section .tab-nav .nav-item:last-child {
    margin: 0 0 0 0.5rem;
}
.tabbed-section .tab-nav .nav-link {
    background: white;
    border-top: 11px solid var(--gold);
    border-radius: 0;
    padding: 1rem 2rem;
    font-family: var(--jost);
    font-weight: 600;
    color: #000;
    transition: all 0.3s ease;
    border-bottom: none;
    width: 100%;
    height: 110px;
    font-size:28px;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
}

.tabbed-section .tab-nav .nav-link:hover {
    border-color: var(--teal);
    color: var(--teal);
}

.tabbed-section .tab-nav .nav-link.active {
    background: white;
    height:121px;
}

.tabbed-section .tab-content-text {
    padding:0 2rem;
    position: relative;
  }
.tabbed-section .tab-content-text:before {
    content:'';
    width:5px;
    height:119px;
    background-color: var(--teal);
    position: absolute;
    top: 0;
    left: 0;
}
.tabbed-section .section-category {
    color: #000;
    font-weight: 700;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 1rem;
}

.tabbed-section .section-headline {
    font-size: 2.25rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1.5rem;
    color: #333;
}

.tabbed-section .section-content {
    font-size: 1.1rem;
    line-height: 1.6;
    color: #666;
    margin-bottom: 2rem;
}

.tabbed-section .section-content p {
    font-size: 18px;
    color: #000;
    padding-right: 6rem;
}

.tabbed-section .section-content p:last-child {
    margin-bottom: 0;
}

.tabbed-section .section-image {
    position: relative;
}
.tabbed-section .tab-content {
    position: relative;
}
.tabbed-section .tab-content .tab-pane .align-items-center {
    padding-top:1rem;
}
.tabbed-section .section-image:after {
    background-color: var(--gold);
    content: '';
    position: absolute;
    bottom:-16px;
    height:16px;
    width:80%;
    right:0;
}
.panel-close {
    position: absolute;
    top: -40px;
    right: 20px;
    background: none;
    border: none;
    font-size: 35px;
    color: #333;
    cursor: pointer;
    padding: 0;
    z-index: 10;
    transition: color 0.3s ease;
}

.panel-close:hover {
    color: #000;
}
.accordion-item:last-of-type>.accordion-header .accordion-button.collapsed {
    border-bottom-right-radius:0;
    border-bottom-left-radius:0;
}
/* Mobile Responsiveness */
@media (max-width: 991.98px) {
    .tabbed-section {
        margin: -0.34rem 0 0 0;
    }
    .tabbed-section .container {
        padding:0;
    }
    .tabbed-section .tab-content-text {
        padding-right: 0;
        margin-bottom: 0;
    }
    .accordion-button:not(.collapsed)::after {
        background-image: none;
            transform: inherit;
    }
    .tabbed-section .section-headline {
        font-size: 1.75rem;
    }
    
    .tabbed-section .tab-pane {
        padding: 2rem 1rem;
    }
    
    .tabbed-section .section-content p {
        padding-right: 2rem;
    }

    /* Accordion styling for mobile */
    .mobile-tab-accordion {
        border: none;
    }

    .accordion-item {
        border: none;
        margin-bottom: 0;
        background-color: transparent;
        border-bottom-left-radius:0 !important;
        border-bottom-right-radius: 0 !important;
    }

    .accordion-button {
        padding: 1rem 1.5rem;
        font-weight: 700;
        background-color: transparent;
        border: none;
        color: #000;
        height: auto;
        min-height: 60px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        text-align: left;
        border-bottom: 1px solid #e0e0e0;
        font-size:22px;
    }
    .job-opportunities-section .accordion-item:first-child .accordion-header .accordion-button {
        border-top: 1px solid #ccc;
        border-radius:0;
        font-size:22px;
    }
    .job-opportunities-section .accordion-button {
        font-size:22px !important;
    }
    .accordion-button:not(.collapsed) {
        background-color: transparent;
        color: #333;
        box-shadow: none;
        border-top: 4px solid var(--teal);
        border-bottom: 1px solid #e0e0e0;
    }

    .accordion-button:focus {
        border-color: transparent;
        box-shadow: none;
    }

    /* Chevron icon - down by default */
    .accordion-button::after {
        content: '\F282';
        font-family: 'bootstrap-icons', sans-serif;
        font-size: 1.2rem;
        transition: all 0.3s ease;
        margin-left: 1rem;
        flex-shrink: 0;
        width: auto;
        color:#000;
        background: none;
    }

    /* Chevron up when active */
    .accordion-button:not(.collapsed)::after {
        content: '\F286';
    }

    .accordion-body {
        padding: 0;
        border: none;
    }

    .tabbed-section .accordion-body .tab-content-text {
        padding: 1rem;
        border-bottom:1px solid #e0e0e0;
    }

    .tabbed-section .section-headline {
        font-size: 1.5rem;
    }

    .tabbed-section .section-content p {
        padding-right: 0;
        font-size: 16px;
    }

    .tabbed-section .section-category {
        display:none;
    }
    .tabbed-section .section-image:after {
        width: 90%;
    }
}

@media (max-width: 575.98px) {
    .accordion-button {
        font-size: 1.1rem;
        padding: 0.875rem 1rem;
        min-height: 55px;
    }

    .tabbed-section .section-headline {
        font-size: 1.35rem;
    }
}

/* Fade transition enhancement */
.tabbed-section .tab-pane {
    transition: opacity 0.3s ease-in-out;
}

.tabbed-section .tab-pane.fade:not(.show) {
    opacity: 0;
}

/* Home Stats */
/* Stats Section */
.stats-section {
    padding: 3rem 0 1rem;
    border-top: 1px solid #ccc;
}
.stats-section .stats-header {
    text-align: center;
    margin-bottom: 2rem;
}
.stats-section .stats-title {
    font-size:40px;
    font-family: var(--jost);
    font-weight: 600;
    color: #191919;
    margin-bottom: 0;
}

.stats-section .stat-item {
    text-align: center;
    padding: 2rem 1rem;
    margin-bottom: 2rem;
}

.stats-section .stat-number {
    font-size: 70px;
    font-weight: 600;
    color: var(--teal);
    line-height: 1;
    margin-bottom: 0.5rem;
    font-family: var(--jost);
    transition: all 0.3s ease;
}

.stats-section .stat-label {
    font-size:22px;
    font-weight: 600;
    color: #191919;
    text-transform: capitalize;
}

.stats-section .stat-item:hover .stat-label {
    color: #000;
}

/* Stats Section */
.stats-section {
    padding: 3rem 0;
}

.stats-header {
    text-align: center;
    margin-bottom: 3rem;
}

.stats-title {
    font-size: 2.5rem;
    font-weight: 700;
    margin: 0;
}

/* Desktop Grid */
.stat-item {
    text-align: center;
    padding: 2rem 1rem;
}

.stat-number {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--teal, #003d5c);
    margin-bottom: 0.5rem;
    display: block;
}

.stat-label {
    font-size: 1rem;
    color: #666;
    font-weight: 500;
}

/* Mobile Swiper Container */
@media (max-width: 767.98px) {
    .stats-swiper-container {
        position: relative;
        margin-bottom: 0;
    }

.stats-section {
    padding: 2rem 0;
}
.stats-section .stats-header, .stats-section .stat-item {
    margin-bottom: 0;

}
.stats-section .stats-title {
    font-size: 30px;
}
.stats-section .stat-item {
            padding: 0 0 1rem;
}
.stats-section .stat-number {
    font-size: 70px;
}
    .stats-swiper {
        padding-bottom:0;
    }
.swiper-controls {
    margin:0;
}
    .swiper-slide {
        display: flex;
        align-items: center;
        justify-content: center;
    }
.stats-section .stat-item {
    opacity:1 !important;
}
    .stat-item {
        width: 100%;
        padding:0;
    }

    .stat-number {
        font-size: 2.25rem;
    }

    .stat-label {
        font-size: 0.95rem;
    }
    .swiper-controls {
        display: flex;
        justify-content: center;
        margin-top: 1rem;
    }

    .stats-swiper-prev,
    .stats-swiper-next {
        background-color:transparent;
        border: none;
        width: 50px;
        height: 50px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: all 0.3s ease;
        color: #000;
    }


    .stats-swiper-prev i,
    .stats-swiper-next i {
        font-size: 1.5rem;
        font-weight:700;
    }

    .stats-swiper-prev:disabled,
    .stats-swiper-next:disabled {
        opacity: 0.5;
        cursor: not-allowed;
    }

    .stats-swiper-prev:disabled:hover,
    .stats-swiper-next:disabled:hover {
        background-color: var(--teal, #003d5c);
        transform: scale(1);
    }
}

/* Tablet and Desktop */
@media (min-width: 768px) {
    .stats-swiper-container {
        display: none;
    }

    .stat-item {
        transition: transform 0.3s ease;
    }

    .stat-item:hover {
        transform: translateY(-5px);
    }
}
/* Animation enhancement */
.stats-section .stat-item {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.6s ease;
}

.stats-section .stat-item[data-aos="fade-up"] {
    opacity: 1;
    transform: translateY(0);
}

/* Swiper Carousel */
/* Swiper Carousel Section */
.swiper-carousel-section {
    background: #f5f6f7;
    padding: 0;
    position: relative;
}

.swiper-carousel-section .carousel-wrapper {
    position: relative;
}

/* Text Navigation Tabs (Upper Left) */
.swiper-carousel-section .carousel-nav-tabs {
    position: absolute;
    top: 2rem;
    left: 1.2rem;
    z-index: 10;
    display: flex;
    gap: 2rem;
}

.swiper-carousel-section .nav-tab {
    background: none;
    border: none;
    font-size: 0.875rem;
    font-weight: 700;
    color: #000;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    padding: 0.5rem 0;
    transition: all 0.3s ease;
    position: relative;
}

.swiper-carousel-section .nav-tab:hover,
.swiper-carousel-section .nav-tab.active {
    font-weight: 700 !important;
    color:#7C7C7C;
}

/* Swiper Container */
.swiper-carousel-section .carousel-swiper {
    width: 100%;
    height: auto;
    min-height: 500px;
}

.swiper-carousel-section .swiper-slide {
    padding: 4rem 1rem 4rem 1.5rem;
    display: flex;
    align-items: center;
}

/* Slide Content */
.swiper-carousel-section {
    background: #E6EFF0;
}
.swiper-carousel-section .slide-content {
    padding: 3rem 3rem 3rem 0;
}

.swiper-carousel-section .slide-title {
    font-size: 3rem;
    font-weight: 400;
    color: #000;
    font-family:var(--jost);
    margin-bottom: 1rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    position:relative;
}
.swiper-carousel-section .slide-title::after {
    content:'';
    background-color: var(--gold);
    height:60px;
    width:4px;
    position: absolute;
    top: 0;
    left: -1.5rem;
}
.swiper-carousel-section .title-accent {
    width: 4px;
    height: 60px;
    background: #f4c430;
    display: block;
    flex-shrink: 0;
}

.swiper-carousel-section .slide-subtitle {
    font-size: 1.5rem;
    font-weight: 600;
    color: #000;
    line-height: 1.3;
}

.swiper-carousel-section .slide-text {
    font-size: 1rem;
    line-height: 1.6;
    color: #666;
    margin-bottom: 2.5rem;
}

.swiper-carousel-section .slide-text p {
    margin-bottom: 1rem;
    color:#000;
    font-size:18px;
}

.swiper-carousel-section .slide-text p:last-child {
    margin-bottom: 0;
}

/* Slide Image */

.swiper-carousel-section .slide-image {
    position:relative;
}
.swiper-carousel-section .slide-image img {
    box-shadow: none;
    width: 100%;
    height: auto;
    position:relative;
}
.swiper-carousel-section .slide-image:after {
    background-color: var(--gold);
    content: '';
    position: absolute;
    bottom: -16px;
    height: 16px;
    width: 80%;
    right: 0;
}
/* Pagination Dots */
.swiper-carousel-section .swiper-pagination {
    position: absolute;
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
    width: auto;
}

.swiper-carousel-section .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    background: rgba(0,0,0,0.3);
    margin: 0 6px;
    transition: all 0.3s ease;
}

.swiper-carousel-section .swiper-pagination-bullet-active {
    background: #333;
    transform: scale(1.2);
}

/* Mobile Responsiveness */
@media (max-width: 991.98px) {
    .swiper-carousel-section .carousel-nav-tabs {
        position: relative;
        top: 0;
        left: 0;
        padding: 1rem;
        justify-content: center;
        flex-wrap: wrap;
        gap: 1rem;
    }
    .swiper-carousel-section .swiper-slide {
        padding: 2rem 1rem;
    }
    .swiper-carousel-section .slide-image img {
            box-shadow: none !important;
    }
    .swiper-carousel-section .slide-content {
        padding-right: 0;
        margin-bottom: 2rem;
        text-align: left;
    }
    

    
    .swiper-carousel-section .slide-subtitle {
        font-size: 1.25rem;
    }
    
    .swiper-carousel-section .title-accent {
        height: 40px;
    }
    .swiper-carousel-section .slide-content {
    padding: 0;
}
}

@media (max-width: 767.98px) {
    .swiper-carousel-section .carousel-nav-tabs {
        gap: 0.5rem;
        padding: 1rem;
    }
 
    .swiper-carousel-section .carousel-swiper {

    min-height: 830px;
}
.swiper-carousel-section .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-carousel-section .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 20px);
}
    .swiper-carousel-section .nav-tab {
        font-size: 14px;
        padding: 0.5rem 0.25rem;
    }
    .swiper-carousel-section .swiper-pagination {
        bottom: 0.2rem;
}
    .swiper-carousel-section .slide-title {
        font-size: 3rem;
        padding-left: 1rem;
    }
    .swiper-carousel-section .slide-title::after {
    content: '';
    background-color: var(--gold);
    height: 60px;
    width: 4px;
    position: absolute;
    top: 0;
    left: 0;
}
    .swiper-carousel-section .slide-subtitle {
        font-size: 1.1rem;
        padding-left: 1.2rem;
    }
    .swiper-carousel-section .slide-text, .swiper-carousel-section .slide-button {
padding-left: 1.2rem;
    }
    .swiper-carousel-section .swiper-slide {
        padding: 1.5rem 1rem;
        text-align:left;
    }
}

/* Accessibility enhancements */
.swiper-carousel-section .nav-tab:focus {
    outline: 2px solid var(--teal);
    outline-offset: 2px;
}

.swiper-carousel-section .swiper-pagination-bullet:focus {
    outline: 2px solid var(--teal);
    outline-offset: 2px;
}

/* Animation integration */
.swiper-carousel-section .slide-content.animate-left,
.swiper-carousel-section .slide-image.animate-right {
    opacity: 0;
    transform: translateX(50px);
    transition: all 0.8s ease-out;
}

.swiper-carousel-section .swiper-slide-active .animate-left {
    opacity: 1;
    transform: translateX(0);
}

.swiper-carousel-section .swiper-slide-active .animate-right {
    opacity: 1;
    transform: translateX(0);
}
/* Testimonial Video Section */

/* Testimonial Video Section */
.testimonial-video-section {
    background: var(--gold);
    padding: 56px 0 80px;
    overflow: hidden;
    position: relative;
}
.testimonial-video-section.text-based {
    padding: 56px 0 190px;
}

/* Teal background rectangle on the right */
.testimonial-video-section::before {
    content: '';
    position: absolute;
    top: 30%;
    right: 0;
    width: 50%;
    height: 65%;
    background: var(--teal);
    z-index: 1;
}

.testimonial-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 2;
}

/* Header */
.testimonial-header {
    margin-bottom: 40px;
    position: relative;
    z-index: 3;
}

.testimonial-main-title {
    font-size: 44px;
    font-weight: 400;
    color: var(--dk-gray);
    font-family: var(--jost);
    margin: 0;
}

/* Navigation positioned at top right */
.testimonial-navigation {
    position: absolute;
    top: 100px;
    right: 20px;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 20px;
}

.testimonial-pagination {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 1rem;
    font-weight: 600;
    color: #000;
    margin-right:5rem;
}

.testimonial-arrows {
    display: flex;
    gap: 10px;
}

.testimonial-prev, .testimonial-next {
    background: none;
    border: none;
    color: #000;
    font-size: 20px;
}

.testimonial-prev:hover,
.testimonial-next:hover {
    transform: scale(1.1);
}

/* Swiper Container */
.testimonial-swiper {
    margin-top: 30px;
    position: relative;
    z-index: 3;
}

.testimonial-slide-content {
    position: relative;
    display: block;
}

.video-container {
    position: relative;
    width: 100%;
}

.inline-video-player {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.testimonial-iframe {
    width: 100%;
    height: 100%;
    display: block;
}

.video-thumbnail-wrapper {
    position: relative;
    width: 100%;
    display: block;
}

.video-thumbnail {
    width: 100%;
    height: auto;
    display: block;
}

.video-play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    background: rgba(0, 0, 0, 0.6);
    border: none;
    border-radius: 50%;
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.video-play-btn:hover {
    background: rgba(0, 0, 0, 0.8);
    transform: translate(-50%, -50%) scale(1.1);
}

.video-play-btn i {
    color: white;
    font-size: 32px;
    margin-left: 4px;
}
.video-container {
    position: relative;
    width: 70%;
    height: 501px;
    margin-bottom: 15px;
}
.testimonial-video-section.text-based::before {
    content: url(/wp-content/uploads/2025/12/GA-Home-Testimonial-Static-Image.jpg);
    position: absolute;
    top: 30%;
    right: 0;
    width: 50%;
    background: transparent !important;
    z-index: 100;
}
.testimonial-video-section.text-based .video-container {
    position: relative;
    width: 70%;
    height: 501px;
    margin-bottom: 15px;
    background:#fff;
    padding: 4rem 17rem 0rem 3rem;
}
.video-thumbnail {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.video-container:after {
    background-color: #fff;
    content: '';
    position: absolute;
    bottom: -16px;
    height: 16px;
    width: 580px;
    left: 0;
}
.video-play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 122px;
    height: 122px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.4);
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.video-play-btn:hover {
    transform: translate(-50%, -50%) scale(1.1);
}

.video-play-btn i {
    margin-left: 4px;
    color: #fff;
    font-size: 55px;
}

/* Video Title */
.video-title {
    color: #000;
    padding: 12px 20px 12px 0px;
    font-weight: bold;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-radius: 6px;
    width: 70%;
    margin: 0;
}

/* Quote Overlay - Absolutely positioned to overlap */
.quote-overlay {
    position: absolute;
    top: 140px;
    right: 0%;
    background: white;
    padding: 30px;
    width: 400px;
    min-height: 250px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
    z-index: 5;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.testimonial-quote {
    flex: 1;
}

.quote-mark {
color: var(--teal);
    margin-bottom: 0;
    font-family: 'EB Garamond', serif;
    font-size: 100px;
    line-height: 45px;
}

.quote-text {
    font-size: 1rem;
    line-height: 1.5;
    color: #333;
    margin-bottom: 20px;
}
.testimonial-video-section.text-based .quote-text {
    font-size: 20px;
    line-height: 28px;
    color: #000;
    margin-bottom: 20px;
    margin-top: 1.5rem;
}
.testimonial-video-section.text-based .person-name{
    font-weight: 700;
    color: #000;
    font-size:16px;
    line-height:24px;
        padding-top: 2rem;
}
.testimonial-video-section.text-based .title-text {
    font-weight: 400;
    color: #000;
    font-size:16px;
    line-height:24px;
}
.quote-text p {
    margin: 0 0 10px 0;
}

.quote-text p:last-child {
    margin-bottom: 0;
      font-family: 'EB Garamond', serif;
  font-weight: 400;
  font-style: normal;
  font-size: 20px;
  line-height: 24px;
  letter-spacing: 0;
}

.person-name {
    font-weight: 700;
    color: #000;
    font-size: 16px;
    margin-top: auto;
}

/* Video Modal */
.video-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.9);
    z-index: 9999;
    align-items: center;
    justify-content: center;
}

.video-modal-content {
    position: relative;
    width: 90%;
    max-width: 800px;
    aspect-ratio: 16/9;
}

.video-modal-close {
    position: absolute;
    top: -40px;
    right: 0;
    background: none;
    border: none;
    color: white;
    font-size: 30px;
    cursor: pointer;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.video-modal-body {
    width: 100%;
    height: 100%;
}

.video-modal-body iframe {
    width: 100%;
    height: 100%;
    border: none;
}

/* Responsive Design */
@media (max-width: 768px) {
    .testimonial-video-section::before {
        display: none;
    }
    .inline-video-player .testimonial-iframe.active {
    display: block;
}

.video-thumbnail-wrapper.hidden {
    display: block;
}
    .testimonial-navigation {
        position: relative;
        display: block;
        top: 0;
        right: 0;
    }
    
    .video-container,
    .video-title {
        width: 100%;
    }
    .testimonial-pagination {
        float:left;
    }
    .testimonial-arrows {
        float:right;
        display:block;
    }
    .video-container {
        height: 250px;
    }
    
    .quote-overlay {
        position: static;
        width: 100%;
        margin-top: 0;
        border-bottom:30px solid var(--teal);
    }
    
    .testimonial-main-title {
        font-size: 2rem;
        text-align: center;
    }
}

@media (max-width: 480px) {
    .quote-overlay {
        padding: 20px;
    }
    
    .video-play-btn {
        width: 60px;
        height: 60px;
        font-size: 18px;
    }
    
    .quote-mark {
        font-size: 2.5rem;
    }
}

/* Video Modal */
.video-modal {
    display: none;
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    justify-content: center;
    align-items: center;
}

.video-modal-content {
    position: relative;
    width: 90%;
    max-width: 800px;
    background: #000;
    border-radius: 8px;
    overflow: hidden;
}

.video-modal-close {
    position: absolute;
    top: -50px;
    right: 0;
    color: white;
    font-size: 2rem;
    font-weight: bold;
    background: none;
    border: none;
    cursor: pointer;
    z-index: 10001;
    padding: 10px;
}

.video-modal-close:hover {
    opacity: 0.7;
}

.video-modal-body iframe {
    width: 100%;
    height: 450px;
}

/* Mobile Responsiveness */
@media (max-width: 991.98px) {
    .testimonial-video-section .testimonial-slide-content {
        flex-direction: column;
        height: auto;
    }
    
    .testimonial-video-section .video-container {
        border-radius: 8px 8px 0 0;
        height: 250px;
    }
    .testimonial-video-section.text-based {
    padding: 45px 0;
}
    
    .testimonial-video-section .quote-section {
        border-radius: 0 0 8px 8px;
        padding: 1.5rem;
    }
    .testimonial-video-section.text-based .video-container {
        padding:1.5rem;
            width:100%;
    }
    .testimonial-video-section .testimonial-main-title {
        font-size: 48px;
        text-align: left;
        line-height:47px;
        padding-right:3rem;
                padding-bottom: 1rem;
    }
}

@media (max-width: 767.98px) {
    .testimonial-video-section {
        padding: 2rem 0;
    }
    .video-play-btn i {
    font-size: 30px;
}
    .video-play-btn {
    position: absolute;
    top: 70%;
    left: 15%;
    }
    .testimonial-header {
        padding:0;
        margin: 0 0 0.5rem;
    }
    .testimonial-video-section .testimonial-container {
        padding: 0 1rem;
    }
    
    .testimonial-video-section .video-container {
        height:auto;
        margin:0;
    }
    
    .testimonial-video-section .video-play-btn {
        width: 60px;
        height: 60px;
        font-size: 1.2rem;
    }
    .video-container:after, .testimonial-video-section .video-title {
        display:none;
    }
    .testimonial-video-section .quote-section {
        padding: 1rem;
    }
    
    .testimonial-video-section .quote-mark {
        font-size: 3rem;
    }
    
 
    
    .video-modal-content {
        width: 95%;
    }
    
    .video-modal-body iframe {
        height: 250px;
    }
}

/* Accessibility */
.testimonial-video-section .video-play-btn:focus,
.testimonial-video-section .testimonial-prev:focus,
.testimonial-video-section .testimonial-next:focus {
    outline: 2px solid white;
    outline-offset: 2px;
}

/* Ensure no conflicts with other swiper instances */
.testimonial-video-section .swiper-wrapper,
.testimonial-video-section .swiper-slide {
    box-sizing: border-box;
}

/* Global CTA */
.cta-banner-section {
    padding: 5rem 0;
    position: relative;
    border-top: 1px solid #ccc;
}
.cta-banner-section .cta-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 3rem;
}
.cta-banner-section .cta-headline {
    font-size: 44px;
    font-weight: 600;
    color: #000;
     font-family: var(--jost);
    margin-bottom: 1rem;
    line-height: 1.2;
}
.cta-banner-section .cta-subtext {
    font-size: 18px;
    line-height: 1.6;
    margin: 0;
}
.cta-banner-section .cta-right .cta-button {
    float: right;
}
.cta-banner-section .cta-subtext p {
    margin-bottom: 0.5rem;
}
.cta-banner-section .cta-subtext p:last-child {
    margin-bottom: 0;
}
.cta-banner-section .cta-phone {
    text-align: center;
    margin-bottom:1rem;
}
.cta-banner-section .phone-link {
    font-size: 33px;
    font-weight: 700;
    color: var(--teal);
    font-family: var(--jost);
    text-decoration: none;
    transition: color 0.3s ease;
    display: block;
}
.cta-banner-section .phone-link:hover {
    color:#f7f0d4;
 
}
/* Mobile Responsiveness */
@media (max-width: 991.98px) {
    .cta-banner-section .cta-content {
        flex-direction: column;
        text-align: center;
        gap: 2rem;
    }
    
    .cta-banner-section .cta-phone, .cta-banner-section .cta-right .cta-button {
        text-align: left;
        float:none;
    }
    
    .cta-banner-section .cta-headline {
        font-size: 34px;
    }
    
    .cta-banner-section .phone-link {
        font-size: 1.75rem;
    }
    .cta-banner-section .cta-phone {
        margin-top:1rem;
    }
}

@media (max-width: 767.98px) {
    .cta-banner-section {
        padding: 2rem 0;
    }
    .cta-banner-section .cta-content {
        gap: 1.5rem;
    }
    .cta-banner-section .cta-left {
        text-align: left;
    }
 
    
    .cta-banner-section .phone-link {
        font-size: 1.5rem;
    }
    
    .cta-banner-section .btn-cta {
        padding: 1.25rem 2rem;
        font-size: 0.9rem;
    }
}

@media (max-width: 575.98px) {

    .cta-banner-section .phone-link {
        font-size: 1.375rem;
    }
}

/* Accessibility */
.cta-banner-section .phone-link:focus,
.cta-banner-section .btn-cta:focus {
    outline: 2px solid var(--teal);
    outline-offset: 2px;
}
.ddl-cta {
  padding:4rem 0;
}
.ddl-cta .container {
  padding:0 25px;
}
.ddl-cta .form-select:focus {
    border-color: var(--teal);
    box-shadow: 0 0 0 0.25rem rgba(90, 127, 122, 0.25);
}
.ddl-cta label {
    color:var(--teal) !important;
    font-size: 44px;
    font-family: var(--jost);
}
.ddl-cta .card {
  border:0;
  background-color: transparent;
}
.ddl-cta .btn, .ddl-cta .form-select {
    transition: all 0.3s ease;
}
.ddl-cta .form-select {
    padding: 1.3rem;
    border-radius: 0;
}
.resources-sidebar {
    padding: 0;
    border-radius: 0.375rem;
    height: fit-content;
}

.resources-sidebar h3 {
    font-size: 1.25rem;
    margin-bottom: 1.5rem;
    color: #666;
    font-weight: 500;
}
.resource-type img {
    width:24px;
    height:24px;
    margin-right: 3px;
}
.filter-section h4 {
    margin-bottom: 1rem;
    font-size: 24px;
    color: var(--teal);
    font-weight: 400;
}

.resource-card {
    background: white;
    border-radius: 0.5rem;
    border: 1px solid #ccc;
    transition: all 0.3s ease;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
}
.resource-card h3.resource-title { 
    font-family: var(--open);
    font-weight:700;
    font-size:20px;
    color:#000;
}
.resource-card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15);
    transform: translateY(-2px);
}

.resource-type {
    background:#E6EFF0;
    padding: 0.5rem 1rem;
    font-size: 1rem;
    font-weight: 600;
    color: #7C7C7C;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.resource-content {
    padding: 1.25rem;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.resource-title {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    line-height: 1.4;
    color: #333;
}

.resource-excerpt {
    color: #6c757d;
    font-size: 0.875rem;
    line-height: 1.5;
    margin-bottom: 1rem;
    flex-grow: 1;
}

.resource-card .read-more {
    color: var(--teal);
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    align-self: flex-start;
    font-family: var(--jost);
}



.loading {
    color: #6c757d;
}

.no-resources {
    background: #f8f9fa;
    border-radius: 0.5rem;
    padding: 3rem 2rem;
    text-align: center;
    color: #6c757d;
}

.search-wrapper .btn {
    border-left: 0;
}

.search-wrapper .form-control:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.search-wrapper .btn:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

/* Ensure equal height cards */
.resource-card-wrapper {
    display: flex;
    height: 100%;
}
.filter-toggle h4 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-right: 1rem;
}

.filter-toggle .bi-chevron-down {
  margin-left: 1rem;
  margin-right: 0;
}
@media (max-width: 767.98px) {
    .resources-sidebar {
        margin-bottom:0;
    }
    
    .resources-header h1 {
        font-size: 2rem;
    }
}
/* Mobile filter toggle */
@media (max-width: 991px) {
  .filter-toggle {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    width: 100%;
    text-align: left;
  }

  .filter-toggle h4 {
    display: block;

    color:#000;
  }

  .filter-toggle .bi-chevron-down {
    transition: transform 0.3s ease;
  }

  .filter-toggle[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
  }

  .collapse:not(.show) {
    display: none;
  }

  #filterCollapse {
    margin-top: 1rem;
  }

 
}

.contact-menu-col h6 {
    font-size: 0.875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 1rem;
    color: #333;
}

.contact-menu-col .contact-item {
    margin-bottom: 1.25rem;
    font-size: 18px;
    line-height: 1.6;
    color: #333;
}

.contact-menu-col .contact-item strong {
    display: block;
    font-weight: 700;
    margin-bottom: 0.25rem;
    color: #000;
}

.contact-menu-col .contact-item:last-child {
    margin-bottom: 0;
}
.interior-page-contact #submit_button {
    font-family: var(--jost);
    background: var(--teal);
    border: none;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 0;
    padding: 1.3rem 3.5rem;
    color: #fff;
        margin: 1rem auto;
    display: block;
}
.interior-page-contact #submit_button:hover {
background-color: #1A3D45;
}
.interior-page-contact .col-12.col-lg-8 {
    margin-right:6.2rem;
}
.interior-page-contact .main-content, .interior-page-contact .main-content .wForm {
    background-color:#E6EFF0;
}
.interior-page-contact .col-12.col-lg-9 p {
    padding-bottom: 1rem;
        font-size: 18px;
    color: #000;
    line-height: 28px;
}
.interior-page-contact .sidebar-cta-one {
    margin: 5.7rem 0 3rem !important;
}
.interior-page-contact .sidebar-cta-one h4 {
    display:none;
}

.oneField .label span {
    font-family:var(--open) !important;
}

.inputWrapper .choices.vertical span {
    display: inline-block !important;
    margin-right: 1rem !important;
}
.inputWrapper .choices.vertical input {
    min-height:auto;
}
.inputWrapper input, .inputWrapper select{
    min-height:55px;
}
.internal-hero .hero-background {
    background-image: var(--bg-desktop);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

@media (max-width: 767px) {
    .internal-hero .hero-background {
        background-image: var(--bg-mobile);
    }
}
/* Icons Section Custom Styles */
.icons-section {
  background-color: #EBEBEB;
}
.icons-section .h5 {
  color:#000;
  text-transform: uppercase;
  font-size:18px;
  line-height: 24px;
  font-weight:700;
  padding-right: 2rem;
}
.icons-section .logo-item {
    transition: all 0.3s ease;
}

.icons-section .logo-image {
    max-height: 60px;
    width: auto;
}

.icons-section .logo-item:hover .logo-image {
    opacity: 1;
    filter: grayscale(0);
}

/* Focus states for accessibility */
.icons-section a:focus {
    outline: 2px solid var(--teal);
    outline-offset: 4px;
    border-radius: 4px;
}

/* Internal Hero Component */
.internal-hero {
    position: relative;
    height: 400px;
}
.internal-hero .hero-background {
  min-height:400px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
}

.internal-hero .hero-background:after {
    background-color: var(--gold);
    content: '';
    position: absolute;
    bottom: -16px;
    height: 16px;
    width: 59%;
    right: 0;
}
.internal-hero .hero-content-box {
 position: absolute;
    background: var(--teal);
    padding: 3rem 2.5rem;
    font-family:var(--jost);
    z-index: 3;
    width: 456px;
    min-height: 456px;
    margin: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.internal-hero .hero-accent-line {
    width: 182px;
    height: 4px;
    background: var(--gold);
    margin-bottom: 1.5rem;
}

.internal-hero .hero-title {
    color: white;
    font-size: 58px;
    font-weight: 400;
    line-height: 64px;
    margin: 0;
}

/* Mobile Responsiveness */
@media (max-width: 991.98px) {
    .internal-hero {
        height: 300px;
    }
    
    .internal-hero .hero-content-box {
        padding: 2rem 1.5rem;
        max-width: 350px;
         min-height: 384px;
    }
    
    .internal-hero .hero-title {
        font-size: 2rem;
    }
    
    .internal-hero .hero-accent-line {
        width: 108px;
        height: 3px;
        margin-bottom: 1rem;
    }
}

@media (max-width: 767.98px) {
.internal-hero .hero-background {
  min-height:280px;
}
    .icons-section .h5 {
        padding-right: 0;
        text-align: center;
    }
    .icons-section {

    padding: 1.5rem 0 0.5rem !important;
}
    .internal-hero {
        height: 250px;
    }
    .internal-hero .hero-content-box {
position: absolute;
        background: var(--teal);
        padding: 3rem 2.5rem;
        font-family: var(--jost);
        z-index: 3;
        width: auto;
        min-height: auto;
        margin: 1.5rem;
        bottom: -40px;
        display: flex;
        flex-direction: column;
          max-width: 250px;
        justify-content: center;
}
    .interior-sidebar {
        margin-top:3rem;
    }
    .internal-hero .hero-title {
        font-size: 30px;
        line-height: 35px;
    }
      .icons-section .d-flex {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    justify-items: center;
  }
.icons-section .logo-item {
    padding:1rem;
}
  .icons-section .logo-item:nth-last-child(1),
  .icons-section .logo-item:nth-last-child(2) {
    grid-column: auto / span 1;
    margin: 0 auto;
  }
}

/* Reduced motion accessibility */
@media (prefers-reduced-motion: reduce) {
    .internal-hero .hero-background {
        transform: none !important;
    }
}

/* Interior Layout Wrapper */
.interior-layout-wrapper {
    background: white;
}

/* Sidebar Navigation */
.interior-layout-wrapper .sidebar-nav {
    margin-bottom: 2rem;
}

.interior-layout-wrapper .nav-list {
    list-style: none;
    padding: 0;
    margin: 0;
    background: #f8f9fa;
    border-radius: 4px;
    overflow: hidden;
}

.interior-layout-wrapper .nav-item {
    border-bottom: 1px solid #e0e0e0;
}

.interior-layout-wrapper .nav-item:last-child {
    border-bottom: none;
}

.interior-layout-wrapper .nav-link {
    display: block;
    padding: 0.875rem 1.25rem;
    color: #333;
    text-decoration: none;
    transition: all 0.3s ease;
    font-weight: 500;
}

.interior-layout-wrapper .nav-link:hover {
    background: var(--teal);
    color: white;
}

.interior-layout-wrapper .nav-link.active {
    background: var(--teal);
    color: white;
    position: relative;
}

.interior-layout-wrapper .nav-link.active::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: #f4c430;
}
.interior-page-content {
  margin: 9rem 0 0;
}
.interior-page-content.news-detail {
    padding: 1.5rem 0 0;
    border-top: 1px solid #CCCCCC;
    margin: 1.5rem 0 0;
}
.interior-page-content.news-detail .main-content img {
    max-width:440px;
}
.interior-page-content.news-detail .nav-previous, .interior-page-content.news-detail .nav-next {
padding-bottom:1rem;
margin-bottom:1rem;
transition: border-bottom 0.3s ease;
border-bottom: 4px solid #fff;
 }
.interior-page-content.news-detail .nav-previous a, .interior-page-content.news-detail .nav-next a {
color:#000;
text-decoration:none;
font-size:16px;
line-height:20px;
font-weight:700;
 }
.interior-page-content.news-detail .entry-content, .interior-page-content.news-detail .entry-meta.mb-4 {
      font-size:18px;
    line-height:28px;
    color:#191919;
}
.form-check:has(#cat-1) {
    display: none;
}
.interior-page-content.news-detail .post-category {
    padding-right:0.4rem;
}
.interior-page-content.news-detail .post-title {
    font-size:22px;
    line-height:28px;
    color:#191919;
    font-weight:700;
    margin-bottom:1.3rem;
}
.interior-page-content.news-detail .entry-content a {
    color: #c54127;
    text-decoration: underline;
    word-wrap: break-word;
}
.interior-page-content.news-detail .entry-content a:hover{
    color: #1A3D45;
}
.interior-page-content.news-detail .share-btn{
    background: none; 
    border: none; 
    cursor: pointer; 
    display: flex; 
    align-items: center; 
    gap: 6px; 
    font-size: 16px; 
    color: #000; 
    font-weight:700;
    transition: opacity 0.2s; 
    padding: 0;
}
.interior-page-content.news-detail .print-btn {
     font-weight:700;background: none; border: none; cursor: pointer; display: flex; align-items: center; gap: 6px; font-size: 16px; color: #000; transition: opacity 0.2s; padding: 0;
}
.interior-page-content.news-detail .nav-previous:hover,
.interior-page-content.news-detail .nav-next:hover {
  border-bottom: 4px solid #D7B229;
}

.interior-page-content.news-detail .child-pages-nav a {
    display: block;
    padding: 15px 20px;
    color: #000;
    font-size: 18px;
    text-decoration: none;
    background: #E6EFF0;
        border-top: 1px solid #CCC;
            border-bottom: 1px solid #CCC;
}
.interior-page-content .col-12.col-lg-9{
  padding-right:5rem;
}

/* Child Pages Nav*/
.child-pages-nav ul {
    list-style: none;
    margin: 0;
    padding-left:0;
}
.child-pages-nav ul li {
    border-bottom: 1px solid #CCC;
}
.child-pages-nav ul li:first-child {
    border-top: 1px solid #CCC;
}

.child-pages-nav ul li a {
    display: block;
    padding: 15px 20px;
    color: #000;
        font-size: 18px;

    text-decoration: none;
    background: #fff;
}
.child-pages-nav ul li a.active {
        background: #E6EFF0;
}
      .interior-sidebar .sidebar-cta-two.mobile-view, .interior-sidebar .sidebar-cta-one.mobile-view {
        display:none;
    }
    .interior-page-content.mobile-view {
        padding:0;
        margin:0;
    }
@media (max-width: 768px) {
    .interior-sidebar .sidebar-cta-two, .interior-sidebar .sidebar-cta-one {
        display:none;
    }
        .interior-sidebar .sidebar-cta-two.mobile-view, .interior-sidebar .sidebar-cta-one.mobile-view {
        display:block !important;
    }
    .interior-page-content .col-lg-3 {
        order: -1;
    }
    
    .interior-page-content .col-lg-9 {
        order: 1;
    }
    
    .sidebar-nav {
        margin-bottom: 2rem;
    }
    
    .child-pages-nav {
        background: white;
    }
    
    .child-pages-nav ul {
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .child-pages-nav ul li {
    border: 1px solid #CCC;
}
    .child-pages-nav ul li a {
    font-size:18px;
    color:#000;
    text-decoration: none;
    display:block;
    }
    
    .child-pages-nav ul li:first-child {
        position: relative;
    }
    
    .child-pages-nav ul li:first-child a {
        background: white;
        font-weight: bold;
        padding-right: 60px;
    }
    
    /* Chevron toggle button */
    .child-pages-nav ul li:first-child .chevron-toggle {
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        width: 50px;
        background: none;
        border: none;
color:#000;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 16px;
    }
    
    .child-pages-nav ul li:first-child .chevron-toggle::after {
        content: '\F282';
        font-family: 'bootstrap-icons', sans-serif;
        font-size: 1.2rem;
        transition: all 0.3s ease;
        flex-shrink: 0;
        color:#000;
    }
    
    .child-pages-nav.dropdown-open ul li:first-child .chevron-toggle::after {
                content: '\F286';
        font-family: 'bootstrap-icons', sans-serif;
        font-size: 1.2rem;
        transition: all 0.3s ease;
        flex-shrink: 0;
    }
    
    /* Hide items except first */
    .child-pages-nav ul li:not(:first-child) {
        display: none;
    }
    
    /* Show all when open */
    .child-pages-nav.dropdown-open ul li {
        display: block;
    }
    

}

/* Breakpoint: 767px and below */
@media (max-width: 767px) {
.tab-content-text {
    display: flex;
    flex-direction: column;
  }

  .tab-content-text .section-content {
    order: 1;
  }

  .tab-content-text .section-bottom {
    order: 2;
  }

  .tab-content-text .section-button {
    order: 3;
            margin-bottom: 1rem;
        margin-top: -15px;
  }

  .tab-content-text .section-image {
    order: 4;
  }
}

/* Sidebar CTAs */
.interior-sidebar .sidebar-cta-one {
    border-top: 4px solid var(--teal);
    padding: 45px 30px;
    text-align: center;
    margin: 5rem 0;
    border-left:1px solid #ccc;
    border-bottom:1px solid #ccc;
    border-right:1px solid #ccc;
}
.interior-sidebar .sidebar-cta-one .cta-title {
    font-size: 1rem;
    font-weight: 700;
    color:  var(--teal);
    margin-bottom: 1rem;
}
.interior-sidebar .sidebar-cta-one h4 {
   font-size:24px;
  line-height:34px;
  color:#999;
}
.interior-sidebar .sidebar-cta-one .cta-content p {
    font-size:16px;
    line-height:24px;
    color:#000;
    font-weight: 500;
}
.interior-sidebar .sidebar-cta-one .btn, .interior-sidebar .sidebar-cta-two .btn {
    font-size: 18px;
    padding: 0.8rem 1rem;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.5px;
    display:block;
}
.interior-sidebar .sidebar-cta-one .btn.btn-primary, .load-more-wrapper .btn.btn-primary {
    border:1px solid var(--teal);
    color: var(--teal);
    background:#fff;
}
.interior-sidebar .sidebar-cta-one .btn.btn-primary:hover, .load-more-wrapper .btn.btn-primary:hover {
    border:1px solid var(--teal);
    color: #fff;
    background:var(--teal);
}
.interior-sidebar .sidebar-cta-two {
    background: var(--teal);
    padding: 45px 30px;
    text-align:center;
    color:#fff;
    margin-top: 3rem;
}
.interior-sidebar .sidebar-cta-two .cta-title {
    font-size:24px;
    line-height:30px;
    font-weight: 700;
}
.interior-sidebar .sidebar-cta-two .cta-content p {
    font-size:16px;
    line-height:24px;
    font-weight: 500;
}
.interior-sidebar .sidebar-cta-two .btn.btn-primary {
    background-color:#fff;
    color: var(--teal);
}
.interior-sidebar .sidebar-cta-two .btn.btn-primary:hover {
    background-color:var(--teal);
    color: #fff;
    border:1px solid #fff;
}

/* Content Block Styles */
.interior-content-block {
    margin-bottom: 3rem;
}
.interior-content-block a {
    color: #c54127;
    text-decoration: underline;
        word-wrap: break-word;
}
.interior-content-block a:hover, .interior-content-block a:focus {
    color: #1A3D45;
    text-decoration: underline;
}
.interior-content-block .content-title {
    font-size: 1.75rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 1.5rem;
}
.interior-content-block .content-text p {
     margin-bottom: 1.3rem;
     font-weight:400;
}
.interior-content-block .content-text p, .interior-content-block .content-text ul li, .interior-content-block .content-text ol li, .team-directory-section p, .interior-page-general.interior-content-block p, .interior-page-general.interior-content-block ul li, .interior-page-general.interior-content-block ol li {
    font-size: 18px;
    line-height: 28px;
    color: var(--dk-gray);
}

.interior-content-block .content-text h3,
.interior-content-block .content-text h4 {
    color: var(--teal);
    margin-top: 2rem;
    margin-bottom: 1rem;
}

.interior-content-block .content-text ul,
.interior-content-block .content-text ol {
    margin-bottom: 1rem;
    padding-left: 1.5rem;
}

.interior-content-block .content-text li {
    margin-bottom: 0.5rem;
}

/* Support Icons Diagram */
.interior-content-block .support-diagram {
    position: relative;
    width: 300px;
    height: 300px;
    margin: 0 auto;
}

.interior-content-block .student-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}

.interior-content-block .icon-circle {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: white;
    border: 3px solid var(--teal);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 0.5rem;
}

.interior-content-block .student-icon .icon-circle {
    width: 80px;
    height: 80px;
    background: var(--teal);
    color: white;
    border-color: #f4c430;
}

.interior-content-block .icon-circle i {
    font-size: 1.5rem;
    color: var(--teal);
}

.interior-content-block .student-icon .icon-circle i {
    color: white;
    font-size: 2rem;
}

.interior-content-block .support-item {
    position: absolute;
    text-align: center;
    width: 100px;
}

.interior-content-block .support-label {
    font-size: 0.75rem;
    font-weight: 600;
    color: #333;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1.2;
}

/* Position support items around the circle */
.interior-content-block .support-top-left {
    top: 20px;
    left: 20px;
}

.interior-content-block .support-top-right {
    top: 20px;
    right: 20px;
}

.interior-content-block .support-bottom-left {
    bottom: 60px;
    left: 20px;
}

.interior-content-block .support-bottom-right {
    bottom: 60px;
    right: 20px;
}

.interior-content-block .support-bottom {
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
}

/* Mobile Responsiveness */
@media (max-width: 991.98px) {
  .interior-page-content .col-12.col-lg-9{
    padding-right:0;
  }
    .interior-layout-wrapper .sidebar-nav {
        margin-bottom: 1.5rem;
    }
    
    .interior-content-block .support-diagram {
        width: 250px;
        height: 250px;
    }
    
    .interior-content-block .icon-circle {
        width: 50px;
        height: 50px;
    }
    
    .interior-content-block .student-icon .icon-circle {
        width: 70px;
        height: 70px;
    }
    
    .interior-content-block .icon-circle i {
        font-size: 1.25rem;
    }
    
    .interior-content-block .student-icon .icon-circle i {
        font-size: 1.75rem;
    }
    
    .interior-content-block .support-item {
        width: 80px;
    }
    
    .interior-content-block .support-label {
        font-size: 0.6rem;
    }
}

@media (max-width: 767.98px) {
    .interior-layout-wrapper .sidebar-cta {
        padding: 1rem;
        margin-bottom: 1rem;
    }
    .main-content {
            margin: 0 0.75rem 0 0;
    }
    .interior-content-block .support-diagram {
        display: none;
    }
    .interior-page-content {
    margin: 2rem 0 0;
}
}

/* Team Directory Section */
.team-directory-section {
    background: white;
}

/* Tab Navigation */
.team-directory-section .team-nav {
    border-bottom: 4px solid var(--teal);
    justify-content: flex-start;
}

.team-directory-section .team-nav .nav-item {
    margin-right: 1rem;
}

.team-directory-section .team-nav .nav-link {
    background: #fff;
    border-bottom: 1px solid  var(--teal);
    border-top: 1px solid  var(--teal);
    border-left: 1px solid  var(--teal);
    border-right: 1px solid  var(--teal);
    color: #000;
    font-family: var(--jost);
    font-weight: 600;
    padding: 0.875rem 2rem;
    border-radius: 0;
    margin-right: 2px;
    font-size:24px;
    min-width: 285px;
}

.team-directory-section .team-nav .nav-link:hover {
    background: var(--teal);
    color: white;
    border-color: var(--teal);
}

.team-directory-section .team-nav .nav-link.active {
    background: var(--teal);
    color: white;
    border-color: var(--teal);
    position: relative;
    z-index: 1;
}

/* Tab Content */
.team-directory-section .tab-content {
    padding: 2rem 0;
}

/* Two Column Layout (First Tab) */
.team-directory-section .team-content {
    font-size: 1rem;
    line-height: 1.6;
    color: #333;
    padding-right: 2rem;
}

.team-directory-section .team-content h3 {
    color: var(--teal);
    margin-bottom: 1rem;
}

.team-directory-section .team-content p {
    margin-bottom: 1rem;
}

/* Team List (First Tab Right Column) */

.team-directory-section .team-member-item {
    justify-content: space-between;
    align-items: center;
    padding: 1rem 0;
}

.team-directory-section .team-member-item:last-child {
    border-bottom: none;
}

.team-directory-section .member-name {
font-size: 18px;
    font-weight: 700;
    line-height: 28px;
    color: #000;
    margin-bottom: 0.15rem;
}

.team-member-item {
    background: white;
    overflow: hidden;
    transition: all 0.3s ease;
}

.team-member-item:hover {
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    transform: translateY(-2px);
}

.team-directory-section .team-list .modal {
    z-index:444333;
}

.team-directory-section .team-member-modal {
    background-color: #d7b229;
    border: none;
    border-radius: 0;
    min-height:466px;
    max-width: 387px;
}

.team-directory-section .team-member-modal .modal-body {
    padding: 40px;
    display: flex;
    flex-direction: column;
}

.team-directory-section .team-member-modal .btn-close {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 10;
    opacity: 1;
}
.team-directory-section img {
    margin-top: 1rem;
    margin-bottom: 0.25rem;
}
.team-directory-section .team-member-modal .btn-close:hover {
    opacity: 0.7;
}

.team-directory-section .member-quote-display p {
    font-size: 20px;
    font-weight: 400;
    line-height: 28px;
    color: #000;
    margin: 0;
    padding-right: 2rem;
    font-family: 'EB Garamond', serif;
    margin-bottom: 0.75rem;
}

.team-directory-section .member-attribution {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.team-directory-section .member-attribution h4 {
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    color: #000;
}

.team-directory-section .member-attribution p {
    margin: 0;
    font-size: 16px;
    color: #000;
}
.team-directory-section .right-padding {
    padding-left:8rem;
}
.team-directory-section .right-padding h4 {
    font-weight:700;
}
/* Grid Layout (Other Tabs) */
.team-directory-section .team-member-card {
    background: white;
    overflow: hidden;
    transition: all 0.3s ease;
    text-align: center;
}

.team-directory-section .team-member-card:hover {
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    transform: translateY(-2px);
}

.team-directory-section #team-tab-0 .member-photo {
    width: 100%;
        margin-bottom: 1rem;
}
.team-directory-section .member-photo {
    float:left;
    min-height:285px;
    margin-bottom:0.75rem;
}
.team-directory-section .team-member-item .member-photo {
    min-height:auto;
}
.team-directory-section .team-member-item .member-photo img {
    width: 184px;
    height: 184px;
}
.team-directory-section .member-photo img {
    width: 285px;
    height: 285px;
}

.team-directory-section .member-photo.placeholder {
    background: #e8e9ea;
    color: #999;
}

.team-directory-section .member-photo.placeholder i {
    font-size: 3rem;
}

.team-directory-section .member-details {
    padding-bottom: 1.5rem;
    text-align:left;
}

.team-directory-section .team-member-card .member-title {
    font-size: 20px;
    color: #191919;
    margin-bottom: 0.25rem;
}

/* Bio Buttons */
.team-directory-section .bio-btn {
    background: none;
    text-decoration: none;
    border: 0;
    color:#2F606B;
    padding: 0.375rem 0;
    font-size: 20px;
    font-weight: 600;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.3s ease;
}
/* Bio Panels (Inline Expandable) */
.team-directory-section .bio-panel {
    margin-top: 1rem;
}

.team-directory-section .bio-panel-content {
    background: #fff;
    border: 2px solid var(--gold);
    padding: 2rem;
    position: relative;
    animation: slideDown 0.3s ease-out;
}

.team-directory-section .bio-panel-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: none;
    border: none;
    font-size: 1.5rem;
    color: #999;
    cursor: pointer;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 0.3s ease;
}

.team-directory-section .bio-panel-close:hover {
    background: #e0e0e0;
    color: #333;
}

.team-directory-section .bio-header {
    margin-bottom: 1.5rem;
}

.team-directory-section .bio-header .bio-name {
    font-size: 1.5rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 0.25rem;
}

.team-directory-section .bio-header .bio-title {
    font-size: 1rem;
    color: var(--teal);
    margin-bottom: 0;
    font-weight: 500;
}

.team-directory-section .bio-text {
    font-size: 1rem;
    line-height: 1.6;
    color: #333;
}

/* Bio Panel Animation */
@keyframes slideDown {
    from {
        opacity: 0;
        max-height: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        max-height: 500px;
        transform: translateY(0);
    }
}

/* Bio Modal (Remove old modal styles) */

/* Mobile Responsiveness */
@media (max-width: 991.98px) {
    .team-directory-section .team-content {
        padding-right: 0;
        margin-bottom: 2rem;
    }
    .team-directory-section .right-padding {
    padding-left:0;
}

}

@media (max-width: 767.98px) {
.team-nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 0;
  }

.team-directory-section .team-nav .nav-item {
    margin-right: 0;
}
  .team-nav .nav-item {
    flex: 1 !important;
    min-width: 0 !important;
  }
#teamTabsContent .col-lg-6 {
    padding:0;
}
  .team-nav .nav-link {
    width: 100% !important;
    text-align: center;
    font-size: 0.8rem !important;
    white-space: nowrap;
    padding: 0.5rem 0.25rem !important;
             min-width: auto !important;
  }
    .team-directory-section {
        padding:0 !important;
    }

    
    .team-directory-section .member-details {
        padding: 1rem;
        clear:both;
    }
    .team-directory-section .team-member-wrapper {
    margin: 0;
}
.team-directory-section .tab-content {
    padding:0 1rem;
}
    .team-directory-section .bio-btn {
        align-self: flex-end;
    }
}



/* Team Members CSS */
.team-directory-section .row {
    position: relative;
}

.team-directory-section .team-member-wrapper {
    transition: opacity 0.3s ease;
}

.team-directory-section .team-member-wrapper.dimmed {
    opacity: 0.5;
    pointer-events: none;
}

.team-directory-section .team-member-wrapper.active {
    opacity: 1;
}

.team-directory-section .bio-content {
    width: 100%;
    overflow: visible;
    background-color: white;
    position: relative;
}

.team-directory-section .bio-content.full-width {
    display: block !important;
}

.team-directory-section .bio-content .card {
      border: 2px solid #ffc107;
    background-color: #fffbf0;
    margin: 2rem 0;
    border-radius: 0;
}

.team-directory-section .bio-content .card-body {
    padding: 2rem;
    line-height: 1.6;
}
.team-directory-section .bio-close-btn {
    position: absolute;
top: 2.3rem;
    right: 0.5rem;
    background: none;
    border: none;
    font-size: 28px;
    cursor: pointer;
    color: #000;
    z-index: 1000;
    padding: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.team-directory-section .bio-close-btn:hover {
    opacity: 0.7;
}
@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.resources-section {
    padding-top:3rem;
}
.resources-section h1 {
    color:var(--teal);
    font-family: var(--jost);
    font-size: 58px;
    line-height:64px;
    font-weight: 400;
    position: relative;
    padding-top: 2rem;
}
.resources-section h1:before {
    background-color:var(--gold);
    display:block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 182px;
    height: 7px;
}
.resources-section hr {
    margin: 2rem 0.7rem 3rem;
}
.load-more-wrapper {
    margin-bottom:6rem;
}
.resources-section h3 {
    font-family:var(--jost);
}
.input-group .btn {
    position: relative;
    z-index: 2;
    border-color: #dee2e6;
}
.search-wrapper .input-group {
    width: 65.7%;
}
.search-wrapper .input-group input {
    height: 60px;
    border-radius: 0;
    padding-left: 2rem;
    font-size: 18px;
    color: #000;
    border-right: 0;
        border-color: #ccc;
}
.search-wrapper .input-group button {
    border-left:none;
    border-radius: 0;
    padding:0 1.2rem;
        border-color: #ccc;
}
.search-results-count.mb-3 .text-muted{
    color:#000 !important;
    font-size:18px;
    font-weight:400;
}
.search-wrapper .input-group button:hover {
    background:#fff;
    color:#ccc;
}
.mega-cta {
    background-color:#E6EFF0;
    padding:2rem;
}
.mega-cta p {
    font-size:24px;
    line-height:34px;
    color:#000;
    text-align:left;
}
.search-results-count {
    margin-left:0.7rem;
    margin-bottom:2rem !important;
    margin-top:1rem;
}
/* Content Items Section */
.content-items-section .section-title {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 40px;
    color: #333;
}

.content-items-section .content-items-list {
    display: flex;
    flex-direction: column;
}

.content-items-section .content-item {
    border-top: 1px solid #ccc;
    padding: 40px 0;
}
.content-items-section .item-image img {
    border-radius:0;
    width: 100%;
    height: auto;
}

.content-items-section .item-content {
    padding-left: 20px;
}
.content-items-section .item-content a {
    font-family: var(--jost);
}

.content-items-section .item-title {
    font-size: 1.5rem;
    font-weight: bold;
    color: var(--teal);
    margin-bottom: 15px;
}
.content-items-section .item-title a {
    color:var(--teal);
    text-decoration: none;
    font-family: var(--open);
}
.content-items-section .item-title a:hover, .content-items-section .item-title a:focus {
    color: #1A3D45;
    text-decoration: underline;
}
.content-items-section .item-description {
    font-size: 1rem;
    line-height: 1.6;
    color: #000;
    margin-bottom: 20px;
}

.content-items-section .item-button {
    display: inline-block;
    color: var(--teal);
    text-decoration: none;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.9rem;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
}

.content-items-section .item-button:hover {
    color: #4a7f7a;
    text-decoration: underline;
}

/* Responsive */
@media (max-width: 767px) {
    .content-items-section .item-content {
        padding-left: 0;
        margin-top: 0;
    }
    .content-items-section .col-md-8, .content-items-section .col-md-4 {
        padding:0;
    }
    .content-items-section .content-item {
                padding: 30px 0.75rem;
    }
    .content-items-section .container {
        padding:0;
    }
      .resources-section h1 {
    font-size: 38px;
    padding-top: 0.5rem;
}
  .resources-section {
    padding-top: 0.4rem;
}
.resources-section h3 {
    display:none;
}
.resources-section hr {
    margin: 0 0 1.5rem 0;
}
.search-wrapper .input-group {
    width:100%;
}
}

.job-opportunities-section .container {
      padding: 0;
}
.job-opportunities-section .accordion-item {
    border: none;
    margin-bottom: 1px;
}
.job-opportunities-section .job-content {
  margin-top:1.2rem;
}
.job-opportunities-section .job-content:before {
    content: "";
    display: block;
    height: 65px;
    background-image: url('/wp-content/uploads/2025/11/Quote-Section.jpg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
}
.job-opportunities-section .accordion-button {
color: var(--teal);
    font-weight: 600;
    padding: 1rem 0;
    border: none;
    border-radius: 0;
    font-size: 30px;
    font-weight:700;
    border-top: 1px solid #ccc;
        border-top-left-radius: 0 !important;
    border-top-right-radius:0 !important;
}
.job-opportunities-section .accordion-item:last-child {
border-bottom: 1px solid #ccc;
}
.job-opportunities-section .accordion-button:not(.collapsed) {
    background-color: #fff;
    color: var(--teal);
    box-shadow: none;
}

.job-opportunities-section .accordion-button:focus {
    border-color:  var(--teal);
    box-shadow: 0 0 0 0.25rem rgba(90, 127, 122, 0.25);
}

.job-opportunities-section .accordion-button::after {
    content: '+';
    background: none;
    font-size: 30px;
    font-weight: bold;
    width: auto;
    height: auto;
    margin-top:-0.45rem;
}
.text-block-section.job-opportunities-section {
    margin:0;
}
.job-opportunities-section .accordion-button:not(.collapsed)::after {
    content: '−';
}

.job-opportunities-section .accordion-body {
    background-color: white;
    padding: 1rem 0 1.5rem;
    font-size: 18px;
    line-height: 28px;
    color: var(--dk-gray);
    line-height: 1.6;
}
.job-opportunities-section .accordion-body p.quote {
font-family: 'EB Garamond', serif; 
font-weight: 400; 
font-size: 20px;
line-height: 28px;
}
.job-opportunities-section .accordion-body p.name {
    font-family: var(--open);
    margin-top:1rem;
    font-size:14px;
}
.text-block-section {
  font-size: 24px;
  line-height: 38px;
  margin: 4.5rem 0 3rem;
}
.text-block-section a {
  font-weight: 700;
  text-decoration: none;
  color:#000;
}
.contact-menu-col {
    margin:3rem 0;
}
@media (max-width: 767px) {
  .text-block-section {
    font-size: 18px;
    line-height: 27px;
    margin: 2rem 0;
}
.content-item .item-image {
    display:none;
}
.contact-menu-col {
    margin:0 0 2rem;
}
.interior-page-contact .interior-sidebar {
    margin-top:0;
}
.ddl-cta {
padding: 1rem 0 2.5rem;
}
.testimonial-pagination {
margin:0;
}
}
/* Footer */
footer {
  background-color: #2c2d34;
  padding: 3.5em 0 0;
  font-size: 0.88em;
  clear: both;
}
footer ul {
  list-style-type: none;
  padding:0;
}

footer .top ul li {
    padding: 0.26em 0;
}
.footer-links .col-right {
    width: 80%;
    float: left;
}
.footer-links .col-right ul {
    float: left;
    width: 25%;
    padding: 0 10px;
}
footer .top ul li {
    padding: 0.26em 0;
}
footer .ga-wrap a {
  color:#FFF;
  text-decoration:none;
}
footer .top ul li:first-child {
    color: #ffffff;
    font-weight: 700;
    text-transform: uppercase;
}
footer .top ul li a {
    color: #ffffff;
    text-decoration: none;
}
footer .mid {
      margin-top: -35px;
    padding-right: 6rem;
}

footer a.btn-common.wht-txt {
    color: #ffffff;
    border: 1px solid #ffffff;
}
footer a.btn-common {
    border-radius: 25px;
    text-transform: uppercase;
    font-size: 0.9em;
    font-weight: 700;
    padding: 0.7em 1.8em;
}
footer .bot {
    border-top: 1px solid #555964;
    padding: 1em;
    margin-top: 1.5rem;
    color: #ffffff;
    padding: 1.5rem 0;
}
footer .bot p {
    padding:0;
    margin:0;
}
footer .bot a {
    font-size:14px;
    padding-right:1rem;
}
footer .bot a:nth-of-type(1) {
    padding-left:1rem;
}
    .social-icons-wrapper {
        padding: 15px 20px;
        border-radius: 8px;
        list-style: none;
        float: right;
        display: flex;
        gap: 25px;
            padding: 0;
    margin: 0;
    }
    
    .social-icons-wrapper li {
        margin: 0;
    }
    
    .social-icons-wrapper a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        background: #ffffff;
        border-radius: 50%;
        color: #282830;
        text-decoration: none;
        transition: all 0.3s ease;
    }
    
    .social-icons-wrapper a:hover {
        transform: translateY(-2px);
        box-shadow: 0 4px 8px rgba(0,0,0,0.2);
    }
    
    .social-icons-wrapper a i {
        font-size: 20px;
        color:#282830;
    }
      .social-icons-wrapper a i:before {
        vertical-align: -.17em !important;
    }
@media (max-width: 767px) {
    footer {
        position: relative;
    }
    .footer-links {
        text-align:center;
    margin-top: 2rem;
    }
    footer .mid {
        margin:0;
        padding:0;
        position: absolute;
        top: 0;
    }
    footer .mid ul li {
        padding: 0.5rem;
        margin-top: 1rem;
    float: left;
}
footer .bot {
    padding:1.5rem;
}
footer span.bot-row {
    display:block;
            margin: 0.3rem;
}
.footer-links ul li {
        padding:0;
    }
    footer .top ul li:first-child {
    font-size: 16px;
    }
    .footer-links .col-md-2 {
        height:30px;
    }
    .social-icons-wrapper {
        display: inline-block;
        float: none;
    }
    .footer-links .col-left {
        width: 50%;
        float: left;
    }
    .footer-links ul li {
        display:none;
    }
        .footer-links ul li:first-child {
        display:block;
    }
    ul.social-icons-wrapper li {
        display:block;
    }
        .footer-links .col-right {
        width: 50%;
        float: left;
    }
    .footer-links .col-right ul {
   width: 100%;
    }
}

.accordion-body img.alignleft {
float: left;
padding-right: 10px;
}