body, html {
    margin: 0;
    padding: 0;
    background-color: #efeadf;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    overflow-x: hidden;
}

.box-wrapper {
    position: relative;
    width: 90vw;
    max-width: 1100px;
    line-height: 0;
    filter: drop-shadow(10px 10px 0px rgba(0,0,0,0.1));
}

.box-bg {
    width: 100%;
    height: auto;
    display: block;
    image-rendering: pixelated;
}

.columns-container {
    position: absolute;
    top: 12%; 
    left: 18%; 
    width: 64%; 
    height: 60%; 
    display: flex;
    justify-content: space-around;
    z-index: 10;
}

.postcard-column {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 32%;
}

.card {
    display: block;
    width: 100%;
    margin-bottom: -50%;
    transition: transform 0.25s ease-out;
    text-decoration: none;
    
    opacity: 0.7; 
    filter: brightness(0.9) saturate(80%);  
    
}

.card img {
    width: 100%;
    height: auto;
    display: block;
    image-rendering: pixelated;
}

.card:hover {
    opacity: 1;               
    filter: brightness(1.1) saturate(100%);
    transform: translateY(-20px);
    z-index: 50;
}

.floating-info {
    position: fixed;  
    bottom: 20px;    
    left: 20px;     
    width: 64px;       
    height: 64px;
    cursor: pointer;
    z-index: 9999;     
    
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    
    transition: transform 0.2s ease-out;
}

.floating-info img {
    width: 48px;
    height: 48px;
    object-fit: contain;
    image-rendering: pixelated; 
    filter: drop-shadow(4px 4px 0px rgba(0,0,0,0.1));
}

.floating-info:hover {
    transform: scale(1.15);
}