/* Public marketing pages only. Typography follows the homepage section titles;
   the photographic homepage hero, CMS and archived /new stay untouched. */
body.nx-unified-headings {
 --nx-page-title-top:180px;
 --nx-page-title-bottom:56px;
 --nx-page-title-size:45px;
 --nx-page-title-line:50px;
}
body.nx-unified-headings :is(.page-title-big-typography, .nx-product-head, .nx-install-hero, .nx-guide-hero) {
 height:auto!important;
 min-height:0!important;
 margin-top:0!important;
 padding-top:var(--nx-page-title-top)!important;
 padding-bottom:var(--nx-page-title-bottom)!important;
 background:#fff!important;
}
body.nx-unified-headings .page-title-big-typography .h-200px { height:auto!important; }
body.nx-unified-headings :is(.page-title-big-typography, .nx-product-head, .nx-install-hero, .nx-guide-hero, .nx-contact-copy) h1 {
 font-family:'Onest',sans-serif!important;
 font-size:var(--nx-page-title-size)!important;
 font-weight:500!important;
 line-height:var(--nx-page-title-line)!important;
 letter-spacing:-1px!important;
 color:#0d0d0d!important;
 text-transform:none!important;
 margin-top:0!important;
 margin-bottom:24px!important;
 overflow-wrap:break-word;
}
/* Catalogue headings have no lead paragraph; section padding supplies their gap. */
body.nx-unified-headings .page-title-big-typography h1 { margin-bottom:0!important; }
body.nx-unified-headings .nx-product-head :is(.nx-product-breadcrumb, .nx-product-kicker),
body.nx-unified-headings :is(.nx-install-hero, .nx-guide-hero) .nx-install-eyebrow { display:none!important; }
body.nx-unified-headings :is(.nx-alert-hero, .nx-sync-hero) { margin-top:0!important; align-items:start; }
/* Contact/order forms have their own layouts, but the same title position. */
body.nx-unified-headings .nx-contact-section { padding-top:var(--nx-page-title-top)!important; }
body.nx-unified-headings .nx-contact-copy { padding-top:0!important; }
body.nx-unified-headings .nx-contact-eyebrow { display:none!important; }
/* Legal/status content follows a title strip; do not add another top spacer. */
body.nx-unified-headings > .page-title-big-typography ~ section.pt-4 { padding-top:0!important; }
@media(max-width:991.98px) {
 body.nx-unified-headings { --nx-page-title-top:150px; --nx-page-title-bottom:44px; }
}
@media(max-width:767.98px) {
 body.nx-unified-headings { --nx-page-title-top:136px; --nx-page-title-bottom:36px; --nx-page-title-size:36px; --nx-page-title-line:42px; }
 /* Keep the status timeline inside the same mobile content width. */
 body.nx-unified-headings .status-row { flex-wrap:wrap; gap:12px 0; }
 body.nx-unified-headings .status-row-label { flex:1 1 60%; min-width:0; }
 body.nx-unified-headings .status-row-now { flex:0 1 40%; min-width:0; }
 body.nx-unified-headings .status-grid { order:3; flex:0 0 100%; min-width:0; gap:1px; }
 body.nx-unified-headings .status-axis { padding-inline:0; }
 body.nx-unified-headings .sla-table { display:block; overflow-x:auto; max-width:100%; }
}
@media(max-width:575.98px) {
 body.nx-unified-headings { --nx-page-title-top:128px; --nx-page-title-size:32px; --nx-page-title-line:38px; }
}
