
:root {color-scheme: dark; --gold:#f2a445; --background:#050505; --muted:#a3a3a3;}
html { scroll-behavior:smooth; }
* { box-sizing:border-box; }
body { margin:0; background:linear-gradient(39deg, #241b0c 0%, #030303 29%, #050506 63%, #241b0c 100%) fixed; color:#fff; font-family:Poppins,Arial,sans-serif; }
a { color:inherit; }
button { font:inherit; }
.preview-notice { z-index:50; position:relative; text-align:center; color:#d8b77b; background:#251b10; border-bottom:1px solid #76552c; font-size:10px; font-weight:700; letter-spacing:1.3px; padding:8px 10px; }
.site-header { position:relative; z-index:10; background:rgba(5,5,5,.9); border-bottom:1px solid rgba(249,177,49,.13); }
.header-inner {max-width:1230px; min-height:82px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:14px 22px;}
.wordmark {font-size:clamp(17px,2.1vw,23px); font-weight:800; text-decoration:none; letter-spacing:.03em; white-space:nowrap;}
.wordmark span { color:#f2a445; }
.wordmark .mark-crown { font-family:Georgia,serif; font-size:27px; margin-right:6px; }
.site-header nav { display:flex; gap:28px; font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:.03em; }
.site-header nav a { text-decoration:none; color:#ddd; } .site-header nav a:hover {color:#f2a445;}
.header-cta {border:1px solid #f2a445; background:#f2a445; color:#111; text-decoration:none; font-size:12px; font-weight:800; padding:12px 18px; border-radius:6px; white-space:nowrap;}
.discord-cta {text-align:center; margin:-8px 20px 30px;}
.discord-cta a {display:inline-block; background:#5865f2; color:#fff; text-decoration:none; font-weight:800; font-size:13px; padding:15px 36px; border-radius:5px; letter-spacing:.06em; box-shadow:0 6px 20px #080b3470;}
.discord-cta a:hover, .header-cta:hover {filter:brightness(1.12)}
.products-section {padding:50px 20px 65px;}
.products-inner {max-width:1190px; margin:0 auto;}
.section-kicker {font-size:11px; color:#f2a445; letter-spacing:.2em; font-weight:700; text-align:center;}
.products-section h2 {font-size:clamp(27px,4vw,38px); line-height:1.2; text-align:center; margin:12px 0; text-transform:uppercase;}
.products-section h2 em {font-style:normal; color:#f2a445;}
.catalog-note {color:#aaa; text-align:center; font-size:12px; margin:0 auto 32px; max-width:600px;}
.product-grid {display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:17px;}
.product-placeholder {overflow:hidden; border:1px solid #3c3124; border-radius:14px; background:#121212; }
.product-media {height:225px; background:repeating-linear-gradient(135deg,#1d1b18,#1d1b18 16px,#201d18 16px,#201d18 32px); display:grid; place-items:center; border-bottom:1px solid #3c3124;}
.product-media span {font-size:11px; font-weight:700; letter-spacing:.12em; color:#756e64; border:1px dashed #544b40; padding:10px; border-radius:3px;}
.product-copy {display:grid; gap:4px; padding:17px;}
.product-copy strong {font-size:14px; color:#ddd;}
.product-copy span {font-size:11px; color:#888;}
#boul-hero .avatar {background:linear-gradient(135deg,#3b3126,#161616);border-color:#342717;}
#boul-hero .avatar .media-pending {opacity:0;}
#viral-vendors .viral-card {background:#191612; position:relative; border:1px solid #413321;}
#viral-vendors .viral-card img.media-pending {opacity:0;}
#viral-vendors .viral-card:has(img.media-pending):after {content:'MEDIA PENDING'; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); font-size:10px; white-space:nowrap; letter-spacing:.15em; color:#8d7859;}
#customer-feedback img.media-pending {background:#383026; border-radius:50%; opacity:.75;}
.site-footer {background:linear-gradient(180deg,#0d0d0d,#000); border-top:1px solid #42321c; margin-top:32px; text-align:center;}
.footer-inner {padding:55px 20px 25px;}
.site-footer p {color:#979797; font-size:12px; margin:14px auto 23px; max-width:600px;}
.footer-links {display:flex;gap:24px;justify-content:center; margin:20px 0 32px; font-size:12px;}
.footer-links a {color:#dfc8a4;text-decoration:none;}
.site-footer small {display:block; color:#666; font-size:10px;}
@media(max-width:900px){.site-header nav {gap:14px;}.header-cta{display:none}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.header-inner{flex-direction:column;min-height:unset;padding:17px 14px}.wordmark{font-size:20px}.site-header nav{font-size:10px;flex-wrap:wrap;justify-content:center;gap:14px}.product-grid{gap:10px}.product-media{height:160px}.product-copy{padding:11px}.product-copy strong{font-size:12px}.product-copy span{font-size:10px}.products-section{padding:35px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}


#boul-banner{
  --accent:#ECB458;
  background:linear-gradient(
    180deg,
    rgba(25,25,25,.95),
    rgba(15,15,15,.95) 70%,
    rgba(236,180,88,.06)
  );
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-top:1px solid rgba(255,255,255,.03);
  border-bottom:1px solid rgba(236,180,88,.2);
  box-shadow:
    0 4px 20px rgba(0,0,0,.4),
    0 1px rgba(236,180,88,.1),
    inset 0 1px rgba(255,255,255,.05);
  position:relative;
  width:100%;
  padding:12px 0;
  overflow:hidden;
  box-sizing:border-box
}

#boul-banner:after{
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  height:1px;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(236,180,88,.4),
    transparent
  );
  pointer-events:none
}

#boul-banner .boul-banner-track{
  display:flex;
  width:max-content;
  animation:boul-banner-scroll 20s linear infinite;
  will-change:transform
}

#boul-banner .boul-banner-group{
  display:flex;
  align-items:center;
  flex-shrink:0
}

#boul-banner .boul-banner-item{
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 8px;
  white-space:nowrap;
  flex-shrink:0
}

#boul-banner .boul-banner-icon{
  color:var(--accent);
  font-size:13px;
  line-height:1
}

#boul-banner .boul-banner-text{
  color:rgba(255,255,255,.9);
  font-family:Arial,Helvetica,sans-serif;
  font-size:13px;
  font-weight:500;
  line-height:1.2
}

#boul-banner .boul-banner-highlight{
  color:var(--accent);
  font-weight:700
}

#boul-banner .boul-banner-separator{
  color:rgba(255,255,255,.25);
  font-size:14px;
  margin:0 12px;
  flex-shrink:0
}

@keyframes boul-banner-scroll{
  from{transform:translateX(0)}
  to{transform:translateX(-33.333333%)}
}

@media(max-width:749px){
  #boul-banner{padding:10px 0}

  #boul-banner .boul-banner-track{
    animation-duration:16s
  }

  #boul-banner .boul-banner-text{
    font-size:12px
  }

  #boul-banner .boul-banner-separator{
    margin:0 8px
  }
}

@media(prefers-reduced-motion:reduce){
  #boul-banner .boul-banner-track{
    animation-play-state:paused
  }
}


#boul-hero{
  background:transparent;
  width:100%;
  overflow:hidden;
  padding:50px 20px 58px;
  text-align:center;
  box-sizing:border-box;
  font-family:Arial,Helvetica,sans-serif
}
#boul-hero *{box-sizing:border-box}
#boul-hero h2{
  color:#fff;
  font-size:clamp(28px,6vw,56px);
  font-weight:800;
  line-height:1.1;
  letter-spacing:1px;
  text-transform:uppercase;
  margin:0 0 30px;
  opacity:0;
  animation:boul-up .8s ease forwards
}
#boul-hero .gold{
  color:#f2a445!important;
  -webkit-text-fill-color:#f2a445;
  animation:boul-glow 3s ease-in-out infinite
}
@keyframes boul-glow{
  0%,100%{
    text-shadow:0 0 6px rgba(236,180,88,.25)
  }
  50%{
    text-shadow:
      0 0 10px rgba(236,180,88,.45),
      0 0 20px rgba(236,180,88,.18)
  }
}
}
#boul-hero .trust{
  color:#a3a3a3;
  font-size:clamp(16px,2.5vw,22px);
  line-height:1.25;
  margin:0 0 20px;
  opacity:0;
  animation:boul-up .8s ease .2s forwards
}
#boul-hero .trust strong{
  color:#fff;
  font-weight:700
}
#boul-hero .avatars{
  display:flex;
  justify-content:center;
  align-items:center;
  opacity:0;
  animation:boul-up .8s ease .4s forwards
}
#boul-hero .avatar{
  width:50px;
  height:50px;
  flex:0 0 50px;
  overflow:hidden;
  border:3px solid #0a0a0a;
  border-radius:50%;
  margin-left:-12px;
  transition:transform .3s ease
}
#boul-hero .avatar:first-child{margin-left:0}
#boul-hero .avatar:hover{
  position:relative;
  z-index:2;
  transform:scale(1.15) translateY(-5px)
}
#boul-hero .avatar img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover
}
@keyframes boul-up{
  from{opacity:0;transform:translateY(30px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes boul-glow{
  0%,100%{
    text-shadow:0 0 10px rgba(236,180,88,.2)
  }
  50%{
    text-shadow:
      0 0 15px rgba(236,180,88,.3),
      0 0 30px rgba(236,180,88,.15)
  }
}
@media(max-width:749px){
  #boul-hero{padding:38px 15px 42px}
  #boul-hero h2{font-size:clamp(24px,7vw,36px)}
  #boul-hero .avatar{
    width:40px;
    height:40px;
    flex-basis:40px;
    margin-left:-10px;
    border-width:2px
  }
}


#viral-vendors{
  --carousel-gap:20px;
  background:transparent;
  width:100%;
  overflow:hidden;
  padding:50px 0;
  box-sizing:border-box
}

#viral-vendors *{
  box-sizing:border-box
}

