/* ==========================================
   BRAND COLORS
========================================== */

:root{

    --hollister-blue:#0B1F3A;
    --hollister-yellow:#FFC72C;
    --text:#111111;
    --muted:#666666;
    --border:#E8E8E8;
    --shadow:0 3px 10px rgba(0,0,0,.05);

}

/* ==========================================
   RESET
========================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    font-size:16px;
    scroll-behavior:smooth;
}

body{

    font-family:'Poppins',sans-serif;

    background:#ffffff;

    color:var(--text);

    overflow-x:hidden;

}

/* ==========================================
   CONTAINER
========================================== */

.container{

    width:100%;

    max-width:480px;

    margin:0 auto;

    padding:24px 18px 40px;

}

/* ==========================================
   LOGO
========================================== */

.logo{

    text-align:center;

    margin-bottom:24px;

}

.logo h1{

    font-size:34px;

    font-weight:700;

    color:var(--hollister-blue);

    letter-spacing:.4px;

}

.underline{

    width:65px;

    height:4px;

    margin:10px auto 0;

    background:var(--hollister-blue);

    border-radius:20px;

}

/* ==========================================
   TITLE
========================================== */

h2{

    text-align:center;

    font-size:2rem;

    line-height:1.2;

    font-weight:700;

    margin-bottom:12px;

}

.subtitle{

    text-align:center;

    color:var(--muted);

    font-size:15px;

    line-height:1.6;

    margin-bottom:30px;

}

/* ==========================================
   STEPS
========================================== */

.steps{

    display:flex;

    flex-direction:column;

    gap:15px;

}

.step{

    display:flex;

    align-items:center;

    gap:16px;

    background:#fff;

    border:1px solid var(--border);

    border-radius:14px;

    padding:18px;

    box-shadow:var(--shadow);

    transition:.25s;

}

.step:hover{

    transform:translateY(-2px);

}

.number{

    width:40px;

    height:40px;

    flex-shrink:0;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:var(--hollister-blue);

    color:#fff;

    font-size:16px;

    font-weight:700;

}

.step p{

    font-size:15px;

    line-height:1.5;

    font-weight:500;

}

/* ==========================================
   BUTTON
========================================== */

.claim-btn{

    display:flex;

    justify-content:center;

    align-items:center;

    width:100%;

    margin-top:30px;

    padding:20px;

    border:none;

    border-radius:12px;

    background:var(--hollister-yellow);

    color:var(--hollister-blue);

    font-size:20px;

    font-weight:700;

    text-decoration:none;

    cursor:pointer;

    transition:.25s;

    box-shadow:0 6px 14px rgba(255,199,44,.35);

}

.claim-btn:active{

    transform:scale(.98);

}

/* ==========================================
   DISCLAIMER
========================================== */

.disclaimer{

    margin:22px 0 40px;

    text-align:center;

    color:#777;

    font-size:13px;

    line-height:1.7;

}

/* ==========================================
   FAQ
========================================== */

.faq h3{

    font-size:28px;

    font-weight:700;

    margin-bottom:20px;

}

.faq-item{

    background:#fff;

    border:1px solid var(--border);

    border-radius:12px;

    margin-bottom:14px;

    overflow:hidden;

}

.faq-question{

    width:100%;

    background:#fff;

    border:none;

    padding:18px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    cursor:pointer;

    text-align:left;

    font-size:15px;

    font-weight:600;

}

.faq-question span{

    color:var(--hollister-blue);

    font-size:24px;

    transition:.3s;

}

.faq-answer{

    display:none;

    padding:0 18px 18px;

    color:var(--muted);

    font-size:14px;

    line-height:1.7;

}

.faq-item.active .faq-answer{

    display:block;

}

.faq-item.active .faq-question span{

    transform:rotate(45deg);

}

/* ==========================================
   SMALL PHONES
========================================== */

@media (max-width:360px){

.container{

    padding:20px 14px 35px;

}

.logo h1{

    font-size:30px;

}

h2{

    font-size:28px;

}

.subtitle{

    font-size:14px;

}

.step{

    padding:16px;

}

.step p{

    font-size:14px;

}

.claim-btn{

    font-size:18px;

    padding:16px;

}

.faq h3{

    font-size:24px;

}

}