/* Reset and base styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Arial', sans-serif;
    overflow-x: hidden;
}

p{
    text-align: center !important;
    margin-bottom: 0rem !important;
}

/* Disable vertical scrolling on mobile */
@media (max-width: 767px) {

    html,
    body {
        overflow: hidden;
        position: fixed;
        width: 100%;
        height: 100%;
        touch-action: pan-x;
        /* Only allow horizontal panning */
    }

    /* Ensure main container fills screen */
    .main-container {
        overflow: hidden;
        touch-action: pan-x;
    }
}

.navbar-toggler {
    margin-top: 0px !important;
}


/* Scroll Progress Bar */
.scroll-progress-container {
    width: 100%;
    height: 4px;
    background: #f0f0f0;
    position: relative;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease;
}

.scroll-progress-container.visible {
    opacity: 1;
    visibility: visible;
}

.scroll-progress-bar {
    height: 100%;
    background: #12044B;
    width: 0%;
    transition: width 0.2s ease-out;
    overflow-y: auto;
    background: #ffffff;

    /* Smooth scrolling on mobile */
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
}

/* Optimize the three parallax layers for GPU acceleration */
.background-layer,
.middle-layer,
.foreground-layer {
    will-change: transform;
    backface-visibility: hidden;
}

/* Parallax Layers */
.parallax-layer {
    position: absolute;
    top: 5%;
    left: 0;
    width: 100vw;
    /* Will be updated by JavaScript */
    height: 100dvh;
    pointer-events: none;
}

/* Background Layer (slowest horizontal parallax) */
.background-layer {
    z-index: 1;
    /* Base layer */
    background-image: url('./Assets/background-layers/new-sky-21-jan.png');
    background-size: cover;
    background-position: 0 0;
    background-repeat: no-repeat;
    top: 4%;
}

/* Middle Layer (normal horizontal parallax) */
.middle-layer {    
    z-index: 99999;
    /* Above background layer */
    /* background-image: url('./Assets/background-layers/Main_4.png');*/
    background-image: url('./Assets/background-layers/building-main-27-jan-3.png');
    background-size: cover;
    background-position: 0 0;
    background-repeat: no-repeat;
    pointer-events: auto;
    /* Allow interactions with elements in this layer */
}

/* Foreground Layer (fastest horizontal parallax) */
.foreground-layer {
    z-index: 10;
    /* Above middle layer but below interactive elements */
    background-size: cover;
    background-image: url('./Assets/background-layers/new-Road-21jan.png');
    background-position: 0 0;
    background-repeat: no-repeat;
    /* Add foreground elements here - they'll move fastest */
}

/* Unified Stop Sign Styles */
.stop-sign,
.stop-sign1,
.stop-sign2,
.stop-sign3,
.stop-sign4,
.stop-sign41,
.stop-sign5,
.stop-sign6,
.stop-sign7,
.stop-sign8 {
    position: fixed;
    bottom: 15%;
    width: 0.25%;
    height: auto;
    pointer-events: none;
    opacity: 0.3;
    z-index: 20;
    /* On top of middle layer */
    transition: opacity 0.5s ease-in-out;
}

/* Individual positioning - only left property differs */
.stop-sign {
    left: 7.4%;
}

/* stop-sign1 */
.stop-sign2 {
    left: 18.5%;
}

/* Make the anchor a positioned box so pseudo-element border can wrap it */
.image-link {
    position: fixed;
    /* position is already used on plaza classes, anchors inherit placement */
    display: inline-block;
    width: 0.79%;
    bottom: 39.2%;
    pointer-events: auto;
}

.image-link-1 {
    position: fixed;
    /* position is already used on plaza classes, anchors inherit placement */
    display: inline-block;
    width: 0.79%;
    bottom: 66.9%;
    pointer-events: auto;
}

html.safari-mac .image-link {
    bottom: 39.2% !important;
}

.image-link img {
    display: block;
    width: 100%;
    height: auto;
}

html.safari-mac .image-link-1 {
    bottom: 66.9% !important;
}

.image-link-1 img {
    display: block;
    width: 100%;
    height: auto;
}




/* Scale images when expanded */
.image-link.expanded {
    transform: scale(1.2);
    transition: transform 0.5s ease-in-out;
}

.image-link-1.expanded {
    transform: scale(1.2);
    transition: transform 0.5s ease-in-out;
}

.image-link.cyber-plaza1.expanded {
    transform: scale(1.2);
    /* maintain horizontal flip */
}

.image-link-1.cyber-plaza1.expanded {
    transform: scale(1.2);
    /* maintain horizontal flip */
}


.cyber-plaza1 {
    left: 8.077%;
    height: auto;
    opacity: 0;
    z-index: 25;
    transition: transform 0.3s ease, opacity 0.5s ease-in-out, border 0.3s ease;
    transform: scale(1);
    bottom: 67.5%;
}

html.safari-mac .cyber-plaza1 {
    bottom: 67.5% !important;
}

.cyber-plaza1.active {
    border: 3px solid #00ffff;
    box-shadow: 0 0 15px #00ffff;
    opacity: 1;
}


.cyber-plaza2 {
    left: 9.23%;
    height: auto;
    opacity: 0;
    z-index: 25;
    transition: transform 0.3s ease, opacity 0.5s ease-in-out, border 0.3s ease;
    transform: none;
}

.cyber-plaza2.active {
    box-shadow: 0 0 15px #ff6b00;
    opacity: 1;
}

/*.cyber-plaza2:hover {*/
/*    transform: scale(1.15);*/
/*}*/

