.rapid-access-public-shell .content { padding-inline: 16px; }

.rapid-public {
    width: min(100%, 1120px);
    margin: 0 auto;
    padding: 20px 0 52px;
    color: #172033;
}

.rapid-public-hero {
    display: grid;
    gap: 22px;
    padding: 26px 20px;
    border: 1px solid #e7bd4d;
    border-radius: 28px;
    background:
        radial-gradient(circle at 8% 10%, rgba(245, 190, 45, .24), transparent 32%),
        linear-gradient(145deg, #fffdf7, #fff6d9);
    box-shadow: 0 20px 55px rgba(121, 81, 8, .12);
}

.rapid-public-kicker,
.rapid-public-section-heading > span,
.rapid-public-feature__copy > span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: #fff2bf;
    color: #805407;
    font-size: 12px;
    font-weight: 900;
}

.rapid-public-hero h1 {
    max-width: 720px;
    margin: 14px 0 10px;
    font-size: clamp(30px, 7.8vw, 52px);
    line-height: 1.25;
    letter-spacing: -.6px;
}

.rapid-public-hero__copy > p { margin: 0; color: #6d624e; font-size: 16px; line-height: 1.9; }
.rapid-public-price { display: flex; align-items: center; gap: 10px; margin: 20px 0 16px; color: #805407; }
.rapid-public-price strong { font-size: 47px; line-height: 1; }
.rapid-public-price span { font-weight: 900; line-height: 1.2; }
.rapid-public-price small { color: #776b58; font-size: 11px; }

.rapid-public-primary {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 58px;
    padding: 13px 20px;
    border-radius: 16px;
    background: #25d366;
    color: #fff;
    font-size: 17px;
    font-weight: 900;
    text-decoration: none;
    box-shadow: 0 14px 28px rgba(37, 211, 102, .23);
    transition: transform .18s ease, background .18s ease;
}
.rapid-public-primary:hover { background: #1fbd5a; transform: translateY(-1px); }
.rapid-public-primary:focus-visible { outline: 3px solid rgba(37, 211, 102, .36); outline-offset: 3px; }
.rapid-public-login-note { margin-top: 10px !important; color: #7d7465 !important; font-size: 11px !important; line-height: 1.6 !important; text-align: center; }

.rapid-public-result {
    align-self: center;
    padding: 25px 20px;
    border: 1px solid rgba(128, 84, 7, .18);
    border-radius: 24px;
    background: rgba(255, 255, 255, .84);
    text-align: center;
    box-shadow: 0 16px 34px rgba(128, 84, 7, .09);
}
.rapid-public-result__label { color: #805407; font-size: 12px; font-weight: 900; }
.rapid-public-result > strong { display: block; margin: 8px 0 0; color: #25b95c; font-size: 70px; line-height: 1; }
.rapid-public-result h2 { margin: 7px 0; font-size: 22px; line-height: 1.45; }
.rapid-public-result p { margin: 0; color: #756c5d; font-size: 13px; }
.rapid-public-result__badges { display: grid; gap: 8px; margin-top: 18px; }
.rapid-public-result__badges span { padding: 9px 10px; border-radius: 12px; background: #edfff3; color: #16763a; font-size: 12px; font-weight: 900; }

.rapid-public-assurance,
.rapid-public-free {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    margin-top: 18px;
    padding: 19px;
    border: 1px solid #a9e8c0;
    border-radius: 20px;
    background: #effff5;
}
.rapid-public-assurance > span,
.rapid-public-free > span { display: grid; place-items: center; flex: 0 0 38px; height: 38px; border-radius: 12px; background: #25d366; color: #fff; font-size: 20px; font-weight: 900; }
.rapid-public-assurance h2,
.rapid-public-free h2 { margin: 0 0 5px; font-size: 18px; line-height: 1.5; }
.rapid-public-assurance p,
.rapid-public-free p { margin: 0; color: #54645a; font-size: 13px; line-height: 1.75; }

.rapid-public-steps,
.rapid-public-feature,
.rapid-public-final { margin-top: 20px; padding: 24px 18px; border: 1px solid #e2e6eb; border-radius: 25px; background: #fff; box-shadow: 0 16px 42px rgba(25, 34, 49, .06); }
.rapid-public-section-heading h2 { margin: 10px 0 0; font-size: 27px; line-height: 1.4; }
.rapid-public-steps__grid { display: grid; gap: 13px; margin-top: 20px; }
.rapid-public-steps article { position: relative; padding: 18px; border-radius: 18px; background: #f7f9f8; }
.rapid-public-steps article b { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px; background: #25d366; color: #fff; }
.rapid-public-steps article h3 { margin: 13px 0 5px; font-size: 18px; }
.rapid-public-steps article p { margin: 0; color: #697285; font-size: 13px; line-height: 1.75; }

.rapid-public-feature { display: grid; gap: 20px; background: #172033; color: #fff; }
.rapid-public-feature__copy h2 { margin: 11px 0 8px; font-size: 27px; line-height: 1.4; }
.rapid-public-feature__copy p { margin: 0; color: #c2c9d4; font-size: 14px; line-height: 1.85; }
.rapid-public-card-preview { padding: 20px; border: 3px solid #d7a934; border-radius: 22px; background: #fffdf7; color: #172033; box-shadow: 0 13px 30px rgba(0, 0, 0, .18); }
.rapid-public-card-preview > div { display: flex; justify-content: space-between; gap: 10px; align-items: center; }
.rapid-public-card-preview > div strong { padding: 7px 10px; border: 1px solid #d7a934; border-radius: 999px; color: #805407; font-size: 11px; }
.rapid-public-card-preview > div span { padding: 7px 10px; border-radius: 999px; background: #e9fff1; color: #159249; font-size: 11px; font-weight: 900; }
.rapid-public-card-preview h3 { margin: 20px 0 8px; font-size: 24px; }
.rapid-public-card-preview p { margin: 7px 0; color: #6c7484; font-size: 13px; }
.rapid-public-card-preview button { width: 100%; min-height: 48px; margin-top: 16px; border: 0; border-radius: 13px; background: #25d366; color: #fff; font: inherit; font-weight: 900; opacity: 1; }

.rapid-public-final { text-align: center; background: linear-gradient(145deg, #fffdf6, #fff6d9); border-color: #e7bd4d; }
.rapid-public-final h2 { margin: 0; font-size: 27px; line-height: 1.4; }
.rapid-public-final p { margin: 8px 0 18px; color: #6e6557; line-height: 1.8; }
.rapid-public-final small { display: block; margin-top: 13px; color: #786f61; line-height: 1.7; }

@media (min-width: 760px) {
    .rapid-public { padding-top: 34px; }
    .rapid-public-hero { grid-template-columns: minmax(0, 1.3fr) minmax(310px, .7fr); align-items: center; padding: 45px; }
    .rapid-public-primary { width: fit-content; min-width: 285px; }
    .rapid-public-login-note { width: 370px; text-align: start; }
    .rapid-public-steps,
    .rapid-public-feature,
    .rapid-public-final { padding: 34px; }
    .rapid-public-steps__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .rapid-public-feature { grid-template-columns: minmax(0, 1fr) 390px; align-items: center; }
    .rapid-public-final .rapid-public-primary { margin-inline: auto; }
}

@media (prefers-reduced-motion: reduce) {
    .rapid-public-primary { transition: none; }
}
