/** Shopify CDN: Minification failed

Line 726:1 Expected identifier but found "."
Line 1227:14 Expected identifier but found whitespace
Line 1227:15 Unexpected "32px"

**/

:root{--cream:#050505;--ink:#f5f1ea;--muted:#bdb7ae;--rust:#4cff63;--olive:#39d353;--paper:#0d0d0d;--line:#1e1e1e}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,sans-serif;line-height:1.55}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.page-width{width:min(1180px,92vw);margin:0 auto}.section{padding:72px 0}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--rust);font-size:13px;font-weight:800;margin-bottom:14px}h1,h2,h3{font-family:Georgia,serif;line-height:1.05;margin:0 0 18px}h1{font-size:clamp(44px,8vw,94px)}h2{font-size:clamp(32px,5vw,58px)}h3{font-size:24px}p{margin:0 0 18px}.muted{color:var(--muted)}.btn{display:inline-flex;padding:14px 22px;border-radius:999px;background:var(--ink);color:#fff;font-weight:800;margin:6px 8px 6px 0;border:1px solid var(--ink)}.btn.secondary{background:transparent;color:var(--ink)}.btn.rust{background:var(--rust);border-color:var(--rust)}.site-header{position:sticky;top:0;z-index:10;background:rgba(248,241,231,.96);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:14px 0}.brand{display:flex;align-items:center;gap:12px;font-weight:900;font-size:22px}.brand img{width:54px;height:54px;border-radius:50%;object-fit:cover}.nav-links{display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-weight:800}.hero{padding:90px 0;background:radial-gradient(circle at 85% 8%,#e7c2a2 0,transparent 28%),var(--cream)}.hero-grid,.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}.hero-card,.card{background:var(--paper);border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:0 18px 40px rgba(0,0,0,.06)}.image-placeholder{height:520px;border-radius:22px;background:linear-gradient(135deg,#d7c4a8,#f4e8d5);display:flex;align-items:center;justify-content:center;color:var(--muted);font-weight:800}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.banner{background:var(--ink);color:#fff;border-radius:34px;padding:44px}.banner .eyebrow{color:#f2b48f}.form{display:grid;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form input,.form textarea,.form select{width:100%;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff;font:inherit}.form textarea{min-height:115px}.faq details{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:18px;margin:12px 0}.faq summary{font-weight:900;cursor:pointer}.products{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:14px}.product-card img{border-radius:16px;aspect-ratio:1/1;object-fit:cover;background:#ddd}.price{font-weight:900;color:var(--rust)}.footer{padding:44px 0;background:#111;color:#fff}.footer .muted{color:#cabfad}@media(max-width:850px){.nav{align-items:flex-start}.nav-links{display:none}.hero-grid,.grid-2,.grid-3,.products,.form-row{grid-template-columns:1fr}.section{padding:50px 0}.image-placeholder{height:360px}}
body {
  background: #000 !important;
  color: #f7f3e8 !important;
}

.site-header {
  background: #050505 !important;
  border-bottom: 1px solid #181818 !important;
}

.nav {
  padding: 18px 0 !important;
}

.brand span {
  color: #f7f3e8 !important;
}

.brand span::after {
  content: " Flea";
  color: #4cff63;
}

.nav-links a {
  color: #bdbdbd !important;
}

.nav-links a:hover {
  color: #4cff63 !important;
}

.btn.rust {
  background: #4cff63 !important;
  border-color: #4cff63 !important;
  color: #000 !important;
  border-radius: 8px !important;
  padding: 12px 20px !important;
}

.hero {
  background: #000 !important;
  padding: 90px 0 80px !important;
}

.hero-grid {
  grid-template-columns: 0.95fr 1.05fr !important;
  gap: 70px !important;
}

.eyebrow {
  color: #4cff63 !important;
  background: rgba(76, 255, 99, 0.09);
  display: inline-block;
  padding: 8px 16px;
  border-radius: 999px;
}

h1 {
  color: #f7f3e8 !important;
  font-size: clamp(48px, 6vw, 82px) !important;
  line-height: 0.95 !important;
  letter-spacing: -2px;
}

h1 em,
h1 i {
  color: #4cff63 !important;
}

.hero p {
  color: #d8cdb9 !important;
  font-size: 21px !important;
  max-width: 700px;
}

.hero-card {
  background: rgba(76, 255, 99, 0.08) !important;
  border: 18px solid rgba(76, 255, 99, 0.12) !important;
  border-radius: 24px !important;
  padding: 12px !important;
  box-shadow: 0 0 40px rgba(76,255,99,.08) !important;
}

.hero-card img {
  border-radius: 14px !important;
  width: 100%;
  height: 620px;
  object-fit: cover;
}

.section {
  background: #000 !important;
}

.card,
.product-card,
details {
  background: #0b0b0b !important;
  border-color: #1f1f1f !important;
  color: #f7f3e8 !important;
}

.banner {
  background: #071407 !important;
  border: 1px solid rgba(76,255,99,.25);
}

.muted {
  color: #c9bfae !important;
}

.footer {
  background: #050505 !important;
  border-top: 1px solid #181818;
}
.hero .btn{
display:none!important;
}

.about-story {
  background: #141618 !important;
}

.about-story-grid {
  display: grid;
  grid-template-columns: 0.9fr 1.25fr;
  gap: 70px;
  align-items: center;
}

.about-story-image img {
  border-radius: 18px;
  width: 100%;
  height: 560px;
  object-fit: cover;
  box-shadow: 0 25px 50px rgba(0,0,0,.35);
}

.about-story-content h2 {
  font-size: clamp(42px, 5vw, 68px) !important;
  line-height: 1.08 !important;
}

.about-story-content p {
  color: #cfc5b3;
  font-size: 21px;
  max-width: 900px;
}

.about-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-top: 34px;
}

.about-stats div {
  border-left: 2px solid #4cff63;
  padding-left: 22px;
}

.about-stats strong {
  display: block;
  font-family: Georgia, serif;
  color: #fff;
  font-size: 38px;
  line-height: 1;
}

.about-stats span {
  color: #cfc5b3;
  font-size: 17px;
}

@media(max-width:850px){
  .about-story-grid {
    grid-template-columns: 1fr;
  }

  .about-story-image img {
    height: 420px;
  }

  .about-stats {
    grid-template-columns: 1fr;
  }
}
.gallery-page {
  background: #000 !important;
  color: #f7f3e8 !important;
}

.gallery-top {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 50px;
  align-items: end;
  border-bottom: 1px solid #1f1f1f;
  padding-bottom: 40px;
  margin-bottom: 32px;
}

.gallery-top h1 {
  font-size: clamp(56px, 9vw, 130px) !important;
  text-transform: uppercase;
  letter-spacing: -4px;
}

.gallery-top p {
  color: #cfc5b3;
  font-size: 20px;
}

.gallery-filter {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 34px;
}

.gallery-filter span {
  border: 1px solid #2c2c2c;
  color: #f7f3e8;
  padding: 12px 22px;
  border-radius: 999px;
  font-weight: 800;
  text-transform: uppercase;
  font-size: 14px;
}

.gallery-filter span:first-child {
  background: #4cff63;
  color: #000;
  border-color: #4cff63;
}

.gallery-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 18px;
}

.gallery-item {
  background: #0d0d0d;
  border: 1px solid #1f1f1f;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
}

.gallery-item:nth-child(1) {
  grid-column: span 5;
}

.gallery-item:nth-child(2) {
  grid-column: span 4;
}

.gallery-item:nth-child(3) {
  grid-column: span 3;
}

.gallery-item:nth-child(4) {
  grid-column: span 4;
}

.gallery-item:nth-child(5) {
  grid-column: span 5;
}

.gallery-item:nth-child(6) {
  grid-column: span 3;
}

.gallery-item img {
  width: 100%;
  height: 340px;
  object-fit: cover;
  filter: saturate(.9) contrast(1.05);
}

.gallery-caption {
  padding: 18px;
}

.gallery-caption h3 {
  margin-bottom: 6px;
}

.gallery-caption p {
  color: #cfc5b3;
  margin: 0;
}

@media(max-width:850px) {
  .gallery-top {
    grid-template-columns: 1fr;
  }

  .gallery-grid {
    grid-template-columns: 1fr;
  }

  .gallery-item,
  .gallery-item:nth-child(n) {
    grid-column: span 1;
  }

  .gallery-item img {
    height: 280px;
  }
}
.gallery-filter button {
  border: 1px solid #2c2c2c;
  color: #f7f3e8;
  background: transparent;
  padding: 14px 28px;
  border-radius: 999px;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 15px;
  cursor: pointer;
}

.gallery-filter button.active {
  background: #4cff63;
  color: #000;
  border-color: #4cff63;
}
.gallery-page {
  padding-top: 55px !important;
}

.gallery-top h1 {
  font-size: clamp(36px, 5vw, 72px) !important;
  max-width: 700px !important;
  letter-spacing: -3px !important;
  line-height: .88 !important;
  font-weight: 800 !important;
  letter-spacing: -2px !important;
  line-height: .9 !important;
}
.gallery-top .intro-text {
  font-size: 16px !important;
  max-width: 420px !important;
  line-height: 1.7 !important;
  opacity: .9;
}

.gallery-top {
  grid-template-columns: 1.1fr .9fr !important;
  gap: 40px !important;
  padding-bottom: 28px !important;
  margin-bottom: 24px !important;
}

.gallery-filter {
  margin-bottom: 26px !important;
}

.gallery-filter button {
  border-radius: 4px !important;
  padding: 13px 24px !important;
}

.gallery-grid {
  grid-template-columns: 330px 1fr 300px !important;
  gap: 18px !important;
  align-items: start;
}

.gallery-item {
  border-radius: 6px !important;
}

.gallery-item img {
  height: 210px !important;
  border-radius: 0 !important;
}

.gallery-item:nth-child(1) {
  grid-column: 1 !important;
  grid-row: span 2 !important;
  min-height: 430px;
}

.gallery-item:nth-child(1) img {
  height: 260px !important;
}

.gallery-item:nth-child(2),
.gallery-item:nth-child(3),
.gallery-item:nth-child(4),
.gallery-item:nth-child(5) {
  grid-column: auto !important;
}

.gallery-caption {
  padding: 18px !important;
}

@media(max-width:850px) {
  .gallery-top h1 {
    font-size: 58px !important;
  }

  .gallery-grid {
    grid-template-columns: 1fr !important;
  }

  .gallery-item:nth-child(n) {
    grid-column: auto !important;
    grid-row: auto !important;
    min-height: auto;
  }
}
.event-card-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
  margin-top: 40px;
}

.event-card {
  background: #0b0b0b;
  border: 1px solid #2a2a2a;
  border-radius: 8px;
  overflow: hidden;
  transition: .25s ease;
}

.event-card:hover {
  transform: translateY(-6px);
  border-color: #4cff63;
}

.event-card img {
  width: 100%;
  height: 330px;
  object-fit: cover;
}

.event-card-info {
  padding: 26px;
}

.event-card-info h3 {
  color: #f7f3e8;
  font-size: 28px;
  line-height: 1.1;
}

.event-card-info span {
  color: #f7f3e8;
  font-weight: 700;
}

@media(max-width:900px){
  .event-card-grid {
    grid-template-columns: 1fr;
  }
}
.event-album {
  background: #050505;
  color: #f5f1ea;
  padding: 70px 0;
}

.back-link {
  color: #4cff63;
  text-decoration: none;
  display: inline-block;
  margin-bottom: 40px;
}

.album-hero {
  margin-bottom: 50px;
}

.album-info h1 {
  font-size: clamp(52px,6vw,90px);
  line-height: .95;
  margin-bottom: 20px;
}

.album-info p {
  max-width: 700px;
  font-size: 22px;
  color: #d6d6d6;
}

.album-meta {
  display: flex;
  gap: 30px;
  margin-top: 25px;
  color: #4cff63;
}

.album-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 18px;
}

.album-photo img {
  width: 100%;
  height: 320px;
  object-fit: cover;
  border-radius: 8px;
  transition: .25s ease;
}

.album-photo img:hover {
  transform: scale(1.02);
}

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

  .album-info h1{
    font-size:52px;
  }
}

