/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

.swiper-parent .slider-caption,
.swiper-parent .slider-caption-center {
    background: rgba(0, 0, 0, 0.55);
    padding: 30px 40px;
    border-radius: 10px;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    display: inline-block;
}

.page-hero {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
    color: #fff;
    padding: 4rem 0;
    position: relative;
    overflow: hidden;
}

.page-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        radial-gradient(circle at 20% 50%, rgba(255,255,255,0.05) 0%, transparent 50%),
        radial-gradient(circle at 80% 20%, rgba(255,255,255,0.04) 0%, transparent 40%);
    pointer-events: none;
}

.page-hero h1 {
    font-weight: 700;
    margin-bottom: 0.75rem;
    color: #fff;
    position: relative;
}

.page-hero .lead {
    max-width: 700px;
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.85);
    position: relative;
}

.project-item {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
    background: #fff;
    padding-bottom: 1.5rem;
    transition: box-shadow 0.3s ease;
}

.project-item:hover {
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.14);
}

.project-item h3,
.project-item p {
    padding: 0 1.25rem;
}

.is-expanded-menu #header.sticky-header-shrink #header-wrap #logo img {
    height: 80px;
}

.is-expanded-menu #header.sticky-header-shrink #header-wrap {
    --cnvs-sticky-header-height: 80px;
}

.footer-logo {
    margin-bottom: 1rem;
}

.header-row .primary-menu {
    margin-left: auto;
    margin-right: 0;
}

.header-row .menu-container > .menu-item > .menu-link {
    --cnvs-primary-menu-font-size: 15px;
    letter-spacing: 0.02em;
}

/* Theme blockquote footer uses an em dash; use a simple hyphen for consistency */
.blockquote-footer::before {
    content: "- ";
}
