:root { color-scheme: light; font-family: Inter, system-ui, sans-serif; color: #17212b; background: #fff; }
* { box-sizing: border-box; }
body { margin: 0; letter-spacing: 0; }
a { color: #135f63; text-underline-offset: 4px; }
a:focus-visible, summary:focus-visible { outline: 3px solid #247b7b; outline-offset: 4px; }
.skip-link { position: absolute; left: 12px; top: -60px; background: white; padding: 12px; z-index: 10; }
.skip-link:focus { top: 12px; }
.public-header { display: flex; align-items: center; gap: 24px; max-width: 1180px; margin: auto; padding: 16px 24px; }
.public-brand { font-size: 23px; font-weight: 800; text-decoration: none; margin-right: auto; }
.public-header nav, .public-related nav { display: flex; flex-wrap: wrap; gap: 20px; }
.public-header nav { font-size: 14px; }
.public-button { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; border-radius: 6px; padding: 10px 18px; background: #135f63; color: white; font-size: 14px; font-weight: 700; text-decoration: none; }
.public-hero { position: relative; padding: 50px 24px; background: url('/static/assets/legismant-industrial-hero.webp') center / cover; color: white; }
.public-hero::before { content: ''; position: absolute; inset: 0; background: rgba(7, 25, 31, .76); }
.public-hero > div { position: relative; max-width: 1132px; margin: auto; }
.public-hero h1 { max-width: 880px; font-size: 42px; line-height: 1.15; margin: 18px 0; overflow-wrap: anywhere; }
.public-hero p { max-width: 760px; font-size: 17px; line-height: 1.65; }
.public-hero .public-button { background: #28a89d; color: #071c22; }
.public-layout { max-width: 1000px; padding: 26px 24px 50px; margin: auto; }
.public-breadcrumb { display: flex; flex-wrap: wrap; gap: 12px; font-size: 13px; margin-bottom: 26px; color: #52616b; }
.public-article { max-width: 800px; }
.public-article section { margin: 0 0 32px; }
h2 { font-size: 23px; line-height: 1.3; }
.public-article p { font-size: 16px; line-height: 1.75; color: #41515d; }
details { border-top: 1px solid #dce3ea; padding: 17px 0; }
summary { cursor: pointer; font-weight: 650; line-height: 1.5; }
.public-related { padding-top: 22px; border-top: 1px solid #dce3ea; }
.public-related nav a[aria-current] { color: #17212b; font-weight: 750; }
.public-pricing { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; margin: 28px 0 40px; padding: 22px 0; border-block: 1px solid #dce3ea; }
.public-pricing strong { font-size: 34px; }
.public-pricing p { color: #41515d; line-height: 1.5; }
.public-plan-limits { grid-column: 1 / -1; margin-bottom: 0; }
footer { display: flex; flex-wrap: wrap; gap: 20px; padding: 26px max(24px, calc((100% - 1132px) / 2)); background: #eef3f4; font-size: 14px; }
@media (max-width: 650px) {
  .public-header { flex-wrap: wrap; gap: 14px; padding: 14px 20px; }
  .public-header nav { order: 3; width: 100%; gap: 12px 18px; }
  .public-hero { padding: 28px 20px; }
  .public-hero h1 { font-size: 30px; }
  .public-hero p { font-size: 16px; }
  .public-layout { padding-inline: 20px; }
  .public-pricing { grid-template-columns: 1fr; gap: 12px; }
  .public-pricing > div + div { border-top: 1px solid #dce3ea; padding-top: 12px; }
}
