/* Public website only. Not loaded by product-help or draft-review layouts. */
.public-site {
  --public-ink: #172626;
  --public-muted: #425455;
  --public-line: #cbd4d1;
  color: var(--public-ink);
}
.public-site *, .public-site *::before, .public-site *::after { box-sizing: border-box; }
.public-site :where(main, section, article, aside, nav, div, figure, li) { min-inline-size: 0; }
.public-site :where(h1, h2, h3, h4, p, li, a, button, summary, address) {
  overflow-wrap: anywhere;
}
.public-site :where(h1, h2, h3) { hyphens: auto; text-wrap: pretty; }
.public-site :where(p, li) { line-height: 1.65; }
.public-site h1 { line-height: 1.06; letter-spacing: -.035em; }
.public-site h2 { line-height: 1.16; letter-spacing: -.025em; }
.public-site h3 { line-height: 1.25; }
.public-site :where(a, button, summary):focus-visible {
  outline: 3px solid #096763;
  outline-offset: 5px;
}
.public-site :where(.kitrivo-hero, .relaunch-closing):not(.relaunch-closing-light) :where(a, button):focus-visible {
  outline-color: #ffd585;
}
.public-site :where([id], main) { scroll-margin-top: 108px; }
.public-site .section { padding-block: clamp(3rem, 6vw, 5.5rem); }
.public-site .editorial-hero-copy { min-width: 0; max-width: 100%; }
.public-site .editorial-hero-copy :where(h1, p) { max-width: 100%; }
.public-site .editorial-hero-copy h1 { font-size: clamp(2.5rem, 4.4vw, 4.65rem); overflow-wrap: anywhere; hyphens: auto; }
.public-site .editorial-hero-copy p { color: var(--public-muted); }
.public-site .hero-claim { font-size: clamp(1.5rem, 2vw, 2rem); line-height: 1.3; }
.public-site .hero-lead { font-size: clamp(1.075rem, 1.4vw, 1.2rem); line-height: 1.65; }
.public-site .button-row { gap: .8rem; flex-wrap: wrap; }
.public-site .button { min-height: 48px; white-space: normal; line-height: 1.4; text-align: center; }
.public-site .text-link { white-space: normal; }
.public-site .release-status { font-weight: 700; line-height: 1.55; margin-block: 1.25rem; }
.public-site .kitrivo-hero .release-status { color: #ffd585; }
.public-site .kitrivo-hero .hero-claim { color: #fffdf8; }
.public-site .primary-download { margin-block: 1.5rem; }
.public-site .store-badges { gap: 1.5rem; flex-wrap: wrap; padding: .75rem; margin-inline: -.75rem; }
.public-site .store-badge { flex: 0 0 auto; }
.public-site .store-badge img { height: 48px; width: auto; max-width: 100%; object-fit: contain; }
.public-site .store-badge-text { max-width: 100%; min-height: 48px; white-space: normal; }
.public-site .store-trademark { color: inherit; opacity: .85; line-height: 1.5; }
.public-site .download-help-links { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; margin-block: 1.25rem; }
.public-site .download-help-links a,
.public-site .kitrivio-service-card .text-link,
.public-site .kitrivio-service-backlinks a,
.public-site .news-card-content .text-link,
.public-site .news-rss-link,
.public-site .back-link,
.public-site .legal-toc a,
.public-site .legal-contact-card a,
.public-site .legal-sources a,
.public-site .footer-email {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
}
.public-site .kitrivio-service-card { display: flex; flex-direction: column; }
.public-site .kitrivio-service-card .text-link { margin-block-start: auto; align-self: flex-start; }
.public-site .kitrivio-service-card p { margin-block-end: 1.5rem; }
.public-site .kitrivio-support-topic h3 { font-size: 1.25rem; }
.public-site .support-report-card small { display: block; margin-block-start: 1rem; }
.public-site .support-hub-hero { padding-block: 3rem 2rem; }
.public-site .support-hub-hero h1 { font-size: clamp(2.25rem, 4vw, 3.5rem); }
.public-site .support-hub-hero + .section { padding-block-start: 2rem; }
.public-site .support-hub-card { padding: clamp(1.25rem, 3vw, 2rem); }
.public-site .support-hub-card > .button { margin-block: .75rem 1.25rem; }
.public-site .workflow-list p { color: var(--public-muted); font-size: 1rem; }
.public-site .faq-list summary { min-height: 48px; padding-block: 1rem; }
.public-site .contact-project-section .button { margin-block-start: 1.25rem; }
.public-site .news-card-v2 { min-width: 0; max-width: 100%; }
.public-site .news-card-content { min-width: 0; max-width: 100%; }
.public-site .news-card-content :where(h3, p, a) { max-width: 100%; overflow-wrap: anywhere; }
.public-site .news-card-content h3 { font-size: clamp(1.55rem, 2.3vw, 2.4rem); line-height: 1.18; }
.public-site .news-card-kicker { flex-wrap: wrap; gap: .5rem .75rem; }
.public-site .news-card-kicker :where(time, span, strong) { white-space: normal; }
.public-site .news-article-header h1 { font-size: clamp(2.25rem, 4.1vw, 4.25rem); }
.public-site .news-article-layout { display: grid; grid-template-columns: minmax(13rem, .34fr) minmax(0, 1fr); gap: clamp(2rem, 5vw, 5rem); align-items: start; max-width: none; }
.public-site .news-article-body { max-width: 70ch; margin: 0; font-size: 1.08rem; }
.public-site .news-article-body :where(p, li) { line-height: 1.8; }
.public-site .news-article-body h2 { font-size: clamp(1.65rem, 2.6vw, 2.3rem); margin-block: 2.5rem 1rem; }
.public-site .article-toc { position: sticky; top: 108px; border-block-start: 2px solid #08766e; padding-block-start: 1.25rem; max-height: calc(100dvh - 140px); overflow: auto; }
.public-site .article-toc h2 { font-family: inherit; font-size: 1rem; letter-spacing: 0; }
.public-site .article-toc ol { list-style: none; padding: 0; margin: 1rem 0 0; }
.public-site .article-toc a { display: flex; min-height: 44px; align-items: center; padding-block: .55rem; line-height: 1.45; }
.public-site .article-toc .toc-subheading { padding-inline-start: 1rem; font-size: .95rem; }
.public-site .editorial-update { background: #f2f1e9; border-inline-start: 3px solid #08766e; padding: 1.25rem; margin-block-end: 2rem; font-size: 1rem; }
.public-site .editorial-update p { margin-block: .5rem; }
.public-site .legal-copy { max-width: 76ch; }
.public-site .legal-copy :where(p, li) { line-height: 1.75; }
.public-site .legal-copy h2 { font-size: clamp(1.6rem, 2.5vw, 2.2rem); }
.public-site .legal-toc a { display: inline-block; padding-block: .4rem; }
.public-site .legal-contact-card a { padding-block: .4rem; }
.public-site bdi[dir="ltr"] { unicode-bidi: isolate; direction: ltr; }
.public-site a[href^="tel:"] bdi[dir="ltr"] { white-space: nowrap; }
.public-site[dir="rtl"] .back-link, html[dir="rtl"] .public-site .back-link { direction: rtl; }
html[dir="rtl"] .public-site :where(.button, .text-link)::after,
html[dir="rtl"] .public-site :where(.support-hub-card nav a, .support-link-grid a, .legal-card) > span[aria-hidden="true"] {
  transform: scaleX(-1);
}
.public-site .brand { display: inline-flex; min-height: 44px; align-items: center; }
.public-site .menu-button { min-width: 44px; min-height: 44px; }
.public-site .site-nav .nav-links a { min-height: 44px; display: inline-flex; align-items: center; }
.public-site .language-dialog-list a { min-height: 48px; }
.public-site .language-dialog { max-height: calc(100dvh - 2rem); }
.public-site .footer-language-button { min-height: 48px; }
.public-site .footer-grid nav a { display: flex; align-items: center; min-height: 44px; }
html.public-menu-open { overflow: hidden; }

@media (min-width: 901px) {
  .public-site .editorial-hero-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .public-site .product-hero-grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
}
@media (max-width: 1100px) {
  .public-site .header-inner { gap: 1rem; }
  .public-site .site-nav .nav-links { gap: .85rem; }
}
@media (max-width: 900px) {
  .public-site .editorial-hero-grid, .public-site .product-hero-grid { grid-template-columns: minmax(0, 1fr); }
  .public-site .editorial-hero-copy { width: 100%; }
  .public-site .news-article-layout { grid-template-columns: minmax(0, 1fr); }
  .public-site .article-toc { position: static; max-height: none; }
  .public-site .news-card-featured { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
  .public-site .header-inner { gap: 8px; }
  .public-site .brand { flex: 1 1 auto; min-width: 0; }
  .public-site .brand img { width: min(158px, 100%); max-width: 100%; }
  .public-site .header-actions { gap: 8px; }
  .public-site .editorial-hero { padding-block: 2.75rem 2rem; }
  .public-site .editorial-hero-copy h1 { font-size: clamp(2.3rem, 9.5vw, 3rem); }
  .public-site .editorial-hero-media { margin-block-start: .5rem; }
  .public-site .kitrivo-hero { min-height: auto; }
  .public-site .kitrivo-hero-inner { min-height: 0; padding-block: 3rem; }
  .public-site .kitrivo-hero-copy { max-width: 100%; }
  .public-site .kitrivo-hero h1 { font-size: 3.4rem; }
  .public-site .kitrivo-hero .audience-line { margin-block: 1.25rem; }
  .public-site .product-hero-propivio { padding-block: 2.75rem; }
  .public-site .news-card-content { padding: 1.25rem; }
  .public-site .news-card-content h3 { font-size: 1.8rem; }
  .public-site .news-article-header { padding-block: 2.5rem; }
  .public-site .news-article-header h1 { font-size: 2.3rem; }
  .public-site .news-article-body { font-size: 1.02rem; }
  .public-site .legal-hero h1 { font-size: clamp(2.15rem, 9vw, 2.75rem); }
  .public-site .legal-body-grid { gap: 2rem; }
}
@media (max-width: 360px) {
  .public-site .language-button { width: 44px; min-width: 44px; padding: 10px; }
  .public-site .language-button > span { display: none; }
  .public-site .brand img { width: min(136px, 100%); }
}
@media (max-width: 240px) {
  .public-site .header-inner { flex-wrap: wrap; padding-block: 8px; }
  .public-site .brand { flex-basis: 100%; }
  .public-site .brand img { width: 120px; }
  .public-site .header-actions { margin-inline-start: auto; }
  .public-site .site-nav { inset-block-start: 100%; }
}
@media (max-height: 500px) and (max-width: 1100px) {
  .public-site .site-header { position: relative; }
  .public-site .language-dialog { max-height: calc(100dvh - 1rem); }
  .public-site .kitrivo-hero { min-height: 0; align-items: flex-start; }
  .public-site .kitrivo-hero-inner { padding-block: 2rem; }
  .public-site .kitrivo-hero-copy { max-width: 44rem; }
  .public-site .kitrivo-hero h1 { font-size: 3rem; line-height: 1; }
  .public-site .kitrivo-hero .hero-claim { margin-block-end: .65rem; font-size: 1.35rem; line-height: 1.25; }
  .public-site .kitrivo-hero .hero-lead { margin-block-end: .65rem; font-size: .98rem; line-height: 1.45; }
  .public-site .kitrivo-hero .release-status { margin-block: .65rem; font-size: .92rem; }
  .public-site .kitrivo-hero .button-row { gap: .6rem; }
  .public-site .kitrivo-hero .button { min-height: 46px; padding-block: .6rem; }
  .public-site .kitrivo-hero .audience-line { margin-block: .85rem 0; font-size: .9rem; line-height: 1.4; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(.public-site) { scroll-behavior: auto; }
  .public-site *, .public-site *::before, .public-site *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