/* MOBILE RESPONSIVE */
@media screen and (max-width: 768px) {

  .hero-grid,
  .about-grid,
  .booking-grid,
  .gallery-header,
  .event-layout {
    grid-template-columns: 1fr !important;
    display: grid;
    gap: 24px;
  }

  .hero h1,
  .gallery-title,
  .section-title,
  .about-title,
  .event-title {
    font-size: 58px !important;
    line-height: 0.95 !important;
  }

  .hero p,
  .about p,
  .event-description,
  .section-text {
    font-size: 18px !important;
    line-height: 1.5 !important;
  }

  .hero-image img,
  .gallery-card img,
  .event-photo img {
    width: 100% !important;
    height: auto !important;
  }

  .site-header {
    padding: 14px 20px !important;
  }

  .nav-links {
    gap: 14px !important;
    flex-wrap: wrap;
    justify-content: center;
  }

  .nav-links a {
    font-size: 15px !important;
  }

  .btn,
  .btn-rust {
    width: 100%;
    text-align: center;
  }

  .gallery-grid,
  .event-grid {
    grid-template-columns: 1fr !important;
  }

  section {
    padding: 60px 20px !important;
  }

}
#events .grid-3 {
  grid-template-columns: 420px 1fr !important;
  align-items: stretch;
}

#events .card {
  max-width: 420px;
}

#events .card img {
  width: 100%;
  border-radius: 18px;
  margin-bottom: 22px;
}

#events .card h3 {
  font-size: 32px !important;
}

#events .card p {
  font-size: 18px;
}

@media(max-width:768px){
  #events .grid-3 {
    grid-template-columns: 1fr !important;
  }

  #events h2 {
    font-size: 44px !important;
  }
}
#events .card img{
  width:100%;
  height:260px;
  object-fit:cover;
  border-radius:18px;
  margin-bottom:18px;
}

#events .card{
  max-width:420px;
  overflow:hidden;
}

#events .grid-3{
  display:flex;
  gap:24px;
  flex-wrap:wrap;
}

@media(max-width:768px){

  #events h2{
    font-size:52px !important;
    line-height:1;
  }

  #events .card{
    max-width:100%;
  }

  #events .card img{
    height:220px;
  }
}

.gallery-preview-section {
  background: #030303;
  padding: 80px 0;
}

.gallery-preview-box {
  border: 1px solid #39d353;
  border-radius: 42px;
  background: radial-gradient(circle at 75% 50%, rgba(76,255,99,.14), transparent 45%), #050505;
  padding: 70px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 55px;
  align-items: center;
}

.gallery-preview-text h2 {
  font-size: clamp(44px, 5vw, 78px) !important;
  line-height: .98 !important;
}

.gallery-preview-text h2 em {
  color: #4cff63;
}

.gallery-preview-text p {
  color: #d8d0c2;
  font-size: 22px;
  max-width: 620px;
}

.gallery-preview-btn {
  display: inline-flex;
  margin-top: 24px;
  background: #4cff63;
  color: #000;
  padding: 18px 34px;
  border-radius: 10px;
  font-weight: 900;
  font-size: 20px;
}

.gallery-preview-collage {
  position: relative;
  min-height: 520px;
}

.gallery-preview-collage{
  position:relative;
  min-height:650px;
  display:flex;
  align-items:center;
  justify-content:center;
}

..gallery-preview-collage{
  position:relative;
  min-height:620px;
  width:100%;
}

/* TRUE FINAL GALLERY PREVIEW POLAROID LAYOUT */
.gallery-preview-box{
  grid-template-columns: 1fr 1fr !important;
  gap: 40px !important;
  align-items: center !important;
}

.gallery-preview-collage{
  position: relative !important;
  height: 560px !important;
  min-height: 560px !important;
  width: 100% !important;
  overflow: visible !important;
}

/* reset every photo */
.gallery-preview-collage .polaroid{
  position: absolute !important;
  background: #f5f1e8 !important;
  padding: 10px !important;
  border-radius: 3px !important;
  box-shadow: 0 22px 45px rgba(0,0,0,.45) !important;
  overflow: hidden !important;
}

.gallery-preview-collage .polaroid img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* top wide photo */
.gallery-preview-collage .polaroid-1{
  width: 390px !important;
  height: 220px !important;
  top: 30px !important;
  right: 90px !important;
  left: auto !important;
  bottom: auto !important;
  transform: rotate(4deg) !important;
  z-index: 1 !important;
}

/* left vertical photo */
.gallery-preview-collage .polaroid-2{
  width: 180px !important;
  height: 300px !important;
  top: 210px !important;
  left: 90px !important;
  right: auto !important;
  bottom: auto !important;
  transform: rotate(-6deg) !important;
  z-index: 3 !important;
}

/* bottom right wide photo */
.gallery-preview-collage .polaroid-3{
  width: 370px !important;
  height: 220px !important;
  top: 275px !important;
  right: 35px !important;
  left: auto !important;
  bottom: auto !important;
  transform: rotate(-3deg) !important;
  z-index: 2 !important;
}

@media(max-width:850px){
  .gallery-preview-box{
    grid-template-columns:1fr !important;
  }

  .gallery-preview-collage{
    height:auto !important;
    min-height:auto !important;
    display:grid !important;
    gap:18px !important;
  }

  .gallery-preview-collage .polaroid{
    position:static !important;
    width:100% !important;
    height:240px !important;
    transform:none !important;
  }
}

/* MOBILE GALLERY PREVIEW CLEANUP */
@media(max-width:850px){

  .gallery-preview-box{
    padding:28px !important;
    border-radius:26px !important;
  }

  .gallery-preview-text h2{
    font-size:42px !important;
    line-height:1 !important;
  }

  .gallery-preview-text p{
    font-size:17px !important;
  }

  .gallery-preview-collage{
    height:auto !important;
    min-height:auto !important;
    display:block !important;
  }

  .gallery-preview-collage .polaroid{
    position:static !important;
    width:100% !important;
    height:230px !important;
    transform:none !important;
    margin-top:18px !important;
  }

  .gallery-preview-collage .polaroid-2,
  .gallery-preview-collage .polaroid-3{
    display:none !important;
  }

  .gallery-preview-collage .polaroid img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }
}

/* MOBILE 3 PHOTO COMPACT COLLAGE */
@media(max-width:850px){

  .gallery-preview-box{
    padding:28px !important;
    border-radius:26px !important;
  }

  .gallery-preview-text h2{
    font-size:42px !important;
    line-height:1 !important;
  }

  .gallery-preview-text p{
    font-size:17px !important;
  }

  .gallery-preview-collage{
    height:auto !important;
    min-height:auto !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    margin-top:24px !important;
  }

  .gallery-preview-collage .polaroid{
    position:static !important;
    transform:none !important;
    width:100% !important;
    height:150px !important;
    padding:6px !important;
  }

  .gallery-preview-collage .polaroid-1{
    grid-column:1 / 3 !important;
    height:190px !important;
  }

  .gallery-preview-collage .polaroid-2,
  .gallery-preview-collage .polaroid-3{
    grid-column:auto !important;
    display:block !important;
  }

  .gallery-preview-collage .polaroid img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }
}

/* MOBILE SIDE PADDING FIX */
@media(max-width:850px){

  .page-width{
    width:100% !important;
    max-width:100% !important;
    padding-left:24px !important;
    padding-right:24px !important;
  }

  section,
  .section{
    overflow-x:hidden !important;
  }

  .about-story,
  .shop-info,
  .vendor-form,
  .venue-form,
  .contact-faq,
  .gallery-preview-section{
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .card,
  .banner,
  .about-story-image img,
  .gallery-preview-box{
    width:100% !important;
    max-width:100% !important;
  }

  input,
  textarea,
  select{
    max-width:100% !important;
  }
}

/* HERO MOBILE FIX */
@media(max-width:850px){

  .hero-image,
  .hero-image img{
    height:420px !important;
    max-height:420px !important;
    object-fit:cover !important;
    border-radius:28px !important;
  }

  .hero-image{
    overflow:hidden !important;
    margin-bottom:32px !important;
  }

  .hero h1{
    font-size:64px !important;
    line-height:0.95 !important;
  }

  .hero-text{
    padding-right:10px !important;
  }
}

/* REAL MOBILE HEADER FIX */
@media(max-width:850px){

  .site-header .nav{
    display:grid !important;
    grid-template-columns: 1fr !important;
    gap:14px !important;
    padding:18px 24px !important;
    justify-items:center !important;
    text-align:center !important;
  }

  .site-header .brand{
    justify-content:center !important;
    gap:10px !important;
  }

  .site-header .brand img{
    width:58px !important;
    height:58px !important;
  }

  .site-header .brand span{
    font-size:28px !important;
    line-height:1 !important;
  }

  .site-header .nav-links{
    display:none !important;
  }

  .site-header .btn.rust{
    width:auto !important;
    padding:12px 22px !important;
    font-size:18px !important;
    border-radius:14px !important;
    margin:0 !important;
  }
}

/* FIX HERO IMAGE ON MOBILE */
@media(max-width:850px){

  .hero-card{
    height:360px !important;
    max-height:360px !important;
    padding:12px !important;
    overflow:hidden !important;
    border-radius:26px !important;
  }

  .hero-card img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center !important;
    border-radius:18px !important;
  }

  .hero-grid{
    gap:30px !important;
  }
}

/* DSM FLEA PREMIUM FOOTER */

.dsm-footer{
  padding:80px 60px;
  background:#050505;
  border-top:1px solid #1cff67;
}

.footer-top{
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:80px;
  padding-bottom:50px;
  border-bottom:1px solid rgba(255,255,255,0.08);
}

.footer-brand h2{
  font-size:72px;
  line-height:0.9;
  margin-bottom:24px;
  color:#fff;
}

.footer-brand span{
  color:#4cff68;
}

.footer-brand p{
  max-width:420px;
  color:#b9b9b9;
  font-size:20px;
  line-height:1.7;
}

.footer-socials{
  display:flex;
  gap:14px;
  margin-top:32px;
  flex-wrap:wrap;
}

.footer-socials a{
  border:1px solid #24ff70;
  color:#fff;
  text-decoration:none;
  padding:12px 18px;
  border-radius:999px;
  transition:0.25s ease;
  font-size:14px;
}

.footer-socials a:hover{
  background:#24ff70;
  color:#000;
}

.footer-label{
  color:#24ff70;
  font-size:14px;
  font-weight:700;
  letter-spacing:2px;
  margin-bottom:20px;
}

.footer-news-text{
  color:#d1d1d1;
  line-height:1.8;
  margin-bottom:28px;
  font-size:18px;
}

.footer-input{
  display:flex;
  overflow:hidden;
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.08);
}

.footer-input input{
  flex:1;
  background:#0c0c0c;
  border:none;
  color:#fff;
  padding:18px;
  font-size:16px;
}

.footer-input button{
  width:74px;
  border:none;
  background:#56f16e;
  color:#000;
  font-size:28px;
  font-weight:700;
  cursor:pointer;
}

.footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
  padding-top:35px;
  color:#b9b9b9;
  font-size:15px;
}

/* MOBILE */

@media(max-width:850px){

  .dsm-footer{
    padding:60px 24px;
  }

  .footer-top{
    grid-template-columns:1fr;
    gap:50px;
  }

  .footer-brand h2{
    font-size:56px;
  }

  .footer-brand p{
    font-size:17px;
  }

  .footer-bottom{
    flex-direction:column;
    gap:14px;
  }

  .footer-input input{
    font-size:15px;
  }
}

.footer-socials a{
  width:54px!important;
  height:54px!important;
  border:1px solid #22ff66!important;
  border-radius:50%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:22px!important;
  color:#fff!important;
  padding:0!important;
}

section {
  position: relative;
  margin-bottom: 70px;
}

section::after {
  content: "";
  position: absolute;
  bottom: -35px;
  left: 50%;
  transform: translateX(-50%);
  width: 88%;
  height: 1px;
  background: linear-gradient(
    to right,
    transparent,
    rgba(66, 255, 117, 0.45),
    transparent
  );
}

.page-width,
.gallery-preview-box,
.shop-info-box,
.about-brand-box,
.event-card {
  border: 1px solid rgba(66,255,117,0.12);
  box-shadow:
    0 0 0 1px rgba(66,255,117,0.05),
    0 0 40px rgba(0,255,120,0.04);
}

border-radius: 32px;
padding: 60px;
background: linear-gradient(
  180deg,
  rgba(0, 25, 10, 0.95),
  rgba(0, 0, 0, 1)
);

