/* ========================================
   ALL PAGES — Header blur / transitions
   ======================================== */

.header-effects .site-header-row-container-inner {
    backdrop-filter: blur(0);
    -webkit-backdrop-filter: blur(0);

    transition:
        backdrop-filter 0.35s ease,
        -webkit-backdrop-filter 0.35s ease,
        background-color 0.35s ease !important;
}

/* Blur once header becomes sticky */
.header-effects .item-is-stuck .site-header-row-container-inner {
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
}


/* ========================================
   HOME PAGE ONLY — Enlarged logo
   ======================================== */

.home-header-effects .site-branding img {
    transform: scale(1.5) !important;
    transform-origin: top left;
    transition: transform 0.35s ease !important;
}

/* Return logo to normal size when sticky */
.home-header-effects .item-is-stuck .site-branding img {
    transform: scale(1) !important;
}

/* Prevent enlarged home-page logo being clipped */
.home-header-effects .site-header-row-container-inner,
.home-header-effects .site-header-row,
.home-header-effects .site-branding {
    overflow: visible;
}


















.progress-timeline {
    position: relative !important;
    border-left: none !important;
    outline: none !important;
}

.progress-timeline > li.wp-block-jetpack-timeline-item .timeline-item::after {
    content: none !important;
    display: none !important;
}

.progress-timeline::before {
    content: "";
    position: absolute;

    top: 0;
    bottom: 0;
    left: 0;

    width: 7px;

    background: #081219;

    border: 1px solid #fff;

    box-sizing: border-box;

    z-index: 5;
    pointer-events: none;
}



.progress-timeline::after {
    content: "";
    position: absolute;

    top: 1px;
    bottom: 1px;
    left: 1px;

    width: 5px;
    background: #fff;

    z-index: 6;
    pointer-events: none;

    transform: scaleY(0);
    transform-origin: top center;

    animation: timeline-fill linear both;
    animation-timeline: view();
    animation-range: entry 0% exit 60%;

    will-change: transform;
}

@keyframes timeline-fill {
    from {
        transform: scaleY(0);
    }

    to {
        transform: scaleY(1);
    }
}

.progress-timeline > li.wp-block-jetpack-timeline-item {
    border-radius: 3px !important;
}

.progress-timeline > li.wp-block-jetpack-timeline-item .timeline-item__bubble {
    border: 0 !important;

    position: absolute !important;

    left: -36px !important;
    top: 50% !important;

    width: 36px !important;
    height: 1px !important;

    background: #fff !important;

    transform: translateY(-50%) !important;

    z-index: 1 !important;
}

.progress-timeline > li.wp-block-jetpack-timeline-item .timeline-item__dot {
    display: block !important;

    position: absolute !important;

    left: -35px !important;
    top: 50% !important;

    width: 5px !important;
    height: 5px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 50% !important;

    background: #081219 !important;

    box-sizing: border-box !important;

    transform: translateY(-50%) !important;

    z-index: 8 !important;
    opacity: 1 !important;
}


/* ========================================
   HOME — "Stadiums / Kinetic Architecture" row: keep side padding on phones
   ======================================== */

/* (side padding is now set on the row itself in the editor: Projects container > Mobile padding) */


/* ========================================
   FOOTER
   ======================================== */

.site-footer {
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.site-footer .footer-widget1 img {
    max-width: 220px;
    height: auto;
}

.site-footer .footer-widget-area .widget-title,
.site-footer .footer-widget-area h4 {
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.55);
    margin: 0 0 0.75em;
}

.site-footer .footer-widget-area p {
    margin: 0 0 0.5em;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.85);
}

.site-footer .footer-widget-area a {
    color: rgba(255, 255, 255, 0.85);
    text-decoration: none;
}

.site-footer .footer-widget-area a:hover {
    color: #ffffff;
}

.site-footer .footer-navigation .menu > li > a {
    font-size: 14px;
}

.site-footer .footer-html {
    opacity: 0.6;
    margin-top: 0.75em;
}

.site-footer .footer-social-wrap .social-button {
    background: rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.85);
    border-radius: 2px;
    margin-top: 0.5em;
}

.site-footer .footer-social-wrap .social-button:hover {
    background: #0a66c2;
    color: #ffffff;
}

.site-footer .footer-navigation .menu {
    flex-wrap: nowrap;
}

.site-footer .footer-navigation .menu > li.current-menu-item > a,
.site-footer .footer-navigation .menu > li.current_page_item > a {
    color: #ffffff;
    opacity: 0.6;
}

@media (max-width: 767px) {
    .site-footer .footer-widget1 img {
        max-width: 170px;
    }
    .site-footer .site-footer-section {
        margin-bottom: 1.5em;
    }
}