/* One-screen product offer, using the existing Reed SM dark components. */
.rf-section{scroll-margin-top:var(--nav-h)}
.rf-stage{max-width:48rem;text-align:center;display:flex;flex-direction:column;align-items:center}
.rf-section .rf-stage h2{font-size:clamp(2rem,5.4vw,5.35rem);line-height:.94;max-width:12ch}
.rf-stage .rf-price{justify-content:center;margin-top:1.2rem}
.rf-stage .rf-thesis{margin:1.25rem auto 0;max-width:34ch;font-size:clamp(1.15rem,1.6vw,1.45rem);line-height:1.4;color:var(--cream-soft);text-wrap:balance}
.rf-meta{margin-top:.7rem;font-size:.95rem;color:var(--cream-soft)}
.rf-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1.2rem;margin-top:1.25rem}
.rf-actions [hidden]{display:none}
.rf-purchase{min-height:48px;white-space:normal;text-align:center;justify-content:center}
.rf-section .rf-purchase:disabled{background:var(--lime);color:var(--lime-ink);border:0;cursor:not-allowed;box-shadow:none;transform:none;opacity:1}
.rf-checkout-status{font-size:.8rem;line-height:1.4;color:var(--cream-soft);margin-top:.4rem}
.rf-checkout-status[hidden]{display:none}
.rf-service-link{font-size:.88rem;line-height:1.4;margin-top:1rem;text-align:center;color:var(--cream-soft)}
.rf-service-link .btn{padding-block:.4rem;min-height:44px;font-size:1rem}
.rf-stage :focus-visible,.rf-dialog :focus-visible{outline:2px solid var(--lime);outline-offset:4px}
.rf-stage ::selection,.rf-dialog ::selection,.rf-legal-section ::selection{background:var(--lime);color:var(--lime-ink)}
.rf-nojs a{text-decoration:underline;display:inline-flex;align-items:center;min-height:44px}
.rf-dialog{position:fixed;inset:0;width:95vw;height:95dvh;max-width:none;max-height:none;margin:auto;padding:0;border:1px solid var(--line-dark);border-radius:var(--radius);box-shadow:0 16px 64px rgba(0,0,0,.45);color:var(--cream);background:var(--noir);background-image:url("../img/texture-paper.webp?v=3");background-size:300px auto;overscroll-behavior:contain}
.rf-dialog:not([open]){display:none}
.rf-dialog::backdrop{background:rgba(0,0,0,.65)}
.rf-dialog-shell{height:100%;width:min(100%,60rem);margin-inline:auto;display:flex;flex-direction:column;padding:clamp(1rem,3vw,2.5rem) var(--gutter)}
.rf-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--line-dark);flex-shrink:0}
.rf-dialog-header h2{font-size:clamp(1.6rem,3vw,2.6rem);line-height:1.05;max-width:20ch}
.rf-close{display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-sm);color:var(--cream);border:1px solid var(--line-dark)}
.rf-close:hover{color:var(--lime);border-color:var(--lime)}
.rf-close svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round}
.rf-dialog-body{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--lime) var(--noir-soft);padding-block:1.25rem;min-height:0}
.rf-dialog-body::-webkit-scrollbar{width:6px}
.rf-dialog-body::-webkit-scrollbar-thumb{background:var(--lime);border-radius:3px}
.rf-detail-group+.rf-detail-group{margin-top:1.6rem;padding-top:1.3rem;border-top:1px solid var(--line-dark)}
.rf-detail-group h3{margin-bottom:.75rem;font-size:1.4rem}
.rf-detail-group p,.rf-detail-group li{font-size:1rem;line-height:1.55;color:var(--cream-soft);max-width:65ch}
.rf-detail-group p+p{margin-top:.75rem}
.rf-legal{display:flex;flex-wrap:wrap;gap:0 1rem;margin-top:1.3rem;font-size:.85rem;color:var(--cream-soft)}
.rf-legal a{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:.25em}
.rf-legal-section{scroll-margin-top:calc(var(--nav-h) + 1.5rem);border-top:1px solid var(--line);margin-top:3rem;padding-top:.5rem}
.rf-legal-section h3{margin-top:1.5rem;margin-bottom:.5rem;font-size:1.2rem}
.rf-legal-section p{overflow-wrap:anywhere}
.rf-legal-jump{margin-block:1rem 1.5rem}
.rf-legal-jump a{display:inline-flex;align-items:center;min-height:44px;color:var(--lime)}


@media(max-width:680px){.rf-stage .rf-price{gap:.5rem}.rf-actions{width:100%;gap:.2rem 1rem}.rf-meta{font-size:.88rem}.rf-stage .rf-purchase{width:100%}}
@media(max-height:740px){
 .rf-section .rf-stage h2{font-size:clamp(1.8rem,4vw,3rem)}
 .rf-stage .rf-price{margin-top:.8rem}
 .rf-stage .rf-price strong{font-size:clamp(3rem,6vw,4.5rem)}
 .rf-stage .rf-thesis{margin-top:.8rem;font-size:1.1rem}
 .rf-meta{margin-top:.45rem;font-size:.85rem}
 .rf-actions{margin-top:.8rem}
 .rf-service-link{margin-top:.65rem}
}
@media(max-height:480px){
 .rf-section .rf-stage h2{font-size:1.8rem}
 .rf-stage .rf-price{margin-top:.45rem}
 .rf-stage .rf-price strong{font-size:2.8rem}
 .rf-stage .rf-thesis{margin-top:.5rem;font-size:1rem}
 .rf-meta{margin-top:.3rem;font-size:.8rem}
 .rf-actions{margin-top:.5rem}
 .rf-service-link{margin-top:.4rem;display:flex;align-items:center;gap:.7rem}
 .rf-service-link br{display:none}
}
@media(prefers-reduced-motion:reduce){.rf-section .btn,.rf-dialog button{transition:none}}