section {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

/* FORCE ABOUT SECTION BACK TO BLACK */
.about-brand,
.about-brand.section,
section.about-brand,
#about,
#about .page-width,
#about .about-grid,
.about-grid {
  background: #000 !important;
}

/* BIG SPINNING LOGO SECTION */
.spin-logo-section{
  background:#000;
  padding:90px 20px 40px;
  text-align:center;
  position:relative;
  overflow:hidden;
}

.spin-logo-wrap{
  max-width:1200px;
  margin:auto;
}

.spin-logo{
  width:240px;
  height:auto;
  margin-bottom:30px;

  animation: dsmSpin 10s linear infinite;

  filter:
    drop-shadow(0 0 20px rgba(76,255,99,.35))
    drop-shadow(0 0 50px rgba(76,255,99,.15));
}

.spin-logo-section h2{
  font-size:78px;
  line-height:0.95;
  color:#f5efe4;
  margin:0 auto;
  max-width:1100px;
}

@keyframes dsmSpin{
  0%{
    transform:rotateY(0deg);
  }

  100%{
    transform:rotateY(360deg);
  }
}

@media(max-width:768px){

  .spin-logo{
    width:150px;
  }

  .spin-logo-section h2{
    font-size:46px;
  }

}

/* hide hamburger on desktop */
#mobile-menu-toggle,
.hamburger{
  display:none;
}

/* mobile menu */
@media screen and (max-width: 850px){

  .hamburger{
    display:block !important;
    color:white;
    font-size:34px;
    cursor:pointer;
    margin-left:auto;
    z-index:1001;
  }

  .nav-links{
    display:none !important;
    position:absolute;
    top:90px;
    left:20px;
    right:20px;
    background:#050505;
    border:1px solid rgba(76,255,99,.25);
    border-radius:18px;
    padding:20px;
    flex-direction:column;
    gap:16px;
    z-index:1000;
  }

  #mobile-menu-toggle:checked ~ .nav-links{
    display:flex !important;
  }

  .nav-links a{
    font-size:20px;
  }
}

@media screen and (max-width: 850px){

  .site-header{
    padding: 14px 18px !important;
  }

  .site-header .nav{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:12px;
  }

  /* logo smaller */
  .brand img{
    width:52px !important;
    height:52px !important;
    object-fit:contain;
  }

  /* text */
  .brand span{
    font-size:26px !important;
    line-height:1;
  }

  /* button */
  .btn.rust{
    margin-top:16px !important;
    width:100%;
    text-align:center;
    padding:16px 20px !important;
    border-radius:18px;
    font-size:18px;
  }

  /* hamburger */
  .hamburger{
    font-size:42px !important;
    margin-left:0 !important;
    justify-self:end;
  }
}

/* FINAL MOBILE HEADER FIX */
@media(max-width:850px){

  .site-header{
    padding:0 !important;
  }

  .site-header .nav{
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    grid-template-areas:
      "brand brand menu"
      "button button button" !important;
    gap:10px !important;
    padding:18px 22px !important;
    min-height:0 !important;
  }

  .site-header .brand{
    grid-area:brand !important;
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
  }

  .site-header .brand img{
    width:46px !important;
    height:46px !important;
  }

  .site-header .brand span{
    font-size:30px !important;
  }

  .hamburger{
    grid-area:menu !important;
    font-size:34px !important;
    align-self:center !important;
  }

  .site-header .btn.rust{
    grid-area:button !important;
    width:100% !important;
    max-width:270px !important;
    justify-self:center !important;
    padding:14px 18px !important;
    font-size:19px !important;
    margin:0 !important;
  }
}

/* CLEAN MOBILE DROPDOWN */
@media(max-width:850px){

  .site-header{
    position:relative !important;
    z-index:50 !important;
  }

  .site-header .nav{
    position:relative !important;
    overflow:visible !important;
  }

  .nav-links{
    top:100% !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    margin-top:14px !important;
    padding:18px 0 !important;
    background:#050505 !important;
    border:1px solid rgba(76,255,99,.35) !important;
    border-radius:22px !important;
    box-shadow:0 18px 45px rgba(0,0,0,.55) !important;
  }

  #mobile-menu-toggle:checked ~ .nav-links{
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
  }

  .nav-links a{
    padding:14px 0 !important;
    text-align:center !important;
    font-size:20px !important;
    border-bottom:1px solid rgba(255,255,255,.06) !important;
  }

  .nav-links a:last-child{
    border-bottom:none !important;
  }
}

/* EVENTS SECTION - 3 CARDS PER ROW */
#events .grid-3{
  display:grid !important;
  grid-template-columns:repeat(3, 1fr) !important;
  gap:24px !important;
  align-items:start !important;
}

#events .card{
  width:100% !important;
  max-width:none !important;
}

#events .card img{
  width:100% !important;
  height:260px !important;
  object-fit:cover !important;
  border-radius:20px !important;
}

@media(max-width:1000px){
  #events .grid-3{
    grid-template-columns:repeat(2, 1fr) !important;
  }
}

@media(max-width:700px){
  #events .grid-3{
    grid-template-columns:1fr !important;
  }
}

/* MOBILE EVENTS: REAL HORIZONTAL CAROUSEL */
@media(max-width:850px){

  #events .grid-3{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    gap:18px !important;
    scroll-behavior:smooth !important;
    scroll-snap-type:x mandatory !important;
    padding:0 22px 20px !important;
  }

  #events .grid-3 .card{
    flex:0 0 88% !important;
    width:88% !important;
    min-width:88% !important;
    max-width:88% !important;
    scroll-snap-align:center !important;
    margin:0 !important;
  }

  #events .grid-3::-webkit-scrollbar{
    display:none !important;
  }

  #events .event-arrows{
    display:flex !important;
    justify-content:center !important;
    gap:22px !important;
    margin-top:16px !important;
  }

  #events .event-arrows button{
    width:58px !important;
    height:58px !important;
    border-radius:50% !important;
    border:none !important;
    background:#4cff63 !important;
    color:#000 !important;
    font-size:34px !important;
    font-weight:900 !important;
  }
}

@media(min-width:851px){
  #events .event-arrows{
    display:none !important;
  }
}

@media(max-width:850px){

  #events .page-width{
    position:relative !important;
    overflow:hidden !important;
  }

  #events .grid-3{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:hidden !important;
    gap:18px !important;
    scroll-behavior:smooth !important;
    padding:0 60px 20px !important;
  }

  #events .grid-3 .card{
    flex:0 0 100% !important;
    min-width:100% !important;
    max-width:100% !important;
  }

  #events .event-arrows{
    position:absolute !important;
    top:50% !important;
    left:8px !important;
    right:8px !important;
    display:flex !important;
    justify-content:space-between !important;
    pointer-events:none !important;
    z-index:20 !important;
  }

  #events .event-arrows button{
    pointer-events:auto !important;
    width:54px !important;
    height:54px !important;
    border-radius:50% !important;
    border:none !important;
    background:#4cff63 !important;
    color:#000 !important;
    font-size:34px !important;
    font-weight:900 !important;
  }
}

@media(min-width:851px){
  #events .event-arrows{
    display:none !important;
  }
}

@media screen and (max-width: 768px){

  #events .card{
    min-width: 86vw;
  }

  #events .card h3{
    font-size: 52px;
    line-height: 0.95;
    word-break: normal;
  }

}
@media(max-width:850px){

  #events .grid-3 .card{
    flex:0 0 76vw !important;
    min-width:76vw !important;
    max-width:76vw !important;
    padding:24px !important;
    overflow:hidden !important;
  }

  #events .card h3{
    font-size:36px !important;
    line-height:1.05 !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
  }

  #events .card p{
    font-size:22px !important;
    line-height:1.35 !important;
  }

  #events .card img{
    width:100% !important;
    height:280px !important;
    object-fit:cover !important;
    border-radius:18px !important;
  }
}

#events .card a{
  display:block;
  border-radius:24px;
  overflow:hidden;
  position:relative;
}

#events .card a img{
  transition:0.3s ease;
  cursor:pointer;
}

#events .card a:hover img{
  filter:brightness(0.55);
  transform:scale(1.02);
}

/* EVENT IMAGE CLICK HOVER - LIVE SITE */
#events .card a,
#events .card a[href] {
  display: block !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  cursor: pointer !important;
}

#events .card a[href] img {
  transition: all .3s ease !important;
}

#events .card a[href]:hover img {
  filter: brightness(.55) !important;
  transform: scale(1.03) !important;
}

.shop-hero-new{
  background:#000!important;
  padding:24px 0 55px!important;
}

.shop-hero-card{
  width:96%!important;
  margin:0 auto!important;
  padding:34px!important;
  border:1px solid rgba(76,255,99,.45)!important;
  border-radius:28px!important;
  display:grid!important;
  grid-template-columns:1fr 1.05fr!important;
  gap:46px!important;
  align-items:center!important;
  background:radial-gradient(circle at center, rgba(76,255,99,.06), #000 70%)!important;
}

.shop-hero-left h1{
  font-size:74px!important;
  line-height:.86!important;
  margin:18px 0!important;
  color:#f7f1e8!important;
}

.shop-hero-left p{
  font-size:19px!important;
  line-height:1.45!important;
  color:#d8d0c4!important;
  max-width:760px!important;
}

.shop-features{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:20px!important;
  margin:28px 0!important;
}

.shop-features div{
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  column-gap:12px!important;
  border-right:2px solid #4cff63!important;
  padding-right:16px!important;
}

.shop-features div:last-child{
  border-right:none!important;
}

.shop-features span{
  color:#4cff63!important;
  font-size:42px!important;
  grid-row:1 / 3!important;
}

.shop-features strong{
  color:#fff!important;
  font-size:20px!important;
}

.shop-features small{
  color:#d8d0c4!important;
  font-size:15px!important;
}

.shop-buttons{
  display:flex!important;
  gap:22px!important;
}

.shop-buttons a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:260px!important;
  height:62px!important;
  background:#4cff63!important;
  color:#000!important;
  text-decoration:none!important;
  border-radius:8px!important;
  font-weight:900!important;
  letter-spacing:5px!important;
  font-size:18px!important;
}

.shop-buttons a.outline{
  background:transparent!important;
  color:#4cff63!important;
  border:2px solid #4cff63!important;
}

.shop-hero-right img{
  width:100%!important;
  height:650px!important;
  object-fit:cover!important;
  border-radius:22px!important;
  border:1px solid #4cff63!important;
}

@media(max-width:850px){
  .shop-hero-card{
    grid-template-columns:1fr!important;
    padding:22px!important;
  }

  .shop-hero-left h1{
    font-size:44px!important;
  }

  .shop-features{
    grid-template-columns:1fr!important;
  }

  .shop-features div{
    border-right:none!important;
    border-bottom:1px solid rgba(76,255,99,.35)!important;
    padding-bottom:14px!important;
  }

  .shop-buttons{
    flex-direction:column!important;
  }

  .shop-buttons a{
    width:100%!important;
    min-width:0!important;
  }

  .shop-hero-right img{
    height:360px!important;
  }
}

.shop-hero-card{
  align-items:start !important;
}

.shop-features > div{
  padding-right: 18px !important;
}

.shop-features > div:not(:last-child){
  border-right: 1px solid #39ff5a !important;
}

