/* Scooter — Premium electric mobility (dark agency) */

.sn-theme-anim-layer { pointer-events:none; position:fixed; inset:0; z-index:0; overflow:hidden; }
.sn-theme-anim-layer > * { position:absolute; inset:0; }
.sn-theme-scooter .scooter-main,
.sn-theme-terracotta .terracotta-main,
.sn-theme-arcade .arcade-main { position: relative; z-index: 1; }
.sn-theme-anim-speed-slow { --sn-anim-mult: 1.6; }
.sn-theme-anim-speed-normal { --sn-anim-mult: 1; }
.sn-theme-anim-speed-fast { --sn-anim-mult: .55; }
.sn-theme-anim-layer * { animation-duration: calc(var(--sn-anim-base, 10s) * var(--sn-anim-mult, 1)); }

.sn-theme-scooter {
  --sn-theme-code: 'scooter';
  --scooter-accent: #b8ff3c;
  --scooter-accent-dark: #9ad914;
  --scooter-accent-light: #d4ff70;
  --scooter-bg: #0a0c10;
  --scooter-text: #e2e8f0;
  --scooter-top-bar-height: 0rem;
  --scooter-header-height: 4rem;
  --scooter-header-stack-height: calc(var(--scooter-header-height) + 1px);
  --scooter-hero-height: calc(100vh - var(--scooter-header-stack-height));
  font-family: 'Outfit', 'Space Grotesk', Inter, sans-serif;
}
.sn-theme-scooter .scooter-display,
.sn-theme-scooter .scooter-brand {
  font-family: 'Outfit', 'Space Grotesk', sans-serif;
}

/* Scooter dark surfaces */
.sn-theme-scooter { color: var(--scooter-text); background: var(--scooter-bg); }
.sn-theme-scooter .scooter-header { background: rgba(11,11,20,.85); backdrop-filter: blur(12px); border-bottom: 1px solid rgba(184,255,60,.2); }
.sn-theme-scooter .scooter-footer { background: #07080b; border-top: 1px solid rgba(184,255,60,.15); }
.sn-theme-scooter .scooter-sticky-cart { background: #9ad914; color: #0a0c10; box-shadow: 0 8px 24px rgba(0,0,0,.35); }
.sn-theme-scooter .scooter-hero-overlay-gradient { background: linear-gradient(135deg, rgba(154,217,20,.75), rgba(0,232,200,.55), rgba(11,11,20,.4)); }
.sn-theme-scooter .scooter-product-card { background: rgba(255,255,255,.04); border: 1px solid rgba(184,255,60,.18); border-radius: 1rem; }
.sn-theme-scooter .scooter-anim-starfield { background-image: radial-gradient(2px 2px at 20% 30%, #fff, transparent), radial-gradient(2px 2px at 60% 70%, rgba(184,255,60,.8), transparent), radial-gradient(1px 1px at 50% 50%, #fff, transparent); background-size: 200px 200px; animation: scooter-star-drift 80s linear infinite; opacity: .35; }
.sn-theme-scooter .scooter-anim-aurora { background: linear-gradient(120deg, transparent, rgba(154,217,20,.35), rgba(0,232,200,.25), transparent); animation: scooter-aurora-shift 12s ease-in-out infinite alternate; }
.sn-theme-scooter .scooter-anim-orbit span { position:absolute; border-radius:50%; filter: blur(40px); animation: scooter-orbit 18s ease-in-out infinite; }
.sn-theme-scooter .scooter-anim-orbit span:nth-child(1){width:220px;height:220px;background:#9ad914;top:10%;left:5%}
.sn-theme-scooter .scooter-anim-orbit span:nth-child(2){width:180px;height:180px;background:#00e8c8;top:40%;right:10%;animation-delay:-6s}
.sn-theme-scooter .scooter-anim-orbit span:nth-child(3){width:140px;height:140px;background:#00c4ff;bottom:15%;left:35%;animation-delay:-12s}
.sn-theme-scooter.scooter-anim-card-glow .scooter-product-card:hover { box-shadow: 0 0 32px rgba(184,255,60,.35); transform: translateY(-4px); }
.sn-theme-scooter.scooter-anim-card-lift .scooter-product-card:hover { transform: translateY(-8px) scale(1.01); }
.sn-theme-scooter.scooter-anim-scroll-reveal .scooter-home-section { animation: scooter-fade-up .8s ease both; }
@keyframes scooter-star-drift { from{background-position:0 0} to{background-position:-400px 600px} }
@keyframes scooter-aurora-shift { from{transform:translateX(-8%) skewY(-2deg)} to{transform:translateX(8%) skewY(2deg)} }
@keyframes scooter-orbit { 0%,100%{transform:translate(0,0)} 50%{transform:translate(30px,-20px)} }
@keyframes scooter-fade-up { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:none} }

@media (min-width: 768px) {
  .sn-theme-scooter {
    --scooter-header-height: 4.5rem;
  }
}

@supports (height: 100dvh) {
  .sn-theme-scooter {
    --scooter-hero-height: calc(100dvh - var(--scooter-header-stack-height));
  }
}

/* Faster, reliable taps on touch devices (no double-tap zoom delay). */
.sn-theme-scooter button,
.sn-theme-scooter a,
.sn-theme-scooter label,
.sn-theme-scooter [role='button'] {
  touch-action: manipulation;
}

/* Header — single bar, no top strip */
.sn-theme-scooter #scooter-header {
  top: 0;
}

.sn-theme-scooter.template-editor-active #scooter-header {
  top: 2rem;
}

/* Scrolled / pinned: header locks to top of viewport */
.sn-theme-scooter.scooter-scrolled #scooter-header,
body.sn-theme-scooter.scooter-scrolled #scooter-header {
  top: 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.sn-theme-scooter .scooter-header-inner {
  height: 4rem;
}

@media (min-width: 768px) {
  .sn-theme-scooter .scooter-header-inner {
    height: 4.5rem;
  }
}

/* Logo — full size with top bar visible; smaller when top bar is hidden on scroll */
.sn-theme-scooter .scooter-header-logo {
  max-height: 2.5rem;
  transition: max-height 0.3s ease;
}

@media (min-width: 768px) {
  .sn-theme-scooter .scooter-header-logo {
    max-height: 3rem;
  }
}

.sn-theme-scooter.scooter-scrolled .scooter-header-inner,
body.sn-theme-scooter.scooter-scrolled .scooter-header-inner {
  height: 3.5rem;
}

@media (min-width: 768px) {
  .sn-theme-scooter.scooter-scrolled .scooter-header-inner,
  body.sn-theme-scooter.scooter-scrolled .scooter-header-inner {
    height: 4rem;
  }
}

.sn-theme-scooter.scooter-scrolled .scooter-header-logo,
body.sn-theme-scooter.scooter-scrolled .scooter-header-logo {
  max-height: 1.5rem;
}

@media (min-width: 768px) {
  .sn-theme-scooter.scooter-scrolled .scooter-header-logo,
  body.sn-theme-scooter.scooter-scrolled .scooter-header-logo {
    max-height: 1.75rem;
  }
}

.sn-theme-scooter.template-editor-active.scooter-scrolled #scooter-header,
body.sn-theme-scooter.template-editor-active.scooter-scrolled #scooter-header {
  top: 2rem;
}

/* Main content offset — static per header state (avoid JS padding changes on scroll). */
.sn-theme-scooter .scooter-main {
  padding-top: var(--scooter-header-stack-height);
}

.sn-theme-scooter.scooter-scrolled .scooter-main,
body.sn-theme-scooter.scooter-scrolled .scooter-main {
  padding-top: calc(4rem + 1px);
}

@media (min-width: 768px) {
  .sn-theme-scooter.scooter-scrolled .scooter-main,
  body.sn-theme-scooter.scooter-scrolled .scooter-main {
    padding-top: calc(4.5rem + 1px);
  }
}

/* Editor toolbar adds h-12 spacer before <main> — subtract that from padding. */
.sn-theme-scooter.template-editor-active .scooter-main {
  padding-top: calc(2rem + 2.5rem + 4rem + 1px - 3rem);
}

@media (min-width: 768px) {
  .sn-theme-scooter.template-editor-active .scooter-main {
    padding-top: calc(2rem + 2.5rem + 5rem + 1px - 3rem);
  }
}

.sn-theme-scooter.template-editor-active.scooter-scrolled .scooter-main,
body.sn-theme-scooter.template-editor-active.scooter-scrolled .scooter-main {
  padding-top: calc(2rem + 4rem + 1px - 3rem);
}

@media (min-width: 768px) {
  .sn-theme-scooter.template-editor-active.scooter-scrolled .scooter-main,
  body.sn-theme-scooter.template-editor-active.scooter-scrolled .scooter-main {
    padding-top: calc(2rem + 5rem + 1px - 3rem);
  }
}

.sn-theme-scooter .scooter-main:has(.checkout-page) {
  padding-top: 0;
}

.sn-theme-scooter .safe-shop-banner {
  display: inline-flex;
  line-height: 0;
}

.sn-theme-scooter .safe-shop-banner img {
  display: block;
  width: 80px;
  height: 80px;
}

.sn-theme-scooter .scooter-safeshop-widget {
  width: 100%;
  max-width: 100%;
}

.sn-theme-scooter .scooter-safeshop-widget__iframe {
  display: block;
  border: 0;
}

.sn-theme-scooter ::selection {
  background: var(--scooter-accent);
  color: #0a0c10;
}

.sn-theme-scooter ::-webkit-scrollbar { width: 8px; }
.sn-theme-scooter ::-webkit-scrollbar-track { background: #12151c; }
.sn-theme-scooter ::-webkit-scrollbar-thumb { background: var(--scooter-accent); border-radius: 4px; }

.sn-theme-scooter .text-blue-600 { color: var(--scooter-accent) !important; }
.sn-theme-scooter .bg-blue-600 { background-color: var(--scooter-accent) !important; }
.sn-theme-scooter .bg-green-600 { background-color: var(--scooter-accent) !important; }

/* Homepage hero: fill viewport below fixed header stack (top bar + nav). */
.sn-theme-scooter .scooter-hero-slide,
.sn-theme-scooter .scooter-hero-swiper {
  min-height: var(--scooter-hero-height);
  height: var(--scooter-hero-height);
}

.sn-theme-scooter .scooter-hero-swiper .swiper-wrapper,
.sn-theme-scooter .scooter-hero-swiper .swiper-slide {
  height: 100%;
}
.sn-theme-scooter .scooter-product-tile { transition: transform 0.3s ease; }

.sn-theme-scooter #scooter-header .scooter-header-icon {
  color: #fff;
}

.sn-theme-scooter #scooter-header .scooter-header-icon:hover {
  color: #d4ff70;
}

.sn-theme-scooter .scooter-header-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem;
  color: #000;
  transition: color 0.2s ease;
}

.sn-theme-scooter .scooter-header-icon-svg {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}

.sn-theme-scooter .scooter-header-icon--cart {
  margin-right: 0.125rem;
}

.sn-theme-scooter .scooter-header-cart-count {
  position: absolute;
  top: -0.2rem;
  right: -0.35rem;
  min-width: 1rem;
  min-height: 1rem;
}

.sn-theme-scooter .scooter-cart-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.125rem;
  height: 1.125rem;
  padding: 0 0.25rem;
  border: 2px solid #fff;
  border-radius: 9999px;
  background: #000;
  color: #fff;
  font-size: 0.625rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  font-variant-numeric: tabular-nums;
}

.sn-theme-scooter .variation-attr-btn.is-selected,
.sn-theme-scooter .variation-btn.is-selected {
  background-color: #000 !important;
  color: #fff !important;
  border-color: #000 !important;
}

.sn-theme-scooter .scooter-qty-input {
  -moz-appearance: textfield;
  appearance: textfield;
}

.sn-theme-scooter .scooter-checkout-option.is-selected,
.sn-theme-scooter .scooter-checkout-option:has(input:checked) {
  background-color: #000 !important;
  color: #fff !important;
  border-color: #000 !important;
}

.sn-theme-scooter .scooter-input:focus {
  outline: none;
  box-shadow: 0 0 0 1px #000;
}

@media (min-width: 1024px) {
  .sn-theme-scooter .checkout-page .lg\:flex {
    align-items: flex-start;
  }
}

.sn-theme-scooter .scooter-hero-swiper .swiper-pagination-bullet-active {
  background: #fff !important;
}

.sn-theme-scooter .sn-cart-qty-input {
  -moz-appearance: textfield;
  appearance: textfield;
}
.sn-theme-scooter .sn-cart-qty-input::-webkit-outer-spin-button,
.sn-theme-scooter .sn-cart-qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Legal page */
.sn-theme-scooter .scooter-legal-page {
  background-color: #f7f7f5;
}

