.tw-coupons,
.tw-coupons * {
  box-sizing: border-box;
}

.tw-coupons {
  --tw-ink: #071735;
  --tw-ink-2: #17365f;
  --tw-text: #4f6380;
  --tw-muted: #6a7b94;
  --tw-blue: #0b6df8;
  --tw-blue-hover: #075ed8;
  --tw-soft-blue: #eef6ff;
  --tw-soft-blue-2: #e4f0ff;
  --tw-line: #dbe6f3;
  --tw-card: rgba(255, 255, 255, 0.92);
  color: var(--tw-text);
  background: #fff;
  font-family: inherit;
}

.tw-coupons a {
  color: inherit;
  text-decoration: none;
}

.tw-coupons-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(54px, 6.3vw, 92px) 20px;
  background:
    radial-gradient(circle at 4% 5%, rgba(65, 133, 255, 0.10), transparent 26%),
    radial-gradient(circle at 94% 15%, rgba(90, 176, 255, 0.12), transparent 30%),
    linear-gradient(135deg, #f8fbff 0%, #edf5ff 54%, #ffffff 100%);
}

.tw-coupons-glow {
  position: absolute;
  z-index: -1;
  display: block;
  border-radius: 50%;
  pointer-events: none;
}

.tw-coupons-glow--one {
  width: clamp(240px, 20vw, 330px);
  height: clamp(240px, 20vw, 330px);
  left: clamp(-150px, -8vw, -90px);
  top: clamp(-155px, -8vw, -90px);
  background: rgba(56, 123, 247, 0.11);
  box-shadow: 0 0 0 34px rgba(56, 123, 247, 0.022);
}

.tw-coupons-glow--two {
  width: clamp(210px, 18vw, 285px);
  height: clamp(210px, 18vw, 285px);
  right: clamp(-125px, -7vw, -70px);
  bottom: clamp(-145px, -8vw, -80px);
  background: rgba(70, 166, 247, 0.09);
}

.tw-coupons-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 500px);
  gap: clamp(34px, 4.2vw, 68px);
  align-items: center;
  width: min(1240px, 100%);
  margin: 0 auto;
}

.tw-coupons-hero__copy {
  min-width: 0;
  padding-block: clamp(8px, 1.1vw, 16px);
}


.tw-coupons-hero h1 {
  width: 100%;
  max-width: 850px;
  margin: 0 0 clamp(18px, 2vw, 24px);
  color: var(--tw-ink);
  font-size: clamp(43px, 5.15vw, 76px);
  line-height: 1.01;
  letter-spacing: -0.058em;
  font-weight: 850;
  overflow-wrap: normal;
  word-break: normal;
}

.tw-coupons-lead {
  width: 100%;
  max-width: 790px;
  margin: 0;
  color: var(--tw-text);
  font-size: clamp(17px, 1.35vw, 21px);
  line-height: 1.66;
  letter-spacing: -0.01em;
}

.tw-coupons-featured {
  width:min(720px,100%);
  margin-top:clamp(24px,2.6vw,34px);
  padding:clamp(18px,2vw,24px);
  border:1px solid rgba(7,95,247,.14);
  border-radius:22px;
  background:rgba(255,255,255,.72);
  box-shadow:0 16px 42px rgba(7,23,53,.055);
  backdrop-filter:blur(10px);
}

.tw-coupons-featured__label {
  display:block;
  margin-bottom:10px;
  color:#35547d;
  font-size:13px;
  font-weight:850;
  letter-spacing:.01em;
}

.tw-coupons-featured__grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.tw-coupons-featured__code {
  display:grid;
  gap:4px;
  min-width:0;
  padding:14px 16px;
  border:1px solid rgba(7,95,247,.16);
  border-radius:16px;
  background:#fff;
}

.tw-coupons-featured__code span {
  color:#6a7b93;
  font-size:12px;
  font-weight:750;
}

.tw-coupons-featured__code strong {
  color:#075ff7;
  font-size:clamp(20px,2vw,26px);
  font-weight:900;
  line-height:1.05;
  letter-spacing:-.025em;
  text-transform:uppercase;
}

.tw-coupons-featured p {
  margin:12px 0 0;
  color:#536985;
  font-size:14px;
  line-height:1.55;
  text-wrap:pretty;
}

.tw-coupons-summary {
  width: 100%;
  min-width: 0;
  padding: clamp(24px, 2.6vw, 34px);
  border: 1px solid rgba(16, 48, 88, 0.09);
  border-radius: 28px;
  background: var(--tw-card);
  box-shadow: 0 24px 80px rgba(18, 56, 102, 0.085);
  backdrop-filter: blur(12px);
}

.tw-coupons-summary__head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 15px;
  align-items: center;
  margin-bottom: 21px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--tw-line);
}