/* Bus poster styles */
/* Unified Bus Poster Styles */
.bus-poster1,
.bus-poster2,
.bus-poster3,
.bus-poster4,
.bus-poster5,
.bus-poster6 {
    position: fixed;
    bottom: 47.1%;
    width: 0.39%;
    height: auto;
    pointer-events: auto;
    opacity: 0;
    z-index: 25;
    transition: transform 0.3s ease, opacity 0.5s ease-in-out, border 0.3s ease;
    transform: scale(1);
    border: 3px solid transparent;
    display: inline-block;
}

html.safari-mac .bus-poster1,
html.safari-mac .bus-poster2,
html.safari-mac .bus-poster3,
html.safari-mac .bus-poster4,
html.safari-mac .bus-poster5,
html.safari-mac .bus-poster6 {
    bottom: 47.1% !important;
}

/* Individual positioning - only left property differs */
.bus-poster1 {
    left: 18.912%;
}

.bus-poster2 {
    left: 19.364%;
}

.bus-poster3 {
    left: 19.814%;
}

.bus-poster4 {
    left: 20.266%;
}

.bus-poster5 {
    left: 20.74%;
}

.bus-poster6 {
    left: 21.02%;
}

/* Unified image styles */
.bus-poster1 img,
.bus-poster2 img,
.bus-poster3 img,
.bus-poster4 img,
.bus-poster5 img,
.bus-poster6 img {
    display: block;
    width: 100%;
    height: auto;
}

/* Unified hover effect */
.bus-poster1:hover,
.bus-poster2:hover,
.bus-poster3:hover,
.bus-poster4:hover,
.bus-poster5:hover,
.bus-poster6:hover {
    transform: scale(1.15);

}

/* Individual active border colors */
.bus-poster1.active {
    border: 2px solid #ff0000;

}

.bus-poster2.active {
    border: 2px solid #00ffff;

}

.bus-poster3.active {
    border: 2px solid #ff0000;

}

.bus-poster4.active {
    border: 2px solid #00ffff;

}

.bus-poster5.active {
    border: 2px solid #ff0000;

}

.bus-poster6.active {
    border: 2px solid #00ffff;
}




/* Unified expanded styles for all bus posters */
.bus-poster1.expanded,
.bus-poster2.expanded,
.bus-poster3.expanded,
.bus-poster4.expanded,
.bus-poster5.expanded,
.bus-poster6.expanded {
    transform: scale(1.1);
    /* unified scale when expanded */
    opacity: 1;
}

/* Modal styles for expanded images */
.image-modal {
    display: none;
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.85);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.image-modal.active {
    opacity: 1;
    pointer-events: auto;
    display: flex;
}

#formimage-modal , #formimage-modal2 , #formimage-modal3{
    display: none;
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.85);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

#formimage-modal.active1, #formimage-modal2.active1 , #formimage-modal3.active1{
    opacity: 1;
    pointer-events: auto;
    display: flex;
}

.expanded-image {
    /*   max-width: 150%;
   */
    object-fit: contain;
    /*border: 4px solid white;
    border-radius: 4px;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.5);*/
    max-height: 650px;
    width: 90%;
}

.close-modal {
    position: absolute;
    top: 20px;
    right: 30px;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    cursor: pointer;
}

.close-modal:hover {
    transform: scale(1.1);
}

.close-modal11 , .close-modal112 , .close-modal113 {
    position: absolute;
    top: 20px;
    right: 30px;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    cursor: pointer;
}

.close-modal11:hover , .close-modal112:hover{
    transform: scale(1.1);
}

/* Unified Stop Sign Button Styles */
.stop-sign-btn2,
.stop-sign-btn2b,
.stop-sign-btn3,
.stop-sign-btn4,
.stop-sign-btn5,
.stop-sign-btn6,
.stop-sign-btn6ba,
.stop-sign-btn6d,
.stop-sign-btn5-cyber {
    position: absolute;
    bottom: 47%;
    z-index: 21;
    padding: 5vh 10vh;
    background: transparent;
    border: 2px solid transparent;
    border-radius: 50px;
    color: transparent;
    font-weight: bold;
    font-size: 1rem;
    opacity: 0;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: background 0.2s, color 0.2s;
}


.stop-sign-btn6e{
     position: absolute;
    bottom: 37%;
    z-index: 21;
    padding: 5vh 10vh;
    background: transparent;
    border: 2px solid transparent;
    border-radius: 50px;
    color: transparent;
    font-weight: bold;
    font-size: 1rem;
    opacity: 0;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: background 0.2s, color 0.2s;
    
}


html.safari-mac .stop-sign-btn6e{
     position: absolute;
    bottom: 37%;
    z-index: 21;
    padding: 5vh 10vh;
    background: transparent;
    border: 2px solid transparent;
    border-radius: 50px;
    color: transparent;
    font-weight: bold;
    font-size: 1rem;
    opacity: 0;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: background 0.2s, color 0.2s;
    
}

.stop-sign-btn {
    position: absolute;
    bottom: 46%;
    z-index: 21;
    padding: 5vh 10vh;
    background: transparent;
    border: 2px solid transparent;
    border-radius: 50px;
    color: transparent;
    font-weight: bold;
    font-size: 1rem;
    opacity: 0;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: background 0.2s, color 0.2s;
}



