@import url("https://fonts.googleapis.com/css2?family=Iceland&family=Inria+Sans:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800&display=swap");

html,
body {
  margin: 0;
  padding: 0;
  background: #151515;
}

.top-nav {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  max-width: 900px;
  margin: auto;
}

.logo {
  display: block;
  font-family: "Iceland", "Inria Sans", sans-serif;
  font-size: 2rem;
  text-decoration: none;
  color: #fff;
  margin-right: auto;
}

.logo::after {
  display: inline;
  content: ".";
  font-size: 3.5rem;
  line-height: 0;
  height: 2rem;
  color: var(--accent-col);
}

header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  /*! margin: 4vmin 0; */
}
nav {
  display: flex;
  flex-wrap: wrap;
}
nav > a {
  color: var(--text-col);
  text-decoration: none;
  margin: 1rem;
  border-bottom: 2px solid transparent;
  transition: all 0.2s ease-in-out;
  text-wrap: nowrap;
}

.btn {
  margin: 0 1rem;
}

nav > a:hover {
  border-bottom: 2px solid var(--text-col);
}

.signed-in {
  background: #151515;
  padding: 1rem;
  padding-top: 100px;
  padding-bottom: 100px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

body::before {
  width: 100%;
  height: 200px;
  position: absolute;
  left: 0;
  top: 0;
  background: url("");
  background: linear-gradient(0deg, #151515 0%, transparent 100%),
    url("https://w.wallhaven.cc/full/6q/wallhaven-6qoyox.png");

  z-index: 0;
}

.header-img {
  margin: 1rem 0;
}
.header-img > div {
  position: relative;
  display: block;
  max-width: 100%;
  height: 0;
  padding-bottom: 100%;
}

.header-img img {
  position: absolute;
  max-width: 100%;
  height: 100%;
  border-radius: 15px;
  border: #fff5 1px solid;
  object-fit: cover;
}

header h1 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 10px 0;
  font-size: 2.5rem;
  font-weight: 400;
}

header h1 p {
  position: relative;
  margin: 0;
  color: var(--accent-col);
}
header h1 p strong {
  position: relative;
  opacity: 0.5;
  margin: 0;
  color: #fff;
}
header h1 p strong:before,
header h1 p strong:after {
  position: absolute;
  left: 0;
  top: 50%;
  content: "";
  background: red;
  height: 3px;
  width: 100%;
  margin: 0;
  transform: rotate(20deg);
}
header h1 p strong:after {
  transform: rotate(-20deg);
}
header > p {
  font-size: 1.2rem;
  color: #989898;
}

.header-tags {
  display: flex;
  box-sizing: border-box;
  flex-wrap: wrap;  
/*! padding: 0 20px; */
}
.header-tags > h4 {
  border: 1px solid #fff9;
  color: #fffc;
  padding: 5px 10px;
  margin: 0;
  font-weight: 400;
  letter-spacing: 2px;
  margin-right: 10px;
margin-top: 10px;
  background: #fff1;
  border-radius: 5px;
}

.signed-in > * {
  max-width: 900px;
  width: 100%;
  /*! margin: 0 10px; */
}

hgroup {
  display: flex;
  /*! padding: 0 20px; */
  box-sizing: border-box;
  z-index: 1;
}

hgroup > div {
  min-width: 300px;
}

hgroup span,
.gifting span {
  display: flex;
  align-items: center;
  font-size: 1.2rem;
}

hgroup span p,
.gifting span p {
  font-family: "Jetbrains Mono";
  margin: 0 1rem 0 0;
}

.discount-percent {
  background: var(--accent-col);
  padding: 2px 4px;
  border-radius: 5px;
}

.discount-price {
  font-weight: 800;
  font-size: 1.4rem;
  color: white;
}
.discount-oldprice {
  opacity: 0.5;
  position: relative;
}
.discount-oldprice::after {
  content: "";
  width: calc(100% + 5px);
  height: 2px;
  background: red;
  position: absolute;
  left: -3px;
  top: 50%;
  transform: rotate(15deg);
}

.featurelist {
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.featurelist li {
  --inner-theme-col: var(--accent-col);
  display: flex;
  align-items: center;
  padding: 0.5rem;
  height: 100px;
  box-sizing: border-box;
  background: #151515;
  filter: drop-shadow(4px 4px 8px #0008);
  border: 1px solid #ffffff0c;
  width: 40%;
  flex-grow: 1;
  border-radius: 0.8rem;
  min-width: 260px;
}
.img-more-features-panel {
  padding-left: 35px;
}

.featurelist li i {
  display: block;
  font-size: 1.8rem;
  margin: 0 1rem;
  color: var(--inner-theme-col);
}
.featurelist li p {
  margin: 0;
  font-size: 1.2rem;
}

.featurelist li strong {
  color: var(--inner-theme-col);
}

.featurelist li button {
  padding: 0;
  margin: 0;
  background: none;
  width: 100%;
  height: 100%;
}

.more-features-img {
  display: none;
}

.signed-in button,
.signed-in .stl-btn{
  padding: 10px 20px;
  font-size: 1.2rem;
  color: white;
  background: none;
  border: 1px solid var(--accent-col);
  cursor: pointer;
  margin: 1rem 0;
  border-radius: 10px;
  text-decoration: none;
}
.signuporin {
  display: flex;
  align-items: center;
}
.signuporin >p {
  margin: 1rem;
}
.signuporin>.stl-btn {
  margin: 0;
}

.signed-in button:hover {
  background: var(--accent-col);
}

#show-more-benefits {
  cursor: pointer;
  transition: 0.15s ease-in-out all;
}
#show-more-benefits:hover {
  background: #222;
  transform: translate(2px, -5px);
  filter: drop-shadow(9px 9px 10px #0008);
}

#benefits-display.show-more #show-more-benefits {
  display: none;
}

.more-features-features {
  display: none;
}

.more-features-img {
  position: relative;
  display: block;
  max-width: 100%;
  height: 0;
  padding-bottom: 100%;
  margin-top: 30px;
}
.more-features-img img {
  position: absolute;
  max-width: 100%;
  height: 100%;
  border-radius: 15px;
  border: #fff5 1px solid;
  object-fit: cover;
}

#benefits-display.show-more .more-features-features {
  display: block;
}

