/* =========================
   RESET
========================= */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

/* =========================
   HTML BODY
========================= */

html,
body{
    width:100%;
    height:100%;
}

body{

    font-family:Georgia, serif;

    overflow:hidden;

    background:#000;

    position:relative;

    color:#d4af37;
}

/* =========================
   HERO BACKGROUND IMAGE
========================= */

.hero-bg{

    position:fixed;

    inset:0;

    background-image:url("assets/hero-bg.jpg");

    background-size:cover;

    background-position:center center;

    background-repeat:no-repeat;

    z-index:1;
}

/* =========================
   DARK OVERLAY
========================= */

.overlay{

    position:fixed;

    inset:0;

    background:
    linear-gradient(
        rgba(0,0,0,0.72),
        rgba(0,0,0,0.72)
    );

    z-index:2;
}

/* =========================
   GOLD LIGHT EFFECT
========================= */

.gold-light{

    position:fixed;

    inset:0;

    background:
    radial-gradient(
        circle at top,
        rgba(212,175,55,0.20),
        transparent 45%
    );

    z-index:3;

    pointer-events:none;
}

/* =========================
   HERO
========================= */

.hero{

    position:relative;

    z-index:5;

    width:100%;

    min-height:100vh;

    display:flex;

    justify-content:center;

    align-items:center;

    text-align:center;

    padding:40px;
}

/* =========================
   HERO CONTENT
========================= */

.hero-content{

    max-width:850px;
}

/* =========================
   LOGO
========================= */

.logo{

    width:140px;

    margin-bottom:35px;

    filter:
    drop-shadow(
        0 0 20px rgba(212,175,55,0.25)
    );
}

/* =========================
   H1
========================= */

h1{

    font-size:76px;

    font-weight:normal;

    letter-spacing:20px;

    margin-bottom:28px;

    color:#d4af37;

    text-shadow:
    0 0 18px rgba(212,175,55,0.20);
}

/* =========================
   DIVIDER
========================= */

.divider{

    width:180px;

    height:1px;

    margin:auto;

    margin-bottom:28px;

    background:
    linear-gradient(
        to right,
        transparent,
        #d4af37,
        transparent
    );
}

/* =========================
   TAGLINE
========================= */

.tagline{

    font-size:14px;

    letter-spacing:7px;

    color:#f0d98c;

    margin-bottom:50px;
}

/* =========================
   H2
========================= */

h2{

    font-size:58px;

    font-weight:normal;

    letter-spacing:8px;

    color:#f6e2a1;

    margin-bottom:25px;
}

/* =========================
   DESCRIPTION
========================= */

.description{

    max-width:720px;

    margin:auto;

    line-height:2;

    font-size:18px;

    color:#e7d8a1;

    margin-bottom:55px;
}

/* =========================
   FORM
========================= */

.notify-form{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:15px;

    flex-wrap:wrap;
}

/* INPUT */

.notify-form input{

    width:340px;

    height:58px;

    padding:0 20px;

    border:1px solid rgba(212,175,55,0.45);

    background:rgba(0,0,0,0.40);

    color:#fff;

    outline:none;

    font-size:14px;

    backdrop-filter:blur(10px);
}

.notify-form input::placeholder{

    color:#b89b45;
}

/* BUTTON */

.notify-form button{

    height:58px;

    padding:0 36px;

    border:none;

    background:#d4af37;

    color:#000;

    font-size:13px;

    letter-spacing:4px;

    cursor:pointer;

    transition:0.35s;
}

.notify-form button:hover{

    background:#f6e2a1;
}

/* =========================
   FOOTER
========================= */

footer{

    position:fixed;

    bottom:25px;

    left:50%;

    transform:translateX(-50%);

    z-index:10;

    display:flex;

    align-items:center;

    gap:12px;

    padding:12px 22px;

    border-radius:50px;

    background:rgba(0,0,0,0.28);

    border:1px solid rgba(212,175,55,0.18);

    backdrop-filter:blur(10px);

    color:#e8d7a0;

    font-size:11px;

    letter-spacing:3px;
}

/* =========================
   TGN LOGO
========================= */

.tgn-logo{

    width:26px;

    opacity:0.92;
}

/* =========================
   MOBILE
========================= */

@media(max-width:768px){

    .hero{

        padding:30px;
    }

    .logo{

        width:92px;

        margin-bottom:28px;
    }

    h1{

        font-size:42px;

        letter-spacing:10px;

        margin-bottom:22px;
    }

    .divider{

        width:120px;

        margin-bottom:22px;
    }

    .tagline{

        font-size:11px;

        letter-spacing:4px;

        margin-bottom:35px;
    }

    h2{

        font-size:34px;

        letter-spacing:5px;

        margin-bottom:20px;
    }

    .description{

        font-size:14px;

        line-height:1.9;

        margin-bottom:40px;
    }

    .notify-form{

        flex-direction:column;
    }

    .notify-form input,
    .notify-form button{

        width:100%;
    }

    footer{

        width:92%;

        bottom:15px;

        justify-content:center;

        flex-wrap:wrap;

        text-align:center;

        font-size:9px;

        letter-spacing:2px;

        padding:10px 14px;
    }

    .tgn-logo{

        width:20px;
    }

}