.cad-grid {
            background-image: linear-gradient(to right, rgba(255,255,255,0.02) 1px, transparent 1px),
                              linear-gradient(to bottom, rgba(255,255,255,0.02) 1px, transparent 1px);
            background-size: 40px 40px;
        }
        .cad-card { position: relative; }
        .cad-card::before, .cad-card::after {
            content: "";
            position: absolute;
            width: 7px;
            height: 7px;
            pointer-events: none;
            z-index: 25;
            transition: all 0.2s ease;
        }
        .cad-card::before {
            top: -1px; left: -1px;
            border-top: 1.5px solid #F58220;
            border-left: 1.5px solid #F58220;
        }
        .cad-card::after {
            bottom: -1px; right: -1px;
            border-bottom: 1.5px solid #F58220;
            border-right: 1.5px solid #F58220;
        }
        .cad-card:hover::before, .cad-card:hover::after { width: 12px; height: 12px; }

        .frame { position: relative; }
        .frame:hover { box-shadow: inset 0 0 0 1px #F58220; }

        .logo-mono img { filter: grayscale(1) brightness(0) invert(1); opacity: .72; }
        .logo-scania img { filter: grayscale(1) invert(1) contrast(1.2); opacity: .9; }

        .map-frame iframe { filter: grayscale(0.9) contrast(1.1) brightness(0.75); }

        .skip-link { position: absolute; left: -9999px; top: 0; z-index: 100; background: #F58220; color: #000; padding: 8px 16px; font-weight: 600; }
        .skip-link:focus { left: 16px; top: 16px; }

        a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
            outline: 2px solid #F58220 !important;
            outline-offset: 2px;
        }
        .photo-grade { filter: contrast(1.04) brightness(0.98); }
        .cut-corner-panel {
            clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 0 100%);
        }
        .cut-corner-btn {
            clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 0 100%);
        }
        /* v2.3: lekkie równe skosy między sekcjami (jeden kierunek, stała głębokość).
           Sekcja z .slant-top zachodzi ujemnym marginesem na poprzednią, a clip-path
           wycina trójkąt odsłaniający jej tło jako diagonalę. Mapa i footer prosto. */
        .slant-top {
            --slant: 48px;
            clip-path: polygon(0 var(--slant), 100% 0, 100% 100%, 0 100%);
            margin-top: calc(-1 * var(--slant));
        }
        @media (max-width: 640px) {
            .slant-top { --slant: 24px; }
        }
