        /* Video Container */
        .video-container {
            position: relative;
            width: 100%;
            max-width: 900px;
            margin: 0 auto 4rem;
            border-radius: 20px;
            overflow: hidden;
            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
            background: rgba(255, 255, 255, 0.1);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.2);
            animation: fadeInUp 1s ease-out 0.4s both;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .video-container:hover {
            transform: translateY(-10px);
            box-shadow: 0 30px 80px rgba(0, 0, 0, 0.4);
        }

        .video-wrapper {
            position: relative;
            padding-bottom: 56.25%;
            /* 16:9 Aspect Ratio */
            height: 0;
        }

        video {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .video-overlay {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: linear-gradient(45deg, rgba(255, 107, 107, 0.1), rgba(78, 205, 196, 0.1));
            opacity: 0;
            transition: opacity 0.3s ease;
            pointer-events: none;
        }

        .video-container:hover .video-overlay {
            opacity: 1;
        }

        /* Custom Video Controls */
        .video-controls {
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));
            padding: 2rem 1rem 1rem;
            transform: translateY(100%);
            transition: transform 0.3s ease;
        }

        .video-container:hover .video-controls {
            transform: translateY(0);
        }

        main {
            padding: 4rem 2rem;
            min-height: calc(100vh - 200px);
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
        }

        .content-container {
            max-width: 1200px;
            width: 100%;
            text-align: center;
        }

        .service-intro {
            max-width: 900px;
            margin: 18px auto 0 auto;
            line-height: 1.6;
            opacity: 0.92;
        }

        .cta-row {
            display: flex;
            gap: 12px;
            flex-wrap: wrap;
            margin-top: 16px;
        }

        .projects {
            padding: 60px 20px;
        }

        .projects h2 {
            text-align: center;
            margin-bottom: 10px;
        }

        .projects .subtitle {
            text-align: center;
            max-width: 800px;
            margin: 0 auto 30px auto;
        }

        .projects-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
            gap: 22px;
            max-width: 1200px;
            margin: 0 auto;
        }

        .project-card {
            border-radius: 14px;
            overflow: hidden;
        }

        .project-media img {
            width: 100%;
            height: auto;
            object-fit: cover;
            display: block;
        }

        .project-body {
            padding: 18px;
        }

        .project-meta {
            margin: 12px 0 0 0;
            padding-left: 18px;
            line-height: 1.5;
        }

        .projects-cta {
            display: flex;
            justify-content: center;
            margin-top: 26px;
        }

        .process {
            max-width: 1200px;
            margin: 0 auto;
            padding: 90px 20px 100px;
        }

        .process h2 {
            text-align: center;
            font-size: clamp(2rem, 3.5vw, 2.8rem);
            font-weight: 800;
            color: #0b2f5b;
            margin-bottom: 18px;
            letter-spacing: -0.3px;
        }

        .process-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 24px;
            align-items: stretch;
            margin-top: 40px;
        }

        .process-step {
            position: relative;
            background: rgba(255, 255, 255, 0.98);
            border: 1px solid rgba(5, 35, 75, 0.10);
            border-radius: 20px;
            padding: 30px 24px 26px;
            box-shadow: 0 16px 45px rgba(0, 0, 0, 0.08);
            transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
            overflow: hidden;
        }

        .process-step::before {
            content: "";
            position: absolute;
            left: 0;
            top: 0;
            width: 100%;
            height: 5px;
            background: linear-gradient(90deg, #0b2f5b, #6eace6);
        }

        .process-step:hover {
            transform: translateY(-8px);
            box-shadow: 0 24px 55px rgba(5, 35, 75, 0.14);
            border-color: rgba(11, 47, 91, 0.18);
        }

        .step-number {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 58px;
            height: 58px;
            margin-bottom: 18px;
            border-radius: 50%;
            background: linear-gradient(135deg, rgba(9, 90, 169, 0.10), rgba(110, 172, 230, 0.28));
            color: #0b2f5b;
            font-size: 1.1rem;
            font-weight: 800;
            letter-spacing: 0.5px;
            box-shadow: inset 0 0 0 1px rgba(11, 47, 91, 0.08);
        }

        .process-step h3 {
            font-size: 1.3rem;
            font-weight: 800;
            color: #0b2f5b;
            margin-bottom: 12px;
            line-height: 1.3;
        }

        .process-step p {
            margin: 0;
            color: #475569;
            line-height: 1.75;
            font-size: 1rem;
        }

        /* Tablet */
        @media (max-width: 1024px) {
            .process-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
        }

        /* Mobile */
        @media (max-width: 640px) {
            .process {
                padding: 70px 16px 80px;
            }

            .process-grid {
                grid-template-columns: 1fr;
                gap: 18px;
                margin-top: 30px;
            }

            .process-step {
                padding: 24px 20px 22px;
            }

            .process h2 {
                font-size: 1.9rem;
            }
        }

        /* ===== Fräsarbeiten: Page Header ===== */

        .page-head {
            max-width: 900px;
            margin: 0 auto 28px;
            text-align: center;
        }

        .page-title {
            font-size: clamp(2.2rem, 4.5vw, 3.2rem);
            font-weight: 800;
            color: #05234b;
            letter-spacing: -0.3px;
            margin-bottom: 12px;
        }

        .page-subtitle {
            font-size: 1.1rem;
            color: #5b6777;
            line-height: 1.7;
            margin: 0 auto;
            max-width: 780px;
        }

        /* ===== Intro Card ===== */
        .service-intro {
            max-width: 900px;
            margin: 26px auto 0;
            padding: 22px 22px;
            background: rgba(255, 255, 255, 0.96);
            border: 1px solid rgba(5, 35, 75, 0.10);
            border-radius: 18px;
            box-shadow: 0 18px 50px rgba(0, 0, 0, 0.08);
        }

        .service-intro p {
            margin: 0;
            color: #475569;
            line-height: 1.75;
            font-size: 1.05rem;
        }

        /* ===== Section Headings Konsistenz ===== */
        .machines h2,
        .projects h2,
        .process h2 {
            font-size: clamp(1.8rem, 3.2vw, 2.4rem);
            font-weight: 800;
            color: #0b2f5b;
            letter-spacing: -0.2px;
        }

        .projects .subtitle {
            color: #5b6777;
            line-height: 1.7;
        }

        @media (max-width: 768px) {
            main {
                padding: 3.2rem 1rem;
            }

            .page-subtitle {
                font-size: 1rem;
            }

            .service-intro {
                padding: 18px;
            }
        }