/* V13 — catálogo fluido em celulares estreitos. */
html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}

main,
.catalog-hero,
.catalog-hero-copy,
.catalog-unit-panel,
.catalog-browser,
.catalog-layout,
.order-panel,
.product-list,
.unit-summary {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

.order-panel h2 {
  width: 100%;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}

.order-primary::after,
.order-secondary::after,
.product-order-link::after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-left: 8px;
  border-top: 1.5px solid currentColor;
  border-right: 1.5px solid currentColor;
  vertical-align: .08em;
}

@media (max-width: 620px) {
  .catalog-header {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
  }

  .catalog-brand {
    flex: 0 0 auto;
  }

  .back-categories {
    min-width: 0;
    max-width: calc(100% - 124px);
    padding-inline: 17px;
    font-size: 9px;
    white-space: normal;
    text-align: center;
  }

  .catalog-hero {
    width: 100%;
    padding-inline: 20px;
    overflow: hidden;
  }

  .catalog-hero-copy h1 {
    width: 100%;
    max-width: 100%;
    font-size: clamp(52px, 14vw, 72px);
    line-height: .78;
    letter-spacing: -.055em;
    overflow-wrap: anywhere;
    word-break: normal;
  }

  .catalog-hero-copy p {
    max-width: 100%;
    font-size: clamp(16px, 4.7vw, 20px);
  }

  .catalog-unit-panel {
    width: calc(100% - 4px);
    margin-inline: 2px;
    padding: 21px 17px;
    transform: none;
  }

  .catalog-unit-panel select,
  .catalog-search,
  .catalog-search input {
    min-width: 0;
    max-width: 100%;
  }

  .catalog-browser {
    width: 100%;
    padding-inline: 16px;
    overflow: hidden;
  }

  .catalog-filters {
    max-width: 100%;
    touch-action: pan-x pan-y;
    overscroll-behavior-inline: auto;
    -webkit-overflow-scrolling: touch;
  }

  .catalog-layout,
  .order-panel {
    width: 100%;
  }

  .order-panel {
    padding: 25px 18px 28px;
    overflow: hidden;
  }

  .order-panel h2,
  .order-panel h2.is-long-name,
  .order-panel h2.is-very-long-name {
    max-width: 100%;
    margin-block: 16px 19px;
    font-size: clamp(29px, 8.4vw, 38px);
    line-height: .92;
    letter-spacing: -.04em;
    overflow-wrap: anywhere;
    text-wrap: wrap;
  }

  .order-panel h2.is-long-name {
    font-size: clamp(27px, 7.8vw, 35px);
  }

  .order-panel h2.is-very-long-name {
    font-size: clamp(25px, 7.2vw, 32px);
    line-height: .96;
  }

  .order-panel p,
  .order-note {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .order-primary,
  .order-secondary {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding-inline: 14px;
    white-space: normal;
    text-align: center;
  }
}

@media (max-width: 370px) {
  .catalog-header {
    padding-inline: 14px;
  }

  .catalog-brand img {
    width: 100px;
  }

  .back-categories {
    max-width: calc(100% - 106px);
    padding-inline: 12px;
    font-size: 8px;
  }

  .order-panel h2,
  .order-panel h2.is-long-name,
  .order-panel h2.is-very-long-name {
    font-size: clamp(24px, 7.6vw, 29px);
  }
}
