@import url("https://fonts.googleapis.com/css2?family=Lexend:wght@100..900&display=swap");
:root {
  --color-text: #000;
  --color-text-darker: #222;
  --color-text-secondary: #444;
  --color-text-dark: #fff;
  --color-bg: #fff;
  --color-brighter-bg: hsl(0 0% 100% / 77%);
  --color-input-bg: #dcdcdc;
  --color-popup-bg: hsl(0 0% 0% / 30%);
  --color-primary: #41C4C3;
  --color-primary-hover: #000;
  --color-primary-text: var(--color-text-dark);
  --color-primary-text-hover: var(--color-primary-text);
  --color-secondary: #dcdcdc;
  --color-secondary-hover: #cecece;
  --color-secondary-text: var(--color-text);
  --color-secondary-text-hover: var(--color-text-darker);
  --color-tertiary: transparent;
  --color-tertiary-hover: hsl(0 0% 0% / 15%);
  --color-tertiary-text: var(--color-text);
  --color-tertiary-text-hover: var(--color-tertiary-text);
  --color-removed: #a22a2a;
  --header-height: 350px;
  --tebex-footer-height: 37px;
  --layout-gap: 20px;
  --widget-padding: 20px;
  --content-padding: var(--widget-padding);
  --content-inner-width: 1480px;
  --content-width: calc((var(--content-padding) * 2) + var(--content-inner-width));
  --sidebar-width: 287px;
  --products-gap: 24px 36px;
  --btn-size: 46px;
  --btn-size-small: 38px;
  --btn-size-xsmall: 34px;
  --btn-icon-size: 18px;
  --btn-color-text: var(--color-text);
  --btn-color-text-hover: var(--btn-color-text);
  --btn-color-bg: var(--color-bg);
  --btn-color-bg-hover: var(--btn-color-bg);
  --bg-blur: blur(10px);
  --page-transition-duration: .35s;
  --tebex-legal-footer-max-width: min(
    var(--content-inner-width),
    calc(100vw - (var(--content-padding) * 2))
  );
  --tebex-legal-footer-background-color: var(--color-brighter-bg);
  --tebex-legal-footer-border-color: var(--color-brighter-bg);
  --tebex-legal-footer-text-color: var(--color-text-secondary);
}
@media (width > 600px) {
  :root {
    --widget-padding: 24px;
    --layout-gap: 48px;
  }
}
@media (width > 960px) {
  :root {
    --layout-gap: 72px;
    --content-padding: calc(var(--widget-padding) * 2);
  }
}
@media (max-width: 900px) {
  :root {
    --tebex-footer-height: 70px;
  }
}
@media (max-width: 600px) {
  :root {
    --tebex-footer-height: 80px;
  }
}
@media (prefers-color-scheme: dark) {
  :root.color-scheme-auto {
    --color-text: #fff;
    --color-text-darker: #e5e5e5;
    --color-text-secondary: #ccc;
    --color-text-dark: #0D0D0D;
    --color-bg: #000;
    --color-brighter-bg: hsl(0 0% 4% / 70%);
    --color-input-bg: #242424;
    --color-popup-bg: hsl(0 0% 0% / 85%);
    --color-primary: #41C4C3;
    --color-primary-hover: #fff;
    --color-primary-text: var(--color-text-dark);
    --color-primary-text-hover: var(--color-primary-text);
    --color-secondary: #ccc;
    --color-secondary-hover: #e5e5e5;
    --color-secondary-text: var(--color-text-dark);
    --color-secondary-text-hover: var(--color-secondary-text);
    --color-tertiary: transparent;
    --color-tertiary-hover: rgb(255 255 255 / 15%);
    --color-tertiary-text: var(--color-text);
    --color-tertiary-text-hover: var(--color-text-darker);
    --color-removed: #C12E2E;
  }
}
:root.color-scheme-dark {
  --color-text: #fff;
  --color-text-darker: #e5e5e5;
  --color-text-secondary: #ccc;
  --color-text-dark: #0D0D0D;
  --color-bg: #000;
  --color-brighter-bg: hsl(0 0% 4% / 70%);
  --color-input-bg: #242424;
  --color-popup-bg: hsl(0 0% 0% / 85%);
  --color-primary: #41C4C3;
  --color-primary-hover: #fff;
  --color-primary-text: var(--color-text-dark);
  --color-primary-text-hover: var(--color-primary-text);
  --color-secondary: #ccc;
  --color-secondary-hover: #e5e5e5;
  --color-secondary-text: var(--color-text-dark);
  --color-secondary-text-hover: var(--color-secondary-text);
  --color-tertiary: transparent;
  --color-tertiary-hover: rgb(255 255 255 / 15%);
  --color-tertiary-text: var(--color-text);
  --color-tertiary-text-hover: var(--color-text-darker);
  --color-removed: #C12E2E;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  vertical-align: baseline;
  color: inherit;
  background: transparent;
  font-size: inherit;
  font-family: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
}

strong,
b {
  font-weight: 700;
}

em,
i {
  font-style: italic;
}

input[type=submit],
button {
  appearance: none;
  cursor: pointer;
  text-align: left;
}

textarea {
  resize: none;
}

symbol,
use,
svg {
  overflow: visible;
}

svg,
img {
  display: block;
}

li {
  display: block;
}

button {
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
}

:root *[hidden] {
  display: none;
}

:focus {
  outline: 0;
}

::placeholder {
  color: inherit;
  opacity: 1;
}

@view-transition {
  navigation: auto;
}
::view-transition-group(root) {
  animation-duration: var(--page-transition-duration);
  animation-timing-function: ease;
}

@keyframes pageMoveOut {
  0% {
    opacity: 1;
  }
  50%, 100% {
    opacity: 0;
  }
}
@keyframes pageMoveIn {
  0%, 50% {
    scale: 0.98;
    opacity: 0;
  }
  100% {
    scale: 1;
    opacity: 1;
  }
}
::view-transition-old(siteContent) {
  animation: var(--page-transition-duration) ease both pageMoveOut;
  transform-origin: center top;
}

::view-transition-new(siteContent) {
  animation: var(--page-transition-duration) ease both pageMoveIn;
  transform-origin: center top;
}

::view-transition-group(siteContent) {
  z-index: 2;
}

::view-transition-group(siteHeaderTop),
::view-transition-group(siteHeader),
::view-transition-group(siteNavigation),
::view-transition-group(siteBgImage),
::view-transition-group(siteFooter) {
  animation-duration: var(--page-transition-duration);
  animation-timing-function: ease;
  z-index: 3;
}

::view-transition-group(siteBgImage) {
  z-index: 1;
}

html,
body {
  min-height: 100vh;
  min-height: 100svh;
}

html {
  overflow: hidden scroll;
  scrollbar-width: thin;
  scrollbar-color: var(--color-secondary) var(--color-bg);
  scrollbar-gutter: stable;
  scroll-behavior: smooth;
  color-scheme: light dark;
}
html.no-scroll {
  overflow: hidden;
}
@media (prefers-color-scheme: dark) {
  html.color-scheme-auto {
    color-scheme: only dark;
  }
}
html.color-scheme-dark {
  color-scheme: only dark;
}

body {
  position: relative;
  max-width: 100%;
  width: 100%;
  line-height: normal;
  color: var(--color-text);
  accent-color: var(--color-primary);
  background-color: var(--color-bg);
  font-family: Lexend, sans-serif;
  font-size: 16px;
  font-optical-sizing: auto;
}

::selection {
  color: var(--color-text);
  background-color: var(--color-primary);
  text-shadow: none;
}

select option {
  color: var(--color-text);
  background-color: var(--color-bg);
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
}

.text-content {
  line-height: 1.4;
  word-wrap: break-word;
  word-break: break-word;
}
.text-content h1,
.text-content h2,
.text-content h3,
.text-content h4,
.text-content h5,
.text-content h6 {
  font-weight: 800;
}
.text-content h1:not(:last-child),
.text-content h2:not(:last-child),
.text-content h3:not(:last-child),
.text-content h4:not(:last-child),
.text-content h5:not(:last-child),
.text-content h6:not(:last-child) {
  margin-bottom: 24px;
}
.text-content p:not(:last-child) {
  margin-bottom: 12px;
}
.text-content h1 {
  font-size: 34px;
}
@media (width > 600px) {
  .text-content h1 {
    font-size: 38px;
  }
}
.text-content h2 {
  font-size: 28px;
}
@media (width > 600px) {
  .text-content h2 {
    font-size: 32px;
  }
}
.text-content h3 {
  font-size: 20px;
}
@media (width > 600px) {
  .text-content h3 {
    font-size: 24px;
  }
}
.text-content h4 {
  font-size: 18px;
}
@media (width > 600px) {
  .text-content h4 {
    font-size: 22px;
  }
}
.text-content img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}
.text-content ol, .text-content ul {
  margin-left: 1em;
}
.text-content ol:not(:last-child), .text-content ul:not(:last-child) {
  margin-bottom: 12px;
}
.text-content li {
  display: list-item;
}

.btn-primary,
.btn-secondary,
.btn-tertiary {
  display: block;
  width: fit-content;
  height: var(--btn-size);
  padding: 0 10px;
  line-height: var(--btn-size);
  color: var(--btn-color-text);
  background-color: var(--btn-color-bg);
  border-radius: 5px;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  cursor: pointer;
  transition: all 0.15s ease-in-out;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (width > 960px) {
  .btn-primary,
  .btn-secondary,
  .btn-tertiary {
    padding: 0 14px;
  }
}
.btn-primary:disabled,
.btn-secondary:disabled,
.btn-tertiary:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.btn-primary:hover, .btn-primary:focus,
.btn-secondary:hover,
.btn-secondary:focus,
.btn-tertiary:hover,
.btn-tertiary:focus {
  color: var(--btn-color-text-hover);
  background-color: var(--btn-color-bg-hover);
}
.btn-primary.btn-small,
.btn-secondary.btn-small,
.btn-tertiary.btn-small {
  --btn-size: var(--btn-size-small);
  padding: 0 8px;
  font-size: 12px;
}
@media (width > 960px) {
  .btn-primary.btn-small,
  .btn-secondary.btn-small,
  .btn-tertiary.btn-small {
    padding: 0 10px;
  }
}
.btn-primary.btn-xsmall,
.btn-secondary.btn-xsmall,
.btn-tertiary.btn-xsmall {
  --btn-size: var(--btn-size-xsmall);
  padding: 0 8px;
  font-size: 11px;
}
@media (width > 960px) {
  .btn-primary.btn-xsmall,
  .btn-secondary.btn-xsmall,
  .btn-tertiary.btn-xsmall {
    padding: 0 10px;
  }
}

.btn-primary {
  --btn-color-text: var(--color-primary-text);
  --btn-color-bg: var(--color-primary);
  --btn-color-text-hover: var(--color-primary-text-hover);
  --btn-color-bg-hover: var(--color-primary-hover);
}

.btn-secondary {
  --btn-color-text: var(--color-secondary-text);
  --btn-color-bg: var(--color-secondary);
  --btn-color-text-hover: var(--color-secondary-text-hover);
  --btn-color-bg-hover: var(--color-secondary-hover);
}

.btn-tertiary {
  --btn-color-text: var(--color-tertiary-text);
  --btn-color-bg: var(--color-tertiary);
  --btn-color-text-hover: var(--color-tertiary-text-hover);
  --btn-color-bg-hover: var(--color-tertiary-hover);
}

.btn-icon,
.btn-icon-text,
.btn-glyph,
.btn-glyph-text {
  --btn-icon: url("https://template-assets.tebex.io/images/check.svg") ;
}

.btn-icon {
  position: relative;
  flex: none;
  width: var(--btn-size);
  height: var(--btn-size);
  padding: 0;
  background-image: var(--btn-icon);
  background-position: center center;
  background-size: var(--btn-icon-size);
  background-repeat: no-repeat;
}
:root .btn-icon {
  line-height: 0;
  font-size: 0;
  color: transparent;
}

.btn-icon-text {
  display: flex;
  align-items: center;
  min-width: var(--btn-size);
}
.btn-icon-text::before {
  content: "";
  display: block;
  margin-right: 8px;
  width: var(--btn-icon-size);
  height: var(--btn-icon-size);
  flex: none;
  background: var(--btn-icon) center center/contain no-repeat;
}

.btn-glyph::before,
.btn-glyph-text::before {
  content: "";
  display: block;
  width: var(--btn-icon-size);
  height: var(--btn-icon-size);
  flex: none;
  background-color: var(--btn-color-text);
  mask: var(--btn-icon) center center/contain no-repeat;
  transition: background-color 0.15s ease-in-out;
}
.btn-glyph:hover::before, .btn-glyph:focus::before,
.btn-glyph-text:hover::before,
.btn-glyph-text:focus::before {
  background-color: var(--btn-color-text-hover);
}

.btn-glyph {
  position: relative;
  flex: none;
  width: var(--btn-size);
  height: var(--btn-size);
}
:root .btn-glyph {
  padding: 0;
  line-height: 0;
  font-size: 0;
  color: transparent;
}
.btn-glyph::before {
  position: absolute;
  inset: 0;
  margin: auto;
}

.btn-glyph-text {
  display: flex;
  align-items: center;
  min-width: var(--btn-size);
  height: var(--btn-size);
}
.btn-glyph-text::before {
  margin-right: 8px;
}

.link-text {
  color: var(--color-text-darker);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-position: under;
  transition: color 0.15s ease-in-out;
}
.link-text:hover {
  color: var(--color-text);
}

.quantity-field {
  display: flex;
  align-items: stretch;
  justify-content: center;
  height: 36px;
  overflow: hidden;
  color: var(--color-text);
  background: var(--color-bg);
  border: 1px solid var(--color-secondary);
  border-radius: 5px;
}
.quantity-field input[type=number] {
  position: relative;
  z-index: 1;
  flex: none;
  -moz-appearance: textfield;
  appearance: textfield;
  width: 40px;
  height: 100%;
  font-size: 16px;
  text-align: center;
  font-variant-numeric: tabular-nums;
}
.quantity-field input[type=number]:focus, .quantity-field input[type=number]:hover {
  border-color: var(--color-secondary-hover);
}
.quantity-field input[type=number]::-webkit-inner-spin-button, .quantity-field input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.quantity-field.with-open-basket input[type=number] {
  margin-left: calc((40px - 2ch) * -1);
  margin-right: 0.25em;
  order: 1;
  text-align: right;
  transition: color 0.15s ease-in-out;
}
.quantity-field .open-basket {
  margin-right: 5px;
  width: fit-content;
  height: 100%;
  order: 2;
  font-size: 16px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color 0.15s ease-in-out;
}
.quantity-field .open-basket:focus, .quantity-field .open-basket:hover {
  color: var(--color-primary);
}
.quantity-field .open-basket:focus ~ input[type=number], .quantity-field .open-basket:hover ~ input[type=number] {
  color: var(--color-primary);
}
.quantity-field .adjust {
  position: relative;
  z-index: 2;
  flex: none;
  width: 34px;
  height: 100%;
  padding: 0;
  line-height: 0;
  font-size: 0;
  color: transparent;
}
.quantity-field .adjust.decrease {
  margin-right: auto;
  order: -1;
  border-radius: 5px 0 0 5px;
}
.quantity-field .adjust.increase {
  margin-left: auto;
  order: 100;
  border-radius: 0 5px 5px 0;
}
.quantity-field .adjust::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--color-text);
  mask: url("https://template-assets.tebex.io/images/plus.svg") no-repeat center center;
  mask-size: 10px;
}
.quantity-field .adjust.decrease::before {
  mask-image: url("https://template-assets.tebex.io/images/minus.svg");
}

@media (width > 960px) {
  .mobile-only {
    display: none;
  }
}

@media (width <= 960px) {
  .desktop-only {
    display: none;
  }
}

.site {
  position: relative;
  display: flex;
  align-items: stretch;
  gap: var(--layout-gap);
  flex-direction: column;
  min-height: calc(100vh - var(--tebex-footer-height));
  min-height: calc(100svh - var(--tebex-footer-height));
  font-size: 14px;
}

.site-bg-image {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: -1;
  margin: 0 auto;
  height: auto;
  width: 100%;
  min-height: 50vh;
  max-height: 100vh;
  min-height: 50svh;
  max-height: 100svh;
  object-fit: cover;
  object-position: center 0;
  mask: linear-gradient(rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.5) var(--btn-size), rgba(0, 0, 0, 0.5) 33%, transparent);
  view-transition-name: siteBgImage;
  pointer-events: none;
}

.site-header-top,
.site-header,
.site-navigation,
.site-content,
.site-footer {
  width: 100%;
  flex: none;
}

.site-content {
  flex: 1 0 auto;
  view-transition-name: siteContent;
}

.site-header-top,
.site-header,
.site-content,
.site-footer-inner {
  margin: 0 auto;
  padding: 0 var(--content-padding);
  width: 100%;
}
@media (width > 960px) {
  .site-header-top,
  .site-header,
  .site-content,
  .site-footer-inner {
    max-width: var(--content-width);
  }
}

.site-header-top {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  margin-bottom: calc(var(--layout-gap) * -1);
  width: 100%;
  min-height: var(--btn-size);
  view-transition-name: siteHeaderTop;
}
body.is-logo-centered.is-header-visible .site-header-top {
  margin-bottom: 0;
}
@media (width <= 960px) {
  .site-header-top {
    position: sticky;
    top: 0;
    z-index: 100;
    background-color: var(--color-brighter-bg);
    backdrop-filter: var(--bg-blur);
  }
}
@media (width > 960px) {
  .site-header-top {
    justify-content: flex-end;
  }
}
.site-header-top .site-title {
  position: absolute;
  inset: 0;
  margin: auto;
  max-width: calc(100% - 32px - var(--btn-size-xsmall) * 4 - var(--content-padding) * 2);
  width: fit-content;
  height: fit-content;
  line-height: 24px;
  font-size: 18px;
  font-weight: 900;
  text-align: center;
  text-box: trim-both cap alphabetic;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.site-header-top .site-title img {
  max-width: 100%;
  max-height: 28px;
}
@media (width <= 960px) {
  .site-header-top .btn-glyph-text {
    color: transparent;
    font-size: 0;
  }
  .site-header-top .btn-glyph-text::before {
    margin-right: 0;
  }
}
.site-header-top .toggle-navigation {
  --btn-icon: url("https://template-assets.tebex.io/images/burger.svg");
}
.site-header-top .site-link {
  --btn-icon: url("https://template-assets.tebex.io/images/globe.svg");
}
.site-header-top .color-scheme {
  --btn-icon: url("https://template-assets.tebex.io/images/sun.svg");
  --btn-icon-size: 15px;
}
@media (prefers-color-scheme: dark) {
  :root.color-scheme-auto .site-header-top .color-scheme {
    --btn-icon: url("https://template-assets.tebex.io/images/moon.svg");
  }
}
:root.color-scheme-dark .site-header-top .color-scheme {
  --btn-icon: url("https://template-assets.tebex.io/images/moon.svg");
}
.site-header-top .log-in {
  --btn-icon: url("https://template-assets.tebex.io/images/user.svg");
  margin-left: auto;
}
.site-header-top .open-basket {
  --btn-icon: url("https://template-assets.tebex.io/images/checkout.svg");
}
.site-header-top .user-name {
  --btn-icon: url("https://template-assets.tebex.io/images/log-out.svg");
  margin-left: auto;
  contain: paint;
}
@media (width > 960px) {
  .site-header-top .user-name {
    --btn-icon: url("https://template-assets.tebex.io/images/user.svg");
  }
}
.site-header-top .user-name .text,
.site-header-top .user-name .text-hover {
  transition: opacity 0.15s ease, font-size 0.15s ease, visibility 0.15s ease;
}
.site-header-top .user-name:not(:hover):not(:focus-within) .text-hover {
  visibility: hidden;
  color: transparent;
  font-size: 0;
}
.site-header-top .user-name:hover .text, .site-header-top .user-name:focus-within .text {
  visibility: hidden;
  opacity: 0;
  font-size: 0;
}

.site-header {
  position: relative;
  align-content: center;
  view-transition-name: siteHeader;
}
@media (width <= 960px) {
  .site-header {
    padding: 0;
  }
}
body.no-hero.is-logo-centered .site-header {
  min-height: 80px;
}
@media (width > 960px) {
  body.has-hero .site-header {
    min-height: var(--header-height);
  }
}
.site-header .site-actions {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  width: 100%;
}
@media (width > 960px) {
  .site-header .site-actions {
    gap: 6px;
  }
}
.site-header .site-title {
  line-height: 42px;
  font-size: 36px;
  font-weight: 900;
  text-box: trim-both cap alphabetic;
}
body.has-hero .site-header .site-title {
  color: var(--color-text-dark);
}
@media (width > 960px) {
  .site-header .site-title {
    line-height: 60px;
    font-size: 54px;
  }
}
.site-header .site-title img {
  max-width: 500px;
  max-height: 60px;
}
body.is-logo-centered .site-header .site-title {
  margin: auto;
  width: fit-content;
  height: fit-content;
  text-align: center;
}
body.is-logo-centered .site-header .site-title img {
  max-height: 128px;
}
body.is-logo-centered.has-hero .site-header .site-title {
  position: absolute;
  inset: 0;
  filter: drop-shadow(0 1px 3px hsla(0, 0%, 0%, 0.5)), drop-shadow(0 6px 12px hsla(0, 0%, 0%, 0.5));
}
@media (prefers-color-scheme: dark) {
  :root.color-scheme-auto body.is-logo-centered.has-hero .site-header .site-title {
    color: var(--color-text);
    filter: drop-shadow(0 1px 3px hsl(from var(--color-bg) h s l/50%)) drop-shadow(0 6px 12px hsl(from var(--color-bg) h s l/50%));
  }
}
:root.color-scheme-dark body.is-logo-centered.has-hero .site-header .site-title {
  color: var(--color-text);
  filter: drop-shadow(0 1px 3px hsl(from var(--color-bg) h s l/50%)) drop-shadow(0 6px 12px hsl(from var(--color-bg) h s l/50%));
}
.site-header .hero-image {
  margin: auto;
  width: 100%;
  height: auto;
  max-height: var(--header-height);
  object-fit: cover;
}
@media (width > 960px) {
  .site-header .hero-image {
    border-radius: 10px;
  }
}

.site-navigation {
  --fade-duration: 200ms;
  view-transition-name: siteNavigation;
}
@media (width <= 960px) {
  .site-navigation {
    position: fixed;
    inset: 0;
    z-index: 100000;
    padding: 0;
    backdrop-filter: var(--bg-blur);
    transition: display var(--fade-duration) allow-discrete, backdrop-filter var(--fade-duration), opacity var(--fade-duration) ease;
  }
  @starting-style {
    .site-navigation {
      opacity: 0;
    }
  }
  body:not(.show-navigation) .site-navigation {
    display: none;
    opacity: 0;
  }
  .site-navigation.drawer {
    user-select: none;
  }
  .site-navigation.may-close {
    backdrop-filter: none;
  }
  .site-navigation .menu {
    display: flex;
    flex-direction: column;
    position: absolute;
    inset: 0 calc(var(--btn-size) * 2) 0 0;
    padding: 72px var(--widget-padding) var(--widget-padding);
    line-height: 28px;
    font-size: 21px;
    font-weight: 500;
    background: rgb(from var(--color-bg) r g b/0.95);
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.15);
    overflow: hidden auto;
    scrollbar-width: thin;
    scrollbar-color: var(--color-secondary) var(--color-bg);
    transition: opacity var(--fade-duration) ease, scale var(--fade-duration) ease, translate var(--fade-duration) ease;
  }
  @starting-style {
    .site-navigation .menu {
      translate: -100% 0;
    }
  }
  .site-navigation.drawer .menu::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 7px;
    margin: auto;
    width: 4px;
    height: 100px;
    background: rgb(from var(--color-text-secondary) r g b/0.33);
    border-radius: 2px;
    pointer-events: none;
  }
  body:not(.show-navigation) .site-navigation .menu {
    translate: -100% 0;
  }
  .site-navigation.touching .menu {
    transition: opacity var(--fade-duration) ease, scale var(--fade-duration) ease;
  }
  body:not(.show-navigation) .site-navigation .menu, .site-navigation.may-close .menu {
    opacity: 0.8;
    scale: 0.95;
  }
  .site-navigation.may-close .menu {
    border-radius: 10px;
  }
  .site-navigation .popup-close {
    --btn-icon: url("https://template-assets.tebex.io/images/close.svg");
    top: 12px;
    right: calc(var(--btn-size) * 2 + 12px);
  }
  .site-navigation.touching .popup-close {
    opacity: 0;
    visibility: hidden;
    transition-duration: 100ms;
  }
  .site-navigation .menu-sub {
    width: 100%;
    padding-left: var(--widget-padding);
    line-height: 22px;
    font-size: 16px;
  }
  .site-navigation .menu-item {
    position: relative;
    width: 100%;
  }
  .site-navigation .has-children {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .site-navigation .has-children .toggle {
    --btn-icon: url("https://template-assets.tebex.io/images/chevron.svg");
    flex: none;
  }
  .site-navigation .has-children .toggle::before {
    transition: rotate 0.15s ease-in-out;
  }
  .site-navigation .has-children.expanded > .toggle::before {
    rotate: 180deg;
  }
  .site-navigation .has-children:not(.expanded) .menu-sub {
    display: none;
  }
  .site-navigation .menu-link {
    display: block;
    flex: 1 1 auto;
    padding: 11px 0;
    transition: color 0.15s ease-in-out;
  }
  .site-navigation .menu-link:hover {
    color: var(--color-primary);
  }
  .site-navigation .menu-link.active {
    color: var(--color-primary);
    font-weight: 700;
  }
  .site-navigation .menu-sub .menu-link {
    padding: 8px 0;
  }
  .site-navigation .site-link,
  .site-navigation .log-out {
    margin-top: auto;
    margin-left: -8px;
  }
  .site-navigation .site-link a,
  .site-navigation .log-out a {
    --btn-icon: url("https://template-assets.tebex.io/images/globe.svg");
    width: 100%;
  }
  .site-navigation .log-out a {
    --btn-icon: url("https://template-assets.tebex.io/images/log-out.svg");
  }
  .site-navigation .site-link + .log-out {
    margin-top: 0;
  }
}
@media (width > 960px) {
  .site-navigation {
    position: sticky;
    top: -1px;
    z-index: 100;
    transition: background-color 0.15s ease;
  }
  .site-navigation.stuck {
    background-color: var(--color-brighter-bg);
    backdrop-filter: var(--bg-blur);
  }
  .site-navigation .menu {
    display: flex;
    align-items: center;
    gap: var(--widget-padding);
    margin-inline: auto;
    padding-block: var(--content-padding);
    width: 100%;
    max-width: var(--content-inner-width);
    min-height: var(--btn-size);
    padding: calc(var(--widget-padding) * 0.75) var(--widget-padding);
    line-height: var(--btn-size);
    font-size: 16px;
    font-weight: 500;
    text-align: center;
  }
  .site-navigation:not(.stuck) .menu {
    background-color: var(--color-brighter-bg);
    backdrop-filter: var(--bg-blur);
    border-radius: 10px;
  }
  .site-navigation .menu > .menu-item {
    flex: 1 0 auto;
    max-width: 200px;
  }
  .site-navigation .menu > .menu-item > .menu-link {
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    max-width: 18ch;
  }
  .site-navigation .menu-link {
    display: block;
    transition: color 0.15s ease-in-out;
  }
  .site-navigation .menu-link:hover, .site-navigation .menu-link.link-active {
    color: var(--color-primary);
  }
  .site-navigation li.site-title-link {
    flex: none;
    align-content: center;
    margin-right: var(--widget-padding);
    max-width: none;
    text-align: left;
  }
  .site-navigation .site-title {
    font-size: 32px;
    font-weight: 800;
    letter-spacing: 0.03em;
    text-box: trim-both cap alphabetic;
  }
}
@media (width > 960px) and (width > 960px) {
  .site-navigation .site-title {
    font-size: 40px;
  }
}
@media (width > 960px) {
  .site-navigation .site-title .menu-link {
    color: var(--color-primary);
  }
  .site-navigation .site-title .menu-link:hover {
    color: var(--color-primary-hover);
  }
  .site-navigation .site-title img {
    max-width: 100%;
    max-height: var(--btn-size);
    border-radius: 5px;
  }
  .site-navigation .has-children {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .site-navigation .has-children .toggle {
    --btn-size: 30px;
    --btn-icon: url("https://template-assets.tebex.io/images/chevron.svg");
    --btn-color-bg-hover: var(--color-tertiary);
    flex: none;
    transition: rotate 0.15s ease-in-out;
  }
  .site-navigation .has-children:hover > .toggle {
    rotate: 180deg;
  }
  .site-navigation .menu-sub {
    position: absolute;
    top: 100%;
    left: -100px;
    right: -100px;
    margin-inline: auto;
    width: max-content;
    padding: calc(var(--widget-padding) / 2) 0;
    background: rgb(from var(--color-brighter-bg) r g b/0.9);
    border-radius: 5px;
    backdrop-filter: var(--bg-blur);
    transition: all 0.15s ease-in-out;
  }
  .site-navigation .has-children:not(:hover) > .menu-sub {
    visibility: hidden;
    opacity: 0;
    translate: 0 -10px;
  }
  .site-navigation .menu .menu-sub {
    line-height: 24px;
    font-size: 16px;
    font-weight: 400;
  }
  .site-navigation .menu-sub .menu-link {
    width: 100%;
    max-width: 24ch;
    padding: 4px calc(var(--widget-padding) / 2);
    transition: all 0.15s ease-in-out;
  }
  .site-navigation .menu-sub .menu-link:hover, .site-navigation .menu-sub .menu-link.link-active {
    color: var(--color-bg);
    background-color: var(--color-primary);
  }
}

.site-home-categories {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: var(--widget-padding);
  margin-bottom: var(--layout-gap);
}
.site-home-categories .category {
  display: grid;
  grid-template-rows: 1fr;
  grid-template-columns: subgrid;
  align-items: center;
  gap: calc(var(--widget-padding) / 2);
  overflow: hidden;
  padding: var(--widget-padding);
  line-height: 26px;
  background: var(--color-brighter-bg) linear-gradient(to bottom, transparent 67%, rgb(from var(--color-primary) r g b/0.15)) no-repeat 0 0/100% 200%;
  border-radius: 10px;
  backdrop-filter: var(--bg-blur);
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0.015em;
  text-shadow: 0 1px 0 rgb(from var(--color-bg) r g b/0.5);
  transition: color 0.15s ease-in-out, background-position-y 0.3s ease;
}
@media (width > 600px) {
  .site-home-categories .category {
    gap: var(--widget-padding);
  }
}
@media (width > 600px) {
  .site-home-categories .category {
    padding-block: 20px;
    line-height: 32px;
    font-size: 24px;
    text-align: center;
  }
}
.site-home-categories .category:hover {
  color: var(--color-primary);
  background-position-y: 100%;
}
.site-home-categories .category .image {
  max-width: 100%;
  width: auto;
  max-height: 100%;
  object-fit: contain;
  border-radius: 10px;
}
@media (width > 600px) {
  .site-home-categories .category .image {
    margin: auto;
  }
}
.site-home-categories .category .image-default {
  position: relative;
  width: min(100px, 100%);
  aspect-ratio: 1;
}
.site-home-categories .category .image-default::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background-color: rgb(from var(--color-text) r g b/0.8);
  mask: url("https://template-assets.tebex.io/images/package-default.svg") center center/contain no-repeat;
}

