/** Shopify CDN: Minification failed

Line 7014:0 Expected "}" to go with "{"

**/
:root{
  --text:#edf6ff;
  --muted:#94a6b9;
  --blue:#19a7ff;
  --border:rgba(255,255,255,0.08);
  --shadow:0 0 0 1px rgba(255,255,255,0.04), 0 16px 46px rgba(0,0,0,0.42), 0 0 30px rgba(25,167,255,0.10);
  --max:1320px;
}
html{ scroll-behavior:smooth; }
*{ box-sizing:border-box; }
body{
  margin:0;
  font-family:'Inter', Helvetica, Arial, sans-serif;
  color:var(--text);
  background:radial-gradient(circle at top, rgba(25,167,255,0.11), transparent 18%), linear-gradient(180deg, #060a10 0%, #000000 48%, #070b10 100%);
  min-height:100vh;
  overflow-x:hidden;
}
a{ color:inherit; text-decoration:none; }
img{ display:block; max-width:100%; height:auto; }
h1,h2,h3,.eyebrow,.brand-mark,.page-title,.hero-card-title,.builder-group-title,.quiz-label,.quiz-question,.quiz-progress-label{
  font-family:'Orbitron', Arial, sans-serif; letter-spacing:0.04em;
}
p{ color:var(--muted); line-height:1.65; }
.page-width{ width:min(calc(100% - 32px), var(--max)); margin:0 auto; }

.announcement-bar{ background:linear-gradient(90deg, rgba(25,167,255,0.12), rgba(255,255,255,0.02), rgba(25,167,255,0.12)); border-bottom:1px solid var(--border); }
.announcement-inner{ min-height:40px; display:flex; align-items:center; justify-content:space-between; gap:20px; font-size:0.92rem; }
.announcement-inner p{ margin:0; color:#d9f1ff; }
.announcement-inner a{ color:#8fd6ff; }

.site-header{ position:sticky; top:0; z-index:60; backdrop-filter:blur(16px); background:rgba(0,0,0,0.82); border-bottom:1px solid var(--border); }
.header-top{ display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px; padding:14px 0; }
.brand-mark{ font-size:1rem; font-weight:800; color:#fff; text-shadow:0 0 16px rgba(25,167,255,0.35); white-space:nowrap; }
.header-search{ display:flex; align-items:center; gap:10px; width:100%; }
.theme-input{
  width:100%; min-height:44px; border-radius:999px; border:1px solid rgba(25,167,255,0.18);
  background:linear-gradient(180deg, rgba(31,41,51,0.70), rgba(11,16,22,0.88));
  color:#fff; padding:0 16px; outline:none;
}
.header-actions{ display:flex; align-items:center; gap:10px; }
.currency-wrap{ min-width:96px; }

.header-icon-btn,.button-primary,.button-secondary,.pill-card,.nav-dropdown-toggle,.builder-option,.quiz-option,.builder-view-btn,.catalog-item{
  display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:0 18px; border-radius:999px; font-weight:700;
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease;
}
.header-icon-btn,.nav-dropdown-toggle,.builder-option,.quiz-option,.builder-view-btn,.catalog-item{
  border:1px solid rgba(25,167,255,0.18);
  background:linear-gradient(180deg, rgba(31,41,51,0.68), rgba(11,16,22,0.86));
  color:#ecf8ff;
  cursor:pointer;
}
.button-primary{ background:linear-gradient(180deg, #22b2ff 0%, #0c8fe4 100%); color:#04121c; border:none; box-shadow:0 0 0 1px rgba(255,255,255,0.08), 0 0 24px rgba(25,167,255,0.28); }
.button-secondary,.pill-card{ border:1px solid rgba(25,167,255,0.24); background:rgba(255,255,255,0.02); color:#e7f5ff; }
.builder-option.is-active,.quiz-option.is-active{ border-color:rgba(25,167,255,0.62); box-shadow:0 0 0 1px rgba(25,167,255,0.35), 0 0 20px rgba(25,167,255,0.16); background:rgba(25,167,255,0.10); }
.cart-count{ margin-left:6px; display:inline-grid; place-items:center; min-width:22px; height:22px; border-radius:999px; background:rgba(25,167,255,0.15); color:#fff; font-size:0.82rem; padding:0 6px; }
.header-icon-btn:hover,.button-primary:hover,.button-secondary:hover,.glow-card:hover,.preview-card:hover,.text-link:hover,.pill-card:hover,.nav-dropdown-toggle:hover,.builder-option:hover,.quiz-option:hover,.builder-view-btn:hover,.catalog-item:hover{
  transform:translateY(-2px); box-shadow:0 0 0 1px rgba(25,167,255,0.45), 0 0 28px rgba(25,167,255,0.18), 0 16px 40px rgba(0,0,0,0.32);
}

.header-nav-wrap{ border-top:1px solid rgba(255,255,255,0.04); background:rgba(6,10,15,0.88); }
.nav-layout{ display:flex; align-items:center; min-height:58px; }
.main-nav{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.main-nav > a{ font-size:0.94rem; color:#dbeaf7; transition:color .25s ease, text-shadow .25s ease; }
.main-nav > a:hover{ color:#fff; text-shadow:0 0 12px rgba(25,167,255,0.72); }
.nav-dropdown{ position:relative; }
.nav-dropdown-menu{
  position:absolute; top:calc(100% + 12px); left:0; min-width:260px; padding:12px; border-radius:20px; border:1px solid var(--border);
  background:linear-gradient(180deg, rgba(31,41,51,0.95), rgba(10,14,20,0.98)); box-shadow:var(--shadow); display:grid; gap:8px;
  opacity:0; visibility:hidden; transform:translateY(8px); transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
}
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{ opacity:1; visibility:visible; transform:translateY(0); }
.nav-dropdown-menu a{ padding:10px 12px; border-radius:14px; color:#e5f4ff; }
.nav-dropdown-menu a:hover{ background:rgba(25,167,255,0.10); }

.hero-section{ padding:78px 0 44px; }
.hero-grid{ display:grid; grid-template-columns:1.08fr 0.92fr; gap:34px; align-items:center; }
.eyebrow{ margin:0 0 14px; color:#8fd4ff; font-size:0.8rem; }
h1,.page-title{ font-size:clamp(2.6rem, 5.6vw, 5.1rem); line-height:0.96; margin:0 0 16px; color:#fff; text-shadow:0 0 18px rgba(25,167,255,0.20); }
h2{ font-size:clamp(1.8rem, 3.6vw, 2.6rem); margin:0 0 10px; color:#fff; }
h3{ margin:0 0 10px; color:#fff; font-size:1.1rem; }
.hero-subtext{ max-width:620px; font-size:1.04rem; margin:0 0 24px; }
.hero-actions,.builder-options,.footer-links,.category-strip,.hero-meta,.quiz-options,.builder-view-actions,.catalog-grid{ display:flex; flex-wrap:wrap; gap:12px; }
.hero-meta span{
  display:inline-flex; align-items:center; min-height:32px; padding:0 12px; border-radius:999px;
  background:rgba(25,167,255,0.08); border:1px solid rgba(25,167,255,0.14); color:#d7f0ff; font-size:0.9rem;
}
.hero-visual{ position:relative; min-height:400px; display:grid; place-items:center; }
.hero-orb{ position:absolute; width:340px; height:340px; border-radius:50%; background:radial-gradient(circle, rgba(25,167,255,0.30), rgba(25,167,255,0.08) 46%, transparent 72%); filter:blur(10px); animation:pulse 5.5s ease-in-out infinite; }

.hero-card,.feature-column,.trust-item,.cta-panel,.panel-card,.product-card,.search-result,.preview-card,.builder-view,.builder-controls,.product-page-media,.product-page-info,.quiz-card,.quiz-result,.feature-split,.catalog-group{
  position:relative; border:1px solid var(--border); background:linear-gradient(180deg, rgba(31,41,51,0.72), rgba(10,14,20,0.92)); box-shadow:var(--shadow); backdrop-filter:blur(8px); overflow:hidden;
}
.glow-card{ transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.hero-card::before,.feature-column::before,.trust-item::before,.cta-panel::before,.panel-card::before,.product-card::before,.search-result::before,.preview-card::before,.builder-view::before,.builder-controls::before,.product-page-media::before,.product-page-info::before,.quiz-card::before,.quiz-result::before,.feature-split::before,.catalog-group::before{
  content:""; position:absolute; inset:0; background:linear-gradient(135deg, rgba(25,167,255,0.10), transparent 34%, transparent 66%, rgba(255,255,255,0.03)); pointer-events:none;
}
.hero-card{ width:min(100%, 420px); min-height:268px; border-radius:28px; padding:26px; display:flex; flex-direction:column; justify-content:flex-end; }
.saber-line{ position:absolute; top:28px; left:26px; right:26px; height:3px; border-radius:999px; background:linear-gradient(90deg, rgba(255,255,255,0.15), #54c5ff 36%, #d6f3ff 50%, #54c5ff 64%, rgba(255,255,255,0.15)); box-shadow:0 0 18px rgba(25,167,255,0.92); }
.hero-card-label{ position:relative; color:#89d1ff; font-size:0.8rem; margin-bottom:10px; }
.hero-card-title{ position:relative; color:#fff; font-size:1.28rem; line-height:1.28; max-width:310px; }

.content-section{ padding:28px 0 62px; }
.compact-section{ padding:12px 0 36px; }
.alt-section{ background:linear-gradient(180deg, rgba(17,24,32,0.42), rgba(0,0,0,0)); }
.section-heading{ max-width:740px; margin-bottom:22px; }
.compact-heading{ display:flex; align-items:end; justify-content:space-between; gap:16px; }
.pill-card{ padding:0 16px; }
.feature-split{ border-radius:22px; padding:24px; display:grid; grid-template-columns:1fr auto; align-items:center; gap:18px; }

.builder-layout{ display:grid; grid-template-columns:1.15fr 0.85fr; gap:22px; }
.builder-view,.builder-controls,.feature-column,.trust-item,.cta-panel,.panel-card,.product-page-media,.product-page-info,.quiz-card,.quiz-result,.catalog-group{ border-radius:22px; padding:22px; }
.builder-toolbar,.builder-header-row,.catalog-head{ display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:14px; }
.builder-badge{
  display:inline-flex; align-items:center; min-height:32px; padding:0 12px; border-radius:999px;
  background:rgba(25,167,255,0.14); border:1px solid rgba(25,167,255,0.22); color:#e8f6ff; font-weight:700;
}
.builder-note,.builder-header-row span{ color:var(--muted); font-size:0.92rem; }
.builder-canvas-wrap{
  min-height:580px; border-radius:20px;
  background:
    radial-gradient(circle at center, rgba(25,167,255,0.16), transparent 35%),
    linear-gradient(180deg, #0f151d, #090d13);
  border:1px solid rgba(255,255,255,0.04);
  overflow:hidden;
  display:grid;
  place-items:center;
}
.builder-canvas-large{ min-height:760px; }
.builder-stage{ width:100%; height:100%; display:grid; place-items:center; perspective:1400px; cursor:grab; user-select:none; }
.builder-stage.is-dragging{ cursor:grabbing; }
.builder-preview{
  position:relative; width:260px; height:500px; transform-style:preserve-3d; transition:transform .12s linear;
}
.builder-preview-large{ width:360px; height:690px; }
.builder-blade{
  position:absolute; left:50%; top:0; width:22px; height:280px; transform:translateX(-50%) translateZ(16px); border-radius:999px;
}
.blade-blue{ background:linear-gradient(180deg, #effbff 0%, #8ae0ff 35%, #19a7ff 100%); box-shadow:0 0 26px rgba(25,167,255,0.95), 0 0 90px rgba(25,167,255,0.24); }
.blade-red{ background:linear-gradient(180deg, #fff0f0 0%, #ff9696 38%, #ff2d2d 100%); box-shadow:0 0 26px rgba(255,45,45,0.95), 0 0 90px rgba(255,45,45,0.24); }
.blade-green{ background:linear-gradient(180deg, #efffee 0%, #93ff9f 38%, #27d95c 100%); box-shadow:0 0 26px rgba(39,217,92,0.95), 0 0 90px rgba(39,217,92,0.24); }
.blade-purple{ background:linear-gradient(180deg, #fbf1ff 0%, #d993ff 38%, #8f41ff 100%); box-shadow:0 0 26px rgba(143,65,255,0.95), 0 0 90px rgba(143,65,255,0.24); }

.builder-energy-ring{
  position:absolute; top:286px; left:50%; width:164px; height:164px; border-radius:50%;
  transform:translateX(-50%) translateZ(-16px);
  border:1px solid rgba(25,167,255,0.18);
  box-shadow:0 0 50px rgba(25,167,255,0.08), inset 0 0 50px rgba(25,167,255,0.05);
}
.builder-piece{
  position:absolute; left:50%; transform-style:preserve-3d; transform:translateX(-50%);
  background:
    linear-gradient(90deg, #1a2026 0%, #707985 12%, #d2d7de 25%, #858d97 40%, #2b3239 55%, #bfc6ce 72%, #4b535c 88%, #13181d 100%);
  border:1px solid rgba(255,255,255,0.16);
  box-shadow:0 14px 28px rgba(0,0,0,0.34), inset 0 1px 0 rgba(255,255,255,0.18), inset 0 -10px 18px rgba(0,0,0,0.28);
}
.builder-piece:before,.builder-piece:after{
  content:""; position:absolute; left:8%; right:8%; pointer-events:none;
}
.builder-piece:before{
  top:9%; bottom:9%;
  background:linear-gradient(180deg, rgba(255,255,255,0.18), transparent 35%, rgba(25,167,255,0.06) 80%, rgba(255,255,255,0.05));
  border-radius:inherit;
}
.builder-piece:after{
  top:18%; height:2px; background:rgba(255,255,255,0.18);
  box-shadow:0 10px 0 rgba(255,255,255,0.08), 0 20px 0 rgba(255,255,255,0.08), 0 30px 0 rgba(255,255,255,0.08);
}

.emitter{ top:270px; transform:translateX(-50%) translateZ(18px); }
.neck{ top:344px; transform:translateX(-50%) translateZ(10px); }
.switch{ top:380px; transform:translateX(-50%) translateZ(18px); }
.crystal{ top:438px; transform:translateX(-50%) translateZ(18px); }
.uppergrip{ top:500px; transform:translateX(-50%) translateZ(18px); }
.lowergrip{ top:582px; transform:translateX(-50%) translateZ(18px); }
.pommel{ top:656px; transform:translateX(-50%) translateZ(18px); }

.emitter.style-a{ width:110px; height:74px; border-radius:18px 18px 10px 10px; clip-path:polygon(12% 0, 88% 0, 100% 28%, 100% 100%, 0 100%, 0 28%); }
.emitter.style-b{ width:124px; height:82px; border-radius:12px; }
.emitter.style-c{ width:104px; height:86px; border-radius:20px 20px 12px 12px; }

.neck.style-a{ width:52px; height:40px; border-radius:10px; }
.neck.style-b{ width:64px; height:46px; border-radius:8px; }
.neck.style-c{ width:46px; height:50px; border-radius:14px; }

.switch.style-a{ width:98px; height:56px; border-radius:12px; }
.switch.style-b{ width:112px; height:62px; border-radius:8px; }
.switch.style-c{ width:88px; height:58px; border-radius:18px; }

.crystal.style-a{ width:92px; height:58px; border-radius:12px; }
.crystal.style-b{ width:108px; height:64px; border-radius:10px; }
.crystal.style-c{ width:82px; height:70px; border-radius:16px; }

.uppergrip.style-a{ width:76px; height:84px; border-radius:10px; }
.uppergrip.style-b{ width:90px; height:88px; border-radius:14px; }
.uppergrip.style-c{ width:72px; height:96px; border-radius:8px; }

.lowergrip.style-a{ width:70px; height:78px; border-radius:10px; }
.lowergrip.style-b{ width:84px; height:84px; border-radius:14px; }
.lowergrip.style-c{ width:66px; height:92px; border-radius:8px; }

.pommel.style-a{ width:96px; height:62px; border-radius:10px 10px 20px 20px; }
.pommel.style-b{ width:112px; height:70px; border-radius:14px 14px 24px 24px; }
.pommel.style-c{ width:86px; height:76px; border-radius:12px 12px 26px 26px; }

.builder-summary{ margin-top:18px; padding-top:18px; border-top:1px solid rgba(255,255,255,0.08); }
.builder-summary strong{ display:block; color:#fff; margin-bottom:8px; }

.quiz-layout{ display:grid; grid-template-columns:1fr 0.8fr; gap:22px; }
.quiz-layout-full{ grid-template-columns:1.1fr 0.9fr; align-items:start; }
.quiz-card,.quiz-result{ min-height:100%; }
.quiz-progress-row{ margin-bottom:22px; }
.quiz-progress-bar{ height:10px; border-radius:999px; background:rgba(255,255,255,0.08); overflow:hidden; margin-top:10px; }
.quiz-progress-bar span{ display:block; height:100%; width:6.67%; background:linear-gradient(90deg, #1ea9ff, #7bdcff); }
.quiz-question-wrap{ min-height:340px; }
.quiz-question{ font-size:clamp(1.3rem,2.2vw,1.8rem); line-height:1.35; margin:0 0 22px; }
.quiz-options-stack{ display:grid; gap:12px; }
.quiz-option{ width:100%; justify-content:flex-start; text-align:left; padding:14px 18px; min-height:58px; border-radius:18px; }
.quiz-nav{ display:flex; justify-content:space-between; gap:12px; margin-top:18px; }
.quiz-label{ color:#fff; font-size:0.95rem; }
.quiz-result{ display:flex; flex-direction:column; gap:14px; }
.quiz-result h2{ margin-top:0; }
.quiz-result-actions{ display:flex; flex-wrap:wrap; gap:12px; }
.email-funnel{ margin-top:6px; padding-top:18px; border-top:1px solid rgba(255,255,255,0.08); }
.quiz-email-form{ display:grid; gap:12px; margin-top:12px; }
.share-copy-note{ min-height:20px; color:#8fd4ff; font-size:0.92rem; }

.featured-columns,.trust-grid,.search-results,.preview-grid,.shop-catalog{ display:grid; gap:18px; }
.featured-columns{ grid-template-columns:repeat(3, 1fr); }
.trust-grid{ grid-template-columns:repeat(3, 1fr); }
.preview-grid{ grid-template-columns:repeat(3, 1fr); }
.shop-catalog{ grid-template-columns:1fr; }
.catalog-head h2{ margin-bottom:0; }
.catalog-grid{ gap:10px; }
.catalog-item{ min-height:40px; padding:0 14px; }

.feature-column,.trust-item,.preview-card{ min-height:190px; }
.preview-card{
  border-radius:22px; padding:22px; display:flex; flex-direction:column; justify-content:flex-end;
  background:radial-gradient(circle at top right, rgba(25,167,255,0.18), transparent 28%), linear-gradient(180deg, rgba(31,41,51,0.74), rgba(10,14,20,0.94));
}
.preview-label{
  display:inline-flex; align-self:flex-start; min-height:30px; padding:0 10px; border-radius:999px;
  align-items:center; margin-bottom:12px; background:rgba(25,167,255,0.10); border:1px solid rgba(25,167,255,0.18);
  color:#d8f1ff; font-size:0.86rem;
}
.trust-item strong,.search-result strong{ display:block; margin-bottom:8px; color:#fff; }
.trust-item span,.search-result span{ color:var(--muted); font-size:0.95rem; }
.text-link{ color:#8bd5ff; font-weight:700; }

.product-grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:20px; }
.product-card{ border-radius:22px; }
.product-card-media{ aspect-ratio:1 / 1; background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01)); border-bottom:1px solid var(--border); overflow:hidden; }
.product-card img,.product-page-media img{ width:100%; height:100%; object-fit:cover; }
.product-placeholder{ width:100%; height:100%; background:radial-gradient(circle at center, rgba(25,167,255,0.18), transparent 35%), linear-gradient(180deg, #121922, #0a0f14); }
.product-card-body{ padding:18px; }
.product-card-title{ color:#fff; font-weight:700; margin-bottom:8px; }
.product-card-price,.product-price-lg{ color:#b8dff7; margin-bottom:12px; }
.product-card-compare{ color:#7f92a5; font-size:0.9rem; }

.product-page{ display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.product-page-media{ min-height:520px; padding:0; }
.product-page-info{ padding:28px; }
.product-title{ font-size:clamp(2rem, 4vw, 3rem); }
.product-label{ display:block; color:#fff; margin:16px 0 8px; }
.product-add-btn{ margin-top:18px; }

.search-page-form{ display:flex; gap:12px; margin:20px 0 24px; }
.search-page-form input{ flex:1 1 auto; }
.cart-list{ display:grid; gap:14px; margin-bottom:20px; }
.cart-item,.cart-footer-row{ display:flex; justify-content:space-between; gap:16px; padding:14px 0; border-bottom:1px solid rgba(255,255,255,0.08); }

.page-content{ color:var(--muted); }
.site-footer{ border-top:1px solid var(--border); background:rgba(0,0,0,0.68); padding:26px 0 34px; }
.footer-simple{ display:flex; align-items:center; justify-content:space-between; gap:20px; }
.footer-links a{ color:var(--muted); font-size:0.95rem; }

@keyframes pulse{ 0%,100%{ transform:scale(1); opacity:0.74; } 50%{ transform:scale(1.08); opacity:1; } }

@media (max-width:1200px){
  .product-grid,.preview-grid,.featured-columns{ grid-template-columns:repeat(2, 1fr); }
}
@media (max-width:1024px){
  .header-top,.hero-grid,.builder-layout,.trust-grid,.product-page,.preview-grid,.quiz-layout,.feature-split,.featured-columns,.quiz-layout-full{ grid-template-columns:1fr; }
  .header-actions{ flex-wrap:wrap; }
  .footer-simple{ flex-direction:column; align-items:flex-start; }
}
@media (max-width:760px){
  .announcement-inner,.search-page-form,.quiz-nav{ flex-direction:column; align-items:stretch; }
  .product-grid,.search-results,.preview-grid,.featured-columns,.trust-grid{ grid-template-columns:1fr; }
  .hero-section{ padding-top:56px; }
  .hero-visual{ min-height:300px; }
  .hero-orb{ width:240px; height:240px; }
  h1,.page-title{ font-size:2.3rem; }
  .main-nav{ gap:12px; }
  .builder-canvas-wrap{ min-height:500px; }
  .builder-preview-large{ transform:scale(0.72) !important; transform-origin:center center; }
  .quiz-question-wrap{ min-height:420px; }
}

/* Homepage cleanup + premium dynamic background */
.hero-dynamic-bg{
  position:relative;
  overflow:hidden;
  min-height:640px;
  background:
    radial-gradient(circle at 20% 20%, rgba(25,167,255,0.20), transparent 28%),
    radial-gradient(circle at 80% 30%, rgba(112,63,255,0.18), transparent 24%),
    linear-gradient(180deg, #05080d 0%, #000000 55%, #070c12 100%);
}
.hero-noise{
  position:absolute;
  inset:0;
  opacity:0.08;
  background-image:
    radial-gradient(circle at 25% 25%, rgba(255,255,255,0.7) 0 1px, transparent 1px),
    radial-gradient(circle at 75% 40%, rgba(255,255,255,0.6) 0 1px, transparent 1px),
    radial-gradient(circle at 60% 70%, rgba(255,255,255,0.5) 0 1px, transparent 1px);
  background-size: 180px 180px, 240px 240px, 220px 220px;
  animation: driftNoise 18s linear infinite;
  pointer-events:none;
}
.hero-gradient-orb{
  position:absolute;
  border-radius:50%;
  filter:blur(40px);
  opacity:0.55;
  pointer-events:none;
  animation: floatOrb 12s ease-in-out infinite;
}
.orb-1{
  width:340px;
  height:340px;
  left:-60px;
  top:80px;
  background:radial-gradient(circle, rgba(25,167,255,0.55) 0%, rgba(25,167,255,0.08) 60%, transparent 80%);
}
.orb-2{
  width:300px;
  height:300px;
  right:-40px;
  top:40px;
  background:radial-gradient(circle, rgba(131,95,255,0.45) 0%, rgba(131,95,255,0.08) 60%, transparent 80%);
  animation-delay: -4s;
}
.hero-section .hero-grid{
  position:relative;
  z-index:2;
}
.hero-copy .hero-actions{
  margin-top:8px;
}
.compact-heading h2{
  display:none;
}
.preview-grid{
  grid-template-columns:repeat(3, 1fr);
}
.feature-split{
  border-radius:24px;
}
.site-footer{
  margin-top:20px;
}
.footer-stack{
  display:grid;
  gap:22px;
  padding-top:10px;
}
.footer-newsletter{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:18px;
  padding:24px;
  border-radius:22px;
}
.footer-newsletter-form{
  display:flex;
  gap:12px;
  align-items:center;
  width:min(100%, 560px);
}
.footer-newsletter-form .theme-input{
  min-width:260px;
}
.footer-simple{
  padding-top:4px;
}
.footer-disclaimer{
  color:var(--muted);
  font-size:0.92rem;
  text-align:left;
  padding-bottom:8px;
}
.preview-card h3{
  margin-bottom:0;
}
@keyframes floatOrb{
  0%,100%{ transform:translateY(0px) scale(1); }
  50%{ transform:translateY(18px) scale(1.04); }
}
@keyframes driftNoise{
  0%{ transform:translate3d(0,0,0); }
  50%{ transform:translate3d(-12px,8px,0); }
  100%{ transform:translate3d(0,0,0); }
}
@media (max-width: 1024px){
  .footer-newsletter{
    grid-template-columns:1fr;
    align-items:start;
  }
  .footer-newsletter-form{
    width:100%;
  }
}
@media (max-width: 760px){
  .hero-dynamic-bg{
    min-height:auto;
  }
  .footer-newsletter-form{
    flex-direction:column;
    align-items:stretch;
  }
  .footer-newsletter-form .theme-input{
    min-width:0;
  }
  .preview-grid{
    grid-template-columns:1fr;
  }
}

/* Homepage category card refinement */
.category-home-grid{
  grid-template-columns:repeat(3, 1fr);
}
.category-home-grid .preview-card{
  min-height:220px;
}
@media (max-width: 1024px){
  .category-home-grid{
    grid-template-columns:repeat(2, 1fr);
  }
}
@media (max-width: 760px){
  .category-home-grid{
    grid-template-columns:1fr;
  }
}

/* Homepage feature showcase */
.features-heading{
  max-width:760px;
}
.features-showcase-grid{
  display:grid;
  grid-template-columns:1.12fr 0.88fr;
  gap:20px;
  align-items:stretch;
}
.feature-spotlight,
.feature-detail{
  position:relative;
  overflow:hidden;
  border-radius:24px;
}
.feature-spotlight{
  min-height:520px;
  padding:28px;
  display:flex;
  align-items:flex-end;
  background:
    radial-gradient(circle at top right, rgba(25,167,255,0.20), transparent 30%),
    linear-gradient(180deg, rgba(10,14,20,0.42), rgba(10,14,20,0.88));
}
.feature-spotlight-bg{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 18% 20%, rgba(255,255,255,0.10), transparent 18%),
    radial-gradient(circle at 82% 28%, rgba(25,167,255,0.22), transparent 24%),
    linear-gradient(140deg, rgba(25,167,255,0.08), transparent 38%, transparent 58%, rgba(255,255,255,0.04)),
    linear-gradient(180deg, rgba(12,18,26,0.18), rgba(0,0,0,0.42));
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  animation: featureGlowShift 14s ease-in-out infinite;
  pointer-events:none;
}
.feature-spotlight-copy,
.feature-detail > *{
  position:relative;
  z-index:1;
}
.feature-detail-bg{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at top right, rgba(25,167,255,0.14), transparent 28%),
    linear-gradient(180deg, rgba(31,41,51,0.74), rgba(10,14,20,0.94));
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  pointer-events:none;
}
.features-side-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}
.feature-detail{
  min-height:250px;
  padding:22px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  background:
    radial-gradient(circle at top right, rgba(25,167,255,0.14), transparent 28%),
    linear-gradient(180deg, rgba(31,41,51,0.74), rgba(10,14,20,0.94));
}
.feature-kicker{
  display:inline-flex;
  align-self:flex-start;
  min-height:30px;
  padding:0 10px;
  border-radius:999px;
  align-items:center;
  margin-bottom:14px;
  background:rgba(25,167,255,0.10);
  border:1px solid rgba(25,167,255,0.18);
  color:#d8f1ff;
  font-size:0.82rem;
  letter-spacing:0.08em;
}
.feature-spotlight h3{
  font-size:clamp(1.8rem, 3.2vw, 2.8rem);
  max-width:420px;
  line-height:1.08;
  margin-bottom:14px;
}
.feature-spotlight p{
  max-width:520px;
}
.feature-detail h3{
  font-size:1.15rem;
  line-height:1.2;
}
@keyframes featureGlowShift{
  0%,100%{ transform:scale(1) translate3d(0,0,0); opacity:1; }
  50%{ transform:scale(1.03) translate3d(8px,-6px,0); opacity:0.92; }
}
@media (max-width: 1024px){
  .features-showcase-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 760px){
  .features-side-grid{
    grid-template-columns:1fr;
  }
  .feature-spotlight{
    min-height:420px;
  }
  .feature-detail{
    min-height:200px;
  }
}

/* Dynamic homepage background upgrade */
.hero-dynamic-bg{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:680px;
  background:
    radial-gradient(circle at 18% 16%, rgba(25,167,255,0.14), transparent 26%),
    radial-gradient(circle at 82% 20%, rgba(106,69,255,0.12), transparent 24%),
    linear-gradient(180deg, #04070c 0%, #000000 52%, #050a10 100%);
}
.hero-bg-layer{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.hero-grid-layer{
  opacity:0.08;
  background-image:
    linear-gradient(rgba(255,255,255,0.18) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.18) 1px, transparent 1px);
  background-size:80px 80px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,0.85), transparent 90%);
  transform:perspective(900px) rotateX(72deg) scale(1.6) translateY(22%);
  transform-origin:center bottom;
  animation:gridShift 22s linear infinite;
}
.hero-star-layer{
  opacity:0.32;
  background-image:
    radial-gradient(circle at 10% 20%, rgba(255,255,255,0.9) 0 1px, transparent 1.2px),
    radial-gradient(circle at 28% 65%, rgba(255,255,255,0.75) 0 1px, transparent 1.2px),
    radial-gradient(circle at 42% 18%, rgba(255,255,255,0.8) 0 1px, transparent 1.2px),
    radial-gradient(circle at 60% 54%, rgba(255,255,255,0.85) 0 1px, transparent 1.2px),
    radial-gradient(circle at 74% 22%, rgba(255,255,255,0.8) 0 1px, transparent 1.2px),
    radial-gradient(circle at 88% 68%, rgba(255,255,255,0.75) 0 1px, transparent 1.2px),
    radial-gradient(circle at 16% 82%, rgba(255,255,255,0.65) 0 1px, transparent 1.2px),
    radial-gradient(circle at 94% 14%, rgba(255,255,255,0.7) 0 1px, transparent 1.2px);
  animation:starDrift 24s linear infinite;
}
.hero-light-beam{
  opacity:0.26;
  filter:blur(22px);
  mix-blend-mode:screen;
}
.beam-1{
  background:linear-gradient(115deg, transparent 35%, rgba(25,167,255,0.34) 48%, transparent 62%);
  transform:translateX(-6%) rotate(-8deg);
  animation:beamSweep 12s ease-in-out infinite;
}
.beam-2{
  background:linear-gradient(102deg, transparent 40%, rgba(116,85,255,0.28) 52%, transparent 66%);
  transform:translateX(8%) rotate(6deg);
  animation:beamSweep 15s ease-in-out infinite reverse;
}
.beam-3{
  background:linear-gradient(95deg, transparent 44%, rgba(255,255,255,0.10) 52%, transparent 60%);
  transform:translateX(0%) rotate(-2deg);
  animation:beamPulse 9s ease-in-out infinite;
}
.hero-noise{
  opacity:0.06;
  background-image:
    radial-gradient(circle at 25% 25%, rgba(255,255,255,0.9) 0 1px, transparent 1px),
    radial-gradient(circle at 70% 40%, rgba(255,255,255,0.7) 0 1px, transparent 1px),
    radial-gradient(circle at 55% 75%, rgba(255,255,255,0.55) 0 1px, transparent 1px);
  background-size:160px 160px, 220px 220px, 200px 200px;
  animation:driftNoise 18s linear infinite;
}
.hero-gradient-orb{
  border-radius:50%;
  filter:blur(44px);
  opacity:0.5;
}
.orb-1{
  width:360px;
  height:360px;
  left:-80px;
  top:70px;
  background:radial-gradient(circle, rgba(25,167,255,0.58) 0%, rgba(25,167,255,0.08) 62%, transparent 82%);
  animation:floatOrb 13s ease-in-out infinite;
}
.orb-2{
  width:300px;
  height:300px;
  right:-30px;
  top:50px;
  background:radial-gradient(circle, rgba(128,89,255,0.42) 0%, rgba(128,89,255,0.08) 62%, transparent 82%);
  animation:floatOrb 11s ease-in-out infinite reverse;
}
.orb-3{
  width:240px;
  height:240px;
  left:44%;
  bottom:40px;
  background:radial-gradient(circle, rgba(25,167,255,0.24) 0%, rgba(25,167,255,0.04) 62%, transparent 82%);
  animation:floatOrbSmall 10s ease-in-out infinite;
}
.hero-mouse-glow{
  width:420px;
  height:420px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(25,167,255,0.18) 0%, rgba(25,167,255,0.06) 35%, transparent 68%);
  filter:blur(18px);
  opacity:0.9;
  transform:translate3d(-50%, -50%, 0);
  left:50%;
  top:50%;
  transition:left .18s ease-out, top .18s ease-out, opacity .2s ease-out;
}
.hero-section .hero-grid{
  position:relative;
  z-index:2;
}
.hero-dynamic-bg:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.22));
  pointer-events:none;
  z-index:1;
}

@keyframes gridShift{
  0%{ transform:perspective(900px) rotateX(72deg) scale(1.6) translateY(22%) translateX(0); }
  100%{ transform:perspective(900px) rotateX(72deg) scale(1.6) translateY(22%) translateX(-80px); }
}
@keyframes starDrift{
  0%{ transform:translate3d(0,0,0); opacity:0.26; }
  50%{ transform:translate3d(-10px,8px,0); opacity:0.34; }
  100%{ transform:translate3d(0,0,0); opacity:0.26; }
}
@keyframes beamSweep{
  0%,100%{ transform:translateX(-8%) rotate(-6deg) scaleX(1); opacity:0.14; }
  50%{ transform:translateX(8%) rotate(4deg) scaleX(1.08); opacity:0.34; }
}
@keyframes beamPulse{
  0%,100%{ opacity:0.08; transform:translateY(0) scaleX(1); }
  50%{ opacity:0.22; transform:translateY(-6px) scaleX(1.03); }
}
@keyframes floatOrb{
  0%,100%{ transform:translateY(0px) scale(1); }
  50%{ transform:translateY(20px) scale(1.05); }
}
@keyframes floatOrbSmall{
  0%,100%{ transform:translateY(0px) scale(1); opacity:0.4; }
  50%{ transform:translateY(-14px) scale(1.08); opacity:0.62; }
}

@media (max-width: 760px){
  .hero-dynamic-bg{
    min-height:auto;
  }
  .hero-grid-layer{
    background-size:56px 56px;
  }
  .hero-mouse-glow{
    width:260px;
    height:260px;
  }
}

.hero-gradient-orb,
.hero-grid-layer,
.hero-star-layer,
.hero-light-beam{
  transform:translate3d(var(--hero-shift-x, 0px), var(--hero-shift-y, 0px), 0);
}

/* Site-inspired homepage elements */
.featured-saber-grid{
  display:grid;
  grid-template-columns:repeat(5, 1fr);
  gap:16px;
}
.saber-chip{
  min-height:108px;
  border-radius:20px;
  display:flex;
  align-items:flex-end;
  padding:18px;
  background:
    radial-gradient(circle at top right, rgba(25,167,255,0.18), transparent 28%),
    linear-gradient(180deg, rgba(31,41,51,0.74), rgba(10,14,20,0.94));
}
.saber-chip span{
  color:#fff;
  font-family:'Orbitron', Arial, sans-serif;
}
.site-copy-split{
  align-items:center;
}
@media (max-width: 1024px){
  .featured-saber-grid{
    grid-template-columns:repeat(2, 1fr);
  }
}
@media (max-width: 760px){
  .featured-saber-grid{
    grid-template-columns:1fr;
  }
}

/* FAQ + policy pages */
.faq-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:20px;
}
.faq-card{
  position:relative;
  border-radius:24px;
  padding:24px;
}
.faq-card h2{
  margin-bottom:18px;
}
.faq-item{
  border-top:1px solid rgba(255,255,255,0.08);
  padding:16px 0;
}
.faq-item:first-of-type{
  border-top:none;
  padding-top:0;
}
.faq-item summary{
  cursor:pointer;
  list-style:none;
  color:#fff;
  font-weight:700;
  padding-right:28px;
  position:relative;
}
.faq-item summary::-webkit-details-marker{
  display:none;
}
.faq-item summary:after{
  content:"+";
  position:absolute;
  right:0;
  top:0;
  color:#8fd4ff;
}
.faq-item[open] summary:after{
  content:"–";
}
.faq-answer{
  margin-top:12px;
}
.faq-answer p,
.faq-answer li{
  color:var(--muted);
}


/* Brand-fit homepage background */
.hero-brand-bg{
  background:
    radial-gradient(circle at 18% 18%, rgba(38,130,255,0.16), transparent 26%),
    radial-gradient(circle at 82% 14%, rgba(0,173,255,0.10), transparent 22%),
    linear-gradient(180deg, #04070c 0%, #000000 48%, #060b12 100%);
}
.hero-ember-layer{
  opacity:0.22;
  background-image:
    radial-gradient(circle at 12% 18%, rgba(90,170,255,0.40) 0 2px, transparent 2.5px),
    radial-gradient(circle at 24% 72%, rgba(255,255,255,0.22) 0 1px, transparent 1.5px),
    radial-gradient(circle at 46% 28%, rgba(90,170,255,0.34) 0 2px, transparent 2.5px),
    radial-gradient(circle at 58% 66%, rgba(255,255,255,0.18) 0 1px, transparent 1.5px),
    radial-gradient(circle at 74% 22%, rgba(90,170,255,0.34) 0 2px, transparent 2.5px),
    radial-gradient(circle at 88% 76%, rgba(255,255,255,0.18) 0 1px, transparent 1.5px);
  animation: emberDrift 18s linear infinite;
  mix-blend-mode:screen;
}
.hero-brand-bg .beam-1{ background:linear-gradient(114deg, transparent 34%, rgba(41,137,255,0.28) 49%, transparent 64%); }
.hero-brand-bg .beam-2{ background:linear-gradient(102deg, transparent 40%, rgba(95,186,255,0.20) 52%, transparent 66%); }
.hero-brand-bg .beam-3{ background:linear-gradient(95deg, transparent 44%, rgba(255,255,255,0.08) 52%, transparent 60%); }
.hero-brand-bg .orb-1{ background:radial-gradient(circle, rgba(48,145,255,0.50) 0%, rgba(48,145,255,0.08) 62%, transparent 82%); }
.hero-brand-bg .orb-2{ background:radial-gradient(circle, rgba(0,188,255,0.26) 0%, rgba(0,188,255,0.06) 62%, transparent 82%); }
.hero-brand-bg .orb-3{ background:radial-gradient(circle, rgba(123,202,255,0.18) 0%, rgba(123,202,255,0.04) 62%, transparent 82%); }
.hero-brand-bg .hero-mouse-glow{ background:radial-gradient(circle, rgba(42,145,255,0.18) 0%, rgba(42,145,255,0.05) 35%, transparent 68%); }
@keyframes emberDrift{
  0%{ transform:translate3d(0,0,0); opacity:0.18; }
  50%{ transform:translate3d(-10px,10px,0); opacity:0.28; }
  100%{ transform:translate3d(0,0,0); opacity:0.18; }
}


/* Sci-fi homepage background refresh */
.hero-scihangar-bg{
  background:
    radial-gradient(circle at 18% 22%, rgba(50,123,255,0.10), transparent 24%),
    radial-gradient(circle at 82% 18%, rgba(0,212,255,0.08), transparent 22%),
    linear-gradient(180deg, #01030a 0%, #000000 48%, #050914 100%);
}
.hero-scihangar-bg .hero-grid-layer{
  opacity:0.12;
  background-image:
    linear-gradient(rgba(72,138,255,0.18) 1px, transparent 1px),
    linear-gradient(90deg, rgba(72,138,255,0.18) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,0.95), transparent 88%);
  transform:perspective(1100px) rotateX(78deg) scale(1.7) translateY(24%);
}
.hero-hangar-rings{
  opacity:0.20;
  background:
    radial-gradient(circle at 78% 26%, transparent 0 84px, rgba(82,148,255,0.22) 85px 86px, transparent 87px 112px, rgba(82,148,255,0.10) 113px 114px, transparent 115px),
    radial-gradient(circle at 18% 72%, transparent 0 58px, rgba(0,220,255,0.16) 59px 60px, transparent 61px 86px, rgba(255,255,255,0.06) 87px 88px, transparent 89px);
  animation: ringPulse 12s ease-in-out infinite;
}
.hero-nebula{
  border-radius:50%;
  filter:blur(54px);
  opacity:0.34;
}
.nebula-1{
  width:320px; height:320px; left:-40px; top:30px;
  background:radial-gradient(circle, rgba(37,108,255,0.42) 0%, rgba(37,108,255,0.06) 60%, transparent 80%);
  animation: floatNebula 13s ease-in-out infinite;
}
.nebula-2{
  width:260px; height:260px; right:40px; top:18px;
  background:radial-gradient(circle, rgba(0,204,255,0.26) 0%, rgba(0,204,255,0.05) 60%, transparent 80%);
  animation: floatNebula 16s ease-in-out infinite reverse;
}
.nebula-3{
  width:220px; height:220px; left:48%; bottom:24px;
  background:radial-gradient(circle, rgba(151,214,255,0.14) 0%, rgba(151,214,255,0.03) 60%, transparent 80%);
  animation: floatNebulaSmall 10s ease-in-out infinite;
}
.hero-scihangar-bg .beam-1{
  background:linear-gradient(115deg, transparent 34%, rgba(72,138,255,0.26) 50%, transparent 66%);
}
.hero-scihangar-bg .beam-2{
  background:linear-gradient(101deg, transparent 40%, rgba(0,212,255,0.18) 52%, transparent 66%);
}
.hero-scihangar-bg .beam-3{
  background:linear-gradient(95deg, transparent 44%, rgba(255,255,255,0.08) 52%, transparent 60%);
}
.hero-scihangar-bg .hero-mouse-glow{
  background:radial-gradient(circle, rgba(58,131,255,0.16) 0%, rgba(58,131,255,0.05) 35%, transparent 68%);
}
@keyframes ringPulse{
  0%,100%{ opacity:0.14; transform:scale(1); }
  50%{ opacity:0.24; transform:scale(1.03); }
}
@keyframes floatNebula{
  0%,100%{ transform:translateY(0px) scale(1); }
  50%{ transform:translateY(16px) scale(1.05); }
}
@keyframes floatNebulaSmall{
  0%,100%{ transform:translateY(0px) scale(1); }
  50%{ transform:translateY(-12px) scale(1.06); }
}

/* Ultra builder upgrade */
.builder-ultra{
  width:390px;
  height:760px;
}
.builder-ultra .builder-blade{
  width:24px;
  height:300px;
  transform:translateX(-50%) translateZ(30px);
  box-shadow:0 0 28px rgba(25,167,255,0.95), 0 0 110px rgba(25,167,255,0.22);
}
.builder-ultra .builder-energy-ring{
  top:322px;
  width:180px;
  height:180px;
  transform:translateX(-50%) translateZ(-40px);
}
.builder-ultra .builder-piece{
  background:
    linear-gradient(90deg, #0e1217 0%, #444c56 10%, #c9d1d8 24%, #6c7480 36%, #222931 48%, #b3bcc4 64%, #4b545e 78%, #0f1318 100%);
  box-shadow:
    0 18px 32px rgba(0,0,0,0.38),
    inset 0 1px 0 rgba(255,255,255,0.18),
    inset 0 -10px 18px rgba(0,0,0,0.32);
  overflow:visible;
}
.builder-ultra .builder-piece .piece-core,
.builder-ultra .builder-piece .piece-rib,
.builder-ultra .builder-piece .piece-accent,
.builder-ultra .builder-piece .piece-window,
.builder-ultra .builder-piece .piece-box,
.builder-ultra .builder-piece .piece-cage,
.builder-ultra .builder-piece .piece-crystal-core,
.builder-ultra .builder-piece .piece-slot,
.builder-ultra .builder-piece .piece-cap{
  position:absolute;
  display:block;
}
.builder-ultra .builder-piece .piece-core{
  inset:10% 8%;
  border-radius:inherit;
  background:linear-gradient(180deg, rgba(255,255,255,0.16), transparent 32%, rgba(0,0,0,0.24) 80%);
}
.builder-ultra .builder-piece .piece-rib{
  left:10%;
  right:10%;
  height:4px;
  background:rgba(255,255,255,0.18);
  box-shadow:0 1px 0 rgba(0,0,0,0.4);
}
.builder-ultra .builder-piece .rib-1{ top:20%; }
.builder-ultra .builder-piece .rib-2{ top:46%; }
.builder-ultra .builder-piece .rib-3{ top:72%; }

.builder-ultra .builder-piece .accent-a{
  left:18%; right:18%; bottom:14%;
  height:10px;
  border-radius:999px;
  background:linear-gradient(90deg, transparent, rgba(68,171,255,0.6), transparent);
  box-shadow:0 0 14px rgba(68,171,255,0.35);
}
.builder-ultra .builder-piece .accent-b{
  left:18%; right:18%; top:16%;
  height:8px;
  border-radius:999px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
}
.builder-ultra .builder-piece .window-a{
  left:24%; right:24%; top:20%; bottom:20%;
  border-radius:10px;
  background:linear-gradient(180deg, rgba(68,171,255,0.18), rgba(255,255,255,0.04));
  border:1px solid rgba(255,255,255,0.12);
}
.builder-ultra .builder-piece .piece-box{
  width:24%;
  height:42%;
  top:22%;
  right:10%;
  border-radius:8px;
  background:linear-gradient(180deg, #99a3af, #2a323a);
  border:1px solid rgba(255,255,255,0.12);
}
.builder-ultra .builder-piece .piece-box.small{
  width:18%;
  height:28%;
  left:12%;
  top:36%;
}
.builder-ultra .builder-piece .piece-cage{
  top:8%;
  bottom:8%;
  width:10%;
  border-radius:999px;
  background:linear-gradient(180deg, #87919d, #222831);
  border:1px solid rgba(255,255,255,0.12);
}
.builder-ultra .builder-piece .cage-left{ left:12%; }
.builder-ultra .builder-piece .cage-right{ right:12%; }
.builder-ultra .builder-piece .piece-crystal-core{
  left:36%;
  right:36%;
  top:14%;
  bottom:14%;
  border-radius:10px;
  background:linear-gradient(180deg, rgba(87,203,255,0.9), rgba(255,255,255,0.35));
  box-shadow:0 0 18px rgba(87,203,255,0.55);
}
.builder-ultra .builder-piece .piece-slot{
  width:16%;
  top:16%;
  bottom:16%;
  border-radius:999px;
  background:rgba(0,0,0,0.34);
  box-shadow:inset 0 0 10px rgba(0,0,0,0.45);
}
.builder-ultra .builder-piece .slot-1{ left:16%; }
.builder-ultra .builder-piece .slot-2{ left:42%; }
.builder-ultra .builder-piece .slot-3{ right:16%; }
.builder-ultra .builder-piece .piece-cap{
  left:22%; right:22%; bottom:-8%;
  height:18%;
  border-radius:0 0 18px 18px;
  background:linear-gradient(180deg, #aab2bc, #222931);
  border:1px solid rgba(255,255,255,0.12);
}

.builder-ultra .emitter{ top:282px; transform:translateX(-50%) translateZ(26px); }
.builder-ultra .neck{ top:360px; transform:translateX(-50%) translateZ(16px); }
.builder-ultra .switch{ top:404px; transform:translateX(-50%) translateZ(26px); }
.builder-ultra .crystal{ top:470px; transform:translateX(-50%) translateZ(26px); }
.builder-ultra .uppergrip{ top:544px; transform:translateX(-50%) translateZ(26px); }
.builder-ultra .lowergrip{ top:632px; transform:translateX(-50%) translateZ(26px); }
.builder-ultra .pommel{ top:712px; transform:translateX(-50%) translateZ(26px); }

.builder-ultra .emitter.style-a{ width:118px; height:82px; border-radius:20px 20px 12px 12px; clip-path:polygon(12% 0, 88% 0, 100% 28%, 100% 100%, 0 100%, 0 28%); }
.builder-ultra .emitter.style-b{ width:132px; height:88px; border-radius:12px; }
.builder-ultra .emitter.style-c{ width:112px; height:92px; border-radius:22px 22px 12px 12px; }

.builder-ultra .neck.style-a{ width:54px; height:48px; border-radius:12px; }
.builder-ultra .neck.style-b{ width:68px; height:52px; border-radius:8px; }
.builder-ultra .neck.style-c{ width:46px; height:58px; border-radius:16px; }

.builder-ultra .switch.style-a{ width:102px; height:62px; border-radius:14px; }
.builder-ultra .switch.style-b{ width:118px; height:68px; border-radius:10px; }
.builder-ultra .switch.style-c{ width:94px; height:66px; border-radius:18px; }

.builder-ultra .crystal.style-a{ width:106px; height:68px; border-radius:14px; }
.builder-ultra .crystal.style-b{ width:120px; height:74px; border-radius:10px; }
.builder-ultra .crystal.style-c{ width:94px; height:82px; border-radius:18px; }

.builder-ultra .uppergrip.style-a{ width:82px; height:92px; border-radius:12px; }
.builder-ultra .uppergrip.style-b{ width:96px; height:98px; border-radius:16px; }
.builder-ultra .uppergrip.style-c{ width:76px; height:106px; border-radius:8px; }

.builder-ultra .lowergrip.style-a{ width:76px; height:84px; border-radius:12px; }
.builder-ultra .lowergrip.style-b{ width:90px; height:92px; border-radius:16px; }
.builder-ultra .lowergrip.style-c{ width:70px; height:100px; border-radius:8px; }

.builder-ultra .pommel.style-a{ width:102px; height:70px; border-radius:12px 12px 22px 22px; }
.builder-ultra .pommel.style-b{ width:118px; height:78px; border-radius:14px 14px 26px 26px; }
.builder-ultra .pommel.style-c{ width:92px; height:84px; border-radius:14px 14px 28px 28px; }

@media (max-width:760px){
  .builder-ultra{
    transform:scale(0.66) !important;
    transform-origin:center center;
  }
}

/* Data-driven builder selector + prism model */
.builder-layout-wide{
  grid-template-columns:1.02fr 0.98fr;
}
.builder-selector-intro{
  margin-bottom:16px;
}
.builder-selector-groups{
  display:grid;
  gap:18px;
}
.builder-options-scroll{
  overflow:auto;
  padding-bottom:2px;
  scrollbar-width:thin;
}
.builder-option-card{
  min-width:132px;
  border-radius:16px;
  min-height:52px;
}
.builder-option-label{
  display:block;
}

.builder-canvas-prism{
  min-height:780px;
  background:
    radial-gradient(circle at center, rgba(25,167,255,0.12), transparent 35%),
    linear-gradient(180deg, #0a0f16, #05080d);
}
.builder-preview-prism{
  width:440px;
  height:860px;
  transform-style:preserve-3d;
  transition:transform .12s linear;
}
.builder-model{
  position:absolute;
  left:50%;
  top:290px;
  width:1px;
  height:480px;
  transform:translateX(-50%);
  transform-style:preserve-3d;
}
.builder-floor-glow{
  position:absolute;
  left:50%;
  bottom:54px;
  width:260px;
  height:52px;
  border-radius:50%;
  transform:translateX(-50%) translateZ(-70px);
  background:radial-gradient(circle, rgba(25,167,255,0.20), rgba(25,167,255,0.04) 52%, transparent 76%);
  filter:blur(10px);
}
.builder-preview-prism .builder-blade{
  position:absolute;
  left:50%;
  top:0;
  width:24px;
  height:300px;
  transform:translateX(-50%) translateZ(26px);
}
.builder-segment{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  transform-style:preserve-3d;
}
.prism-face,
.prism-cap,
.builder-ring,
.builder-groove,
.builder-window,
.builder-box,
.builder-fin{
  position:absolute;
  left:50%;
  transform-style:preserve-3d;
}
.prism-face{
  top:0;
  border-radius:4px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.20), rgba(255,255,255,0.06) 18%, rgba(0,0,0,0.24) 82%, rgba(255,255,255,0.04));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.16),
    inset 0 -10px 16px rgba(0,0,0,0.24);
}
.finish-steel{
  background-color:#6f7a85;
  background-image:
    linear-gradient(180deg, rgba(255,255,255,0.24), rgba(255,255,255,0.06) 18%, rgba(0,0,0,0.26) 82%, rgba(255,255,255,0.05)),
    linear-gradient(90deg, #11161b 0%, #4d5864 10%, #c7d0d8 25%, #77818c 40%, #262c33 55%, #b7c0c8 70%, #46505a 84%, #0f1418 100%);
}
.finish-dark{
  background-color:#2e3740;
  background-image:
    linear-gradient(180deg, rgba(255,255,255,0.14), rgba(255,255,255,0.04) 18%, rgba(0,0,0,0.34) 82%, rgba(255,255,255,0.03)),
    linear-gradient(90deg, #080b0e 0%, #1d242b 10%, #6d7884 24%, #2e3640 40%, #14191f 56%, #68727d 70%, #222931 86%, #090c10 100%);
}
.prism-cap{
  top:0;
  border-radius:50%;
  background:
    radial-gradient(circle at 36% 32%, rgba(255,255,255,0.24), rgba(255,255,255,0.04) 34%, rgba(0,0,0,0.34) 72%),
    linear-gradient(180deg, #aeb8c0, #2a3138);
  transform:translateX(-50%) rotateX(90deg);
}
.cap-bottom{
  bottom:0;
}
.builder-ring{
  left:50%;
  transform:translateX(-50%) translateZ(38px);
  border-radius:999px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.28), rgba(0,0,0,0.28)),
    linear-gradient(90deg, #d5dde4, #3a434c);
  box-shadow:0 0 0 1px rgba(255,255,255,0.12);
}
.builder-groove{
  left:50%;
  transform:translateX(-50%) translateZ(35px);
  border-radius:999px;
  background:rgba(0,0,0,0.45);
  box-shadow:inset 0 0 8px rgba(0,0,0,0.4);
}
.builder-window{
  left:50%;
  transform:translateX(-50%) translateZ(37px);
  border-radius:8px;
  background:linear-gradient(180deg, rgba(87,203,255,0.40), rgba(255,255,255,0.08));
  border:1px solid rgba(255,255,255,0.12);
  box-shadow:0 0 12px rgba(87,203,255,0.22);
}
.builder-box{
  left:66%;
  transform:translateX(-50%) translateZ(42px);
  border-radius:8px;
  background:linear-gradient(180deg, #aeb8c1, #283039);
  border:1px solid rgba(255,255,255,0.12);
  box-shadow:0 6px 14px rgba(0,0,0,0.28);
}
.builder-box.small{
  left:32%;
  transform:translateX(-50%) translateZ(40px);
}
.builder-fin{
  left:50%;
  width:8px;
  border-radius:4px;
  background:linear-gradient(180deg, #aeb8c1, #222a31);
  border:1px solid rgba(255,255,255,0.10);
}
.builder-group-blade{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,0.08);
}

@media (max-width: 1200px){
  .builder-layout-wide{
    grid-template-columns:1fr;
  }
}
@media (max-width: 760px){
  .builder-preview-prism{
    transform:scale(0.72) !important;
    transform-origin:center center;
  }
  .builder-option-card{
    min-width:116px;
  }
}

/* Premium homepage background */
.hero-obsidian-lux-bg{
  background:
    radial-gradient(circle at 18% 18%, rgba(42,116,255,0.08), transparent 24%),
    radial-gradient(circle at 82% 12%, rgba(0,180,255,0.06), transparent 20%),
    linear-gradient(180deg, #020306 0%, #000000 48%, #05070c 100%);
}
.hero-lux-grid{
  opacity:0.10;
  background:
    linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px);
  background-size:82px 82px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,0.90), transparent 88%);
  transform:perspective(1100px) rotateX(78deg) scale(1.8) translateY(24%);
}
.hero-lux-sheen{
  opacity:0.22;
  filter:blur(18px);
}
.hero-lux-sheen.sheen-1{ background:linear-gradient(114deg, transparent 36%, rgba(54,132,255,0.18) 50%, transparent 64%); }
.hero-lux-sheen.sheen-2{ background:linear-gradient(100deg, transparent 42%, rgba(0,192,255,0.12) 52%, transparent 64%); }
.hero-lux-sheen.sheen-3{ background:linear-gradient(96deg, transparent 46%, rgba(255,255,255,0.05) 52%, transparent 58%); }
.hero-lux-orb{
  border-radius:50%;
  filter:blur(62px);
  opacity:0.24;
}
.hero-lux-orb.orb-1{
  width:340px;height:340px;left:-40px;top:30px;
  background:radial-gradient(circle, rgba(54,132,255,0.26) 0%, rgba(54,132,255,0.04) 60%, transparent 80%);
  animation:obsidianFloat 14s ease-in-out infinite;
}
.hero-lux-orb.orb-2{
  width:240px;height:240px;right:24px;top:24px;
  background:radial-gradient(circle, rgba(0,192,255,0.18) 0%, rgba(0,192,255,0.03) 60%, transparent 80%);
  animation:obsidianFloat 16s ease-in-out infinite reverse;
}
.hero-lux-fog{
  border-radius:50%;
  filter:blur(76px);
  opacity:0.16;
}
.hero-lux-fog.fog-1{
  width:420px;height:220px;left:12%;bottom:30px;
  background:radial-gradient(circle, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0.02) 56%, transparent 80%);
}
.hero-lux-fog.fog-2{
  width:320px;height:180px;right:10%;bottom:40px;
  background:radial-gradient(circle, rgba(73,139,255,0.12) 0%, rgba(73,139,255,0.02) 58%, transparent 80%);
}
.hero-obsidian-lux-bg .hero-mouse-glow{
  background:radial-gradient(circle, rgba(76,145,255,0.13) 0%, rgba(76,145,255,0.03) 35%, transparent 68%);
}
.hero-card-lux{
  backdrop-filter:blur(12px);
  background:linear-gradient(180deg, rgba(32,36,44,0.70), rgba(8,10,14,0.90));
}
@keyframes obsidianFloat{
  0%,100%{ transform:translateY(0px) scale(1); }
  50%{ transform:translateY(14px) scale(1.04); }
}

/* Scalable builder UI */
.builder-layout-scale{
  grid-template-columns:1.02fr 0.98fr;
}
.builder-view-premium{
  background:linear-gradient(180deg, rgba(28,31,38,0.72), rgba(7,8,11,0.94));
}
.builder-controls-scale{
  background:linear-gradient(180deg, rgba(27,31,38,0.76), rgba(8,10,13,0.96));
}
.builder-canvas-premium{
  min-height:820px;
  background:
    radial-gradient(circle at center, rgba(70,130,255,0.08), transparent 36%),
    linear-gradient(180deg, #090b10 0%, #040506 60%, #0a0d11 100%);
  overflow:hidden;
}
.builder-selection-bar{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:10px;
  margin:14px 0 18px;
}
.builder-pill{
  display:grid;
  gap:4px;
  align-items:start;
  text-align:left;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg, rgba(31,41,51,0.62), rgba(11,16,22,0.84));
  color:#fff;
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.builder-pill.is-active,
.builder-pill:hover{
  transform:translateY(-1px);
  border-color:rgba(25,167,255,0.40);
  box-shadow:0 0 0 1px rgba(25,167,255,0.22), 0 0 18px rgba(25,167,255,0.12);
}
.builder-pill-title{ font-size:0.78rem; color:#8fd4ff; }
.builder-pill-value{ font-weight:700; color:#fff; }

.builder-library-shell{
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.02);
  border-radius:22px;
  padding:16px;
}
.builder-section-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:14px;
}
.builder-section-tab{
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg, rgba(31,41,51,0.62), rgba(11,16,22,0.84));
  color:#e8f5ff;
  cursor:pointer;
  transition:all .2s ease;
}
.builder-section-tab.is-active{
  border-color:rgba(25,167,255,0.40);
  box-shadow:0 0 0 1px rgba(25,167,255,0.22), 0 0 18px rgba(25,167,255,0.12);
  background:rgba(25,167,255,0.10);
}
.builder-library-topbar{
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:center;
  margin-bottom:14px;
}
.builder-search-input{ min-height:42px; }
.builder-library-meta{ color:#94a6b9; font-size:0.92rem; }
.builder-library-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:12px;
  max-height:420px;
  overflow:auto;
  padding-right:4px;
}
.builder-library-card{
  display:grid;
  gap:10px;
  padding:14px;
  text-align:left;
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg, rgba(31,41,51,0.64), rgba(10,14,20,0.90));
  color:#fff;
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.builder-library-card:hover,
.builder-library-card.is-active{
  transform:translateY(-1px);
  border-color:rgba(25,167,255,0.40);
  box-shadow:0 0 0 1px rgba(25,167,255,0.22), 0 0 18px rgba(25,167,255,0.12);
}
.builder-library-preview{
  position:relative;
  display:block;
  height:56px;
  border-radius:14px;
  overflow:hidden;
  background:
    linear-gradient(90deg, #11161b 0%, #4d5864 10%, #c7d0d8 25%, #77818c 40%, #262c33 55%, #b7c0c8 70%, #46505a 84%, #0f1418 100%);
}
.builder-library-preview.finish-dark{
  background:
    linear-gradient(90deg, #080b0e 0%, #1d242b 10%, #6d7884 24%, #2e3640 40%, #14191f 56%, #68727d 70%, #222931 86%, #090c10 100%);
}
.builder-library-preview-inner{
  position:absolute;
  inset:18px 10px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,0.20), rgba(0,0,0,0.34));
}

/* Builder stage */
.builder-preview-premium{
  width:500px;
  height:960px;
  transform-style:preserve-3d;
  transition:transform .12s linear;
}
.builder-preview-premium .builder-blade{
  position:absolute;
  width:34px;
  height:336px;
  left:50%;
  top:0;
  transform-style:preserve-3d;
  transform:translateX(-50%) translateZ(28px);
  border-radius:999px;
}
.builder-preview-premium .builder-blade::before,
.builder-preview-premium .builder-blade::after,
.builder-blade-reflection::before,
.builder-blade-reflection::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:999px;
}
.builder-preview-premium .builder-blade::before,
.builder-blade-reflection::before{
  background:inherit;
  transform:rotateY(90deg);
}
.builder-preview-premium .builder-blade::after,
.builder-blade-reflection::after{
  inset:2px 7px;
  background:linear-gradient(180deg, rgba(255,255,255,0.90), rgba(255,255,255,0.0) 56%);
  opacity:0.74;
  filter:blur(2px);
}
.builder-model{
  position:absolute;
  left:50%;
  top:324px;
  width:1px;
  height:548px;
  transform:translateX(-50%);
  transform-style:preserve-3d;
}
.builder-reflection-wrap{
  position:absolute;
  inset:0;
  transform:translateY(642px);
  pointer-events:none;
}
.builder-blade-reflection{
  position:absolute;
  left:50%;
  top:0;
  width:34px;
  height:250px;
  transform:translateX(-50%) scaleY(-1) translateZ(12px);
  transform-style:preserve-3d;
  opacity:0.14;
  filter:blur(2px);
  border-radius:999px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,0.56), transparent 76%);
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,0.56), transparent 76%);
}
.builder-model-reflection{
  position:absolute;
  left:50%;
  top:324px;
  width:1px;
  height:548px;
  transform:translateX(-50%) scaleY(-1);
  transform-style:preserve-3d;
  opacity:0.18;
  filter:blur(2px);
  mask-image:linear-gradient(180deg, rgba(0,0,0,0.55), transparent 76%);
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,0.55), transparent 76%);
}
.builder-floor-panel{
  position:absolute;
  left:50%;
  bottom:18px;
  width:360px;
  height:150px;
  transform:translateX(-50%) rotateX(78deg) translateZ(-12px);
  border-radius:24px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.01)),
    linear-gradient(180deg, #0f1216, #050607);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 18px 36px rgba(0,0,0,0.36);
}
.builder-floor-glow{
  position:absolute;
  left:50%;
  bottom:64px;
  width:320px;
  height:66px;
  border-radius:50%;
  transform:translateX(-50%) translateZ(-20px);
  background:radial-gradient(circle, rgba(25,167,255,0.20), rgba(25,167,255,0.04) 52%, transparent 76%);
  filter:blur(10px);
}

/* Geometry detail */
.prism-face,
.prism-cap,
.builder-ring,
.builder-groove,
.builder-window,
.builder-box,
.builder-fin,
.builder-shroud,
.builder-claw,
.builder-vent,
.builder-neckcut{
  position:absolute;
  left:50%;
  display:block;
  transform-style:preserve-3d;
}
.prism-face{
  border-radius:999px;
  box-shadow:
    inset 0 0 8px rgba(255,255,255,0.05),
    inset 0 -8px 16px rgba(0,0,0,0.24);
}
.finish-steel{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.24), rgba(255,255,255,0.06) 18%, rgba(0,0,0,0.26) 82%, rgba(255,255,255,0.05)),
    linear-gradient(90deg, #11161b 0%, #4d5864 10%, #c7d0d8 25%, #77818c 40%, #262c33 55%, #b7c0c8 70%, #46505a 84%, #0f1418 100%);
}
.finish-dark{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.14), rgba(255,255,255,0.04) 18%, rgba(0,0,0,0.34) 82%, rgba(255,255,255,0.03)),
    linear-gradient(90deg, #080b0e 0%, #1d242b 10%, #6d7884 24%, #2e3640 40%, #14191f 56%, #68727d 70%, #222931 86%, #090c10 100%);
}
.prism-cap{
  top:0;
  border-radius:50%;
  background:
    radial-gradient(circle at 36% 32%, rgba(255,255,255,0.24), rgba(255,255,255,0.04) 34%, rgba(0,0,0,0.34) 72%),
    linear-gradient(180deg, #aeb8c0, #2a3138);
  transform:translateX(-50%) rotateX(90deg);
}
.builder-segment{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  perspective:1000px;
}
.builder-ring{
  transform:translateX(-50%) translateZ(38px);
  border-radius:999px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.28), rgba(0,0,0,0.28)),
    linear-gradient(90deg, #d5dde4, #3a434c);
  box-shadow:0 0 0 1px rgba(255,255,255,0.12);
}
.builder-groove{
  transform:translateX(-50%) translateZ(35px);
  border-radius:999px;
  background:rgba(0,0,0,0.45);
  box-shadow:inset 0 0 8px rgba(0,0,0,0.4);
}
.builder-window{
  transform:translateX(-50%) translateZ(37px);
  border-radius:8px;
  background:linear-gradient(180deg, rgba(87,203,255,0.40), rgba(255,255,255,0.08));
  border:1px solid rgba(255,255,255,0.12);
  box-shadow:0 0 14px rgba(87,203,255,0.28), inset 0 0 8px rgba(255,255,255,0.10);
}
.builder-box{
  transform:translateX(-50%) translateZ(42px);
  border-radius:8px;
  background:linear-gradient(180deg, #aeb8c1, #283039);
  border:1px solid rgba(255,255,255,0.12);
  box-shadow:0 10px 18px rgba(0,0,0,0.30);
}
.builder-box.small{ left:32%; }
.builder-box:not(.small){ left:66%; }
.builder-fin{
  width:10px;
  border-radius:6px;
  background:linear-gradient(180deg, #aeb8c1, #222a31);
  border:1px solid rgba(255,255,255,0.10);
}
.builder-shroud{
  border-radius:14px 14px 24px 24px;
  background:linear-gradient(180deg, rgba(255,255,255,0.20), rgba(0,0,0,0.26)), linear-gradient(90deg, #0c1014, #8a949f 34%, #262d34 100%);
  border:1px solid rgba(255,255,255,0.10);
  box-shadow:0 8px 16px rgba(0,0,0,0.25);
}
.builder-claw{
  width:10px;
  border-radius:8px 8px 20px 20px;
  background:linear-gradient(180deg, #c9d1d8, #232a31);
  border:1px solid rgba(255,255,255,0.12);
  box-shadow:0 8px 14px rgba(0,0,0,0.28);
}
.builder-vent{
  border-radius:6px;
  background:rgba(0,0,0,0.46);
  box-shadow:inset 0 0 10px rgba(0,0,0,0.45);
}
.builder-neckcut{
  transform:translateX(-50%) translateZ(34px);
  border-radius:999px;
  background:rgba(0,0,0,0.55);
  box-shadow:inset 0 0 8px rgba(0,0,0,0.5);
}

@media (max-width: 1200px){
  .builder-layout-scale{
    grid-template-columns:1fr;
  }
}
@media (max-width: 900px){
  .builder-library-grid{
    grid-template-columns:repeat(2, 1fr);
  }
  .builder-selection-bar{
    grid-template-columns:repeat(2, 1fr);
  }
}
@media (max-width: 760px){
  .builder-preview-premium{
    transform:scale(0.70) !important;
    transform-origin:center center;
  }
  .builder-library-grid{
    grid-template-columns:1fr;
  }
  .builder-library-topbar{
    grid-template-columns:1fr;
  }
}

.builder-library-card-title{ font-weight:700; color:#fff; }
.builder-library-card-meta{ color:#94a6b9; font-size:0.84rem; }

.builder-finish-row{
  margin:0 0 14px;
}
.builder-finish-options{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:10px;
}
.builder-finish{
  min-height:40px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg, rgba(31,41,51,0.62), rgba(11,16,22,0.84));
  color:#e8f5ff;
  cursor:pointer;
  transition:all .2s ease;
}
.builder-finish.is-active,
.builder-finish:hover{
  border-color:rgba(25,167,255,0.40);
  box-shadow:0 0 0 1px rgba(25,167,255,0.22), 0 0 18px rgba(25,167,255,0.12);
  background:rgba(25,167,255,0.10);
}

/* builder backdrop */
.builder-toolbar-premium{
  position:relative;
  z-index:3;
}
.builder-backdrop-layers{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.builder-backdrop-ring{
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(255,255,255,0.06);
  box-shadow:0 0 28px rgba(25,167,255,0.05), inset 0 0 28px rgba(25,167,255,0.03);
}
.builder-backdrop-ring.ring-a{
  width:420px;height:420px; left:50%; top:42px; transform:translateX(-50%);
}
.builder-backdrop-ring.ring-b{
  width:280px;height:280px; left:50%; top:112px; transform:translateX(-50%);
}
.builder-backdrop-beam{
  position:absolute;
  inset:0;
  opacity:0.20;
  filter:blur(22px);
}
.builder-backdrop-beam.beam-a{ background:linear-gradient(112deg, transparent 38%, rgba(61,136,255,0.16) 50%, transparent 62%); }
.builder-backdrop-beam.beam-b{ background:linear-gradient(98deg, transparent 44%, rgba(0,198,255,0.12) 52%, transparent 60%); }
.builder-backdrop-particles{
  position:absolute;
  inset:0;
  opacity:0.16;
  background-image:
    radial-gradient(circle at 24% 28%, rgba(255,255,255,0.65) 0 1px, transparent 1.2px),
    radial-gradient(circle at 68% 22%, rgba(255,255,255,0.55) 0 1px, transparent 1.2px),
    radial-gradient(circle at 40% 62%, rgba(25,167,255,0.55) 0 1px, transparent 1.2px),
    radial-gradient(circle at 78% 54%, rgba(255,255,255,0.48) 0 1px, transparent 1.2px);
}

/* reflective stage */
.builder-floor-panel{
  position:absolute;
  left:50%;
  bottom:18px;
  width:360px;
  height:150px;
  transform:translateX(-50%) rotateX(78deg) translateZ(-12px);
  border-radius:24px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.01)),
    linear-gradient(180deg, #0f1216, #050607);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 18px 36px rgba(0,0,0,0.36);
}
.builder-floor-glow{
  position:absolute;
  left:50%;
  bottom:64px;
  width:320px;
  height:66px;
  border-radius:50%;
  transform:translateX(-50%) translateZ(-20px);
  background:radial-gradient(circle, rgba(25,167,255,0.20), rgba(25,167,255,0.04) 52%, transparent 76%);
  filter:blur(10px);
}
.builder-reflection-wrap{
  position:absolute;
  inset:0;
  transform:translateY(642px);
  pointer-events:none;
}
.builder-blade-reflection{
  position:absolute;
  left:50%;
  top:0;
  width:34px;
  height:250px;
  transform:translateX(-50%) scaleY(-1) translateZ(12px);
  transform-style:preserve-3d;
  opacity:0.14;
  filter:blur(2px);
  border-radius:999px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,0.56), transparent 76%);
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,0.56), transparent 76%);
}
.builder-model-reflection{
  position:absolute;
  left:50%;
  top:324px;
  width:1px;
  height:548px;
  transform:translateX(-50%) scaleY(-1);
  transform-style:preserve-3d;
  opacity:0.18;
  filter:blur(2px);
  mask-image:linear-gradient(180deg, rgba(0,0,0,0.55), transparent 76%);
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,0.55), transparent 76%);
}

/* finish variants */
.finish-steel{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.24), rgba(255,255,255,0.06) 18%, rgba(0,0,0,0.26) 82%, rgba(255,255,255,0.05)),
    linear-gradient(90deg, #11161b 0%, #4d5864 10%, #c7d0d8 25%, #77818c 40%, #262c33 55%, #b7c0c8 70%, #46505a 84%, #0f1418 100%);
}
.finish-black{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.10), rgba(255,255,255,0.02) 18%, rgba(0,0,0,0.40) 82%, rgba(255,255,255,0.02)),
    linear-gradient(90deg, #040506 0%, #11161b 12%, #2b3137 28%, #0a0d11 44%, #1a2026 60%, #2a3138 76%, #06080a 100%);
}
.finish-gunmetal{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.16), rgba(255,255,255,0.03) 18%, rgba(0,0,0,0.32) 82%, rgba(255,255,255,0.03)),
    linear-gradient(90deg, #0a0d10 0%, #273039 12%, #7b8794 28%, #373f49 44%, #161b21 60%, #5d6873 76%, #0b0d10 100%);
}
.finish-silverblue{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.24), rgba(255,255,255,0.06) 18%, rgba(0,0,0,0.24) 82%, rgba(255,255,255,0.05)),
    linear-gradient(90deg, #0f1418 0%, #4a5d73 10%, #d4dde8 25%, #8ea7c4 40%, #283241 55%, #c2d5eb 70%, #4d637b 84%, #0e1419 100%);
}
.finish-blackgold{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.14), rgba(255,255,255,0.03) 18%, rgba(0,0,0,0.36) 82%, rgba(255,255,255,0.03)),
    linear-gradient(90deg, #050607 0%, #1b1711 12%, #8e7445 28%, #2c2418 44%, #0f1012 60%, #b6985e 76%, #090909 100%);
}
.builder-library-preview.finish-steel,
.builder-library-preview.finish-black,
.builder-library-preview.finish-gunmetal,
.builder-library-preview.finish-silverblue,
.builder-library-preview.finish-blackgold{
  background-size:cover;
}
.builder-shroud.finish-steel,
.builder-claw.finish-steel{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.20), rgba(0,0,0,0.26)),
    linear-gradient(90deg, #0c1014, #8a949f 34%, #262d34 100%);
}
.builder-shroud.finish-black,
.builder-claw.finish-black{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.08), rgba(0,0,0,0.34)),
    linear-gradient(90deg, #040506, #2a3138 34%, #0a0d11 100%);
}
.builder-shroud.finish-gunmetal,
.builder-claw.finish-gunmetal{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.10), rgba(0,0,0,0.32)),
    linear-gradient(90deg, #0a0d10, #7b8794 34%, #161b21 100%);
}
.builder-shroud.finish-silverblue,
.builder-claw.finish-silverblue{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.14), rgba(0,0,0,0.28)),
    linear-gradient(90deg, #0f1418, #9db4ce 34%, #263241 100%);
}
.builder-shroud.finish-blackgold,
.builder-claw.finish-blackgold{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.10), rgba(0,0,0,0.32)),
    linear-gradient(90deg, #060607, #a5874e 34%, #1b160e 100%);
}

/* New dynamic premium homepage background */
.hero-quantum-veil-bg{
  background:
    radial-gradient(circle at 18% 18%, rgba(46,118,255,0.08), transparent 24%),
    radial-gradient(circle at 82% 20%, rgba(0,188,255,0.06), transparent 22%),
    linear-gradient(180deg, #020306 0%, #000000 50%, #05070c 100%);
}
.hero-qv-grid{
  opacity:0.10;
  background:
    linear-gradient(rgba(255,255,255,0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px);
  background-size:84px 84px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,0.92), transparent 88%);
  transform:perspective(1100px) rotateX(78deg) scale(1.8) translateY(24%);
}
.hero-qv-wave{
  opacity:0.20;
  filter:blur(20px);
}
.hero-qv-wave.wave-1{ background:linear-gradient(112deg, transparent 36%, rgba(54,132,255,0.16) 50%, transparent 64%); }
.hero-qv-wave.wave-2{ background:linear-gradient(98deg, transparent 42%, rgba(0,192,255,0.12) 52%, transparent 62%); }
.hero-qv-wave.wave-3{ background:linear-gradient(96deg, transparent 46%, rgba(255,255,255,0.05) 52%, transparent 58%); }
.hero-qv-orb{
  border-radius:50%;
  filter:blur(68px);
  opacity:0.22;
}
.hero-qv-orb.orb-1{
  width:360px;height:360px;left:-40px;top:34px;
  background:radial-gradient(circle, rgba(54,132,255,0.24) 0%, rgba(54,132,255,0.04) 60%, transparent 80%);
  animation:qvFloat 14s ease-in-out infinite;
}
.hero-qv-orb.orb-2{
  width:240px;height:240px;right:30px;top:18px;
  background:radial-gradient(circle, rgba(0,192,255,0.18) 0%, rgba(0,192,255,0.03) 60%, transparent 80%);
  animation:qvFloat 17s ease-in-out infinite reverse;
}
.hero-qv-orb.orb-3{
  width:220px;height:220px;left:46%;bottom:20px;
  background:radial-gradient(circle, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.02) 56%, transparent 80%);
  animation:qvFloatSmall 11s ease-in-out infinite;
}
.hero-qv-stars{
  opacity:0.18;
  background-image:
    radial-gradient(circle at 16% 24%, rgba(255,255,255,0.88) 0 1px, transparent 1.2px),
    radial-gradient(circle at 34% 74%, rgba(255,255,255,0.50) 0 1px, transparent 1.2px),
    radial-gradient(circle at 62% 16%, rgba(25,167,255,0.56) 0 1px, transparent 1.2px),
    radial-gradient(circle at 82% 64%, rgba(255,255,255,0.56) 0 1px, transparent 1.2px);
}
.hero-quantum-veil-bg .hero-mouse-glow{
  background:radial-gradient(circle, rgba(76,145,255,0.12) 0%, rgba(76,145,255,0.03) 35%, transparent 68%);
}
@keyframes qvFloat{
  0%,100%{ transform:translateY(0px) scale(1); }
  50%{ transform:translateY(14px) scale(1.04); }
}
@keyframes qvFloatSmall{
  0%,100%{ transform:translateY(0px) scale(1); }
  50%{ transform:translateY(-10px) scale(1.05); }
}

/* Cleaner premium builder environment */
.builder-canvas-premium{
  min-height:840px;
  background:
    radial-gradient(circle at center, rgba(70,130,255,0.07), transparent 34%),
    linear-gradient(180deg, #07090d 0%, #040506 64%, #090c10 100%);
  overflow:hidden;
  position:relative;
}
.builder-room{
  position:absolute;
  inset:0;
  perspective:1600px;
  pointer-events:none;
}
.builder-wall{
  position:absolute;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01)),
    linear-gradient(180deg, #11151b, #07090c);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.05);
}
.builder-wall-back{
  left:8%;
  right:8%;
  top:5%;
  bottom:16%;
  border-radius:28px 28px 14px 14px;
}
.builder-wall-left{
  width:28%;
  left:-4%;
  top:9%;
  bottom:14%;
  transform:perspective(1200px) rotateY(44deg);
  transform-origin:left center;
  border-radius:26px 0 0 26px;
  opacity:0.84;
}
.builder-wall-right{
  width:28%;
  right:-4%;
  top:9%;
  bottom:14%;
  transform:perspective(1200px) rotateY(-44deg);
  transform-origin:right center;
  border-radius:0 26px 26px 0;
  opacity:0.84;
}
.builder-room-glow{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at center 32%, rgba(25,167,255,0.10), transparent 26%),
    radial-gradient(circle at center 72%, rgba(255,255,255,0.04), transparent 18%);
  filter:blur(16px);
}
.builder-room-particles{
  position:absolute;
  inset:0;
  opacity:0.14;
  background-image:
    radial-gradient(circle at 22% 24%, rgba(255,255,255,0.66) 0 1px, transparent 1.2px),
    radial-gradient(circle at 64% 18%, rgba(255,255,255,0.46) 0 1px, transparent 1.2px),
    radial-gradient(circle at 42% 58%, rgba(25,167,255,0.52) 0 1px, transparent 1.2px),
    radial-gradient(circle at 78% 48%, rgba(255,255,255,0.42) 0 1px, transparent 1.2px);
}
.builder-preview-premium{
  width:500px;
  height:960px;
  transform-style:preserve-3d;
  transition:transform .12s linear;
}
.builder-preview-premium .builder-blade{
  position:absolute;
  width:34px;
  height:336px;
  left:50%;
  top:0;
  transform-style:preserve-3d;
  transform:translateX(-50%) translateZ(28px);
  border-radius:999px;
}
.builder-preview-premium .builder-blade::before,
.builder-preview-premium .builder-blade::after,
.builder-blade-reflection::before,
.builder-blade-reflection::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:999px;
}
.builder-preview-premium .builder-blade::before,
.builder-blade-reflection::before{
  background:inherit;
  transform:rotateY(90deg);
}
.builder-preview-premium .builder-blade::after,
.builder-blade-reflection::after{
  inset:2px 7px;
  background:linear-gradient(180deg, rgba(255,255,255,0.90), rgba(255,255,255,0.0) 56%);
  opacity:0.74;
  filter:blur(2px);
}
.builder-model{
  position:absolute;
  left:50%;
  top:322px;
  width:1px;
  height:560px;
  transform:translateX(-50%);
  transform-style:preserve-3d;
}
.builder-reflection-wrap{
  position:absolute;
  inset:0;
  transform:translateY(646px);
  pointer-events:none;
}
.builder-blade-reflection{
  position:absolute;
  left:50%;
  top:0;
  width:34px;
  height:250px;
  transform:translateX(-50%) scaleY(-1) translateZ(12px);
  transform-style:preserve-3d;
  opacity:0.14;
  filter:blur(2px);
  border-radius:999px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,0.56), transparent 76%);
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,0.56), transparent 76%);
}
.builder-model-reflection{
  position:absolute;
  left:50%;
  top:322px;
  width:1px;
  height:560px;
  transform:translateX(-50%) scaleY(-1);
  transform-style:preserve-3d;
  opacity:0.17;
  filter:blur(2px);
  mask-image:linear-gradient(180deg, rgba(0,0,0,0.55), transparent 76%);
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,0.55), transparent 76%);
}
.builder-floor-panel{
  position:absolute;
  left:50%;
  bottom:22px;
  width:390px;
  height:168px;
  transform:translateX(-50%) rotateX(78deg) translateZ(-14px);
  border-radius:30px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.07), rgba(255,255,255,0.01)),
    linear-gradient(180deg, #11151a, #050607);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.07),
    0 18px 36px rgba(0,0,0,0.42);
}
.builder-floor-glow{
  position:absolute;
  left:50%;
  bottom:70px;
  width:340px;
  height:74px;
  border-radius:50%;
  transform:translateX(-50%) translateZ(-20px);
  background:radial-gradient(circle, rgba(25,167,255,0.18), rgba(25,167,255,0.04) 52%, transparent 76%);
  filter:blur(10px);
}

/* Cleaner lightsaber-esque part styling */
.prism-face,
.prism-cap,
.builder-ring,
.builder-groove,
.builder-window,
.builder-box,
.builder-slot,
.builder-vent,
.builder-emitter-cut{
  position:absolute;
  left:50%;
  display:block;
  transform-style:preserve-3d;
}
.prism-face{
  border-radius:999px;
  box-shadow:
    inset 0 0 8px rgba(255,255,255,0.05),
    inset 0 -8px 16px rgba(0,0,0,0.22);
}
.prism-cap{
  top:0;
  border-radius:50%;
  transform:translateX(-50%) rotateX(90deg);
}
.builder-segment{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  perspective:1000px;
}
.builder-ring{
  transform:translateX(-50%) translateZ(37px);
  border-radius:999px;
  box-shadow:0 0 0 1px rgba(255,255,255,0.10);
}
.builder-groove{
  transform:translateX(-50%) translateZ(35px);
  border-radius:999px;
  background:rgba(0,0,0,0.48);
  box-shadow:inset 0 0 8px rgba(0,0,0,0.44);
}
.builder-window{
  transform:translateX(-50%) translateZ(37px);
  border-radius:8px;
  background:linear-gradient(180deg, rgba(87,203,255,0.36), rgba(255,255,255,0.07));
  border:1px solid rgba(255,255,255,0.10);
  box-shadow:0 0 12px rgba(87,203,255,0.24), inset 0 0 6px rgba(255,255,255,0.08);
}
.builder-box{
  transform:translateX(-50%) translateZ(42px);
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.10);
  box-shadow:0 10px 16px rgba(0,0,0,0.28);
}
.builder-slot{
  transform:translateX(-50%);
  border-radius:8px;
  background:rgba(0,0,0,0.48);
  box-shadow:inset 0 0 8px rgba(0,0,0,0.44);
}
.builder-vent{
  border-radius:6px;
  background:rgba(0,0,0,0.46);
  box-shadow:inset 0 0 10px rgba(0,0,0,0.45);
}
.builder-emitter-cut{
  border-radius:999px;
  background:rgba(0,0,0,0.55);
  box-shadow:inset 0 0 8px rgba(0,0,0,0.5);
}

/* Material finishes */
.finish-steel{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.22), rgba(255,255,255,0.05) 18%, rgba(0,0,0,0.24) 82%, rgba(255,255,255,0.04)),
    linear-gradient(90deg, #11161b 0%, #4d5864 10%, #c7d0d8 25%, #77818c 40%, #262c33 55%, #b7c0c8 70%, #46505a 84%, #0f1418 100%);
}
.finish-black{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.02) 18%, rgba(0,0,0,0.38) 82%, rgba(255,255,255,0.02)),
    linear-gradient(90deg, #040506 0%, #11161b 12%, #2b3137 28%, #0a0d11 44%, #1a2026 60%, #2a3138 76%, #06080a 100%);
}
.finish-gunmetal{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.14), rgba(255,255,255,0.03) 18%, rgba(0,0,0,0.30) 82%, rgba(255,255,255,0.03)),
    linear-gradient(90deg, #0a0d10 0%, #273039 12%, #7b8794 28%, #373f49 44%, #161b21 60%, #5d6873 76%, #0b0d10 100%);
}
.finish-silverblue{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.22), rgba(255,255,255,0.05) 18%, rgba(0,0,0,0.22) 82%, rgba(255,255,255,0.04)),
    linear-gradient(90deg, #0f1418 0%, #4a5d73 10%, #d4dde8 25%, #8ea7c4 40%, #283241 55%, #c2d5eb 70%, #4d637b 84%, #0e1419 100%);
}
.finish-blackgold{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.12), rgba(255,255,255,0.03) 18%, rgba(0,0,0,0.34) 82%, rgba(255,255,255,0.03)),
    linear-gradient(90deg, #050607 0%, #1b1711 12%, #8e7445 28%, #2c2418 44%, #0f1012 60%, #b6985e 76%, #090909 100%);
}

