/* Horizon visual navigation. Scoped: does not depend on the retired hz-nav JS. */
.hvn {
  --hvn-bg:#11171c; --hvn-deep:#0b0e11; --hvn-panel:#fff; --hvn-ink:#1c252c;
  --hvn-muted:#68757e; --hvn-line:#e3e8eb; --hvn-soft:#f3f5f6; --hvn-orange:#ff9300;
  position:sticky; top:0; z-index:100; width:100%; background:var(--hvn-bg);
  color:#fff; font-family:Arial,Helvetica,sans-serif; box-shadow:0 1px 0 #34414b;
}
.hvn *, .hvn *::before, .hvn *::after, .hvn-breadcrumb * { box-sizing:border-box; }
.hvn a { color:inherit; text-decoration:none; }
.hvn button, .hvn summary { font:inherit; }
.hvn a, .hvn summary, .hvn button { -webkit-tap-highlight-color:transparent; }
.hvn :is(a,summary,button):focus-visible { outline:3px solid var(--hvn-orange); outline-offset:4px; border-radius:3px; }
.hvn-wrap { width:min(1280px,calc(100% - 64px)); margin-inline:auto; }
.hvn-topbar { background:var(--hvn-deep); color:#c8d0d6; border-bottom:1px solid #28333d; }
.hvn-topbar .hvn-wrap { min-height:32px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.hvn-topbar span { font-size:10px; font-weight:700; letter-spacing:.13em; }
.hvn-topbar a { font-size:12px; color:#dce3e8; white-space:nowrap; }
.hvn-topbar a:hover { color:var(--hvn-orange); }
.hvn-row { position:relative; display:flex; align-items:center; justify-content:space-between; gap:26px; min-height:84px; }
.hvn-brand { flex:0 0 auto; max-width:320px; min-width:0; }
.hvn-brand .hz-brand { display:flex; align-items:center; gap:12px; text-decoration:none; color:#fff; }
.hvn-brand .hz-brand img { width:65px; height:36px; object-fit:contain; flex:0 0 auto; }
.hvn-brand .hz-wordmark { color:#fff; font-size:24px; line-height:1; font-weight:750; letter-spacing:.012em; }
.hvn-brand .hz-wordmark small { display:block; color:var(--hvn-orange); font-size:10px; letter-spacing:.17em; line-height:1.3; margin-top:5px; }
.hvn-navigation { display:flex; align-items:stretch; gap:5px; margin-left:auto; }
.hvn-item { position:static; }
.hvn-trigger, .hvn-direct { display:flex; align-items:center; justify-content:center; gap:7px; min-height:84px; padding:0 17px; font-size:14px; line-height:1.2; font-weight:700; white-space:nowrap; cursor:pointer; border:0; color:#eef2f5; position:relative; }
.hvn-trigger { list-style:none; }
.hvn-trigger::-webkit-details-marker { display:none; }
.hvn-trigger::after, .hvn-direct::after { content:""; position:absolute; bottom:15px; left:17px; right:17px; height:2px; background:var(--hvn-orange); transform:scaleX(0); transition:transform .16s ease; transform-origin:left; }
.hvn-trigger svg { fill:none; stroke:currentColor; stroke-width:1.6; transition:transform .16s ease; }
.hvn-item[open] > .hvn-trigger svg { transform:rotate(180deg); }
.hvn-item:is([open],.is-active) > .hvn-trigger, .hvn-direct:is(:hover,.is-active,.is-current) { color:var(--hvn-orange); }
.hvn-item:is([open],.is-active) > .hvn-trigger::after, .hvn-direct:is(:hover,.is-active,.is-current)::after { transform:scaleX(1); }
.hvn-direct .hvn-link-arrow { display:none; }
.hvn .hvn-direct { font-size:16px; font-weight:400; }
.hvn-direct b { font-weight:inherit; }
.hvn-quote { display:flex; align-items:center; gap:13px; align-self:center; padding:13px 18px; margin-left:15px; border:1px solid var(--hvn-orange); background:var(--hvn-orange); color:var(--hvn-deep)!important; font-size:13px; white-space:nowrap; border-radius:3px; transition:background .16s ease,transform .16s ease; }
.hvn-quote:hover { background:#ff9300; transform:translateY(-1px); }
.hvn-quote.is-current { outline:2px solid #fff; outline-offset:4px; }
.hvn-panel { position:absolute; top:100%; left:0; right:0; background:var(--hvn-panel); color:var(--hvn-ink); border:1px solid var(--hvn-line); border-top:3px solid var(--hvn-orange); border-radius:0 0 6px 6px; box-shadow:0 22px 48px #0004; max-height:calc(100vh - 135px); overflow:auto; overscroll-behavior:contain; }
.hvn-panel-inner { display:grid; grid-template-columns:minmax(0,1fr) 300px; }
.hvn-menu-main { padding:26px 30px 23px; min-width:0; }
.hvn-menu-full { grid-column:1 / -1; }
.hvn-panel-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:20px; }
.hvn-overline, .hvn-preview-eyebrow { display:block; font-size:10px; letter-spacing:.13em; font-weight:700; color:#7c541f; margin-bottom:7px; }
.hvn .hvn-panel-heading h2 { color:var(--hvn-ink); font-size:25px; line-height:1.14; font-weight:700; letter-spacing:-.03em; margin:0; }
.hvn-overview { display:flex; gap:12px; align-items:center; font-size:12px; color:#4e5b64!important; white-space:nowrap; padding:6px 0; }
.hvn-overview:hover { color:#8e5008!important; }
.hvn-overview.is-current { color:#8e5008!important; text-decoration:underline; text-underline-offset:5px; }
.hvn-product-grid, .hvn-application-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 12px; }
.hvn-product { display:flex; gap:12px; align-items:center; min-width:0; padding:10px; border:1px solid transparent; border-radius:4px; transition:background .15s ease,border-color .15s ease; }
.hvn-link-image { width:66px; height:66px; flex:0 0 66px; background:#f2f4f5; border-radius:3px; overflow:hidden; }
.hvn-link-image img { display:block; width:100%; height:100%; object-fit:contain; padding:5px; }
/* Match the compression photograph's 26.5-degree upward axis without changing product proportions. */
.hvn-link-image img[src*="stainless-gas-spring-silver-rod-retouched"],
.hvn-preview-image[src*="stainless-gas-spring-silver-rod-retouched"] { transform:rotate(63.5deg); }
.hvn-link-image img[src*="traction-gas-spring-retracted-illustration"],
.hvn-preview-image[src*="traction-gas-spring-retracted-illustration"] { transform:rotate(-10.2deg); }
.hvn-link-image img[src*="chair-gas-lift-column-illustration"],
.hvn-preview-image[src*="chair-gas-lift-column-illustration"] { transform:rotate(7deg); }
.hvn-product > span:nth-child(2), .hvn-application > span:first-child { min-width:0; }
.hvn-panel b { display:block; font-size:13px; line-height:1.3; font-weight:700; }
.hvn-panel small { display:block; font-size:11px; color:var(--hvn-muted); line-height:1.45; margin-top:5px; }
.hvn-link-arrow { margin-left:auto; font-size:17px; line-height:1; font-weight:400; flex:0 0 auto; }
.hvn-product .hvn-link-arrow { font-size:15px; color:#86949e; }
.hvn-panel a:is(.hvn-product,.hvn-application,.hvn-utility):hover,
.hvn-panel a:is(.hvn-product,.hvn-application,.hvn-utility):focus-visible,
.hvn-panel a.is-current { background:#f3f5f6; border-color:#d9a462; color:#874700; }
.hvn-panel a:is(.hvn-product,.hvn-application,.hvn-utility):hover .hvn-link-arrow { color:#a6600b; }
.hvn-utility-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--hvn-line); margin-top:20px; padding-top:15px; gap:10px; }
.hvn-utility { display:flex; align-items:center; gap:10px; padding:10px; border:1px solid transparent; border-radius:4px; }
.hvn-utility b { font-size:12px; }
.hvn-utility .hvn-link-arrow { color:#7c541f; font-size:15px; }
.hvn-preview { display:flex; flex-direction:column; min-width:0; background:var(--hvn-soft); border-left:1px solid var(--hvn-line); padding:27px 24px 22px; }
.hvn-preview-eyebrow { color:#64737d; margin-bottom:14px; font-size:9px; }
.hvn-preview-picture { display:grid; place-items:center; min-height:210px; flex:1; background:#fff; border:1px solid #e5e9ec; border-radius:4px; overflow:hidden; }
.hvn-preview .hvn-preview-image { width:100%; height:215px; object-fit:contain; padding:20px; display:block; }
.hvn-preview-copy { padding-top:19px; min-height:123px; }
.hvn .hvn-preview h3 { font-size:19px; color:var(--hvn-ink); line-height:1.2; letter-spacing:-.02em; margin:0 0 8px; }
.hvn .hvn-preview p { color:#65727b; font-size:12px; line-height:1.55; margin:0 0 15px; }
.hvn-text-link { display:inline-flex; gap:12px; align-items:center; font-size:12px; font-weight:700; color:#87500b!important; }
.hvn-text-link:hover { text-decoration:underline; text-underline-offset:4px; }
.hvn-application { display:flex; align-items:center; gap:12px; padding:14px 12px; min-height:70px; border:1px solid transparent; border-bottom-color:var(--hvn-line); border-radius:3px; transition:background .15s ease; }
.hvn-application .hvn-link-arrow { color:#9da8af; font-size:15px; }
.hvn-panel-foot { display:flex; align-items:center; flex-wrap:wrap; gap:8px 20px; margin-top:22px; padding:15px 12px 0; border-top:1px solid var(--hvn-line); }
.hvn-panel-foot > span { font-size:12px; color:#64737d; }
.hvn-resource-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.hvn-resource { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; padding:10px 10px 16px; border:1px solid var(--hvn-line); border-radius:4px; transition:border-color .15s ease,box-shadow .15s ease; }
.hvn-resource:hover { border-color:#e0ae6d; box-shadow:0 5px 20px #1c252c09; }
.hvn-resource-image { display:block; grid-column:1 / -1; height:145px; background:var(--hvn-soft); overflow:hidden; border-radius:2px; }
.hvn-resource-image img { display:block; width:100%; height:100%; object-fit:contain; padding:8px; }
.hvn-resource:nth-child(3) .hvn-resource-image img { object-fit:cover; padding:0; }
.hvn-resource > span:not(.hvn-resource-image) { align-self:center; margin-inline:5px; }
.hvn-resource-bottom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid var(--hvn-line); gap:25px; margin-top:23px; padding-top:12px; }
.hvn-toggle { border:1px solid #4a5863; padding:11px 13px; border-radius:3px; color:#fff; background:transparent; align-items:center; gap:11px; font-size:12px!important; cursor:pointer; }
.hvn-toggle-icon { position:relative; width:18px; height:14px; }
.hvn-toggle-icon i { position:absolute; left:0; width:18px; height:2px; background:currentColor; transition:transform .16s ease,top .16s ease; }
.hvn-toggle-icon i:first-child { top:3px; }.hvn-toggle-icon i:last-child { top:10px; }
.hvn[data-mobile-open="true"] .hvn-toggle-icon i:first-child { top:6px; transform:rotate(45deg); }
.hvn[data-mobile-open="true"] .hvn-toggle-icon i:last-child { top:6px; transform:rotate(-45deg); }
.hvn-skip { position:fixed; top:8px; left:12px; z-index:1000; transform:translateY(-160%); background:#fff; color:#142632; padding:12px 18px; border:2px solid #ff9300; font:700 14px Arial,sans-serif; }
.hvn-skip:focus { transform:translateY(0); }
.hvn-breadcrumb { width:min(1280px,calc(100% - 64px)); margin:0 auto; padding:19px 0; font:12px/1.5 Arial,Helvetica,sans-serif; color:#68757e; }
.hvn-breadcrumb ol { list-style:none; display:flex; gap:0; flex-wrap:wrap; align-items:center; padding:0; margin:0; }
.hvn-breadcrumb li { display:flex; align-items:center; min-width:0; }
.hvn-breadcrumb li + li::before { content:"/"; margin:0 11px; color:#adb7bd; }
.hvn-breadcrumb a { color:#68757e; text-decoration:none; }
.hvn-breadcrumb a:hover { color:#87500b; text-decoration:underline; text-underline-offset:4px; }
.hvn-breadcrumb [aria-current="page"] { color:#273640; font-weight:700; }
@media (hover:hover) and (pointer:fine) {
  .hvn-trigger:hover { color:var(--hvn-orange); }
}
@media (max-width:1100px) and (min-width:981px) {
  .hvn-wrap { width:calc(100% - 40px); }.hvn-row { gap:15px; }
  .hvn-brand .hz-wordmark { font-size:21px; }.hvn-brand .hz-brand img { width:55px; }
  .hvn-trigger,.hvn-direct { padding-inline:11px; }.hvn-quote { margin-left:7px; padding-inline:12px; }
  .hvn-panel-inner { grid-template-columns:minmax(0,1fr) 260px; }.hvn-menu-main { padding:24px; }
}
@media (min-width:981px) {
  .hvn-toggle { display:none!important; }
}
@media (max-width:980px) {
  .hvn-wrap { width:calc(100% - 36px); }.hvn-row { min-height:72px; flex-wrap:wrap; gap:0; }
  .hvn-brand .hz-wordmark { font-size:21px; }.hvn-brand .hz-brand img { width:54px; height:32px; }
  .hvn-topbar .hvn-wrap { min-height:29px; }.hvn-topbar span { font-size:8px; letter-spacing:.07em; }.hvn-topbar a { font-size:10px; }
  .hvn[data-hvn-ready="true"] .hvn-toggle { display:flex; margin-left:auto; }
  .hvn-navigation { width:100%; margin:0; flex:0 0 100%; display:flex; flex-direction:column; align-items:stretch; gap:0; padding-bottom:15px; }
  .hvn[data-hvn-ready="true"]:not([data-mobile-open="true"]) .hvn-navigation { display:none; }
  .hvn[data-hvn-ready="true"][data-mobile-open="true"] .hvn-navigation { max-height:calc(100dvh - 112px); overflow-y:auto; overscroll-behavior:contain; }
  .hvn-trigger,.hvn-direct { min-height:55px; padding:0 4px; justify-content:space-between; border-top:1px solid #34414b; font-size:15px; }
  .hvn-trigger::after,.hvn-direct::after { left:4px; right:auto; width:30px; bottom:6px; }
  .hvn-quote { margin:14px 0 0; padding:15px 18px; align-self:stretch; justify-content:space-between; }
  .hvn-panel { position:static; max-height:none; overflow:visible; border:0; border-radius:4px; box-shadow:none; margin-bottom:16px; }
  .hvn-panel-inner { display:block; }.hvn-preview { display:none; }
  .hvn-menu-main { padding:20px 16px; }.hvn-panel-heading { margin-bottom:16px; gap:15px; align-items:center; }
  .hvn .hvn-panel-heading h2 { font-size:21px; }.hvn-overline { font-size:9px; }
  .hvn-product-grid { gap:5px; }.hvn-product { padding:8px; }.hvn-link-image { width:54px; height:54px; flex-basis:54px; }
  .hvn-utility-grid { grid-template-columns:1fr; gap:2px; margin-top:13px; padding-top:9px; }
  .hvn-utility { padding:11px 8px; }.hvn-utility b { font-size:13px; }
  .hvn-resource-grid { gap:10px; }.hvn-resource-image { height:115px; }
  .hvn-resource-bottom { gap:8px; margin-top:15px; padding-top:8px; }
  .hvn-breadcrumb { width:calc(100% - 36px); font-size:11px; padding:15px 0; }
}
@media (max-width:580px) {
  .hvn-topbar .hvn-wrap { justify-content:center; }.hvn-topbar span { display:none; }
  .hvn-brand .hz-brand { gap:9px; }.hvn-brand .hz-wordmark { font-size:19px; }
  .hvn-brand .hz-wordmark small { font-size:8px; }.hvn-brand .hz-brand img { width:48px; height:29px; }
  .hvn-toggle { padding:10px; }.hvn-panel-heading { align-items:flex-start; }
  .hvn .hvn-panel-heading h2 { font-size:19px; }.hvn-overview { font-size:10px; white-space:normal; line-height:1.4; }
  .hvn-product-grid,.hvn-application-grid { grid-template-columns:1fr; }
  .hvn-product { padding:8px 5px; }.hvn-link-image { width:57px; height:57px; flex-basis:57px; }
  .hvn-panel b { font-size:13px; }.hvn-panel small { font-size:11px; }
  .hvn-application { min-height:67px; }.hvn-panel-foot { padding-left:8px; margin-top:13px; }
  .hvn-resource-grid { grid-template-columns:1fr; }.hvn-resource { grid-template-columns:82px minmax(0,1fr) auto; align-items:center; padding:9px; gap:10px; }
  .hvn-resource-image { grid-column:auto; height:80px; }.hvn-resource > span:not(.hvn-resource-image) { margin:0; }
  .hvn-resource-bottom { grid-template-columns:1fr; gap:0; }
}
@media (prefers-reduced-motion:reduce) {
  .hvn *, .hvn *::before, .hvn *::after { transition:none!important; scroll-behavior:auto!important; }
}

/* Reading-language links load no translation scripts or external fonts. */
.hvn-topbar .hvn-contact-tools{display:flex;align-items:center;gap:22px;position:relative}
.ht-language{position:relative;flex-shrink:0;font-size:12px;letter-spacing:0;line-height:1.5}
.hvn .ht-language summary{display:flex;align-items:center;gap:7px;min-height:34px;padding:3px 0;list-style:none;cursor:pointer;color:#dce3e8;font-size:12px;font-weight:400}
.ht-language summary::-webkit-details-marker{display:none}
.hvn .ht-language summary span{display:inline;font-size:11px;letter-spacing:0;font-weight:400}
.hvn .ht-language summary:hover,.hvn .ht-language[open] summary{color:#ff9300}
.hvn .ht-language .ht-current{color:#aab7c0}
.ht-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:120;width:300px;max-width:calc(100vw - 36px);padding:20px;background:#fff;color:#1c252c;border:1px solid #dce3e8;border-top:3px solid #ff9300;border-radius:4px;box-shadow:0 12px 35px #0003}
.hvn .ht-panel .ht-title{margin:0 0 7px;color:#1c252c;font-size:16px;font-weight:700;line-height:1.3}
.hvn .ht-panel .ht-note{margin:0 0 14px;font-size:12px;color:#52616b;line-height:1.5}
.hvn .ht-panel a{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#22333e;font-size:13px;line-height:1.4;min-height:42px;padding:10px;border-radius:3px;white-space:normal;text-decoration:none}
.hvn .ht-panel a:hover{background:#fff3e1;color:#884a00}
.hvn .ht-panel a:focus-visible{outline-offset:0}
.hvn .ht-panel .ht-original{border:1px solid #dde4e8;margin-bottom:9px;background:#f4f6f7}
.ht-original small{font-size:11px;color:#62717b}
.ht-options{display:grid;grid-template-columns:1fr 1fr;gap:2px 6px}
.hvn .ht-options span{display:inline;font-size:13px;letter-spacing:0;font-weight:400;color:#778792}
.hvn .ht-panel .ht-footnote{padding-top:12px;margin:10px 0 0;border-top:1px solid #e3e8eb;font-size:11px;color:#62717b}
@media(max-width:580px){
 .hvn-topbar .hvn-wrap{justify-content:flex-end}
 .hvn-topbar .hvn-contact-tools{width:100%;justify-content:space-between;gap:10px}
 .hvn .ht-language summary{font-size:11px;min-height:35px}
 .hvn .ht-language summary span{display:inline}
 .ht-panel{max-height:calc(100dvh - 80px);overflow:auto}
}
