/* Added: 2026-10-10 14:00 - Unframed product and policy pages use the existing white/teal brand, not a separate theme. */
.mp-public-page { max-width: 1120px; margin-inline: auto; padding: 2.5rem 1.25rem; color: var(--mp-text); font-size: 16px; line-height: 1.7; overflow-wrap: anywhere; }
.mp-public-intro { max-width: 760px; padding-bottom: 2rem; }
.mp-public-intro h1 { font-size: 38px; line-height: 1.2; font-weight: 700; margin: .6rem 0 1rem; }
.mp-public-intro > p:last-of-type { font-size: 19px; color: var(--mp-muted); }
.mp-public-eyebrow { color: #087583; font-weight: 700; font-size: 14px; margin: 0; }
.mp-public-page h2 { font-size: 23px; font-weight: 700; line-height: 1.4; margin: 0 0 .75rem; }
.mp-public-band { border-top: 1px solid var(--mp-line); padding-block: 2rem; }
.mp-public-band > p { max-width: 76ch; }
.mp-public-section-heading { display: flex; gap: .65rem; align-items: center; }
.mp-public-section-heading .rzi { color: #087583; }
.mp-public-section-heading h2 { margin: 0 0 .5rem; }
.mp-public-actions { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin-top: 1.25rem; }
:is(.mp-public-primary, .mp-public-secondary) { display: inline-flex; align-items: center; justify-content: center; gap: .4rem; min-height: 44px; border-radius: 6px; padding: .55rem 1rem; font-weight: 600; text-decoration: none; max-width: 100%; }
.mp-public-primary { background: #087e8b; color: white; }
.mp-public-primary:hover { background: #066671; color: white; }
.mp-public-secondary { color: #086a75; background: linear-gradient(#f7fbfc, #e5eff1); box-shadow: 0 1px 3px #122b3815; }
.mp-public-secondary:hover { background: #dcebed; color: #07545e; }
:is(.mp-public-primary, .mp-public-secondary, .mp-public-faq summary, .mp-policy-nav a):focus-visible { outline: 3px solid #087583; outline-offset: 3px; }
.mp-public-feature-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 2rem 3rem; padding-block: 1rem 2rem; }
.mp-public-feature-list section { border-top: 1px solid var(--mp-line); padding-top: 1.5rem; min-width: 0; }
.mp-public-feature-list .rzi { color: #087583; font-size: 28px; margin-bottom: .75rem; }
.mp-public-feature-list h2 { font-size: 21px; }
.mp-product-shot { margin: 1.5rem 0 0; }
.mp-product-shot img { display: block; width: 100%; height: auto; border-radius: 6px; border: 1px solid var(--mp-line); }
.mp-product-shot figcaption { font-size: 13px; color: var(--mp-muted); margin-top: .5rem; }
.mp-public-steps { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.75rem 3rem; padding-left: 1.5rem; margin-bottom: 2.5rem; }
.mp-public-steps li { padding-left: .4rem; }
.mp-public-steps li::marker { color: #087583; font-weight: 700; }
.mp-public-faq details { border-bottom: 1px solid var(--mp-line); padding-block: 1rem; }
.mp-public-faq summary { font-weight: 600; cursor: pointer; padding-block: .3rem; }
.mp-public-faq details p { max-width: 80ch; padding-top: .75rem; margin-bottom: .25rem; }
.mp-public-included { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem 2rem; padding-left: 1.25rem; margin-bottom: 1.5rem; }
.mp-policy-page { max-width: 900px; }
.mp-policy-page h1 { font-size: 30px; }
.mp-policy-page h2 { padding-top: 1.5rem; border-top: 1px solid var(--mp-line); margin-top: 2rem; scroll-margin-top: 6rem; }
.mp-policy-nav { display: flex; flex-wrap: wrap; gap: .5rem; margin-block: 1.75rem; }
.mp-policy-nav a { background: #e7eff1; color: #075a65; border-radius: 6px; padding: .45rem .75rem; text-decoration: none; }
.mp-public-footer { display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem 1.5rem; padding: .75rem 1.25rem; }
.mp-public-footer a { color: var(--mp-muted); padding-block: .25rem; text-underline-offset: .2em; }
@media (max-width:850px) {
    .mp-policy-page h2 { scroll-margin-top: 15rem; }
}
@media (max-width:600px) {
    .mp-public-page { padding: 1.5rem .5rem; }
    .mp-public-intro h1 { font-size: 30px; }
    .mp-public-feature-list, .mp-public-steps, .mp-public-included { grid-template-columns: minmax(0,1fr); gap: 1.5rem; }
    .mp-policy-page h1 { font-size: 25px; }
}
