/* Public content and catalog search. */
.zncs,.zncs *{box-sizing:border-box}
.zncs{position:relative;z-index:0;display:grid;gap:0;width:100%;min-width:0;margin:0;padding:0;font-family:inherit}
.zncs--search{padding:44px 0;color:#132338;background:transparent}
.zncs--footer{padding:0 0 46px;color:#D8E0EA}
.zncs--footer::before{content:"";position:absolute;z-index:-1;top:-17px;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:linear-gradient(180deg,#17253A 0%,#121D2E 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 -10px 28px rgba(10,19,33,.08)}
.zncs__search{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:32px;width:min(1080px,100%);min-width:0;margin:0 auto;padding:0 14px;text-align:left}.zncs__search-copy{grid-column:1;display:grid;gap:7px;min-width:0;text-align:left}.zncs__search-control{grid-column:2/5;display:grid;gap:7px;min-width:0;text-align:left}
/* Footer owns the breathing room; scope it only to a footer that actually contains Content Search. */
:where(footer,#colophon,.site-footer):has(.zncs){margin-top:0}
/* Kadence: remove only the row-level gap above the dedicated footer-menu shortcode. Internal menu spacing remains owned by this plugin. */
/* Neutralize theme/widget separators immediately attached below the footer search. */
.zncs+hr,.zncs+.wp-block-separator{display:none}
.zncs .zncs__label{margin:0;color:#D0AE3F;font-size:21px;font-weight:800;line-height:1.2;text-align:left}
.zncs__field{display:grid;grid-template-columns:24px minmax(0,1fr) 34px;align-items:center;gap:7px;min-height:48px;padding:0 7px 0 12px;border:1px solid rgba(178,192,206,.8);border-radius:11px;background:rgba(248,250,252,.94);box-shadow:0 5px 16px rgba(19,35,56,.1)}
.zncs__field:focus-within{border-color:#4F86C6;box-shadow:0 0 0 3px rgba(79,134,198,.18)}
.zncs__icon{position:relative;display:block;width:17px;height:17px;border:2px solid #2F6397;border-radius:50%}
.zncs__icon::after{content:"";position:absolute;right:-5px;bottom:-3px;width:7px;height:2px;border-radius:2px;background:#2F6397;transform:rotate(-48deg)}
.zncs .zncs__field input[type="search"]{display:block;width:100%;min-width:0;height:46px;margin:0;padding:0;border:0;border-bottom:0;outline:0;background:transparent;color:#10243A;font:600 15px/1.35 inherit;box-shadow:none;appearance:none}
.zncs__field input[type="search"]::placeholder{color:#8193A7;font-weight:500}
.zncs__field input[type="search"]::-webkit-search-cancel-button{display:none}
.zncs .zncs__hint{margin:0;color:#566B80;font-size:13px;font-weight:500;line-height:1.45;text-align:left}
.zncs__clear{display:grid;width:32px;height:32px;place-items:center;margin:0;padding:0;border:0;border-radius:7px;background:#eef4f9;color:#4c7094;font:700 21px/1 inherit;cursor:pointer}
.zncs__clear:hover,.zncs__clear:focus-visible{background:#e3edf6;color:#214f7d;outline:0}
.zncs__status{min-height:0;color:#62768A;font-size:12px;line-height:1.35}
.zncs__status:empty{display:none}
.zncs__results:empty{display:none}
.zncs__results{display:grid;gap:7px;padding:8px;border:1px solid #cbddeb;border-radius:12px;background:#f8fbfe;box-shadow:0 10px 26px rgba(25,66,107,.09)}
.zncs-group{overflow:hidden;border:1px solid #d3e1ed;border-radius:10px;background:#fff}
.zncs-group>summary{list-style:none}
.zncs-group>summary::-webkit-details-marker{display:none}
.zncs-group__head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:9px 11px;background:#e7f0f8;color:#194d7f;cursor:pointer}
.zncs-group__head:hover,.zncs-group__head:focus-visible{background:#2769a5;color:#fff;outline:0}
.zncs-group__title{display:inline-flex;align-items:center;gap:7px;min-width:0;color:inherit}
.zncs-group__title strong{color:inherit;font-size:14px;line-height:1.3;overflow-wrap:anywhere}
.zncs-group__title small{display:inline-grid;flex:0 0 auto;min-width:23px;height:23px;place-items:center;padding:0 6px;border-radius:999px;background:#fff;color:#386b9b;font-size:11px;font-weight:850;line-height:1}
.zncs-group__head:hover .zncs-group__title small,.zncs-group__head:focus-visible .zncs-group__title small{background:rgba(255,255,255,.18);color:#fff}
.zncs-group__head i{position:relative;display:block;flex:0 0 16px;width:16px;height:16px}
.zncs-group__head i::before,.zncs-group__head i::after{content:"";position:absolute;top:7px;width:8px;height:2px;border-radius:2px;background:currentColor;transition:transform .18s ease}
.zncs-group__head i::before{left:1px;transform:rotate(45deg)}
.zncs-group__head i::after{right:1px;transform:rotate(-45deg)}
.zncs-group[open]>.zncs-group__head i::before{transform:rotate(-45deg)}
.zncs-group[open]>.zncs-group__head i::after{transform:rotate(45deg)}
.zncs-group__panel{display:grid;gap:7px;padding:8px}
.zncs-group__items{display:grid;gap:6px}
.zncs-result{display:grid;grid-template-columns:68px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-width:0;padding:7px;border:1px solid #e0e8f0;border-radius:8px;background:#fff;color:#173e68;text-align:left;text-decoration:none}
.zncs-result:hover,.zncs-result:focus-visible{border-color:#8fb8da;background:#eef6fc;color:#0b5e9f;outline:0}
.zncs-result__media{display:grid;width:68px;height:52px;place-items:center;overflow:hidden;border-radius:6px;background:#eaf1f7;color:#5f7e9b;font-size:11px;font-weight:850}
.zncs-result__media img{display:block;width:100%;height:100%;object-fit:cover}
.zncs-result__copy{display:grid;gap:3px;min-width:0}
.zncs-result strong{color:inherit;font-size:13.5px;line-height:1.3;overflow-wrap:anywhere}
.zncs-result small{display:-webkit-box;overflow:hidden;color:#697f95;font-size:11px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.zncs-result__match{color:#2d6d58;font-weight:700}
.zncs-group__more{justify-self:stretch;min-height:38px;padding:8px 12px;border:1px solid #bdd2e5;border-radius:8px;background:#edf4fa;color:#245786;font:800 12.5px/1.2 inherit;cursor:pointer}
.zncs-group__more:hover,.zncs-group__more:focus-visible{border-color:#8fb2d1;background:#e3eef7;color:#174b7b;outline:0}
/* Product groups reuse the same accordion and result markup with a warm palette. */
.zncs-group--products{border-color:#e2d5bf;background:#fffaf1}
.zncs-group--products>.zncs-group__head{background:#f3e6cf;color:#684c25}
.zncs-group--products>.zncs-group__head:hover,.zncs-group--products>.zncs-group__head:focus-visible{background:#866130;color:#fff}
.zncs-group--products .zncs-group__panel{background:#fffaf1}
.zncs-group--products .zncs-group__title small{color:#79582b}
.zncs-group--products .zncs-group__head:hover small,.zncs-group--products .zncs-group__head:focus-visible small{color:#fff}
.zncs-group--products .zncs-result{border-color:#e9ddca;color:#594726}
.zncs-group--products .zncs-result:hover,.zncs-group--products .zncs-result:focus-visible{background:#fff3de;border-color:#c9ad7b}
.zncs-group--products .zncs-result__media{background:#f3ebdd;color:#80643d}
.zncs-group--products .zncs-group__more{background:#f5ead6;border-color:#ddc6a0;color:#684c25}
.zncs-group--products .zncs-group__more:hover,.zncs-group--products .zncs-group__more:focus-visible{background:#eddbba;color:#513716}
@media(max-width:700px){
  .zncs{width:100%}
  .zncs .zncs__label{font-size:18px}
  .zncs__field{grid-template-columns:21px minmax(0,1fr) 32px;min-height:44px;padding-left:10px;border-radius:9px}
  .zncs__icon{width:15px;height:15px}
  .zncs__field input[type="search"]{height:42px;font-size:14px}
  .zncs__clear{width:30px;height:30px}
  .zncs__results{padding:6px;border-radius:10px}
  .zncs-group__head{min-height:42px;padding:8px 9px}
  .zncs-group__title strong{font-size:13px}
  .zncs-group__panel{padding:6px}
  .zncs-result{grid-template-columns:58px minmax(0,1fr);gap:8px;padding:6px}
  .zncs-result__media{width:58px;height:48px}
  .zncs-result strong{font-size:12.5px}
  .zncs-result small{font-size:10.5px}
}

/* Component display rules must respect the hidden state, including pagination. */
.zncs [hidden]{display:none}


/* Footer navigation is an independent shortcode; its rubric hierarchy is provided by Rubrics. */
.zncs-footer-nav{position:relative;width:min(1080px,100%);margin:0 auto;padding:30px 14px 0;text-align:left}

.zncs-footer-nav__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;align-items:start}
.zncs-footer-nav__column{min-width:0;text-align:left}
.zncs-footer-nav__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;text-align:left}
.zncs .zncs-footer-nav__title,.zncs .zncs-footer-nav__title:visited{display:block;margin:0 0 18px;padding:0;color:#D9C37A !important;font-size:15.5px;font-weight:780;line-height:1.25;text-align:left;text-decoration:none !important}

.zncs a.zncs-footer-nav__title:hover,.zncs a.zncs-footer-nav__title:focus-visible{color:#9CC4F2 !important;outline:0}
.zncs-footer-nav__list{display:grid;gap:10px;margin:0;padding:0;list-style:none;text-align:left}
.zncs-footer-nav__list li{margin:0;padding:0}
.zncs .zncs-footer-nav__list a,.zncs .zncs-footer-nav__list a:visited{display:inline-block;color:#C8D3DF !important;font-size:13.5px;font-weight:520;line-height:1.4;text-align:left;text-decoration:none !important;overflow-wrap:anywhere;transition:color .15s ease}
.zncs .zncs-footer-nav__list a:hover,.zncs .zncs-footer-nav__list a:focus-visible{color:#9CC4F2 !important;outline:0}
.zncs-footer-nav__column--primary .zncs-footer-nav__list{gap:11px}
.zncs-footer-nav__toggle{display:none;flex:0 0 34px;width:34px;height:34px;margin:-8px 0 6px;padding:0;border:0;border-radius:8px;background:transparent;color:#A8B7C8;cursor:pointer}
.zncs-footer-nav__toggle:hover,.zncs-footer-nav__toggle:focus-visible{background:rgba(255,255,255,.06);color:#D9C37A;outline:0}
.zncs-footer-nav__toggle span{position:relative;display:block;width:14px;height:14px;margin:auto}
.zncs-footer-nav__toggle span::before,.zncs-footer-nav__toggle span::after{content:"";position:absolute;top:6px;width:8px;height:2px;border-radius:2px;background:currentColor;transition:transform .16s ease}
.zncs-footer-nav__toggle span::before{left:0;transform:rotate(45deg)}
.zncs-footer-nav__toggle span::after{right:0;transform:rotate(-45deg)}
.zncs-footer-nav__column.is-open .zncs-footer-nav__toggle span::before{transform:rotate(-45deg)}
.zncs-footer-nav__column.is-open .zncs-footer-nav__toggle span::after{transform:rotate(45deg)}

@media(max-width:820px){
  .zncs{padding:0}
  .zncs--search{padding:34px 0}
  .zncs--footer{padding:0 0 32px}
  .zncs__search{grid-template-columns:1fr;gap:16px;width:min(620px,100%);padding:0 14px;text-align:left}
  .zncs__search-copy,.zncs__search-control{grid-column:1;text-align:left}
  .zncs .zncs__label{text-align:left;font-size:19px}
  .zncs .zncs__hint{text-align:left;font-size:12px}
  .zncs-footer-nav{margin-top:0;padding:24px 14px 0;text-align:left}

  .zncs-footer-nav__grid{grid-template-columns:1fr;gap:0}
  .zncs-footer-nav__column{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.07)}
  .zncs-footer-nav__column:first-child{padding-top:0}
  .zncs-footer-nav__column:last-child{border-bottom:0}
  .zncs .zncs-footer-nav__title{margin:0;padding:0;font-size:15px;text-align:left}

  .zncs-footer-nav__column--primary .zncs-footer-nav__title{margin-bottom:13px}
  .zncs-footer-nav__column--primary .zncs-footer-nav__list{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 14px}
  .zncs-footer-nav__toggle{display:block}
  .zncs-footer-nav__column--rubric .zncs-footer-nav__list{display:none;padding-top:13px}
  .zncs-footer-nav__column--rubric.is-open .zncs-footer-nav__list{display:grid}
}
@media(max-width:520px){
  .zncs{padding:0}
  .zncs--search{padding:30px 0}
  .zncs--footer{padding:0 0 28px}
  .zncs-footer-nav__column--primary .zncs-footer-nav__list{grid-template-columns:1fr}
  .zncs .zncs-footer-nav__list a{font-size:13.5px}
}