@media (max-width: 1200px){
  .builder-layout-scale{ grid-template-columns:1fr; }
}
@media (max-width: 900px){
  .builder-library-grid{ grid-template-columns:repeat(2, 1fr); }
  .builder-selection-bar{ grid-template-columns:repeat(2, 1fr); }
}
@media (max-width: 760px){
  .builder-preview-premium{
    transform:scale(0.68) !important;
    transform-origin:center center;
  }
  .builder-library-grid{ grid-template-columns:1fr; }
  .builder-library-topbar{ grid-template-columns:1fr; }
}

/* Neon blue header search text */
.header-search .theme-input,
.header-search .theme-input::placeholder{
  color:#4fc3ff;
}
.header-search .theme-input{
  border-color:rgba(25,167,255,0.28);
  box-shadow:0 0 0 1px rgba(25,167,255,0.08), inset 0 0 12px rgba(25,167,255,0.04);
}
.header-search .theme-input:focus{
  box-shadow:0 0 0 1px rgba(25,167,255,0.22), 0 0 18px rgba(25,167,255,0.12), inset 0 0 12px rgba(25,167,255,0.06);
}

/* Homepage background refresh */
.hero-aurora-forge-bg{
  background:
    radial-gradient(circle at 16% 20%, rgba(40,118,255,0.08), transparent 22%),
    radial-gradient(circle at 82% 18%, rgba(0,210,255,0.06), transparent 20%),
    linear-gradient(180deg, #020306 0%, #000000 52%, #05070c 100%);
}
.hero-af-grid{
  opacity:0.09;
  background:
    linear-gradient(rgba(255,255,255,0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px);
  background-size:92px 92px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,0.90), transparent 88%);
  transform:perspective(1100px) rotateX(78deg) scale(1.85) translateY(24%);
}
.hero-af-band{
  opacity:0.20;
  filter:blur(22px);
}
.hero-af-band.band-1{ background:linear-gradient(112deg, transparent 34%, rgba(56,130,255,0.16) 50%, transparent 66%); }
.hero-af-band.band-2{ background:linear-gradient(98deg, transparent 40%, rgba(0,196,255,0.12) 52%, transparent 62%); }
.hero-af-band.band-3{ background:linear-gradient(96deg, transparent 46%, rgba(255,255,255,0.05) 52%, transparent 58%); }
.hero-af-orb{
  border-radius:50%;
  filter:blur(70px);
  opacity:0.22;
}
.hero-af-orb.orb-1{
  width:360px;height:360px;left:-50px;top:32px;
  background:radial-gradient(circle, rgba(56,130,255,0.24) 0%, rgba(56,130,255,0.04) 60%, transparent 80%);
  animation:afFloat 14s ease-in-out infinite;
}
.hero-af-orb.orb-2{
  width:250px;height:250px;right:28px;top:26px;
  background:radial-gradient(circle, rgba(0,196,255,0.18) 0%, rgba(0,196,255,0.03) 60%, transparent 80%);
  animation:afFloat 18s ease-in-out infinite reverse;
}
.hero-af-orb.orb-3{
  width:220px;height:220px;left:48%;bottom:20px;
  background:radial-gradient(circle, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.02) 58%, transparent 80%);
  animation:afFloatSmall 12s ease-in-out infinite;
}
.hero-af-stars{
  opacity:0.18;
  background-image:
    radial-gradient(circle at 14% 24%, rgba(255,255,255,0.82) 0 1px, transparent 1.2px),
    radial-gradient(circle at 34% 72%, rgba(255,255,255,0.48) 0 1px, transparent 1.2px),
    radial-gradient(circle at 62% 16%, rgba(25,167,255,0.56) 0 1px, transparent 1.2px),
    radial-gradient(circle at 82% 60%, rgba(255,255,255,0.50) 0 1px, transparent 1.2px);
}
.hero-aurora-forge-bg .hero-mouse-glow{
  background:radial-gradient(circle, rgba(76,145,255,0.12) 0%, rgba(76,145,255,0.03) 35%, transparent 68%);
}
@keyframes afFloat{
  0%,100%{ transform:translateY(0px) scale(1); }
  50%{ transform:translateY(14px) scale(1.04); }
}
@keyframes afFloatSmall{
  0%,100%{ transform:translateY(0px) scale(1); }
  50%{ transform:translateY(-10px) scale(1.05); }
}

