
    /* Carousel styles */
    .carousel-container {
        width: 100vw;
        margin-left: calc(-50vw + 50%);
        overflow: hidden;
        position: relative;
        padding: 0.5rem 0;
    }

    .carousel-track {
        display: flex;
        gap: 2rem;
        animation: scroll 30s linear infinite;
        will-change: transform;
    }

    .carousel-card {
        flex: 0 0 auto;
        width: 280px;
        height: 200px;
        background: white;
        border-radius: 8px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 2rem;
        transition: transform 0.3s ease, box-shadow 0.3s ease;
    }

    .carousel-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .carousel-card img {
        max-width: 100%;
        max-height: 140px;
        width: auto;
        height: auto;
        object-fit: contain;
    }

    @keyframes scroll {
        0% {
            transform: translateX(0);
        }
        100% {
            /* 12 cards × (280px width + 32px gap) = 3744px */
            transform: translateX(-3744px);
        }
    }

    /* Responsive adjustments */
    @media (max-width: 768px) {
        .carousel-card {
            width: 220px;
            height: 160px;
            padding: 1.5rem;
        }

        .carousel-card img {
            max-height: 110px;
        }

        .carousel-track {
            gap: 1.5rem;
            animation: scrollMobile 24s linear infinite;
        }

        @keyframes scrollMobile {
            0% {
                transform: translateX(0);
            }
            100% {
                /* 12 cards × (220px width + 24px gap) = 2928px */
                transform: translateX(-2928px);
            }
        }
    }

.skip-link{position:absolute;top:-80px;left:12px;z-index:1000;background:#fff;color:#0d3f5e;padding:12px}.skip-link:focus{top:8px}.video-control{position:absolute;bottom:24px;right:24px;z-index:3;border:1px solid #ffffff90;background:#0d3f5e90;color:#fff;padding:8px 15px;font-size:12px}.project-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}.project-gallery img{width:100%;height:100px;object-fit:cover;border-radius:5px}.gallery-lightbox{position:fixed;inset:0;width:96vw;max-width:1200px;border:0;background:#071e2d;padding:30px;color:white}.gallery-lightbox::backdrop{background:#000c}.gallery-lightbox img{width:100%;max-height:80vh;object-fit:contain}.gallery-lightbox button{background:#fff;border:0;color:#0d3f5e;padding:8px 16px}.gallery-lightbox button[aria-label="Close photo"]{position:absolute;right:10px;top:10px}.gallery-lightbox [data-prev],.gallery-lightbox [data-next]{position:absolute;top:50%;font-size:28px}.gallery-lightbox [data-next]{right:20px}.form-alert.success{background:#e6f3ee;border:1px solid #97cdb6;color:#215c44;padding:14px}.form-alert.error{background:#fff1ed;border:1px solid #dfb5a8;color:#943e26;padding:14px}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
