* {
box-sizing: border-box;
}

html,
body {
margin: 0;
width: 100%;
height: 100%;
overflow-x: hidden;

}

body {
    max-width: 100vw;
}

img {
    max-width: 100%;
    height: auto;
}

/* =========================================
MAIN DESKTOP
========================================= */

.desktop {
position: relative;
width: 100%;
height: 1024px;
background: white;
overflow: hidden;
}

/* =========================================
WALLPAPER
========================================= */

.background {
width: 100%;
height: 740px;
left: 0;
top: 0;

background-image: url("/images/wallpaper.png");
background-size: 294.4px 220.8px;
background-position: top left;
background-repeat: repeat;

z-index: 1;

}

/* =========================================
FLOOR
========================================= */

.floor {
position: absolute;
height: 304px;
left: 0;
right: 0;
top: 720px;

z-index: 2;

}

.floor-container {
position: absolute;
inset: 0;
overflow: hidden;
pointer-events: none;
}

.floor img {
position: absolute;

height: 639.44%;
left: -13.08%;
top: -269.69%;
width: 126.11%;

max-width: none;

}

/* =========================================
GENERAL IMAGE RULE
========================================= */

.desktop img {
display: block;
}

/* =========================================
TV STAND
========================================= */

.tv-stand {
position: absolute;

width: 770px;
height: 575px;

left: 335px;
top: 371px;

pointer-events: none;

z-index: 5;

}

.tv-stand img {
position: absolute;
inset: 0;

width: 100%;
height: 100%;

max-width: none;

object-fit: cover;

}

/* =========================================
CARPET
========================================= */

.carpet {
position: absolute;

width: 795px;
height: 795px;

left: 310px;
top: 526px;

pointer-events: none;

z-index: 3;

}

.carpet img {
position: absolute;
inset: 0;

width: 100%;
height: 100%;

max-width: none;

object-fit: cover;

}

/* =========================================
BOOKSHELF
========================================= */

.bookshelf {
position: absolute;

width: 748px;
height: 748px;

left: 28px;
top: 73px;

padding: 0;
border: 0;

background: transparent;

cursor: pointer;

z-index: 2;

}

.bookshelf img {
position: absolute;
inset: 0;

width: 44%;
height: 100%;

max-width: none;

object-fit: cover;

pointer-events: none;

}

/* =========================================
SHELF HOVER GLOW
========================================= */

.shelf-glow {
position: absolute;

right: -113;
top: 0;

width: 337px;
height: 100%;

border-radius: 0 4px 4px 0;

background: transparent;

box-shadow: none;

transition:
    background 0.3s ease,
    box-shadow 0.3s ease;

pointer-events: none;

}

.bookshelf:hover .shelf-glow {
background:
radial-gradient(
ellipse at 30% 40%,
rgba(255, 220, 150, 0.18) 0%,
transparent 70%
);

box-shadow:
    inset -4px 0 20px rgba(255, 200, 100, 0.12);

}

/* =========================================
SHELF TOOLTIP
========================================= */

.shelf-popup {
position: absolute;

right: 674px;
top: 50%;

transform:
    translateY(-50%)
    translateX(100%);

padding: 8px 12px;

background: #2a1a0a;
color: #f5e6c8;

border-radius: 4px;

box-shadow:
    0 4px 12px rgba(0, 0, 0, 0.35);

font-family: Arial, sans-serif;
font-size: 14px;

white-space: nowrap;

opacity: 0;
visibility: hidden;

transition:
    opacity 0.3s ease,
    visibility 0.3s ease;

pointer-events: none;

}

.bookshelf:hover .shelf-popup {
opacity: 1;
visibility: visible;
}

/* =========================================
LAMP
========================================= */

.lamp {
position: absolute;

width: 506px;
height: 873px;

left: 934px;
top: 24px;

pointer-events: none;

z-index: 7;

}

.lamp img {
position: absolute;
inset: 0;

width: 100%;
height: 100%;

max-width: none;

object-fit: cover;

}

/* =========================================
DVD
========================================= */

.DVDSSS {
position: absolute;

width: 51px;
height: 78px;

left: 94px;
top: 293px;

pointer-events: none;

z-index: 9;

}
.two{
    left: 135px;
    top: 293px;
    z-index: 8;
}
.three {
    left: 177px;
    top: 293px;
    z-index: 7;
}
.trinket {
    left: 240px;
    top: 483px;
    z-index: 7;
}