.sn-theme-scooter .scooter-legal-card {
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.sn-theme-scooter .scooter-legal-card__header {
  position: relative;
  padding-left: 1.75rem;
}

@media (min-width: 768px) {
  .sn-theme-scooter .scooter-legal-card__header {
    padding-left: 2.25rem;
  }
}

.sn-theme-scooter .scooter-legal-card__header::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background-color: var(--scooter-accent);
}

.sn-theme-scooter .scooter-legal-editor-zone {
  border-radius: 0;
}

.sn-theme-scooter .scooter-legal-editor-zone .editor-edit-btn {
  top: 1rem;
  right: 1rem;
}

.sn-theme-scooter.template-editor-active .scooter-legal-nav {
  top: calc(2rem + 2.5rem + 4rem);
}

@media (min-width: 768px) {
  .sn-theme-scooter.template-editor-active .scooter-legal-nav {
    top: calc(2rem + 2.5rem + 5rem);
  }
}

.sn-theme-scooter.scooter-scrolled .scooter-legal-nav,
body.sn-theme-scooter.scooter-scrolled .scooter-legal-nav {
  top: calc(4rem + 1px);
}

@media (min-width: 768px) {
  .sn-theme-scooter.scooter-scrolled .scooter-legal-nav,
  body.sn-theme-scooter.scooter-scrolled .scooter-legal-nav {
    top: calc(5rem + 1px);
  }
}

.sn-theme-scooter.template-editor-active.scooter-scrolled .scooter-legal-nav,
body.sn-theme-scooter.template-editor-active.scooter-scrolled .scooter-legal-nav {
  top: calc(2rem + 4rem + 1px);
}

@media (min-width: 768px) {
  .sn-theme-scooter.template-editor-active.scooter-scrolled .scooter-legal-nav,
  body.sn-theme-scooter.template-editor-active.scooter-scrolled .scooter-legal-nav {
    top: calc(2rem + 5rem + 1px);
  }
}

.sn-theme-scooter .scooter-legal-prose a {
  color: var(--scooter-accent);
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Account area */
.sn-theme-scooter .scooter-account-label {
  display: block;
  margin-bottom: 0.5rem;
  font-size: 0.75rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #000;
}

.sn-theme-scooter .scooter-account-input {
  width: 100%;
  border: 1px solid #000;
  background: #fff;
  padding: 0.75rem 1rem;
  font-size: 0.875rem;
  color: #000;
}

.sn-theme-scooter .scooter-account-input::placeholder {
  color: #9ca3af;
}

.sn-theme-scooter .scooter-account-input:focus {
  outline: none;
  box-shadow: 0 0 0 1px #000;
}

.sn-theme-scooter .scooter-account-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 1.5rem;
  font-size: 0.75rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
}

.sn-theme-scooter .scooter-account-btn--primary {
  border: 1px solid #000;
  color: #000;
  background: #fff;
}

.sn-theme-scooter .scooter-account-btn--secondary {
  border: 1px solid #000;
  color: #000;
  background: #fff;
}

.sn-theme-scooter .scooter-account-alert {
  padding: 0.875rem 1rem;
  font-size: 0.875rem;
  border: 1px solid;
}

.sn-theme-scooter .scooter-account-alert--success {
  background: rgba(184,255,60,0.10);
  border-color: #bbf7d0;
  color: #166534;
}

.sn-theme-scooter .scooter-account-alert--error {
  background: #fef2f2;
  border-color: #fecaca;
  color: #991b1b;
}

.sn-theme-scooter .scooter-account-card-link {
  display: block;
  padding: 1.5rem;
  border: 1px solid #000;
  background: #fff;
  transition: opacity 0.2s ease;
}

.sn-theme-scooter .scooter-account-order-card {
  border: 1px solid #000;
  background: #fff;
  transition: opacity 0.2s ease;
}

.sn-theme-scooter .scooter-account-panel {
  border: 1px solid #000;
  background: #fff;
}

.sn-theme-scooter .scooter-account-panel__header {
  border-bottom: 1px solid #000;
  padding: 1rem 1.5rem;
  background: #fff;
}

.sn-theme-scooter .scooter-account-panel__body {
  padding: 1.5rem;
}

.sn-theme-scooter .scooter-account-auth {
  background: #fff;
}

/* Cart added modal */
.scooter-cart-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(2px);
}

.scooter-cart-modal__viewport {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  pointer-events: none;
}

.scooter-cart-modal__panel {
  position: relative;
  width: 100%;
  max-width: 28rem;
  background: #fff;
  border: 1px solid #000;
  padding: 1.5rem;
  pointer-events: auto;
  animation: scooter-cart-modal-in 0.22s ease;
}

@keyframes scooter-cart-modal-in {
  from {
    opacity: 0;
    transform: translateY(0.5rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.scooter-cart-modal__close {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  color: #000;
  transition: opacity 0.2s ease;
}

.scooter-cart-modal__close-icon {
  width: 1.125rem;
  height: 1.125rem;
}

.scooter-cart-modal__status {
  margin-bottom: 1rem;
}

.scooter-cart-modal__status-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 1px solid #000;
  color: #000;
}

.scooter-cart-modal__status-icon svg {
  width: 1rem;
  height: 1rem;
}

.scooter-cart-modal__eyebrow {
  margin: 0 0 0.35rem;
  font-size: 0.625rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--scooter-accent);
}

.scooter-cart-modal__title {
  margin: 0;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #000;
  line-height: 1.3;
}

.scooter-cart-modal__product {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 1.25rem;
  padding: 1rem 0;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}

.scooter-cart-modal__image-wrap {
  flex-shrink: 0;
  width: 4.5rem;
  height: 4.5rem;
  border: 1px solid #e5e7eb;
  background: #f3f4f6;
  overflow: hidden;
}

.scooter-cart-modal__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.scooter-cart-modal__product-name {
  margin: 0;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #000;
  line-height: 1.45;
}

.scooter-cart-modal__hint {
  margin: 1rem 0 0;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: #4b5563;
}

.scooter-cart-modal__actions {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 1.25rem;
}

@media (min-width: 480px) {
  .scooter-cart-modal__actions {
    flex-direction: row;
  }
}

.scooter-cart-modal__btn {
  display: inline-flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0.75rem 1rem;
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
}

.scooter-cart-modal__btn--secondary {
  border: 1px solid #000;
  color: #000;
  background: #fff;
}

.scooter-cart-modal__btn--primary {
  border: 1px solid #000;
  color: #fff;
  background: #000;
}

/* Search modal + autocomplete */
body.scooter-search-open {
  overflow: hidden;
}

.scooter-search-modal {
  position: fixed;
  inset: 0;
  z-index: 110;
  overflow-y: auto;
}

.scooter-search-modal__backdrop {
  position: fixed;
  inset: 0;
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(4px);
}

.scooter-search-modal__panel {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 48rem;
  margin: 0 auto;
  min-height: 100vh;
  padding: 1.5rem 1rem 2rem;
  animation: scooter-search-modal-in 0.22s ease;
}

@media (min-width: 768px) {
  .scooter-search-modal__panel {
    padding: 3rem 1.5rem 2rem;
  }
}

@keyframes scooter-search-modal-in {
  from {
    opacity: 0;
    transform: translateY(-0.5rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.scooter-search-modal__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.25rem;
}

.scooter-search-modal__eyebrow {
  margin: 0;
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--scooter-accent);
}

.scooter-search-modal__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  color: #000;
  transition: opacity 0.2s ease;
}

.scooter-search-modal__close svg {
  width: 1.25rem;
  height: 1.25rem;
}

.scooter-search-modal__hint {
  margin: 1rem 0 0;
  font-size: 0.75rem;
  color: #6b7280;
}

.scooter-search-form {
  position: relative;
}

.scooter-search-form__field {
  display: flex;
  align-items: stretch;
  border: 1px solid #000;
  background: #fff;
}

.scooter-search-form--page .scooter-search-form__field {
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.04);
}

.scooter-search-form__icon {
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
  margin: auto 0 auto 1rem;
  color: #000;
}

.scooter-search-form__input {
  flex: 1;
  min-width: 0;
  border: 0;
  background: transparent;
  padding: 1rem 0.75rem;
  font-size: 1rem;
  color: #000;
}

.scooter-search-form__input:focus {
  outline: none;
}

.scooter-search-form__input::placeholder {
  color: #9ca3af;
}

.scooter-search-form__submit {
  flex-shrink: 0;
  border: 0;
  border-left: 1px solid #000;
  background: #000;
  color: #fff;
  padding: 0 1.25rem;
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.scooter-search-suggest {
  position: absolute;
  top: calc(100% + 0.5rem);
  left: 0;
  right: 0;
  z-index: 20;
  max-height: min(24rem, 60vh);
  overflow: auto;
  border: 1px solid #000;
  background: #fff;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.08);
}

.scooter-search-form--page .scooter-search-suggest {
  position: relative;
  top: 0.75rem;
}

.scooter-search-suggest__item {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  padding: 0.75rem 1rem;
  border-bottom: 1px solid #f3f4f6;
  color: #000;
  text-decoration: none;
  transition: background-color 0.15s ease;
}

.scooter-search-suggest__item:last-child {
  border-bottom: 0;
}

.scooter-search-suggest__item.is-active {
  background: #f9fafb;
}

.scooter-search-suggest__image {
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
  object-fit: cover;
  border: 1px solid #e5e7eb;
  background: #f3f4f6;
}

.scooter-search-suggest__image--empty {
  display: block;
}

.scooter-search-suggest__meta {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-width: 0;
}

.scooter-search-suggest__name {
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.35;
}

.scooter-search-suggest__price {
  font-size: 0.8125rem;
  color: #4b5563;
}

/* Header — hamburger samo na mobilu */
@media (min-width: 1024px) {
  .sn-theme-scooter .scooter-header-menu-btn,
  .sn-theme-scooter #scooter-mobile-menu {
    display: none !important;
  }
}

/* Contact page */
.scooter-contact-editor-zone .editor-edit-btn {
  top: 0.5rem;
  right: 0.5rem;
}

.scooter-contact-info {
  border: 1px solid #000;
  padding: 1.5rem;
  background: #fff;
}

.scooter-contact-info__title {
  margin: 0 0 1.25rem;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #000;
}

.scooter-contact-info__list {
  margin: 0;
}

.scooter-contact-info__item + .scooter-contact-info__item {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid #e5e7eb;
}

.scooter-contact-info__item dt {
  margin: 0 0 0.35rem;
  font-size: 0.625rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #6b7280;
}

.scooter-contact-info__item dd {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #000;
}

.scooter-contact-info__item a {
  color: #000;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.scooter-contact-label {
  display: block;
  margin-bottom: 0.5rem;
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #000;
}

.scooter-contact-input {
  display: block;
  width: 100%;
  border: 1px solid #000;
  background: #fff;
  padding: 0.75rem 1rem;
  font-size: 0.875rem;
  color: #000;
}

.scooter-contact-input:focus {
  outline: none;
  box-shadow: 0 0 0 1px #000;
}

.scooter-contact-input.is-invalid {
  border-color: #00e8c8;
}

.scooter-contact-input::placeholder {
  color: #9ca3af;
}

.scooter-contact-input--textarea {
  min-height: 9rem;
}

.scooter-contact-upload {
  border: 2px dashed #d1d5db;
  padding: 2rem 1rem;
  text-align: center;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}

.scooter-contact-upload.is-dragover {
  border-color: #000;
  background: #f9fafb;
}

.scooter-contact-upload__icon {
  width: 2rem;
  height: 2rem;
  margin: 0 auto 0.75rem;
  color: #9ca3af;
}

.scooter-contact-upload__text {
  font-size: 0.75rem;
  color: #4b5563;
}

.scooter-contact-upload__link {
  cursor: pointer;
  color: #000;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.scooter-contact-upload__hint {
  margin: 0.5rem 0 0;
  font-size: 0.6875rem;
  color: #9ca3af;
}

.scooter-contact-preview {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: 1rem;
}

