/* v1.4.1 – Primary navigation shared by all three page types. */
.pc-root .pc-nav { overflow: visible; }
.pc-root .pc-nav-dropdown { position: relative; flex-shrink: 0; }
.pc-root .pc-nav-dropdown > summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 6px; color: #28352d; font-size: 14px; font-weight: 700; white-space: nowrap; padding: 8px 0; }
.pc-root .pc-nav-dropdown > summary::-webkit-details-marker { display: none; }
.pc-root .pc-nav-dropdown > summary > span { font-size: 16px; transition: transform .2s; }
.pc-root .pc-nav-dropdown[open] > summary > span { transform: rotate(180deg); }
.pc-root .pc-nav-dropdown > summary:hover,
.pc-root .pc-nav-dropdown > summary.pc-nav-current { color: #087844; }
.pc-root .pc-nav-submenu { position: absolute; top: calc(100% + 8px); left: 50%; transform: translateX(-50%); z-index: 20; min-width: 230px; padding: 8px; border: 1px solid #e4ebe5; border-radius: 9px; background: #fff; box-shadow: 0 16px 38px rgba(17,47,29,.14); }
.pc-root .pc-nav-submenu a { display: block; padding: 10px 13px; border-radius: 5px; font-size: 13px; line-height: 1.4; white-space: nowrap; }
.pc-root .pc-nav-submenu a:hover,
.pc-root .pc-nav-submenu a.pc-nav-current { background: #edf5ef; color: #07643c; }
.pc-root .pc-nav .pc-menu-list { list-style: none; padding: 0; margin: 0; display: flex; align-items: center; justify-content: center; gap: 20px; }
.pc-root .pc-nav .pc-menu-list li { position: relative; list-style: none; margin: 0; padding: 0; }
.pc-root .pc-nav .pc-menu-list .current-menu-item > a,
.pc-root .pc-nav .pc-menu-list .current-menu-ancestor > a { color: #087844; }
.pc-root .pc-nav .pc-menu-list .sub-menu { display: none; position: absolute; z-index: 20; top: 100%; left: 0; list-style: none; min-width: 218px; margin: 0; padding: 8px; background: #fff; border: 1px solid #e4ebe5; border-radius: 8px; box-shadow: 0 16px 38px rgba(17,47,29,.14); }
.pc-root .pc-nav .pc-menu-list .menu-item-has-children:hover > .sub-menu,
.pc-root .pc-nav .pc-menu-list .menu-item-has-children:focus-within > .sub-menu { display: block; }
.pc-root .pc-nav .pc-menu-list .sub-menu a { display: block; padding: 10px 12px; }
.pc-root .pc-nav-dropdown > summary:focus-visible { outline: 2px solid #39865c; outline-offset: 4px; border-radius: 2px; }
@media(max-width:1230px) {
 .pc-root .pc-nav-dropdown { width: 100%; }
 .pc-root .pc-nav-dropdown > summary { padding: 14px; border-bottom: 1px solid #eff0ee; font-size: 16px; justify-content: space-between; }
 .pc-root .pc-nav-submenu { position: static; min-width: 0; transform: none; padding: 2px 0 8px 12px; border: 0; border-radius: 0; box-shadow: none; }
 .pc-root .pc-nav-submenu a { padding: 11px 14px; font-size: 15px; }
 .pc-root .pc-nav .pc-menu-list { display: flex; flex-direction: column; align-items: stretch; gap: 0; width: 100%; }
 .pc-root .pc-nav .pc-menu-list li { width: 100%; }
 .pc-root .pc-nav .pc-menu-list > li > a { display: block; }
 .pc-root .pc-nav .pc-menu-list .sub-menu { position: static; display: block; padding: 0 0 4px 12px; border: 0; box-shadow: none; }
}

/* v1.4.3 – Slightly larger desktop logo; preserve spacing and mobile layout. */
@media(min-width:1231px){
 .pc-root .pc-brand{min-width:260px;flex-shrink:0}
 .pc-root .pc-logo{max-width:262px;max-height:84px;width:auto;height:auto}
 .pc-root .pc-header-inner{min-height:98px}
}
@media(min-width:641px) and (max-width:1230px){
 .pc-root .pc-logo{max-width:244px;max-height:79px;width:auto;height:auto}
}