.feature-icon{
  width:28px;
  height:28px;
  color:#39ff5a;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}

.feature-icon:first-child,
.shop-features div:first-child .feature-icon{
  width:34px;
  height:34px;
}

.feature-icon svg{
  width:100%;
  height:100%;
}

.shop-preview{
  margin-top:55px;
}

.shop-preview-head span{
  color:#4cff63;
  font-size:18px;
  letter-spacing:2px;
}

.shop-preview-head h3{
  font-size:36px;
  margin:6px 0 24px;
  color:#f8f1e6;
}

.shop-carousel{
  display:flex;
  gap:22px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  padding-bottom:18px;
}

.shop-carousel::-webkit-scrollbar{
  display:none;
}

.shop-item{
  min-width:260px;
  background:#151515;
  border:1px solid rgba(76,255,99,.35);
  border-radius:18px;
  overflow:hidden;
  scroll-snap-align:start;
}

.shop-item img{
  width:100%;
  height:260px;
  object-fit:cover;
}

.shop-item-info{
  padding:14px 16px 18px;
}

.shop-item-info p{
  color:#fff;
  font-weight:700;
  margin:0 0 6px;
}

.shop-item-info strong{
  color:#4cff63;
}

@media(max-width:850px){
  .shop-item{
    min-width:75%;
  }
}

.shop-preview-top{
  display:flex;
  justify-content:space-between;
  align-items:end;
  margin-bottom:24px;
}

.shop-preview-top p{
  color:#4cff63;
  letter-spacing:2px;
  margin:0;
  font-size:18px;
}

.shop-preview-top h3{
  color:#f8f1e6;
  font-size:36px;
  margin:6px 0 0;
}

.shop-preview-controls{
  display:flex;
  align-items:center;
  gap:14px;
}

.shop-preview-controls button{
  width:50px;
  height:50px;
  border-radius:8px;
  border:1px solid #4cff63;
  background:transparent;
  color:#4cff63;
  font-size:26px;
  cursor:pointer;
}

.shop-count{
  color:#4cff63;
  font-weight:900;
  letter-spacing:2px;
}

.shop-item-info{
  display:flex;
  justify-content:space-between;
  align-items:center;
  background:#151515;
}

.shop-plus{
  width:34px;
  height:34px;
  border:1px solid #4cff63;
  border-radius:50%;
  color:#4cff63!important;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:26px;
}

.shop-dots{
  display:flex;
  justify-content:center;
  gap:14px;
  margin-top:22px;
}

.shop-dots span{
  width:12px;
  height:8px;
  background:#555;
  border-radius:20px;
}

.shop-dots span:first-child{
  width:48px;
  background:#4cff63;
}

@media(max-width:850px){
  .shop-preview-top{
    align-items:start;
    gap:16px;
  }

  .shop-preview-controls button{
    width:44px;
    height:44px;
  }
}

.shop-top-card{
  display:grid!important;
  grid-template-columns:1.25fr .75fr!important;
  align-items:center!important;
  gap:40px!important;
  padding:60px!important;
  border:1px solid rgba(76,255,99,.35)!important;
  border-radius:28px!important;
  background:radial-gradient(circle at 70% 50%, rgba(76,255,99,.18), rgba(0,0,0,.95) 55%)!important;
}

.shop-top-left h2{
  font-size:70px!important;
  line-height:.95!important;
  color:#f8f1e6!important;
  margin:22px 0!important;
}

.shop-top-left h2 span{
  color:#4cff63!important;
}

.shop-top-left p{
  color:#ddd6cc!important;
  font-size:22px!important;
  line-height:1.4!important;
  max-width:760px!important;
}

.shop-main-btn{
  display:inline-flex!important;
  align-items:center!important;
  gap:18px!important;
  background:#4cff63!important;
  color:#000!important;
  padding:20px 34px!important;
  border-radius:9px!important;
  font-size:24px!important;
  font-weight:900!important;
  text-decoration:none!important;
  margin-top:24px!important;
}

.shop-top-logo{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
}

.shop-top-logo img{
  width:100%!important;
  max-width:440px!important;
  filter:drop-shadow(0 0 28px rgba(76,255,99,.65))!important;
}

@media(max-width:850px){
  .shop-top-card{
    grid-template-columns:1fr!important;
    padding:28px!important;
  }

  .shop-top-left h2{
    font-size:42px!important;
  }

  .shop-top-left p{
    font-size:18px!important;
  }

  .shop-top-logo img{
    max-width:280px!important;
  }
}

.shop-preview {
  padding-left: 80px;
  padding-right: 80px;
}

.shop-item-bottom{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
}

.shop-plus-btn{
  width:42px;
  height:42px;
  border-radius:50%;
  border:2px solid #55ff66;
  background:transparent;
  color:#55ff66;
  font-size:28px;
  cursor:pointer;
  transition:.2s;
}

.shop-plus-btn:hover{
  background:#55ff66;
  color:#000;
}

#shop-info .shop-preview{
  margin-top:70px !important;
  padding:0 80px !important;
}

#shop-info .shop-preview-top{
  display:flex !important;
  justify-content:space-between !important;
  align-items:flex-end !important;
  margin-bottom:26px !important;
}

#shop-info .shop-preview-top p{
  color:#4cff63 !important;
  letter-spacing:2px !important;
  margin:0 !important;
  font-size:18px !important;
}

#shop-info .shop-preview-top h3{
  color:#f8f1e6 !important;
  font-size:36px !important;
  margin:5px 0 0 !important;
}

#shop-info .shop-carousel{
  display:flex !important;
  flex-direction:row !important;
  gap:22px !important;
  overflow-x:auto !important;
  scroll-snap-type:x mandatory !important;
  padding-bottom:20px !important;
}

#shop-info .shop-carousel::-webkit-scrollbar{
  display:none !important;
}

#shop-info .shop-item{
  flex:0 0 300px !important;
  background:#151515 !important;
  border:1px solid rgba(76,255,99,.35) !important;
  border-radius:18px !important;
  overflow:hidden !important;
  scroll-snap-align:start !important;
}

#shop-info .shop-item img{
  width:100% !important;
  height:300px !important;
  object-fit:cover !important;
  display:block !important;
}

#shop-info .shop-item-info{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  padding:16px !important;
  background:#151515 !important;
}

#shop-info .shop-item-info p{
  color:#fff !important;
  margin:0 0 6px !important;
  font-weight:800 !important;
}

#shop-info .shop-item-info strong{
  color:#4cff63 !important;
}

#shop-info .shop-plus{
  width:36px !important;
  height:36px !important;
  border:1px solid #4cff63 !important;
  border-radius:50% !important;
  color:#4cff63 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-decoration:none !important;
  font-size:28px !important;
}

#shop-info .shop-preview-controls{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
}

#shop-info .shop-preview-controls button{
  width:50px !important;
  height:50px !important;
  border-radius:8px !important;
  border:1px solid #4cff63 !important;
  background:transparent !important;
  color:#4cff63 !important;
  font-size:26px !important;
}


#shop-info .shop-top-card{
  padding:42px 60px !important;
  min-height:auto !important;
  gap:35px !important;
}

#shop-info .shop-top-left h2{
  font-size:58px !important;
  line-height:.95 !important;
  max-width:800px !important;
}

#shop-info .shop-top-left p{
  font-size:18px !important;
  line-height:1.35 !important;
  max-width:720px !important;
}

#shop-info .shop-main-btn{
  padding:16px 28px !important;
  font-size:20px !important;
  margin-top:18px !important;
}

#shop-info .shop-top-logo img{
  max-width:360px !important;
}

/* Entire top card */
.shop-top-card{
  min-height: 420px !important;
  padding: 40px 50px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
}

/* Left side */
.shop-top-left{
  max-width: 700px !important;
}

/* Main title */
.shop-top-left h2{
  font-size:72px !important;
  line-height:0.95 !important;
  margin-bottom:20px !important;
}

/* Paragraph */
.shop-top-left p{
  font-size:18px !important;
  max-width:600px !important;
}

/* Logo container */
.shop-top-logo{
  flex:0 0 380px !important;
  display:flex !important;
  justify-content:center !important;
}

/* Actual logo */
.shop-top-logo img{
  width:420px !important;
  max-width:420px !important;
  height:auto !important;
}

/* Button */
.shop-main-btn{
  margin-top:25px !important;
}

/* Arrow buttons hover */
.shop-prev,
.shop-next{
  transition: all .25s ease;
  cursor:pointer;
}

.shop-prev:hover,
.shop-next:hover{
  background:#4cff63 !important;
  color:#000 !important;
  transform:translateY(-2px);
  box-shadow:0 0 15px rgba(76,255,99,.5);
}

/* Plus button hover */
.shop-plus-btn,
.shop-plus{
  transition: all .25s ease;
  cursor:pointer;
}

.shop-plus-btn:hover,
.shop-plus:hover{
  background:#4cff63 !important;
  color:#000 !important;
  transform:scale(1.08);
  box-shadow:0 0 15px rgba(76,255,99,.5);
}
.shop-prev:active,
.shop-next:active,
.shop-plus-btn:active,
.shop-plus:active{
  transform:scale(.95);
}

.shop-preview-controls button{
  transition:all .25s ease !important;
  cursor:pointer;
}

.shop-preview-controls button:hover{
  background:#4cff63 !important;
  color:#000 !important;
  border-color:#4cff63 !important;
  box-shadow:0 0 15px rgba(76,255,99,.5);
  transform:translateY(-2px);
}

.shop-preview-controls button svg,
.shop-preview-controls button span{
  transition:all .25s ease;
}

.shop-preview-controls button:hover svg,
.shop-preview-controls button:hover span{
  color:#000 !important;
  fill:#000 !important;
  stroke:#000 !important;
}

/* FINAL HEADER LOGO SIZE FIX */
.site-header .brand img{
  width:72px !important;
  height:72px !important;
  max-width:72px !important;
  max-height:72px !important;
  object-fit:contain !important;
  border-radius:0 !important;
}

/* keep header height from getting huge */
.site-header .nav{
  padding-top:10px !important;
  padding-bottom:10px !important;
  align-items:center !important;
}

/* mobile size */
@media(max-width:850px){
  .site-header .brand img{
    width:56px !important;
    height:56px !important;
    max-width:56px !important;
    max-height:56px !important;
  }
}

/* DSM FLEA HEADER LOGO TEXT */

.brand{
  display:flex;
  align-items:center;
  gap:14px;
}

.brand img{
  width:48px;
  height:auto;
}

.brand-text{
  display:flex;
  flex-direction:column;
  line-height:1;
}

.brand-main{
  font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  font-size:42px;
  font-weight:900;
  text-transform:uppercase;
  color:#f5f3ed;
  letter-spacing:-1px;
}

.brand-sub{
  margin-top:2px;
  font-size:11px;
  font-weight:700;
  letter-spacing:1px;
  color:#62f06b;
  text-transform:uppercase;
}

.brand-main{
  font-family: Anton, Impact, sans-serif;
  font-size:36px;
  font-weight:900;
  color:#f5f3ed;
  text-transform:uppercase;
}

.brand{
  gap:10px;
}

.brand-main{
  font-size:28px;
  font-weight:900;
}

.brand-sub{
  font-size:9px;
  letter-spacing:.8px;
}

/* DSM FLEA BRAND FONT + COLOR SYSTEM */

:root{
  --dsm-black:#000000;
  --dsm-cream:#fffdec;
  --dsm-green:#8bd06f;
  --dsm-bright:#4cff63;

  --font-heavy:"Avenir Next", "Avenir Next Heavy", Impact, sans-serif;
  --font-demi:"Avenir Next", "Avenir Next Demi Bold", Arial, sans-serif;
  --font-mono:"Roboto Mono", monospace;
}

/* Whole site */
body{
  background:var(--dsm-black) !important;
  color:var(--dsm-cream) !important;
  font-family:var(--font-demi) !important;
}

/* Big headings */
h1, h2, h3,
.brand-main,
.hero h1,
.section h2,
.card h3{
  font-family:var(--font-heavy) !important;
  font-weight:900 !important;
  text-transform:none;
  color:var(--dsm-cream) !important;
}

/* Paragraphs + nav */
p, a, span, li,
.nav-links a,
.btn{
  font-family:var(--font-demi) !important;
}

/* Small labels / dates / eyebrow text */
.eyebrow,
.brand-sub,
.shop-count,
.shop-preview-top p,
#events .eyebrow{
  font-family:var(--font-mono) !important;
  font-weight:500 !important;
  letter-spacing:.16em !important;
  color:var(--dsm-bright) !important;
  text-transform:uppercase !important;
}

/* Buttons */
.btn.rust,
.shop-main-btn,
.shop-buttons a{
  background:var(--dsm-bright) !important;
  color:#000 !important;
  font-family:var(--font-demi) !important;
  font-weight:900 !important;
  letter-spacing:.08em !important;
}

/* Green accent words */
.green,
h1 em,
h1 i,
.shop-top-left h2 span{
  color:var(--dsm-bright) !important;
}

/* Header logo text */
.brand-main{
  font-size:30px !important;
  line-height:.85 !important;
  letter-spacing:-1px !important;
}

.brand-sub{
  font-size:9px !important;
  margin-top:4px !important;
  color:var(--dsm-green) !important;
}

/* DSM FLEA NAVIGATION */

.nav-links a,
.site-header nav a,
.site-header .nav-links a{
  font-family: "Avenir Next", "Avenir Next Demi Bold", sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  letter-spacing: 0px !important;
  color: #f5f3ed !important;
  text-transform: none !important;
  transition: all .25s ease;
}

.nav-links a:hover,
.site-header nav a:hover{
  color: #4cff63 !important;
}

/* HEADER: TEXT ONLY LOGO */
.site-header .brand img{
  display:none !important;
}

.site-header .brand{
  gap:0 !important;
}

.site-header .brand-main{
  font-size:34px !important;
  line-height:.82 !important;
  letter-spacing:-1.5px !important;
}

.site-header .brand-sub{
  font-size:10px !important;
  letter-spacing:2px !important;
  color:#8bd06f !important;
  margin-top:5px !important;
}

