.site-header {
	position: relative;
	z-index: 100;
	display: flex;
	align-items: center;
	height: 114px;
	background: var(--color-bg-white);
	padding: 0;
}

.site-header__inner {
	display: flex;
	align-items: center;
	gap: 0;
	width: min(calc(100% - 86px), 1372px);
	max-width: none;
	height: 56px;
	min-height: 56px;
}

.site-branding {
	flex: 0 0 245px;
}

.site-branding__link {
	display: flex;
	align-items: center;
	gap: 7px;
	color: var(--color-text-primary);
	line-height: 1;
	text-decoration: none;
}

.site-branding__link:hover {
	text-decoration: none;
}

.site-branding__deloitte {
	display: block;
	width: 127px;
	height: 39px;
	overflow: hidden;
}

.site-branding__deloitte img {
	width: 292px;
	height: 39px;
	max-width: none;
	object-fit: fill;
}

.site-branding__product {
	display: flex;
	align-items: center;
	width: 111px;
	height: 32px;
	padding: 0 8px 0 17px;
	border-radius: 5px;
	background: linear-gradient(90deg, #86bc25 0 5px, #000 5px 100%);
	color: var(--color-text-inverse);
	font-family: var(--font-family-ja);
	font-size: 15px;
	font-weight: 900;
	line-height: 2;
}

.custom-logo-link,
.custom-logo {
	display: block;
}

.custom-logo {
	width: auto;
	max-width: 210px;
	max-height: 48px;
}

.primary-navigation {
	margin-left: auto;
	flex: 0 0 510px;
}

.primary-navigation__list,
.audience-navigation__list {
	display: flex;
	align-items: center;
	padding: 0;
	margin: 0;
	list-style: none;
}

.primary-navigation__list {
	min-height: 56px;
	border: 1px solid var(--color-border-light);
	border-radius: 10px 0 0 10px;
	background: var(--color-bg-white);
	overflow: hidden;
}

.primary-navigation__list a,
.audience-navigation__list a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	padding-inline: 12px;
	font-size: 14px;
	font-weight: 500;
	line-height: 2;
	text-decoration: none;
	white-space: nowrap;
}

.primary-navigation__list a {
	min-width: 0;
}

.primary-navigation__list .menu-item { flex: 1 1 20%; }

.primary-navigation__list > .menu-item {
	position: relative;
}

.primary-navigation__list > .menu-item:first-child::after {
	content: none;
}

.primary-navigation__list > .menu-item.current-menu-item::after,
.primary-navigation__list > .menu-item.current-menu-parent::after,
.primary-navigation__list > .menu-item.current-menu-ancestor::after,
.primary-navigation__list > .menu-item.current_page_item::after,
.primary-navigation__list > .menu-item.current_page_parent::after,
.primary-navigation__list > .menu-item.current_page_ancestor::after {
	position: absolute;
	right: 12px;
	bottom: 0;
	left: 12px;
	height: 3px;
	border-radius: 3px 3px 0 0;
	background: var(--gradient-brand);
	content: "";
}

.primary-navigation__list a:hover,
.primary-navigation__list .current-menu-item > a,
.primary-navigation__list .current_page_item > a {
	background: var(--color-bg-gray-50);
	color: var(--color-primary-dark);
}

.site-header__actions {
	display: flex;
	align-items: center;
	gap: 19px;
}

.audience-navigation__list {
	border-radius: 0 10px 10px 0;
	background: var(--color-text-primary);
	overflow: hidden;
}

.audience-navigation__list .menu-item + .menu-item {
	position: relative;
}

.audience-navigation__list .menu-item + .menu-item::before {
	position: absolute;
	top: 13px;
	bottom: 13px;
	left: 0;
	width: 1px;
	background: #eaeaea;
	content: "";
}

.audience-navigation__list a {
	min-width: 124px;
	font-weight: 700;
	color: var(--color-text-inverse);
}

