.fst-shop-page{background:#fff;color:var(--fst-text,#343b47)}
.fst-shop-shell{width:min(calc(100% - 48px),var(--fst-container,1240px));margin:0 auto}
.fst-shop-intro{padding:34px 0 28px;border-bottom:1px solid var(--fst-border,#dce3e7);background:linear-gradient(180deg,#f7fbfd 0%,#fff 100%)}
.fst-shop-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 20px;color:var(--fst-muted,#68717d);font-size:.78rem}.fst-shop-breadcrumbs a{color:inherit;text-decoration:none}.fst-shop-breadcrumbs a:hover{color:var(--fst-blue-dark,#005a84)}.fst-shop-breadcrumbs span[aria-hidden]{opacity:.55}.fst-shop-breadcrumbs [aria-current=page]{color:var(--fst-ink,#202633)}
.fst-shop-intro__row{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:46px;align-items:end}.fst-shop-eyebrow{margin:0 0 10px;color:var(--fst-green-dark,#3d8500);font-size:.73rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.fst-shop-intro h1{margin:0;color:var(--fst-ink,#202633);font-size:clamp(2rem,4.5vw,3.5rem);line-height:1;letter-spacing:-.045em}.fst-shop-intro__description{max-width:760px;margin-top:14px;color:var(--fst-muted,#68717d);font-size:.9rem;line-height:1.65}.fst-shop-intro__description p{margin:0}.fst-shop-intro__quote{display:flex;flex-direction:column;gap:5px;padding:18px 20px;border:1px solid #bfd6e1;border-radius:10px;background:#fff;color:var(--fst-blue-dark,#005a84);text-decoration:none}.fst-shop-intro__quote strong{font-size:.9rem}.fst-shop-intro__quote span{color:var(--fst-muted,#68717d);font-size:.78rem;line-height:1.45}
.fst-shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0 14px}.fst-shop-toolbar__left{display:flex;align-items:center;gap:14px}.fst-shop-filter-toggle{display:none;align-items:center;gap:8px;min-height:42px;padding:8px 13px;border:1px solid var(--fst-border,#dce3e7)!important;border-radius:7px;background:#fff!important;color:var(--fst-ink,#202633)!important;font-weight:750;box-shadow:none!important}.fst-shop-filter-toggle svg,.fst-shop-filters__mobile-head button svg,.fst-shop-active-filters svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.fst-shop-filter-toggle b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--fst-blue-dark,#005a84);color:#fff;font-size:.67rem}.fst-shop-result-count{color:var(--fst-muted,#68717d);font-size:.82rem}
.fst-shop-ordering{display:flex;align-items:center;gap:9px;margin:0}.fst-shop-ordering label{color:var(--fst-muted,#68717d);font-size:.75rem;font-weight:700}.fst-shop-ordering select{min-width:190px;height:42px;margin:0;border:1px solid var(--fst-border,#dce3e7);border-radius:7px;background:#fff;color:var(--fst-ink,#202633);padding:0 34px 0 12px;font:inherit;font-size:.8rem}
.fst-shop-active-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:0 0 16px}.fst-shop-active-filters__label{color:var(--fst-muted,#68717d);font-size:.75rem;font-weight:700}.fst-shop-active-filters a{display:inline-flex;align-items:center;gap:6px;min-height:31px;padding:5px 9px;border:1px solid var(--fst-border,#dce3e7);border-radius:999px;background:#fff;color:var(--fst-ink,#202633);font-size:.72rem;font-weight:700;text-decoration:none}.fst-shop-active-filters a:hover{border-color:#abc6d2;color:var(--fst-blue-dark,#005a84)}.fst-shop-active-filters__clear{border:0!important;color:var(--fst-blue-dark,#005a84)!important;background:transparent!important;padding-inline:5px!important}
.fst-shop-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:30px;padding-bottom:70px}.fst-shop-filters{position:relative;align-self:start;border:1px solid var(--fst-border,#dce3e7);border-radius:9px;background:#fff}.fst-shop-filters__mobile-head{display:none}.fst-shop-filter-form{margin:0;padding:0}.fst-shop-filter-group{padding:20px}.fst-shop-filter-group+.fst-shop-filter-group{border-top:1px solid var(--fst-border,#dce3e7)}.fst-shop-filter-group h2{margin:0 0 13px;color:var(--fst-ink,#202633);font-size:.85rem;letter-spacing:0}.fst-shop-filter-categories{display:flex;flex-direction:column}.fst-shop-filter-category{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;color:var(--fst-text,#343b47);font-size:.78rem;text-decoration:none}.fst-shop-filter-category small{display:grid;place-items:center;min-width:27px;height:22px;border-radius:999px;background:var(--fst-surface-alt,#f5f8f9);color:var(--fst-muted,#68717d);font-size:.66rem}.fst-shop-filter-category:hover,.fst-shop-filter-category.is-active{color:var(--fst-blue-dark,#005a84);font-weight:750}.fst-shop-filter-category.is-active small{background:var(--fst-blue-soft,#eef7fa);color:var(--fst-blue-dark,#005a84)}
.fst-shop-price-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.fst-shop-price-fields label span{display:block;margin-bottom:5px;color:var(--fst-muted,#68717d);font-size:.66rem;font-weight:700}.fst-shop-price-fields input{width:100%;height:40px;border:1px solid var(--fst-border,#dce3e7);border-radius:6px;padding:0 9px;background:#fff;color:var(--fst-ink,#202633);font-size:.77rem}.fst-shop-price-fields input:focus{border-color:var(--fst-blue-dark,#005a84);outline:2px solid rgba(0,90,132,.12);outline-offset:1px}.fst-shop-apply{width:100%;min-height:41px;margin-top:11px;border:1px solid var(--fst-blue-dark,#005a84)!important;border-radius:6px;background:var(--fst-blue-dark,#005a84)!important;color:#fff!important;font-weight:800;box-shadow:none!important}.fst-shop-apply:hover{background:#004a6d!important}.fst-shop-clear{display:block;margin:0 20px 20px;color:var(--fst-blue-dark,#005a84);font-size:.74rem;font-weight:700;text-decoration:none}
.fst-shop-products{min-width:0}.fst-shop-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fst-shop-empty{padding:50px 24px;border:1px dashed var(--fst-border,#dce3e7);border-radius:8px;background:var(--fst-surface-alt,#f5f8f9);text-align:center}.fst-shop-empty h2{margin:0;color:var(--fst-ink,#202633);font-size:1.35rem}.fst-shop-empty p{margin:9px auto 18px;max-width:520px;color:var(--fst-muted,#68717d)}.fst-shop-empty a{color:var(--fst-blue-dark,#005a84);font-weight:800}
.fst-shop-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;margin-top:34px}.fst-shop-pagination span{display:inline-flex}.fst-shop-pagination .page-numbers{display:grid;place-items:center;min-width:40px;height:40px;padding:0 10px;border:1px solid var(--fst-border,#dce3e7);border-radius:6px;background:#fff;color:var(--fst-text,#343b47);font-size:.78rem;font-weight:700;text-decoration:none}.fst-shop-pagination .page-numbers:hover{border-color:#aac5d2;color:var(--fst-blue-dark,#005a84)}.fst-shop-pagination .page-numbers.current{border-color:var(--fst-blue-dark,#005a84);background:var(--fst-blue-dark,#005a84);color:#fff}
.fst-shop-filter-backdrop{display:none}
@media(max-width:1080px){.fst-shop-layout{grid-template-columns:220px minmax(0,1fr);gap:22px}.fst-shop-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fst-shop-intro__row{grid-template-columns:minmax(0,1fr) 270px;gap:30px}}
@media(max-width:767px){.fst-shop-shell{width:min(calc(100% - 28px),var(--fst-container,1240px))}.fst-shop-intro{padding:25px 0 20px}.fst-shop-intro__row{grid-template-columns:1fr;gap:18px}.fst-shop-intro__description{display:none}.fst-shop-intro__quote{display:none}.fst-shop-breadcrumbs{margin-bottom:14px;font-size:.7rem}.fst-shop-toolbar{position:relative;padding:14px 0 10px}.fst-shop-filter-toggle{display:inline-flex}.fst-shop-ordering label{display:none}.fst-shop-ordering select{min-width:0;width:145px;height:42px}.fst-shop-layout{grid-template-columns:1fr;gap:0;padding-bottom:54px}.fst-shop-filters{position:fixed;z-index:100002;left:0;top:0;bottom:0;width:min(88vw,360px);height:100dvh;border:0;border-radius:0;overflow:auto;transform:translateX(-105%);transition:transform .22s ease;box-shadow:18px 0 40px rgba(20,35,45,.18)}.fst-shop-page.is-filter-open .fst-shop-filters{transform:translateX(0)}.fst-shop-filters__mobile-head{position:sticky;z-index:2;top:0;display:flex;align-items:center;justify-content:space-between;min-height:62px;padding:0 18px;border-bottom:1px solid var(--fst-border,#dce3e7);background:#fff}.fst-shop-filters__mobile-head strong{color:var(--fst-ink,#202633)}.fst-shop-filters__mobile-head button{display:grid;place-items:center;width:42px;height:42px;border:0!important;background:transparent!important;color:var(--fst-ink,#202633)!important;padding:0!important;box-shadow:none!important}.fst-shop-filter-backdrop{position:fixed;z-index:100001;inset:0;width:100%;height:100%;margin:0;padding:0;border:0!important;background:rgba(14,25,32,.45)!important;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}.fst-shop-page.is-filter-open~.fst-shop-filter-backdrop{display:block;opacity:1;visibility:visible;pointer-events:auto}.fst-shop-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fst-shop-active-filters{padding-bottom:11px;overflow-x:auto;flex-wrap:nowrap}.fst-shop-active-filters__label{display:none}.fst-shop-active-filters a{flex:0 0 auto}.fst-shop-pagination{margin-top:26px}.fst-shop-pagination .prev,.fst-shop-pagination .next{padding-inline:8px}.fst-shop-result-count{font-size:.74rem}}
@media(max-width:370px){.fst-shop-ordering select{width:132px;font-size:.72rem}.fst-shop-toolbar__left{gap:8px}.fst-shop-filter-toggle{padding-inline:10px}.fst-shop-product-grid{gap:8px}}
@media(prefers-reduced-motion:reduce){.fst-shop-filters,.fst-shop-filter-backdrop{transition:none!important}}
@media(max-width:767px){html.fst-shop-filter-open,html.fst-shop-filter-open body{overflow:hidden}.fst-shop-filters{visibility:hidden}.fst-shop-page.is-filter-open .fst-shop-filters{visibility:visible}}

/* Furstatec catalogue empty state — intentionally quiet and editorial */
.fst-shop-empty {
  display: block;
  padding: 34px 0 32px !important;
  border: 0 !important;
  border-top: 1px solid var(--fst-border,#dce3e7) !important;
  border-bottom: 1px solid var(--fst-border,#dce3e7) !important;
  border-radius: 0 !important;
  background: transparent !important;
  text-align: left !important;
}
.fst-shop-empty h2 {
  margin: 0 !important;
  color: var(--fst-ink,#202633);
  font-size: clamp(1.35rem,2.4vw,1.8rem) !important;
  line-height: 1.15;
  letter-spacing: -.025em;
}
.fst-shop-empty p {
  margin: 9px 0 15px !important;
  max-width: 560px;
  color: var(--fst-muted,#68717d);
  font-size: .88rem;
  line-height: 1.6;
}
.fst-shop-empty > a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--fst-blue-dark,#005a84) !important;
  text-decoration: none;
  font-size: .8rem;
  font-weight: 800;
  box-shadow: none !important;
}
.fst-shop-empty > a span {
  transition: transform .15s ease;
}
.fst-shop-empty > a:hover,
.fst-shop-empty > a:focus {
  color: var(--fst-green-dark,#3d8500) !important;
  background: transparent !important;
}
.fst-shop-empty > a:hover span,
.fst-shop-empty > a:focus span {
  transform: translateX(3px);
}
.fst-shop-empty > a:focus-visible {
  outline: 2px solid var(--fst-blue-dark,#005a84);
  outline-offset: 4px;
}
@media(max-width:767px){
  .fst-shop-empty {padding:26px 0 25px !important;}
  .fst-shop-empty h2 {font-size:1.35rem !important;}
}
@media(prefers-reduced-motion:reduce){
  .fst-shop-empty > a span {transition:none !important;}
}


/* v1.4.8 archive control leakage fix.
 * The filter backdrop is a real <button> used only on mobile. Elementor/global
 * button rules can otherwise force it visible on desktop as an empty pink pill.
 */
.fst-shop-filter-backdrop,
button.fst-shop-filter-backdrop,
.fst-shop-filter-backdrop[aria-hidden="true"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Archive controls must not inherit Elementor's global button palette. */
.fst-shop-page button.fst-shop-filter-toggle,
.fst-shop-page button.fst-shop-apply,
.fst-shop-page .fst-shop-pagination .page-numbers,
.fst-shop-page .fst-shop-pagination .page-numbers:hover,
.fst-shop-page .fst-shop-pagination .page-numbers:focus,
.fst-shop-page .fst-shop-pagination .page-numbers:active {
  box-shadow: none !important;
  text-shadow: none !important;
  transform: none !important;
}

.fst-shop-page button.fst-shop-filter-toggle,
.fst-shop-page button.fst-shop-filter-toggle:hover,
.fst-shop-page button.fst-shop-filter-toggle:focus,
.fst-shop-page button.fst-shop-filter-toggle:active {
  border: 1px solid var(--fst-border,#dce3e7) !important;
  background: #fff !important;
  color: var(--fst-ink,#202633) !important;
}

.fst-shop-page button.fst-shop-filter-toggle:hover,
.fst-shop-page button.fst-shop-filter-toggle:focus {
  border-color: #a9c8d6 !important;
  background: var(--fst-blue-soft,#eef7fa) !important;
  color: var(--fst-blue-dark,#005a84) !important;
}

.fst-shop-page button.fst-shop-apply,
.fst-shop-page button.fst-shop-apply:hover,
.fst-shop-page button.fst-shop-apply:focus,
.fst-shop-page button.fst-shop-apply:active {
  border-color: var(--fst-blue-dark,#005a84) !important;
  background: var(--fst-blue-dark,#005a84) !important;
  color: #fff !important;
}

.fst-shop-page button.fst-shop-apply:hover,
.fst-shop-page button.fst-shop-apply:focus {
  background: #004a6d !important;
}

.fst-shop-page .fst-shop-pagination .page-numbers {
  border-color: var(--fst-border,#dce3e7) !important;
  background: #fff !important;
  color: var(--fst-text,#343b47) !important;
}

.fst-shop-page .fst-shop-pagination .page-numbers:hover,
.fst-shop-page .fst-shop-pagination .page-numbers:focus {
  border-color: #aac5d2 !important;
  background: var(--fst-blue-soft,#eef7fa) !important;
  color: var(--fst-blue-dark,#005a84) !important;
}

.fst-shop-page .fst-shop-pagination .page-numbers.current {
  border-color: var(--fst-blue-dark,#005a84) !important;
  background: var(--fst-blue-dark,#005a84) !important;
  color: #fff !important;
}

@media (max-width: 767px) {
  .fst-shop-page.is-filter-open ~ .fst-shop-filter-backdrop,
  .fst-shop-page.is-filter-open + .fst-shop-filter-backdrop,
  button.fst-shop-filter-backdrop[data-fst-filter-close] {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
  }

  .fst-shop-page.is-filter-open ~ .fst-shop-filter-backdrop,
  .fst-shop-page.is-filter-open + .fst-shop-filter-backdrop {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    position: fixed !important;
    z-index: 100001 !important;
    inset: 0 !important;
    border: 0 !important;
    background: rgba(14,25,32,.45) !important;
  }
}
