/* RDC_DPV_INDEX_MENU_PLUGIN_STYLES_START */
.index-head-menu-host { display: inline-block; vertical-align: top; }
.dpv-index-menu, .dpv-index-menu * { box-sizing: border-box; }
.dpv-index-menu-desktop { display: inline-flex; align-items: center; gap: 2px; min-height: 38px; padding-top: 0; }
.dpv-index-menu-link, .dpv-index-menu-mobile-toggle, .dpv-index-menu-close, .dpv-index-menu-back {
	border: 0; background: transparent; color: inherit; font: inherit; cursor: pointer;
}
.dpv-index-menu-link { position: relative; min-height: 38px; padding: 9px 10px; border-radius: 6px; color: rgba(255,255,255,.78); font-size: .72rem; transition: color .18s ease, background .18s ease, transform .18s ease; }
.dpv-index-menu-link:hover, .dpv-index-menu-link:focus-visible { color: #fff; background: rgba(255,255,255,.09); outline: 0; transform: translateY(-1px); }
.dpv-index-menu-group { position: relative; }
.dpv-index-menu-sub-toggle { display: inline-flex; align-items: center; gap: 6px; }
.dpv-index-menu-sub-toggle span { transition: transform .2s ease; }
.dpv-index-menu-sub-toggle[aria-expanded='true'] span { transform: rotate(180deg); }
.dpv-index-menu-submenu { position: absolute; z-index: 2300; top: calc(100% + 6px); left: 50%; min-width: 184px; padding: 7px; border: 1px solid rgba(126,151,161,.42); border-radius: 10px; visibility: hidden; opacity: 0; background: linear-gradient(145deg, rgba(255,255,255,.995), rgba(231,241,239,.995)); box-shadow: 0 20px 48px rgba(8,20,31,.28); color: var(--ink); transform: translate(-50%,-7px); transition: opacity .18s ease, transform .2s ease, visibility .18s; }
.dpv-index-menu-sub-toggle[aria-expanded='true'] + .dpv-index-menu-submenu, .dpv-index-menu-group:focus-within .dpv-index-menu-submenu { visibility: visible; opacity: 1; transform: translate(-50%,0); }
.dpv-index-menu-sub-link { display: block; width: 100%; color: #344753; text-align: left; }
.dpv-index-menu-sub-link:hover, .dpv-index-menu-sub-link:focus-visible { color: #204e49; background: linear-gradient(100deg, rgba(57,103,127,.1), rgba(65,147,125,.16)); }
.dpv-index-menu-mobile-toggle { position: relative; isolation: isolate; display: none; align-items: center; gap: 10px; min-height: 38px; margin-top: 17px; padding: 8px 13px; border: 1px solid rgba(177,224,213,.46); border-radius: 7px; overflow: hidden; background: linear-gradient(118deg, rgba(255,255,255,.04), rgba(106,190,167,.18)); box-shadow: inset 0 1px rgba(255,255,255,.12), 0 6px 18px rgba(5,17,25,.12); color: rgba(255,255,255,.94); font-size: .68rem; font-weight: 780; letter-spacing: .075em; text-transform: uppercase; transition: border-color .2s ease, background .25s ease, box-shadow .25s ease, color .2s ease, transform .2s ease; }
.dpv-index-menu-mobile-toggle::before { position: absolute; z-index: -1; top: -80%; bottom: -80%; left: -60%; width: 42%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent); content: ""; opacity: 0; transform: skewX(-18deg); transition: left .45s ease, opacity .22s ease; }
.dpv-index-menu-mobile-toggle:hover, .dpv-index-menu-mobile-toggle:focus-visible { border-color: rgba(196,241,230,.78); background: linear-gradient(118deg, rgba(255,255,255,.1), rgba(93,193,165,.3)); box-shadow: inset 0 1px rgba(255,255,255,.18), 0 9px 23px rgba(5,17,25,.2); color: #fff; outline: 0; transform: translateY(-1px); }
.dpv-index-menu-mobile-toggle:hover::before, .dpv-index-menu-mobile-toggle:focus-visible::before { left: 122%; opacity: 1; }
.dpv-index-menu-mobile-label { position: relative; white-space: nowrap; }
.dpv-index-menu-mobile-label::after { display: block; width: 46%; height: 1px; margin-top: 3px; background: linear-gradient(90deg, #9ce1cf, transparent); content: ""; transition: width .22s ease; }
.dpv-index-menu-mobile-toggle:hover .dpv-index-menu-mobile-label::after, .dpv-index-menu-mobile-toggle:focus-visible .dpv-index-menu-mobile-label::after, .dpv-index-menu.is-open .dpv-index-menu-mobile-label::after { width: 100%; }
.dpv-index-menu-mobile-arrow { width: 7px; height: 7px; margin-top: -4px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg); transition: margin .22s ease, transform .22s ease; }
.dpv-index-menu.is-open .dpv-index-menu-mobile-toggle { border-color: rgba(196,241,230,.72); background: linear-gradient(118deg, rgba(255,255,255,.12), rgba(78,179,151,.34)); }
.dpv-index-menu.is-open .dpv-index-menu-mobile-arrow { margin-top: 4px; transform: rotate(225deg); }
.dpv-index-menu-backdrop { position: fixed; z-index: 2147483000; inset: 0; display: block; width: 100%; height: var(--dpv-vh); padding: 0; border: 0; visibility: hidden; opacity: 0; background: rgba(11,23,33,.48); backdrop-filter: blur(2px); transition: opacity .22s ease, visibility .22s; }
.dpv-index-menu-drawer { position: fixed; z-index: 2147483001; top: 0; right: 0; bottom: auto; display: grid; grid-template-rows: auto minmax(0,1fr); width: min(88vw, 390px); height: 100vh; height: var(--dpv-vh, 100dvh); min-height: 0; padding: 0; border: 0; border-left: 1px solid rgba(89,116,126,.38); visibility: hidden; overflow: hidden; background: linear-gradient(150deg, rgba(252,254,255,.998), rgba(229,240,238,.998) 58%, rgba(220,236,231,.998)); box-shadow: -25px 0 75px rgba(8,21,31,.3); color: var(--ink); opacity: 1; transform: translateX(104%); transition: transform .28s cubic-bezier(.22,.8,.28,1), visibility .28s; }
.dpv-index-menu.is-open .dpv-index-menu-backdrop { visibility: visible; opacity: 1; }
.dpv-index-menu.is-open .dpv-index-menu-drawer { visibility: visible; transform: translateX(0); }
.dpv-index-menu-drawer > header { display: flex; align-items: center; justify-content: space-between; min-height: 84px; padding: 20px 22px; border-bottom: 1px solid rgba(89,116,126,.26); background: linear-gradient(110deg, rgba(230,239,247,.72), rgba(222,241,235,.72)); }
.dpv-index-menu-drawer header small { display: block; color: #3b756d; font-size: .6rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.dpv-index-menu-drawer h2, .dpv-index-menu-drawer h3 { margin: 4px 0 0; color: #294743; font-family: var(--font-ic-title); font-weight: 540; }
.dpv-index-menu-drawer h2 { font-size: 1.35rem; }
.dpv-index-menu-drawer h3 { margin: 11px 0 18px; font-size: 1.15rem; }
.dpv-index-menu-close { width: 40px; height: 40px; border: 1px solid rgba(78,105,111,.3); border-radius: 50%; color: #314c4c; font-size: 1.5rem; line-height: 1; transition: transform .22s ease, background .2s ease; }
.dpv-index-menu-close:hover, .dpv-index-menu-close:focus-visible { background: rgba(51,117,104,.1); outline: 0; transform: rotate(90deg); }
.dpv-index-menu-drawer-track { position: relative; min-height: 0; height: auto; overflow: hidden; }
.dpv-index-menu-drawer-panel { position: absolute; inset: 0; padding: 18px; visibility: hidden; overflow-y: auto; opacity: 0; transform: translateX(25px); transition: opacity .2s ease, transform .22s ease, visibility .2s; }
.dpv-index-menu-drawer-panel.is-active { visibility: visible; opacity: 1; transform: translateX(0); }
.dpv-index-menu-drawer-link { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 50px; margin: 2px 0; padding: 13px 12px; border-bottom: 1px solid rgba(78,105,111,.2); border-radius: 6px; color: #344b50; font-size: .82rem; text-align: left; }
.dpv-index-menu-drawer-link:hover, .dpv-index-menu-drawer-link:focus-visible { color: #244c47; background: linear-gradient(100deg, rgba(57,103,127,.1), rgba(65,147,125,.17)); transform: translateX(3px); }
.dpv-index-menu-back { padding: 6px 0; color: #2e6f65; font-size: .74rem; font-weight: 760; }
.dpv-index-menu-drawer-body { min-height: 0; height: auto; padding: 15px; overflow-y: auto; }
.dpv-index-menu-accordion-toggle { display: flex; justify-content: space-between; width: 100%; color: #344b50; }
.dpv-index-menu-accordion-body { display: grid; grid-template-rows: 0fr; padding-left: 11px; overflow: hidden; transition: grid-template-rows .2s ease; }
.dpv-index-menu-accordion-toggle[aria-expanded='true'] + .dpv-index-menu-accordion-body { display: block; }
#index-footer-menu-host .dpv-index-menu-link { min-height: 0; padding: 3px 7px; color: rgba(255,255,255,.72); font-size: .67rem; }
#index-footer-menu-host .dpv-index-menu-link:hover, #index-footer-menu-host .dpv-index-menu-link:focus-visible { color: #fff; background: transparent; text-decoration: underline; transform: none; }
body.is-index-menu-open { overflow: hidden; }
@media (max-height: 560px) and (min-width: 721px) {
	.dpv-index-menu-desktop { padding-top: 0; }
	.dpv-index-menu-mobile-toggle { margin-top: 8px; }
}
@media (max-width: 860px) {
	.index-head-menu-host .dpv-index-menu-desktop { display: none !important; }
	.index-head-menu-host .dpv-index-menu-mobile-toggle { display: inline-flex !important; }
	.dpv-index-menu-mobile-toggle { margin-top: 0; }
}
@media (max-width: 720px) {
	.dpv-index-menu-drawer { width: 100vw; max-width: none; border-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
	.dpv-index-menu *, .dpv-index-menu *::before, .dpv-index-menu *::after { transition-duration: .01ms !important; }
}
/* RDC_DPV_INDEX_MENU_PLUGIN_STYLES_END */