.store-text {
  margin-inline: auto;
  width: min(100%, 62ch);
  line-height: 1.375;
  font-size: 16px;
  font-weight: 400;
}

.store-home .store-text {
  margin-bottom: var(--content-padding);
}

.store-form {
  font-size: 18px;
}
.store-form p {
  margin-bottom: 24px;
}
.store-form .input-group,
.store-form .field,
.store-form .field-inline {
  margin-bottom: 24px;
}
.store-form .input-group > p,
.store-form .field > p,
.store-form .field-inline > p {
  margin-bottom: 12px;
}
.store-form .field-inline {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0 12px;
}
@media (width > 600px) {
  .store-form .field-inline {
    gap: 0 24px;
  }
}
.store-form input,
.store-form select,
.store-form textarea {
  display: block;
}
.store-form input[type=text],
.store-form input[type=password],
.store-form input[type=email],
.store-form input[type=number],
.store-form input[type=search],
.store-form input[type=url],
.store-form input[type=tel],
.store-form input[type=date],
.store-form input[type=time],
.store-form input[type=datetime-local],
.store-form input[type=file],
.store-form input[type=month],
.store-form input[type=week],
.store-form select,
.store-form textarea {
  margin-bottom: 12px;
  width: 100%;
  padding: 14px 12px;
  color: var(--color-text-darker);
  background: var(--color-input-bg);
  font-size: 14px;
  border-radius: 10px;
}
@media (width > 960px) {
  .store-form input[type=text],
  .store-form input[type=password],
  .store-form input[type=email],
  .store-form input[type=number],
  .store-form input[type=search],
  .store-form input[type=url],
  .store-form input[type=tel],
  .store-form input[type=date],
  .store-form input[type=time],
  .store-form input[type=datetime-local],
  .store-form input[type=file],
  .store-form input[type=month],
  .store-form input[type=week],
  .store-form select,
  .store-form textarea {
    padding: 12px;
    font-size: 16px;
  }
}
.store-form .field-inline input,
.store-form .field-inline select,
.store-form .field-inline textarea {
  width: auto;
}
.store-form .actions {
  display: flex;
  justify-content: center;
  gap: 12px;
}
.store-form .actions .link-text {
  align-self: center;
  font-size: 18px;
  font-weight: 700;
  margin: 0 16px;
}

@media (width <= 960px) {
  .site-content-widgets {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
}
@media (width > 960px) {
  body:not(.is-sidebar-bottom) .site-content-widgets {
    display: grid;
    align-items: start;
    gap: 32px;
  }
  body.is-sidebar-left .site-content-widgets {
    grid-template-columns: var(--sidebar-width) 1fr;
  }
  body.is-sidebar-left .site-content-widgets .store-sidebar {
    order: -1;
  }
  body.is-sidebar-right .site-content-widgets {
    grid-template-columns: 1fr var(--sidebar-width);
  }
}

.category-header {
  margin-bottom: var(--widget-padding);
  line-height: 1.4;
  font-size: 18px;
}

.no-products {
  font-size: 18px;
  text-align: center;
}

.store-products-list {
  display: flex;
  flex-direction: column;
  gap: var(--widget-padding);
}

.store-products-images {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: var(--products-gap);
}

.store-product {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.store-product .product-title {
  font-size: 20px;
  font-weight: 600;
}
.store-product .product-title a {
  color: inherit;
  transition: color 0.15s ease-in-out;
}
.store-product .product-title a:hover {
  color: var(--color-primary);
}
.store-product .product-title .countdown {
  display: block;
  margin-top: 8px;
  color: var(--color-removed);
  font-size: 0.75em;
  font-variant-numeric: tabular-nums;
}
.store-product .product-title .countdown::before {
  content: "";
  display: inline-block;
  vertical-align: -0.15em;
  margin-right: 0.25em;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  mask: url("https://template-assets.tebex.io/images/countdown.svg") center center/contain no-repeat;
}
.store-product .image-link {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  width: fit-content;
}
.store-product .image-link:hover ~ .product-title a {
  color: var(--color-primary);
}
.store-product .image {
  margin: 0 auto;
  max-width: 100%;
  border-radius: 10px;
}
.store-product .image-default {
  position: relative;
  width: min(140px, 100%);
  aspect-ratio: 1;
}
.store-product .image-default::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  background-color: rgb(from var(--color-text) r g b/0.8);
  mask: url("https://template-assets.tebex.io/images/package-default.svg") center center/contain no-repeat;
}
.store-product .descr {
  font-size: 14px;
}
.store-product .actions {
  display: flex;
  gap: 12px;
  position: relative;
  overflow: hidden;
}
.store-product .actions.updating {
  pointer-events: none;
}
.store-product .actions.updating > * {
  opacity: 0.3;
  filter: grayscale(100%);
}
.store-product .actions.updating::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  z-index: 10;
  margin: auto;
  width: 30px;
  height: 30px;
  background: url("https://template-assets.tebex.io/images/loading.svg") center center no-repeat;
  background-size: contain;
}
.store-product:not(.store-product-full) .actions {
  flex-wrap: wrap;
  align-content: flex-end;
  flex: 1 1 auto;
}
.store-product .price {
  font-size: 14px;
  font-weight: 500;
}
.store-product .price .discount {
  margin-right: 1ch;
  color: var(--color-removed);
  font-weight: 400;
  text-decoration-line: line-through;
}
.store-product .price strong {
  font-size: 20px;
  font-weight: inherit;
}
.store-product:not(.store-product-full) .price {
  width: 100%;
}
.store-product .quantity-field {
  height: var(--btn-size);
  background: var(--color-brighter-bg);
}
.store-product .quantity-field input[type=number] {
  border: none;
}
.store-product .half {
  flex: 1 1 33%;
  overflow: visible;
}
.store-product .wide {
  flex: 1 1 auto;
}
.store-product .gift {
  --btn-icon: url("https://template-assets.tebex.io/images/gift.svg");
  flex: none;
}
.store-product .remove {
  --btn-icon: url("https://template-assets.tebex.io/images/delete.svg");
  flex: none;
}

.store-products-images .store-product {
  display: grid;
  grid-template-rows: 1fr;
  grid-template-columns: subgrid;
}
.store-products-images .store-product .image-link {
  align-content: center;
  width: 100%;
  overflow: hidden;
}
.store-products-images .store-product .descr {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}

.store-products-list .store-product .image-link {
  margin: 0;
}
.store-products-list .store-product .image {
  width: 80px;
}
@media (width > 600px) {
  .store-products-list .store-product {
    flex-direction: row;
    align-items: center;
    gap: 12px calc(var(--widget-padding) * 0.75);
  }
  .store-products-list .store-product .product-title {
    margin-right: auto;
  }
  .store-products-list .store-product .actions {
    flex-wrap: nowrap;
    align-items: center;
    flex: 0 1 auto;
    gap: calc(var(--widget-padding) * 0.75);
  }
  .store-products-list .store-product .price {
    width: auto;
  }
  .store-products-list .store-product .half {
    flex: 0 1 140px;
  }
  .store-products-list .store-product .wide {
    flex: 0 1 170px;
  }
}

.media-slider {
  --slider-spacing: 6px;
  --thumbs-size: 40px;
  --thumb-padding: 6px;
  position: relative;
  width: 100%;
  overflow: hidden;
}
@media (width > 360px) {
  .media-slider {
    --slider-spacing: 12px;
    --thumbs-size: 55px;
  }
}
@media (width > 600px) {
  .media-slider {
    --thumbs-size: 70px;
  }
}
@media (width > 960px) {
  .media-slider {
    --thumbs-size: 90px;
  }
}
@media (width > 1400px) {
  .media-slider {
    --thumbs-size: 110px;
  }
}
.media-slider .slider {
  width: 100%;
  min-height: 200px;
  overflow: hidden;
  margin-bottom: var(--thumb-padding);
}
.media-slider .slider::part(container) {
  --swiper-navigation-size: 24px;
  --swiper-theme-color: var(--color-text);
}
.media-slider .slider::part(wrapper) {
  align-items: center;
}
.media-slider .slide {
  align-content: center;
}
.media-slider .slide-image {
  margin: auto;
  max-width: 100%;
  min-height: 200px;
  max-height: 100%;
  object-fit: contain;
  border-radius: 5px;
}
.media-slider .slide-video {
  border-radius: 5px;
  background: #000 var(--preview-image) center center/cover no-repeat;
  position: relative;
}
.media-slider .slide-frame {
  display: block;
  margin: auto;
  width: 100%;
  max-height: 100%;
  aspect-ratio: 16/9;
  transition: visibility 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
.media-slider .slide-frame:not(.iframe-loaded) {
  visibility: hidden;
  opacity: 0;
}
.media-slider .thumbs {
  display: flex;
  gap: var(--slider-spacing);
  align-items: stretch;
  flex-wrap: wrap;
}
.store-product-full .media-slider .thumbs {
  justify-content: center;
}
.media-slider .thumb {
  display: block;
  width: var(--thumbs-size);
  height: var(--thumbs-size);
  padding: var(--thumb-padding);
  background-color: var(--color-bg);
  border-radius: 5px;
  cursor: pointer;
}
.media-slider .thumb-image,
.media-slider .thumb-youtube {
  width: calc(var(--thumbs-size) - var(--thumb-padding) * 2);
  height: calc(var(--thumbs-size) - var(--thumb-padding) * 2);
  transition: opacity 0.3s ease-in-out;
}
.media-slider .thumb:not(.active) .thumb-image,
.media-slider .thumb:not(.active) .thumb-youtube {
  opacity: 0.5;
}
.media-slider .thumb-image {
  object-fit: contain;
}
.media-slider .thumb-youtube {
  position: relative;
  align-content: center;
}
.media-slider .thumb-youtube img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.media-slider .thumb-youtube::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  width: 30px;
  height: 30px;
  background-color: #fff;
  mask: url("https://template-assets.tebex.io/images/play.svg") center center/contain no-repeat;
}
.media-slider .open-lightbox {
  position: absolute;
  top: var(--slider-spacing);
  right: var(--slider-spacing);
  z-index: 2;
  align-content: center;
  width: 40px;
  height: 40px;
  background-color: rgb(from var(--color-bg) r g b/75%);
  backdrop-filter: blur(10px);
  visibility: hidden;
  line-height: 0;
  font-size: 0;
  color: transparent;
  opacity: 0;
  border-radius: 5px;
  transition: all 0.15s ease-in-out;
}
.media-slider .open-lightbox:hover, .media-slider .open-lightbox:focus {
  background-color: rgb(from var(--color-bg) r g b/90%);
}
.media-slider .open-lightbox::before {
  content: "";
  display: block;
  margin: auto;
  width: 18px;
  height: 18px;
  flex: none;
  background-color: var(--color-tertiary-text);
  mask: url("https://template-assets.tebex.io/images/fullscreen.svg") center center/contain no-repeat;
  transition: background-color 0.15s ease-in-out;
}
.media-slider .open-lightbox:hover::before, .media-slider .open-lightbox:focus::before {
  background-color: var(--color-tertiary-text-hover);
}
.media-slider .slider:has(.swiper-slide-active .slide-image):hover ~ .open-lightbox,
.media-slider .open-lightbox:hover {
  opacity: 1;
  visibility: visible;
}

.popup.popup-media-slider {
  --slider-spacing: 6px;
  --thumbs-size: 40px;
  --thumb-padding: 6px;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: minmax(0, auto) calc(var(--thumbs-size) + var(--slider-spacing));
  overflow: hidden;
  backdrop-filter: blur(10px);
}
@media (width > 360px) {
  .popup.popup-media-slider {
    --slider-spacing: 12px;
    --thumbs-size: 70px;
  }
}
@media (width > 600px) {
  .popup.popup-media-slider {
    --thumbs-size: 70px;
  }
}
@media (width > 960px) {
  .popup.popup-media-slider {
    --thumbs-size: 90px;
  }
}
@media (width > 1400px) {
  .popup.popup-media-slider {
    --thumbs-size: 120px;
  }
}
.popup.popup-media-slider .popup-close {
  top: var(--slider-spacing);
  right: var(--slider-spacing);
  z-index: 2;
  backdrop-filter: blur(5px);
  border-radius: 5px;
}
.popup.popup-media-slider .slider {
  width: 100%;
}
.popup.popup-media-slider .slider::part(container) {
  --swiper-navigation-size: 30px;
  --swiper-theme-color: var(--color-text);
}
@media (width > 600px) {
  .popup.popup-media-slider .slider::part(container) {
    --swiper-navigation-size: 36px;
  }
}
.popup.popup-media-slider .slider::part(wrapper) {
  align-items: center;
}
.popup.popup-media-slider .slide {
  align-content: center;
  padding: var(--slider-spacing);
}
.popup.popup-media-slider .slide-image {
  margin: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.popup.popup-media-slider .slide-video {
  border-radius: 5px;
  background: #000 var(--preview-image) center center/cover no-repeat;
  position: relative;
}
.popup.popup-media-slider .slide-frame {
  display: block;
  margin: auto;
  width: 100%;
  max-height: 100%;
  aspect-ratio: 16/9;
  transition: visibility 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
.popup.popup-media-slider .slide-frame:not(.iframe-loaded) {
  visibility: hidden;
  opacity: 0;
}
.popup.popup-media-slider .thumbs {
  display: flex;
  gap: var(--slider-spacing);
  align-items: stretch;
  flex-wrap: wrap;
  padding: 0 var(--slider-spacing) var(--slider-spacing);
}
.popup.popup-media-slider .thumb {
  display: block;
  width: var(--thumbs-size);
  height: var(--thumbs-size);
  padding: var(--thumb-padding);
  background-color: rgb(from var(--color-bg) r g b/0.7);
  border-radius: 5px;
  cursor: pointer;
}
.popup.popup-media-slider .thumb-image,
.popup.popup-media-slider .thumb-youtube {
  width: calc(var(--thumbs-size) - var(--thumb-padding) * 2);
  height: calc(var(--thumbs-size) - var(--thumb-padding) * 2);
  transition: opacity 0.3s ease-in-out;
}
.popup.popup-media-slider .thumb:not(.active) .thumb-image,
.popup.popup-media-slider .thumb:not(.active) .thumb-youtube {
  opacity: 0.5;
}
.popup.popup-media-slider .thumb-image {
  object-fit: contain;
}
.popup.popup-media-slider .thumb-youtube {
  position: relative;
  align-content: center;
}
.popup.popup-media-slider .thumb-youtube img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.popup.popup-media-slider .thumb-youtube::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  width: 36px;
  height: 36px;
  background-color: var(--color-text);
  mask: url("https://template-assets.tebex.io/images/play.svg") center center/contain no-repeat;
}

.store-product-full .image {
  margin-inline: auto;
  max-width: 100%;
  order: -1;
}
.store-product-full .product-title {
  font-size: 28px;
  font-weight: 800;
}
.store-product-full .price {
  width: 100%;
  font-size: 24px;
}
.store-product-full .price strong {
  font-size: 28px;
}
.store-product-full .actions {
  flex-wrap: wrap;
}
.store-product-full .wide {
  max-width: 240px;
}
@media (width > 600px) {
  .store-product-full {
    display: grid;
    grid-template: "image title" auto "image actions" auto "image descr" 1fr/1fr 1fr;
    gap: 24px var(--layout-gap);
  }
  .store-product-full .image,
  .store-product-full .media-slider {
    grid-area: image;
    margin-right: 0;
  }
  .store-product-full .product-title {
    grid-area: title;
    font-size: 32px;
    align-self: flex-end;
  }
  .store-product-full .descr {
    grid-area: descr;
    font-size: 16px;
  }
  .store-product-full .actions {
    grid-area: actions;
    align-self: start;
  }
}
/* =========================================================
   BOULEVARD RP PACKAGE SPACING FIX
========================================================= */

/* =========================================================
   BOULEVARD RP FINAL PACKAGE POLISH
========================================================= */

/* Package content spacing */
.store-product-full{
  gap: 42px !important;
}

/* Right content area */
.store-product-options{
  padding-top: 14px !important;
}

/* Package title */
.store-product-options h1,
.store-product-options .product-title{
  margin-top: 14px !important;
  margin-bottom: 24px !important;
  line-height: 1.15 !important;
}

/* Price spacing */
.store-product-options .price{
  margin-bottom: 26px !important;
}

/* Subscribe button spacing */
.store-product-options .actions{
  margin-top: 10px !important;
  margin-bottom: 38px !important;
}

/* Description width */
.store-product-full .descr,
.store-product-full .description{
  max-width: 720px !important;
}

/* Paragraph spacing */
.store-product-full .descr p{
  margin-bottom: 24px !important;
}

/* Included perks heading */
.store-product-full .descr h2,
.store-product-full .descr h3{
  margin-top: 42px !important;
  margin-bottom: 20px !important;
}

/* List spacing */
.store-product-full .descr ul{
  margin-top: 20px !important;
  margin-bottom: 26px !important;
}

/* List items */
.store-product-full .descr li{
  margin-bottom: 18px !important;
  line-height: 1.9 !important;
}


/* Purchase section spacing */
.store-product-full .actions{
  margin-top: 26px !important;
  padding-bottom: 20px !important;
}

/* Sticky purchase area */
.store-product-options .actions{
  margin-top: 20px !important;
}

/* Package cards */
.store-product{
  gap: 18px !important;
}

.back-to-top {
  --btn-icon: url("https://template-assets.tebex.io/images/chevron.svg");
  margin: calc(var(--widget-padding) * 2) auto;
}
.back-to-top::before {
  rotate: 90deg;
}

.store-product-options .product-title {
  margin-bottom: 12px;
  font-size: 20px;
  font-weight: 600;
}
.store-product-options .actions {
  position: sticky !important;
  bottom: var(--widget-padding);
  justify-content: start;
  width: fit-content;
  max-width: 100%;
}
.store-product-options .actions.updating {
  pointer-events: none;
}
.store-product-options .actions.updating > * {
  opacity: 0.3;
  filter: grayscale(100%);
}
.store-product-options .actions.updating::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  z-index: 10;
  margin: auto;
  width: 30px;
  height: 30px;
  background: url("https://template-assets.tebex.io/images/loading.svg") center center no-repeat;
  background-size: contain;
}
.store-product-options .actions .btn-primary,
.store-product-options .actions .btn-secondary,
.store-product-options .actions .btn-tertiary {
  width: 230px;
}
.store-product-options .actions-multiple {
  width: auto;
}
.store-product-options .actions-multiple .btn-primary,
.store-product-options .actions-multiple .btn-secondary,
.store-product-options .actions-multiple .btn-tertiary {
  width: auto;
  flex: 1 1 auto;
}

.store-sidebar {
  display: grid;
  gap: 36px;
}
body:not(.is-sidebar-bottom) .store-sidebar {
  padding-top: 14px;
}
body.is-sidebar-bottom .store-sidebar {
  margin-top: calc(var(--layout-gap) * 1.5);
}
@media (width > 600px) {
  body.is-sidebar-bottom .store-sidebar {
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  }
}

.widget-title {
  margin-bottom: var(--widget-padding);
  font-size: 20px;
  font-weight: 700;
}

.widget-featured .store-product {
  padding: 0;
  text-align: center;
}

.widget-gift-card {
  text-align: center;
}
.widget-gift-card .gift-card-input {
  margin-bottom: 12px;
  width: 100%;
  padding: 14px 12px;
  color: var(--color-text-darker);
  background: var(--color-input-bg);
  font-size: 14px;
  border-radius: 10px;
  font-size: 14px;
}
@media (width > 960px) {
  .widget-gift-card .gift-card-input {
    padding: 12px;
    font-size: 16px;
  }
}
.popup .widget-gift-card .gift-card-input {
  background: #242424;
}
.widget-gift-card .check {
  width: 100%;
}