/* Fixed premium builder backdrop */
.builder-canvas-premium{
  min-height:840px;
  background:
    radial-gradient(circle at center, rgba(70,130,255,0.07), transparent 34%),
    linear-gradient(180deg, #07090d 0%, #040506 64%, #090c10 100%);
  overflow:hidden;
  position:relative;
}
.builder-backdrop-fixed{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.builder-backdrop-panel{
  position:absolute;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01)),
    linear-gradient(180deg, #11151b, #07090c);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.05);
}
.builder-backdrop-panel.back{
  left:8%;
  right:8%;
  top:5%;
  bottom:16%;
  border-radius:28px 28px 14px 14px;
}
.builder-backdrop-panel.left{
  width:28%;
  left:-4%;
  top:9%;
  bottom:14%;
  transform:perspective(1200px) rotateY(44deg);
  transform-origin:left center;
  border-radius:26px 0 0 26px;
  opacity:0.84;
}
.builder-backdrop-panel.right{
  width:28%;
  right:-4%;
  top:9%;
  bottom:14%;
  transform:perspective(1200px) rotateY(-44deg);
  transform-origin:right center;
  border-radius:0 26px 26px 0;
  opacity:0.84;
}
.builder-backdrop-glow{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at center 32%, rgba(25,167,255,0.10), transparent 26%),
    radial-gradient(circle at center 72%, rgba(255,255,255,0.04), transparent 18%);
  filter:blur(16px);
}
.builder-backdrop-specks{
  position:absolute;
  inset:0;
  opacity:0.14;
  background-image:
    radial-gradient(circle at 22% 24%, rgba(255,255,255,0.66) 0 1px, transparent 1.2px),
    radial-gradient(circle at 64% 18%, rgba(255,255,255,0.46) 0 1px, transparent 1.2px),
    radial-gradient(circle at 42% 58%, rgba(25,167,255,0.52) 0 1px, transparent 1.2px),
    radial-gradient(circle at 78% 48%, rgba(255,255,255,0.42) 0 1px, transparent 1.2px);
}

