:root {
  --pico-font-family: Roboto, sans-serif;

  --pico-font-weight: 300;
  --pico-primary: #ff5900;
  --pico-primary-background: #ff5900;
  --pico-primary-hover: #ff7a33;
  --pico-primary-hover-background: #ff7a33;
  --pico-primary-focus: rgba(255,89,0,0.25);
  --pico-primary-inverse: #fff;
  --pico-secondary: #596b78;
  --pico-secondary-hover: #73828c;
  --pico-secondary-focus: rgba(115,130,140,0.25);
  --pico-secondary-inverse: #fff;
  --pico-contrast: #292f33;
  --pico-contrast-focus: rgba(115,130,140,0.25);
  --pico-contrast-inverse: white;
  --pico-contrast-hover: #444e55;
  --pico-mark-background-color: #d0c284;
  --pico-mark-color: #11191f;
  --pico-ins-color: #388e3c;
  --pico-del-color: #c62828;
  --pico-progress-color: #d9961a;
  --pico-button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  --pico-button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  --pico-spacing: 0.25rem;
  --pico-form-element-spacing-vertical: 0.25rem;


  /* allstreet custom vars*/

  --asv-background: #1E2427;
  --asv-background-2: #505A61;
  --asv-background-3: #505A61cc;
  --asv-border: #505A61;

  --asv-color-1: #F0F5F5;
  --asv-color-2: #A7ACB0;

  --asv-font-family-fixed: Consolas,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New, monospace;

  --asv-color-hover: rgba(115, 130, 140, 0.25);
  --asv-color-border: #555555;
  --asv-color-border2: #2e343a;

  --asv-color-purple: #9f6dd2;
  --asv-color-red: #d2353a;
  --asv-color-green: #92e761;
  --asv-color-orange: #d89538;
  --asv-color-brown: #8d562c;
  --asv-color-white: white;
  --asv-color-silver: #b4b2b5;

  --asv-color-darkviolet: #6a52a9;
  --asv-color-hover-darkviolet: #8a75bd;

  --asv-color-bg: #1a1f22;
  --asv-color-bg2: #1a1f22;

  --asv-icon-filter: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='64 64 896 896' width='24' height='24' fill='rgb(162,175,185)'%3E%3Cpath d='M880.1%20154H143.9c-24.5%200-39.8%2026.7-27.5%2048L349%20597.4V838c0%2017.7%2014.2%2032%2031.8%2032h262.4c17.6%200%2031.8-14.3%2031.8-32V597.4L907.7%20202c12.2-21.3-3.1-48-27.6-48zM603.4%20798H420.6V642h182.9v156zm9.6-236.6l-9.5%2016.6h-183l-9.5-16.6L212.7%20226h598.6L613%20561.4z'%3E%3C/path%3E%3C/svg%3E");

  --asv-icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='8' viewBox='0 0 10 8' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M5 8L10 0H0L5 8Z' fill='rgb(30,36,39)'/%3E%3C/svg%3E");

  --asv-icon-tick-star: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31' height='30' viewBox='0 0 31 30' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M16.2753 0.430739L18.2353 2.15265C18.6294 2.49957 19.1092 2.64019 19.6286 2.56126L22.2081 2.172C23.0685 2.04194 23.8808 2.56418 24.1208 3.40062L24.8377 5.90878C24.9822 6.4146 25.3089 6.79144 25.7887 7.00629L28.1698 8.07297C28.9637 8.4295 29.3656 9.30734 29.1141 10.1409L28.3615 12.6394C28.2102 13.1424 28.2815 13.6368 28.5686 14.077L29.9948 16.2624C30.4708 16.9909 30.333 17.9468 29.6709 18.5124L27.6869 20.2064C27.287 20.5475 27.0799 21.0023 27.0837 21.5275L27.102 24.1359C27.1078 25.007 26.4758 25.7364 25.6133 25.854L23.0279 26.2066C22.5066 26.2779 22.0875 26.5477 21.8061 26.9919L20.4108 29.1966C19.9455 29.9318 19.0194 30.2045 18.2302 29.8374L15.8646 28.737C15.3886 28.5153 14.8885 28.5153 14.4124 28.737L12.0468 29.8374C11.2576 30.2045 10.3315 29.9327 9.86616 29.1966L8.47087 26.9919C8.18951 26.5477 7.76942 26.2779 7.24906 26.2066L4.66373 25.854C3.80135 25.7364 3.16922 25.006 3.17497 24.1359L3.19327 21.5275C3.19714 21.0014 2.98991 20.5475 2.5901 20.2064L0.606067 18.5124C-0.0558563 17.9468 -0.193675 16.991 0.282252 16.2624L1.70837 14.077C1.99549 13.6367 2.0668 13.1434 1.9155 12.6394L1.16292 10.1409C0.911462 9.30734 1.31327 8.4295 2.10725 8.07297L4.48827 7.00629C4.96819 6.79144 5.29481 6.41367 5.4393 5.90878L6.15622 3.40062C6.39524 2.56324 7.20751 2.04192 8.06895 2.172L10.6484 2.56126C11.1677 2.63936 11.6476 2.49957 12.0417 2.15265L14.0017 0.430739C14.656 -0.14358 15.6205 -0.14358 16.2749 0.430739H16.2753ZM5.37027 15.4039L13.4635 22.6904L24.906 9.97684L23.1214 8.1923L13.2408 16.2874L8.01042 12.2511L5.36926 15.4049L5.37027 15.4039Z' fill='rgb(219,255,0)'/%3E%3C/svg%3E");

}