.widget-recent .purchase {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  position: relative;
  margin-bottom: 6px;
  line-height: 1.4;
}
.widget-recent .avatar {
  flex: none;
  max-width: 40px;
  max-height: 40px;
  object-fit: contain;
  border-radius: 5px;
}
.widget-recent .username {
  font-weight: 700;
}
.widget-recent .empty {
  text-align: center;
}
.widget-recent time {
  opacity: 0.5;
  font-size: 0.9em;
}
.widget-recent .sep {
  margin: 0 0.3em;
}

.widget-top-donator .avatar {
  margin-bottom: 12px;
  max-width: 96px;
  border-radius: 10px;
}
.widget-top-donator .username {
  margin-bottom: 6px;
  font-weight: 700;
  font-size: 18px;
}
.widget-top-donator .empty {
  text-align: center;
}

.widget-community-goal .widget-content,
.widget-goal .widget-content {
  text-align: center;
}
.widget-community-goal p:not(:last-child),
.widget-goal p:not(:last-child) {
  margin-bottom: 12px;
}
.widget-community-goal .progress,
.widget-goal .progress {
  height: 12px;
  margin-bottom: 12px;
  overflow: hidden;
  background: var(--color-tertiary-hover);
  border-radius: 6px;
}
@keyframes progressBarAnimation {
  to {
    background-position: 100% 0;
  }
}
.widget-community-goal .progress-bar,
.widget-goal .progress-bar {
  height: 12px;
  border-radius: 6px;
  background: var(--color-primary);
}
.widget-community-goal .progress-bar.striped,
.widget-goal .progress-bar.striped {
  background: var(--color-primary) linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary) 33%, rgb(from var(--color-primary-hover) r g b/0.35) 33%, rgb(from var(--color-primary-hover) r g b/0.35) 66%, var(--color-primary) 66%, var(--color-primary) 100%) repeat;
  background-size: 24px 100%;
}
.widget-community-goal .progress-bar.striped.animated,
.widget-goal .progress-bar.striped.animated {
  animation: progressBarAnimation 10s infinite linear;
}

.widget-community-goal .goal-image {
  margin: 0 auto 12px;
  max-width: 96px;
}
.widget-community-goal .descr {
  margin-bottom: 12px;
}

.widget-server-status .widget-content {
  text-align: center;
}
.widget-server-status h6 {
  margin-bottom: 12px;
}

.site-footer {
  background: var(--color-brighter-bg);
  view-transition-name: siteFooter;
}

.site-footer-inner {
  position: relative;
  padding: 20px var(--content-padding);
}
@media (width <= 960px) {
  .site-footer-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--widget-padding);
  }
}
.site-footer-inner .site-footer-nav {
  line-height: 150%;
  font-size: 14px;
}
@media (width > 960px) {
  .site-footer-inner .site-footer-nav {
    margin-bottom: 12px;
  }
}
.site-footer-inner .site-footer-nav ul {
  display: flex;
}
@media (width <= 960px) {
  .site-footer-inner .site-footer-nav ul {
    flex-direction: column;
    gap: var(--widget-padding);
    text-align: center;
  }
}
@media (width > 960px) {
  .site-footer-inner .site-footer-nav ul {
    gap: calc(var(--widget-padding) * 2);
  }
}
.site-footer-inner .site-footer-nav a {
  color: var(--color-text-darker);
  text-decoration-line: underline;
  text-underline-offset: 2px;
  transition: color 0.15s ease-in-out;
}
.site-footer-inner .site-footer-nav a:hover {
  color: var(--color-primary);
}
.site-footer-inner .copyright {
  line-height: 16px;
  color: var(--color-text-secondary);
  font-size: 12px;
}
.site-footer-inner .we-accept {
  display: flex;
  align-items: center;
  gap: 12px;
}
@media (width > 960px) {
  .site-footer-inner .we-accept {
    position: absolute;
    top: 0;
    right: var(--content-padding);
    bottom: 0;
    pointer-events: none;
  }
}
.site-footer-inner .we-accept li {
  display: block;
}
.site-footer-inner .we-accept img {
  display: block;
  max-width: 57px;
  max-height: 26px;
}
:root.color-scheme-light .site-footer-inner .we-accept img[alt=Visa] {
  filter: brightness(0.1);
}
@media (prefers-color-scheme: light) {
  :root.color-scheme-auto .site-footer-inner .we-accept img[alt=Visa] {
    filter: brightness(0.1);
  }
}

.popup {
  --fade-duration: 300ms;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100vw;
  z-index: 1000;
  overflow: hidden scroll;
  scrollbar-width: thin;
  scrollbar-color: var(--color-secondary) transparent;
  background: var(--color-popup-bg);
  transition: opacity var(--fade-duration) ease, display var(--fade-duration) allow-discrete;
}
@starting-style {
  .popup {
    opacity: 0;
  }
}
.popup.drawer {
  user-select: none;
}
.popup[hidden] {
  opacity: 0;
  display: none;
}

.popup-scroll-cont {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100%;
  padding: calc(var(--content-padding) / 2);
  overflow: hidden;
  overscroll-behavior: none;
}
@media (width > 600px) {
  .popup-scroll-cont {
    padding: var(--content-padding);
  }
}
@media (pointer: coarse) {
  .popup .popup-scroll-cont {
    align-items: flex-end;
    padding-bottom: 0;
  }
}

.popup-content {
  position: relative;
  width: 100%;
  max-width: 550px;
  padding: var(--widget-padding);
  background: var(--color-brighter-bg);
  border-radius: 10px;
  backdrop-filter: var(--bg-blur);
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.15);
  transition: translate var(--fade-duration) ease, opacity var(--fade-duration) ease;
}
@media (pointer: coarse) {
  .popup-content {
    padding-bottom: calc(var(--widget-padding) * 2);
  }
}
@starting-style {
  .popup-content {
    translate: 0 20px;
  }
}
.popup.drawer-down .popup-content {
  border-radius: 10px 10px 0 0;
}
.popup.drawer-up .popup-content {
  border-radius: 0 0 10px 10px;
}
/* =========================================================
   BOULEVARD RP CATEGORY TAB FIX
========================================================= */

.nav-tabs {
    gap: 10px !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
}

.nav-tabs .nav-item {
    margin: 0 !important;
}

.nav-tabs .nav-link {
    background: transparent !important;
    color: #bfc7d5 !important;
    border: none !important;
    border-radius: 14px !important;
    padding: 12px 24px !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 55px !important;
    line-height: 1 !important;
    overflow: visible !important;
}

.nav-tabs .nav-link.active {
    background: linear-gradient(180deg, #4de1ff 0%, #1ca9ff 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 0 15px rgba(77, 225, 255, 0.35) !important;
}
.popup.drawer-right .popup-content {
  border-radius: 10px 0 0 10px;
}
.popup.drawer-left .popup-content {
  border-radius: 0 10px 10px 0;
}
.popup.touching .popup-content {
  transition: opacity var(--fade-duration) ease, scale var(--fade-duration) ease;
}
.popup.drawer[hidden] .popup-content, .popup.may-close .popup-content {
  opacity: 0.8;
  scale: 0.95;
}
.popup.may-close .popup-content {
  border-radius: 10px;
}
.popup.drawer-up[hidden] .popup-content {
  translate: 0 -100%;
}
.popup.drawer-down[hidden] .popup-content {
  translate: 0 100%;
}
.popup.drawer-right[hidden] .popup-content {
  translate: 100% 0;
}
.popup.drawer-left[hidden] .popup-content {
  translate: -100% 0;
}
.popup:not(.drawer)[hidden] .popup-content {
  translate: 0 20px;
}
.popup:not(.drawer)[hidden] .popup-content {
  translate: 0 20px;
}
.popup.popup-loading .popup-content {
  min-height: 180px;
}
.popup.popup-loading .popup-content::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  width: 38px;
  height: 38px;
  background: url("https://template-assets.tebex.io/images/loading.svg") center center no-repeat;
  background-size: contain;
}
.drawer-up .popup-content::after, .drawer-down .popup-content::after, .drawer-left .popup-content::after, .drawer-right .popup-content::after {
  content: "";
  display: block;
  position: absolute;
  background: rgb(from var(--color-text-secondary) r g b/0.33);
  border-radius: 2px;
  pointer-events: none;
}
.drawer-up .popup-content::after, .drawer-down .popup-content::after {
  left: 0;
  right: 0;
  margin-inline: auto;
  height: 4px;
  width: 100px;
}
.drawer-up .popup-content::after {
  bottom: 7px;
}
.drawer-down .popup-content::after {
  top: 7px;
}
.drawer-left .popup-content::after, .drawer-right .popup-content::after {
  top: 0;
  bottom: 0;
  margin-block: auto;
  width: 4px;
  height: 100px;
}
.drawer-left .popup-content::after {
  right: 7px;
}
.drawer-right .popup-content::after {
  left: 7px;
}

.popup-close {
  position: absolute;
  top: 0;
  right: 0;
  width: var(--btn-size);
  height: var(--btn-size);
  background-color: var(--color-tertiary-text);
  mask: url("https://template-assets.tebex.io/images/close.svg") center center no-repeat;
  mask-size: 24px;
  border-radius: 0 10px 0 10px;
  line-height: 0;
  font-size: 0;
  color: transparent;
  transition: all 0.15s ease-in-out;
}
@media (width <= 600px) {
  .popup-close {
    mask-size: 24px;
  }
}
.popup-close:hover, .popup-close:focus {
  background-color: var(--color-tertiary-text-hover);
}

.store-product-popup-content {
  max-width: 800px;
}

.product-options-popup .popup-content {
  max-width: 480px;
}

.gift-form-popup .popup-content h1, .gift-form-popup .popup-content h2, .gift-form-popup .popup-content h3, .gift-form-popup .popup-content h4, .gift-form-popup .popup-content h5, .gift-form-popup .popup-content h6 {
  margin-bottom: 12px;
}
.gift-form-popup .popup-content .btn-primary {
  width: 240px;
}
.gift-form-popup .popup-content .actions {
  position: relative;
  width: fit-content;
  max-width: 100%;
}
.gift-form-popup .popup-content .actions.updating {
  pointer-events: none;
}
.gift-form-popup .popup-content .actions.updating > * {
  opacity: 0.3;
  filter: grayscale(100%);
}
.gift-form-popup .popup-content .actions.updating::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  z-index: 10;
  margin: auto;
  width: 30px;
  height: 30px;
  background: url("https://template-assets.tebex.io/images/loading.svg") center center no-repeat;
  background-size: contain;
}

.login-popup {
  z-index: 1002;
}

.login-popup-content {
  max-width: 400px;
}

.basket {
  position: relative;
  z-index: 1001;
}
.site-content .basket {
  display: none;
}
.basket .basket-empty {
  margin: auto;
  text-align: center;
  font-size: 18px;
}
.basket .basket-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 50px var(--content-padding) 30px;
  font-size: 22px;
  font-weight: 600;
}
@media (width > 960px) {
  .basket .basket-header {
    padding-top: 70px;
  }
}
.basket .basket-title {
  display: flex;
  align-items: center;
  gap: 12px;
  text-transform: uppercase;
}
.basket .basket-title::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background-color: var(--color-text);
  mask: url("https://template-assets.tebex.io/images/user.svg") center center no-repeat;
  mask-size: contain;
}
.basket .basket-second-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 15px var(--content-padding);
  background: var(--color-brighter-bg);
  font-size: 18px;
  font-weight: 300;
  text-align: center;
}
.basket .basket-second-header .total {
  font-size: 14px;
}
.basket .basket-second-header .total strong {
  font-size: 18px;
  font-weight: inherit;
}
.basket .basket-second-header .currency {
  display: flex;
  align-items: center;
  gap: 6px;
}
.basket .basket-second-header .currency::after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: url("https://template-assets.tebex.io/images/dropdown-arrow.svg") center center no-repeat;
}
.basket .basket-content {
  flex: 1;
  overflow-x: hidden;
  overflow-y: auto;
}
.basket .basket-items {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: var(--widget-padding);
}
.basket .basket-item {
  display: flex;
  width: 100%;
  align-items: center;
  gap: 12px;
  padding: var(--widget-padding);
  background: var(--color-brighter-bg);
  border-radius: 10px;
}
.basket .basket-item .info {
  margin-right: auto;
}
.basket .basket-item .options {
  list-style-position: inside;
}
.basket .basket-item .options:has(li) {
  padding: 5px 0;
}
.basket .basket-item .options li {
  display: block;
  padding: 1px 0;
}
.basket .basket-item .options li::before {
  content: "";
  display: inline-block;
  margin-right: 0.4em;
  width: 3px;
  height: 3px;
  vertical-align: middle;
  background-color: currentColor;
  border-radius: 50%;
}
.basket .basket-item .title {
  font-size: 20px;
  font-weight: 600;
}
.basket .basket-item .price {
  color: var(--color-primary);
  font-size: 14px;
}
.basket .basket-item .price strong {
  font-size: 18px;
  font-weight: inherit;
}
.basket .basket-item .quantity-field {
  flex: none;
  height: 40px;
}
.basket .basket-item .remove {
  --btn-icon: url("https://template-assets.tebex.io/images/delete.svg");
  --btn-size: 40px;
}
.basket .basket-checkout {
  margin-top: auto;
  padding: 0 var(--content-padding) 50px;
}
@media (width > 960px) {
  .basket .basket-checkout {
    padding-bottom: 100px;
  }
}
.basket .basket-checkout h3 {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: var(--widget-padding);
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
}
.basket .basket-checkout .total {
  color: var(--color-primary);
  font-size: 16px;
  font-weight: 400;
}
.basket .basket-checkout .total strong {
  font-size: 24px;
  font-weight: inherit;
}
.basket .basket-checkout .checkout {
  width: 100%;
}

.basket-popup {
  background-color: transparent;
}
.basket-popup .popup-scroll-cont {
  justify-content: flex-end;
  padding: 0;
}

.basket-popup-content {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  max-width: 520px;
  height: 100vh;
  height: 100dvh;
  padding: 0;
  background-color: rgb(from var(--color-bg) r g b/0.9);
}
.basket-popup-content, .popup.drawer .basket-popup-content {
  border-radius: 0;
}
.popup.drawer .basket-popup-content::after {
  inset: 0 auto 0 7px;
  margin-block: auto;
  width: 4px;
  height: 100px;
}
.popup.may-close .basket-popup-content {
  border-radius: 10px;
}
@starting-style {
  .basket-popup-content {
    translate: 100% 0;
  }
}
:root .popup[hidden] .basket-popup-content {
  translate: 100% 0;
}
.basket-popup-content .popup-close {
  border-radius: 0 0 0 10px;
}
.basket-popup-content.updating {
  pointer-events: none;
}
.basket-popup-content.updating::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  z-index: 10;
  margin: auto;
  width: 38px;
  height: 38px;
  background: url("https://template-assets.tebex.io/images/loading.svg") center center no-repeat;
  background-size: contain;
}
.basket-popup-content.updating > * {
  filter: grayscale(100%);
}

.toaster {
  display: flex;
  flex-direction: column-reverse;
  gap: 12px;
  position: fixed;
  bottom: var(--widget-padding);
  left: 0;
  right: 0;
  z-index: 10000;
  margin: 0 auto;
  padding: 0 var(--widget-padding);
  width: 100%;
  height: 100%;
  max-width: 520px;
  pointer-events: none;
}
.toaster:empty {
  display: none;
}

.toast {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  height: 50px;
  padding: 0 8px 0 24px;
  overflow: hidden;
  background: var(--color-brighter-bg);
  border-radius: 10px;
  backdrop-filter: var(--bg-blur);
  font-size: 16px;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.5);
  pointer-events: auto;
  transition: height 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
@starting-style {
  .toast {
    opacity: 0;
    height: 0;
  }
}
.toast[hidden] {
  display: block;
  opacity: 0;
  height: 0;
}
.toast.toast-warning {
  background: #cab600;
}
.toast.toast-error {
  background: #C12E2E;
}
.toast.toast-success {
  background: #4caf50;
}

.toast-close {
  margin-left: auto;
  flex: none;
  width: 30px;
  height: 30px;
  background: url("https://template-assets.tebex.io/images/close.svg") center center no-repeat;
  background-size: 20px;
  opacity: 0.5;
  line-height: 0;
  font-size: 0;
  color: transparent;
  transition: all 0.15s ease-in-out;
}
.toast-close:hover {
  opacity: 1;
  background-color: rgba(255, 255, 255, 0.1);
}

.store-category-tiered-header {
  margin-bottom: var(--widget-padding);
  font-size: 18px;
}
.store-category-tiered-header h1,
.store-category-tiered-header h2,
.store-category-tiered-header h3,
.store-category-tiered-header h4,
.store-category-tiered-header h5,
.store-category-tiered-header h6,
.store-category-tiered-header p {
  margin-bottom: 24px;
}

.store-products-tiered {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: var(--products-gap);
}

.store-product-tiered {
  --gap: var(--widget-padding);
  --border-color: rgb(from var(--color-text) r g b / .1);
  display: grid;
  grid-row: span 4;
  grid-template-rows: subgrid;
  gap: var(--gap);
}
.store-product-tiered .image {
  margin: auto;
  max-width: 100%;
  object-fit: contain;
}
.store-product-tiered .product-title {
  font-size: 20px;
  font-weight: 600;
  text-align: center;
}
.store-product-tiered .countdown {
  display: block;
  margin-top: 4px;
  color: var(--color-removed);
  font-size: 0.75em;
  font-variant-numeric: tabular-nums;
}
.store-product-tiered .countdown::before {
  content: "";
  display: inline-block;
  vertical-align: -0.15em;
  margin-right: 0.25em;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  mask: url("https://template-assets.tebex.io/images/countdown.svg") center center/contain no-repeat;
}
.store-product-tiered .descr {
  padding-block: var(--gap);
  border-block: 1px solid var(--border-color);
  color: var(--color-text-secondary);
}
.store-product-tiered .price {
  font-size: 14px;
  text-align: center;
}
.store-product-tiered .price .discount {
  margin-right: 1ch;
  color: var(--color-removed);
  font-weight: 400;
  text-decoration-line: line-through;
}
.store-product-tiered .price strong {
  font-size: 20px;
  font-weight: inherit;
}
.store-product-tiered .actions {
  gap: var(--gap);
}
.store-product-tiered .actions .wide {
  width: 100%;
}

.store-quote {
  padding: var(--widget-padding);
}
.store-quote .wide {
  flex: 1 1 50%;
}
/* =========================================================
   BOULEVARD RP CUSTOM OVERRIDES
   Paste at the VERY BOTTOM of style.css
========================================================= */

:root{
  --color-primary:#33CFFF;
  --color-primary-hover:#ffffff;
  --color-primary-text:#031018;
  --color-bg:#05070c;
  --color-brighter-bg:rgba(12,16,24,.82);
  --color-input-bg:#121722;
  --color-text:#f5f7fb;
  --color-text-darker:#ffffff;
  --color-text-secondary:#8f9baa;
  --blvd-border:rgba(255,255,255,.07);
  --blvd-glow:rgba(51,207,255,.22);
  --blvd-radius:24px;
}

body{
  background:
    radial-gradient(circle at 80% 0%, rgba(51,207,255,.10), transparent 34%),
    linear-gradient(180deg,#05070c 0%,#090d14 100%) !important;
}

/* Layout */
.site-content{
  max-width:1400px !important;
}

.boulevard-layout{
  gap:32px !important;
}

/* Navigation */
.site-navigation:not(.stuck) .menu,
.site-navigation.stuck{
  background:rgba(8,12,18,.82) !important;
  border:1px solid rgba(255,255,255,.07);
  border-radius:18px !important;
  backdrop-filter:blur(16px);
}

.site-navigation .menu-link:hover,
.site-navigation .menu-link.link-active,
.site-navigation .menu-link.active{
  color:#33CFFF !important;
}

/* Hero */
.blvd-hero{
  position:relative;
  overflow:hidden;
  margin-bottom:32px;
  padding:64px;
  border-radius:32px;
  background:
    radial-gradient(circle at 100% 0%, rgba(51,207,255,.16), transparent 35%),
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
  border:1px solid var(--blvd-border);
  box-shadow:0 25px 80px rgba(0,0,0,.45);
}

.blvd-eyebrow{
  display:inline-block;
  margin-bottom:16px;
  color:#33CFFF;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.blvd-hero h1{
  margin:0;
  color:#fff;
  font-size:clamp(3rem,7vw,5.4rem);
  line-height:.9;
  letter-spacing:-.07em;
  text-transform:uppercase;
}

.blvd-description{
  margin-top:22px;
  max-width:760px;
  color:#9aa6b4;
  line-height:1.75;
  font-size:1rem;
}

.blvd-description p:not(:last-child){
  margin-bottom:12px;
}

/* Feature pills */
.blvd-features{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}

.blvd-feature{
  display:flex;
  align-items:center;
  gap:9px;
  padding:12px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.07);
}

.blvd-feature span{
  color:#33CFFF;
}

.blvd-feature small{
  color:#fff;
  font-weight:800;
  font-size:.8rem;
}

/* Product grids */
.blvd-package-grid,
.blvd-tier-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr)) !important;
  gap:24px !important;
}

.blvd-package-card,
.blvd-tier-card,
.store-product{
  border-radius:26px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.016)) !important;
  border:1px solid rgba(255,255,255,.07) !important;
  box-shadow:0 22px 70px rgba(0,0,0,.36);
  transition:all .25s ease;
}

.blvd-package-card:hover,
.blvd-tier-card:hover,
.store-product:hover{
  transform:translateY(-4px);
  border-color:rgba(51,207,255,.26) !important;
  box-shadow:
    0 26px 80px rgba(0,0,0,.45),
    0 0 30px rgba(51,207,255,.10);
}

.blvd-tier-image-wrap{
  overflow:hidden;
  height:210px;
  border-radius:24px 24px 0 0;
}

.blvd-tier-image,
.store-product .image{
  width:100%;
  object-fit:cover;
  border-radius:18px !important;
}

.blvd-tier-content{
  padding:26px;
}

.blvd-tier-title,
.store-product .product-title{
  color:#fff;
  font-size:1.35rem;
  font-weight:900;
  letter-spacing:-.04em;
}

.blvd-tier-description,
.store-product .descr{
  color:#9aa6b4;
  line-height:1.65;
}

/* Buttons */
.btn-primary,
.checkout,
.store-product .actions .btn-primary{
  border-radius:16px !important;
  background:linear-gradient(135deg,#33CFFF,#12aee2) !important;
  color:#031018 !important;
  font-weight:900 !important;
  box-shadow:0 0 24px rgba(51,207,255,.20);
}

.btn-primary:hover,
.checkout:hover{
  transform:translateY(-2px);
  box-shadow:0 0 34px rgba(51,207,255,.36);
}

.btn-secondary,
.btn-tertiary{
  border-radius:14px !important;
  background:rgba(255,255,255,.045) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.07) !important;
}

/* Support banner */
.blvd-support-banner{
  margin-top:40px;
  padding:48px;
  border-radius:30px;
  background:
    radial-gradient(circle at 100% 0%, rgba(51,207,255,.13), transparent 35%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.018));
  border:1px solid rgba(255,255,255,.07);
  box-shadow:0 25px 80px rgba(0,0,0,.38);
}

.blvd-support-banner h2{
  margin:10px 0 14px;
  color:#fff;
  font-size:clamp(2rem,4vw,4rem);
  line-height:.95;
  letter-spacing:-.06em;
  text-transform:uppercase;
}

.blvd-support-banner p{
  max-width:760px;
  color:#9aa6b4;
  line-height:1.75;
}

/* Sidebar */
.store-sidebar{
  gap:18px !important;
}

.store-sidebar > *,
.widget,
.widget-content{
  border-radius:22px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.016)) !important;
  border:1px solid rgba(255,255,255,.07) !important;
  box-shadow:0 20px 60px rgba(0,0,0,.30);
}

.widget-title{
  color:#fff;
  font-weight:900;
  letter-spacing:-.03em;
}

/* Checkout */
.blvd-basket{
  border-radius:30px;
  overflow:hidden;
  background:
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.016));
  border:1px solid rgba(255,255,255,.07);
  box-shadow:0 25px 80px rgba(0,0,0,.42);
}

.blvd-basket-header,
.blvd-basket-summary,
.blvd-basket-content,
.blvd-basket-checkout{
  padding:30px;
}

.blvd-basket-item{
  border-radius:22px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.06);
}

.blvd-checkout-subtitle,
.blvd-total-label{
  color:#9aa6b4;
}

/* Mobile */
@media(max-width:960px){
  .blvd-hero{
    padding:40px 26px;
  }

  .blvd-support-banner{
    padding:34px 24px;
  }

  .blvd-hero h1{
    font-size:3rem;
  }
}
.blvd-sidebar{
  display:grid !important;
  gap:18px !important;
}

.blvd-sidebar-card{
  padding:22px;
  border-radius:24px;
  background:
    radial-gradient(circle at 100% 0%, rgba(51,207,255,.10), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.018));
  border:1px solid rgba(255,255,255,.075);
  box-shadow:0 20px 60px rgba(0,0,0,.32);
}

.blvd-sidebar-card h3{
  margin:0 0 12px;
  color:#fff;
  font-size:1.25rem;
  font-weight:900;
  letter-spacing:-.04em;
}

.blvd-sidebar-card p{
  margin:0;
  color:#9aa6b4;
  line-height:1.6;
  font-size:.92rem;
}

