*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{

    font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;
    background:#111;
    color:#fff;
    overflow-x:hidden;
}

/*=========================
    HERO
=========================*/

.hero{

    position:relative;

    min-height:100vh;

    background-image:url("cerveja-artesanal.jpg");
    background-size:cover;
    background-position:center;
    background-attachment:fixed;

    display:flex;
    justify-content:center;
    align-items:center;

    padding:60px 25px;

}

.overlay{

    position:absolute;
    inset:0;

    background:rgba(0,0,0,.78);

}

.content{

    position:relative;
    z-index:2;

    width:100%;
    max-width:900px;

    text-align:center;

    animation:fadeIn 1.2s;

}

.logo{

    width:180px;
    max-width:70%;
    margin-bottom:30px;

}

h1{

    font-size:64px;
    letter-spacing:3px;
    margin-bottom:10px;

}

h2{

    color:#ffcc33;

    font-size:32px;

    margin-bottom:40px;

}

.lead{

    font-size:25px;
    font-style:italic;

}

.content p{

    font-size:20px;

    line-height:1.8;

    margin:22px auto;

    color:#ddd;

    max-width:760px;

}

.highlight{

    margin-top:45px !important;

    color:#ffcc33 !important;

    font-size:28px !important;

    font-weight:bold;

}

/*=========================
    BOTÃO
=========================*/

.btn{

    display:inline-block;

    margin-top:35px;

    padding:16px 38px;

    border-radius:40px;

    background:#ffb300;

    color:#111;

    text-decoration:none;

    font-weight:bold;

    font-size:18px;

    transition:.3s;

}

.btn:hover{

    background:#ffc933;

    transform:translateY(-3px);

}

/*=========================
      CARIMBO
=========================*/

.stamp{

    position:absolute;

    top:60px;

    right:50px;

    z-index:3;

    border:6px solid #d40000;

    color:#d40000;

    padding:18px 40px;

    font-size:42px;

    font-family:Impact, sans-serif;

    letter-spacing:3px;

    text-transform:uppercase;

    transform:rotate(-15deg);

    opacity:.92;

    box-shadow:0 0 25px rgba(255,0,0,.25);

    animation:pulse 2.8s infinite;

}

/*=========================
      HISTÓRIA
=========================*/

.about{

    background:#1c1c1c;

    padding:90px 25px;

}

.container{

    max-width:900px;

    margin:auto;

}

.about h2{

    text-align:center;

    margin-bottom:45px;

    color:#fff;

}

.about p{

    font-size:19px;

    line-height:1.9;

    margin-bottom:22px;

    color:#ddd;

}

blockquote{

    margin:40px auto;

    padding:20px;

    border-left:5px solid #ffcc33;

    background:#2a2a2a;

    font-size:26px;

    font-style:italic;

    text-align:center;

}

.thanks{

    margin-top:70px;

    text-align:center;

}

.thanks h3{

    font-size:34px;

    color:#ffcc33;

}

.thanks p{

    font-size:24px;

}

.thanks span{

    font-size:52px;

}

/*=========================
      FOOTER
=========================*/

footer{

    background:#000;

    color:#777;

    text-align:center;

    padding:30px;

    line-height:1.8;

}

/*=========================
     ANIMAÇÕES
=========================*/

@keyframes fadeIn{

    from{

        opacity:0;
        transform:translateY(20px);

    }

    to{

        opacity:1;
        transform:translateY(0);

    }

}

@keyframes pulse{

    0%{

        transform:rotate(-15deg) scale(1);

    }

    50%{

        transform:rotate(-15deg) scale(1.04);

    }

    100%{

        transform:rotate(-15deg) scale(1);

    }

}

/*=========================
      TABLET
=========================*/

@media (max-width:900px){

    h1{

        font-size:52px;

    }

    h2{

        font-size:28px;

    }

    .stamp{

        font-size:30px;

        padding:14px 28px;

        top:30px;
        right:20px;

    }

}

/*=========================
      CELULAR
=========================*/

@media (max-width:768px){

    .hero{

        background-attachment:scroll;

        padding:30px 18px;

        min-height:100vh;

    }

    .content{

        padding-top:30px;

    }

    .logo{

        width:120px;

        margin-top:25px;

        margin-bottom:20px;

    }

    h1{

        font-size:42px;

    }

    h2{

        font-size:22px;

        margin-bottom:25px;

    }

    .lead{

        font-size:20px;

    }

    .content p{

        font-size:17px;

        line-height:1.7;

    }

    .highlight{

        font-size:22px !important;

    }

    .btn{

        width:100%;

        max-width:320px;

        padding:16px;

    }

    .stamp{

        position:relative;

        top:auto;
        right:auto;

        display:inline-block;

        margin:0 auto 25px;

        transform:rotate(-8deg);

        font-size:18px;

        padding:10px 18px;

        border-width:4px;

        letter-spacing:1px;

    }

    .about{

        padding:60px 20px;

    }

    .about h2{

        font-size:32px;

    }

    .about p{

        font-size:17px;

    }

    blockquote{

        font-size:20px;

    }

    .thanks h3{

        font-size:28px;

    }

    .thanks p{

        font-size:20px;

    }

}

/*=========================
 TELAS MUITO PEQUENAS
=========================*/

@media (max-width:420px){

    h1{

        font-size:34px;

    }

    h2{

        font-size:20px;

    }

    .logo{

        width:95px;

    }

    .stamp{

        width:100%;

        transform:rotate(-5deg);

        font-size:16px;

        padding:10px;

    }

}