@media (min-width: 576px)
{
  :root {
    --pico-font-size: 17px;
  }
}

@media (min-width: 768px)
{
  :root {
    --pico-font-size: 18px;
  }
}

@media (min-width: 992px)
{
  :root {
    --pico-font-size: 19px;
  }
}

@media (min-width: 1200px) {
  :root {
    --pico-font-size: 20px;
  }
}

.silver {
  color: var(--asv-color-silver);
}

.red {
  color: var(--asv-color-red);
}

.green {
  color: var(--asv-color-green);
}

.orange {
  color: var(--asv-color-orange);
}

.brown {
  color: var(--asv-color-brown);
}

.purple {
  color: var(--asv-color-purple);
}

.white {
  color: var(--asv-color-white);
}


input[type='number'] {
  -moz-appearance:textfield;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

.ternary-checkbox [type=checkbox]:indeterminate {
  background-color: var(--asv-color-bg2);
  border: 1pt solid #666;
}

a.delete[role=button] {
  background-color: var(--asv-color-red);
}

.icon-button {
  padding: 0.3rem;
  height: 1.5rem;
  width: 1.5rem;
  cursor: pointer;
  border: none;
  border-radius: 50%;
  display: flex;
  font-size: 0.9rem;
  vertical-align: middle;
}

.selectable:hover {
  background-color: var(--asv-color-hover);
  cursor: pointer;
  box-shadow: 0.1rem 0.1rem 0.2rem 0.2rem var(--asv-color-hover) inset,
              -0.05rem -0.05rem 0.2rem 0.2rem var(--asv-color-hover) inset;
}

.selected {
  background-color: var(--asv-color-bg2);
}

.busy-screen {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--asv-color-hover);
  display: none;
}

.busy-screen.htmx-request {
  display: block;
}

.busy-screen div {
  margin: 50%;
}


/*
 * MARKDOWN
 */

figure.md.image {
  width: fit-content;
  height: fit-content;
}

figure.md.image img {
  margin: 0;
}

figure.md.image.preview {
  position: relative;
  cursor: pointer;
}

figure.md.image.preview .indicator {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #000a var(--pico-icon-eye) no-repeat center/1rem;
}

figure.md.image.preview:hover .indicator {
  display: block;
}

figure.md.image.preview .popup {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: #0003;
  z-index: 9999;
}

figure.md.image.preview .popup.shown {
  display: block;
}

figure.md.image.preview .popup > .item,
figure.md.image.preview .popup > img {
  width: fit-content;
  height: fit-content;
  max-width: 80vw;
  max-height: 80vh;
  object-fit: contain;
  margin: 50vh 0 0 50vw;
  transform: translate(-50%,-50%);
  cursor: auto;
}