@media (min-width: 768px) {
  .scooter-contact-preview {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.scooter-contact-preview__item {
  position: relative;
  aspect-ratio: 1 / 1;
  border: 1px solid #e5e7eb;
  overflow: hidden;
}

.scooter-contact-preview__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.scooter-contact-preview__remove {
  position: absolute;
  top: 0.35rem;
  right: 0.35rem;
  width: 1.5rem;
  height: 1.5rem;
  border: 0;
  background: #000;
  color: #fff;
  font-size: 1rem;
  line-height: 1;
  cursor: pointer;
}

.scooter-contact-submit {
  width: 100%;
  border: 1px solid #000;
  background: #fff;
  color: #000;
  padding: 0.875rem 1.5rem;
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  transition: background-color 0.2s ease, color 0.2s ease, opacity 0.2s ease;
}

.scooter-contact-form.is-submitting .scooter-contact-submit {
  opacity: 0.6;
  cursor: wait;
}

.scooter-contact-form__alert {
  padding: 0.875rem 1rem;
  font-size: 0.875rem;
  border: 1px solid;
}

.scooter-contact-form__alert.is-success {
  background: rgba(184,255,60,0.10);
  border-color: #bbf7d0;
  color: #166534;
}

.scooter-contact-form__alert.is-error {
  background: #fef2f2;
  border-color: #fecaca;
  color: #991b1b;
}

/* Decorative hovers only on true hover pointers — prevents double-tap on phones/tablets. */
@media (hover: hover) and (pointer: fine) {
  .sn-theme-scooter .hover\:text-blue-600:hover {
    color: var(--scooter-accent) !important;
  }

  .sn-theme-scooter .hover\:bg-blue-700:hover {
    background-color: var(--scooter-orange-dark) !important;
  }

  .sn-theme-scooter .hover\:bg-green-700:hover {
    background-color: var(--scooter-orange-dark) !important;
  }

  .sn-theme-scooter .scooter-product-tile:hover {
    transform: scale(1.02);
  }

  .sn-theme-scooter .scooter-header-icon:hover {
    color: var(--scooter-accent);
  }

  .sn-theme-scooter .variation-attr-btn:not(.is-selected):not(:disabled):hover,
  .sn-theme-scooter .variation-btn:not(.is-selected):not(:disabled):hover {
    background-color: #000 !important;
    color: #fff !important;
  }

  .sn-theme-scooter .scooter-checkout-option:not(.is-selected):hover {
    background-color: #000 !important;
    color: #fff !important;
  }

  .sn-theme-scooter .scooter-legal-card:hover {
    border-color: #d1d5db;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04);
  }

  .sn-theme-scooter .scooter-legal-prose a:hover {
    color: var(--scooter-orange-dark);
  }

  .sn-theme-scooter .scooter-account-btn--primary:hover {
    background: #000;
    color: #fff;
  }

  .sn-theme-scooter .scooter-account-btn--secondary:hover {
    opacity: 0.7;
  }

  .sn-theme-scooter .scooter-account-card-link:hover {
    opacity: 0.85;
  }

  .sn-theme-scooter .scooter-account-order-card:hover {
    opacity: 0.75;
  }

  .scooter-cart-modal__close:hover {
    opacity: 0.55;
  }

  .scooter-cart-modal__btn--secondary:hover {
    background: #000;
    color: #fff;
  }

  .scooter-cart-modal__btn--primary:hover {
    background: var(--scooter-accent);
    border-color: var(--scooter-accent);
  }

  .scooter-search-modal__close:hover {
    opacity: 0.55;
  }

  .scooter-search-form__submit:hover {
    background: var(--scooter-accent);
  }

  .scooter-search-suggest__item:hover {
    background: #f9fafb;
  }

  .scooter-contact-info__item a:hover {
    color: var(--scooter-accent);
  }

  .scooter-contact-upload__link:hover {
    opacity: 0.7;
  }

  .scooter-contact-submit:hover {
    background: #000;
    color: #fff;
  }
}

/* Product gallery — seamless inline video (Freitag PDP) */
.sn-theme-scooter .scooter-gallery-stage.is-video-active {
  background: #fff;
}

.sn-theme-scooter .scooter-gallery-video {
  background: #fff;
  border: 0;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
}

.sn-theme-scooter .scooter-gallery-video::-webkit-media-controls {
  display: none !important;
}

.sn-theme-scooter .scooter-gallery-video::-webkit-media-controls-enclosure {
  display: none !important;
}

.sn-theme-scooter .scooter-gallery-video-unmute {
  position: absolute;
  right: 0.75rem;
  bottom: 0.75rem;
  z-index: 12;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 9999px;
  background: rgba(255, 255, 255, 0.88);
  color: #000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.sn-theme-scooter .scooter-gallery-stage.is-video-active:hover .scooter-gallery-video-unmute,
.sn-theme-scooter .scooter-gallery-video-unmute:focus-visible {
  opacity: 1;
  pointer-events: auto;
}

.sn-theme-scooter .scooter-gallery-video-unmute:hover {
  background: #fff;
  border-color: #000;
}

.sn-theme-scooter .scooter-gallery-video-unmute__icon {
  width: 1rem;
  height: 1rem;
}

/* ─── Pulse interior pages ─── */
.sn-theme-scooter .scooter-page {
  background: var(--scooter-ink);
  min-height: calc(100vh - var(--scooter-header-stack-height));
}

.sn-theme-scooter .scooter-page-body {
  background: var(--scooter-ink);
}

.sn-theme-scooter .scooter-page-hero {
  background: linear-gradient(135deg, rgba(184,255,60,0.10) 0%, #0f1218 45%, #ede9fe 100%);
  border-bottom: 1px solid rgba(184, 255, 60, 0.08);
}

.sn-theme-scooter .scooter-page-hero--compact {
  padding-bottom: 0;
}

.sn-theme-scooter .scooter-page-hero__title {
  font-family: 'Outfit', Inter, sans-serif;
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 600;
  color: #111827;
  line-height: 1.15;
  margin-top: 1rem;
}

.sn-theme-scooter .scooter-page-hero__subtitle {
  margin-top: 0.75rem;
  max-width: 42rem;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #6b7280;
}

.sn-theme-scooter .scooter-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.5rem;
  font-size: 0.8125rem;
}

.sn-theme-scooter .scooter-breadcrumbs__link {
  color: #b8ff3c;
  transition: color 0.2s;
}

.sn-theme-scooter .scooter-breadcrumbs__link:hover {
  color: #9ad914;
}

.sn-theme-scooter .scooter-breadcrumbs__sep {
  color: #c4b5fd;
}

.sn-theme-scooter .scooter-breadcrumbs__current {
  color: #374151;
  font-weight: 500;
}

.sn-theme-scooter .scooter-display {
  font-family: 'Outfit', Inter, sans-serif;
}

.sn-theme-scooter .scooter-kicker {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #b8ff3c;
  margin-bottom: 0.75rem;
}

.sn-theme-scooter .scooter-card {
  background: #fff;
  border: 1px solid rgba(184, 255, 60, 0.1);
  border-radius: 1rem;
  box-shadow: 0 1px 3px rgba(184, 255, 60, 0.04);
}

.sn-theme-scooter .scooter-card--padded {
  padding: 1.5rem;
}

@media (min-width: 768px) {
  .sn-theme-scooter .scooter-card--padded {
    padding: 2rem;
  }
}

.sn-theme-scooter .scooter-card__header {
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid rgba(184, 255, 60, 0.08);
  background: linear-gradient(180deg, rgba(184,255,60,0.10) 0%, #fff 100%);
}

.sn-theme-scooter .scooter-card__body {
  padding: 1.5rem;
}

.sn-theme-scooter .scooter-btn {
  display: inline-flex;
  align-items: center;
  padding: 0.75rem 1.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  border-radius: 9999px;
  transition: background-color 0.2s, color 0.2s, border-color 0.2s;
}

.sn-theme-scooter .scooter-btn--primary {
  background: #9ad914;
  color: #0a0c10;
  box-shadow: none;
}

.sn-theme-scooter .scooter-btn--primary:hover:not(:disabled) {
  background: #b0e628;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
}

.sn-theme-scooter .scooter-btn--secondary {
  background: #fff;
  color: #b8ff3c;
  border: 1px solid rgba(184, 255, 60, 0.25);
}

.sn-theme-scooter .scooter-btn--secondary:hover {
  background: rgba(184,255,60,0.10);
  border-color: #b8ff3c;
}

.sn-theme-scooter .scooter-text-link {
  font-size: 0.875rem;
  font-weight: 500;
  color: #b8ff3c;
  transition: color 0.2s;
}

.sn-theme-scooter .scooter-text-link:hover {
  color: #9ad914;
}

.sn-theme-scooter .scooter-input {
  width: 100%;
  border: 1px solid rgba(184, 255, 60, 0.2);
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  font-size: 0.875rem;
  background: #fff;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.sn-theme-scooter .scooter-input:focus {
  outline: none;
  border-color: #b8ff3c;
  box-shadow: 0 0 0 3px rgba(184, 255, 60, 0.12);
}

.sn-theme-scooter .scooter-select {
  border: 1px solid rgba(184, 255, 60, 0.2);
  border-radius: 9999px;
  padding: 0.5rem 1rem;
  font-size: 0.8125rem;
  background: #fff;
  color: #374151;
  cursor: pointer;
}

.sn-theme-scooter .scooter-select:focus {
  outline: none;
  border-color: #b8ff3c;
}

.sn-theme-scooter .scooter-empty-state {
  text-align: center;
  padding: 3rem 1.5rem;
  border-radius: 1rem;
  background: #fff;
  border: 1px dashed rgba(184, 255, 60, 0.2);
  color: #6b7280;
}

.sn-theme-scooter .scooter-empty-state--large {
  padding: 4rem 1.5rem;
}

.sn-theme-scooter .scooter-empty-state--highlight {
  border-style: solid;
  border-color: rgba(184, 255, 60, 0.15);
}

.sn-theme-scooter .scooter-badge {
  display: inline-flex;
  padding: 0.2rem 0.65rem;
  border-radius: 9999px;
  background: rgba(184,255,60,0.10);
  color: #b8ff3c;
  font-size: 0.75rem;
  font-weight: 500;
}

/* Product cards */
.sn-theme-scooter .scooter-product-card__media {
  display: block;
  position: relative;
  overflow: hidden;
  border-radius: 1rem;
  background: rgba(184,255,60,0.10);
}

.sn-theme-scooter .scooter-product-card__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.sn-theme-scooter .scooter-product-card:hover .scooter-product-card__image {
  transform: scale(1.04);
}

.sn-theme-scooter .scooter-product-card__placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.875rem;
  color: #a78bfa;
}

.sn-theme-scooter .scooter-product-card__body {
  margin-top: 0.875rem;
}

.sn-theme-scooter .scooter-product-card__title {
  font-size: 0.875rem;
  font-weight: 500;
  color: #111827;
  line-height: 1.35;
  transition: color 0.2s;
}

.sn-theme-scooter .scooter-product-card:hover .scooter-product-card__title {
  color: #b8ff3c;
}

.sn-theme-scooter .scooter-product-card__price {
  margin-top: 0.35rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: #b8ff3c;
}

.sn-theme-scooter .scooter-product-card__stock {
  margin-top: 0.25rem;
  font-size: 0.75rem;
  color: #9ca3af;
}

/* Category cards */
.sn-theme-scooter .scooter-category-card {
  display: block;
  border-radius: 1rem;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(184, 255, 60, 0.08);
  transition: transform 0.25s, box-shadow 0.25s;
}

.sn-theme-scooter .scooter-category-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(184, 255, 60, 0.1);
}

.sn-theme-scooter .scooter-category-card__media {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: linear-gradient(135deg, #ede9fe, rgba(184,255,60,0.10));
}

.sn-theme-scooter .scooter-category-card__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s;
}

.sn-theme-scooter .scooter-category-card:hover .scooter-category-card__image {
  transform: scale(1.05);
}

.sn-theme-scooter .scooter-category-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(17, 24, 39, 0.35), transparent 55%);
}

.sn-theme-scooter .scooter-category-card__placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Outfit', Inter, sans-serif;
  font-size: 3rem;
  color: rgba(184, 255, 60, 0.35);
}

.sn-theme-scooter .scooter-category-card__body {
  padding: 1.25rem 1.5rem;
}

.sn-theme-scooter .scooter-category-card__title {
  font-family: 'Outfit', Inter, sans-serif;
  font-size: 1.125rem;
  font-weight: 600;
  color: #111827;
}

.sn-theme-scooter .scooter-category-card__cta {
  display: inline-block;
  margin-top: 0.5rem;
  font-size: 0.8125rem;
  color: #b8ff3c;
}

/* List cards */
.sn-theme-scooter .scooter-list-card {
  display: block;
  border-radius: 1rem;
  background: #fff;
  border: 1px solid rgba(184, 255, 60, 0.1);
  transition: border-color 0.2s, box-shadow 0.2s;
}

.sn-theme-scooter .scooter-list-card:hover {
  border-color: #d4ff70;
  box-shadow: 0 8px 24px rgba(184, 255, 60, 0.08);
}

.sn-theme-scooter .scooter-list-card__body {
  padding: 1.5rem;
}

.sn-theme-scooter .scooter-list-card__title {
  font-family: 'Outfit', Inter, sans-serif;
  font-size: 1.25rem;
  font-weight: 600;
  color: #111827;
}

.sn-theme-scooter .scooter-list-card__desc {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  color: #6b7280;
  line-height: 1.5;
}

.sn-theme-scooter .scooter-list-card__meta {
  display: inline-block;
  margin-top: 1rem;
  font-size: 0.8125rem;
  color: #b8ff3c;
}

/* Pagination */
.sn-theme-scooter .scooter-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
}

