/* ====== ESTILOS GERAIS ====== */
.re-header {
    position: fixed;
    top:0;
    left:0;
    right:0;
    z-index:999;
    background: transparent;
    transition: all .25s ease;
    padding: 16px 24px;
    font-family: 'Poppins', system-ui, sans-serif;
}
.re-header-solid {
    background:#ffffff;
    box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.re-header-inner {
    max-width:1280px;
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}
.re-logo {
    font-weight:600;
    font-size:1rem;
    color:#002a5c;
}
.re-menu {
    display:flex;
    gap:24px;
    font-size:.9rem;
    font-weight:500;
}
.re-link {
    color:#002a5c;
    text-decoration:none;
    position:relative;
    transition:color .2s;
}
.re-link:hover {
    color:#0057ff;
}
.re-cta-top {
    background:#008CFF;
    color:#fff;
    font-size:.8rem;
    font-weight:600;
    padding:10px 16px;
    border-radius:8px;
    text-decoration:none;
    transition:all .2s;
    box-shadow:0 10px 24px rgba(0,140,255,.28);
}
.re-cta-top:hover {
    background:#0057ff;
    box-shadow:0 10px 24px rgba(0,87,255,.38);
}

/* HERO */
.re-hero {
    background: radial-gradient(circle at 20% 20%, #0057ff 0%, #008CFF 40%, #ffffff 100%);
    color:#fff;
    padding:140px 24px 80px;
    display:grid;
    grid-template-columns:1fr;
    max-width:1280px;
    margin:0 auto;
    gap:32px;
}
@media(min-width:900px){
    .re-hero{
        grid-template-columns:1fr 1fr;
        padding-top:160px;
    }
}
.re-hero-title {
    font-size:2rem;
    line-height:1.15;
    font-weight:600;
    color:#fff;
}
@media(min-width:900px){
    .re-hero-title{
        font-size:2.4rem;
    }
}
.re-hero-sub {
    font-size:1rem;
    margin-top:12px;
    color:#f0f7ff;
    font-weight:400;
}
.re-hero-btn {
    display:inline-block;
    background:#008CFF;
    color:#fff;
    font-weight:600;
    font-size:1rem;
    padding:12px 20px;
    border-radius:10px;
    margin-top:24px;
    text-decoration:none;
    box-shadow:0 16px 40px rgba(0,140,255,.4);
    transition:all .2s;
}
.re-hero-btn:hover{
    background:#0057ff;
    box-shadow:0 16px 40px rgba(0,87,255,.5);
}
.re-hero-image{
    display:flex;
    align-items:center;
    justify-content:center;
}
.re-product-mockup{
    background:#fff;
    color:#002a5c;
    border-radius:16px;
    padding:24px;
    min-width:240px;
    box-shadow:0 24px 60px rgba(0,0,0,.18);
    display:grid;
    gap:12px;
    text-align:center;
    font-weight:500;
}
.re-mockup-item{
    background:#f5f8ff;
    border:1px solid #e2e8ff;
    border-radius:12px;
    padding:16px;
    box-shadow:0 8px 20px rgba(0,0,0,.05);
}

/* CATEGORIAS */
.re-categories{
    background:#fff;
    padding:64px 24px;
    max-width:1280px;
    margin:0 auto;
}
.re-section-title{
    font-family:'Poppins',system-ui,sans-serif;
    font-size:1.4rem;
    font-weight:600;
    color:#002a5c;
    text-align:center;
    margin-bottom:32px;
}
.re-cat-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:20px;
}
@media(min-width:700px){
    .re-cat-grid{
        grid-template-columns:repeat(3,1fr);
    }
}
.re-cat-card{
    background:#fff;
    border-radius:16px;
    border:1px solid #dce6ff;
    box-shadow:0 16px 40px rgba(0,0,0,.05);
    padding:24px;
    text-align:center;
    transition:all .25s;
}
.re-cat-card:hover{
    background:rgba(0,140,255,.08);
    box-shadow:0 24px 60px rgba(0,87,255,.18);
    color:#002a5c;
}
.re-cat-icon{
    font-size:2rem;
}
.re-cat-name{
    margin-top:12px;
    font-weight:600;
    color:#002a5c;
}
.re-cat-desc{
    margin-top:4px;
    color:#4e5d7a;
    font-size:.9rem;
    line-height:1.4;
}

/* OFERTAS */
.re-offers{
    background:#ffffff;
    padding:64px 24px;
    max-width:1280px;
    margin:0 auto;
}
.re-offer-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:24px;
}
@media(min-width:900px){
    .re-offer-grid{
        grid-template-columns:repeat(4,1fr);
    }
}
.re-offer-card{
    background:#fff;
    border-radius:16px;
    border:1px solid #e0e6ff;
    box-shadow:0 20px 50px rgba(0,0,0,.07);
    overflow:hidden;
    display:flex;
    flex-direction:column;
    transition:transform .25s, box-shadow .25s;
}
.re-offer-card:hover{
    transform:translateY(-4px);
    box-shadow:0 30px 70px rgba(0,0,0,.12);
}
.re-offer-img{
    background:#f5f8ff;
    min-height:120px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:.8rem;
    font-weight:500;
    color:#002a5c;
    border-bottom:1px solid #e0e6ff;
}
.re-offer-info{
    padding:16px;
}
.re-offer-name{
    color:#002a5c;
    font-weight:600;
    font-size:.9rem;
}
.re-offer-price{
    margin-top:8px;
    color:#0057ff;
    font-weight:600;
    font-size:1rem;
}
.re-buy-btn{
    display:inline-block;
    background:#008CFF;
    color:#fff;
    text-decoration:none;
    font-weight:600;
    font-size:.9rem;
    padding:10px 16px;
    border-radius:10px;
    margin-top:16px;
    box-shadow:0 16px 40px rgba(0,140,255,.4);
    transition:all .2s;
}
.re-buy-btn:hover{
    background:#0057ff;
    box-shadow:0 16px 40px rgba(0,87,255,.5);
}

/* CONFIANÇA / DEPOIMENTOS */
.re-trust{
    background:#f8f8f8;
    padding:64px 24px;
}
.re-trust-inner{
    max-width:1280px;
    margin:0 auto;
}
.re-trust-line{
    text-align:center;
    font-size:.9rem;
    font-weight:500;
    color:#4e5d7a;
    margin-bottom:32px;
}
.re-testimonials{
    display:grid;
    grid-template-columns:1fr;
    gap:24px;
}
@media(min-width:900px){
    .re-testimonials{
        grid-template-columns:repeat(2,1fr);
    }
}
.re-testimonial-card{
    background:#fff;
    border-radius:16px;
    border:1px solid #e0e6ff;
    box-shadow:0 20px 50px rgba(0,0,0,.07);
    padding:24px;
}
.re-stars{
    color:#0057ff;
    font-size:1rem;
    font-weight:600;
}
.re-quote{
    color:#002a5c;
    font-size:.95rem;
    font-weight:500;
    margin-top:8px;
    line-height:1.4;
}
.re-client{
    color:#4e5d7a;
    font-size:.8rem;
    margin-top:12px;
}

/* RODAPÉ */
.re-footer{
    background:#fff;
    padding:40px 24px;
    border-top:1px solid #ececec;
    text-align:center;
    color:#777;
    font-size:.8rem;
    line-height:1.4;
}
.re-footer-inner{
    max-width:1280px;
    margin:0 auto;
}
.re-footer-text{
    margin-bottom:8px;
}