figure.md.image.preview .popup::after {
  display: block;
  width: 2rem;
  height: 2rem;
  line-height: 2rem;
  text-align: center;
  background: white;
  color: black;
  content: "❌";
  position: absolute;
  top: 5%;
  right: 5%;
}

figure.md.image .item {
  display: flex;
  flex-direction: column;
  border: 1pt solid var(--asv-border);
  border-radius: 0.3rem;
  overflow: hidden;
}

figure.md.image:has(.item) .indicator {
  border-radius: 0.3rem;
}

figure.md.image .item .bar {
  position: relative;
  background: var(--asv-background-2);
  height: 1rem;
}

figure.md.image > *,
figure.md.image .item > * {
  margin: 0;
}

figure.md.image .item .bar::before {
  content: "•••";
  color: var(--asv-color-2);
  position: absolute;
  top: 0;
  left: 0;
  line-height: 1rem;
  padding: 0 0.5rem;
}

.gallery.md {
  display: flex;
  flex-wrap: wrap;
}

.gallery.md figure.md.image {
  margin: 0.25rem;
}

.gallery.md figure.md.image > .item img {
  width: 16rem;
  height: 10rem;
  object-fit: cover;
}

.markdown-content p {
  color: var(--asv-color-2);
  --pico-font-weight: 400;
  margin-bottom: 1.5rem;
}

.markdown-content p.para-bright {
  color: white;
}

.markdown-content a,
.markdown-content p,
.markdown-content pre {
  font-size: 1.2rem;
  line-height: 1.4rem;
}

.markdown-content b,
.markdown-content strong {
  color: white;
  font-weight: bold;
}

.markdown-content blockquote {
  border-top: 1px solid var(--asv-color-2);
  border-right: none;
  border-bottom: 1px solid var(--asv-color-2);
  border-left: none;
  padding: 1rem 0;
  margin: 1.5rem 0;
}

.markdown-content blockquote p {
  font-size: 1.8rem;
  line-height: 2rem;
  font-weight: 300;
  color: var(--asv-color-1);
}

.markdown-content blockquote blockquote {
  border: none;
  padding: 0;
  margin-bottom: 0;
}

.markdown-content blockquote blockquote p {
  font-size: 0.8rem;
  line-height: 0.8rem;
  margin-bottom: 0;
}

.markdown-content h1,
.markdown-content h2,
.markdown-content h3,
.markdown-content h4,
.markdown-content h5 {
  font-weight: 500;
  color: var(--asv-color-1);
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
  --pico-typography-spacing-vertical: 2rem;
}

.markdown-content h1 {
  border-bottom: 1px solid var(--asv-color-2);
}

.markdown-content li {
  margin-left: 1rem;
}

.flat-primary[role=button] {
  --pico-line-height: 2;
  height: 2.5rem;
  font-size: 1.2rem;
  font-weight: 500;
  border-radius: 2rem;
  border: none;
  padding: 0 2.5rem;
  transition: 300ms;
}

.flat-black[role=button] {
  --pico-line-height: 2;
  height: 2.5rem;
  background: black;
  color: white;
  font-size: 1.2rem;
  font-weight: 500;
  border-radius: 2rem;
  border: none;
  padding: 0 2.5rem;
  transition: 300ms;
}

.flat-black[role=button]:hover {
  background: #222;
}

.flat-white[role=button] {
  --pico-line-height: 2;
  height: 2.5rem;
  background: var(--asv-color-silver);
  color: black;
  font-size: 1.2rem;
  font-weight: 500;
  border-radius: 2rem;
  border: none;
  padding: 0 2.5rem;
  transition: 300ms;
}

.flat-white[role=button]:hover {
  background: white;
}

.plain[role=button] {
  --pico-line-height: 2;
  height: 2rem;
  background: transparent;
  color: white;
  font-size: 0.9rem;
  font-weight: 500;
  border: 1pt solid var(--asv-border);
  padding: 0 1.5rem;
  transition: 300ms;
}

.plain[role=button]:hover {
  background: var(--pico-primary-focus);
  border-color: var(--pico-primary-focus);
}

.search-box input {
  color: white;
  background-color: transparent;
  background-image: var(--pico-icon-search);
  background-repeat: no-repeat;
  background-position: center right 0.6rem;
  border: 1pt solid var(--asv-border);
}