.stop-sign-btn:hover,
.stop-sign-btn2:hover,
.stop-sign-btn2b:hover,
.stop-sign-btn3:hover,
.stop-sign-btn4:hover,
.stop-sign-btn5:hover,
.stop-sign-btn6:hover,
.stop-sign-btn6ba:hover,
.stop-sign-btn5-cyber:hover {
    background: transparent;
    color: transparent;
    opacity: 1;
    border: 2px solid transparent;
    box-shadow: none;
    outline: none;
}

img.blue-arrow6d.active {
    left: 97.3%;
}

/* Individual positioning - only left property differs */
.stop-sign-btn {
    left: 10.35%;
}

.stop-sign-btn2 {
    left: 22.42%;
}

.stop-sign-btn2b {
    left: 29.66%;
}

.stop-sign-btn3 {
    left: 33.82%;
}

.stop-sign-btn4 {
    left: 44.95%;
}

.stop-sign-btn5 {
    left: 52.4%;
}

.stop-sign-btn5-cyber {
    left: 62.25%;
}

.stop-sign-btn6 {
    left: 83.86%;
}

.stop-sign-btn6ba {
    left: 94.65%;
}

.stop-sign-btn6d {
    left: 88.44%;
}

/* Unified active state for all stop signs */
.stop-sign.active,
.stop-sign1.active,
.stop-sign2.active,
.stop-sign3.active,
.stop-sign4.active,
.stop-sign41.active,
.stop-sign5.active,
.stop-sign6.active,
.stop-sign7.active,
.stop-sign8.active {
    opacity: 1;
}

/* Unified Blue Arrow Styles */
.blue-arrow,
.blue-arrow2,
.blue-arrow2b,
.blue-arrow3,
.blue-arrow4,
.blue-arrow5,
.blue-arrow6,
.blue-arrow6b,
.blue-arrow5-cyber,
.blue-arrow9-cyber{
    position: absolute;
    bottom: 57%;
    width: 0.13%;
    height: auto;
    opacity: 0;
    z-index: 22;
    pointer-events: none;
    transition: opacity 0.5s ease-in-out;
}

.blue-arrow6d {
    position: absolute;
    bottom: 56%;
    width: 0.2%;
    height: auto;
    opacity: 0;
    z-index: 22;
    pointer-events: none;
    transition: opacity 0.5s ease-in-out;
}

/* Blue arrow after YouTube video */
.blue-arrow-video {
    position: absolute;
    left: 88.585%;
    bottom: 57%;
    width: 0.13%;
    height: auto;
    opacity: 0;
    z-index: 22;
    pointer-events: none;
    transition: opacity 0.5s ease-in-out;
}

.blue-arrow.active,
.blue-arrow2.active,
.blue-arrow2b.active,
.blue-arrow3.active,
.blue-arrow4.active,
.blue-arrow5.active,
.blue-arrow5-cyber.active,
.blue-arrow6.active,
.blue-arrow6b.active,
.blue-arrow6d.active,
.blue-arrow9-cyber.active,
.blue-arrow-video.active {
    opacity: 1;
    animation: blueArrowBob 1.6s ease-in-out infinite;
}

.stop-sign-btn6e {
    left: 86.5%;
    height: 400px;
    width: 600px;
}

/* Individual positioning - only left property differs */
.blue-arrow {
    left: 10.51%;
}

.blue-arrow2 {
    left: 29.84%;
}

.blue-arrow2b {
    left: 22.55%;
}

.blue-arrow3 {
    left: 33.97%;
}

.blue-arrow4 {
    left: 45.09%;
}

.blue-arrow5 {
    left: 52.54%;
}

.blue-arrow5-cyber {
    left: 62.477%;
}

.blue-arrow9-cyber {
    left: 62.5%;
}

.blue-arrow6 {
    left: 94.799%;
}

.blue-arrow6b {
    left: 83.23%;
    bottom: 64%;
}

/* Bobbing animation: move up from current bottom and return */
@keyframes blueArrowBob {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-12px);
    }

    100% {
        transform: translateY(0);
    }
}

/* Truck composite styling */
.truck {
    position: absolute;
    bottom: 13%;
    left: 37%;
    width: 30%;
    height: auto;
    aspect-ratio: 591 / 349;
    z-index: 9999999;
    pointer-events: none;
    /* Truck entrance animation */
    animation: truckEntranceFromLeft 2s ease-out;
}

.video-model-sub {
     position:relative; width:80%; min-height: 561px; max-width:310px; background:#000; border-radius:10px; overflow:hidden;
}

.youtube-frame{
    min-height: 561px !important;
}




@media (max-width: 990px) {
    .truck {
        bottom: 23%;
        left: 30%;
    }
    
    .dropdown-menu a{
    font-size: 8px !important;
}
}

.cyber-plaza1 {
    bottom: 67.5% !important; 
}

html.safari-mac .cyber-plaza1 {
    bottom: 67.5% !important; 
}


.truck-body {
    position: absolute;
    left: 0%;
    bottom: 10%;
    width: 100%;
    height: auto;
}

.truck-left-wheel {
   position: absolute;
    left: 17.4%;
    bottom: 9.7%;
    width: 15.9%;
    height: auto;
    transform-origin: center center;
    will-change: transform;
}

.truck-right-wheel {
    position: absolute;
    left: 74.7%;
    bottom: 10%;
    width: 17%;
    height: auto;
    transform-origin: center center;
    will-change: transform;
}

