.op-desktop-menu { display:none; }
@media (min-width:1024px) {
    .op-desktop-menu { display:block; }
    .op-menu-nav { position:relative; }
    .op-menu-nav .op-menu-list { gap:24px; width:100%; }
    .op-menu-nav .op-menu-item { position:static; }
    .op-menu-entry { display:flex; align-items:center; min-height:44px; }
    .op-menu-entry > a { display:flex; align-items:center; min-height:44px!important; padding-block:8px; white-space:nowrap; }
    .op-menu-entry > a[aria-current="page"] { color:var(--op-blue,#176bce)!important; font-weight:600; }
    .op-menu-toggle { display:grid; place-items:center; width:30px; height:36px; color:var(--op-blue,#176bce); border:0; background:transparent; cursor:pointer; border-radius:5px; }
    .op-menu-toggle svg { transition:transform 160ms ease; }
    .op-menu-toggle[aria-expanded="true"] svg { transform:rotate(180deg); }
    .op-mega { position:absolute; inset-inline:0; top:100%; display:grid; grid-template-columns:248px minmax(0,1fr); min-height:min(280px,calc(100dvh - var(--op-header-offset,142px) - 12px)); max-height:calc(100dvh - var(--op-header-offset,142px) - 12px); background:#fff; border:1px solid #e3e9ee; border-top:2px solid var(--op-blue,#176bce); border-radius:0 0 14px 14px; box-shadow:0 22px 45px #122b4321; overflow:hidden; z-index:40; text-align:right; }
    .op-mega[hidden],.op-mega [hidden] { display:none!important; }
    .op-mega-tabs { display:flex; flex-direction:column; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:16px 0; background:#f5f8fc; border-inline-end:1px solid #e5ebf3; }
    .op-mega-tab { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:61px; padding:14px 22px; border:0; border-inline-start:3px solid transparent; background:transparent; color:#35465a; font:inherit; font-size:13px; font-weight:600; text-align:right; cursor:pointer; transition:none; }
    .op-mega-tab[aria-selected="true"] { color:#fff; background:var(--op-blue,#176bce); border-inline-start-color:#124f99; }
    .op-mega-tab span { font-size:22px; font-weight:400; }
    .op-mega .op-mega-all { display:flex; flex-shrink:0; align-items:center; justify-content:space-between; gap:10px; margin-top:auto; padding:20px 25px 8px; color:var(--op-blue,#176bce)!important; font-size:12px!important; }
    .op-mega-content { min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:27px 32px 30px; }
    .op-mega-heading { display:flex; align-items:baseline; justify-content:space-between; gap:20px; padding-bottom:19px; margin-bottom:10px; border-bottom:1px solid #edf0f4; }
    .op-mega-heading h2 { margin:0; font-size:15px; font-weight:700; color:#172a3a; }
    .op-mega-heading > span { font-size:11px; color:#788592; }
    .op-mega-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:26px; row-gap:4px; list-style:none; margin:0; padding:0; }
    .op-store .op-header .op-mega-links a,.op-mega-links a { display:flex; align-items:center; gap:12px; min-height:58px; padding:9px 6px; border-radius:6px; color:#435363; font-size:13px; line-height:1.7; transition:color 160ms ease,background 160ms ease; }
    .op-store .op-header .op-mega-links a:hover,.op-mega-links a:hover { background:#f2f7fd; color:var(--op-blue,#176bce); }
    .op-store .op-header .op-mega-brands img,.op-mega-brands img { display:block; width:58px; height:38px; object-fit:contain; mix-blend-mode:multiply; }
    .op-mega-brand-mark { display:grid; place-items:center; width:58px; height:38px; color:#778796; font-size:23px; }
    .op-mega-arrow { margin-inline-start:auto; color:#a0adbb; font-size:21px; }
    .op-menu-nav :is(a,button,[role="tabpanel"]):focus-visible { outline:2px solid #176bce; outline-offset:3px; }
    .op-mega-tab[aria-selected="true"]:focus-visible { outline-color:#162e49; outline-offset:-4px; }
}
@media (min-width:1024px) and (max-width:1199px) {
    .op-menu-nav .op-menu-list { gap:17px; }
    .op-mega { grid-template-columns:220px minmax(0,1fr); }
    .op-mega-content { padding:24px; }
    .op-mega-links { column-gap:16px; }
    .op-mega-links a { font-size:12px; }
}
@media (prefers-reduced-motion:reduce) {
    .op-menu-toggle svg,.op-mega-tab,.op-mega-links a { transition:none; }
}

.op-mega-tab > svg { flex-shrink:0; }

/* Storefront mega menu: calm sidebar and compact, clearly clickable entries. */
@media(min-width:1024px) {
    .op-mega { grid-template-columns:224px minmax(0,1fr); border:1px solid #dfe8ed; border-radius:0 0 16px 16px; box-shadow:0 18px 42px #172f431a; }
    .op-mega-tabs { padding:18px 12px 14px; gap:8px; background:#f7f9fa; border-inline-end:1px solid #e7edf0; }
    .op-mega-tab { min-height:58px; padding:12px; border:1px solid transparent; border-radius:10px; font-size:12px; color:#475a66; transition:background .18s,border-color .18s,color .18s; }
    .op-mega-tab .op-mega-tab-label { display:flex; align-items:center; gap:10px; font:inherit; }
    .op-mega-tab-label svg { flex-shrink:0; opacity:.8; }
    .op-mega-tab:hover { background:#edf3f6; }
    .op-mega-tab[aria-selected="true"] { color:#066d96; background:#e4f0f6; border-color:#c5e0ed; box-shadow:inset -3px 0 0 var(--op-blue); }
    .op-mega-tab[aria-selected="true"]:focus-visible { outline-color:var(--op-blue); }
    .op-mega .op-mega-all { margin:24px 0 0; margin-top:auto; padding:16px 12px 4px; min-height:48px; line-height:1.8; }
    .op-mega-content { padding:22px 24px 24px; }
    .op-mega-heading { align-items:center; margin-bottom:18px; padding-bottom:16px; }
    .op-mega-heading h2 { font-size:15px; font-weight:600; }
    .op-mega-links { gap:12px; }
    .op-mega-brands { grid-template-columns:repeat(4,minmax(0,1fr)); }
    .op-store .op-header .op-mega-links a,.op-mega-links a { min-height:72px; height:100%; gap:10px; padding:10px 12px; border:0; border-radius:10px; background:#fff; font-size:12px; line-height:1.85; transition:background .18s,box-shadow .18s,color .18s; }
    .op-store .op-header .op-mega-links a:hover,.op-mega-links a:hover { background:#f6fafc; border-color:#bdd9e6; box-shadow:0 3px 10px #153b5010; color:#066d96; }
    .op-mega-logo { display:grid; place-items:center; flex-shrink:0; width:48px; height:46px; border-radius:8px; background:#f3f7f9; }
    .op-store .op-header .op-mega-brands img,.op-mega-brands img { display:block; width:38px; height:30px; }
    .op-mega-brand-mark { width:38px; height:30px; font-size:17px; color:#6a8594; }
    .op-mega-arrow { display:flex; align-items:center; flex-shrink:0; color:#9bb0bc; transition:color .18s,transform .18s; }
    .op-mega-links a:hover .op-mega-arrow { color:var(--op-blue); transform:translateX(-3px); }
    .op-menu-entry:hover > a { color:var(--op-blue)!important; }
    .op-menu-toggle:hover { background:#eaf3f7; }
}
@media(min-width:1024px) and (max-width:1279px) {
    .op-mega { grid-template-columns:208px minmax(0,1fr); }
    .op-mega-brands { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .op-mega-content { padding:20px; }
}
@media(prefers-reduced-motion:reduce) {
    .op-mega-arrow { transition:none; }
    .op-mega-links a:hover .op-mega-arrow { transform:none; }
}

/* Full-screen mobile navigation with a fixed right-hand menu. */
.op-mobile-menu { display:none; }
@media(max-width:1023px) {
    html.op-mobile-menu-open,html.op-mobile-menu-open body { overflow:hidden; }
    .op-mobile-menu[open] { display:flex; flex-direction:column; position:fixed; inset:0; width:100%; max-width:none; height:100dvh; max-height:none; margin:0; padding:0; border:0; background:#fff; color:var(--op-ink); overflow:hidden; }
    .op-mobile-menu::backdrop { background:#fff; }
    .op-mobile-menu-header { display:flex; align-items:center; justify-content:space-between; flex-shrink:0; min-height:64px; padding:calc(8px + env(safe-area-inset-top)) 18px 8px; border-bottom:1px solid var(--op-line); }
    .op-mobile-menu-header h2 { font-size:16px; font-weight:600; margin:0; }
    .op-mobile-menu-header button { display:grid; place-items:center; width:44px; height:44px; border:0; border-radius:50%; background:#f0f5f7; color:var(--op-ink); }
    .op-mobile-menu-body { display:grid; grid-template-columns:112px minmax(0,1fr); flex:1; min-height:0; }
    .op-mobile-menu-sidebar { display:flex; flex-direction:column; gap:6px; padding:16px 8px calc(16px + env(safe-area-inset-bottom)); background:#f4f7f9; border-inline-end:1px solid #e4ecf0; overflow-y:auto; overscroll-behavior:contain; }
    .op-mobile-menu-entry { display:flex; align-items:center; justify-content:space-between; gap:5px; flex-shrink:0; min-height:54px; padding:10px 9px; border:1px solid transparent; border-radius:9px; background:transparent; color:#435966; font:inherit; font-size:12px; line-height:1.85; text-align:right; overflow-wrap:anywhere; }
    .op-mobile-menu-entry svg { flex-shrink:0; }
    .op-mobile-menu-entry[aria-expanded="true"] { background:#e0eff6; border-color:#c7e1ed; color:#066d96; font-weight:600; }
    .op-mobile-menu-content { overflow-y:auto; overscroll-behavior:contain; padding:18px 14px calc(24px + env(safe-area-inset-bottom)); }
    .op-mobile-menu-panel[hidden] { display:none; }
    .op-mobile-menu-panel-heading { display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding-bottom:18px; border-bottom:1px solid var(--op-line); }
    .op-mobile-menu-panel-heading h3 { margin:0; font-size:18px; font-weight:600; }
    .op-mobile-menu-panel-heading a { display:flex; align-items:center; gap:12px; min-height:32px; font-size:12px; color:var(--op-blue); }
    .op-mobile-menu-panel-heading .op-icon { width:16px; height:16px; }
    .op-mobile-menu-group { margin-top:22px; }
    .op-mobile-menu-group h4 { margin:0 0 12px; font-size:13px; font-weight:600; }
    .op-mobile-menu-brands { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    .op-mobile-menu-brands a { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:8px; min-height:84px; padding:10px 4px; border-radius:10px; background:#f4f8fa; color:#425a68; font-size:11px; line-height:1.8; text-align:center; }
    .op-mobile-menu-brands img { width:44px; height:30px; object-fit:contain; mix-blend-mode:multiply; }
    .op-mobile-menu-category-links { display:flex; flex-direction:column; }
    .op-mobile-menu-category-links a { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:48px; padding:10px 0; border-bottom:1px solid #edf2f5; font-size:12px; line-height:1.9; color:#435966; }
    .op-mobile-menu-category-links .op-icon { width:16px; height:16px; color:var(--op-blue); }
    .op-mobile-menu a:active,.op-mobile-menu-entry:active { background:#e5f0f5; }
    .op-mobile-menu :is(a,button):focus-visible { outline:2px solid var(--op-blue); outline-offset:2px; }
}
@media(max-width:359px) {
    .op-mobile-menu-body { grid-template-columns:98px minmax(0,1fr); }
    .op-mobile-menu-content { padding-inline:10px; }
    .op-mobile-menu-entry { font-size:11px; padding-inline:7px; }
}

@media(max-width:1023px) {
    .op-mobile-menu-accordion { margin-top:12px; border-bottom:1px solid #e7eef2; }
    .op-mobile-menu-accordion summary { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:58px; padding:12px 4px; color:#344f5e; font-size:13px; font-weight:600; line-height:1.9; cursor:pointer; list-style:none; }
    .op-mobile-menu-accordion summary::-webkit-details-marker { display:none; }
    .op-mobile-menu-accordion summary svg { flex-shrink:0; color:var(--op-blue); transition:transform .18s ease; }
    .op-mobile-menu-accordion[open] summary { color:var(--op-blue); }
    .op-mobile-menu-accordion[open] summary svg { transform:rotate(180deg); }
    .op-mobile-menu-accordion > .op-mobile-menu-brands,.op-mobile-menu-accordion > .op-mobile-menu-category-links { padding-bottom:14px; }
    .op-mobile-menu-accordion summary:focus-visible { outline:2px solid var(--op-blue); outline-offset:2px; }
}
@media(prefers-reduced-motion:reduce) {
    .op-mobile-menu-accordion summary svg { transition:none; }
}

.op-mobile-menu:focus { outline:none; }

@media(min-width:1024px) {
    .op-menu-nav .op-menu-list { gap:26px; }
    .op-store .op-header .op-menu-entry > a { color:#657986; font-size:12px; font-weight:500; }
    .op-store .op-header .op-menu-entry > a[aria-current=page] { color:var(--op-blue)!important; font-weight:600; }
    .op-store .op-header .op-menu-entry > a:hover { color:var(--op-blue); }
    .op-menu-entry .op-menu-toggle { width:28px; min-height:44px; color:#81939d; }
    .op-menu-entry .op-menu-toggle[aria-expanded=true] { color:var(--op-blue); }
    .op-menu-entry .op-menu-toggle svg { width:13px; height:13px; }
}
@media(min-width:1024px) and (max-width:1199px) {
    .op-menu-nav .op-menu-list { gap:18px; }
}

/* Slightly stronger navigation text using the installed Medium font face. */
.op-store .op-header .op-mega-links a,
.op-mobile-menu-entry,
.op-mobile-menu-brands a,
.op-mobile-menu-category-links a { font-weight:500; }
