/* Shared header additions: Services dropdown + cart link (markup identical on every page). */
nav.primary{position:relative}
nav.primary .has-sub{position:relative}
nav.primary .has-sub>button{appearance:none;background:none;border:0;padding:6px 0;font:inherit;font-weight:600;font-size:.9rem;color:var(--rc-navy);cursor:pointer;border-bottom:2px solid transparent;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
nav.primary .has-sub>button svg{width:12px;height:12px;transition:transform .15s}
nav.primary .has-sub>button:hover,nav.primary .has-sub.open>button,nav.primary .has-sub>button[aria-current="true"]{border-color:var(--rc-gold)}
nav.primary .has-sub.open>button svg{transform:rotate(180deg)}
nav.primary .sub{position:absolute;top:calc(100% + 8px);left:-14px;min-width:250px;background:#fff;border:1px solid var(--rc-sand);border-radius:8px;box-shadow:0 18px 40px -22px rgba(27,42,74,.5);padding:8px;display:none;z-index:50}
nav.primary .sub::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}  /* bridges the gap under the button so the menu does not close on the way down */
nav.primary .has-sub.open .sub{display:block}
nav.primary .sub a{display:block;padding:10px 12px;border:0;border-radius:6px;font-size:.9rem;white-space:nowrap}
nav.primary .sub a:hover,nav.primary .sub a:focus{background:var(--rc-cream);border:0}
nav.primary .sub a[aria-current="page"]{background:var(--rc-cream);border:0;color:var(--rc-gold-t)}
nav.primary .sub .sub-h{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:#58616e;padding:8px 12px 4px;font-weight:700}
.head-actions .cart-link{position:relative;display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:var(--rc-navy);font-weight:600;font-size:.9rem;padding:8px 6px;border-radius:6px}
.head-actions .cart-link:hover{background:rgba(27,42,74,.06)}
.head-actions .cart-link svg{width:22px;height:22px}
.head-actions .cart-link .n{position:absolute;top:0;right:-2px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--rc-gold);color:#fff;font-size:.72rem;font-weight:700;line-height:18px;text-align:center}
.head-actions .cart-link .n[hidden]{display:none}
.head-actions .cart-link .lbl{display:none}
@media(min-width:1180px){.head-actions .cart-link .lbl{display:inline}}
.mobile-menu .group{padding:10px 24px 4px;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:#58616e;font-weight:700;border-bottom:0}
.mobile-menu a.sub{padding-left:40px;font-weight:500}