/* Scroll prompt styling - follows truck pattern */
.scroll-prompt {
    position: fixed;
    top: 10%;
    left: 80%;
    transform: translate(-50%, -50%);
    width: clamp(200px, 25vw, 400px);
    height: auto;
    z-index: 999999;
    pointer-events: none;
    opacity: 1;
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.scroll-prompt.fade-out {
    opacity: 0;
    transform: translate(-50%, -60%);
}

/* Base layer - static background using actual image */
.scroll-base {
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: auto;
    z-index: 1;
    display: block;
}

/* Mouse layer - animated using actual image with masking to show only mouse part */
.scroll-mouse {
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translateX(-50%);
    width: 40%;
    height: auto;
    z-index: 2;
    display: block;
    /* Mask to show only the mouse/scroll indicator part */
    animation: scrollMouseBob 2s ease-in-out infinite;
}

/* Bobbing animation for scroll mouse */
@keyframes scrollMouseBob {
    0% {
        transform: translateX(-50%) translateY(0);
    }

    50% {
        transform: translateX(-50%) translateY(10px);
    }

    100% {
        transform: translateX(-50%) translateY(0);
    }
}

@media (max-width: 990px) {
    @keyframes scrollMouseBob {
        0% {
            transform: translateX(-50%) translateY(0);
        }

        50% {
            transform: translateX(-40%) translateY(0);
            /* Move right */
        }

        100% {
            transform: translateX(-50%) translateY(0);
        }
    }

    /* Change scroll prompt images for smaller screens */
    .scroll-base {
        content: url('./Assets/Images/scroll-base-mobile.webp');
        width: 60%;

    }
    
    
    html.safari-mac .video-element-stop5.active {
    display: block !important;
    transform: scale(1.2) !important;
    background-image: url('./Assets/all_webp/Video/dpd_2025_Teaser_Video/Video Thumbnail.webp') !important;
    background-size: cover;
    top: 33%;
    max-width: 110px !important;
    height: 55px !important;
}

.download-poster, .download-bundle{
    font-size: 10px !important;
}

.poupupbus-sec2, .poupupfirst-sec, .poupupbus-sec1{
    font-size: 12px !important;
}




/*html.safari-mac .video-element-stop5 video {*/
/*    width: 20%;*/
/*    height: auto;*/
/*    display: block;*/
/*    border-radius: 10px !important;*/
/*    max-width: 100px !important;*/
/*    height: 100px !important;*/
/*}*/
    
    
    .video-model-sub {
     position:relative; 
     width:80%; 
     min-height: 100px !important; 
     max-width:200px; 
     background:#000; 
     border-radius:10px; 
     overflow:hidden;
}



    .scroll-mouse {
        content: url('./Assets/Images/scroll-mouse-mobile.webp');
        width: 35%;
    }

    .navbar-collapse {
        font-size: 9px;
    }
}

.stop-sign3 {
    left: 30.8%;
}



/* Vendor Poster Styles - Following bus-poster pattern */
.vendor-poster3,
.vendor-poster4,
.vendor-poster5,
.vendor-poster6 {
    position: absolute;
    bottom: 47.99%;
    width: 0.24%;
    height: auto;
    pointer-events: auto;
    opacity: 0;
    z-index: 25;
    transition: transform 0.3s ease, opacity 0.5s ease-in-out, border 0.3s ease;
    transform: scale(1);
    border: 3px solid transparent;
    display: inline-block;
}


.vendor-poster1,
.vendor-poster2 {
    position: absolute;
    bottom: 49.2%;
    width: 0.24%;
    height: auto;
    pointer-events: auto;
    opacity: 0;
    z-index: 25;
    transition: transform 0.3s ease, opacity 0.5s ease-in-out, border 0.3s ease;
    transform: scale(1);
    border: 3px solid transparent;
    display: inline-block;
}







html.safari-mac .vendor-poster3,
html.safari-mac .vendor-poster4,
html.safari-mac .vendor-poster5,
html.safari-mac .vendor-poster6 {
    bottom: 47.99% !important;
}


html.safari-mac .vendor-poster1,
html.safari-mac .vendor-poster2{
     bottom: 49.2% !important;
}



/* Individual positioning for vendor posters - only left property differs */
.vendor-poster1 {
    left: 32.93%;
}

.vendor-poster2 {
    left: 33.35%;
}

.vendor-poster3 {
    left: 42.09%;
}

.vendor-poster4 {
    left: 42.49%;
}

.vendor-poster5 {
    left: 43.9%;
}

.vendor-poster6 {
    left: 44.28%;
}

/* Unified image styles for vendor posters */
.vendor-poster1 img,
.vendor-poster2 img,
.vendor-poster3 img,
.vendor-poster4 img,
.vendor-poster5 img,
.vendor-poster6 img {
    display: block;
    width: 100%;
    height: auto;
}

/* Unified hover effect for vendor posters */
.vendor-poster1:hover,
.vendor-poster2:hover,
.vendor-poster3:hover,
.vendor-poster4:hover,
.vendor-poster5:hover,
.vendor-poster6:hover {
    transform: scale(1.15);
}

/* Individual active border colors for vendor posters */
.vendor-poster1.active {
    border: 2px solid #ff0000;
}

.vendor-poster2.active {
    border: 2px solid #00ffff;
}

.vendor-poster3.active {
    border: 2px solid #ff0000;
}

.vendor-poster4.active {
    border: 2px solid #00ffff;
}

.vendor-poster5.active {
    border: 2px solid #ff0000;
}

.vendor-poster6.active {
    border: 2px solid #00ffff;
}

/* Unified expanded styles for vendor posters */
.vendor-poster1.expanded,
.vendor-poster2.expanded,
.vendor-poster3.expanded,
.vendor-poster4.expanded,
.vendor-poster5.expanded,
.vendor-poster6.expanded {
    transform: scale(1.4);
    opacity: 1;
}





.stop-sign4 {
    left: 48.5%;
}

.stop-sign41 {
    left: 59.7%;
}



/* Cyber Info Plaza Styles - Following bus-poster pattern */
.cyber-info-plaza1,
.cyber-info-plaza2,
.cyber-info-plaza3,
.cyber-info-plaza4,
.cyber-info-plaza88{
    position: absolute;
    bottom: 44%;
    width: 0.308%;
    height: auto;
    pointer-events: auto;
    opacity: 0;
    z-index: 25;
    transition: transform 0.3s ease, opacity 0.5s ease-in-out, border 0.3s ease;
    transform: scale(1);
    border: 3px solid transparent;
    display: inline-block;
}

.cyber-info-plaza4-library-right,
.cyber-info-plaza4-library,
.cyber-info-plaza4-library-right1,
.cyber-info-plaza4-library-right2,
.cyber-info-plaza4-library-right3{
    position: absolute;
    bottom: 52.85%;
    width: 0.25%;
    height: auto;
    pointer-events: auto;
    opacity: 0;
    z-index: 25;
    transition: transform 0.3s ease, opacity 0.5s ease-in-out, border 0.3s ease;
    transform: scale(1);
    border: 3px solid transparent;
    display: inline-block;
}

html.safari-mac .cyber-info-plaza1,
html.safari-mac .cyber-info-plaza2,
html.safari-mac .cyber-info-plaza3,
html.safari-mac .cyber-info-plaza4,
html.safari-mac .cyber-info-plaza88{
    bottom: 44% !important;
}

html.safari-mac .cyber-info-plaza4-library,
html.safari-mac .cyber-info-plaza4-library-right,
html.safari-mac .cyber-info-plaza4-library-right1,
html.safari-mac .cyber-info-plaza4-library-right2,
html.safari-mac .cyber-info-plaza4-library-right3{
    bottom: 52.85% !important;
}

/* Individual positioning for cyber info plaza - only left property differs */
 .cyber-info-plaza1 {
        left: 49.86%;
        border: 2px solid #ff0000 !important;
    }

    .cyber-info-plaza2 {
        left: 50.269%;
        border: 2px solid #00ffff !important;
    }

    .cyber-info-plaza3 {
        left: 50.672%;
        border: 2px solid #ff0000 !important;
    }

    .cyber-info-plaza4 {
        left: 51.08%;
    }
    
    .cyber-info-plaza88 {
        left: 51.5%;
    }

.cyber-info-plaza4-library {
    left: 60.64%;
    border: 2px solid #00ffff !important;
}

.cyber-info-plaza4-library-right {
    left: 60.296%;
    border: 2px solid #ff0000 !important;
}

.cyber-info-plaza4-library-right1 {
    left: 60.98%;
     border: 2px solid #ff0000 !important;
}

.cyber-info-plaza4-library-right2 {
    left: 61.33%;
    border: 2px solid #00ffff !important;
}

.cyber-info-plaza4-library-right3 {
    left: 61.67%;
     border: 2px solid #ff0000 !important;
}



/* Unified image styles for cyber info plaza */
.cyber-info-plaza1 img,
.cyber-info-plaza2 img,
.cyber-info-plaza3 img,
.cyber-info-plaza4 img,
.cyber-info-plaza88 img,
.cyber-info-plaza4-library img,
.cyber-info-plaza4-library-right img,
.cyber-info-plaza4-library-right1 img,
.cyber-info-plaza4-library-right2 img,
.cyber-info-plaza4-library-right3 img{
    display: block;
    width: 100%;
    height: auto;
}

/* Unified hover effect for cyber info plaza */
.cyber-info-plaza1:hover,
.cyber-info-plaza2:hover,
.cyber-info-plaza3:hover,
.cyber-info-plaza4:hover,
.cyber-info-plaza88:hover,
.cyber-info-plaza4-library:hover,
.cyber-info-plaza4-library-right:hover,
.cyber-info-plaza4-library-right1:hover,
.cyber-info-plaza4-library-right2:hover,
.cyber-info-plaza4-library-right3:hover{
    transform: scale(1.4);
}

/* Individual active border colors for cyber info plaza */
.cyber-info-plaza1.active {
    border: 3px solid #afa1a1;
}

.cyber-info-plaza2.active {
    border: 3px solid #afa1a1;
}

.cyber-info-plaza3.active {
    border: 3px solid #afa1a1;
}

.cyber-info-plaza4.active {
    border: 3px solid #afa1a1;
}

.cyber-info-plaza88.active {
    border: 3px solid #afa1a1;
}

.cyber-info-plaza4-library.active {
    border: 3px solid #afa1a1;
}

.cyber-info-plaza4-library-right {
    border: 3px solid #afa1a1;
}

.cyber-info-plaza4-library-right1 {
    border: 3px solid #afa1a1;
}

.cyber-info-plaza4-library-right2 {
    border: 3px solid #afa1a1;
}
.cyber-info-plaza4-library-right3 {
    border: 3px solid #afa1a1;
}

/* Unified expanded styles for cyber info plaza */
.cyber-info-plaza1.expanded,
.cyber-info-plaza2.expanded,
.cyber-info-plaza3.expanded,
.cyber-info-plaza4.expanded,
.cyber-info-plaza88.expanded,
.cyber-info-plaza4-library.expanded,
.cyber-info-plaza4-library-right.expanded,
.cyber-info-plaza4-library-right1.expanded,
.cyber-info-plaza4-library-right2.expanded,
.cyber-info-plaza4-library-right3.expanded{
    transform: scale(1.3);
    opacity: 1;
}




.stop-sign5 {
    left: 76%;
}

.stop-sign6 {
    left: 85%;
}

/* Seventh Stop Sign Styles */
.stop-sign7 {
    left: 93%;
}

.stop-sign7.active {
    opacity: 1;
}

.stop-sign8 {
    left: 95%;
}

.stop-sign8.active {
    opacity: 1;
}


/* Sticker Image linked to stop-sign6 */
.sticker-image-stop6 {
    position: absolute;
    left: 93.23%;
    bottom: 48%;
    width: 0.4%;
    height: auto;
    opacity: 0;
    z-index: 25;
    pointer-events: auto;
    cursor: pointer;
    transition: all 0.5s ease-in-out;
    transform: scale(1.2);
    border-radius: 8px;
}

html.safari-mac .sticker-image-stop6 {
    bottom: 48% !important;
}

.sticker-image-stop6.active {
    opacity: 1;
}

.sticker-image-stop6:hover {
    transform: scale(1.4);
    box-shadow: 0 8px 25px rgba(255, 215, 0, 0.4);
    border: 2px solid #FFD700;
}

/* Video Element linked to stop-sign6 */
.video-element-stop5 {
    position: absolute;
    left: 76.789%;
    bottom: 42%;
    width: 1.3%;
    height: 25%;
    display: none;
    z-index: 25;
    pointer-events: auto;
    cursor: pointer;
    transition: all 0.5s ease-in-out;
    transform: scale(1);
    /* border-radius: 12px;*/
    overflow: hidden;
    /* box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);*/
}


html.safari-mac .video-element-stop5 {
    position: absolute;
    left: 76.72%;
    bottom: 40%;
    width: 1.3%;
    height: 25%;
    display: none;
    z-index: 25;
    pointer-events: auto;
    cursor: pointer;
    transition: all 0.5s ease-in-out;
    transform: scale(1);
    /* border-radius: 12px;*/
    overflow: hidden;
    /* box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);*/
}


.video-element-stop5.active {
    display: block;
    transform: scale(1.2);

}

html.safari-mac .video-element-stop5.active {
    display: block !important;
    transform: scale(1.2) !important;
    background-image: url('./Assets/all_webp/Video/dpd_2025_Teaser_Video/Video Thumbnail.webp') !important;
    background-size: cover;
    top: 33%;
    max-width: 344px;
    height: 200px;
}

.video-element-stop5:hover {
    transform: scale(1.2);
    box-shadow: 0 8px 25px rgba(0, 255, 255, 0.4);
    /* border: 2px solid #00ffff;*/
}

.video-element-stop5 video {
    width: 57%;
    height: auto;
    display: block;
}


html.safari-mac .video-element-stop5 video {
    width: 57%;
    height: auto;
    display: block;
}






.video-overlay {
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.play-icon {
    font-size: 2rem;
    color: white;
    margin-bottom: 0.5rem;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.8);
}

.video-title {
    color: white;
    font-size: 0.8rem;
    font-weight: bold;
    text-align: center;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8);
    padding: 0 0.5rem;
}

