/* Header, top bar, navigation, mega menu */
.topbar{background:var(--dark);color:var(--on-dark-muted);font-size:.8rem}
.topbar__inner{display:flex;justify-content:space-between;align-items:center;height:40px;flex-wrap:wrap}
.topbar a{color:var(--on-dark-muted);margin-right:1.25rem}
.topbar a:hover{color:var(--primary)}
.topbar .ic{color:var(--primary);margin-right:.3rem}
.topbar__meta{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.05em}

.site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--border);box-shadow:var(--sh-sm);transition:transform .35s ease, box-shadow var(--t)}
.site-header.scrolled{box-shadow:var(--sh-md)}
/* Homepage: when the gold trust bar pins to the top, the navbar slides up out of view */
body.gb-stuck .site-header{transform:translateY(-105%)}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;min-height:var(--header-h);gap:1rem}
.brand{display:flex;align-items:center;gap:.65rem}
.brand__logo{height:46px;width:auto}
.brand__text{display:flex;flex-direction:column;line-height:1;font-family:var(--font-head)}
.brand__text strong{font-size:1.75rem;color:var(--text-heading);font-weight:800;letter-spacing:-.01em;text-transform:uppercase;line-height:1}
.brand__text small{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-text);font-family:var(--font-mono)}

.main-nav{display:flex;align-items:center}
.nav-list{display:flex;align-items:center;gap:.1rem;list-style:none;margin:0;padding:0}
.nav-item{position:relative}
.nav-link{display:block;padding:.6rem .5rem;font-family:var(--font-head);font-weight:400;font-size:.875rem;color:var(--text-heading);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
@media(min-width:769px) and (max-width:1080px){.nav-list{gap:0}.nav-link{font-size:.8rem;padding:.5rem .35rem}}
.nav-link:hover,.nav-link.is-active{color:var(--primary)}
.caret{font-size:.7rem;color:var(--text-muted)}
.nav-item--cta-mobile{display:none}
.header-cta{white-space:nowrap}
.nav-close{display:none}

.mega{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%) translateY(8px);background:#fff;border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--sh-lg);padding:1.75rem;display:grid;grid-template-columns:repeat(3,minmax(170px,1fr));gap:1.75rem;min-width:640px;opacity:0;visibility:hidden;transition:all var(--t);z-index:120}
.has-mega:hover .mega{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.mega__title{display:block;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;color:var(--text-muted);margin-bottom:.85rem;font-weight:600}
.mega__col a{display:block;padding:.35rem 0;font-weight:500;color:var(--text-body);font-size:.92rem}
.mega__col a:hover{color:var(--accent-text);padding-left:.25rem}
.mega__col--cta{background:var(--surface);border-radius:var(--r-md);padding:1.25rem;margin:-.5rem}
.mega__col--cta p{font-size:.85rem;color:var(--text-muted)}

.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:6px}
.nav-toggle span{width:26px;height:2px;background:var(--text-heading);transition:var(--t)}

/* Products mega-menu (category list + product flyouts) */
.mega--products{left:0;transform:none;top:calc(100% + 8px);min-width:0;width:288px;padding:.5rem 0;display:block;grid-template-columns:none;max-height:calc(100vh - 120px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}
.has-mega:hover .mega--products{transform:none}
/* slim scrollbar */
.mega--products::-webkit-scrollbar{width:8px}
.mega--products::-webkit-scrollbar-thumb{background:#d8d8d8;border-radius:8px}
.mega--products::-webkit-scrollbar-thumb:hover{background:var(--primary)}
.mega-cat{position:relative}
.mega-cat__label{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem 1.3rem;font-family:var(--font-head);font-weight:600;text-transform:uppercase;letter-spacing:.02em;font-size:.82rem;color:var(--text-body);transition:background .15s,color .15s}
.mega-cat__label--all{font-weight:700;color:var(--accent-text);border-bottom:1px solid var(--border);margin-bottom:.3rem;padding-top:.7rem;padding-bottom:.7rem}
.mega-cat:hover>.mega-cat__label,.mega-cat__label--all:hover{background:var(--surface);color:var(--accent-text)}
.mega-cat__caret{color:var(--text-muted);font-size:1.05rem;line-height:1;transition:transform .15s,color .15s}
.mega-cat:hover .mega-cat__caret{transform:translateX(3px);color:var(--accent-text)}
.mega-cat__sub{position:fixed;min-width:238px;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--sh-lg);padding:.55rem 0;opacity:0;visibility:hidden;transition:opacity .18s,visibility .18s;z-index:200;overflow-y:auto;overscroll-behavior:contain}
.mega-cat:hover>.mega-cat__sub{opacity:1;visibility:visible}
.mega-cat__sub-title{display:block;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;font-size:.66rem;color:var(--text-muted);padding:.3rem 1.2rem .55rem;border-bottom:1px solid var(--border);margin-bottom:.3rem}
.mega-cat__sub a{display:block;padding:.42rem 1.2rem;font-family:var(--font-head);text-transform:uppercase;letter-spacing:.04em;font-size:.84rem;color:var(--text-body);font-weight:400}
.mega-cat__sub a:hover{background:var(--surface);color:var(--accent-text);padding-left:1.45rem}

/* Simple nav dropdown (Services -> Expedited Services) */
.has-dropdown{position:relative}
.nav-dropdown{position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%) translateY(8px);background:#fff;border:1px solid var(--primary);border-radius:6px;box-shadow:var(--sh-lg);padding:.4rem 0;min-width:210px;opacity:0;visibility:hidden;transition:opacity .18s,visibility .18s,transform .18s;z-index:130}
.has-dropdown:hover .nav-dropdown,.has-dropdown:focus-within .nav-dropdown{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.nav-dropdown__link{display:block;padding:.6rem 1.2rem;font-family:var(--font-head);font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.82rem;color:var(--text-body);white-space:nowrap;transition:background .15s,color .15s,padding .15s}
.nav-dropdown__link:hover,.nav-dropdown__link.is-active{background:var(--surface);color:var(--accent-text);padding-left:1.45rem}