/* Builder save/cart shells */
.builder-save-shell,
.builder-cart-shell{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,0.08);
}
.builder-save-form{
  display:grid;
  gap:12px;
  margin-top:10px;
}
.builder-save-btn,
.builder-cart-btn{
  width:100%;
}
.builder-save-note{
  margin-top:8px;
  color:#94a6b9;
  font-size:0.9rem;
}

/* Cleaner lightsaber parts */
.builder-model{
  top:322px;
  height:560px;
}
.builder-reflection-wrap{
  transform:translateY(646px);
}
.prism-face{
  box-shadow:
    inset 0 0 6px rgba(255,255,255,0.05),
    inset 0 -8px 14px rgba(0,0,0,0.20);
}
.builder-ring{
  transform:translateX(-50%) translateZ(37px);
  border-radius:999px;
  box-shadow:0 0 0 1px rgba(255,255,255,0.10);
}
.builder-slot{
  position:absolute;
  left:50%;
  display:block;
  transform-style:preserve-3d;
  border-radius:8px;
  background:rgba(0,0,0,0.48);
  box-shadow:inset 0 0 8px rgba(0,0,0,0.44);
}
.builder-emitter-cut{
  position:absolute;
  left:50%;
  display:block;
  transform-style:preserve-3d;
  border-radius:999px;
  background:rgba(0,0,0,0.55);
  box-shadow:inset 0 0 8px rgba(0,0,0,0.5);
}


/* Remove all saber builder backgrounds */
.builder-canvas-premium{
  background: transparent !important;
}
.builder-view-premium,
.builder-controls-scale,
.builder-library-shell{
  background: transparent !important;
}
.builder-backdrop-fixed,
.builder-backdrop-panel,
.builder-backdrop-glow,
.builder-backdrop-specks,
.builder-room,
.builder-wall,
.builder-room-glow,
.builder-room-particles{
  display:none !important;
}
.builder-floor-panel,
.builder-floor-glow,
.builder-reflection-wrap,
.builder-blade-reflection,
.builder-model-reflection{
  display:none !important;
}


/* Upgraded blade: round, centered, thicker (popsicle style) */
.builder-preview-premium .builder-blade{
  position:absolute;
  width:46px; /* thicker */
  height:360px;
  left:50%;
  top:0;
  transform:translateX(-50%) translateZ(28px);
  border-radius:999px; /* fully round */
  background:linear-gradient(
    180deg,
    rgba(255,255,255,0.95) 0%,
    rgba(255,255,255,0.85) 15%,
    rgba(0,162,255,0.9) 45%,
    rgba(0,110,255,0.8) 100%
  );
  box-shadow:
    0 0 25px rgba(0,162,255,0.6),
    0 0 50px rgba(0,162,255,0.4),
    0 0 80px rgba(0,162,255,0.25);
}

/* Rounded tip (popsicle top) */
.builder-preview-premium .builder-blade::after{
  content:"";
  position:absolute;
  top:-8px;
  left:0;
  right:0;
  height:20px;
  border-radius:50%;
  background:inherit;
  filter:blur(1px);
}

/* Inner core glow */
.builder-preview-premium .builder-blade::before{
  content:"";
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width:16px;
  height:100%;
  border-radius:999px;
  background:linear-gradient(
    180deg,
    rgba(255,255,255,1),
    rgba(255,255,255,0.9)
  );
  opacity:0.9;
  filter:blur(1px);
}

/* Ensure perfect centering with hilt */
.builder-model{
  left:50%;
  transform:translateX(-50%);
}

/* Slight overlap into emitter for realism */
.builder-blade{
  top:-6px;
}


/* 3D blade fully centered and covering emitter opening */
.builder-preview-premium .builder-blade{
  position:absolute;
  width:54px;
  height:372px;
  left:50%;
  top:-8px;
  transform-style:preserve-3d;
  transform:translateX(-50%) translateZ(30px);
  border-radius:999px;
  background:linear-gradient(
    180deg,
    rgba(255,255,255,0.98) 0%,
    rgba(255,255,255,0.92) 12%,
    rgba(0,168,255,0.92) 46%,
    rgba(0,110,255,0.82) 100%
  );
  box-shadow:
    0 0 28px rgba(0,162,255,0.62),
    0 0 56px rgba(0,162,255,0.42),
    0 0 90px rgba(0,162,255,0.24);
}
.builder-preview-premium .builder-blade::before,
.builder-preview-premium .builder-blade::after,
.builder-blade-reflection::before,
.builder-blade-reflection::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:999px;
}
.builder-preview-premium .builder-blade::before,
.builder-blade-reflection::before{
  background:inherit;
  transform:rotateY(90deg);
}
.builder-preview-premium .builder-blade::after,
.builder-blade-reflection::after{
  left:50%;
  transform:translateX(-50%);
  width:18px;
  height:100%;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,1), rgba(255,255,255,0.9));
  opacity:0.9;
  filter:blur(1px);
}
.builder-preview-premium .builder-blade .blade-cap{
  display:none;
}
.builder-blade-reflection{
  width:54px !important;
  height:268px !important;
}
.builder-model{
  left:50%;
  transform:translateX(-50%);
}

/* crystal chamber controls */
.builder-chamber{
  min-height:40px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg, rgba(31,41,51,0.62), rgba(11,16,22,0.84));
  color:#e8f5ff;
  cursor:pointer;
  transition:all .2s ease;
}
.builder-chamber.is-active,
.builder-chamber:hover{
  border-color:rgba(25,167,255,0.40);
  box-shadow:0 0 0 1px rgba(25,167,255,0.22), 0 0 18px rgba(25,167,255,0.12);
  background:rgba(25,167,255,0.10);
}

/* crystal chamber component */
.group-chamber{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  perspective:1000px;
}
.builder-chamber-core,
.builder-chamber-rail,
.builder-chamber-ring{
  position:absolute;
  left:50%;
  display:block;
  transform-style:preserve-3d;
}
.builder-chamber-core{
  width:18px;
  transform:translateX(-50%) translateZ(34px);
  border-radius:12px;
  background:linear-gradient(180deg, rgba(153,235,255,0.98), rgba(49,190,255,0.72));
  box-shadow:0 0 18px rgba(49,190,255,0.55), 0 0 32px rgba(49,190,255,0.22);
}
.builder-chamber-rail{
  width:10px;
  border-radius:999px;
}
.builder-chamber-ring{
  width:80px;
  height:8px;
  transform:translateX(-50%) translateZ(32px);
  border-radius:999px;
  box-shadow:0 0 0 1px rgba(255,255,255,0.10);
}


/* NEW premium dynamic homepage background (clean + high-end) */
.hero-premium-core-bg{
  background:
    radial-gradient(circle at 50% 20%, rgba(25,167,255,0.12), transparent 20%),
    radial-gradient(circle at 20% 30%, rgba(0,140,255,0.06), transparent 25%),
    radial-gradient(circle at 80% 30%, rgba(255,255,255,0.04), transparent 25%),
    linear-gradient(180deg, #010203 0%, #000000 55%, #05080f 100%);
}

/* subtle animated light sweep */
.hero-premium-core-bg::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, transparent 40%, rgba(25,167,255,0.12) 50%, transparent 60%);
  animation: heroSweep 10s linear infinite;
  pointer-events:none;
}

/* floating glow orbs */
.hero-premium-core-bg::after{
  content:"";
  position:absolute;
  width:400px;
  height:400px;
  left:50%;
  top:20%;
  transform:translateX(-50%);
  background:radial-gradient(circle, rgba(25,167,255,0.15), transparent 70%);
  filter:blur(60px);
  animation: heroFloat 8s ease-in-out infinite;
  pointer-events:none;
}

@keyframes heroSweep{
  0%{ transform:translateX(-100%); }
  100%{ transform:translateX(100%); }
}

@keyframes heroFloat{
  0%,100%{ transform:translate(-50%, 0); }
  50%{ transform:translate(-50%, 20px); }
}


/* Independent dynamic homepage glow (no cursor follow) */
.hero-premium-core-bg{
  overflow:hidden;
}
.hero-premium-core-bg .hero-copy,
.hero-premium-core-bg .hero-visual{
  position:relative;
  z-index:2;
}
.hero-premium-core-bg::after{
  animation: heroFloatIndependent 12s ease-in-out infinite;
}
.hero-premium-core-bg::before{
  animation: heroSweepIndependent 14s linear infinite;
}
@keyframes heroSweepIndependent{
  0%{ transform:translateX(-120%) skewX(-12deg); opacity:0.0; }
  15%{ opacity:0.25; }
  50%{ opacity:0.12; }
  85%{ opacity:0.22; }
  100%{ transform:translateX(120%) skewX(-12deg); opacity:0.0; }
}
@keyframes heroFloatIndependent{
  0%,100%{ transform:translate(-50%, 0) scale(1); opacity:0.65; }
  25%{ transform:translate(-46%, 18px) scale(1.04); opacity:0.8; }
  50%{ transform:translate(-52%, 34px) scale(0.98); opacity:0.58; }
  75%{ transform:translate(-48%, 14px) scale(1.03); opacity:0.76; }
}


/* Homepage background: premium animated cinematic hero */
.hero-cinematic-orb-bg{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 18%, rgba(41,122,255,0.10), transparent 22%),
    radial-gradient(circle at 18% 22%, rgba(0,176,255,0.06), transparent 18%),
    radial-gradient(circle at 82% 20%, rgba(255,255,255,0.04), transparent 16%),
    linear-gradient(180deg, #020306 0%, #000000 56%, #04070d 100%);
}
.hero-cinematic-orb-bg .hero-copy,
.hero-cinematic-orb-bg .hero-visual{
  position:relative;
  z-index:2;
}

.hero-co-grid{
  opacity:0.05;
  background:
    linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.045) 1px, transparent 1px);
  background-size:110px 110px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,0.88), transparent 86%);
  transform:perspective(1200px) rotateX(79deg) scale(2) translateY(26%);
}

.hero-co-noise{
  opacity:0.08;
  mix-blend-mode:screen;
  background-image:
    radial-gradient(circle at 12% 20%, rgba(255,255,255,0.28) 0 1px, transparent 1.6px),
    radial-gradient(circle at 28% 62%, rgba(255,255,255,0.18) 0 1px, transparent 1.6px),
    radial-gradient(circle at 46% 18%, rgba(255,255,255,0.18) 0 1px, transparent 1.6px),
    radial-gradient(circle at 62% 54%, rgba(255,255,255,0.16) 0 1px, transparent 1.6px),
    radial-gradient(circle at 78% 24%, rgba(255,255,255,0.22) 0 1px, transparent 1.6px),
    radial-gradient(circle at 88% 70%, rgba(255,255,255,0.18) 0 1px, transparent 1.6px);
  animation: heroNoiseDrift 24s linear infinite;
}

.hero-co-particles{
  opacity:0.18;
  mix-blend-mode:screen;
}
.hero-co-particles.particles-a{
  background-image:
    radial-gradient(circle at 10% 16%, rgba(119,208,255,0.68) 0 1.2px, transparent 1.8px),
    radial-gradient(circle at 22% 72%, rgba(255,255,255,0.56) 0 1.1px, transparent 1.7px),
    radial-gradient(circle at 40% 26%, rgba(119,208,255,0.52) 0 1.2px, transparent 1.8px),
    radial-gradient(circle at 56% 60%, rgba(255,255,255,0.42) 0 1px, transparent 1.6px),
    radial-gradient(circle at 72% 18%, rgba(119,208,255,0.50) 0 1.1px, transparent 1.7px),
    radial-gradient(circle at 90% 64%, rgba(255,255,255,0.36) 0 1px, transparent 1.6px);
  animation: heroParticlesFloatA 22s ease-in-out infinite;
}
.hero-co-particles.particles-b{
  background-image:
    radial-gradient(circle at 14% 42%, rgba(255,255,255,0.26) 0 1px, transparent 1.5px),
    radial-gradient(circle at 34% 14%, rgba(88,171,255,0.28) 0 1px, transparent 1.5px),
    radial-gradient(circle at 48% 74%, rgba(255,255,255,0.22) 0 1px, transparent 1.5px),
    radial-gradient(circle at 66% 32%, rgba(88,171,255,0.22) 0 1px, transparent 1.5px),
    radial-gradient(circle at 84% 48%, rgba(255,255,255,0.22) 0 1px, transparent 1.5px);
  animation: heroParticlesFloatB 28s ease-in-out infinite;
}

.hero-co-orb{
  border-radius:50%;
  filter:blur(78px);
  mix-blend-mode:screen;
}
.hero-co-orb.orb-1{
  width:360px; height:360px; left:-2%; top:10%;
  background:radial-gradient(circle, rgba(49,126,255,0.22) 0%, rgba(49,126,255,0.04) 58%, transparent 80%);
  animation: heroOrbFloat1 18s ease-in-out infinite;
}
.hero-co-orb.orb-2{
  width:260px; height:260px; left:22%; top:36%;
  background:radial-gradient(circle, rgba(0,196,255,0.14) 0%, rgba(0,196,255,0.03) 58%, transparent 80%);
  animation: heroOrbFloat2 22s ease-in-out infinite;
}
.hero-co-orb.orb-3{
  width:300px; height:300px; right:8%; top:14%;
  background:radial-gradient(circle, rgba(91,161,255,0.16) 0%, rgba(91,161,255,0.03) 58%, transparent 80%);
  animation: heroOrbFloat3 20s ease-in-out infinite;
}
.hero-co-orb.orb-4{
  width:220px; height:220px; right:24%; bottom:8%;
  background:radial-gradient(circle, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.02) 58%, transparent 80%);
  animation: heroOrbFloat4 24s ease-in-out infinite;
}

.hero-co-vignette{
  background:
    radial-gradient(circle at 50% 34%, transparent 0 36%, rgba(0,0,0,0.08) 56%, rgba(0,0,0,0.34) 100%);
  pointer-events:none;
}

@keyframes heroNoiseDrift{
  0%{ transform:translate3d(0,0,0); }
  50%{ transform:translate3d(-12px,10px,0); }
  100%{ transform:translate3d(0,0,0); }
}
@keyframes heroParticlesFloatA{
  0%,100%{ transform:translate3d(0,0,0); opacity:0.14; }
  50%{ transform:translate3d(-10px,18px,0); opacity:0.24; }
}
@keyframes heroParticlesFloatB{
  0%,100%{ transform:translate3d(0,0,0); opacity:0.10; }
  50%{ transform:translate3d(12px,-14px,0); opacity:0.20; }
}
@keyframes heroOrbFloat1{
  0%,100%{ transform:translate3d(0,0,0) scale(1); }
  50%{ transform:translate3d(18px,14px,0) scale(1.05); }
}
@keyframes heroOrbFloat2{
  0%,100%{ transform:translate3d(0,0,0) scale(1); }
  50%{ transform:translate3d(-10px,-14px,0) scale(1.07); }
}
@keyframes heroOrbFloat3{
  0%,100%{ transform:translate3d(0,0,0) scale(1); }
  50%{ transform:translate3d(-18px,16px,0) scale(1.05); }
}
@keyframes heroOrbFloat4{
  0%,100%{ transform:translate3d(0,0,0) scale(1); }
  50%{ transform:translate3d(10px,-10px,0) scale(1.08); }
}


/* Less subtle – more visible cinematic motion */
.hero-co-noise{
  opacity:0.16 !important;
  animation: heroNoiseDrift 18s linear infinite;
}

.hero-co-particles{
  opacity:0.28 !important;
}

.hero-co-orb{
  filter:blur(60px) !important;
  opacity:0.35 !important;
}

.hero-co-orb.orb-1{
  animation: heroOrbFloat1 12s ease-in-out infinite;
}
.hero-co-orb.orb-2{
  animation: heroOrbFloat2 14s ease-in-out infinite;
}
.hero-co-orb.orb-3{
  animation: heroOrbFloat3 13s ease-in-out infinite;
}
.hero-co-orb.orb-4{
  animation: heroOrbFloat4 15s ease-in-out infinite;
}

/* Slight pulse brightness */
.hero-cinematic-orb-bg::before{
  opacity:0.35 !important;
  animation: heroSweep 8s linear infinite;
}

/* More visible grid depth */
.hero-co-grid{
  opacity:0.09 !important;
}


/* Enhanced glowing homepage background (still clean) */
.hero-cinematic-orb-bg{
  background:
    radial-gradient(circle at 50% 15%, rgba(0,170,255,0.35), transparent 30%),
    radial-gradient(circle at 20% 25%, rgba(0,120,255,0.25), transparent 35%),
    radial-gradient(circle at 80% 20%, rgba(0,200,255,0.18), transparent 35%),
    radial-gradient(circle at 50% 60%, rgba(0,170,255,0.12), transparent 50%),
    radial-gradient(circle at 50% 50%, rgba(255,255,255,0.05), transparent 60%),
    linear-gradient(180deg, #000000 0%, #01040a 60%, #000000 100%);
}

/* stronger glow layers */
.hero-co-orb{
  opacity:0.5;
  filter:blur(90px);
}

.hero-co-particles{
  opacity:0.4;
}

/* animated ambient glow layers */
.hero-bg-layer.hero-glow-ambient{
  position:absolute;
  inset:0;
  background: radial-gradient(circle at 40% 30%, rgba(0,170,255,0.25), transparent 60%);
  animation: glowShift 8s ease-in-out infinite;
  pointer-events:none;
}

.hero-bg-layer.hero-glow-ambient-2{
  position:absolute;
  inset:0;
  background: radial-gradient(circle at 70% 60%, rgba(0,120,255,0.18), transparent 65%);
  animation: glowShift2 10s ease-in-out infinite;
  pointer-events:none;
}

@keyframes glowShift{
  0%,100%{ opacity:0.6; transform:scale(1);}
  50%{ opacity:1; transform:scale(1.08);}
}

@keyframes glowShift2{
  0%,100%{ opacity:0.5; transform:scale(1);}
  50%{ opacity:0.9; transform:scale(1.1);}
}


/* Product page conversion refresh */
.product-shell-premium{
  padding-top:26px;
}
.product-layout-premium{
  display:grid;
  grid-template-columns:1.04fr .96fr;
  gap:24px;
  align-items:start;
}
.product-media-frame{
  position:relative;
  min-height:640px;
  overflow:hidden;
  background:
    radial-gradient(circle at center, rgba(25,167,255,0.08), transparent 34%),
    linear-gradient(180deg, rgba(20,24,30,0.82), rgba(7,9,12,0.96));
}
.gallery-thumbs-row{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:10px;
  margin-top:12px;
}
.product-media-badges{
  position:absolute;
  left:16px;
  bottom:16px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  z-index:3;
}
.product-media-badges span{
  padding:8px 12px;
  border-radius:999px;
  font-size:.8rem;
  color:#dceeff;
  background:rgba(6,12,18,0.78);
  border:1px solid rgba(255,255,255,0.08);
  backdrop-filter:blur(10px);
}
.product-media-support-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:12px;
}
.product-buybox{
  position:sticky;
  top:104px;
}
.pdp-rating-row{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:12px;
}
.pdp-stars{
  color:#8fd4ff;
  letter-spacing:.16em;
}
.pdp-stars-copy{
  color:var(--muted);
  font-size:.92rem;
}
.product-price-stack{
  display:grid;
  gap:6px;
  margin:14px 0 14px;
}
.product-finance-note{
  color:var(--muted);
  font-size:.92rem;
}
.product-instant-points{
  display:grid;
  gap:10px;
  margin:16px 0;
}
.instant-point{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:46px;
  padding:0 14px;
  border-radius:14px;
  background:linear-gradient(180deg, rgba(21,27,34,0.74), rgba(8,10,13,0.94));
  border:1px solid rgba(255,255,255,0.06);
  color:#e7f5ff;
}
.instant-point::before{
  content:"✓";
  color:#8fd4ff;
  font-weight:800;
}
.product-proof-upgraded{
  margin:14px 0 18px;
}
.product-form-premium{
  display:grid;
  gap:16px;
}
.pdp-form-block{
  display:grid;
  gap:8px;
}
.quantity-row-premium{
  display:grid;
  gap:8px;
}
.product-cta-row-premium{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.product-assurance-list{
  display:grid;
  gap:8px;
  margin-top:16px;
  color:#dceeff;
  font-size:.92rem;
}
.product-bundle-box{
  margin-top:18px;
  padding:18px;
  background:linear-gradient(180deg, rgba(18,24,30,0.82), rgba(7,9,12,0.96));
}
.bundle-mini-list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.bundle-mini-list span{
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.07);
  color:#dceeff;
  font-size:.84rem;
}
.product-story-band{
  margin-top:18px;
  padding:22px;
  background:linear-gradient(180deg, rgba(18,24,30,0.82), rgba(7,9,12,0.96));
}
.pdp-lower-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:18px;
  margin-top:22px;
}
.pdp-side-stack{
  display:grid;
  gap:18px;
}
.mini-compare-grid{
  display:grid;
  gap:10px;
  margin-top:10px;
}
.mini-compare-grid div{
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:12px 14px;
  border-radius:14px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.06);
}
.product-bottom-cta{
  margin-top:22px;
  padding:24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  background:linear-gradient(180deg, rgba(18,24,30,0.82), rgba(7,9,12,0.96));
}
@media (max-width: 1100px){
  .product-layout-premium,
  .pdp-lower-grid{
    grid-template-columns:1fr;
  }
  .product-buybox{
    position:relative;
    top:0;
  }
}
@media (max-width: 760px){
  .gallery-thumbs-row,
  .product-media-support-grid,
  .product-cta-row-premium{
    grid-template-columns:1fr 1fr;
  }
  .product-bottom-cta{
    flex-direction:column;
    align-items:flex-start;
  }
}
@media (max-width: 560px){
  .gallery-thumbs-row,
  .product-media-support-grid,
  .product-cta-row-premium{
    grid-template-columns:1fr;
  }
}


/* Product page fixes */
.product-info{
  display:grid;
  gap:18px;
  align-content:start;
}
.product-buybox{
  margin-bottom:0;
}
.product-story-band-spaced{
  margin-top:0;
}
@media (min-width: 1101px){
  .product-layout-premium{
    align-items:start;
  }
  .product-info{
    position:relative;
  }
  .product-story-band-spaced{
    position:relative;
    z-index:1;
  }
}

/* Clickable compare box */
.compare-detail{
  padding:0;
  overflow:hidden;
}
.compare-detail summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:24px;
}
.compare-detail summary::-webkit-details-marker{
  display:none;
}
.compare-open-label{
  color:#8fd4ff;
  font-size:.9rem;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:999px;
  padding:8px 12px;
  background:rgba(255,255,255,0.03);
}
.compare-detail-body{
  padding:0 24px 24px;
}
.mini-compare-grid-detailed{
  gap:12px;
}
.mini-compare-grid-detailed div{
  display:grid;
  gap:6px;
  align-items:start;
}
.mini-compare-grid-detailed span{
  color:#cfe6f7;
  line-height:1.45;
}


/* Cohesive accordion styling */
.pdp-accordions-cohesive{
  padding:10px;
  background:linear-gradient(180deg, rgba(18,24,30,0.88), rgba(7,9,12,0.98));
  border:1px solid rgba(255,255,255,0.06);
}
.pdp-accordions-cohesive .pdp-detail{
  margin:0;
  border:0;
  border-radius:16px;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(24,29,36,0.70), rgba(10,12,16,0.92));
}
.pdp-accordions-cohesive .pdp-detail + .pdp-detail{
  margin-top:10px;
}
.pdp-accordions-cohesive .pdp-detail summary{
  padding:18px 20px;
  border-bottom:1px solid rgba(255,255,255,0.06);
  background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.00));
}
.pdp-accordions-cohesive .pdp-detail[open] summary{
  color:#8fd4ff;
}
.pdp-accordions-cohesive .pdp-detail-body{
  padding:18px 20px 20px;
  color:#d8e8f6;
  background:rgba(255,255,255,0.01);
}
.pdp-accordions-cohesive .pdp-detail-body ul{
  margin:0;
  padding-left:18px;
}
.pdp-accordions-cohesive .pdp-detail-body p:last-child,
.pdp-accordions-cohesive .pdp-detail-body ul:last-child{
  margin-bottom:0;
}

/* Clickable upgrade links */
.bundle-mini-list-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.bundle-mini-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  color:#dceeff;
  text-decoration:none;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, color .18s ease;
}
.bundle-mini-link:hover{
  transform:translateY(-1px);
  color:#8fd4ff;
  border-color:rgba(25,167,255,0.40);
  box-shadow:0 0 0 1px rgba(25,167,255,0.18), 0 0 16px rgba(25,167,255,0.10);
}

/* Currency selector styling */
.currency-selector,
.currency-selector select,
select.currency-selector,
[data-currency-selector],
[data-currency-selector] select,
.localization-form select,
.header-localization select,
.header-currency select{
  background:#000 !important;
  color:#4fc3ff !important;
  border:1px solid rgba(25,167,255,0.32) !important;
  box-shadow:0 0 0 1px rgba(25,167,255,0.08), inset 0 0 10px rgba(25,167,255,0.04);
}
.currency-selector option,
.localization-form select option,
.header-localization select option,
.header-currency select option{
  background:#000 !important;
  color:#4fc3ff !important;
}
.currency-selector:focus,
.currency-selector select:focus,
select.currency-selector:focus,
[data-currency-selector]:focus,
[data-currency-selector] select:focus,
.localization-form select:focus,
.header-localization select:focus,
.header-currency select:focus{
  outline:none;
  box-shadow:0 0 0 1px rgba(25,167,255,0.22), 0 0 18px rgba(25,167,255,0.12), inset 0 0 12px rgba(25,167,255,0.06) !important;
}

/* Extra fallback for header select wrappers */
.localization-form,
.header-localization,
.header-currency{
  color:#4fc3ff;
}


/* Blade size selector */
.blade-size-options{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.blade-size-option{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 14px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg, rgba(21,27,34,0.74), rgba(8,10,13,0.94));
  color:#e7f5ff;
  cursor:pointer;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
}
.blade-size-option input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.blade-size-option:hover,
.blade-size-option.is-active{
  transform:translateY(-1px);
  color:#8fd4ff;
  border-color:rgba(25,167,255,0.40);
  box-shadow:0 0 0 1px rgba(25,167,255,0.18), 0 0 16px rgba(25,167,255,0.10);
}
@media (max-width: 560px){
  .blade-size-options{
    grid-template-columns:1fr;
  }
}


/* Clean PDP layout pass */
.product-layout-clean{
  gap:28px;
}
.product-buybox-clean{
  display:grid;
  gap:18px;
  padding:24px;
  background:linear-gradient(180deg, rgba(18,24,30,0.84), rgba(7,9,12,0.98));
}
.product-topline{
  display:grid;
  gap:10px;
}
.product-value-strip{
  display:grid;
  gap:10px;
}
.product-form-clean{
  display:grid;
  gap:16px;
}
.product-cta-row-clean{
  margin-top:2px;
}
.product-assurance-list-clean{
  display:flex;
  flex-wrap:wrap;
  gap:10px 16px;
  padding-top:4px;
  color:#dceeff;
}
.product-assurance-list-clean div{
  font-size:.92rem;
  opacity:.92;
}
.pdp-lower-grid-clean{
  margin-top:26px;
  align-items:start;
}
.product-bundle-box-lower{
  padding:18px;
  background:linear-gradient(180deg, rgba(18,24,30,0.82), rgba(7,9,12,0.96));
}
.product-media-support-grid{
  display:none;
}

/* reduce crowding */
.product-proof-upgraded,
.product-bundle-box{
  display:none;
}
.product-submeta{
  opacity:.82;
}
.product-price-stack{
  margin:6px 0 2px;
}
.instant-point{
  min-height:44px;
}
.pdp-accordions-cohesive{
  padding:10px;
}
.compare-detail summary{
  padding:20px;
}
.compare-detail-body{
  padding:0 20px 20px;
}
@media (max-width: 760px){
  .product-buybox-clean{
    padding:20px;
  }
  .product-assurance-list-clean{
    display:grid;
    gap:8px;
  }
}


/* Re-added upsells under product photo */
.product-photo-upsells{
  margin-top:14px;
  padding:18px;
  background:linear-gradient(180deg, rgba(18,24,30,0.82), rgba(7,9,12,0.96));
}
.product-photo-upsells-head{
  margin-bottom:12px;
}
.product-photo-upsells-head h3{
  margin:4px 0 0;
}
.photo-upsell-grid{
  display:grid;
  gap:10px;
}
.photo-upsell-card{
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:center;
  padding:14px;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(24,29,36,0.72), rgba(10,12,16,0.94));
  border:1px solid rgba(255,255,255,0.06);
}
.photo-upsell-copy{
  display:grid;
  gap:4px;
}
.photo-upsell-copy strong{
  color:#fff;
}
.photo-upsell-copy span{
  color:#cfe6f7;
  font-size:.9rem;
}
.photo-upsell-btn{
  white-space:nowrap;
  min-width:124px;
  text-align:center;
}
@media (max-width: 760px){
  .photo-upsell-card{
    grid-template-columns:1fr;
  }
  .photo-upsell-btn{
    width:100%;
  }
}


/* Tightened PDP spacing while keeping it clean */
.product-shell-premium{
  padding-top: 18px;
}
.product-layout-clean{
  gap: 20px;
}
.product-buybox-clean{
  gap: 14px;
  padding: 20px;
}
.product-topline{
  gap: 7px;
}
.product-value-strip{
  gap: 8px;
}
.product-form-clean{
  gap: 12px;
}
.product-price-stack{
  gap: 4px;
}
.product-instant-points,
.product-proof-upgraded{
  margin: 10px 0;
}
.instant-point{
  min-height: 40px;
  padding: 0 12px;
}
.pdp-form-block{
  gap: 6px;
}
.quantity-row-premium{
  gap: 6px;
}
.product-cta-row-premium{
  gap: 10px;
}
.product-assurance-list-clean{
  gap: 8px 14px;
  padding-top: 0;
}
.gallery-thumbs-row{
  gap: 8px;
  margin-top: 10px;
}
.product-photo-upsells{
  margin-top: 10px;
  padding: 15px;
}
.product-photo-upsells-head{
  margin-bottom: 10px;
}
.photo-upsell-grid{
  gap: 8px;
}
.photo-upsell-card{
  padding: 12px;
  gap: 10px;
}
.pdp-lower-grid-clean{
  margin-top: 18px;
  gap: 14px;
}
.pdp-accordions-cohesive{
  padding: 8px;
}
.pdp-accordions-cohesive .pdp-detail + .pdp-detail{
  margin-top: 8px;
}
.pdp-accordions-cohesive .pdp-detail summary{
  padding: 15px 17px;
}
.pdp-accordions-cohesive .pdp-detail-body{
  padding: 14px 17px 17px;
}
.compare-detail summary{
  padding: 17px;
}
.compare-detail-body{
  padding: 0 17px 17px;
}
.product-bundle-box-lower{
  padding: 15px;
}
.product-bottom-cta{
  margin-top: 18px;
  padding: 20px;
}
@media (max-width: 760px){
  .product-buybox-clean,
  .product-bottom-cta,
  .product-photo-upsells,
  .product-bundle-box-lower{
    padding: 16px;
  }
}