.search-box input:focus {
  border-color: var(--pico-primary-focus);
}

.btns-row {
  display: flex;
  flex-wrap: wrap;
  width: fit-content;
  margin: 0.5rem auto;
  justify-content: space-around;
}


/*
 * PAGE
 */

body {
  min-height: 100vh;
  background: var(--asv-background);
  display: flex;
}

body>div {
  flex: 1;
  display: flex;
}

.page {
  flex: 1;
  width: 100%;
  height: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
}

.page-header {
  display: block;
  width: 100%;
  min-height: 4rem;
  padding: 1rem 0 3rem 0;
  margin: 0;
  position: relative;
  background: none;
  z-index: 999;
  justify-content: space-around;
}

.page-header a:hover,
.page-footer a:hover {
  background: var(--pico-primary-focus);
}

.page-header .logo,
.page-footer .logo {
  padding: 0.5rem;
  margin: 0.5rem;
  display: flex;
  justify-content: space-between;
}

.page-footer .logo {
  width: 7rem;
}

.page-header .logo img,
.page-footer .logo img {
  height: 2rem;
}

.page-header .logo span {
  font-weight: 100;
  font-size: 2.9rem;
  line-height: 2rem;
  color: var(--pico-primary);
}

.page-header .logo:hover,
.page-footer .logo:hover {
  text-decoration: none;
}

.page-header .icon-button,
.page-footer .icon-button {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  color: white;
  background-color: var(--asv-background-2);
  border: none;
  border-radius: 0.25rem;
  transition: 300ms;
}

.page-header .icon-button svg,
.page-footer .icon-button svg {
  margin: 50% 0 0 50%;
  transform: translate(-50%,-50%);
}

.page-header .icon-button:hover,
.page-footer .icon-button:hover {
  background: var(--pico-primary-focus);
}

.page-header .outline[role=button],
.page-footer .outline[role=button] {
  white-space: nowrap;
  height: 2rem;
  color: var(--pico-primary-inverse);
  font-size: 0.9rem;
  font-weight: 300;
}

.page-header .app-menu-icon,
.page-footer .app-menu-icon {
  color: black;
  background: var(--pico-primary);
  width: 2rem;
  height: 2rem;
  padding: 0.5rem;
  border-radius: 0.25rem;
}

.page-header .app-menu-icon svg,
.page-footer .app-menu-icon svg {
  display: block;
  width: 1rem;
  height: 1rem;
}

.header-center {
  top: 0;
  width: fit-content;
  margin-left: 50%;
  transform: translate(-50%);
  padding: 1rem;
}

.header-left {
  padding: 0.75rem 1rem;
  display: flex;
  flex-wrap: wrap
}

.header-left > * {
  margin-left: 1rem;
}

.header-right {
  padding: 0.75rem 1rem;
  float: right;
  display: flex;
  flex-wrap: wrap;
}
.header-right > * {
  margin-right: 1rem;
}

@media (min-width:450px) {
  .header-row {
    display: flex;
    justify-content: space-between;
  }
}

@media (min-width:1080px) {
  .header-center {
    position: absolute;
  }
}

.page-header .live::before {
  display: inline-block;
  vertical-align: middle;
  content: ' ';
  width: 0.5rem;
  height: 0.5rem;
  background: green;
  border-radius: 50%;
  margin: 0 0.5rem 0 0;
}

.page-footer {
  display: flex;
  padding: 0.5rem;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  z-index: 999;
}

/* .page-footer > div { */
/*   display: flex; */
/*   gap: 1rem; */
/*   align-items: center; */
/*   font-size: 0.7rem; */
/* } */

@media (max-width:720px) {
  .page-footer {
    flex-direction: column;
  }
}

.page-footer .footer-left,
.page-footer .footer-center,
.page-footer .footer-right {
  flex: 1;
  display: flex;
}

.page-footer .footer-left {

}

.page-footer .footer-left a {
  cursor: pointer;
  color: var(--asv-color-1);
  text-decoration: none;
  padding: 0.5rem;
  font-size: 0.9rem;
  font-weight: 500;
  margin: auto 0.5rem;
}

.page-footer .footer-center a {
  margin: auto;
}

.page-footer .footer-right > * {
  margin: auto 0.5rem;
}

.page-footer .footer-right .copyright {
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--asv-color-1);
}

.page-footer .app-menu-popup-root {
  top: unset;
  bottom: 2rem;
}

/* page content */

.page-content {
  flex: 1;
  display: flex;
  justify-content: space-around;
}


/* blogs */

.home-page {
  display: flex;
  flex-direction: column;
  color: white;
  margin: 4rem auto;
}

.home-page .title {
  font-size: 2.4rem;
  font-weight: 500;
  margin: 0 auto;
}

.home-page .title {
  font-size: 3.2rem;
}

.home-body {
  display: flex;
  flex-direction: column;
}

.home-body .search-box {
  width: 34rem;
  margin: 0 auto;
}

@media (max-width:680px) {
  .home-body .search-box {
    width: 18rem;
  }
}

.home-body .tags {
  display: flex;
  flex-wrap: wrap;
  width: fit-content;
  margin: 1rem auto;
  justify-content: center;
}

.home-body .tags .tag {
  background: none;
  font-size: 0.8rem;
  font-weight: 500;
  padding: 0.25rem 1rem;
  border-radius: 0.25rem;
  margin: 0 0.25rem;
  color: var(--asv-color-silver);
}

.home-body .tags .tag:not(.selected):hover {
  background: var(--pico-secondary-hover);
  color: white;
  cursor: pointer;
}

.home-body .tags .tag.selected {
  background: var(--asv-color-silver);
  color: black;
}

/* article grid */

.articles {
  display: flex;
  width: 72rem;
  margin: 1rem auto;
  overflow: hidden;
}

.home-body .articles {
  flex-wrap: wrap;
}

@media (max-width:1440px) {
  .articles {
    width: 48rem;
  }
}

@media (max-width:960px) {
  .articles {
    width: 24rem;
  }
}

.articles .article {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 22rem;
  height: 21rem;
  border-radius: 1rem;
  background: var(--asv-background-2);
  overflow: hidden;
  margin: 1rem;
  cursor: pointer;
  transition: 500ms;
  text-decoration: none;
}

.articles .article:hover {
  background: black;
}

.articles .article .image {
  background: black;
  height: 10rem;
}

.articles .article .image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.articles .article .tag {
  position: absolute;
  top: 1.5rem;
  left: 1.5rem;
  font-size: 0.8rem;
  font-weight: 500;
  padding: 0.2rem 1rem;
  border-radius: 0.2rem;
  background: #ffffff99;
  color: black;
  transition: 500ms;
}

.articles .article:hover .tag {
  background: black;
  color: white;
}

.articles .article .body {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 1rem; 1.5rem;
  color: white;
}

.articles .article .title {
  font-size: 1.4rem;
  font-weight: 900;
  line-height: 1.6rem;
  max-height: 3.2rem;
  overflow: hidden;
  margin-bottom: 1rem;
}

.articles .article .body .summary {
  flex: 1;
  font-size: 0.9rem;
  line-height: 1rem;
  color: var(--asv-color-1);
  margin-bottom: 1rem;
  overflow: hidden;
}

.articles .article .body .date {
  color: var(--asv-color-2);
  font-size: 0.7rem;
  position: relative;
}

.articles .article .body .date .actual {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(-100%);
  transition: 500ms;
  background: var(--asv-background-2);
  padding: 0.2rem 1rem;
  border-radius: 0.2rem;
  color: white;
}

.articles .article .body .date:hover .actual {
  opacity: 1;
}


/* article page */

.article-page {
  display: flex;
  flex-direction: column;
  width: fit-content;
  color: white;
  margin: 1rem auto;
}

.back-btn {
  background: transparent;
  border: none;
  width: fit-content;
  padding: 0.5rem 1rem;
  font-size: 0.8rem;
  font-weight: 500;
  margin: 0 auto 0 1rem;
}

.back-btn:hover {
  background: var(--pico-primary-focus);
}

.back-btn::before {
  content: '◀';
  margin: 0 0.5rem 0 0;
}

.article-body {
  display: flex;
  flex-direction: column;
  margin: 1rem;
  border-bottom: 1px solid var(--asv-color-2);
}

