.fa-products,
.fa-products *{box-sizing:border-box}
.fa-products{
  --fa-ink:#082f49;
  --fa-muted:#55748a;
  --fa-line:#d7eaf3;
  --fa-surface:#fff;
  --fa-soft:#f1fbff;
  --fa-accent:#ff9f1c;
  --fa-accent-dark:#c76500;
  width:100%;
  color:var(--fa-ink);
  font-family:Inter,Manrope,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  isolation:isolate;
}
.fa-products a,.fa-products a:hover,.fa-products a:focus{text-decoration:none!important}
.fa-products__header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 30px}
.fa-products__eyebrow{display:block;margin:0 0 8px;color:var(--fa-accent-dark);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.fa-products__title{margin:0!important;color:var(--fa-ink)!important;font-family:inherit!important;font-size:clamp(30px,4vw,48px)!important;font-weight:750!important;line-height:1.06!important;letter-spacing:-.035em!important;text-decoration:none!important}
.fa-products__tools{display:flex;gap:10px;align-items:center}
.fa-products__search{display:flex;align-items:center;gap:10px;min-width:300px;height:48px;padding:0 14px;border:1px solid var(--fa-line);border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(17,36,59,.05)}
.fa-products__search svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;color:#7d8998}
.fa-products__search input{width:100%;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:var(--fa-ink)!important;font:inherit!important}
.fa-products__tools select{height:48px;padding:0 38px 0 14px;border:1px solid var(--fa-line);border-radius:12px;background:#fff;color:var(--fa-ink);font:600 14px/1 inherit}
.fa-products__grid{display:grid;grid-template-columns:repeat(var(--fa-columns),minmax(0,1fr));gap:28px;align-items:stretch}
.fa-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--fa-line);border-radius:18px;background:var(--fa-surface);box-shadow:0 16px 44px rgba(8,84,120,.095);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.fa-card:hover{transform:translateY(-5px);border-color:rgba(0,180,216,.55);box-shadow:0 26px 66px rgba(8,84,120,.17)}
.fa-card__media{position:relative;display:block;height:260px;overflow:hidden;background:linear-gradient(135deg,#dff7ff,#cdeff7)}
.fa-card__media img,.fa-card__placeholder{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.fa-card:hover .fa-card__media img{transform:scale(1.045)}
.fa-card__placeholder{background:linear-gradient(135deg,#e5f9ff,#d5eef6)}
.fa-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,31,53,.02) 38%,rgba(10,31,53,.72) 100%)}
.fa-card__badge{position:absolute;top:16px;left:16px;max-width:calc(100% - 32px);padding:8px 11px;border:1px solid rgba(255,255,255,.55);border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.97),rgba(235,250,255,.95));backdrop-filter:blur(8px);color:#073b5c;font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.fa-card__destination{position:absolute;left:18px;right:18px;bottom:16px;display:flex;align-items:center;gap:7px;color:#fff;font-size:13px;font-weight:750;text-shadow:0 2px 10px rgba(0,0,0,.3)}
.fa-card svg{width:17px;height:17px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.fa-card__body{display:flex;flex:1;flex-direction:column;padding:22px}
.fa-card__meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin-bottom:12px;color:#708095;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.045em}
.fa-card__meta span{display:inline-flex;align-items:center;gap:6px}
.fa-card__title{margin:0 0 12px!important;font-family:inherit!important;font-size:24px!important;font-weight:760!important;line-height:1.18!important;letter-spacing:-.025em!important}
.fa-card__title a{color:var(--fa-ink)!important;text-decoration:none!important;box-shadow:none!important;background:none!important}
.fa-card__title a:hover{color:var(--fa-accent-dark)!important}
.fa-card__description{display:-webkit-box;min-height:52px;margin:0 0 20px!important;overflow:hidden;color:var(--fa-muted)!important;font-size:14.5px!important;line-height:1.72!important;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.fa-card__footer{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:auto;padding-top:18px;border-top:1px solid var(--fa-line)}
.fa-card__price{display:grid;gap:1px;min-width:90px}
.fa-card__price span,.fa-card__price small{color:#7b8797;font-size:9px;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.fa-card__price strong{color:var(--fa-ink);font-size:21px;font-weight:800;line-height:1.15}
.fa-card__actions{display:flex;gap:8px;align-items:center}
.fa-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;border-radius:9px!important;font-size:12px!important;font-weight:800!important;line-height:1!important;text-decoration:none!important;white-space:nowrap;transition:all .22s ease}
.fa-button--ghost{border:1px solid #ccd7e1;background:#fff;color:var(--fa-ink)!important}
.fa-button--ghost:hover{border-color:var(--fa-ink);background:var(--fa-soft)}
.fa-button--primary{border:1px solid var(--fa-ink);background:linear-gradient(135deg,#0077b6,#009fb7);color:#fff!important}
.fa-button--primary:hover{border-color:#00a6a6;background:linear-gradient(135deg,#008cc4,#00a6a6);color:#fff!important}
.fa-button svg{width:15px;height:15px}
.fa-products__empty,.fa-products__no-results{padding:38px;border:1px solid var(--fa-line);border-radius:16px;background:var(--fa-soft);text-align:center;color:var(--fa-muted)}
.fa-products__empty h3{margin:0 0 8px!important;color:var(--fa-ink)!important;font-family:inherit!important}
@media(max-width:1100px){.fa-products__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fa-products__header{align-items:flex-start;flex-direction:column}.fa-products__tools{width:100%}.fa-products__search{flex:1;min-width:0}}
@media(max-width:680px){.fa-products__grid{grid-template-columns:1fr;gap:20px}.fa-products__header{margin-bottom:22px}.fa-products__tools{align-items:stretch;flex-direction:column}.fa-products__search,.fa-products__tools select{width:100%}.fa-card__media{height:245px}.fa-card__footer{align-items:flex-start;flex-direction:column}.fa-card__actions{width:100%}.fa-button{flex:1}}

/* v9.1 Vibrant Light card overrides */
.fa-products{
  background:transparent;
}
.fa-products__eyebrow{
  color:#d36d00;
}
.fa-card{
  border-color:#d8edf6;
}
.fa-card::before{
  content:"";
  display:block;
  height:3px;
  background:linear-gradient(90deg,#00b4d8,#22c55e,#ffb703);
  opacity:.92;
}
.fa-card__badge{
  border-color:rgba(255,255,255,.8);
  box-shadow:0 8px 22px rgba(3,72,105,.14);
}
.fa-card__meta{
  color:#4e7890;
}
.fa-card__price strong{
  color:#006a9f;
}
.fa-button--ghost{
  border-color:#b9d9e8;
  color:#075985!important;
}
.fa-button--ghost:hover{
  border-color:#00a6a6;
  background:#ecfbff;
  color:#006f79!important;
}
.fa-button--primary{
  box-shadow:0 10px 24px rgba(0,119,182,.20);
}
.fa-products__search,
.fa-products__tools select{
  border-color:#cfe5ef;
  box-shadow:0 9px 24px rgba(8,84,120,.06);
}