#viral-vendors .viral-container{
  max-width:1200px;
  margin:0 auto;
  padding:0 40px
}

#viral-vendors .viral-title{
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
  font-size:clamp(24px,4vw,36px);
  font-weight:700;
  line-height:1.2;
  text-align:center;
  margin:0 0 50px
}

#viral-vendors .viral-title span{
  color:#f2a445;
  animation:viral-title-pulse 3s ease-in-out infinite
}

#viral-vendors .viral-wrapper{
  position:relative;
  width:100%;
  overflow:hidden;
  user-select:none;
  touch-action:pan-y;
  mask-image:linear-gradient(
    to right,
    transparent 0%,
    #000 10%,
    #000 90%,
    transparent 100%
  );
  -webkit-mask-image:linear-gradient(
    to right,
    transparent 0%,
    #000 10%,
    #000 90%,
    transparent 100%
  )
}

#viral-vendors .viral-track{
  display:flex;
  align-items:center;
  width:max-content;
  will-change:transform;
  pointer-events:none
}

#viral-vendors .viral-track.is-ready{
  animation:viral-scroll 18s linear infinite
}

#viral-vendors .viral-group{
  display:flex;
  align-items:center;
  gap:var(--carousel-gap);
  padding-right:var(--carousel-gap);
  flex-shrink:0
}