@media(max-width:850px){
  .site-header .brand-main{
    font-size:30px !important;
  }

  .site-header .brand-sub{
    font-size:9px !important;
  }
}

/* MOBILE FIX — EVENTS SECTION ONLY */
@media (max-width: 850px){

  #events.section{
    padding-top: 35px !important;
    padding-bottom: 45px !important;
  }

  #events .page-width{
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  #events h2{
    font-size: 48px !important;
    line-height: .9 !important;
    margin-bottom: 24px !important;
    max-width: 100% !important;
  }

  #events .grid-3{
    display: flex !important;
    overflow-x: auto !important;
    gap: 18px !important;
    scroll-snap-type: x mandatory !important;
    padding-bottom: 20px !important;
  }

  #events .grid-3::-webkit-scrollbar{
    display: none !important;
  }

  #events .card{
    flex: 0 0 82% !important;
    min-width: 82% !important;
    max-width: 82% !important;
    scroll-snap-align: center !important;
    padding: 22px !important;
    border-radius: 26px !important;
  }

  #events .card img{
    height: 260px !important;
    width: 100% !important;
    object-fit: cover !important;
    border-radius: 18px !important;
  }

  #events .card h3{
    font-size: 32px !important;
    line-height: .95 !important;
    margin-top: 18px !important;
    margin-bottom: 14px !important;
  }

  #events .card p{
    font-size: 18px !important;
    line-height: 1.35 !important;
  }

  #events .eyebrow{
    font-size: 13px !important;
    padding: 10px 18px !important;
  }

  #events .event-arrows{
    margin-top: 18px !important;
    margin-bottom: 0 !important;
    display: flex !important;
    justify-content: center !important;
    gap: 18px !important;
  }

  #events .event-arrows button{
    width: 56px !important;
    height: 56px !important;
    font-size: 28px !important;
  }
}

/* FINAL MOBILE EVENTS FIX */
@media(max-width:850px){

  #events.section{
    padding:35px 0 35px !important;
  }

  #events .page-width{
    padding:0 22px !important;
    overflow:hidden !important;
  }

  #events h2{
    font-size:54px !important;
    line-height:.88 !important;
    margin:0 0 28px !important;
  }

  #events .grid-3{
    display:flex !important;
    gap:22px !important;
    overflow-x:auto !important;
    scroll-snap-type:x mandatory !important;
    padding:0 0 15px !important;
  }

  #events .card{
    flex:0 0 88% !important;
    min-width:88% !important;
    max-width:88% !important;
    padding:24px !important;
    border-radius:28px !important;
    scroll-snap-align:center !important;
  }

  #events .card img{
    height:300px !important;
    width:100% !important;
    object-fit:cover !important;
    border-radius:22px !important;
  }

  #events .card h3{
    font-size:34px !important;
    line-height:1 !important;
    margin:22px 0 14px !important;
  }

  #events .card p{
    font-size:19px !important;
    line-height:1.35 !important;
  }

  #events .event-arrows{
    position:relative !important;
    display:flex !important;
    justify-content:space-between !important;
    width:88% !important;
    margin:18px auto 0 !important;
    z-index:5 !important;
  }

  #events .event-arrows button{
    width:58px !important;
    height:58px !important;
    border-radius:50% !important;
    font-size:26px !important;
  }
}

/* MOBILE HERO CLEANUP */
.shop-hero-mobile-image{
  display:none;
}

@media(max-width:850px){
  .shop-hero-new{
    padding:35px 18px !important;
  }

  .shop-hero-card{
    padding:28px !important;
    border-radius:28px !important;
  }

  .shop-hero-left h1{
    font-size:48px !important;
    line-height:.9 !important;
    margin-bottom:22px !important;
  }

  .shop-hero-left p{
    font-size:20px !important;
    line-height:1.45 !important;
    margin-bottom:18px !important;
  }

  .shop-hero-right{
    display:none !important;
  }

  .shop-hero-mobile-image{
    display:block !important;
    margin:28px 0 30px !important;
  }

  .shop-hero-mobile-image img{
    width:100% !important;
    height:auto !important;
    border-radius:24px !important;
    border:1px solid #4cff63 !important;
  }

  .shop-features{
    margin-top:10px !important;
    gap:0 !important;
  }

  .shop-features > div{
    padding:18px 0 !important;
  }

  .shop-buttons{
    margin-top:28px !important;
    gap:16px !important;
  }

  .shop-buttons a{
    width:100% !important;
    padding:18px !important;
    font-size:22px !important;
  }
}

/* MOBILE ONLY - ABOUT STATS IN ONE ROW */
@media(max-width:850px){

  #about .about-stats{
    display:grid !important;
    grid-template-columns:repeat(3, 1fr) !important;
    gap:10px !important;
    margin-top:28px !important;
  }

  #about .about-stats > div{
    border-left:2px solid #4cff63 !important;
    padding-left:10px !important;
    min-width:0 !important;
  }

  #about .about-stats strong{
    font-size:28px !important;
    line-height:1 !important;
    white-space:nowrap !important;
    display:block !important;
  }

  #about .about-stats span{
    font-size:12px !important;
    line-height:1.15 !important;
    display:block !important;
  }
}

/* MOBILE FIX - SHOP INFO SECTION */
@media(max-width:850px){

  #shop-info{
    padding:35px 0 45px !important;
  }

  #shop-info .shop-top-card{
    display:block !important;
    padding:28px 22px !important;
    border-radius:24px !important;
    min-height:auto !important;
  }

  #shop-info .shop-top-left h2{
    font-size:42px !important;
    line-height:.95 !important;
    margin:18px 0 !important;
    max-width:100% !important;
  }

  #shop-info .shop-top-left p{
    font-size:18px !important;
    line-height:1.4 !important;
    max-width:100% !important;
  }

  #shop-info .shop-top-logo{
    display:none !important;
  }

  #shop-info .shop-main-btn{
    width:auto !important;
    padding:16px 26px !important;
    font-size:20px !important;
    margin-top:18px !important;
  }

  #shop-info .shop-preview{
    margin-top:45px !important;
    padding:0 22px !important;
  }

  #shop-info .shop-preview-top{
    display:block !important;
    margin-bottom:18px !important;
  }

  #shop-info .shop-preview-top p{
    font-size:15px !important;
    letter-spacing:2px !important;
    margin-bottom:6px !important;
  }

  #shop-info .shop-preview-top h3{
    font-size:36px !important;
    line-height:1 !important;
    margin:0 0 18px !important;
  }

  #shop-info .shop-preview-controls{
    display:flex !important;
    justify-content:flex-start !important;
    gap:10px !important;
    margin-bottom:18px !important;
  }

  #shop-info .shop-preview-controls button{
    width:46px !important;
    height:46px !important;
    font-size:24px !important;
  }

  #shop-info .shop-count{
    font-size:16px !important;
    align-self:center !important;
  }

  #shop-info .shop-carousel{
    gap:16px !important;
    overflow-x:auto !important;
    padding-bottom:18px !important;
  }

  #shop-info .shop-item{
    flex:0 0 82% !important;
    min-width:82% !important;
    max-width:82% !important;
  }

  #shop-info .shop-item img{
    height:300px !important;
    object-fit:cover !important;
  }
}

/* MOBILE ONLY - VENDOR + BOOKING FORM CLEANUP */
@media(max-width:850px){

  #vendors.section,
  #booking.section{
    padding:34px 0 !important;
  }

  #vendors .page-width,
  #booking .page-width{
    padding:0 24px !important;
  }

  #vendors .grid-2,
  #booking .grid-2{
    display:block !important;
  }

  #vendors h2,
  #booking h2{
    font-size:42px !important;
    line-height:.9 !important;
    margin:14px 0 16px !important;
  }

  #vendors p,
  #booking p{
    font-size:18px !important;
    line-height:1.45 !important;
    margin-bottom:28px !important;
  }

  #vendors .form,
  #booking .form{
    display:flex !important;
    flex-direction:column !important;
    gap:12px !important;
  }

  #vendors .form-row,
  #booking .form-row{
    display:flex !important;
    flex-direction:column !important;
    gap:12px !important;
  }

  #vendors input,
  #vendors textarea,
  #vendors select,
  #booking input,
  #booking textarea,
  #booking select{
    width:100% !important;
    min-height:54px !important;
    padding:14px 18px !important;
    font-size:16px !important;
    border-radius:16px !important;
    margin:0 !important;
  }

  #vendors textarea,
  #booking textarea{
    min-height:105px !important;
  }

  #vendors button,
  #booking button{
    min-height:56px !important;
    font-size:18px !important;
    border-radius:16px !important;
    margin-top:6px !important;
  }
}

/* MOBILE FIX - EVENT GALLERY PAGE */
@media(max-width:850px){

  .event-gallery-cards{
    padding:36px 0 45px !important;
  }

  .event-gallery-cards .page-width{
    padding:0 22px !important;
  }

  .event-gallery-cards .gallery-top{
    display:block !important;
    margin-bottom:28px !important;
  }

  .event-gallery-cards .gallery-top h1{
    font-size:56px !important;
    line-height:.88 !important;
    margin:14px 0 18px !important;
    max-width:100% !important;
  }

  .event-gallery-cards .gallery-top p{
    font-size:18px !important;
    line-height:1.45 !important;
    max-width:100% !important;
    margin:0 !important;
    text-align:left !important;
  }

  .event-gallery-cards .event-card-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:22px !important;
  }

  .event-gallery-cards .event-card img{
    height:260px !important;
    object-fit:cover !important;
  }

  .event-gallery-cards .event-card-info h3{
    font-size:28px !important;
    line-height:1 !important;
  }
}

/* DSM PRODUCT PAGE */
.dsm-product-page{
  background:#000;
  color:#fffdec;
  padding:45px 32px 70px;
}

.dsm-product-wrap{
  max-width:1450px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.25fr .9fr;
  gap:52px;
  align-items:start;
}

.dsm-product-gallery{
  display:grid;
  grid-template-columns:160px 1fr;
  gap:18px;
}

