/* YOYONAUTAS V300.173 — Loja compacta com filtros combináveis. */

.page-internal.imt-store-page .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.page-internal.imt-store-page .imt-main {
  width: min(100%, 1220px);
}

.page-internal.imt-store-page .imt-page-hero {
  padding-top: 25px;
  padding-bottom: 22px;
}

.page-internal.imt-store-page .imt-breadcrumb {
  font-size: .59rem;
}

.page-internal.imt-store-page .imt-page-hero h1 {
  max-width: 16ch;
  margin-top: 9px;
  font-size: clamp(2.7rem, 5vw, 4.8rem);
}

.page-internal.imt-store-page .imt-page-intro {
  max-width: 720px;
  margin-top: 10px;
  font-size: .84rem;
  line-height: 1.5;
}

.page-internal.imt-store-page .imt-hero-orbit {
  top: -75%;
  width: 330px;
  opacity: .3;
}

.page-internal.imt-store-page .ys-cover-section {
  padding: 18px 0 0;
}

.page-internal.imt-store-page .ys-cover {
  display: block;
  width: 100%;
  max-height: 230px;
  object-fit: cover;
  border: 1px solid var(--imt-line);
  border-radius: 17px;
}

.page-internal.imt-store-page .ys-shop-section {
  padding-top: 20px;
}

.page-internal.imt-store-page .ys-store-toolbar {
  position: relative;
  z-index: 8;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 9px;
  align-items: start;
  margin-bottom: 13px;
}

.page-internal.imt-store-page .ys-search-field {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 0 14px;
  border: 1px solid var(--imt-line);
  border-radius: 13px;
  background: rgba(255, 255, 255, .035);
}

.page-internal.imt-store-page .ys-search-field svg {
  width: 17px;
  margin-right: 10px;
  fill: none;
  stroke: var(--imt-muted);
  stroke-width: 1.8;
}

.page-internal.imt-store-page .ys-search-field input {
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--imt-text);
  font: inherit;
  font-size: .78rem;
}

.page-internal.imt-store-page .ys-search-field input::placeholder {
  color: var(--imt-muted);
}

.page-internal.imt-store-page .ys-filters {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  flex-wrap:wrap;
  gap: 7px;
  padding: 4px 0 7px;
  border-bottom: 1px solid rgba(255,255,255,.075);
}

.page-internal.imt-store-page .ys-filter-groups {
  display: flex;
  flex: 1;
  flex-wrap:nowrap;
  gap:5px;
  min-width:0;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
  padding-bottom:2px;
}

.page-internal.imt-store-page .ys-filter-panels {
  flex:0 0 100%;
}
.page-internal.imt-store-page .ys-filter-panels fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.page-internal.imt-store-page .ys-filter-panels fieldset[hidden]{display:none}

.page-internal.imt-store-page .ys-filter-group-trigger {
  display: grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:6px;
  flex:0 0 auto;
  width:auto;
  min-height:32px;
  padding:5px 9px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:9px;
  background:rgba(255,255,255,.025);
  color:var(--imt-text);
  font:inherit;
  font-size:.65rem;
  text-align:left;
  cursor:pointer;
}
.page-internal.imt-store-page .ys-filter-group-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.page-internal.imt-store-page .ys-filter-group-trigger small{display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:rgba(217,173,88,.18);color:var(--imt-gold-light);font-size:.55rem}
.page-internal.imt-store-page .ys-filter-group-trigger small:empty{display:none}
.page-internal.imt-store-page .ys-filter-group-trigger b{font-size:.72rem;transition:transform .18s ease}
.page-internal.imt-store-page .ys-filter-group-trigger.is-open b{transform:rotate(180deg)}
.page-internal.imt-store-page .ys-filter-group-trigger:hover,
.page-internal.imt-store-page .ys-filter-group-trigger:focus-visible,
.page-internal.imt-store-page .ys-filter-group-trigger.has-selection,
.page-internal.imt-store-page .ys-filter-group-trigger.is-open{border-color:rgba(217,173,88,.48);background:rgba(217,173,88,.09)}

.page-internal.imt-store-page .ys-filter-options {
  display: flex;
  flex-wrap: wrap;
  gap:5px;
  margin-top:4px;
  padding:7px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:9px;
  background:rgba(255,255,255,.018);
}
.page-internal.imt-store-page .ys-filter-options[hidden]{display:none}

.page-internal.imt-store-page .ys-filter-options label {
  cursor: pointer;
}