.DVDSSS img {
position: absolute;
inset: 0;

width: 100%;
height: 100%;

max-width: none;

object-fit: cover;

}

/* =========================================
FAN
========================================= */

.cute-fan {
position: absolute;

width: 511px;
height: 369px;

left: 452px;
top: -29px;

pointer-events: none;

z-index: 2;

}

.cute-fan img {
position: absolute;
inset: 0;

width: 100%;
height: 100%;

max-width: none;

object-fit: cover;

}

/* =========================================
TV FRAME
========================================= */

.tv-frame {
position: absolute;

width: 735px;
height: 564px;

left: 340px;
top: 156px;

overflow: hidden;

pointer-events: none;

z-index: 6;
}

.tv-frame img {
position: absolute;

width: 100%;
height: 128.19%;

left: 0;
top: -28.19%;


max-width: none;

object-fit: cover;

}

/* =========================================
TV SCREEN
========================================= */

.tv-screen {
position: absolute;

width: 632px;
height: 362px;

left: 391px;
top: 180px;

overflow: hidden;

z-index: 7;

background: #111;

}

/* =========================================
SLIDES
========================================= */

.slide {
position: absolute;

inset: 0;

width: 100%;
height: 100%;

opacity: 0;

transition: opacity 0.7s ease;

pointer-events: none;

}

.slide.active {
opacity: 1;
pointer-events: auto;
}

/* =========================================
ADVENTURE TIME IMAGE
========================================= */

.slide img {
width: 100%;
height: 100%;

object-fit: cover;

}

/* =========================================
SHOW CONTENT
========================================= */

.show-content {
position: absolute;

inset: 0;

display: flex;
flex-direction: column;

align-items: center;
justify-content: center;

gap: 12px;

padding: 32px;

text-align: center;

color: white;

}

/* =========================================
CAROUSEL BUTTONS
========================================= */

.carousel-button {
position: absolute;

top: 50%;

width: 32px;
height: 32px;

transform: translateY(-50%);

border: none;
border-radius: 50%;

background: rgba(0, 0, 0, 0.4);

color: white;

font-size: 25px;
line-height: 28px;

display: flex;

align-items: center;
justify-content: center;

cursor: pointer;

z-index: 10;

transition:
    background 0.2s ease,
    transform 0.2s ease;

}

.carousel-button:hover {
background: rgba(0, 0, 0, 0.7);
}

.carousel-button.previous {
left: 8px;
}

.carousel-button.next {
right: 8px;
}

/* =========================================
POSTERSSS
========================================= */

.poster {
position: absolute;

width: 173px;
height: 204px;

left: 1233px;
top: 308px;

pointer-events: none;

z-index: 8;

}

.bof {
    width: 178px;
height: 237px;

left: 1419px;
top: 107px;
}

.poster img {
position: absolute;
inset: 0;

width: 100%;
height: 100%;

max-width: none;

object-fit: cover;

}

/* =========================================
SITE TITLE
========================================= */

.site-title {
position: absolute;

top: 24px;
left: 50%;

transform: translateX(-50%);

text-align: center;

z-index: 20;

pointer-events: none;

}

.site-title h1 {
margin: 0;

font-family: Georgia, serif;

font-size: 24px;

font-weight: normal;

letter-spacing: 0.04em;

color: #2a1a0a;

text-shadow:
    0 1px 2px rgba(255, 255, 255, 0.6);

}

.site-title p {
margin: 2px 0 0;

font-family: monospace;

font-size: 12px;

color: rgba(90, 62, 27, 0.7);

}

/* =========================================
BUTTON RESET
========================================= */

button {
font-family: inherit;
}

/* =========================
   DESKTOP
========================= */

@media (max-width: 1400px) {

    .container,
    .wrapper,
    .main-content {
        max-width: 1200px;
    }

}


/* =========================
   TABLET
========================= */

@media (max-width: 900px) {

    .container,
    .wrapper,
    .main-content {
        padding-left: 20px;
        padding-right: 20px;
    }

}


/* =========================
   PHONE
========================= */

@media (max-width: 600px) {

    .container,
    .wrapper,
    .main-content {
        padding-left: 12px;
        padding-right: 12px;
    }

}