.blvd-sidebar-btn{
  margin-top:18px;
  width:100%;
}

/* =========================================================
   BOULEVARD PRODUCT CARDS
========================================================= */

.blvd-product-card{
  overflow:hidden !important;
  padding:0 !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(51,207,255,.10), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.018)) !important;
  border:1px solid rgba(255,255,255,.075) !important;
  box-shadow:0 24px 75px rgba(0,0,0,.40);
}

.blvd-product-image-link{
  display:block !important;
  width:100% !important;
  height:220px !important;
  overflow:hidden !important;
  border-radius:0 !important;
}

.blvd-product-image{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:0 !important;
  transition:transform .45s ease, filter .45s ease;
}

.blvd-product-card:hover .blvd-product-image{
  transform:scale(1.05);
  filter:brightness(1.08);
}

.blvd-product-body{
  padding:24px;
}

.blvd-product-label{
  display:inline-block;
  margin-bottom:10px;
  color:#33CFFF;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.blvd-product-title{
  margin:0 !important;
  color:#fff !important;
  font-size:1.4rem !important;
  font-weight:900 !important;
  letter-spacing:-.045em;
}

.blvd-product-title a:hover{
  color:#33CFFF !important;
}

.blvd-product-divider{
  height:1px;
  margin:18px 0;
  background:linear-gradient(90deg, rgba(51,207,255,.35), transparent);
}

.blvd-product-card .actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
}

.blvd-product-card .actions .price{
  width:100% !important;
  color:#fff !important;
  font-size:1rem !important;
  font-weight:800 !important;
}

.blvd-product-card .actions .btn-primary,
.blvd-product-card .actions .btn-secondary,
.blvd-product-card .actions .btn-tertiary{
  flex:1 1 auto !important;
  min-width:120px !important;
}

@media(max-width:640px){
  .blvd-product-image-link{
    height:190px !important;
  }

  .blvd-product-body{
    padding:20px;
  }
}
/* =========================================================
   BOULEVARD HOMEPAGE CLEANUP
========================================================= */

.blvd-home-hero{
  position:relative;
  overflow:hidden;
  margin-bottom:34px;
  padding:72px 60px;
  min-height:360px;
  display:flex;
  align-items:center;
  border-radius:34px;
  background:
    radial-gradient(circle at 18% 18%, rgba(51,207,255,.16), transparent 30%),
    radial-gradient(circle at 88% 0%, rgba(51,207,255,.08), transparent 34%),
    linear-gradient(135deg, rgba(14,18,28,.96), rgba(8,12,18,.98));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:
    0 30px 90px rgba(0,0,0,.50),
    inset 0 1px 0 rgba(255,255,255,.06);
}

.blvd-home-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(255,255,255,.025), transparent 42%),
    linear-gradient(90deg, rgba(5,7,12,.12), transparent 65%);
}

.blvd-home-hero::after{
  content:"";
  position:absolute;
  top:-130px;
  right:-120px;
  width:390px;
  height:390px;
  border-radius:999px;
  background:rgba(51,207,255,.10);
  filter:blur(82px);
  z-index:0;
  pointer-events:none;
}

.blvd-home-hero-content{
  position:relative;
  z-index:2;
  max-width:720px;
}

.blvd-home-hero h1{
  margin:0;
  color:#fff;
  font-size:clamp(2.8rem,5.5vw,5rem);
  line-height:.88;
  letter-spacing:-.08em;
  text-transform:uppercase;
  text-shadow:0 10px 40px rgba(0,0,0,.55);
}

.blvd-home-hero p{
  margin-top:22px;
  max-width:620px;
  color:rgba(255,255,255,.72);
  line-height:1.8;
  font-size:1rem;
  font-weight:500;
  letter-spacing:-0.01em;
  text-shadow:0 2px 18px rgba(0,0,0,.45);
}

.blvd-home-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:32px;
}

.blvd-home-section{
  margin-top:34px;
}

.blvd-section-head{
  margin-bottom:20px;
}

.blvd-section-head h2{
  margin:0;
  color:#fff;
  font-size:clamp(2rem,4vw,3.6rem);
  line-height:.95;
  letter-spacing:-.06em;
  text-transform:uppercase;
}

.blvd-category-grid{
  margin-bottom:0 !important;
}

.blvd-category-card{
  position:relative;
  min-height:170px;
  align-content:end !important;
  padding:22px !important;
  border-radius:26px !important;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.018)) !important;
  border:1px solid rgba(255,255,255,.075);
  box-shadow:0 22px 70px rgba(0,0,0,.34);
}

.blvd-category-card .image{
  position:absolute;
  inset:0;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  opacity:.30;
  filter:grayscale(.15) brightness(.85);
  border-radius:0 !important;
  transition:transform .45s ease, opacity .45s ease;
}

.blvd-category-card:hover .image{
  transform:scale(1.05);
  opacity:.45;
}

.blvd-category-card span{
  position:relative;
  z-index:1;
  color:#fff;
  font-size:1.35rem;
  font-weight:900;
  letter-spacing:-.04em;
}

.blvd-info-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}

.blvd-info-card,
.blvd-home-description{
  padding:30px;
  border-radius:28px;
  background:
    radial-gradient(circle at 100% 0%, rgba(51,207,255,.10), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.016));
  border:1px solid rgba(255,255,255,.075);
  box-shadow:0 22px 70px rgba(0,0,0,.34);
}

.blvd-info-card h3{
  margin:0 0 12px;
  color:#fff;
  font-size:1.5rem;
  font-weight:900;
  letter-spacing:-.045em;
}

.blvd-info-card p,
.blvd-home-description{
  color:#9aa6b4;
  line-height:1.7;
}

@media(max-width:900px){
  .blvd-home-hero{
    padding:48px 28px;
    min-height:auto;
  }

  .blvd-info-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  .blvd-home-hero h1{
    font-size:3rem;
  }

  .blvd-home-actions .btn-primary,
  .blvd-home-actions .btn-secondary{
    width:100%;
  }
}
/* =========================================================
   BOULEVARD LAYOUT SHELL
========================================================= */

.boulevard-theme{
  background:#05070c !important;
}

.blvd-site{
  position:relative;
  z-index:2;
}

.blvd-page-bg{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      rgba(5,7,12,.92),
      rgba(5,7,12,.97)
    ),

    url("https://r2.fivemanage.com/XgMCylfG3rBwTJOr6vnxE/9d64a034-5a17-44a7-9ad8-620e32daf98a.png");

  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  background-attachment:fixed;

  opacity:.28;
}

.blvd-page-glow{
  position:fixed;
  z-index:1;
  width:420px;
  height:420px;
  border-radius:999px;
  background:rgba(51,207,255,.10);
  filter:blur(90px);
  pointer-events:none;
}

.blvd-page-glow-one{
  top:-120px;
  right:-120px;
}

.blvd-page-glow-two{
  bottom:10%;
  left:-160px;
  opacity:.55;
}

.blvd-main-shell{
  position:relative;
  z-index:2;
}
/* =========================================================
   BOULEVARD HEADER
========================================================= */

.blvd-header-top{
  position:relative;
  z-index:10;
  min-height:58px !important;
}

.blvd-header-actions{
  display:flex;
  align-items:center;
  gap:10px;
  margin-left:auto;
}

.blvd-header-top .btn-primary,
.blvd-header-top .btn-secondary,
.blvd-header-top .btn-tertiary{
  border-radius:999px !important;
  height:38px !important;
  line-height:38px !important;
  font-size:.78rem !important;
  font-weight:900 !important;
}

.blvd-header-top .open-basket{
  padding:0 16px !important;
  background:linear-gradient(135deg,#33CFFF,#13aee3) !important;
  color:#031018 !important;
  box-shadow:0 0 24px rgba(51,207,255,.22);
}

.blvd-site-header{
  position:relative;
  overflow:hidden;
  border-radius:0 !important;
}

.blvd-header-logo{
  z-index:3;
}

.blvd-header-logo img{
  max-height:120px !important;
  filter:drop-shadow(0 12px 34px rgba(0,0,0,.55));
}

.blvd-mobile-logo img{
  max-height:30px !important;
}

.blvd-hero-image{
  opacity:.75;
  filter:brightness(.85) contrast(1.08);
}

body.is-logo-centered.has-hero .blvd-site-header .blvd-header-logo{
  filter:none !important;
}

@media(max-width:960px){
  .blvd-header-top{
    background:rgba(8,12,18,.88) !important;
    border-bottom:1px solid rgba(255,255,255,.07);
    backdrop-filter:blur(16px);
  }
}
/* =========================================================
   BOULEVARD NAVIGATION
========================================================= */

.blvd-navigation{
  position:sticky !important;
  top:0 !important;
  z-index:100 !important;
  padding:0 var(--content-padding);
}

.blvd-navigation .blvd-menu{
  max-width:1400px !important;
  margin:0 auto !important;
  padding:14px 18px !important;
  border-radius:22px !important;
  background:rgba(8,12,18,.82) !important;
  border:1px solid rgba(255,255,255,.075);
  box-shadow:0 20px 60px rgba(0,0,0,.32);
  backdrop-filter:blur(18px);
}

.blvd-nav-logo-wrap{
  margin-right:22px !important;
}

.blvd-nav-logo img{
  max-height:42px !important;
  border-radius:0 !important;
}

.blvd-menu-link{
  position:relative;
  padding:0 10px !important;
  color:#9aa6b4 !important;
  font-size:.92rem !important;
  font-weight:800 !important;
  letter-spacing:-.015em;
}

.blvd-menu-link:hover,
.blvd-menu-link.link-active{
  color:#fff !important;
}

.blvd-menu-link::after{
  content:"";
  position:absolute;
  left:10px;
  right:10px;
  bottom:6px;
  height:2px;
  border-radius:999px;
  background:#33CFFF;
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .22s ease;
  box-shadow:0 0 14px rgba(51,207,255,.55);
}

.blvd-menu-link:hover::after,
.blvd-menu-link.link-active::after{
  transform:scaleX(1);
}

.blvd-menu-sub{
  border-radius:18px !important;
  background:rgba(8,12,18,.94) !important;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 20px 60px rgba(0,0,0,.45);
}

@media(max-width:960px){
  .blvd-navigation{
    padding:0 !important;
  }

  .blvd-navigation .blvd-menu{
    max-width:none !important;
    height:100%;
    border-radius:0 !important;
    padding:72px 24px 24px !important;
    background:rgba(5,7,12,.96) !important;
  }

  .blvd-menu-link{
    font-size:1.3rem !important;
    padding:12px 0 !important;
  }

  .blvd-menu-link::after{
    display:none;
  }
}
/* =========================================================
   BOULEVARD FOOTER
========================================================= */

.blvd-footer{
  margin-top:60px;
  background:transparent !important;
}

.blvd-footer-inner{
  max-width:1400px !important;
  margin:0 auto !important;
  padding:32px !important;
  border-radius:30px 30px 0 0;
  background:
    radial-gradient(circle at 100% 0%, rgba(51,207,255,.10), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.018));
  border:1px solid rgba(255,255,255,.075);
  border-bottom:none;
  box-shadow:0 22px 70px rgba(0,0,0,.32);
}

.blvd-footer-brand{
  display:flex;
  align-items:center;
  gap:16px;
}

.blvd-footer-brand img{
  width:54px;
  height:54px;
  object-fit:contain;
}

.blvd-footer-brand h3{
  margin:0;
  color:#fff;
  font-size:1.25rem;
  font-weight:900;
  letter-spacing:-.04em;
}

.blvd-footer-brand p{
  margin-top:5px;
  color:#9aa6b4;
  font-size:.9rem;
}

.blvd-payments{
  position:static !important;
  margin-top:24px;
  display:flex !important;
  flex-wrap:wrap;
  gap:12px;
}

.blvd-payments img{
  opacity:.78;
  filter:grayscale(1);
}

.blvd-footer-bottom{
  max-width:1400px;
  margin:0 auto;
  padding:18px 28px 32px;
  border-radius:0 0 30px 30px;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.075);
  border-top:1px solid rgba(255,255,255,.045);
}

.blvd-footer-bottom .copyright{
  margin:0;
  color:#7f8997;
  line-height:1.6;
  font-size:.8rem;
}

@media(max-width:960px){
  .blvd-footer-inner{
    border-radius:24px 24px 0 0;
  }

  .blvd-footer-brand{
    flex-direction:column;
    align-items:flex-start;
  }
}
.blvd-home{
  max-width:1280px;
  margin:0 auto;
}

.site-content{
  gap:28px !important;
}
/* Membership card spacing */
.store-products-grid{
  gap:28px !important;
}

/* Membership hover effect */
.blvd-product-card{
  transition:
    transform .22s ease,
    box-shadow .22s ease;
}

.blvd-product-card:hover{
  transform:translateY(-5px);
}
.blvd-product-card{
  position:relative;
  overflow:hidden;
}

.blvd-product-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;

  background:
    radial-gradient(
      circle at top right,
      rgba(51,207,255,.12),
      transparent 36%
    );
}

.blvd-footer-inner{
  padding:24px 32px !important;
}

.blvd-footer-bottom{
  padding:14px 28px 22px !important;
}
/* =========================================================
   FINAL WIDTH + BALANCE FIXES
========================================================= */

.blvd-home{
  max-width:1480px !important;
  margin:0 auto;
}

.site-content{
  gap:34px !important;
}

.store-home{
  width:100%;
}

/* Hero larger horizontally */
.blvd-home-hero{
  min-height:340px !important;
}

/* Sidebar cleaner */
.blvd-sidebar{
  width:290px !important;
}

/* Pull memberships upward */
.blvd-home-section{
  margin-top:26px !important;
}

/* Membership heading tighter */
.blvd-section-head{
  margin-bottom:14px !important;
}

/* Product cards cleaner */
.blvd-product-card{
  border-radius:24px !important;
}

/* Membership card image height */
.blvd-product-image-link{
  height:185px !important;
}

/* Product titles */
.blvd-product-title{
  font-size:1.25rem !important;
}

/* Navigation cleaner */
.blvd-navigation .blvd-menu{
  padding:10px 18px !important;
}

/* Reduce excessive footer spacing */
.blvd-footer{
  margin-top:42px !important;
}
.store-products-grid{
  margin-top:34px !important;
}
img{
  image-rendering:auto;
}

.blvd-product-image{
  filter:saturate(1.05) contrast(1.02);
}
.blvd-sidebar{
  display:block !important;
}

.blvd-sidebar-feature{
  position:sticky;
  top:120px;
  padding:26px;
  border-radius:26px;
  background:
    radial-gradient(circle at top right, rgba(51,207,255,.12), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.018));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 25px 80px rgba(0,0,0,.38);
}

.blvd-sidebar-feature h2{
  margin:10px 0 14px;
  color:#fff;
  font-size:1.35rem;
  line-height:1.05;
  letter-spacing:-.05em;
  text-transform:uppercase;
}

.blvd-sidebar-feature p{
  margin:0;
  color:#9aa6b4;
  line-height:1.55;
  font-size:.88rem;
}

.blvd-sidebar-features{
  display:grid;
  gap:8px;
  margin:20px 0;
}

.blvd-mini-feature{
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.06);
  color:#fff;
  font-size:.84rem;
  font-weight:700;
}

.blvd-mini-feature span{
  color:#33CFFF;
}

.blvd-sidebar-btn{
  width:100%;
  justify-content:center;
  margin-top:18px;
}
.blvd-policy-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}

.blvd-policy-card{
  padding:30px;
  border-radius:24px;
  background:rgba(18,22,34,.82);
  border:1px solid rgba(255,255,255,.07);
  box-shadow:0 22px 70px rgba(0,0,0,.34);
}

.blvd-policy-card h3{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 16px;
  color:#33CFFF;
  font-size:1.55rem;
  font-weight:900;
  letter-spacing:-.04em;
}

.blvd-policy-icon{
  color:#33CFFF;
  font-size:1.35rem;
}

.blvd-policy-card p{
  color:#d7deea;
  line-height:1.7;
  font-size:1rem;
}

.blvd-policy-card strong{
  color:#fff;
  font-weight:900;
}

.blvd-policy-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  margin-top:28px;
  width:100%;
  padding:15px 18px;
  border-radius:16px;
  border:2px solid #33CFFF;
  color:#33CFFF;
  font-weight:900;
  text-decoration:none;
  transition:.22s ease;
}

.blvd-policy-btn:hover{
  background:rgba(51,207,255,.12);
  transform:translateY(-2px);
}

.blvd-refund-card h3,
.blvd-refund-card .blvd-policy-icon,
.blvd-refund-card .blvd-policy-btn{
  color:#ff4048;
  border-color:#ff4048;
}

.blvd-refund-card .blvd-policy-btn:hover{
  background:rgba(255,64,72,.12);
}

@media(max-width:900px){
  .blvd-policy-grid{
    grid-template-columns:1fr;
  }
}

/* =========================================================
   BOULEVARD FINAL POLICY CARD FIX
========================================================= */
.blvd-policy-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:24px !important;
  margin-top:34px !important;
}

.blvd-policy-card{
  padding:30px !important;
  border-radius:24px !important;
  background:rgba(18,22,34,.82) !important;
  border:1px solid rgba(255,255,255,.07) !important;
  box-shadow:0 22px 70px rgba(0,0,0,.34) !important;
}

.blvd-policy-card h3{
  margin:0 0 16px !important;
  color:#33CFFF !important;
  font-size:1.55rem !important;
  font-weight:900 !important;
  letter-spacing:-.04em !important;
}

.blvd-policy-card p{
  margin:0 !important;
  color:#d7deea !important;
  line-height:1.7 !important;
  font-size:1rem !important;
}

.blvd-policy-card strong{
  color:#fff !important;
  font-weight:900 !important;
}

.blvd-policy-icon{
  display:inline-block !important;
  margin-bottom:10px !important;
  color:#33CFFF !important;
  font-size:1.35rem !important;
}

.blvd-policy-btn{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-top:28px !important;
  width:100% !important;
  padding:15px 18px !important;
  border-radius:16px !important;
  border:2px solid #33CFFF !important;
  color:#33CFFF !important;
  font-weight:900 !important;
  text-decoration:none !important;
  transition:.22s ease !important;
}

.blvd-policy-btn:hover{
  background:rgba(51,207,255,.12) !important;
  transform:translateY(-2px) !important;
}

.blvd-refund-card h3,
.blvd-refund-card .blvd-policy-icon,
.blvd-refund-card .blvd-policy-btn{
  color:#ff4048 !important;
  border-color:#ff4048 !important;
}

.blvd-refund-card .blvd-policy-btn:hover{
  background:rgba(255,64,72,.12) !important;
}

@media(max-width:900px){
  .blvd-policy-grid{
    grid-template-columns:1fr !important;
  }
}
.blvd-legal-page{
  width:100%;
  max-width:1000px;
  margin:0 auto;
}

.blvd-legal-card{
  padding:42px;
  border-radius:32px;

  background:
    radial-gradient(circle at top right, rgba(51,207,255,.10), transparent 40%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.018));

  border:1px solid rgba(255,255,255,.08);

  box-shadow:0 30px 90px rgba(0,0,0,.42);
}

.blvd-legal-card h1{
  margin:12px 0 28px;
  color:#fff;
  font-size:clamp(2.8rem,5vw,4.5rem);
  line-height:.92;
  letter-spacing:-.07em;
  text-transform:uppercase;
}

.blvd-legal-content{
  color:#c4cedb;
  line-height:1.9;
}

.blvd-legal-content h2,
.blvd-legal-content h3{
  color:#fff;
  margin-top:34px;
}

.blvd-legal-content strong{
  color:#fff;
}
/* =========================
   LEGAL / POLICY SECTION
========================= */

.blvd-policy-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:28px;
    margin-top:40px;
    margin-bottom:30px;
}

.blvd-policy-card{
    position:relative;
    overflow:hidden;

    padding:32px;
    border-radius:28px;

    background:
        linear-gradient(
            135deg,
            rgba(10,15,25,.94) 0%,
            rgba(7,10,18,.96) 100%
        );

    border:1px solid rgba(70,170,255,.12);

    box-shadow:
        0 0 0 1px rgba(255,255,255,.02) inset,
        0 10px 40px rgba(0,0,0,.45);

    backdrop-filter:blur(14px);

    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.blvd-policy-card:hover{
    transform:translateY(-4px);

    border-color:rgba(70,170,255,.28);

    box-shadow:
        0 0 30px rgba(0,180,255,.08),
        0 18px 50px rgba(0,0,0,.55);
}

.blvd-policy-card::before{
    content:"";
    position:absolute;
    inset:0;

    background:
        radial-gradient(
            circle at top right,
            rgba(0,180,255,.12),
            transparent 45%
        );

    pointer-events:none;
}

.blvd-policy-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    width:42px;
    height:42px;

    margin-bottom:18px;

    border-radius:12px;

    font-size:20px;

    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.06);
}

.blvd-refund-card h3{
    color:#ff5c5c;
}

.blvd-privacy-card h3{
    color:#35cfff;
}

.blvd-policy-card h3{
    font-size:28px;
    font-weight:800;
    margin-bottom:18px;
    letter-spacing:-0.02em;
}

.blvd-policy-card p{
    color:rgba(255,255,255,.74);

    font-size:16px;
    line-height:1.8;

    margin-bottom:28px;
}

.blvd-policy-card strong{
    color:#fff;
    font-weight:700;
}

.blvd-policy-btn{
    display:flex;
    align-items:center;
    justify-content:center;

    width:100%;
    height:56px;

    border-radius:18px;

    font-weight:700;
    font-size:15px;

    transition:all .25s ease;
}

.blvd-refund-card .blvd-policy-btn{
    border:1px solid rgba(255,70,70,.45);

    background:
        linear-gradient(
            180deg,
            rgba(255,60,60,.10),
            rgba(255,60,60,.04)
        );

    color:#ff6b6b;
}

.blvd-refund-card .blvd-policy-btn:hover{
    background:rgba(255,70,70,.16);
    border-color:rgba(255,70,70,.7);
}

.blvd-privacy-card .blvd-policy-btn{
    border:1px solid rgba(53,207,255,.45);

    background:
        linear-gradient(
            180deg,
            rgba(53,207,255,.10),
            rgba(53,207,255,.04)
        );

    color:#35cfff;
}

.blvd-privacy-card .blvd-policy-btn:hover{
    background:rgba(53,207,255,.16);
    border-color:rgba(53,207,255,.7);
}

/* =========================
   MOBILE
========================= */

@media(max-width:900px){

    .blvd-policy-grid{
        grid-template-columns:1fr;
    }

    .blvd-policy-card{
        padding:24px;
    }

    .blvd-policy-card h3{
        font-size:24px;
    }

}
/* =========================================================
   BOULEVARD RP - FINAL POLICY + LEGAL FIX
   Added by ChatGPT
========================================================= */

/* Homepage policy cards */
.blvd-policy-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:28px !important;
  margin-top:34px !important;
  margin-bottom:34px !important;
  width:100% !important;
}

.blvd-policy-card{
  position:relative !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  min-height:285px !important;
  padding:32px !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at top right, rgba(51,207,255,.10), transparent 42%),
    linear-gradient(135deg, rgba(13,18,28,.96), rgba(7,10,18,.98)) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.025) inset,
    0 24px 75px rgba(0,0,0,.42) !important;
  backdrop-filter:blur(16px) !important;
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease !important;
}

.blvd-policy-card:hover{
  transform:translateY(-4px) !important;
  border-color:rgba(51,207,255,.26) !important;
  box-shadow:
    0 0 32px rgba(51,207,255,.08),
    0 28px 85px rgba(0,0,0,.50) !important;
}

.blvd-policy-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:linear-gradient(180deg, rgba(255,255,255,.035), transparent 45%) !important;
  z-index:0 !important;
}

.blvd-policy-card > *{
  position:relative !important;
  z-index:1 !important;
}

.blvd-policy-icon{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:44px !important;
  height:44px !important;
  margin-bottom:18px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.075) !important;
  font-size:20px !important;
  line-height:1 !important;
}

.blvd-policy-card h3{
  margin:0 0 16px !important;
  font-size:1.75rem !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:-.045em !important;
  text-transform:none !important;
}

.blvd-policy-card p{
  margin:0 0 28px !important;
  color:rgba(255,255,255,.74) !important;
  font-size:.98rem !important;
  line-height:1.75 !important;
  font-weight:500 !important;
}

.blvd-policy-card strong{
  color:#fff !important;
  font-weight:900 !important;
}

.blvd-policy-btn{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height:54px !important;
  margin-top:auto !important;
  padding:14px 18px !important;
  border-radius:17px !important;
  font-size:.92rem !important;
  font-weight:900 !important;
  letter-spacing:-.01em !important;
  text-decoration:none !important;
  transition:transform .22s ease, background .22s ease, border-color .22s ease !important;
}

.blvd-policy-btn:hover{
  transform:translateY(-2px) !important;
}

.blvd-refund-card{
  background:
    radial-gradient(circle at top right, rgba(255,64,72,.10), transparent 42%),
    linear-gradient(135deg, rgba(13,18,28,.96), rgba(7,10,18,.98)) !important;
}

.blvd-refund-card .blvd-policy-icon,
.blvd-refund-card h3{
  color:#ff4d57 !important;
}

.blvd-refund-card .blvd-policy-btn{
  color:#ff4d57 !important;
  border:1px solid rgba(255,77,87,.55) !important;
  background:linear-gradient(180deg, rgba(255,77,87,.11), rgba(255,77,87,.04)) !important;
}

