:root {
  color-scheme: light;
  --ink: #1e2923;
  --muted: #627068;
  --line: #dce3dc;
  --paper: #ffffff;
  --wash: #f7f8f5;
  --brand: #24634d;
  --brand-dark: #194d3b;
  --brand-pale: #e9f4ed;
  --warning: #a15c00;
  --danger: #b42318;
  --shadow: 0 1px 2px rgba(28, 52, 39, .04), 0 10px 30px rgba(28, 52, 39, .06);
  font-family: Manrope, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
body { margin: 0; background: var(--wash); color: var(--ink); min-height: 100vh; -webkit-font-smoothing: antialiased; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
a { color: var(--brand-dark); }

.shell { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.topbar { background: rgba(255,255,255,.94); border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 10; backdrop-filter: blur(12px); }
.topbar-inner { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.brand { display: flex; align-items: center; gap: 11px; font-weight: 800; font-size: 1.08rem; letter-spacing: -.025em; }
.brand-mark { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: #fff; background: #194d3b; box-shadow: 0 5px 14px rgba(25,77,59,.18); }
.product-tag { color: #475467; background: #f2f4f7; border: 1px solid #eaecf0; border-radius: 999px; padding: 5px 9px; font-size: .72rem; font-weight: 700; letter-spacing: 0; }
.marketing-nav { display: flex; align-items: center; gap: 24px; }
.marketing-nav > a:not(.btn) { color: #475467; font-size: .86rem; font-weight: 700; text-decoration: none; }
.marketing-nav > a:not(.btn):hover { color: var(--brand); }
.main { padding: 38px 0 72px; }
.hidden { display: none !important; }
html.proof-route #sellerApp, html.app-route #authView { display: none; }

.card { background: var(--paper); border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); }
.auth-card { width: min(460px, 100%); margin: 7vh auto; padding: 34px; }
.eyebrow { color: var(--brand); font-size: .72rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1 { margin-bottom: 8px; font-size: clamp(2rem, 4vw, 2.65rem); letter-spacing: -.045em; line-height: 1.08; }
h2 { margin-bottom: 7px; font-size: 1.18rem; letter-spacing: -.025em; }
h3 { margin-bottom: 4px; }
.subtle { color: var(--muted); line-height: 1.55; }
.small { font-size: .82rem; }

.field { display: grid; gap: 7px; margin-bottom: 17px; }
.field label { color: #344054; font-size: .82rem; font-weight: 700; }
.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.field-row.batch-mode { grid-template-columns: 1fr; }
.batch-toggle { display: flex; align-items: center; gap: 10px; margin: 0 0 10px; padding: 12px 13px; border: 1px solid #cbd5d1; border-radius: 10px; background: #f7faf7; font-size: .88rem; color: #244c3a; font-weight: 750; cursor: pointer; }
.batch-toggle input { width: 18px; height: 18px; accent-color: #24634d; }
.batch-hint { display: block; margin: 0 0 17px; }
#batchOrdersField textarea { min-height: 145px; font-size: .92rem; }
.optional { color: #98a2b3; font-size: .74rem; font-weight: 600; margin-left: 4px; }
.field input, .field textarea, .field select {
  width: 100%; border: 1px solid #d0d5dd; border-radius: 10px; padding: 11px 12px;
  background: #fff; color: var(--ink); outline: none; transition: border-color .15s ease, box-shadow .15s ease;
  font: inherit;
}
.field input::placeholder, .field textarea::placeholder { color: #98a2b3; }
.field textarea { resize: vertical; min-height: 88px; }
.field input:focus, .field textarea:focus, .field select:focus { border-color: #519274; box-shadow: 0 0 0 3px rgba(36,99,77,.12); }
.field-help { color: var(--muted); font-size: .74rem; line-height: 1.45; }
.file-control { border: 1px dashed #b8cfc0; border-radius: 11px; padding: 14px; background: #f7faf7; }
.file-control input { border: 0; padding: 0; background: transparent; font-size: .8rem; }
.file-control input:focus { box-shadow: none; }
.file-control input::file-selector-button { border: 1px solid #bfd4c6; border-radius: 8px; background: #fff; color: #21543f; padding: 8px 10px; margin-right: 10px; font-weight: 700; cursor: pointer; }
.file-types { display: block; margin-top: 9px; color: #667085; font-size: .72rem; }

.btn { display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 9px; padding: 10px 15px; font-weight: 750; font-size: .84rem; line-height: 1.25; text-decoration: none; transition: background .15s ease, border-color .15s ease, box-shadow .15s ease; }
.btn:hover { box-shadow: 0 3px 10px rgba(16,24,40,.09); }
.btn:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.btn-primary { background: var(--brand); color: #fff; box-shadow: 0 1px 2px rgba(36,99,77,.22); }
.btn-primary:hover { background: var(--brand-dark); }
.btn-secondary { background: var(--brand-pale); color: var(--brand-dark); }
.btn-ghost { background: #fff; color: #475467; border: 1px solid #d0d5dd; }
.btn-danger { background: #fff; color: var(--danger); border: 1px solid #fecdca; }
.btn-block { width: 100%; }
.btn-compact { padding: 8px 12px; }

.dashboard-head { display: flex; justify-content: space-between; align-items: end; gap: 18px; margin-bottom: 24px; }
.trial-notice { margin: -4px 0 20px; padding: 13px 16px; border: 1px solid #b8d5c4; border-radius: 11px; background: #e9f4ed; color: #174c39; font-size: .9rem; font-weight: 700; line-height: 1.5; }
.trial-notice.trial-ended { border-color: #fedf89; background: #fff8e9; color: #774c13; }
.upgrade-card { display:flex; justify-content:space-between; align-items:center; gap:22px; margin:-7px 0 22px; padding:20px 22px; border:1px solid #d8e5dc; border-radius:14px; background:#fff; box-shadow:0 4px 18px rgba(16,24,40,.04); }
.upgrade-card h2 { margin:5px 0 6px; font-size:1.12rem; line-height:1.35; letter-spacing:-.02em; }
.upgrade-card p { margin:0; color:#58685e; font-size:.84rem; line-height:1.55; }
.upgrade-action { flex:0 0 auto; min-width:200px; text-align:right; }
.upgrade-action .btn { width:100%; }
.upgrade-action p { margin-top:7px; }
@media(max-width:650px) { .upgrade-card { align-items:stretch; flex-direction:column; } .upgrade-action { text-align:left; } }
.dashboard-intro { margin: 0; font-size: .96rem; }
.account-chip { display: inline-flex; align-items: center; gap: 8px; min-height: 34px; padding: 7px 11px; border: 1px solid var(--line); border-radius: 999px; background: #fff; color: #475467; font-size: .77rem; font-weight: 650; box-shadow: 0 1px 2px rgba(16,24,40,.03); }
.account-dot { width: 7px; height: 7px; border-radius: 50%; background: #12b76a; box-shadow: 0 0 0 3px #ecfdf3; }
.summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin-bottom: 22px; }
.summary-card { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 76px; padding: 16px 17px; background: #fff; border: 1px solid var(--line); border-radius: 13px; box-shadow: 0 1px 2px rgba(16,24,40,.03); }
.summary-card strong { color: #101828; font-size: 1.45rem; letter-spacing: -.04em; }
.summary-label { display: inline-flex; align-items: center; gap: 7px; color: #667085; font-size: .76rem; font-weight: 700; }
.metric-dot { width: 7px; height: 7px; border-radius: 50%; flex: 0 0 auto; }
.pending-dot { background: #f79009; }
.approved-dot { background: #12b76a; }
.changes-dot { background: #f04438; }
.dashboard-grid { display: grid; grid-template-columns: 410px minmax(0,1fr); gap: 22px; align-items: start; }
.form-card { padding: 23px; position: sticky; top: 94px; }
.section-heading, .list-heading { display: flex; justify-content: space-between; gap: 14px; align-items: end; }
.step-label { display: block; margin-bottom: 5px; color: #667085; font-size: .68rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.form-intro { margin: 0 0 21px; font-size: .82rem; }
.business-details { margin: 0 0 19px; padding: 16px 15px 1px; border: 1px solid #c7d9cc; border-radius: 11px; background: #f5faf6; }
.business-details h3 { margin: 0 0 5px; color: #193d2e; font-size: .98rem; }
.business-details > p { margin: 0 0 15px; color: #58685e; font-size: .78rem; line-height: 1.5; }
.proofs-panel { min-width: 0; }
.list-heading { margin: 2px 1px 13px; }
.list-heading h2 { margin-bottom: 0; font-size: 1.28rem; }
.count-label { color: #667085; background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 5px 9px; font-size: .72rem; font-weight: 700; }
.proof-list { display: grid; gap: 11px; }
.proof-controls { display: grid; gap: 10px; margin-bottom: 15px; }
.search-label { color: #344054; font-size: .88rem; font-weight: 750; }
.proof-controls input { width: 100%; min-height: 43px; padding: 9px 12px; border: 1px solid #cbd5d1; border-radius: 9px; background: #fff; color: var(--ink); font: inherit; }
.proof-controls input:focus { outline: 3px solid rgba(36,99,77,.17); border-color: var(--brand); }
.proof-filters { display: flex; flex-wrap: wrap; gap: 7px; }
.filter-button { min-height: 37px; padding: 6px 12px; border: 1px solid #cbd5d1; border-radius: 999px; color: #475467; background: #fff; font: inherit; font-size: .85rem; font-weight: 700; cursor: pointer; }
.filter-button.active { border-color: #24634d; background: #e9f4ed; color: #174c39; }
.filter-button span { margin-left: 4px; font-weight: 800; }
.revision-context { margin-bottom: 18px; padding: 12px; border: 1px solid #b8d5c4; border-radius: 9px; background: #e9f4ed; color: #184c38; font-size: .85rem; font-weight: 700; }
#cancelRevision { margin-top: 9px; }
.revision-history { border-top: 1px solid #e4e9e2; padding-top: 12px; color: #475467; font-size: .84rem; }
.revision-history summary { width: fit-content; cursor: pointer; color: #245b48; font-weight: 750; }
.revision-history ol { margin: 12px 0 0; padding-left: 22px; display: grid; gap: 8px; line-height: 1.5; }
.status-superseded { color: #475467; background: #eaecf0; }
.proof-row { padding: 18px 19px; display: grid; gap: 13px; box-shadow: 0 1px 2px rgba(16,24,40,.03); }
.proof-row:hover { border-color: #cfd5e5; box-shadow: 0 5px 18px rgba(16,24,40,.06); }
.proof-row-overdue { border-color: #fec84b; box-shadow: 0 1px 2px rgba(16,24,40,.03), inset 3px 0 0 #f79009; }
.proof-row-overdue:hover { border-color: #fdb022; }
.proof-row-top { display: flex; justify-content: space-between; gap: 16px; }
.proof-row h3 { margin-bottom: 5px; font-size: .98rem; letter-spacing: -.015em; }
.proof-order { color: #667085; font-size: .78rem; }
.proof-meta { display: flex; flex-wrap: wrap; gap: 8px 16px; padding-top: 12px; border-top: 1px solid #f0f1f4; color: var(--muted); font-size: .74rem; }
.deadline { display: inline-flex; align-items: center; gap: 6px; font-weight: 750; }
.deadline::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.deadline-ok { color: #475467; }
.deadline-soon { color: #b54708; }
.deadline-overdue { color: #b42318; }
.proof-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.proof-actions .btn { padding: 8px 11px; font-size: .76rem; }
.btn-chase { color: #854a0e; background: #fffaeb; border: 1px solid #fedf89; }
.btn-chase:hover { background: #fef0c7; }
.status { display: inline-flex; align-items: center; min-height: 29px; padding: 4px 9px; border-radius: 999px; font-size: .875rem; font-weight: 800; white-space: nowrap; }
.status::before { content: ""; width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; background: currentColor; opacity: .72; }
.status-pending { color: #93370d; background: #fff4e5; }
.status-approved { color: #087443; background: #ecfdf3; }
.status-changes_requested { color: #b42318; background: #fef3f2; }
.feedback { border: 1px solid #dce4fb; background: #f7f9ff; padding: 11px 12px; border-radius: 9px; color: #344054; font-size: .8rem; line-height: 1.5; }
.empty { padding: 64px 24px; text-align: center; color: var(--muted); border: 1px dashed #cfd5e1; border-radius: 15px; background: rgba(255,255,255,.55); }
.empty-icon { width: 42px; height: 42px; display: grid; place-items: center; margin: 0 auto 13px; border-radius: 12px; color: #24634d; background: #e9f4ed; font-weight: 900; }
.empty h3 { color: #344054; font-size: .94rem; }
.empty p { margin-bottom: 0; font-size: .8rem; }

.toast { position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%); background: #101828; color: #fff; padding: 11px 16px; border-radius: 9px; box-shadow: 0 14px 30px rgba(16,24,40,.22); z-index: 20; max-width: calc(100% - 32px); font-size: .82rem; }
.error-box { background: #fef3f2; color: #912018; border: 1px solid #fecdca; border-radius: 9px; padding: 11px 13px; margin-bottom: 16px; font-size: .82rem; }

.marketing-page { margin-top: -38px; }
.marketing-page .eyebrow { color: #956821; font-size: .8rem; letter-spacing: .1em; }
.marketing-page h1, .marketing-page h2 { font-family: Georgia, "Times New Roman", serif; font-weight: 700; letter-spacing: -.035em; }
.hero-grid { display: grid; grid-template-columns: minmax(0,.97fr) minmax(0,1.03fr); gap: clamp(30px,5vw,70px); align-items: center; padding: 66px 0 84px; }
.hero-copy h1 { max-width: 620px; margin: 17px 0 21px; font-size: clamp(3rem,5vw,4.1rem); line-height: 1.07; letter-spacing: -.048em; text-wrap: balance; }
.hero-lede { max-width: 540px; margin-bottom: 22px; color: #44534a; font-size: 1.08rem; line-height: 1.65; }
.hero-points { display: grid; gap: 8px; margin-bottom: 24px; color: #293f33; font-size: .92rem; font-weight: 700; }
.hero-points span::before { content: "✓"; display: inline-grid; place-items: center; width: 20px; height: 20px; margin-right: 10px; border-radius: 50%; color: #225e47; background: #e2f1e6; font-size: .75rem; }
.hero-cta { min-height: 52px; padding: 13px 21px; gap: 12px; font-size: .95rem; }
.hero-note { margin: 13px 0 0; color: #627068; font-size: .88rem; }
.example-window { overflow: hidden; border: 1px solid #d7dfd6; border-radius: 16px; background: #fff; box-shadow: 0 25px 60px rgba(26,55,38,.12); }
.example-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 15px 18px; border-bottom: 1px solid #e5eae3; background: #fbfcf9; }
.toolbar-brand { color: #193d2e; font-size: .83rem; font-weight: 800; }
.toolbar-mark { display: inline-grid; place-items: center; width: 23px; height: 23px; margin-right: 5px; border-radius: 7px; color: #fff; background: #194d3b; }
.example-flag { color: #57665d; font-size: .78rem; font-weight: 750; }
.example-content { padding: 23px; }
.example-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.example-heading .step-label { color: #956821; font-size: .72rem; }
.example-heading h2 { margin: 3px 0 0; font-family: Manrope, sans-serif; letter-spacing: -.03em; font-size: 1.34rem; }
.example-count { padding: 5px 8px; border: 1px solid #e0e6df; border-radius: 99px; color: #59685f; font-size: .75rem; font-weight: 750; white-space: nowrap; }
.example-proof-list { display: grid; gap: 9px; }
.example-proof { display: flex; align-items: center; gap: 11px; min-width: 0; padding: 12px; border: 1px solid #e2e7e1; border-radius: 10px; background: #fff; }
.example-proof img, .example-proof-icon { width: 54px; height: 54px; border-radius: 7px; flex: 0 0 auto; object-fit: cover; }
.example-proof-icon { display: grid; place-items: center; background: #e8e2d5; color: #745734; font-family: Georgia,serif; font-size: 1.5rem; }
.example-proof-icon-dark { background: #e4eee6; color: #245b48; }
.example-proof-copy { display: grid; gap: 5px; min-width: 0; flex: 1 1 auto; }
.example-proof-copy strong { color: #25312a; font-size: .9rem; line-height: 1.28; }
.example-proof-copy span { color: #627068; font-size: .76rem; }
.example-proof .status { flex: 0 0 auto; }
.example-reminder { display: flex; gap: 12px; margin-top: 16px; padding: 15px; border: 1px solid #ecdac0; border-radius: 10px; background: #fcf7ee; }
.example-reminder-mark { display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; border-radius: 7px; background: #f2e2c8; color: #8d5e21; font-size: 1.1rem; }
.example-reminder > div { display: grid; gap: 4px; }
.example-reminder strong { color: #68471c; font-size: .82rem; }
.example-reminder > div > span { color: #715b3e; font-size: .78rem; line-height: 1.45; }
.marketing-section { padding: 44px 0 85px; }
.buyer-sample { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: clamp(28px,5vw,70px); align-items: center; padding: 0 0 94px; }
.buyer-sample-copy h2 { margin: 12px 0 17px; font-family: Georgia,"Times New Roman",serif; font-size: clamp(2rem,3.4vw,2.8rem); letter-spacing: -.035em; line-height: 1.15; }
.buyer-sample-copy p { color: #44534a; line-height: 1.65; font-size: 1rem; }
.buyer-sample-copy .buyer-sample-note { font-size: .85rem; color: #627068; }
.buyer-sample-card { overflow: hidden; border: 1px solid #d7dfd6; border-radius: 16px; background: #fff; box-shadow: 0 18px 50px rgba(26,55,38,.1); }
.buyer-sample-bar { display: flex; justify-content: space-between; gap: 12px; padding: 12px 18px; border-bottom: 1px solid #e5eae3; background: #fbfcf9; color: #194d3b; font-size: .83rem; }
.buyer-sample-bar span { color: #58685e; font-weight: 750; }
.buyer-sample-detail { padding: 20px 23px 12px; }
.buyer-sample-detail h3 { margin: 5px 0; font-size: 1.25rem; }
.buyer-sample-detail p { margin: 6px 0; color: #58685e; font-size: .85rem; line-height: 1.5; }
.buyer-sample-card > img { display: block; width: calc(100% - 46px); height: clamp(180px,22vw,265px); margin: 0 auto; object-fit: contain; border-radius: 8px; background: #eef1ec; }
.buyer-sample-decision { padding: 18px 23px 22px; }
.buyer-sample-decision strong { color: #25312a; font-size: 1rem; }
.buyer-sample-decision p { margin: 7px 0 13px; color: #58685e; font-size: .83rem; }
.buyer-sample-decision > div { display: flex; gap: 9px; }
.buyer-sample-decision > div span { flex: 1; padding: 9px 10px; border-radius: 8px; text-align: center; font-size: .83rem; font-weight: 750; color: #245b48; background: #e9f4ed; }
.buyer-sample-decision > div span:last-child { background: #24634d; color: #fff; }
.marketing-section, .benefits-section, .record-section, .pricing-section, .questions-section, .signup-section { scroll-margin-top: 91px; }
.section-copy { max-width: 690px; margin-bottom: 29px; }
.section-copy h2, .pricing-section h2, .record-section h2, .questions-section h2, .signup-section h2 { margin: 11px 0 16px; font-size: clamp(2rem,3.5vw,3rem); line-height: 1.13; letter-spacing: -.042em; }
.section-copy p, .pricing-section > div:first-child p, .record-copy p, .signup-section > div:first-child p { font-size: 1rem; line-height: 1.7; }
.value-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.value-card { padding: 26px; border: 1px solid #dce3db; border-radius: 13px; background: #fff; box-shadow: 0 1px 2px rgba(26,55,38,.03); }
.value-card h3 { margin: 19px 0 9px; font-size: 1.06rem; }
.value-card p { margin: 0; color: #58685e; font-size: 1rem; line-height: 1.62; }
.value-number { display: inline-grid; place-items: center; width: 39px; height: 39px; border-radius: 9px; color: #8d601f; background: #f8eedc; font-size: .82rem; font-weight: 800; }
.benefits-section { margin-bottom: 86px; padding: 43px 42px 47px; border: 1px solid #d9e4d9; border-radius: 18px; background: #edf3ec; }
.benefits-section h2 { max-width: 740px; margin: 10px 0 33px; font-size: clamp(2rem,3.3vw,2.8rem); line-height: 1.17; }
.benefits-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.benefits-grid > div { padding: 0 24px; border-left: 1px solid #cad8cc; }
.benefits-grid > div:first-child { padding-left: 0; border-left: 0; }
.benefits-grid > div:last-child { padding-right: 0; }
.benefits-grid h3 { margin: 0 0 9px; color: #243e2e; font-size: 1.02rem; line-height: 1.35; }
.benefits-grid p { margin: 0; color: #4e6254; font-size: 1rem; line-height: 1.6; }
.record-section { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: clamp(30px,7vw,95px); align-items: center; padding: 14px 0 104px; }
.record-copy { max-width: 480px; }
.record-copy p { color: #44534a; }
.record-copy .record-detail { color: #627068; font-size: .87rem; }
.record-paper { padding: 25px 30px; border: 1px solid #dce3db; border-radius: 14px; background: #fff; box-shadow: 0 16px 48px rgba(26,55,38,.08); }
.record-paper-head { display: flex; justify-content: space-between; gap: 10px; padding-bottom: 18px; border-bottom: 1px solid #e4e9e2; color: #526158; font-size: .79rem; }
.record-paper-head strong { color: #194d3b; }
.record-paper h3 { margin: 20px 0 12px; font-size: 1.15rem; }
.record-paper dl { margin: 18px 0 0; }
.record-paper dl > div { display: grid; grid-template-columns: 120px 1fr; gap: 10px; padding: 10px 0; border-bottom: 1px solid #eff1f4; font-size: .87rem; }
.record-paper dl > div:last-child { border-bottom: 0; }
.record-paper dt { color: #667085; }
.record-paper dd { margin: 0; font-weight: 700; }
.pricing-section { display: grid; grid-template-columns: minmax(0,1fr) minmax(300px,.85fr); gap: clamp(28px,5vw,65px); align-items: center; margin-bottom: 90px; padding: clamp(30px,5vw,60px); border-radius: 20px; color: #fff; background: #1d3d30; }
.pricing-section .eyebrow { color: #f0cc8b; }
.pricing-section .subtle { color: #deebe1; }
.price-card { padding: 28px; border-radius: 16px; color: #101828; background: #fff; box-shadow: 0 22px 50px rgba(0,0,0,.15); }
.price-badge { display: inline-block; padding: 6px 10px; border-radius: 999px; color: var(--brand-dark); background: var(--brand-pale); font-size: .82rem; font-weight: 800; }
.price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 7px; margin: 18px 0; }
.price strong { font-size: 3rem; letter-spacing: -.05em; }
.price span { color: #667085; font-weight: 650; font-size: .9rem; }
.price-card ul { display: grid; gap: 12px; margin: 0 0 24px; padding: 0; list-style: none; color: #344054; font-size: .94rem; }
.price-card li { display: flex; align-items: flex-start; }
.price-card li::before { content: "✓"; margin-right: 9px; color: #087443; font-weight: 900; }
.price-card > p { margin: 12px 0 0; color: #667085; font-size: .82rem; text-align: center; line-height: 1.5; }
.questions-section { padding: 0 0 85px; }
.questions-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 26px 50px; margin-top: 32px; }
.questions-grid > div { padding-top: 17px; border-top: 1px solid #dce1eb; }
.questions-grid h3 { font-size: 1.05rem; }
.questions-grid p { margin: 0; color: #58685e; font-size: 1rem; line-height: 1.65; }
.signup-section { display: grid; grid-template-columns: minmax(0,1fr) 400px; gap: clamp(26px,5vw,65px); align-items: center; padding: 47px; border: 1px solid #dedacc; border-radius: 20px; background: #f0ede4; }
.signup-section > div:first-child p { max-width: 430px; color: #44534a; }
.signup-card { padding: 26px; border-color: #dbdfd5; box-shadow: 0 15px 36px rgba(26,55,38,.07); }
.signup-card .field label { font-size: .9rem; }
.signup-card .field input { min-height: 46px; font-size: 1rem; }
.signup-card .btn { min-height: 47px; font-size: .9rem; }
.signup-foot { margin: 13px 0 0; color: #627068; font-size: .82rem; text-align: center; }
.auth-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; padding: 5px; margin-bottom: 18px; border: 1px solid #d6ddd6; border-radius: 11px; background: #f2f5f1; }
.auth-tab { min-height: 41px; border: 0; border-radius: 8px; color: #536159; background: transparent; font: inherit; font-size: .88rem; font-weight: 750; cursor: pointer; }
.auth-tab.is-active { color: #174d3a; background: #fff; box-shadow: 0 1px 4px rgba(26,55,38,.11); }
.field-hint { margin: 6px 0 0; color: #68766f; font-size: .78rem; }
.text-button { display: block; width: 100%; padding: 12px 4px 2px; border: 0; color: #245b48; background: transparent; font: inherit; font-size: .84rem; font-weight: 750; text-align: center; text-decoration: underline; cursor: pointer; }
#resetPasswordPanel h3 { margin: 8px 0; font-size: 1.45rem; }
.auth-home-link { display: inline-block; margin-top: 12px; color: #245b48; font-size: .9rem; font-weight: 750; }
html.signin-route .marketing-page { margin-top: 0; }
html.signin-route .marketing-page > :not(#signup) { display: none !important; }
html.signin-route #signup { max-width: 920px; min-height: 470px; margin: 28px auto 0; }
html.signin-route #marketingNav { display: none !important; }
.success-box { display: grid; gap: 4px; padding: 12px 14px; margin-bottom: 14px; border: 1px solid #abefc6; border-radius: 10px; color: #075b37; background: #ecfdf3; font-size: .9rem; line-height: 1.5; }
.marketing-footer { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 30px 0 0; margin-top: 55px; border-top: 1px solid #dfe3ec; }
.marketing-footer p { max-width: 550px; margin: 0; color: #627068; font-size: .82rem; line-height: 1.5; }

.customer-wrap { width: min(840px, calc(100% - 32px)); margin: 42px auto 64px; }
.customer-card { overflow: hidden; }
.customer-head { padding: 28px 30px 22px; border-bottom: 1px solid var(--line); }
.buyer-heading { margin: 8px 0 16px; font-size: clamp(1.75rem, 4vw, 2.35rem); line-height: 1.14; }
.buyer-instructions { margin: 17px 0 0; color: #344054; font-size: 1rem; line-height: 1.55; }
.buyer-no-account { display: inline-flex; margin: 18px 0 0; padding: 7px 11px; border-radius: 999px; color: #075b37; background: #ecfdf3; font-size: .85rem; font-weight: 750; }
.buyer-footer { margin: 18px 0 0; color: #667085; font-size: .8rem; line-height: 1.5; text-align: center; }
.order-line { display: flex; justify-content: space-between; gap: 14px; align-items: start; }
.preview { padding: 24px; background: #eef1f6; min-height: 380px; display: grid; place-items: center; }
.preview img { display: block; max-width: 100%; max-height: 68vh; object-fit: contain; border-radius: 7px; box-shadow: 0 8px 30px rgba(0,0,0,.12); }
.preview iframe { width: 100%; height: 68vh; min-height: 460px; border: 0; border-radius: 8px; background: white; }
.response-panel { padding: 28px 30px; }
.response-panel h2 { font-size: 1.4rem; }
.response-panel .subtle, .batch-response .subtle { line-height: 1.55; }
.buyer-approve { display: block; width: 100%; min-height: 54px; margin-top: 9px; font-weight: 800; }
.buyer-divider { display: flex; align-items: center; gap: 14px; margin: 24px 0; color: #667085; font-size: .85rem; text-transform: uppercase; letter-spacing: .1em; }
.buyer-divider::before, .buyer-divider::after { content: ""; height: 1px; background: var(--line); flex: 1; }
.buyer-change { padding: 20px; border: 1px solid #dce1eb; border-radius: 14px; background: #fafbfc; }
.buyer-change h3, .buyer-change h4, .batch-response h4 { margin: 0 0 5px; font-size: 1.1rem; }
.buyer-change .field { margin-top: 14px; }
.buyer-request { display: inline-flex; justify-content: center; align-items: center; min-height: 45px; padding: 10px 18px; color: #173d31; background: white; border: 1.5px solid #187a5b; border-radius: 9px; font-weight: 800; }
.buyer-request:hover { background: #eaf7f0; }
.decision-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 18px; }
.approved-banner { padding: 18px; background: #ecfdf3; color: #087443; border: 1px solid #abefc6; border-radius: 11px; font-weight: 700; }
.revision-banner { padding: 18px; background: #fff4e5; color: #93370d; border: 1px solid #fedf89; border-radius: 11px; font-weight: 700; }
.approved-banner h2, .revision-banner h2, .approved-banner h3, .revision-banner h3 { margin: 0 0 8px; font-size: 1.25rem; }
.approved-banner p, .revision-banner p { margin: 0; line-height: 1.55; font-weight: 500; }
.approved-banner .buyer-saved-note, .revision-banner .buyer-saved-note { margin-top: 10px; font-size: .88rem; }
.batch-orders { display: grid; gap: 14px; padding: 26px; }
.batch-orders > h2 { margin-bottom: 0; }
.batch-orders > p { margin: -6px 0 5px; }
.batch-order { padding: 20px; display: grid; gap: 16px; box-shadow: none; }
.batch-order h3 { margin: 2px 0 0; font-size: 1.12rem; }
.batch-order .status { align-self: start; }
.batch-response .field { margin-bottom: 13px; }
.batch-response .buyer-change .field { margin-bottom: 12px; }
.batch-order .approved-banner p, .batch-order .revision-banner p { margin: 8px 0 0; font-weight: 500; }

@media (max-width: 900px) {
  .buyer-sample { grid-template-columns: 1fr; }
  .buyer-sample-copy { max-width: 680px; }
  .buyer-sample-card { width: min(640px,100%); }
  .hero-grid { grid-template-columns: 1fr; gap: 34px; padding-top: 50px; }
  .hero-copy { max-width: 700px; }
  .example-window { width: min(640px,100%); }
  .value-grid { grid-template-columns: 1fr; }
  .benefits-grid { grid-template-columns: 1fr; }
  .benefits-grid > div, .benefits-grid > div:first-child, .benefits-grid > div:last-child { padding: 18px 0; border-left: 0; border-top: 1px solid #cad8cc; }
  .benefits-grid > div:first-child { padding-top: 0; border-top: 0; }
  .benefits-grid > div:last-child { padding-bottom: 0; }
  .record-section, .pricing-section, .signup-section { grid-template-columns: 1fr; gap: 28px; }
  .price-card, .signup-card { width: min(480px,100%); }
  .record-paper { max-width: 540px; }
  .summary-grid { grid-template-columns: repeat(2, 1fr); }
  .main { padding-top: 26px; }
  .dashboard-head { align-items: start; flex-direction: column; }
  .dashboard-grid { grid-template-columns: 1fr; }
  .form-card { position: static; }
}

@media (max-width: 620px) {
  .buyer-sample { padding-bottom: 68px; }
  .buyer-sample-detail { padding: 17px 16px 10px; }
  .buyer-sample-card > img { width: calc(100% - 32px); height: 200px; }
  .buyer-sample-decision { padding: 15px 16px 18px; }
  .shell { width: min(100% - 28px, 1180px); }
  .marketing-nav > a:not(.btn) { display: none; }
  .marketing-nav { gap: 8px; }
  .marketing-page { margin-top: -26px; }
  .marketing-page .eyebrow { font-size: .75rem; }
  .hero-grid { padding: 40px 0 58px; }
  .hero-copy h1 { font-size: clamp(2.5rem,10vw,3.25rem); line-height: 1.09; }
  .hero-lede { font-size: 1rem; }
  .hero-cta { width: 100%; text-align: center; }
  .example-content { padding: 12px; }
  .example-heading { align-items: flex-start; }
  .example-proof { flex-wrap: wrap; }
  .example-proof-copy { flex-basis: calc(100% - 65px); }
  .example-proof .status { margin-left: 65px; }
  .marketing-section { padding: 0 0 65px; }
  .benefits-section { margin-bottom: 64px; padding: 29px 22px; }
  .benefits-section h2 { margin-bottom: 25px; }
  .record-section { padding: 0 0 70px; }
  .record-paper { padding: 22px; }
  .record-paper dl > div { grid-template-columns: 96px 1fr; }
  .pricing-section { margin-bottom: 70px; padding: 28px 22px; }
  .questions-section { padding-bottom: 66px; }
  .questions-grid { grid-template-columns: 1fr; gap: 20px; }
  .signup-section { padding: 24px 18px; }
  .signup-card { padding: 20px; }
  .marketing-footer { align-items: flex-start; flex-direction: column; }
  .product-tag { display: none; }
  .summary-grid { gap: 8px; }
  .summary-card { min-height: 70px; padding: 13px; align-items: flex-start; flex-direction: column-reverse; }
  .summary-label { font-size: .69rem; }
  .field-row { grid-template-columns: 1fr; gap: 0; }
  .form-card { padding: 19px; }
  .proof-row-top { align-items: flex-start; }
  .decision-grid { grid-template-columns: 1fr; }
  .customer-head, .response-panel { padding: 23px 20px; }
  .batch-orders { padding: 19px 15px; }
  .batch-order { padding: 16px; }
  .preview { padding: 12px; min-height: 280px; }
  .preview iframe { min-height: 400px; }
}

/* Secure proof-file and legal-page presentation. */
.pdf-preview { display:grid; place-items:center; min-height:240px; padding:36px; text-align:center; background:#f6f8f7; color:#35453e; }
.pdf-preview strong { font-size:1.2rem; color:#173f32; }
.pdf-preview p { margin:8px 0 0; }
.customer-loading-copy, .customer-order { margin:0; }
.customer-title { font-size:1.7rem; margin-top:6px; }
.customer-seller-note { margin:16px 0 0; }
.footer-links { display:flex; align-items:center; justify-content:flex-end; gap:18px; flex-wrap:wrap; }
.footer-links > a:not(.btn), .legal-footer a, .legal-consent a { color:#245b48; font-weight:700; }
.legal-consent { margin:12px 0 0; font-size:.78rem; line-height:1.5; color:#68766f; }
.legal-brand { color:inherit; text-decoration:none; }
.legal-page { max-width:880px; padding-top:72px; padding-bottom:72px; }
.legal-page h1 { max-width:760px; margin:8px 0 10px; }
.legal-page h2 { margin:38px 0 10px; font-size:1.35rem; }
.legal-page p, .legal-page li { font-size:1rem; line-height:1.75; color:#45534d; }
.legal-page li + li { margin-top:8px; }
.legal-page a { color:#245b48; font-weight:700; }
.legal-updated { margin-top:0; color:#68766f !important; }
.legal-footer { display:flex; justify-content:space-between; gap:24px; padding-top:26px; padding-bottom:38px; border-top:1px solid #dfe6e2; color:#68766f; }
.legal-footer div { display:flex; gap:18px; flex-wrap:wrap; }

/* Customer readiness: support, accessible focus and narrow-screen resilience. */
:focus-visible { outline: 3px solid #bb771c; outline-offset: 4px; }
.skip-link { position: fixed; left: 12px; top: -100px; z-index: 100; padding: 12px; background: white; }
.skip-link:focus { top: 10px; }
#signup, #how-it-works, #pricing, #proofForm { scroll-margin-top: 100px; }
.btn, .filter-button { min-height: 44px; font-size: .875rem; }
.header-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.marketing-footer { flex-wrap: wrap; }
.marketing-footer .btn { flex-shrink: 0; }
.founder-note { display: grid; grid-template-columns: 1fr 1.2fr; gap: 40px; padding: 38px; margin: 0 0 80px; background: #f0ede4; border: 1px solid #dedacc; border-radius: 18px; }
.founder-note h2 { font: 2rem Georgia, serif; margin-top: 12px; }
.founder-note blockquote { margin: 0 0 20px; font: 1.7rem/1.4 Georgia, serif; }
.founder-name { font-weight: 800; }
.founder-name span { font-weight: 500; color: var(--muted); }
.founder-note p:last-child { margin-bottom: 0; line-height: 1.65; }
.design-link, .buyer-support { padding: 16px; text-align: center; }
.buyer-support p { margin: 12px 0 0; }
.proof-row-top > div, .order-line > div { min-width: 0; }
.proof-row h3, .proof-order, .customer-head, .feedback, .account-chip, .revision-history { overflow-wrap: anywhere; }
.account-chip { max-width: 100%; }
.account-dot { flex-shrink: 0; }
.upgrade-action { max-width: 340px; }
.upgrade-action .btn + .btn { margin-top: 8px; }
.field-help, .file-types, .summary-label, .form-intro { font-size: .875rem; }
.recovery-card { padding: 32px; margin: 40px auto; }
#copyDialog { width: min(540px, calc(100% - 28px)); padding: 24px; border: 1px solid var(--line); border-radius: 16px; }
#copyDialog::backdrop { background: #12261bb3; }
#copyText { width: 100%; margin: 10px 0 18px; padding: 12px; }
.support-page { max-width: 840px; }
.support-card { padding: clamp(24px, 4vw, 40px); margin: 32px 0; }
.support-card h2 { margin-top: 0; }
.support-fields { display: grid; gap: 16px; margin: 24px 0; }
.support-card input, .support-card select, .support-card textarea { width: 100%; }
.support-card textarea { resize: vertical; min-height: 150px; }
.support-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.support-status { margin: 16px 0 0; }
.support-status:empty { display: none; }
@media (max-width: 620px) {
 .founder-note { grid-template-columns: 1fr; gap: 20px; padding: 24px; margin-bottom: 64px; }
 .proof-row-top, .order-line { flex-direction: column; }
 .upgrade-action { min-width: 0; max-width: none; }
 .topbar-inner { flex-wrap: wrap; padding: 12px 0; }
 .header-actions { margin-left: auto; }
 .status { white-space: normal; }
 .price-card { padding: 20px; }
 .legal-page { padding-top: 44px; padding-bottom: 48px; }
 .legal-page h2 { margin-top: 30px; }
 .legal-footer { flex-direction: column; }
 .footer-links { justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }
