/* Shared Couponrite typography and original category artwork. */
@font-face {
  font-family: 'Interstate';
  src: url(../fonts/Interstate-Medium.woff2) format('woff2');
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
}
@font-face {
  font-family: 'Interstate';
  src: url(../fonts/Interstate-Bold.woff2) format('woff2');
  font-style: normal;
  font-weight: 700 900;
  /* Keep truncated headlines stable if the font arrives after first paint. */
  font-display: optional;
}
@font-face {
  font-family: 'Publico';
  src: url(../fonts/Publico-Banner.woff2) format('woff2');
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
}
:root {
  --sans: 'Interstate',Arial,sans-serif;
  --serif: 'Publico',Georgia,serif;
}
.category-pictogram {
  display: block;
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  background: none;
}
.category-pictogram>.category-icon {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.category-art>.category-icon {
  display: block;
  width: 64px;
  height: 64px;
  object-fit: contain;
}
/* Retail language continues through the compact shopping pages. */
.compact-page {
  background: #fff;
  font-family: var(--sans);
  font-weight: 500;
}
.compact-page .lab-row,
.compact-page .claim-card,
.compact-page .coupon-sidebar>section,
.compact-page .shop-card {
  border-color: #dedede;
  border-radius: 0;
}
.compact-page .lab-row h3 {
  font-weight: 700;
  font-size: 18px;
  line-height: 1.35;
}
.compact-page .row-merchant {
  font-weight: 700;
}
.compact-page .claim-copy h1 {
  font: 700 20px/1.3 var(--sans);
}
.compact-page .claim-status {
  font-size: 13px;
  color: #555;
}
.compact-page .claim-button {
  font-weight: 700;
  font-size: 14px;
  letter-spacing: .1px;
}
.compact-page .coupon-sidebar h2 {
  font: 700 23px/1.12 var(--serif);
  border: 0;
  margin-bottom: 20px;
  padding-bottom: 0;
}
.compact-page .sidebar-categories>a {
  font-size: 12px;
  line-height: 1.2;
  gap: 7px;
  font-weight: 500;
}
.compact-page .sidebar-categories .category-pictogram {
  width: 56px;
  height: 56px;
}
.compact-page .shop-card-info strong {
  font-weight: 700;
}
.compact-page .merchant-identity {
  background: #fff5da;
  border-color: #eadfca;
  border-radius: 0;
}
.compact-page .merchant-identity h1 {
  font: 700 30px/1.1 var(--serif);
}
.compact-page .merchant-identity h1>span {
  font: 500 16px/1.3 var(--sans);
}
.compact-page .recommended-shops h2,
.compact-page .related-coupons h2 {
  font: 700 27px/1.15 var(--serif);
}
.compact-page .lab-category-heading>.category-pictogram {
  width: 90px;
  height: 90px;
}
.category-art:has(.category-pictogram) {
  background: #fff;
  display: grid;
  place-items: center;
}
.category-art>.category-pictogram {
  width: 84px;
  height: 84px;
}
.all-categories .category-art>.category-pictogram {
  width: 106px;
  height: 106px;
}
@media(max-width:700px) {
  .compact-page .sidebar-categories .category-pictogram {
    width: 57px;
    height: 57px;
  }
  .compact-page .sidebar-categories>a {
    font-size: 12px;
  }
  .compact-page .lab-row h3 {
    font-size: 18px;
  }
  .compact-page .merchant-identity h1 {
    font-size: 28px;
  }
  .compact-page .lab-category-heading>.category-pictogram {
    width: 72px;
    height: 72px;
  }
  .all-categories .category-art>.category-pictogram {
    width: 83px;
    height: 83px;
  }
}
@media(max-width:360px) {
  .compact-page .sidebar-categories .category-pictogram {
    width: 52px;
    height: 52px;
  }
}
