/* Shared presentation for two products; behavior remains in the existing scripts. */
.signup-trap{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;pointer-events:none!important;white-space:nowrap!important}
html { scroll-padding-top:24px; }
body { background:var(--paper); color:var(--ink); }
:focus-visible { outline:3px solid #985718; outline-offset:4px; }
.site-header { height:auto; min-height:92px; border-bottom:0; background:var(--paper); }
.header-inner { min-height:92px; height:auto; gap:24px; }
.brand { font-size:21px; gap:10px; }
.brand-mark { width:30px; height:30px; border-radius:9px; }
.brand-mark .icon { width:22px; height:22px; }
.site-nav { gap:26px; font-size:15px; }
.site-nav .login-link { margin-left:0; }
.site-nav>a:not(.button) { color:var(--ink); min-height:44px; display:inline-flex; align-items:center; }
.site-nav .button { min-height:44px; font-size:15px; }
.button { font-size:16px; }
.button-secondary { border-color:#acbdb3; }
.nav-toggle { min-width:44px; min-height:44px; border:1px solid var(--line); border-radius:8px; }
.breadcrumbs { padding-top:16px; font-size:14px; }
.breadcrumbs a { min-height:44px; display:inline-flex; align-items:center; }
.breadcrumbs li { min-height:44px; }
.site-footer { background:var(--paper); padding-top:26px; margin-top:24px; }
.footer-top { align-items:center; padding-bottom:24px; }
.footer-top .brand { font-size:19px; }
.footer-top nav { gap:16px 24px; font-size:15px; }
.footer-top nav a,.relay-footer-links a { min-height:44px; display:inline-flex; align-items:center; }
.footer-bottom { font-size:13px; line-height:1.6; }
.site-footer .relay-footer-links { flex-wrap:wrap; gap:10px 24px; }
.page-heading h1 { font-size:clamp(33px,4vw,48px); line-height:1.14; }
.page-heading .lead { font-size:18px; line-height:1.65; }
.guide-toc { background:var(--sky); border-color:var(--line); }
.guide-toc a { font-size:16px; min-height:44px; display:inline-flex; align-items:center; }
.review-shell { overflow-wrap:anywhere; }
.review-shell .form-result:empty { display:none; }
.review-auth { max-width:590px; padding-top:24px; padding-bottom:40px; }
.review-auth .auth-card { width:100%; max-width:none; padding:32px; box-shadow:none; }
.review-auth h1 { font-size:clamp(1.8rem,4vw,2.3rem); letter-spacing:-.03em; line-height:1.16; margin:0 0 14px; }
.review-auth .auth-switch { margin-top:20px; }
.review-auth .field { margin:18px 0; }
.review-auth .field input { min-height:48px; }
.review-auth .button-full { min-height:48px; }
.review-auth .account-note { font-size:16px; line-height:1.65; }
.review-auth a { text-decoration:underline; text-underline-offset:3px; }
.review-auth details>summary { min-height:44px; padding-block:8px; cursor:pointer; }
.review-reset-actions { display:flex; flex-wrap:wrap; gap:10px 18px; margin-top:10px; }
.review-reset-actions a { min-height:44px; display:inline-flex; align-items:center; }
.review-recovery-note { margin:18px 0; padding:16px; border-radius:12px; background:var(--sky); }
.review-help-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; padding-bottom:32px; }
.review-help-grid .card { min-width:0; box-shadow:none; padding:28px; }
.review-help-grid h2 { font-size:27px; margin:18px 0 12px; }
.review-help-grid p { font-size:17px; }
.review-help-icon { display:inline-flex; align-items:center; justify-content:center; width:52px; height:52px; border-radius:12px; background:var(--sky); color:#1945b0; }
.review-help-icon.is-relay { background:var(--sage); color:#285341; }
.review-help-icon .icon { width:28px; height:28px; }
.review-support-contact { margin-bottom:24px; padding:24px 28px; background:var(--sage); border:1px solid var(--line); border-radius:16px; }
.review-support-contact p { margin-bottom:12px; }
.page-terms .prose { font-size:17px; max-width:940px; line-height:1.75; }
.page-terms .prose h2 { font-size:29px; margin-top:36px; }
.page-terms .prose h3 { font-size:22px; margin-top:24px; }
.page-terms .site-footer,.page-login .site-footer,.page-register .site-footer,.page-forgot-password .site-footer,.page-reset-password .site-footer { margin-top:0; }
@media(max-width:1100px) {
 .container { width:calc(100% - 48px); }
 .site-nav { gap:18px; }
}
@media(max-width:900px) {
 .header-inner { min-height:80px; }
 .site-header { min-height:80px; }
 .site-nav { background:var(--surface); border:1px solid var(--line); border-radius:12px; left:24px; right:24px; top:72px; padding:14px; box-shadow:0 12px 30px #18352a15; }
 .site-nav>a:not(.button) { min-height:48px; }
}
@media(max-width:600px) {
 .container { width:calc(100% - 36px); }
 .brand { font-size:19px; gap:7px; }
 .brand-mark { width:28px; height:28px; }
 .header-inner { min-height:76px; }
 .site-header { min-height:76px; }
 .site-nav { left:18px; right:18px; top:68px; }
 .review-auth { padding-top:16px; padding-bottom:28px; }
 .review-auth .auth-card { padding:24px 20px; }
 .review-auth .auth-card h1 { font-size:28px; }
 .review-auth .checkbox-row { align-items:flex-start; }
 .review-help-grid { grid-template-columns:1fr; gap:18px; }
 .review-help-grid .card { padding:24px; }
 .review-support-contact { padding:22px; }
 .footer-top { align-items:flex-start; gap:22px; }
 .footer-top nav { justify-content:flex-start; }
 .footer-bottom { gap:8px; }
 .page-heading { padding-top:26px; padding-bottom:24px; }
}
@media(max-width:359px) {
 .container { width:calc(100% - 32px); }
 .brand { font-size:17px; }
 .brand-mark { width:26px; height:26px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
