/* Site menu submenus (inc/site-menu.php, assets/js/site-menu.js), 2026-10-04.
   A wide panel hangs under the header it belongs to: the editorial header and the Journal masthead (dark),
   the fixed bar (glass, light or dark like the bar) and the classic block header (light). */

.oqm-top{display:inline-flex;align-items:center;gap:2px;white-space:nowrap}
.oqm-caret{display:inline-flex;align-items:center;justify-content:center;width:22px;height:28px;margin:0 -6px 0 0;padding:0;background:none;border:0;color:inherit;opacity:.72;cursor:pointer;transition:opacity .2s}
.oqm-caret svg{transition:transform .25s ease}
.oqm-caret:hover,.oqm-caret.is-open{opacity:1}
.oqm-caret.is-open svg{transform:rotate(180deg)}
.oqm-ext{font-size:.85em;opacity:.7}

.oqm-panel{position:absolute;left:4.6%;right:4.6%;top:calc(100% - 10px);z-index:80;box-sizing:border-box;padding:30px 34px 0;
  background:rgba(14,23,28,.99);-webkit-backdrop-filter:blur(20px) saturate(150%);backdrop-filter:blur(20px) saturate(150%);
  border:1px solid rgba(173,196,199,.22);box-shadow:0 30px 70px -20px rgba(0,0,0,.6);color:#e9f1f0;
  font-family:Manrope,Arial,sans-serif;text-align:left;white-space:normal;letter-spacing:0;text-transform:none;
  visibility:hidden;opacity:0;transform:translateY(-8px);pointer-events:none;
  transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s}