/* End page buttons - Social media buttons */
.social-btn1,
.social-btn2,
.social-btn3,
.social-btn4,
.social-btn5 {
    position: absolute;
    bottom: 51%;
    padding: 2.4vh 2.2vh;
    z-index: 21;
    background: transparent;
    border: 2px solid transparent;
    border-radius: 50px;
    color: transparent;
    font-weight: bold;
    font-size: 1rem;
    opacity: 0;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: background 0.2s, color 0.2s;
    height: 20px;
    width: 20px;
}

.social-btn1 {
    left: 98%;
}

.social-btn2 {
    left: 97.05%;
}

.social-btn3 {
    left: 98.13%;
}

.social-btn4 {
    left: 98.25%;
}

.social-btn5 {
    left: 98.38%;
}

/* Home button */
.home-btn {
    position: absolute;
    left: 96.62%;
    bottom: 54%;
    padding: 6vh 6vh;
    z-index: 21;
    background: transparent;
    border: 2px solid transparent;
    border-radius: 50px;
    color: transparent;
    font-weight: bold;
    font-size: 1rem;
    opacity: 0;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: background 0.2s, color 0.2s;
}


.poster-btn{
    position: absolute;
    left: 40.4%;
    bottom: 66%;
    padding: 6vh 6vh;
    z-index: 21;
    background: transparent;
    border: 2px solid transparent;
    border-radius: 50px;
    color: transparent;
    font-weight: bold;
    font-size: 1rem;
    opacity: 0;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: background 0.2s, color 0.2s;
}

