.azfs-wrap{display:flex;align-items:center}
.azfs-trigger{background:none;border:0;padding:6px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;color:inherit;font-size:20px;line-height:1;transition:color .2s,opacity .2s}
.azfs-trigger:hover{opacity:.75;background:none}
.azfs-trigger:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.azfs-trigger svg{width:1em;height:1em;fill:currentColor}
.azfs-trigger__label{font-size:.7em;letter-spacing:.15em;text-transform:uppercase}

/* Modal */
.azfs-modal{--azfs-overlay:rgba(10,10,10,.75);--azfs-bg:#faf7f2;--azfs-text:#1a1a1a;--azfs-accent:#b08d57;
  position:fixed;inset:0;z-index:999999;display:flex;align-items:flex-start;justify-content:center;
  visibility:hidden;opacity:0;transition:opacity .3s ease,visibility .3s ease}
.azfs-modal.is-open{visibility:visible;opacity:1}
.azfs-modal__overlay{position:absolute;inset:0;background:var(--azfs-overlay);backdrop-filter:blur(4px)}
.azfs-modal__panel{position:relative;width:min(1000px,94vw);max-height:90vh;overflow-y:auto;margin-top:5vh;
  background:var(--azfs-bg);color:var(--azfs-text);padding:56px 48px 40px;box-shadow:0 30px 80px rgba(0,0,0,.35);
  transform:translateY(-24px);transition:transform .35s ease}
.azfs-modal.is-open .azfs-modal__panel{transform:translateY(0)}
.azfs-close{position:absolute;top:14px;right:18px;background:none;border:0;font-size:34px;line-height:1;cursor:pointer;color:var(--azfs-text);padding:4px 10px}
.azfs-close:hover{color:var(--azfs-accent);background:none}
.azfs-title{margin:0 0 28px;text-align:center;font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:30px;letter-spacing:.35em;color:var(--azfs-text);text-transform:uppercase}

/* Search bar */
.azfs-form{position:relative;max-width:640px;margin:0 auto 30px}
.azfs-form__icon{position:absolute;left:4px;top:50%;transform:translateY(-50%);fill:var(--azfs-accent)}
.azfs-input{width:100%;border:0!important;border-bottom:1px solid var(--azfs-text)!important;border-radius:0!important;background:transparent!important;
  padding:12px 8px 12px 34px!important;font-size:16px;letter-spacing:.08em;color:var(--azfs-text);outline:none!important;box-shadow:none!important}
.azfs-input:focus{border-bottom-color:var(--azfs-accent)!important}
.azfs-input::placeholder{color:rgba(0,0,0,.4);letter-spacing:.1em}

/* Tabs */
.azfs-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px;margin-bottom:30px;padding-bottom:18px;border-bottom:1px solid rgba(0,0,0,.1)}
.azfs-tab{background:none;border:0;padding:6px 2px;cursor:pointer;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--azfs-text);opacity:.55;
  border-bottom:2px solid transparent;transition:all .25s;border-radius:0}
.azfs-tab:hover{opacity:1;background:none;color:var(--azfs-text)}
.azfs-tab.is-active{opacity:1;border-bottom-color:var(--azfs-accent);color:var(--azfs-text);background:none}

/* Products */
.azfs-results{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;min-height:180px}
.azfs-card{display:flex;flex-direction:column;text-decoration:none;color:var(--azfs-text);text-align:center;gap:8px;transition:transform .25s}
.azfs-card:hover{transform:translateY(-4px)}
.azfs-card__img{display:block;aspect-ratio:1/1;overflow:hidden;background:#efe9df}
.azfs-card__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.azfs-card:hover .azfs-card__img img{transform:scale(1.06)}
.azfs-card__title{font-size:13px;letter-spacing:.12em;text-transform:uppercase;line-height:1.4}
.azfs-card__price{font-size:13px;color:var(--azfs-accent)}
.azfs-card__price del{opacity:.5;margin-right:6px}
.azfs-card__price ins{text-decoration:none}
.azfs-empty,.azfs-loading{grid-column:1/-1;text-align:center;opacity:.6;letter-spacing:.1em;padding:50px 0;font-size:14px}
.azfs-footer{text-align:center;margin-top:32px}
.azfs-viewall{display:inline-block;padding:13px 38px;border:1px solid var(--azfs-text);color:var(--azfs-text);text-decoration:none;font-size:12px;letter-spacing:.25em;transition:all .25s}
.azfs-viewall:hover{background:var(--azfs-text);color:var(--azfs-bg)}

body.azfs-lock{overflow:hidden}

@media(max-width:900px){.azfs-results{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){
  .azfs-modal__panel{width:100vw;max-height:100vh;height:100vh;margin-top:0;padding:56px 18px 28px}
  .azfs-title{font-size:20px;letter-spacing:.25em}
  .azfs-results{grid-template-columns:repeat(2,1fr);gap:14px}
  .azfs-tabs{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;gap:22px;-webkit-overflow-scrolling:touch}
  .azfs-tab{white-space:nowrap}
}
