/*
 Theme Name:   ReversePath – Final Perfect 2025
 Template:     astra
 Version:      11.0
*/

* { margin:0; padding:0; box-sizing:border-box; }
html, body { width:100%; overflow-x:hidden; font-family:'Inter',sans-serif; background:#0f172a; color:#e2e8f0; }
img { max-width:100%; display:block; }

/* Full-width fix – removes all white side borders */
body:before, body:after, .site-content, .ast-container, .ast-main-header-wrap { display:none!important; }
.site-main { margin:0!important; padding:0!important; max-width:100%!important; }

/* HERO – Stunning & perfect text size */
.rp-hero {
    background: linear-gradient(135deg, #1e40af 0%, #3b82f6 100%);
    text-align:center;
    padding:110px 20px 90px;
    color:white;
}
.rp-hero h1 {
    font-size:2.8rem;
    font-weight:900;
    margin-bottom:12px;
}
.rp-hero .usp {
    font-size:3.4rem;
    font-weight:900;
    background: linear-gradient(90deg, #93c5fd, #dbeafe);
    -webkit-background-clip:text; background-clip:text;
    -webkit-text-fill-color:transparent; color:transparent;
    display:inline-block;
}
.rp-hero p {
    font-size:1.35rem;
    max-width:720px;
    margin:24px auto 32px;
    line-height:1.6;
    opacity:0.95;
}
.rp-hero button {
    background:white; color:#1e40af; border:none; padding:16px 44px;
    border-radius:50px; font-size:1.25rem; font-weight:700; cursor:pointer;
    box-shadow:0 10px 30px rgba(0,0,0,0.3);
    transition:0.3s;
}
.rp-hero button:hover { transform:translateY(-4px); box-shadow:0 16px 40px rgba(0,0,0,0.4); }

/* Main container */
.rp-wrap {
    max-width:960px;
    margin:0 auto;
    padding:0 20px;
}

/* Form section – clean card, perfect spacing */
.rp-card {
    background:white;
    color:#1e293b;
    border-radius:28px;
    padding:50px 40px;
    margin:60px auto;
    box-shadow:0 20px 60px rgba(0,0,0,0.12);
    max-width:800px;
}
.rp-card h2 {
    font-size:2.3rem;
    color:#1e40af;
    text-align:center;
    margin-bottom:16px;
}
.rp-card .subtitle {
    text-align:center;
    color:#64748b;
    font-size:1.2rem;
    max-width:600px;
    margin:0 auto 40px;
}

/* Progress bar */
.rp-progress {
    height:10px;
    background:#e2e8f0;
    border-radius:5px;
    overflow:hidden;
    margin:40px 0;
}
.rp-progress > div {
    height:100%;
    width:0;
    background:#3b82f6;
    border-radius:5px;
    transition:width 0.6s ease;
}

/* Form elements */
input, button {
    width:100%;
    padding:16px 20px;
    margin:12px 0;
    border-radius:16px;
    font-size:1.1rem;
    border:2px solid #e2e8f0;
}
input { background:white; color:#1e293b; }
input:focus { outline:none; border-color:#3b82f6; box-shadow:0 0 0 4px rgba(59,130,246,0.15); }
button {
    background:#3b82f6;
    color:white;
    border:none;
    font-weight:600;
    cursor:pointer;
    padding:18px;
    font-size:1.2rem;
}
button:hover { background:#2563eb; }
button.reset { background:#f8fafc; color:#64748b; }

/* Results */
.rp-result {
    background:#f8fafc;
    padding:40px;
    border-radius:20px;
    border-left:6px solid #3b82f6;
    margin:30px 0;
}
.rp-nextsteps {
    background:#f0fdfa;
    padding:50px;
    border-radius:24px;
    text-align:center;
    border:1px solid #99f6e4;
}

/* Mobile perfection */
@media (max-width:640px) {
    .rp-hero h1 { font-size:2.2rem; }
    .rp-hero .usp { font-size:2.6rem; }
    .rp-card { padding:40px 24px; margin:40px auto; }
}