.sn-theme-scooter .scooter-pagination__btn {
  padding: 0.5rem 1rem;
  border-radius: 9999px;
  font-size: 0.8125rem;
  font-weight: 500;
  color: #b8ff3c;
  border: 1px solid rgba(184, 255, 60, 0.25);
  background: #fff;
  transition: background 0.2s, color 0.2s;
}

.sn-theme-scooter .scooter-pagination__btn:hover:not(.scooter-pagination__btn--disabled) {
  background: #b8ff3c;
  color: #fff;
}

.sn-theme-scooter .scooter-pagination__btn--disabled {
  opacity: 0.4;
  cursor: default;
}

.sn-theme-scooter .scooter-pagination__info {
  font-size: 0.8125rem;
  color: #6b7280;
}

/* Qty control */
.sn-theme-scooter .scooter-qty-control {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(184, 255, 60, 0.2);
  border-radius: 9999px;
  overflow: hidden;
  background: #fff;
}

.sn-theme-scooter .scooter-qty-control__btn {
  width: 2.25rem;
  height: 2.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #b8ff3c;
  transition: background 0.2s, color 0.2s;
}

.sn-theme-scooter .scooter-qty-control__btn:hover:not(:disabled) {
  background: #b8ff3c;
  color: #fff;
}

.sn-theme-scooter .scooter-qty-control__btn:disabled {
  opacity: 0.35;
}

.sn-theme-scooter .scooter-qty-control__value,
.sn-theme-scooter .scooter-qty-control__input {
  min-width: 2.5rem;
  text-align: center;
  font-size: 0.875rem;
  font-weight: 500;
  border: 0;
  background: transparent;
}

.sn-theme-scooter .scooter-qty-control__input {
  width: 3rem;
  padding: 0.35rem 0;
}

.sn-theme-scooter .scooter-qty-control__input:focus {
  outline: none;
}

/* Cart summary */
.sn-theme-scooter .scooter-cart-summary__header {
  padding: 1rem 1.5rem;
  border-bottom: 1px solid rgba(184, 255, 60, 0.08);
  background: linear-gradient(180deg, rgba(184,255,60,0.10), #fff);
}

.sn-theme-scooter .scooter-cart-summary__title {
  font-size: 0.9375rem;
  font-weight: 600;
  color: #111827;
}

/* Account layout */
.sn-theme-scooter .scooter-account-layout {
  display: flex;
  flex-direction: column;
  min-height: calc(100vh - var(--scooter-header-stack-height));
}

@media (min-width: 768px) {
  .sn-theme-scooter .scooter-account-layout {
    flex-direction: row;
  }
}

.sn-theme-scooter .scooter-account-sidebar {
  width: 100%;
  flex-shrink: 0;
  background: #fff;
  border-bottom: 1px solid rgba(184, 255, 60, 0.08);
}

@media (min-width: 768px) {
  .sn-theme-scooter .scooter-account-sidebar {
    width: 16rem;
    border-bottom: 0;
    border-right: 1px solid rgba(184, 255, 60, 0.08);
  }
}

.sn-theme-scooter .scooter-account-sidebar__header {
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid rgba(184, 255, 60, 0.08);
}

.sn-theme-scooter .scooter-account-sidebar__title {
  font-size: 0.875rem;
  font-weight: 600;
  color: #111827;
}

.sn-theme-scooter .scooter-account-sidebar__email {
  margin-top: 0.25rem;
  font-size: 0.75rem;
  color: #9ca3af;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sn-theme-scooter .scooter-account-nav {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.sn-theme-scooter .scooter-account-nav__link {
  display: block;
  padding: 0.65rem 0.875rem;
  border-radius: 0.75rem;
  font-size: 0.875rem;
  color: #4b5563;
  transition: background 0.2s, color 0.2s;
}

.sn-theme-scooter .scooter-account-nav__link:hover,
.sn-theme-scooter .scooter-account-nav__link--active {
  background: rgba(184,255,60,0.10);
  color: #b8ff3c;
  font-weight: 500;
}

.sn-theme-scooter .scooter-account-main {
  flex: 1;
  padding: 1.5rem;
  max-width: 56rem;
}

@media (min-width: 768px) {
  .sn-theme-scooter .scooter-account-main {
    padding: 2rem 3rem;
  }
}

.sn-theme-scooter .scooter-account-tile,
.sn-theme-scooter .scooter-order-card {
  display: block;
  padding: 1.25rem 1.5rem;
  border-radius: 1rem;
  background: #fff;
  border: 1px solid rgba(184, 255, 60, 0.1);
  transition: border-color 0.2s, box-shadow 0.2s;
}

.sn-theme-scooter .scooter-account-tile:hover,
.sn-theme-scooter .scooter-order-card:hover {
  border-color: #d4ff70;
  box-shadow: 0 8px 24px rgba(184, 255, 60, 0.08);
}

.sn-theme-scooter .scooter-account-tile__label {
  font-size: 0.75rem;
  color: #9ca3af;
}

.sn-theme-scooter .scooter-account-tile__title {
  display: block;
  margin-top: 0.35rem;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #111827;
}

.sn-theme-scooter .scooter-account-tile__cta {
  display: block;
  margin-top: 0.75rem;
  font-size: 0.8125rem;
  color: #b8ff3c;
}

/* Legal */
.sn-theme-scooter .scooter-legal-nav {
  position: sticky;
  top: calc(var(--scooter-header-stack-height) + 0.5rem);
  z-index: 10;
  padding: 1rem 0;
  background: rgba(250, 249, 252, 0.92);
  backdrop-filter: blur(8px);
}

.sn-theme-scooter .scooter-legal-nav__link {
  display: inline-block;
  padding: 0.45rem 0.9rem;
  border-radius: 9999px;
  font-size: 0.8125rem;
  color: #6b7280;
  background: #fff;
  border: 1px solid rgba(184, 255, 60, 0.12);
  transition: all 0.2s;
}

.sn-theme-scooter .scooter-legal-nav__link:hover {
  color: #b8ff3c;
  border-color: #d4ff70;
  background: rgba(184,255,60,0.10);
}

.sn-theme-scooter .scooter-legal-prose {
  color: #4b5563;
  font-size: 0.9375rem;
  line-height: 1.7;
  white-space: pre-wrap;
}

/* Category nav / filters */
.sn-theme-scooter .scooter-filter-panel {
  padding: 1rem;
  border-radius: 1rem;
  background: #fff;
  border: 1px solid rgba(184, 255, 60, 0.08);
}

.sn-theme-scooter .scooter-filter-title {
  font-size: 0.8125rem;
  font-weight: 600;
  color: #374151;
  margin-bottom: 0.75rem;
}

.sn-theme-scooter .scooter-cat-nav__link {
  display: block;
  padding: 0.4rem 0;
  font-size: 0.8125rem;
  color: #6b7280;
  transition: color 0.2s;
}

.sn-theme-scooter .scooter-cat-nav__link:hover {
  color: #b8ff3c;
}

.sn-theme-scooter .scooter-cat-nav__link--active {
  color: #b8ff3c;
  font-weight: 600;
  border-left: 2px solid #b8ff3c;
  padding-left: 0.5rem;
  margin-left: -0.5rem;
}

/* Contact form overrides */
.sn-theme-scooter .scooter-contact-label {
  display: block;
  margin-bottom: 0.35rem;
  font-size: 0.8125rem;
  font-weight: 500;
  color: #374151;
}

.sn-theme-scooter .scooter-contact-input {
  width: 100%;
  border: 1px solid rgba(184, 255, 60, 0.2);
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  font-size: 0.875rem;
}

.sn-theme-scooter .scooter-contact-input:focus {
  outline: none;
  border-color: #b8ff3c;
  box-shadow: 0 0 0 3px rgba(184, 255, 60, 0.12);
}

.sn-theme-scooter .scooter-contact-submit {
  display: inline-flex;
  padding: 0.75rem 1.75rem;
  border-radius: 9999px;
  background: #b8ff3c;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 500;
  transition: background 0.2s;
}

.sn-theme-scooter .scooter-contact-submit:hover {
  background: #9ad914;
}

.sn-theme-scooter .scooter-contact-info {
  padding: 1.5rem;
  border-radius: 1rem;
  background: linear-gradient(180deg, rgba(184,255,60,0.10), #fff);
  border: 1px solid rgba(184, 255, 60, 0.1);
}

.sn-theme-scooter .scooter-contact-info__title {
  font-family: 'Outfit', Inter, sans-serif;
  font-size: 1.25rem;
  font-weight: 600;
  color: #111827;
  margin-bottom: 1rem;
}

.sn-theme-scooter .scooter-contact-info__item {
  padding: 0.75rem 0;
  border-bottom: 1px solid rgba(184, 255, 60, 0.08);
}

.sn-theme-scooter .scooter-contact-info__item:last-child {
  border-bottom: 0;
}

.sn-theme-scooter .scooter-contact-info__item dt {
  font-size: 0.75rem;
  color: #9ca3af;
  margin-bottom: 0.2rem;
}

.sn-theme-scooter .scooter-contact-info__item dd {
  font-size: 0.875rem;
  color: #374151;
}

.sn-theme-scooter .scooter-contact-info__item a {
  color: #b8ff3c;
}

.sn-theme-scooter .scooter-contact-info__item a:hover {
  color: #9ad914;
}

/* PDP */
.sn-theme-scooter .scooter-pdp-info {
  padding: 0.5rem 0;
}

@media (min-width: 1024px) {
  .sn-theme-scooter .scooter-pdp-grid {
    gap: 3.5rem;
  }
}

/* Homepage sections & enhanced product cards */
.sn-theme-scooter .scooter-home-section {
  background: linear-gradient(180deg, #12121f 0%, #0d0d18 100%);
  color: #e9e4ff;
}

.sn-theme-scooter .scooter-home-heading {
  color: #f5f0ff;
}

.sn-theme-scooter .scooter-home-subtext {
  color: #a78bfa;
}

.sn-theme-scooter .scooter-home-products-section {
  position: relative;
}

.sn-theme-scooter .scooter-home-products-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(168, 85, 247, 0.14), transparent 70%);
  pointer-events: none;
}

.sn-theme-scooter .scooter-home-products-section > .container {
  position: relative;
  z-index: 1;
}

.sn-theme-scooter .scooter-home-products-grid .scooter-product-card--home {
  padding: 0.75rem;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(168, 85, 247, 0.28);
  border-radius: 1.125rem;
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.sn-theme-scooter .scooter-home-products-grid .scooter-product-card--home:hover {
  transform: translateY(-6px);
  border-color: rgba(192, 132, 252, 0.55);
  box-shadow: 0 16px 40px rgba(88, 28, 135, 0.35), 0 0 24px rgba(168, 85, 247, 0.15);
}

.sn-theme-scooter .scooter-home-products-grid .scooter-product-card--home .scooter-product-card__media {
  border-radius: 0.75rem;
  overflow: hidden;
}

.sn-theme-scooter .scooter-home-products-grid .scooter-product-card--home .scooter-product-card__title {
  color: #f3f0ff;
  font-size: 0.9375rem;
}

.sn-theme-scooter .scooter-home-products-grid .scooter-product-card--home:hover .scooter-product-card__title {
  color: #c4b5fd;
}

.sn-theme-scooter .scooter-home-products-grid .scooter-product-card--home .scooter-product-card__price {
  color: #e879f9;
  font-size: 0.9375rem;
}

.sn-theme-scooter .scooter-home-products-grid .scooter-product-card--home .scooter-product-card__body {
  padding: 0.625rem 0.25rem 0;
  margin-top: 0.75rem;
}

.sn-theme-scooter .scooter-home-products-grid .scooter-product-card--home .scooter-product-card__image {
  transition: transform 0.4s ease;
}

.sn-theme-scooter .scooter-home-products-grid .scooter-product-card--home:hover .scooter-product-card__image {
  transform: scale(1.06);
}


/* ——— Scooter premium overrides ——— */
.sn-theme-scooter {
  --scooter-volt: #b8ff3c;
  --scooter-volt-dim: #9ad914;
  --scooter-teal: #00e8c8;
  --scooter-ice: #00c4ff;
  --scooter-surface: #12151c;
  --scooter-surface-2: #1a1f2a;
  --scooter-line: rgba(184, 255, 60, 0.18);
  --scooter-glow: 0 0 40px rgba(184, 255, 60, 0.25);
  color-scheme: dark;
}

.sn-theme-scooter .scooter-btn--primary {
  background: #9ad914;
  color: #0a0c10;
  border: none;
  font-weight: 600;
  letter-spacing: 0.02em;
  box-shadow: none;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}
.sn-theme-scooter .scooter-btn--primary:hover {
  transform: translateY(-1px);
  background: #b0e628;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
}

.sn-theme-scooter .scooter-btn--ghost {
  border: 1px solid var(--scooter-line);
  color: #e8edf5;
  background: transparent;
}
.sn-theme-scooter .scooter-btn--ghost:hover {
  border-color: var(--scooter-volt);
  color: var(--scooter-volt);
}

.sn-theme-scooter .scooter-product-card {
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 1.25rem;
  overflow: hidden;
  transition: transform .35s cubic-bezier(.22,1,.36,1), border-color .35s ease, box-shadow .35s ease;
}
.sn-theme-scooter .scooter-product-card:hover {
  border-color: rgba(184,255,60,.35);
  box-shadow: 0 20px 50px rgba(0,0,0,.45), 0 0 0 1px rgba(184,255,60,.15);
  transform: translateY(-6px);
}

.sn-theme-scooter .scooter-product-card__quick-add {
  position: absolute;
  right: .75rem;
  bottom: .75rem;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 999px;
  background: var(--scooter-volt);
  color: #0a0c10;
  box-shadow: 0 8px 24px rgba(0,0,0,.35);
  opacity: 0;
  transform: translateY(8px) scale(.92);
  transition: opacity .25s ease, transform .25s ease;
}
.sn-theme-scooter .scooter-product-card:hover .scooter-product-card__quick-add,
.sn-theme-scooter .scooter-product-card:focus-within .scooter-product-card__quick-add {
  opacity: 1;
  transform: none;
}
@media (max-width: 767px) {
  .sn-theme-scooter .scooter-product-card__quick-add {
    opacity: 1;
    transform: none;
    width: 2.25rem;
    height: 2.25rem;
  }
}

/* Mobile filter sheet */
.sn-theme-scooter .scooter-mobile-filters {
  position: sticky;
  top: calc(var(--scooter-header-stack-height, 4rem) + .5rem);
  z-index: 30;
  display: flex;
  gap: .5rem;
  overflow-x: auto;
  padding: .5rem 0;
  margin: 0 -.25rem .75rem;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.sn-theme-scooter .scooter-mobile-filters::-webkit-scrollbar { display: none; }
.sn-theme-scooter .scooter-mobile-filters__chip {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .55rem .9rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(18,21,28,.92);
  backdrop-filter: blur(10px);
  color: #e8edf5;
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.sn-theme-scooter .scooter-mobile-filters__chip.is-active,
.sn-theme-scooter .scooter-mobile-filters__chip[aria-expanded="true"] {
  border-color: var(--scooter-volt);
  color: var(--scooter-volt);
  box-shadow: inset 0 0 0 1px rgba(184,255,60,.25);
}

.sn-theme-scooter .scooter-filter-drawer {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: none;
}
.sn-theme-scooter .scooter-filter-drawer.is-open { display: block; }
.sn-theme-scooter .scooter-filter-drawer__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.65);
}
.sn-theme-scooter .scooter-filter-drawer__panel {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  max-height: 78vh;
  overflow: auto;
  background: #12151c;
  border-radius: 1.25rem 1.25rem 0 0;
  border-top: 1px solid var(--scooter-line);
  padding: 1.25rem 1rem calc(1.25rem + env(safe-area-inset-bottom));
  animation: scooter-sheet-up .32s cubic-bezier(.22,1,.36,1);
}
@keyframes scooter-sheet-up {
  from { transform: translateY(100%); }
  to { transform: none; }
}

/* PDP */
.sn-theme-scooter .scooter-pdp-grid { gap: 2.5rem; }
.sn-theme-scooter .scooter-pdp-price {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  color: var(--scooter-volt);
  letter-spacing: -0.02em;
}
.sn-theme-scooter .scooter-spec-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
}
@media (min-width: 768px) {
  .sn-theme-scooter .scooter-spec-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.sn-theme-scooter .scooter-spec-card {
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 1rem;
  padding: 1rem;
  transition: border-color .25s ease, transform .25s ease;
}
.sn-theme-scooter .scooter-spec-card:hover {
  border-color: rgba(0,232,200,.35);
  transform: translateY(-2px);
}
.sn-theme-scooter .scooter-spec-card__label {
  font-size: .65rem;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(232,237,245,.5);
  margin-bottom: .35rem;
}
.sn-theme-scooter .scooter-spec-card__value {
  font-size: .95rem;
  font-weight: 600;
  color: #f4f7fb;
}

.sn-theme-scooter .scooter-bundle {
  border: 1px solid rgba(184,255,60,.22);
  background:
    radial-gradient(120% 80% at 0% 0%, rgba(184,255,60,.12), transparent 55%),
    rgba(18,21,28,.9);
  border-radius: 1.25rem;
  padding: 1.1rem;
}
.sn-theme-scooter .scooter-bundle__badge {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .25rem .55rem;
  border-radius: .5rem;
  background: rgba(184,255,60,.15);
  color: var(--scooter-volt);
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.sn-theme-scooter .scooter-bundle-slot {
  display: flex;
  gap: .9rem;
  padding: .9rem;
  border-radius: 1rem;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(0,0,0,.25);
  transition: border-color .25s ease, background .25s ease;
}
.sn-theme-scooter .scooter-bundle-slot:has(.linked-addon-include:checked),
.sn-theme-scooter .scooter-bundle-slot.is-selected {
  border-color: rgba(184,255,60,.45);
  background: rgba(184,255,60,.06);
}

/* Sticky mobile ATC */
.sn-theme-scooter .scooter-mobile-atc {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 55;
  display: none;
  padding: .75rem 1rem calc(.75rem + env(safe-area-inset-bottom));
  background: rgba(10,12,16,.92);
  backdrop-filter: blur(16px);
  border-top: 1px solid rgba(255,255,255,.08);
}
@media (max-width: 1023px) {
  .sn-theme-scooter .scooter-mobile-atc { display: flex; gap: .75rem; align-items: center; }
  .sn-theme-scooter body:has(.scooter-mobile-atc) .scooter-sticky-cart,
  .sn-theme-scooter .scooter-page:has(.scooter-mobile-atc) ~ #sticky-cart { display: none !important; }
  .sn-theme-scooter .scooter-pdp-info { padding-bottom: 5.5rem; }
}

/* Homepage ride strip */
.sn-theme-scooter .scooter-ride-strip {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 768px) {
  .sn-theme-scooter .scooter-ride-strip { grid-template-columns: repeat(3, 1fr); }
}
.sn-theme-scooter .scooter-ride-card {
  position: relative;
  overflow: hidden;
  border-radius: 1.5rem;
  min-height: 220px;
  border: 1px solid rgba(255,255,255,.08);
}
.sn-theme-scooter .scooter-ride-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.22,1,.36,1);
}
.sn-theme-scooter .scooter-ride-card:hover img { transform: scale(1.06); }
.sn-theme-scooter .scooter-ride-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 20%, rgba(10,12,16,.92));
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 1.25rem;
}