.article-body .header {
  display: flex;
  flex-direction: column;
  width: 70rem;
  align-content: flex-end;
  min-height: 40rem;
  border-radius: 1rem;
  overflow: hidden;
  margin: 0 auto;
  background-size: cover;
  background-position: center;
  position: relative;
}

@media (max-width:1440px) {
  .article-body .header {
    width: 52rem;
  }
}

@media (max-width:1080px) {
  .article-body .header {
    width: 46rem;
  }
}

@media (max-width:960px) {
  .article-body .header {
    width: 34rem;
  }
}

@media (max-width:720px) {
  .article-body .header {
    width: 90vw;
  }
}

.article-body .header > .shadow {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg,transparent,#000c);
}

.article-body .header > .content {
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 1rem;
  color: white;
}

.article-body .header .tag {
  font-size: 0.8rem;
  font-weight: 500;
  padding: 0.2rem 1rem;
  border-radius: 0.2rem;
  background: #ffffff99;
  color: black;
  margin: 0.5rem auto;
}

.article-body .header .title {
  font-size: 3.2rem;
  line-height: 3.75rem;
  font-weight: 500;
  color: white;
  width: 60%;
  text-align: center;
  margin: 0.5rem auto;
}

@media (max-width:1080px) {
  .article-body .header .title {
    font-size: 2.8rem;
    line-height: 3.25rem;
    width: 90%;
  }
}


.article-body .header .title span {
  color: white;
  background: #0003;
}

.article-body .header .summary {
  font-size: 1.6rem;
  line-height: 1.9rem;
  color: white;
  width: 80%;
  margin: 0.5rem auto;
}

@media (max-width:1080px) {
  .article-body .header .summary {
    font-size: 1.2rem;
    line-height: 1.45rem;
  }
}

.article-body .header .summary span {
  color: white;
  background: #0003;
}

.article-body .header .date {
  font-size: 0.7rem;
  position: relative;
  width: fit-content;
  margin: 0.5rem auto;
}

.article-body .header .date span {
  background: #0003;
}

.article-body .header .date .actual {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(-100%);
  transition: 500ms;
  background: var(--asv-background-2);
  padding: 0.2rem 1rem;
  border-radius: 0.2rem;
  color: white;
}

.article-body .header .date:hover .actual {
  opacity: 1;
}

.article-content {
  width: 52rem;
  margin: 1rem auto;
  font-size: 1rem;
}

@media (max-width:1440px) {
  .article-content {
    width: 38rem;
  }
}

@media (max-width:1080px) {
  .article-content {
    width: 34rem;
  }
}

@media (max-width:960px) {
  .article-content {
    width: 25rem;
  }
}

@media (max-width:720px) {
  .article-content {
    width: 90vw;
  }
}

.article-page .articles {
  flex-wrap: wrap;
  justify-content: space-between;
  /* max-width: 48rem; */
}

.article-page .articles > div > label {
  font-size: 1rem;
  font-weight: 500;
  padding: 0 0 0 1.25rem;
}

.article-content {
  padding: 1rem 0;
}

/* upsell */

.upsell-btns a {
  margin: 0.25rem 0.5rem;
}

.upsell {
  position: relative;
  width: 70rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 70rem;
  padding: 2rem 0;
  margin: 2rem auto;
  background: linear-gradient(180deg, #d7f0ff11, #D0EBFC11);
  border-radius: 1rem;
}

.upsell span {
  display: block;
  width: 46rem;
  margin-bottom: 2rem;
  font-size: 1.6rem;
  line-height: 1.8rem;
  text-align: center;
  color: white;
}

@media (max-width:1440px) {
  .upsell {
    width: 52rem;
  }

  .upsell span {
    max-width: 35rem;
  }
}

@media (max-width:1080px) {
  .upsell {
    width: 46rem;
  }
}

@media (max-width:960px) {
  .upsell {
    max-width: 34rem;
  }

  .upsell span {
    max-width: 20rem;
    font-size: 1.2rem;
    line-height: 1.3rem;
  }

  .upsell-btns a[role=button] {
    padding: 0 2rem;
  }
}

@media (max-width:720px) {
  .upsell {
    max-width: 90vw;
  }

  .upsell span {
    max-width: 80vw;
  }
}
