/* Public presentation only: working surfaces and authentication keep their own sizing. */
body.public-polish { --radius: 1rem; --ux-radius: .85rem; --polish-text: .94rem; }
.footer-support { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1.5rem; padding-block: 1.25rem; margin-bottom: 1.5rem; border-bottom: 1px solid var(--line-dark); color: var(--ink-inverse); font-size: .85rem; }
.footer-support a { color: inherit; text-underline-offset: .25rem; }
.footer-support strong { margin-right: auto; }
.support-email { display: block; color: var(--teal-dark); font-weight: 750; overflow-wrap: anywhere; margin-block: .75rem; }
.contact-card [data-copy-support-status] { font-size: .8rem; margin-bottom: 0; }
.download-requirements { margin-bottom: 1.5rem; border: 1px solid var(--line); border-radius: var(--radius); padding: 1.1rem 1.3rem; background: var(--surface-strong); }
.download-requirements h2 { margin: 0 0 .5rem; font-size: 1.1rem; }
.download-requirements p { margin: 0; color: var(--ink-soft); font-size: .9rem; line-height: 1.65; }
.public-polish :is(.section-heading h2, .content-heading h2, .stock-heading h2, .sgq-section-heading h2) { font-size: clamp(1.65rem, 2.6vw, 2.5rem); line-height: 1.18; letter-spacing: -.035em; text-wrap: balance; }
.public-polish :is(.section-heading, .content-heading, .stock-heading, .sgq-section-heading) > p { line-height: 1.65; }
.public-polish :is(.capability-card, .journey-grid > article, .feature-list > article, .stock-benefit-grid > article, .sgq-core-grid > article, .sgq-module-grid > article) { padding: clamp(1.25rem, 2.1vw, 1.65rem); }
.public-polish :is(.capability-card, .journey-grid, .feature-list, .stock-benefit-grid, .stock-flow-grid, .sgq-core-grid, .sgq-module-grid) h3 { font-size: 1.08rem; line-height: 1.35; letter-spacing: -.015em; }
.public-polish :is(.capability-card, .journey-grid, .feature-list, .stock-benefit-grid, .stock-flow-grid, .sgq-core-grid, .sgq-module-grid) p { font-size: var(--polish-text); line-height: 1.65; }
.public-polish :is(.journey-grid > article, .feature-list > article) { display: flex; flex-direction: column; align-items: flex-start; }
.public-polish :is(.journey-grid > article, .feature-list > article) > a:last-child { margin-top: auto; }
.public-polish :is(.section-actions, .stock-actions, .sgq-hero-actions) { gap: .75rem; }
.public-polish .button { line-height: 1.35; text-align: center; }
.public-polish :is(.home-free-summary, .opening-details) p { color: var(--ink-soft); }
.public-polish :is(.home-free-summary, .opening-details) a,
.public-polish :is(.home-free-summary-inner, .opening-details-inner) > div > span { color: var(--teal-dark); }
.public-polish :is(.step-number, .flow-icon) { width: 2.65rem; height: 2.65rem; flex-shrink: 0; display: grid; place-items: center; border-radius: .75rem; font-variant-numeric: tabular-nums; }
.public-polish :is(.faq-list, .stock-faq, .sgq-faq) summary { line-height: 1.5; }
.public-polish .desktop-preview > p { font-size: .75rem; line-height: 1.6; }
.public-polish .interest-card .interest-symbol { display: grid; place-items: center; width: 2rem; height: 2rem; border: 1px solid #5bd4ce40; border-radius: .55rem; color: var(--teal); background: #5bd4ce0a; }
.public-polish .interest-symbol svg { width: 1.25rem; height: 1.25rem; }
.public-polish .interest-card { grid-template-rows: auto auto 1fr auto; }
@media (max-width: 580px) {
  .public-polish { --polish-text: .9rem; }
  .public-polish .interest-card { grid-template-columns: 2rem minmax(0,1fr); grid-template-rows: auto auto auto; column-gap: .75rem; }
  .public-polish .interest-card .interest-symbol { grid-column: 1; grid-row: 1 / 3; }
  .public-polish .interest-card > :is(strong, span:not(.interest-symbol)) { grid-column: 2; }
}
