:root {
  --primary-color: #0da285;
  --primary-color-hover: #0b8f75;
  --primary-button-background: #0da285;
  --primary-button-background-hover: #0b8f75;
  --code-text-color: #0da285;
  --deal-button-background: #0da285;
  --deal-button-background-hover: #0b8f75;
  --deal-text-color: #0da285;
  --header-background: #0da285;
  --header-background-hover: #0b8f75;
  --footer-background: #0da285;
  --primary-text-color: #333;
  --primary-background-color: #f1f1f1;
  --primary-border-color: #eee;
  --card-background: #fff;
  --card-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.06);
  --card-shadow-hover: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.08);
  --header-height: 4rem;
  --header-text-color: #fff;
  --header-logo-height: 2.5rem;
  --footer-text-color: #fff;
  --copy-code-text-color: #fff;
  --copy-code-gradient: linear-gradient(135deg, #0da285, #0b8f75);
  --copy-code-gradient-hover: linear-gradient(135deg, #0b8a73, #096b5f);
  --copy-code-shadow: 0 0.25rem 1rem rgba(13, 162, 133, 0.35);
  --copy-code-shadow-hover: 0 0.375rem 1.25rem rgba(13, 162, 133, 0.45);
  --copy-text-color: #fff;
  --copy-gradient: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
  --copy-gradient-hover: linear-gradient(135deg, #0056b3 0%, #004085 100%);
  --copy-shadow: 0 0.5rem 1.25rem rgba(0, 123, 255, 0.4);
  --copy-shadow-hover: 0 0.125rem 0.5rem rgba(0, 123, 255, 0.3);
  --rating-text-color: #888;
  --rating-success-text-color: #f05b72;
}
.blue {
  --primary-color: #3498db;
  --primary-color-hover: #2980b9;
  --primary-button-background: #3498db;
  --primary-button-background-hover: #2980b9;
  --code-text-color: #3498db;
  --deal-button-background: #3498db;
  --deal-button-background-hover: #2980b9;
  --deal-text-color: #3498db;
  --header-background: #3498db;
  --header-background-hover: #2980b9;
  --footer-background: #3498db;
}
.red {
  --primary-color: #f05b72;
  --primary-color-hover: #e94e60;
  --primary-button-background: #f05b72;
  --primary-button-background-hover: #e94e60;
  --code-text-color: #f05b72;
  --deal-button-background: #f05b72;
  --deal-button-background-hover: #e94e60;
  --deal-text-color: #f05b72;
  --header-background: #f05b72;
  --header-background-hover: #e94e60;
  --footer-background: #f05b72;
}
.orange {
  --primary-color: #fd7e14;
  --primary-color-hover: #e66912;
  --primary-button-background: #fd7e14;
  --primary-button-background-hover: #e66912;
  --code-text-color: #fd7e14;
  --deal-button-background: #fd7e14;
  --deal-button-background-hover: #e66912;
  --deal-text-color: #fd7e14;
  --header-background: #fd7e14;
  --header-background-hover: #e66912;
  --footer-background: #fd7e14;
}
.yellow {
  --primary-color: #f7b500;
  --primary-color-hover: #ff9800;
  --primary-button-background: #f7b500;
  --primary-button-background-hover: #ff9800;
  --code-text-color: #f7b500;
  --deal-button-background: #f7b500;
  --deal-button-background-hover: #ff9800;
  --deal-text-color: #f7b500;
  --header-background: #f7b500;
  --header-background-hover: #ff9800;
  --footer-background: #f7b500;
}
.teal {
  --primary-color: #20c997;
  --primary-color-hover: #17a589;
  --primary-button-background: #20c997;
  --primary-button-background-hover: #17a589;
  --code-text-color: #20c997;
  --deal-button-background: #20c997;
  --deal-button-background-hover: #17a589;
  --deal-text-color: #20c997;
  --header-background: #20c997;
  --header-background-hover: #17a589;
  --footer-background: #20c997;
}
.cyan {
  --primary-color: #17a2b8;
  --primary-color-hover: #138496;
  --primary-button-background: #17a2b8;
  --primary-button-background-hover: #138496;
  --code-text-color: #17a2b8;
  --deal-button-background: #17a2b8;
  --deal-button-background-hover: #138496;
  --deal-text-color: #17a2b8;
  --header-background: #17a2b8;
  --header-background-hover: #138496;
  --footer-background: #17a2b8;
}
.purple {
  --primary-color: #9b59b6;
  --primary-color-hover: #8e44ad;
  --primary-button-background: #9b59b6;
  --primary-button-background-hover: #8e44ad;
  --code-text-color: #9b59b6;
  --deal-button-background: #9b59b6;
  --deal-button-background-hover: #8e44ad;
  --deal-text-color: #9b59b6;
  --header-background: #9b59b6;
  --header-background-hover: #8e44ad;
  --footer-background: #9b59b6;
}
*,
*:before,
*:after {
  box-sizing: border-box;
}
body {
  background: var(--primary-background-color);
  color: var(--primary-text-color);
  font-family: 'Lato', 'PingFang SC', 'Microsoft YaHei', Arial, sans-serif;
  font-size: 1rem;
  margin: 0;
  width: 100%;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -webkit-overflow-scrolling: touch;
}
a {
  color: var(--primary-text-color);
  cursor: pointer;
  outline: none;
  text-decoration: none;
  transition: color 0.2s;
}
a:hover,
a:active,
a:focus {
  color: var(--primary-color-hover);
  outline: none;
}
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
img {
  border: none;
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  vertical-align: middle;
}
p,
h1,
h2,
h3 {
  margin: 0;
  padding: 0;
}
h1,
h2,
h3 {
  font-weight: 700;
  word-break: break-word;
}
h1 {
  font-size: 1.75rem;
  line-height: 1.5;
}
h2 {
  font-size: 1.25rem;
  line-height: 1.5;
  margin-bottom: 0.75rem;
}
h3 {
  font-size: 1rem;
  line-height: 1.5;
}
button,
input {
  border: 0;
  margin: 0;
  outline: none;
  padding: 0;
}
.container-common {
  margin: 0 auto;
  padding: 0 0.75rem;
  position: relative;
}
.container {
  margin: 0 auto;
  position: relative;
  max-width: 75rem;
  margin-top: 1rem;
}
.container-fluid {
  margin: 0 auto;
  padding: 0 0.75rem;
  position: relative;
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  max-width: 98.75rem;
}
.clearfix {
  clear: both;
}
.clearfix:after {
  clear: both;
  content: "";
  display: block;
  height: 0;
}
.d-flex {
  display: flex;
}
.col-layout {
  display: flex;
}
.flex-align-center {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
}
.flex-center {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  justify-content: center;
}
.overflow-hidden {
  overflow: hidden;
}
.float-left {
  float: left;
}
.float-right {
  float: right;
}
.icon-arrow-right {
  display: inline-block;
  margin: 0 0.3125rem;
  vertical-align: middle;
}
.icon-arrow-right:before {
  border-color: #666 #666 transparent transparent;
  border-style: solid;
  border-width: 0.0625rem 0.0625rem 0 0;
  content: " ";
  display: block;
  height: 0.4375rem;
  margin-bottom: 0.125rem;
  transform: rotate(45deg);
  width: 0.4375rem;
}
.font-12 {
  font-size: 0.75rem !important;
}
.font-14 {
  font-size: 0.875rem !important;
}
.pt-10 {
  padding-top: 0.625rem !important;
}
.py-10 {
  padding-bottom: 0.625rem !important;
  padding-top: 0.625rem !important;
}
.mt-25,
.my-25 {
  margin-top: 1.5625rem !important;
}
.mb-25,
.my-25 {
  margin-bottom: 1.5625rem !important;
}
.h50 {
  height: 3.125rem !important;
}
.h-80 {
  min-height: 80vh !important;
}
.w100 {
  width: 6.25rem !important;
}
.w400 {
  width: 25rem !important;
}
.text-left {
  text-align: left !important;
}
.text-center {
  text-align: center !important;
}
.owl-carousel {
  display: none;
  height: 6.25rem;
  margin-bottom: 3.75rem;
  max-width: 75rem;
  position: relative;
  width: 100%;
}
.owl-carousel.owl-loaded {
  display: block;
}
.owl-carousel .owl-stage-outer {
  overflow: hidden;
  position: relative;
  width: 100%;
}
.owl-carousel .owl-stage-outer .owl-stage {
  position: relative;
  width: 100%;
}
.owl-carousel .owl-stage-outer .owl-stage .owl-item {
  float: left;
  min-height: 0.0625rem;
  position: relative;
}
.owl-carousel .owl-stage-outer .owl-stage .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 0.4s ease;
}
.owl-carousel .owl-dots {
  margin-top: 0.1875rem;
  text-align: center;
}
.owl-carousel .owl-dots .owl-dot {
  display: inline-block;
}
.owl-carousel .owl-dots .owl-dot span {
  background: #C6C6C6;
  border-radius: 50%;
  display: block;
  height: 0.5rem;
  margin: 0.3125rem 0.4375rem;
  transition: opacity 0.2s;
  width: 0.5rem;
}
.owl-carousel .owl-dots .owl-dot.active span,
.owl-carousel .owl-dots .owl-dot:hover span {
  background: var(--primary-color);
}
.owl-carousel .owl-nav button {
  background-color: #f8f8f8;
  cursor: pointer;
  height: 2.6875rem;
  margin-top: -0.625rem;
  position: absolute;
  top: 50%;
  width: 1.125rem;
}
.owl-carousel .owl-nav button.owl-prev {
  left: -1.75rem;
}
.owl-carousel .owl-nav button.owl-next {
  right: -1.75rem;
}
.col {
  clear: both;
  box-sizing: border-box;
  flex: 0 0 100%;
  max-width: 100%;
  position: relative;
  text-align: left;
  vertical-align: middle;
  width: 100%;
}
.col:after {
  clear: both;
  content: "";
  display: block;
  height: 0;
}
.row {
  display: flex;
  flex-wrap: wrap;
}
.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%;
}
.row-cols-3 > * {
  flex: 0 0 33.33333333%;
  max-width: 33.33333333%;
}
.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%;
}
.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%;
}
.row-cols-6 > * {
  flex: 0 0 16.66666667%;
  max-width: 16.66666667%;
}
.row-cols-7 > * {
  flex: 0 0 14.28571429%;
  max-width: 14.28571429%;
}
.row-cols-8 > * {
  flex: 0 0 12.5%;
  max-width: 12.5%;
}
.row-cols-9 > * {
  flex: 0 0 11.11111111%;
  max-width: 11.11111111%;
}
.row-cols-10 > * {
  flex: 0 0 10%;
  max-width: 10%;
}
.link {
  display: block;
  overflow: hidden;
  padding: 0.5rem 0.9375rem 0.5rem 0;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
}
.link-logo {
  padding: 0.375rem 0.25rem;
  width: 7.5rem;
}
.link-logo .link-text {
  padding: 0.3125rem 0.5rem 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin: auto;
  display: inline-block;
  max-width: 100%;
  width: 100%;
  text-align: center;
}
.link-logo .logo {
  background: #fff;
  border: 0.0625rem solid var(--primary-border-color);
  text-align: center;
  word-break: break-all;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  justify-content: center;
  height: 6.25rem;
  padding: 0.5rem 0.25rem;
  transition: all 0.2s;
  width: 100%;
}
.sidebar-section {
  flex: 0 0 18.75rem;
  overflow: hidden;
}
.main-section {
  flex-basis: calc(100% - 18.75rem) !important;
  padding-right: 1.25rem;
}
.card {
  margin: 1.25rem auto;
}
.card.aggregate h2 {
  align-items: center;
  display: flex;
  justify-content: space-between;
  font-size: 1.25rem !important;
}
.card.aggregate h2 a {
  color: var(--primary-color);
  font-size: 0.875rem;
  margin-right: 0.9375rem;
}
.card .card-body {
  margin: 0 auto;
  max-width: 75rem;
}
.card .card-body h2 {
  font-size: 1rem;
}
.card .card-body .card-content {
  font-size: 0.875rem;
  line-height: 1.5;
}
.card .card-body .card-content h3 {
  margin: 0.75rem 0 0.5rem;
}
.card .card-body .card-content h3:first-child {
  margin-top: 0;
}
.char-list {
  margin-top: 1.25rem;
}
.char-list li {
  display: inline-block;
}
.char-list li a {
  border: 0.0625rem solid #ddd;
  display: inline-block;
  font-weight: 700;
  height: 3rem;
  line-height: 3rem;
  margin: 0 0.5625rem 0.625rem 0;
  text-align: center;
  transition: all 0.4s;
  width: 3rem;
}
.char-list li a:hover {
  background: var(--primary-color);
  border-radius: 50%;
  color: #fff;
}
.bottom-section .card:first-child {
  margin-top: 0;
}
.main-section .card-body,
.bottom-section .card-body,
.sidebar-section .card-body {
  padding: 0;
}
.bottom-section {
  margin: 0 auto;
  position: relative;
  max-width: 75rem;
  margin-top: 1rem;
}
.home h2 {
  font-size: 1.5rem !important;
  text-align: center;
}
.input,
.btn {
  border-radius: 0.3125rem;
  height: 2.5rem;
  line-height: 1.2;
  width: 100%;
}
.input {
  background: #fff;
  border: 0.0625rem solid var(--primary-border-color);
  font-size: 0.75rem;
  margin-bottom: 0.9375rem;
  padding-left: 0.625rem;
  transition: border-color 0.2s;
}
.input:focus {
  border-color: var(--primary-text-color);
}
.input::-moz-placeholder {
  color: #999;
}
.input::placeholder {
  color: #999;
}
.btn {
  background: var(--primary-button-background);
  border-radius: 0.5rem;
  color: #fff;
  cursor: pointer;
  font-size: 0.875rem;
  font-weight: 600;
  padding: 0 0.9375rem;
  text-align: center;
  transition: all 0.3s ease;
  box-shadow: var(--primary-button-shadow);
}
.btn:hover {
  background: var(--primary-button-background-hover);
  box-shadow: var(--primary-button-shadow-hover);
}
.btn-deal {
  background: var(--deal-button-background);
  box-shadow: var(--deal-button-shadow);
}
.btn-deal:hover,
.btn-deal:focus {
  background: var(--deal-button-background-hover);
  box-shadow: var(--deal-button-shadow-hover);
}
.btn-outline {
  color: var(--primary-color);
  display: inline-block;
  font-weight: 600;
  transition: all 0.2s ease;
  cursor: pointer;
  word-break: break-all;
}
.btn-outline:hover {
  color: var(--primary-color-hover);
}
.text-elli-1 {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.text-elli-2 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.list-paddingleft-2 {
  padding-left: 1rem;
}
.header {
  width: 100%;
  height: var(--header-height);
  background: var(--header-background);
  border-bottom: 0.0625rem solid var(--primary-border-color);
}
.header .container {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  justify-content: space-between;
}
.header .logo {
  display: flex;
  align-items: center;
  height: 100%;
  flex: 0 0 12.5rem;
}
.header .logo img {
  max-width: 100%;
  height: 3.5rem;
}
.header nav {
  display: flex;
  align-items: center;
}
.header nav a {
  color: var(--header-text-color);
  font-weight: 700;
  height: var(--header-height);
  padding: 0 1.5rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: flex;
  align-items: center;
  transition: all 0.3s ease;
}
.header nav a:hover {
  background: var(--header-background-hover);
  text-decoration: none;
  transform: translateY(-0.0625rem);
}
.header nav a:active {
  transform: translateY(0);
}
.navwaper .fixedwrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--header-height);
}
.fixedstyle {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
  background: var(--header-background);
  border-bottom: 0.0625rem solid var(--primary-border-color);
  animation: slideDown 0.8s ease;
}
@keyframes slideDown {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(0);
  }
}
.homesearch-wraper {
  padding-top: 1.5625rem;
  text-align: center;
}
.homesearch-wraper h1 {
  font-size: 2.125rem;
}
footer {
  background: var(--footer-background);
  color: var(--footer-text-color);
  margin-top: 1.875rem;
  padding: 1.875rem 0;
  text-align: center;
}
footer .footer-nav {
  margin-bottom: 1.25rem;
}
footer .footer-nav ul {
  display: flex;
  justify-content: center;
}
footer .footer-nav ul a {
  color: var(--footer-text-color);
  padding: 0.625rem 0.9375rem;
}
footer .footer-nav ul a:hover {
  text-decoration: underline;
}
.goTop {
  background: var(--primary-button-background);
  border-radius: 0.75rem;
  bottom: 6rem;
  box-shadow: var(--primary-button-shadow);
  color: var(--footer-text-color);
  cursor: pointer;
  display: none;
  height: 3.25rem;
  position: fixed;
  right: 1rem;
  text-align: center;
  transition: all 0.3s;
  width: 3.25rem;
  z-index: 100;
}
.goTop:hover {
  background: var(--primary-button-background-hover);
  box-shadow: var(--primary-button-shadow-hover);
  transform: translateY(-0.1875rem);
}
.goTop .fa-chevron-up {
  display: inline-block;
  margin-top: 1.25rem;
}
.goTop .fa-chevron-up:before {
  border: 0.2rem solid var(--footer-text-color);
  border-bottom: 0;
  border-left: 0;
  content: " ";
  display: block;
  height: 1.125rem;
  transform: rotate(-45deg);
  width: 1.125rem;
}
.privacy-policy {
  background: rgba(22, 33, 44, 0.98);
  border-top: 0.125rem solid var(--primary-color);
  bottom: 0;
  display: none;
  padding: 1rem 0;
  position: fixed;
  width: 100%;
  z-index: 999;
}
.privacy-policy .container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.privacy-policy .container p {
  color: var(--footer-text-color);
  font-size: 0.875rem;
}
.privacy-policy .container p a {
  color: var(--primary-color);
  margin-left: 0.25rem;
}
.privacy-policy .container button {
  background: var(--primary-button-background);
  border-radius: 0.5rem;
  box-shadow: var(--primary-button-shadow);
  color: var(--footer-text-color);
  margin-left: 1.25rem;
  padding: 0.375rem 1.5rem;
  transition: all 0.3s;
}
.privacy-policy .container button:hover {
  background: var(--primary-button-background-hover);
  box-shadow: var(--primary-button-shadow-hover);
  transform: translateY(-0.125rem);
}
.merchant .coupon-block {
  margin-top: 0 !important;
}
.merchant .coupon-block.merchant-coupons {
  margin-bottom: 0 !important;
}
.merchant .coupon-block h2 {
  margin-bottom: 0;
}
.coupon-block {
  margin: 1.25rem auto;
}
.coupon-block.container .coupon-item button {
  width: 11.25rem;
}
.coupon-block .row-cols-2 .col:nth-child(2n + 1) {
  padding-right: 0.9375rem;
}
.coupon-block .row-cols-3 .col:nth-child(3n + 2) {
  padding: 0 0.9375rem;
}
.coupon-block.expired .coupon-discount {
  background: #fff !important;
}
.coupon-block.expired .coupon-discount .code-discount,
.coupon-block.expired .coupon-discount .deal-discount {
  color: #333 !important;
}
.coupon-block.expired .coupon-discount .code-discount .code-svg,
.coupon-block.expired .coupon-discount .deal-discount .code-svg,
.coupon-block.expired .coupon-discount .code-discount .deal-svg,
.coupon-block.expired .coupon-discount .deal-discount .deal-svg {
  stroke: #333 !important;
}
.coupon-block .coupon-item {
  display: flex;
  align-items: center;
  padding: 0.9375rem 1.25rem;
  margin-top: 0.9375rem;
  background: var(--card-background);
  transition: box-shadow 0.2s, border-color 0.2s;
  border: 0.0625rem solid var(--primary-border-color);
  position: relative;
  z-index: 0;
}
.coupon-block .coupon-item .coupon-discount {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 6.25rem;
  height: 6.25rem;
  padding: 0.875rem 0.5rem;
  border-radius: 0.5rem;
  word-break: break-word;
  cursor: pointer;
}
.coupon-block .coupon-item .coupon-discount.logo {
  cursor: pointer;
  border: 0.0625rem solid var(--primary-border-color);
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
}
.coupon-block .coupon-item .coupon-discount.logo img {
  width: 5rem;
  height: 5rem;
}
.coupon-block .coupon-item .coupon-discount.logo span {
  display: flex;
  width: 100%;
  height: 5rem;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0 0.25rem;
}
.coupon-block .coupon-item .coupon-discount .code-discount {
  color: var(--code-text-color, var(--primary-color));
}
.coupon-block .coupon-item .coupon-discount .code-discount .code-svg {
  fill: none;
  stroke-linejoin: round;
  stroke: var(--code-text-color, var(--primary-color));
}
.coupon-block .coupon-item .coupon-discount .deal-discount {
  color: var(--deal-text-color);
}
.coupon-block .coupon-item .coupon-discount .deal-discount .deal-svg {
  fill: none;
  stroke-linejoin: round;
  stroke: var(--deal-text-color);
}
.coupon-block .coupon-item .coupon-discount .expire-svg {
  fill: none;
  stroke-linejoin: round;
  stroke: #676d70;
}
.coupon-block .coupon-item .coupon-info {
  flex: 1 1 0;
  padding: 0 1.25rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.375rem;
}
.coupon-block .coupon-item .coupon-info .coupon-tag span {
  display: inline-block;
  margin-right: 0.375rem;
  font-weight: 400;
  padding: 0.1875rem 0.3125rem;
  border-radius: 0.125rem;
  font-size: 0.75rem;
  background-color: var(--coupon-tag-color, var(--primary-color));
  color: #fff;
}
.coupon-block .coupon-item .coupon-info h3 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
  font-size: 1.375rem;
  transition: color 0.2s;
  word-break: break-word;
  cursor: pointer;
}
.coupon-block .coupon-item .coupon-info h3:hover {
  color: var(--primary-color);
}
.coupon-block .coupon-item .coupon-info .coupon-domain a {
  font-size: 0.875rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
}
.coupon-block .coupon-item .coupon-info .coupon-time {
  font-size: 0.8125rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.coupon-block .coupon-item .coupon-info .coupon-time span {
  color: #a7a7a7;
}
.coupon-block .coupon-item button {
  width: 9.25rem;
  height: 2.625rem;
  padding: 0 1rem;
  border-radius: 0.375rem;
}
.coupon-block .coupon-item button.btn-expired {
  background: #f5f5f5 !important;
  color: #a7a7a7 !important;
  box-shadow: 0 0.25rem 0.75rem rgba(167, 167, 167, 0.15);
  transform: none;
}
.coupon-block .coupon-item button.btn-expired:hover {
  transform: none;
  box-shadow: 0 0.5rem 1.25rem rgba(167, 167, 167, 0.22);
}
.rating .rating-box {
  display: flex;
  align-items: center;
  margin-bottom: 0.625rem;
}
.rating .rating-box .rating-star {
  display: flex;
}
.rating .rating-box .rating-star .rating-star-item {
  width: 1.5rem;
  height: 1.5rem;
  cursor: pointer;
  background-repeat: no-repeat;
  background-position: 0 -1.5rem;
  transition: background-position 0.2s ease;
}
.rating .rating-box .rating-star .rating-star-item.active {
  background-position: 0 0;
}
.rating .rating-box .rating-text {
  margin-left: 0.5rem;
  font-size: 0.6875rem;
  color: var(--rating-text-color);
  word-break: break-word;
}
.rating .rating-votes {
  gap: 0.125rem;
}
.rating .rating-votes span {
  font-size: 0.6875rem;
  color: var(--rating-text-color);
}
.rating .rating-votes span.rating-result {
  padding-left: 0.3125rem;
  color: var(--rating-success-text-color);
}
.subscribe .email-input {
  max-width: 25rem;
}
.subscribe .btn {
  width: auto !important;
  min-width: 6.25rem;
}
.merchant-wrapper {
  background: #fff;
  padding: 1.25rem 0.75rem;
  border-bottom: 0.0625rem solid var(--primary-border-color);
}
.merchant-wrapper .container {
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
}
.merchant-wrapper .container .merchant-logo {
  width: 6.25rem;
  height: 6.25rem;
  border: 0.0625rem solid var(--primary-border-color);
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  justify-content: center;
  border-radius: 0.5rem;
  cursor: pointer;
  flex-shrink: 0;
}
.merchant-wrapper .container .merchant-logo img {
  width: 6.25rem;
  height: 6.25rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.merchant-wrapper .container .merchant-logo .gotostore {
  display: flex;
  align-items: center;
  justify-content: center;
}
.merchant-wrapper .container .merchant-logo .gotostore span {
  text-align: center;
  word-break: break-all;
}
.merchant-wrapper .container .merchant-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.merchant-wrapper .container .merchant-info .breadcrumb {
  font-size: 0.875rem;
  line-height: 1.2;
}
.merchant-wrapper .container .merchant-info .merchant-title {
  font-size: 1.75rem;
  margin: 0.5rem 0;
  line-height: 1.3;
}
.merchant-wrapper .container .merchant-info .merchant-h2 {
  font-size: 1rem;
  line-height: 1.375rem;
}
.intro {
  padding: 1.25rem 0;
  border-bottom: 0.0625rem solid var(--primary-border-color);
}
.intro .container {
  max-width: 75rem;
  margin: 0 auto;
  padding: 0 1.25rem;
}
.intro .intro-content {
  background: #fff;
  padding: 1.25rem;
  border: 0.0625rem solid var(--primary-border-color);
  border-radius: 0.5rem;
  box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.05);
}
.intro .intro-content h2 {
  margin-bottom: 0.9375rem;
  font-size: 1.5rem;
}
.intro .intro-content p {
  line-height: 1.6;
  margin-bottom: 0.9375rem;
}
.filter-wrapper {
  margin-top: 1.25rem;
}
.filter-wrapper ul {
  display: flex;
  align-items: center;
}
.filter-wrapper ul li {
  display: flex;
  align-items: center;
  text-align: center;
  padding: 0.375rem 1rem;
  transition: all 0.3s;
  margin: 0.25rem 0.625rem 0.25rem 0;
  background: #fff;
  border-radius: 0.188rem;
  cursor: pointer;
  border: 0.062rem solid #ddd;
}
.filter-wrapper ul li span {
  color: #333;
}
.filter-wrapper ul li .check {
  margin-left: 1rem;
  width: 0.875rem;
  height: 0.875rem;
  position: relative;
  border: 0.062rem solid #ddd;
  border-radius: 0.125rem;
  cursor: pointer;
}
.filter-wrapper ul li.active {
  border-color: var(--primary-color);
}
.filter-wrapper ul li.active span {
  color: var(--code-text-color) !important;
}
.filter-wrapper ul li.active .check {
  background-color: var(--primary-color);
}
.filter-wrapper ul li.active .check::before {
  content: "";
  position: absolute;
  width: 0.375rem;
  height: 0.5rem;
  color: #fff;
  border-bottom: 0.1rem solid;
  border-right: 0.1rem solid;
  left: 49%;
  top: 30%;
  transform-origin: center;
  transform: translate(-50%, -30%) rotate(45deg);
  -webkit-transform: translate(-50%, -30%) rotate(45deg);
}
.outflow-timed-layer {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 999;
  background: rgba(229, 229, 229, 0.9);
}
.outflow-timed-layer .layer-box {
  width: 40rem;
  position: relative;
  top: 6%;
  margin: 0 auto;
  background: #fff;
}
.outflow-timed-layer .layer-box .close {
  position: absolute;
  top: 0;
  right: 0.625rem;
  cursor: pointer;
  font-size: 1.625rem;
  font-weight: 700;
  color: #333333;
}
.outflow-timed-layer .layer-box .layer-content {
  padding: 1.25rem;
}
.outflow-timed-layer .layer-box .layer-content .logo {
  position: relative;
  height: 4.25rem;
  max-height: 80%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0.5rem 0 1rem;
}
.outflow-timed-layer .layer-box .layer-content .logo img {
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.outflow-timed-layer .layer-box .layer-content .logo .amount {
  color: var(--primary-color);
  font-size: 1.375rem;
  font-weight: 600;
}
.outflow-timed-layer .layer-box .layer-content .logo .amount-desc {
  color: var(--primary-color);
  font-size: 0.875rem;
  font-weight: 500;
}
.outflow-timed-layer .layer-box .layer-content .title {
  text-align: center;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  font-size: 1.25rem;
  font-weight: 600;
  word-break: break-word;
  margin-bottom: 0.625rem;
}
.outflow-timed-layer .layer-box .layer-content .title span {
  color: var(--primary-color);
}
.outflow-timed-layer .layer-box .layer-content .desc {
  text-align: center;
  font-size: 1rem;
  color: #666;
  font-weight: 600;
  line-height: 1.4;
  margin-bottom: 1rem;
}
.outflow-timed-layer .layer-box .layer-content .cp-btn {
  cursor: pointer;
  display: block;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
  background: var(--primary-color);
  color: #fff;
  border-radius: 0.25rem;
  font-size: 0.875rem;
  font-weight: 500;
  padding: 0.875rem;
  text-align: center;
}
.outflow-timed-layer .layer-box .layer-content .cp-btn:hover {
  text-decoration: none;
}
.outflow-timed-layer .layer-box .bottom-box {
  display: flex;
  gap: 0.25rem;
  align-items: center;
  justify-content: center;
  background: #f5f5f5;
  padding: 0.625rem;
}
.outflow-timed-layer .layer-box .bottom-box .star-text {
  font-size: 0.875rem;
  color: #666;
  font-weight: 600;
}
.outflow-timed-layer .layer-box .bottom-box .star {
  display: flex;
  align-items: center;
}
.outflow-timed-layer .layer-box .bottom-box .star svg {
  fill: var(--primary-color);
}
.outflow-cp-layer {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 999;
  background: rgba(229, 229, 229, 0.9);
}
.outflow-cp-layer .layer-box {
  width: 40rem;
  position: relative;
  top: 6%;
  margin: 0 auto;
  background: #fff;
}
.outflow-cp-layer .layer-box .close {
  position: absolute;
  top: 0;
  right: 0.625rem;
  cursor: pointer;
  font-size: 1.625rem;
  font-weight: 700;
  color: #333333;
}
.outflow-cp-layer .layer-box .layer-content {
  padding: 1.25rem;
}
.outflow-cp-layer .layer-box .layer-content .logo {
  position: relative;
  height: 4.25rem;
  max-height: 80%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0.5rem 0 1rem;
}
.outflow-cp-layer .layer-box .layer-content .logo img {
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.outflow-cp-layer .layer-box .layer-content .logo .amount {
  color: var(--primary-color);
  font-size: 1.5rem;
  font-weight: 600;
}
.outflow-cp-layer .layer-box .layer-content .logo .amount-desc {
  color: var(--primary-color);
  font-size: 0.875rem;
  font-weight: 500;
}
.outflow-cp-layer .layer-box .layer-content .title {
  text-align: center;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  font-size: 1.25rem;
  font-weight: 600;
  word-break: break-word;
  margin-bottom: 0.625rem;
}
.outflow-cp-layer .layer-box .layer-content .title span {
  color: var(--primary-color);
}
.outflow-cp-layer .layer-box .layer-content .cp-btn {
  cursor: pointer;
  display: block;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
  background: var(--primary-color);
  color: #fff;
  border-radius: 0.25rem;
  font-size: 0.875rem;
  font-weight: 500;
  padding: 0.875rem;
  text-align: center;
}
.outflow-cp-layer .layer-box .layer-content .cp-btn:hover {
  text-decoration: none;
}
.outflow-layer {
  margin-top: 0.625rem;
}
.outflow-layer .layer-content .logo {
  position: relative;
  height: 3.75rem;
  max-width: 6.25rem;
  max-height: 80%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}
.outflow-layer .layer-content .logo img {
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.outflow-layer .layer-content .logo .amount {
  color: var(--primary-color);
  font-size: 1.5rem;
  font-weight: 600;
}
.outflow-layer .layer-content .logo .amount-desc {
  color: var(--primary-color);
  font-size: 0.875rem;
  font-weight: 500;
  white-space: nowrap;
}
.outflow-layer .layer-content .title {
  text-align: center;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  font-size: 1.25rem;
  font-weight: 600;
  word-break: break-word;
  margin-bottom: 0.625rem;
}
.outflow-layer .layer-content .title span {
  color: var(--primary-color);
}
.outflow-layer .layer-content .cp-btn {
  cursor: pointer;
  display: block;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
  background: var(--primary-color);
  color: #fff;
  border-radius: 0.25rem;
  font-size: 0.875rem;
  font-weight: 600;
  padding: 0.875rem;
  text-align: center;
}
.outflow-layer .layer-content .cp-btn:hover {
  text-decoration: none;
}
.outflow-layer-mobile .layer-content {
  padding: 0.5625rem 0;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.outflow-layer-mobile .layer-content .logo {
  position: relative;
  height: 4.375rem;
  width: 4.375rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.outflow-layer-mobile .layer-content .logo img {
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.outflow-layer-mobile .layer-content .logo .amount {
  color: var(--primary-color);
  font-size: 1rem;
  font-weight: 500;
}
.outflow-layer-mobile .layer-content .logo .amount-desc {
  color: var(--primary-color);
  font-size: 0.5625rem;
  font-weight: 500;
}
.outflow-layer-mobile .layer-content .info-box {
  flex: 1;
}
.outflow-layer-mobile .layer-content .info-box .title {
  text-align: center;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  font-size: 0.9375rem;
  font-weight: 600;
  word-break: break-word;
  margin-bottom: 0.625rem;
}
.outflow-layer-mobile .layer-content .info-box .title span {
  color: var(--primary-color);
}
.outflow-layer-mobile .layer-content .info-box .cp-gif {
  height: 1.875rem;
  -o-object-fit: contain;
     object-fit: contain;
  margin-bottom: 0.625rem;
}
.outflow-layer-mobile .layer-content .info-box .cp-btn {
  cursor: pointer;
  display: block;
  width: 100%;
  margin: 0 auto;
  background: var(--primary-color);
  color: #fff;
  border-radius: 0.25rem;
  font-size: 0.75rem;
  font-weight: 500;
  padding: 0.875rem;
  text-align: center;
}
.outflow-layer-mobile .layer-content .info-box .cp-btn:hover {
  text-decoration: none;
}
.outflow-banner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: #fff;
  padding: 1rem;
  cursor: pointer;
  border-bottom: 0.0625rem solid var(--primary-border-color);
}
.outflow-banner .logo {
  position: relative;
  height: 4.25rem;
  max-height: 80%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 1rem 0;
}
.outflow-banner .logo img {
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.outflow-banner .logo p {
  font-size: 0.875rem;
  font-weight: 500;
}
.outflow-banner .title {
  font-size: 1.125rem;
  font-weight: 500;
  margin-bottom: 0.625rem;
}
.outflow-banner .promo-box {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  border: 0.0625rem dashed #fc5145;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
}
.outflow-banner .promo-box .promo-title {
  font-size: 0.875rem;
  font-weight: 500;
}
.outflow-banner .promo-box .promo-value {
  color: #fcbb48;
  font-size: 0.875rem;
  font-weight: 500;
}
.outflow-banner .cp-btn {
  background: var(--primary-color);
  color: #fff;
  border-radius: 0.25rem;
  font-size: 0.875rem;
  font-weight: 500;
  padding: 0.875rem 0.5rem;
  margin-bottom: 1rem;
  width: 90%;
  text-align: center;
  animation: movebtn 3s infinite;
  transition: all 0.3s ease;
}
@keyframes movebtn {
  0% {
    transform: translateX(-0.625rem);
  }
  5% {
    transform: translateX(0.625rem);
  }
  10% {
    transform: translateX(-0.625rem);
  }
  20% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(0);
  }
}
.outflow-banner .desc {
  font-size: 0.75rem;
  color: #7c7c7c;
  text-align: center;
}
.outflow-coupon-block .cp-coupon-item {
  display: flex;
  align-items: center;
  padding: 1.25rem;
  margin-top: 0.9375rem;
  background: var(--card-background);
  transition: box-shadow 0.2s, border-color 0.2s;
  position: relative;
  z-index: 0;
  border: 0.0625rem solid var(--primary-border-color);
  cursor: pointer;
}
.outflow-coupon-block .cp-coupon-item .cp-coupon-discount {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 6.25rem;
  height: 6.25rem;
  word-break: break-word;
  margin-right: 1.25rem;
  align-self: center;
  padding: 0.625rem;
  cursor: pointer;
  background: none;
  text-align: center;
}
.outflow-coupon-block .cp-coupon-item .cp-coupon-discount .logo {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: flex;
  align-items: center;
  justify-content: center;
}
.outflow-coupon-block .cp-coupon-item .cp-coupon-discount .amount {
  font-size: 1.375rem;
  color: var(--primary-color);
  font-weight: 600;
}
.outflow-coupon-block .cp-coupon-item .cp-coupon-discount .amount-desc {
  font-size: 0.875rem;
  color: var(--primary-color);
  font-weight: 400;
}
.outflow-coupon-block .cp-coupon-item .right-box {
  display: flex;
  flex: 1 1 0;
}
.outflow-coupon-block .cp-coupon-item .right-box .cp-coupon-info {
  flex: 1;
  padding: 0 0.625rem 0 0;
}
.outflow-coupon-block .cp-coupon-item .right-box .cp-coupon-info .title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
  font-size: 1.375rem;
  transition: color 0.2s;
  word-break: break-word;
  cursor: pointer;
  min-height: unset;
  height: auto;
  margin-bottom: 0.625rem;
}
.outflow-coupon-block .cp-coupon-item .right-box .cp-coupon-info .title span {
  color: var(--primary-color);
}
.outflow-coupon-block .cp-coupon-item .right-box .cp-coupon-info .desc {
  color: #7b8585;
  font-size: 0.875rem;
  margin-bottom: 0.25rem;
}
.outflow-coupon-block .cp-coupon-item .right-box .cp-coupon-info .verified {
  display: flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  color: #00c27e;
  font-size: 0.875rem;
  background: #e3f7f1;
  padding: 0.0625rem 0.25rem 0.0625rem 0.125rem;
}
.outflow-coupon-block .cp-coupon-item .right-box .cp-btn {
  position: relative;
  margin-left: 1.875rem;
  align-self: center;
  transition: all 0.3s ease;
  font-size: 0.875rem;
  font-weight: 600;
  color: #fff;
  background: var(--deal-button-background);
  cursor: pointer;
  width: 9.25rem;
  height: 2.625rem;
  padding: 0 1rem;
  border-radius: 0.375rem;
}
.outflow-coupon-block .cp-coupon-item .right-box .cp-btn:hover {
  background: var(--deal-button-background-hover);
}
.outflow-coupon-block-mobile {
  margin: 1rem 0 0;
}
.outflow-coupon-block-mobile .cp-coupon-item {
  display: flex;
  align-items: center;
  padding: 0.875rem;
  background: var(--card-background);
  transition: box-shadow 0.2s, border-color 0.2s;
  z-index: 0;
  border: 0.0625rem solid #ddd;
  cursor: pointer;
  position: relative;
}
.outflow-coupon-block-mobile .cp-coupon-item::after {
  content: '';
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  border: solid;
  border-width: 0.125rem;
  border-color: transparent var(--primary-color) var(--primary-color) transparent;
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: rotate(-45deg) translateY(-50%);
}
.outflow-coupon-block-mobile .cp-coupon-item .cp-coupon-discount {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 4.5rem;
  height: 4.5rem;
  word-break: break-word;
  margin-right: 0.5rem;
  align-self: center;
  padding: 0.25rem;
  cursor: pointer;
  background: none;
  text-align: center;
}
.outflow-coupon-block-mobile .cp-coupon-item .cp-coupon-discount .logo {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: flex;
  align-items: center;
  justify-content: center;
}
.outflow-coupon-block-mobile .cp-coupon-item .cp-coupon-discount .amount {
  font-size: 1rem;
  font-weight: 600;
  color: var(--primary-color);
}
.outflow-coupon-block-mobile .cp-coupon-item .cp-coupon-discount .amount-desc {
  font-size: 0.5625rem;
  font-weight: 600;
  color: var(--primary-color);
}
.outflow-coupon-block-mobile .cp-coupon-item .cp-coupon-info {
  flex: 1 1 0;
  padding: 0 0.625rem 0 0;
}
.outflow-coupon-block-mobile .cp-coupon-item .cp-coupon-info .title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
  font-size: 0.9375rem;
  transition: color 0.2s;
  word-break: break-word;
  cursor: pointer;
  min-height: unset;
  height: auto;
  margin-bottom: 0.375rem;
}
.outflow-coupon-block-mobile .cp-coupon-item .cp-coupon-info .title span {
  color: var(--primary-color);
}
.outflow-coupon-block-mobile .cp-coupon-item .cp-coupon-info .verified {
  display: flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  color: #00c27e;
  font-size: 0.75rem;
  font-weight: 500;
  padding: 0.0625rem 0.25rem 0.0625rem 0.125rem;
}
.modal {
  position: fixed;
  z-index: 999;
  inset: 0;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  justify-content: center;
  overflow: auto;
  -webkit-backdrop-filter: blur(0.125rem);
          backdrop-filter: blur(0.125rem);
}
.modal .overlay {
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  inset: 0;
  z-index: 1;
  transition: opacity 0.3s ease;
}
.modal .modal-wrapper {
  position: relative;
  z-index: 2;
  max-width: 90%;
  width: 43.75rem;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 1.25rem 3.75rem rgba(0, 0, 0, 0.15), 0 0.5rem 2rem rgba(0, 0, 0, 0.1);
  animation: modal-fade-in 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
}
.modal .modal-wrapper .modal-title {
  position: relative;
  padding: 1rem 3.5rem 0 1.5rem;
  font-size: 1.25rem;
  line-height: 1.2;
  font-weight: 600;
  text-align: center;
}
.modal .modal-wrapper .modal-title .modal-close {
  position: absolute;
  top: 0.625rem;
  right: 0.625rem;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border-radius: 50%;
  transition: all 0.2s ease;
}
.modal .modal-wrapper .modal-title .modal-close:before,
.modal .modal-wrapper .modal-title .modal-close:after {
  content: '';
  position: absolute;
  width: 0.9375rem;
  height: 0.125rem;
  background: #666;
  border-radius: 0.0625rem;
  transition: all 0.2s ease;
}
.modal .modal-wrapper .modal-title .modal-close:before {
  transform: rotate(45deg);
}
.modal .modal-wrapper .modal-title .modal-close:after {
  transform: rotate(-45deg);
}
.modal .modal-wrapper .modal-content {
  padding: 0.75rem 1.5625rem;
  text-align: center;
}
.modal .modal-wrapper .modal-content .jump-box {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-bottom: 0.75rem;
}
.modal .modal-wrapper .modal-content .jump-box .desc-code {
  font-weight: 400;
  line-height: 1.2;
  font-size: 0.875rem;
}
.modal .modal-wrapper .modal-content .link-text {
  gap: 1rem;
  cursor: pointer;
  word-break: break-all;
  font-weight: 400;
  line-height: 1.2;
  font-size: 0.875rem;
}
.modal .modal-wrapper .modal-content .gotostore {
  cursor: pointer;
}
.modal .modal-wrapper .modal-content .deal-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}
.modal .modal-wrapper .modal-content .desc-deal {
  font-weight: 400;
  line-height: 1.4;
}
.modal .modal-wrapper .modal-content .code {
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
  padding: 0.5rem 1.25rem;
  border-radius: 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 0;
  border: 0.0625rem solid var(--primary-border-color);
}
.modal .modal-wrapper .modal-content .code .code-text {
  padding: 0;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.0625rem;
  -webkit-user-select: all;
     -moz-user-select: all;
          user-select: all;
  cursor: pointer;
  transition: all 0.3s ease;
  max-width: 25rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.modal .modal-wrapper .modal-content .code .code-text:active {
  transform: translateY(0);
}
.modal .modal-wrapper .modal-content .code input {
  border-radius: 0.5rem;
  background: var(--copy-gradient);
  color: var(--copy-text-color);
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 0.25rem 0.75rem rgba(0, 123, 255, 0.3);
  padding: 0.5rem;
}
.modal .modal-wrapper .modal-content .code input:hover {
  background: var(--copy-gradient-hover);
  transform: translateY(-0.1875rem);
  box-shadow: var(--copy-shadow);
}
.modal .modal-wrapper .modal-content .code input:active {
  transform: translateY(-0.0625rem);
  box-shadow: var(--copy-shadow-hover);
}
.modal .modal-wrapper .modal-content .btn-code {
  max-width: 25rem;
  padding: 0 2.5rem;
}
.modal .modal-wrapper .modal-content .btn-deal {
  font-weight: 600;
  border-radius: 0.5rem;
  max-width: 25rem;
  width: auto;
}
@keyframes modal-fade-in {
  from {
    opacity: 0;
    transform: translateY(-1.875rem) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
.navwaper .fixedwrap,
.header,
.header nav a {
  height: 5.5rem;
}
.home .coupon-block .coupon-item .coupon-info {
  padding-right: 0;
}
.home .coupon-block .coupon-item .coupon-info h3 {
  font-size: 1.125rem;
  height: 2.75rem;
  order: 1;
}
.home .coupon-block .coupon-item .coupon-info .coupon-domain {
  order: 3;
}
.home .coupon-block .coupon-item .coupon-info .coupon-time {
  order: 2;
}
.home .coupon-block .coupon-item button {
  width: 11.25rem;
  padding: 0 0.625rem;
  position: absolute;
  right: 1.25rem;
  bottom: 1.25rem;
}
.sidebar-section .card {
  background: var(--card-background);
  padding: 1.25rem;
  margin: 0;
  border-bottom: 0.0625rem solid var(--primary-border-color);
}
.bottom-section .card,
.main-section .card {
  padding: 1.25rem;
  background: var(--card-background);
  border: 0.0625rem solid var(--primary-border-color);
}
.home .link-logo {
  width: 14.375rem;
}
.home .bottom-wrapper {
  margin: 0 auto;
  position: relative;
  max-width: 75rem;
  margin-top: 1rem;
}
.home .bottom-wrapper .bottom-body {
  background: var(--card-background);
  padding: 3.125rem 1.25rem;
  margin: 1.875rem auto;
}
.home .bottom-wrapper .bottom-body .list-wrapper {
  margin-bottom: 0;
  margin-top: 0;
}
.home .bottom-wrapper .bottom-body .list-wrapper h2 {
  margin-bottom: 1.25rem;
}
.home .bottom-wrapper .bottom-body .list-wrapper .card-body {
  padding: 0.5rem 3.125rem;
}
.home .bottom-wrapper .bottom-body .list-wrapper .card-body h2 {
  text-align: center;
  font-size: 1.5rem;
}
.home .bottom-wrapper .bottom-body .list-wrapper .card-body li {
  padding: 0.9375rem 0.9375rem 0.9375rem 0;
}
@media (max-width: 1200px) {
  .container {
    max-width: 100%;
    margin: 0 0.75rem;
  }
  .bottom-section {
    max-width: 100%;
    margin: 0 0.75rem;
  }
  .home .bottom-wrapper {
    max-width: 100%;
    margin: 0 0.75rem;
  }
}
@media (max-width: 768px) {
  .col-layout {
    flex-direction: column;
  }
  .col-layout .main-section {
    padding: 0;
  }
  .col-layout .sidebar-section {
    flex: unset;
  }
  .row-cols-6 > *,
  .row-cols-5 > *,
  .row-cols-7 > *,
  .row-cols-8 > *,
  .row-cols-9 > *,
  .row-cols-10 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .header .container {
    flex-direction: row;
  }
  .header .logo {
    flex: 0 0 10rem;
  }
  .header nav a {
    padding: 0 0.75rem;
    font-size: 0.875rem;
  }
  .coupon-block .coupon-item .coupon-info h3 {
    font-size: 1rem !important;
    height: auto !important;
  }
  .subscribe .email-input {
    width: 100%;
  }
  .filter-wrapper ul li {
    padding: 0.35rem 0.5rem;
    margin-right: 0.5rem;
    margin-bottom: 0.2rem;
    border-radius: 0.1rem;
  }
  .filter-wrapper ul li span {
    font-size: 0.75rem;
  }
  .modal .modal-wrapper .modal-title {
    padding: 1rem 2rem 0 1rem;
    font-size: 1rem;
  }
  .modal .modal-wrapper .modal-title .modal-close {
    width: 1.125rem;
    height: 1.125rem;
  }
  .modal .modal-wrapper .modal-title .modal-close:before,
  .modal .modal-wrapper .modal-title .modal-close:after {
    width: 0.75rem;
    height: 0.0625rem;
  }
  .modal .modal-wrapper .modal-content {
    padding: 0.75rem;
  }
  .modal .modal-wrapper .modal-content .jump-box {
    flex-direction: column;
    gap: 0.25rem;
    margin-bottom: 0.75rem;
  }
  .modal .modal-wrapper .modal-content .link-text {
    display: none;
  }
  .modal .modal-wrapper .modal-content .code {
    padding: 0.75rem;
  }
}
@media (max-width: 992px) {
  .row-cols-6 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
}
@media (max-width: 576px) {
  .row-cols-6 > *,
  .row-cols-5 > *,
  .row-cols-7 > *,
  .row-cols-8 > *,
  .row-cols-9 > *,
  .row-cols-10 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
}
@media screen and (max-width: 1200px) {
  .card .card-body {
    max-width: 100%;
    padding: 0 0.75rem;
  }
}
@media (max-width: 900px) {
  .main .d-flex {
    flex-direction: column;
    gap: 1.25rem;
  }
  .sidebar-section .card:first-child {
    margin-top: 0;
  }
  .header .container {
    flex-direction: row;
  }
  nav a:nth-child(n+4) {
    display: none;
  }
  .privacy-policy .container {
    flex-direction: column;
  }
  .privacy-policy .container p,
  .privacy-policy .container button {
    margin-left: 0;
    margin-top: 0.375rem;
  }
}
@media (max-width: 767px) {
  .btn-outline {
    font-size: 0.75rem;
  }
  .coupon-block.container .coupon-item button {
    width: 100%;
    position: relative;
    left: 0;
    bottom: 0;
    font-size: 0.75rem;
  }
  .coupon-block .coupon-item .coupon-discount.logo span {
    font-size: 0.75rem;
  }
  .coupon-block .coupon-item {
    flex-direction: column;
    align-items: stretch;
    padding: 0.75rem 0.5rem;
  }
  .coupon-block .coupon-item .coupon-discount {
    width: 100%;
    min-width: 0;
    border-radius: 0.5rem 0.5rem 0 0;
    margin-bottom: 0.625rem;
    height: auto;
    padding: 0.75rem 0;
  }
  .coupon-block .coupon-item .coupon-info {
    padding: 0 0 0.625rem 0;
  }
  .coupon-block .coupon-item button {
    width: 100%;
    margin: 0;
    position: relative;
    left: 0;
    bottom: 0;
    font-size: 0.75rem;
  }
}
@media (max-width: 580px) {
  nav {
    display: none;
  }
  .navwaper {
    background: var(--header-background);
  }
}
@media screen and (max-width: 768px) {
  .merchant-wrapper {
    padding: 1.25rem 0;
  }
  .merchant-wrapper .container .merchant-logo {
    width: 5rem;
    height: 5rem;
  }
  .merchant-wrapper .container .merchant-logo img {
    width: 5rem;
    height: 5rem;
  }
  .merchant-wrapper .container .merchant-info .merchant-title {
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  .merchant-wrapper .container .merchant-logo .gotostore span {
    font-size: 0.75rem;
  }
  .merchant-wrapper .container .merchant-info .merchant-description {
    font-size: 0.875rem;
    line-height: 1.375rem;
    height: 2.75rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    position: relative;
  }
  .merchant-wrapper .container .merchant-info .merchant-description::after {
    content: "";
    position: absolute;
    bottom: 0.375rem;
    right: 0;
    width: 0;
    height: 0;
    border-left: 0.3125rem solid transparent;
    border-right: 0.3125rem solid transparent;
    border-top: 0.3125rem solid #000;
    transition: transform 0.3s ease-in-out;
  }
  .merchant-wrapper .container .merchant-info .merchant-description.show-more {
    height: auto;
    -webkit-line-clamp: unset;
    display: block;
  }
  .merchant-wrapper .container .merchant-info .merchant-description.show-more::after {
    transform: rotate(180deg);
  }
}

/*
     FILE ARCHIVED ON 06:42:11 Jul 22, 2025 AND RETRIEVED FROM THE
     INTERNET ARCHIVE ON 11:26:23 Sep 12, 2026.
     JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE.

     ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C.
     SECTION 108(a)(3)).
*/
/*
playback timings (ms):
  captures_list: 0.328
  exclusion.robots: 0.036
  exclusion.robots.policy: 0.03
  esindex: 0.005
  cdx.remote: 3.335
  LoadShardBlock: 53.781 (3)
  PetaboxLoader3.datanode: 72.585 (5)
  load_resource: 126.515
  PetaboxLoader3.resolve: 82.123
  loaddict: 18.293
*/