/* Embedded product previews, scoped to the four public feature pages. */
.pv-preview { min-width:0; margin:0; }
.pv-caption { margin:14px 0 0; color:var(--text-muted); font-size:13px; line-height:1.5; }
.pv-controls { display:flex; gap:6px; border-bottom:1px solid var(--border-color); margin-bottom:20px; }
.pv-control { flex:1; min-width:0; min-height:46px; border:0; border-bottom:3px solid transparent; background:transparent; padding:10px 6px; color:var(--text-main); font:inherit; font-size:14px; font-weight:700; line-height:1.4; cursor:pointer; }
.pv-control[aria-pressed="true"] { color:var(--brand-deep-purple); border-bottom-color:var(--brand-deep-purple); }
.pv-control:disabled { cursor:default; }
.pv-control:focus-visible { outline:3px solid var(--brand-deep-blue); outline-offset:3px; }
.pv-panels { display:grid; }
.pv-panel { grid-area:1/1; min-width:0; }
.pv-preview .pv-panel[hidden] { display:block !important; visibility:hidden; }
.pv-panel:not([hidden]) { animation:pv-reveal .28s ease both; }
@keyframes pv-reveal { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:translateY(0); } }

/* A quiet dimensional frame; the screen itself stays flat and legible. */
.pv-phone-preview { width:100%; max-width:360px; margin-inline:auto; }
.pv-phone { position:relative; width:min(100% - 20px,270px); margin:0 auto; border:7px solid var(--ink); border-radius:31px; background:var(--ink); box-shadow:7px 5px 0 color-mix(in srgb,var(--ink) 55%,var(--border-color)),20px 24px 35px -18px color-mix(in srgb,var(--ink) 30%,transparent); }
.pv-phone::before { content:''; position:absolute; width:3px; height:40px; right:-11px; top:85px; background:var(--ink); border-radius:0 3px 3px 0; }
.pv-phone .pv-panels { overflow:hidden; border-radius:23px; aspect-ratio:414/896; background:var(--card-bg); }
.pv-phone img { display:block; width:100%; height:100%; object-fit:contain; }
.pv-phone-preview .pv-caption { text-align:center; }
.pub-guide .app-download-grid { grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:44px; }
.pv-phone-preview .pv-controls { margin:20px 0 0; }
.pv-phone-notes { margin-top:14px; text-align:center; }
.pub-guide .pv-phone-notes p { margin:0; font-size:14px; line-height:1.5; }

/* Lease details rendered as text so they remain readable at phone widths. */
.pv-lease .ps-heading { margin-bottom:18px; }
.pv-paper { position:relative; padding:26px; border:1px solid var(--border-color); border-radius:14px; background:var(--card-bg); box-shadow:5px 6px 0 color-mix(in srgb,var(--brand-deep-purple) 8%,var(--card-bg)),9px 11px 0 color-mix(in srgb,var(--brand-deep-purple) 4%,var(--card-bg)),0 22px 32px -25px color-mix(in srgb,var(--ink) 28%,transparent); }
.pv-paper-top { display:flex; align-items:center; gap:10px; padding-bottom:18px; margin-bottom:18px; border-bottom:1px solid var(--border-color); color:var(--brand-deep-purple); font-size:12px; font-weight:750; letter-spacing:.04em; }
.pv-paper-top i { font-size:21px; }
.pv-paper-top span:last-child { margin-left:auto; color:var(--text-muted); }
.pv-lease h2 { color:var(--ink); font-size:23px; font-weight:800; line-height:1.25; margin:0 0 10px; }
.pub-guide .pv-lease .pv-address { font-size:14px; margin:0 0 14px; }
.pv-values { margin:0; }
.pv-values > div { display:flex; justify-content:space-between; align-items:baseline; gap:20px; padding:12px 0; border-bottom:1px solid var(--border-color); font-size:14px; line-height:1.4; }
.pv-values > div:last-child { border-bottom:0; }
.pv-values dt { color:var(--text-main); }
.pv-values dd { margin:0; text-align:right; font-weight:750; color:var(--ink); }
.pv-checklist { list-style:none; padding:0; margin:14px 0; }
.pv-checklist li { display:flex; align-items:center; gap:10px; padding:12px 0; border-bottom:1px solid var(--border-color); font-size:14px; }
.pv-checklist i { color:var(--brand-deep-purple); }
.pv-review-focus { outline:2px solid var(--brand-deep-purple); outline-offset:4px; border-radius:3px; background:var(--surface-aurora); }
.pv-signature { display:flex; align-items:center; gap:12px; padding:17px 0; border-bottom:1px solid var(--border-color); font-size:14px; }
.pv-signature i { font-size:22px; color:var(--brand-deep-purple); }
.pv-signature span:last-child { margin-left:auto; font-weight:700; text-align:right; }
.pv-sign-progress { height:5px; margin:22px 0 12px; background:var(--border-color); border-radius:8px; overflow:hidden; }
.pv-sign-progress::before { content:''; display:block; width:50%; height:100%; background:var(--brand-deep-purple); }
.pub-guide .pv-lease .ps-panel p { font-size:14px; margin:12px 0 0; }
.pv-lease .ps-controls { margin-top:24px; }
.pv-lease .ps-step { min-height:52px; font-size:14px; }