/* Align side stack (Compare + Social Proof) higher */
.pdp-lower-grid-clean{
  align-items: start;
}

.pdp-side-stack{
  margin-top: -12px; /* lifts side content up slightly */
  display: grid;
  gap: 12px;
}

.pdp-side-stack .support-mini{
  margin-top: 0;
}

.pdp-side-stack .compare-detail{
  margin-top: 0;
}

/* fine tune for desktop alignment */
@media (min-width: 900px){
  .pdp-side-stack{
    margin-top: -18px;
  }
}


/* Enhanced quiz page */
.quiz-shell{
  max-width: 900px;
  margin: 0 auto;
  padding: 28px;
  border: 1px solid rgba(255,255,255,0.08);
  background: linear-gradient(180deg, rgba(18,24,30,0.84), rgba(7,9,12,0.98));
}
.quiz-intro,
.quiz-stage,
.quiz-result-card{
  display: grid;
  gap: 18px;
}
.quiz-intro-copy{
  max-width: 720px;
  color: #cfe6f7;
}
.quiz-progress-wrap{
  display: grid;
  gap: 10px;
}
.quiz-progress-meta{
  display:flex;
  justify-content:space-between;
  gap: 12px;
  color:#cfe6f7;
  font-size:.92rem;
}
.quiz-progress-bar{
  width:100%;
  height:10px;
  border-radius:999px;
  background:rgba(255,255,255,0.06);
  overflow:hidden;
}
.quiz-progress-bar span{
  display:block;
  width:0;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg, #00aaff, #7dd3fc);
  box-shadow:0 0 16px rgba(0,170,255,.28);
}
.quiz-question-card{
  padding: 22px;
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(24,29,36,0.74), rgba(10,12,16,0.96));
  border: 1px solid rgba(255,255,255,0.06);
}
.quiz-answer-grid{
  display:grid;
  gap:12px;
  margin-top:16px;
}
.quiz-answer{
  min-height:56px;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg, rgba(20,26,32,0.74), rgba(8,10,13,0.96));
  color:#e7f5ff;
  text-align:left;
  cursor:pointer;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
}
.quiz-answer:hover,
.quiz-answer.is-active{
  transform: translateY(-1px);
  color:#8fd4ff;
  border-color:rgba(25,167,255,0.40);
  box-shadow:0 0 0 1px rgba(25,167,255,0.18), 0 0 16px rgba(25,167,255,0.10);
}
.quiz-nav-row{
  display:flex;
  justify-content:space-between;
  gap:12px;
}
.quiz-result-head{
  display:grid;
  gap:8px;
}
.quiz-result-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.quiz-result-meta span{
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  color:#dceeff;
}
.quiz-result-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.quiz-result-panel{
  padding:18px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(24,29,36,0.74), rgba(10,12,16,0.96));
  border:1px solid rgba(255,255,255,0.06);
}
.quiz-result-panel ul{
  margin:0;
  padding-left:18px;
}
.quiz-result-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
@media (max-width: 760px){
  .quiz-shell{
    padding:20px;
  }
  .quiz-result-grid{
    grid-template-columns:1fr;
  }
  .quiz-nav-row{
    flex-direction:column;
  }
}


/* Quiz glow/tint upgrade */
.quiz-shell{
  --quiz-accent: #00aaff;
  --quiz-accent-soft: rgba(0,170,255,0.18);
  --quiz-accent-strong: rgba(0,170,255,0.35);
}
.quiz-progress-bar span{
  background: linear-gradient(90deg, var(--quiz-accent), #ffffff);
  box-shadow: 0 0 18px var(--quiz-accent-soft);
}
.quiz-answer:hover,
.quiz-answer.is-active{
  color: var(--quiz-accent);
  border-color: var(--quiz-accent-strong);
  box-shadow: 0 0 0 1px var(--quiz-accent-soft), 0 0 18px var(--quiz-accent-soft);
}
.quiz-result-meta span{
  border-color: var(--quiz-accent-soft);
  box-shadow: inset 0 0 0 1px var(--quiz-accent-soft);
}
.quiz-result-panel{
  box-shadow: 0 0 0 1px rgba(255,255,255,0.04), inset 0 0 30px var(--quiz-accent-soft);
}
.quiz-result-panel h3{
  color: var(--quiz-accent);
}
#quizClaimBtn{
  box-shadow: 0 0 22px var(--quiz-accent-soft);
}
#quizClaimBtn:hover{
  box-shadow: 0 0 28px var(--quiz-accent-strong);
}
.quiz-result-card{
  margin-top: 18px;
}
.quiz-nav-row{
  margin-top: 8px;
}



/* Product page micro-trust */
.iw-micro-trust{
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,0.06);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px 12px;
}
.iw-trust-item{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  color:rgba(255,255,255,0.75);
  transition:all .2s ease;
}
.iw-trust-item p{
  margin:0;
}
.iw-trust-item span{
  font-size:14px;
  filter:drop-shadow(0 0 6px rgba(0,170,255,0.4));
}
.iw-trust-item strong{
  color:#fff;
}
.iw-trust-item:hover{
  color:#fff;
  transform:translateY(-1px);
}
@media (max-width:560px){
  .iw-micro-trust{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   ACTUAL RESPONSIVE HEADER REBUILD
   Desktop preserved. Mobile uses dedicated structure.
   ========================================================= */
.mobile-header,
.mobile-nav-drawer{
  display:none;
}

.desktop-header{
  display:block;
}

@media (max-width: 900px){
  .desktop-header{
    display:none !important;
  }

  .mobile-header{
    display:block;
  }

  .site-header{
    position:sticky;
    top:0;
    z-index:80;
    background:rgba(0,0,0,0.9);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-bottom:1px solid rgba(255,255,255,0.06);
    box-shadow:0 10px 30px rgba(0,0,0,0.18);
  }

  .mobile-header-top{
    display:grid;
    grid-template-columns:42px 1fr auto;
    align-items:center;
    gap:12px;
    padding-top:12px;
    padding-bottom:12px;
  }

  .mobile-brand-mark{
    min-width:0;
    text-align:center;
    font-size:clamp(1rem, 4vw, 1.2rem);
    line-height:1;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .mobile-header-btn{
    width:42px;
    height:42px;
    min-width:42px;
    min-height:42px;
    border-radius:12px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,0.03);
    border:1px solid rgba(255,255,255,0.08);
    color:#fff;
    text-decoration:none;
    padding:0 10px;
    position:relative;
    cursor:pointer;
  }

  .mobile-cart-btn{
    width:auto;
    min-width:42px;
    padding:0 12px;
    font-size:.9rem;
    font-weight:700;
  }

  .mobile-menu-btn span{
    position:absolute;
    width:16px;
    height:2px;
    background:#fff;
    border-radius:999px;
    transition:all .2s ease;
  }
  .mobile-menu-btn span:nth-child(1){ transform:translateY(-5px); }
  .mobile-menu-btn span:nth-child(2){ transform:translateY(0); }
  .mobile-menu-btn span:nth-child(3){ transform:translateY(5px); }

  .mobile-menu-btn.is-open span:nth-child(1){ transform:rotate(45deg); }
  .mobile-menu-btn.is-open span:nth-child(2){ opacity:0; }
  .mobile-menu-btn.is-open span:nth-child(3){ transform:rotate(-45deg); }

  .mobile-header-search-wrap{
    padding-bottom:10px;
  }

  .mobile-header-search{
    display:grid;
    grid-template-columns:1fr auto;
    gap:10px;
    align-items:center;
  }

  .mobile-header-search .theme-input{
    min-height:44px;
    height:44px;
    border-radius:15px;
    font-size:16px;
  }

  .mobile-header-search .header-icon-btn{
    min-height:44px;
    height:44px;
    min-width:92px;
    border-radius:15px;
  }

  .mobile-quick-links{
    display:flex;
    gap:10px;
    overflow-x:auto;
    padding-bottom:12px;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .mobile-quick-links::-webkit-scrollbar{
    display:none;
  }

  .mobile-quick-links a{
    flex:0 0 auto;
    min-height:38px;
    display:inline-flex;
    align-items:center;
    white-space:nowrap;
    padding:0 14px;
    border-radius:999px;
    background:rgba(255,255,255,0.02);
    border:1px solid rgba(255,255,255,0.06);
    color:#fff;
    text-decoration:none;
    font-size:.9rem;
  }

  .mobile-nav-drawer[hidden]{
    display:none !important;
  }

  .mobile-nav-drawer{
    display:block;
    position:fixed;
    inset:0;
    z-index:120;
  }

  .mobile-nav-backdrop{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,0.5);
  }

  .mobile-nav-panel{
    position:absolute;
    top:0;
    right:0;
    width:min(88vw, 360px);
    height:100%;
    background:linear-gradient(180deg, rgba(10,12,16,0.98), rgba(4,6,9,0.98));
    border-left:1px solid rgba(255,255,255,0.06);
    box-shadow:-20px 0 40px rgba(0,0,0,0.25);
    padding:16px;
    display:grid;
    grid-template-rows:auto 1fr auto;
    gap:14px;
  }

  .mobile-nav-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
  }

  .mobile-nav-title{
    font-family:'Orbitron', Arial, sans-serif;
    letter-spacing:.08em;
    font-size:1rem;
    color:#fff;
  }

  .mobile-close-btn{
    font-size:1.45rem;
    line-height:1;
  }

  .mobile-nav-links{
    display:grid;
    gap:8px;
    align-content:start;
    overflow:auto;
    padding-right:2px;
  }

  .mobile-nav-links a{
    min-height:46px;
    display:flex;
    align-items:center;
    padding:0 14px;
    border-radius:12px;
    background:rgba(255,255,255,0.03);
    border:1px solid rgba(255,255,255,0.06);
    color:#fff;
    text-decoration:none;
  }

  .mobile-nav-currency{
    display:grid;
    gap:8px;
    padding-top:4px;
  }

  .mobile-nav-label{
    font-size:.76rem;
    letter-spacing:.08em;
    color:rgba(255,255,255,0.72);
    text-transform:uppercase;
  }

  .mobile-nav-currency .theme-input{
    min-height:42px;
    border-radius:14px;
  }

  .cart-count{
    margin-left:6px;
  }
}

@media (max-width: 560px){
  .mobile-header-top{
    padding-top:10px;
    padding-bottom:10px;
  }

  .mobile-header-search{
    grid-template-columns:1fr 88px;
  }

  .mobile-header-search .header-icon-btn{
    min-width:88px;
  }

  .mobile-brand-mark{
    font-size:clamp(.95rem, 4.8vw, 1.08rem);
  }
}


/* Mobile drawer accordion + announcement bar optimization */
@media (max-width: 900px){
  .announcement-bar{
    position: relative;
    z-index: 81;
  }

  .announcement-inner{
    min-height: 32px !important;
    padding: 0 !important;
    gap: 10px !important;
    font-size: 0.78rem !important;
    line-height: 1.25 !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .announcement-bar .page-width{
    padding-top: 7px !important;
    padding-bottom: 7px !important;
  }

  .announcement-inner p{
    margin: 0 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
  }

  .announcement-inner a{
    white-space: nowrap;
    font-size: 0.78rem !important;
  }

  .mobile-nav-links{
    gap: 10px !important;
  }

  .mobile-drawer-group{
    display: grid;
    gap: 8px;
  }

  .mobile-drawer-accordion{
    min-height: 46px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 14px;
    border-radius: 12px;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.06);
    color: #fff;
    cursor: pointer;
    font: inherit;
  }

  .mobile-drawer-plus{
    font-size: 1.1rem;
    line-height: 1;
    transition: transform .2s ease;
  }

  .mobile-drawer-accordion.is-open .mobile-drawer-plus{
    transform: rotate(45deg);
  }

  .mobile-drawer-submenu{
    display: grid;
    gap: 8px;
    padding-left: 8px;
  }

  .mobile-drawer-submenu a{
    min-height: 42px !important;
    padding: 0 14px !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,0.02) !important;
    border: 1px solid rgba(255,255,255,0.05) !important;
  }
}

@media (max-width: 560px){
  .announcement-inner{
    font-size: 0.74rem !important;
  }

  .announcement-inner a{
    display: none;
  }

  .announcement-bar .page-width{
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }
}


/* Extend mobile hamburger drawer beyond header */
@media (max-width: 900px){
  .site-header{
    overflow: visible !important;
  }

  .mobile-nav-drawer{
    position: fixed !important;
    inset: 0 !important;
    z-index: 120 !important;
  }

  .mobile-nav-backdrop{
    position: fixed !important;
    inset: 0 !important;
    background: rgba(0,0,0,0.5) !important;
  }

  .mobile-nav-panel{
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    width: min(88vw, 360px) !important;
    height: 100vh !important;
    max-height: 100vh !important;
    overflow-y: auto !important;
    padding-bottom: 24px !important;
    z-index: 121 !important;
  }

  .mobile-nav-links{
    max-height: none !important;
    overflow: visible !important;
  }

  .mobile-drawer-submenu{
    max-height: none !important;
  }
}


/* FIX: Mobile drawer full width + proper positioning */
@media (max-width: 900px){
  .mobile-nav-drawer{
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    display: block !important;
  }

  .mobile-nav-panel{
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;   /* FIX: anchor to left instead of right */
    right: 0 !important;
    width: 100vw !important; /* full width instead of narrow panel */
    max-width: 100vw !important;
    height: 100vh !important;
    overflow-y: auto !important;
    padding: 20px 16px 40px !important;
    background: #000 !important;
  }

  .mobile-nav-backdrop{
    display: none !important; /* no side overlay since full screen */
  }

  .mobile-nav-links{
    display: grid !important;
    gap: 12px !important;
  }

  .mobile-nav-links a{
    width: 100% !important;
    justify-content: flex-start !important;
  }

  .mobile-drawer-submenu{
    padding-left: 0 !important;
  }

  /* Fix header overlap */
  body.menu-open{
    overflow: hidden;
  }
}


/* Polished fullscreen mobile menu */
@media (max-width: 900px){
  .mobile-nav-panel{
    background:
      radial-gradient(circle at 50% 14%, rgba(0,170,255,0.14), transparent 26%),
      radial-gradient(circle at 82% 22%, rgba(0,120,255,0.08), transparent 22%),
      linear-gradient(180deg, rgba(3,6,10,0.99), rgba(0,0,0,0.99)) !important;
  }

  .mobile-nav-head{
    position: sticky;
    top: 0;
    z-index: 2;
    padding-bottom: 14px;
    margin-bottom: 4px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: linear-gradient(180deg, rgba(3,6,10,0.98), rgba(3,6,10,0.72), rgba(3,6,10,0));
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }

  .mobile-nav-head-copy{
    display: grid;
    gap: 4px;
  }

  .mobile-nav-kicker{
    font-size: .68rem;
    letter-spacing: .18em;
    color: rgba(143,214,255,0.72);
  }

  .mobile-nav-title{
    font-size: 1.6rem;
    letter-spacing: .04em;
    line-height: 1;
  }

  .mobile-close-btn{
    font-size: 1.45rem;
    box-shadow: 0 0 0 1px rgba(255,255,255,0.05), 0 0 18px rgba(25,167,255,0.08);
  }

  .mobile-nav-links{
    gap: 10px !important;
    padding-top: 4px;
  }

  .mobile-nav-section-label{
    margin-top: 8px;
    margin-bottom: 2px;
    padding: 0 4px;
    font-size: .74rem;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(143,214,255,0.7);
  }

  .mobile-nav-links a{
    min-height: 52px !important;
    padding: 0 16px !important;
    border-radius: 14px !important;
    background:
      linear-gradient(180deg, rgba(23,30,38,0.72), rgba(8,11,15,0.96)) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,0.02),
      0 8px 24px rgba(0,0,0,0.16);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
  }

  .mobile-nav-links a:hover,
  .mobile-nav-links a:active,
  .mobile-nav-links a:focus{
    transform: translateY(-1px);
    border-color: rgba(25,167,255,0.22) !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,0.03),
      0 10px 28px rgba(0,0,0,0.20),
      0 0 18px rgba(25,167,255,0.08);
  }

  .mobile-drawer-accordion{
    min-height: 52px !important;
    padding: 0 16px !important;
    border-radius: 14px !important;
    background:
      linear-gradient(180deg, rgba(23,30,38,0.72), rgba(8,11,15,0.96)) !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,0.02),
      0 8px 24px rgba(0,0,0,0.16);
  }

  .mobile-drawer-submenu{
    gap: 8px !important;
    padding-top: 2px !important;
  }

  .mobile-drawer-submenu a{
    min-height: 46px !important;
    padding: 0 14px !important;
    margin-left: 8px;
    border-radius: 13px !important;
  }

  .mobile-nav-currency{
    margin-top: 8px;
    padding-top: 14px;
    border-top: 1px solid rgba(255,255,255,0.06);
  }

  .mobile-nav-currency .theme-input{
    min-height: 44px !important;
    background:
      linear-gradient(180deg, rgba(23,30,38,0.72), rgba(8,11,15,0.96)) !important;
  }

  .mobile-quick-links a{
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.02);
  }
}

@media (max-width: 560px){
  .mobile-nav-title{
    font-size: 1.4rem;
  }

  .mobile-nav-links a,
  .mobile-drawer-accordion{
    min-height: 50px !important;
  }
}


/* Menu title fade on scroll + functional collapsible categories + better drawer scrolling */
@media (max-width: 900px){
  .mobile-nav-panel{
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
  }

  .mobile-nav-head{
    transition: opacity .22s ease, transform .22s ease;
  }

  .mobile-nav-panel.is-scrolled .mobile-nav-head{
    opacity: .16;
    transform: translateY(-6px);
    pointer-events: none;
  }

  .mobile-drawer-accordion{
    width: 100%;
    text-align: left;
  }

  .mobile-drawer-plus{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    transition: transform .2s ease, opacity .2s ease;
  }

  .mobile-drawer-accordion.is-open .mobile-drawer-plus{
    transform: rotate(45deg);
    opacity: .95;
  }

  .mobile-drawer-submenu{
    overflow: hidden;
  }

  .mobile-drawer-submenu[hidden]{
    display: none !important;
  }

  .mobile-nav-links{
    padding-bottom: 18px;
  }

  .mobile-nav-panel{
    padding-bottom: max(40px, env(safe-area-inset-bottom));
  }

  .mobile-nav-currency{
    margin-bottom: 8px;
  }
}


/* Fix category accordion expand/collapse */
@media (max-width: 900px){
  .mobile-drawer-group{
    display:grid;
    gap:8px;
  }

  .mobile-drawer-accordion{
    width:100%;
    appearance:none;
    -webkit-appearance:none;
    background:
      linear-gradient(180deg, rgba(23,30,38,0.72), rgba(8,11,15,0.96)) !important;
    border:1px solid rgba(255,255,255,0.06) !important;
  }

  .mobile-drawer-submenu{
    display:grid;
    gap:8px;
    padding-top:2px;
  }

  .mobile-drawer-submenu[hidden]{
    display:none !important;
  }

  .mobile-drawer-accordion.is-open + .mobile-drawer-submenu{
    display:grid !important;
  }

  .mobile-drawer-plus{
    transition: transform .2s ease;
  }

  .mobile-drawer-accordion.is-open .mobile-drawer-plus{
    transform: rotate(45deg);
  }
}


/* Bottom currency selector in fullscreen mobile menu */
@media (max-width: 900px){
  .mobile-nav-panel{
    grid-template-rows: auto 1fr auto !important;
  }

  .mobile-nav-currency-bottom{
    margin-top: 14px !important;
    padding-top: 14px !important;
    border-top: 1px solid rgba(255,255,255,0.06) !important;
    position: sticky;
    bottom: 0;
    background:
      linear-gradient(180deg, rgba(3,6,10,0), rgba(3,6,10,0.88) 20%, rgba(3,6,10,0.98) 100%);
    padding-bottom: max(14px, env(safe-area-inset-bottom));
  }

  .mobile-nav-currency-bottom .mobile-nav-label{
    display: block;
    margin-bottom: 8px;
  }

  .mobile-nav-currency-bottom .theme-input,
  .mobile-nav-currency-bottom .currency-select{
    width: 100% !important;
    min-height: 44px !important;
    border-radius: 14px !important;
    background:
      linear-gradient(180deg, rgba(23,30,38,0.72), rgba(8,11,15,0.96)) !important;
  }
}


/* Force-visible bottom currency selector in fullscreen mobile menu */
@media (max-width: 900px){
  .mobile-nav-panel{
    display: flex !important;
    flex-direction: column !important;
    overflow-y: auto !important;
  }

  .mobile-nav-links{
    flex: 1 1 auto !important;
    min-height: 0 !important;
  }

  .mobile-nav-currency-bottom{
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin-top: 16px !important;
    padding-top: 14px !important;
    border-top: 1px solid rgba(255,255,255,0.08) !important;
    background: linear-gradient(180deg, rgba(3,6,10,0), rgba(3,6,10,0.85) 18%, rgba(3,6,10,0.98) 100%) !important;
    position: sticky !important;
    bottom: 0 !important;
    z-index: 2 !important;
    padding-bottom: max(14px, env(safe-area-inset-bottom)) !important;
  }

  .mobile-nav-currency-bottom form{
    display: grid !important;
    gap: 8px !important;
  }

  .mobile-nav-currency-bottom .mobile-nav-label{
    display: block !important;
    font-size: .76rem !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    color: rgba(255,255,255,0.72) !important;
    margin: 0 !important;
  }

  .mobile-nav-currency-bottom .theme-input,
  .mobile-nav-currency-bottom .currency-select,
  .mobile-nav-currency-bottom select{
    display: block !important;
    width: 100% !important;
    min-height: 44px !important;
    border-radius: 14px !important;
    background: linear-gradient(180deg, rgba(23,30,38,0.72), rgba(8,11,15,0.96)) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
  }
}


/* Mobile menu currency selector inline in scroll flow */
@media (max-width: 900px){
  .mobile-nav-currency-inline{
    display: grid !important;
    gap: 8px !important;
    padding: 10px 4px 0 !important;
  }

  .mobile-nav-currency-inline form{
    display: grid !important;
    gap: 8px !important;
  }

  .mobile-nav-currency-inline .mobile-nav-label{
    display: block !important;
    margin: 0 !important;
    font-size: .76rem !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    color: rgba(255,255,255,0.72) !important;
  }

  .mobile-nav-currency-inline .theme-input,
  .mobile-nav-currency-inline .currency-select,
  .mobile-nav-currency-inline select{
    width: 100% !important;
    min-height: 44px !important;
    border-radius: 14px !important;
    background: linear-gradient(180deg, rgba(23,30,38,0.72), rgba(8,11,15,0.96)) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    display: block !important;
  }
}


/* MOBILE ONLY CATEGORY GRID */
@media (max-width: 900px){
  .mobile-nav-category-grid{
    display:grid !important;
    grid-template-columns:repeat(3, 1fr) !important;
    gap:8px !important;
    margin-bottom:10px !important;
  }

  .mobile-nav-category-grid a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    padding:10px 6px !important;
    border-radius:10px !important;
    background:rgba(255,255,255,0.03) !important;
    border:1px solid rgba(255,255,255,0.06) !important;
    color:#fff !important;
    font-size:.8rem !important;
  }
}


/* Homepage categories grid 2x3 */
.home-category-grid.grid-3x2{
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:16px !important;
}

@media (max-width:900px){
  .home-category-grid.grid-3x2{
    grid-template-columns:repeat(2,1fr) !important;
  }
}


/* Move categories section up on mobile */
@media (max-width: 900px){
  .home-category-section{
    margin-top: 0 !important;
    padding-top: 10px !important;
  }

  .hero-section{
    margin-bottom: 10px !important;
    padding-bottom: 0 !important;
  }
}

@media (max-width:900px){
  .hero-section{padding-bottom:0 !important;margin-bottom:0 !important;}
  .hero-actions{margin-bottom:10px !important;}
}



/* Mobile only: remove empty hero visual box above Shop by Category */
@media (max-width: 900px){
  .hero-visual,
  .hero-card,
  .hero-card-lux,
  .saber-line{
    display:none !important;
  }

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

  .hero-section{
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  .hero-copy{
    margin-bottom: 8px !important;
  }

  .home-category-section,
  .category-section,
  .shop-by-category{
    margin-top: 0 !important;
    padding-top: 8px !important;
  }
}


/* HARD REMOVE HERO BOX ON MOBILE */
@media (max-width: 900px){

  .hero-grid{
    display:block !important;
  }

  .hero-visual{
    display:none !important;
    height:0 !important;
    overflow:hidden !important;
    padding:0 !important;
    margin:0 !important;
  }

  .hero-grid > div:last-child{
    display:none !important;
  }

  /* remove any leftover spacing */
  .hero-section{
    padding-bottom:0 !important;
  }

  .hero-actions{
    margin-bottom:6px !important;
  }

}


/* SHOP BY CATEGORY - 2 rows of 3 */
.home-category-grid{
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:14px !important;
}

@media (max-width:900px){
  .home-category-grid{
    grid-template-columns:repeat(3,1fr) !important;
  }
}

@media (max-width:600px){
  .home-category-grid{
    grid-template-columns:repeat(2,1fr) !important;
  }
}


/* Actual Shop by Category grid fix */
.preview-grid.category-home-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:14px !important;
}

