@import url("https://use.typekit.net/ves3tlw.css");

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}


body {
    height: 100vh;
    display: grid;
    place-content: center;
    color: #aaa;
    background: #eee;
    gap: 1rem;
}

.ad-container {
    width: 300px;
    height: 250px;
    background: #604dec;
    color: #efefef;
    position: relative;
    overflow: hidden;
}

.packshot {
    position: absolute;
    bottom: -20px;
    width: 350px;
    animation: slide 1.5s ease-out 1 forwards;
}

@keyframes slide {
    from { 
        transform: translateX(0px);
        opacity: 0;
    }
    to { 
        transform: translateX(-150px);
        opacity: 1;
    }
}

h2 {
    font-family: "obviously-narrow", sans-serif;
    font-weight: 800;
    letter-spacing: .015em;
    margin-top: 2.5rem;
    text-align: center;
    font-size: 2rem;
    animation: pulse 1s ease-in-out infinite alternate;
}

@keyframes pulse {
    from { 
        transform: scale(.9);
    }
    to { 
        transform: scale(1.1);
    }
}

.logo {
    width: 100px;
    position: absolute;
    right: 10px;
    top: 10px;

}

.cta {
    background: #f3ae36;
    color: #111;
    font-family: "obviously-narrow", sans-serif;
    font-weight: 800;
    letter-spacing: .015em;
    padding: .5em 1em .75em;
    border: 2px solid #111;
    text-decoration: none;
    position: absolute;
    right: 20px;
    bottom: 20px;
    opacity: 0;
    box-shadow: 0px 0px 0 #111;
    transition: 250ms ease-out;

    animation: grow 500ms cubic-bezier(0,.73,.6,1.27) 1s 1 forwards;
}

.cta:hover {
    box-shadow: 4px 4px 0 #111;
}

@keyframes grow {
    from { 
        transform: scale(0);
        opacity: .5;
    }
    to { 
        transform: scale(1);
        opacity: 1;
    }
}
