/* Restek InstantSearch layout (refined) */
.restek-search-header{max-width:1200px;margin:24px auto 12px;padding:0 16px}
.restek-breadcrumbs{font-size:14px;color:#4A5568;margin-bottom:8px}
.restek-breadcrumbs .sep{margin:0 6px;color:#A0AEC0}
.restek-search-title{font-size:28px;font-weight:700;margin:6px 0 18px;color:#1A202C}

.restek-controls{display:flex;flex-wrap:wrap;gap:16px 20px;align-items:center;margin-bottom:18px}
.restek-controls .ctrl-group{display:flex;flex-direction:column;gap:6px}
.restek-controls label{font-size:12px;color:#4A5568}

/* Search within box width */
.restek-controls .search-within{min-width:320px;flex:1 1 360px}
.restek-controls .search-within .ais-SearchBox{max-width:460px}
.restek-controls .search-within .ais-SearchBox-input{width:100%;border:none;border-bottom:2px solid #CBD5E0;padding:8px 6px;font-size:16px;outline:none}
.restek-controls .search-within .ais-SearchBox-input:focus{border-bottom-color:#2B6CB0}
.restek-controls .search-within .ais-SearchBox-reset,.restek-controls .search-within .ais-SearchBox-submit{top:50%;transform:translateY(-50%)}

/* Sort & Hits per page inline */
.restek-controls .sort-by, .restek-controls .hits-per-page{min-width:140px}

/* View toggle */
/* .view-toggle{display:inline-flex;border:1px solid #CBD5E0;border-radius:6px;overflow:hidden;height:32px}
.view-toggle button{background:#fff;border:0;padding:6px 10px;cursor:pointer;line-height:1}
.view-toggle button.is-active{background:#215387;color:#fff} */

/* Two-column layout */
/* #ais-wrapper{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;max-width:1200px;margin:0 auto 40px;padding:0 16px} */
#ais-main{min-width:0; width:100%}

/* Sticky sidebar (desktop) */
#ais-facets {
    position: sticky;
    top: 90px;
    align-self: start;
}
div#facet-ad-blocks {
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.facet-first-in {
    position: relative;
    z-index: 999;
    margin: auto;
}
.facet-second-in {
    position: relative;
    z-index: 999;
    margin: auto;
}
div#facet-first-blocks img, div#facet-second-blocks img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    right: 0;
    width: 100%;
    height: 100%;
}
div#facet-first-blocks h2 {
    color: #fff;
    font-feature-settings: 'liga' off;
    font-family: 'Open Sans';
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
    margin-bottom: 12px;
}
div#facet-second-blocks h2 {
    color: #fff;
    font-feature-settings: 'liga' off;
    font-family: 'Open Sans';
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
    margin-bottom: 12px;
}
div#facet-second-blocks p, div#facet-first-blocks p{
    color: #FFF;
    font-family: 'Open Sans';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
    margin-bottom:24px;
}
div#facet-first-blocks a.btn.first-ad-block {
    text-decoration: none;
    display: flex;
    height: 38px;
    border-radius: 2px 0 0 2px;
    background: #0281C6;
    padding: 5px 18px;
    justify-content: center;
    align-items: center;
    color: #fff;
    text-align: center;
    font-family: "Open Sans";
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0.36px;
    text-transform: uppercase;
}
div#facet-second-blocks a.btn.second-ad-block {
    text-decoration: none;
    display: flex;
    height: 38px;
    border-radius: 2px 0 0 2px;
    background: #0C115B;
    padding: 5px 18px;
    justify-content: center;
    align-items: center;
    color: #fff;
    text-align: center;
    font-family: "Open Sans";
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0.36px;
    text-transform: uppercase;
}
.facet-inner {
    min-width: 305px !important;
    background-color: #fff;
    padding: 0px;
    width: 305px !important;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
div#facet-first-blocks {
    padding: 30px;
    background-color: rgb(51, 72, 186);
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 50px;
    position: relative;
    min-height: 305px;
}

div#facet-second-blocks {
    padding: 30px;
    background-color: rgb(51, 72, 186);
    display: flex;
    flex-direction: column;
    gap: 10px;
    position: relative;
    min-height: 305px;
}

