/* A focused search control with the same red and navy language as the store. */
.storefront .catalog-toolbar {
  padding: 23px 24px;
  border-color: #e4e5e7;
  border-radius: 21px;
  background: linear-gradient(135deg, #fff 75%, #f7f7f8 100%);
  box-shadow: 0 17px 40px #13161c10;
}
.storefront .catalog-finder-head { padding-bottom: 6px; }
.storefront .catalog-finder-head h2 { font-size: clamp(25px, 2.25vw, 31px); letter-spacing: -.04em; }
.storefront .catalog-finder-head p { margin-top: 5px; font-size: 12px; }
.storefront .catalog-toolbar .catalog-product-search {
  height: 68px;
  min-height: 68px;
  gap: 14px;
  padding: 8px 118px 8px 11px;
  border: 1px solid transparent;
  border-radius: 16px;
  background: linear-gradient(#fff, #fff) padding-box, linear-gradient(110deg, #a4d5d2, #c9d9e8 38%, #dfe1e4) border-box;
  box-shadow: 0 8px 24px #14171d10, inset 0 1px 0 #fff;
  transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}
.storefront .catalog-toolbar .catalog-product-search:hover { border-color: #b9cbdc; box-shadow: 0 9px 23px #14171d14; }
.storefront .catalog-toolbar .catalog-product-search:focus-within { border-color: #1b212a; box-shadow: 0 0 0 4px #1b212a16, 0 10px 25px #14171d17; }
.storefront .catalog-toolbar .catalog-search-mark {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: linear-gradient(145deg, #202630, #171c24);
  color: #fff;
  box-shadow: 0 6px 13px #181d2633;
}
.storefront .catalog-toolbar .catalog-search-mark svg { width: 22px; height: 22px; }
.storefront .catalog-toolbar .catalog-search-caption { color: #191e28; font-size: 10px; font-weight: 900; letter-spacing: .11em; }
.storefront .catalog-toolbar .catalog-product-search input { height: 25px; color: #151920; font-size: 15px; font-weight: 700; }
.storefront .catalog-toolbar .catalog-product-search input::placeholder { color: #8295aa; opacity: 1; }
.storefront .catalog-search-submit {
  position: absolute;
  z-index: 2;
  top: 10px;
  right: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  width: 100px;
  height: 48px;
  border: 0;
  border-radius: 11px;
  background: #eeeff0;
  color: #191e27;
  font: 800 12px Montserrat, Arial, sans-serif;
  cursor: pointer;
  transition: background .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.storefront .catalog-search-submit svg { width: 17px; height: 17px; transition: transform .2s ease; }
.storefront .catalog-search-submit:hover { transform: translateY(-2px); background: #1a1f28; color: #fff; box-shadow: 0 8px 16px #1a202936; }
.storefront .catalog-search-submit:hover svg { transform: translateX(3px); }
.storefront .catalog-search-submit:focus-visible { outline: 3px solid #1a1f2870; outline-offset: 2px; }
.storefront .smart-filter-open {
  min-height: 68px;
  border-radius: 16px;
  background: linear-gradient(135deg, #171c23, #101319);
  box-shadow: 0 7px 18px #12161d26;
  font-size: 13px;
}
.storefront .smart-filter-open:hover { background: linear-gradient(135deg, #20252d, #151920); box-shadow: 0 11px 23px #12161d33; }
.storefront .smart-filter-open[aria-expanded="true"] { background: linear-gradient(135deg, #1b202a, #171c24); border-color: #171c25; box-shadow: 0 10px 24px #1b202a36; }
.storefront .smart-filter-open[aria-expanded="true"] svg { transform: rotate(90deg); }
.storefront .smart-filter-open svg { transition: transform .32s cubic-bezier(.22, 1, .36, 1); }
.storefront .catalog-filter-status[hidden] { display: none; }
.storefront .catalog-filter-status:not([hidden]) { min-height: 0; padding-top: 9px; }

/* The filter workspace unfolds within the finder using the cart drawer's timing. */
.storefront .smart-filter-dialog[open]:not(.is-closing) {
  animation: catalog-filter-reveal .36s cubic-bezier(.22, 1, .36, 1) both;
  transform-origin: top center;
}
.storefront .smart-filter-dialog[open].is-closing {
  pointer-events: none;
  animation: catalog-filter-hide .22s ease-in both;
  transform-origin: top center;
}
.storefront .smart-filter-dialog.is-animating { overflow: hidden; }
@keyframes catalog-filter-reveal {
  from { opacity: 0; transform: translateX(32px) scale(.985); clip-path: inset(0 0 0 100% round 13px); }
  to { opacity: 1; transform: none; clip-path: inset(0 0 0 0 round 13px); }
}
@keyframes catalog-filter-hide {
  from { opacity: 1; transform: none; clip-path: inset(0 0 0 0 round 13px); }
  to { opacity: 0; transform: translateX(32px) scale(.985); clip-path: inset(0 0 0 100% round 13px); }
}
@media (max-width: 620px) {
  .storefront .catalog-toolbar { padding: 16px; border-radius: 17px; }
  .storefront .catalog-finder-head h2 { font-size: 22px; }
  .storefront .catalog-toolbar .catalog-product-search { height: 60px; min-height: 60px; gap: 10px; padding: 6px 59px 6px 7px; }
  .storefront .catalog-toolbar .catalog-search-mark { width: 42px; height: 42px; }
  .storefront .catalog-toolbar .catalog-product-search input { font-size: 13px; }
  .storefront .catalog-search-submit { top: 9px; right: 8px; width: 43px; height: 42px; border-radius: 10px; }
  .storefront .catalog-search-submit span { display: none; }
  .storefront .smart-filter-open { min-height: 49px; font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  .storefront .catalog-toolbar .catalog-product-search { transition: none; }
  .storefront .catalog-search-submit, .storefront .catalog-search-submit svg, .storefront .smart-filter-open svg { transition: none; }
  .storefront .smart-filter-dialog[open]:not(.is-closing),
  .storefront .smart-filter-dialog[open].is-closing { animation: none; }
}