.tw-coupons-summary__head > div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.tw-coupons-summary__head strong {
  color: var(--tw-ink);
  font-size: clamp(24px, 2vw, 31px);
  line-height: 1.08;
  letter-spacing: -0.035em;
  font-weight: 820;
}

.tw-coupons-summary__head span:not(.tw-coupons-icon) {
  color: var(--tw-muted);
  font-size: clamp(14.5px, 1.05vw, 16px);
  line-height: 1.45;
}

.tw-coupons-icon,
.tw-coupon-item__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 54px;
  height: 54px;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(11, 109, 248, 0.11), rgba(83, 175, 255, 0.09));
  color: var(--tw-blue);
}

.tw-coupons-icon svg,
.tw-coupon-item__icon svg {
  width: 28px;
  height: 28px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.tw-coupons-summary ul {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.tw-coupons-summary li {
  position: relative;
  margin: 0;
  padding-left: 29px;
  color: var(--tw-text);
  font-size: clamp(15.5px, 1.18vw, 18px);
  line-height: 1.56;
}

.tw-coupons-summary li::before {
  content: "";
  position: absolute;
  top: 0.62em;
  left: 5px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--tw-blue);
  box-shadow: 0 0 0 6px rgba(11, 109, 248, 0.09);
}

.tw-coupons-body {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 30px;
  width: min(1240px, 100%);
  margin: 0 auto;
  padding: clamp(38px, 5vw, 72px) 20px;
  background: #fff;
}

.tw-coupons-toc {
  position: sticky;
  top: 24px;
  align-self: start;
}

.tw-coupons-toc__card {
  display: grid;
  gap: 4px;
  padding: 18px;
  border: 1px solid var(--tw-line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 16px 46px rgba(18, 56, 102, 0.055);
}

.tw-coupons-toc__card strong {
  display: block;
  margin-bottom: 8px;
  padding: 0 10px;
  color: var(--tw-ink);
  font-size: 14px;
  font-weight: 800;
}

.tw-coupons-toc__card a {
  display: block;
  padding: 9px 10px;
  border-radius: 12px;
  color: #5d6f89;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 650;
}

.tw-coupons-toc__card a:hover {
  background: var(--tw-soft-blue);
  color: var(--tw-blue-hover);
}

.tw-coupons-content {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.tw-coupons-card {
  scroll-margin-top: 26px;
  min-width: 0;
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid var(--tw-line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 16px 54px rgba(18, 56, 102, 0.05);
}

.tw-coupons-note {
  background: linear-gradient(135deg, rgba(238, 246, 255, 0.88), rgba(255, 255, 255, 0.96));
}

.tw-coupons-section-head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 14px;
}

.tw-coupons-section-head > span {
  display: inline-flex;
  flex: 0 0 34px;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: var(--tw-soft-blue-2);
  color: var(--tw-blue-hover);
  font-size: 13px;
  font-weight: 800;
}

.tw-coupons h2 {
  margin: 0;
  color: var(--tw-ink);
  font-size: clamp(23px, 2.2vw, 32px);
  line-height: 1.14;
  letter-spacing: -0.035em;
  font-weight: 820;
  text-wrap: balance;
}

.tw-coupons-card > p {
  margin: 0 0 14px;
  color: var(--tw-text);
  font-size: clamp(16px, 1.18vw, 18px);
  line-height: 1.7;
  max-width: 100%;
  text-wrap: pretty;
  overflow-wrap: normal;
  word-break: normal;
}

.tw-coupons-card > p:last-child {
  margin-bottom: 0;
}

.tw-coupons-card a:not(.tw-coupons-button) {
  color: var(--tw-blue-hover);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.tw-coupons-live-search {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px 16px;
  align-items:end;
  margin-top:20px;
  padding:16px;
  border:1px solid #d8e6f7;
  border-radius:18px;
  background:#f7fbff;
}

.tw-coupons-live-search label {
  grid-column:1 / -1;
  color:var(--tw-ink);
  font-size:14px;
  font-weight:800;
}

.tw-coupons-live-search__field {
  position:relative;
  min-width:0;
}

.tw-coupons-live-search__field svg {
  position:absolute;
  left:15px;
  top:50%;
  width:19px;
  height:19px;
  transform:translateY(-50%);
  fill:none;
  stroke:#5c789d;
  stroke-width:1.8;
  stroke-linecap:round;
  pointer-events:none;
}

.tw-coupons-live-search__field input {
  width:100%;
  min-height:52px;
  margin:0;
  padding:0 16px 0 46px;
  border:1px solid #c9d9ed;
  border-radius:14px;
  background:#fff;
  color:var(--tw-ink);
  font:inherit;
  font-size:15px;
  outline:none;
  box-shadow:none;
  transition:border-color .16s ease, box-shadow .16s ease;
}

.tw-coupons-live-search__field input:focus {
  border-color:#7cb2f7;
  box-shadow:0 0 0 3px rgba(7,95,247,.10);
}

.tw-coupons-live-search__field input::placeholder {
  color:#7b8ca4;
  opacity:1;
}

.tw-coupons-live-search__status {
  align-self:center;
  min-width:max-content;
  color:#5a708e;
  font-size:13px;
  font-weight:750;
  white-space:nowrap;
}

.tw-coupons-search-empty {
  display:grid;
  gap:5px;
  margin-top:16px;
  padding:18px;
  border:1px solid #d5e5f8;
  border-radius:16px;
  background:var(--tw-soft-blue);
}

.tw-coupons-search-empty[hidden] {
  display:none;
}

.tw-coupons-search-empty strong { color:var(--tw-ink); }
.tw-coupons-search-empty span { color:var(--tw-text); font-size:14px; }

.tw-coupons-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 20px;
}

.tw-coupon-item[hidden] {
  display:none !important;
}

.tw-coupon-item {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 20px;
  border: 1px solid #dce7f4;
  border-radius: 22px;
  background: #fbfdff;
  box-shadow: 0 12px 34px rgba(18, 56, 102, 0.035);
}

.tw-coupon-item__top {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 13px;
  align-items: center;
  margin-bottom: 14px;
}

.tw-coupon-item__top > div {
  min-width: 0;
}

.tw-coupon-item__top span:not(.tw-coupon-item__icon) {
  display: block;
  margin-bottom: 4px;
  color: var(--tw-blue-hover);
  font-size: 13px;
  font-weight: 750;
}

.tw-coupon-item h3 {
  margin: 0;
  color: var(--tw-ink);
  font-size: 20px;
  line-height: 1.16;
  font-weight: 820;
  letter-spacing: -0.02em;
}

.tw-coupon-item__code {
  margin-top: auto;
  padding: 13px 14px;
  border: 1px dashed #a9c8f2;
  border-radius: 16px;
  background: #fff;
}

.tw-coupon-item__code span {
  display: block;
  margin-bottom: 5px;
  color: var(--tw-muted);
  font-size: 12.5px;
  font-weight: 700;
}

.tw-coupon-item__code strong {
  display: block;
  color: var(--tw-blue-hover);
  font-size: 18px;
  line-height: 1.25;
  font-weight: 820;
  overflow-wrap: anywhere;
  text-transform:uppercase;
}

.tw-coupon-item p {
  margin: 14px 0 0;
  color: var(--tw-text);
  font-size: 15px;
  line-height: 1.58;
}

.tw-coupon-item__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 14px 0 0;
}

.tw-coupon-item__tags span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 6px 9px;
  border-radius: 999px;
  background: var(--tw-soft-blue);
  color: var(--tw-ink-2);
  font-size: 12.5px;
  font-weight: 700;
}

.tw-coupon-item small {
  display: block;
  margin-top: 12px;
  color: var(--tw-muted);
  font-size: 12.5px;
}

.tw-coupons-button {
  padding: 12px 17px;
}

.tw-coupons-button--primary {
  border: 1px solid var(--tw-blue);
  background: var(--tw-blue);
  color: #fff !important;
  box-shadow: 0 12px 25px rgba(11, 109, 248, 0.13);
}

.tw-coupons-button svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.tw-coupon-item__button {
  width: 100%;
  margin-top: 16px;
}

.tw-coupons-empty {
  display: grid;
  gap: 5px;
  margin-top: 18px;
  padding: 18px;
  border: 1px solid #d5e5f8;
  border-radius: 16px;
  background: var(--tw-soft-blue);
}

.tw-coupons-empty strong {
  color: var(--tw-ink);
}

.tw-coupons-empty span {
  color: var(--tw-text);
  font-size: 14px;
}

.tw-coupons-categories {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.tw-coupons-categories a {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--tw-line);
  border-radius: 18px;
  background: #fbfdff;
  text-decoration: none !important;
}

.tw-coupons-categories a:hover {
  border-color: #bdd4f3;
  background: var(--tw-soft-blue);
}

.tw-coupons-categories strong {
  color: var(--tw-ink);
  font-size: 16px;
  font-weight: 800;
}

.tw-coupons-categories span {
  color: var(--tw-text);
  font-size: 14px;
  line-height: 1.48;
  text-wrap: pretty;
}

.tw-coupons-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.tw-coupons-steps > div {
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--tw-line);
  border-radius: 18px;
  background: #fbfdff;
}

