/* DART header — black and white, Poppins. */

/* Hide the theme's header only when ours is on the page. */
.dartc-header ~ .site-header,
.dartc-header ~ header.site-header { display: none !important; }
.dartc-header ~ .site-main { padding-top: 0 !important; }

.dartc-header {
	--h: 72px;
	--ink: #0a0a0a;
	--mute: #6b6b6b;
	--line: #e6e6e6;
	position: sticky; top: 0; z-index: 1000;
	background: rgba(255, 255, 255, .92);
	-webkit-backdrop-filter: saturate(160%) blur(14px);
	backdrop-filter: saturate(160%) blur(14px);
	border-bottom: 1px solid var(--line);
	font-family: 'Poppins', system-ui, -apple-system, 'Segoe UI', sans-serif;
	color: var(--ink);
	transition: box-shadow .25s ease;
}
.admin-bar .dartc-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .dartc-header { top: 46px; } }
.dartc-header.is-scrolled { box-shadow: 0 6px 24px rgba(0, 0, 0, .06); }
.dartc-header *, .dartc-header *::before, .dartc-header *::after { box-sizing: border-box; }
.dartc-header a { color: inherit; text-decoration: none; }
.dartc-header ul { list-style: none; margin: 0; padding: 0; }
.dartc-header button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; margin: 0; }

.dartc-header__bar {
	max-width: 1280px; margin: 0 auto; padding: 0 28px; height: var(--h);
	display: flex; align-items: center; gap: 28px;
}

/* Brand: the DART wordmark */
.dartc-brand { flex-shrink: 0; display: flex; align-items: center; }
.dartc-header .custom-logo-link { display: inline-flex; align-items: center; margin: 0; }
.dartc-header .wordmark { display: inline-flex; flex-direction: column; align-items: flex-start; gap: 3px; margin: 0; text-decoration: none; color: var(--ink); }
.dartc-header .wordmark__dart { font-family: var(--serif, 'Cormorant Garamond', 'Playfair Display', Georgia, 'Times New Roman', serif); font-weight: 500; font-size: 26px; letter-spacing: .02em; line-height: 1; }
.dartc-header .wordmark__sub { font-family: 'Poppins', system-ui, sans-serif; font-weight: 700; font-size: 11.5px; line-height: 1.1; letter-spacing: .01em; color: var(--ink); white-space: nowrap; }
.dartc-header .custom-logo { max-height: 38px; width: auto; }