#viral-vendors .viral-card{
  height:350px;
  width:auto;
  overflow:hidden;
  flex-shrink:0;
  border-radius:16px;
  background:#151515;
  pointer-events:none
}

#viral-vendors .viral-card img{
  display:block;
  width:auto;
  height:100%;
  object-fit:contain;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none
}

@keyframes viral-scroll{
  from{
    transform:translate3d(0,0,0)
  }
  to{
    transform:translate3d(
      calc(-1 * var(--loop-distance)),
      0,
      0
    )
  }
}

@keyframes viral-title-pulse{
  0%,100%{
    text-shadow:0 0 6px rgba(242,164,69,.25)
  }
  50%{
    text-shadow:
      0 0 10px rgba(242,164,69,.45),
      0 0 20px rgba(242,164,69,.18)
  }
}

@media(max-width:989px){
  #viral-vendors{
    --carousel-gap:16px
  }

  #viral-vendors .viral-container{
    padding:0 30px
  }

  #viral-vendors .viral-card{
    height:300px
  }
}

@media(max-width:749px){
  #viral-vendors{
    --carousel-gap:14px;
    padding:38px 0
  }

  #viral-vendors .viral-container{
    padding:0 20px
  }

  #viral-vendors .viral-title{
    margin-bottom:30px
  }

  #viral-vendors .viral-card{
    height:250px;
    border-radius:12px
  }
}