.tw-coupons-steps b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin-bottom: 10px;
  border-radius: 10px;
  background: var(--tw-soft-blue-2);
  color: var(--tw-blue-hover);
  font-size: 13px;
}

.tw-coupons-steps strong {
  display: block;
  color: var(--tw-ink);
  font-size: 16px;
  font-weight: 800;
}

.tw-coupons-steps p {
  margin: 7px 0 0;
  color: var(--tw-text);
  font-size: 14px;
  line-height: 1.55;
  text-wrap: pretty;
}

.tw-coupons-faq {
  display: grid;
  gap: 10px;
  margin-top: 18px;
}

.tw-coupons-faq details {
  overflow: hidden;
  border: 1px solid var(--tw-line);
  border-radius: 16px;
  background: #fbfdff;
}

.tw-coupons-faq summary {
  cursor: pointer;
  padding: 16px 18px;
  color: var(--tw-ink);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.35;
}

.tw-coupons-faq details p {
  margin: 0;
  padding: 0 18px 18px;
  color: var(--tw-text);
  font-size: 15px;
  line-height: 1.62;
}

@media (max-width: 1100px) {
  .tw-coupons-hero__inner {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 430px);
    gap: 30px;
  }

  .tw-coupons-hero h1 {
    font-size: clamp(40px, 5.2vw, 60px);
    letter-spacing: -0.05em;
  }

  .tw-coupons-body {
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 22px;
  }

  .tw-coupons-categories,
  .tw-coupons-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .tw-coupons-live-search {
    grid-template-columns:1fr;
    gap:8px;
    padding:14px;
  }
  .tw-coupons-live-search label { grid-column:auto; }
  .tw-coupons-live-search__status { min-width:0; white-space:normal; }
}

