/* Shared RPR M brand chrome for the active public-facing site. */
#site-header.rpr-brand-header {
    position: static !important;
    background: #0b1a2e;
    padding: 8px 0;
    border: 0;
    box-shadow: none;
}

#site-header.rpr-brand-header .header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
}

#site-header.rpr-brand-header .site-logo {
    display: block;
    flex: 0 0 auto;
    line-height: 0;
    text-decoration: none;
}

#site-header.rpr-brand-header .h-network-logo {
    display: block;
    width: min(300px, 45vw);
    height: auto;
}

#site-header.rpr-brand-header .site-nav {
    margin-left: auto;
}

#site-header.rpr-brand-header .site-nav-menu a {
    color: rgba(255, 255, 255, .88);
    font-size: .875rem;
    font-weight: 700;
    letter-spacing: .01em;
}

#site-header.rpr-brand-header .site-nav-menu a:hover,
#site-header.rpr-brand-header .site-nav-menu a:focus-visible {
    color: #fff;
}

@media (max-width: 700px) {
    #site-header.rpr-brand-header .header-inner { gap: .75rem; }
    #site-header.rpr-brand-header .h-network-logo { width: min(240px, 67vw); }
}

/* M reading scale: compact labels stay compact; prose must remain comfortable. */
.legal-wrap p,
.legal-wrap li { font-size: 1rem; }

.legal-wrap h2 { font-size: 1.25rem; }
.legal-wrap h3 { font-size: 1.0625rem; }
.criteria-table { font-size: .9375rem; }

.hub-wrap > p.intro { font-size: 1rem; }
.hub-card .name { font-size: .9375rem; }
.hub-card .desc { font-size: .875rem; }

#company-review h3 { font-size: 1.3rem; }
#company-review h4 { font-size: 1.0625rem; }
#company-review p { font-size: 1rem; }
#company-review ul li { font-size: .9375rem; }
.advertiser-disclosure-container { font-size: .8125rem; }
.sb-facts { font-size: .875rem; }
.sb-highlights li,
.sb-toc li a { font-size: .875rem; }

.howto-intro { font-size: 1rem; }
.howto-checklist-heading { font-size: 1rem; }
.howto-checklist-item { font-size: .9375rem; }
.howto-checklist-note { font-size: .875rem; }
.howto-how-title { font-size: 1.125rem; }
.howto-how-step-body h4 { font-size: 1rem; }
.howto-how-step-body p { font-size: .9375rem; }

/* Homepage: structured content indexes instead of a field of identical boxes. */
#page-home-v2 #record-types .rtb-grid {
    max-width: 980px;
    margin: 0 auto;
    gap: 0;
    grid-template-columns: 1fr 1fr;
    background: #fff;
    border: 1px solid #dce5ee;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 12px rgba(11, 26, 46, .035);
}

#page-home-v2 #record-types .rtb-card {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    column-gap: .8rem;
    row-gap: .25rem;
    padding: 1.05rem 1.2rem;
    background: transparent;
    border: 0;
    border-top: 1px solid #e5ecf3;
    border-radius: 0;
    box-shadow: none;
}

#page-home-v2 #record-types .rtb-card:nth-child(odd) { border-right: 1px solid #e5ecf3; }
#page-home-v2 #record-types .rtb-card:nth-child(-n + 2) { border-top: 0; }
#page-home-v2 #record-types .rtb-card:hover {
    background: #f7fafc;
    box-shadow: none;
    transform: none;
}

#page-home-v2 #record-types .rtb-chip {
    grid-row: span 3;
    margin: .05rem 0 0;
    border-radius: 8px;
}

#page-home-v2 #record-types .rtb-title { font-size: 1rem; color: #102d4e; }
#page-home-v2 #record-types .rtb-blurb { font-size: .9rem; line-height: 1.6; color: #536273; }
#page-home-v2 #record-types .rtb-cta { font-size: .82rem; margin-top: .2rem; }

#page-home-v2 #faq-section { background: #fff; border-color: #e5ecf3; }
#page-home-v2 #faq-section .faq-grid {
    max-width: 920px;
    margin: 0 auto;
    grid-template-columns: 1fr;
    gap: 0;
}

#page-home-v2 #faq-section .faq-item {
    display: grid;
    grid-template-columns: minmax(190px, .75fr) minmax(0, 1.25fr);
    gap: 1.25rem;
    padding: 1.15rem 0;
    background: transparent;
    border: 0;
    border-top: 1px solid #e1e8f0;
    border-radius: 0;
}

#page-home-v2 #faq-section .faq-item h3 {
    display: flex;
    gap: .55rem;
    margin: 0;
    font-size: 1rem;
    color: #102d4e;
}

#page-home-v2 #faq-section .faq-item h3::before {
    content: 'Q';
    display: inline-flex;
    flex: 0 0 1.25rem;
    width: 1.25rem;
    height: 1.25rem;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #e7f0fb;
    color: #1a73c8;
    font-size: .75rem;
    font-weight: 700;
    line-height: 1;
}

#page-home-v2 #faq-section .faq-item p { margin: 0; font-size: .95rem; line-height: 1.7; color: #536273; }
#page-home-v2 .rt-col-blurb p { font-size: .94rem; line-height: 1.65; }
#page-home-v2 .rt-row-featured .rt-col-blurb p { font-size: .96rem; }

/* Homepage supporting UI follows M's 13–14px minimum. */
#page-home-v2 .search-card-label { font-size: .85rem; }
#page-home-v2 .field-group label { font-size: .8rem; }
#page-home-v2 .field-group input,
#page-home-v2 .field-group select { font-size: .95rem; }
#page-home-v2 .form-trust,
#page-home-v2 .trust-item { font-size: .875rem; }
#page-home-v2 .advertiser-note,
#page-home-v2 .rt-social-proof,
#page-home-v2 .footer-disclaimer p { font-size: .82rem; }
#page-home-v2 .rt-head > div,
#page-home-v2 .rt-cta-note { font-size: .78rem; }
#page-home-v2 .rt-review-link { font-size: .8rem; }
#page-home-v2 .footer-links a { font-size: .82rem; }

@media (max-width: 600px) {
    #page-home-v2 .field-group input,
    #page-home-v2 .field-group select { font-size: 1rem; }
}

@media (max-width: 700px) {
    #page-home-v2 #record-types .rtb-grid { grid-template-columns: 1fr; }
    #page-home-v2 #record-types .rtb-card,
    #page-home-v2 #record-types .rtb-card:nth-child(-n + 2) { border-top: 1px solid #e5ecf3; border-right: 0; }
    #page-home-v2 #record-types .rtb-card:first-child { border-top: 0; }
    #page-home-v2 #faq-section .faq-item { grid-template-columns: 1fr; gap: .45rem; }
}