.blvd-refund-card .blvd-policy-btn:hover{
  border-color:rgba(255,77,87,.80) !important;
  background:rgba(255,77,87,.15) !important;
}

.blvd-privacy-card .blvd-policy-icon,
.blvd-privacy-card h3{
  color:#33CFFF !important;
}

.blvd-privacy-card .blvd-policy-btn{
  color:#33CFFF !important;
  border:1px solid rgba(51,207,255,.55) !important;
  background:linear-gradient(180deg, rgba(51,207,255,.11), rgba(51,207,255,.04)) !important;
}

.blvd-privacy-card .blvd-policy-btn:hover{
  border-color:rgba(51,207,255,.80) !important;
  background:rgba(51,207,255,.15) !important;
}

/* Legal / Terms page wrapper */
.blvd-legal-wrapper{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  padding:30px 20px 80px !important;
}

.blvd-legal-card{
  width:100% !important;
  max-width:1100px !important;
  padding:42px !important;
  border-radius:32px !important;
  background:
    radial-gradient(circle at top right, rgba(51,207,255,.10), transparent 40%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.018)) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 30px 90px rgba(0,0,0,.42) !important;
}

.blvd-legal-card h1{
  margin:12px 0 28px !important;
  color:#fff !important;
  font-size:clamp(2.8rem,5vw,4.5rem) !important;
  line-height:.92 !important;
  letter-spacing:-.07em !important;
  text-transform:uppercase !important;
}

.blvd-legal-content{
  color:#c4cedb !important;
  line-height:1.9 !important;
  font-size:1rem !important;
}

.blvd-legal-content h2,
.blvd-legal-content h3{
  color:#fff !important;
  margin-top:34px !important;
  margin-bottom:14px !important;
  font-weight:900 !important;
}

.blvd-legal-content p,
.blvd-legal-content li{
  color:#c4cedb !important;
  line-height:1.9 !important;
}

.blvd-legal-content strong{
  color:#fff !important;
  font-weight:900 !important;
}

@media(max-width:900px){
  .blvd-policy-grid{
    grid-template-columns:1fr !important;
  }
  .blvd-policy-card{
    min-height:auto !important;
    padding:24px !important;
  }
  .blvd-policy-card h3{
    font-size:1.45rem !important;
  }
  .blvd-legal-card{
    padding:28px !important;
    border-radius:26px !important;
  }
/* Terms page container */
body.page-terms .site-content,
body[class*="terms"] .site-content{
  max-width:1100px !important;
  margin:0 auto !important;
}

body.page-terms .text-content,
body[class*="terms"] .text-content{
  padding:46px !important;
  border-radius:32px !important;
  background:
    radial-gradient(circle at top right, rgba(51,207,255,.10), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018)) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 30px 90px rgba(0,0,0,.42) !important;
  color:#c4cedb !important;
  line-height:1.8 !important;
}

body.page-terms .text-content h1,
body[class*="terms"] .text-content h1{
  color:#fff !important;
  font-size:clamp(2.6rem,5vw,4.2rem) !important;
  line-height:.95 !important;
  letter-spacing:-.06em !important;
}

body.page-terms .text-content a,
body[class*="terms"] .text-content a{
  color:#33CFFF !important;
}


} /* closes the unfinished mobile media query above */

/* =========================================================
   BOULEVARD FINAL FIX: TERMS CONTAINER + INTERACTIVE BOXES
   Paste/save this full CSS file as styles.css
========================================================= */

/* Terms / auto legal pages container fix
   This targets Tebex's generated legal pages even when no custom terms.twig exists. */
body:not(.page-index) .site-content > .text-content,
body:not(.page-index) .site-content > main > .text-content,
body:not(.page-index) .site-content .store-text.text-content,
body:not(.page-index) .site-content .legal,
body:not(.page-index) .site-content .terms,
body:not(.page-index) .site-content .terms-and-conditions{
  width:min(100%, 1100px) !important;
  max-width:1100px !important;
  margin:0 auto 70px !important;
  padding:46px !important;
  border-radius:32px !important;
  background:
    radial-gradient(circle at top right, rgba(51,207,255,.11), transparent 40%),
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018)) !important;
  border:1px solid rgba(255,255,255,.085) !important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.025) inset,
    0 30px 90px rgba(0,0,0,.42) !important;
  color:#c4cedb !important;
  line-height:1.82 !important;
  backdrop-filter:blur(16px) !important;
}

body:not(.page-index) .site-content > .text-content h1,
body:not(.page-index) .site-content > main > .text-content h1,
body:not(.page-index) .site-content .store-text.text-content h1,
body:not(.page-index) .site-content .legal h1,
body:not(.page-index) .site-content .terms h1,
body:not(.page-index) .site-content .terms-and-conditions h1{
  color:#fff !important;
  font-size:clamp(2.4rem,4.8vw,4.2rem) !important;
  line-height:.95 !important;
  letter-spacing:-.06em !important;
  text-transform:none !important;
  margin-bottom:30px !important;
}

body:not(.page-index) .site-content > .text-content h2,
body:not(.page-index) .site-content > .text-content h3,
body:not(.page-index) .site-content > main > .text-content h2,
body:not(.page-index) .site-content > main > .text-content h3,
body:not(.page-index) .site-content .store-text.text-content h2,
body:not(.page-index) .site-content .store-text.text-content h3{
  color:#fff !important;
  margin-top:32px !important;
  margin-bottom:14px !important;
  font-weight:900 !important;
}

body:not(.page-index) .site-content > .text-content p,
body:not(.page-index) .site-content > .text-content li,
body:not(.page-index) .site-content > main > .text-content p,
body:not(.page-index) .site-content > main > .text-content li,
body:not(.page-index) .site-content .store-text.text-content p,
body:not(.page-index) .site-content .store-text.text-content li{
  color:#d1d8e3 !important;
  line-height:1.82 !important;
  font-size:1rem !important;
  font-weight:600 !important;
}

body:not(.page-index) .site-content > .text-content a,
body:not(.page-index) .site-content > main > .text-content a,
body:not(.page-index) .site-content .store-text.text-content a{
  color:#33CFFF !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
}

body:not(.page-index) .site-content > .text-content strong,
body:not(.page-index) .site-content > main > .text-content strong,
body:not(.page-index) .site-content .store-text.text-content strong{
  color:#fff !important;
  font-weight:900 !important;
}

/* Keep category/membership descriptions from getting accidentally boxed too heavily */
body.page-index .store-text.text-content,
body.page-boulevard-home .store-text.text-content{
  padding:inherit !important;
  background:inherit !important;
  border:inherit !important;
  box-shadow:inherit !important;
}

/* Make every main Boulevard box interactive */
:is(
  .blvd-policy-card,
  .blvd-sidebar-card,
  .blvd-info-card,
  .blvd-category-card,
  .blvd-product-card,
  .store-product,
  .category-header,
  .store-category-tiered-header,
  .blvd-home-description,
  .blvd-home-hero,
  .blvd-footer-inner,
  .basket,
  .popup-content,
  body:not(.page-index) .site-content > .text-content,
  body:not(.page-index) .site-content > main > .text-content,
  body:not(.page-index) .site-content .store-text.text-content
){
  transition:
    transform .24s ease,
    border-color .24s ease,
    box-shadow .24s ease,
    background .24s ease,
    filter .24s ease !important;
}

:is(
  .blvd-policy-card,
  .blvd-sidebar-card,
  .blvd-info-card,
  .blvd-category-card,
  .blvd-product-card,
  .store-product,
  .category-header,
  .store-category-tiered-header,
  .blvd-home-description,
  .blvd-home-hero,
  .basket,
  .popup-content,
  body:not(.page-index) .site-content > .text-content,
  body:not(.page-index) .site-content > main > .text-content,
  body:not(.page-index) .site-content .store-text.text-content
):hover{
  transform:translateY(-4px) !important;
  border-color:rgba(51,207,255,.28) !important;
  box-shadow:
    0 0 34px rgba(51,207,255,.08),
    0 28px 85px rgba(0,0,0,.50) !important;
}

/* Policy cards: force them to display as proper two-column cards */
.blvd-policy-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:28px !important;
  margin-top:40px !important;
  margin-bottom:34px !important;
  width:100% !important;
}

.blvd-policy-card{
  position:relative !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  min-height:285px !important;
  padding:32px !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at top right, rgba(51,207,255,.10), transparent 42%),
    linear-gradient(135deg, rgba(13,18,28,.96), rgba(7,10,18,.98)) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.025) inset,
    0 24px 75px rgba(0,0,0,.42) !important;
  backdrop-filter:blur(16px) !important;
}

.blvd-policy-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:linear-gradient(180deg, rgba(255,255,255,.035), transparent 45%) !important;
  z-index:0 !important;
}

.blvd-policy-card > *{
  position:relative !important;
  z-index:1 !important;
}

.blvd-policy-icon{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:44px !important;
  height:44px !important;
  margin-bottom:18px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.075) !important;
  font-size:20px !important;
}

.blvd-policy-card h3{
  margin:0 0 16px !important;
  font-size:1.75rem !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:-.045em !important;
}

.blvd-policy-card p{
  margin:0 0 28px !important;
  color:rgba(255,255,255,.74) !important;
  font-size:.98rem !important;
  line-height:1.75 !important;
  font-weight:500 !important;
}

.blvd-policy-card strong{
  color:#fff !important;
  font-weight:900 !important;
}

.blvd-policy-btn{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height:54px !important;
  margin-top:auto !important;
  padding:14px 18px !important;
  border-radius:17px !important;
  font-size:.92rem !important;
  font-weight:900 !important;
  text-decoration:none !important;
}

.blvd-refund-card{
  background:
    radial-gradient(circle at top right, rgba(255,64,72,.10), transparent 42%),
    linear-gradient(135deg, rgba(13,18,28,.96), rgba(7,10,18,.98)) !important;
}

.blvd-refund-card .blvd-policy-icon,
.blvd-refund-card h3{
  color:#ff4d57 !important;
}

.blvd-refund-card .blvd-policy-btn{
  color:#ff4d57 !important;
  border:1px solid rgba(255,77,87,.55) !important;
  background:linear-gradient(180deg, rgba(255,77,87,.11), rgba(255,77,87,.04)) !important;
}

.blvd-privacy-card .blvd-policy-icon,
.blvd-privacy-card h3{
  color:#33CFFF !important;
}

.blvd-privacy-card .blvd-policy-btn{
  color:#33CFFF !important;
  border:1px solid rgba(51,207,255,.55) !important;
  background:linear-gradient(180deg, rgba(51,207,255,.11), rgba(51,207,255,.04)) !important;
}

@media(max-width:900px){
  .blvd-policy-grid{
    grid-template-columns:1fr !important;
  }

  .blvd-policy-card{
    min-height:auto !important;
    padding:24px !important;
  }

  body:not(.page-index) .site-content > .text-content,
  body:not(.page-index) .site-content > main > .text-content,
  body:not(.page-index) .site-content .store-text.text-content{
    padding:28px !important;
    border-radius:26px !important;
  }
}
.blvd-sale-card{
  padding:22px;
  border-radius:26px;
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
  border:1px solid rgba(51,207,255,.22);
  box-shadow:0 24px 70px rgba(0,0,0,.38);
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.blvd-sale-card:hover{
  transform:translateY(-4px);
  border-color:rgba(51,207,255,.45);
  box-shadow:0 28px 85px rgba(51,207,255,.12);
}

.blvd-sale-image{
  width:100%;
  height:190px;
  object-fit:cover;
  object-position:center;
  border-radius:18px;
  margin:14px 0 18px;
  border:1px solid rgba(51,207,255,.24);
}

.blvd-sale-card h3{
  margin:0 0 10px;
  color:#fff;
  font-size:1.35rem;
  font-weight:900;
}

.blvd-sale-card p{
  color:#9aa6b4;
  line-height:1.55;
  font-size:.9rem;
}

.blvd-sale-price{
  margin:18px 0;
  color:#fff;
  font-size:1.55rem;
  font-weight:900;
}

.blvd-sale-price span{
  color:#7f8997;
  font-size:.85rem;
}

.blvd-sale-btn{
  width:100%;
}

/* =========================================================
   BOULEVARD SALE OF THE MONTH - FINAL SIDEBAR FIX
   Paste this at the very bottom of styles.css if copying manually.
========================================================= */

.blvd-sale-card{
  position:relative !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
  margin-top:0 !important;
  padding:28px !important;
  border-radius:26px !important;
  background:
    radial-gradient(circle at top right, rgba(51,207,255,.14), transparent 45%),
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018)) !important;
  border:1px solid rgba(51,207,255,.22) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.38) !important;
  backdrop-filter:blur(14px) !important;
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease !important;
}

.blvd-sale-card:hover{
  transform:translateY(-4px) !important;
  border-color:rgba(51,207,255,.45) !important;
  box-shadow:0 28px 85px rgba(51,207,255,.12), 0 24px 70px rgba(0,0,0,.48) !important;
}

.blvd-sale-card .blvd-eyebrow{
  margin-bottom:0 !important;
  line-height:1.2 !important;
}

.blvd-sale-media,
.blvd-sale-image-wrap{
  width:100% !important;
  margin:0 !important;
  overflow:hidden !important;
  border-radius:18px !important;
  border:1px solid rgba(51,207,255,.24) !important;
  background:rgba(255,255,255,.04) !important;
}

.blvd-sale-media img,
.blvd-sale-image{
  display:block !important;
  width:100% !important;
  height:165px !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:0 !important;
  margin:0 !important;
  transition:transform .35s ease, filter .35s ease !important;
}

.blvd-sale-card:hover .blvd-sale-media img,
.blvd-sale-card:hover .blvd-sale-image{
  transform:scale(1.04) !important;
  filter:brightness(1.08) !important;
}

.blvd-sale-card h3{
  margin:0 !important;
  color:#fff !important;
  font-size:1.75rem !important;
  line-height:1.05 !important;
  font-weight:900 !important;
  letter-spacing:-.055em !important;
}

.blvd-sale-card p{
  margin:0 !important;
  color:#9aa6b4 !important;
  line-height:1.7 !important;
  font-size:.95rem !important;
  font-weight:600 !important;
}

.blvd-sale-footer,
.blvd-sale-price{
  display:flex !important;
  align-items:flex-end !important;
  gap:7px !important;
  margin:0 !important;
  color:#fff !important;
  line-height:1 !important;
}

.blvd-sale-footer strong,
.blvd-sale-price strong,
.blvd-sale-price{
  color:#fff !important;
  font-size:1.65rem !important;
  font-weight:900 !important;
  letter-spacing:-.04em !important;
}

.blvd-sale-footer span,
.blvd-sale-price span{
  color:#7f8997 !important;
  font-size:.82rem !important;
  font-weight:800 !important;
  margin-bottom:2px !important;
  text-transform:uppercase !important;
}

.blvd-sale-btn{
  width:100% !important;
  min-height:50px !important;
  margin-top:4px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:14px 18px !important;
  border-radius:17px !important;
  font-size:.95rem !important;
  font-weight:900 !important;
  line-height:1 !important;
}

@media(max-width:960px){
  .blvd-sale-card{
    padding:24px !important;
  }

  .blvd-sale-media img,
  .blvd-sale-image{
    height:190px !important;
  }
}

/* =========================================================
   BOULEVARD SIDEBAR SPACING + SALE CARD FINAL FIX
========================================================= */

.blvd-sidebar,
.store-sidebar.blvd-sidebar{
  display:flex !important;
  flex-direction:column !important;
  gap:28px !important;
  width:290px !important;
}

.blvd-sidebar-card,
.blvd-sale-card{
  width:100% !important;
  padding:28px !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at top right, rgba(51,207,255,.10), transparent 42%),
    linear-gradient(180deg, rgba(10,14,22,.96), rgba(4,7,12,.98)) !important;
  border:1px solid rgba(51,207,255,.14) !important;
  box-shadow:
    0 0 35px rgba(0,140,255,.08),
    0 22px 70px rgba(0,0,0,.36),
    inset 0 1px 0 rgba(255,255,255,.03) !important;
  backdrop-filter:blur(14px) !important;
}

.blvd-sale-card{
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  gap:22px !important;
}

.blvd-sale-media{
  width:100% !important;
  margin:0 !important;
  overflow:hidden !important;
  border-radius:20px !important;
  border:1px solid rgba(51,207,255,.20) !important;
  background:rgba(255,255,255,.035) !important;
}

.blvd-sale-media img{
  display:block !important;
  width:100% !important;
  height:178px !important;
  object-fit:cover !important;
  object-position:center !important;
  margin:0 !important;
  border-radius:0 !important;
}

.blvd-sale-content{
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
}

.blvd-sale-card h3{
  margin:0 !important;
  color:#fff !important;
  font-size:2rem !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:-.055em !important;
}

.blvd-sale-card p{
  margin:0 !important;
  color:#9aa6b4 !important;
  font-size:.96rem !important;
  line-height:1.75 !important;
  font-weight:600 !important;
}

.blvd-sale-footer{
  display:flex !important;
  align-items:flex-end !important;
  gap:8px !important;
  margin:0 !important;
}

.blvd-sale-footer strong{
  color:#fff !important;
  font-size:2rem !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:-.045em !important;
}

.blvd-sale-footer span{
  color:#7f8997 !important;
  font-size:.82rem !important;
  font-weight:900 !important;
  padding-bottom:4px !important;
  text-transform:uppercase !important;
}

.blvd-sale-btn{
  width:100% !important;
  min-height:56px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:15px 18px !important;
  border-radius:18px !important;
  font-size:.96rem !important;
  font-weight:900 !important;
  line-height:1 !important;
}

@media(max-width:960px){
  .blvd-sidebar,
  .store-sidebar.blvd-sidebar{
    width:100% !important;
  }

  .blvd-sale-media img{
    height:220px !important;
  }
}


/* =========================================================
   BOULEVARD RP FINAL HEADER FIX - NO SNOW
   Aligns header panels with the navigation container below
========================================================= */

.blvd-connect-hero{
  position:relative !important;

  width:min(100%, 1280px) !important;
  max-width:1280px !important;

  margin:28px auto 55px !important;
  padding:42px 0 36px !important;

  display:grid !important;
  grid-template-columns:280px minmax(0, 1fr) 280px !important;
  align-items:center !important;
  justify-content:center !important;
  gap:36px !important;

  overflow:visible !important;
  box-sizing:border-box !important;
  z-index:5 !important;
}

/* Remove snow/glitter completely */
.blvd-snow{
  display:none !important;
}

/* Centre logo */
.blvd-logo-wrap{
  grid-column:2 !important;
  justify-self:center !important;
  align-self:center !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  width:100% !important;
  min-width:0 !important;
  z-index:4 !important;
}

.blvd-animated-logo{
  width:760px !important;
  max-width:min(760px, 100%) !important;
  height:auto !important;
  object-fit:contain !important;

  filter:
    drop-shadow(0 0 18px rgba(51,207,255,.30))
    drop-shadow(0 0 54px rgba(51,207,255,.18)) !important;

  animation:blvdLogoFloat 4.5s ease-in-out infinite !important;
  transition:transform .3s ease, filter .3s ease !important;
}

.blvd-animated-logo:hover{
  transform:scale(1.035) !important;
  filter:
    drop-shadow(0 0 24px rgba(51,207,255,.45))
    drop-shadow(0 0 74px rgba(51,207,255,.25)) !important;
}

@keyframes blvdLogoFloat{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-8px); }
}

/* Header connect panels */
.blvd-connect-panel{
  position:relative !important;
  z-index:4 !important;

  display:flex !important;
  align-items:center !important;
  gap:14px !important;

  height:78px !important;
  min-height:78px !important;
  padding:14px 18px !important;

  border-radius:22px !important;
  background:
    linear-gradient(135deg, rgba(7,16,30,.94), rgba(0,25,42,.86)) !important;

  border:1px solid rgba(51,207,255,.23) !important;
  box-shadow:
    0 0 32px rgba(51,207,255,.07),
    inset 0 0 28px rgba(255,255,255,.018) !important;
  backdrop-filter:blur(15px) !important;

  overflow:hidden !important;
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease !important;
}

.blvd-connect-panel::before{
  content:"" !important;
  position:absolute !important;
  top:0 !important;
  left:-120% !important;
  width:70% !important;
  height:100% !important;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.10), transparent) !important;
  transition:.75s ease !important;
}

.blvd-connect-panel:hover::before{
  left:130% !important;
}

.blvd-connect-panel:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(51,207,255,.48) !important;
  box-shadow:
    0 0 42px rgba(51,207,255,.15),
    inset 0 0 34px rgba(255,255,255,.03) !important;
}

/* Align left/right containers with the navigation container edges */
.blvd-fivem-panel{
  grid-column:1 !important;
  justify-self:start !important;

  width:280px !important;
  max-width:280px !important;
  min-width:280px !important;
}

.blvd-discord-panel{
  grid-column:3 !important;
  justify-self:end !important;

  width:260px !important;
  max-width:260px !important;
  min-width:260px !important;
}

/* Icons */
.blvd-connect-icon{
  width:46px !important;
  height:46px !important;
  min-width:46px !important;
  flex:0 0 46px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  border-radius:15px !important;
  background:
    linear-gradient(180deg, rgba(51,207,255,.12), rgba(0,0,0,.16)) !important;
  border:1px solid rgba(51,207,255,.20) !important;
  box-shadow:
    inset 0 0 18px rgba(255,255,255,.025),
    0 0 20px rgba(51,207,255,.08) !important;

  font-size:18px !important;
  line-height:1 !important;
}

/* Panel text */
.blvd-connect-text{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:5px !important;
  min-width:0 !important;
  flex:1 1 auto !important;
}

.blvd-connect-text strong{
  color:#fff !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
  text-transform:none !important;
  white-space:nowrap !important;
}

.blvd-connect-text small{
  margin:0 !important;
  color:rgba(255,255,255,.70) !important;
  font-size:12px !important;
  line-height:1.1 !important;
  font-weight:700 !important;
}

/* Discord online status - one clean line */
.blvd-discord-status{
  display:flex !important;
  align-items:center !important;
  gap:7px !important;

  white-space:nowrap !important;
  flex-wrap:nowrap !important;
  overflow:visible !important;

  color:rgba(255,255,255,.74) !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:1 !important;
}

/* Blue live light next to online players */
.blvd-discord-status::before{
  content:"" !important;
  display:inline-flex !important;
  width:8px !important;
  height:8px !important;
  min-width:8px !important;
  border-radius:999px !important;
  background:#33CFFF !important;
  box-shadow:
    0 0 8px rgba(51,207,255,.95),
    0 0 16px rgba(51,207,255,.72) !important;
  animation:blvdOnlinePulse 1.8s ease-in-out infinite !important;
}

/* Hide duplicate dot span if header.twig already has one */
.blvd-discord-status .blvd-live-dot{
  display:none !important;
}

.blvd-discord-status span{
  display:inline-flex !important;
  align-items:center !important;
  white-space:nowrap !important;
}

@keyframes blvdOnlinePulse{
  0%,100%{ opacity:.65; transform:scale(1); }
  50%{ opacity:1; transform:scale(1.22); }
}

/* Make nav line up to the same 1280px width */
.blvd-navigation .blvd-menu,
.site-navigation .menu{
  max-width:1280px !important;
}

/* Tablet */
@media(max-width:1180px){
  .blvd-connect-hero{
    grid-template-columns:1fr !important;
    gap:24px !important;
    padding:38px 22px !important;
  }

  .blvd-logo-wrap{
    grid-column:auto !important;
    order:1 !important;
  }

  .blvd-fivem-panel{
    grid-column:auto !important;
    order:2 !important;
  }

  .blvd-discord-panel{
    grid-column:auto !important;
    order:3 !important;
  }

  .blvd-connect-panel,
  .blvd-fivem-panel,
  .blvd-discord-panel{
    justify-self:center !important;
    width:100% !important;
    max-width:340px !important;
    min-width:0 !important;
  }

  .blvd-animated-logo{
    width:520px !important;
    max-width:min(520px, 100%) !important;
  }
}

/* Mobile */
@media(max-width:640px){
  .blvd-connect-hero{
    padding:28px 18px !important;
    margin-bottom:34px !important;
  }

  .blvd-animated-logo{
    width:360px !important;
    max-width:100% !important;
  }

  .blvd-connect-panel{
    height:74px !important;
    min-height:74px !important;
  }
}
/* =========================================================
   BOULEVARD RP DROPDOWN CATEGORY FIX
========================================================= */

.site-navigation .menu-sub {
  background: rgba(5, 8, 14, 0.96) !important;
  border: 1px solid rgba(65, 196, 195, 0.18) !important;
  border-radius: 0 0 18px 18px !important;
  overflow: hidden !important;
  padding: 6px !important;
}

.site-navigation .menu-sub .menu-link {
  color: #d9e6ee !important;
  background: transparent !important;
  padding: 10px 16px !important;
  line-height: 1.2 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  text-align: center !important;
  border-radius: 6px !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.65) !important;
}

.site-navigation .menu-sub .menu-link:hover,
.site-navigation .menu-sub .menu-link.link-active,
.site-navigation .menu-sub .menu-link.active {
  color: #ffffff !important;
  background: #41C4C3 !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.45) !important;
}
.membership-comparison {
  margin-top: 40px;
  padding: 28px;
  background: rgba(5, 8, 14, 0.92);
  border: 1px solid rgba(65, 196, 195, 0.16);
  border-radius: 18px;
}

.membership-comparison h2 {
  margin-bottom: 20px;
  font-size: 28px;
  font-weight: 900;
  color: #ffffff;
}

.membership-comparison table {
  width: 100%;
  border-collapse: collapse;
  overflow: hidden;
}