.dsm-thumbs{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.dsm-thumbs img{
  width:100%;
  height:145px;
  object-fit:cover;
  border-radius:12px;
  border:1px solid rgba(76,255,99,.28);
  background:#111;
}

.dsm-main-image{
  position:relative;
  background:radial-gradient(circle at center,#1a2c18,#050505 70%);
  border:1px solid rgba(76,255,99,.35);
  border-radius:20px;
  padding:26px;
  min-height:560px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.dsm-main-image img{
  width:100%;
  max-height:510px;
  object-fit:contain;
}

.dsm-badge{
  position:absolute;
  top:22px;
  left:22px;
  border:1px solid #4cff63;
  color:#4cff63;
  border-radius:12px;
  padding:10px 16px;
  font-family:"Roboto Mono",monospace;
  font-size:13px;
}

.dsm-product-info{
  padding-top:10px;
}

.dsm-product-info h1{
  font-family:Impact,"Arial Black",sans-serif;
  font-size:72px;
  line-height:.85;
  text-transform:uppercase;
  color:#fffdec;
  margin:20px 0;
}

.dsm-price-row{
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:28px;
}

.dsm-price{
  color:#4cff63;
  font-size:30px;
  font-weight:900;
  margin:0;
}

.dsm-stock{
  background:#08240d;
  color:#4cff63;
  padding:7px 14px;
  border-radius:999px;
  font-size:13px;
  font-weight:800;
}

.dsm-desc{
  border-top:1px solid rgba(255,255,255,.12);
  padding-top:26px;
  color:#ddd6c8;
  font-size:17px;
  line-height:1.7;
  margin-bottom:28px;
}

.dsm-qty span{
  display:block;
  color:#4cff63;
  font-size:13px;
  font-weight:900;
  margin-bottom:10px;
}

.dsm-qty input{
  width:120px;
  height:46px;
  background:#050505;
  color:#fffdec;
  border:1px solid rgba(76,255,99,.35);
  border-radius:8px;
  text-align:center;
  margin-bottom:24px;
}

.dsm-cart-btn{
  width:100%;
  background:#4cff63;
  color:#000;
  border:0;
  border-radius:10px;
  padding:22px;
  font-size:22px;
  font-weight:900;
  letter-spacing:.08em;
}

.dsm-checkout-note{
  margin-top:24px;
  text-align:center;
  color:#ddd6c8;
  font-weight:800;
  font-size:13px;
}

@media(max-width:850px){
  .dsm-product-page{
    padding:28px 18px;
  }

  .dsm-product-wrap{
    display:block;
  }

  .dsm-product-gallery{
    display:block;
  }

  .dsm-thumbs{
    display:none;
  }

  .dsm-main-image{
    min-height:auto;
    padding:18px;
    margin-bottom:28px;
  }

  .dsm-main-image img{
    max-height:420px;
  }

  .dsm-product-info h1{
    font-size:46px;
  }
}

.dsm-option{
  margin:24px 0;
}

.dsm-option label{
  color:#4cff63;
  font-weight:900;
  font-size:13px;
  display:block;
  margin-bottom:10px;
  text-transform:uppercase;
}

.dsm-option-values{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.dsm-variant-btn{
  background:#050505;
  color:#fffdec;
  border:1px solid rgba(76,255,99,.45);
  border-radius:8px;
  padding:14px 24px;
  cursor:pointer;
}

.dsm-variant-btn:hover,
.dsm-variant-btn.active{
  border-color:#4cff63;
  color:#4cff63;
}

.dsm-variant-select{
  margin-bottom:24px;
  width:100%;
  height:48px;
  background:#050505;
  color:#fffdec;
  border:1px solid rgba(76,255,99,.35);
  border-radius:8px;
}



/* CLEAN DSM PRODUCT PAGE */
.dsm-product-page{
  background:#000;
  color:#fffdec;
  padding:55px 35px 70px;
}

.dsm-product-wrap{
  max-width:1350px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:55px;
  align-items:center;
}

.dsm-product-media{
  background:radial-gradient(circle,#192916,#050505 70%);
  border:1px solid rgba(76,255,99,.35);
  border-radius:22px;
  padding:35px;
  display:flex;
  justify-content:center;
  align-items:center;
}

.dsm-product-media img{
  width:100%;
  max-height:620px;
  object-fit:contain;
}

.dsm-product-info{
  max-width:560px;
}

.dsm-product-info h1{
  font-family:Impact,"Arial Black",sans-serif;
  font-size:68px;
  line-height:.86;
  text-transform:uppercase;
  margin:18px 0 20px;
  color:#fffdec;
}

.dsm-price-row{
  display:flex;
  align-items:center;
  gap:16px;
  border-bottom:1px solid rgba(255,255,255,.12);
  padding-bottom:24px;
  margin-bottom:24px;
}

.dsm-price{
  color:#4cff63;
  font-size:30px;
  font-weight:900;
  margin:0;
}

.dsm-stock{
  background:#08240d;
  color:#4cff63;
  padding:7px 14px;
  border-radius:999px;
  font-size:13px;
  font-weight:800;
}

.dsm-desc{
  color:#ddd6c8;
  font-size:17px;
  line-height:1.55;
  margin-bottom:20px;
}

.dsm-option{
  margin:18px 0;
}

.dsm-option label{
  color:#4cff63;
  font-weight:900;
  font-size:13px;
  display:block;
  margin-bottom:10px;
  text-transform:uppercase;
}

.dsm-option-values{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.dsm-variant-btn{
  background:#050505;
  color:#fffdec;
  border:1px solid rgba(76,255,99,.45);
  border-radius:8px;
  padding:12px 22px;
  font-size:16px;
}

.dsm-variant-select{
  width:100%;
  height:50px;
  background:#050505;
  color:#fffdec;
  border:1px solid rgba(76,255,99,.35);
  border-radius:8px;
  padding:0 14px;
  margin:8px 0 20px;
}

.dsm-cart-btn{
  width:100%;
  background:#4cff63;
  color:#000;
  border:0;
  border-radius:10px;
  padding:19px;
  font-size:21px;
  font-weight:900;
  letter-spacing:.08em;
}

.dsm-checkout-note{
  margin-top:18px;
  text-align:center;
  color:#ddd6c8;
  font-size:13px;
  font-weight:800;
}

/* MOBILE */
@media(max-width:850px){
  .dsm-product-page{
    padding:28px 18px;
  }

  .dsm-product-wrap{
    display:block;
  }

  .dsm-product-media{
    padding:18px;
    margin-bottom:28px;
  }

  .dsm-product-media img{
    max-height:420px;
  }

  .dsm-product-info h1{
    font-size:44px;
  }
}

/* COLLECTION PRODUCT IMAGE FIX */
.collection-page .products{
  display:grid !important;
  grid-template-columns:repeat(4, 1fr) !important;
  gap:24px !important;
}

.collection-page .product-card{
  padding:18px !important;
  border-radius:22px !important;
  background:#070707 !important;
  border:1px solid rgba(76,255,99,.18) !important;
}

.collection-page .product-image-wrap{
  width:100% !important;
  aspect-ratio:1 / 1.25 !important;
  background:#ffffff !important;
  border-radius:18px !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.collection-page .product-image-wrap img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  padding:10px !important;
}

@media(max-width:850px){
  .collection-page .products{
    grid-template-columns:1fr 1fr !important;
    gap:14px !important;
  }

  .collection-page .product-card{
    padding:10px !important;
  }

  .collection-page .product-card h3{
    font-size:20px !important;
    line-height:1 !important;
  }
}

.collection-page .product-image-wrap img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  background:#ffffff !important;
  padding:0 !important;
}

/* CART ICON */
.cart-icon-btn{
  position:relative;
  width:54px;
  height:54px;
  border-radius:14px;
  border:1px solid rgba(76,255,99,.5);
  background:#050505;
  color:#fffdec;
  font-size:22px;
  cursor:pointer;
}

.cart-icon-btn:hover{
  background:#4cff63;
  color:#000;
}

#cart-count{
  position:absolute;
  top:-8px;
  right:-8px;
  background:#4cff63;
  color:#000;
  width:22px;
  height:22px;
  border-radius:50%;
  font-size:13px;
  font-weight:900;
  display:flex;
  align-items:center;
  justify-content:center;
}

/* CART DRAWER */
#cart-drawer-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.55);
  opacity:0;
  pointer-events:none;
  transition:.25s;
  z-index:9998;
}

#cart-drawer{
  position:fixed;
  top:0;
  right:-430px;
  width:420px;
  max-width:92vw;
  height:100vh;
  background:#050505;
  border-left:1px solid rgba(76,255,99,.35);
  color:#fffdec;
  z-index:9999;
  transition:.3s ease;
  padding:26px;
  overflow-y:auto;
}

body.cart-open #cart-drawer{
  right:0;
}

body.cart-open #cart-drawer-overlay{
  opacity:1;
  pointer-events:auto;
}

.cart-drawer-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:25px;
}

.cart-drawer-head h2{
  font-size:42px;
  margin:0;
}

.cart-drawer-head button{
  background:none;
  border:0;
  color:#fffdec;
  font-size:36px;
  cursor:pointer;
}

.cart-drawer-item{
  display:grid;
  grid-template-columns:90px 1fr;
  gap:16px;
  padding:18px 0;
  border-bottom:1px solid rgba(255,255,255,.12);
}

.cart-drawer-item img{
  width:90px;
  height:100px;
  object-fit:cover;
  border-radius:12px;
  background:white;
}

.cart-drawer-item h3{
  font-size:18px;
  margin:0 0 8px;
}

.cart-drawer-item p{
  color:#4cff63;
  font-weight:900;
  margin:0 0 12px;
}

.cart-qty{
  display:flex;
  align-items:center;
  gap:12px;
}

.cart-qty button{
  width:34px;
  height:34px;
  border-radius:8px;
  border:1px solid rgba(76,255,99,.45);
  background:#050505;
  color:#4cff63;
  font-size:20px;
}

.cart-drawer-footer{
  margin-top:25px;
}

.cart-total-row{
  display:flex;
  justify-content:space-between;
  font-size:22px;
  margin-bottom:18px;
}

.cart-total-row strong{
  color:#4cff63;
}

.cart-checkout-btn{
  display:block;
  text-align:center;
  background:#4cff63;
  color:#000;
  padding:18px;
  border-radius:12px;
  font-weight:900;
  text-transform:uppercase;
  text-decoration:none;
}

.dsm-back-wrap{
  max-width:1400px;
  margin:0 auto 20px;
  padding:0 20px;
}

.dsm-back-btn{
  color:#62ff5f;
  text-decoration:none;
  font-weight:700;
  font-size:14px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.dsm-back-btn:hover{
  color:white;
}

/* FINAL MOBILE SCROLL FIX */
@media(max-width:850px){

  html,
  body{
    width:100%;
    max-width:100%;
    overflow-x:hidden !important;
    touch-action:pan-y !important;
  }

  #MainContent,
  .section,
  .page-width,
  .shop-hero-new,
  .shop-hero-card,
  .events,
  .events .grid-3{
    max-width:100vw !important;
    overflow-x:hidden !important;
  }

  .events .grid-3{
    touch-action:pan-y !important;
    overscroll-behavior-x:none !important;
  }

  .events .card{
    touch-action:pan-y !important;
  }

  .shop-hero-new,
  .shop-hero-card{
    touch-action:pan-y !important;
  }

  img{
    max-width:100%;
  }
}

/* MOBILE HEADER CLEANUP */
@media(max-width:850px){
  .site-header .nav{
    display:grid !important;
    grid-template-columns:1fr auto !important;
    gap:16px !important;
    align-items:start !important;
    text-align:center !important;
    padding:24px 22px !important;
  }

  .site-header .brand{
    justify-self:center !important;
    grid-column:1 / 2 !important;
    text-align:center !important;
  }

  .site-header .brand-main{
    font-size:46px !important;
    line-height:.85 !important;
    letter-spacing:-1px !important;
  }

  .site-header .brand-sub{
    font-size:15px !important;
    letter-spacing:.32em !important;
    margin-top:6px !important;
  }

  .site-header .hamburger{
    grid-column:2 / 3 !important;
    justify-self:end !important;
    margin-top:8px !important;
    font-size:38px !important;
  }

  .site-header .btn.rust{
    grid-column:1 / 2 !important;
    justify-self:center !important;
    width:78% !important;
    max-width:360px !important;
    margin-top:14px !important;
    padding:18px 20px !important;
    font-size:22px !important;
  }

  .site-header .cart-icon-btn{
    grid-column:2 / 3 !important;
    grid-row:2 / 3 !important;
    justify-self:end !important;
    margin-top:14px !important;
    width:64px !important;
    height:64px !important;
  }
}
@media(max-width:850px){
  .site-header .btn.rust{
    display:none !important;
  }

  .mobile-vendor-link{
    display:block !important;
  }

  .site-header .cart-icon-btn{
    grid-column:2 / 3 !important;
    grid-row:1 / 2 !important;
    justify-self:end !important;
    margin-right:72px !important;
    margin-top:8px !important;
    width:58px !important;
    height:58px !important;
  }

  .site-header .hamburger{
    grid-column:2 / 3 !important;
    grid-row:1 / 2 !important;
    justify-self:end !important;
    margin-top:15px !important;
  }
}

@media(min-width:851px){
  .mobile-vendor-link{
    display:none !important;
  }
}

/* CLEAN MOBILE HEADER */
@media(max-width:850px){
  .site-header .nav{
    display:grid !important;
    grid-template-columns:1fr auto auto !important;
    align-items:center !important;
    gap:14px !important;
    padding:22px 24px !important;
  }

  .site-header .brand{
    justify-self:start !important;
    text-align:left !important;
  }

  .site-header .brand-text{
    display:block !important;
    line-height:1 !important;
  }

  .site-header .brand-main{
    font-size:38px !important;
    line-height:.85 !important;
    white-space:nowrap !important;
    letter-spacing:-1px !important;
  }

  .site-header .brand-sub{
    font-size:12px !important;
    letter-spacing:.28em !important;
    margin-top:5px !important;
    white-space:nowrap !important;
  }

  .site-header .cart-icon-btn{
    width:54px !important;
    height:54px !important;
    margin:0 !important;
    padding:0 !important;
    grid-column:auto !important;
    grid-row:auto !important;
    justify-self:center !important;
  }

  .site-header .hamburger{
    width:54px !important;
    height:54px !important;
    margin:0 !important;
    padding:0 !important;
    font-size:38px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    grid-column:auto !important;
    grid-row:auto !important;
  }

  #cart-count{
    top:-10px !important;
    right:-10px !important;
  }

  .site-header .btn.rust{
    display:none !important;
  }
}

