/* Private integration candidate. Original palette, serif typography and screens remain intact. */
.promoni-page .pv-hero-grid { align-items: start; }
.promoni-page main p,
.promoni-page main figcaption { letter-spacing: -.01em; text-wrap: pretty; }
.promoni-page main figcaption { text-wrap: balance; }
.promoni-page main :is(h1, h2, h3, h4),
.promoni-page .pv-copy .pv-lead,
.promoni-page main .btn { text-wrap: balance; }
.promoni-page .pv-docs { padding-inline: 14px; }
.promoni-page .pv-doc { min-width: 0; flex: 1 1 0; max-width: 90px; }
.promoni-page .pv-doc b { overflow-wrap: anywhere; }
.promoni-page .pv-photo-symbol { font-size: 1.5em; line-height: 1; }
.promoni-page .pv-source,
.promoni-page .pv-process,
.promoni-page .pv-result { min-width: 0; max-width: 100%; }
.promoni-page .pv-logo-mark { width: max(36px, 1em); height: max(36px, 1.2em); flex-shrink: 0; }
.promoni-page .brand, .promoni-page .footer-brand { max-width: 100%; flex-wrap: wrap; row-gap: 8px; }
.promoni-page .pv-role-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 18em), 1fr));
  gap: 28px 48px;
  margin-top: 28px;
}
.promoni-page .pv-role { border-top: 1px solid #83c2ba66; padding-top: 20px; min-width: 0; }
.promoni-page .pv-role h4 { font: 600 1.12rem/1.7 var(--pv-serif); margin: 0 0 12px; color: #fff; }
.promoni-page .pv-role ul { padding-left: 1.15em; margin: 0; color: #d4e0e3; font-size: .95rem; line-height: 1.95; }
.promoni-page .pv-role li + li { margin-top: 8px; }
.promoni-page .pv-start { grid-template-columns: repeat(auto-fit, minmax(min(100%, 11em), 1fr)); }
.promoni-page .pv-role li { letter-spacing: -.01em; }
.promoni-page .pv-role li { text-wrap: pretty; }
.promoni-page .pv-keep, .works-review .works-keep { white-space: nowrap; }
.promoni-page .pv-role h4 { text-wrap: balance; }
.works-review .btn span { min-width: 0; max-width: 100%; }
.promoni-page .pv-hero-grid > *,
.promoni-page .pv-feature > *,
.promoni-page .pv-operation-head > *,
.promoni-page .pv-folder-flow > * { min-width: 0; }

.works-review .works-hero__inner { display: flex; flex-wrap: wrap; align-items: start; }
.works-review .works-hero__inner > :first-child { flex: 1.08 1 25em; }
.works-review .works-hero__inner > :last-child { flex: .92 1 21em; }
.works-review .hero__title { font-size: clamp(1.4rem, 4.4vw, 3.25rem); letter-spacing: -.01em; text-wrap: balance; overflow-wrap: anywhere; }
.works-review .works-grid { display: flex; flex-wrap: wrap; }
.works-review .work-card { flex: 1 1 15em; min-width: 0; }
.works-review .works-note { flex: 1 0 100%; min-width: 0; }
.works-review main p, .works-review main li,
.works-review main h2, .works-review main h3,
.works-review main .btn { letter-spacing: -.01em; }
.works-review .work-card p, .works-review .work-card li { text-wrap: pretty; }
.works-review main h2, .works-review main h3, .works-review main .btn { text-wrap: balance; overflow-wrap: anywhere; }
.works-review .works-hero__inner > * { min-width: 0; }
.works-review .btn { max-width: 100%; min-width: 0; }

body:is(.promoni-page, .works-review) .brand,
body:is(.promoni-page, .works-review) .footer-brand,
body:is(.promoni-page, .works-review) .footer-menu a,
body:is(.promoni-page, .works-review) .footer-meta__links a { display: inline-flex; align-items: center; min-width: 44px; min-height: 44px; }
body:is(.promoni-page, .works-review) .site-nav > a,
body:is(.promoni-page, .works-review) .site-nav > .nav-item > :is(a, button) { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
body:is(.promoni-page, .works-review) .header-inner { flex-wrap: wrap; }
body:is(.promoni-page, .works-review).header-in-flow .site-header { position: relative; }
body:is(.promoni-page, .works-review).header-in-flow .nav-item--has-panel {
  flex-direction: column;
  flex-basis: 100%;
  width: 100%;
  align-items: stretch;
}
body:is(.promoni-page, .works-review).header-in-flow .nav-panel {
  position: static;
  display: none;
  width: 100%;
  min-width: 0;
  max-height: none;
  overflow: visible;
}
.promoni-page.header-in-flow .pv-nav-open .nav-panel,
.works-review.header-in-flow .nav-item--has-panel:hover .nav-panel,
.works-review.header-in-flow .nav-item--has-panel:focus-within .nav-panel { display: grid; }
body:is(.promoni-page, .works-review) .site-nav { max-width: 100%; flex-wrap: wrap; }
body:is(.promoni-page, .works-review) .nav-panel a { white-space: normal; overflow-wrap: anywhere; min-height: 44px; }
body:is(.promoni-page, .works-review) .nav-panel {
  transition: opacity .15s ease;
  max-height: max(44px, calc(100vh - var(--unified-header-offset, 6rem) - 24px));
  max-height: max(44px, calc(100dvh - var(--unified-header-offset, 6rem) - 24px));
  overflow-y: auto;
  overscroll-behavior: contain;
}
body:is(.promoni-page, .works-review) .footer-menu { grid-template-columns: repeat(auto-fit, minmax(min(100%, 7em), 1fr)); }
body:is(.promoni-page, .works-review) .footer-menu h2 { overflow-wrap: anywhere; }
body:is(.promoni-page, .works-review) .footer-meta__inner { flex-wrap: wrap; }
body:is(.promoni-page, .works-review) .footer-meta__links { max-width: 100%; flex-wrap: wrap; }
body:is(.promoni-page, .works-review) .footer-meta__links a { max-width: 100%; overflow-wrap: anywhere; }
body:is(.promoni-page, .works-review) main [id] { scroll-margin-top: calc(var(--unified-header-offset, 6rem) + 16px); }
html { scroll-padding-top: 0; }

@media (max-width: 1200px) {
  body:is(.promoni-page, .works-review) .header-inner,
  body:is(.promoni-page, .works-review) .site-nav { flex-wrap: wrap; justify-content: center; }
  body:is(.promoni-page, .works-review) .site-nav { max-width: 100%; row-gap: 8px; }
  body:is(.promoni-page, .works-review) .site-nav .nav-panel { left: auto; right: 0; min-width: min(320px, calc(100vw - 32px)); max-width: min(320px, calc(100vw - 32px)); }
}
@media (max-width: 920px) {
  .works-review .works-hero__inner > :is(:first-child, :last-child) { flex-basis: 100%; }
}
@media (min-width: 761px) and (max-width: 1100px) {
  .promoni-page .pv-hero { background: #1d3f4e; }
  .promoni-page .pv-hero-grid,
  .promoni-page .pv-feature,
  .promoni-page .pv-flow-line,
  .promoni-page .pv-folder-flow,
  .promoni-page .pv-operation-head { grid-template-columns: minmax(0, 1fr); }
  .promoni-page .pv-copy { padding-right: 0; }
  .promoni-page .pv-copy h1 { font-size: clamp(2rem, 7.5vw, 4.8rem); }
  .promoni-page .pv-arrow { transform: rotate(90deg); }
  .promoni-page .pv-folder-scope { flex-direction: column; }
  .promoni-page .pv-folder-scope > span { transform: rotate(90deg); }
}
@media (max-width: 620px) {
  .works-review .works-hero { padding-top: 56px; }
  .promoni-page .pv-copy h1 { font-size: clamp(1.8rem, 10.5vw, 3.4rem); }
  .promoni-page main h2 { font-size: 1.55rem; }
  .promoni-page .pv-feature h3 { font-size: 1.3rem; }
  .promoni-page .pv-flow-line { grid-template-columns: minmax(0, 1fr); }
  .works-review .works-panel, .works-review .work-card { padding: 20px; }
  .works-review .work-card { padding-inline: 16px; }
  .works-review main h2 { font-size: 1.2rem; }
  .works-review .work-card h3 { font-size: 1.1rem; }
  body:is(.promoni-page, .works-review) .site-nav { position: relative; }
  body:is(.promoni-page, .works-review) .site-nav > .nav-item { position: static; }
  body:is(.promoni-page, .works-review) .site-nav .nav-item--has-panel .nav-panel,
  body:is(.promoni-page, .works-review) .site-nav .nav-item--has-panel:nth-last-child(-n + 3) .nav-panel { left: 0; right: 0; width: auto; min-width: 0; max-width: 100%; transform: none; }
  .works-review .site-nav .nav-item--has-panel:hover .nav-panel,
  .works-review .site-nav .nav-item--has-panel:focus-within .nav-panel,
  .promoni-page .site-nav .nav-item--has-panel.pv-nav-open .nav-panel,
  .promoni-page .site-nav .nav-item--has-panel.pv-nav-open:nth-last-child(-n + 3) .nav-panel { transform: translateY(0); }
}