.membership-comparison th,
.membership-comparison td {
  padding: 16px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  text-align: center;
  color: #d9e6ee;
}

.membership-comparison th {
  color: #41C4C3;
  font-weight: 900;
}

.membership-comparison td:first-child,
.membership-comparison th:first-child {
  text-align: left;
  color: #ffffff;
  font-weight: 800;
}

/* =========================================================
   BOULEVARD RP SAFE FINAL FIXES
   - Removes the duplicated bottom support card only
   - Keeps categories/product sections visible
========================================================= */

.blvd-support-banner{
  display:none !important;
}

.blvd-support-content{
  display:none !important;
}

/* =========================================================
   BOULEVARD RP HOME HERO POLISH + DISCORD BUTTON FIX
   Safe targeted selectors only
========================================================= */

/* Optional: use these classes for the 3 mini cards inside your homepage hero */
.blvd-home-perks{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:16px !important;
  margin-top:34px !important;
  width:100% !important;
  max-width:900px !important;
}

.blvd-home-perk{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  padding:18px 20px !important;
  border-radius:18px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018)) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 20px 55px rgba(0,0,0,.32) !important;
}

.blvd-home-perk-icon{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 44px !important;
  width:44px !important;
  height:44px !important;
  border-radius:999px !important;
  color:#33CFFF !important;
  font-size:20px !important;
  background:rgba(51,207,255,.10) !important;
  border:1px solid rgba(51,207,255,.16) !important;
  box-shadow:0 0 26px rgba(51,207,255,.16) !important;
}

.blvd-home-perk strong{
  display:block !important;
  margin:0 0 4px !important;
  color:#ffffff !important;
  font-size:.96rem !important;
  font-weight:900 !important;
  letter-spacing:-.03em !important;
}

.blvd-home-perk span{
  display:block !important;
  margin:0 !important;
  color:rgba(255,255,255,.62) !important;
  font-size:.82rem !important;
  line-height:1.45 !important;
  font-weight:500 !important;
}

@media(max-width:960px){
  .blvd-home-perks{
    grid-template-columns:1fr !important;
  }
}

/* White Discord icon on the Join Discord sidebar button only */
.blvd-sidebar-card a[href*="discord"].blvd-sidebar-btn,
.blvd-sidebar-card .blvd-sidebar-btn[href*="discord"]{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
}

.blvd-sidebar-card a[href*="discord"].blvd-sidebar-btn::before,
.blvd-sidebar-card .blvd-sidebar-btn[href*="discord"]::before{
  content:"" !important;
  display:inline-block !important;
  flex:0 0 18px !important;
  width:18px !important;
  height:18px !important;
  background:#ffffff !important;
  -webkit-mask:url("https://cdn.jsdelivr.net/npm/simple-icons@v11/icons/discord.svg") center / contain no-repeat !important;
  mask:url("https://cdn.jsdelivr.net/npm/simple-icons@v11/icons/discord.svg") center / contain no-repeat !important;
}

/* =========================================================
   BOULEVARD RP HERO FEATURE CARDS - CLEANER VERSION
========================================================= */

.blvd-home-actions {
  margin-top: 26px;
}

/* Membership button */
.blvd-membership-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;

  height: 48px !important;
  padding: 0 22px !important;

  border-radius: 14px !important;

  background: linear-gradient(
    135deg,
    #35d8ff 0%,
    #17b5eb 100%
  ) !important;

  color: #02070d !important;

  font-size: 14px !important;
  font-weight: 900 !important;

  box-shadow:
    0 0 18px rgba(53,216,255,0.22),
    inset 0 1px 0 rgba(255,255,255,0.24);

  transition: all .22s ease !important;
}

.blvd-membership-btn:hover {
  transform: translateY(-2px);
  box-shadow:
    0 0 24px rgba(53,216,255,0.34),
    inset 0 1px 0 rgba(255,255,255,0.24);
}

.blvd-membership-btn::after {
  content: "›";
  font-size: 22px;
  line-height: 1;
  transform: translateY(-1px);
}

/* Cleaner hero feature cards */
.blvd-hero-features {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;

  margin-top: 26px;
  max-width: 720px;
}

.blvd-feature-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 10px;

  min-height: 112px;
  padding: 18px;

  background: rgba(6, 12, 20, 0.62);
  border: 1px solid rgba(65,196,195,0.16);
  border-radius: 16px;
  backdrop-filter: blur(10px);

  transition:
    transform .22s ease,
    border-color .22s ease,
    background .22s ease;
}

.blvd-feature-card:hover {
  transform: translateY(-3px);
  border-color: rgba(65,196,195,0.34);
  background: rgba(8, 15, 25, 0.78);
}

.blvd-feature-icon {
  width: 38px;
  height: 38px;
  min-width: 38px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 12px;
  background: rgba(35,203,255,0.12);
  font-size: 18px;
}

.blvd-feature-copy h3 {
  margin: 0 0 6px;
  color: #ffffff;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.15;
}

.blvd-feature-copy p {
  margin: 0;
  color: #c6d2db;
  font-size: 11px;
  line-height: 1.45;
}

/* Responsive */
@media (max-width: 960px) {
  .blvd-hero-features {
    grid-template-columns: 1fr;
    max-width: 100%;
  }
}

/* =========================================================
   BOULEVARD RP PREMIUM REFINEMENT UPDATE
========================================================= */

/* Tighten the spacing between the top logo/connect area and navigation */
.blvd-connect-hero {
  margin-bottom: 28px !important;
}

/* Give the main navigation a slightly more premium weight */
.site-navigation .menu {
  min-height: 62px !important;
}

@media (width > 960px) {
  .site-navigation .menu {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }
}

/* Improve readability inside the homepage hero */
.blvd-home-hero p,
.blvd-home-hero-content p {
  max-width: 560px !important;
}

/* Make the homepage hero feel cleaner and more balanced */
.blvd-home-hero-content {
  max-width: 760px !important;
}

.blvd-home-actions {
  margin-top: 26px !important;
}

/* Polished View Memberships button */
.blvd-membership-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;

  height: 48px !important;
  padding: 0 22px !important;

  border-radius: 14px !important;

  background: linear-gradient(
    135deg,
    #35d8ff 0%,
    #17b5eb 100%
  ) !important;

  color: #02070d !important;

  font-size: 14px !important;
  font-weight: 900 !important;

  box-shadow:
    0 0 18px rgba(53,216,255,0.22),
    inset 0 1px 0 rgba(255,255,255,0.24) !important;

  transition: all .22s ease !important;
}

.blvd-membership-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow:
    0 0 24px rgba(53,216,255,0.34),
    inset 0 1px 0 rgba(255,255,255,0.24) !important;
}

.blvd-membership-btn::after {
  content: "›";
  font-size: 22px;
  line-height: 1;
  transform: translateY(-1px);
}

/* Cleaner hero feature cards under View Memberships */
.blvd-hero-features {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;

  margin-top: 26px !important;
  max-width: 720px !important;
}

.blvd-feature-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 10px !important;

  min-height: 112px !important;
  padding: 18px !important;

  background: rgba(6, 12, 20, 0.62) !important;
  border: 1px solid rgba(65,196,195,0.16) !important;
  border-radius: 16px !important;
  backdrop-filter: blur(10px) !important;

  transition:
    transform .22s ease,
    border-color .22s ease,
    background .22s ease,
    box-shadow .22s ease !important;
}

.blvd-feature-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(65,196,195,0.34) !important;
  background: rgba(8, 15, 25, 0.78) !important;
  box-shadow: 0 0 24px rgba(53,216,255,0.12) !important;
}

.blvd-feature-icon {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  border-radius: 12px !important;
  background: rgba(35,203,255,0.12) !important;
  font-size: 18px !important;
}

.blvd-feature-copy h3 {
  margin: 0 0 6px !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
}

.blvd-feature-copy p {
  margin: 0 !important;
  color: #c6d2db !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}

/* Bring sidebar widgets closer to the same premium glass style */
.store-sidebar .widget,
.store-sidebar > * {
  backdrop-filter: blur(14px) !important;
  border-color: rgba(65,196,195,0.18) !important;
}

/* Subtle premium hover glow across key cards */
.blvd-feature-card:hover,
.blvd-policy-card:hover,
.store-sidebar .widget:hover,
.store-product:hover,
.blvd-category-card:hover {
  box-shadow: 0 0 24px rgba(53,216,255,0.12) !important;
}

/* Slightly polish policy cards without changing layout */
.blvd-policy-card {
  transition:
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease !important;
}

.blvd-policy-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(65,196,195,0.22) !important;
}

/* Mobile refinements */
@media (max-width: 960px) {
  .blvd-hero-features {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
  }

  .blvd-connect-hero {
    margin-bottom: 20px !important;
  }

  .site-navigation .menu {
    min-height: auto !important;
  }
}


/* =========================================================
   BOULEVARD RP DISCORD ICON FIX - FINAL
   Fixes empty Discord icon box in the top header.
========================================================= */

.blvd-discord-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;

  border-radius: 14px !important;

  background: rgba(35, 203, 255, 0.12) !important;
  border: 1px solid rgba(65, 196, 195, 0.12) !important;

  color: #ffffff !important;

  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1 !important;

  background-image: none !important;
}

.blvd-discord-icon::before {
  content: "💬" !important;
  display: block !important;
  color: #ffffff !important;
  font-size: 17px !important;
  line-height: 1 !important;
}

.blvd-discord-icon::after {
  content: none !important;
}
.blvd-discord-icon {
  color: #ffffff !important;
  background: rgba(35,203,255,0.12) !important;
}

.blvd-discord-icon::before {
  content: none !important;
}

.blvd-discord-icon svg {
  display: block;
  color: #ffffff;
}
/* =========================================================
   BOULEVARD RP FINAL WIDTH + ALIGNMENT FIX
   Keeps the previous homepage container sizing, but aligns
   the top header row, nav bar, sidebar, hero and policy cards.
========================================================= */

:root {
  --blvd-aligned-width: 1480px;
  --blvd-desktop-gutter: 96px;
  --blvd-mobile-gutter: 32px;
}

