/* Header dropdown appearance. Text sizes remain in module-font-sizes.css. */
.frontend-site .site-header .nav-item details { position:relative; }
.frontend-site .site-header .nav-item summary {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    transition:color .2s ease,background-color .2s ease;
}
.frontend-site .site-header .nav-item summary::after {
    content:'';
    display:block;
    width:7px;
    height:7px;
    flex-shrink:0;
    margin:0 2px 4px 0;
    border:2px solid currentColor;
    border-left:0;
    border-top:0;
    transform:rotate(45deg);
    transition:transform .2s ease;
}
.frontend-site .site-header .nav-item details[open]>summary { color:var(--yellow); }
.frontend-site .site-header .nav-item details[open]>summary::after { transform:translateY(3px) rotate(225deg); }
.frontend-site .site-header .dropdown {
    position:absolute;
    top:100%;
    z-index:30;
    width:290px;
    min-width:0;
    max-width:calc(100vw - var(--site-gutter,24px) * 2);
    max-height:min(65vh,520px);
    overflow-y:auto;
    margin:0;
    padding:10px;
    background:#fff;
    color:#173342;
    border:1px solid #17334212;
    border-top:3px solid var(--yellow);
    border-radius:12px;
    box-shadow:0 18px 48px #102d3b29,0 3px 10px #102d3b0d;
    scrollbar-width:thin;
}
.frontend-site .site-header details[open]>.dropdown { animation:header-dropdown-reveal .18s ease-out; }
.frontend-site .site-header .dropdown a {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    min-height:46px;
    padding:12px 14px;
    border-radius:7px;
    font-weight:500;
    line-height:1.5;
    white-space:normal;
    overflow-wrap:anywhere;
    text-decoration:none;
    transition:background-color .18s ease,color .18s ease;
}
.frontend-site .site-header .dropdown a+a { margin-top:3px; }
.frontend-site .site-header .dropdown a::after {
    content:'\2192';
    flex-shrink:0;
    color:#8c9ca3;
    transition:color .18s ease,transform .18s ease;
}
.frontend-site .site-header .dropdown a:hover,
.frontend-site .site-header .dropdown a:focus-visible,
.frontend-site .site-header .dropdown a[aria-current=page] { color:#173342; background:#fff3c4; }
.frontend-site .site-header .dropdown a:hover::after,
.frontend-site .site-header .dropdown a:focus-visible::after,
.frontend-site .site-header .dropdown a[aria-current=page]::after { color:#173342; transform:translateX(3px); }
.frontend-site .site-header .dropdown a:focus-visible { outline:2px solid #b28300; outline-offset:-2px; }
@keyframes header-dropdown-reveal { from{opacity:0;transform:translateY(6px)} to{opacity:1;transform:translateY(0)} }
@media(max-width:1400px) {
    .frontend-site .site-header .header-menu { padding:14px; background:#fff; border:1px solid #17334212; border-radius:14px; box-shadow:0 18px 48px #102d3b33; }
    .frontend-site .site-header .nav-item+.nav-item { border-top:1px solid #1733420c; }
    .frontend-site .site-header .nav-item summary,
    .frontend-site .site-header .nav-item>a { padding:13px 12px; border-radius:7px; }
    .frontend-site .site-header .nav-item details[open]>summary { color:#173342; background:#fff3c4; }
    .frontend-site .site-header .dropdown { position:static; width:auto; max-width:100%; max-height:45vh; padding:6px; margin:6px 0 12px; border:1px solid #1733420c; border-left:3px solid var(--yellow); border-radius:8px; background:#f7f9fa; box-shadow:none; }
    .frontend-site .site-header .dropdown a { padding:11px 12px; }
    .frontend-site .site-header .header-actions { padding:4px 12px 8px; }
}
@media(prefers-reduced-motion:reduce) {
    .frontend-site .site-header details[open]>.dropdown { animation:none; }
    .frontend-site .site-header .nav-item summary,
    .frontend-site .site-header .nav-item summary::after,
    .frontend-site .site-header .dropdown a,
    .frontend-site .site-header .dropdown a::after { transition:none; }
}