.page-internal.imt-store-page .ys-filter-options input { position: absolute; opacity: 0; pointer-events: none; }
.page-internal.imt-store-page .ys-filter-options span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 27px;
  padding: 4px 8px;
  border: 1px solid rgba(255,255,255,.095);
  border-radius: 999px;
  background: rgba(255,255,255,.018);
  color: var(--imt-text);
  font-size: .64rem;
  line-height: 1;
  transition: border-color .18s ease, background .18s ease, color .18s ease;
}
.page-internal.imt-store-page .ys-filter-options label:hover span,
.page-internal.imt-store-page .ys-filter-options input:focus-visible + span { border-color: rgba(217,173,88,.48); }
.page-internal.imt-store-page .ys-filter-options input:checked + span {
  border-color: rgba(217,173,88,.68);
  background: rgba(217,173,88,.16);
  color: var(--imt-gold-light);
}
.page-internal.imt-store-page .ys-filter-options small { color: var(--imt-muted); font-size: .58rem; }
.page-internal.imt-store-page .ys-filter-options input:checked + span small { color: inherit; opacity: .72; }
.page-internal.imt-store-page .ys-filter-clear {
  flex: 0 0 auto;
  padding: 4px 6px;
  border: 0;
  background: transparent;
  color: var(--imt-gold);
  font: inherit;
  font-size: .62rem;
  cursor: pointer;
}

.page-internal.imt-store-page .ys-results-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 15px;
  margin: 4px 0 14px;
}

.page-internal.imt-store-page .ys-results-head h2 {
  margin: 0;
  color: var(--imt-text);
  font-size: 1rem;
  letter-spacing: -.02em;
}

.page-internal.imt-store-page .ys-results-head span {
  color: var(--imt-muted);
  font-size: .68rem;
}

.page-internal.imt-store-page .products {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
  margin: 0;
}

.page-internal.imt-store-page .product {
  overflow: hidden;
  min-width: 0;
  border: 1px solid var(--imt-line);
  border-radius: 17px;
  background: rgba(255, 255, 255, .035);
  color: var(--imt-text);
  text-decoration: none;
  box-shadow: none;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.page-internal.imt-store-page .product[hidden] { display: none; }

.page-internal.imt-store-page .product:hover,
.page-internal.imt-store-page .product:focus-visible {
  transform: translateY(-3px);
  border-color: rgba(217, 173, 88, .34);
  background: rgba(255, 255, 255, .055);
}

.page-internal.imt-store-page .product img { aspect-ratio: 1 / 1; object-fit: cover; }
.page-internal.imt-store-page .product-label { min-height: 64px; }
.page-internal.imt-store-page .product-brand { color: var(--imt-muted); }
.page-internal.imt-store-page .product-model { color: var(--imt-text); }
.page-internal.imt-store-page .product--unavailable img { opacity: .72; }
.page-internal.imt-store-page .product--out-of-stock img { filter: grayscale(1); opacity: .64; }

.page-internal.imt-store-page .ys-filter-empty { margin-top: 14px; }

.page-internal.imt-store-page .ys-market-grid { display: grid; grid-template-columns: 1fr; gap: 12px; }

.page-internal.imt-store-page .ys-market-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px 30px;
  align-items: center;
  padding: 24px;
  border: 1px solid var(--imt-line);
  border-radius: 19px;
  background: rgba(255, 255, 255, .025);
}

.page-internal.imt-store-page .ys-market-card > span {
  grid-column: 1;
  color: var(--imt-gold);
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.page-internal.imt-store-page .ys-market-card h2 {
  grid-column: 1;
  max-width: 30ch;
  margin: 0;
  color: var(--imt-text);
  font-size: clamp(1.4rem, 2.4vw, 2.15rem);
  line-height: 1.05;
  letter-spacing: -.04em;
}

.page-internal.imt-store-page .ys-market-card p { grid-column: 1; margin: 0; color: var(--imt-muted); font-size: .78rem; line-height: 1.55; }
.page-internal.imt-store-page .ys-market-card .imt-actions { grid-column: 2; grid-row: 1 / span 3; margin: 0; }

.page-internal.imt-store-page .ys-footer-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 19px 22px;
  border-top: 1px solid var(--imt-line);
  border-bottom: 1px solid var(--imt-line);
  color: var(--imt-muted);
  font-size: .78rem;
}

@media (max-width: 1120px) {
  .page-internal.imt-store-page .products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .page-internal.imt-store-page .imt-page-hero { padding-top: 20px; padding-bottom: 18px; }
  .page-internal.imt-store-page .imt-page-hero h1 { font-size: clamp(2.35rem, 12vw, 3.8rem); }
  .page-internal.imt-store-page .ys-shop-section { padding-top: 15px; }
  .page-internal.imt-store-page .products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .page-internal.imt-store-page .ys-market-card { grid-template-columns: 1fr; }
  .page-internal.imt-store-page .ys-market-card .imt-actions { grid-column: 1; grid-row: auto; }
  .page-internal.imt-store-page .ys-footer-card { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 480px) {
  .page-internal.imt-store-page .ys-store-toolbar { grid-template-columns: minmax(0, 1fr); }
  .page-internal.imt-store-page .ys-search-field { padding: 0 10px; }
  .page-internal.imt-store-page .ys-search-field input { font-size: .7rem; }
  .page-internal.imt-store-page .ys-filters { align-items: flex-start; padding: 2px 0 6px; }
  .page-internal.imt-store-page .ys-filter-groups { gap:4px; }
  .page-internal.imt-store-page .ys-filter-group-trigger { min-height:30px; padding:4px 7px; font-size:.61rem; }
  .page-internal.imt-store-page .ys-filter-options span { min-height: 26px; padding: 4px 7px; font-size: .61rem; }
}