/* Text contrast fixes for dark theme leftovers */
.sn-theme-scooter .text-gray-900 { color: #f1f5f9 !important; }
.sn-theme-scooter .text-gray-700 { color: rgba(241,245,249,.78) !important; }
.sn-theme-scooter .text-gray-600 { color: rgba(241,245,249,.65) !important; }
.sn-theme-scooter .text-gray-500 { color: rgba(241,245,249,.55) !important; }
.sn-theme-scooter .text-gray-400 { color: rgba(241,245,249,.45) !important; }
.sn-theme-scooter .border-gray-100,
.sn-theme-scooter .border-orange-100 { border-color: rgba(255,255,255,.1) !important; }
.sn-theme-scooter .bg-white { background-color: #12151c !important; }
.sn-theme-scooter .scooter-empty-state { color: #e8edf5; }
.sn-theme-scooter .scooter-filter-panel {
  background: rgba(18,21,28,.9);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 1.25rem;
  padding: 1rem;
}

/* Checkout follows scooter dark tokens */
.sn-theme-scooter:has(.checkout-page) {
  background: #0a0c10 !important;
  color: #e8edf5 !important;
}
.sn-theme-scooter .checkout-page .text-gray-900 { color: #f1f5f9 !important; }
.sn-theme-scooter .checkout-page .text-gray-700,
.sn-theme-scooter .checkout-page .text-gray-600,
.sn-theme-scooter .checkout-page .text-gray-500 { color: rgba(232,237,245,.65) !important; }
.sn-theme-scooter .checkout-page .bg-white { background-color: #12151c !important; }
.sn-theme-scooter .checkout-page .text-black { color: #e8edf5 !important; }
.sn-theme-scooter .scooter-checkout-option {
  background: #12151c !important;
  border-color: rgba(184,255,60,.2) !important;
  color: #e8edf5 !important;
}
.sn-theme-scooter .scooter-checkout-option.is-selected,
.sn-theme-scooter .scooter-checkout-option:has(input:checked) {
  background: rgba(154,217,20,.12) !important;
  color: #e8edf5 !important;
  border-color: #9ad914 !important;
}

/* Hero refinements */
.sn-theme-scooter .scooter-hero-overlay-gradient {
  background: linear-gradient(120deg, rgba(10,12,16,.82) 10%, rgba(10,12,16,.35) 55%, rgba(0,232,200,.18));
}
.sn-theme-scooter .scooter-display {
  letter-spacing: -0.03em;
}

/* Scroll reveal + volt shimmer */
@keyframes scooter-shimmer {
  0% { background-position: 0% 50%; }
  100% { background-position: 100% 50%; }
}
.sn-theme-scooter .scooter-shimmer-text {
  background: linear-gradient(90deg, #b8ff3c, #00e8c8, #b8ff3c);
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: scooter-shimmer 4s linear infinite;
}

/* ============================================================
   SCOOTER — REDESIGN v2 (premium dark, animation-rich)
   Greyp / Keindl inspired. This layer overrides earlier leftovers.
   ============================================================ */

.sn-theme-scooter {
  --scooter-teal: #00e8c8;
  --scooter-ice: #00c4ff;
  --scooter-ink: #0a0c10;
  --scooter-surface: #12151c;
  --scooter-surface-2: #0f1218;
  --scooter-hairline: rgba(255,255,255,.08);
  --scooter-muted: rgba(232,237,245,.62);
}

.sn-theme-scooter,
.sn-theme-scooter body { background: var(--scooter-ink); color: #e8edf5; }
.sn-theme-scooter ::-webkit-scrollbar-track { background: #0d1016; }
.sn-theme-scooter ::-webkit-scrollbar-thumb { background: rgba(184,255,60,.5); }

/* ---------- Reveal animation system ---------- */
.sn-theme-scooter.scooter-anim-ready .scooter-reveal:not(.is-visible) {
  opacity: 0;
  transform: translateY(34px);
}
.sn-theme-scooter .scooter-reveal {
  transition: opacity .7s cubic-bezier(.22,1,.36,1), transform .7s cubic-bezier(.22,1,.36,1);
  will-change: opacity, transform;
}
.sn-theme-scooter.scooter-anim-ready .scooter-reveal-stagger:not(.is-visible) > * {
  opacity: 0;
  transform: translateY(30px);
}
.sn-theme-scooter .scooter-reveal-stagger > * {
  transition: opacity .6s cubic-bezier(.22,1,.36,1), transform .6s cubic-bezier(.22,1,.36,1);
}
.sn-theme-scooter .scooter-reveal-stagger.is-visible > * { opacity: 1; transform: none; }
.sn-theme-scooter .scooter-reveal-stagger.is-visible > *:nth-child(1) { transition-delay: .05s; }
.sn-theme-scooter .scooter-reveal-stagger.is-visible > *:nth-child(2) { transition-delay: .12s; }
.sn-theme-scooter .scooter-reveal-stagger.is-visible > *:nth-child(3) { transition-delay: .19s; }
.sn-theme-scooter .scooter-reveal-stagger.is-visible > *:nth-child(4) { transition-delay: .26s; }
.sn-theme-scooter .scooter-reveal-stagger.is-visible > *:nth-child(5) { transition-delay: .33s; }
.sn-theme-scooter .scooter-reveal-stagger.is-visible > *:nth-child(6) { transition-delay: .40s; }
.sn-theme-scooter .scooter-reveal-stagger.is-visible > *:nth-child(7) { transition-delay: .47s; }
.sn-theme-scooter .scooter-reveal-stagger.is-visible > *:nth-child(8) { transition-delay: .54s; }
.sn-theme-scooter .scooter-reveal[data-reveal-delay="1"] { transition-delay: .1s; }
.sn-theme-scooter .scooter-reveal[data-reveal-delay="2"] { transition-delay: .2s; }
.sn-theme-scooter .scooter-reveal[data-reveal-delay="3"] { transition-delay: .3s; }
.sn-theme-scooter .scooter-reveal[data-reveal-delay="4"] { transition-delay: .4s; }
/* editor always visible */
.sn-theme-scooter.template-editor-active .scooter-reveal,
.sn-theme-scooter.template-editor-active .scooter-reveal-stagger > * { opacity: 1 !important; transform: none !important; }

/* ---------- Header ---------- */
.sn-theme-scooter .scooter-header {
  background: rgba(10,12,16,.55);
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  border-bottom: 1px solid transparent;
}
.sn-theme-scooter.scooter-scrolled .scooter-header,
body.sn-theme-scooter.scooter-scrolled .scooter-header {
  background: rgba(10,12,16,.9);
  border-bottom-color: rgba(184,255,60,.16);
  box-shadow: 0 10px 40px -20px rgba(0,0,0,.9);
}
.sn-theme-scooter .scooter-header-glow {
  position: absolute; left: 50%; top: 0; transform: translateX(-50%);
  width: 40%; height: 2px;
  background: linear-gradient(90deg, transparent, var(--scooter-accent), var(--scooter-teal), transparent);
  opacity: .55; filter: blur(1px);
}
.sn-theme-scooter .scooter-logo-mark {
  display: inline-flex; width: 2rem; height: 2rem; color: var(--scooter-ink);
  background: linear-gradient(135deg, var(--scooter-accent), var(--scooter-teal));
  border-radius: .6rem; padding: .3rem; box-shadow: 0 0 18px rgba(184,255,60,.4);
}
.sn-theme-scooter .scooter-logo-mark svg { width: 100%; height: 100%; }
.sn-theme-scooter .scooter-nav-link {
  position: relative; padding: .5rem .9rem; font-size: .875rem; font-weight: 500;
  color: rgba(232,237,245,.8); border-radius: 9999px; transition: color .2s ease;
}
.sn-theme-scooter .scooter-nav-link::after {
  content: ''; position: absolute; left: .9rem; right: .9rem; bottom: .3rem; height: 2px;
  background: var(--scooter-accent); transform: scaleX(0); transform-origin: left;
  transition: transform .3s cubic-bezier(.22,1,.36,1); border-radius: 2px;
}
.sn-theme-scooter .scooter-nav-link:hover { color: #fff; }
.sn-theme-scooter .scooter-nav-link:hover::after { transform: scaleX(1); }
.sn-theme-scooter .scooter-header-cta {
  align-items: center; padding: .6rem 1.25rem; border-radius: 9999px; font-size: .8125rem;
  font-weight: 700; letter-spacing: .01em; color: var(--scooter-ink);
  background: linear-gradient(135deg, var(--scooter-accent), var(--scooter-accent-light));
  box-shadow: 0 0 24px rgba(184,255,60,.3); transition: transform .2s ease, box-shadow .2s ease;
}
.sn-theme-scooter .scooter-header-cta:hover { transform: translateY(-1px); box-shadow: 0 0 34px rgba(184,255,60,.5); }
.sn-theme-scooter #scooter-header .scooter-header-icon { color: #fff; }
.sn-theme-scooter #scooter-header .scooter-header-icon:hover { color: var(--scooter-accent); }
.sn-theme-scooter .scooter-header-menu-btn.is-open .scooter-header-icon-svg { color: var(--scooter-accent); }
.sn-theme-scooter .scooter-mobile-menu {
  background: rgba(10,12,16,.97); backdrop-filter: blur(16px);
  border-top: 1px solid var(--scooter-hairline);
  animation: scooter-menu-drop .28s ease;
}
@keyframes scooter-menu-drop { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }
.sn-theme-scooter .scooter-mobile-link {
  display: block; padding: .75rem .5rem; font-size: .95rem; font-weight: 500;
  color: rgba(232,237,245,.85); border-bottom: 1px solid var(--scooter-hairline);
  transition: color .2s ease, padding-left .2s ease;
}
.sn-theme-scooter .scooter-mobile-link:hover { color: var(--scooter-accent); padding-left: 1rem; }

/* ---------- Hero ---------- */
.sn-theme-scooter .scooter-hero-img { transform: scale(1.08); animation: scooter-hero-zoom 14s ease-out forwards; }
@keyframes scooter-hero-zoom { to { transform: scale(1); } }
.sn-theme-scooter .scooter-hero-overlay-gradient {
  background:
    radial-gradient(120% 90% at 12% 50%, rgba(10,12,16,.9) 0%, rgba(10,12,16,.55) 42%, transparent 75%),
    linear-gradient(0deg, rgba(10,12,16,.85), transparent 45%);
}
.sn-theme-scooter .scooter-hero-grid-overlay {
  position: absolute; inset: 0;
  background-image: linear-gradient(rgba(184,255,60,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(184,255,60,.05) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: radial-gradient(80% 60% at 30% 50%, #000, transparent 80%);
  -webkit-mask-image: radial-gradient(80% 60% at 30% 50%, #000, transparent 80%);
}
.sn-theme-scooter .scooter-hero-eyebrow {
  display: inline-flex; align-items: center; gap: .55rem;
  padding: .45rem .9rem; margin-bottom: 1.5rem; border-radius: 9999px;
  background: rgba(184,255,60,.1); border: 1px solid rgba(184,255,60,.25);
  color: var(--scooter-accent-light); font-size: .72rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: .16em;
}
.sn-theme-scooter .scooter-hero-eyebrow__dot {
  width: 8px; height: 8px; border-radius: 50%; background: var(--scooter-accent);
  box-shadow: 0 0 0 0 rgba(184,255,60,.6); animation: scooter-pulse 2s infinite;
}
@keyframes scooter-pulse { 0%{box-shadow:0 0 0 0 rgba(184,255,60,.55)} 70%{box-shadow:0 0 0 9px rgba(184,255,60,0)} 100%{box-shadow:0 0 0 0 rgba(184,255,60,0)} }
.sn-theme-scooter .scooter-hero-title {
  font-size: clamp(2.6rem, 7vw, 5.5rem); font-weight: 800; line-height: .98;
  letter-spacing: -.035em; color: #fff; margin-bottom: 1.25rem; text-wrap: balance;
}
.sn-theme-scooter .scooter-hero-subtitle {
  font-size: clamp(1rem, 1.6vw, 1.25rem); color: rgba(232,237,245,.82);
  max-width: 34rem; line-height: 1.6; margin-bottom: 2rem;
}
.sn-theme-scooter .scooter-hero-actions { display: flex; flex-wrap: wrap; gap: .85rem; margin-bottom: 2.5rem; }
.sn-theme-scooter .scooter-hero-chips { display: flex; flex-wrap: wrap; gap: 1.75rem; }
.sn-theme-scooter .scooter-hero-chip { display: flex; flex-direction: column; }
.sn-theme-scooter .scooter-hero-chip__num {
  font-family: 'Outfit', sans-serif; font-size: 1.75rem; font-weight: 800; color: #fff; line-height: 1;
}
.sn-theme-scooter .scooter-hero-chip__num small { font-size: .8rem; font-weight: 600; color: var(--scooter-accent); margin-left: .15rem; }
.sn-theme-scooter .scooter-hero-chip__label { font-size: .72rem; text-transform: uppercase; letter-spacing: .12em; color: var(--scooter-muted); margin-top: .35rem; }
.sn-theme-scooter .scooter-hero-scrollcue {
  position: absolute; left: 50%; bottom: 2.5rem; transform: translateX(-50%);
  display: flex; flex-direction: column; align-items: center; gap: .5rem;
  font-size: .68rem; text-transform: uppercase; letter-spacing: .2em; color: var(--scooter-muted);
}
.sn-theme-scooter .scooter-hero-scrollcue__line { width: 1px; height: 40px; background: linear-gradient(var(--scooter-accent), transparent); position: relative; overflow: hidden; }
.sn-theme-scooter .scooter-hero-scrollcue__line::after { content: ''; position: absolute; top: -40px; left: 0; width: 1px; height: 40px; background: var(--scooter-accent); animation: scooter-scroll-run 1.8s ease-in-out infinite; }
@keyframes scooter-scroll-run { to { top: 40px; } }
@media (max-width: 640px) { .sn-theme-scooter .scooter-hero-scrollcue { display: none; } }

/* ---------- Marquee ---------- */
.sn-theme-scooter .scooter-marquee {
  overflow: hidden; white-space: nowrap; background: var(--scooter-accent); color: var(--scooter-ink);
  border-top: 1px solid rgba(0,0,0,.1); border-bottom: 1px solid rgba(0,0,0,.1);
}
.sn-theme-scooter .scooter-marquee__track { display: inline-flex; align-items: center; gap: 1.5rem; padding: .7rem 0; animation: scooter-marquee 26s linear infinite; }
.sn-theme-scooter .scooter-marquee__track span { font-size: .8rem; font-weight: 800; text-transform: uppercase; letter-spacing: .14em; }
.sn-theme-scooter .scooter-marquee__dot { opacity: .5; }
@keyframes scooter-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ---------- Section heads / eyebrows ---------- */
.sn-theme-scooter .scooter-section-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1.5rem; }
.sn-theme-scooter .scooter-section-eyebrow {
  display: inline-block; margin-bottom: .75rem; font-size: .72rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: .2em; color: var(--scooter-accent);
}
.sn-theme-scooter .scooter-section-eyebrow--center { display: block; }
.sn-theme-scooter .scooter-home-heading { color: #fff; letter-spacing: -.03em; }
.sn-theme-scooter .scooter-home-subtext { color: var(--scooter-muted); }

/* ---------- Mission ---------- */
.sn-theme-scooter .scooter-mission { background: linear-gradient(180deg, #0a0c10, #0d1117 60%, #0a0c10); }
.sn-theme-scooter .scooter-mission__glow {
  position: absolute; top: -20%; right: -10%; width: 60%; height: 140%;
  background: radial-gradient(circle, rgba(0,232,200,.14), transparent 60%); filter: blur(30px);
}
.sn-theme-scooter .scooter-stat-card {
  padding: 1.5rem; border-radius: 1.25rem; background: rgba(255,255,255,.03);
  border: 1px solid var(--scooter-hairline); transition: border-color .3s ease, transform .3s ease, background .3s ease;
}
.sn-theme-scooter .scooter-stat-card:hover { border-color: rgba(184,255,60,.4); transform: translateY(-4px); background: rgba(184,255,60,.05); }
.sn-theme-scooter .scooter-stat-card__num {
  display: block; font-family: 'Outfit', sans-serif; font-size: clamp(1.8rem, 3vw, 2.6rem);
  font-weight: 800; color: var(--scooter-accent); line-height: 1; letter-spacing: -.02em;
}
.sn-theme-scooter .scooter-stat-card__label { display: block; margin-top: .6rem; font-size: .78rem; text-transform: uppercase; letter-spacing: .1em; color: var(--scooter-muted); }

/* ---------- Category tiles ---------- */
.sn-theme-scooter .scooter-cat-tile {
  position: relative; display: block; overflow: hidden; border-radius: 1.5rem;
  aspect-ratio: 3/4; border: 1px solid var(--scooter-hairline);
}
.sn-theme-scooter .scooter-cat-tile--wide { aspect-ratio: 4/3; }
.sn-theme-scooter .scooter-cat-tile__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.22,1,.36,1); }
.sn-theme-scooter .scooter-cat-tile:hover .scooter-cat-tile__img { transform: scale(1.08); }
.sn-theme-scooter .scooter-cat-tile__overlay { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 30%, rgba(10,12,16,.9)); transition: background .3s ease; }
.sn-theme-scooter .scooter-cat-tile:hover .scooter-cat-tile__overlay { background: linear-gradient(180deg, rgba(184,255,60,.08) 10%, rgba(10,12,16,.92)); }
.sn-theme-scooter .scooter-cat-tile__body { position: absolute; inset: 0; display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; padding: 1.5rem; }
.sn-theme-scooter .scooter-cat-tile__title { font-size: 1.25rem; font-weight: 700; color: #fff; }
.sn-theme-scooter .scooter-cat-tile__sub { font-size: .85rem; color: rgba(232,237,245,.75); margin-top: .25rem; }
.sn-theme-scooter .scooter-cat-tile__arrow {
  flex-shrink: 0; width: 2.75rem; height: 2.75rem; border-radius: 9999px; display: inline-flex; align-items: center; justify-content: center;
  background: var(--scooter-accent); color: var(--scooter-ink); transform: translateY(6px) scale(.85); opacity: 0;
  transition: transform .35s cubic-bezier(.22,1,.36,1), opacity .35s ease;
}
.sn-theme-scooter .scooter-cat-tile__arrow svg { width: 1.15rem; height: 1.15rem; }
.sn-theme-scooter .scooter-cat-tile:hover .scooter-cat-tile__arrow { transform: none; opacity: 1; }

/* ---------- Ride cards ---------- */
.sn-theme-scooter .scooter-ride-card { position: relative; overflow: hidden; border-radius: 1.5rem; min-height: 300px; border: 1px solid var(--scooter-hairline); }
.sn-theme-scooter .scooter-ride-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.22,1,.36,1); }
.sn-theme-scooter .scooter-ride-card:hover img { transform: scale(1.08); }
.sn-theme-scooter .scooter-ride-card__index { position: absolute; top: 1.25rem; left: 1.25rem; z-index: 2; font-family: 'Outfit', sans-serif; font-size: 1rem; font-weight: 800; color: var(--scooter-accent); background: rgba(10,12,16,.6); backdrop-filter: blur(6px); padding: .3rem .7rem; border-radius: 9999px; letter-spacing: .05em; }
.sn-theme-scooter .scooter-ride-card__overlay { position: absolute; inset: 0; z-index: 1; display: flex; flex-direction: column; justify-content: flex-end; padding: 1.5rem; background: linear-gradient(180deg, transparent 35%, rgba(10,12,16,.92)); }

/* ---------- Bundle feature ---------- */
.sn-theme-scooter .scooter-bundle--feature { border: 1px solid rgba(184,255,60,.22); }
.sn-theme-scooter .scooter-bundle__media img { transition: transform .9s cubic-bezier(.22,1,.36,1); }
.sn-theme-scooter .scooter-bundle--feature:hover .scooter-bundle__media img { transform: scale(1.05); }
.sn-theme-scooter .scooter-bundle__shine { position: absolute; top: 0; left: -60%; width: 40%; height: 100%; background: linear-gradient(100deg, transparent, rgba(255,255,255,.18), transparent); transform: skewX(-18deg); animation: scooter-shine 5s ease-in-out infinite; }
@keyframes scooter-shine { 0%,100% { left: -60%; } 55% { left: 130%; } }
.sn-theme-scooter .scooter-bundle__price-tag { position: absolute; top: 1.25rem; left: 1.25rem; display: inline-flex; align-items: baseline; gap: .3rem; padding: .5rem .9rem; border-radius: 9999px; background: var(--scooter-accent); color: var(--scooter-ink); font-size: 1.5rem; font-weight: 800; box-shadow: 0 0 26px rgba(184,255,60,.45); }
.sn-theme-scooter .scooter-bundle__price-tag small { font-size: .7rem; font-weight: 700; text-transform: uppercase; opacity: .7; }

/* ---------- Buttons ---------- */
.sn-theme-scooter .scooter-btn { display: inline-flex; align-items: center; gap: .5rem; font-weight: 600; transition: transform .25s ease, box-shadow .25s ease, filter .25s ease, background .25s ease, color .25s ease, border-color .25s ease; }
.sn-theme-scooter .scooter-btn--lg { padding: .9rem 1.75rem; font-size: .95rem; border-radius: 9999px; }
.sn-theme-scooter .scooter-btn--primary { background: #9ad914; color: var(--scooter-ink); border: none; box-shadow: none; }
.sn-theme-scooter .scooter-btn--primary:hover { transform: translateY(-1px); background: #b0e628; filter: none; box-shadow: 0 8px 20px rgba(0,0,0,.3); }
.sn-theme-scooter .scooter-btn--primary svg { transition: transform .25s ease; }
.sn-theme-scooter .scooter-btn--primary:hover svg { transform: translateX(3px); }
.sn-theme-scooter .scooter-btn--ghost { border: 1px solid var(--scooter-hairline); color: #e8edf5; background: transparent; }
.sn-theme-scooter .scooter-btn--ghost:hover { border-color: var(--scooter-accent); color: var(--scooter-accent); }
.sn-theme-scooter .scooter-btn--ghost svg { transition: transform .25s ease; }
.sn-theme-scooter .scooter-btn--ghost:hover svg { transform: translateX(3px); }
.sn-theme-scooter .scooter-btn--glass { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.16); color: #fff; backdrop-filter: blur(8px); }
.sn-theme-scooter .scooter-btn--glass:hover { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.3); transform: translateY(-2px); }

/* ---------- Shimmer text ---------- */
.sn-theme-scooter .scooter-shimmer-text {
  background: linear-gradient(90deg, #fff 0%, var(--scooter-accent) 45%, var(--scooter-teal) 65%, #fff 100%);
  background-size: 220% auto; -webkit-background-clip: text; background-clip: text; color: transparent;
  animation: scooter-shimmer 5s linear infinite;
}
@keyframes scooter-shimmer { 0% { background-position: 0% 50%; } 100% { background-position: 200% 50%; } }

/* ---------- Page hero (inner pages) ---------- */
.sn-theme-scooter .scooter-page-hero {
  position: relative; background: linear-gradient(120deg, #0a0c10, #10151d);
  border-bottom: 1px solid var(--scooter-hairline); overflow: hidden;
}
.sn-theme-scooter .scooter-page-hero::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(60% 120% at 100% 0%, rgba(184,255,60,.1), transparent 60%);
}
.sn-theme-scooter .scooter-page-hero > .container { position: relative; z-index: 1; }
.sn-theme-scooter .scooter-page-hero__title { font-family: 'Outfit', sans-serif; font-size: clamp(1.8rem, 4vw, 3rem); font-weight: 800; letter-spacing: -.03em; color: #fff; }
.sn-theme-scooter .scooter-page-hero__subtitle { margin-top: .75rem; color: var(--scooter-muted); font-size: 1rem; max-width: 40rem; }

/* ---------- Fix leftover light surfaces → dark ---------- */
.sn-theme-scooter .scooter-card,
.sn-theme-scooter .scooter-list-card,
.sn-theme-scooter .scooter-account-tile,
.sn-theme-scooter .scooter-order-card,
.sn-theme-scooter .scooter-category-card,
.sn-theme-scooter .scooter-filter-panel,
.sn-theme-scooter .scooter-account-sidebar,
.sn-theme-scooter .scooter-cart-summary,
.sn-theme-scooter .scooter-account-input,
.sn-theme-scooter .scooter-legal-nav__link,
.sn-theme-scooter .scooter-pagination__btn,
.sn-theme-scooter .scooter-qty-control {
  background: var(--scooter-surface) !important;
  border-color: var(--scooter-hairline) !important;
  color: #e8edf5;
}
.sn-theme-scooter .scooter-account-sidebar { border-right-color: var(--scooter-hairline) !important; }
.sn-theme-scooter .scooter-list-card__title,
.sn-theme-scooter .scooter-account-tile__title,
.sn-theme-scooter .scooter-category-card__title,
.sn-theme-scooter .scooter-cart-summary__title,
.sn-theme-scooter .scooter-account-sidebar__title { color: #fff !important; }
.sn-theme-scooter .scooter-list-card__desc,
.sn-theme-scooter .scooter-legal-prose { color: var(--scooter-muted) !important; }
.sn-theme-scooter .scooter-card:hover,
.sn-theme-scooter .scooter-list-card:hover,
.sn-theme-scooter .scooter-account-tile:hover,
.sn-theme-scooter .scooter-order-card:hover { border-color: rgba(184,255,60,.4) !important; box-shadow: 0 16px 40px -18px rgba(0,0,0,.9) !important; }
.sn-theme-scooter .scooter-account-nav__link { color: rgba(232,237,245,.7); }
.sn-theme-scooter .scooter-account-nav__link:hover,
.sn-theme-scooter .scooter-account-nav__link--active { background: rgba(184,255,60,.1) !important; color: var(--scooter-accent) !important; }
.sn-theme-scooter .scooter-account-label { color: rgba(232,237,245,.8); }
.sn-theme-scooter .scooter-account-input { color: #fff !important; }
.sn-theme-scooter .scooter-account-input::placeholder { color: rgba(232,237,245,.4); }
.sn-theme-scooter .scooter-account-input:focus { box-shadow: 0 0 0 1px var(--scooter-accent); }
.sn-theme-scooter .scooter-cart-summary__header { background: linear-gradient(180deg, rgba(184,255,60,.08), transparent) !important; border-bottom-color: var(--scooter-hairline) !important; }
.sn-theme-scooter .scooter-legal-nav { background: rgba(10,12,16,.9) !important; }
.sn-theme-scooter .scooter-legal-page { background: var(--scooter-ink); }
.sn-theme-scooter .scooter-qty-control__btn { color: var(--scooter-accent); }
.sn-theme-scooter .scooter-qty-control__btn:hover:not(:disabled) { background: var(--scooter-accent); color: var(--scooter-ink); }
.sn-theme-scooter .scooter-qty-control__value,
.sn-theme-scooter .scooter-qty-control__input { color: #fff; }
.sn-theme-scooter .scooter-pagination__btn:hover:not(.scooter-pagination__btn--disabled) { background: var(--scooter-accent); color: var(--scooter-ink); }
.sn-theme-scooter .scooter-pagination__info { color: var(--scooter-muted); }
.sn-theme-scooter .scooter-account-btn--primary { border-color: var(--scooter-accent); color: var(--scooter-ink); background: var(--scooter-accent); }
.sn-theme-scooter .scooter-account-btn--secondary { border-color: var(--scooter-hairline); color: #e8edf5; background: transparent; }

/* Footer stays as bright accent panel? Keep dark for cohesion */
.sn-theme-scooter .scooter-footer { background: #07080b; color: #e8edf5; border-top: 1px solid var(--scooter-hairline); }
.sn-theme-scooter .scooter-footer .text-black,
.sn-theme-scooter .scooter-footer .text-gray-900 { color: #fff !important; }
.sn-theme-scooter .scooter-footer .text-gray-700,
.sn-theme-scooter .scooter-footer .text-gray-600 { color: var(--scooter-muted) !important; }
.sn-theme-scooter .scooter-footer .text-gray-500 { color: rgba(232,237,245,.5) !important; }
.sn-theme-scooter .scooter-footer .border-gray-200 { border-color: var(--scooter-hairline) !important; }
.sn-theme-scooter .scooter-footer .bg-white { background: transparent !important; }
.sn-theme-scooter .scooter-footer .hover\:text-black:hover { color: var(--scooter-accent) !important; }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .sn-theme-scooter *, .sn-theme-scooter *::before, .sn-theme-scooter *::after {
    animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important;
  }
  .sn-theme-scooter.scooter-anim-ready .scooter-reveal:not(.is-visible),
  .sn-theme-scooter.scooter-anim-ready .scooter-reveal-stagger:not(.is-visible) > * { opacity: 1; transform: none; }
}

/* ---------- Redesign v2: misc dark contrast fixes ---------- */
.sn-theme-scooter .text-black { color: #f1f5f9 !important; }
.sn-theme-scooter .scooter-footer .text-black { color: #fff !important; }
.sn-theme-scooter .border-gray-200,
.sn-theme-scooter .border-gray-300,
.sn-theme-scooter .ring-gray-200 { border-color: rgba(255,255,255,.12) !important; }

/* Variation buttons on dark */
.sn-theme-scooter .variation-attr-btn,
.sn-theme-scooter .variation-btn {
  background: rgba(255,255,255,.04) !important;
  border-color: rgba(184,255,60,.3) !important;
  color: #e8edf5 !important;
}
.sn-theme-scooter .variation-attr-btn:hover:not(:disabled),
.sn-theme-scooter .variation-btn:hover:not(:disabled) { background: var(--scooter-accent) !important; color: var(--scooter-ink) !important; border-color: var(--scooter-accent) !important; }
.sn-theme-scooter .variation-attr-btn.is-selected,
.sn-theme-scooter .variation-btn.is-selected { background: var(--scooter-accent) !important; color: var(--scooter-ink) !important; border-color: var(--scooter-accent) !important; }

/* Search modal / inputs on dark */
.sn-theme-scooter input[type="text"].bg-white,
.sn-theme-scooter input[type="email"].bg-white,
.sn-theme-scooter input[type="search"].bg-white,
.sn-theme-scooter .scooter-input {
  background: var(--scooter-surface) !important;
  border-color: rgba(255,255,255,.14) !important;
  color: #fff !important;
}
.sn-theme-scooter input::placeholder,
.sn-theme-scooter textarea::placeholder { color: rgba(232,237,245,.4) !important; }

/* Empty-state / cards inside cart & account */
.sn-theme-scooter .scooter-empty-state { color: #e8edf5; }
.sn-theme-scooter .divide-gray-100 > * + *,
.sn-theme-scooter .divide-gray-200 > * + * { border-color: rgba(255,255,255,.1) !important; }

/* ============================================================
   SCOOTER — REDESIGN v2.1: PDP / category / products pages
   ============================================================ */
.sn-theme-scooter { --scooter-volt: #b8ff3c; }

/* Dark form controls & states */
.sn-theme-scooter .scooter-select {
  background: var(--scooter-surface);
  border-color: rgba(184,255,60,.2);
  color: #e8edf5;
}
.sn-theme-scooter .scooter-select:focus { border-color: var(--scooter-accent); box-shadow: 0 0 0 3px rgba(184,255,60,.12); }
.sn-theme-scooter .scooter-select option { background: #12151c; color: #e8edf5; }
.sn-theme-scooter .scooter-empty-state {
  background: var(--scooter-surface) !important;
  border-color: rgba(184,255,60,.2) !important;
  color: var(--scooter-muted) !important;
}
.sn-theme-scooter .scooter-empty-state .text-gray-900 { color: #fff !important; }
.sn-theme-scooter .scooter-empty-state .text-gray-600 { color: var(--scooter-muted) !important; }

/* Toolbar / misc gray text on dark */
.sn-theme-scooter .scooter-page-body .text-gray-500,
.sn-theme-scooter .scooter-page-body .text-gray-600 { color: var(--scooter-muted) !important; }
.sn-theme-scooter .scooter-page-body .text-gray-900 { color: #fff !important; }

/* Page hero compact tweak for PDP */
.sn-theme-scooter .scooter-page-hero--compact .scooter-page-hero__title { font-size: clamp(1.5rem, 3.2vw, 2.4rem); }

/* ---------- PDP: sticky gallery + buy box ---------- */
@media (min-width: 1024px) {
  .sn-theme-scooter .scooter-pdp-gallery { position: sticky; top: calc(var(--scooter-header-stack-height) + 1.5rem); align-self: start; }
}
.sn-theme-scooter .scooter-pdp-price { color: var(--scooter-accent); }
.sn-theme-scooter .scooter-pdp-pricewrap { display: flex; align-items: baseline; gap: .75rem; flex-wrap: wrap; }

/* Trust badges row */
.sn-theme-scooter .scooter-trust-row {
  display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: .75rem;
}
.sn-theme-scooter .scooter-trust {
  display: flex; align-items: center; gap: .6rem; padding: .75rem .85rem;
  border-radius: .9rem; background: rgba(255,255,255,.03); border: 1px solid var(--scooter-hairline);
}
.sn-theme-scooter .scooter-trust svg { width: 1.2rem; height: 1.2rem; color: var(--scooter-accent); flex-shrink: 0; }
.sn-theme-scooter .scooter-trust span { font-size: .72rem; font-weight: 600; color: rgba(232,237,245,.85); line-height: 1.25; }

/* PDP detail (full-width lower section) */
.sn-theme-scooter .scooter-pdp-details { margin-top: 4rem; }
.sn-theme-scooter .scooter-pdp-section { padding-top: 2rem; margin-top: 2rem; border-top: 1px solid var(--scooter-hairline); }
.sn-theme-scooter .scooter-pdp-section:first-child { border-top: 0; margin-top: 0; padding-top: 0; }
.sn-theme-scooter .scooter-pdp-section__title {
  font-family: 'Outfit', sans-serif; font-size: 1.35rem; font-weight: 700; color: #fff;
  letter-spacing: -.01em; margin-bottom: 1rem; display: flex; align-items: center; gap: .6rem;
}
.sn-theme-scooter .scooter-pdp-section__title::before {
  content: ''; width: .5rem; height: 1.4rem; border-radius: 4px;
  background: linear-gradient(var(--scooter-accent), var(--scooter-teal));
}
.sn-theme-scooter .scooter-pdp-prose { color: rgba(232,237,245,.82); font-size: .95rem; line-height: 1.75; }
.sn-theme-scooter .scooter-pdp-prose :is(h1,h2,h3,h4,strong,b) { color: #fff; }
.sn-theme-scooter .scooter-pdp-prose a { color: var(--scooter-accent); }
.sn-theme-scooter .scooter-pdp-prose :is(ul,ol) { padding-left: 1.25rem; }
.sn-theme-scooter .scooter-pdp-prose li { margin: .3rem 0; }
.sn-theme-scooter .scooter-pdp-prose table { width: 100%; border-collapse: collapse; }
.sn-theme-scooter .scooter-pdp-prose td, .sn-theme-scooter .scooter-pdp-prose th { border: 1px solid var(--scooter-hairline); padding: .55rem .75rem; text-align: left; }

/* ---------- /products category landing tiles reveal ---------- */
.sn-theme-scooter .scooter-category-card { overflow: hidden; }

/* Related products heading on dark */
.sn-theme-scooter .related-products-heading { color: #fff !important; }

/* Keep mobile sticky ATC from covering page content */
@media (max-width: 1023px) {
  .sn-theme-scooter .scooter-page:has(.scooter-mobile-atc) .scooter-page-body { padding-bottom: 6rem; }
}

/* ============================================================
   SCOOTER — REDESIGN v2.2: /cart & /account contrast overhaul
   Darkens leftover light-theme component surfaces + pairs text.
   ============================================================ */

/* ---- Account ---- */
.sn-theme-scooter .scooter-account-card-link,
.sn-theme-scooter .scooter-account-order-card,
.sn-theme-scooter .scooter-account-panel,
.sn-theme-scooter .scooter-account-auth {
  background: var(--scooter-surface) !important;
  border-color: var(--scooter-hairline) !important;
  color: #e8edf5 !important;
}
.sn-theme-scooter .scooter-account-card-link:hover,
.sn-theme-scooter .scooter-account-order-card:hover {
  border-color: rgba(184,255,60,.4) !important;
  opacity: 1;
}
.sn-theme-scooter .scooter-account-panel__header {
  background: linear-gradient(180deg, rgba(184,255,60,.08), transparent) !important;
  border-color: var(--scooter-hairline) !important;
  color: #fff !important;
}
.sn-theme-scooter .scooter-account-alert--success {
  background: rgba(184,255,60,.12) !important;
  border-color: rgba(184,255,60,.35) !important;
  color: #d4ff70 !important;
}
.sn-theme-scooter .scooter-account-alert--error {
  background: rgba(248,113,113,.12) !important;
  border-color: rgba(248,113,113,.4) !important;
  color: #fca5a5 !important;
}

/* ---- Cart add modal ---- */
.sn-theme-scooter .scooter-cart-modal__panel {
  background: var(--scooter-surface) !important;
  border: 1px solid var(--scooter-hairline) !important;
  color: #e8edf5 !important;
}
.sn-theme-scooter .scooter-cart-modal__close { color: rgba(232,237,245,.6) !important; }
.sn-theme-scooter .scooter-cart-modal__close:hover { color: #fff !important; }
.sn-theme-scooter .scooter-cart-modal__status-icon {
  background: rgba(184,255,60,.14) !important;
  color: var(--scooter-accent) !important;
}
.sn-theme-scooter .scooter-cart-modal__title { color: #fff !important; }
.sn-theme-scooter .scooter-cart-modal__product-name { color: #e8edf5 !important; }
.sn-theme-scooter .scooter-cart-modal__hint { color: var(--scooter-muted) !important; }
.sn-theme-scooter .scooter-cart-modal__btn--secondary {
  background: transparent !important;
  border: 1px solid var(--scooter-hairline) !important;
  color: #e8edf5 !important;
}
.sn-theme-scooter .scooter-cart-modal__btn--secondary:hover { border-color: var(--scooter-accent) !important; color: var(--scooter-accent) !important; }
.sn-theme-scooter .scooter-cart-modal__btn--primary {
  background: var(--scooter-accent) !important;
  color: var(--scooter-ink) !important;
  border: none !important;
}

/* ---- Search modal ---- */
.sn-theme-scooter .scooter-search-modal__close { color: rgba(232,237,245,.7) !important; }
.sn-theme-scooter .scooter-search-modal__close:hover { color: #fff !important; }
.sn-theme-scooter .scooter-search-modal__hint { color: var(--scooter-muted) !important; }
.sn-theme-scooter .scooter-search-form__field {
  background: var(--scooter-surface) !important;
  border-color: var(--scooter-hairline) !important;
}
.sn-theme-scooter .scooter-search-form__icon { color: var(--scooter-muted) !important; }
.sn-theme-scooter .scooter-search-form__input {
  background: transparent !important;
  color: #fff !important;
}
.sn-theme-scooter .scooter-search-form__input::placeholder { color: rgba(232,237,245,.45) !important; }
.sn-theme-scooter .scooter-search-suggest {
  background: var(--scooter-surface) !important;
  border-color: var(--scooter-hairline) !important;
}
.sn-theme-scooter .scooter-search-suggest__item { color: #e8edf5 !important; }
.sn-theme-scooter .scooter-search-suggest__item:hover { background: rgba(184,255,60,.08) !important; }
.sn-theme-scooter .scooter-search-suggest__price { color: var(--scooter-accent) !important; }

/* ---- Contact ---- */
.sn-theme-scooter .scooter-contact-info,
.sn-theme-scooter .scooter-contact-input,
.sn-theme-scooter .scooter-contact-upload {
  background: var(--scooter-surface) !important;
  border-color: var(--scooter-hairline) !important;
  color: #e8edf5 !important;
}
.sn-theme-scooter .scooter-contact-info__title { color: #fff !important; }
.sn-theme-scooter .scooter-contact-info__item dt { color: var(--scooter-muted) !important; }
.sn-theme-scooter .scooter-contact-info__item dd,
.sn-theme-scooter .scooter-contact-info__item a { color: #e8edf5 !important; }
.sn-theme-scooter .scooter-contact-info__item a:hover { color: var(--scooter-accent) !important; }
.sn-theme-scooter .scooter-contact-label { color: rgba(232,237,245,.8) !important; }
.sn-theme-scooter .scooter-contact-input::placeholder { color: rgba(232,237,245,.45) !important; }
.sn-theme-scooter .scooter-contact-upload__text { color: var(--scooter-muted) !important; }
.sn-theme-scooter .scooter-contact-upload__link { color: var(--scooter-accent) !important; }
.sn-theme-scooter .scooter-contact-submit {
  background: var(--scooter-accent) !important;
  color: var(--scooter-ink) !important;
  border: none !important;
}

/* ---- Generic card header gradient (was fading to #fff) ---- */
.sn-theme-scooter .scooter-card { background: var(--scooter-surface) !important; border-color: var(--scooter-hairline) !important; }
.sn-theme-scooter .scooter-card__header {
  background: linear-gradient(180deg, rgba(184,255,60,.08), transparent) !important;
  border-color: var(--scooter-hairline) !important;
  color: #fff !important;
}

/* Hero / promo zone — edit gumb IZNAD navigacije (ne zarobljavati u z-index:45) */
body.sn-theme-scooter.template-editor-active .scooter-promo-editor-zone {
  /* bez z-indexa na parentu — inače fixed gumbi ostanu ispod headera (z-50) */
  position: relative;
}
body.sn-theme-scooter.template-editor-active .scooter-promo-editor-zone > [class*="absolute"][class*="top-2"] {
  position: fixed !important;
  /* toolbar (2rem) + header + razmak */
  top: calc(2rem + var(--scooter-header-height, 4rem) + 0.75rem) !important;
  right: 1rem !important;
  z-index: 120 !important;
  pointer-events: auto !important;
}
body.sn-theme-scooter.template-editor-active .scooter-promo-editor-zone .editor-edit-btn,
body.sn-theme-scooter.template-editor-active .scooter-promo-editor-zone .editor-hide-btn {
  position: relative;
  z-index: 121;
  pointer-events: auto !important;
}
body.sn-theme-scooter.template-editor-active .scooter-promo-editor-zone .scooter-hero-overlay-gradient,
body.sn-theme-scooter.template-editor-active .scooter-promo-editor-zone .scooter-hero-grid-overlay,
body.sn-theme-scooter.template-editor-active .scooter-promo-editor-zone .scooter-hero-scrollcue {
  pointer-events: none;
}

/* ---------- Kill horizontal page scroll ---------- */
html:has(body.sn-theme-scooter),
body.sn-theme-scooter {
  overflow-x: hidden;
  max-width: 100%;
}
.sn-theme-scooter .scooter-main,
.sn-theme-scooter .scooter-page,
.sn-theme-scooter .scooter-footer {
  overflow-x: clip;
  max-width: 100%;
}
.sn-theme-scooter .scooter-mission,
.sn-theme-scooter .scooter-bundle,
.sn-theme-scooter .scooter-bundle--feature,
.sn-theme-scooter .scooter-bundle__media,
.sn-theme-scooter .scooter-marquee {
  overflow: hidden;
}
.sn-theme-scooter .scooter-mission__glow {
  right: 0;
  width: min(60%, 28rem);
  pointer-events: none;
}
.sn-theme-scooter .scooter-marquee__track {
  max-width: none;
  width: max-content;
}

/* Soft primary CTAs (ATC / checkout / header) — no neon glow */
.sn-theme-scooter .scooter-btn--primary,
.sn-theme-scooter #add-to-cart,
.sn-theme-scooter #add-to-cart-mobile,
.sn-theme-scooter .scooter-header-cta {
  background: #9ad914 !important;
  background-image: none !important;
  color: #0a0c10 !important;
  box-shadow: none !important;
  filter: none !important;
}
.sn-theme-scooter .scooter-btn--primary:hover,
.sn-theme-scooter #add-to-cart:hover:not(:disabled),
.sn-theme-scooter #add-to-cart-mobile:hover,
.sn-theme-scooter .scooter-header-cta:hover {
  background: #b0e628 !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3) !important;
  filter: none !important;
}