/* A readable excerpt from the same data used by the full sample report. */
.pub-guide .pv-screening-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); align-items:center; gap:48px; }
.pv-report { padding:24px; border:1px solid var(--border-color); border-radius:16px; background:var(--card-bg); box-shadow:0 20px 35px -26px color-mix(in srgb,var(--ink) 28%,transparent); }
.pv-report-header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; color:var(--text-muted); font-size:12px; }
.pv-report-header span { padding:5px 9px; border:1px solid var(--border-color); border-radius:7px; color:var(--ink); font-weight:750; }
.pv-report h2 { margin:0 0 8px; font-size:24px; font-weight:800; line-height:1.25; }
.pv-report h3 { color:var(--ink); font-size:16px; font-weight:750; margin:0 0 10px; }
.pv-report .pv-values { border-left:3px solid var(--brand-deep-purple); padding-left:14px; background:var(--surface-aurora); }
.pv-report .pv-values > div { margin-right:12px; gap:14px; }
.pv-report .pv-values dd { max-width:58%; }
.pv-report .pv-controls { margin-top:20px; }
.pv-report .pv-panel > p { font-size:13px; margin:16px 0 0; color:var(--text-main); line-height:1.5; }
.pv-report .pv-caption { padding-top:16px; border-top:1px solid var(--border-color); }

/* Real watermarked first pages, loaded only as their cards approach view. */
.pv-form-preview { display:flex; align-items:center; justify-content:center; gap:24px; margin:0 0 20px; padding:16px; background:var(--surface-aurora); border-radius:12px; color:var(--text-muted); text-decoration:none; }
.pv-form-preview img { display:block; width:108px; height:140px; object-fit:contain; background:var(--card-bg); border:1px solid var(--border-color); box-shadow:5px 6px 0 color-mix(in srgb,var(--brand-deep-purple) 8%,var(--card-bg)); }
.pv-form-preview span { font-size:12px; line-height:1.5; max-width:90px; }
.pv-form-preview span b { display:block; color:var(--brand-deep-purple); font-size:13px; margin-bottom:5px; }
.pv-form-preview:hover img { border-color:var(--brand-deep-purple); }
.pv-form-preview[hidden] { display:none; }
.pv-form-external { width:108px; height:140px; display:grid; place-items:center; border:1px solid var(--border-color); border-radius:4px; background:var(--card-bg); color:var(--brand-deep-purple); font-size:32px; }
@media(max-width:900px) { .pub-guide .pv-screening-grid { grid-template-columns:1fr; gap:28px; } .pv-report { width:100%; max-width:580px; } }
@media(max-width:700px) { .pub-guide .app-download-grid { grid-template-columns:1fr; gap:28px; } .pv-paper { padding:20px; } .pv-report { padding:20px; } .pv-form-preview { gap:20px; } }
@media(prefers-reduced-motion:reduce) { .pv-panel:not([hidden]) { animation:none; } }
