/* =====================================================================
   SaniBed — additions: Google reviews section + exit-intent popup
   Brand: navy #1B2A4A, gold #C8952E, fonts Playfair Display / Inter
   ===================================================================== */

/* ---------- In-app browser notice (Apple Pay / Google Pay reliability) ---------- */
.inapp-notice{
    background:#1B2A4A;color:#fff;text-align:center;
    font-size:.85rem;line-height:1.5;padding:10px 20px;
}
.inapp-notice strong{color:#C8952E;}

/* ---------- Google Reviews / social proof ---------- */
.reviews-section{
    padding:70px 0;
    background:#f7f8fa;
}
.reviews-section .section-label,
.reviews-section .section-title{
    text-align:center;
    display:block;
}
.rv-badge-row{
    display:flex;align-items:center;justify-content:center;gap:10px;
    margin:8px 0 36px;text-decoration:none;
}
.rv-badge-row:hover .rv-badge-text{color:#C8952E;}
.rv-stars-lg{color:#C8952E;font-size:1.35rem;letter-spacing:2px;}
.rv-badge-text{color:#1B2A4A;font-weight:600;font-size:.95rem;transition:color .15s ease;}

.rv-grid{
    display:flex;flex-wrap:wrap;justify-content:center;
    gap:22px;max-width:860px;margin:0 auto;
}
.rv-card{
    background:#fff;border:1px solid #ececf0;border-radius:14px;
    padding:26px 24px;box-shadow:0 4px 20px rgba(27,42,74,.05);
    display:flex;flex-direction:column;
    flex:1 1 240px;max-width:270px;
}
.rv-stars{color:#C8952E;letter-spacing:2px;font-size:1rem;margin-bottom:12px;}
.rv-text{color:#3a4353;line-height:1.6;font-size:.98rem;margin:0 0 18px;flex-grow:1;}
.rv-author{
    display:flex;flex-direction:column;gap:6px;
    border-top:1px solid #f0f0f3;padding-top:14px;
}
.rv-name{font-weight:700;color:#1B2A4A;font-size:.95rem;}
.rv-src{
    display:inline-flex;align-items:center;gap:5px;
    font-size:.8rem;color:#9099a8;text-decoration:none;width:fit-content;
}
.rv-src:hover{color:#1B2A4A;text-decoration:underline;}
.rv-check{flex-shrink:0;}

.rv-more-link{
    display:block;text-align:center;margin-top:32px;
    color:#1B2A4A;font-weight:700;text-decoration:none;font-size:.95rem;
}
.rv-more-link:hover{color:#C8952E;text-decoration:underline;}

/* ---------- Exit-intent popup ---------- */
.exit-overlay{
    position:fixed;inset:0;background:rgba(15,22,40,.6);
    display:none;align-items:center;justify-content:center;
    z-index:1000;padding:20px;opacity:0;transition:opacity .25s ease;
}
.exit-overlay.open{display:flex;opacity:1;}
.exit-modal{
    position:relative;background:#fff;border-radius:18px;
    max-width:420px;width:100%;padding:42px 34px 36px;text-align:center;
    box-shadow:0 20px 60px rgba(0,0,0,.3);
    transform:translateY(12px);transition:transform .25s ease;
}
.exit-overlay.open .exit-modal{transform:translateY(0);}
.exit-close{
    position:absolute;top:14px;right:16px;background:none;border:none;
    font-size:1.7rem;line-height:1;color:#b3b9c4;cursor:pointer;
}
.exit-close:hover{color:#1B2A4A;}
.exit-eyebrow{
    display:block;color:#C8952E;font-weight:700;
    font-size:.78rem;letter-spacing:.14em;margin-bottom:10px;
}
.exit-modal h3{
    font-family:'Playfair Display',serif;color:#1B2A4A;
    font-size:1.7rem;margin:0 0 10px;
}
.exit-sub{color:#586074;font-size:.95rem;margin:0 0 18px;line-height:1.5;}
.exit-code{
    display:inline-block;background:#1B2A4A;color:#fff;font-weight:700;
    letter-spacing:.12em;font-size:1.15rem;padding:12px 26px;border-radius:10px;
    cursor:pointer;
}
.exit-hint{font-size:.8rem;color:#9099a8;margin:12px 0 22px;}
.exit-cta{
    display:inline-block;background:#C8952E;color:#1B2A4A;font-weight:700;
    text-decoration:none;padding:13px 40px;border-radius:9px;letter-spacing:.03em;
}
.exit-cta:hover{background:#d5a43f;}

@media (max-width:520px){
    .exit-modal{padding:36px 22px 30px;}
    .exit-modal h3{font-size:1.45rem;}
}