.poster-btn-org{
    position: absolute;
    left: 71.86%;
    bottom: 66%;
    padding: 6vh 6vh;
    z-index: 21;
    background: transparent;
    border: 2px solid transparent;
    border-radius: 50px;
    color: transparent;
    font-weight: bold;
    font-size: 1rem;
    opacity: 0;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: background 0.2s, color 0.2s;
}


/* Hover effects for all end page buttons */
.social-btn1:hover,
.social-btn2:hover,
.social-btn3:hover,
.social-btn4:hover,
.social-btn5:hover,
.home-btn:hover,
.poster-btn:hover{
    background: transparent;
    color: transparent;
    opacity: 1;
    border: 2px solid transparent;
    box-shadow: none;
    outline: none;
}

.brand-logos img {
    width: 150px;
}

.form input,
.form textarea {
    height: 35px;
    width: 90%;
}

label {
    display: block;
    margin-top: 5px;
}

input,
textarea {
    width: 100%;
    padding: 8px;
    margin-top: 5px;
}

button {
    margin-top: 15px;
    padding: 10px 15px;
}

#response {
    margin-top: 10px;
    padding: 10px;
}

.terms-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    margin-top: 15px;
}

/* hide the default checkbox */
.terms-wrapper input[type="checkbox"] {
    display: none;
}