@media(max-width:480px){
  #viral-vendors{
    --carousel-gap:12px
  }

  #viral-vendors .viral-card{
    height:200px;
    border-radius:10px
  }
}

@media(prefers-reduced-motion:reduce){
  #viral-vendors .viral-track.is-ready{
    animation-play-state:paused
  }

  #viral-vendors .viral-title span{
    animation:none;
    text-shadow:0 0 6px rgba(242,164,69,.25)
  }
}


#customer-feedback{
  --review-accent:#F9B131;
  --review-accent-rgb:85,200,23;
  --review-background:transparent;
  --review-card:#151515;
  --review-border:#2a2a2a;
  --review-primary:#fff;
  --review-secondary:#a3a3a3;
  --review-muted:#737373;

  width:100%;
  padding:60px 0;
  background:var(--review-background);
  box-sizing:border-box
}

#customer-feedback *{
  box-sizing:border-box
}

#customer-feedback .reviews-container{
  max-width:1200px;
  margin:0 auto;
  padding:0 20px
}

#customer-feedback .reviews-header{
  margin-bottom:50px;
  text-align:center
}

#customer-feedback .reviews-title{
  color:var(--review-primary);
  font-family:Arial,Helvetica,sans-serif;
  font-size:clamp(28px,5vw,42px);
  font-style:normal;
  font-weight:700;
  line-height:1.2;
  margin:0
}

#customer-feedback .reviews-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px
}

#customer-feedback .review-card{
  padding:24px;
  background:var(--review-card);
  border:1px solid var(--review-border);
  border-radius:16px;
  transition:border-color .3s ease,box-shadow .3s ease
}

#customer-feedback .review-card:hover{
  border-color:var(--review-accent);
  box-shadow:0 0 20px rgba(var(--review-accent-rgb),.1)
}

#customer-feedback .reviewer{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:16px
}

#customer-feedback .review-avatar{
  display:block;
  width:40px;
  height:40px;
  flex:0 0 40px;
  border-radius:50%;
  object-fit:cover
}

#customer-feedback .reviewer-info{
  display:flex;
  flex-direction:column;
  flex-grow:1;
  min-width:0
}

#customer-feedback .reviewer-name{
  color:var(--review-primary);
  font-family:Arial,Helvetica,sans-serif;
  font-size:15px;
  font-weight:600;
  line-height:1.3
}

#customer-feedback .reviewer-date{
  color:var(--review-muted);
  font-family:Arial,Helvetica,sans-serif;
  font-size:12px;
  line-height:1.3
}

#customer-feedback .review-stars{
  display:flex;
  flex-shrink:0;
  gap:2px;
  color:var(--review-accent)
}

#customer-feedback .review-stars svg{
  display:block;
  width:16px;
  height:16px;
  fill:currentColor
}

#customer-feedback .review-stars .empty-star{
  color:var(--review-border)
}

#customer-feedback .review-text{
  color:var(--review-secondary);
  font-family:Arial,Helvetica,sans-serif;
  font-size:14px;
  line-height:1.6;
  margin:0
}

@media(max-width:989px){
  #customer-feedback .reviews-grid{
    grid-template-columns:repeat(2,1fr)
  }
}

@media(max-width:749px){
  #customer-feedback{
    padding:50px 0
  }

  #customer-feedback .reviews-grid{
    grid-template-columns:1fr;
    max-width:500px;
    margin:0 auto
  }

  #customer-feedback .reviews-header{
    margin-bottom:30px
  }

  #customer-feedback .reviews-title{
    font-size:28px
  }

  #customer-feedback .review-card{
    padding:20px
  }

  #customer-feedback .reviewer-name{
    font-size:14px
  }

  #customer-feedback .review-text{
    font-size:13px
  }
}