/* Desktop nav */
.dartc-hnav { flex: 1; display: flex; justify-content: center; }
.dartc-hnav__list { display: flex; align-items: center; gap: 4px; }
.dartc-hnav__item { position: relative; }
.dartc-hnav__link {
	display: inline-flex; align-items: center; gap: 7px; height: 40px; padding: 0 14px; border-radius: 999px;
	font-size: 14.5px; font-weight: 500; white-space: nowrap; color: #2b2b2b; transition: background .15s, color .15s;
}
.dartc-hnav__link:hover, .dartc-hnav__item.is-open > .dartc-hnav__link { background: #f2f2f2; color: var(--ink); }
.dartc-hnav__link[aria-current="page"], .dartc-hnav__item.is-current > .dartc-hnav__link { color: var(--ink); font-weight: 600; }
.dartc-hnav__link svg { transition: transform .2s; }
.dartc-hnav__item.is-open svg { transform: rotate(180deg); }

/* Dropdowns */
.dartc-dd {
	position: absolute; top: calc(100% + 10px); left: 50%; transform: translate(-50%, 6px);
	min-width: 300px; background: #fff; border: 1px solid var(--line); border-radius: 14px;
	box-shadow: 0 18px 48px rgba(0, 0, 0, .12); padding: 8px;
	opacity: 0; visibility: hidden; transition: opacity .16s ease, transform .16s ease, visibility .16s;
}
.dartc-dd::before { content: ''; position: absolute; left: 0; right: 0; top: -12px; height: 12px; }
.dartc-dd--right { left: auto; right: 0; transform: translate(0, 6px); min-width: 210px; }
.is-open > .dartc-dd { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.is-open > .dartc-dd--right { transform: translate(0, 0); }
.dartc-dd a { display: block; padding: 10px 14px; border-radius: 10px; }
.dartc-dd a:hover, .dartc-dd a:focus-visible, .dartc-dd a[aria-current="page"] { background: #f4f4f4; }
.dartc-dd strong { display: block; font-size: 14.5px; font-weight: 600; }
.dartc-dd span { display: block; font-size: 12.5px; color: var(--mute); margin-top: 2px; }
.dartc-dd__sep { border-top: 1px solid var(--line); margin-top: 6px; padding-top: 6px; }

/* Actions */
.dartc-hact { display: flex; align-items: center; gap: 10px; flex-shrink: 0; margin-left: auto; }
.dartc-hact__link { font-size: 14.5px; font-weight: 500; padding: 0 10px; height: 40px; display: inline-flex; align-items: center; border-radius: 999px; white-space: nowrap; }
.dartc-hact__link:hover { background: #f2f2f2; }
.dartc-hbtn {
	display: inline-flex; align-items: center; justify-content: center; height: 40px; padding: 0 18px; border-radius: 999px;
	font-size: 14.5px; font-weight: 600; white-space: nowrap; border: 1.5px solid var(--ink); transition: background .15s, color .15s;
}
.dartc-header .dartc-hbtn--solid { background: var(--ink); color: #fff; }
.dartc-header .dartc-hbtn--solid:hover { background: #333; border-color: #333; }
.dartc-header .dartc-hbtn--line:hover { background: var(--ink); color: #fff; }

.dartc-acct { position: relative; }
.dartc-acct__btn { display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 10px 0 4px; border-radius: 999px; border: 1px solid var(--line) !important; }
.dartc-acct__btn:hover, .dartc-acct.is-open .dartc-acct__btn { background: #f4f4f4; }
.dartc-avatar { width: 32px; height: 32px; border-radius: 50%; background: var(--ink); color: #fff; display: grid; place-items: center; font-weight: 700; font-size: 14px; }
.dartc-acct__name { font-size: 14px; font-weight: 600; max-width: 120px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* Burger + drawer */
.dartc-burger { display: none; width: 44px; height: 44px; border-radius: 999px; align-items: center; justify-content: center; }
.dartc-burger:hover { background: #f2f2f2; }
.dartc-burger__icon { display: grid; gap: 6px; width: 20px; }
.dartc-burger__icon span { display: block; height: 2px; background: var(--ink); border-radius: 2px; transition: transform .25s; }
.dartc-burger[aria-expanded="true"] .dartc-burger__icon span:first-child { transform: translateY(4px) rotate(45deg); }
.dartc-burger[aria-expanded="true"] .dartc-burger__icon span:last-child { transform: translateY(-4px) rotate(-45deg); }

.dartc-drawer { position: fixed; left: 0; right: 0; bottom: 0; top: var(--h); background: #fff; overflow-y: auto; border-top: 1px solid var(--line); }
.admin-bar .dartc-drawer { top: calc(var(--h) + 46px); }
.dartc-drawer[hidden] { display: none; }
.dartc-drawer__inner { padding: 20px 24px 40px; max-width: 640px; margin: 0 auto; }
.dartc-drawer__group { padding: 12px 0 16px; border-bottom: 1px solid var(--line); }
.dartc-drawer__label { display: block; font-size: 11.5px; font-weight: 600; text-transform: uppercase; letter-spacing: .12em; color: var(--mute); margin: 6px 0 6px; }
.dartc-drawer__link { display: block; padding: 10px 0; font-size: 17px; font-weight: 600; }
.dartc-drawer__link span { display: block; font-size: 13px; font-weight: 400; color: var(--mute); }
.dartc-drawer__link--big { font-size: 20px; }
.dartc-drawer__foot { display: grid; gap: 10px; padding-top: 22px; }
.dartc-drawer__foot .dartc-hbtn { height: 50px; font-size: 16px; }
body.dartc-drawer-open { overflow: hidden; }
/* backdrop-filter would trap the fixed drawer inside the bar */
.dartc-header.is-menu-open { -webkit-backdrop-filter: none; backdrop-filter: none; background: #fff; }

.dartc-header .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); }

@media (max-width: 1080px) {
	.dartc-hnav, .dartc-hact__link, .dartc-hact .dartc-hbtn--line, .dartc-acct__name { display: none; }
	.dartc-burger { display: inline-flex; }
	.dartc-header__bar { padding: 0 16px 0 20px; gap: 12px; }
}
@media (max-width: 480px) {
	.dartc-header { --h: 64px; }
	.dartc-hact .dartc-hbtn--solid { height: 38px; padding: 0 14px; }
}
