@import url('animations.css');

/* Start Vouchr Configuration - CSS Variables */

:root {

    /* Start Base Color and Theme Variables */

    --primary-accent-color: #00D9FF;
    --secondary-accent-color: #153E43;
    --tertiary-accent-color: #1D2023;
    --background-color: #FFFFFF;
    --background-image: url("");
    --logo-image: url("assets/images/logo.svg");

    /* Uncomment the lines below to add a customizable border to the media items displayed */
    /* --gift-item-border: solid 4px white; */
    /* --gift-item-border-radius: 16px; */
    /* --gift-item-box-shadow:  0 2px 4px 0 rgba(0, 0, 0, 0.26); */
    
    /* Uncomment the two lines below to add a customizable border to the badge icon 
    /* --badge-border: solid 4px white; */
    /* --badge-border-radius: 16px; */

    /* End Base Color and Theme Variables */

    /* Start Button Customization Variables */

    --button-default-color: var(--primary-accent-color);
    --button-text-color: #FFFFFF;
    --button-focus-color: #BBBBBB;

    --button-letter-spacing: 0.25px;
    --button-font-size: 14px;
    --button-padding: 4px;
    --button-font-family: "DINCondensed-Bold";
    --button-border-radius: 0px;

    /* End Button Customization Variables */

    /* Start Text Customization Variables */

    --primary-header-font-size: 32px;
    --primary-header-letter-spacing: 0px;
    --primary-header-line-height: 26px;
    --primary-header-font-family: "DINCondensed-Bold";
    --primary-header-text-color: var(--secondary-accent-color);
    --primary-header-text-transform: uppercase;
    --primary-header-font-weight: normal;

    --secondary-header-font-size: 48px;
    --secondary-header-letter-spacing: 0px;
    --secondary-header-font-family: "DINCondensed-Bold";
    --secondary-header-text-color: var(--secondary-accent-color);
    --secondary-header-text-transform: uppercase;

    --display-font-size: 48px;
    --display-letter-spacing: 0px;
    --display-line-height: 48px;
    --display-font-family: "DINCondensed-Bold";
    --display-text-transform: uppercase;
    --display-text-color: var(--secondary-accent-color);
    --display-font-weight: normal;

    --body-font-size: 16px;
    --body-letter-spacing: 0px;
    --body-line-height: 20px;
    --body-font-family: "Avenir";
    --body-font-weight: normal;

    /* End Text Customization Variables */

    /* Start Animation Customization Variables */
    /* Uncomment the two lines for each type of animation to enable them */

    /* Slide in */
    /* --gift-item-animation-odd: slide-in-bottom-odd 1s ease-out forwards;
    --gift-item-animation-even: slide-in-bottom-even 1s ease-out forwards; */

    /* Slide in blurred */
    /* --gift-item-animation-odd: slide-in-blurred-bottom 1s ease-out forwards;
    --gift-item-animation-even: slide-in-blurred-bottom 1s ease-out forwards; */

    /* Roll in blurred */
    /* --gift-item-animation-odd: roll-in-blurred-bottom 1s ease-out forwards;
    --gift-item-animation-even: roll-in-blurred-bottom 1s ease-out forwards; */

    /* Flip in */
    /* --gift-item-animation-odd: flip-in-hor-top 1s ease-out forwards;
    --gift-item-animation-even: flip-in-hor-top 1s ease-out forwards; */

    /* Jello */
    /* --gift-item-animation-odd: jello-vertical 1.5s ease-in forwards;
    --gift-item-animation-even: jello-vertical 1.5s ease-in forwards; */

    /* Jello blurred */
    --gift-item-animation-odd: jello-vertical-blurred 1.5s ease-in forwards;
    --gift-item-animation-even: jello-vertical-blurred 1.5s ease-in forwards;

    /* End Animation Customization Variables */
}

@media all and (max-width: 767px) {
    :root {
        --secondary-header-font-size: 24px;
  }
}

/* End Vouchr Configuration - CSS Variables */

.body {
    background-color: var(--background-color);
    background-image: var(--background-image);
    background-size: contain;
    background-position: center;
    background-attachment: fixed;
}

html, body {
    width: 100%;
    height: 100%;
    margin: 0;
}

.body-wrap {
    height: 100%;
    display: grid;
    grid-template-areas:
      "header"
      "main"
      "footer";
    grid-template-rows: 40px 1fr 40px;
}

header {
    grid-area: header;
}

main {
    grid-area: main;
}

footer {
    grid-area: footer;
}

header.page-header {
    z-index: 100;
    background-color: var(--background-color);
    display: block;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.49);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.logo {
    background: var(--logo-image) no-repeat;
    background-position: center;
    height: 50%;
}

