/* Two-column category navigation. */
header:has(.cp-nav-v2) { --header-h: 88px; background: var(--bg-canvas,#fff); }
header:has(.cp-nav-v2) > .container-wide { max-width: 1600px; padding-inline: 24px; }
header:has(.cp-nav-v2) > .container-wide > div { gap: 20px; }
header:has(.cp-nav-v2) > .container-wide > div > a img { height: 48px!important; }
header:has(.cp-nav-v2) > .container-wide > div > div { gap: 10px; }
header:has(.cp-nav-v2) > .container-wide > div > div > a { border-radius: 999px; min-height: 42px; padding-inline: 27px; box-shadow: none; font-size: 14px; }
header:has(.cp-nav-v2) > .container-wide > div > div > a:first-of-type { order: 2; border: 1px solid var(--fg-primary,#112139); }
header:has(.cp-nav-v2) > .container-wide > div > div > a:last-of-type { order: 1; background: var(--accent,#f55f00); border: 1px solid var(--accent,#f55f00); color: white; }
.cp-header-language { order: 3; position: relative; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; border: 1px solid var(--border-subtle,#ddd); font-size: 12px; font-weight: 700; color: var(--fg-primary,#112139); }
.cp-header-language select { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.cp-header-language:focus-within { outline: 2px solid var(--accent,#f55f00); outline-offset: 3px; }
.cp-nav-v2 { margin-inline-end: auto; }
.cp-nav-v2 > ul { display: flex; align-items: center; gap: 0; margin: 0; padding: 0; list-style: none; }
.cp-nav-v2 > ul > li { position: relative; }
header .cp-nav-v2 [data-trigger] { height: 52px; padding: 0 18px; font-size: 16px; font-weight: 500; color: var(--fg-primary,#112139); transition: color 150ms,background-color 150ms; }
header .cp-nav-v2 [data-trigger][aria-expanded=true] { background: var(--bg-subtle,#f5f5f5); color: var(--fg-accent,#a84100); }
header .cp-nav-v2 [data-trigger][aria-expanded=true]::after { content: none; }
.cp-nav-dropdown { position: absolute; top: 100%; inset-inline-start: 0; z-index: 70; display: grid; grid-template-columns: 290px 280px; gap: 16px; padding: 16px; background: var(--bg-subtle,#f5f5f5); border-radius: 0 0 18px 18px; box-shadow: 0 16px 28px #11213922; animation: cp-nav-appear 160ms ease-out; }
.cp-nav-categories { display: flex; flex-direction: column; gap: 4px; }
.cp-nav-categories button { display: flex; align-items: flex-start; gap: 10px; text-align: start; padding: 16px; position: relative; border-radius: 13px; color: var(--fg-primary,#112139); transition: background-color 120ms; }
.cp-nav-categories button.is-active { background: var(--bg-canvas,#fff); box-shadow: 0 1px 3px #11213909; }
.cp-nav-categories button.is-active::after { content: ''; position: absolute; inset-inline-end: -9px; top: 30px; width: 18px; height: 18px; transform: rotate(45deg); background: var(--bg-canvas,#fff); }
.cp-nav-category-icon { font-size: 21px; line-height: 24px; }
.cp-nav-categories strong { display: block; font-size: 16px; line-height: 1.4; font-weight: 650; }
.cp-nav-categories small { display: block; margin-top: 2px; color: var(--fg-secondary,#46566a); font-size: 14px; line-height: 1.5; }
.cp-nav-links { background: var(--bg-canvas,#fff); border-radius: 13px; padding: 12px 18px; min-height: 260px; animation: cp-nav-content 130ms ease-out; }
.cp-nav-links a { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 9px 10px; font-size: 15px; line-height: 1.5; color: var(--fg-primary,#112139); border-radius: 7px; transition: color 130ms,background-color 130ms; }
.cp-nav-links a span { opacity: 0; transform: translateX(-4px); transition: opacity 130ms,transform 130ms; }
.cp-nav-links a:hover { color: var(--fg-accent,#a84100); background: var(--bg-subtle,#f5f5f5); }
.cp-nav-links a:hover span { opacity: 1; transform: translateX(0); }
.cp-nav-simple { grid-template-columns: 290px; }
.cp-nav-simple .cp-nav-links { min-height: 0; }
.cp-nav-v2 :is(button,a):focus-visible,.cp-mobile-v2 :is(button,a):focus-visible { outline: 2px solid var(--accent,#f55f00); outline-offset: 2px; }
@keyframes cp-nav-appear { from { opacity: 0; transform: translateY(-5px); } to { opacity: 1; transform: translateY(0); } }
@keyframes cp-nav-content { from { opacity: .5; } to { opacity: 1; } }
.cp-mobile-v2 { position: fixed; inset: 0; z-index: 1000; }
.cp-mobile-backdrop { position: absolute; inset: 0; background: #0007; }
.cp-mobile-v2 .cp-mobile-panel { position: absolute; inset-block: 0; inset-inline-start: 0; display: flex; flex-direction: column; width: min(88vw,400px); background: var(--bg-subtle,#f5f5f5); box-shadow: 12px 0 30px #0002; animation: cp-nav-appear 160ms ease-out; }
.cp-mobile-heading { display: flex; justify-content: space-between; align-items: center; height: 84px; padding: 20px; flex-shrink: 0; }
.cp-mobile-heading img { object-fit: contain; }
.cp-mobile-heading button { font-size: 27px; width: 40px; height: 40px; }
.cp-mobile-scroll { flex: 1; overflow-y: auto; padding: 12px 20px; overscroll-behavior: contain; }
.cp-mobile-group { margin-bottom: 10px; }
.cp-mobile-group > button { display: flex; justify-content: space-between; align-items: center; width: 100%; min-height: 52px; padding: 12px 18px; border: 1px solid var(--border-subtle,#ddd); border-radius: 8px; background: var(--bg-canvas,#fff); text-align: start; font-size: 16px; font-weight: 600; }
.cp-mobile-items { padding: 12px 16px; }
.cp-mobile-items h3 { margin: 16px 0 4px; font-size: 14px; color: var(--fg-accent,#a84100); }
.cp-mobile-items a { display: block; padding: 11px 0; font-size: 14px; }
.cp-mobile-actions { display: flex; gap: 10px; padding: 20px; flex-shrink: 0; }
.cp-mobile-actions a { flex: 1; display: grid; place-items: center; border-radius: 999px; min-height: 42px; font-size: 13px; border: 1px solid var(--fg-primary,#112139); }
.cp-mobile-actions a:first-child { color: white; background: var(--accent,#f55f00); border-color: var(--accent,#f55f00); }
body:has(.cp-mobile-v2) .cp-chat-launcher { visibility: hidden; }
@media(min-width:1200px){ header:has(.cp-nav-v2) button[aria-label="Open navigation"] { display:none; } }
@media(max-width:1199px){ .cp-nav-v2 { display:none; } header:has(.cp-nav-v2) { --header-h:76px; } header:has(.cp-nav-v2) button[aria-label="Open navigation"] { display:grid; order:4; } header:has(.cp-nav-v2)> .container-wide > div > div { margin-inline-start:auto; } }
@media(max-width:639px){header:has(.cp-nav-v2)> .container-wide { padding-inline:18px; } header:has(.cp-nav-v2)> .container-wide > div > div > a { display:none; } header:has(.cp-nav-v2)> .container-wide > div > a img { height:40px!important; } .cp-header-language { width:36px;height:36px; } }
@media(prefers-reduced-motion:reduce){.cp-nav-dropdown,.cp-nav-links,.cp-mobile-panel {animation:none!important;} .cp-nav-v2 *{transition:none!important;} }
