/* Shared menu, scoped away from WordPress's mobile submenu-hiding rule. */
.jghs-nav { position:relative; z-index:30; color:inherit; font-size:1rem; line-height:1.35; }
.jghs-nav *, .jghs-page-navigation * { box-sizing:border-box; }
.jghs-nav [hidden] { display:none !important; }
.jghs-nav ul { margin:0; padding:0; list-style:none; }
.jghs-menu { display:flex; justify-content:center; flex-wrap:wrap; gap:0 .65rem; }
.jghs-nav-item { position:relative; margin:0; }
.jghs-nav-row { display:flex; align-items:center; }
.jghs-nav-row > a { display:flex; align-items:center; min-height:44px; padding:.5rem .35rem; color:inherit !important; text-decoration:none; text-underline-offset:.2em; }
.jghs-nav a:hover, .jghs-nav a[aria-current], .jghs-nav .is-ancestor > .jghs-nav-row > a { text-decoration:underline; }
.jghs-nav button { font:inherit; color:inherit; cursor:pointer; border:0; border-radius:0; background:transparent; }
.jghs-nav button svg { display:block; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.jghs-sub-toggle { display:flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:10px; }
.jghs-sub-toggle[aria-expanded="true"] svg { transform:rotate(180deg); }
.jghs-nav a:focus-visible, .jghs-nav button:focus-visible { outline:2px solid currentColor; outline-offset:2px; }
.jghs-nav .jghs-submenu { margin:0; padding:.5rem; }
.jghs-nav.is-enhanced .jghs-menu > li > .jghs-submenu { position:absolute; top:100%; left:0; width:19rem; max-height:70vh; overflow:auto; background:var(--wp--preset--color--contrast,#812e28); color:var(--wp--preset--color--base,#fff); box-shadow:0 12px 24px #240b1429; }
.jghs-nav.is-enhanced .jghs-menu > li:nth-last-child(-n+3) > .jghs-submenu { left:auto; right:0; }
.jghs-submenu .jghs-nav-row > a { flex:1; padding:.65rem .75rem; }
.jghs-submenu .jghs-submenu { margin-left:1rem; border-left:1px solid currentColor; }
.jghs-menu-toggle { display:flex; align-items:center; gap:.6rem; min-height:48px; padding:.5rem .75rem; margin-left:auto; }
.jghs-page-navigation { width:min(1440px,100% - 3rem); margin:0 auto; color:var(--wp--preset--color--contrast,#812e28); }
.jghs-breadcrumbs { margin:0 0 2rem; font-size:1rem; line-height:1.5; }
.jghs-breadcrumbs ol { display:flex; flex-wrap:wrap; align-items:center; gap:.25rem .65rem; list-style:none; margin:0; padding:0; }
.jghs-breadcrumbs li { display:flex; align-items:baseline; gap:.65rem; }
.jghs-breadcrumbs li + li::before { content:"/"; opacity:.65; }
.jghs-breadcrumbs a { display:inline-block; padding:.4rem 0; }
.jghs-content-layout.has-section { display:grid; grid-template-columns:minmax(13rem,17rem) minmax(0,1fr); gap:clamp(1.5rem,4vw,4rem); align-items:start; }
.jghs-page-body { min-width:0; }
.jghs-section { padding-top:.2rem; font-size:1rem; line-height:1.45; }
.jghs-section details { border-top:2px solid var(--wp--preset--color--contrast,#812e28); }
.jghs-section summary { padding:.9rem 0; font-size:1.15rem; font-weight:600; cursor:pointer; }
.jghs-section nav { padding-bottom:1rem; }
.jghs-section ul { list-style:none; padding:0; margin:0; }
.jghs-section ul ul { padding-left:1rem; margin-left:.4rem; border-left:1px solid var(--wp--preset--color--tertiary,#dbdbdb); }
.jghs-section a { display:block; min-height:44px; padding:.65rem .6rem; color:inherit; text-decoration:none; overflow-wrap:anywhere; }
.jghs-section-home { font-weight:600; }
.jghs-section a:hover { text-decoration:underline; text-underline-offset:.2em; }
.jghs-section a[aria-current="page"] { background:var(--wp--preset--color--contrast,#812e28); color:var(--wp--preset--color--base,#fff); font-weight:600; }
.jghs-page-navigation a:focus-visible, .jghs-page-navigation summary:focus-visible { outline:2px solid var(--wp--preset--color--contrast,#812e28); outline-offset:3px; }
@media (max-width:1199px) {
  .jghs-nav.is-enhanced .jghs-menu { display:block; max-height:75dvh; overflow:auto; padding:.5rem 0; text-align:left; }
  .jghs-nav.is-enhanced .jghs-menu > li > .jghs-submenu { position:static; width:auto; max-height:none; overflow:visible; box-shadow:none; margin:0 0 .5rem 1rem; padding:0 0 0 .5rem; border-left:1px solid currentColor; background:transparent; color:inherit; }
  .jghs-nav-row > a { flex:1; min-height:48px; padding:.65rem .5rem; }
  .jghs-sub-toggle { min-width:48px; min-height:48px; }
}
@media (max-width:899px) {
  .jghs-page-navigation { width:calc(100% - 2rem); }
  .jghs-content-layout.has-section { display:block; }
  .jghs-section { margin:0 0 2rem; }
  .jghs-section details { border-bottom:1px solid var(--wp--preset--color--tertiary,#dbdbdb); }
  .jghs-breadcrumbs { margin-bottom:1.25rem; }
}
@media print {
  .jghs-nav,.jghs-section { display:none; }
  .jghs-content-layout.has-section { display:block; }
  .jghs-page-navigation { width:100%; }
}