/* Hits grid/list */
#algolia-hits{width:100%}
#algolia-hits .ais-Hits-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
#algolia-hits .ais-Hits-item{width:auto !important}
#algolia-hits.view-list .ais-Hits-list{display:block}
#algolia-hits.view-list .ais-Hits-item{display:flex;gap:12px;border:1px solid #E2E8F0;border-radius:6px;padding:12px;margin-bottom:12px}

/* Card basics */
.ais-Hits-item{background:#fff;border:1px solid #E2E8F0;border-radius:6px;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,0.2)}
.ais-hits--thumbnail img{display:block;width:100%;height:auto}
.ais-hits--content{padding:12px}
.ais-hits--title-link{color:#1A202C;text-decoration:none}
.ais-hits--title-link:hover{text-decoration:underline}
.ais-hits--content h2{font-size:18px;margin:0 0 8px}
.ais-hits--content .excerpt{color:#4A5568;font-size:14px}

/* Card footer (CTA) placeholder style if present */
.ais-hits--footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px}
.ais-hits--cta{display:inline-block;background:#2B6CB0;color:#fff;text-decoration:none;padding:8px 12px;border-radius:4px;font-weight:600}
.ais-hits--cta:hover{background:#215387}

/* Clamp long titles */
.ais-hits--content h2 a{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* Pagination */
.ais-Pagination {
  float: right;
}
label.ais-RefinementList-label {
    gap: 8px;
    display: flex;
}
#algolia-pagination {
  margin-top: 22px;
  padding-top: 19px;
  border-top: 1px solid #ADB5BD;
}
li.ais-Pagination-item.ais-Pagination-item--lastPage, li.ais-Pagination-item.ais-Pagination-item--firstPage {
  display: none;
}
li.ais-Pagination-item.ais-Pagination-item--lastPage, li.ais-Pagination-item.ais-Pagination-item--nextPage, li.ais-Pagination-item.ais-Pagination-item--previousPage  {
  width: 45px;
  height: 40px;
  text-align: center;
  border-radius: 3px;
  background: #D8E6F2;
}
li.ais-Pagination-item.ais-Pagination-item--page.ais-Pagination-item--selected a.ais-Pagination-link {
  color: #fff !important;
}
li.ais-Pagination-item.ais-Pagination-item--page.ais-Pagination-item--selected {
  width: 45px;
  height: 40px;
  text-align: center;
  border-radius: 3px;
  background: #0D7BC4;
  color: #fff !important;
}
li.ais-Pagination-item {
  border-radius: 3px;
  border: 1px solid #D8E6F2;
  background: #FFF;
  width: 45px;
  height: 40px;
  text-align: center;
  margin-left: 7.5px !important;
  margin-right: 7.5px !important;
}
a.ais-Pagination-link {
  text-decoration: none;
  width: 100%;
  display: block;
  height: 100%;
}
li.ais-Pagination-item.ais-Pagination-item--lastPage a.ais-Pagination-link, li.ais-Pagination-item.ais-Pagination-item--nextPage a.ais-Pagination-link, li.ais-Pagination-item.ais-Pagination-item--previousPage a.ais-Pagination-link {
  color: #000;
  text-align: center;
  font-family: "Open Sans";
  font-size: 21px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
ul.ais-HierarchicalMenu-list, ul.ais-RefinementList-list {
    list-style: none;
    margin: 0px;
}
ul.ais-Pagination-list {
    list-style: none;
    display: flex;
    align-items: center;
}
body.archive div#algolia-pagination span.ais-Pagination-link, body.archive div#algolia-pagination a.ais-Pagination-link {
    display: block;
    height: 100%;
    position: relative;
    top: 3px;
}
body.archive .ais-hits--thumbnail{
  float: unset !important;
}
.ctrl-group.top-sort-filter select option, .ctrl-group.top-sort-filter select {
    color: #343A40;
    font-family: "Open Sans";
    font-size: 14px !important;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
}
/* Facets */
#ais-facets .widgettitle{font-weight:700;margin:0px 0;color:#2D3748;text-transform: uppercase;}
#ais-facets .ais-Panel-body{max-height:380px;overflow:auto}
#ais-facets .ais-RefinementList-item{padding:2px 0}
#ais-facets .ais-Panel{background:#fff;border:1px solid #E2E8F0;border-radius:6px;padding:10px;margin-bottom:12px}

/* Collapsible taxonomy blocks and checkboxes */
#ais-facets .facet-block-title{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;margin:0;border:1px solid #E2E8F0;border-radius:4px;background:#f7fafc;color:#0c115b;text-transform:uppercase;font-size:14px}
#ais-facets .facet-block-title .facet-toggle{border:0;background:transparent;color:#0c115b;font-size:16px;line-height:1;cursor:pointer;padding:2px 6px}
#ais-facets .facet-block-title .facet-toggle .icon{display:inline-block;width:16px;text-align:center}
#ais-facets .ais-facets {
  padding: 1rem;
}
#ais-facets .ais-HierarchicalMenu-item{padding:6px 0}
#ais-facets .ais-HierarchicalMenu-link{display:flex;gap:8px;align-items:center}
#ais-facets input.ais-HierarchicalMenu-checkbox {
  appearance: none;
  -webkit-appearance: none;
  min-width: 14px;
  width: 14px;
  height: 14px;
  min-height: 14px;
  border: 1px solid #193154;
  border-radius: 2px;
  display: inline-block;
  text-align: center;
  position: relative;
  background: #fff;
}
.facet-inner h3.widgettitle {
    font-size: 18px;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    text-align: left;
    font-family: "Open Sans";
    border-radius: 0px;
    font-weight: 600 !important;
    color: rgb(12, 17, 91) !important;
    border-top: 1px solid rgb(2, 129, 198) !important;
    border-bottom: 1px solid rgb(2, 129, 198) !important;
    padding: 1rem !important;
}
#ais-facets .ais-HierarchicalMenu-item--selected input.ais-HierarchicalMenu-checkbox{background:#0c115b;border-color:#0c115b}
#ais-facets .ais-HierarchicalMenu-item--selected input.ais-HierarchicalMenu-checkbox:after{content:'';position:absolute;left:3px;top:1px;width:6px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.search .breadcrumb-in {
    max-width: var(--global-content-width);
    margin: auto;
    padding: 0 var(--global-content-edge-padding);
}
.search .restek-search-header {
    margin: 0px !important;
    max-width: unset !important;
    padding: unset !important;
}
.search nav.restek-breadcrumbs {
    background-color: #F3F4F8;
    padding: 30px 0px;
}
.search h1.restek-search-title {
    max-width: var(--global-content-width);
    margin: 23px auto 38px auto;
    padding: 0 var(--global-content-edge-padding);
}
.ais-hits--content span.icon-play {
    border: 2px solid #fff;
    border-radius: 50%;
}
/* Empty facet message */
#ais-facets .facet-empty{
  padding:8px 0;
  color:#a0a0a0;
  font-size:13px;
  font-style:italic;
}
.ais-hits--thumbnail {
    position: relative;
}
.restek-post-badge {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 109px;
    display: flex;
    height: 30px;
    z-index: 2;
    background: #198754;
    color: #fff;
    font-weight: 400;
    font-family: 'Open Sans';
    font-size: 14px;
    line-height: 22px;
    padding: 4px 25px;
    border-radius: 0px;
    align-items: center;
    text-align: center;
    justify-content: center;
}