footer.page-footer {
    font-family: var(--body-font-family);
    z-index: 100;
    background-color: var(--secondary-accent-color);
    color: #ffffff;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

footer.page-footer h5 {
    margin: 0;
    font-size: 11px;
    opacity: 0.29;
}

.page-header img {
    display: block;
    width: 80px;
    margin: 5px auto;
    padding: 2px;
}

#root {
    height: 100%;
    padding: 10px 0;
}

@media screen and (max-width: 500px) {
    .header a {
        float: none;
        display: block;
        text-align: left;
    }

    .header-right {
        float: none;
    }
}

.vouchrWrapperClosed {
    width: 100%;
}

.vouchrWrapperClosed > img {
    width: 100%;
    display: block;
}

.Envelope_Container {
    position: relative;
    margin: 0% 10%;
    bottom: 3.8px;
}

.Envelope_Shadow {
    border-radius: 15px;
    box-shadow: 0 0px 8px  rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.Envelope_TopOpen {
    z-index: -2;
    width: 100%;
    position: relative;
    top: 10px;
    border-radius: 15px;
    filter: drop-shadow(0 0px 4px  rgba(0, 0, 0, 0.2)) drop-shadow(0 6px 20px rgba(0, 0, 0, 0.19));
}

.Envelope_TopClosedShadow {
    top: 4px;
    width: 100%;
    position: absolute;
    bottom: 100%;
    opacity: 1;
    z-index: 20;
}

.Envelope_InsideShadow {
    z-index: -1;
    width: 100%;
    position: absolute;
    top: -1px;
    opacity: 1;
}

.Envelope_BottomShadow {
    width: 100%;
    position: absolute;
    bottom: 0px;
    left: 0px;
    z-index: 19;
    opacity: 1;
    border-radius: 15px;
}

.Placeholder_Shadow {
    clip-path: polygon(-10% -12%, -10% 110%, 110% 110%, 110% -12%, 50% 50%);
    -webkit-clip-path: polygon(-10% -12%, -10% 110%, 110% 110%, 110% -12%, 50% 50%);
    padding-top:59%;
    height: 12.55%;
    width: 80%;
    margin: 0 10%;
}

.Envelope_Base {
    width: 100%;
    z-index: 1;
    margin-bottom: -4px;
    opacity: 1;
    border-radius: 15px;
    height: 0;
    padding-top: 75%;
    background-size: cover;
    background-position: center;
}

.Envelope_BaseClipPath {
    clip-path: polygon(100% 0%, 100% 100%, 0 100%, 0 0, 50% 50%);
    -webkit-clip-path: polygon(100% 0%, 100% 100%, 0 100%, 0 0, 50% 50%);
}

.Envelope_Back {
    position: absolute;
    bottom: 0;
    z-index: -2;
    background-color: #D8E2E8;
    border-radius: 15px;
    margin: 0;
    height: 66%;
    width: 100%;
}

.Envelope_Wiggle {
    animation-name: wiggle;
    animation-duration: 3s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

.Envelope_Wiggle:hover {
    animation: wiggle-hover 3s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

@keyframes wiggle {
    0% {
        transform: rotate(0deg);
    }

    3% {
        transform: rotate(3deg);
    }

    6% {
        transform: rotate(0deg);
    }

    9% {
        transform: rotate(-3deg);
    }

    12% {
        transform: rotate(0deg);
    }

    15% {
        transform: rotate(3deg);
    }

    18% {
        transform: rotate(0deg);
    }

    21% {
        transform: rotate(-3deg);
    }

    24% {
        transform: rotate(0deg);
    }

    27% {
        transform: rotate(3deg);
    }

    30% {
        transform: rotate(0deg);
    }

    33% {
        transform: rotate(-3deg);
    }

    36% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(0deg);
    }
}

@keyframes wiggle-hover {
    0% {
        transform: rotate(0deg) scale(1.03);
    }

    3% {
        transform: rotate(3deg) scale(1.03);
    }

    6% {
        transform: rotate(0deg) scale(1.03);
    }

    9% {
        transform: rotate(-3deg) scale(1.03);
    }

    12% {
        transform: rotate(0deg) scale(1.03);
    }

    15% {
        transform: rotate(3deg) scale(1.03);
    }

    18% {
        transform: rotate(0deg) scale(1.03);
    }

    21% {
        transform: rotate(-3deg) scale(1.03);
    }

    24% {
        transform: rotate(0deg) scale(1.03);
    }

    27% {
        transform: rotate(3deg) scale(1.03);
    }

    30% {
        transform: rotate(0deg) scale(1.03);
    }

    33% {
        transform: rotate(-3deg) scale(1.03);

    }

    36% {
        transform: rotate(0deg) scale(1.03);

    }

    100% {
        transform: rotate(0deg) scale(1.03);
    }
}
