* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    width: 100vw;
    height: 100vh;
    background-color: #E6B03C;
    position: relative;
    display: grid;
    place-content: center;
    font-family: PermanentMarker, Shantell Sans, sans-serif;
    overflow: hidden;
}

body.loading-block {
    pointer-events: none !important;
}

#gradient {
    background: radial-gradient(#a8784718, transparent 70%);
    width: 800px;
    height: 800px;
    position: absolute;
    mix-blend-mode: multiply;
    top: -400px;
    left: -400px;
    transform: translate(400px, 400px);
}

#pattern {
    position: absolute;
    top: var(--pattern-top, -110px);
    left: var(--pattern-left, -75px);
}

#background-skel {
    width: 200vw;
    height: 200vh;
    background-color: #362C27;
    opacity: 1;
}

#logo {
    position: fixed;
    transform: translateX(-50%);
    top: 5%;
    left: 50%;
    width: 20%;
    min-width: 200px;
    opacity: 1;
    z-index: 4;
}

.buttons {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
}

.baby {
    position: absolute;
    right: 20%;
    top: 25%;
}

#bottle {
    width: 400px;
    height: 400px;
    position: relative;
    transition: transform 0.1s ease-in-out, filter 0.2s ease-in-out;
}
#bottle:hover {
    transform: scale(1.05);
    filter: brightness(1.2);
}

#paci {
    width: 350px;
    height: 350px;
    position: absolute;
    top: 70%;
    right: -20%;
    filter:brightness(0.5) contrast(0.8);
    transition: transform 0.1s ease-in-out, filter 0.2s ease-in-out;
}
#paci:hover {
    transform: scale(1.05);
    filter: brightness(0.35);
}

#o3 {
    position: absolute;
    pointer-events: none;
    top: 95%;
    left: 20%;
    font-size: 3rem;
    font-weight: 1000;
    color: #ffa600;
    text-align: center;
    width: 100%;
}

:root {
    --hex-size: 165px;
    --hex-width: 165px;
    --hex-height: 165px;
    --hex-scale: 1;
}

#bs, #tw, #ds, #tmb, #vrc, #se {
    width: var(--hex-width);
    height: var(--hex-height);
    position: absolute;
    transition: transform 0.1s ease-in-out, filter 0.2s ease-in-out;
}
#bs { left: 0; top: 0; }
#tw { left: calc(-0.485 * var(--hex-width)); top: calc(0.8 * var(--hex-height)); }
#ds { left: calc(0.485 * var(--hex-width)); top: calc(0.8 * var(--hex-height)); }
#tmb { left: 0; top: calc(1.6 * var(--hex-height)); }
#vrc { left: calc(0.97 * var(--hex-width)); top: calc(1.6 * var(--hex-height)); }
#se { left: calc(0.485 * var(--hex-width)); top: calc(2.4 * var(--hex-height)); }

#bs:hover, #tw:hover, #ds:hover, #tmb:hover, #vrc:hover, #se:hover {
    transform: scale(1.1);
    filter: brightness(1.2);
}

.hex {
    position: absolute;
}

#transition-overlay {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: #000;
    z-index: 9999;
    pointer-events: none;
    transform: translateX(0); 
    opacity: 1;
    transition: transform 0.7s cubic-bezier(.77,0,.18,1), opacity 0.7s cubic-bezier(.77,0,.18,1);
}
#transition-overlay.swipe {
    transform: translateX(0);
    opacity: 1;
    transition: transform 0.7s cubic-bezier(.77,0,.18,1);
}
#transition-overlay.unswipe {
    transform: translateX(100%);
    opacity: 1;
    transition: transform 0.7s cubic-bezier(.77,0,.18,1);
}
#transition-overlay.invisible-unswipe {
    transform: translateX(100%);
    opacity: 0;
    pointer-events: none;
    transition: transform 0.7s cubic-bezier(.77,0,.18,1), opacity 0s linear;
}
#transition-overlay.fadeout {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.7s cubic-bezier(.77,0,.18,1);
}

#page-load {
    position: fixed;
    top: var(--skel-top, -110px);
    left: var(--skel-left, -75px);
    width: 200vw;
    height: 200vh;
    background-color: #070605;
    z-index: 100;
    pointer-events: none;
    opacity: 1;
    overflow: hidden;
}
#page-load::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.048) 30%, #ffffff23 50%, rgba(255, 255, 255, 0.048) 70%, transparent 100%);
    opacity: 0.7;
    pointer-events: none;
    z-index: 1;
    animation: glow-swipe 3s cubic-bezier(.77,0,.18,1) 0s 2 alternate;
    transition: opacity 1.2s cubic-bezier(.77,0,.18,1);
}
@keyframes glow-swipe {
    0% { transform: translateX(-100%); opacity: 0.7; }
    40% { opacity: 0.9; }
    50% { transform: translateX(100%); opacity: 1; }
    60% { opacity: 0.9; }
    100% { transform: translateX(-100%); opacity: 0.7; }
}
#page-load.fadeout {
    opacity: 0;
    transition: opacity 0.7s cubic-bezier(.77,0,.18,1);
}