@media(max-width:850px){

  .site-header .nav{
    display:grid !important;
    grid-template-columns:60px 1fr 60px !important;
    align-items:center !important;
    padding:20px !important;
  }

  /* Hamburger LEFT */
  .site-header .hamburger{
    grid-column:1 !important;
    justify-self:start !important;
    font-size:38px !important;
    margin:0 !important;
  }

  /* Logo CENTER */
  .site-header .brand{
    grid-column:2 !important;
    justify-self:center !important;
    text-align:center !important;
    width:100% !important;
  }

  .site-header .brand-main{
    font-size:48px !important;
    line-height:.9 !important;
    white-space:nowrap !important;
  }

  .site-header .brand-sub{
    display:block !important;
    width:100% !important;
    text-align:center !important;
    font-size:13px !important;
    letter-spacing:.35em !important;
    margin-top:6px !important;
  }

  /* Cart RIGHT */
  .site-header .cart-icon-btn{
    grid-column:3 !important;
    justify-self:end !important;
    width:60px !important;
    height:60px !important;
    margin:0 !important;
  }
}

@media(max-width:850px){

  .site-header{
    background:#000 !important;
    border-bottom:1px solid rgba(98,255,95,.25) !important;
    padding:18px 18px !important;
  }

  .site-header .nav{
    display:grid !important;
    grid-template-columns:56px 1fr 56px !important;
    align-items:center !important;
    gap:12px !important;
  }

  .site-header .hamburger{
    grid-column:1 !important;
    justify-self:start !important;
    color:#fffdec !important;
    font-size:34px !important;
    margin:0 !important;
  }

  .site-header .brand{
    grid-column:2 !important;
    justify-self:center !important;
  }

  .mobile-brand-logo{
    display:block !important;
    width:210px !important;
    max-width:100% !important;
    height:auto !important;
  }

  .site-header .cart-icon-btn{
    grid-column:3 !important;
    justify-self:end !important;
    width:54px !important;
    height:54px !important;
    margin:0 !important;
    background:transparent !important;
    border:1.5px solid rgba(98,255,95,.45) !important;
    border-radius:14px !important;
  }

  #cart-count{
    background:#62ff5f !important;
    color:#000 !important;
  }
}

.mobile-brand-logo{
  display:none;
}

@media(max-width:850px){
  .desktop-brand-text{
    display:none !important;
  }

  .mobile-brand-logo{
    display:block !important;
    width:220px !important;
    height:auto !important;
  }
}

@media(min-width:851px){
  .desktop-brand-text{
    display:block !important;
  }

  .mobile-brand-logo{
    display:none !important;
  }
}

/* FORCE MOBILE HEADER TO USE REAL IMAGE LOGO */
@media(max-width:850px){

  .site-header .desktop-brand-text{
    display:none !important;
  }

  .site-header .mobile-brand-logo{
    display:block !important;
    width:230px !important;
    max-width:230px !important;
    height:auto !important;
    object-fit:contain !important;
  }

  .site-header .brand{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    grid-column:2 !important;
  }

  .site-header .brand-main,
  .site-header .brand-sub{
    display:none !important;
  }
}

@media(min-width:851px){
  .site-header .mobile-brand-logo{
    display:none !important;
  }

  .site-header .desktop-brand-text{
    display:block !important;
  }
}

@media(max-width:850px){
  .site-header .brand{
    display:block !important;
    grid-column:2 !important;
    opacity:1 !important;
    visibility:visible !important;
    z-index:5 !important;
  }

  .site-header .brand img.mobile-brand-logo{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    width:220px !important;
    height:auto !important;
    max-width:none !important;
  }

  .desktop-brand-text,
  .site-header .brand-text,
  .site-header .brand-main,
  .site-header .brand-sub{
    display:none !important;
  }
}
/* FINAL MOBILE HEADER OVERRIDE */
@media(max-width:850px){

  .site-header{
    background:#000 !important;
    padding:14px 0 !important;
    border-bottom:1px solid rgba(98,255,95,.25) !important;
  }

  .site-header .page-width.nav{
    width:100% !important;
    max-width:100% !important;
    padding:0 18px !important;
    display:grid !important;
    grid-template-columns:52px 1fr 52px !important;
    align-items:center !important;
    gap:10px !important;
  }

  .site-header .hamburger{
    grid-column:1 !important;
    justify-self:start !important;
    width:52px !important;
    height:52px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    font-size:38px !important;
    color:#fffdec !important;
  }

  .site-header .brand{
    grid-column:2 !important;
    justify-self:center !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-width:0 !important;
  }

  .site-header .desktop-brand-text,
  .site-header .brand-text,
  .site-header .brand-main,
  .site-header .brand-sub{
    display:none !important;
  }

  .site-header img.mobile-brand-logo{
    display:block !important;
    width:250px !important;
    max-width:250px !important;
    height:auto !important;
    opacity:1 !important;
    visibility:visible !important;
  }

  .site-header .cart-icon-btn{
    grid-column:3 !important;
    justify-self:end !important;
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    margin:0 !important;
    padding:0 !important;
    position:relative !important;
    right:auto !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
  }

  #cart-count{
    position:absolute !important;
    top:-8px !important;
    right:-8px !important;
  }
}

@media(max-width:850px){

  img.mobile-brand-logo{
    width:320px !important;
    max-width:none !important;
    min-width:320px !important;
    transform:scale(1.8) !important;
    transform-origin:center center !important;
  }

}

/* FIX MOBILE CART CLICK */
@media(max-width:850px){

  .site-header .brand{
    pointer-events:none !important;
    z-index:1 !important;
  }

  .site-header .mobile-brand-logo{
    pointer-events:none !important;
  }

  .site-header .cart-icon-btn{
    position:relative !important;
    z-index:50 !important;
    pointer-events:auto !important;
  }

  .site-header .hamburger{
    position:relative !important;
    z-index:50 !important;
    pointer-events:auto !important;
  }
}

/* DESKTOP LOGO */
.desktop-brand-logo{
  width:260px;
  height:auto;
  display:block;
}

@media (min-width:851px){
  .mobile-brand-logo{
    display:none !important;
  }
}

@media (max-width:850px){
  .desktop-brand-logo{
    display:none !important;
  }
}
/* FORCE DESKTOP LOGO TO SHOW */
@media(min-width:851px){
  .site-header .brand{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    width:260px !important;
    opacity:1 !important;
    visibility:visible !important;
  }

  .site-header img.desktop-brand-logo{
    display:block !important;
    width:220px !important;
    max-width:220px !important;
    height:auto !important;
    opacity:1 !important;
    visibility:visible !important;
  }

  .site-header img.mobile-brand-logo,
  .site-header .brand-text,
  .site-header .brand-main,
  .site-header .brand-sub{
    display:none !important;
  }
}


/* DESKTOP LOGO ONLY */
@media (min-width: 851px) {

  .desktop-brand-logo{
    width:340px !important;
    height:auto !important;
    max-width:none !important;
  }

  .site-header .brand{
    margin-left:-40px !important;
  }

}

@media (min-width: 851px) {

  .btn.rust{
    margin-left:120px !important;
  }

}

.footer-logo{
  width: 320px;
  max-width: 100%;
  height: auto;
  display: block;
  margin-bottom: 24px;
}
/* CLEAN FOOTER LOGO LAYOUT */
.dsm-footer{
  padding-top:55px !important;
  padding-bottom:35px !important;
}

.footer-top{
  align-items:flex-start !important;
}

.footer-brand{
  align-self:flex-start !important;
}

.footer-logo{
  width:260px !important;
  max-width:260px !important;
  margin:0 0 18px 0 !important;
  display:block !important;
}

.footer-brand p{
  margin-top:0 !important;
  max-width:430px !important;
}

.footer-socials{
  margin-top:28px !important;
}



/* DSM FLEA LANDING PAGE */
.dsm-landing{
  min-height:100vh;
  background:
    radial-gradient(circle at center, rgba(98,255,95,.12), transparent 38%),
    #000;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:60px 20px;
}

.dsm-landing-inner{
  width:100%;
  max-width:720px;
  display:flex;
  flex-direction:column;
  align-items:center;
}

.dsm-landing-emblem{
  width:420px;
  max-width:85vw;
  height:auto;
  margin-bottom:-10px;
  filter:drop-shadow(0 0 35px rgba(98,255,95,.25));
}

.dsm-landing-logo{
  width:560px;
  max-width:90vw;
  height:auto;
  margin-bottom:28px;
}

.dsm-enter-btn,
.dsm-landing-menu summary{
  width:310px;
  max-width:90vw;
  border:1px solid rgba(98,255,95,.75);
  background:rgba(0,0,0,.65);
  color:#fffdec;
  padding:16px 20px;
  border-radius:8px;
  font-weight:900;
  letter-spacing:.04em;
  text-decoration:none;
  cursor:pointer;
}

.dsm-enter-btn{
  margin-bottom:10px;
}

.dsm-landing-menu{
  width:310px;
  max-width:90vw;
}

.dsm-landing-menu[open]{
  border:1px solid rgba(98,255,95,.75);
  border-radius:8px;
  overflow:hidden;
}

.dsm-landing-menu summary{
  list-style:none;
}

.dsm-landing-menu summary::-webkit-details-marker{
  display:none;
}

.dsm-landing-menu a{
  display:block;
  padding:15px 20px;
  color:#fffdec;
  text-decoration:none;
  font-weight:900;
  border-top:1px solid rgba(255,255,255,.12);
  background:rgba(5,8,5,.92);
}

.dsm-landing-menu a:hover{
  color:#62ff5f;
}

/* Mobile */
@media(max-width:850px){
  .dsm-landing{
    padding:50px 18px;
  }

  .dsm-landing-emblem{
    width:330px;
  }

  .dsm-landing-logo{
    width:390px;
  }
}

/* FULL LANDING PAGE */
body:has(.dsm-landing){
  background:#000 !important;
}

.dsm-landing{
  min-height:100vh !important;
  height:100vh !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}

.dsm-landing-inner{
  margin-top:-20px !important;
}

.dsm-landing-emblem{
  width:440px !important;
  max-width:80vw !important;
}

.dsm-landing-logo{
  width:580px !important;
  max-width:88vw !important;
}

/* LANDING PAGE PERFORMANCE FIX */
.dsm-landing{
  background:#000 !important;
}

.dsm-landing-emblem{
  filter:none !important;
  box-shadow:none !important;
  will-change:auto !important;
  transform:none !important;
  backface-visibility:hidden !important;
}

@media(max-width:850px){
  .dsm-landing-emblem{
    width:300px !important;
    max-width:80vw !important;
  }
}

.dsm-landing-emblem{
  width:420px !important;
  max-width:85vw !important;
  height:auto !important;
  display:block !important;
  object-fit:contain !important;
  filter:none !important;
  box-shadow:none !important;
}

@media(max-width:850px){
  .dsm-landing-emblem{
    width:330px !important;
  }
}

/* LANDING PAGE MENU CLEANUP */
.dsm-enter-btn,
.dsm-landing-menu summary{
  border:none !important;
  background:transparent !important;
  width:auto !important;
  padding:10px 0 !important;
  border-radius:0 !important;
}

.dsm-landing-menu{
  position:fixed !important;
  top:35px !important;
  right:45px !important;
  width:260px !important;
  max-width:260px !important;
  z-index:9999 !important;
}

.dsm-landing-menu summary{
  text-align:right !important;
  color:#fffdec !important;
  font-size:18px !important;
}

.dsm-landing-menu[open]{
  border:1px solid rgba(98,255,95,.65) !important;
  background:rgba(0,0,0,.9) !important;
  border-radius:10px !important;
  overflow:visible !important;
}

.dsm-landing-menu a{
  padding:14px 18px !important;
  text-align:left !important;
  font-size:15px !important;
}

/* keep enter site clean under logo */
.dsm-enter-btn{
  display:inline-block !important;
  color:#fffdec !important;
  font-size:16px !important;
  letter-spacing:.08em !important;
  margin-top:20px !important;
}
/* LANDING BUTTON + MENU FINAL CLEANUP */
.dsm-enter-btn{
  border:none !important;
  background:transparent !important;
  color:#fffdec !important;
  padding:0 !important;
  margin-top:-10px !important;
  margin-bottom:14px !important;
  width:auto !important;
  font-size:18px !important;
  letter-spacing:.08em !important;
}

.dsm-landing-menu{
  position:static !important;
  width:260px !important;
  max-width:260px !important;
  margin:0 auto !important;
}

.dsm-landing-menu summary{
  border:none !important;
  background:transparent !important;
  color:#fffdec !important;
  padding:8px 0 !important;
  width:auto !important;
  font-size:18px !important;
  text-align:center !important;
}

.dsm-landing-menu[open]{
  border:none !important;
  background:transparent !important;
  border-radius:0 !important;
}

