:root{--frost-bg:rgba(38,42,49,.69);--frost-bg-solid:rgb(38,42,49);--frost-blur:12px;--plate-bar-w:4px}
/* Gutenberg's outer wrappers must not introduce spacing absent from the design. */
.wp-site-blocks{padding:0;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.wp-site-blocks>main{flex:1 0 auto}
.wp-site-blocks>header,.wp-site-blocks>footer{flex-shrink:0}
.wp-site-blocks>footer{margin-top:auto}
.admin-bar .wp-site-blocks{min-height:calc(100vh - 32px);min-height:calc(100dvh - 32px)}
body[data-page="showroom"] .nvs-card .nvx-privacy-notice{color:#f6f5f1;font-size:14px;line-height:1.65}
body[data-page="showroom"] .nvs-card .nvx-privacy-notice a{color:#ffd28a;text-decoration:underline;text-underline-offset:3px}
.nv-shell{max-width:var(--container);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.nv-section,.nv-empty{padding-top:var(--section-y);padding-bottom:var(--section-y)}
.nv-page-title{padding-top:var(--section-y-compact);padding-bottom:36px}
.nv-article>.wp-block-post-content{padding:0 var(--gutter) var(--section-y)}
.nv-empty{display:grid;gap:24px;min-height:45vh;align-content:center}
.nv-eyebrow{font:600 12px var(--font-eyebrow);text-transform:uppercase;letter-spacing:.14em;color:var(--novex-navy)}
.wp-site-blocks>*,.wp-site-blocks .wp-block-post-content>*{margin-block-start:0;margin-block-end:0}
.wp-block-post-content{max-width:none!important}
.nvb-global-header{position:sticky;top:0;z-index:40}
.admin-bar .nvb-global-header{top:32px}
.wp-site-blocks [hidden]{display:none!important}
.nvb-image{max-width:100%;height:auto}
.nvb-icon{vertical-align:middle;line-height:1;font-size:0}
/* Keep the native Gutenberg button; its expanded state animates three lines into X. */
.nvx-hd__burger .nvb-icon{
 position:relative;width:20px;height:2px;overflow:visible;border-radius:1px;
 background:currentColor;-webkit-mask:none;mask:none;
 transition:background-color .2s ease;
}
.nvx-hd__burger .nvb-icon::before,.nvx-hd__burger .nvb-icon::after{
 content:"";position:absolute;left:0;width:100%;height:2px;border-radius:1px;
 background:currentColor;transform-origin:center;
 transition:transform .4s cubic-bezier(.77,.2,.05,1);
}
.nvx-hd__burger .nvb-icon::before{top:-6px}
.nvx-hd__burger .nvb-icon::after{top:6px}
.nvx-hd__burger[aria-expanded="true"] .nvb-icon{background-color:transparent}
.nvx-hd__burger[aria-expanded="true"] .nvb-icon::before{transform:translateY(6px) rotate(45deg)}
.nvx-hd__burger[aria-expanded="true"] .nvb-icon::after{transform:translateY(-6px) rotate(-45deg)}
@media(prefers-reduced-motion:reduce){
 .nvx-hd__burger .nvb-icon,.nvx-hd__burger .nvb-icon::before,.nvx-hd__burger .nvb-icon::after{transition:none}
}
.nvx-partners{overflow:visible}
/* Decorative SVG masks keep contact links editable as native Gutenberg blocks. */
.nvx-ft__contact a[href^="tel:"],.nvx-ft__contact a[href^="mailto:"]{display:inline-flex;align-items:center;gap:9px}
.nvx-ft__contact a[href^="tel:"]::before,.nvx-ft__contact a[href^="mailto:"]::before{
 content:"";display:inline-block;width:17px;height:17px;flex:0 0 17px;background:var(--brand-blue);
 -webkit-mask:var(--nvx-contact-icon) center/contain no-repeat;mask:var(--nvx-contact-icon) center/contain no-repeat;
}
.nvx-ft__contact a[href^="tel:"]{--nvx-contact-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%2016.92v3a2%202%200%200%201-2.18%202%2019.79%2019.79%200%200%201-8.63-3.07%2019.5%2019.5%200%200%201-6-6A19.79%2019.79%200%200%201%202.12%204.2%202%202%200%200%201%204.11%202h3a2%202%200%200%201%202%201.72c.12.96.36%201.9.7%202.79a2%202%200%200%201-.45%202.11L8.09%209.89a16%2016%200%200%200%206%206l1.27-1.27a2%202%200%200%201%202.11-.45c.89.34%201.83.58%202.79.7A2%202%200%200%201%2022%2016.92z%22%2F%3E%3C%2Fsvg%3E")}
.nvx-ft__contact a[href^="mailto:"]{--nvx-contact-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22m3%206%209%207%209-7%22%2F%3E%3C%2Fsvg%3E")}
.nvx-ft__contact a:hover::before{background:currentColor}
/* Clip at the full-width band, allowing the marquee to extend beyond its inner container. */
.nvk-sec:has(.nvx-partners){overflow-x:clip}
.wp-site-blocks .nva-hero__bg,.wp-site-blocks .nva-dx__bg{height:100%}
/* Override the attachment's HTML height so the Gutenberg video keeps its 16:9 ratio. */
body[data-page="o-nas"] video.nvb-video{height:auto;max-width:100%;box-sizing:border-box}
@media(max-width:820px){
 .wp-site-blocks .nva-hero__bg{height:min(58vw,300px);flex-shrink:0;order:2}
 .wp-site-blocks .nva-dx__bg{height:min(56vw,280px);flex-shrink:0;order:2}
 .nva-hero__hold{flex:none;width:100%;order:1}
 .nva-dx__hold{order:1}
}
@media(min-width:761px){
 /* Each growing second track is an equal spacer; the divider sits at its centre. */
 .nvx-proof__in{display:flex;justify-content:space-between;flex-wrap:nowrap;gap:0;align-items:stretch}
 .nvx-proof__cell{flex:1 1 auto;min-width:0;grid-template-columns:max-content minmax(12px,1fr);column-gap:0;padding:0;border-left:0}
 .nvx-proof__cell:first-child,.nvx-proof__cell:last-child{padding:0}
 .nvx-proof__cell:last-child{flex:0 0 auto;grid-template-columns:max-content}
 .nvx-proof__cell>.nvx-proof__k{grid-column:1;grid-row:1}
 .nvx-proof__cell>.nvx-proof__v{grid-column:1;grid-row:2}
 .nvx-proof__cell:not(:last-child)::after{content:"";grid-column:2;grid-row:1 / 3;justify-self:center;border-left:2px solid var(--pb-div)}
}
@media(min-width:761px) and (max-width:1099px){
 .nvx-proof__k{font-size:clamp(28px,3.6vw,40px)}
 .nvx-proof__v{font-size:11px;letter-spacing:.06em}
}
.nvx-gal>*{min-width:0}
.nvh-stage__play .nvb-icon{display:none}
.nvh-stage__play::before{content:"";display:block;width:12px;height:20px;background:linear-gradient(90deg,currentColor 0 33%,transparent 33% 66%,currentColor 66%)}
.nvh-stage__play.nvb-paused::before{width:20px;height:24px;background:currentColor;clip-path:polygon(15% 0,100% 50%,15% 100%)}
.wp-site-blocks .nvk-note{display:none!important}
.nvh-stage__play.nvb-paused .nvb-icon{mask:none;-webkit-mask:none;background:currentColor;clip-path:polygon(15% 0,100% 50%,15% 100%)}
.nvx-hd__dcta .nvx-btn{height:46px;padding:0 22px;font-size:15px}
body[data-page="showroom"] .nvx-hd__logo img{filter:none}
[id]{scroll-margin-top:90px}
.nvb-page-button{box-sizing:content-box;min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;border:1px solid var(--line);background:var(--pure-white);color:var(--deep-blue-grey);font-family:var(--font-body);font-size:14px;font-weight:600;cursor:pointer;border-radius:var(--radius-1)}
.nvb-page-button[aria-current="page"]{background:var(--novex-navy);color:var(--pure-white);border-color:var(--novex-navy);cursor:default}
.nvb-page-button:disabled{opacity:.4;cursor:default}
/* Match the accessible selected state; generated reference CSS escaped its quotes. */
.nvx-flt__btn[aria-pressed="true"]{background:var(--novex-navy);border-color:var(--novex-navy);color:var(--pure-white)}

/* Native Query Loop, styled like the original knowledge cards. */
.nvx-article-meta{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--ink-muted)}
.nvx-article-meta>*{margin:0}
.nvx-article-meta .wp-block-post-terms a{color:var(--novex-navy);font-weight:600;text-decoration:none}
.nvx-blog-query .wp-block-post-template{margin:0;padding:0;gap:24px}
.nvx-blog-query .wp-block-post-template>li{margin:0;min-width:0}
.nvx-blog-query .nvx-ac{height:100%}
.nvx-blog-query .nvx-ac__m{margin:0;aspect-ratio:3/2;border-bottom:1px solid var(--line)}
.nvx-blog-query .nvx-ac__m>a{display:block;width:100%;height:100%}
.nvx-blog-query .nvx-ac__m img{display:block;width:100%;height:100%;object-fit:cover}
.nvx-blog-query .nvx-ac__b>*{margin:0}
.nvx-blog-query .nvx-ac__t a,.nvx-blog-query .nvx-ac__cat a{color:inherit;text-decoration:none}
.nvx-blog-query .nvx-ac__t a:hover,.nvx-blog-query .nvx-ac__go:hover{text-decoration:underline;text-underline-offset:4px}
.nvx-blog-query .nvx-ac__x p{margin:0}
.nvx-blog-query .wp-block-query-pagination{margin-top:28px}
@media(max-width:1020px){.nvx-blog-query .wp-block-post-template.nvk-g{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){
 .nvx-blog-query .wp-block-post-template.nvk-g{grid-template-columns:minmax(0,1fr)}
 .nvx-blog-query .nvx-ac__m{aspect-ratio:auto;margin:0}
 .nvx-blog-query .nvx-ac__m>a{position:absolute;inset:0}
}
a[aria-disabled="true"]{cursor:default}
.nvb-lightbox{border:0;background:transparent;color:#f6f5f1;max-width:min(960px,94vw);padding:24px;max-height:94vh;overflow:auto}
.nvb-lightbox::backdrop{background:rgba(10,16,22,.88)}
.nvb-lightbox>img{display:block;max-height:78vh;max-width:100%;margin:auto;object-fit:contain}
.nvb-lightbox-controls{display:flex;gap:8px;align-items:center;margin-top:12px;font:14px var(--font-body)}
.nvb-lightbox-count{margin-right:auto}
.nvb-lightbox-controls button{width:40px;height:40px;border:1px solid #ffffff60;background:none;color:inherit;font-size:22px;cursor:pointer}
@media(max-width:782px){.admin-bar .nvb-global-header{top:46px}}
@media(max-width:782px){.admin-bar .wp-site-blocks{min-height:calc(100vh - 46px);min-height:calc(100dvh - 46px)}}
@media(max-width:600px){.admin-bar .nvb-global-header{top:0}}

/* NOVEX scroll-to-top: above the accessibility launcher, never inside it. */
.nvx-scroll-top{position:fixed;right:14px;bottom:calc(64px + env(safe-area-inset-bottom,0px));z-index:400000;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--brand-orange);border-radius:50%;background:var(--novex-navy);color:var(--pure-white);box-shadow:0 4px 14px rgba(0,26,52,.2);cursor:pointer;touch-action:manipulation;transition:background .18s ease,transform .18s ease}
.nvx-scroll-top[hidden]{display:none!important}
.nvx-scroll-top svg{display:block;width:22px;height:22px;pointer-events:none}
.nvx-scroll-top:hover{background:var(--navy-hover);transform:translateY(-2px)}
.nvx-scroll-top:focus-visible{outline:3px solid var(--brand-orange);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.nvx-scroll-top{transition:none}.nvx-scroll-top:hover{transform:none}}