@media (min-width: 961px) {

  /* One shared desktop width for header, nav and page content */
  .site-header-top,
  .blvd-connect-hero,
  .site-navigation .menu,
  .site-content.boulevard-layout {
    width: min(var(--blvd-aligned-width), calc(100vw - var(--blvd-desktop-gutter))) !important;
    max-width: var(--blvd-aligned-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  /* Remove the extra inner padding that was making the main containers sit inward */
  .site-content.boulevard-layout {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Keep the main layout size clean and balanced */
  body:not(.is-sidebar-bottom) .site-content-widgets {
    grid-template-columns: var(--sidebar-width) minmax(0, 1fr) !important;
    gap: 32px !important;
    align-items: start !important;
  }

  .store-sidebar {
    width: auto !important;
    min-width: 0 !important;
  }

  /* Header row aligned to the same width as the nav/content */
  .blvd-connect-hero {
    padding-left: 0 !important;
    padding-right: 0 !important;
    grid-template-columns: 280px minmax(0, 1fr) 280px !important;
    gap: 36px !important;
    align-items: center !important;
  }

  .blvd-fivem-panel {
    justify-self: start !important;
  }

  .blvd-discord-panel {
    justify-self: end !important;
  }

  .blvd-logo-wrap {
    justify-self: center !important;
  }

  /* Nav bar uses the same outer width as the content */
  .site-navigation .menu {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  /* Restore the previous homepage container feel */
  .blvd-home-hero {
    max-width: 100% !important;
    min-height: 520px !important;
  }

  .blvd-home-hero-content {
    max-width: 760px !important;
  }

  .blvd-home-hero h1 {
    font-size: clamp(48px, 4vw, 72px) !important;
    line-height: 0.95 !important;
  }

  .blvd-home-hero p,
  .blvd-home-hero-content p {
    max-width: 620px !important;
    font-size: 14px !important;
  }

  .blvd-hero-features {
    max-width: 760px !important;
  }

  .blvd-policy-grid {
    width: 100% !important;
    gap: 24px !important;
  }
}

/* Keep the Discord SVG clean and stop any older speech-bubble pseudo icon */
.blvd-discord-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  background: rgba(35,203,255,0.12) !important;
  background-image: none !important;
}

.blvd-discord-icon::before,
.blvd-discord-icon::after {
  content: none !important;
  display: none !important;
}

.blvd-discord-icon svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  color: #ffffff !important;
  fill: currentColor !important;
}

@media (max-width: 960px) {
  .site-header-top,
  .blvd-connect-hero,
  .site-navigation .menu,
  .site-content.boulevard-layout,
  .store-home {
    width: calc(100% - var(--blvd-mobile-gutter)) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .blvd-connect-hero {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  body:not(.is-sidebar-bottom) .site-content-widgets {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
  }

  .blvd-hero-features {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
  }
}

/* =========================================================
   BOULEVARD RP FINAL 1440P REFINEMENTS
   - Slightly tighter hero spacing
   - Cleaner feature card height
   - More balanced hero headline size
========================================================= */

@media (min-width: 961px) {
  .blvd-home {
    margin-top: 20px !important;
  }

  .blvd-feature-card {
    min-height: 120px !important;
  }

  .blvd-home-hero h1 {
    font-size: clamp(54px, 4vw, 76px) !important;
    line-height: 0.94 !important;
  }
}

/* =========================================================
   BOULEVARD RP SUBTLE CINEMATIC GRAIN OVERLAY
========================================================= */

body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 9999;
  opacity: 0.08;
  background-image:
    radial-gradient(circle at 20% 30%, rgba(255,255,255,0.08) 0 1px, transparent 1px),
    radial-gradient(circle at 70% 80%, rgba(255,255,255,0.06) 0 1px, transparent 1px);
  background-size: 90px 90px, 130px 130px;
  animation: blvd-grain 12s linear infinite;
}

@keyframes blvd-grain {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-30px, 20px, 0);
  }
}

/* =========================================================
   BOULEVARD RP PACKAGE DETAIL PAGE - FINAL ALIGNMENT FIX
   - Package/detail pages only
   - Keeps homepage/index untouched
   - Aligns package page content with the navigation/header width
   - Keeps image + text clean, spaced and balanced
========================================================= */

@media (min-width: 961px) {

  /* Package pages need to use the same outer width as the nav/header.
     The previous selector only targeted .boulevard-layout, which package pages
     do not always use, so this safely targets non-index pages only. */
  body:not(.page-index) .site-content {
    width: min(var(--blvd-aligned-width), calc(100vw - var(--blvd-desktop-gutter))) !important;
    max-width: var(--blvd-aligned-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* Keep the package page sidebar + package content aligned as one full row */
  body:not(.page-index):not(.is-sidebar-bottom) .site-content-widgets {
    display: grid !important;
    grid-template-columns: var(--sidebar-width) minmax(0, 1fr) !important;
    gap: 32px !important;
    align-items: start !important;
  }

  body:not(.page-index) .store-sidebar {
    width: auto !important;
    min-width: 0 !important;
  }

  body:not(.page-index) .store-home,
  body:not(.page-index) .store-category,
  body:not(.page-index) .store-product-full,
  body:not(.page-index) .store-product-options {
    min-width: 0 !important;
  }

  /* Main package card fills the right-hand column so its edge lines up properly */
  body:not(.page-index) .store-product-full {
    display: grid !important;
    grid-template-columns: minmax(400px, 520px) minmax(0, 1fr) !important;
    grid-auto-rows: auto !important;
    column-gap: 52px !important;
    row-gap: 0 !important;
    align-items: start !important;
    justify-content: stretch !important;

    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 42px !important;

    background: rgba(5, 10, 18, 0.66) !important;
    border: 1px solid rgba(65, 196, 195, 0.18) !important;
    border-radius: 28px !important;
    backdrop-filter: blur(14px) !important;
    box-shadow: 0 0 34px rgba(0, 0, 0, 0.18) !important;
    overflow: hidden !important;
  }

  /* Left media column */
  body:not(.page-index) .store-product-full > .image-link,
  body:not(.page-index) .store-product-full > .image,
  body:not(.page-index) .store-product-full > .media-slider {
    grid-column: 1 !important;
    grid-row: 1 / span 5 !important;
    align-self: start !important;
    justify-self: stretch !important;

    width: 100% !important;
    max-width: 520px !important;
    margin: 0 !important;
  }

  body:not(.page-index) .store-product-full > .image-link {
    display: block !important;
  }

  body:not(.page-index) .store-product-full > .image-link .image,
  body:not(.page-index) .store-product-full > .image,
  body:not(.page-index) .store-product-full .media-slider .slide-image {
    width: 100% !important;
    max-width: 520px !important;
    height: auto !important;
    min-height: unset !important;
    object-fit: cover !important;
    border-radius: 22px !important;
    border: 1px solid rgba(35, 203, 255, 0.35) !important;
    overflow: hidden !important;
  }

  /* Right content column */
  body:not(.page-index) .store-product-full > .product-title,
  body:not(.page-index) .store-product-full > .price,
  body:not(.page-index) .store-product-full > .actions,
  body:not(.page-index) .store-product-full > .descr,
  body:not(.page-index) .store-product-full > .description,
  body:not(.page-index) .store-product-options {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: 640px !important;
    min-width: 0 !important;
    justify-self: start !important;
  }

  body:not(.page-index) .store-product-full > .product-title,
  body:not(.page-index) .store-product-options .product-title,
  body:not(.page-index) .store-product-options h1 {
    grid-row: 1 !important;
    margin: 0 0 22px !important;
    padding: 0 !important;
    font-size: 32px !important;
    line-height: 1.12 !important;
    font-weight: 900 !important;
    color: #ffffff !important;
  }

  body:not(.page-index) .store-product-full > .price,
  body:not(.page-index) .store-product-options .price {
    grid-row: 2 !important;
    margin: 0 0 20px !important;
    padding: 0 !important;
    font-size: 30px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    color: #ffffff !important;
  }

  body:not(.page-index) .store-product-full > .price strong,
  body:not(.page-index) .store-product-options .price strong {
    font-size: 30px !important;
    font-weight: 900 !important;
  }

  body:not(.page-index) .store-product-full > .actions,
  body:not(.page-index) .store-product-options .actions {
    grid-row: 3 !important;
    position: static !important;
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 12px !important;

    margin: 0 0 36px !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 640px !important;
    overflow: visible !important;
  }

  body:not(.page-index) .store-product-full > .actions .btn-primary,
  body:not(.page-index) .store-product-full > .actions .btn-secondary,
  body:not(.page-index) .store-product-full > .actions .btn-tertiary,
  body:not(.page-index) .store-product-options .actions .btn-primary,
  body:not(.page-index) .store-product-options .actions .btn-secondary,
  body:not(.page-index) .store-product-options .actions .btn-tertiary {
    width: 280px !important;
    height: 56px !important;
    line-height: 56px !important;
    border-radius: 15px !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    text-align: center !important;
  }

  body:not(.page-index) .store-product-full > .descr,
  body:not(.page-index) .store-product-full > .description,
  body:not(.page-index) .store-product-options .descr,
  body:not(.page-index) .store-product-options .description {
    grid-row: 4 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 16px !important;
    line-height: 1.75 !important;
    color: #c8d4dc !important;
  }

  body:not(.page-index) .store-product-full > .descr h2,
  body:not(.page-index) .store-product-full > .descr h3,
  body:not(.page-index) .store-product-full > .description h2,
  body:not(.page-index) .store-product-full > .description h3,
  body:not(.page-index) .store-product-options .descr h2,
  body:not(.page-index) .store-product-options .descr h3,
  body:not(.page-index) .store-product-options .description h2,
  body:not(.page-index) .store-product-options .description h3 {
    margin: 38px 0 20px !important;
    font-size: 26px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    color: #ffffff !important;
    letter-spacing: 0.02em !important;
  }

  body:not(.page-index) .store-product-full > .descr p,
  body:not(.page-index) .store-product-full > .description p,
  body:not(.page-index) .store-product-options .descr p,
  body:not(.page-index) .store-product-options .description p {
    margin: 0 0 22px !important;
    line-height: 1.8 !important;
  }

  body:not(.page-index) .store-product-full > .descr ul,
  body:not(.page-index) .store-product-full > .description ul,
  body:not(.page-index) .store-product-options .descr ul,
  body:not(.page-index) .store-product-options .description ul {
    margin: 18px 0 26px !important;
    padding-left: 0 !important;
  }

  body:not(.page-index) .store-product-full > .descr li,
  body:not(.page-index) .store-product-full > .description li,
  body:not(.page-index) .store-product-options .descr li,
  body:not(.page-index) .store-product-options .description li {
    display: block !important;
    margin-bottom: 18px !important;
    line-height: 1.75 !important;
  }

  /* Back button sits under the package card, centred to the main content column */
  body:not(.page-index) .back-to-top {
    margin: 28px auto 0 !important;
  }
}

@media (max-width: 960px) {
  body:not(.page-index) .store-product-full {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 32px !important;
    padding: 28px !important;
    border-radius: 22px !important;
  }

  body:not(.page-index) .store-product-full > .image-link,
  body:not(.page-index) .store-product-full > .image,
  body:not(.page-index) .store-product-full > .media-slider,
  body:not(.page-index) .store-product-full > .product-title,
  body:not(.page-index) .store-product-full > .price,
  body:not(.page-index) .store-product-full > .actions,
  body:not(.page-index) .store-product-full > .descr,
  body:not(.page-index) .store-product-full > .description,
  body:not(.page-index) .store-product-options {
    grid-column: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body:not(.page-index) .store-product-full > .actions .btn-primary,
  body:not(.page-index) .store-product-full > .actions .btn-secondary,
  body:not(.page-index) .store-product-full > .actions .btn-tertiary,
  body:not(.page-index) .store-product-options .actions .btn-primary,
  body:not(.page-index) .store-product-options .actions .btn-secondary,
  body:not(.page-index) .store-product-options .actions .btn-tertiary {
    width: 100% !important;
  }
}

/* =========================================================
   BOULEVARD RP TRUE FINAL ALIGNMENT PATCH
   Purpose:
   - Keeps the index/homepage design unchanged
   - Lines up sidebar card tops with the main hero/category card tops
   - Keeps package detail page aligned with the same two-column grid
   - Does not remove or override the existing visual styling
========================================================= */

:root {
  --blvd-final-width: 1480px;
  --blvd-final-gutter: 96px;
  --blvd-final-mobile-gutter: 32px;
  --blvd-final-sidebar: 287px;
  --blvd-final-gap: 32px;
}

@media (min-width: 961px) {

  /* One shared outer width for header, nav, content, and footer */
  .site-header-top,
  .blvd-connect-hero,
  .site-navigation .menu,
  .site-content,
  .site-content.boulevard-layout,
  .site-footer-inner {
    width: min(var(--blvd-final-width), calc(100vw - var(--blvd-final-gutter))) !important;
    max-width: var(--blvd-final-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  .site-content,
  .site-content.boulevard-layout {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Force the same 2-column grid everywhere that has a sidebar */
  body:not(.is-sidebar-bottom) .site-content.site-content-widgets,
  body:not(.is-sidebar-bottom) .site-content.boulevard-layout {
    display: grid !important;
    grid-template-columns: var(--blvd-final-sidebar) minmax(0, 1fr) !important;
    gap: var(--blvd-final-gap) !important;
    align-items: start !important;
  }

  body.is-sidebar-right:not(.is-sidebar-bottom) .site-content.site-content-widgets,
  body.is-sidebar-right:not(.is-sidebar-bottom) .site-content.boulevard-layout {
    grid-template-columns: minmax(0, 1fr) var(--blvd-final-sidebar) !important;
  }

  /* Hard reset every sidebar offset added by the original theme/custom patches */
  .site-content-widgets > .store-sidebar,
  .boulevard-layout > .store-sidebar,
  .store-sidebar,
  body:not(.is-sidebar-bottom) .store-sidebar,
  body.page-index .store-sidebar,
  body:has(.store-product-full) .store-sidebar {
    padding-top: 0 !important;
    margin-top: 0 !important;
    transform: none !important;
    align-self: start !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .store-sidebar > *,
  .store-sidebar .widget,
  .store-sidebar .widget-content,
  .store-sidebar .blvd-sidebar-card {
    margin-top: 0 !important;
    transform: none !important;
    width: 100% !important;
  }

  /* Hard reset main column offsets so the first right-side card starts at the same Y position */
  .site-content-widgets > main,
  .site-content-widgets > .store-home,
  .site-content-widgets > .store-category,
  .boulevard-layout > main,
  .boulevard-layout > .store-home,
  .boulevard-layout > .store-category,
  body.page-index .store-home.blvd-home,
  body.page-index main.store-home,
  body:has(.store-product-full) main,
  body:has(.store-product-full) .store-category,
  body:has(.store-product-full) .store-home {
    padding-top: 0 !important;
    margin-top: 0 !important;
    transform: none !important;
    align-self: start !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  .site-content-widgets > main > :first-child,
  .site-content-widgets > .store-home > :first-child,
  .site-content-widgets > .store-category > :first-child,
  .boulevard-layout > main > :first-child,
  .boulevard-layout > .store-home > :first-child,
  .boulevard-layout > .store-category > :first-child,
  body.page-index .blvd-home-hero,
  body:not(.page-index) .category-header,
  body:not(.page-index) .store-category-tiered-header,
  body:not(.page-index) .store-text.text-content:first-child,
  body:not(.page-index) main > .text-content:first-child,
  body:has(.store-product-full) .store-product-full {
    margin-top: 0 !important;
    transform: none !important;
  }

  /* Important: some category/hero cards visually sit high because their section has no top padding.
     This lines their BORDER top with the first sidebar card border without touching internal content. */
  body.page-index .blvd-home-hero,
  body:not(.page-index):not(:has(.store-product-full)) .category-header,
  body:not(.page-index):not(:has(.store-product-full)) .store-category-tiered-header,
  body:not(.page-index):not(:has(.store-product-full)) main > .text-content:first-child,
  body:not(.page-index):not(:has(.store-product-full)) .store-text.text-content:first-child {
    position: relative !important;
    top: 0 !important;
  }

  /* Homepage hero keeps the premium scale */
  body.page-index .blvd-home-hero {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 520px !important;
  }

  body.page-index .blvd-policy-grid {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Package page: keep clean layout, aligned to sidebar top and right column */
  body:has(.store-product-full) .store-product-full {
    display: grid !important;
    grid-template-columns: minmax(420px, 520px) minmax(0, 1fr) !important;
    column-gap: 52px !important;
    row-gap: 0 !important;
    align-items: start !important;
    justify-content: stretch !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 42px !important;
    border-radius: 28px !important;
    background: rgba(5, 10, 18, 0.66) !important;
    border: 1px solid rgba(65, 196, 195, 0.18) !important;
    backdrop-filter: blur(14px) !important;
    box-shadow: 0 0 34px rgba(0, 0, 0, 0.18) !important;
    overflow: hidden !important;
  }

  body:has(.store-product-full) .store-product-full > .image-link,
  body:has(.store-product-full) .store-product-full > .image,
  body:has(.store-product-full) .store-product-full > .media-slider {
    grid-column: 1 !important;
    grid-row: 1 / span 5 !important;
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 !important;
    align-self: start !important;
    justify-self: stretch !important;
  }

  body:has(.store-product-full) .store-product-full > .image-link .image,
  body:has(.store-product-full) .store-product-full > .image,
  body:has(.store-product-full) .store-product-full .media-slider .slide-image {
    width: 100% !important;
    max-width: 520px !important;
    height: auto !important;
    min-height: unset !important;
    object-fit: cover !important;
    border-radius: 22px !important;
    border: 1px solid rgba(35, 203, 255, 0.35) !important;
    overflow: hidden !important;
  }

  body:has(.store-product-full) .store-product-full > .product-title,
  body:has(.store-product-full) .store-product-full > .price,
  body:has(.store-product-full) .store-product-full > .actions,
  body:has(.store-product-full) .store-product-full > .descr,
  body:has(.store-product-full) .store-product-full > .description,
  body:has(.store-product-full) .store-product-options {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: 640px !important;
    min-width: 0 !important;
    justify-self: start !important;
  }

  body:has(.store-product-full) .store-product-full > .product-title,
  body:has(.store-product-full) .store-product-options .product-title,
  body:has(.store-product-full) .store-product-options h1 {
    margin: 0 0 22px !important;
    padding: 0 !important;
    font-size: 32px !important;
    line-height: 1.12 !important;
    font-weight: 900 !important;
    color: #ffffff !important;
  }

  body:has(.store-product-full) .store-product-full > .price,
  body:has(.store-product-full) .store-product-options .price {
    margin: 0 0 20px !important;
    padding: 0 !important;
    font-size: 30px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    color: #ffffff !important;
  }

  body:has(.store-product-full) .store-product-full > .price strong,
  body:has(.store-product-full) .store-product-options .price strong {
    font-size: 30px !important;
    font-weight: 900 !important;
  }

  body:has(.store-product-full) .store-product-full > .actions,
  body:has(.store-product-full) .store-product-options .actions {
    position: static !important;
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 0 36px !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 640px !important;
    overflow: visible !important;
  }

  body:has(.store-product-full) .store-product-full > .actions .btn-primary,
  body:has(.store-product-full) .store-product-full > .actions .btn-secondary,
  body:has(.store-product-full) .store-product-full > .actions .btn-tertiary,
  body:has(.store-product-full) .store-product-options .actions .btn-primary,
  body:has(.store-product-full) .store-product-options .actions .btn-secondary,
  body:has(.store-product-full) .store-product-options .actions .btn-tertiary {
    width: 280px !important;
    height: 56px !important;
    line-height: 56px !important;
    border-radius: 15px !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    text-align: center !important;
  }

  body:has(.store-product-full) .store-product-full > .descr,
  body:has(.store-product-full) .store-product-full > .description,
  body:has(.store-product-full) .store-product-options .descr,
  body:has(.store-product-full) .store-product-options .description {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 16px !important;
    line-height: 1.75 !important;
    color: #c8d4dc !important;
  }

  body:has(.store-product-full) .back-to-top {
    margin: 28px auto 0 !important;
  }
}

@media (max-width: 960px) {
  .site-content,
  .site-content-widgets,
  .boulevard-layout,
  .store-sidebar,
  .store-home,
  .store-category {
    width: calc(100% - var(--blvd-final-mobile-gutter)) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .store-sidebar,
  .site-content-widgets > main,
  .site-content-widgets > .store-home,
  .site-content-widgets > .store-category {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  body:has(.store-product-full) .store-product-full {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
    padding: 28px !important;
    gap: 32px !important;
  }
}


/* =========================================================
   BOULEVARD RP FOOTER - FULLY UPDATED FINAL
   Changes completed:
   1. Removed the visual container/background from the 2026 copyright line
   2. Updated footer BoulevardRP logo to the supplied image URL
   3. Resized the footer logo so it fits cleanly inside the footer container
   4. Kept the footer card aligned with the rest of the website containers
   5. Kept the padlock grey
========================================================= */

:root {
  --tebex-footer-height: 0px !important;
  --tebex-legal-footer-background-color: transparent !important;
  --tebex-legal-footer-border-color: transparent !important;
  --tebex-legal-footer-text-color: rgba(160,168,178,.58) !important;
}

/* =========================================================
   MAIN TEBEX FOOTER CARD
========================================================= */

.site-footer {
  width: 100% !important;
  max-width: none !important;
  margin: 48px auto 0 !important;
  padding: 0 var(--content-padding) !important;

  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;

  view-transition-name: siteFooter;
}

.site-footer-inner {
  position: relative !important;

  width: min(100%, var(--content-inner-width)) !important;
  max-width: var(--content-inner-width) !important;
  min-height: 176px !important;

  margin: 0 auto !important;
  padding: 38px 58px !important;

  display: grid !important;
  grid-template-columns: minmax(420px, 1fr) minmax(420px, 1fr) !important;
  align-items: center !important;
  gap: 56px !important;

  background:
    radial-gradient(circle at right center, rgba(65,196,195,.10), transparent 36%),
    linear-gradient(135deg, rgba(5,10,18,.96) 0%, rgba(7,14,22,.98) 100%) !important;

  border: 1px solid rgba(65,196,195,.20) !important;
  border-radius: 28px !important;

  box-shadow:
    0 10px 40px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(255,255,255,.035) !important;

  overflow: hidden !important;
}

.site-footer-inner .site-footer-nav {
  display: none !important;
}

/* Left brand block */
.site-footer-inner .copyright {
  grid-column: 1 !important;
  position: relative !important;

  display: block !important;
  min-height: 86px !important;

  margin: 0 !important;
  padding: 14px 0 0 118px !important;

  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-align: left !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Hide default injected logo/content inside the footer card brand area */
.site-footer-inner .copyright > *,
.site-footer-inner .copyright img,
.site-footer-inner .copyright svg,
.site-footer-inner .copyright picture,
.site-footer-inner .copyright [class*="logo"],
.site-footer-inner .copyright [class*="Logo"],
.site-footer-inner .copyright [class*="brand"],
.site-footer-inner .copyright [class*="Brand"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* New supplied BoulevardRP logo */
.site-footer-inner .copyright::before {
  content: "" !important;
  position: absolute !important;

  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;

  width: 92px !important;
  height: 92px !important;

  background-image: url("https://r2.fivemanage.com/XgMCylfG3rBwTJOr6vnxE/BNiceLogo.png") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;

  filter: drop-shadow(0 10px 18px rgba(0,0,0,.35)) !important;
}

/* Footer brand copy */
.site-footer-inner .copyright::after {
  content: "Boulevard RP\A Premium roleplay. Community driven. Built different." !important;
  display: block !important;
  white-space: pre-line !important;

  color: rgba(190,198,208,.78) !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.55 !important;
}

/* Payment area */
.site-footer-inner .we-accept {
  grid-column: 2 !important;
  position: relative !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 22px !important;

  width: 100% !important;
  min-height: 86px !important;

  margin: 0 !important;
  padding: 46px 0 0 64px !important;

  border-left: 1px solid rgba(255,255,255,.08) !important;
  pointer-events: auto !important;
}

/* Grey padlock + secure payment text */
.site-footer-inner .we-accept::before {
  content: "🔒  Secure payments powered by Tebex" !important;
  position: absolute !important;

  top: 6px !important;
  left: 64px !important;

  color: rgba(160,168,178,.85) !important;
  -webkit-text-fill-color: rgba(160,168,178,.85) !important;
  filter: grayscale(1) saturate(0) brightness(1.05) !important;

  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.site-footer-inner .we-accept li {
  display: block !important;
  margin: 0 !important;
}

.site-footer-inner .we-accept img {
  display: block !important;

  width: auto !important;
  max-width: 82px !important;
  max-height: 34px !important;
  object-fit: contain !important;

  opacity: .9 !important;
  filter: none !important;
  transition: transform .18s ease, opacity .18s ease, filter .18s ease !important;
}

.site-footer-inner .we-accept li:hover img {
  transform: translateY(-2px) !important;
  opacity: 1 !important;
}

/* Remove AMEX */
.site-footer-inner .we-accept img[alt*="American"],
.site-footer-inner .we-accept img[alt*="AMEX"],
.site-footer-inner .we-accept img[alt*="Amex"] {
  display: none !important;
}

/* Stop old Tebex Visa dark filter */
:root.color-scheme-light .site-footer-inner .we-accept img[alt=Visa],
:root.color-scheme-dark .site-footer-inner .we-accept img[alt=Visa] {
  filter: none !important;
}

@media (prefers-color-scheme: light) {
  :root.color-scheme-auto .site-footer-inner .we-accept img[alt=Visa] {
    filter: none !important;
  }
}

/* =========================================================
   COPYRIGHT LINE BELOW FOOTER — PLAIN TEXT ONLY
   This removes the visual container from:
   © 2026 Boulevard RP. All Rights Reserved...
========================================================= */

.site-footer-credit {
  display: block !important;

  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;

  margin: 16px auto 26px !important;
  padding: 0 !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;

  color: rgba(160,168,178,.58) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-align: center !important;
}

.site-footer-credit .site-footer-credit-inner {
  display: block !important;

  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;

  margin: 0 auto !important;
  padding: 0 !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;

  text-align: center !important;
}

.site-footer-credit .copyright {
  display: block !important;

  width: 100% !important;
  max-width: none !important;

  margin: 0 auto !important;
  padding: 0 !important;
  gap: 0 !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;

  color: rgba(160,168,178,.58) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  text-align: center !important;
}

/* Remove every possible icon/logo/link beside the 2026 copyright line */
.site-footer-credit .copyright::before,
.site-footer-credit .copyright::after,
.site-footer-credit .copyright img,
.site-footer-credit .copyright svg,
.site-footer-credit .copyright picture,
.site-footer-credit .tebex-logo-link,
.site-footer-credit .legal {
  content: none !important;
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;

  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  box-shadow: none !important;
}

/* =========================================================
   CUSTOM BOULEVARD FOOTER SUPPORT
   If your template uses .blvd-footer instead of .site-footer,
   these rules apply the same requested changes there too.
========================================================= */

.blvd-footer {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.blvd-footer-inner {
  max-width: var(--content-inner-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.blvd-footer-brand img {
  content: url("https://r2.fivemanage.com/XgMCylfG3rBwTJOr6vnxE/BNiceLogo.png") !important;
  width: 76px !important;
  height: 76px !important;
  min-width: 76px !important;
  max-width: 76px !important;
  max-height: 76px !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.blvd-footer-bottom {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.blvd-footer-bottom .copyright {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.blvd-footer-bottom .copyright::before,
.blvd-footer-bottom .copyright::after,
.blvd-footer-bottom img,
.blvd-footer-bottom svg {
  content: none !important;
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* Tablet */
@media (max-width: 1200px) {
  .site-footer-inner {
    grid-template-columns: minmax(300px, 1fr) minmax(300px, 1fr) !important;
    gap: 42px !important;
    padding: 36px 44px !important;
  }

  .site-footer-inner .we-accept {
    padding-left: 44px !important;
  }

  .site-footer-inner .we-accept::before {
    left: 44px !important;
  }
}

/* Mobile */
@media (max-width: 960px) {
  .site-footer {
    padding: 0 16px !important;
    margin-top: 34px !important;
  }

  .site-footer-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 32px !important;

    width: 100% !important;
    max-width: 100% !important;
    min-height: auto !important;

    padding: 34px 24px !important;
    border-radius: 22px !important;
    text-align: center !important;
  }

  .site-footer-inner .copyright {
    min-height: auto !important;
    padding: 88px 0 0 !important;
    text-align: center !important;
  }

  .site-footer-inner .copyright::before {
    left: 50% !important;
    top: 0 !important;
    transform: translateX(-50%) !important;

    width: 76px !important;
    height: 76px !important;
  }

  .site-footer-inner .copyright::after {
    font-size: 14px !important;
    text-align: center !important;
  }

  .site-footer-inner .we-accept {
    justify-content: center !important;
    width: 100% !important;
    min-height: auto !important;

    padding: 44px 0 0 !important;

    border-left: 0 !important;
    border-top: 1px solid rgba(255,255,255,.08) !important;
    gap: 16px !important;
  }

  .site-footer-inner .we-accept::before {
    top: 16px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    font-size: 13px !important;
  }

  .site-footer-inner .we-accept img {
    max-width: 76px !important;
    max-height: 30px !important;
  }

  .site-footer-credit {
    margin-top: 14px !important;
    padding: 0 !important;
    font-size: 11px !important;
  }

  .site-footer-credit .copyright {
    font-size: 11px !important;
  }

  .blvd-footer-brand img {
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
    max-height: 64px !important;
  }
}


/* =========================================================
   BOULEVARD RP FOOTER - FINAL CORRECTION PATCH
   Requested fixes:
   1. Make footer container smaller
   2. Make footer B logo bigger/neater beside Boulevard RP
   3. Centre the 2026 copyright text on the page
   4. Keep payment icons grey until hover
========================================================= */

/* Smaller footer card, still aligned with the site's 1280px containers */
.site-footer {
  padding: 0 var(--content-padding) !important;
  margin-top: 42px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.site-footer-inner,
.blvd-footer-inner {
  width: min(1280px, calc(100vw - 96px)) !important;
  max-width: 1280px !important;
  min-height: 150px !important;
  padding: 30px 48px !important;
  border-radius: 24px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Bigger supplied B logo beside Boulevard RP */
.site-footer-inner .copyright {
  min-height: 100px !important;
  padding-left: 132px !important;
  padding-top: 18px !important;
}

.site-footer-inner .copyright::before {
  width: 118px !important;
  height: 118px !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background-image: url("https://r2.fivemanage.com/XgMCylfG3rBwTJOr6vnxE/BNiceLogo.png") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
}

/* If the template is using the custom Boulevard footer image instead, force that logo bigger too */
.blvd-footer-brand {
  gap: 22px !important;
}

.blvd-footer-brand img {
  content: url("https://r2.fivemanage.com/XgMCylfG3rBwTJOr6vnxE/BNiceLogo.png") !important;
  width: 104px !important;
  height: 104px !important;
  min-width: 104px !important;
  max-width: 104px !important;
  max-height: 104px !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Payment icons grey by default */
.site-footer-inner .we-accept img,
.blvd-payments img {
  opacity: .72 !important;
  filter: grayscale(1) saturate(0) brightness(.82) contrast(1.05) !important;
  transition: transform .18s ease, opacity .18s ease, filter .18s ease !important;
}

/* Colour returns on hover */
.site-footer-inner .we-accept li:hover img,
.blvd-payments img:hover {
  transform: translateY(-2px) !important;
  opacity: 1 !important;
  filter: grayscale(0) saturate(1.5) brightness(1.08) contrast(1.03) !important;
}

.site-footer-inner .we-accept li:hover img[alt*="Visa"],
.site-footer-inner .we-accept li:hover img[alt*="VISA"] {
  filter: grayscale(0) saturate(1.8) brightness(1.16) contrast(1.04) !important;
}

.site-footer-inner .we-accept li:hover img[alt*="Apple"] {
  filter: grayscale(0) saturate(1) brightness(1.12) contrast(1.05) !important;
}

/* Keep AMEX hidden */
.site-footer-inner .we-accept img[alt*="American"],
.site-footer-inner .we-accept img[alt*="AMEX"],
.site-footer-inner .we-accept img[alt*="Amex"],
.blvd-payments img[alt*="American"],
.blvd-payments img[alt*="AMEX"],
.blvd-payments img[alt*="Amex"] {
  display: none !important;
}

/* Centre copyright text across the full page, not just the footer/card width */
.site-footer-credit,
.blvd-footer-bottom {
  display: block !important;
  width: 100vw !important;
  max-width: none !important;
  margin: 16px 0 26px calc(50% - 50vw) !important;
  padding: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: center !important;
}

.site-footer-credit .site-footer-credit-inner {
  display: block !important;
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  text-align: center !important;
}

.site-footer-credit .copyright,
.blvd-footer-bottom .copyright {
  display: block !important;
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(160,168,178,.62) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
  text-align: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Remove any icon/link beside the copyright text */
.site-footer-credit .copyright::before,
.site-footer-credit .copyright::after,
.site-footer-credit .copyright img,
.site-footer-credit .copyright svg,
.site-footer-credit .copyright picture,
.site-footer-credit .tebex-logo-link,
.site-footer-credit .legal,
.blvd-footer-bottom .copyright::before,
.blvd-footer-bottom .copyright::after,
.blvd-footer-bottom img,
.blvd-footer-bottom svg {
  content: none !important;
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* Tablet */
@media (max-width: 1200px) {
  .site-footer-inner,
  .blvd-footer-inner {
    width: min(100%, calc(100vw - 48px)) !important;
    padding: 30px 40px !important;
  }

  .site-footer-inner .copyright {
    padding-left: 120px !important;
  }

  .site-footer-inner .copyright::before,
  .blvd-footer-brand img {
    width: 100px !important;
    height: 100px !important;
    min-width: 100px !important;
  }
}

/* Mobile */
@media (max-width: 960px) {
  .site-footer {
    padding: 0 16px !important;
    margin-top: 34px !important;
  }

  .site-footer-inner,
  .blvd-footer-inner {
    width: 100% !important;
    max-width: 100% !important;
    min-height: auto !important;
    padding: 32px 24px !important;
    border-radius: 22px !important;
  }

  .site-footer-inner .copyright {
    padding-left: 0 !important;
    padding-top: 96px !important;
    text-align: center !important;
  }

  .site-footer-inner .copyright::before {
    left: 50% !important;
    top: 0 !important;
    width: 88px !important;
    height: 88px !important;
    transform: translateX(-50%) !important;
  }

  .blvd-footer-brand img {
    width: 88px !important;
    height: 88px !important;
    min-width: 88px !important;
  }

  .site-footer-credit,
  .blvd-footer-bottom,
  .site-footer-credit .site-footer-credit-inner,
  .site-footer-credit .copyright,
  .blvd-footer-bottom .copyright {
    width: 100vw !important;
    text-align: center !important;
  }
}




/* =========================================================
   BOULEVARD RP FOOTER - CONTAINER ALIGNMENT PATCH
   Makes footer card match the exact width/alignment
   of the site's other containers
========================================================= */

.site-footer,
.blvd-footer{
  width: 100% !important;
  max-width: none !important;
  padding-left: var(--content-padding) !important;
  padding-right: var(--content-padding) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

.site-footer-inner,
.blvd-footer-inner{
  width: 100% !important;
  max-width: var(--content-inner-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Tablet */
@media (max-width: 1200px){
  .site-footer,
  .blvd-footer{
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  .site-footer-inner,
  .blvd-footer-inner{
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Mobile */
@media (max-width: 960px){
  .site-footer,
  .blvd-footer{
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .site-footer-inner,
  .blvd-footer-inner{
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* =========================================================
   BOULEVARD RP FINAL SITE POLISH UPDATE
   Changes included:
   1. Slightly larger navigation text
   2. Extra breathing room under hero intro copy
   3. Footer copyright text slightly brighter
   4. Mastercard grey state balanced with other payment icons
   5. Header logo glow reduced slightly for a sharper look
========================================================= */

/* 1. Top navigation text slightly larger for readability */
.site-navigation .menu-link,
.blvd-menu-link{
  font-size: 0.97rem !important;
}

.site-navigation .menu{
  font-size: 15px !important;
}

/* Keep dropdown links readable too */
.site-navigation .menu-sub .menu-link{
  font-size: 15.5px !important;
}

/* 2. Hero section: add a little more breathing room under the paragraph */
.blvd-home-hero p,
.blvd-home-hero-content p{
  margin-bottom: 10px !important;
}

.blvd-home-actions{
  margin-top: 32px !important;
}

.blvd-hero-features{
  margin-top: 30px !important;
}

/* 3. Footer copyright line: slightly brighter and cleaner */
.site-footer-credit,
.site-footer-credit .copyright,
.blvd-footer-bottom,
.blvd-footer-bottom .copyright{
  color: rgba(180,188,200,.72) !important;
}

.site-footer-credit .copyright,
.blvd-footer-bottom .copyright{
  font-weight: 500 !important;
  letter-spacing: -0.01em !important;
}

/* 4. Payment icons grey default, balanced Mastercard visibility */
.site-footer-inner .we-accept img,
.blvd-payments img{
  opacity: .76 !important;
  filter: grayscale(1) saturate(0) brightness(.88) contrast(1.08) !important;
}

/* Mastercard needed a tiny lift in grey mode */
.site-footer-inner .we-accept img[alt*="Mastercard"],
.site-footer-inner .we-accept img[alt*="MasterCard"],
.blvd-payments img[alt*="Mastercard"],
.blvd-payments img[alt*="MasterCard"]{
  opacity: .82 !important;
  filter: grayscale(1) saturate(0) brightness(.96) contrast(1.12) !important;
}

/* Restore proper colour on hover */
.site-footer-inner .we-accept li:hover img,
.blvd-payments img:hover{
  transform: translateY(-2px) !important;
  opacity: 1 !important;
}

.site-footer-inner .we-accept li:hover img[alt*="Apple"]{
  filter: grayscale(0) saturate(1) brightness(1.12) contrast(1.05) !important;
}

.site-footer-inner .we-accept li:hover img[alt*="Google"]{
  filter: grayscale(0) saturate(1.45) brightness(1.08) contrast(1.02) !important;
}

.site-footer-inner .we-accept li:hover img[alt*="Mastercard"],
.site-footer-inner .we-accept li:hover img[alt*="MasterCard"]{
  filter: grayscale(0) saturate(1.75) brightness(1.08) contrast(1.02) !important;
}

.site-footer-inner .we-accept li:hover img[alt*="Visa"],
.site-footer-inner .we-accept li:hover img[alt*="VISA"]{
  filter: grayscale(0) saturate(1.8) brightness(1.16) contrast(1.04) !important;
}

.site-footer-inner .we-accept li:hover img[alt*="PayPal"],
.site-footer-inner .we-accept li:hover img[alt*="Paypal"]{
  filter: grayscale(0) saturate(1.6) brightness(1.08) contrast(1.02) !important;
}

/* 5. Header logo glow reduced slightly for a sharper, cleaner logo */
.blvd-animated-logo{
  filter:
    drop-shadow(0 0 14px rgba(51,207,255,.24))
    drop-shadow(0 0 44px rgba(51,207,255,.14)) !important;
}

.blvd-animated-logo:hover{
  filter:
    drop-shadow(0 0 18px rgba(51,207,255,.34))
    drop-shadow(0 0 58px rgba(51,207,255,.20)) !important;
}

/* Mobile balance */
@media(max-width:960px){
  .site-navigation .menu-link,
  .blvd-menu-link{
    font-size: 1.18rem !important;
  }

  .blvd-home-actions{
    margin-top: 28px !important;
  }

  .blvd-hero-features{
    margin-top: 26px !important;
  }

  .site-footer-credit .copyright,
  .blvd-footer-bottom .copyright{
    font-size: 11px !important;
  }
}


/* =========================================================
   BOULEVARD RP FINAL MICRO POLISH UPDATE
   Includes:
   1. Desktop nav text slightly larger
   2. Hero paragraph breathing room improved
   3. Mastercard grey state lifted
   4. Sidebar cards given subtle premium glass blur
   5. Footer height reduced slightly
========================================================= */

/* 1. Slightly larger desktop nav text */
@media (min-width: 961px){
  .site-navigation .menu-link,
  .blvd-menu-link{
    font-size: 1.02rem !important;
  }

  .site-navigation .menu-sub .menu-link{
    font-size: 0.98rem !important;
  }
}

/* 2. Hero copy spacing and readability */
.blvd-home-hero p,
.blvd-home-hero-content p{
  line-height: 1.8 !important;
  margin-bottom: 14px !important;
}

.blvd-home-actions{
  margin-top: 34px !important;
}

/* 3. Mastercard grey mode visibility */
.site-footer-inner .we-accept img[alt*="Mastercard"],
.site-footer-inner .we-accept img[alt*="MasterCard"],
.blvd-payments img[alt*="Mastercard"],
.blvd-payments img[alt*="MasterCard"]{
  opacity: .88 !important;
  filter: grayscale(1) saturate(0) brightness(1.06) contrast(1.14) !important;
}

/* Keep Mastercard colour restored on hover */
.site-footer-inner .we-accept li:hover img[alt*="Mastercard"],
.site-footer-inner .we-accept li:hover img[alt*="MasterCard"],
.blvd-payments img[alt*="Mastercard"]:hover,
.blvd-payments img[alt*="MasterCard"]:hover{
  opacity: 1 !important;
  filter: grayscale(0) saturate(1.85) brightness(1.1) contrast(1.03) !important;
}

/* 4. Subtle premium glass blur on sidebar cards */
.blvd-sidebar-card,
.blvd-sale-card,
.store-sidebar .widget,
.store-sidebar > *{
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}

/* 5. Footer slightly sleeker vertically */
.site-footer-inner,
.blvd-footer-inner{
  min-height: 140px !important;
  padding-top: 26px !important;
  padding-bottom: 26px !important;
}

.site-footer-inner .copyright{
  min-height: 88px !important;
}

.site-footer-inner .we-accept{
  min-height: 80px !important;
}

/* Keep footer copyright clean and centred after height adjustment */
.site-footer-credit,
.blvd-footer-bottom{
  margin-top: 14px !important;
}

.site-footer-credit .copyright,
.blvd-footer-bottom .copyright{
  color: rgba(180,188,200,.74) !important;
}

/* Mobile balance */
@media (max-width: 960px){
  .blvd-home-hero p,
  .blvd-home-hero-content p{
    line-height: 1.7 !important;
  }

  .site-footer-inner,
  .blvd-footer-inner{
    min-height: auto !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
}


/* =========================================================
   BOULEVARD RP FOOTER COPYRIGHT SPACING UPDATE
========================================================= */

/* Adds breathing room below footer container */
.blvd-footer-bottom,
.site-footer-credit{
    margin-top: 22px !important;
}

/* Makes copyright text less cramped */
.blvd-footer-bottom .copyright,
.site-footer-credit .copyright{
    padding-top: 6px !important;
    line-height: 1.7 !important;
}


/* =========================================================
   BOULEVARD RP FINAL FOOTER REFINEMENT UPDATE
   Changes included:
   1. Slightly reduces footer B logo size so it feels more balanced
   2. Softens the Tebex legal strip at the very bottom
========================================================= */

/* Slightly reduce footer B logo so it sits cleaner beside Boulevard RP */
.site-footer-inner .copyright::before{
  width: 104px !important;
  height: 104px !important;
}

.blvd-footer-brand img{
  width: 96px !important;
  height: 96px !important;
  min-width: 96px !important;
  max-width: 96px !important;
  max-height: 96px !important;
  object-fit: contain !important;
}

/* Keep text spacing balanced after the logo adjustment */
.site-footer-inner .copyright{
  padding-left: 124px !important;
}

/* Soften Tebex legal strip at the very bottom */
.tebex-footer,
.tebex-footer-disclaimer,
.tebex-legal-footer,
.tebex-legal-footer-content,
.site-footer-credit + *,
body > footer:last-child{
  opacity: .65 !important;
  font-size: 12px !important;
}

/* Make the default Tebex bottom strip feel less harsh */
.tebex-footer,
.tebex-legal-footer{
  background: rgba(0,0,0,.28) !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
}

/* Keep footer copyright clean and readable */
.site-footer-credit .copyright,
.blvd-footer-bottom .copyright{
  color: rgba(180,188,200,.74) !important;
}

/* Mobile balance */
@media(max-width:960px){
  .site-footer-inner .copyright{
    padding-left: 0 !important;
    padding-top: 96px !important;
  }

  .site-footer-inner .copyright::before{
    width: 84px !important;
    height: 84px !important;
  }

  .blvd-footer-brand img{
    width: 84px !important;
    height: 84px !important;
    min-width: 84px !important;
    max-width: 84px !important;
    max-height: 84px !important;
  }
}


/* =========================================================
   BOULEVARD RP RESPONSIVE POLISH - CLEAN FINAL PATCH
   Desktop-safe. Mobile/tablet only below 960px.
========================================================= */

html,
body{
  max-width: 100%;
  overflow-x: hidden;
}

img,
svg,
video,
iframe{
  max-width: 100%;
}

/* Keep desktop navigation visible, even if an old JS test added hidden="true" */
@media (min-width: 961px){
  .site-navigation,
  .site-navigation[hidden]{
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  .site-navigation .menu{
    display: flex !important;
  }
}

@media (max-width: 960px){
  :root{
    --content-padding: 16px !important;
    --widget-padding: 16px !important;
    --layout-gap: 24px !important;
    --products-gap: 18px !important;
    --sidebar-width: 100% !important;
    --header-height: 180px !important;
    --btn-size: 44px !important;
  }

  *,
  *::before,
  *::after{
    min-width: 0 !important;
  }

  html,
  body,
  .site,
  .blvd-site,
  .blvd-main-shell,
  .site-content,
  .boulevard-layout,
  .store-home,
  .store-products,
  .store-product-cont{
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .site{
    gap: 24px !important;
  }

  .site-header-top,
  .site-header,
  .site-content,
  .site-footer-inner{
    padding-left: 16px !important;
    padding-right: 16px !important;
    max-width: 100% !important;
  }

  .site-header-top{
    min-height: 52px !important;
    gap: 6px !important;
  }

  .site-header-top .site-title{
    max-width: calc(100% - 155px) !important;
    font-size: 15px !important;
  }

  .site-header-top .site-title img{
    max-height: 26px !important;
    width: auto !important;
  }

  .site-header{
    min-height: auto !important;
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }

  body.has-hero .site-header{
    min-height: 155px !important;
  }

  body.is-logo-centered.has-hero .site-header .site-title{
    position: relative !important;
    inset: auto !important;
    margin: 0 auto !important;
  }

  .site-header .site-title img,
  body.is-logo-centered .site-header .site-title img,
  .site-navigation .site-title img{
    max-width: min(260px, 82vw) !important;
    max-height: 86px !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .site-bg-image{
    min-height: 260px !important;
    max-height: 420px !important;
  }

  /* Mobile nav: hidden by default, visible only when Tebex adds show-navigation */
  body:not(.show-navigation) .site-navigation,
  body:not(.show-navigation) .site-navigation[hidden]{
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  body.show-navigation .site-navigation,
  body.show-navigation .site-navigation[hidden]{
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  .site-navigation{
    position: fixed !important;
    inset: 0 !important;
    z-index: 100000 !important;
    background: rgba(0, 0, 0, 0.72) !important;
    backdrop-filter: blur(10px) !important;
  }

  .site-navigation .menu{
    display: flex !important;
    flex-direction: column !important;
    position: absolute !important;
    inset: 0 auto 0 0 !important;
    width: min(82vw, 340px) !important;
    max-width: 340px !important;
    padding: 72px 20px 22px !important;
    border-radius: 0 22px 22px 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    font-size: 19px !important;
    line-height: 1.35 !important;
  }

  .site-navigation .popup-close{
    position: fixed !important;
    top: 22px !important;
    right: 22px !important;
    z-index: 100001 !important;
  }

  .site-navigation .menu-link{
    padding: 10px 0 !important;
    white-space: normal !important;
  }

  .site-content-widgets,
  .boulevard-layout{
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
    width: 100% !important;
  }

  .store-home,
  .store-products,
  .store-product-cont{
    order: 1 !important;
  }

  .store-sidebar,
  .blvd-sidebar{
    order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-top: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .blvd-sidebar-card,
  .blvd-sale-card{
    width: 100% !important;
    max-width: 100% !important;
  }

  .blvd-sale-media img,
  .blvd-sale-card img{
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
  }

  .blvd-home-hero,
  .blvd-hero,
  .blvd-policy-card,
  .blvd-support-banner,
  .blvd-package-card{
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 18px !important;
  }

  .blvd-home-hero,
  .blvd-hero{
    padding: 40px 20px !important;
    min-height: auto !important;
    background-size: cover !important;
    background-position: center !important;
  }

  .blvd-home-hero h1,
  .blvd-hero h1{
    font-size: clamp(34px, 10vw, 58px) !important;
    line-height: .98 !important;
    letter-spacing: -0.04em !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }

  .blvd-home-hero p,
  .blvd-description,
  .blvd-support-banner p{
    font-size: 15px !important;
    line-height: 1.65 !important;
    max-width: 100% !important;
  }

  .blvd-home-actions,
  .blvd-sale-footer,
  .blvd-policy-grid{
    width: 100% !important;
  }

  .blvd-home-actions .btn-primary,
  .blvd-membership-btn,
  .blvd-sidebar-btn,
  .blvd-sale-btn,
  .blvd-policy-btn{
    width: 100% !important;
    max-width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .blvd-hero-features,
  .blvd-features,
  .blvd-policy-grid,
  .blvd-package-grid,
  .store-products-images,
  .site-home-categories{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .blvd-feature-card,
  .blvd-feature,
  .blvd-category-card,
  .site-home-categories .category{
    width: 100% !important;
    max-width: 100% !important;
  }

  .site-home-categories .category{
    padding: 16px !important;
    min-height: auto !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
    text-align: center !important;
  }

  .site-home-categories .category .image{
    max-height: 82px !important;
    margin: 0 auto !important;
  }

  .store-products-images .store-product,
  .store-product{
    width: 100% !important;
    max-width: 100% !important;
    gap: 14px !important;
  }

  .store-product .image-link,
  .store-product .image,
  .store-product-full .image{
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .store-product .product-title{
    font-size: 18px !important;
    line-height: 1.25 !important;
    overflow-wrap: anywhere !important;
  }

  .store-product .descr{
    font-size: 13px !important;
    line-height: 1.45 !important;
  }

  .store-product .actions,
  .product-actions,
  .store-form .actions,
  .store-product-options .actions{
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    justify-content: stretch !important;
    position: static !important;
    bottom: auto !important;
    margin-top: 14px !important;
  }

  .store-product .actions .btn-primary,
  .store-product .actions .btn-secondary,
  .store-product .actions .btn-tertiary,
  .product-actions .btn-primary,
  .product-actions .btn-secondary,
  .product-actions .btn-tertiary,
  .store-product-options .actions .btn-primary,
  .store-product-options .actions .btn-secondary,
  .store-product-options .actions .btn-tertiary,
  .store-form .actions .btn-primary,
  .store-form .actions .btn-secondary,
  .store-form .actions .btn-tertiary{
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    text-align: center !important;
  }

  .store-product .half,
  .store-product .wide,
  .store-product-full .wide{
    flex: 1 1 auto !important;
    max-width: 100% !important;
  }

  .quantity-field,
  .store-product .quantity-field{
    width: 100% !important;
  }

  .store-product-full{
    display: flex !important;
    flex-direction: column !important;
    gap: 22px !important;
  }

  .store-product-full .media-slider,
  .store-product-full .image{
    order: 0 !important;
    width: 100% !important;
    margin: 0 auto !important;
  }

  .store-product-full .product-title,
  .store-product-options .product-title,
  .store-product-options h1{
    font-size: 26px !important;
    line-height: 1.15 !important;
    margin: 0 0 14px !important;
  }

  .store-product-full .price{
    font-size: 20px !important;
    margin-bottom: 14px !important;
  }

  .store-product-full .descr,
  .store-product-full .description{
    max-width: 100% !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
  }

  .store-product-full .descr p,
  .store-product-full .descr li{
    line-height: 1.65 !important;
    margin-bottom: 14px !important;
  }

  .media-slider .slider,
  .media-slider .slide-image{
    min-height: 180px !important;
  }

  .media-slider .thumbs{
    justify-content: flex-start !important;
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    padding-bottom: 6px !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .nav-tabs{
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    padding-bottom: 4px !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .nav-tabs .nav-link{
    white-space: nowrap !important;
    min-height: 44px !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    border-radius: 12px !important;
  }

  .popup-scroll-cont{
    padding: 12px !important;
  }

  .popup-content{
    max-width: 100% !important;
    border-radius: 14px !important;
  }

  .site-footer-inner,
  .site-footer-credit .site-footer-credit-inner{
    text-align: center !important;
    align-items: center !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .site-footer-inner .site-footer-nav ul,
  .site-footer-credit .legal,
  .site-footer-credit .copyright{
    flex-wrap: wrap !important;
    justify-content: center !important;
    white-space: normal !important;
  }

}

@media (max-width: 640px){
  :root{
    --content-padding: 14px !important;
    --widget-padding: 14px !important;
    --layout-gap: 20px !important;
  }

  body{
    font-size: 14px !important;
  }

  body.has-hero .site-header{
    min-height: 135px !important;
  }

  .site-header .site-title img,
  body.is-logo-centered .site-header .site-title img{
    max-width: min(220px, 78vw) !important;
    max-height: 76px !important;
  }

  .blvd-home-hero,
  .blvd-hero{
    padding: 34px 18px !important;
  }

  .blvd-home-hero h1,
  .blvd-hero h1{
    font-size: clamp(34px, 12vw, 48px) !important;
  }

  .store-products-list .store-product{
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .store-products-list .store-product .image{
    width: 100% !important;
    max-height: 220px !important;
    object-fit: contain !important;
  }

  .store-form .field-inline,
  .store-form .actions{
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .store-form .field-inline input,
  .store-form .field-inline select,
  .store-form .field-inline textarea{
    width: 100% !important;
  }
}

@media (max-width: 420px){
  :root{
    --content-padding: 12px !important;
    --widget-padding: 12px !important;
  }

  .btn-primary,
  .btn-secondary,
  .btn-tertiary{
    font-size: 14px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .site-navigation .menu{
    width: calc(100vw - 58px) !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    font-size: 18px !important;
  }

  .site-navigation .popup-close{
    right: 14px !important;
  }

  .store-product-full .descr,
  .text-content{
    font-size: 14px !important;
  }
}
/* =========================================================
   BOULEVARD RP MOBILE / TABLET HEADER CLEANUP
========================================================= */

@media (max-width: 1024px) {

  /* Remove clipped text behind hamburger icon */
  .site-header-top .toggle-navigation {
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
  }

  .site-header-top .toggle-navigation::before {
    font-size: initial !important;
  }

  /* Hide the small duplicated top logo on mobile/tablet */
  .site-header-top .site-title,
  .site-header-top .site-title img {
    display: none !important;
  }

  /* Keep top bar clean */
  .site-header-top {
    justify-content: space-between !important;
  }
}

/* =========================================================
   BOULEVARD RP FINAL PREMIUM POLISH PATCH
   - Keep this block at the very bottom of styles.css
   - Desktop, tablet and mobile safe overrides
========================================================= */

/* Global polish */
html,
body{
  max-width:100% !important;
  overflow-x:hidden !important;
}

img,
svg,
video,
iframe{
  max-width:100% !important;
}

.blvd-site,
.blvd-main-shell,
.site-content,
.boulevard-layout,
.store-home,
.store-products,
.store-product-cont{
  max-width:100% !important;
}

/* Header / nav polish */
@media (width > 960px){
  .site-navigation .menu{
    min-height:58px !important;
    padding-top:12px !important;
    padding-bottom:12px !important;
  }

  .site-navigation .menu > .menu-item > .menu-link{
    font-size:14px !important;
    font-weight:850 !important;
  }
}

.site-navigation .menu-link,
.site-navigation .menu-sub .menu-link{
  transition:color .18s ease, background-color .18s ease, transform .18s ease !important;
}

.site-navigation .menu-link:hover{
  transform:translateY(-1px) !important;
}

/* Mobile/tablet header cleanup */
@media (max-width:1024px){
  .site-header-top{
    justify-content:space-between !important;
  }

  .site-header-top .toggle-navigation{
    color:transparent !important;
    font-size:0 !important;
    line-height:0 !important;
    overflow:hidden !important;
  }

  .site-header-top .toggle-navigation::before{
    margin-right:0 !important;
    font-size:initial !important;
  }

  .site-header-top .site-title,
  .site-header-top .site-title img{
    display:none !important;
  }
}

/* Main desktop balance */
@media (width > 960px){
  .boulevard-layout.site-content-widgets{
    gap:36px !important;
  }

  body.is-sidebar-left .boulevard-layout.site-content-widgets,
  body.is-sidebar-left .site-content-widgets{
    grid-template-columns:287px minmax(0, 1fr) !important;
  }

  body.is-sidebar-right .boulevard-layout.site-content-widgets,
  body.is-sidebar-right .site-content-widgets{
    grid-template-columns:minmax(0, 1fr) 287px !important;
  }
}

/* Hero polish */
.blvd-home-hero,
.blvd-hero{
  overflow:hidden !important;
  isolation:isolate !important;
}

.blvd-home-hero-content{
  width:100% !important;
  max-width:920px !important;
}

.blvd-home-hero h1,
.blvd-hero h1{
  letter-spacing:-.055em !important;
}

.blvd-home-hero p,
.blvd-home-hero-content p,
.blvd-description{
  max-width:640px !important;
  line-height:1.65 !important;
}

.blvd-home-actions{
  margin-top:28px !important;
}

.blvd-membership-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  min-width:170px !important;
  height:50px !important;
  padding:0 24px !important;
  border-radius:14px !important;
  color:#02070d !important;
  background:linear-gradient(135deg, #39dcff 0%, #18b7ec 100%) !important;
  box-shadow:0 14px 34px rgba(24,183,236,.22), inset 0 1px 0 rgba(255,255,255,.28) !important;
  font-size:14px !important;
  font-weight:950 !important;
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease !important;
}

.blvd-membership-btn:hover{
  transform:translateY(-2px) !important;
  filter:saturate(1.08) !important;
  box-shadow:0 18px 42px rgba(24,183,236,.34), inset 0 1px 0 rgba(255,255,255,.28) !important;
}

.blvd-membership-btn::after{
  content:"›" !important;
  display:inline-block !important;
  font-size:22px !important;
  line-height:1 !important;
  transform:translateY(-1px) !important;
}

/* Hero feature cards - restored bigger, balanced and readable */
.blvd-hero-features{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:18px !important;
  width:100% !important;
  max-width:940px !important;
  margin-top:30px !important;
}

.blvd-feature-card{
  min-width:0 !important;
  min-height:158px !important;
  padding:24px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:14px !important;
  border-radius:18px !important;
  background:linear-gradient(180deg, rgba(6,12,20,.76), rgba(4,8,14,.58)) !important;
  border:1px solid rgba(65,196,195,.20) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035), 0 18px 44px rgba(0,0,0,.22) !important;
  backdrop-filter:blur(12px) !important;
  transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease !important;
}

.blvd-feature-card:hover{
  transform:translateY(-4px) !important;
  border-color:rgba(65,196,195,.42) !important;
  background:linear-gradient(180deg, rgba(8,17,28,.86), rgba(4,9,16,.68)) !important;
  box-shadow:0 0 28px rgba(53,216,255,.14), 0 22px 54px rgba(0,0,0,.28) !important;
}

.blvd-feature-icon{
  flex:0 0 44px !important;
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:14px !important;
  background:rgba(35,203,255,.12) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 0 24px rgba(35,203,255,.09) !important;
  font-size:19px !important;
}

.blvd-feature-copy h3{
  margin:0 0 8px !important;
  color:#fff !important;
  font-size:15px !important;
  line-height:1.25 !important;
  font-weight:950 !important;
  letter-spacing:-.025em !important;
}

.blvd-feature-copy p{
  margin:0 !important;
  color:rgba(219,231,239,.86) !important;
  font-size:14px !important;
  line-height:1.6 !important;
  font-weight:650 !important;
}

/* Sidebar polish */
.blvd-sidebar-card,
.blvd-sale-card,
.blvd-policy-card,
.blvd-category-card,
.blvd-package-card,
.store-product{
  transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease !important;
}

.blvd-sidebar-card:hover,
.blvd-sale-card:hover,
.blvd-policy-card:hover,
.blvd-category-card:hover,
.blvd-package-card:hover,
.store-product:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 0 28px rgba(53,216,255,.12), 0 22px 54px rgba(0,0,0,.22) !important;
}

.blvd-sale-card img,
.blvd-sale-media img{
  object-fit:cover !important;
}

/* Footer polish - only custom footer, not locked Tebex footer */
.blvd-footer,
.site-footer.blvd-footer{
  background:transparent !important;
}

.blvd-footer-inner,
.site-footer-inner.blvd-footer-inner{
  max-width:100% !important;
}

.blvd-footer-brand img{
  object-fit:contain !important;
}

/* Product / package page safety */
.store-product-full{
  gap:42px !important;
}

.store-product-full .descr,
.store-product-full .description{
  max-width:760px !important;
}

.store-product-full .actions,
.product-actions{
  max-width:100% !important;
}

/* Tablet */
@media (max-width:1200px){
  .blvd-home-hero-content{
    max-width:820px !important;
  }

  .blvd-hero-features{
    max-width:100% !important;
  }

  .blvd-feature-card{
    padding:22px !important;
  }
}

/* Mobile */
@media (max-width:960px){
  .boulevard-layout,
  .site-content,
  .site-content-widgets{
    display:flex !important;
    flex-direction:column !important;
    gap:24px !important;
    width:100% !important;
  }

  .blvd-home-hero,
  .blvd-hero{
    padding:42px 22px !important;
    border-radius:20px !important;
  }

  .blvd-home-hero-content{
    max-width:100% !important;
  }

  .blvd-home-hero h1,
  .blvd-hero h1{
    font-size:clamp(38px, 11vw, 58px) !important;
    line-height:.98 !important;
  }

  .blvd-home-hero p,
  .blvd-home-hero-content p,
  .blvd-description{
    max-width:100% !important;
    font-size:15px !important;
    line-height:1.65 !important;
  }

  .blvd-hero-features{
    grid-template-columns:1fr !important;
    gap:16px !important;
    max-width:100% !important;
  }

  .blvd-feature-card{
    min-height:auto !important;
    padding:22px !important;
  }

  .blvd-feature-copy h3{
    font-size:16px !important;
  }

  .blvd-feature-copy p{
    font-size:14px !important;
  }

  .store-sidebar,
  .blvd-sidebar{
    width:100% !important;
  }

  .product-actions,
  .store-product .actions,
  .store-product-options .actions{
    width:100% !important;
    flex-direction:column !important;
    align-items:stretch !important;
  }

  .product-actions .btn-primary,
  .product-actions .btn-secondary,
  .product-actions .btn-tertiary,
  .store-product .actions .btn-primary,
  .store-product .actions .btn-secondary,
  .store-product .actions .btn-tertiary,
  .store-product-options .actions .btn-primary,
  .store-product-options .actions .btn-secondary,
  .store-product-options .actions .btn-tertiary{
    width:100% !important;
    max-width:100% !important;
  }

  .store-product-options .actions{
    position:relative !important;
    bottom:auto !important;
  }
}

@media (max-width:640px){
  .blvd-home-hero,
  .blvd-hero{
    padding:36px 18px !important;
  }

  .blvd-feature-card{
    padding:20px !important;
    border-radius:16px !important;
  }

  .blvd-feature-icon{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
  }
}
/* Align custom footer with main content containers */
.blvd-footer {
  width: 100% !important;
  max-width: var(--content-width) !important;
  margin: 0 auto 28px auto !important;
  padding: 0 var(--content-padding) !important;
  background: transparent !important;
}

.blvd-footer-inner {
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 26px 42px !important;
  border-radius: 18px !important;
}

.blvd-footer-bottom {
  max-width: var(--content-width) !important;
  margin: 14px auto 0 auto !important;
  padding: 0 var(--content-padding) !important;
  text-align: center !important;
}

@media (max-width: 960px) {
  .blvd-footer {
    padding: 0 20px !important;
  }

  .blvd-footer-inner {
    padding: 22px !important;
  }

  .blvd-footer-bottom {
    padding: 0 20px !important;
  }
}
/* Center Rockstar disclaimer text */
.blvd-footer-bottom {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
}

.blvd-footer-bottom .copyright {
  width: 100% !important;
  margin: 0 auto !important;
  text-align: center !important;
}
/* Mobile hamburger: keep visible, remove bubble only */
@media (max-width: 1024px) {
  .site-header-top .toggle-navigation {
    background-color: transparent !important;
    border: 0 !important;
    box-shadow: none !important;

    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    opacity: 1 !important;
    visibility: visible !important;
  }

  .site-header-top .toggle-navigation::before {
    opacity: 1 !important;
    visibility: visible !important;
    background-color: #ffffff !important;
  }
}
.blvd-sidebar .blvd-sale-media img {
  max-height: 150px !important;
  object-fit: cover !important;
}

.blvd-package-card,
.blvd-policy-card,
.blvd-sidebar-card,
.blvd-sale-card,
.blvd-feature-card {
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease !important;
}

.blvd-package-card:hover,
.blvd-policy-card:hover,
.blvd-sidebar-card:hover,
.blvd-sale-card:hover,
.blvd-feature-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(65, 196, 195, 0.45) !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28) !important;
}

.blvd-footer-bottom {
  margin-top: 10px !important;
}
/* Blend Tebex legal footer with Boulevard theme */
.tebex-footer-wrapper {
  background: rgba(5, 10, 18, 0.82) !important;
  border-top: 1px solid rgba(65, 196, 195, 0.12) !important;
  backdrop-filter: blur(10px) !important;
}

.tebex-footer-inner {
  opacity: 0.82 !important;
}
/* Boulevard RP Discord icon final override */
.blvd-discord-icon::before,
.blvd-discord-icon::after {
  content: none !important;
  display: none !important;
}

.blvd-discord-icon svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  fill: currentColor !important;
}