.dsm-landing-menu a{
  padding:9px 0 !important;
  font-size:14px !important;
  text-align:center !important;
  background:transparent !important;
  border-top:1px solid rgba(255,255,255,.12) !important;
}

/* FIX MOBILE LOGO HOME CLICK */
@media(max-width:850px){

  .site-header .brand{
    pointer-events:auto !important;
    position:relative !important;
    z-index:40 !important;
  }

  .site-header .mobile-brand-logo{
    pointer-events:auto !important;
    position:relative !important;
    z-index:41 !important;
  }

  .site-header .cart-icon-btn,
  .site-header .hamburger{
    position:relative !important;
    z-index:60 !important;
  }
}

/* FIX DOUBLE SCROLLBARS - KEEP ONLY PAGE SCROLL */
@media (max-width: 850px){

  html,
  body{
    overflow-x:hidden !important;
    overflow-y:auto !important;
  }

  main,
  #MainContent{
    overflow:visible !important;
    height:auto !important;
    max-height:none !important;
  }

  .shopify-section,
  .section,
  .page-width{
    overflow:visible !important;
    height:auto !important;
    max-height:none !important;
  }

  /* Keep carousel horizontal, but remove vertical inner scrolling */
  .grid-3,
  .events-grid,
  .event-grid,
  .event-carousel,
  .events-slider,
  .shop-info,
  .shop-store-info{
    overflow-y:visible !important;
    height:auto !important;
    max-height:none !important;
  }
}

/* FIX DOUBLE SCROLLBAR ON SHOP INFO + GALLERY PREVIEW */
@media(max-width:850px){

  .shop-hero-new,
  .shop-hero-card,
  .shop-hero-left,
  .shop-hero-right,
  .shop-hero-mobile-image,
  .gallery-preview-section,
  .gallery-preview-box,
  .gallery-preview-text,
  .gallery-preview-collage{
    overflow-y: visible !important;
    overflow-x: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  .shop-hero-new *,
  .shop-hero-card *,
  .gallery-preview-section *,
  .gallery-preview-box *{
    scrollbar-width: none !important;
  }

  .shop-hero-new *::-webkit-scrollbar,
  .shop-hero-card *::-webkit-scrollbar,
  .gallery-preview-section *::-webkit-scrollbar,
  .gallery-preview-box *::-webkit-scrollbar{
    display:none !important;
  }
}

/* FIX PRODUCT SECTION DOUBLE SCROLLBAR */

.collection-page,
.collection-page .page-width,
.collection-page .products {
  overflow: visible !important;
  overflow-y: visible !important;
  height: auto !important;
  max-height: none !important;
}

.collection-page *,
.collection-page *::-webkit-scrollbar {
  scrollbar-width: none !important;
}

.collection-page *::-webkit-scrollbar {
  display: none !important;
}

/* FIX EVENT ALBUM DOUBLE SCROLLBAR */
.event-album,
.event-album .page-width,
.album-hero,
.album-info,
.album-grid,
.album-photo{
  overflow: visible !important;
  overflow-y: visible !important;
  height: auto !important;
  max-height: none !important;
}

.event-album *,
.event-album *::-webkit-scrollbar{
  scrollbar-width: none !important;
}

.event-album *::-webkit-scrollbar{
  display: none !important;
}

/* NEW VENDOR APPLICATION DESIGN */
.vendor-landing{
  min-height:80vh;
  background:
    radial-gradient(circle at right, rgba(76,255,88,.18), transparent 35%),
    radial-gradient(circle at center, rgba(76,255,88,.08), transparent 45%),
    #030504;
  padding:80px 42px;
  display:flex;
  align-items:center;
}

.vendor-wrap{
  width:100%;
  max-width:1400px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:70px;
  align-items:center;
}

.vendor-pill{
  display:inline-flex;
  background:#06210c;
  color:#58ff69;
  padding:12px 22px;
  border-radius:999px;
  font-weight:900;
  letter-spacing:.08em;
  margin-bottom:28px;
}

.vendor-left h1{
  color:#fffdec;
  font-size:74px;
  line-height:.9;
  margin:0 0 28px;
  text-transform:uppercase;
}

.vendor-left h1 span{
  display:block;
  color:#58ff69;
}

.vendor-left p{
  color:#e5e5e5;
  font-size:20px;
  line-height:1.55;
  max-width:560px;
}

.vendor-features{
  display:flex;
  gap:32px;
  margin-top:48px;
}

.vendor-features div{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:4px 12px;
  color:#fffdec;
}

.vendor-features span{
  grid-row:1 / 3;
  width:48px;
  height:48px;
  border:1px solid #58ff69;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
}

.vendor-features strong{
  font-size:14px;
}

.vendor-features small{
  color:#cfcfcf;
}

.vendor-card{
  border:1px solid rgba(88,255,105,.25);
  border-radius:26px;
  padding:58px 48px;
  text-align:center;
  background:rgba(5,8,5,.78);
  box-shadow:0 0 50px rgba(88,255,105,.08);
}

.vendor-card-icon{
  font-size:58px;
  color:#58ff69;
  margin-bottom:34px;
}

.vendor-card h2{
  color:#fffdec;
  font-size:38px;
  margin:0 0 16px;
}

.vendor-card p{
  color:#d7d7d7;
  font-size:17px;
  margin-bottom:34px;
}

.vendor-apply-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:76px;
  background:#58ff69;
  color:#000;
  border-radius:16px;
  text-decoration:none;
  font-size:19px;
  font-weight:900;
  letter-spacing:.08em;
}

.vendor-note{
  margin-top:30px;
  color:#58ff69;
  font-size:26px;
  font-style:italic;
  line-height:1.05;
}

/* MOBILE */
@media(max-width:850px){
  .vendor-landing{
    padding:50px 22px;
  }

  .vendor-wrap{
    grid-template-columns:1fr;
    gap:38px;
  }

  .vendor-left h1{
    font-size:48px;
  }

  .vendor-features{
    flex-direction:column;
    gap:22px;
  }

  .vendor-card{
    padding:38px 24px;
  }
}

.vendor-svg-icon svg,
.vendor-card-icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:#58ff69;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.vendor-svg-icon{
  grid-row:1 / 3;
  width:48px;
  height:48px;
  border:1px solid #58ff69;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:11px;
}

.vendor-card-icon{
  width:82px;
  height:82px;
  margin:0 auto 30px;
}

.vendor-note{
  font-family:"Brush Script MT","Segoe Script",cursive !important;
  font-size:30px !important;
  font-weight:400 !important;
  color:#58ff69 !important;
  line-height:1 !important;
  transform:rotate(-3deg);
}

.vendor-left h1,
.vendor-card h2{
  font-family:"Avenir Next", sans-serif !important;
  font-weight:800 !important;
}

.vendor-left p,
.vendor-card p,
.vendor-features{
  font-family:"Avenir Next", sans-serif !important;
}

.vendor-pill,
.vendor-note,
.vendor-apply-btn{
  font-family:"Roboto Mono", monospace !important;
  font-weight:500 !important;
}
/* VENDOR SECTION RESET FIX */
.vendor-wrap{
  grid-template-columns: 1.05fr .95fr !important;
  gap:70px !important;
}

.vendor-left h1{
  font-family:"Avenir Next", sans-serif !important;
  font-weight:900 !important;
  font-size:74px !important;
  line-height:.9 !important;
  letter-spacing:-.04em !important;
  color:#fffdec !important;
  max-width:760px !important;
}

.vendor-left h1 span{
  color:#58ff69 !important;
  display:block !important;
}

.vendor-card{
  width:100% !important;
  max-width:560px !important;
  padding:58px 48px !important;
}

.vendor-card h2{
  font-family:"Avenir Next", sans-serif !important;
  font-size:38px !important;
  line-height:1 !important;
}

.vendor-apply-btn{
  width:100% !important;
  min-height:76px !important;
  font-size:19px !important;
}

/* Mobile fix */
@media(max-width:850px){
  .vendor-wrap{
    grid-template-columns:1fr !important;
  }

  .vendor-left h1{
    font-size:46px !important;
    white-space:normal !important;
  }

  .vendor-card{
    max-width:100% !important;
  }
}

/* SIMPLE VENDOR SECTION */
.vendor-simple{
  min-height:75vh;
  background:
    radial-gradient(circle at center, rgba(88,255,105,.12), transparent 42%),
    #030504;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:90px 24px;
}

.vendor-simple-inner{
  max-width:950px;
  margin:0 auto;
}

.vendor-simple .vendor-pill{
  display:inline-flex;
  margin-bottom:30px;
}

.vendor-simple h1{
  font-family:"Avenir Next", sans-serif !important;
  font-weight:900 !important;
  font-size:clamp(60px, 6vw, 110px) !important;
  line-height:.9 !important;
  letter-spacing:-.05em !important;
  color:#fffdec !important;
  margin:0 0 28px !important;
  max-width:1200px !important;
}

.vendor-simple h1 span{
  display:block;
  color:#58ff69 !important;
}

.vendor-simple p{
  color:#e5e5e5;
  font-size:22px;
  line-height:1.55;
  max-width:780px;
  margin:0 auto 38px;
}

.vendor-simple-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:68px;
  padding:0 54px;
  background:#58ff69;
  color:#000;
  border-radius:14px;
  text-decoration:none;
  font-family:"Roboto Mono", monospace !important;
  font-weight:700 !important;
  letter-spacing:.08em;
  font-size:18px;
}

@media(max-width:850px){
  .vendor-simple{
    padding:70px 22px;
  }

  .vendor-simple h1{
    font-size:48px !important;
  }

  .vendor-simple p{
    font-size:18px;
  }

  .vendor-simple-btn{
    width:100%;
    padding:0 24px;
  }
}
.vendor-simple-inner{
  max-width:1400px !important;
}

/* Remove internal vendor section scrolling */
.vendor-simple,
.vendor-simple-inner{
  overflow: visible !important;
  overflow-y: visible !important;
  height: auto !important;
  max-height: none !important;
}

.album-photo-btn{
  border:0;
  padding:0;
  background:transparent;
  width:100%;
  cursor:pointer;
}

.album-photo-btn img{
  width:100%;
  display:block;
}

#album-lightbox{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.95);
  z-index:999999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
}

#album-lightbox.active{
  display:flex;
}

#album-lightbox-img{
  max-width:95vw;
  max-height:85vh;
  object-fit:contain;
}

.album-lightbox-close{
  position:fixed;
  top:18px;
  right:22px;
  background:none;
  border:0;
  color:#fffdec;
  font-size:42px;
  cursor:pointer;
}

/* REMOVE PRODUCT PAGE INTERNAL SCROLLBAR */
.dsm-product-page,
.dsm-product-wrap,
.dsm-product-media,
.dsm-product-info,
.dsm-back-wrap{
  overflow: visible !important;
  overflow-y: visible !important;
  height: auto !important;
  max-height: none !important;
}

/* Hide any scrollbar inside product page */
.dsm-product-page *,
.dsm-product-page *::-webkit-scrollbar{
  scrollbar-width: none !important;
}

.dsm-product-page *::-webkit-scrollbar{
  display: none !important;
}

.album-lightbox-arrow{
  position:fixed;
  top:50%;
  transform:translateY(-50%);
  background:rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.25);
  color:#fffdec;
  width:54px;
  height:54px;
  border-radius:50%;
  font-size:42px;
  line-height:1;
  z-index:1000000;
}

.album-lightbox-arrow.left{
  left:22px;
}

.album-lightbox-arrow.right{
  right:22px;
}

@media(max-width:850px){
  .album-lightbox-arrow{
    width:44px;
    height:44px;
    font-size:34px;
  }
}

.dsm-landing-emblem{
  width: 430px;
  height: 430px;
  max-width: 80vw;
  display: block;
  margin: 0 auto 45px;
  background: transparent;
}

model-viewer.dsm-landing-emblem{
  --poster-color: transparent;
}

@media (max-width: 768px){
  .dsm-landing-emblem{
    width: 320px;
    height: 320px;
    max-width: 88vw;
    margin-bottom: 35px;
  }
}

.dsm-model-wrap{
  width: 430px;
  height: 430px;
  max-width: 85vw;
  margin: 0 auto 45px;
  display: flex;
  justify-content: center;
  align-items: center;
}

#dsmFrogModel{
  width: 100%;
  height: 100%;
  display: block;
  background: transparent;
  --poster-color: transparent;
}

@media (max-width: 768px){
  .dsm-model-wrap{
    width: 330px;
    height: 330px;
    margin-bottom: 35px;
  }
}

.dsm-model-wrap {
  transform: translateY(50px);
}