#boul-faq{
  --faq-background:transparent;
  --faq-card:#151515;
  --faq-border:#2a2a2a;
  --faq-primary:#fff;
  --faq-secondary:#a1a1a1;
  --faq-accent:#F9B131;
  --faq-icon-open:#0a0a0a;

  width:100%;
  padding:60px 0;
  background:var(--faq-background);
  box-sizing:border-box
}

#boul-faq *{
  box-sizing:border-box
}

#boul-faq .faq-container{
  max-width:800px;
  margin:0 auto;
  padding:0 20px
}

#boul-faq .faq-title{
  color:var(--faq-primary);
  font-family:Arial,Helvetica,sans-serif;
  font-size:clamp(28px,5vw,42px);
  font-style:normal;
  font-weight:700;
  line-height:1.2;
  text-align:center;
  margin:0 0 12px
}

#boul-faq .faq-list{
  display:flex;
  flex-direction:column;
  gap:12px
}

#boul-faq .faq-item{
  overflow:hidden;
  background:var(--faq-card);
  border:1px solid var(--faq-border);
  border-radius:12px;
  transition:border-color .3s ease
}

#boul-faq .faq-item:hover,
#boul-faq .faq-item.is-open{
  border-color:var(--faq-accent)
}

#boul-faq .faq-question{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  padding:20px 24px;
  gap:16px;
  background:transparent;
  border:0;
  box-shadow:none;
  cursor:pointer;
  text-align:left;
  font-family:Arial,Helvetica,sans-serif;
  appearance:none;
  -webkit-appearance:none;
  transition:background-color .3s ease
}

#boul-faq .faq-question:hover{
  background:rgba(255,255,255,.02)
}

#boul-faq .faq-question-text{
  color:var(--faq-primary);
  font-size:16px;
  font-weight:600;
  line-height:1.4
}

#boul-faq .faq-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  min-width:32px;
  color:var(--faq-accent);
  background:transparent;
  border:2px solid var(--faq-accent);
  border-radius:8px;
  transition:color .3s ease,background-color .3s ease
}

#boul-faq .faq-icon svg{
  display:block;
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  transition:transform .3s ease
}

#boul-faq .faq-icon-vertical{
  transform-origin:center;
  transition:transform .3s ease,opacity .3s ease
}

#boul-faq .faq-item.is-open .faq-icon{
  color:var(--faq-icon-open);
  background:var(--faq-accent)
}

#boul-faq .faq-item.is-open .faq-icon-vertical{
  opacity:0;
  transform:rotate(90deg)
}

#boul-faq .faq-answer{
  max-height:0;
  overflow:hidden;
  visibility:hidden;
  transition:max-height .4s ease,visibility 0s linear .4s
}

#boul-faq .faq-item.is-open .faq-answer{
  visibility:visible;
  transition:max-height .4s ease
}

#boul-faq .faq-answer-inner{
  padding:0 24px 24px;
  color:var(--faq-secondary);
  font-family:Arial,Helvetica,sans-serif;
  font-size:15px;
  line-height:1.7
}

#boul-faq .faq-answer-inner p{
  margin:0
}

@media(max-width:749px){
  #boul-faq{
    padding:50px 0
  }

  #boul-faq .faq-title{
    font-size:28px
  }

  #boul-faq .faq-list{
    gap:10px
  }

  #boul-faq .faq-question{
    padding:16px 18px;
    gap:12px
  }

  #boul-faq .faq-question-text{
    font-size:14px
  }

  #boul-faq .faq-icon{
    width:28px;
    height:28px;
    min-width:28px;
    border-radius:6px
  }

  #boul-faq .faq-icon svg{
    width:14px;
    height:14px
  }

  #boul-faq .faq-answer-inner{
    padding:0 18px 18px;
    font-size:14px
  }
}

@media(prefers-reduced-motion:reduce){
  #boul-faq .faq-item,
  #boul-faq .faq-question,
  #boul-faq .faq-icon,
  #boul-faq .faq-icon-vertical,
  #boul-faq .faq-answer{
    transition:none
  }
}