/* slider */
.terms-wrapper .slider {
    width: 40px;
    height: 20px;
    background: #ccc;
    border-radius: 20px;
    position: relative;
    transition: 0.3s;
}

/* circle inside slider */
.terms-wrapper .slider::before {
    content: "";
    width: 16px;
    height: 16px;
    background: white;
    border-radius: 50%;
    position: absolute;
    top: 2px;
    left: 2px;
    transition: 0.3s;
}

/* checked state */
.terms-wrapper input[type="checkbox"]:checked+.slider {
    background: #2196F3;
}

.terms-wrapper input[type="checkbox"]:checked+.slider::before {
    transform: translateX(20px);
}

.label-text {
    font-weight: bold;
}

.terms-note {
    font-size: 14px;
    margin: 5px 0 15px 48px;
    /* align with toggle */
}

.form {
    width: 25vw;
    min-width: 320px;
    background: #fff;
    z-index: 2000;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transform: translateX(100%);
    visibility: visible;
    transition: all 2s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events: auto;
    top: 10% !important;
    right: 25% !important;

}

/*akash css*/


form {
    max-width: 400px !important;
    margin: 0px 30px;
    padding: 10px;
    border: 1px solid #ccc;
    width: 70%;
}

@media only screen and (max-width: 1100px) {
    .brand-logos img {
        width: 50px;
    }

    .hero-title {
        font-family: 'geom graphic';
        font-weight: 700;
        color: #12044B;
        margin-bottom: 1.5rem;
        font-size: 25px;
    }

    .hero-text {
        font-family: 'geom graphic';
        font-size: 0.7rem !important;
        color: #666;

    }

    .expanded-image {
        max-height: 350px;
    }

    a.close-modal1,
    a.download-poster,
    a.download-bundle {
        width: 100% !important;
    }

    .dynamic-text {
        font-size: 0.8rem !important;
    }

    .hero-image {
        left: 56% !important;
    }
}

@media (min-width: 1100px) and (max-width: 2100px) {
    .brand-logos img {
        width: 90px;
    }

}

.right-brand {
    width: 100% !important;
}