.audience-navigation__list a:hover,
.audience-navigation__list .current-menu-item > a {
	background: var(--color-bg-dark);
}

.site-header__request {
	justify-content: center;
	color: var(--color-text-inverse);
}

.site-header__request:hover,
.site-header__request:focus-visible {
	color: var(--color-text-inverse);
}

.site-header__request .ds-button__arrow {
	width: 24px;
	height: 24px;
}

/* Shared inner-page breadcrumb geometry. */
:is(
	.order-page__breadcrumb,
	.company-page__breadcrumb,
	.contact-page__breadcrumb,
	.faq-page__breadcrumb,
	.news-page__breadcrumb,
	.terms-page__breadcrumb,
	.privacy-page__breadcrumb,
	.eq-breadcrumb,
	.standard-course__breadcrumb
) {
	position: relative !important;
	z-index: 90;
	top: auto !important;
	left: auto !important;
	display: flex !important;
	width: 1200px !important;
	max-width: 1200px !important;
	height: 30px !important;
	padding: 0 14px !important;
	margin: 0 auto !important;
	translate: none !important;
	transform: none !important;
	align-items: center !important;
	gap: 10px !important;
	border-radius: 5px;
	background: #f3f4f9;
	font-size: 12px;
	line-height: 2.1 !important;
}

:is(
	.order-page__breadcrumb,
	.company-page__breadcrumb,
	.contact-page__breadcrumb,
	.faq-page__breadcrumb,
	.news-page__breadcrumb,
	.terms-page__breadcrumb,
	.privacy-page__breadcrumb,
	.eq-breadcrumb,
	.standard-course__breadcrumb
) > span { margin-left: 0 !important; }

@media (max-width: 1232px) {
	:is(
		.order-page__breadcrumb,
		.company-page__breadcrumb,
		.contact-page__breadcrumb,
		.faq-page__breadcrumb,
		.news-page__breadcrumb,
		.terms-page__breadcrumb,
		.privacy-page__breadcrumb,
		.eq-breadcrumb,
		.standard-course__breadcrumb
	) {
		width: calc(100% - 32px) !important;
	}
}

.course-mega-menu {
	position: absolute;
	top: 114px;
	left: calc(50% + 7px);
	display: grid;
	grid-template-columns: 308px 195px 193px 1fr;
	width: 1083px;
	height: 192px;
	padding: 34px 48px 28px 65px;
	border-radius: 0 0 10px 10px;
	background: #373737;
	color: var(--color-text-inverse);
	opacity: 0;
	visibility: hidden;
	transform: translateX(-50%) translateY(-5px);
	transition: opacity 140ms ease, transform 140ms ease, visibility 140ms ease;
}

.course-mega-menu.is-open {
	opacity: 1;
	visibility: visible;
	transform: translateX(-50%) translateY(0);
}

.course-mega-menu__group {
	padding: 0;
	margin: 0;
	list-style: none;
}

.course-mega-menu__group li {
	margin: 0;
}

.course-mega-menu__group a {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 34px;
	color: var(--color-text-inverse);
	font-size: 14px;
	font-weight: 500;
	line-height: 2.4;
	text-decoration: none;
	white-space: nowrap;
}

.course-mega-menu__group a:hover,
.course-mega-menu__group a:focus-visible {
	color: var(--color-primary);
}

.course-mega-menu__arrow {
	display: grid;
	flex: 0 0 19px;
	width: 19px;
	height: 19px;
	place-items: center;
	border-radius: 3px;
	background: #000;
}

.course-mega-menu__arrow img {
	width: 7px;
	height: 9px;
	transform: rotate(90deg);
}
.course-mega-menu__arrow .ds-css-arrow {
	--ds-css-arrow-line: 1px;

	flex-basis: 9px;
	width: 9px;
	height: 7px;
}

@media (max-width: 1100px) {
	.course-mega-menu {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.ds-button {
		transition: none;
	}
}