.preview-grid.category-home-grid .preview-card{
  min-height:220px !important;
}

@media (max-width: 900px){
  .preview-grid.category-home-grid{
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
    gap:10px !important;
  }

  .preview-grid.category-home-grid .preview-card{
    min-height:180px !important;
    padding:14px !important;
  }

  .preview-grid.category-home-grid .preview-card h3{
    font-size:1.05rem !important;
    line-height:1.15 !important;
  }

  .preview-grid.category-home-grid .preview-label{
    font-size:.72rem !important;
  }
}

@media (max-width: 600px){
  .preview-grid.category-home-grid{
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  }

  .preview-grid.category-home-grid .preview-card{
    min-height:150px !important;
    padding:12px !important;
  }

  .preview-grid.category-home-grid .preview-card h3{
    font-size:.88rem !important;
  }

  .preview-grid.category-home-grid .preview-label{
    font-size:.64rem !important;
    padding:6px 8px !important;
  }
}


/* Reliable mobile Shop accordion + drawer scroll */
@media (max-width: 900px){
  .mobile-nav-drawer{
    position: fixed !important;
    inset: 0 !important;
    z-index: 120 !important;
  }

  .mobile-nav-panel{
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    width: min(88vw, 360px) !important;
    max-width: 100vw !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow-y: auto !important;
    overscroll-behavior-y: contain !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
    scroll-snap-type: none !important;
    padding-bottom: calc(24px + env(safe-area-inset-bottom)) !important;
  }

  .mobile-nav-links,
  .mobile-nav-links *{
    scroll-snap-align: none !important;
    scroll-snap-stop: normal !important;
  }

  .mobile-shop-details{
    display: block !important;
  }

  .mobile-shop-summary{
    width: 100% !important;
    min-height: 46px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 14px !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,0.03) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    color: #fff !important;
    cursor: pointer !important;
    list-style: none !important;
  }

  .mobile-shop-summary::-webkit-details-marker{
    display: none !important;
  }

  .mobile-shop-plus{
    font-size: 1.1rem !important;
    line-height: 1 !important;
    transition: transform .2s ease !important;
  }

  .mobile-shop-details[open] .mobile-shop-plus{
    transform: rotate(45deg) !important;
  }

  .mobile-shop-submenu{
    display: grid !important;
    gap: 8px !important;
    padding-left: 6px !important;
    margin-top: 8px !important;
  }

  .mobile-shop-details:not([open]) .mobile-shop-submenu{
    display: none !important;
  }

  .mobile-shop-submenu a{
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 14px !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,0.02) !important;
    border: 1px solid rgba(255,255,255,0.05) !important;
  }

  .mobile-nav-currency-inline{
    margin-top: 8px !important;
    padding-bottom: 12px !important;
  }
}




/* =========================================================
   PRODUCT PAGE 1 DESKTOP + PRODUCT PAGE 2 MOBILE
   ========================================================= */
.desktop-product-page{ display:block; }
.mobile-product-page{ display:none; }

@media (max-width: 900px){
  .desktop-product-page{ display:none !important; }
  .mobile-product-page{ display:block !important; }
}

@media (max-width:900px){
  .mobile-product-page > section:first-child{ margin-top:0 !important; }
}
@media (min-width:901px){
  .desktop-product-page > section:first-child{ margin-top:0 !important; }
}


/* Imported Product Page 2 mobile styles */

.product-feature-pills{
  display:grid;
  gap:12px;
  margin-top:10px !important;
}

.feature-pill{
  display:flex;
  align-items:center;
  gap:14px;
  min-height:56px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.06);
  background:linear-gradient(180deg, rgba(24,29,36,0.62), rgba(10,12,16,0.92));
  color:#f4fbff;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.02),
    0 6px 18px rgba(0,0,0,0.14);
}

.feature-pill span{
  color:#8fd4ff;
  font-size:1.15rem;
  line-height:1;
  font-weight:700;
}

.feature-pill strong{
  font-size:1rem;
  font-weight:500;
  color:#eef7ff;
}

@media (max-width: 900px){
  .product-feature-pills{
    gap:10px !important;
    margin-top:8px !important;
  }

  .feature-pill{
    min-height:50px !important;
    padding:0 16px !important;
    gap:12px !important;
    border-radius:18px !important;
  }

  .feature-pill strong{
    font-size:.95rem !important;
    line-height:1.25 !important;
  }
}

@media (max-width: 560px){
  .feature-pill{
    min-height:48px !important;
    padding:0 14px !important;
    gap:10px !important;
    border-radius:16px !important;
  }

  .feature-pill span{
    font-size:1.05rem !important;
  }

  .feature-pill strong{
    font-size:.92rem !important;
  }
}


/* Force-visible feature pill section under Pair It With */
.product-feature-pills{
  display:grid !important;
  gap:12px !important;
  margin-top:12px !important;
  margin-bottom:0 !important;
}

.product-feature-pills .feature-pill{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  min-height:56px !important;
  padding:0 18px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,0.06) !important;
  background:linear-gradient(180deg, rgba(24,29,36,0.62), rgb

.feature-pill{
  display:flex;
  align-items:center;
  gap:14px;
  min-height:56px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.06);
  background:linear-gradient(180deg, rgba(24,29,36,0.62), rgba(10,12,16,0.92));
  color:#f4fbff;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.02),
    0 6px 18px rgba(0,0,0,0.14);
}

.feature-pill span{
  color:#8fd4ff;
  font-size:1.15rem;
  line-height:1;
  font-weight:700;
}

.feature-pill strong{
  font-size:1rem;
  font-weight:500;
  color:#eef7ff;
}

@media (max-width: 900px){
  .product-feature-pills{
    gap:10px !important;
    margin-top:8px !important;
  }

  .feature-pill{
    min-height:50px !important;
    padding:0 16px !important;
    gap:12px !important;
    border-radius:18px !important;
  }

  .feature-pill strong{
    font-size:.95rem !important;
    line-height:1.25 !important;
  }
}

@media (max-width: 560px){
  .feature-pill{
    min-height:48px !important;
    padding:0 14px !important;
    gap:10px !important;
    border-radius:16px !important;
  }

  .feature-pill span{
    font-size:1.05rem !important;
  }

  .feature-pill strong{
    font-size:.92rem !important;
  }
}


/* Force-visible feature pill section under Pair It With */
.product-feature-pills{
  display:grid !important;
  gap:12px !important;
  margin-top:12px !important;
  margin-bottom:0 !important;
}

.product-feature-pills .feature-pill{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  min-height:56px !important;
  padding:0 18px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,0.06) !important;
  background:linear-gradient(180deg, rgba(24,29,36,0.62), rgba(10,12,16,0.92)) !important;
  color:#f4fbff !important;
  box-shadow:
    inset 0 0

.product-photo-upsells-inline{
  margin-top: 10px !important;
  padding: 12px !important;
  border-radius: 16px !important;
}
.product-photo-upsells-inline .product-photo-upsells-head{
  margin-bottom: 8px !important;
}
.product-photo-upsells-inline .product-photo-upsells-head h3{
  font-size: 0.98rem !important;
}
.product-photo-upsells-inline .photo-upsell-grid{
  gap: 8px !important;
}
.product-photo-upsells-inline .photo-upsell-card{
  padding: 10px !important;
  gap: 8px !important;
  border-radius: 12px !important;
}
.product-photo-upsells-inline .photo-upsell-copy strong{
  font-size: .94rem;
}
.product-photo-upsells-inline .photo-upsell-copy span{
  font-size: .84rem;
}
.product-photo-upsells-inline .photo-upsell-btn{
  min-height: 42px !important;
}

@media (max-width: 900px){
  .product-buybox,
  .product-buybox-clean{
    padding: 16px !important;
    gap: 10px !important;
  }

  .product-topline{
    gap: 5px !important;
  }

  .product-price-stack{
    gap: 3px !important;
  }

  .product-value-strip{
    gap: 6px !important;
  }

  .instant-point{
    min-height: 34px !important;
    padding: 0 10px !important;
    font-size: .86rem !important;
  }

  .product-form-premium,
  .product-form-clean{
    gap: 10px !important;
  }

  .blade-size-option{
    min-height: 44px !important;
  }

  .product-add-btn,
  .product-buy-btn{
    min-height: 44px !important;
  }

  .iw-trust-item{
    font-size: .8rem !important;
    gap: 7px !important;
  }

  .product-photo-upsells-inline{
    padding: 12px !important;
    margin-top: 8px !important;
  }

  .product-photo-upsells-inline .photo-upsell-card{
    padding: 10px !important;
  }
}

@media (max-width: 560px){
  .product-buybox,
  .product-buybox-clean{
    padding: 14px !important;
  }

  .product-photo-upsells-

.pair-with-collapsible{
  padding: 12px !important;
}
.pair-with-collapsible summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 !important;
}
.pair-with-collapsible summary::-webkit-details-marker{
  display:none;
}
.pair-with-collapsible .product-photo-upsells-head::after{
  content:"+";
  font-size:1.1rem;
  line-height:1;
  color:#8fd4ff;
  transition: transform .2s ease;
}
.pair-with-collapsible[open] .product-photo-upsells-head::after{
  transform: rotate(45deg);
}
.pair-with-collapsible .photo-upsell-grid{
  margin-top:10px;
}
.pair-with-collapsible:not([open]) .photo-upsell-grid{
  display:none;
}

@media (max-width: 900px){
  .gallery-main,
  .product-media-frame{
    min-height: 340px !important;
  }
  .gallery-nav{
    width: 40px !important;
    height: 40px !important;
  }
  .product-topline{
    gap: 5px !important;
  }
  .product-form-premium,
  .product-form-clean{
    gap: 8px !important;
  }
  .product-value-strip{
    gap: 6px !important;
  }
  .pair-with-collapsible{
    margin-top: 8px !important;
    padding: 10px !important;
  }
  .pair-with-collapsible .product-photo-upsells-head h3{
    font-size: .95rem !important;
    margin:0;
  }
}

@media (max-width: 560px){
  .gallery-main,
  .product-media-frame{
    min-height: 300px !important;
  }
}