@media (max-width: 990px) {
    
    html.safari-mac .blue-arrow {
    left: 10.51%;
}

.blue-arrow {
    left: 10.53%;
}

html.safari-mac .blue-arrow2b {
    left: 22.55%;
}

.blue-arrow2b {
    left: 22.57%;
}

html.safari-mac .blue-arrow5 {
    left: 52.54%;
}

.blue-arrow5 {
    left: 52.59%;
}

html.safari-mac .blue-arrow5-cyber {
    left: 62.477%;
}

.blue-arrow5-cyber {
    left: 62.55%;
}

html.safari-mac .blue-arrow-video {
    left: 88.585%;
}

.blue-arrow-video {
    left: 88.699%;
}


html.safari-mac .blue-arrow6 {
    left: 94.799%;
}

.blue-arrow6 {
    left: 94.94%;
}

.thank-you-title {
    font-size: 0.8rem !important;
}
    
    
    .left-brand {
        width: auto;
        height: 20px;
    }
    
    .thank-you-partners{
        min-width: 156px !important;
    }

    .navbar-toggler-icon {
        height: 1em !important;
        width: 1em !important;
    }

    .navbar {
        height: 30px;
    }

    .image-link {
        bottom: 42%;
    }

    .image-link-1 {
        bottom: 70.3%;
    }

    .bus-poster1,
    .bus-poster2,
    .bus-poster3,
    .bus-poster4,
    .bus-poster5,
    .bus-poster6 {
        bottom: 47.2%;
        width: 0.388%;
    }
    
    html.safari-mac .bus-poster1,
    html.safari-mac .bus-poster2,
    html.safari-mac .bus-poster3,
    html.safari-mac .bus-poster4,
    html.safari-mac .bus-poster5,
    html.safari-mac .bus-poster6 {
        bottom: 47.2%;
        width: 0.388%;
    }
    
   
    
    .poupupbus-sec, .poupupbus-sec3{
        font-size: 10px !important;
    }

    .bus-poster1 {
        left: 18.92%;
    }


html.safari-mac .bus-poster1 {
        left: 18.911%;
    }
    .bus-poster2 {
        left: 19.38%;
    }
    
    html.safari-mac .bus-poster2 {
        left: 19.36%;
    }

    .bus-poster3 {
        left: 19.85%;
    }
    
    
    html.safari-mac .bus-poster3 {
        left: 19.811%;
    }

    html.safari-mac .bus-poster4 {
        left: 20.28%;
    }
    
    .bus-poster4 {
        left: 20.299%;
    }

    .bus-poster5 {
        left: 20.78%;
    }


 html.safari-mac .bus-poster5 {
        left: 20.74%;
    }
    .bus-poster6 {
        left: 21.66%;
    }

    .vendor-poster1 {
        left: 32.97%;
    }
    
    .blue-arrow3 {
    left: 33.99%;
}

html.safari-mac  .blue-arrow3 {
    left: 33.97%;
}
    
     html.safari-mac .vendor-poster1 {
        left: 32.93%;
    }

    .vendor-poster2 {
        left: 33.38%;
    }
    
     html.safari-mac .vendor-poster2 {
        left: 33.35%;
    }

    .vendor-poster3 {
        left: 42.06%;
    }

    .vendor-poster4 {
        left: 42.52%;
    }

    .vendor-poster5 {
        left: 43.86%;
    }

    .vendor-poster6 {
        left: 44.32%;
    }

    html.safari-mac .cyber-info-plaza1 {
        left: 49.864%;
    }
    
    .cyber-info-plaza1 {
        left: 49.94%;
    }

    html.safari-mac .cyber-info-plaza2 {
        left: 50.275%;
    }
    
    .cyber-info-plaza2 {
        left: 50.36%;
    }

    html.safari-mac .cyber-info-plaza3 {
        left: 50.685%;
    }
    
    .cyber-info-plaza3 {
        left: 50.77%;
    }

    html.safari-mac .cyber-info-plaza4 {
        left: 51.1%;
    }
    
    
    .cyber-info-plaza4 {
        left: 51.17%;
    }
    
   html.safari-mac .cyber-info-plaza88 {
        left: 51.5%;
    }
    
    .cyber-info-plaza88 {
        left: 51.57%;
    }

    html.safari-mac .cyber-info-plaza4-library {
        left: 60.64%;
    }
    
    .cyber-info-plaza4-library {
        left: 60.74%;
    }

    html.safari-mac .cyber-info-plaza4-library-right {
        left: 60.988%;
    }
    
     .cyber-info-plaza4-library-right {
        left: 61.1%;
    }
    
    html.safari-mac .cyber-info-plaza4-library-right1 {
        left: 60.3%;
    }
    
    .cyber-info-plaza4-library-right1 {
        left: 60.4%;
    }
    
     html.safari-mac .cyber-info-plaza4-library-right2 {
        left: 61.67%;
    }
    
    .cyber-info-plaza4-library-right2 {
        left: 61.78%;
    }
    
    html.safari-mac .cyber-info-plaza4-library-right3 {
        left: 61.325%;
    }


.cyber-info-plaza4-library-right3 {
        left: 61.425%;
    }
    
    
    .vendor-poster3,
    .vendor-poster4,
    .vendor-poster5,
    .vendor-poster6 {
        bottom: 47.5%;
        width: 0.24%;
    }
    
    .vendor-poster1,
    .vendor-poster2{
        bottom: 49.9%;
        width: 0.24%;
    }

    .cyber-info-plaza1,
    .cyber-info-plaza2,
    .cyber-info-plaza3,
    .cyber-info-plaza4,
    .cyber-info-plaza88,
    .cyber-info-plaza4-library {
        bottom: 44.1%;
        width: 0.30%;

    }

    .cyber-info-plaza4-library,
    .cyber-info-plaza4-library-right,
    .cyber-info-plaza4-library-right1,
    .cyber-info-plaza4-library-right2,
    .cyber-info-plaza4-library-right3{
        bottom: 53.09%;
        width: 0.24%;

    }

    .stop-sign,
    .stop-sign1,
    .stop-sign2,
    .stop-sign3,
    .stop-sign4,
    .stop-sign41,
    .stop-sign5,
    .stop-sign6,
    .stop-sign7,
    .stop-sign8 {
        bottom: 8%;
    }

    .navbar {
        padding: 0px !important;
    }

    .navbar-brand {
        padding: 0px !important;
    }

    .stop-sign,
    .stop-sign1,
    .stop-sign2,
    .stop-sign3,
    .stop-sign4,
    .stop-sign41,
    .stop-sign5,
    .stop-sign6,
    .stop-sign7,
    .stop-sign8 {
        bottom: 13%;
    }
}

#response a {
    margin-left: 2%;
    margin-top: 0px;
    padding: 10px;
    text-decoration: none;
}

@supports (-webkit-touch-callout: none) {

    /* Bus Poster Safari-specific styles */
    .bus-poster1,
    .bus-poster2,
    .bus-poster3,
    .bus-poster4,
    .bus-poster5,
    .bus-poster6 {
        bottom: 47.2%;
    }
    
       
    
    
    

    /* Background Layer Safari-specific styles */
    /* .background-layer {
    Add Safari-specific styles for background layer here
    Example: background-position: 0 0;
  } */

    /* Bus Poster Active state Safari-specific */
    /* .bus-poster1.active, .bus-poster2.active, .bus-poster3.active, 
  .bus-poster4.active, .bus-poster5.active, .bus-poster6.active {
    Add Safari-specific styles for active state here
  } */

    /* Bus Poster Expanded state Safari-specific */
    /* .bus-poster1.expanded, .bus-poster2.expanded, .bus-poster3.expanded, 
  .bus-poster4.expanded, .bus-poster5.expanded, .bus-poster6.expanded {
    Add Safari-specific styles for expanded state here
  } */
}






.bus-poster6, .vendor-poster3, .vendor-poster4, .vendor-poster5, .vendor-poster6, .stop-sign-btn4, .blue-arrow4, .blue-arrow6d, .blue-arrow2, .sticker-image-stop6, .stop-sign7, .stop-sign-btn6ba,  .linkedin {
    visibility: hidden !important;
}

.navbar-brand{
    margin-right: 0 !important;
}
.csam-response h2{display:none !important;}