/* Stats text like: Showing X – Y of Z results */
.ais-Stats{font-size:14px;color:#4A5568}
.ais-Stats-text{white-space:nowrap}
section#facet-resource-type .facet-empty {
    display: none;
}
section#facet-resource-technique .facet-empty {
    display: none;
}
button.ais-RefinementList-showMore.ais-RefinementList-showMore--disabled {
    display: none;
}
.ais-facets ul {
    margin-bottom: 0px;
}
.ais-RefinementList-count{
  display: none;
}
button.ais-RefinementList-showMore {
    font-family: 'Open Sans';
    padding: 0;
    font-size: 16px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.75;
    letter-spacing: normal;
    text-align: left;
    color: #015e9a;
    background-color: #fff;
    margin-top: 15px;
}
#ais-facets .ais-HierarchicalMenu-item--selected .ais-HierarchicalMenu-list--child input.ais-HierarchicalMenu-checkbox {
    background: transparent;
    border-color: #0c115b;
}

#ais-facets .ais-HierarchicalMenu-item--selected .ais-HierarchicalMenu-list--child  .ais-HierarchicalMenu-link--selected input.ais-HierarchicalMenu-checkbox {
    background: #0c115b;
}
h3.widgettitle.facet-block-title {
    font-size: 18px !important;
    font-stretch: normal !important;
    font-style: normal  !important;
    line-height: 1.33  !important;
    letter-spacing: normal  !important;
    text-align: left  !important;
    font-family: 'Open Sans'  !important;
    color: #0c115b !important;
    border-top: 1px solid #0281c6 !important;
    border-bottom: 1px solid #0281c6 !important;
    padding: 1rem !important;
    border-radius: 0px !important;
}
/* Responsive breakpoints */
@media (min-width: 992px){
  #algolia-hits .ais-Hits-list{grid-template-columns:repeat(4,1fr)}
}
@media (max-width: 1200px){
  #algolia-hits .ais-Hits-list{grid-template-columns:repeat(3,1fr)}
}
@media (max-width: 992px){
  /* Stack sidebar under results on tablets */
  #ais-wrapper{grid-template-columns:1fr}
  #ais-facets{order:2}
  #algolia-hits .ais-Hits-list{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 560px){
  #algolia-hits .ais-Hits-list{grid-template-columns:1fr}
}