@media (max-width: 900px) {
  .tw-coupons-hero__inner {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .tw-coupons-hero h1,
  .tw-coupons-lead {
    max-width: 100%;
  }

  .tw-coupons-body {
    grid-template-columns: 1fr;
    padding-top: 32px;
  }

  .tw-coupons-toc {
    position: static;
  }

  .tw-coupons-toc__card {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
  }

  .tw-coupons-toc__card strong {
    grid-column: 1 / -1;
  }

  .tw-coupons-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .tw-coupons-featured{padding:18px;border-radius:20px}
  .tw-coupons-featured__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .tw-coupons-featured__code{padding:12px 13px;border-radius:14px}

  .tw-coupons-hero__copy {
    padding-block: 4px;
  }

  .tw-coupons-hero {
    padding: 40px 16px;
  }

  .tw-coupons-glow--one {
    width: 210px;
    height: 210px;
    left: -95px;
    top: -100px;
  }

  .tw-coupons-glow--two {
    width: 185px;
    height: 185px;
    right: -95px;
    bottom: -95px;
  }

  .tw-coupons-hero h1 {
    font-size: clamp(35px, 10.6vw, 52px);
    line-height: 1.03;
    letter-spacing: -0.045em;
  }

  .tw-coupons-lead {
    font-size: 16.5px;
    line-height: 1.62;
  }


  .tw-coupons-summary {
    padding: 20px;
    border-radius: 24px;
  }

  .tw-coupons-summary__head {
    gap: 12px;
    margin-bottom: 18px;
    padding-bottom: 17px;
  }

  .tw-coupons-summary__head strong {
    font-size: 23px;
    letter-spacing: -0.03em;
  }

  .tw-coupons-icon,
  .tw-coupon-item__icon {
    width: 46px;
    height: 46px;
    border-radius: 16px;
  }

  .tw-coupons-icon svg,
  .tw-coupon-item__icon svg {
    width: 25px;
    height: 25px;
  }

  .tw-coupons-summary li {
    padding-left: 26px;
    font-size: 15.5px;
  }

  .tw-coupons-body {
    padding: 28px 16px 46px;
  }

  .tw-coupons-card {
    padding: 22px 18px;
    border-radius: 22px;
  }

  .tw-coupons-categories,
  .tw-coupons-steps {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 440px) {
  .tw-coupons-featured{padding:16px}
  .tw-coupons-featured__grid{grid-template-columns:1fr}
  .tw-coupons-featured__code strong{font-size:22px}

  .tw-coupons-hero {
    padding: 35px 14px;
  }

  .tw-coupons-hero h1 {
    font-size: clamp(33px, 10vw, 43px);
    letter-spacing: -0.035em;
  }

  .tw-coupons-lead {
    font-size: 15.5px;
  }

  .tw-coupons-summary__head {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .tw-coupons-toc__card {
    grid-template-columns: 1fr;
  }

  .tw-coupons-toc__card strong {
    grid-column: auto;
  }

  .tw-coupons h2 {
    font-size: 23px;
    letter-spacing: -0.03em;
  }

  .tw-coupons-section-head > span {
    width: 31px;
    height: 31px;
    flex-basis: 31px;
  }
}

@media (prefers-reduced-motion: reduce) {
}