#benefits-display.show-more .more-features-img {
  display: none;
}

.gifting {
  margin-top: 80px;
}
.gift-section-selection button {
  margin: 0 10px;
  width: 100%;
}

.gift-section-selection::before {
  content: "GIFTING";
  font-size: 1rem;
  position: absolute;
  left: 50%;
  bottom: calc(100% + 10px);
  transform: translate(-50%, 0);
  color: var(--accent-col);
  opacity: 0.7;
  font-weight: 800;
  letter-spacing: 4px;
}

.gifting > div {
  margin: 30px 20px;
  background: #151515;
  border: 1px solid #ffffff0c;
  filter: drop-shadow(4px 4px 8px #0008);
  border-radius: 0.8rem;
  min-width: 330px;
  width: 61%;
  margin: 2rem auto;
  padding: 10px;
}
.gifting summary {
  display: block;
  list-style: none;
  padding: 10px;
  padding-left: 30px;
  position: relative;
  cursor: pointer;
}

.gifting summary:hover {
  background: #fff1;
}
.gifting summary::before {
  content: "";
  display: block;
  position: absolute;
  left: 15px;
  top: 50%;
  width: 10px;
  height: 10px;
  border-right: 1px solid #fffc;
  border-bottom: 1px solid #fffc;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.gifting details[open] > summary::before {
  left: 16px;
  transform: translate(-50%, -50%) rotate(45deg);
}

.gifting p {
  margin: 10px 0;
}
.signuporin>p {
  margin: 0 1rem;
}

.gifting h2 {
  margin: 0;
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 10px;
}

.gift-section-selection {
  display: flex;
  flex-direction: row;
}

.gifting form {
  display: flex;
  background: var(--overlay-col);
  border-radius: 10px;
  border: 1px solid var(--panel-outline);
  overflow: hidden;
}

.gift-course-subform {
  display: flex;
}

.gifting input {
  flex-grow: 1;
  color: black;
  font-size: 1.2rem;
  padding: 10px;
  border-radius: 6px;
  border: none;
  border-radius: 6px 0 0 6px;
  width: 100%;
}

.gifting form button {
  margin: 0;
  border: none;
  padding: 10px 15px;
  border-radius: 0;
  text-wrap: nowrap;
}

.redeem-gift,
.buy-gift {
  display: none;
}

.gifting.redeem > .redeem-gift,
.gifting.buy > .buy-gift {
  display: block;
}

.gifting.redeem .gift-section-selection button:nth-of-type(1),
.gifting.buy .gift-section-selection button:nth-of-type(2) {
  background: var(--accent-col);
}

footer {
    background: black;
    color: white;
    border-top: 1px solid #fff3;
}

.footer-list {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.footer-list a:hover {
    text-decoration: underline;
}

.footer-list>* {
    color: #fff;
    margin: 0.4rem;
}

footer a {
    color: inherit;
    text-decoration: none;
}

footer>div {
    max-width: 860px;
    margin: auto;
    display: flex;
    width: auto;
}

.footer-head {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 1rem 2rem;
    padding-bottom: 2rem;
    flex-wrap: wrap;
}

.footer-head .container {
    flex: 2;
}

@media (max-width: 680px) {
  .header-img {
    display: none;
  }
}
@media (max-width: 480px) {
.gifting > div {
  flex-direction: column;
  min-width: 100px;
width: auto;
}
.gift-section-selection button {
  margin: 10px;
  width: auto;
}
}