.oqm-panel.is-open{visibility:visible;opacity:1;transform:none;pointer-events:auto;transition:opacity .18s ease,transform .18s ease}
.oqm-panel a{color:inherit;text-decoration:none;position:static;padding:0}
.oqm-panel a:after{display:none!important}
.oqm-groups{display:grid;grid-template-columns:repeat(var(--oqm-cols,3),minmax(0,1fr));gap:12px 36px}
.oqm-panel--about{--oqm-cols:2;left:auto;width:min(720px,91%)}
.oqm-h{display:block;margin:0 0 10px;padding-bottom:10px;border-bottom:1px solid rgba(173,196,199,.2);font:500 11px/1.4 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:#8fb0ba}
.oqm-link{display:grid!important;grid-template-columns:26px 1fr;column-gap:10px;padding:11px 10px 11px 0!important;margin:0 -10px 0 0;border-radius:2px;transition:background .15s}
.oqm-link:hover,.oqm-link:focus-visible{background:rgba(185,233,251,.07)}
.oqm-link:hover .oqm-name{color:#b9e9fb}
.oqm-n{grid-row:span 2;padding-top:3px;font:400 11px/1.4 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.08em;color:#6f8f99}
.oqm-name{font-size:15px;font-weight:600;letter-spacing:-.01em;line-height:1.3;transition:color .15s}
.oqm-line{font-size:12.5px;line-height:1.45;color:#a3bcc4;margin-top:2px}
.oqm-panel a[aria-current] .oqm-name{color:#b9e9fb}
.oqm-foot{display:flex;flex-wrap:wrap;gap:8px 28px;margin:18px -34px 0;padding:14px 34px;border-top:1px solid rgba(173,196,199,.18);font:500 11px/1.6 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase}
.oqm-foot a{color:#b9e9fb}
.oqm-foot a:hover{color:#fff}
.oqm-foot a:last-child{margin-left:auto}

/* The section you are in (a device page marks Devices). */
.desktop-nav a[aria-current="true"]:after,.oq-bar nav a[aria-current="true"]:after{transform:scaleX(1)}

/* Fixed bar: the panel follows the glass. */
.oq-bar .oqm-panel{top:100%}
.oq-bar.is-light .oqm-panel{background:rgba(240,243,240,.995);color:#132830;border-color:rgba(19,40,48,.14);box-shadow:0 30px 70px -24px rgba(19,40,48,.35)}
.oq-bar.is-light .oqm-h{color:#5d7781;border-color:rgba(19,40,48,.14)}
.oq-bar.is-light .oqm-line{color:#4d6570}
.oq-bar.is-light .oqm-n{color:#7f949b}
.oq-bar.is-light .oqm-link:hover{background:rgba(0,104,141,.06)}
.oq-bar.is-light .oqm-link:hover .oqm-name,.oq-bar.is-light .oqm-foot a{color:#00688D}
.oq-bar.is-light .oqm-foot{border-color:rgba(19,40,48,.12)}
.oq-bar nav .oqm-top a{padding:6px 0}

/* Classic block header (light). */
.ag-nav .oqm-panel{left:56px;right:56px;top:calc(100% - 4px);background:rgba(255,255,255,.98);color:var(--ink,#132830);border-color:var(--line,rgba(19,40,48,.14));box-shadow:0 30px 70px -28px rgba(19,40,48,.35);border-radius:14px}
.ag-nav .oqm-panel--about{left:auto;width:min(720px,80%)}
.ag-nav .oqm-h{color:var(--ink-3,#5d7781);border-color:var(--line,rgba(19,40,48,.14))}
.ag-nav .oqm-line{color:var(--ink-3,#4d6570)}
.ag-nav .oqm-n{color:#8a9ca3}
.ag-nav .oqm-link:hover{background:rgba(0,104,141,.06)}
.ag-nav .oqm-link:hover .oqm-name,.ag-nav .oqm-foot a,.ag-nav .oqm-panel a[aria-current] .oqm-name{color:var(--blue,#0885B2)}
.ag-nav .oqm-foot{border-color:var(--line,rgba(19,40,48,.12));border-radius:0 0 14px 14px}
.ag-nav .ag-nav__links a[aria-current="true"]{color:var(--ink,#132830)}
.ag-nav .oqm-caret{height:18px}
.oqm-mobile-sub{display:flex;flex-wrap:wrap;gap:4px 16px;padding:0 0 14px 42px;font-size:14px}
.oqm-mobile-sub a{color:inherit;opacity:.75;text-decoration:none;padding:4px 0}

@media (max-width:1100px){
  .oqm-panel{left:4.6%;right:4.6%;top:100%;padding:22px 22px 0}
  .oqm-panel--about{left:4.6%;width:auto}
  .oqm-groups{gap:6px 24px}
  .oqm-foot{margin:14px -22px 0;padding:12px 22px}
}
@media (max-width:760px){
  .oqm-panel{left:4%;right:4%;max-height:calc(100vh - 150px);max-height:calc(100dvh - 150px);overflow-y:auto;overscroll-behavior:contain}
  .oqm-groups,.oqm-panel--about .oqm-groups{grid-template-columns:1fr}
  .oqm-line{display:none}
  .oqm-link{padding:8px 10px 8px 0!important}
  .oqm-n{grid-row:auto;padding-top:2px}
  .oqm-foot a:last-child{margin-left:0}
  .ag-nav .oqm-panel{left:12px;right:12px}
}
@media (prefers-reduced-motion:reduce){.oqm-panel,.oqm-caret svg{transition:none}}

/* Colophon on the editorial templates too (the Journal has the same rules in site.css). */
.oq-colophon{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:40px;padding:90px 4.6% 60px;border-bottom:1px solid #adc4c72c;background:#10191e;color:#c9d9d9}
.oq-colophon .mono{display:block;color:#8fa9af;font-size:11px;margin-bottom:22px}
.oq-colophon__lead p{margin:0;font-size:clamp(30px,2.8vw,44px);line-height:1.05;letter-spacing:-.05em;color:#f1f4ef}
.oq-colophon__lead em{font:italic 400 1.2em/1 'Cormorant Garamond',Georgia,serif;color:#c7e7e6}
.oq-colophon__col a{display:block;padding:7px 0;font-size:14px;color:#c9d9d9;text-decoration:none}
.oq-colophon__col a:hover{color:#b9e9fb}
.oq-colophon__imprint{grid-column:1/-1;margin:30px 0 0;color:#7f9ca6!important;font-size:11px!important}
.oq-colophon__imprint a{color:inherit!important;text-decoration:underline;text-underline-offset:2px}
@media (max-width:1100px){.oq-colophon{grid-template-columns:repeat(2,1fr)}.oq-colophon__lead{grid-column:1/-1}}
@media (max-width:760px){.oq-colophon{grid-template-columns:1fr 1fr;padding:60px 5.5% 40px;gap:30px}}

/* Units keep their case inside capitalised labels (assets/js/reading.js). */
.u-case{text-transform:none!important;letter-spacing:.02em}

/* An open submenu stays above everything that scrolls under the header, the instrument sub-menu included
   (assets/css/instrument-nav.css, z-index 55): its header and the cover that holds it rise while it is open. 2026-10-04. */
body:has(.oqm-panel.is-open) :is(.header,.oq-mast,.ag-nav,.oq-bar,.dv-cover,.mg-cover,.nx-unfolded,.hero,.ca-root,.oq-cover){z-index:95!important}
body:has(.oqm-panel.is-open) .oq-mast{position:relative}

/* Company details in the colophon (inc/site-menu.php), 2026-10-05. */
.oq-legal{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:30px 40px;margin-top:20px;padding-top:40px;border-top:1px solid #adc4c72c}
.oq-legal .mono{margin-bottom:12px!important}
.oq-legal p{margin:0;font-size:15px;line-height:1.6;color:#dfeceb}
.oq-legal small{font-size:12px;color:#8fa9af}
.oq-legal a{color:inherit;text-decoration:none;border-bottom:1px solid #adc4c760}
.oq-legal a:hover{color:#b9e9fb;border-color:#b9e9fb}
.oq-colophon__col .cmplz-show-banner{cursor:pointer}
@media (max-width:1100px){.oq-legal{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.oq-legal{grid-template-columns:1fr;gap:22px}}

/* Complianz "Manage consent" tab: always fully visible and readable, not hidden under the bottom edge. 2026-10-05. */
#cmplz-manage-consent .cmplz-manage-consent{bottom:16px!important;left:16px!important;right:auto!important;top:auto!important;height:auto!important;
  padding:11px 18px!important;border-radius:999px!important;border:1px solid #b9e9fb80!important;background:#10191e!important;color:#f1f4ef!important;
  font:600 13px/1.2 Manrope,Arial,sans-serif!important;letter-spacing:.01em!important;box-shadow:0 8px 24px #0006!important;transform:none!important;
  animation:none!important;opacity:1!important;z-index:9998!important}
#cmplz-manage-consent .cmplz-manage-consent:hover{background:#00688D!important;border-color:#00688D!important}
#cmplz-manage-consent .cmplz-manage-consent:before{content:'';display:inline-block;width:8px;height:8px;margin-right:9px;border-radius:50%;background:#b9e9fb;vertical-align:1px}
@media print{#cmplz-manage-consent{display:none!important}}
@media (max-width:768px){#cmplz-manage-consent .cmplz-manage-consent:not(.cmplz-dismissed){display:block!important;bottom:12px!important;left:12px!important;padding:8px 13px!important;font-size:12px!important}}
/* Cookie settings tab: the dot shows the choice made (assets/js/site-menu.js), 2026-10-05. */
#cmplz-manage-consent .cmplz-manage-consent:before{transition:background .3s,box-shadow .3s}
#cmplz-manage-consent .cmplz-manage-consent[data-consent=all]:before{background:#4fd18b;box-shadow:0 0 8px #4fd18b}
#cmplz-manage-consent .cmplz-manage-consent[data-consent=essential]:before{background:#e0b46a;box-shadow:0 0 8px #e0b46a}
#cmplz-manage-consent .cmplz-manage-consent[data-consent=custom]:before{background:#8fc7dc;box-shadow:0 0 8px #8fc7dc}
#cmplz-manage-consent .cmplz-manage-consent[data-consent=none]:before{background:#9aa9ad}