/* Fill product photo area on mobile and restore compact features flow */
@media (max-width: 900px){
  .gallery-main,
  .product-media-frame{
    min-height: 360px !important;
    background: #000 !important;
  }

  .gallery-slide,
  .gallery-slide.is-active{
    display:flex !important;
    align-items:stretch !important;
    justify-content:stretch !important;
    width:100% !important;
    height:100% !important;
  

.gallery-thumbs-row{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:10px;
  margin-top:12px;
}
.product-media-badges{
  position:absolute;
  left:16px;
  bottom:16px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  z-index:3;
}
.product-media-badges span{
  padding:8px 12px;
  border-radius:999px;
  font-size:.8rem;
  color:#dceeff;
  background:rgba(6,12,18,0.78);
  border:1px solid rgba(255,255,255,0.08);
  backdrop-filter:blur(10px);
}
.product-media-support-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:12px;
}
.product-buybox{
  position:sticky;
  top:104px;
}
.pdp-rating-row{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:12px;
}
.pdp-stars{
  color:#8fd4ff;
  letter-spacing:.16em;
}
.pdp-stars-copy{
  color:var(--muted);
  font-size:.92rem;
}
.product-price-stack{
  display:grid;
  gap:6px;
  margin:14px 0 14px;
}
.product-finance-note{
  color:var(--muted);
  font-size:.92rem;
}
.product-instant-points{
  display:grid;
  gap:10px;
  margin:16px 0;
}
.instant-point{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:46px;
  padding:0 14px;
  border-radius:14px;
  background:linear-gradient(180deg, rgba(21,27,34,0.74), rgba(8,10,13,0.94));
  border:1px solid rgba(255,255,255,0.06);
  color:#e7f5ff;
}
.instant-point::before{
  content:"✓";
  color:#8fd4ff;
  font-weight:800;
}
.product-proof-upgraded{
  margin:14px 0 18px;
}
.product-form-premium{
  display:grid;
  gap:16px;
}
.pdp-form-block{
  display:grid;
  gap:8px;
}
.quantity-row-premium{
  display:grid;
  gap:8px;
}
.product-cta-row-premium{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.product-assurance-list{
  display:grid;
  gap:8px;
  margin-top:16px;
  color:#dceeff;
  font-size:.92rem;
}
.product-bundle-box{


.product-feature-pills .feature-pill .feature-check{
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  display: inline-block !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 18px 18px !important;
  filter: drop-shadow(0 0 6px rgba(34,178,255,0.40)) !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'><path d='M20 6L9 17L4 12' stroke='%2322b2ff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/></svg>") !important;
}

.product-feature-pills .feature-pill .feature-check::before,
.product-feature-pills .feature-pill .feature-check::after{
  content: none !important;
}

@media (max-width: 900px){
  .product-feature-pills .feature-pill .feature-check{
    width: 16px !important;
    min-width: 16px !important;
    height: 16px !important;
    background-size: 16px 16px !important;
    filter: drop-shadow(0 0 4px rgba(34,178,255,0.34)) !important;
  }
}

@media (max-width: 560px){
  .product-feature-pills .feature-pill .feature-check{
    width: 15px !important;
    min-width: 15px !important;
    height: 15px !important;
    background-size: 15px 15px !important;
    filter: none !important;
  }
}


.product-feature-pills .feature-pill span{
  color:#8fd4ff !important;
  font-size:1.15rem !important;
  line-height:1 !important;
  font-weight:700 !important;
}

.product-feature-pills .feature-pill strong{
  font-size:1rem !important;
  font-weight:500 !important;
  color:#eef7ff !important;
}

@media (max-width: 900px){
  .product-feature-pills{
    gap:10px !important;
    margin-top:10px !important;
  }

  .product-feature-pills .feature-pill{
    min-height:50px !important;
    padding:0 16px !important;
    gap:12px !important;
    border-radius:18px !important;
  }

  .product-feature-pills .feature-pill strong{
    font-size:.95rem !important;
    line-height:1.25 !important;
  }
}

@media (max-width: 560px){
  .product-feature-pills .feature-pill{
    min-height:48px !important;
    padding:0 14px !important;
    gap:10px !important;
    border-radius:16px !important;
  }

  .product-feature-pills .feature-pill span{
    font-size:1.05rem !important;
  }

  .product-feature-pills .feature-pill strong{
    font-size:.92rem !important;
  }
}




/* Clean moved feature section under Pair It With */
.gallery-thumbs-row{ display:none !important; }

.product-photo-upsells-inline{
  margin-top: 10px !important;
  padding: 12px !important;
  border-radius: 16px !important;
}
.product-photo-upsells-inline .product-photo-upsells-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  list-style:none;
}
.product-photo-upsells-inline .product-photo-upsells-head::-webkit-details-marker{ display:none; }
.product-photo-upsells-inline .product-photo-upsells-head::after{
  content:"+";
  color:#8fd4ff;
  font-size:1.1rem;
  line-height:1;
  transition:transform .2s ease;
}
.product-photo-upsells-inline[open] .product-photo-

.product-feature-pills .feature-pill strong{
  font-size:1rem !important;
  font-weight:500 !important;
  color:#eef7ff !important;
}

@media (max-width: 900px){
  .product-feature-pills{
    gap:10px !important;
    margin-top:10px !important;
  }

  .product-feature-pills .feature-pill{
    min-height:50px !important;
    padding:0 16px !important;
    gap:12px !important;
    border-radius:18px !important;
  }

  .product-feature-pills .feature-pill strong{
    font-size:.95rem !important;
    line-height:1.25 !important;
  }
}

@media (max-width: 560px){
  .product-feature-pills .feature-pill{
    min-height:48px !important;
    padding:0 14px !important;
    gap:10px !important;
    border-radius:16px !important;
  }

  .product-feature-pills .feature-pill span{
    font-size:1.05rem !important;
  }

  .product-feature-pills .feature-pill strong{
    font-size:.92rem !important;
  }
}




/* Clean moved feature section under Pair It With */
.gallery-thumbs-row{ display:none !important; }

.product-photo-upsells-inline{
  margin-top: 10px !important;
  padding: 12px !important;
  border-radius: 16px !important;
}
.product-photo-upsells-inline .product-photo-upsells-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  list-style:none;
}
.product-photo-upsells-inline .product-photo-upsells-head::-webkit-details-marker{ display:none; }
.product-photo-upsells-inline .product-photo-upsells-head::after{
  content:"+";
  color:#8fd4ff;
  font-size:1.1rem;
  line-height:1;
  transition:transform .2s ease;
}
.product-photo-upsells-inline[open] .product-photo-upsells-head::after{ transform:rotate(45deg); }
.product-photo-upsells-inline .photo-upsell-grid{ margin-top:10px; }
.product-photo-upsells-inline:not([open]) .phot

/* Imported Product Page 2 mobile styles - hardened */
.product-feature-pills .feature-pill .feature-check{
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  display: inline-block !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 18px 18px !important;
}
@media (max-width:900px){
  .mobile-product-page .gallery-thumbs-row{ display:none !important; }
}




/* =========================================================
   HARD FORCE MOBILE V1 THEME PALETTE OVER RIDE
   ========================================================= */
:root,
.color-background-1,
.color-background-2,
.color-inverse,
.color-accent-1,
.color-accent-2,
.gradient{
  --color-background: 6,10,16 !important;
  --gradient-background: radial-gradient(circle at top, rgba(25,167,255,0.11), transparent 18%), linear-gradient(180deg, #060a10 0%, #000000 48%, #070b10 100%) !important;
  --color-foreground: 237,246,255 !important;
  --color-background-contrast: 148,166,185 !important;
  --color-shadow: 0,0,0 !important;
  --color-button: 34,178,255 !important;
  --color-button-text: 4,18,28 !important;
  --color-secondary-button: 6,10,16 !important;
  --color-secondary-button-text: 231,245,255 !important;
  --color-link: 143,214,255 !important;
  --color-badge-foreground: 237,246,255 !important;
  --color-badge-background: 6,10,16 !important;
  --color-badge-border: 255,255,255 !important;
  --payment-terms-background-color: rgb(6,10,16) !important;
}

body,
body.gradient,
.color-background-1,
.color-background-2,
.gradient{
  background: radial-gradient(circle at top, rgba(25,167,255,0.11), transparent 18%), linear-gradient(180deg, #060a10 0%, #000000 48%, #070b10 100%) !important;
  color: #edf6ff !important;
}

body,
p,
.rte,
.article-template__content,
.card__information,
.caption,
.caption-with-letter-spacing,
.subtitle,
.subheading,
.field__label,
.customer *{
  color: #94a6b9 !important;
}

h1,h2,h3,h4,h5,h6,
.h0,.h1,.h2,.h3,.h4,.h5,
.eyebrow,.brand-mark,.page-title,.hero-card-title,.builder-group-title,.quiz-label,.quiz-question,.quiz-progress-label,
.header__heading-link,.header__menu-item,.menu-drawer__menu-item,
.button,.button--primary,.button--secondary,
.card__heading,.full-unstyled-link,
.price,.price-item,
.badge{
  color: #edf6ff !important;
}

a,
.link,
.link--text,
.announcement-bar a,
.header__menu-item:hover,
.list-menu__item--link:hover{
  color: #8fd6ff !important;
}

.button,
.button-primary,
.button--primary,
.shopify-payment-button__button--unbranded{
  background: linear-gradient(180deg, #22b2ff 0%, #0c8fe4 100%) !important;
  color: #04121c !important;
  border: none !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.08), 0 0 24px rgba(25,167,255,0.28) !important;
}

.button-secondary,
.button--secondary,
.shopify-payment-button__button--branded,
.pill-card{
  border: 1px solid rgba(25,167,255,0.24) !important;
  background: rgba(255,255,255,0.02) !important;
  color: #e7f5ff !important;
}

.card,
.card-wrapper .card,
.collection-card,
.article-card,
.product-card-wrapper .card,
.contains-card--product,
.contains-card--collection,
.contains-card--article,
.shopify-section .gradient,
.shopify-section .color-background-1,
.shopify-section .color-background-2{
  background: linear-gradient(180deg, rgba(31,41,51,0.68), rgba(11,16,22,0.86)) !important;
  border-color: rgba(255,255,255,0.08) !important;
  color: #edf6ff !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.04), 0 16px 46px rgba(0,0,0,0.42), 0 0 30px rgba(25,167,255,0.10) !important;
}

.field__input,
.select__select,
.customer select,
.customer input,
input,
textarea,
select,
.theme-input{
  background: linear-gradient(180deg, rgba(31,41,51,0.70), rgba(11,16,22,0.88)) !important;
  color: #fff !important;
  border-color: rgba(25,167,255,0.18) !important;
}

.header-wrapper,
.header,
.site-header,
.section-header,
.menu-drawer,
.predictive-search,
.localization-form,
.disclosure__list-wrapper,
.header__submenu,
.mega-menu__content{
  background: rgba(0,0,0,0.82) !important;
  border-color: rgba(255,255,255,0.08) !important;
  color: #edf6ff !important;
}

.announcement-bar{
  background: linear-gradient(90deg, rgba(25,167,255,0.12), rgba(255,255,255,0.02), rgba(25,167,255,0.12)) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
.announcement-bar *{
  color: #d9f1ff !important;
}

.badge,
.price__badge-sale,
.price__badge-sold-out{
  background: rgba(25,167,255,0.12) !important;
  color: #edf6ff !important;
  border-color: rgba(25,167,255,0.28) !important;
}



/* REMOVE REMAINING YELLOW / GOLD ACCENTS */
:root{
  --blue:#19a7ff !important;
}

/* Stars, ratings, icons, badges, accents */
.pdp-stars,
.rating,
.rating-star,
.icon-star,
.star-rating,
[class*="star"],
[class*="rating"] svg,
[class*="rating"] .icon,
svg[class*="icon-star"]{
  color:#22b2ff !important;
  fill:#22b2ff !important;
  stroke:#22b2ff !important;
}

.preview-label,
.badge,
.price__badge-sale,
.price__badge-sold-out,
.card__badge,
.product__badge,
.predictive-search__result-mark,
mark,
ins,
.sale-badge,
.shopify-payment-button__more-options,
.accent,
[class*="accent"]{
  color:#8fd6ff !important;
  border-color:rgba(25,167,255,0.28) !important;
}

/* Kill common yellow/orange backgrounds */
[style*="#ffd"],
[style*="#fcd"],
[style*="#fab"],
[style*="yellow"],
[style*="gold"],
[style*="orange"]{
  color:#8fd6ff !important;
}

/* Force section labels and small pills away from warm tones */
.preview-label,
.eyebrow,
.mobile-nav-section-label,
.product-media-badges span,
.instant-point,
.feature-pill span,
.compare-pill{
  color:#8fd6ff !important;
  text-shadow:none !important;
}

/* Some themes use filter hue shifts or currentColor; normalize */
svg,
.icon{
  color:inherit;
}


/* HARD KILL REMAINING RIDE YELLOW/GREEN SECTIONS */
.announcement-bar,
.announcement-bar.color-accent-1,
.announcement-bar.color-accent-2,
.section-header-shopify-section-group-header-group-announcement-bar,
.shopify-section-group-header-group .announcement-bar,
[id*="shopify-section-group-header-group-announcement-bar"]{
  background: linear-gradient(90deg, rgba(25,167,255,0.12), rgba(255,255,255,0.02), rgba(25,167,255,0.12)) !important;
  color: #d9f1ff !important;
  --color-background: 6,10,16 !important;
  --color-foreground: 217,241,255 !important;
}

.announcement-bar *,
.section-header-shopify-section-group-header-group-announcement-bar *,
[id*="shopify-section-group-header-group-announcement-bar"] *{
  color: #d9f1ff !important;
  background: transparent !important;
}

.newsletter,
.newsletter.color-accent-1,
.newsletter.color-accent-2,
.shopify-section .newsletter,
[id*="newsletter"] .newsletter,
.footer,
.footer.color-accent-1,
.footer.color-accent-2,
.footer:not(.color-background-1),
.shopify-section-group-footer-group .footer,
[id*="shopify-section-footer"] .footer{
  background: radial-gradient(circle at top, rgba(25,167,255,0.11), transparent 18%), linear-gradient(180deg, #060a10 0%, #000000 48%, #070b10 100%) !important;
  color: #edf6ff !important;
  --color-background: 6,10,16 !important;
  --color-foreground: 237,246,255 !important;
}

.newsletter *,
.footer *,
[id*="newsletter"] *,
[id*="shopify-section-footer"] *{
  color: inherit !important;
}

.newsletter-form__field-wrapper .field__input,
.newsletter-form__field-wrapper input,
.newsletter-form__field-wrapper .field,
.newsletter__wrapper .field,
.footer .field__input,
.footer input,
.footer select{
  background: linear-gradient(180deg, rgba(31,41,51,0.70), rgba(11,16,22,0.88)) !important;
  color: #fff !important;
  border-color: rgba(25,167,255,0.18) !important;
}

.newsletter .button,
.newsletter button,
.footer .button,
.footer button{
  background: linear-gradient(180deg, #22b2ff 0%, #0c8fe4 100%) !important;
  color: #04121c !important;
  border-color: transparent !important;
}

.color-accent-1,
.color-accent-2{
  background: radial-gradient(circle at top, rgba(25,167,255,0.11), transparent 18%), linear-gradient(180deg, #060a10 0%, #000000 48%, #070b10 100%) !important;
  color: #edf6ff !important;
  --color-background: 6,10,16 !important;
  --color-foreground: 237,246,255 !important;
  --gradient-background: radial-gradient(circle at top, rgba(25,167,255,0.11), transparent 18%), linear-gradient(180deg, #060a10 0%, #000000 48%, #070b10 100%) !important;
}

/* Catch bright promo/background blocks used by Ride */
[class*="color-accent"] *,
[class*="gradient"] .newsletter *,
[class*="gradient"] .footer *{
  border-color: rgba(25,167,255,0.18) !important;
}

/* Keep headings white in newsletter/footer */
.newsletter h1, .newsletter h2, .newsletter h3, .newsletter h4,
.footer h1, .footer h2, .footer h3, .footer h4{
  color: #edf6ff !important;
}

/* Small muted copy */
.newsletter p, .footer p, .footer .copyright__content, .footer .list-menu__item--link{
  color: #94a6b9 !important;
}




/* =========================================================
   HEADER POLISH PASS
   ========================================================= */

/* Desktop header */
.site-header{
  background: rgba(3, 7, 12, 0.84) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  backdrop-filter: blur(18px) !important;
  box-shadow: 0 8px 28px rgba(0,0,0,0.18) !important;
}

.header-top{
  gap: 20px !important;
  padding: 12px 0 !important;
}

.brand-mark{
  letter-spacing: 0.08em !important;
  font-size: 0.98rem !important;
}

.header-search{
  max-width: 620px !important;
}

.header-search .theme-input{
  min-height: 46px !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, rgba(26,34,43,0.78), rgba(10,14,20,0.92)) !important;
  border: 1px solid rgba(25,167,255,0.16) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03) !important;
}

.header-search .theme-input:focus{
  border-color: rgba(34,178,255,0.42) !important;
  box-shadow: 0 0 0 1px rgba(34,178,255,0.24), 0 0 18px rgba(34,178,255,0.12) !important;
}

.header-actions{
  gap: 10px !important;
}

.currency-wrap,
.currency-form{
  min-width: 96px !important;
}

.currency-select{
  min-height: 44px !important;
  padding-right: 34px !important;
}

.header-icon-btn{
  min-height: 44px !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  font-size: 0.92rem !important;
  border: 1px solid rgba(25,167,255,0.16) !important;
  background: linear-gradient(180deg, rgba(31,41,51,0.62), rgba(11,16,22,0.84)) !important;
  color: #ecf8ff !important;
}

.header-nav-wrap{
  background: rgba(6,10,15,0.9) !important;
  border-top: 1px solid rgba(255,255,255,0.04) !important;
}

.nav-layout{
  min-height: 56px !important;
}

.main-nav{
  gap: 22px !important;
  flex-wrap: nowrap !important;
}

.main-nav > a,
.nav-dropdown-toggle{
  position: relative !important;
  font-size: 0.94rem !important;
  color: #dbeaf7 !important;
  min-height: 40px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.main-nav > a::after,
.nav-dropdown-toggle::after{
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -7px !important;
  width: 100% !important;
  height: 2px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, rgba(34,178,255,0), rgba(34,178,255,0.9), rgba(34,178,255,0)) !important;
  opacity: 0 !important;
  transform: scaleX(0.72) !important;
  transition: opacity .22s ease, transform .22s ease !important;
}

.main-nav > a:hover::after,
.nav-dropdown:hover .nav-dropdown-toggle::after,
.nav-dropdown:focus-within .nav-dropdown-toggle::after{
  opacity: 1 !important;
  transform: scaleX(1) !important;
}

.nav-dropdown-menu{
  top: calc(100% + 10px) !important;
  min-width: 280px !important;
  padding: 12px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  background: linear-gradient(180deg, rgba(22,30,39,0.96), rgba(8,11,15,0.98)) !important;
  box-shadow: 0 18px 40px rgba(0,0,0,0.28), 0 0 0 1px rgba(255,255,255,0.03) !important;
}

.nav-dropdown-menu a{
  min-height: 42px !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 12px !important;
  border-radius: 12px !important;
  color: #e7f5ff !important;
}

.nav-dropdown-menu a:hover{
  background: rgba(34,178,255,0.08) !important;
  color: #fff !important;
}

/* Mobile header */
@media (max-width: 900px){
  .mobile-header{
    background: rgba(3,7,12,0.88) !important;
  }

  .mobile-header-top{
    min-height: 62px !important;
    gap: 10px !important;
  }

  .mobile-header-btn{
    min-width: 42px !important;
    min-height: 42px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(25,167,255,0.14) !important;
    background: linear-gradient(180deg, rgba(31,41,51,0.62), rgba(11,16,22,0.84)) !important;
    color: #ecf8ff !important;
  }

  .mobile-brand-mark{
    font-size: 0.86rem !important;
    letter-spacing: 0.08em !important;
  }

  .mobile-header-search-wrap{
    padding-top: 8px !important;
    padding-bottom: 10px !important;
  }

  .mobile-header-search{
    gap: 8px !important;
  }

  .mobile-header-search .theme-input{
    min-height: 44px !important;
    border-radius: 999px !important;
    padding: 0 16px !important;
    background: linear-gradient(180deg, rgba(26,34,43,0.78), rgba(10,14,20,0.92)) !important;
    border: 1px solid rgba(25,167,255,0.16) !important;
  }

  .mobile-nav-panel{
    background: linear-gradient(180deg, rgba(8,12,18,0.98), rgba(3,6,10,0.99)) !important;
    border-left: 1px solid rgba(255,255,255,0.07) !important;
    box-shadow: -16px 0 50px rgba(0,0,0,0.28) !important;
  }

  .mobile-nav-head{
    position: sticky !important;
    top: 0 !important;
    z-index: 5 !important;
    background: linear-gradient(180deg, rgba(8,12,18,0.98), rgba(8,12,18,0.92)) !important;
    backdrop-filter: blur(14px) !important;
    border-bottom: 1px solid rgba(255,255,255,0.05) !important;
  }

  .mobile-nav-title{
    font-size: 1.22rem !important;
  }

  .mobile-nav-kicker{
    color: rgba(143,214,255,0.72) !important;
    letter-spacing: 0.1em !important;
  }

  .mobile-nav-links > a,
  .mobile-nav-category-grid a,
  .mobile-shop-summary,
  .mobile-shop-submenu a{
    min-height: 46px !important;
    border-radius: 12px !important;
  }

  .mobile-nav-section-label{
    margin-top: 6px !important;
    margin-bottom: 6px !important;
    color: rgba(143,214,255,0.72) !important;
    letter-spacing: 0.08em !important;
  }

  .mobile-nav-backdrop{
    backdrop-filter: blur(4px) !important;
    background: rgba(0,0,0,0.38) !important;
  }
}




/* =========================================================
   OBVIOUS HEADER REDESIGN
   Targets BOTH Ride header and V1 header so the change is visible
   ========================================================= */

/* Ride header */
.header-wrapper{
  background: linear-gradient(180deg, rgba(4,8,14,0.96) 0%, rgba(2,5,9,0.92) 100%) !important;
  border-bottom: 1px solid rgba(34,178,255,0.20) !important;
  box-shadow: 0 14px 38px rgba(0,0,0,0.26), 0 0 24px rgba(25,167,255,0.08) !important;
  position: sticky !important;
}

.header-wrapper::after{
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -1px !important;
  height: 1px !important;
  background: linear-gradient(90deg, rgba(34,178,255,0), rgba(34,178,255,0.85), rgba(34,178,255,0)) !important;
  pointer-events: none !important;
}

.header{
  padding-top: 1.4rem !important;
  padding-bottom: 1.4rem !important;
}

.header__heading-link,
.header__heading-link .h2{
  color: #ffffff !important;
  font-weight: 800 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
}

.header__inline-menu{
  align-self: center !important;
}

.header__menu-item,
.list-menu__item--link{
  color: #dfefff !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.03em !important;
}

.header__menu-item:hover,
.list-menu__item--link:hover,
.header__active-menu-item{
  color: #8fd6ff !important;
}

.header__submenu,
.mega-menu__content{
  background: linear-gradient(180deg, rgba(12,18,26,0.98), rgba(6,10,15,0.99)) !important;
  border: 1px solid rgba(34,178,255,0.16) !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 42px rgba(0,0,0,0.32), 0 0 24px rgba(34,178,255,0.08) !important;
}

.header__submenu .header__menu-item,
.mega-menu__link{
  border-radius: 12px !important;
}

.header__submenu .header__menu-item:hover,
.mega-menu__link:hover{
  background: rgba(34,178,255,0.10) !important;
  color: #ffffff !important;
}

.header__icon,
.header__icon span,
.header__icon svg{
  color: #edf6ff !important;
  fill: currentColor !important;
}

.header__icon:hover{
  color: #8fd6ff !important;
}

.disclosure__button,
.localization-form,
.localization-selector.link{
  color: #dfefff !important;
}

/* V1 header */
.site-header{
  background: linear-gradient(180deg, rgba(4,8,14,0.96) 0%, rgba(2,5,9,0.92) 100%) !important;
  border-bottom: 1px solid rgba(34,178,255,0.20) !important;
  box-shadow: 0 14px 38px rgba(0,0,0,0.26), 0 0 24px rgba(25,167,255,0.08) !important;
}

.site-header::after{
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -1px !important;
  height: 1px !important;
  background: linear-gradient(90deg, rgba(34,178,255,0), rgba(34,178,255,0.85), rgba(34,178,255,0)) !important;
  pointer-events: none !important;
}

.desktop-header .header-top{
  padding-top: 14px !important;
  padding-bottom: 14px !important;
  gap: 22px !important;
}

.brand-mark{
  color: #ffffff !important;
  font-weight: 800 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
}

.header-search .theme-input,
.mobile-header-search .theme-input{
  min-height: 48px !important;
  background: linear-gradient(180deg, rgba(26,34,43,0.82), rgba(10,14,20,0.94)) !important;
  border: 1px solid rgba(34,178,255,0.18) !important;
  border-radius: 999px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03), 0 0 0 1px rgba(255,255,255,0.01) !important;
}

.header-search .theme-input:focus,
.mobile-header-search .theme-input:focus{
  border-color: rgba(34,178,255,0.40) !important;
  box-shadow: 0 0 0 1px rgba(34,178,255,0.22), 0 0 18px rgba(34,178,255,0.10) !important;
}

.header-icon-btn,
.mobile-header-btn{
  min-height: 44px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(34,178,255,0.16) !important;
  background: linear-gradient(180deg, rgba(31,41,51,0.64), rgba(11,16,22,0.86)) !important;
  color: #edf6ff !important;
}

.header-nav-wrap{
  background: rgba(5,9,14,0.92) !important;
  border-top: 1px solid rgba(255,255,255,0.04) !important;
}

.main-nav{
  gap: 24px !important;
}

.main-nav > a,
.nav-dropdown-toggle{
  color: #dfefff !important;
  font-weight: 600 !important;
  letter-spacing: 0.03em !important;
}

.main-nav > a:hover,
.nav-dropdown-toggle:hover{
  color: #8fd6ff !important;
}

.nav-dropdown-menu{
  background: linear-gradient(180deg, rgba(12,18,26,0.98), rgba(6,10,15,0.99)) !important;
  border: 1px solid rgba(34,178,255,0.16) !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 42px rgba(0,0,0,0.32), 0 0 24px rgba(34,178,255,0.08) !important;
}

.nav-dropdown-menu a:hover{
  background: rgba(34,178,255,0.10) !important;
}

@media screen and (max-width: 989px){
  .header{
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .mobile-header{
    background: linear-gradient(180deg, rgba(4,8,14,0.96) 0%, rgba(2,5,9,0.92) 100%) !important;
    border-bottom: 1px solid rgba(34,178,255,0.18) !important;
  }

  .mobile-header-top{
    min-height: 64px !important;
  }

  .mobile-brand-mark{
    font-size: 0.90rem !important;
    letter-spacing: 0.10em !important;
  }

  .menu-drawer,
  .mobile-nav-panel{
    background: linear-gradient(180deg, rgba(10,14,20,0.98), rgba(3,6,10,0.99)) !important;
    box-shadow: -16px 0 44px rgba(0,0,0,0.32), 0 0 24px rgba(34,178,255,0.06) !important;
  }
}




/* =========================================================
   BANNER POLISH
   ========================================================= */
.utility-bar,
.announcement-bar,
[id*="announcement-bar"],
.section-header-shopify-section-group-header-group-announcement-bar{
  position: relative !important;
}

.utility-bar{
  background: linear-gradient(90deg, rgba(8,18,30,0.96) 0%, rgba(16,52,86,0.92) 50%, rgba(8,18,30,0.96) 100%) !important;
  border-bottom: 1px solid rgba(34,178,255,0.22) !important;
  box-shadow: inset 0 -1px 0 rgba(255,255,255,0.03), 0 10px 24px rgba(0,0,0,0.12) !important;
}

.utility-bar::before{
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 20% 50%, rgba(34,178,255,0.14), transparent 24%),
    radial-gradient(circle at 80% 50%, rgba(34,178,255,0.12), transparent 22%);
  pointer-events: none !important;
}

.announcement-bar__message,
.announcement-bar__announcement{
  color: #ecf8ff !important;
}

.announcement-bar__message{
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

.announcement-bar__message span,
.announcement-bar__link,
.utility-bar a{
  color: #ecf8ff !important;
}

.announcement-bar__link:hover,
.utility-bar a:hover{
  color: #8fd6ff !important;
}

.utility-bar .slider-button{
  color: #cfeeff !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,0.04) !important;
}

.utility-bar .slider-button:hover{
  background: rgba(34,178,255,0.12) !important;
  color: #ffffff !important;
}

@media screen and (max-width: 989px){
  .utility-bar{
    background: linear-gradient(90deg, rgba(7,16,28,0.98) 0%, rgba(13,42,70,0.96) 50%, rgba(7,16,28,0.98) 100%) !important;
  }

  .announcement-bar__message{
    font-size: 0.8rem !important;
    letter-spacing: 0.03em !important;
    line-height: 1.2 !important;
  }
}




/* =========================================================
   VISUAL CATEGORY MEGA MENU
   ========================================================= */
.iw-categories-menu {
  position: relative;
}

.iw-category-mega,
.iw-category-mega-wrap {
  min-width: 980px !important;
  padding: 16px 18px !important;
  border-radius: 20px !important;
  border: 1px solid rgba(34,178,255,0.14) !important;
  background: linear-gradient(180deg, rgba(10,16,24,0.98), rgba(5,9,14,0.99)) !important;
  box-shadow: 0 22px 48px rgba(0,0,0,0.34), 0 0 26px rgba(34,178,255,0.06) !important;
}

.iw-category-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 12px !important;
  align-items: stretch !important;
}

.iw-category-tile {
  min-height: 108px !important;
  display: grid !important;
  align-content: center !important;
  justify-items: center !important;
  text-align: center !important;
  gap: 10px !important;
  padding: 14px 10px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255,255,255,0.06) !important;
  background: linear-gradient(180deg, rgba(18,26,36,0.75), rgba(8,12,18,0.92)) !important;
  color: #edf6ff !important;
  text-decoration: none !important;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease !important;
}

.iw-category-tile:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(34,178,255,0.24) !important;
  background: linear-gradient(180deg, rgba(24,36,50,0.84), rgba(10,14,20,0.96)) !important;
  box-shadow: 0 10px 22px rgba(0,0,0,0.18), 0 0 18px rgba(34,178,255,0.08) !important;
}

.iw-category-icon {
  width: 42px !important;
  height: 42px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  border: 1px solid rgba(34,178,255,0.18) !important;
  background: linear-gradient(180deg, rgba(20,34,48,0.9), rgba(10,16,24,0.96)) !important;
  color: #8fd6ff !important;
  font-size: 1.2rem !important;
  line-height: 1 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03) !important;
}

.iw-category-icon svg {
  width: 22px !important;
  height: 22px !important;
  display: block !important;
}

.iw-category-icon .iw-icon-custom {
  display: inline-block !important;
  font-size: 1.2rem !important;
  line-height: 1 !important;
}

.iw-category-copy {
  display: grid !important;
  gap: 4px !important;
}

.iw-category-copy strong {
  color: #ffffff !important;
  font-size: 0.88rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em !important;
}

.iw-category-copy small {
  color: #9db4c8 !important;
  font-size: 0.72rem !important;
  line-height: 1.2 !important;
}

@media screen and (max-width: 989px) {
  .iw-category-mega,
  .iw-category-mega-wrap {
    min-width: 0 !important;
    width: 100% !important;
    padding: 12px !important;
  }

  .iw-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .iw-category-tile {
    min-height: 92px !important;
  }
}




/* =========================================================
   CATEGORY MEGA MENU: OVERLAY MODE
   Prevent header from stretching when Categories opens
   ========================================================= */

.iw-categories-menu{
  position: relative !important;
}

.iw-categories-menu > summary{
  list-style: none !important;
}

.iw-categories-menu > summary::-webkit-details-marker{
  display: none !important;
}

/* Desktop: make panel overlay instead of affecting header height */
@media screen and (min-width: 990px){
  .iw-categories-menu{
    position: relative !important;
  }

  .iw-categories-menu > .iw-category-mega,
  .iw-categories-menu > .iw-category-mega-wrap,
  .iw-categories-menu > .mega-menu__content{
    position: absolute !important;
    top: calc(100% + 14px) !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(1080px, calc(100vw - 80px)) !important;
    min-width: 980px !important;
    z-index: 80 !important;
    margin: 0 !important;
  }

  .iw-categories-menu:not([open]) > .iw-category-mega,
  .iw-categories-menu:not([open]) > .iw-category-mega-wrap,
  .iw-categories-menu:not([open]) > .mega-menu__content{
    display: none !important;
  }

  .iw-categories-menu[open]{
    z-index: 81 !important;
  }

  /* keep nav row stable */
  .header__inline-menu,
  .main-nav,
  .nav-layout{
    overflow: visible !important;
  }

  .header-wrapper,
  .site-header,
  .header-nav-wrap{
    overflow: visible !important;
  }

  /* prevent summary/details from becoming tall block elements */
  .iw-categories-menu,
  .iw-categories-menu > summary{
    display: inline-flex !important;
    align-items: center !important;
  }

  /* tighten tile panel spacing */
  .iw-category-mega,
  .iw-category-mega-wrap{
    padding: 16px 18px !important;
  }
}

/* Mobile/tablet: keep it stacked so it's usable in smaller layouts */
@media screen and (max-width: 989px){
  .iw-categories-menu > .iw-category-mega,
  .iw-categories-menu > .iw-category-mega-wrap,
  .iw-categories-menu > .mega-menu__content{
    position: static !important;
    transform: none !important;
    width: 100% !important;
    min-width: 0 !important;
  }
}


/* FORCE CATEGORY GRID INTO ONE ROW */
.iw-category-grid{
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

.iw-category-tile{
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

/* Optional: tighten spacing for more items */
.iw-category-mega,
.iw-category-mega-wrap{
  max-width: 1200px !important;
}


/* Shop directory page */
.shop-directory-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:16px !important;
}

.shop-directory-grid .preview-card{
  min-height:180px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-end !important;
}

@media (max-width: 900px){
  .shop-directory-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap:12px !important;
  }

  .shop-directory-grid .preview-card{
    min-height:150px !important;
  }
}


/* Target the actual "EXPLORE THE LINEUP" text (eyebrow label) */
.section-heading .eyebrow,
.preview-label {
  font-size: 1.1rem !important;
  letter-spacing: 0.18em !important;
  font-weight: 700 !important;
}



/* V2 + Mobile V1 styling integration */

/* Colors */
:root {
  --color-background: #05080c;
  --color-foreground: #eaf6ff;
  --color-accent: #22b2ff;
}

/* Spacing improvements */
.section-heading {
  margin-bottom: 24px !important;
}

.preview-grid {
  gap: 16px !important;
}

/* Mobile spacing */
@media (max-width: 900px){
  .page-width {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .section-heading {
    margin-bottom: 18px !important;
  }

  .preview-grid {
    gap: 12px !important;
  }
}

/* Text sizing from Mobile V1 */
.preview-label,
.eyebrow {
  font-size: 1.05rem !important;
}

.card__heading,
.preview-card h3 {
  font-size: 1.05rem !important;
}


/* Force full black background everywhere */
body,
html,
.section,
.section-template,
.gradient,
.color-background,
.background,
.main-content {
  background-color: #000000 !important;
}

.page-width {
  background-color: transparent !important;
}

/* Remove grey tones */
* {
  --color-background: #000000 !important;
}

/* Fix: remove inner container backgrounds */
.page-width{background:transparent!important;}
.section{background:transparent!important;}


.hero-video-bg{
  position:absolute;
  inset:0;
  overflow:hidden;
  pointer-events:none;
}

.hero-video-bg .hero-video-bg-media,
.hero-video-bg video{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}


/* Website V3 hero media background fix */
.hero-section{
  position:relative;
}

.hero-video-bg{
  position:absolute;
  inset:0;
  overflow:hidden;
  pointer-events:none;
  z-index:0;
}

.hero-video-bg::after{
  content:"";
  position:absolute;
  inset:0;
}

.hero-video-bg .hero-video-bg-media,
.hero-video-bg .hero-video-bg-media video,
.hero-video-bg video{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.hero-section .hero-bg-layer{
  z-index:1;
}

.hero-section .hero-grid{
  position:relative;
  z-index:2;
}


/* Website V3 hero video background scaling fix */
.hero-section{
  position:relative;
  isolation:isolate;
}

.hero-video-bg{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
}

.hero-video-bg .hero-video-bg-media{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}

.hero-section .hero-bg-layer{
  position:absolute;
  inset:0;
  z-index:1;
}

.hero-section .hero-grid{
  position:relative;
  z-index:2;
}


/* Website V3 hero background media placement parity fix */
.hero-section{
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

.hero-video-bg{
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  overflow:hidden !important;
  pointer-events:none !important;
}

.hero-video-bg .hero-video-bg-media,
.hero-video-bg video{
  position:absolute !important;
  top:50% !important;
  left:50% !important;
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  transform:translate(-50%, -50%) !important;
  display:block !important;
}


.feature-bg-media{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
}
.feature-spotlight-bg::after,
.feature-detail-bg::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0.12), rgba(0,0,0,0.62));
  z-index:0;
}
.feature-spotlight-bg > .feature-bg-media,
.feature-detail-bg > .feature-bg-media{
  z-index:-1;
}

/* === Cart theme cleanup: remove yellow accents, match Imperial Workshop blue === */
cart-items .title-wrapper-with-link .underlined-link,
#main-cart-footer .cart__checkout-button,
#main-cart-footer button[name="checkout"],
cart-items cart-remove-button .button,
cart-items cart-remove-button .button--tertiary,
cart-items .quantity__button,
cart-items .quantity__button .svg-wrapper,
cart-items .cart-item__name:hover,
cart-items a:hover,
#main-cart-footer a:hover {
  color: #8fd6ff !important;
}

#main-cart-footer .cart__checkout-button,
#main-cart-footer button[name="checkout"],
button[name="checkout"].cart__checkout-button,
.cart__checkout-button.button {
  background: linear-gradient(180deg, #22b2ff 0%, #0c8fe4 100%) !important;
  color: #04121c !important;
  border: none !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.08), 0 0 24px rgba(25,167,255,0.28) !important;
}

#main-cart-footer .cart__checkout-button:hover,
#main-cart-footer button[name="checkout"]:hover,
button[name="checkout"].cart__checkout-button:hover {
  background: linear-gradient(180deg, #34bcff 0%, #1499ee 100%) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.10), 0 0 28px rgba(25,167,255,0.36) !important;
}

cart-items .title-wrapper-with-link .underlined-link,
cart-items .cart__warnings .button,
cart-items cart-remove-button .button,
cart-items cart-remove-button .button--tertiary {
  color: #8fd6ff !important;
  border-color: rgba(25,167,255,0.24) !important;
}

cart-items cart-remove-button .button:hover,
cart-items cart-remove-button .button--tertiary:hover,
cart-items .title-wrapper-with-link .underlined-link:hover,
cart-items .cart__warnings .button:hover {
  color: #d9f1ff !important;
  border-color: rgba(25,167,255,0.38) !important;
}

cart-items .quantity,
cart-items .quantity__input,
cart-items .quantity__button {
  border-color: rgba(255,255,255,0.14) !important;
}

cart-items .quantity__button:hover,
cart-items .quantity__button:focus-visible {
  background: rgba(25,167,255,0.08) !important;
}

cart-items cart-remove-button .button .icon,
cart-items cart-remove-button .button svg,
cart-items .quantity__button svg,
cart-items .quantity__button .icon,
cart-items .svg-wrapper svg {
  fill: currentColor !important;
  stroke: currentColor !important;
}








/* V7 icon fit fix */
.iw-category-icon{
  width: 58px !important;
  height: 58px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  border-radius: 16px !important;
}

.iw-category-icon img,
.iw-category-icon .iw-category-icon-image-tag{
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 16px !important;
}

.iw-category-icon--image{
  background: linear-gradient(180deg, rgba(16,24,34,0.95), rgba(9,14,22,0.92)) !important;
  border: 1px solid rgba(46, 158, 255, 0.18) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.02), 0 0 18px rgba(0, 133, 255, 0.08) !important;
}

.iw-category-icon--image .iw-category-icon-image-tag{
  padding: 6px !important;
  box-sizing: border-box !important;
}