/* ===== No Results Layout ===== */
.restek-no-results{max-width:100%;margin:0 auto 40px;padding:0 16px}
.restek-no-results .nores-head{
  border-radius: 4px; 
  border: 1px solid #DCE6EF; 
  background: #FFF; 
  margin:12px 0;
}
p#restek-did-you-mean {
    font-size: 18px;
}
.restek-no-results .nores-head__inner{padding:18px 16px}
.restek-no-results .nores-head p {
    color: #000;
    text-align: center;
    font-family: "Open Sans";
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}
.restek-no-results .nores-head p strong{font-weight:700}

.restek-no-results .nores-body{margin-top:40px}
.restek-no-results .nores-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px}
.restek-no-results .nores-card {
    border: 1px solid #DCE6EF;
    background: #FFF;
}
.restek-no-results .no-res-search-tips li {
    margin: 6px 0;
    color: #000;
    font-family: 'Open Sans';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
}

/* Help card */
.nores-card.nores-help{padding:30px}
.nores-card.nores-help h3 {
    color: #000;
    font-feature-settings: 'liga' off;
    font-family: "Open Sans";
    font-size: 24px;
    font-style: normal;
    margin-bottom: 24px;
    font-weight: 600;
    line-height: normal;
}
.nores-card.nores-help hr {
    background: #CED4DA !important;
    margin: 25px 0px;
}
.nores-card.nores-help p {
    color: #000;
    font-family: 'Open Sans';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
}
.nores-card .nores-contact{margin:23px 0px 0 0;padding:0;list-style:none}
.nores-card .nores-contact li {
    margin: 6px 0;
    color: #000;
    font-family: 'Open Sans';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
}
.nores-card .nores-contact a {
    text-decoration: none;
    color: #0281C6;
    font-family: 'Open Sans';
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 22px;
}
.nores-card .nores-contact a:hover{text-decoration:underline}

/* CTA cards (blue) */
.nores-card.nores-cta {
    position: relative;
    border: none;
    background: linear-gradient(0deg, rgba(2, 129, 198, 0.20) 0%, rgba(2, 129, 198, 0.20) 100%), url('/wp-content/uploads/feature-restek-default.jpg') lightgray -1116.011px 0px / 395.069% 100% no-repeat;
    color: #fff;
    text-decoration: none;
}
.nores-card.nores-cta .nores-cta__inner {
    display: flex;
    flex-direction: column;
    gap: 10px;
    justify-content: center;
    padding: 30px;
    height: 100%;
}
.nores-card.nores-cta h3 {
    color: #fff;
    font-feature-settings: 'liga' off;
    font-family: 'Open Sans';
    font-style: normal;
    margin-bottom: 12px;
    font-weight: 600;
    font-size: 20px;
    line-height: 24px;
}
.nores-card.nores-cta p {
    margin: 0;
    color: #FFF;
    font-family: 'Open Sans';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
}
span.nores-cta__btn {
    display: flex;
    height: 38px;
    padding: 5px 18px;
    justify-content: center;
    align-items: center;
    border-radius: 2px 0 0 2px;
    background: #0C115B;
    color: #fff;
    text-align: center;
    font-family: 'Open Sans';
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0.36px;
    text-transform: uppercase;
    margin-top: 24px;
}

/* Responsive for no-results grid */
@media (max-width: 992px){
  .restek-no-results .nores-grid{grid-template-columns:1fr}
}
