/*
Theme Name: QRTAG9 - Smart Vehicle Parking Tags
Theme URI: https://qrtag9.com
Author: QRTAG9 Technologies Pvt Ltd
Author URI: https://qrtag9.com
Description: High-performance, luxury custom WooCommerce & WordPress theme for QRTAG9™ Smart Contactless Vehicle Parking QR Tags. Features 2-way cloud phone number masking, real-time BlueDart tracking, interactive 3D Tag Studio, mobile quick-filter drawer, and full Yoast SEO compatibility.
Version: 2.5
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v3 or later
License URI: https://www.gnu.org/licenses/gpl.html
Text Domain: qrtag9
Tags: e-commerce, custom-menu, featured-images, full-width-template, translation-ready, woocommerce
*/

.mobile-nav-menu-ctas {

  display: none;

}



/* ==========================================================================

   QRTAG9 — SENIOR UI/UX DESIGN SYSTEM & UNIFIED STYLESHEET

   Aesthetics: World-Class Minimalist Automotive Tech (Tesla / Apple / Linear)

   Palette: Electric Cobalt (#F59E0B), Signature Amber Gold (#FFB703), Tech Emerald (#00C48C)

   Dark Surfaces: Deep Obsidian (#070B16, #0D1527, #131E35)

   Canvas: Crisp Porcelain White (#FFFFFF / #F8FAFC)

   ========================================================================== */



:root {

  /* Brand Primary: Signature Radiant Gold / Warm Yellow */

  --brand-blue: #F59E0B;

  --brand-blue-hover: #D97706;

  --brand-blue-subtle: #FEF9C3;

  --brand-blue-border: #FDE68A;

  --brand-blue-dark: #B45309;

  --brand-blue-glow: rgba(245, 158, 11, 0.28);

  --brand-accent: #FACC15;

  --brand-accent-hover: #EAB308;



  /* Signature Alert & Vehicle Identity Gold */

  --brand-yellow: #FFB703;

  --brand-yellow-hover: #F59E0B;

  --brand-yellow-dark: #D97706;

  --brand-yellow-subtle: #FFFBEB;

  --brand-yellow-border: #FDE68A;

  --brand-yellow-glow: rgba(255, 183, 3, 0.28);



  /* Trust, Verified Active & WhatsApp Connectivity */

  --brand-emerald: #00C48C;

  --brand-emerald-bright: #00E5A3;

  --brand-emerald-hover: #00A877;

  --brand-emerald-subtle: #ECFDF5;

  --brand-emerald-border: #A7F3D0;

  --brand-emerald-dark: #065F46;

  --brand-emerald-glow: rgba(0, 196, 140, 0.25);



  /* Urgent Signal & Emergency Accent */

  --signal-orange: #FF5C00;

  --signal-orange-hover: #E05000;

  --signal-orange-subtle: #FFF4ED;

  --signal-orange-border: #FFD4BF;

  --signal-orange-glow: rgba(255, 92, 0, 0.25);



  /* Danger Crimson */

  --danger-crimson: #EF4444;

  --danger-hover: #DC2626;

  --danger-subtle: #FEF2F2;



  /* Ink & Typography Hierarchy (Neutral Dark) */

  --ink-900: #0A0F1D;

  /* Deep Obsidian Charcoal */

  --ink-800: #1E293B;

  /* Primary Headers */

  --ink-700: #334155;

  /* Prominent Body */

  --ink-600: #475569;

  /* Secondary Body */

  --ink-500: #64748B;

  /* Muted Steel */

  --ink-400: #94A3B8;

  /* Inactive / Placeholder */

  --ink-300: #CBD5E1;

  /* Dividers */

  --ink-100: #F1F5F9;

  /* Subtle fills */



  /* Unified Obsidian Dark Surface Hierarchy */

  --surface-dark-base: #070B16;

  /* Deepest cockpit black */

  --surface-dark-card: #0D1527;

  /* Elevated glass cards */

  --surface-dark-elevated: #131E35;

  /* Hover / nested stages */

  --surface-dark-border: rgba(255, 255, 255, 0.08);

  --surface-dark-border-hover: rgba(255, 255, 255, 0.18);

  --surface-dark-glow: rgba(245, 158, 11, 0.12);

  --ink-dark-primary: #FFFFFF;

  --ink-dark-secondary: #CBD5E1;

  --ink-dark-muted: #94A3B8;



  /* Canvas Surfaces (Light Mode) */

  --canvas-white: #FFFFFF;

  --canvas-subtle: #F8FAFC;

  --canvas-alt: #F1F5F9;



  /* Line Borders */

  --line-subtle: #E2E8F0;

  --line-card: rgba(10, 15, 29, 0.08);

  --line-focus: #F59E0B;



  /* Modern High-End Typography */

  --font-sans: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  --font-serif: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  /* Standardized to Sans */

  --font-mono: 'JetBrains Mono', monospace;



  /* Geometry & Radius */

  --radius-xs: 6px;

  --radius-sm: 10px;

  --radius-md: 16px;

  --radius-lg: 24px;

  --radius-xl: 32px;

  --radius-pill: 9999px;



  /* Precision Shadows (Layered Ambient + Key) */

  --shadow-xs: 0 1px 2px rgba(10, 15, 29, 0.04);

  --shadow-sm: 0 4px 12px rgba(10, 15, 29, 0.05);

  --shadow-md: 0 12px 30px -8px rgba(10, 15, 29, 0.08);

  --shadow-lg: 0 24px 60px -15px rgba(10, 15, 29, 0.12);

  --shadow-blue-glow: 0 10px 30px rgba(245, 158, 11, 0.25);

  --shadow-yellow-glow: 0 10px 30px rgba(255, 183, 3, 0.28);

  --shadow-emerald-glow: 0 10px 30px rgba(0, 196, 140, 0.25);

  --shadow-orange-glow: 0 10px 30px rgba(255, 92, 0, 0.25);



  /* Timing Curves */

  --ease-spring: cubic-bezier(0.16, 1, 0.3, 1);

  --ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);

}



/* ==========================================================================

   RESET & FOUNDATIONS

   ========================================================================== */

*,

*::before,

*::after {

  box-sizing: border-box;

  margin: 0;

  padding: 0;

}



html {

  overflow-x: hidden;

  width: 100%;

  font-family: var(--font-sans);

  background-color: var(--canvas-white);

  color: var(--ink-900);

  scroll-behavior: smooth;

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;

}



body.site-body {

  min-height: 100vh;

  line-height: 1.6;

  background-color: var(--canvas-white);

  color: var(--ink-900);

  overflow-x: hidden;

}



a {

  color: inherit;

  text-decoration: none;

}



button,

input,

select,

textarea {

  font-family: inherit;

  color: inherit;

  border: none;

  outline: none;

  background: none;

}



img {

  max-width: 100%;

  height: auto;

  display: block;

}



.container {

  width: min(1200px, calc(100% - 48px));

  margin-inline: auto;

}



/* ==========================================================================

   MICRO-TYPOGRAPHY & UTILITIES

   ========================================================================== */

.section-eyebrow {

  font-family: var(--font-mono);

  font-size: 11px;

  font-weight: 700;

  letter-spacing: 0.14em;

  text-transform: uppercase;

  color: var(--brand-blue);

  background: var(--brand-blue-subtle);

  border: 1px solid var(--brand-blue-border);

  padding: 4px 12px;

  border-radius: var(--radius-pill);

  display: inline-block;

  margin-bottom: 14px;

}



.section-title {

  font-size: clamp(32px, 4vw, 46px);

  font-weight: 800;

  line-height: 1.15;

  letter-spacing: -0.03em;

  color: var(--ink-900);

  margin-bottom: 16px;

}



.section-description {

  font-size: 17px;

  color: var(--ink-600);

  max-width: 620px;

  margin-inline: auto;

  line-height: 1.65;

}



.text-center {

  text-align: center;

}



/* ==========================================================================

   BUTTON DESIGN SYSTEM

   ========================================================================== */

.btn {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 10px;

  padding: 12px 24px;

  font-size: 14px;

  font-weight: 700;

  border-radius: var(--radius-pill);

  cursor: pointer;

  transition: all 0.22s var(--ease-spring);

  white-space: nowrap;

}



.btn-xl {

  padding: 16px 32px;

  font-size: 15px;

}



.btn-lg {

  padding: 14px 28px;

  font-size: 14px;

}



.btn-block {

  width: 100%;

}



.btn-primary {

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 850;

  box-shadow: 0 4px 18px rgba(245, 158, 11, 0.32);

  border: none;

}



.btn-primary:hover {

  background: linear-gradient(180deg, #FDE047 0%, #EAB308 100%);

  color: #000000;

  transform: translateY(-2px);

  box-shadow: 0 8px 25px rgba(245, 158, 11, 0.42);

}



.btn-secondary {

  background: var(--canvas-white);

  color: var(--ink-900);

  border: 1px solid var(--line-subtle);

  box-shadow: var(--shadow-xs);

}



.btn-secondary:hover {

  background: var(--canvas-subtle);

  border-color: var(--ink-300);

  transform: translateY(-2px);

  box-shadow: var(--shadow-sm);

}



.btn-ghost {

  background: transparent;

  color: var(--ink-700);

  border: 1px solid var(--line-subtle);

}



.btn-ghost:hover {

  background: var(--canvas-subtle);

  color: var(--ink-900);

  border-color: var(--ink-300);

}



/* ==========================================================================

   TOP ANNOUNCEMENT BAR

   ========================================================================== */

.top-announcement {

  background: var(--ink-900);

  color: #F8FAFC;

  font-size: 13px;

  padding: 9px 20px;

  position: relative;

  z-index: 101;

}



.announcement-inner {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 12px;

  flex-wrap: wrap;

}



.live-pill {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  background: rgba(0, 196, 140, 0.15);

  color: var(--brand-emerald-bright);

  border: 1px solid rgba(0, 196, 140, 0.3);

  font-family: var(--font-mono);

  font-size: 10px;

  font-weight: 800;

  letter-spacing: 0.08em;

  padding: 2px 8px;

  border-radius: var(--radius-pill);

}



.pulse-dot {

  width: 6px;

  height: 6px;

  border-radius: 50%;

  background: var(--brand-emerald-bright);

  box-shadow: 0 0 8px var(--brand-emerald-bright);

}



.ticker-text {

  font-weight: 500;

}



.ticker-cta {

  color: #FF5C00;

  font-weight: 700;

  text-decoration: underline;

  text-underline-offset: 3px;

}



/* ==========================================================================

   NAVIGATION HEADER

   ========================================================================== */

.site-header {

  position: sticky;

  top: 0;

  z-index: 100;

  background: rgba(255, 255, 255, 0.9);

  backdrop-filter: blur(20px);

  -webkit-backdrop-filter: blur(20px);

  border-bottom: 1px solid var(--line-subtle);

  transition: all 0.25s var(--ease-smooth);

}



.site-header.scrolled {

  background: rgba(255, 255, 255, 0.98);

  box-shadow: 0 4px 20px rgba(10, 15, 29, 0.04);

}



.nav-container {

  max-width: 1240px;

  margin-inline: auto;

  padding: 14px 24px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 20px;

}



.brand-link {

  display: flex;

  align-items: center;

  gap: 10px;

}



.brand-mark {

  width: 32px;

  height: 32px;

  display: grid;

  place-items: center;

}



.brand-typography {

  display: flex;

  flex-direction: column;

}



.brand-name {

  font-size: 20px;

  font-weight: 900;

  letter-spacing: -0.04em;

  line-height: 1;

  color: var(--ink-900);

}



.brand-accent {

  color: var(--brand-blue);

}



.brand-meta {

  font-size: 9px;

  font-weight: 800;

  letter-spacing: 0.12em;

  color: var(--ink-400);

  text-transform: uppercase;

}



.primary-nav {
  display: flex;
  align-items: center;
  gap: 28px;
}

.primary-nav ul,
.primary-nav .menu,
.primary-nav-menu {
  display: flex;
  align-items: center;
  gap: 28px;
  list-style: none !important;
  margin: 0;
  padding: 0;
}

.primary-nav li {
  list-style: none !important;
  margin: 0;
  padding: 0;
  display: inline-flex;
  align-items: center;
}

.primary-nav li::before,
.primary-nav li::marker {
  content: none !important;
  display: none !important;
}

.primary-nav a,
.primary-nav li a,
.nav-anchor {
  font-size: 14px;
  font-weight: 600;
  color: var(--ink-600);
  transition: color 0.2s ease;
  text-decoration: none;
}

.primary-nav a:hover,
.primary-nav li a:hover,
.nav-anchor:hover {
  color: var(--brand-blue);
}

.footer-nav-col ul {
  list-style: none !important;
  margin: 0;
  padding: 0;
}

.footer-nav-col li {
  list-style: none !important;
  margin: 0 0 12px 0;
  padding: 0;
}

.footer-nav-col li::before,
.footer-nav-col li::marker {
  content: none !important;
  display: none !important;
}

.footer-nav-col li a {
  display: block;
  color: #94A3B8;
  font-size: 14px;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  text-decoration: none;
}

.footer-nav-col li a:hover {
  color: #60A5FA;
  transform: translateX(4px);
  text-shadow: 0 0 16px rgba(96, 165, 250, 0.35);
}



.nav-actions {

  display: flex;

  align-items: center;

  gap: 12px;

}



.hamburger-btn {

  display: none;

  flex-direction: column;

  gap: 5px;

  cursor: pointer;

  padding: 6px;

}



.hamburger-btn span {

  display: block;

  width: 22px;

  height: 2px;

  background: var(--ink-900);

  border-radius: 2px;

}



/* ==========================================================================

   HERO SECTION

   ========================================================================== */

.hero-section {

  position: relative;

  padding: 80px 0 110px;

  overflow: hidden;

  background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);

}



.hero-bg-canvas {

  position: absolute;

  inset: 0;

  pointer-events: none;

  overflow: hidden;

}



.hero-three-canvas {

  position: absolute;

  inset: 0;

  width: 100%;

  height: 100%;

  display: block;

  pointer-events: none;

  z-index: 1;

}



.subtle-mesh-pattern {

  position: absolute;

  inset: 0;

  background-image: radial-gradient(#CBD5E1 1.2px, transparent 1.2px);

  background-size: 28px 28px;

  opacity: 0.45;

  mask-image: radial-gradient(circle at 50% 30%, black 40%, transparent 85%);

}



.brand-gradient-orb {

  position: absolute;

  border-radius: 50%;

  filter: blur(100px);

}



.orb-blue {

  width: 500px;

  height: 500px;

  top: -120px;

  right: -80px;

  background: radial-gradient(circle, rgba(245, 158, 11, 0.12) 0%, transparent 70%);

}



.orb-orange {

  width: 480px;

  height: 480px;

  bottom: -150px;

  left: -100px;

  background: radial-gradient(circle, rgba(255, 92, 0, 0.08) 0%, transparent 70%);

}



.hero-layout-container {

  display: flex;

  flex-direction: column;

  align-items: center;

  position: relative;

  z-index: 2;

  width: 100%;

}



.hero-header-box {

  max-width: 860px;

  margin: 0 auto 36px;

  display: flex;

  flex-direction: column;

  align-items: center;

}



.hero-status-pill {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  padding: 6px 14px;

  background: var(--canvas-white);

  border: 1px solid var(--line-subtle);

  border-radius: var(--radius-pill);

  font-size: 12px;

  font-weight: 600;

  color: var(--ink-700);

  box-shadow: var(--shadow-xs);

  margin-bottom: 22px;

  max-width: 100%;

  line-height: 1.35;

  text-align: center;

}



.badge-dot-emerald {

  width: 8px;

  height: 8px;

  border-radius: 50%;

  background: var(--shield-emerald);

  box-shadow: 0 0 10px rgba(0, 196, 140, 0.7);

}



.hero-headline {

  font-size: clamp(28px, 6.5vw, 60px);

  font-weight: 850;

  line-height: 1.1;

  letter-spacing: -0.035em;

  color: var(--ink-900);

  margin-bottom: 20px;

}



.hero-gradient-text {

  background: linear-gradient(135deg, var(--brand-blue) 0%, var(--brand-blue) 45%, var(--signal-orange) 100%);

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

  display: inline;

}



.hero-lead {

  font-size: 18px;

  color: var(--ink-600);

  line-height: 1.65;

  margin-bottom: 30px;

  max-width: 680px;

}



.hero-cta-cluster {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 16px;

  flex-wrap: wrap;

}



.btn-xl {

  padding: 14px 28px;

  font-size: 15px;

  font-weight: 700;

  border-radius: var(--radius-md);

}



/* ==========================================================================

   CINEMATIC ANIMATED STORY VIDEO PLAYER

   Aesthetics: Sleek Obsidian Frame + Precision HUD Glass Overlays

   ========================================================================== */

.hero-video-wrapper {

  width: 100%;

  max-width: 1140px;

  margin: 36px auto 44px;

  position: relative;

  border-radius: 24px;

  padding: 6px;

  background: linear-gradient(180deg, #FFFFFF 0%, #F1F5F9 100%);

  border: 1px solid rgba(10, 15, 29, 0.1);

  box-shadow:

    0 30px 80px -20px rgba(10, 15, 29, 0.14),

    0 12px 35px -10px rgba(245, 158, 11, 0.12),

    0 0 0 1px rgba(255, 255, 255, 0.8) inset;

}



.video-player-frame {

  background: var(--surface-dark-base);

  border-radius: 20px;

  overflow: hidden;

  display: flex;

  flex-direction: column;

  position: relative;

  border: 1px solid rgba(255, 255, 255, 0.08);

}



/* Player Top Control Bar */

.player-topbar {

  display: flex;

  align-items: center;

  justify-content: space-between;

  padding: 12px 20px;

  background: rgba(15, 23, 42, 0.96);

  backdrop-filter: blur(16px);

  border-bottom: 1px solid rgba(255, 255, 255, 0.08);

  z-index: 10;

  gap: 16px;

}



.player-live-badge {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  font-family: var(--font-mono);

  font-size: 11px;

  font-weight: 700;

  letter-spacing: 0.08em;

  color: #F8FAFC;

  white-space: nowrap;

}



.rec-red-dot {

  width: 8px;

  height: 8px;

  border-radius: 50%;

  background: #EF4444;

  box-shadow: 0 0 8px #EF4444;

  animation: recBlink 1.4s infinite;

}



.scene-tabs-group {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  background: rgba(255, 255, 255, 0.06);

  padding: 4px;

  border-radius: var(--radius-pill);

  border: 1px solid rgba(255, 255, 255, 0.08);

}



.scene-tab-btn {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  padding: 6px 14px;

  border-radius: var(--radius-pill);

  border: none;

  background: transparent;

  color: #94A3B8;

  font-size: 12px;

  font-weight: 600;

  font-family: var(--font-sans);

  cursor: pointer;

  transition: all 0.25s var(--ease-smooth);

  white-space: nowrap;

}



.scene-tab-btn:hover {

  color: #FFFFFF;

  background: rgba(255, 255, 255, 0.08);

}



.scene-tab-btn .tab-index {

  font-family: var(--font-mono);

  font-size: 10px;

  font-weight: 800;

  padding: 2px 6px;

  border-radius: 4px;

  background: rgba(255, 255, 255, 0.08);

  color: #CBD5E1;

}



.scene-tab-btn.active {

  background: var(--brand-blue);

  color: #FFFFFF;

  box-shadow: 0 2px 12px rgba(245, 158, 11, 0.45);

}



.scene-tab-btn.active .tab-index {

  background: rgba(255, 255, 255, 0.25);

  color: #FFFFFF;

}



.player-playback-tools {

  display: flex;

  align-items: center;

}



.playback-toggle-btn {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  padding: 6px 14px;

  border-radius: var(--radius-pill);

  background: rgba(255, 255, 255, 0.08);

  border: 1px solid rgba(255, 255, 255, 0.15);

  color: #F8FAFC;

  font-size: 11px;

  font-weight: 700;

  font-family: var(--font-mono);

  cursor: pointer;

  transition: all 0.2s ease;

}



.playback-toggle-btn:hover {

  background: rgba(255, 255, 255, 0.18);

  color: #FFFFFF;

}



/* Video Stage Viewport */

.video-viewport {

  position: relative;

  width: 100%;

  aspect-ratio: 16 / 9;

  min-height: 480px;

  max-height: 600px;

  background: var(--surface-dark-base);

  overflow: hidden;

}



.video-scene-slide {

  position: absolute;

  inset: 0;

  opacity: 0;

  visibility: hidden;

  transition: opacity 0.65s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.65s cubic-bezier(0.4, 0, 0.2, 1);

  pointer-events: none;

}



.video-scene-slide.active {

  opacity: 1;

  visibility: visible;

  pointer-events: auto;

}



.scene-media-bg {

  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: center 35%;

  display: block;

  transform: scale(1);

  transition: transform 6s cubic-bezier(0.25, 1, 0.5, 1);

}



.video-scene-slide.active .scene-media-bg {

  transform: scale(1.035);

}



.scene-overlay-gradient {

  position: absolute;

  inset: 0;

  background: linear-gradient(180deg,

      rgba(10, 15, 29, 0.15) 0%,

      rgba(10, 15, 29, 0.25) 35%,

      rgba(10, 15, 29, 0.88) 100%);

  pointer-events: none;

}



/* HUD Layer */

.scene-hud-layer {

  position: absolute;

  inset: 0;

  padding: 28px;

  display: flex;

  flex-direction: column;

  justify-content: flex-end;

  pointer-events: none;

  z-index: 5;

}



/* Scene 1: Radar Target Beacon */

.hud-target-beacon {

  position: absolute;

  top: 36%;

  left: 36%;

  transform: translate(-50%, -50%);

  pointer-events: auto;

  cursor: pointer;

}



.beacon-pulse-ring {

  position: absolute;

  inset: -18px;

  border-radius: 50%;

  border: 2px solid var(--signal-orange);

  animation: radarPing 2s infinite cubic-bezier(0, 0, 0.2, 1);

}



.beacon-core {

  display: block;

  width: 18px;

  height: 18px;

  border-radius: 50%;

  background: var(--signal-orange);

  box-shadow: 0 0 16px var(--signal-orange), 0 0 30px rgba(255, 92, 0, 0.6);

  border: 2px solid #FFFFFF;

}



.beacon-tooltip {

  position: absolute;

  top: -62px;

  left: 50%;

  transform: translateX(-50%);

  background: rgba(10, 15, 29, 0.92);

  backdrop-filter: blur(12px);

  border: 1px solid rgba(255, 92, 0, 0.45);

  border-radius: 8px;

  padding: 6px 12px;

  color: #FFFFFF;

  white-space: nowrap;

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);

  text-align: center;

}



.beacon-tooltip strong {

  display: block;

  color: #FF7A29;

  font-weight: 800;

  font-family: var(--font-mono);

  font-size: 10px;

  letter-spacing: 0.05em;

}



.beacon-tooltip small {

  display: block;

  color: #CBD5E1;

  font-size: 10px;

  margin-top: 2px;

}



/* Scene 2: Laser Scanning Viewfinder */

.scanning-viewfinder-overlay {

  position: absolute;

  top: 38%;

  left: 50%;

  transform: translate(-50%, -50%);

  width: min(340px, 80%);

  height: min(220px, 50%);

  border: 1px solid rgba(0, 196, 140, 0.35);

  background: rgba(0, 196, 140, 0.04);

  backdrop-filter: blur(2px);

  border-radius: 14px;

}



.laser-scan-line {

  position: absolute;

  left: 0;

  right: 0;

  height: 3px;

  background: linear-gradient(90deg, transparent, var(--brand-emerald-bright), #F59E0B, transparent);

  box-shadow: 0 0 16px var(--brand-emerald-bright), 0 0 32px #F59E0B;

  animation: laserSweep 2.2s infinite ease-in-out;

}



.scan-corner {

  position: absolute;

  width: 20px;

  height: 20px;

  border-color: var(--brand-emerald-bright);

  border-style: solid;

}



.corner-tl {

  top: -2px;

  left: -2px;

  border-width: 3px 0 0 3px;

  border-top-left-radius: 8px;

}



.corner-tr {

  top: -2px;

  right: -2px;

  border-width: 3px 3px 0 0;

  border-top-right-radius: 8px;

}



.corner-bl {

  bottom: -2px;

  left: -2px;

  border-width: 0 0 3px 3px;

  border-bottom-left-radius: 8px;

}



.corner-br {

  bottom: -2px;

  right: -2px;

  border-width: 0 3px 3px 0;

  border-bottom-right-radius: 8px;

}



.scan-lock-status {

  position: absolute;

  bottom: -38px;

  left: 50%;

  transform: translateX(-50%);

  background: rgba(10, 15, 29, 0.92);

  border: 1px solid rgba(0, 229, 163, 0.45);

  border-radius: 9999px;

  padding: 5px 14px;

  font-family: var(--font-mono);

  font-size: 11px;

  font-weight: 700;

  color: var(--brand-emerald-bright);

  white-space: nowrap;

  display: flex;

  align-items: center;

  gap: 8px;

  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);

}



.dot-green-blink {

  width: 7px;

  height: 7px;

  border-radius: 50%;

  background: var(--brand-emerald-bright);

  box-shadow: 0 0 8px var(--brand-emerald-bright);

  animation: dotBlink 1s infinite;

}



/* Scene 3: Floating Push Toast */

.owner-animated-toast {

  position: absolute;

  top: 10%;

  left: 50%;

  transform: translateX(-50%);

  width: min(440px, 92%);

  background: rgba(255, 255, 255, 0.96);

  backdrop-filter: blur(20px);

  border: 1px solid rgba(255, 255, 255, 0.85);

  border-radius: 18px;

  padding: 16px 18px;

  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);

  pointer-events: auto;

  animation: toastFloatIn 0.8s cubic-bezier(0.16, 1, 0.3, 1);

}



.toast-app-head {

  display: flex;

  align-items: center;

  gap: 10px;

  margin-bottom: 8px;

}



.toast-app-logo {

  width: 24px;

  height: 24px;

  background: var(--brand-blue);

  color: #FFFFFF;

  border-radius: 6px;

  display: grid;

  place-items: center;

  font-weight: 900;

  font-size: 10px;

  letter-spacing: -0.02em;

}



.toast-app-head strong {

  font-size: 12px;

  font-weight: 700;

  color: var(--ink-900);

}



.toast-timing {

  margin-left: auto;

  font-size: 11px;

  color: var(--ink-500);

  font-family: var(--font-mono);

}



.toast-body-text strong {

  display: block;

  font-size: 13px;

  font-weight: 700;

  color: var(--ink-900);

  margin-bottom: 2px;

}



.toast-body-text p {

  font-size: 12px;

  color: var(--ink-700);

  line-height: 1.45;

}



.toast-reply-badge {

  margin-top: 10px;

  padding-top: 10px;

  border-top: 1px solid var(--line-subtle);

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 8px;

  flex-wrap: wrap;

}



.toast-reply-badge span {

  font-size: 11px;

  color: var(--ink-800);

}



.secure-mask-chip {

  background: rgba(0, 196, 140, 0.15);

  color: var(--brand-emerald-dark);

  border: 1px solid rgba(0, 196, 140, 0.35);

  border-radius: 9999px;

  padding: 3px 8px;

  font-size: 10px;

  font-weight: 700;

  font-family: var(--font-mono);

}



/* Glass Narrative Card */

.scene-narrative-card {

  align-self: flex-start;

  max-width: 540px;

  background: rgba(10, 15, 29, 0.85);

  backdrop-filter: blur(16px);

  border: 1px solid rgba(255, 255, 255, 0.15);

  border-radius: 16px;

  padding: 18px 22px;

  color: #FFFFFF;

  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);

  pointer-events: auto;

}



.narrative-tag {

  font-family: var(--font-mono);

  font-size: 10px;

  font-weight: 800;

  letter-spacing: 0.1em;

  color: var(--brand-emerald-bright);

  margin-bottom: 6px;

}



.scene-narrative-card h3 {

  font-size: 18px;

  font-weight: 800;

  letter-spacing: -0.02em;

  color: #FFFFFF;

  margin-bottom: 6px;

  line-height: 1.25;

}



.scene-narrative-card p {

  font-size: 13px;

  color: #CBD5E1;

  line-height: 1.5;

  margin-bottom: 10px;

}



.narrative-action-hint {

  display: flex;

  align-items: center;

  gap: 8px;

  font-size: 11px;

  font-weight: 700;

  color: #FFB380;

}



.hint-dot {

  width: 6px;

  height: 6px;

  border-radius: 50%;

  background: var(--signal-orange);

}



.hint-dot.success {

  background: var(--shield-emerald);

}



/* Video Timeline Scrubber Bar */

.player-scrubber-bar {

  display: flex;

  align-items: stretch;

  gap: 12px;

  padding: 14px 20px 22px;

  background: rgba(15, 23, 42, 0.98);

  border-top: 1px solid rgba(255, 255, 255, 0.08);

}



.scrubber-segment {

  flex: 1;

  position: relative;

  height: 6px;

  background: rgba(255, 255, 255, 0.14);

  border-radius: 9999px;

  cursor: pointer;

  transition: all 0.2s ease;

  display: flex;

  flex-direction: column;

}



.scrubber-segment:hover {

  background: rgba(255, 255, 255, 0.25);

}



.scrubber-fill {

  position: absolute;

  top: 0;

  left: 0;

  bottom: 0;

  width: 0%;

  background: linear-gradient(90deg, var(--brand-blue), var(--shield-emerald));

  border-radius: 9999px;

  transition: width 0.08s linear;

}



.segment-label {

  position: absolute;

  top: 12px;

  left: 0;

  font-family: var(--font-mono);

  font-size: 10px;

  font-weight: 700;

  color: #94A3B8;

  white-space: nowrap;

}



.scrubber-segment:hover .segment-label {

  color: #FFFFFF;

}



/* Proof Bar */

.hero-proof-bar {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 36px;

  padding-top: 36px;

  border-top: 1px solid var(--line-subtle);

  width: 100%;

  max-width: 900px;

  margin: 0 auto;

}



.proof-metric strong {

  display: block;

  font-size: 26px;

  font-weight: 800;

  color: var(--ink-900);

  font-family: var(--font-mono);

  letter-spacing: -0.02em;

  line-height: 1;

}



.proof-metric span {

  display: block;

  font-size: 12px;

  color: var(--ink-500);

  margin-top: 4px;

  font-weight: 500;

}



.rating-cluster {

  display: flex;

  align-items: center;

  gap: 6px;

}



.stars-gold {

  color: #F59E0B;

  letter-spacing: 2px;

}



.proof-divider {

  width: 1px;

  height: 36px;

  background: var(--line-subtle);

}



/* ==========================================================================

   VIDEO PLAYER KEYFRAME ANIMATIONS

   ========================================================================== */

@keyframes laserSweep {

  0% {

    top: 4%;

    opacity: 0.3;

  }



  50% {

    opacity: 1;

  }



  100% {

    top: 96%;

    opacity: 0.3;

  }

}



@keyframes radarPing {

  0% {

    transform: scale(0.6);

    opacity: 1;

  }



  100% {

    transform: scale(2.4);

    opacity: 0;

  }

}



@keyframes recBlink {



  0%,

  100% {

    opacity: 1;

  }



  50% {

    opacity: 0.3;

  }

}



@keyframes dotBlink {



  0%,

  100% {

    opacity: 1;

    transform: scale(1);

  }



  50% {

    opacity: 0.35;

    transform: scale(0.8);

  }

}



@keyframes toastFloatIn {

  0% {

    opacity: 0;

    transform: translate(-50%, -15px) scale(0.96);

  }



  100% {

    opacity: 1;

    transform: translate(-50%, 0) scale(1);

  }

}



/* ==========================================================================

   FLAGSHIP SMART VEHICLE QR STICKER SHOWCASE & ORDER SECTION

   Senior UI/UX Design System — Faithfully Modeled from Reference Photography

   Palette: Signal Yellow (var(--brand-yellow)), Deep Obsidian Slate (#0F172A), Porcelain (#FFFFFF, #FAFBFD), Ivory (var(--brand-yellow-subtle))

   ========================================================================== */



.flagship-section {

  position: relative;

  background-color: #FAFBFD;

  padding: 56px 0 68px;

  overflow: hidden;

  border-top: 1px solid #E2E8F0;

  border-bottom: 1px solid #E2E8F0;

}



.flagship-ambient-glow {

  position: absolute;

  top: -120px;

  right: -80px;

  width: 550px;

  height: 550px;

  background: radial-gradient(circle, rgba(255, 186, 8, 0.1) 0%, rgba(245, 158, 11, 0.03) 50%, transparent 70%);

  pointer-events: none;

  z-index: 0;

}



.flagship-container {

  max-width: 1240px;

  margin: 0 auto;

  padding: 0 24px;

  position: relative;

  z-index: 1;

}



/* Two-column Hero Grid */

.flagship-hero-grid {

  display: grid;

  grid-template-columns: 1.05fr 1fr;

  gap: 46px;

  align-items: center;

  margin-bottom: 36px;

}



/* LEFT COLUMN: BRAND & BUY BOX */

.flagship-content-col {

  display: flex;

  flex-direction: column;

  gap: 16px;

}



/* Category Pill Badge */

.flagship-eyebrow-pill {

  display: inline-flex;

  align-items: center;

  gap: 7px;

  background: var(--brand-yellow-subtle);

  border: 1px solid var(--brand-yellow-border);

  color: #1F2937;

  padding: 6px 14px;

  border-radius: 9999px;

  font-size: 11px;

  font-weight: 800;

  letter-spacing: 0.07em;

  text-transform: uppercase;

  width: fit-content;

  box-shadow: 0 1px 4px rgba(245, 158, 11, 0.08);

}



.flagship-eyebrow-pill .bolt-symbol {

  color: #F59E0B;

  font-size: 13px;

  line-height: 1;

}



/* Brand & Main Headline */

.flagship-title-group {

  display: flex;

  flex-direction: column;

  gap: 4px;

}



.flagship-brand-logo {

  font-size: 54px;

  font-weight: 950;

  line-height: 1;

  letter-spacing: -0.045em;

  color: var(--ink-900);

  font-family: var(--font-sans);

}



.flagship-brand-logo .brand-text {

  color: var(--ink-900);

}



.flagship-brand-logo .brand-num-nine {

  color: var(--brand-yellow);

  display: inline-block;

  margin-left: -1px;

}



.flagship-headline {

  font-size: clamp(28px, 3.2vw, 40px);

  font-weight: 800;

  line-height: 1.18;

  letter-spacing: -0.025em;

  color: var(--ink-900);

  margin-top: 4px;

}



/* Descriptive Paragraph */

.flagship-lead {

  font-size: 15px;

  line-height: 1.6;

  color: #4B5563;

  max-width: 530px;

  margin: 0;

}



/* 4 Quick Feature Circles Row */

.flagship-features-cluster {

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 12px;

  margin: 6px 0 4px;

}



.flagship-feature-item {

  display: flex;

  flex-direction: column;

  align-items: center;

  text-align: center;

  gap: 9px;

}



.flagship-feature-item .feature-icon-circle {

  width: 48px;

  height: 48px;

  border-radius: 50%;

  background: #F1F5F9;

  border: 1.5px solid #E2E8F0;

  display: grid;

  place-items: center;

  color: #1E293B;

  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);

}



.flagship-feature-item:hover .feature-icon-circle {

  background: #FFFFFF;

  border-color: var(--brand-yellow);

  color: var(--ink-900);

  transform: translateY(-2px);

  box-shadow: 0 6px 16px rgba(245, 183, 0, 0.18);

}



.flagship-feature-item .feature-caption {

  display: flex;

  flex-direction: column;

  font-size: 12px;

  font-weight: 700;

  line-height: 1.25;

  color: #1E293B;

}



/* Product Buy Box Card */

.flagship-buy-card {

  background: #FFFFFF;

  border: 1px solid #E5E7EB;

  border-radius: 20px;

  padding: 22px 24px;

  box-shadow: 0 8px 30px -6px rgba(15, 23, 42, 0.06), 0 2px 6px rgba(0, 0, 0, 0.02);

  display: flex;

  flex-direction: column;

  gap: 18px;

}



.buy-card-header {

  display: flex;

  justify-content: space-between;

  align-items: flex-start;

  gap: 16px;

}



.buy-card-title-col {

  flex: 1;

}



.title-with-pill {

  display: flex;

  align-items: center;

  gap: 10px;

  margin-bottom: 6px;

}



.product-title-text {

  font-size: 18px;

  font-weight: 800;

  color: var(--ink-900);

  letter-spacing: -0.015em;

  margin: 0;

}



.badge-bestseller-pill {

  background: #E0F2FE;

  color: #0284C7;

  font-size: 11.5px;

  font-weight: 700;

  padding: 3px 9px;

  border-radius: 6px;

  letter-spacing: 0.02em;

}



.product-benefit-desc {

  font-size: 13px;

  color: #64748B;

  line-height: 1.45;

  margin: 0;

  max-width: 330px;

}



.buy-card-price-col {

  display: flex;

  flex-direction: column;

  align-items: flex-end;

  text-align: right;

  gap: 2px;

}



.price-display-num {

  font-size: 32px;

  font-weight: 900;

  color: var(--ink-900);

  line-height: 1;

  letter-spacing: -0.03em;

  font-family: var(--font-sans);

}



.price-display-num .price-curr {

  font-size: 24px;

  font-weight: 800;

  vertical-align: baseline;

}



.price-tax-note {

  font-size: 10.5px;

  color: #94A3B8;

  font-weight: 500;

}



.price-shipping-pill {

  display: inline-flex;

  align-items: center;

  gap: 4px;

  color: var(--brand-emerald-dark);

  font-size: 11.5px;

  font-weight: 700;

  margin-top: 3px;

}



/* Action Bar: Quantity + Button */

.buy-card-action-bar {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 16px;

  padding-top: 4px;

}



.qty-control-group {

  display: flex;

  align-items: center;

  gap: 14px;

}



.qty-title {

  font-size: 14px;

  font-weight: 700;

  color: #1F2937;

}



.qty-pill-stepper {

  display: inline-flex;

  align-items: center;

  background: #F8FAFC;

  border: 1.5px solid #E2E8F0;

  border-radius: 9999px;

  padding: 3px 6px;

  gap: 2px;

}



.stepper-btn {

  width: 28px;

  height: 28px;

  border-radius: 50%;

  border: none;

  background: transparent;

  color: #1E293B;

  font-size: 16px;

  font-weight: 700;

  cursor: pointer;

  display: grid;

  place-items: center;

  transition: all 0.15s ease;

}



.stepper-btn:hover {

  background: #E2E8F0;

  color: #000000;

}



.stepper-val {

  min-width: 28px;

  text-align: center;

  font-size: 14.5px;

  font-weight: 800;

  color: var(--ink-900);

  font-family: var(--font-mono);

}



.btn-flagship-add-cart {

  flex: 1;

  max-width: 250px;

  background: var(--brand-yellow);

  color: var(--ink-900);

  border: none;

  border-radius: 9999px;

  padding: 13px 24px;

  font-size: 15.5px;

  font-weight: 800;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 10px;

  cursor: pointer;

  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);

  box-shadow: 0 6px 18px rgba(255, 186, 8, 0.35);

  font-family: var(--font-sans);

}



.btn-flagship-add-cart:hover {

  background: var(--brand-yellow-hover);

  transform: translateY(-1.5px);

  box-shadow: 0 10px 24px rgba(255, 186, 8, 0.45);

}



.btn-flagship-add-cart:active {

  transform: translateY(0);

}



.cart-btn-icon {

  flex-shrink: 0;

}



.cart-chevron-icon {

  margin-left: 2px;

  transition: transform 0.2s ease;

}



.btn-flagship-add-cart:hover .cart-chevron-icon {

  transform: translateX(3px);

}



/* 4 Trust Value Badges */

.flagship-trust-badges-row {

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 14px;

  padding-top: 4px;

}



.trust-badge-cell {

  display: flex;

  align-items: center;

  gap: 10px;

}



.trust-badge-ico {

  color: #475569;

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.trust-badge-text {

  display: flex;

  flex-direction: column;

  font-size: 11.5px;

  line-height: 1.25;

  color: #475569;

}



.trust-badge-text strong {

  font-weight: 750;

  color: #1E293B;

  font-size: 12px;

}



/* RIGHT COLUMN: INTERACTIVE VEHICLE SHOWCASE */

.flagship-visual-col {

  position: relative;

  width: 100%;

}



.flagship-stage-frame {

  position: relative;

  width: 100%;

  height: 520px;

  border-radius: 28px;

  overflow: hidden;

  background: var(--surface-dark-base);

  box-shadow: 0 25px 60px -15px rgba(15, 23, 42, 0.16), 0 0 0 1px rgba(0, 0, 0, 0.06);

}



/* Floating Glass Compatibility Badge */

.floating-glass-compat-badge {

  position: absolute;

  top: 18px;

  right: 18px;

  z-index: 10;

  display: flex;

  align-items: center;

  gap: 12px;

  background: rgba(15, 23, 42, 0.82);

  backdrop-filter: blur(14px);

  -webkit-backdrop-filter: blur(14px);

  border: 1px solid rgba(255, 255, 255, 0.16);

  border-radius: 14px;

  padding: 9px 15px;

  color: #FFFFFF;

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28);

}



.compat-ico-wrap {

  width: 32px;

  height: 32px;

  border-radius: 9px;

  background: rgba(255, 255, 255, 0.14);

  display: grid;

  place-items: center;

  flex-shrink: 0;

  color: #FFFFFF;

}



.compat-copy {

  display: flex;

  flex-direction: column;

  gap: 1px;

}



.compat-heading {

  font-size: 10.5px;

  color: #94A3B8;

  font-weight: 600;

}



.compat-types {

  font-size: 11.5px;

  color: #FFFFFF;

  font-weight: 700;

  white-space: nowrap;

}



/* Stage Photo Wrapper */

.stage-image-wrapper {

  width: 100%;

  height: 100%;

  position: relative;

  overflow: hidden;

}



.stage-display-photo {

  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: center;

  display: block;

  transition: opacity 0.35s ease, transform 0.4s ease;

}



.stage-gradient-vignette {

  position: absolute;

  inset: 0;

  background: linear-gradient(180deg, rgba(0, 0, 0, 0.25) 0%, transparent 40%, rgba(0, 0, 0, 0.65) 100%);

  pointer-events: none;

}



/* Handwritten Callout Annotation: Small Sticker Big Convenience */

.handwritten-sticker-annotation {

  position: absolute;

  top: 36%;

  left: 14%;

  z-index: 8;

  display: flex;

  align-items: center;

  gap: 8px;

  pointer-events: none;

  transform: rotate(-6deg);

}



.annotation-text {

  font-family: 'Caveat', cursive, sans-serif;

  font-size: 26px;

  font-weight: 700;

  color: #FFFFFF;

  line-height: 1.05;

  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.9), 0 0 2px rgba(0, 0, 0, 0.9);

  display: flex;

  flex-direction: column;

  letter-spacing: 0.02em;

}



.annotation-arrow {

  filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.8));

  overflow: visible;

}



/* ==========================================================================

   INTERACTIVE 3D WEBGL TAG INSPECTION STAGE (Three.js + GSAP)

   ========================================================================== */

.stage-3d-wrapper {

  position: absolute;

  inset: 0;

  width: 100%;

  height: 100%;

  z-index: 6;

  background: radial-gradient(circle at 50% 40%, #151F33 0%, #080D1A 60%, #03060C 100%);

  display: flex;

  flex-direction: column;

}



.tag-3d-canvas {

  width: 100%;

  height: 100%;

  display: block;

  cursor: grab;

  touch-action: none;

}



.tag-3d-canvas:active {

  cursor: grabbing;

}



.stage-3d-hud {

  position: absolute;

  inset: 0;

  pointer-events: none;

  display: flex;

  flex-direction: column;

  justify-content: space-between;

  padding: 18px;

  z-index: 7;

}



.hud-top-row {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 10px;

}



.hud-chip {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  font-size: 11px;

  font-weight: 750;

  padding: 6px 12px;

  border-radius: 9999px;

  background: rgba(15, 23, 42, 0.75);

  backdrop-filter: blur(12px);

  -webkit-backdrop-filter: blur(12px);

  border: 1px solid rgba(255, 255, 255, 0.14);

  color: #FFFFFF;

  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3);

}



.hud-chip.live-chip {

  border-color: rgba(250, 204, 21, 0.4);

  color: #FEF08A;

}



.live-pulse-dot {

  width: 6px;

  height: 6px;

  border-radius: 50%;

  background: #FACC15;

  box-shadow: 0 0 8px #FACC15;

  animation: pulseTarget 1.5s infinite;

}



.hud-chip.hint-chip {

  color: #CBD5E1;

  font-size: 10.5px;

}



.hud-presets-bar {

  pointer-events: auto;

  align-self: center;

  display: flex;

  align-items: center;

  gap: 6px;

  background: rgba(15, 23, 42, 0.85);

  backdrop-filter: blur(14px);

  -webkit-backdrop-filter: blur(14px);

  border: 1px solid rgba(255, 255, 255, 0.16);

  border-radius: 9999px;

  padding: 4px;

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);

  margin-bottom: 92px;

}



.preset-btn {

  background: transparent;

  border: none;

  color: #94A3B8;

  font-size: 11px;

  font-weight: 700;

  padding: 6px 12px;

  border-radius: 9999px;

  cursor: pointer;

  transition: all 0.2s ease;

}



.preset-btn:hover {

  color: #FFFFFF;

  background: rgba(255, 255, 255, 0.08);

}



.preset-btn.active {

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  box-shadow: 0 2px 8px rgba(245, 158, 11, 0.4);

}



.thumb-3d-preview {

  display: grid;

  place-items: center;

  background: radial-gradient(circle, rgba(245, 158, 11, 0.25) 0%, rgba(15, 23, 42, 0.95) 80%);

}



.badge-3d-pill {

  position: absolute;

  top: 6px;

  left: 6px;

  font-size: 9px;

  font-weight: 900;

  padding: 2px 6px;

  border-radius: 6px;

  background: #FACC15;

  color: #000000;

  line-height: 1;

}



/* Bottom Vehicle Thumbnails Switcher */

.vehicle-switcher-tray {

  position: absolute;

  bottom: 18px;

  left: 18px;

  right: 18px;

  z-index: 10;

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 10px;

}



.vehicle-thumb-btn {

  background: rgba(15, 23, 42, 0.8);

  backdrop-filter: blur(12px);

  -webkit-backdrop-filter: blur(12px);

  border: 2px solid rgba(255, 255, 255, 0.2);

  border-radius: 14px;

  overflow: hidden;

  padding: 0;

  cursor: pointer;

  position: relative;

  height: 74px;

  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);

}



.vehicle-thumb-btn:hover {

  border-color: rgba(255, 255, 255, 0.65);

  transform: translateY(-2px);

}



.vehicle-thumb-btn .thumb-media {

  width: 100%;

  height: 100%;

  position: absolute;

  inset: 0;

}



.vehicle-thumb-btn .thumb-media img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  opacity: 0.72;

  transition: opacity 0.2s ease;

}



.vehicle-thumb-btn .thumb-tag-name {

  position: absolute;

  bottom: 0;

  left: 0;

  right: 0;

  background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.85) 100%);

  color: #FFFFFF;

  font-size: 11px;

  font-weight: 750;

  padding: 6px 8px 5px;

  text-align: center;

  z-index: 2;

  font-family: var(--font-sans);

}



.vehicle-thumb-btn.active {

  border-color: #FFFFFF;

  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.5), 0 0 0 2px rgba(255, 186, 8, 0.9);

  transform: translateY(-2px);

}



.vehicle-thumb-btn.active .thumb-media img {

  opacity: 0.95;

}



/* ==========================================================================

   FLAGSHIP SHOWCASE RESPONSIVE LAYOUT (MOBILE & TABLET FIX)

   ========================================================================== */

@media (max-width: 991px) {

  .flagship-hero-grid {

    display: grid;

    grid-template-columns: 1fr;

    gap: 20px;

    margin-bottom: 28px;

  }



  .flagship-content-col {

    display: contents;

  }



  .flagship-eyebrow-pill {

    order: 1;

    margin-bottom: 4px;

  }



  .flagship-title-group {

    order: 2;

  }



  .flagship-lead {

    order: 3;

    max-width: 100%;

  }



  .flagship-visual-col {

    order: 4;

    width: 100%;

    margin: 8px 0 14px;

  }



  .flagship-features-cluster {

    order: 5;

    margin: 6px 0 10px;

  }



  .flagship-buy-card {

    order: 6;

    width: 100%;

  }



  .flagship-trust-badges-row {

    order: 7;

    width: 100%;

    margin-top: 8px;

  }



  .flagship-stage-frame {

    height: 440px;

  }

}



@media (max-width: 640px) {

  .flagship-stage-frame {

    height: 380px;

    border-radius: 20px;

  }



  .floating-glass-compat-badge {

    top: 12px;

    right: 12px;

    padding: 6px 11px;

    gap: 8px;

    border-radius: 12px;

  }



  .compat-ico-wrap {

    width: 26px;

    height: 26px;

    border-radius: 7px;

  }



  .compat-heading {

    font-size: 9.5px;

  }



  .compat-types {

    font-size: 10.5px;

  }



  .handwritten-sticker-annotation {

    top: 24%;

    left: 8%;

    transform: scale(0.78) rotate(-6deg);

    transform-origin: top left;

  }



  .vehicle-switcher-tray {

    bottom: 12px;

    left: 10px;

    right: 10px;

    gap: 6px;

  }



  .vehicle-thumb-btn {

    height: 60px;

    border-radius: 10px;

  }



  .vehicle-thumb-btn .thumb-tag-name {

    font-size: 9.5px;

    padding: 3px 2px 3px;

  }



  .badge-3d-pill {

    top: 4px;

    left: 4px;

    font-size: 8px;

    padding: 2px 4px;

  }



  .flagship-features-cluster {

    grid-template-columns: repeat(2, 1fr);

    gap: 14px 10px;

  }



  .flagship-trust-badges-row {

    grid-template-columns: repeat(2, 1fr);

    gap: 14px 10px;

  }



  .flagship-buy-card {

    padding: 18px 16px;

    border-radius: 16px;

  }



  .stage-3d-hud {

    padding: 12px;

  }



  .hud-chip {

    font-size: 10px;

    padding: 4px 8px;

  }



  .hud-presets-bar {

    gap: 6px;

  }



  .preset-btn {

    font-size: 10.5px;

    padding: 5px 9px;

  }

}



@media (max-width: 400px) {

  .flagship-stage-frame {

    height: 340px;

  }



  .vehicle-thumb-btn {

    height: 54px;

  }



  .vehicle-thumb-btn .thumb-tag-name {

    font-size: 8.5px;

  }

}



/* ==========================================================================

   BOTTOM WORKFLOW CONTAINER: "HOW QRTAG9 WORKS?"

   ========================================================================== */

.flagship-workflow-container {

  margin-top: 28px;

  margin-bottom: 24px;

  width: 100%;

  position: relative;

}



.workflow-card-inner {

  background: linear-gradient(135deg, #FFFFFF 0%, #FFFDF8 50%, #FEF9E7 100%);

  border: 1.5px solid #FDE68A;

  border-radius: 28px;

  padding: 24px 30px;

  display: grid;

  grid-template-columns: auto 1fr auto;

  gap: 28px;

  align-items: center;

  box-shadow: 0 16px 45px -15px rgba(245, 158, 11, 0.08),

    0 0 0 1px rgba(254, 243, 199, 0.5),

    inset 0 1px 0 rgba(255, 255, 255, 0.9);

  position: relative;

  overflow: hidden;

  transition: transform 0.3s ease, box-shadow 0.3s ease;

}



.workflow-card-inner:hover {

  box-shadow: 0 24px 55px -15px rgba(245, 158, 11, 0.12),

    0 0 0 1px rgba(254, 243, 199, 0.8),

    inset 0 1px 0 rgba(255, 255, 255, 1);

}



.workflow-ambient-spotlight {

  position: absolute;

  top: -50px;

  left: 10%;

  width: 250px;

  height: 250px;

  background: radial-gradient(circle, rgba(255, 184, 0, 0.15) 0%, transparent 70%);

  pointer-events: none;

  filter: blur(40px);

}



/* 1. Left Headline Block */

.workflow-brand-lead {

  display: flex;

  flex-direction: column;

  gap: 8px;

  min-width: 155px;

  position: relative;

  z-index: 2;

}



.workflow-eyebrow-chip {

  display: inline-flex;

  align-items: center;

  gap: 5px;

  font-size: 10.5px;

  font-weight: 800;

  letter-spacing: 0.06em;

  text-transform: uppercase;

  color: #B45309;

  background: #FEF3C7;

  padding: 4px 10px;

  border-radius: 9999px;

  width: fit-content;

  border: 1px solid #FCD34D;

  box-shadow: 0 1px 2px rgba(245, 158, 11, 0.06);

}



.chip-bolt {

  color: #D97706;

}



.workflow-main-title {

  margin: 0;

  display: flex;

  flex-direction: column;

  font-size: 32px;

  font-weight: 900;

  line-height: 1.05;

  letter-spacing: -0.035em;

  color: #0F172A;

}



.lead-how {

  color: #0F172A;

}



.lead-brand-row {

  display: inline-flex;

  align-items: center;

  gap: 4px;

}



.lead-brand {

  color: #0F172A;

}



.lead-nine {

  color: #F59E0B;

}



.lead-rays {

  display: inline-flex;

  align-items: center;

  margin-bottom: 6px;

}



.lead-works {

  color: #0F172A;

}



.workflow-subtitle-wrap {

  display: flex;

  flex-direction: column;

  gap: 3px;

  margin-top: 4px;

}



.workflow-speed-tag {

  font-size: 13px;

  font-weight: 600;

  color: #64748B;

  letter-spacing: -0.01em;

}



.workflow-swoosh-arrow {

  display: block;

  margin-left: 2px;

}



/* 2. Middle 4 Steps Flow */

.workflow-steps-flow {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 12px;

  position: relative;

  z-index: 2;

}



.workflow-step-card {

  background: #FFFFFF;

  border-radius: 18px;

  box-shadow: 0 10px 28px -6px rgba(0, 0, 0, 0.05),

    0 2px 6px rgba(0, 0, 0, 0.02),

    0 0 0 1px rgba(0, 0, 0, 0.03);

  padding: 6px 6px 14px 6px;

  width: 138px;

  display: flex;

  flex-direction: column;

  align-items: flex-start;

  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s ease;

  position: relative;

  cursor: default;

}



.workflow-step-card:hover {

  transform: translateY(-4px);

  box-shadow: 0 16px 36px -8px rgba(245, 158, 11, 0.15),

    0 0 0 1px rgba(245, 158, 11, 0.25);

}



.step-card-visual-box {

  width: 100%;

  height: 120px;

  border-radius: 14px 14px 8px 8px;

  overflow: hidden;

  background: #FFFFFF;

  display: flex;

  align-items: center;

  justify-content: center;

}



.step-card-img {

  width: 100%;

  height: 100%;

  object-fit: contain;

  display: block;

}



.step-card-info {

  padding: 8px 6px 2px 6px;

  display: flex;

  flex-direction: column;

  gap: 3px;

  text-align: left;

}



.step-card-title {

  font-size: 13.5px;

  font-weight: 800;

  color: #0F172A;

  margin: 0;

  line-height: 1.25;

  letter-spacing: -0.015em;

}



.step-card-desc {

  font-size: 10.5px;

  font-weight: 500;

  color: #64748B;

  margin: 0;

  line-height: 1.35;

}



/* Arrows between steps */

.step-flow-arrow {

  display: grid;

  place-items: center;

  color: #F59E0B;

  flex-shrink: 0;

  animation: subtleArrowNudge 2.5s ease-in-out infinite;

}



@keyframes subtleArrowNudge {



  0%,

  100% {

    transform: translateX(0);

  }



  50% {

    transform: translateX(3px);

  }

}



/* 3. Right Privacy Assurance Card */

.workflow-privacy-card {

  background: #FFFFFF;

  border: 1.5px solid #A7F3D0;

  border-radius: 22px;

  padding: 18px 14px 20px 14px;

  width: 160px;

  display: flex;

  flex-direction: column;

  align-items: center;

  text-align: center;

  box-shadow: 0 12px 28px -8px rgba(16, 185, 129, 0.12),

    0 0 0 1px rgba(209, 250, 229, 0.6);

  flex-shrink: 0;

  position: relative;

  z-index: 2;

  transition: transform 0.25s ease, box-shadow 0.25s ease;

}



.workflow-privacy-card:hover {

  transform: translateY(-3px);

  box-shadow: 0 16px 32px -8px rgba(16, 185, 129, 0.2),

    0 0 0 1px #6EE7B7;

}



.privacy-badge-wrap {

  width: 100%;

  display: flex;

  justify-content: center;

  margin-bottom: 6px;

}



.privacy-pill-tag {

  display: inline-flex;

  align-items: center;

  gap: 4px;

  font-size: 10px;

  font-weight: 800;

  letter-spacing: 0.05em;

  color: #059669;

  background: #ECFDF5;

  border: 1px solid #6EE7B7;

  padding: 3px 9px;

  border-radius: 9999px;

  text-transform: uppercase;

}



.privacy-shield-mini {

  color: #059669;

}



.privacy-lock-visual {

  width: 72px;

  height: 66px;

  margin: 6px auto 8px auto;

  display: grid;

  place-items: center;

}



.privacy-lock-img {

  width: 100%;

  height: 100%;

  object-fit: contain;

  filter: drop-shadow(0 6px 14px rgba(16, 185, 129, 0.2));

}



.privacy-card-info {

  display: flex;

  flex-direction: column;

  gap: 3px;

  margin-top: 4px;

}



.privacy-safe-title {

  font-size: 13.5px;

  font-weight: 800;

  color: #0F172A;

  margin: 0;

  line-height: 1.25;

  letter-spacing: -0.015em;

}



.privacy-safe-sub {

  font-size: 10px;

  color: #64748B;

  margin: 0;

  line-height: 1.35;

  font-weight: 500;

}



/* ==========================================================================

   EMERGENCY & SAFETY CAPABILITIES BANNER STYLES

   ========================================================================== */

.emergency-card-inner {

  background: linear-gradient(135deg, #FFFFFF 0%, #FFFDF8 45%, #FEF9E7 100%);

  border: 1.5px solid #FDE68A;

}



.emergency-eyebrow-chip {

  background: #FEF2F2 !important;

  color: #DC2626 !important;

  border-color: #FECACA !important;

}



.emergency-speed-tag {

  color: #B45309;

  font-weight: 700;

}



.emergency-scenario-card {

  width: 142px;

  padding: 8px 8px 14px 8px;

  background: #FFFFFF;

  border-radius: 18px;

  box-shadow: 0 10px 28px -6px rgba(0, 0, 0, 0.05),

    0 2px 6px rgba(0, 0, 0, 0.02),

    0 0 0 1px rgba(0, 0, 0, 0.04);

  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s ease;

}



.emergency-scenario-card:hover {

  transform: translateY(-5px);

  box-shadow: 0 18px 36px -8px rgba(245, 158, 11, 0.18),

    0 0 0 1px rgba(245, 158, 11, 0.35);

}



.scenario-pill-header {

  font-size: 8px;

  font-weight: 800;

  letter-spacing: 0.06em;

  text-transform: uppercase;

  padding: 2.5px 7px;

  border-radius: 9999px;

  display: inline-flex;

  align-items: center;

  gap: 4px;

  margin-bottom: 6px;

  width: fit-content;

}



.scenario-pill-header.pill-sos {

  background: #FEF2F2;

  color: #DC2626;

  border: 1px solid #FECACA;

}



.scenario-pill-header.pill-tow {

  background: #FFFBEB;

  color: #D97706;

  border: 1px solid #FDE68A;

}



.scenario-pill-header.pill-park {

  background: #F0FDF4;

  color: #16A34A;

  border: 1px solid #BBF7D0;

}



.scenario-pill-header.pill-safe {

  background: #ECFDF5;

  color: #059669;

  border: 1px solid #A7F3D0;

}



.scenario-dot {

  width: 5px;

  height: 5px;

  border-radius: 50%;

  display: inline-block;

}



.dot-sos {

  background: #EF4444;

  box-shadow: 0 0 5px rgba(239, 68, 68, 0.7);

}



.dot-tow {

  background: #F59E0B;

  box-shadow: 0 0 5px rgba(245, 158, 11, 0.7);

}



.dot-park {

  background: #10B981;

  box-shadow: 0 0 5px rgba(16, 185, 129, 0.7);

}



.dot-safe {

  background: #059669;

  box-shadow: 0 0 5px rgba(5, 150, 105, 0.7);

}



.scenario-sep-line {

  width: 6px;

  height: 6px;

  border-radius: 50%;

  background: #FDE68A;

  border: 1px solid #F59E0B;

  display: inline-block;

  box-shadow: 0 0 4px rgba(245, 158, 11, 0.4);

}



.emergency-scenario-card .step-card-visual-box {

  background: #FAFAFA;

}



.emergency-scenario-card .step-card-img {

  object-fit: cover;

  transition: transform 0.35s ease;

}



.emergency-scenario-card:hover .step-card-img {

  transform: scale(1.05);

}



/* RESPONSIVE BREAKPOINTS */

@media (max-width: 1180px) {

  .workflow-card-inner {

    grid-template-columns: 1fr;

    gap: 28px;

    padding: 24px;

  }



  .workflow-brand-lead {

    align-items: center;

    text-align: center;

  }



  .lead-brand-row {

    justify-content: center;

  }



  .workflow-subtitle-wrap {

    align-items: center;

  }



  .workflow-steps-flow {

    flex-wrap: wrap;

    justify-content: center;

    gap: 16px;

  }



  .workflow-privacy-card {

    margin: 0 auto;

    width: 100%;

    max-width: 300px;

  }

}



@media (max-width: 768px) {

  .workflow-steps-flow {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 14px;

  }



  .step-flow-arrow {

    display: none;

  }



  .workflow-step-card {

    width: 100%;

  }

}



@media (max-width: 480px) {

  .workflow-steps-flow {

    grid-template-columns: 1fr;

    gap: 12px;

  }

}



@media (max-width: 768px) {

  .flagship-section {

    padding: 36px 0 48px;

  }



  .flagship-brand-logo {

    font-size: 42px;

  }



  .flagship-headline {

    font-size: 26px;

  }



  .flagship-stage-frame {

    height: 360px;

  }



  .floating-glass-compat-badge {

    top: 12px;

    right: 12px;

    padding: 6px 12px;

  }



  .compat-types {

    font-size: 10px;

  }



  .handwritten-sticker-annotation {

    top: 26%;

    left: 8%;

  }



  .annotation-text {

    font-size: 19px;

  }



  .flagship-features-cluster {

    grid-template-columns: repeat(2, 1fr);

    gap: 16px;

  }



  .flagship-trust-badges-row {

    grid-template-columns: repeat(2, 1fr);

    gap: 14px;

  }



  .buy-card-header {

    flex-direction: column;

    align-items: flex-start;

    gap: 12px;

  }



  .buy-card-price-col {

    align-items: flex-start;

    text-align: left;

  }



  .buy-card-action-bar {

    flex-direction: column;

    align-items: stretch;

    gap: 14px;

  }



  .qty-control-group {

    justify-content: space-between;

  }



  .btn-flagship-add-cart {

    max-width: 100%;

    width: 100%;

  }



  .vehicle-switcher-tray {

    bottom: 12px;

    left: 12px;

    right: 12px;

    gap: 8px;

  }



  .vehicle-thumb-btn {

    height: 60px;

  }



  .vehicle-thumb-btn .thumb-tag-name {

    font-size: 9.5px;

    padding: 4px;

  }



  .node-connector-arrow {

    display: none;

  }

}



/* ==========================================================================

   HOW IT WORKS — 4-STEP REFINED CAROUSEL WALKTHROUGH

   1. Order QRTAG9

   2. Paste on Windshield

   3. Scan QRTAG9

   4. Receive Alert & Masked Call

   ========================================================================== */



.how-it-works-section {

  padding: 80px 0 100px;

  background: #F9FAFC;

  border-top: 1px solid var(--line-subtle);

  border-bottom: 1px solid var(--line-subtle);

  position: relative;

}



.step-walkthrough-card {

  background: #FFFFFF;

  border: 1px solid rgba(10, 15, 29, 0.08);

  border-radius: 32px;

  padding: 48px 56px;

  box-shadow:

    0 20px 60px -15px rgba(10, 15, 29, 0.06),

    0 1px 3px rgba(10, 15, 29, 0.04);

  position: relative;

  overflow: hidden;

}



/* Step Navigation Pills Bar */

.step-nav-pills-bar {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 12px;

  margin-bottom: 38px;

  flex-wrap: wrap;

  padding-bottom: 24px;

  border-bottom: 1px solid #E2E8F0;

}



.step-nav-pill {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  background: #F1F5F9;

  border: 1.5px solid #E2E8F0;

  border-radius: 9999px;

  padding: 8px 18px;

  cursor: pointer;

  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);

  font-family: var(--font-sans);

}



.step-nav-pill:hover {

  background: #E2E8F0;

  border-color: #CBD5E1;

  transform: translateY(-1px);

}



.step-nav-pill .pill-num {

  font-family: var(--font-mono);

  font-size: 11px;

  font-weight: 800;

  color: #64748B;

}



.step-nav-pill .pill-label {

  font-size: 13px;

  font-weight: 750;

  color: #1E293B;

}



.step-nav-pill.active {

  background: var(--surface-dark-base);

  border-color: var(--ink-900);

  color: #FFFFFF;

  box-shadow: 0 6px 18px rgba(10, 15, 29, 0.2);

  transform: translateY(-1px);

}



.step-nav-pill.active .pill-num {

  color: var(--brand-yellow);

}



.step-nav-pill.active .pill-label {

  color: #FFFFFF;

}



/* Slides Grid */

.step-walkthrough-slide {

  display: none;

  grid-template-columns: 1.05fr 0.95fr;

  align-items: center;

  gap: 52px;

}



.step-walkthrough-slide.active {

  display: grid;

  animation: fadeInSlide 0.35s ease-out forwards;

}



@keyframes fadeInSlide {

  from {

    opacity: 0;

    transform: translateY(10px);

  }



  to {

    opacity: 1;

    transform: translateY(0);

  }

}



/* Copy Column */

.step-walkthrough-copy {

  display: flex;

  flex-direction: column;

  justify-content: center;

}



.step-italic-num {

  font-family: var(--font-sans);

  font-style: normal;

  font-size: 28px;

  font-weight: 800;

  color: var(--brand-yellow);

  line-height: 1;

  margin-bottom: 14px;

  display: inline-flex;

  align-items: center;

  gap: 6px;

  letter-spacing: -0.04em;

}



.step-serif-title {

  font-family: var(--font-sans);

  font-size: clamp(30px, 3.5vw, 42px);

  font-weight: 800;

  color: var(--ink-900);

  line-height: 1.15;

  margin-bottom: 18px;

  letter-spacing: -0.03em;

}



.step-serif-lead {

  font-family: var(--font-sans);

  font-size: 15.5px;

  line-height: 1.65;

  color: var(--ink-600);

  margin-bottom: 26px;

  max-width: 480px;

}



.step-dash-perks {

  list-style: none;

  padding: 0;

  margin: 0 0 32px 0;

  display: flex;

  flex-direction: column;

  gap: 12px;

}



.step-dash-perks li {

  display: flex;

  align-items: center;

  gap: 10px;

  font-size: 14.5px;

  font-weight: 550;

  color: #334155;

}



.step-dash-perks .dash-sym {

  color: var(--brand-yellow);

  font-weight: 800;

  font-size: 18px;

}



.step-carousel-controls {

  display: flex;

  align-items: center;

  gap: 14px;

}



.step-circle-btn {

  width: 44px;

  height: 44px;

  border-radius: 50%;

  border: 1.5px solid #E2E8F0;

  background: #FFFFFF;

  color: var(--ink-900);

  display: grid;

  place-items: center;

  cursor: pointer;

  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);

}



.step-circle-btn:hover {

  background: var(--surface-dark-base);

  color: #FFFFFF;

  border-color: var(--ink-900);

  transform: scale(1.06);

}



.step-circle-btn:active {

  transform: scale(0.95);

}



.step-counter-indicator {

  font-family: var(--font-mono);

  font-size: 13px;

  font-weight: 800;

  color: #94A3B8;

  margin-left: 8px;

}



/* Device Phone Frame */

.step-walkthrough-visual {

  display: flex;

  align-items: center;

  justify-content: center;

}



.device-phone-frame {

  width: 296px;

  height: 550px;

  background: #000000;

  border-radius: 46px;

  border: 9px solid var(--surface-dark-elevated);

  box-shadow:

    0 30px 80px -15px rgba(0, 0, 0, 0.32),

    0 10px 30px rgba(0, 0, 0, 0.15),

    inset 0 0 0 1px rgba(255, 255, 255, 0.12);

  display: flex;

  flex-direction: column;

  position: relative;

  overflow: hidden;

}



.phone-dynamic-island {

  width: 82px;

  height: 22px;

  background: #000000;

  border-radius: 14px;

  margin: 10px auto 6px;

  z-index: 10;

  flex-shrink: 0;

}



.phone-dynamic-island.active-call-island {

  box-shadow: 0 0 10px rgba(0, 196, 140, 0.8);

  border: 1px solid rgba(0, 196, 140, 0.6);

}



.phone-display-canvas {

  flex: 1;

  background: #F8FAFC;

  position: relative;

  display: flex;

  flex-direction: column;

  align-items: center;

  justify-content: center;

  padding: 16px;

  overflow: hidden;

}



.phone-screen-banner {

  position: absolute;

  top: 12px;

  display: inline-flex;

  align-items: center;

  gap: 6px;

  font-family: var(--font-mono);

  font-size: 10px;

  font-weight: 700;

  color: var(--brand-emerald-dark);

  background: rgba(0, 196, 140, 0.12);

  border: 1px solid rgba(0, 196, 140, 0.25);

  padding: 4px 10px;

  border-radius: var(--radius-pill);

}



/* Step 1 Order Box inside Phone */

.phone-order-box {

  width: 95%;

  background: #FFFFFF;

  border: 1px solid rgba(10, 15, 29, 0.1);

  border-radius: 16px;

  padding: 16px 14px;

  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);

  display: flex;

  flex-direction: column;

  gap: 12px;

  margin-top: 18px;

}



.phone-order-header {

  display: flex;

  align-items: center;

  justify-content: space-between;

}



.phone-order-header strong {

  font-size: 13px;

  font-weight: 800;

  color: var(--ink-900);

}



.phone-order-badge {

  font-family: var(--font-mono);

  font-size: 9px;

  font-weight: 800;

  color: var(--brand-emerald-dark);

  background: rgba(0, 196, 140, 0.12);

  padding: 2px 7px;

  border-radius: var(--radius-pill);

}



.phone-order-preview-card {

  background: #F8FAFC;

  border: 1px dashed #CBD5E1;

  border-radius: 10px;

  padding: 8px;

  display: flex;

  align-items: center;

  gap: 10px;

}



.phone-order-preview-card .mini-sticker-thumb {

  width: 52px;

  height: 34px;

  background: var(--brand-yellow);

  border-radius: 5px;

  border: 1px solid rgba(0, 0, 0, 0.15);

  display: flex;

  justify-content: center;

  align-items: center;

}



.mini-sticker-thumb span {

  font-size: 9px;

  font-weight: 900;

  color: #000;

}



.phone-order-details {

  font-size: 11px;

}



.phone-order-details strong {

  display: block;

  color: var(--ink-900);

  font-size: 12px;

}



.phone-order-details span {

  display: block;

  color: #64748B;

  font-size: 9.5px;

  font-family: var(--font-mono);

}



.phone-order-timeline {

  display: flex;

  flex-direction: column;

  gap: 6px;

  padding: 8px 10px;

  background: #F8FAFC;

  border-radius: 8px;

  border: 1px solid #E2E8F0;

}



.timeline-step {

  display: flex;

  align-items: center;

  gap: 8px;

  font-size: 9.5px;

  color: #64748B;

  font-weight: 600;

}



.timeline-step .step-dot {

  width: 6px;

  height: 6px;

  border-radius: 50%;

  background: #CBD5E1;

}



.timeline-step.done {

  color: var(--ink-900);

}



.timeline-step.done .step-dot {

  background: var(--brand-emerald);

  box-shadow: 0 0 6px var(--brand-emerald);

}



.timeline-step.in-progress {

  color: var(--ink-900);

  font-weight: 750;

}



.timeline-step.in-progress .step-dot {

  background: var(--brand-yellow);

  box-shadow: 0 0 6px var(--brand-yellow);

}



.phone-order-status-row {

  display: flex;

  align-items: center;

  justify-content: space-between;

  padding-top: 8px;

  border-top: 1px solid #E2E8F0;

  font-size: 11px;

  font-weight: 700;

  color: var(--brand-blue);

}



/* Step 2 Windshield Mounting Presentation inside Phone */

.windshield-placement-box {

  width: 95%;

  display: flex;

  flex-direction: column;

  gap: 12px;

  margin-top: 18px;

}



/* Real Vehicle Windshield Photo Box */

.windshield-real-photo-box {

  position: relative;

  width: 100%;

  height: 250px;

  border-radius: 18px;

  overflow: hidden;

  background: var(--surface-dark-base);

  border: 1.5px solid rgba(10, 15, 29, 0.12);

  box-shadow: 0 14px 35px -8px rgba(0, 0, 0, 0.28), 0 4px 12px rgba(0, 0, 0, 0.1);

}



.windshield-real-photo {

  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: center;

  display: block;

  transition: transform 0.4s ease;

}



.windshield-real-photo-box:hover .windshield-real-photo {

  transform: scale(1.03);

}



.windshield-photo-vignette {

  position: absolute;

  inset: 0;

  background: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, transparent 40%, rgba(0, 0, 0, 0.55) 100%);

  pointer-events: none;

}



/* AR Placement Reticle Overlay */

.ar-placement-reticle {

  position: absolute;

  top: 48%;

  left: 50%;

  transform: translate(-50%, -50%);

  width: 120px;

  height: 100px;

  pointer-events: none;

}



.ar-reticle-corner {

  position: absolute;

  width: 14px;

  height: 14px;

  border-color: var(--brand-yellow);

  border-style: solid;

  filter: drop-shadow(0 0 4px rgba(255, 186, 8, 0.6));

}



.r-tl {

  top: 0;

  left: 0;

  border-width: 2.5px 0 0 2.5px;

  border-top-left-radius: 4px;

}



.r-tr {

  top: 0;

  right: 0;

  border-width: 2.5px 2.5px 0 0;

  border-top-right-radius: 4px;

}



.r-bl {

  bottom: 0;

  left: 0;

  border-width: 0 0 2.5px 2.5px;

  border-bottom-left-radius: 4px;

}



.r-br {

  bottom: 0;

  right: 0;

  border-width: 0 2.5px 2.5px 0;

  border-bottom-right-radius: 4px;

}



.ar-pulse-radar {

  position: absolute;

  inset: 4px;

  border: 1px dashed rgba(255, 186, 8, 0.5);

  border-radius: 6px;

  animation: pulseTarget 2s infinite ease-in-out;

}



@keyframes pulseTarget {



  0%,

  100% {

    opacity: 0.3;

    transform: scale(0.98);

  }



  50% {

    opacity: 0.9;

    transform: scale(1.02);

  }

}



.ar-badge-label {

  position: absolute;

  bottom: -24px;

  left: 50%;

  transform: translateX(-50%);

  background: rgba(15, 23, 42, 0.88);

  backdrop-filter: blur(8px);

  border: 1px solid rgba(255, 186, 8, 0.5);

  border-radius: 9999px;

  padding: 2px 8px;

  display: inline-flex;

  align-items: center;

  gap: 5px;

  font-family: var(--font-mono);

  font-size: 8.5px;

  font-weight: 800;

  color: var(--brand-yellow);

  white-space: nowrap;

  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35);

}



.radar-dot {

  width: 5px;

  height: 5px;

  border-radius: 50%;

  background: var(--brand-yellow);

  box-shadow: 0 0 6px var(--brand-yellow);

}



/* Floating Glass Location Tag */

.floating-glass-location-tag {

  position: absolute;

  bottom: 8px;

  left: 8px;

  right: 8px;

  background: rgba(10, 15, 29, 0.84);

  backdrop-filter: blur(10px);

  border: 1px solid rgba(255, 255, 255, 0.18);

  border-radius: 9999px;

  padding: 4px 10px;

  font-size: 9px;

  font-weight: 750;

  color: #FFFFFF;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 5px;

  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);

}



/* 3-Step Micro Installation Flow */

.install-steps-pill-bar {

  display: flex;

  align-items: center;

  justify-content: space-between;

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 10px;

  padding: 6px 10px;

  font-size: 9.5px;

  font-weight: 700;

  color: #64748B;

  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);

}



.install-step-chip {

  display: flex;

  align-items: center;

  gap: 5px;

}



.install-step-chip .chip-idx {

  width: 14px;

  height: 14px;

  border-radius: 50%;

  background: #F1F5F9;

  color: #475569;

  font-size: 8px;

  font-weight: 800;

  display: grid;

  place-items: center;

}



.install-step-chip.active {

  color: var(--ink-900);

}



.install-step-chip.active .chip-idx {

  background: var(--brand-yellow);

  color: #000000;

}



.install-arrow {

  color: #CBD5E1;

  font-size: 11px;

}



.windshield-specs-footer {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 8px;

}



.spec-micro-item {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 8px;

  padding: 7px 9px;

  font-size: 9.5px;

  display: flex;

  flex-direction: column;

  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);

}



.spec-micro-item strong {

  font-size: 10.5px;

  color: var(--ink-900);

  font-weight: 800;

}



.spec-micro-item small {

  color: #64748B;

  font-size: 8.5px;

}



/* Step 3 Camera Viewfinder Scanner inside Phone */

.scanner-viewfinder-box {

  position: relative;

  width: 95%;

  height: 180px;

  background: var(--surface-dark-base);

  border-radius: 16px;

  overflow: hidden;

  border: 1.5px solid rgba(0, 229, 163, 0.35);

  margin-top: 14px;

  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.35);

}



.scanner-camera-feed-img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: center 38%;

  display: block;

  transition: transform 0.4s ease;

}



.scanner-viewfinder-box:hover .scanner-camera-feed-img {

  transform: scale(1.04);

}



.scanner-camera-vignette {

  position: absolute;

  inset: 0;

  background: radial-gradient(circle at center, transparent 35%, rgba(0, 0, 0, 0.45) 100%),

    linear-gradient(180deg, rgba(0, 0, 0, 0.35) 0%, transparent 40%, rgba(0, 0, 0, 0.6) 100%);

  pointer-events: none;

}



/* Top Camera HUD Badges */

.scanner-camera-hud-top {

  position: absolute;

  top: 8px;

  left: 10px;

  right: 10px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  z-index: 3;

  pointer-events: none;

}



.hud-mode-pill {

  display: inline-flex;

  align-items: center;

  gap: 5px;

  background: rgba(0, 0, 0, 0.65);

  backdrop-filter: blur(6px);

  border: 1px solid rgba(255, 255, 255, 0.2);

  border-radius: 9999px;

  padding: 2px 7px;

  font-family: var(--font-mono);

  font-size: 8px;

  font-weight: 800;

  color: #FFFFFF;

  letter-spacing: 0.4px;

}



.hud-rec-dot {

  width: 5px;

  height: 5px;

  border-radius: 50%;

  background: #EF4444;

  box-shadow: 0 0 5px #EF4444;

  animation: dotBlink 1s infinite;

}



.hud-zoom-pill {

  background: rgba(0, 0, 0, 0.65);

  backdrop-filter: blur(6px);

  border: 1px solid rgba(255, 255, 255, 0.2);

  border-radius: 9999px;

  padding: 2px 7px;

  font-family: var(--font-mono);

  font-size: 8px;

  font-weight: 800;

  color: var(--brand-yellow);

}



/* Centered QR Focus Reticle Frame */

.scanner-focus-target {

  position: absolute;

  top: 48%;

  left: 50%;

  transform: translate(-50%, -50%);

  width: 95px;

  height: 95px;

  pointer-events: none;

  z-index: 2;

}



.scanner-corner-reticle {

  position: absolute;

  width: 14px;

  height: 14px;

  border-color: var(--brand-emerald-bright);

  border-style: solid;

  filter: drop-shadow(0 0 4px rgba(0, 229, 163, 0.8));

}



.reticle-tl {

  top: 0;

  left: 0;

  border-width: 2.5px 0 0 2.5px;

  border-top-left-radius: 4px;

}



.reticle-tr {

  top: 0;

  right: 0;

  border-width: 2.5px 2.5px 0 0;

  border-top-right-radius: 4px;

}



.reticle-bl {

  bottom: 0;

  left: 0;

  border-width: 0 0 2.5px 2.5px;

  border-bottom-left-radius: 4px;

}



.reticle-br {

  bottom: 0;

  right: 0;

  border-width: 0 2.5px 2.5px 0;

  border-bottom-right-radius: 4px;

}



.scanner-laser-line {

  position: absolute;

  left: 2px;

  right: 2px;

  height: 2px;

  background: var(--brand-emerald-bright);

  box-shadow: 0 0 10px var(--brand-emerald-bright), 0 0 20px rgba(0, 229, 163, 0.9);

  animation: laserScanSweep 2s infinite ease-in-out;

}



@keyframes laserScanSweep {

  0% {

    top: 6%;

    opacity: 0.3;

  }



  50% {

    top: 92%;

    opacity: 1;

  }



  100% {

    top: 6%;

    opacity: 0.3;

  }

}



.scanner-lock-badge {

  position: absolute;

  bottom: 8px;

  left: 50%;

  transform: translateX(-50%);

  background: rgba(10, 15, 29, 0.88);

  backdrop-filter: blur(8px);

  border: 1px solid rgba(0, 229, 163, 0.55);

  border-radius: 9999px;

  padding: 3px 10px;

  display: inline-flex;

  align-items: center;

  gap: 5px;

  font-size: 8.5px;

  font-weight: 800;

  color: var(--brand-emerald-bright);

  font-family: var(--font-mono);

  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.45);

  white-space: nowrap;

  z-index: 3;

}



.lock-pulse-dot {

  width: 5px;

  height: 5px;

  border-radius: 50%;

  background: var(--brand-emerald-bright);

  box-shadow: 0 0 6px var(--brand-emerald-bright);

  animation: dotBlink 1s infinite;

}



.scanner-action-card {

  width: 95%;

  margin-top: 10px;

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 14px;

  padding: 12px 10px;

  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);

  display: flex;

  flex-direction: column;

  gap: 8px;

}



.scanner-action-label {

  font-size: 10.5px;

  font-weight: 800;

  color: #1E293B;

}



.scanner-reasons-list {

  display: flex;

  flex-direction: column;

  gap: 6px;

}



.reason-chip {

  display: flex;

  align-items: center;

  gap: 8px;

  padding: 6px 8px;

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  border-radius: 8px;

  font-size: 10.5px;

  cursor: pointer;

  transition: all 0.15s ease;

}



.reason-chip.selected {

  background: var(--brand-blue-subtle);

  border-color: #3B82F6;

}



.reason-chip.selected strong {

  color: var(--brand-blue-hover);

}



.reason-chip .reason-meta {

  display: flex;

  flex-direction: column;

  flex: 1;

}



.reason-chip .reason-meta strong {

  font-size: 10px;

  font-weight: 750;

  color: #1E293B;

  line-height: 1.2;

}



.reason-chip .reason-meta small {

  font-size: 8.5px;

  color: #64748B;

}



.reason-chip .check-tick {

  color: #3B82F6;

  font-weight: 900;

  font-size: 11px;

}



.scanner-submit-bar {

  background: var(--surface-dark-card);

  color: #FFFFFF;

  font-size: 11px;

  font-weight: 800;

  text-align: center;

  padding: 8px;

  border-radius: 8px;

  cursor: pointer;

  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.2);

}



/* Step 4 Inbound Alert & Masked Call inside Phone */

.alert-call-stage {

  display: flex;

  flex-direction: column;

  justify-content: center;

  gap: 12px;

  width: 100%;

}



.phone-toast-notification {

  background: rgba(255, 255, 255, 0.96);

  backdrop-filter: blur(14px);

  border: 1px solid rgba(0, 0, 0, 0.08);

  border-radius: 16px;

  padding: 12px 14px;

  width: 95%;

  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12);

}



.toast-head {

  display: flex;

  align-items: center;

  gap: 6px;

  margin-bottom: 6px;

}



.toast-logo {

  background: var(--brand-blue);

  color: #FFFFFF;

  font-size: 9px;

  font-weight: 900;

  padding: 2px 5px;

  border-radius: 4px;

  font-family: var(--font-mono);

}



.toast-head strong {

  font-size: 11px;

  font-weight: 800;

  color: var(--ink-900);

}



.toast-head small {

  margin-left: auto;

  font-size: 9px;

  color: #94A3B8;

  font-family: var(--font-mono);

}



.toast-content strong {

  display: block;

  font-size: 11.5px;

  font-weight: 800;

  color: var(--ink-900);

  margin-bottom: 2px;

}



.toast-content p {

  font-size: 10.5px;

  color: #475569;

  margin-bottom: 6px;

}



.toast-action-btn {

  background: rgba(245, 158, 11, 0.08);

  border: 1px solid rgba(245, 158, 11, 0.2);

  border-radius: 8px;

  padding: 5px 8px;

  font-size: 9.5px;

  font-weight: 700;

  color: var(--brand-blue);

  text-align: center;

}



.phone-masked-call-box {

  background: var(--surface-dark-card);

  border: 1px solid rgba(255, 255, 255, 0.15);

  border-radius: 18px;

  padding: 14px 12px;

  width: 95%;

  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4);

  display: flex;

  flex-direction: column;

  gap: 10px;

}



.call-relay-header {

  display: flex;

  align-items: center;

  gap: 10px;

}



.call-pulse-circle {

  width: 34px;

  height: 34px;

  border-radius: 50%;

  background: var(--brand-emerald);

  display: grid;

  place-items: center;

  box-shadow: 0 0 14px rgba(0, 196, 140, 0.6);

  animation: recBlink 1.5s infinite;

  flex-shrink: 0;

}



.call-meta-info {

  display: flex;

  flex-direction: column;

  gap: 1px;

}



.call-type-tag {

  font-size: 8.5px;

  font-weight: 800;

  color: var(--brand-emerald-bright);

  font-family: var(--font-mono);

  letter-spacing: 0.05em;

}



.caller-id {

  font-size: 12px;

  font-weight: 800;

  color: #FFFFFF;

}



.masked-num {

  font-size: 9.5px;

  font-family: var(--font-mono);

  color: #94A3B8;

}



.call-privacy-shield {

  display: flex;

  align-items: center;

  gap: 6px;

  background: rgba(0, 196, 140, 0.12);

  border: 1px solid rgba(0, 196, 140, 0.25);

  border-radius: 9999px;

  padding: 3px 8px;

  font-size: 8.5px;

  font-weight: 750;

  color: var(--brand-emerald-border);

  font-family: var(--font-mono);

}



.call-action-buttons {

  display: flex;

  justify-content: space-around;

  align-items: center;

  padding-top: 4px;

}



.call-btn-circle {

  width: 36px;

  height: 36px;

  border-radius: 50%;

  display: grid;

  place-items: center;

  cursor: pointer;

  transition: transform 0.2s ease;

}



.call-btn-circle:hover {

  transform: scale(1.08);

}



.call-btn-circle.btn-decline {

  background: #EF4444;

  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.4);

}



.call-btn-circle.btn-accept {

  background: var(--brand-emerald);

  box-shadow: 0 4px 12px rgba(0, 196, 140, 0.4);

}



/* Responsive adjustments */

@media (max-width: 900px) {

  .step-walkthrough-card {

    padding: 36px 24px;

  }



  .step-walkthrough-slide {

    grid-template-columns: 1fr;

    gap: 36px;

  }



  .step-walkthrough-copy {

    text-align: center;

    align-items: center;

  }



  .step-carousel-controls {

    justify-content: center;

  }



  .step-dash-perks {

    align-items: center;

  }

}



/* ==========================================================================

   SIMULATOR SECTION

   ========================================================================== */

.simulator-section {

  padding: 100px 0;

  background: var(--canvas-subtle);

  border-top: 1px solid var(--line-subtle);

  border-bottom: 1px solid var(--line-subtle);

}



.simulator-stage {

  display: grid;

  grid-template-columns: 1fr auto 1fr;

  align-items: center;

  gap: 32px;

  max-width: 1040px;

  margin-inline: auto;

  margin-top: 40px;

}



.device-mockup {

  background: #FFFFFF;

  border-radius: 34px;

  border: 2px solid var(--line-subtle);

  box-shadow: var(--shadow-lg);

  overflow: hidden;

  position: relative;

}



.device-notch-island {

  padding: 12px 0 6px;

  display: flex;

  justify-content: center;

}



.dynamic-camera-lens {

  width: 76px;

  height: 18px;

  background: var(--surface-dark-base);

  border-radius: 12px;

}



.device-viewport {

  padding: 18px 24px 28px;

  min-height: 480px;

  display: flex;

  flex-direction: column;

}



.browser-address-bar {

  background: var(--canvas-alt);

  border: 1px solid var(--line-subtle);

  padding: 6px 12px;

  border-radius: var(--radius-sm);

  display: flex;

  align-items: center;

  gap: 8px;

  font-size: 11px;

  color: var(--ink-500);

  font-family: var(--font-mono);

  margin-bottom: 18px;

}



.scanner-owner-card {

  display: flex;

  align-items: center;

  gap: 12px;

  background: var(--canvas-subtle);

  border: 1px solid var(--line-subtle);

  padding: 12px;

  border-radius: var(--radius-md);

  margin-bottom: 18px;

}



.owner-avatar-pill {

  width: 36px;

  height: 36px;

  border-radius: 50%;

  background: var(--brand-blue-subtle);

  display: grid;

  place-items: center;

}



.scanned-plate {

  font-size: 13px;

  font-weight: 800;

  font-family: var(--font-mono);

  color: var(--ink-900);

}



.safe-badge-txt {

  font-size: 11px;

  color: var(--shield-emerald);

  font-weight: 700;

  display: flex;

  align-items: center;

  gap: 4px;

}



.action-label {

  display: block;

  font-size: 12px;

  font-weight: 700;

  color: var(--ink-700);

  margin-bottom: 10px;

}



.preset-reasons-grid {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 10px;

  margin-bottom: 14px;

}



.preset-btn {

  background: #FFFFFF;

  border: 1px solid var(--line-subtle);

  padding: 12px 10px;

  border-radius: var(--radius-md);

  display: flex;

  flex-direction: column;

  align-items: center;

  gap: 6px;

  cursor: pointer;

  transition: all 0.2s ease;

}



.btn-svg-icon {

  color: var(--ink-500);

}



.btn-txt {

  font-size: 11px;

  font-weight: 600;

  color: var(--ink-700);

}



.preset-btn:hover {

  background: var(--canvas-subtle);

  border-color: var(--ink-300);

}



.preset-btn.active {

  background: var(--signal-orange-subtle);

  border-color: var(--signal-orange);

}



.preset-btn.active .btn-svg-icon,

.preset-btn.active .btn-txt {

  color: var(--signal-orange);

  font-weight: 700;

}



.custom-note-field {

  margin-bottom: 14px;

}



.custom-note-field input {

  width: 100%;

  background: var(--canvas-subtle);

  border: 1px solid var(--line-subtle);

  padding: 10px 14px;

  border-radius: var(--radius-sm);

  font-size: 12px;

  color: var(--ink-900);

}



.custom-note-field input:focus {

  border-color: var(--brand-blue);

  background: #FFFFFF;

}



.privacy-note-badge {

  display: flex;

  align-items: center;

  gap: 8px;

  font-size: 11px;

  color: var(--ink-500);

  margin-top: 14px;

}



/* Transmission Pipeline */

.transmission-pipeline {

  display: flex;

  flex-direction: column;

  align-items: center;

  gap: 12px;

  padding: 10px;

}



.relay-track {

  width: 60px;

  height: 2px;

  background: linear-gradient(90deg, var(--signal-orange), var(--shield-emerald));

  position: relative;

  overflow: hidden;

}



.relay-beam {

  position: absolute;

  width: 8px;

  height: 8px;

  border-radius: 50%;

  background: var(--signal-orange);

  top: -3px;

  left: 0;

}



.relay-metadata {

  text-align: center;

}



.relay-speed {

  display: block;

  font-size: 11px;

  font-weight: 700;

  color: var(--shield-emerald);

  font-family: var(--font-mono);

}



.relay-metadata small {

  font-size: 9px;

  color: var(--ink-400);

}



/* Owner's Phone Screen (Contrasted Midnight Mode) */

.owner-device {

  background: var(--surface-dark-base);

  border-color: #1E293B;

}



.owner-viewport {

  color: #FFFFFF;

  justify-content: space-between;

}



.ios-status-bar {

  display: flex;

  align-items: center;

  justify-content: space-between;

  font-size: 11px;

  font-family: var(--font-mono);

  color: #94A3B8;

  margin-bottom: 24px;

}



.ios-notification-banner {

  background: var(--surface-dark-elevated);

  border: 1px solid rgba(255, 92, 0, 0.4);

  border-radius: var(--radius-lg);

  padding: 16px;

  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);

}



.banner-app-row {

  display: flex;

  align-items: center;

  justify-content: space-between;

  margin-bottom: 8px;

}



.banner-brand {

  display: flex;

  align-items: center;

  gap: 8px;

  font-size: 12px;

}



.banner-logo-box {

  background: var(--signal-orange);

  color: #FFFFFF;

  font-size: 9px;

  font-weight: 900;

  padding: 2px 5px;

  border-radius: 4px;

}



.banner-time {

  font-size: 10px;

  color: #94A3B8;

}



.banner-title {

  font-size: 14px;

  font-weight: 700;

  color: #F8FAFC;

  margin-bottom: 6px;

}



.banner-body {

  font-size: 12px;

  color: #CBD5E1;

  line-height: 1.5;

  margin-bottom: 12px;

}



.banner-meta-chips {

  display: flex;

  gap: 8px;

  margin-bottom: 12px;

}



.meta-pill {

  font-size: 10px;

  color: #94A3B8;

  background: rgba(255, 255, 255, 0.06);

  padding: 3px 8px;

  border-radius: 4px;

  font-family: var(--font-mono);

}



.banner-action-chips {

  display: flex;

  gap: 6px;

  flex-wrap: wrap;

}



.quick-chip {

  font-size: 10px;

  background: rgba(255, 255, 255, 0.1);

  border: 1px solid rgba(255, 255, 255, 0.15);

  color: #F8FAFC;

  padding: 5px 10px;

  border-radius: var(--radius-pill);

  cursor: pointer;

  transition: all 0.2s ease;

}



.quick-chip:hover {

  background: var(--shield-emerald);

  color: var(--ink-900);

  font-weight: 700;

}



.reply-feedback-line {

  font-size: 11px;

  color: var(--brand-emerald-bright);

  margin-top: 8px;

  min-height: 16px;

  font-weight: 600;

}



.owner-screen-ambient {

  text-align: center;

  padding-top: 16px;

}



.ambient-active-badge {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  font-size: 10px;

  color: #94A3B8;

}



.green-live-light {

  width: 6px;

  height: 6px;

  border-radius: 50%;

  background: var(--brand-emerald-bright);

}



/* ==========================================================================

   BENTO GRID FEATURES

   ========================================================================== */

.bento-section {

  padding: 100px 0;

  background: #FFFFFF;

}



.bento-grid {

  display: grid;

  grid-template-columns: 1.2fr 0.8fr;

  gap: 24px;

}



.bento-card {

  background: #FFFFFF;

  border: 1px solid var(--line-subtle);

  border-radius: var(--radius-xl);

  padding: 36px;

  box-shadow: var(--shadow-sm);

  display: flex;

  flex-direction: column;

  justify-content: space-between;

  transition: transform 0.25s var(--ease-spring), box-shadow 0.25s var(--ease-spring);

}



.bento-card:hover {

  transform: translateY(-4px);

  box-shadow: var(--shadow-md);

}



.bento-hero-card {

  grid-column: span 1;

}



.bento-wide-card {

  grid-column: span 2;

}



.bento-tag {

  font-family: var(--font-mono);

  font-size: 10px;

  font-weight: 800;

  letter-spacing: 0.1em;

  padding: 4px 10px;

  border-radius: var(--radius-pill);

  display: inline-block;

  margin-bottom: 14px;

}



.tag-emerald {

  background: var(--shield-emerald-subtle);

  color: var(--shield-emerald);

  border: 1px solid var(--shield-emerald-border);

}



.tag-orange {

  background: var(--signal-orange-subtle);

  color: var(--signal-orange);

  border: 1px solid var(--signal-orange-border);

}



.tag-blue {

  background: var(--brand-blue-subtle);

  color: var(--brand-blue);

  border: 1px solid var(--brand-blue-border);

}



.tag-slate {

  background: var(--canvas-alt);

  color: var(--ink-700);

  border: 1px solid var(--line-subtle);

}



.bento-heading {

  font-size: 22px;

  font-weight: 800;

  line-height: 1.25;

  color: var(--ink-900);

  margin-bottom: 8px;

}



.bento-sub {

  font-size: 14px;

  color: var(--ink-600);

  line-height: 1.6;

}



.bento-privacy-interactive {

  margin-top: 28px;

}



.privacy-compare-pill {

  display: flex;

  align-items: center;

  background: var(--canvas-subtle);

  border: 1px solid var(--line-subtle);

  border-radius: var(--radius-md);

  padding: 16px;

  gap: 16px;

}



.pill-col {

  flex: 1;

}



.pill-col strong {

  display: block;

  font-family: var(--font-mono);

  font-size: 15px;

  margin: 4px 0 2px;

}



.pill-col small {

  font-size: 11px;

  color: var(--ink-500);

}



.pill-flag {

  font-size: 10px;

  font-weight: 800;

  display: inline-block;

}



.flag-bad {

  color: var(--danger-crimson);

}



.flag-good {

  color: var(--shield-emerald);

}



.pill-divider-arrow {

  font-size: 20px;

  color: var(--ink-400);

}



.sos-pill-badge {

  display: flex;

  align-items: center;

  gap: 10px;

  background: var(--signal-orange-subtle);

  border: 1px solid var(--signal-orange-border);

  padding: 14px 18px;

  border-radius: var(--radius-md);

  font-size: 13px;

  font-weight: 700;

  color: var(--signal-orange);

  margin-top: 24px;

}



.bento-feature-ticks {

  margin-top: 24px;

  display: flex;

  flex-direction: column;

  gap: 10px;

  font-size: 13px;

  font-weight: 600;

  color: var(--ink-700);

}



.durability-strip {

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 16px;

  margin-top: 24px;

  padding-top: 24px;

  border-top: 1px solid var(--line-subtle);

}



.dur-stat strong {

  display: block;

  font-size: 24px;

  font-weight: 900;

  font-family: var(--font-mono);

  color: var(--ink-900);

}



.dur-stat span {

  font-size: 12px;

  color: var(--ink-500);

}



/* ==========================================================================

   HOW IT WORKS (4 STEPS)

   ========================================================================== */

.how-section {

  padding: 100px 0;

  background: var(--canvas-subtle);

  border-top: 1px solid var(--line-subtle);

  border-bottom: 1px solid var(--line-subtle);

}



.steps-flow-grid {

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 24px;

}



.flow-card {

  background: #FFFFFF;

  border: 1px solid var(--line-subtle);

  border-radius: var(--radius-lg);

  padding: 30px 24px;

  position: relative;

  box-shadow: var(--shadow-xs);

  transition: transform 0.2s var(--ease-spring), border-color 0.2s ease, box-shadow 0.2s ease;

}



.flow-card:hover {

  transform: translateY(-5px);

  border-color: var(--brand-blue);

  box-shadow: var(--shadow-md);

}



.flow-step-num {

  font-family: var(--font-mono);

  font-size: 26px;

  font-weight: 900;

  color: #CBD5E1;

  position: absolute;

  top: 20px;

  right: 20px;

}



.flow-icon-circle {

  width: 50px;

  height: 50px;

  border-radius: var(--radius-md);

  background: var(--brand-blue-subtle);

  display: grid;

  place-items: center;

  margin-bottom: 20px;

}



.flow-card h4 {

  font-size: 16px;

  font-weight: 700;

  color: var(--ink-900);

  margin-bottom: 8px;

}



.flow-card p {

  font-size: 13px;

  color: var(--ink-600);

  line-height: 1.6;

}



/* ==========================================================================

   SPECS & ENGINEERING LAB

   ========================================================================== */

.specs-section {

  padding: 100px 0;

  background: #FFFFFF;

}



.specs-container {

  display: grid;

  grid-template-columns: 0.9fr 1.1fr;

  align-items: center;

  gap: 60px;

}



.specs-card-frame {

  position: relative;

  border-radius: var(--radius-xl);

  overflow: hidden;

  border: 1px solid var(--line-subtle);

  box-shadow: var(--shadow-lg);

  background: #FFFFFF;

}



.specs-hero-img {

  width: 100%;

  display: block;

}



.specs-over-badge {

  position: absolute;

  bottom: 20px;

  left: 20px;

  background: rgba(255, 255, 255, 0.94);

  backdrop-filter: blur(12px);

  border: 1px solid var(--line-subtle);

  padding: 6px 14px;

  border-radius: var(--radius-pill);

  font-size: 11px;

  font-family: var(--font-mono);

  font-weight: 800;

  color: var(--brand-blue);

  box-shadow: var(--shadow-xs);

}



.specs-detail-grid {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 24px;

  margin-top: 32px;

}



.spec-detail-item {

  display: flex;

  align-items: flex-start;

  gap: 12px;

}



.spec-detail-icon {

  margin-top: 2px;

}



.spec-detail-item h5 {

  font-size: 14px;

  font-weight: 700;

  color: var(--ink-900);

  margin-bottom: 4px;

}



.spec-detail-item p {

  font-size: 12px;

  color: var(--ink-500);

  line-height: 1.5;

}



/* ==========================================================================

   PRICING & TIERS

   ========================================================================== */

.pricing-section {

  padding: 100px 0;

  background: var(--canvas-subtle);

  border-bottom: 1px solid var(--line-subtle);

}



.pricing-deck {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 28px;

  align-items: stretch;

  margin-bottom: 64px;

}



.pricing-card {

  background: #FFFFFF;

  border: 1px solid var(--line-subtle);

  border-radius: var(--radius-xl);

  padding: 36px 30px;

  display: flex;

  flex-direction: column;

  position: relative;

  box-shadow: var(--shadow-xs);

  transition: transform 0.25s var(--ease-spring), box-shadow 0.25s var(--ease-spring), border-color 0.2s ease;

}



.pricing-card:hover {

  transform: translateY(-6px);

  box-shadow: var(--shadow-lg);

  border-color: var(--ink-300);

}



.pricing-card.featured-tier {

  border: 2px solid var(--brand-blue);

  background: linear-gradient(180deg, #F8FAFF 0%, #FFFFFF 100%);

  box-shadow: 0 20px 45px -10px rgba(245, 158, 11, 0.18);

  position: relative;

  z-index: 2;

}



@media (min-width: 1025px) {

  .pricing-card.featured-tier {

    margin-top: -14px;

    margin-bottom: 14px;

  }

}



.pricing-card.featured-tier:hover {

  transform: translateY(-8px);

  box-shadow: 0 26px 52px -10px rgba(245, 158, 11, 0.28);

}



.popular-ribbon {

  position: absolute;

  top: -12px;

  left: 50%;

  transform: translateX(-50%);

  background: var(--brand-blue);

  color: #FFFFFF;

  font-size: 10px;

  font-weight: 800;

  letter-spacing: 0.1em;

  padding: 4px 14px;

  border-radius: var(--radius-pill);

  box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);

}



.plan-badge {

  font-family: var(--font-mono);

  font-size: 11px;

  font-weight: 700;

  letter-spacing: 0.1em;

  color: var(--ink-500);

  display: block;

  margin-bottom: 6px;

}



.plan-badge.badge-brand {

  color: var(--brand-blue);

}



.plan-title {

  font-size: 26px;

  font-weight: 800;

  color: var(--ink-900);

  margin-bottom: 4px;

}



.plan-desc {

  font-size: 13px;

  color: var(--ink-500);

  margin-bottom: 24px;

}



.price-figure {

  padding-bottom: 24px;

  border-bottom: 1px solid var(--line-subtle);

  margin-bottom: 24px;

}



.price-val-row {

  display: flex;

  align-items: baseline;

  gap: 4px;

}



.currency-symbol {

  font-size: 24px;

  font-weight: 700;

  color: var(--ink-900);

}



.amount-number {

  font-size: 48px;

  font-weight: 900;

  letter-spacing: -0.04em;

  line-height: 1;

  color: var(--ink-900);

}



.billing-term {

  font-size: 13px;

  color: var(--ink-400);

}



.discount-cross {

  font-size: 12px;

  color: var(--ink-500);

  margin-top: 6px;

}



.plan-perks {

  list-style: none;

  display: flex;

  flex-direction: column;

  gap: 12px;

  font-size: 13px;

  color: var(--ink-600);

  margin-bottom: 32px;

  flex-grow: 1;

}



.plan-perks li {

  display: flex;

  align-items: center;

  gap: 8px;

}



.check-mark {

  color: var(--shield-emerald);

  font-weight: 800;

}



.trust-guarantee-strip {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 28px;

  flex-wrap: wrap;

  padding: 18px 28px;

  background: #FFFFFF;

  border: 1px solid var(--line-subtle);

  border-radius: var(--radius-md);

  font-size: 13px;

  color: var(--ink-600);

  max-width: 960px;

  margin-inline: auto;

  position: relative;

  z-index: 1;

  box-shadow: var(--shadow-xs);

}



@media (max-width: 768px) {

  .trust-guarantee-strip {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 14px 18px;

    padding: 16px 20px;

  }

}



@media (max-width: 480px) {

  .trust-guarantee-strip {

    grid-template-columns: 1fr;

    gap: 12px;

    text-align: center;

  }



  .trust-pill {

    justify-content: center;

  }

}



.trust-pill {

  display: flex;

  align-items: center;

  gap: 6px;

}



/* ==========================================================================

   REVIEWS & RATINGS

   ========================================================================== */

.reviews-section {

  padding: 90px 0;

  background: #FFFFFF;

}



.rating-badge-summary {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  font-size: 14px;

  color: var(--ink-600);

  margin-top: 12px;

}



.reviews-grid {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 24px;

  margin-top: 40px;

}



.review-tile {

  background: #FFFFFF;

  border: 1px solid var(--line-subtle);

  border-radius: var(--radius-lg);

  padding: 28px;

  display: flex;

  flex-direction: column;

  justify-content: space-between;

  box-shadow: var(--shadow-xs);

  transition: transform 0.2s var(--ease-spring), box-shadow 0.2s ease;

}



.review-tile:hover {

  transform: translateY(-4px);

  box-shadow: var(--shadow-md);

}



.review-quote {

  font-size: 14px;

  color: var(--ink-600);

  line-height: 1.6;

  margin: 14px 0 24px;

}



.reviewer-footer {

  display: flex;

  align-items: center;

  gap: 12px;

}



.avatar-ring {

  width: 36px;

  height: 36px;

  border-radius: 50%;

  background: var(--brand-blue-subtle);

  color: var(--brand-blue);

  display: grid;

  place-items: center;

  font-weight: 700;

  font-size: 14px;

}



.reviewer-footer strong {

  display: block;

  font-size: 13px;

  color: var(--ink-900);

}



.reviewer-footer small {

  font-size: 11px;

  color: var(--ink-400);

}



/* ==========================================================================

   FAQ ACCORDION

   ========================================================================== */

.faq-section {

  padding: 90px 0;

  background: var(--canvas-subtle);

  border-top: 1px solid var(--line-subtle);

}



.faq-list {

  max-width: 760px;

  margin-inline: auto;

  display: flex;

  flex-direction: column;

  gap: 12px;

}



.faq-item {

  background: #FFFFFF;

  border: 1px solid var(--line-subtle);

  border-radius: var(--radius-md);

  overflow: hidden;

  transition: border-color 0.2s ease, box-shadow 0.2s ease;

}



.faq-item:hover {

  border-color: var(--ink-300);

  box-shadow: var(--shadow-xs);

}



.faq-item.active {

  border-color: var(--brand-blue);

}



.faq-trigger {

  width: 100%;

  padding: 18px 24px;

  text-align: left;

  font-size: 15px;

  font-weight: 700;

  color: var(--ink-900);

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 16px;

  cursor: pointer;

}



.faq-plus {

  font-size: 20px;

  color: var(--brand-blue);

  transition: transform 0.3s ease;

}



.faq-item.active .faq-plus {

  transform: rotate(45deg);

}



.faq-body {

  max-height: 0;

  overflow: hidden;

  transition: max-height 0.35s ease, padding 0.35s ease;

}



.faq-item.active .faq-body {

  max-height: 250px;

  padding: 0 24px 20px;

}



.faq-body p {

  font-size: 14px;

  color: var(--ink-600);

  line-height: 1.6;

}



/* ==========================================================================

   FINAL CALL TO ACTION BANNER

   ========================================================================== */

.final-banner-section {

  padding: 60px 0 100px;

  background: var(--canvas-subtle);

}



.final-cta-card {

  background: linear-gradient(135deg, #0A0F1D 0%, var(--surface-dark-elevated) 100%);

  color: #FFFFFF;

  border-radius: var(--radius-xl);

  padding: 70px 40px;

  text-align: center;

  position: relative;

  overflow: hidden;

  box-shadow: 0 25px 60px rgba(10, 15, 29, 0.2);

}



.banner-orb {

  position: absolute;

  width: 400px;

  height: 400px;

  border-radius: 50%;

  top: 50%;

  left: 50%;

  transform: translate(-50%, -50%);

  background: radial-gradient(circle, rgba(245, 158, 11, 0.25) 0%, transparent 70%);

  pointer-events: none;

}



.final-cta-card h2 {

  font-size: clamp(32px, 4vw, 46px);

  font-weight: 800;

  margin-bottom: 16px;

  position: relative;

  z-index: 2;

  color: #FFFFFF;

}



.final-cta-card p {

  font-size: 16px;

  color: #94A3B8;

  max-width: 560px;

  margin-inline: auto;

  margin-bottom: 32px;

  position: relative;

  z-index: 2;

}



.banner-btn-cluster {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 16px;

  flex-wrap: wrap;

  position: relative;

  z-index: 2;

}



/* ==========================================================================

   FOOTER

   ========================================================================== */

.site-footer {

  background: radial-gradient(ellipse 70% 320px at 50% 0%, rgba(245, 158, 11, 0.12) 0%, transparent 70%),

    radial-gradient(ellipse 50% 200px at 85% 40%, rgba(0, 196, 140, 0.05) 0%, transparent 60%),

    var(--surface-dark-base);

  border-top: 1px solid rgba(255, 255, 255, 0.08);

  padding: 80px 0 0;

  font-size: 14px;

  color: #94A3B8;

  position: relative;

  overflow: hidden;

}



.site-footer::before {

  content: '';

  position: absolute;

  top: 0;

  left: 15%;

  right: 15%;

  height: 1px;

  background: linear-gradient(90deg, transparent 0%, rgba(245, 158, 11, 0.45) 50%, transparent 100%);

  pointer-events: none;

}



.footer-grid {

  display: grid;

  grid-template-columns: 2fr 1fr 1fr;

  gap: 50px;

  margin-bottom: 50px;

  position: relative;

  z-index: 2;

}



.footer-about .brand-name {

  color: #FFFFFF !important;

  font-weight: 800;

  letter-spacing: -0.02em;

}



.footer-about .brand-name span {

  color: var(--brand-blue) !important;

}



.footer-summary {

  margin: 16px 0 24px;

  max-width: 380px;

  line-height: 1.65;

  color: #94A3B8;

}



.made-in-india-tag {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  padding: 8px 16px;

  background: rgba(255, 255, 255, 0.03);

  border: 1px solid rgba(255, 255, 255, 0.08);

  border-radius: var(--radius-full);

  font-size: 12px;

  font-weight: 600;

  color: #E2E8F0;

  backdrop-filter: blur(8px);

}



.footer-nav-col h5 {

  font-size: 12px;

  font-weight: 700;

  color: #FFFFFF;

  margin-bottom: 20px;

  text-transform: uppercase;

  letter-spacing: 0.08em;

}



.footer-nav-col a {

  display: block;

  margin-bottom: 12px;

  color: #94A3B8;

  font-size: 14px;

  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);

}



.footer-nav-col a:hover {

  color: #60A5FA;

  transform: translateX(4px);

  text-shadow: 0 0 16px rgba(96, 165, 250, 0.35);

}



.footer-sub-bar {

  border-top: 1px solid rgba(255, 255, 255, 0.06);

  padding: 24px 0 32px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  flex-wrap: wrap;

  gap: 16px;

  color: #64748B;

  font-size: 13px;

  position: relative;

  z-index: 2;

}



.footer-trust-marks {

  display: flex;

  align-items: center;

  gap: 14px;

}



.footer-trust-marks span {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  padding: 6px 14px;

  background: rgba(255, 255, 255, 0.02);

  border: 1px solid rgba(255, 255, 255, 0.06);

  border-radius: var(--radius-full);

  font-size: 12px;

  color: #94A3B8;

}



/* ==========================================================================

   MODALS & OVERLAYS

   ========================================================================== */

.modal-backdrop {

  position: fixed;

  inset: 0;

  background: rgba(10, 15, 29, 0.55);

  backdrop-filter: blur(14px);

  z-index: 1000;

  display: none;

  place-items: center;

  padding: 20px;

  opacity: 0;

}



.modal-backdrop.active {

  display: grid;

  opacity: 1;

}



.modal-dialog {

  background: #FFFFFF;

  border: 1px solid var(--line-subtle);

  border-radius: var(--radius-xl);

  padding: 36px;

  max-width: 520px;

  width: 100%;

  position: relative;

  box-shadow: 0 30px 80px rgba(10, 15, 29, 0.25);

  max-height: 90vh;

  overflow-y: auto;

}



.modal-dismiss-btn {

  position: absolute;

  top: 20px;

  right: 20px;

  font-size: 26px;

  color: var(--ink-400);

  cursor: pointer;

  line-height: 1;

}



.modal-dismiss-btn:hover {

  color: var(--ink-900);

}



.modal-dialog-header {

  margin-bottom: 24px;

}



.dialog-badge {

  font-family: var(--font-mono);

  font-size: 10px;

  font-weight: 800;

  letter-spacing: 0.1em;

  padding: 3px 10px;

  background: var(--brand-blue-subtle);

  color: var(--brand-blue);

  border: 1px solid var(--brand-blue-border);

  border-radius: var(--radius-pill);

  display: inline-block;

  margin-bottom: 10px;

}



.modal-dialog-header h3 {

  font-size: 22px;

  font-weight: 800;

  color: var(--ink-900);

}



.modal-dialog-header p {

  font-size: 13px;

  color: var(--ink-500);

}



.form-field {

  margin-bottom: 16px;

}



.form-grid-2 {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 14px;

}



.form-field label {

  display: block;

  font-size: 12px;

  font-weight: 600;

  color: var(--ink-700);

  margin-bottom: 6px;

}



.form-field input {

  width: 100%;

  background: var(--canvas-subtle);

  border: 1px solid var(--line-subtle);

  border-radius: var(--radius-sm);

  padding: 11px 14px;

  font-size: 13px;

  color: var(--ink-900);

  transition: border-color 0.2s ease, background 0.2s ease;

}



.form-field input:focus {

  border-color: var(--brand-blue);

  background: #FFFFFF;

}



.mono-input-field {

  font-family: var(--font-mono);

  text-transform: uppercase;

}



.order-pricing-summary {

  background: var(--canvas-subtle);

  border: 1px solid var(--line-subtle);

  border-radius: var(--radius-md);

  padding: 16px;

  margin: 20px 0;

}



.summary-row {

  display: flex;

  justify-content: space-between;

  font-size: 13px;

  color: var(--ink-600);

  margin-bottom: 8px;

}



.free-pill {

  color: var(--shield-emerald);

  font-weight: 700;

}



.grand-total-row {

  border-top: 1px solid var(--line-subtle);

  padding-top: 10px;

  margin-top: 10px;

  margin-bottom: 0;

  font-weight: 800;

  color: var(--ink-900);

  font-size: 16px;

}



.grand-total-val {

  color: var(--brand-blue);

}



.policy-body-text {

  font-size: 14px;

  color: var(--ink-600);

  line-height: 1.6;

}



/* ==========================================================================

   SYSTEM TOAST NOTIFICATION

   ========================================================================== */

.system-toast {

  position: fixed;

  bottom: 24px;

  right: 24px;

  background: var(--ink-900);

  border: 1px solid var(--shield-emerald);

  padding: 14px 20px;

  border-radius: var(--radius-md);

  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);

  color: #FFFFFF;

  font-size: 13px;

  font-weight: 600;

  z-index: 2000;

  display: none;

}



.system-toast.active {

  display: block;

}



/* ==========================================================================

   RESPONSIVE DESIGN

   ========================================================================== */

@media (max-width: 1024px) {

  .hero-video-wrapper {

    margin: 24px auto 36px;

    padding: 5px;

  }



  .video-viewport {

    min-height: 420px;

  }



  .scene-narrative-card {

    max-width: 480px;

    padding: 16px 20px;

  }



  .studio-card-deck {

    grid-template-columns: 1fr;

    gap: 36px;

  }



  .studio-stage-panel {

    min-height: 520px;

  }



  .bento-grid {

    grid-template-columns: 1fr;

  }



  .bento-wide-card {

    grid-column: span 1;

  }



  .steps-flow-grid {

    grid-template-columns: repeat(2, 1fr);

  }



  .specs-container {

    grid-template-columns: 1fr;

  }



  .simulator-stage {

    grid-template-columns: 1fr;

    gap: 24px;

  }



  .transmission-pipeline {

    transform: rotate(90deg);

  }



  .pricing-deck {

    grid-template-columns: 1fr;

    max-width: 460px;

    margin-inline: auto;

    margin-bottom: 48px;

    gap: 28px;

  }



  .pricing-card.featured-tier {

    margin-top: 0;

    margin-bottom: 0;

    transform: none;

  }



  .reviews-grid {

    grid-template-columns: 1fr;

  }



  .footer-grid {

    grid-template-columns: 1fr;

    gap: 30px;

  }



  .step-walkthrough-card {

    padding: 44px 36px;

  }



  .step-walkthrough-slide {

    grid-template-columns: 1fr;

    gap: 40px;

    text-align: center;

  }



  .step-walkthrough-copy {

    align-items: center;

  }



  .step-serif-lead {

    margin-inline: auto;

  }



  .step-dash-perks {

    align-items: center;

  }



  .step-carousel-controls {

    justify-content: center;

  }



  .official-qrtag9-decal {

    width: 420px;

    height: 255px;

    padding: 12px;

  }



  .decal-bold-title {

    font-size: 22px;

  }



  .decal-black-qr-box {

    width: 120px;

    height: 120px;

    padding: 8px;

  }

}



@media (max-width: 768px) {

  .primary-nav {

    display: none;

    position: absolute;

    top: 100%;

    left: 0;

    right: 0;

    background: #FFFFFF;

    flex-direction: column;

    padding: 24px;

    gap: 18px;

    border-bottom: 1px solid var(--line-subtle);

    box-shadow: var(--shadow-md);

  }



  .primary-nav.nav-open {

    display: flex;

  }



  .hamburger-btn {

    display: flex;

  }



  .player-topbar {

    flex-direction: column;

    align-items: stretch;

    gap: 12px;

    padding: 12px 14px;

  }



  .player-live-badge {

    justify-content: space-between;

  }



  .scene-tabs-group {

    width: 100%;

    display: flex;

    justify-content: space-between;

  }



  .scene-tab-btn {

    padding: 6px 10px;

    font-size: 11px;

    flex: 1;

    justify-content: center;

  }



  .player-playback-tools {

    align-self: flex-end;

  }



  .video-viewport {

    min-height: 380px;

    aspect-ratio: 4 / 3;

  }



  .scene-hud-layer {

    padding: 16px;

  }



  .scene-narrative-card {

    max-width: 100%;

    padding: 14px 16px;

  }



  .scene-narrative-card h3 {

    font-size: 15px;

  }



  .scene-narrative-card p {

    font-size: 12px;

  }



  .scanning-viewfinder-overlay {

    width: 86%;

    height: 48%;

  }



  .owner-animated-toast {

    width: 95%;

    top: 6%;

    padding: 12px 14px;

  }



  .player-scrubber-bar {

    padding: 10px 14px 18px;

    gap: 8px;

  }



  .segment-label {

    font-size: 9px;

  }



  .hero-proof-bar {

    flex-wrap: wrap;

    gap: 20px;

    padding-top: 24px;

  }



  .proof-divider {

    display: none;

  }



  .studio-controls-panel {

    padding: 22px;

  }



  .vehicle-category-grid {

    grid-template-columns: 1fr;

  }



  .material-finish-selector {

    grid-template-columns: 1fr;

  }



  .stage-arena-viewport {

    min-height: 400px;

  }



  .official-qrtag9-decal {

    width: 360px;

    height: 225px;

    padding: 10px;

  }



  .decal-bold-title {

    font-size: 19px;

  }



  .decal-sub-caption {

    font-size: 9px;

  }



  .decal-black-qr-box {

    width: 105px;

    height: 105px;

    padding: 7px;

  }



  .hotspot-card {

    display: none;

  }



  .durability-strip {

    grid-template-columns: repeat(2, 1fr);

  }



  .specs-detail-grid {

    grid-template-columns: 1fr;

  }



  .form-grid-2 {

    grid-template-columns: 1fr;

  }



  .hero-cta-cluster {

    flex-direction: column;

    width: 100%;

  }



  .hero-cta-cluster .btn {

    width: 100%;

    justify-content: center;

  }

}



@media (max-width: 480px) {

  .hero-headline {

    font-size: 30px;

  }



  .scene-tab-btn .tab-label {

    display: none;

  }



  .scene-tab-btn {

    padding: 6px 12px;

  }



  .video-viewport {

    min-height: 340px;

  }



  .owner-animated-toast {

    font-size: 11px;

    padding: 10px 12px;

  }



  .toast-app-head strong {

    font-size: 11px;

  }



  .toast-body-text strong {

    font-size: 12px;

  }



  .toast-body-text p {

    font-size: 11px;

  }



  .studio-controls-panel {

    padding: 16px;

  }



  .hsrp-plate-field {

    font-size: 16px;

  }



  .official-qrtag9-decal {

    width: 300px;

    height: 195px;

    padding: 8px;

    border-radius: 16px;

    gap: 8px;

  }



  .decal-white-card {

    padding: 10px 8px 6px;

    border-radius: 12px;

  }



  .decal-bold-title {

    font-size: 15px;

  }



  .decal-sub-caption {

    font-size: 7.5px;

    margin: 3px 0 auto;

  }



  .decal-icons-cluster {

    margin-top: 4px;

    padding-top: 4px;

    gap: 2px;

  }



  .decal-ico-box {

    height: 20px;

  }



  .ico-no-parking {

    height: 20px;

    padding: 0 2px;

  }



  .ico-no-parking .no-word {

    font-size: 4px;

  }



  .red-p-prohibit {

    width: 9px;

    height: 9px;

  }



  .red-p-prohibit .p-glyph {

    font-size: 6px;

  }



  .ico-no-parking .parking-word {

    font-size: 3.5px;

  }



  .svg-gate-car {

    height: 18px;

  }



  .svg-tow-truck {

    height: 18px;

  }



  .phone-ring-circle {

    width: 18px;

    height: 18px;

  }



  .phone-ring-circle svg {

    width: 10px;

    height: 10px;

  }



  .ico-warning-triangle svg {

    width: 16px;

    height: 15px;

  }



  .decal-brand-capsule {

    padding: 2px 8px;

  }



  .capsule-brand-title {

    font-size: 11px;

  }



  .decal-black-qr-box {

    width: 82px;

    height: 82px;

    padding: 5px;

    border-radius: 12px;

  }



  .decal-scan-notice {

    font-size: 6px;

  }



  .step-walkthrough-card {

    padding: 28px 16px;

    border-radius: 20px;

  }



  .step-serif-title {

    font-size: 28px;

  }



  .step-serif-lead {

    font-size: 14px;

  }



  .step-dash-perks li {

    font-size: 13px;

  }



  .device-phone-frame {

    width: 250px;

    height: 480px;

  }



  .phone-official-decal {

    width: 216px;

    padding: 6px;

  }



  .phone-decal-title {

    font-size: 11px;

  }



  .phone-decal-black-box {

    width: 60px;

    height: 60px;

  }

}



/* ==========================================================================

   NEW FEATURE 1: FREE APP-TO-APP VOIP HD CALLING

   ========================================================================== */

.voip-calling-section {

  position: relative;

  padding: 100px 0;

  background: radial-gradient(circle at 80% 20%, rgba(245, 158, 11, 0.08) 0%, transparent 60%),

    radial-gradient(circle at 20% 80%, rgba(0, 196, 140, 0.06) 0%, transparent 50%),

    var(--surface-dark-base);

  color: #FFFFFF;

  overflow: hidden;

  border-top: 1px solid rgba(255, 255, 255, 0.06);

  border-bottom: 1px solid rgba(255, 255, 255, 0.06);

}



.voip-ambient-glow {

  position: absolute;

  top: 15%;

  right: 10%;

  width: 450px;

  height: 450px;

  background: radial-gradient(circle, rgba(0, 196, 140, 0.15) 0%, transparent 70%);

  filter: blur(80px);

  pointer-events: none;

}



.voip-grid {

  display: grid;

  grid-template-columns: 1.15fr 0.85fr;

  gap: 60px;

  align-items: center;

}



.voip-content-col {

  display: flex;

  flex-direction: column;

  gap: 20px;

}



.voip-eyebrow-pill {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  background: rgba(0, 196, 140, 0.12);

  border: 1px solid rgba(0, 196, 140, 0.35);

  color: var(--brand-emerald-bright);

  padding: 6px 14px;

  border-radius: var(--radius-pill);

  font-family: var(--font-mono);

  font-size: 11px;

  font-weight: 700;

  letter-spacing: 0.5px;

  width: fit-content;

}



.pulse-emerald-dot {

  width: 7px;

  height: 7px;

  border-radius: 50%;

  background: var(--brand-emerald-bright);

  box-shadow: 0 0 8px var(--brand-emerald-bright);

  animation: pulseDot 1.5s infinite;

}



.voip-title {

  font-size: 44px;

  font-weight: 800;

  line-height: 1.15;

  letter-spacing: -0.02em;

  color: #FFFFFF;

}



.voip-highlight {

  background: linear-gradient(135deg, var(--brand-emerald-bright) 0%, var(--brand-emerald) 50%, var(--brand-emerald-bright) 100%);

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

}



.voip-lead {

  font-size: 16.5px;

  line-height: 1.6;

  color: #94A3B8;

  max-width: 580px;

}



.voip-benefits-list {

  display: flex;

  flex-direction: column;

  gap: 16px;

  margin-top: 10px;

}



.voip-benefit-item {

  display: flex;

  align-items: flex-start;

  gap: 16px;

  background: rgba(255, 255, 255, 0.03);

  border: 1px solid rgba(255, 255, 255, 0.07);

  padding: 16px 20px;

  border-radius: 16px;

  transition: all 0.3s ease;

}



.voip-benefit-item:hover {

  background: rgba(255, 255, 255, 0.05);

  border-color: rgba(0, 196, 140, 0.3);

  transform: translateX(4px);

}



.voip-benefit-icon {

  width: 44px;

  height: 44px;

  border-radius: 12px;

  background: rgba(255, 255, 255, 0.06);

  border: 1px solid rgba(255, 255, 255, 0.12);

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.benefit-glyph {

  font-size: 18px;

  font-weight: 800;

  color: var(--brand-emerald-bright);

  font-family: var(--font-mono);

}



.voip-benefit-text strong {

  display: block;

  font-size: 15px;

  font-weight: 750;

  color: #F8FAFC;

  margin-bottom: 4px;

}



.voip-benefit-text p {

  font-size: 13.5px;

  line-height: 1.5;

  color: #94A3B8;

  margin: 0;

}



.voip-actions-cluster {

  display: flex;

  flex-direction: column;

  gap: 12px;

  margin-top: 10px;

}



.store-badges-row {

  display: flex;

  align-items: center;

  gap: 14px;

  flex-wrap: wrap;

}



.app-store-pill-badge {

  display: inline-flex;

  align-items: center;

  gap: 12px;

  background: #000000;

  border: 1.5px solid rgba(255, 255, 255, 0.2);

  padding: 8px 18px;

  border-radius: 12px;

  color: #FFFFFF;

  text-decoration: none;

  transition: all 0.25s ease;

  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4);

}



.app-store-pill-badge:hover {

  border-color: var(--brand-emerald-bright);

  transform: translateY(-2px);

  box-shadow: 0 8px 24px rgba(0, 229, 163, 0.2);

}



.badge-texts {

  display: flex;

  flex-direction: column;

  line-height: 1.15;

}



.badge-texts small {

  font-size: 9px;

  text-transform: uppercase;

  letter-spacing: 0.5px;

  color: #94A3B8;

}



.badge-texts strong {

  font-size: 14px;

  font-weight: 750;

  color: #FFFFFF;

}



.voip-subnote {

  font-size: 12.5px;

  color: #64748B;

}



/* VOIP Phone Mockup Visual */

.voip-visual-col {

  display: flex;

  justify-content: center;

  align-items: center;

}



.voip-phone-mockup {

  position: relative;

  width: 320px;

  filter: drop-shadow(0 25px 60px rgba(0, 0, 0, 0.65));

}



.phone-case-bevel {

  background: #000000;

  border-radius: 46px;

  border: 9px solid var(--surface-dark-elevated);

  box-shadow:

    inset 0 0 0 1px rgba(255, 255, 255, 0.12),

    0 0 30px rgba(0, 229, 163, 0.15);

  overflow: hidden;

  display: flex;

  flex-direction: column;

}



.phone-screen-glass {

  position: relative;

  padding: 16px 18px 24px;

  background: linear-gradient(180deg, var(--surface-dark-card) 0%, var(--surface-dark-base) 100%);

  display: flex;

  flex-direction: column;

  align-items: center;

}



.voip-call-header {

  width: 100%;

  display: flex;

  justify-content: center;

  margin-top: 10px;

}



.voip-status-badge {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  background: rgba(0, 229, 163, 0.12);

  border: 1px solid rgba(0, 229, 163, 0.3);

  padding: 3px 10px;

  border-radius: 9999px;

  font-family: var(--font-mono);

  font-size: 9px;

  font-weight: 750;

  color: var(--brand-emerald-bright);

  letter-spacing: 0.3px;

}



.pulse-green-dot {

  width: 5px;

  height: 5px;

  border-radius: 50%;

  background: var(--brand-emerald-bright);

  box-shadow: 0 0 6px var(--brand-emerald-bright);

  animation: pulseDot 1.2s infinite;

}



.voip-call-body {

  display: flex;

  flex-direction: column;

  align-items: center;

  text-align: center;

  margin-top: 24px;

  width: 100%;

}



.voip-caller-avatar-ring {

  position: relative;

  width: 82px;

  height: 82px;

  display: grid;

  place-items: center;

  margin-bottom: 14px;

}



.voip-avatar-circle {

  width: 72px;

  height: 72px;

  border-radius: 50%;

  background: linear-gradient(135deg, #1E293B 0%, #0F172A 100%);

  border: 2px solid var(--brand-yellow);

  display: grid;

  place-items: center;

  box-shadow: 0 0 20px rgba(255, 186, 8, 0.25);

  z-index: 2;

}



.avatar-ripple {

  position: absolute;

  inset: 0;

  border-radius: 50%;

  border: 1.5px solid rgba(255, 186, 8, 0.4);

  animation: avatarWave 2.4s infinite cubic-bezier(0.25, 1, 0.5, 1);

  pointer-events: none;

}



.avatar-ripple.r2 {

  animation-delay: 1.2s;

}



@keyframes avatarWave {

  0% {

    transform: scale(0.9);

    opacity: 0.9;

  }



  100% {

    transform: scale(1.6);

    opacity: 0;

  }

}



.voip-caller-name {

  font-size: 16px;

  font-weight: 800;

  color: #FFFFFF;

  margin: 0;

}



.voip-vehicle-target {

  font-family: var(--font-mono);

  font-size: 11px;

  color: #94A3B8;

  margin: 4px 0 10px;

}



.voip-duration-counter {

  font-family: var(--font-mono);

  font-size: 24px;

  font-weight: 800;

  color: var(--brand-emerald-bright);

  letter-spacing: 1px;

  margin-bottom: 12px;

}



/* Equalizer Wave */

.voip-equalizer-bars {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 4px;

  height: 32px;

  margin-bottom: 16px;

}



.eq-bar {

  width: 3.5px;

  height: 12px;

  border-radius: 4px;

  background: linear-gradient(180deg, var(--brand-emerald-bright), var(--brand-emerald));

  animation: eqWave 1.4s infinite ease-in-out;

}



.eq-bar:nth-child(1) {

  animation-delay: 0.1s;

  height: 8px;

}



.eq-bar:nth-child(2) {

  animation-delay: 0.3s;

  height: 16px;

}



.eq-bar:nth-child(3) {

  animation-delay: 0.5s;

  height: 26px;

}



.eq-bar:nth-child(4) {

  animation-delay: 0.2s;

  height: 20px;

}



.eq-bar:nth-child(5) {

  animation-delay: 0.4s;

  height: 28px;

}



.eq-bar:nth-child(6) {

  animation-delay: 0.1s;

  height: 18px;

}



.eq-bar:nth-child(7) {

  animation-delay: 0.6s;

  height: 24px;

}



.eq-bar:nth-child(8) {

  animation-delay: 0.3s;

  height: 14px;

}



.eq-bar:nth-child(9) {

  animation-delay: 0.5s;

  height: 8px;

}



@keyframes eqWave {



  0%,

  100% {

    transform: scaleY(0.4);

    opacity: 0.6;

  }



  50% {

    transform: scaleY(1.1);

    opacity: 1;

  }

}



.voip-proxy-capsule {

  display: flex;

  align-items: center;

  gap: 6px;

  background: rgba(15, 23, 42, 0.7);

  border: 1px solid rgba(255, 255, 255, 0.12);

  border-radius: 9999px;

  padding: 5px 12px;

  font-size: 9.5px;

  color: #CBD5E1;

  font-family: var(--font-mono);

}



.voip-call-controls {

  display: flex;

  align-items: center;

  justify-content: space-around;

  width: 100%;

  margin-top: 24px;

  padding-top: 14px;

  border-top: 1px solid rgba(255, 255, 255, 0.08);

}



.voip-control-btn {

  display: flex;

  flex-direction: column;

  align-items: center;

  gap: 4px;

  background: transparent;

  border: none;

  color: #94A3B8;

  cursor: pointer;

  font-size: 10px;

  font-weight: 600;

  transition: all 0.2s ease;

}



.voip-control-btn:hover {

  color: #FFFFFF;

  transform: scale(1.08);

}



.voip-control-btn.active {

  color: var(--brand-emerald-bright);

}



.end-call-btn {

  width: 48px;

  height: 48px;

  border-radius: 50%;

  background: #EF4444;

  color: #FFFFFF;

  display: grid;

  place-items: center;

  border: none;

  box-shadow: 0 4px 16px rgba(239, 68, 68, 0.4);

  transition: all 0.25s ease;

}



.end-call-btn:hover {

  background: #DC2626;

  transform: scale(1.1);

  box-shadow: 0 6px 20px rgba(239, 68, 68, 0.6);

}



.voip-floating-tag {

  position: absolute;

  bottom: 8px;

  display: flex;

  align-items: center;

  gap: 6px;

  background: rgba(0, 0, 0, 0.85);

  border: 1px solid rgba(0, 229, 163, 0.4);

  border-radius: 9999px;

  padding: 3px 10px;

  font-size: 9px;

  font-weight: 750;

  color: var(--brand-emerald-bright);

}



.tag-zero {

  background: var(--brand-emerald-bright);

  color: #000000;

  border-radius: 50%;

  width: 14px;

  height: 14px;

  display: grid;

  place-items: center;

  font-size: 9px;

  font-weight: 900;

}



/* ==========================================================================

   OFFICIAL HOW IT WORKS VIDEO & VIRAL REELS SHOWCASE (YOUTUBE INTEGRATION)

   ========================================================================== */

.video-reels-section {

  position: relative;

  padding: 100px 0;

  background: radial-gradient(circle at 50% 0%, rgba(245, 158, 11, 0.05) 0%, transparent 60%),

    #F8FAFC;

  overflow: hidden;

  border-bottom: 1px solid #E2E8F0;

}



.video-ambient-glow {

  position: absolute;

  top: 10%;

  left: 50%;

  transform: translateX(-50%);

  width: 600px;

  height: 350px;

  background: radial-gradient(circle, rgba(245, 158, 11, 0.08) 0%, transparent 70%);

  filter: blur(80px);

  pointer-events: none;

}



.video-eyebrow-pill {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  background: var(--brand-blue-subtle);

  border: 1px solid var(--brand-blue-border);

  color: var(--brand-blue-hover);

  padding: 6px 14px;

  border-radius: var(--radius-pill);

  font-family: var(--font-mono);

  font-size: 11px;

  font-weight: 800;

  letter-spacing: 0.5px;

  margin-bottom: 12px;

}



.video-play-icon {

  font-size: 9px;

  color: #EF4444;

}



/* Format Switcher Tabs */

.video-format-tabs {

  display: inline-flex;

  align-items: center;

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 9999px;

  padding: 4px;

  margin-top: 24px;

  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04);

  gap: 4px;

}



.video-tab-btn {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  padding: 8px 18px;

  border-radius: 9999px;

  border: none;

  background: transparent;

  color: #64748B;

  font-size: 13px;

  font-weight: 700;

  cursor: pointer;

  transition: all 0.25s ease;

}



.video-tab-btn:hover {

  color: var(--ink-900);

}



.video-tab-btn.active {

  background: var(--surface-dark-base);

  color: #FFFFFF;

  box-shadow: 0 4px 12px rgba(10, 15, 29, 0.2);

}



/* Featured Video Theater Frame */

.featured-video-stage {

  max-width: 960px;

  margin: 40px auto 0;

}



.video-theater-frame {

  background: var(--surface-dark-base);

  border-radius: 24px;

  overflow: hidden;

  box-shadow:

    0 25px 70px -15px rgba(0, 0, 0, 0.35),

    0 10px 30px rgba(0, 0, 0, 0.15),

    0 0 0 1px rgba(255, 255, 255, 0.1);

}



.theater-topbar {

  display: flex;

  align-items: center;

  justify-content: space-between;

  padding: 12px 20px;

  background: var(--surface-dark-base);

  border-bottom: 1px solid rgba(255, 255, 255, 0.08);

}



.window-dots {

  display: flex;

  align-items: center;

  gap: 6px;

}



.window-dots span {

  width: 9px;

  height: 9px;

  border-radius: 50%;

  background: #334155;

}



.window-dots span:nth-child(1) {

  background: #EF4444;

}



.window-dots span:nth-child(2) {

  background: #F59E0B;

}



.window-dots span:nth-child(3) {

  background: var(--brand-emerald);

}



.theater-title-tag {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  font-family: var(--font-mono);

  font-size: 11px;

  font-weight: 700;

  color: #94A3B8;

}



.live-rec-dot {

  width: 6px;

  height: 6px;

  border-radius: 50%;

  background: #EF4444;

  box-shadow: 0 0 6px #EF4444;

  animation: dotBlink 1.2s infinite;

}



.hd-badge {

  font-family: var(--font-mono);

  font-size: 9px;

  font-weight: 800;

  color: var(--brand-emerald-bright);

  background: rgba(0, 229, 163, 0.12);

  border: 1px solid rgba(0, 229, 163, 0.3);

  padding: 2px 7px;

  border-radius: 4px;

}



/* Responsive YouTube Embed Container (16:9 Aspect Ratio) */

.youtube-embed-responsive {

  position: relative;

  width: 100%;

  padding-bottom: 56.25%;

  /* 16:9 Aspect Ratio */

  height: 0;

  background: #000000;

}



.youtube-embed-responsive iframe {

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  border: 0;

}



/* Theater Bottom Metadata & Video Swapper */

.theater-bottom-bar {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 20px;

  padding: 18px 24px;

  background: var(--surface-dark-card);

  border-top: 1px solid rgba(255, 255, 255, 0.08);

}



.theater-meta strong {

  display: block;

  font-size: 14.5px;

  font-weight: 800;

  color: #FFFFFF;

  margin-bottom: 3px;

}



.theater-meta p {

  font-size: 12.5px;

  color: #94A3B8;

  margin: 0;

}



.yt-id-updater-box {

  display: flex;

  align-items: center;

  gap: 10px;

  flex-shrink: 0;

}



.updater-label {

  font-family: var(--font-mono);

  font-size: 11px;

  color: #94A3B8;

  white-space: nowrap;

}



.updater-input-group {

  display: flex;

  align-items: center;

  gap: 6px;

}



.yt-input {

  width: 220px;

  background: rgba(255, 255, 255, 0.06);

  border: 1px solid rgba(255, 255, 255, 0.15);

  color: #FFFFFF;

  font-size: 12px;

  padding: 7px 12px;

  border-radius: 8px;

  outline: none;

  transition: all 0.2s ease;

}



.yt-input:focus {

  border-color: var(--brand-emerald-bright);

  background: rgba(255, 255, 255, 0.1);

}



/* Viral Reels 9:16 Vertical Grid */

.viral-reels-grid {

  display: flex;

  flex-direction: row;

  overflow-x: auto;

  scroll-snap-type: x mandatory;

  -webkit-overflow-scrolling: touch;

  scrollbar-width: none;

  max-width: 1180px;

  margin: 40px auto 0;

}



.reel-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  overflow: hidden;

  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.04);

  cursor: pointer;

  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);

  display: flex;

  flex-direction: column;

}



.reel-card:hover {

  transform: translateY(-6px);

  box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.15);

  border-color: var(--brand-blue);

}



.reel-thumbnail-box {

  position: relative;

  width: 100%;

  aspect-ratio: 9 / 14;

  overflow: hidden;

  background: var(--surface-dark-base);

}



.reel-cover-img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

  transition: transform 0.4s ease;

}



.reel-card:hover .reel-cover-img {

  transform: scale(1.06);

}



.reel-gradient-overlay {

  position: absolute;

  inset: 0;

  background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, transparent 40%, rgba(0, 0, 0, 0.8) 100%);

  pointer-events: none;

}



.reel-tag-pill {

  position: absolute;

  top: 10px;

  left: 10px;

  background: rgba(10, 15, 29, 0.82);

  backdrop-filter: blur(6px);

  border: 1px solid rgba(255, 255, 255, 0.18);

  border-radius: 9999px;

  padding: 3px 8px;

  font-family: var(--font-mono);

  font-size: 8px;

  font-weight: 800;

  color: var(--brand-yellow);

}



.reel-views-pill {

  position: absolute;

  bottom: 10px;

  left: 10px;

  background: rgba(0, 0, 0, 0.7);

  backdrop-filter: blur(6px);

  border-radius: 6px;

  padding: 2px 7px;

  font-family: var(--font-mono);

  font-size: 9px;

  font-weight: 750;

  color: #FFFFFF;

}



.reel-duration {

  position: absolute;

  bottom: 10px;

  right: 10px;

  background: rgba(0, 0, 0, 0.75);

  border-radius: 4px;

  padding: 2px 6px;

  font-family: var(--font-mono);

  font-size: 8.5px;

  font-weight: 700;

  color: #94A3B8;

}



.reel-play-btn-circle {

  position: absolute;

  top: 50%;

  left: 50%;

  transform: translate(-50%, -50%);

  width: 48px;

  height: 48px;

  border-radius: 50%;

  background: rgba(239, 68, 68, 0.9);

  color: #FFFFFF;

  display: grid;

  place-items: center;

  box-shadow: 0 4px 20px rgba(239, 68, 68, 0.6);

  transition: all 0.25s ease;

}



.reel-card:hover .reel-play-btn-circle {

  transform: translate(-50%, -50%) scale(1.14);

  background: #DC2626;

}



.reel-info {

  padding: 14px 16px;

  display: flex;

  flex-direction: column;

  gap: 4px;

}



.reel-info h4 {

  font-size: 13.5px;

  font-weight: 800;

  color: var(--ink-900);

  margin: 0;

  line-height: 1.35;

}



.reel-info p {

  font-size: 11.5px;

  line-height: 1.45;

  color: #64748B;

  margin: 0;

}



/* Responsive Media Queries for Video Reels Section */

@media (max-width: 992px) {

  .theater-bottom-bar {

    flex-direction: column;

    align-items: flex-start;

  }



  .yt-id-updater-box {

    width: 100%;

  }



  .updater-input-group {

    flex: 1;

  }



  .yt-input {

    width: 100%;

  }



  /* viral-reels-grid handled by universal carousel below */

}









/* ==========================================================================

   CUSTOMER BRAND CLARITY & UNBOXING SHOWCASE SECTION

   Solves: What is inside the box? Zero subscription guarantee. Comparison.

   ========================================================================== */

.unboxing-section {

  position: relative;

  padding: 100px 0 110px;

  background: linear-gradient(180deg, #F8FAFC 0%, #FFFFFF 50%, #F8FAFC 100%);

  border-top: 1px solid var(--line-subtle);

  border-bottom: 1px solid var(--line-subtle);

  overflow: hidden;

}



.unboxing-ambient-glow {

  position: absolute;

  top: 15%;

  left: 50%;

  transform: translateX(-50%);

  width: 700px;

  height: 400px;

  background: radial-gradient(circle, rgba(255, 183, 3, 0.08) 0%, rgba(245, 158, 11, 0.05) 50%, transparent 70%);

  filter: blur(80px);

  pointer-events: none;

}



.unboxing-container {

  position: relative;

  z-index: 2;

}



.unboxing-eyebrow-pill {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  background: var(--brand-yellow-subtle);

  border: 1px solid var(--brand-yellow-border);

  color: var(--brand-yellow-dark);

  font-family: var(--font-mono);

  font-size: 11.5px;

  font-weight: 700;

  letter-spacing: 0.12em;

  padding: 5px 14px;

  border-radius: var(--radius-pill);

  margin-bottom: 14px;

}



.unboxing-eyebrow-pill .box-icon {

  font-size: 13px;

}



/* 4-Item Premium Unboxing Grid */

.unboxing-deck-grid {

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 24px;

  margin-top: 48px;

  margin-bottom: 64px;

}



.unboxing-item-card {

  background: var(--canvas-white);

  border: 1px solid var(--line-subtle);

  border-radius: 20px;

  padding: 28px 24px;

  display: flex;

  flex-direction: column;

  position: relative;

  transition: all 0.28s var(--ease-spring);

  box-shadow: 0 4px 14px rgba(10, 15, 29, 0.04);

}



.unboxing-item-card:hover {

  transform: translateY(-5px);

  border-color: var(--brand-blue-border);

  box-shadow: 0 16px 36px -10px rgba(245, 158, 11, 0.14);

}



.unboxing-item-num {

  font-family: var(--font-mono);

  font-size: 12px;

  font-weight: 700;

  color: var(--brand-blue);

  background: var(--brand-blue-subtle);

  width: 28px;

  height: 28px;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  border-radius: 8px;

  margin-bottom: 20px;

}



.unboxing-item-icon-box {

  width: 54px;

  height: 54px;

  border-radius: 16px;

  background: var(--canvas-subtle);

  border: 1px solid var(--line-subtle);

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 26px;

  margin-bottom: 18px;

  color: var(--ink-900);

}



.unboxing-item-card h4 {

  font-size: 17px;

  font-weight: 800;

  color: var(--ink-900);

  line-height: 1.3;

  margin-bottom: 8px;

  letter-spacing: -0.02em;

}



.unboxing-item-card p {

  font-size: 13.5px;

  color: var(--ink-600);

  line-height: 1.6;

  margin-bottom: 18px;

  flex: 1;

}



.unboxing-tag-chip {

  display: inline-flex;

  align-items: center;

  gap: 5px;

  font-size: 11.5px;

  font-weight: 700;

  font-family: var(--font-mono);

  color: var(--brand-emerald-dark);

  background: var(--brand-emerald-subtle);

  border: 1px solid var(--brand-emerald-border);

  padding: 3px 10px;

  border-radius: var(--radius-pill);

  width: fit-content;

}



/* ZERO SUBSCRIPTION CLARITY CALLOUT BANNER */

.zero-sub-banner {

  background: linear-gradient(135deg, var(--surface-dark-card) 0%, var(--surface-dark-base) 100%);

  border-radius: 28px;

  border: 1px solid var(--surface-dark-border);

  padding: 44px 48px;

  display: grid;

  grid-template-columns: 1.3fr 1fr;

  gap: 40px;

  align-items: center;

  box-shadow:

    0 24px 60px -15px rgba(0, 0, 0, 0.3),

    0 0 0 1px rgba(255, 255, 255, 0.05);

  margin-bottom: 64px;

  position: relative;

  overflow: hidden;

}



.zero-sub-banner::before {

  content: '';

  position: absolute;

  top: -50%;

  right: -20%;

  width: 500px;

  height: 500px;

  background: radial-gradient(circle, rgba(0, 196, 140, 0.12) 0%, transparent 60%);

  pointer-events: none;

}



.zero-sub-left h3 {

  font-size: clamp(26px, 3vw, 34px);

  font-weight: 800;

  color: #FFFFFF;

  line-height: 1.2;

  letter-spacing: -0.03em;

  margin-bottom: 12px;

}



.zero-sub-left p {

  font-size: 15.5px;

  color: var(--ink-dark-secondary);

  line-height: 1.65;

  margin-bottom: 24px;

}



.zero-sub-pills-row {

  display: flex;

  flex-wrap: wrap;

  gap: 12px;

}



.sub-guarantee-pill {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  background: rgba(255, 255, 255, 0.07);

  border: 1px solid rgba(255, 255, 255, 0.12);

  padding: 8px 16px;

  border-radius: var(--radius-pill);

  font-size: 13px;

  font-weight: 700;

  color: #FFFFFF;

}



.sub-guarantee-pill .check-green {

  color: var(--brand-emerald-bright);

}



.zero-sub-right {

  display: flex;

  justify-content: center;

}



.sub-price-comparison-box {

  background: rgba(255, 255, 255, 0.05);

  border: 1px solid rgba(255, 255, 255, 0.1);

  border-radius: 20px;

  padding: 28px;

  width: 100%;

  max-width: 380px;

  backdrop-filter: blur(12px);

}



.comp-header {

  font-size: 13px;

  font-weight: 800;

  letter-spacing: 0.1em;

  text-transform: uppercase;

  color: var(--brand-yellow);

  margin-bottom: 16px;

  display: flex;

  align-items: center;

  gap: 8px;

}



.comp-line {

  display: flex;

  justify-content: space-between;

  align-items: center;

  padding: 10px 0;

  border-bottom: 1px solid rgba(255, 255, 255, 0.08);

  font-size: 13.5px;

}



.comp-line.active-deal {

  border-bottom: none;

  padding-top: 14px;

  margin-top: 6px;

  background: rgba(0, 196, 140, 0.12);

  margin-inline: -12px;

  padding-inline: 12px;

  border-radius: 12px;

}



.comp-line .comp-label {

  color: var(--ink-dark-secondary);

}



.comp-line .comp-val {

  font-weight: 700;

  color: var(--ink-dark-muted);

}



.comp-line .comp-val.strike {

  text-decoration: line-through;

  color: #EF4444;

}



.comp-line.active-deal .comp-label {

  color: #FFFFFF;

  font-weight: 800;

}



.comp-line.active-deal .comp-val {

  color: var(--brand-emerald-bright);

  font-size: 18px;

  font-weight: 800;

}



/* 4-COLUMN COMPARISON MATRIX TABLE */

.clarity-comparison-card {

  background: var(--canvas-white);

  border: 1px solid var(--line-subtle);

  border-radius: 24px;

  padding: 36px 32px;

  box-shadow: var(--shadow-sm);

}



.clarity-comparison-card h3 {

  font-size: 24px;

  font-weight: 800;

  color: var(--ink-900);

  text-align: center;

  margin-bottom: 8px;

  letter-spacing: -0.02em;

}



.clarity-comparison-card .matrix-sub {

  font-size: 14.5px;

  color: var(--ink-600);

  text-align: center;

  margin-bottom: 32px;

}



/* Swipe hint badge */

.table-swipe-hint {

  display: none;

  align-items: center;

  justify-content: center;

  gap: 8px;

  font-size: 12.5px;

  font-weight: 750;

  color: #B45309;

  background: #FFFBEB;

  border: 1px solid #FDE68A;

  padding: 9px 16px;

  border-radius: 12px;

  margin-bottom: 16px;

  text-align: center;

}



.table-swipe-hint svg {

  animation: swipeNudge 1.6s ease-in-out infinite;

  color: #D97706;

}



@keyframes swipeNudge {

  0%,
  100% {
    transform: translateX(0);
  }

  50% {
    transform: translateX(5px);
  }

}



.table-responsive-container {

  overflow-x: auto;

  -webkit-overflow-scrolling: touch;

  padding-bottom: 8px;

  scrollbar-width: thin;

  scrollbar-color: #FBBF24 #F1F5F9;

}



.table-responsive-container::-webkit-scrollbar {

  height: 6px;

}



.table-responsive-container::-webkit-scrollbar-track {

  background: #F1F5F9;

  border-radius: 9999px;

}



.table-responsive-container::-webkit-scrollbar-thumb {

  background: #FBBF24;

  border-radius: 9999px;

}



.brand-compare-table {

  width: 100%;

  border-collapse: collapse;

  min-width: 640px;

}



/* Sticky first column for comparison table */

.brand-compare-table th:first-child,

.brand-compare-table td:first-child {

  position: sticky;

  left: 0;

  z-index: 4;

  background: var(--canvas-white, #FFFFFF);

  box-shadow: 4px 0 10px -2px rgba(0, 0, 0, 0.07);

}



.brand-compare-table th:first-child {

  background: var(--canvas-subtle, #F8FAFC);

  z-index: 5;

}



.brand-compare-table th,

.brand-compare-table td {

  padding: 14px 18px;

  text-align: left;

  border-bottom: 1px solid var(--line-subtle);

  font-size: 13.5px;

}



.brand-compare-table th {

  background: var(--canvas-subtle);

  font-weight: 800;

  color: var(--ink-900);

}



.brand-compare-table th.col-highlight {

  background: var(--brand-blue-subtle);

  color: var(--brand-blue);

  border-left: 2px solid var(--brand-blue);

  border-right: 2px solid var(--brand-blue);

  border-top: 2px solid var(--brand-blue);

  border-top-left-radius: 12px;

  border-top-right-radius: 12px;

}



.brand-compare-table td.col-highlight {

  background: var(--brand-blue-subtle);

  font-weight: 700;

  color: var(--ink-900);

  border-left: 2px solid var(--brand-blue);

  border-right: 2px solid var(--brand-blue);

}



.brand-compare-table tr:last-child td.col-highlight {

  border-bottom: 2px solid var(--brand-blue);

  border-bottom-left-radius: 12px;

  border-bottom-right-radius: 12px;

}



.table-tick {

  color: var(--brand-emerald);

  font-weight: 800;

  font-size: 16px;

  margin-right: 4px;

}



.table-cross {

  color: var(--danger-crimson);

  font-weight: 800;

  font-size: 15px;

  margin-right: 4px;

}



@media (max-width: 992px) {

  .unboxing-deck-grid {

    grid-template-columns: repeat(2, 1fr);

  }



  .zero-sub-banner {

    grid-template-columns: 1fr;

    padding: 32px 24px;

  }



  .clarity-comparison-card {

    padding: 24px 16px;

  }

}



@media (max-width: 768px) {

  .table-swipe-hint {

    display: flex;

  }



  .clarity-comparison-card {

    padding: 20px 12px;

    border-radius: 18px;

  }



  .brand-compare-table {

    min-width: 540px;

  }



  .brand-compare-table th,

  .brand-compare-table td {

    padding: 11px 12px;

    font-size: 12px;

  }



  .brand-compare-table th:first-child,

  .brand-compare-table td:first-child {

    min-width: 135px;

    max-width: 145px;

    padding-left: 10px;

    padding-right: 12px;

  }



  .brand-compare-table th.col-highlight,

  .brand-compare-table td.col-highlight {

    min-width: 135px;

  }

}



@media (max-width: 640px) {

  .unboxing-deck-grid {

    grid-template-columns: 1fr;

  }

}



/* ==========================================================================

   VOIP CALLING RESPONSIVE & MOBILE POLISH

   ========================================================================== */

@media (max-width: 992px) {

  .voip-grid {

    grid-template-columns: 1fr;

    gap: 40px;

    text-align: center;

  }



  .voip-content-col {

    align-items: center;

  }



  .voip-title {

    font-size: clamp(26px, 4.5vw, 36px);

  }



  .voip-lead {

    margin-inline: auto;

    max-width: 560px;

  }



  .voip-benefits-list {

    align-items: flex-start;

    text-align: left;

    max-width: 500px;

    margin-inline: auto;

  }



  .voip-actions-cluster {

    align-items: center;

  }



  .store-badges-row {

    justify-content: center;

  }



  .voip-phone-mockup {

    max-width: 290px;

    margin-inline: auto;

  }

}



@media (max-width: 900px) {

  .primary-nav {

    display: none;

    position: absolute;

    top: 100%;

    left: 0;

    right: 0;

    background: #FFFFFF;

    flex-direction: column;

    padding: 24px;

    gap: 18px;

    border-bottom: 1px solid var(--line-subtle);

    box-shadow: var(--shadow-md);

    z-index: 999;

  }



  .primary-nav.nav-open {

    display: flex;

  }



  .hamburger-btn {

    display: flex;

  }

}



@media (max-width: 540px) {

  .privacy-compare-pill {

    flex-direction: column;

    text-align: center;

    gap: 12px;

  }



  .pill-divider-arrow {

    transform: rotate(90deg);

  }

}



/* ==========================================================================

   MONUMENTAL BRAND HORIZON MARQUEE (FOOTER)

   Architectural display typography inspired by medtech reference:

   - Edge-to-edge floor foundation

   - Tone-on-tone luminous titanium & electric-ice gradient mask

   - Architectural bottom baseline crop (grounded monument)

   - Hypnotic, buttery 60fps slow-motion glide (48s cycle)

   - Feathered edge vignette for infinite dissolve

   ========================================================================== */

.footer-marquee-strip {

  width: 100%;

  overflow: hidden;

  background: transparent;

  border: none;

  padding: 12px 0 0;

  margin-top: 0;

  margin-bottom: -18px;

  position: relative;

  user-select: none;

  display: flex;

  mask-image: linear-gradient(90deg, transparent 0%, black 12%, black 88%, transparent 100%);

  -webkit-mask-image: linear-gradient(90deg, transparent 0%, black 12%, black 88%, transparent 100%);

}



.footer-marquee-strip::before {

  content: '';

  position: absolute;

  bottom: 0;

  left: 15%;

  right: 15%;

  height: 90px;

  background: radial-gradient(ellipse 60% 90px at 50% 100%, rgba(245, 158, 11, 0.18) 0%, transparent 70%);

  pointer-events: none;

  z-index: 1;

}



.marquee-track {

  display: flex;

  width: max-content;

  animation: marqueeSlowLoop 48s linear infinite;

  will-change: transform;

  position: relative;

  z-index: 2;

}



.footer-marquee-strip:hover .marquee-track {

  animation-play-state: paused;

}



.marquee-group {

  display: flex;

  align-items: baseline;

  gap: clamp(36px, 5vw, 68px);

  padding-right: clamp(36px, 5vw, 68px);

  flex-shrink: 0;

}



.marquee-item {

  font-family: var(--font-sans);

  font-size: clamp(120px, 18vw, 250px);

  font-weight: 900;

  line-height: 0.82;

  letter-spacing: -0.055em;

  text-transform: uppercase;

  white-space: nowrap;

  display: inline-flex;

  align-items: baseline;

  background: linear-gradient(180deg,

      rgba(255, 255, 255, 0.08) 0%,

      rgba(220, 235, 255, 0.20) 45%,

      rgba(185, 215, 255, 0.42) 80%,

      rgba(147, 197, 253, 0.60) 100%);

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

  transition: all 0.4s ease;

}



.marquee-item:hover {

  background: linear-gradient(180deg,

      rgba(255, 255, 255, 0.16) 0%,

      rgba(215, 230, 255, 0.38) 45%,

      rgba(147, 197, 253, 0.70) 80%,

      rgba(96, 165, 250, 0.95) 100%);

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

}



.marquee-item .marquee-nine {

  background: inherit;

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

}



.marquee-item .marquee-dot {

  background: inherit;

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

  opacity: 0.5;

  margin-left: 1px;

}



.marquee-sep {

  font-size: clamp(24px, 3.5vw, 48px);

  color: rgba(255, 255, 255, 0.15);

  display: inline-flex;

  align-items: center;

  align-self: center;

  line-height: 1;

}



@keyframes marqueeSlowLoop {

  0% {

    transform: translate3d(0, 0, 0);

  }



  100% {

    transform: translate3d(-50%, 0, 0);

  }

}



@media (max-width: 768px) {

  .site-footer {

    padding: 60px 0 0;

  }



  .footer-grid {

    grid-template-columns: 1fr;

    gap: 36px;

    margin-bottom: 36px;

  }



  .footer-marquee-strip {

    padding: 6px 0 0;

    margin-bottom: -10px;

  }



  .marquee-group {

    gap: 24px;

    padding-right: 24px;

  }



  .marquee-item {

    font-size: clamp(64px, 16vw, 98px);

    line-height: 0.8;

  }



  .marquee-sep {

    font-size: 20px;

  }

}



/* ==========================================================================

   SCROLL REVEAL & SECTION FADE-UP / FADE-IN SYSTEM

   GPU-accelerated, silky-smooth on-scroll transitions

   ========================================================================== */

.scroll-fade-section {

  opacity: 0;

  transform: translateY(38px);

  transition: opacity 0.85s cubic-bezier(0.16, 1, 0.3, 1),

    transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);

  will-change: opacity, transform;

}



.scroll-fade-section.is-revealed {

  opacity: 1;

  transform: translateY(0);

}



.reveal-fade-up {

  opacity: 0;

  transform: translateY(28px);

  transition: opacity 0.75s cubic-bezier(0.16, 1, 0.3, 1),

    transform 0.75s cubic-bezier(0.16, 1, 0.3, 1);

  will-change: opacity, transform;

}



.reveal-fade-up.is-revealed {

  opacity: 1;

  transform: translateY(0);

}



@media (prefers-reduced-motion: reduce) {



  .scroll-fade-section,

  .reveal-fade-up,

  .gsap-reveal {

    opacity: 1 !important;

    transform: none !important;

    transition: none !important;

  }

}



/* ==========================================================================

   MULTIPAGE & WOOCOMMERCE COMPATIBLE DESIGN SYSTEM EXTENSIONS

   - Breadcrumbs & Navigation Enhancements

   - Shop / Product Catalog Layout & Product Cards

   - Single Product Page (Gallery, Customizer, Specs & Reviews)

   - Cart Page (Items Table, Coupon, Free Shipping Meter, Summary)

   - Checkout Page (Billing & Shipping Details, Payment Radios)

   - Thank You / Order Confirmation Page & Tracking Timeline

   - Customer Dashboard & My Account (Orders, Tags, Profile)

   - Login & Register Auth Hub

   - Blog Catalog & Single Blog Article (Prose, Author, Related)

   - Legal & Policy Documentation Layouts

   ========================================================================== */



/* 1. Breadcrumbs Navigation */

.breadcrumb-strip {

  background: #F8FAFC;

  border-bottom: 1px solid #E2E8F0;

  padding: 14px 0;

  font-size: 13px;

  color: #64748B;

}



.breadcrumb-list {

  display: flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 8px;

  list-style: none;

  padding: 0;

  margin: 0;

}



.breadcrumb-list a {

  color: #475569;

  text-decoration: none;

  font-weight: 600;

  transition: color 0.2s ease;

}



.breadcrumb-list a:hover {

  color: var(--brand-blue, #F59E0B);

}



.breadcrumb-sep {

  color: #94A3B8;

  font-size: 11px;

}



.breadcrumb-active {

  color: #0F172A;

  font-weight: 700;

}



/* Header Cart Bubble & Action Buttons */

.nav-cart-btn {

  position: relative;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 6px;

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 9999px;

  padding: 7px 14px;

  color: #0F172A;

  font-size: 13px;

  font-weight: 700;

  text-decoration: none;

  transition: all 0.2s ease;

}



.nav-cart-btn:hover {

  background: #F8FAFC;

  border-color: #CBD5E1;

  transform: translateY(-1px);

}



.cart-counter-bubble {

  background: var(--brand-yellow, #F59E0B);

  color: #000000;

  font-size: 11px;

  font-weight: 900;

  width: 20px;

  height: 20px;

  border-radius: 50%;

  display: grid;

  place-items: center;

  line-height: 1;

}



/* 2. Shop Page Layout */

.shop-page-wrapper {

  padding: 48px 0 80px;

  background: #F8FAFC;

  min-height: 80vh;

}



.shop-header-banner {

  background: linear-gradient(135deg, #0A0F1D 0%, #1E293B 100%);

  border-radius: 24px;

  padding: 48px 40px;

  margin-bottom: 40px;

  color: #FFFFFF;

  position: relative;

  overflow: hidden;

  box-shadow: 0 20px 45px -10px rgba(10, 15, 29, 0.2);

}



.shop-header-banner h1 {

  font-size: clamp(28px, 4vw, 42px);

  font-weight: 900;

  margin-bottom: 10px;

  letter-spacing: -0.03em;

}



.shop-header-banner p {

  color: #94A3B8;

  font-size: 16px;

  max-width: 580px;

  margin-bottom: 20px;

}



.shop-trust-badges-row {

  display: flex;

  flex-wrap: wrap;

  gap: 20px;

  padding-top: 18px;

  border-top: 1px solid rgba(255, 255, 255, 0.1);

  font-size: 12.5px;

  color: #CBD5E1;

  font-weight: 600;

}



.shop-layout-grid {

  display: grid;

  grid-template-columns: 260px 1fr;

  gap: 36px;

  align-items: flex-start;

}



.shop-sidebar {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  padding: 24px 20px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);

}



.filter-group {

  margin-bottom: 24px;

  padding-bottom: 20px;

  border-bottom: 1px solid #F1F5F9;

}



.filter-group:last-child {

  margin-bottom: 0;

  padding-bottom: 0;

  border-bottom: none;

}



.filter-title {

  font-size: 14px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 14px;

  display: flex;

  align-items: center;

  justify-content: space-between;

}



.filter-list {

  list-style: none;

  padding: 0;

  margin: 0;

  display: flex;

  flex-direction: column;

  gap: 10px;

}



.filter-label {

  display: flex;

  align-items: center;

  gap: 10px;

  font-size: 13.5px;

  color: #475569;

  cursor: pointer;

  user-select: none;

}



.filter-label input[type="checkbox"],

.filter-label input[type="radio"] {

  accent-color: #F59E0B;

  width: 16px;

  height: 16px;

}



.filter-count {

  margin-left: auto;

  font-size: 11px;

  color: #94A3B8;

  font-weight: 600;

}



.shop-toolbar {

  display: flex;

  align-items: center;

  justify-content: space-between;

  flex-wrap: wrap;

  gap: 16px;

  margin-bottom: 24px;

  background: #FFFFFF;

  padding: 14px 20px;

  border-radius: 16px;

  border: 1px solid #E2E8F0;

}



.shop-results-count {

  font-size: 14px;

  color: #64748B;

  font-weight: 600;

}



.shop-sort-select {

  padding: 8px 14px;

  border-radius: 10px;

  border: 1.5px solid #E2E8F0;

  background: #FFFFFF;

  font-size: 13px;

  font-weight: 600;

  color: #0F172A;

  cursor: pointer;

  outline: none;

}



.products-grid {

  display: grid;

  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));

  gap: 24px;

}



.product-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  overflow: hidden;

  display: flex;

  flex-direction: column;

  transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);

  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.02);

  position: relative;

}



.product-card:hover {

  transform: translateY(-5px);

  border-color: #CBD5E1;

  box-shadow: 0 16px 36px -10px rgba(0, 0, 0, 0.08);

}



.product-card-badge {

  position: absolute;

  top: 12px;

  left: 12px;

  background: #00C48C;

  color: #FFFFFF;

  font-size: 10.5px;

  font-weight: 800;

  padding: 4px 9px;

  border-radius: 9999px;

  z-index: 2;

  text-transform: uppercase;

  letter-spacing: 0.04em;

}



.badge-discount {

  background: #EF4444;

}



.badge-bestseller {

  background: #F59E0B;

  color: #000;

}



.product-card-thumb-wrap {

  width: 100%;

  height: 220px;

  background: #F1F5F9;

  position: relative;

  overflow: hidden;

  display: flex;

  align-items: center;

  justify-content: center;

}



.product-card-img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  transition: transform 0.4s ease;

}



.product-card:hover .product-card-img {

  transform: scale(1.05);

}



.product-card-body {

  padding: 18px 20px 22px;

  display: flex;

  flex-direction: column;

  flex: 1;

}



.product-category-tag {

  font-size: 11px;

  font-weight: 700;

  color: #D97706;

  text-transform: uppercase;

  letter-spacing: 0.05em;

  margin-bottom: 6px;

}



.product-card-title {

  font-size: 16px;

  font-weight: 800;

  color: #0F172A;

  margin: 0 0 8px;

  line-height: 1.3;

}



.product-card-title a {

  color: inherit;

  text-decoration: none;

  transition: color 0.2s ease;

}



.product-card-title a:hover {

  color: #D97706;

}



.product-rating-stars {

  display: flex;

  align-items: center;

  gap: 5px;

  font-size: 12px;

  color: #F59E0B;

  font-weight: 700;

  margin-bottom: 12px;

}



.product-rating-count {

  color: #94A3B8;

  font-weight: 500;

  font-size: 11.5px;

}



.product-price-row {

  display: flex;

  align-items: baseline;

  gap: 8px;

  margin-top: auto;

  margin-bottom: 14px;

}



.product-price-current {

  font-size: 20px;

  font-weight: 900;

  color: #0F172A;

}



.product-price-original {

  font-size: 14px;

  color: #94A3B8;

  text-decoration: line-through;

  font-weight: 500;

}



.product-price-discount {

  font-size: 11.5px;

  font-weight: 800;

  color: #059669;

  background: #ECFDF5;

  padding: 2px 6px;

  border-radius: 4px;

}



.product-card-actions {

  display: grid;

  grid-template-columns: 1fr auto;

  gap: 8px;

}



.btn-add-cart {

  background: #0A0F1D;

  color: #FFFFFF;

  border: none;

  border-radius: 12px;

  padding: 10px 16px;

  font-size: 13px;

  font-weight: 750;

  cursor: pointer;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 6px;

  transition: all 0.2s ease;

  text-decoration: none;

}



.btn-add-cart:hover {

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 800;

  transform: translateY(-1px);

}



.btn-icon-square {

  width: 38px;

  height: 38px;

  border-radius: 12px;

  border: 1.5px solid #E2E8F0;

  background: #FFFFFF;

  display: grid;

  place-items: center;

  cursor: pointer;

  color: #64748B;

  transition: all 0.2s ease;

}



.btn-icon-square:hover {

  border-color: #CBD5E1;

  color: #EF4444;

}



/* 3. Single Product Page */

.product-single-wrapper {

  padding: 40px 0 80px;

  background: #FFFFFF;

}



.product-single-grid {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 52px;

  align-items: flex-start;

  margin-bottom: 64px;

}



.product-gallery-box {

  position: sticky;

  top: 90px;

}



.product-main-visual {

  width: 100%;

  height: 440px;

  border-radius: 24px;

  overflow: hidden;

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  display: flex;

  align-items: center;

  justify-content: center;

  margin-bottom: 16px;

  position: relative;

}



.product-main-visual img {

  width: 100%;

  height: 100%;

  object-fit: cover;

}



.product-thumb-strip {

  display: flex;

  gap: 12px;

  overflow-x: auto;

  padding-bottom: 4px;

}



.product-thumb-btn {

  width: 76px;

  height: 76px;

  border-radius: 14px;

  border: 2px solid #E2E8F0;

  overflow: hidden;

  cursor: pointer;

  background: #F8FAFC;

  padding: 0;

  transition: all 0.2s ease;

  flex-shrink: 0;

}



.product-thumb-btn.active {

  border-color: #F59E0B;

  box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.2);

}



.product-thumb-btn img {

  width: 100%;

  height: 100%;

  object-fit: cover;

}



.product-info-col {

  display: flex;

  flex-direction: column;

}



.product-header-badge-row {

  display: flex;

  align-items: center;

  gap: 10px;

  margin-bottom: 12px;

}



.product-page-title {

  font-size: clamp(26px, 3.5vw, 36px);

  font-weight: 900;

  color: #0F172A;

  line-height: 1.2;

  letter-spacing: -0.025em;

  margin: 0 0 14px;

}



.product-page-rating {

  display: flex;

  align-items: center;

  gap: 10px;

  font-size: 14px;

  font-weight: 700;

  color: #F59E0B;

  margin-bottom: 18px;

}



.product-price-hero-box {

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  border-radius: 16px;

  padding: 16px 20px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  margin-bottom: 24px;

}



.hero-price-big {

  font-size: 32px;

  font-weight: 900;

  color: #0F172A;

}



.hero-price-strike {

  font-size: 16px;

  color: #94A3B8;

  text-decoration: line-through;

  margin-left: 8px;

}



.hero-save-pill {

  background: #ECFDF5;

  color: #059669;

  font-size: 12px;

  font-weight: 800;

  padding: 4px 10px;

  border-radius: 9999px;

  border: 1px solid #A7F3D0;

}



/* Vehicle Plate Customizer Box */

.plate-customizer-card {

  background: #FFFFFF;

  border: 2px dashed #CBD5E1;

  border-radius: 18px;

  padding: 20px;

  margin-bottom: 24px;

}



.customizer-label-row {

  display: flex;

  justify-content: space-between;

  align-items: center;

  margin-bottom: 10px;

}



.customizer-label-row label {

  font-size: 13.5px;

  font-weight: 800;

  color: #0F172A;

}



.customizer-input {

  width: 100%;

  padding: 12px 16px;

  border-radius: 12px;

  border: 1.5px solid #CBD5E1;

  font-size: 16px;

  font-weight: 800;

  letter-spacing: 0.08em;

  text-transform: uppercase;

  color: #0F172A;

  background: #F8FAFC;

  outline: none;

  font-family: var(--font-mono, monospace);

  transition: all 0.2s ease;

}



.customizer-input:focus {

  border-color: #F59E0B;

  background: #FFFFFF;

  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.12);

}



.customizer-helper {

  font-size: 11.5px;

  color: #64748B;

  margin-top: 6px;

}



.quantity-row {

  display: flex;

  align-items: center;

  gap: 16px;

  margin-bottom: 24px;

}



.quantity-stepper {

  display: inline-flex;

  align-items: center;

  border: 1.5px solid #CBD5E1;

  border-radius: 12px;

  overflow: hidden;

  background: #FFFFFF;

}



.quantity-btn {

  width: 40px;

  height: 40px;

  border: none;

  background: transparent;

  font-size: 18px;

  font-weight: 800;

  color: #0F172A;

  cursor: pointer;

  display: grid;

  place-items: center;

  transition: background 0.15s ease;

}



.quantity-btn:hover {

  background: #F1F5F9;

}



.quantity-display {

  width: 44px;

  text-align: center;

  font-size: 15px;

  font-weight: 800;

  color: #0F172A;

}



.cta-button-cluster {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 14px;

  margin-bottom: 28px;

}



.btn-buy-now {

  background: var(--brand-yellow, #F59E0B);

  color: #000000;

  border: none;

  border-radius: 14px;

  padding: 14px 20px;

  font-size: 15px;

  font-weight: 800;

  cursor: pointer;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  text-decoration: none;

  box-shadow: 0 10px 24px -6px rgba(245, 158, 11, 0.35);

  transition: all 0.2s ease;

}



.btn-buy-now:hover {

  transform: translateY(-2px);

  background: #D97706;

  color: #FFFFFF;

}



.product-features-bullet-list {

  list-style: none;

  padding: 0;

  margin: 0 0 28px;

  display: flex;

  flex-direction: column;

  gap: 10px;

  font-size: 13.5px;

  color: #334155;

  font-weight: 600;

}



.product-features-bullet-list li {

  display: flex;

  align-items: center;

  gap: 8px;

}



.product-tabs-section {

  border-top: 1px solid #E2E8F0;

  padding-top: 48px;

  margin-top: 48px;

}



.product-tab-nav {

  display: flex;

  gap: 12px;

  border-bottom: 2px solid #F1F5F9;

  margin-bottom: 32px;

  overflow-x: auto;

}



.product-tab-btn {

  background: transparent;

  border: none;

  border-bottom: 2px solid transparent;

  margin-bottom: -2px;

  padding: 12px 20px;

  font-size: 15px;

  font-weight: 750;

  color: #64748B;

  cursor: pointer;

  transition: all 0.2s ease;

  white-space: nowrap;

}



.product-tab-btn.active {

  color: #D97706;

  border-bottom-color: #F59E0B;

}



.product-tab-pane {

  display: none;

}



.product-tab-pane.active {

  display: block;

  animation: fadeIn 0.3s ease;

}



/* Specs Table */

.specs-table {

  width: 100%;

  border-collapse: collapse;

}



.specs-table tr {

  border-bottom: 1px solid #F1F5F9;

}



.specs-table td {

  padding: 14px 16px;

  font-size: 14px;

}



.specs-table td:first-child {

  font-weight: 750;

  color: #0F172A;

  width: 35%;

  background: #F8FAFC;

}



.specs-table td:last-child {

  color: #475569;

}



/* 4. Cart Page Layout */

.cart-page-wrapper {

  padding: 48px 0 80px;

  background: #F8FAFC;

  min-height: 80vh;

}



.cart-layout-grid {

  display: grid;

  grid-template-columns: 1fr 380px;

  gap: 36px;

  align-items: flex-start;

}



.cart-items-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  padding: 24px 28px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);

}



.cart-table {

  width: 100%;

  border-collapse: collapse;

}



.cart-table th {

  text-align: left;

  font-size: 12px;

  font-weight: 800;

  color: #64748B;

  text-transform: uppercase;

  letter-spacing: 0.05em;

  padding-bottom: 16px;

  border-bottom: 1px solid #F1F5F9;

}



.cart-item-row {

  border-bottom: 1px solid #F1F5F9;

}



.cart-item-row:last-child {

  border-bottom: none;

}



.cart-item-row td {

  padding: 20px 0;

  vertical-align: middle;

}



.cart-item-meta {

  display: flex;

  align-items: center;

  gap: 16px;

}



.cart-item-thumb {

  width: 68px;

  height: 68px;

  border-radius: 12px;

  overflow: hidden;

  background: #F1F5F9;

  flex-shrink: 0;

}



.cart-item-thumb img {

  width: 100%;

  height: 100%;

  object-fit: cover;

}



.cart-item-details strong {

  display: block;

  font-size: 14.5px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 4px;

}



.cart-item-badge {

  display: inline-block;

  font-size: 11px;

  font-weight: 700;

  color: #D97706;

  background: #FEF9C3;

  padding: 2px 7px;

  border-radius: 6px;

}



.cart-item-remove {

  background: transparent;

  border: none;

  color: #EF4444;

  cursor: pointer;

  font-size: 18px;

  padding: 6px;

  transition: transform 0.15s ease;

}



.cart-item-remove:hover {

  transform: scale(1.15);

}



.cart-summary-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  padding: 24px;

  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);

  position: sticky;

  top: 90px;

}



.cart-summary-title {

  font-size: 18px;

  font-weight: 900;

  color: #0F172A;

  margin-bottom: 20px;

}



.cart-summary-row {

  display: flex;

  justify-content: space-between;

  font-size: 14px;

  color: #475569;

  margin-bottom: 12px;

}



.cart-summary-row.total-row {

  font-size: 18px;

  font-weight: 900;

  color: #0F172A;

  padding-top: 14px;

  border-top: 1.5px solid #F1F5F9;

  margin-top: 14px;

}



.free-shipping-progress-box {

  background: #ECFDF5;

  border: 1px solid #A7F3D0;

  border-radius: 12px;

  padding: 12px 14px;

  font-size: 12.5px;

  font-weight: 700;

  color: #065F46;

  margin-bottom: 18px;

}



.coupon-box {

  display: flex;

  gap: 8px;

  margin-bottom: 20px;

}



.coupon-input {

  flex: 1;

  padding: 10px 14px;

  border-radius: 10px;

  border: 1.5px solid #CBD5E1;

  font-size: 13px;

  outline: none;

}



.coupon-btn {

  background: #0F172A;

  color: #FFFFFF;

  border: none;

  border-radius: 10px;

  padding: 10px 14px;

  font-size: 12.5px;

  font-weight: 800;

  cursor: pointer;

}



/* 5. Checkout Page Layout */

.checkout-page-wrapper {

  padding: 48px 0 80px;

  background: #F8FAFC;

  min-height: 80vh;

}



.checkout-grid {

  display: grid;

  grid-template-columns: 1fr 420px;

  gap: 40px;

  align-items: flex-start;

}



.checkout-section-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  padding: 28px;

  margin-bottom: 24px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);

}



.checkout-card-header {

  font-size: 17px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 18px;

  display: flex;

  align-items: center;

  gap: 10px;

}



.checkout-step-num {

  width: 26px;

  height: 26px;

  border-radius: 50%;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 800;

  color: #FFFFFF;

  font-size: 12px;

  font-weight: 900;

  display: grid;

  place-items: center;

}



.payment-options-grid {

  display: flex;

  flex-direction: column;

  gap: 12px;

}



.payment-radio-label {

  display: flex;

  align-items: center;

  gap: 12px;

  padding: 14px 16px;

  border: 1.5px solid #CBD5E1;

  border-radius: 14px;

  cursor: pointer;

  transition: all 0.2s ease;

}



.payment-radio-label:hover {

  background: #F8FAFC;

  border-color: #94A3B8;

}



.payment-radio-label.selected {

  border-color: #F59E0B;

  background: #FEF9C3;

}



.payment-radio-label input[type="radio"] {

  accent-color: #F59E0B;

  width: 18px;

  height: 18px;

}



/* 6. Thank You Page */

.thankyou-wrapper {

  padding: 60px 0 100px;

  background: #F8FAFC;

  min-height: 80vh;

  display: flex;

  align-items: center;

  justify-content: center;

}



.thankyou-card {

  max-width: 640px;

  width: 100%;

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 28px;

  padding: 48px 40px;

  text-align: center;

  box-shadow: 0 20px 60px -15px rgba(0, 0, 0, 0.08);

}



.thankyou-success-icon {

  width: 76px;

  height: 76px;

  border-radius: 50%;

  background: #ECFDF5;

  border: 2px solid #10B981;

  color: #059669;

  display: grid;

  place-items: center;

  font-size: 32px;

  margin: 0 auto 20px;

}



.thankyou-order-info-box {

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  border-radius: 16px;

  padding: 18px 24px;

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 16px;

  text-align: left;

  margin: 28px 0;

}



.order-info-item span {

  display: block;

  font-size: 11.5px;

  color: #64748B;

  font-weight: 600;

  text-transform: uppercase;

}



.order-info-item strong {

  font-size: 14.5px;

  color: #0F172A;

  font-weight: 800;

}



/* 7. Customer Dashboard */

.dashboard-wrapper {

  padding: 48px 0 80px;

  background: #F8FAFC;

  min-height: 85vh;

}



.dashboard-grid {

  display: grid;

  grid-template-columns: 260px 1fr;

  gap: 36px;

  align-items: flex-start;

}



.dashboard-sidebar-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  padding: 24px 16px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);

}



.dashboard-user-brief {

  display: flex;

  align-items: center;

  gap: 12px;

  padding-bottom: 18px;

  margin-bottom: 18px;

  border-bottom: 1px solid #F1F5F9;

}



.user-avatar-circle {

  width: 48px;

  height: 48px;

  border-radius: 50%;

  background: linear-gradient(135deg, #FACC15 0%, #00C48C 100%);

  color: #FFFFFF;

  font-size: 18px;

  font-weight: 900;

  display: grid;

  place-items: center;

}



.dashboard-nav-list {

  list-style: none;

  padding: 0;

  margin: 0;

  display: flex;

  flex-direction: column;

  gap: 6px;

}



.dashboard-tab-link {

  display: flex;

  align-items: center;

  gap: 10px;

  padding: 10px 14px;

  border-radius: 12px;

  font-size: 14px;

  font-weight: 700;

  color: #475569;

  text-decoration: none;

  cursor: pointer;

  transition: all 0.2s ease;

  border: none;

  background: transparent;

  width: 100%;

  text-align: left;

}



.dashboard-tab-link:hover {

  background: #F1F5F9;

  color: #0F172A;

}



.dashboard-tab-link.active {

  background: #0A0F1D;

  color: #FFFFFF;

}



.dashboard-content-panel {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 24px;

  padding: 32px 36px;

  box-shadow: 0 6px 25px rgba(0, 0, 0, 0.03);

}



.stat-pill-cards-grid {

  display: grid;

  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));

  gap: 16px;

  margin-bottom: 32px;

}



.dashboard-stat-pill {

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  border-radius: 16px;

  padding: 16px 20px;

}



.dashboard-stat-pill span {

  font-size: 12px;

  color: #64748B;

  font-weight: 600;

  display: block;

}



.dashboard-stat-pill strong {

  font-size: 24px;

  font-weight: 900;

  color: #0F172A;

}



/* 8. Auth Hub (Login / Register) */

.auth-page-wrapper {

  padding: 60px 0 90px;

  background: #F8FAFC;

  min-height: 80vh;

  display: flex;

  align-items: center;

  justify-content: center;

}



.auth-card {

  max-width: 460px;

  width: 100%;

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 24px;

  padding: 36px 32px;

  box-shadow: 0 16px 40px -10px rgba(0, 0, 0, 0.08);

}



.auth-tabs-bar {

  display: grid;

  grid-template-columns: 1fr 1fr;

  background: #F1F5F9;

  border-radius: 12px;

  padding: 4px;

  margin-bottom: 28px;

}



.auth-tab-btn {

  background: transparent;

  border: none;

  padding: 10px;

  border-radius: 10px;

  font-size: 14px;

  font-weight: 750;

  color: #64748B;

  cursor: pointer;

  transition: all 0.2s ease;

}



.auth-tab-btn.active {

  background: #FFFFFF;

  color: #0F172A;

  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);

}



/* 9. Blog Catalog & Single Article */

.blog-page-wrapper {

  padding: 48px 0 80px;

  background: #F8FAFC;

}



.blog-grid {

  display: grid;

  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));

  gap: 32px;

}



.blog-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  overflow: hidden;

  display: flex;

  flex-direction: column;

  transition: all 0.25s ease;

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.02);

}



.blog-card:hover {

  transform: translateY(-5px);

  box-shadow: 0 16px 36px -10px rgba(0, 0, 0, 0.08);

}



.blog-card-thumb {

  width: 100%;

  height: 200px;

  overflow: hidden;

  background: #F1F5F9;

}



.blog-card-thumb img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  transition: transform 0.35s ease;

}



.blog-card:hover .blog-card-thumb img {

  transform: scale(1.04);

}



.blog-card-body {

  padding: 22px;

  display: flex;

  flex-direction: column;

  flex: 1;

}



.blog-meta-row {

  display: flex;

  align-items: center;

  gap: 12px;

  font-size: 12px;

  color: #64748B;

  margin-bottom: 10px;

}



.blog-card-title {

  font-size: 18px;

  font-weight: 800;

  color: #0F172A;

  line-height: 1.35;

  margin: 0 0 10px;

}



.blog-card-title a {

  color: inherit;

  text-decoration: none;

}



.blog-card-title a:hover {

  color: #D97706;

}



.blog-card-snippet {

  font-size: 14px;

  color: #64748B;

  line-height: 1.6;

  margin-bottom: 16px;

  flex: 1;

}



.blog-read-more-link {

  font-size: 13.5px;

  font-weight: 800;

  color: #D97706;

  text-decoration: none;

  display: inline-flex;

  align-items: center;

  gap: 5px;

}



/* Single Blog Prose */

.article-page-wrapper {

  padding: 48px 0 90px;

  background: #FFFFFF;

}



.article-container {

  max-width: 820px;

  margin: 0 auto;

}



.article-hero-header {

  margin-bottom: 36px;

}



.article-hero-title {

  font-size: clamp(28px, 4vw, 44px);

  font-weight: 900;

  color: #0F172A;

  line-height: 1.15;

  margin: 14px 0 20px;

}



.article-hero-img-wrap {

  width: 100%;

  height: 420px;

  border-radius: 24px;

  overflow: hidden;

  margin-bottom: 40px;

}



.article-hero-img-wrap img {

  width: 100%;

  height: 100%;

  object-fit: cover;

}



.article-prose {

  font-size: 17px;

  line-height: 1.8;

  color: #334155;

}



.article-prose h2 {

  font-size: 26px;

  font-weight: 800;

  color: #0F172A;

  margin: 40px 0 16px;

}



.article-prose p {

  margin-bottom: 22px;

}



.article-prose blockquote {

  border-left: 4px solid #F59E0B;

  background: #F8FAFC;

  padding: 18px 24px;

  border-radius: 0 16px 16px 0;

  font-style: italic;

  font-size: 18px;

  color: #0F172A;

  margin: 28px 0;

}



/* 10. Legal & Policy Pages Layout */

.legal-page-wrapper {

  padding: 48px 0 90px;

  background: #F8FAFC;

}



.legal-card-container {

  max-width: 900px;

  margin: 0 auto;

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 24px;

  padding: 48px 56px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);

}



.legal-header {

  border-bottom: 1px solid #F1F5F9;

  padding-bottom: 24px;

  margin-bottom: 32px;

}



.legal-header h1 {

  font-size: 32px;

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 10px;

}



.legal-body {

  font-size: 15px;

  line-height: 1.75;

  color: #475569;

}



.legal-body h2 {

  font-size: 20px;

  font-weight: 800;

  color: #0F172A;

  margin: 32px 0 12px;

}



.legal-body p {

  margin-bottom: 18px;

}



.legal-body ul {

  padding-left: 20px;

  margin-bottom: 18px;

}



.legal-body li {

  margin-bottom: 8px;

}



/* RESPONSIVE BREAKPOINTS FOR MULTIPAGE */

@media (max-width: 992px) {



  .shop-layout-grid,

  .product-single-grid,

  .cart-layout-grid,

  .checkout-grid,

  .dashboard-grid {

    grid-template-columns: 1fr;

    gap: 32px;

  }



  .product-gallery-box,

  .cart-summary-card {

    position: static;

  }



  .legal-card-container {

    padding: 32px 24px;

  }

}



@media (max-width: 640px) {

  .cta-button-cluster {

    grid-template-columns: 1fr;

  }



  .cart-table thead {

    display: none;

  }



  .cart-item-meta {

    flex-direction: column;

    align-items: flex-start;

  }



  .thankyou-order-info-box {

    grid-template-columns: 1fr;

  }

}



/* ==========================================================================

   MULTIPAGE DEDICATED COMPONENT STYLING (POLISHED PERFECTION)

   ========================================================================== */



/* Single Product Page Layout */

.single-product-wrapper {

  padding: 40px 0 80px;

  background: #FFFFFF;

}



.single-product-grid {

  display: grid;

  grid-template-columns: 500px 1fr;

  gap: 48px;

  align-items: flex-start;

  margin-bottom: 60px;

}



.product-media-column {

  position: sticky;

  top: 90px;

}



.product-main-stage {

  position: relative;

  width: 100%;

  height: 440px;

  border-radius: 24px;

  overflow: hidden;

  background: #0A0F1D;

  border: 1px solid #E2E8F0;

  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);

}



.product-hero-image {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

}



.product-gallery-badge {

  position: absolute;

  top: 16px;

  left: 16px;

  background: rgba(10, 15, 29, 0.85);

  color: #FFFFFF;

  backdrop-filter: blur(8px);

  padding: 6px 14px;

  border-radius: 9999px;

  font-size: 11.5px;

  font-weight: 800;

  z-index: 2;

  border: 1px solid rgba(255, 255, 255, 0.15);

}



.live-plate-overlay {

  position: absolute;

  bottom: 20px;

  left: 50%;

  transform: translateX(-50%);

  z-index: 3;

}



.live-plate-badge {

  background: #FACC15;

  color: #000000;

  font-family: 'JetBrains Mono', monospace;

  font-weight: 900;

  font-size: 14px;

  padding: 6px 16px;

  border-radius: 8px;

  border: 2px solid #000000;

  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);

  letter-spacing: 0.08em;

  display: inline-block;

}



.product-thumbnails-carousel {

  display: flex;

  gap: 12px;

  margin-top: 16px;

}



.product-thumbnails-carousel .product-thumb-btn {

  width: 80px;

  height: 80px;

  border-radius: 14px;

  border: 2px solid #E2E8F0;

  overflow: hidden;

  background: #F8FAFC;

  cursor: pointer;

  padding: 0;

  transition: all 0.2s ease;

  flex-shrink: 0;

}



.product-thumbnails-carousel .product-thumb-btn.active {

  border-color: #F59E0B;

  box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.25);

}



.product-thumbnails-carousel .product-thumb-btn img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

}



.product-mini-perks {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 12px;

  margin-top: 24px;

  padding-top: 20px;

  border-top: 1px solid #E2E8F0;

}



.mini-perk-item {

  display: flex;

  align-items: center;

  gap: 10px;

}



.mini-perk-item .perk-icon {

  font-size: 20px;

}



.mini-perk-item strong {

  display: block;

  font-size: 12px;

  color: #0F172A;

}



.mini-perk-item p {

  font-size: 10.5px;

  color: #64748B;

  margin: 0;

}



/* Product Buy Box */

.product-buybox-column {

  display: flex;

  flex-direction: column;

}



.product-header-meta {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 12px;

  margin-bottom: 12px;

}



.product-ratings-badge {

  display: flex;

  align-items: center;

  gap: 6px;

  font-size: 13px;

}



.product-ratings-badge .stars {

  color: #F59E0B;

}



.bestseller-tag {

  background: #FEF3C7;

  color: #B45309;

  font-size: 11px;

  font-weight: 800;

  padding: 4px 10px;

  border-radius: 9999px;

}



.product-title {

  font-size: clamp(24px, 3vw, 34px);

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 10px;

  line-height: 1.2;

}



.product-tagline {

  font-size: 14.5px;

  line-height: 1.6;

  color: #64748B;

  margin-bottom: 20px;

}



.product-pricing-card {

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  border-radius: 18px;

  padding: 18px 22px;

  margin-bottom: 22px;

}



.price-row {

  display: flex;

  align-items: baseline;

  gap: 14px;

  margin-bottom: 10px;

}



.price-main {

  font-size: 36px;

  font-weight: 900;

  color: #0F172A;

}



.mrp-strikethrough {

  font-size: 18px;

  color: #94A3B8;

  text-decoration: line-through;

  margin-right: 8px;

}



.save-badge {

  background: #DCFCE7;

  color: #15803D;

  font-size: 12px;

  font-weight: 900;

  padding: 4px 10px;

  border-radius: 9999px;

}



.pricing-inclusions {

  display: flex;

  flex-wrap: wrap;

  gap: 12px;

  font-size: 12px;

  font-weight: 700;

  color: #00C48C;

}



.product-customizer-box {

  background: #FFFFFF;

  border: 2px dashed #CBD5E1;

  border-radius: 18px;

  padding: 18px 20px;

  margin-bottom: 22px;

}



.customizer-head {

  display: flex;

  justify-content: space-between;

  align-items: center;

  margin-bottom: 10px;

}



.customizer-head strong {

  display: block;

  font-size: 13.5px;

  color: #0F172A;

}



.customizer-head small {

  font-size: 11.5px;

  color: #64748B;

}



.custom-badge-pill {

  background: #E0E7FF;

  color: #4338CA;

  font-size: 10.5px;

  font-weight: 800;

  padding: 3px 8px;

  border-radius: 9999px;

}



.customizer-input-wrap {

  display: flex;

  gap: 8px;

  align-items: center;

}



.customizer-plate-field {

  flex: 1;

  padding: 10px 14px;

  border-radius: 10px;

  border: 1.5px solid #CBD5E1;

  font-family: 'JetBrains Mono', monospace;

  font-weight: 800;

  font-size: 16px;

  text-transform: uppercase;

  background: #F8FAFC;

  outline: none;

}



.plate-preset-btn {

  padding: 10px 12px;

  background: #F1F5F9;

  border: 1px solid #E2E8F0;

  border-radius: 10px;

  font-size: 11px;

  font-weight: 700;

  cursor: pointer;

}



.customizer-help {

  font-size: 11px;

  color: #94A3B8;

  margin: 8px 0 0;

}



.variant-chips-grid {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 10px;

  margin: 10px 0 22px;

}



.variant-chip {

  padding: 10px 14px;

  border-radius: 12px;

  border: 1.5px solid #E2E8F0;

  background: #FFFFFF;

  display: flex;

  align-items: center;

  gap: 8px;

  font-size: 12.5px;

  font-weight: 700;

  color: #0F172A;

  cursor: pointer;

  transition: all 0.2s ease;

  text-align: left;

}



.variant-chip.active {

  border-color: #F59E0B;

  background: #FEF9C3;

  color: #D97706;

}



.qty-and-cart-row {

  display: flex;

  gap: 12px;

  margin-bottom: 12px;

}



.product-quantity-selector {

  display: flex;

  align-items: center;

  border: 1.5px solid #CBD5E1;

  border-radius: 12px;

  overflow: hidden;

  background: #FFF;

}



.product-quantity-selector .qty-btn {

  width: 44px;

  height: 48px;

  border: none;

  background: transparent;

  font-size: 18px;

  font-weight: 800;

  cursor: pointer;

}



.product-quantity-selector .qty-count {

  width: 44px;

  text-align: center;

  font-size: 16px;

  font-weight: 800;

  color: #0F172A;

}



.product-cart-btn {

  flex: 1;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  font-weight: 800;

  font-size: 15px;

}



.product-buy-now-btn {

  width: 100%;

  font-size: 16px;

  font-weight: 800;

  padding: 14px 20px;

  margin-bottom: 20px;

}



.product-payment-trust {

  padding-top: 16px;

  border-top: 1px solid #E2E8F0;

}



.payment-icons-row {

  display: flex;

  flex-wrap: wrap;

  gap: 6px;

  margin-top: 8px;

}



.pay-chip {

  background: #F1F5F9;

  font-size: 11px;

  font-weight: 700;

  color: #475569;

  padding: 4px 10px;

  border-radius: 6px;

}



/* Product Tabs Section */

.product-details-tabs-section {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 24px;

  padding: 32px;

  margin-bottom: 60px;

}



.product-tabs-nav {

  display: flex;

  gap: 10px;

  border-bottom: 2px solid #F1F5F9;

  padding-bottom: 14px;

  margin-bottom: 28px;

  overflow-x: auto;

}



.tab-nav-btn {

  padding: 10px 18px;

  border-radius: 10px;

  border: none;

  background: transparent;

  font-size: 14px;

  font-weight: 700;

  color: #64748B;

  cursor: pointer;

  transition: all 0.2s ease;

  white-space: nowrap;

}



.tab-nav-btn.active {

  background: #0A0F1D;

  color: #FFFFFF;

}



.tab-content-grid {

  display: grid;

  grid-template-columns: 1fr 400px;

  gap: 36px;

  align-items: center;

}



.tab-feature-img {

  width: 100%;

  border-radius: 18px;

  object-fit: cover;

}



/* Checkout Page Layout */

.checkout-page-wrapper {

  padding: 40px 0 80px;

  background: #F8FAFC;

}



.checkout-page-title {

  font-size: 32px;

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 28px;

}



.checkout-form-grid {

  display: grid;

  grid-template-columns: 1fr 440px;

  gap: 36px;

  align-items: flex-start;

}



.checkout-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  padding: 24px 28px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);

  margin-bottom: 24px;

}



.card-step-header {

  display: flex;

  gap: 14px;

  align-items: center;

  margin-bottom: 20px;

}



.card-step-header .step-badge {

  width: 32px;

  height: 32px;

  border-radius: 50%;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 800;

  color: #FFFFFF;

  font-weight: 800;

  display: grid;

  place-items: center;

  font-size: 14px;

  flex-shrink: 0;

}



.card-step-header h3 {

  font-size: 18px;

  font-weight: 800;

  color: #0F172A;

  margin: 0 0 2px;

}



.card-step-header p {

  font-size: 12.5px;

  color: #64748B;

  margin: 0;

}



.form-fields-grid {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 16px;

}



.form-group.full-width {

  grid-column: 1 / -1;

}



.form-group label {

  display: block;

  font-size: 13px;

  font-weight: 700;

  color: #0F172A;

  margin-bottom: 6px;

}



.form-input {

  width: 100%;

  padding: 11px 14px;

  border-radius: 10px;

  border: 1.5px solid #CBD5E1;

  font-size: 14px;

  font-family: inherit;

  color: #0F172A;

  background: #FFFFFF;

  outline: none;

  transition: all 0.2s ease;

}



.form-input:focus {

  border-color: #F59E0B;

  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.1);

}



.phone-input-wrap {

  display: flex;

  align-items: center;

  border: 1.5px solid #CBD5E1;

  border-radius: 10px;

  background: #FFFFFF;

  overflow: hidden;

}



.phone-prefix {

  padding: 11px 12px;

  background: #F1F5F9;

  font-weight: 700;

  font-size: 13.5px;

  color: #475569;

  border-right: 1.5px solid #CBD5E1;

}



.phone-input-wrap .form-input {

  border: none;

  border-radius: 0;

}



.checkout-items-list {

  border-bottom: 1px solid #E2E8F0;

  padding-bottom: 16px;

  margin-bottom: 16px;

}



.checkout-item-row {

  display: flex;

  align-items: center;

  gap: 14px;

  margin-bottom: 12px;

}



.checkout-item-thumb {

  width: 60px;

  height: 60px;

  border-radius: 12px;

  overflow: hidden;

  background: #F1F5F9;

  flex-shrink: 0;

}



.checkout-item-thumb img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

}



.checkout-item-meta {

  flex: 1;

}



.checkout-item-meta strong {

  display: block;

  font-size: 13.5px;

  color: #0F172A;

}



.checkout-item-meta span {

  font-size: 12px;

  color: #64748B;

}



.checkout-price-breakdown .breakdown-row {

  display: flex;

  justify-content: space-between;

  font-size: 13.5px;

  color: #475569;

  margin-bottom: 10px;

}



.breakdown-divider {

  height: 1px;

  background: #E2E8F0;

  margin: 14px 0;

}



.grand-total-row {

  font-size: 18px !important;

  color: #0F172A !important;

  font-weight: 900;

}



.total-highlight {

  font-size: 22px;

  color: #D97706;

}



.payment-options-list {

  display: flex;

  flex-direction: column;

  gap: 10px;

  margin: 14px 0 20px;

}



.payment-option-card {

  display: flex;

  align-items: flex-start;

  gap: 12px;

  padding: 14px;

  border: 1.5px solid #E2E8F0;

  border-radius: 14px;

  cursor: pointer;

  background: #FFFFFF;

  transition: all 0.2s ease;

}



.payment-option-card:hover {

  border-color: #CBD5E1;

}



.payment-option-card input[type="radio"] {

  accent-color: #F59E0B;

  margin-top: 3px;

}



.payment-option-body strong {

  display: block;

  font-size: 13.5px;

  color: #0F172A;

}



.payment-option-body .option-sub {

  font-size: 11.5px;

  color: #64748B;

  margin: 3px 0 0;

}



.place-order-btn {

  width: 100%;

  padding: 16px;

  font-size: 16px;

  font-weight: 900;

}



/* Dashboard Layout */

.dashboard-wrapper {

  padding: 40px 0 80px;

  background: #F8FAFC;

}



.dashboard-user-card {

  background: #0A0F1D;

  color: #FFFFFF;

  border-radius: 24px;

  padding: 32px 36px;

  display: flex;

  justify-content: space-between;

  align-items: center;

  flex-wrap: wrap;

  gap: 24px;

  margin-bottom: 36px;

}



.user-avatar-wrap {

  display: flex;

  align-items: center;

  gap: 20px;

}



.user-avatar {

  width: 64px;

  height: 64px;

  border-radius: 50%;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 800;

  color: #FFFFFF;

  font-size: 22px;

  font-weight: 900;

  display: grid;

  place-items: center;

  border: 2px solid rgba(255, 255, 255, 0.2);

}



.user-info h2 {

  font-size: 24px;

  font-weight: 800;

  margin: 0 0 4px;

}



.user-tier-badge {

  background: rgba(0, 196, 140, 0.2);

  color: #00C48C;

  font-size: 11px;

  font-weight: 800;

  padding: 3px 8px;

  border-radius: 9999px;

  margin-left: 8px;

}



.user-stats-strip {

  display: flex;

  gap: 24px;

}



.stat-box {

  background: rgba(255, 255, 255, 0.06);

  border: 1px solid rgba(255, 255, 255, 0.1);

  padding: 12px 20px;

  border-radius: 14px;

  text-align: center;

}



.stat-number {

  display: block;

  font-size: 22px;

  font-weight: 900;

  color: #FFF;

}



.stat-label {

  font-size: 11px;

  color: #94A3B8;

}



.dashboard-content-layout {

  display: grid;

  grid-template-columns: 280px 1fr;

  gap: 32px;

  align-items: flex-start;

}



.dashboard-sidebar-nav {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  padding: 14px;

  display: flex;

  flex-direction: column;

  gap: 6px;

}



.dashboard-tab-link {

  display: flex;

  align-items: center;

  gap: 12px;

  padding: 13px 18px;

  border-radius: 12px;

  border: none;

  background: transparent;

  font-size: 13.5px;

  font-weight: 750;

  color: #475569;

  cursor: pointer;

  text-align: left;

  transition: all 0.2s ease;

  width: 100%;

}



.dashboard-tab-link:hover {

  background: #F8FAFC;

  color: #0F172A;

}



.dashboard-tab-link.active {

  background: #0A0F1D;

  color: #FFFFFF;

}



.order-card-item {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  padding: 24px;

  margin-bottom: 20px;

}



.order-header-row {

  display: flex;

  justify-content: space-between;

  align-items: center;

  border-bottom: 1px solid #F1F5F9;

  padding-bottom: 14px;

  margin-bottom: 16px;

}



.order-number {

  display: block;

  font-size: 16px;

  font-weight: 900;

  color: #0F172A;

}



.order-date {

  font-size: 12px;

  color: #64748B;

}



.order-status-badge {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  font-size: 12px;

  font-weight: 800;

  padding: 5px 12px;

  border-radius: 9999px;

}



.order-status-badge.in-transit {

  background: #FEF9C3;

  color: #1D4ED8;

}



.order-status-badge.delivered {

  background: #DCFCE7;

  color: #15803D;

}



.status-dot {

  width: 7px;

  height: 7px;

  border-radius: 50%;

  background: currentColor;

}



.order-items-summary {

  display: flex;

  justify-content: space-between;

  align-items: center;

  margin-bottom: 16px;

}



.item-preview {

  display: flex;

  align-items: center;

  gap: 14px;

}



.item-preview img {

  width: 60px;

  height: 60px;

  border-radius: 12px;

  object-fit: cover;

}



.registered-tag-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  padding: 24px;

  margin-bottom: 20px;

}



.tag-card-head {

  display: flex;

  justify-content: space-between;

  align-items: center;

  margin-bottom: 18px;

}



.tag-vehicle-info {

  display: flex;

  align-items: center;

  gap: 12px;

}



.tag-vehicle-info .v-type-icon {

  font-size: 28px;

}



.tag-vehicle-info h4 {

  font-size: 16px;

  font-weight: 800;

  margin: 0 0 4px;

  color: #0F172A;

}



.plate-code-badge {

  background: #FACC15;

  color: #000;

  font-family: 'JetBrains Mono', monospace;

  font-size: 11.5px;

  font-weight: 900;

  padding: 2px 8px;

  border-radius: 5px;

}



.tag-settings-grid {

  display: flex;

  flex-direction: column;

  gap: 12px;

  background: #F8FAFC;

  padding: 16px;

  border-radius: 14px;

  margin-bottom: 16px;

}



.setting-toggle-row {

  display: flex;

  justify-content: space-between;

  align-items: center;

}



.setting-toggle-row strong {

  display: block;

  font-size: 13.5px;

  color: #0F172A;

}



.setting-toggle-row p {

  font-size: 11.5px;

  color: #64748B;

  margin: 0;

}



/* Switch toggle */

.switch-toggle {

  position: relative;

  display: inline-block;

  width: 44px;

  height: 24px;

}



.switch-toggle input {

  opacity: 0;

  width: 0;

  height: 0;

}



.slider {

  position: absolute;

  cursor: pointer;

  top: 0;

  left: 0;

  right: 0;

  bottom: 0;

  background-color: #CBD5E1;

  transition: 0.25s;

  border-radius: 24px;

}



.slider:before {

  position: absolute;

  content: "";

  height: 18px;

  width: 18px;

  left: 3px;

  bottom: 3px;

  background-color: white;

  transition: 0.25s;

  border-radius: 50%;

}



.switch-toggle input:checked+.slider {

  background-color: #00C48C;

}



.switch-toggle input:checked+.slider:before {

  transform: translateX(20px);

}



/* Responsive tweaks */

@media (max-width: 992px) {

  .single-product-grid {

    grid-template-columns: 1fr;

  }



  .product-media-column {

    position: static;

  }



  .checkout-form-grid {

    grid-template-columns: 1fr;

  }



  .dashboard-content-layout {

    grid-template-columns: 1fr;

  }

}



/* ==========================================================================

   BLOG & CONTACT PREMIUM POLISH

   ========================================================================== */



/* Blog Hub Layout */

.blog-hub-wrapper {

  padding: 40px 0 80px;

  background: #F8FAFC;

}



.blog-hub-header {

  text-align: center;

  max-width: 800px;

  margin: 0 auto 40px;

}



.blog-hub-pill {

  background: #FEF9C3;

  color: #D97706;

  font-size: 11.5px;

  font-weight: 800;

  padding: 4px 12px;

  border-radius: 9999px;

  display: inline-block;

  margin-bottom: 12px;

}



.blog-hub-title {

  font-size: clamp(28px, 4vw, 42px);

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 12px;

}



.blog-hub-sub {

  font-size: 16px;

  color: #64748B;

  line-height: 1.6;

  margin-bottom: 24px;

}



.blog-categories-bar {

  display: flex;

  justify-content: center;

  flex-wrap: wrap;

  gap: 8px;

}



.blog-cat-btn {

  padding: 8px 16px;

  border-radius: 9999px;

  border: 1.5px solid #E2E8F0;

  background: #FFFFFF;

  color: #475569;

  font-size: 13px;

  font-weight: 700;

  cursor: pointer;

  transition: all 0.2s ease;

}



.blog-cat-btn.active {

  background: #0A0F1D;

  color: #FFFFFF;

  border-color: #0A0F1D;

}



/* Featured Blog Hero */

.featured-blog-card {

  display: grid;

  grid-template-columns: 560px 1fr;

  gap: 36px;

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 24px;

  overflow: hidden;

  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.03);

  margin-bottom: 48px;

  align-items: center;

}



.featured-card-media {

  position: relative;

  height: 380px;

  background: #0A0F1D;

}



.featured-card-media img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

}



.featured-tag {

  position: absolute;

  top: 16px;

  left: 16px;

  background: #F59E0B;

  color: #000;

  font-size: 11px;

  font-weight: 800;

  padding: 4px 10px;

  border-radius: 9999px;

}



.featured-card-content {

  padding: 32px 36px 32px 0;

}



.article-meta-row {

  display: flex;

  align-items: center;

  gap: 12px;

  font-size: 12px;

  margin-bottom: 12px;

}



.cat-badge {

  background: #FEF9C3;

  color: #D97706;

  font-weight: 800;

  padding: 3px 8px;

  border-radius: 6px;

}



.read-time,

.pub-date {

  color: #94A3B8;

  font-weight: 600;

}



.featured-title {

  font-size: 26px;

  font-weight: 900;

  color: #0F172A;

  line-height: 1.3;

  margin: 0 0 14px;

}



.featured-title a {

  color: inherit;

  text-decoration: none;

  transition: color 0.2s ease;

}



.featured-title a:hover {

  color: #D97706;

}



.featured-excerpt {

  font-size: 14.5px;

  line-height: 1.6;

  color: #64748B;

  margin-bottom: 24px;

}



.article-author-row {

  display: flex;

  align-items: center;

  justify-content: space-between;

  padding-top: 20px;

  border-top: 1px solid #F1F5F9;

}



.author-avatar-chip {

  display: flex;

  align-items: center;

  gap: 10px;

}



.author-initials {

  width: 38px;

  height: 38px;

  border-radius: 50%;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 800;

  color: #FFF;

  font-weight: 800;

  font-size: 13px;

  display: grid;

  place-items: center;

}



.author-avatar-chip strong {

  display: block;

  font-size: 13px;

  color: #0F172A;

}



.author-avatar-chip small {

  font-size: 11px;

  color: #94A3B8;

}



/* Articles Grid */

.blog-articles-grid {

  display: grid;

  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));

  gap: 28px;

  margin-bottom: 48px;

}



.blog-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  overflow: hidden;

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.02);

  transition: all 0.25s ease;

  display: flex;

  flex-direction: column;

}



.blog-card:hover {

  transform: translateY(-4px);

  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.06);

  border-color: #CBD5E1;

}



.blog-card-media {

  height: 200px;

  position: relative;

  background: #F1F5F9;

}



.blog-card-media img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

}



.blog-cat-tag {

  position: absolute;

  top: 12px;

  left: 12px;

  background: rgba(10, 15, 29, 0.85);

  color: #FFFFFF;

  font-size: 10.5px;

  font-weight: 800;

  padding: 3px 9px;

  border-radius: 9999px;

}



.blog-card-body {

  padding: 22px;

  display: flex;

  flex-direction: column;

  flex: 1;

}



.blog-card-meta {

  font-size: 11.5px;

  color: #94A3B8;

  font-weight: 600;

  margin-bottom: 8px;

}



.blog-card-title {

  font-size: 17px;

  font-weight: 800;

  color: #0F172A;

  line-height: 1.35;

  margin: 0 0 10px;

}



.blog-card-title a {

  color: inherit;

  text-decoration: none;

}



.blog-card-desc {

  font-size: 13.5px;

  color: #64748B;

  line-height: 1.55;

  margin-bottom: 16px;

  flex: 1;

}



.read-more-link {

  font-size: 13px;

  font-weight: 800;

  color: #D97706;

  text-decoration: none;

}



/* Newsletter Strip */

.newsletter-strip-card {

  background: #0A0F1D;

  color: #FFF;

  border-radius: 24px;

  padding: 40px 48px;

  display: flex;

  justify-content: space-between;

  align-items: center;

  flex-wrap: wrap;

  gap: 28px;

}



.newsletter-content {

  max-width: 520px;

}



.nl-badge {

  background: rgba(0, 196, 140, 0.2);

  color: #00C48C;

  font-size: 11px;

  font-weight: 800;

  padding: 3px 10px;

  border-radius: 9999px;

  display: inline-block;

  margin-bottom: 10px;

}



.newsletter-content h3 {

  font-size: 24px;

  font-weight: 800;

  margin: 0 0 8px;

}



.newsletter-content p {

  font-size: 14px;

  color: #94A3B8;

  margin: 0;

}



.newsletter-form-wrap {

  display: flex;

  gap: 10px;

  min-width: 360px;

}



.newsletter-input {

  flex: 1;

  padding: 12px 18px;

  border-radius: 12px;

  border: 1px solid rgba(255, 255, 255, 0.2);

  background: rgba(255, 255, 255, 0.08);

  color: #FFF;

  font-size: 14px;

  outline: none;

}



/* Single Article Editorial Prose */

.single-article-wrapper {

  padding: 40px 0 90px;

  background: #FFFFFF;

}



.reading-progress-track {

  position: fixed;

  top: 0;

  left: 0;

  width: 100%;

  height: 4px;

  background: transparent;

  z-index: 9999;

}



.reading-progress-bar {

  height: 100%;

  width: 0%;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 800;

  transition: width 0.1s linear;

}



.article-container {

  max-width: 820px;

  margin: 0 auto;

}



.article-header {

  margin-bottom: 28px;

}



.article-category-badge {

  color: #D97706;

  font-size: 12px;

  font-weight: 800;

  text-transform: uppercase;

  letter-spacing: 0.05em;

  margin-bottom: 10px;

}



.article-title {

  font-size: clamp(28px, 4vw, 42px);

  font-weight: 900;

  color: #0F172A;

  line-height: 1.25;

  margin: 0 0 16px;

}



.article-lead {

  font-size: 18px;

  line-height: 1.6;

  color: #475569;

  margin-bottom: 24px;

}



.article-author-card {

  display: flex;

  align-items: center;

  gap: 14px;

  padding: 14px 0;

  border-top: 1px solid #F1F5F9;

  border-bottom: 1px solid #F1F5F9;

}



.author-avatar-img {

  width: 46px;

  height: 46px;

  border-radius: 50%;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 800;

  color: #FFF;

  font-weight: 900;

  display: grid;

  place-items: center;

  font-size: 15px;

}



.author-name {

  font-size: 14px;

  font-weight: 800;

  color: #0F172A;

}



.author-meta {

  font-size: 12px;

  color: #64748B;

}



.article-featured-figure {

  margin: 28px 0 36px;

}



.article-main-image {

  width: 100%;

  height: 440px;

  object-fit: cover;

  border-radius: 20px;

  display: block;

}



.article-featured-figure figcaption {

  font-size: 12px;

  color: #94A3B8;

  margin-top: 8px;

  text-align: center;

}



.article-content-body {

  font-size: 16.5px;

  line-height: 1.8;

  color: #334155;

}



.article-content-body h2 {

  font-size: 24px;

  font-weight: 800;

  color: #0F172A;

  margin: 36px 0 14px;

}



.article-content-body h3 {

  font-size: 18px;

  font-weight: 800;

  color: #0F172A;

  margin: 24px 0 10px;

}



.article-content-body p {

  margin-bottom: 20px;

}



.article-callout-box {

  background: #FEF3C7;

  border-left: 4px solid #F59E0B;

  border-radius: 12px;

  padding: 20px 24px;

  margin: 28px 0;

  display: flex;

  gap: 16px;

}



.callout-icon {

  font-size: 24px;

}



.callout-body h4 {

  margin: 0 0 6px;

  font-size: 15px;

  color: #92400E;

}



.callout-body p {

  margin: 0;

  font-size: 14px;

  color: #78350F;

  line-height: 1.5;

}



.article-product-cta-banner {

  background: #0A0F1D;

  color: #FFF;

  border-radius: 20px;

  padding: 28px;

  display: grid;

  grid-template-columns: 180px 1fr;

  gap: 24px;

  align-items: center;

  margin: 36px 0;

}



.cta-banner-media img {

  width: 100%;

  height: 140px;

  object-fit: cover;

  border-radius: 14px;

}



.cta-tag {

  background: rgba(0, 196, 140, 0.2);

  color: #00C48C;

  font-size: 11px;

  font-weight: 800;

  padding: 2px 8px;

  border-radius: 9999px;

}



.cta-banner-content h3 {

  color: #FFF;

  font-size: 20px;

  margin: 6px 0 8px;

}



.cta-banner-content p {

  font-size: 13.5px;

  color: #CBD5E1;

  margin: 0 0 16px;

}



.cta-banner-buttons {

  display: flex;

  gap: 10px;

}



/* ==========================================================================

   ARTICLE FOOTER SHARE, AUTHOR BIO & RELATED GUIDES

   ========================================================================== */

.article-footer-section {

  margin-top: 40px;

  padding-top: 24px;

  border-top: 1px solid #E2E8F0;

}



.article-share-bar {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 16px;

  padding: 16px 22px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  flex-wrap: wrap;

  gap: 16px;

  margin-bottom: 36px;

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.02);

}



.share-label {

  font-size: 14px;

  font-weight: 800;

  color: #0F172A;

  display: inline-flex;

  align-items: center;

  gap: 8px;

}



.share-buttons {

  display: flex;

  align-items: center;

  gap: 10px;

  flex-wrap: wrap;

}



.share-btn {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  padding: 9px 18px;

  border-radius: 9999px;

  font-size: 13px;

  font-weight: 750;

  text-decoration: none;

  cursor: pointer;

  transition: all 0.2s ease;

  border: 1px solid transparent;

}



.share-btn.wa {

  background: #DCFCE7;

  color: #166534;

  border-color: #BBF7D0;

}



.share-btn.wa:hover {

  background: #25D366;

  color: #FFFFFF;

  border-color: #25D366;

  transform: translateY(-2px);

  box-shadow: 0 4px 12px rgba(37, 211, 102, 0.25);

}



.share-btn.tw {

  background: #0A0F1D;

  color: #FFFFFF;

  border-color: #0A0F1D;

}



.share-btn.tw:hover {

  background: #1E293B;

  transform: translateY(-2px);

  box-shadow: 0 4px 12px rgba(10, 15, 29, 0.2);

}



.share-btn.copy {

  background: #F8FAFC;

  color: #334155;

  border-color: #CBD5E1;

}



.share-btn.copy:hover {

  background: #FEF9C3;

  color: #92400E;

  border-color: #FDE68A;

  transform: translateY(-2px);

}



/* AUTHOR BIO CARD */

.author-bio-card {

  background: linear-gradient(135deg, #0A0F1D 0%, #1E293B 100%);

  border-radius: 24px;

  padding: 32px;

  color: #FFFFFF;

  display: flex;

  align-items: flex-start;

  gap: 24px;

  margin-bottom: 56px;

  box-shadow: 0 10px 30px rgba(10, 15, 29, 0.12);

  border: 1px solid rgba(255, 255, 255, 0.08);

}



.bio-avatar {

  width: 68px;

  height: 68px;

  border-radius: 50%;

  background: linear-gradient(135deg, #FACC15 0%, #F59E0B 100%);

  color: #0A0F1D;

  font-size: 22px;

  font-weight: 900;

  display: grid;

  place-items: center;

  flex-shrink: 0;

  box-shadow: 0 4px 16px rgba(245, 158, 11, 0.35);

  border: 2px solid rgba(255, 255, 255, 0.2);

}



.bio-text {

  flex: 1;

}



.bio-header-row {

  display: flex;

  align-items: center;

  gap: 12px;

  flex-wrap: wrap;

  margin-bottom: 8px;

}



.bio-header-row h4 {

  font-size: 20px;

  font-weight: 850;

  color: #FFFFFF;

  margin: 0;

  letter-spacing: -0.01em;

}



.bio-role-badge {

  background: rgba(250, 204, 21, 0.15);

  color: #FACC15;

  border: 1px solid rgba(250, 204, 21, 0.3);

  font-size: 11px;

  font-weight: 800;

  padding: 3px 10px;

  border-radius: 9999px;

}



.bio-text p {

  font-size: 14px;

  color: #CBD5E1;

  line-height: 1.65;

  margin: 0 0 16px;

}



.bio-tags-row {

  display: flex;

  align-items: center;

  gap: 8px;

  flex-wrap: wrap;

}



.bio-tag {

  background: rgba(255, 255, 255, 0.08);

  color: #94A3B8;

  font-size: 11.5px;

  font-weight: 700;

  padding: 4px 10px;

  border-radius: 8px;

  border: 1px solid rgba(255, 255, 255, 0.05);

}



/* RELATED GUIDES SECTION */

.related-articles-section {

  padding-top: 36px;

  border-top: 1px solid #E2E8F0;

  margin-bottom: 60px;

}



.related-header-row {

  display: flex;

  align-items: flex-end;

  justify-content: space-between;

  margin-bottom: 24px;

  flex-wrap: wrap;

  gap: 12px;

}



.related-eyebrow {

  font-size: 11.5px;

  font-weight: 800;

  color: #D97706;

  text-transform: uppercase;

  letter-spacing: 0.06em;

  display: block;

  margin-bottom: 4px;

}



.related-header-row h3 {

  font-size: 24px;

  font-weight: 850;

  color: #0F172A;

  margin: 0;

  letter-spacing: -0.01em;

}



.related-view-all {

  font-size: 13.5px;

  font-weight: 800;

  color: #D97706;

  text-decoration: none;

  transition: all 0.2s ease;

}



.related-view-all:hover {

  color: #B45309;

  transform: translateX(3px);

}



.related-articles-grid {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 24px;

}



.related-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  overflow: hidden;

  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.02);

  display: flex;

  flex-direction: column;

  transition: all 0.25s ease;

}



.related-card:hover {

  transform: translateY(-4px);

  box-shadow: 0 12px 28px rgba(10, 15, 29, 0.08);

  border-color: #FDE68A;

}



.related-card-media {

  position: relative;

  height: 200px;

  overflow: hidden;

  background: #0A0F1D;

}



.related-card-media img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  transition: transform 0.4s ease;

  display: block;

}



.related-card:hover .related-card-media img {

  transform: scale(1.05);

}



.related-category-pill {

  position: absolute;

  top: 14px;

  left: 14px;

  background: rgba(10, 15, 29, 0.85);

  backdrop-filter: blur(8px);

  color: #FFFFFF;

  font-size: 11px;

  font-weight: 800;

  padding: 4px 10px;

  border-radius: 9999px;

  border: 1px solid rgba(255, 255, 255, 0.15);

}



.related-card-body {

  padding: 24px;

  display: flex;

  flex-direction: column;

  flex: 1;

}



.related-read-time {

  font-size: 12px;

  color: #94A3B8;

  font-weight: 600;

  margin-bottom: 8px;

}



.related-card-title {

  font-size: 17px;

  font-weight: 800;

  color: #0F172A;

  line-height: 1.4;

  margin: 0 0 10px;

}



.related-card-title a {

  color: inherit;

  text-decoration: none;

  transition: color 0.2s ease;

}



.related-card-title a:hover {

  color: #D97706;

}



.related-card-desc {

  font-size: 13.5px;

  color: #64748B;

  line-height: 1.55;

  margin: 0 0 18px;

  flex: 1;

}



.related-read-more {

  font-size: 13px;

  font-weight: 800;

  color: #D97706;

  text-decoration: none;

  display: inline-flex;

  align-items: center;

  gap: 4px;

  margin-top: auto;

  transition: transform 0.2s ease;

}



.related-read-more:hover {

  color: #B45309;

  transform: translateX(3px);

}



@media (max-width: 768px) {

  .author-bio-card {

    flex-direction: column;

    padding: 24px 20px;

    gap: 16px;

  }



  .related-articles-grid {

    grid-template-columns: 1fr;

  }

}



/* ==========================================================================

   CONTACT PAGE LUXURY REDESIGN & ACCORDION SYSTEM

   ========================================================================== */

.contact-page-wrapper {

  padding: 40px 0 90px;

  background: #F8FAFC;

}



.contact-header-block {

  margin-bottom: 36px;

}



.contact-pill {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  background: #FEF9C3;

  color: #92400E;

  border: 1px solid #FDE68A;

  padding: 6px 14px;

  border-radius: 9999px;

  font-size: 12px;

  font-weight: 800;

  text-transform: uppercase;

  letter-spacing: 0.05em;

  margin-bottom: 14px;

}



.contact-title {

  font-size: clamp(30px, 4vw, 42px);

  font-weight: 900;

  color: #0F172A;

  letter-spacing: -0.02em;

  margin: 0 0 12px;

  line-height: 1.2;

}



.contact-sub {

  font-size: 16px;

  color: #64748B;

  max-width: 720px;

  line-height: 1.6;

  margin: 0;

}



/* 3 BENTO CONTACT CARDS */

.contact-cards-grid {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 24px;

  margin-bottom: 48px;

}



.contact-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 22px;

  padding: 28px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);

  display: flex;

  flex-direction: column;

  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;

  position: relative;

}



.contact-card:hover {

  transform: translateY(-4px);

  box-shadow: 0 14px 32px rgba(10, 15, 29, 0.08);

  border-color: #FDE68A;

}



.contact-card-top {

  display: flex;

  align-items: center;

  justify-content: space-between;

  margin-bottom: 18px;

}



.card-icon-wrap {

  width: 48px;

  height: 48px;

  border-radius: 14px;

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.card-icon-wrap.wa {

  background: rgba(37, 211, 102, 0.12);

  border: 1.5px solid rgba(37, 211, 102, 0.3);

}



.card-icon-wrap.mail {

  background: #FEF3C7;

  border: 1.5px solid #FDE68A;

}



.card-icon-wrap.loc {

  background: #F1F5F9;

  border: 1.5px solid #CBD5E1;

}



.card-badge {

  font-size: 11px;

  font-weight: 800;

  padding: 4px 10px;

  border-radius: 9999px;

  display: inline-flex;

  align-items: center;

  gap: 5px;

}



.card-badge.badge-green {

  background: #DCFCE7;

  color: #166534;

  border: 1px solid #BBF7D0;

}



.card-badge.badge-gold {

  background: #FEF9C3;

  color: #92400E;

  border: 1px solid #FDE68A;

}



.card-badge.badge-slate {

  background: #F1F5F9;

  color: #334155;

  border: 1px solid #E2E8F0;

}



.contact-card h3 {

  font-size: 19px;

  font-weight: 800;

  color: #0F172A;

  margin: 0 0 8px;

  letter-spacing: -0.01em;

}



.contact-card p {

  font-size: 13.5px;

  color: #64748B;

  line-height: 1.55;

  margin: 0 0 20px;

  flex: 1;

}



.contact-card-bottom {

  margin-top: auto;

  display: flex;

  flex-direction: column;

  gap: 10px;

}



.btn-contact-wa {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  background: #25D366;

  color: #FFFFFF;

  padding: 12px 18px;

  border-radius: 12px;

  font-size: 13.5px;

  font-weight: 800;

  text-decoration: none;

  transition: all 0.2s ease;

  box-shadow: 0 4px 12px rgba(37, 211, 102, 0.25);

}



.btn-contact-wa:hover {

  background: #20BA5A;

  transform: translateY(-1px);

  box-shadow: 0 6px 16px rgba(37, 211, 102, 0.35);

  color: #FFFFFF;

}



.btn-contact-gold {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  background: #0A0F1D;

  color: #FFFFFF;

  padding: 12px 18px;

  border-radius: 12px;

  font-size: 13.5px;

  font-weight: 800;

  text-decoration: none;

  transition: all 0.2s ease;

  border: 1px solid transparent;

}



.btn-contact-gold:hover {

  background: #F59E0B;

  color: #0A0F1D;

  transform: translateY(-1px);

  box-shadow: 0 4px 14px rgba(245, 158, 11, 0.3);

}



.btn-contact-slate {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  background: #F8FAFC;

  color: #0F172A;

  padding: 12px 18px;

  border-radius: 12px;

  font-size: 13.5px;

  font-weight: 800;

  text-decoration: none;

  border: 1px solid #CBD5E1;

  transition: all 0.2s ease;

}



.btn-contact-slate:hover {

  background: #0A0F1D;

  color: #FFFFFF;

  border-color: #0A0F1D;

  transform: translateY(-1px);

}



.response-time {

  font-size: 11.5px;

  color: #94A3B8;

  font-weight: 600;

  display: inline-flex;

  align-items: center;

  gap: 6px;

}



/* CONTACT GRID SPLIT: FORM & FAQ */

.contact-form-section-grid {

  display: grid;

  grid-template-columns: 1fr 460px;

  gap: 32px;

  align-items: flex-start;

}



.contact-form-card,

.contact-faq-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 24px;

  padding: 36px;

  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.03);

}



.card-header-with-badge {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 12px;

  flex-wrap: wrap;

  margin-bottom: 6px;

}



.card-header-with-badge h3 {

  font-size: 22px;

  font-weight: 850;

  color: #0F172A;

  letter-spacing: -0.01em;

  margin: 0;

}



.contact-form-card>p,

.contact-faq-card>p {

  font-size: 14px;

  color: #64748B;

  margin: 0 0 24px;

  line-height: 1.5;

}



/* FORM STYLING ENHANCEMENT */

.contact-form-card .form-fields-grid {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 18px;

  margin-bottom: 20px;

}



.contact-form-card .form-group.full-width {

  grid-column: 1 / -1;

}



.contact-form-card label {

  display: block;

  font-size: 13px;

  font-weight: 750;

  color: #0F172A;

  margin-bottom: 7px;

}



.contact-form-card label .required {

  color: #DC2626;

  margin-left: 2px;

}



.contact-form-card .form-input {

  width: 100%;

  padding: 13px 16px;

  font-size: 14px;

  color: #0F172A;

  background: #F8FAFC;

  border: 1.5px solid #E2E8F0;

  border-radius: 12px;

  transition: all 0.2s ease;

  outline: none;

  box-sizing: border-box;

}



.contact-form-card .form-input:focus {

  background: #FFFFFF;

  border-color: #F59E0B;

  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.15);

}



.contact-form-card textarea.form-input {

  resize: vertical;

  min-height: 110px;

  font-family: inherit;

  line-height: 1.5;

}



.phone-input-wrap {

  display: flex;

  align-items: center;

  background: #F8FAFC;

  border: 1.5px solid #E2E8F0;

  border-radius: 12px;

  overflow: hidden;

  transition: all 0.2s ease;

}



.phone-input-wrap:focus-within {

  background: #FFFFFF;

  border-color: #F59E0B;

  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.15);

}



.phone-input-wrap .phone-prefix {

  padding: 0 14px;

  font-size: 13.5px;

  font-weight: 700;

  color: #475569;

  background: #EDF2F7;

  border-right: 1.5px solid #E2E8F0;

  line-height: 48px;

  user-select: none;

}



.phone-input-wrap .form-input {

  border: none;

  background: transparent;

  border-radius: 0;

  padding: 13px 14px;

  box-shadow: none !important;

}



.form-trust-banner {

  display: flex;

  align-items: center;

  gap: 8px;

  font-size: 12px;

  color: #475569;

  font-weight: 600;

  margin-bottom: 20px;

  padding: 10px 14px;

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  border-radius: 10px;

}



.send-message-btn {

  width: 100%;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 10px;

  padding: 15px 24px;

  font-size: 15px;

  font-weight: 850;

  color: #0A0F1D;

  background: linear-gradient(135deg, #FACC15 0%, #F59E0B 100%);

  border: none;

  border-radius: 14px;

  cursor: pointer;

  transition: all 0.25s ease;

  box-shadow: 0 6px 18px rgba(245, 158, 11, 0.25);

}



.send-message-btn:hover {

  transform: translateY(-2px);

  box-shadow: 0 10px 24px rgba(245, 158, 11, 0.35);

  background: linear-gradient(135deg, #FDE047 0%, #F59E0B 100%);

}



/* FAQ ACCORDION IN CONTACT PAGE */

.contact-faq-card .faq-list {

  display: flex;

  flex-direction: column;

  gap: 12px;

  margin-top: 18px;

}



.contact-faq-card .faq-item {

  background: #F8FAFC;

  border: 1.5px solid #E2E8F0;

  border-radius: 14px;

  overflow: hidden;

  transition: all 0.25s ease;

}



.contact-faq-card .faq-item:hover {

  border-color: #CBD5E1;

  background: #F1F5F9;

}



.contact-faq-card .faq-item.active {

  background: #FFFBEB;

  border-color: #FDE68A;

  box-shadow: 0 4px 14px rgba(245, 158, 11, 0.08);

}



.contact-faq-card .faq-trigger {

  width: 100%;

  padding: 16px 20px;

  background: transparent;

  border: none;

  text-align: left;

  font-size: 14.5px;

  font-weight: 750;

  color: #0F172A;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 14px;

  cursor: pointer;

  font-family: inherit;

  transition: color 0.2s ease;

}



.contact-faq-card .faq-item.active .faq-trigger {

  color: #92400E;

}



.contact-faq-card .faq-plus {

  width: 26px;

  height: 26px;

  border-radius: 50%;

  background: rgba(0, 0, 0, 0.05);

  display: grid;

  place-items: center;

  font-size: 17px;

  font-weight: 700;

  color: #64748B;

  flex-shrink: 0;

  transition: all 0.25s ease;

  line-height: 1;

}



.contact-faq-card .faq-item.active .faq-plus {

  background: #F59E0B;

  color: #FFFFFF;

  transform: rotate(45deg);

}



.contact-faq-card .faq-body {

  max-height: 0;

  overflow: hidden;

  padding: 0 20px;

  transition: max-height 0.3s ease, padding 0.3s ease;

}



.contact-faq-card .faq-item.active .faq-body {

  max-height: 260px;

  padding: 0 20px 18px;

}



.contact-faq-card .faq-body p {

  font-size: 13.5px;

  color: #475569;

  line-height: 1.6;

  margin: 0;

}



/* RESPONSIVE BREAKPOINTS */

@media (max-width: 1024px) {

  .contact-cards-grid {

    grid-template-columns: repeat(2, 1fr);

  }



  .contact-form-section-grid {

    grid-template-columns: 1fr;

    gap: 28px;

  }

}



@media (max-width: 640px) {

  .contact-cards-grid {

    grid-template-columns: 1fr;

  }



  .contact-form-card .form-fields-grid {

    grid-template-columns: 1fr;

  }



  .contact-form-card,

  .contact-faq-card {

    padding: 24px 20px;

    border-radius: 18px;

  }

}



/* ==========================================================================

   LEGAL DOCUMENTATION 2-COLUMN LAYOUT

   ========================================================================== */



.legal-page-wrapper {

  padding: 40px 0 80px;

  background: #F8FAFC;

}



.legal-layout-grid {

  display: grid;

  grid-template-columns: 280px 1fr;

  gap: 36px;

  align-items: flex-start;

}



.legal-toc-sidebar {

  position: sticky;

  top: 90px;

}



.toc-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  padding: 24px;

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.02);

}



.toc-card h4 {

  font-size: 15px;

  font-weight: 800;

  color: #0F172A;

  margin: 0 0 14px;

}



.toc-nav {

  display: flex;

  flex-direction: column;

  gap: 8px;

}



.toc-link {

  font-size: 13px;

  color: #64748B;

  text-decoration: none;

  font-weight: 600;

  padding: 6px 10px;

  border-radius: 8px;

  transition: all 0.2s ease;

}



.toc-link:hover {

  background: #FEF9C3;

  color: #D97706;

}



.legal-content-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 24px;

  padding: 40px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);

}



.legal-badge {

  background: #FEF9C3;

  color: #D97706;

  font-size: 11px;

  font-weight: 800;

  padding: 3px 10px;

  border-radius: 9999px;

  display: inline-block;

  margin-bottom: 10px;

}



.legal-head h1 {

  font-size: 32px;

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 8px;

}



.last-updated {

  font-size: 13px;

  color: #94A3B8;

  margin-bottom: 28px;

  padding-bottom: 20px;

  border-bottom: 1px solid #F1F5F9;

}



@media (max-width: 900px) {

  .legal-layout-grid {

    grid-template-columns: 1fr;

  }



  .legal-toc-sidebar {

    position: static;

  }

}



/* ==========================================================================

   SENIOR UI/UX CSS REFINEMENT — MULTIPAGE & SINGLE PRODUCT PERFECTION

   Fixes: Single product tabs, list checkmarks, feature image height,

          frequently bought together card badges & layout,

          full responsive behavior across mobile (375px/414px), tablet (768px), and desktop.

   ========================================================================== */



/* 1. SINGLE PRODUCT PAGE HERO & GALLERY */

.single-product-wrapper {

  padding: 36px 0 70px;

  background: #FFFFFF;

}



.single-product-grid {

  display: grid;

  grid-template-columns: minmax(360px, 480px) 1fr;

  gap: 48px;

  align-items: flex-start;

  margin-bottom: 56px;

}



.product-media-column {

  position: sticky;

  top: 90px;

}



.product-main-stage {

  position: relative;

  width: 100%;

  height: 420px;

  border-radius: 24px;

  overflow: hidden;

  background: #0A0F1D;

  border: 1px solid #E2E8F0;

  box-shadow: 0 12px 32px rgba(10, 15, 29, 0.08);

}



.product-hero-image {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

  transition: transform 0.4s ease;

}



.product-main-stage:hover .product-hero-image {

  transform: scale(1.02);

}



.product-gallery-badge {

  position: absolute;

  top: 16px;

  left: 16px;

  background: rgba(10, 15, 29, 0.85);

  color: #FFFFFF;

  backdrop-filter: blur(8px);

  padding: 6px 14px;

  border-radius: 9999px;

  font-size: 11.5px;

  font-weight: 800;

  z-index: 2;

  border: 1px solid rgba(255, 255, 255, 0.18);

  letter-spacing: 0.03em;

}



.live-plate-overlay {

  position: absolute;

  bottom: 22px;

  left: 50%;

  transform: translateX(-50%);

  z-index: 4;

  pointer-events: none;

}



.live-plate-badge {

  background: #FACC15;

  color: #000000;

  font-family: 'JetBrains Mono', monospace;

  font-weight: 900;

  font-size: 14.5px;

  padding: 7px 18px;

  border-radius: 8px;

  border: 2px solid #000000;

  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4);

  letter-spacing: 0.08em;

  display: inline-block;

  white-space: nowrap;

}



.product-thumbnails-carousel {

  display: flex;

  gap: 12px;

  margin-top: 16px;

  overflow-x: auto;

  padding-bottom: 4px;

}



.product-thumbnails-carousel .product-thumb-btn {

  width: 76px;

  height: 76px;

  border-radius: 14px;

  border: 2px solid #E2E8F0;

  overflow: hidden;

  background: #F8FAFC;

  cursor: pointer;

  padding: 0;

  transition: all 0.22s ease;

  flex-shrink: 0;

}



.product-thumbnails-carousel .product-thumb-btn:hover {

  border-color: #94A3B8;

  transform: translateY(-2px);

}



.product-thumbnails-carousel .product-thumb-btn.active {

  border-color: #F59E0B;

  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.2);

}



.product-thumbnails-carousel .product-thumb-btn img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

}



.product-mini-perks {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 12px;

  margin-top: 24px;

  padding-top: 20px;

  border-top: 1px solid #E2E8F0;

}



.mini-perk-item {

  display: flex;

  align-items: center;

  gap: 10px;

}



.mini-perk-item .perk-icon {

  font-size: 22px;

  flex-shrink: 0;

}



.mini-perk-item strong {

  display: block;

  font-size: 12px;

  color: #0F172A;

  font-weight: 800;

  line-height: 1.25;

}



.mini-perk-item p {

  font-size: 11px;

  color: #64748B;

  margin: 2px 0 0;

  line-height: 1.3;

}



/* 2. PRODUCT BUY BOX */

.product-buybox-column {

  display: flex;

  flex-direction: column;

}



.product-header-meta {

  display: flex;

  align-items: center;

  justify-content: space-between;

  flex-wrap: wrap;

  gap: 10px;

  margin-bottom: 12px;

}



.product-ratings-badge {

  display: flex;

  align-items: center;

  gap: 6px;

  font-size: 13px;

  color: #0F172A;

}



.product-ratings-badge .stars {

  color: #F59E0B;

  font-size: 14px;

}



.product-ratings-badge .score {

  font-weight: 800;

}



.product-ratings-badge .count {

  color: #64748B;

  font-size: 12px;

}



.bestseller-tag {

  background: #FEF3C7;

  color: #B45309;

  font-size: 11.5px;

  font-weight: 800;

  padding: 4px 12px;

  border-radius: 9999px;

  border: 1px solid #FDE68A;

}



.product-title {

  font-size: clamp(26px, 3.2vw, 36px);

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 10px;

  line-height: 1.22;

  letter-spacing: -0.02em;

}



.product-tagline {

  font-size: 14.5px;

  line-height: 1.6;

  color: #64748B;

  margin-bottom: 20px;

}



.product-pricing-card {

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  border-radius: 18px;

  padding: 18px 22px;

  margin-bottom: 22px;

}



.price-row {

  display: flex;

  align-items: baseline;

  gap: 12px;

  margin-bottom: 10px;

}



.price-main {

  font-size: 38px;

  font-weight: 900;

  color: #0F172A;

  letter-spacing: -0.02em;

}



.price-main .currency {

  font-size: 26px;

  margin-right: 2px;

}



.mrp-strikethrough {

  font-size: 18px;

  color: #94A3B8;

  text-decoration: line-through;

  margin-right: 8px;

}



.save-badge {

  background: #DCFCE7;

  color: #15803D;

  font-size: 12px;

  font-weight: 900;

  padding: 4px 10px;

  border-radius: 9999px;

  border: 1px solid #BBF7D0;

}



.pricing-inclusions {

  display: flex;

  flex-wrap: wrap;

  gap: 14px;

  font-size: 12.5px;

  font-weight: 750;

  color: #059669;

}



/* Vehicle Plate Customizer Box */

.product-customizer-box {

  background: #FFFFFF;

  border: 1.5px solid #F59E0B;

  background: linear-gradient(180deg, #F8FAFC 0%, #FFFFFF 100%);

  border-radius: 18px;

  padding: 20px 22px;

  margin-bottom: 22px;

  box-shadow: 0 4px 18px rgba(245, 158, 11, 0.05);

}



.customizer-head {

  display: flex;

  justify-content: space-between;

  align-items: flex-start;

  margin-bottom: 12px;

}



.customizer-head strong {

  display: block;

  font-size: 14px;

  color: #0F172A;

  font-weight: 800;

}



.customizer-head small {

  font-size: 12px;

  color: #64748B;

  display: block;

  margin-top: 2px;

}



.custom-badge-pill {

  background: #FEF9C3;

  color: #D97706;

  font-size: 11px;

  font-weight: 800;

  padding: 3px 10px;

  border-radius: 9999px;

  border: 1px solid #DBEAFE;

}



.customizer-input-wrap {

  display: flex;

  gap: 8px;

  align-items: center;

}



.customizer-plate-field {

  flex: 1;

  padding: 12px 16px;

  border-radius: 12px;

  border: 1.5px solid #CBD5E1;

  font-family: 'JetBrains Mono', monospace;

  font-weight: 800;

  font-size: 17px;

  text-transform: uppercase;

  background: #FFFFFF;

  color: #0F172A;

  outline: none;

  transition: all 0.2s ease;

  letter-spacing: 0.06em;

}



.customizer-plate-field:focus {

  border-color: #F59E0B;

  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.15);

}



.plate-preset-btn {

  padding: 11px 14px;

  background: #F1F5F9;

  border: 1.5px solid #E2E8F0;

  border-radius: 12px;

  font-size: 12px;

  font-weight: 800;

  color: #334155;

  cursor: pointer;

  transition: all 0.15s ease;

  white-space: nowrap;

}



.plate-preset-btn:hover {

  background: #E2E8F0;

  color: #0F172A;

}



.customizer-help {

  font-size: 11.5px;

  color: #64748B;

  margin: 10px 0 0;

  line-height: 1.4;

}



/* Vehicle Placement Chips */

.variant-label {

  display: block;

  font-size: 13.5px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 8px;

}



.variant-chips-grid {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 10px;

  margin-bottom: 22px;

}



.variant-chip {

  padding: 12px 14px;

  border-radius: 12px;

  border: 1.5px solid #E2E8F0;

  background: #FFFFFF;

  display: flex;

  align-items: center;

  gap: 10px;

  font-size: 13px;

  font-weight: 750;

  color: #0F172A;

  cursor: pointer;

  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);

  text-align: left;

}



.variant-chip:hover {

  border-color: #94A3B8;

  background: #F8FAFC;

}



.variant-chip.active {

  border-color: #F59E0B;

  background: #FEF9C3;

  color: #D97706;

  box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.14);

}



/* Quantity & Cart Block */

.product-cta-block {

  margin-bottom: 22px;

}



.qty-and-cart-row {

  display: flex;

  gap: 12px;

  margin-bottom: 12px;

}



.product-quantity-selector {

  display: flex;

  align-items: center;

  border: 1.5px solid #CBD5E1;

  border-radius: 12px;

  overflow: hidden;

  background: #FFFFFF;

}



.product-quantity-selector .qty-btn {

  width: 44px;

  height: 48px;

  border: none;

  background: transparent;

  font-size: 18px;

  font-weight: 800;

  color: #0F172A;

  cursor: pointer;

  transition: background 0.15s ease;

}



.product-quantity-selector .qty-btn:hover {

  background: #F1F5F9;

}



.product-quantity-selector .qty-count {

  width: 44px;

  text-align: center;

  font-size: 16px;

  font-weight: 800;

  color: #0F172A;

}



.product-cart-btn {

  flex: 1;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  font-weight: 800;

  font-size: 15px;

  background: #0A0F1D;

  color: #FFFFFF;

  border-radius: 12px;

  transition: all 0.2s ease;

}



.product-cart-btn:hover {

  background: #1E293B;

  transform: translateY(-1px);

}



.product-buy-now-btn {

  width: 100%;

  font-size: 16px;

  font-weight: 800;

  padding: 15px 22px;

  border-radius: 14px;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 800;

  color: #FFFFFF;

  border: none;

  cursor: pointer;

  box-shadow: 0 8px 24px rgba(245, 158, 11, 0.25);

  transition: all 0.2s ease;

}



.product-buy-now-btn:hover {

  background: #D97706;

  transform: translateY(-1px);

  box-shadow: 0 12px 28px rgba(245, 158, 11, 0.35);

}



/* 3. PRODUCT TABS SECTION & TAB CONTENT FIXES (IMAGE 2) */

.product-details-tabs-section {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 24px;

  padding: 36px 40px;

  margin-bottom: 56px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);

}



.product-tabs-nav {

  display: flex;

  gap: 10px;

  border-bottom: 2px solid #F1F5F9;

  padding-bottom: 16px;

  margin-bottom: 32px;

  overflow-x: auto;

}



.tab-nav-btn {

  padding: 11px 20px;

  border-radius: 12px;

  border: none;

  background: #F8FAFC;

  font-size: 14px;

  font-weight: 750;

  color: #64748B;

  cursor: pointer;

  transition: all 0.2s ease;

  white-space: nowrap;

}



.tab-nav-btn:hover {

  color: #0F172A;

  background: #F1F5F9;

}



.tab-nav-btn.active {

  background: #0A0F1D;

  color: #FFFFFF;

}



.tab-content-grid {

  display: grid;

  grid-template-columns: 1fr 380px;

  gap: 40px;

  align-items: center;

}



.tab-text h3 {

  font-size: 22px;

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 14px;

}



.tab-text p {

  font-size: 14.5px;

  line-height: 1.65;

  color: #475569;

  margin-bottom: 16px;

}



/* Custom styled bullets for tabs (Fixing raw browser disc issue) */

.tab-highlights-list {

  list-style: none;

  padding: 0;

  margin: 20px 0 0;

  display: flex;

  flex-direction: column;

  gap: 14px;

}



.tab-highlights-list li {

  position: relative;

  padding-left: 28px;

  font-size: 14px;

  line-height: 1.6;

  color: #334155;

}



.tab-highlights-list li::before {

  content: "✓";

  position: absolute;

  left: 0;

  top: 2px;

  width: 20px;

  height: 20px;

  border-radius: 50%;

  background: #ECFDF5;

  color: #059669;

  font-weight: 900;

  font-size: 11px;

  display: grid;

  place-items: center;

  border: 1px solid #A7F3D0;

}



/* Feature image container constrained */

.tab-image {

  border-radius: 20px;

  overflow: hidden;

  max-height: 360px;

  background: #F1F5F9;

  border: 1px solid #E2E8F0;

  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);

}



.tab-feature-img {

  width: 100%;

  height: 100%;

  max-height: 360px;

  object-fit: cover;

  display: block;

}



/* Specs Table */

.specs-table-wrapper {

  overflow-x: auto;

  border: 1px solid #E2E8F0;

  border-radius: 16px;

}



.specs-table {

  width: 100%;

  border-collapse: collapse;

  font-size: 14px;

}



.specs-table th,

.specs-table td {

  padding: 14px 20px;

  border-bottom: 1px solid #F1F5F9;

  text-align: left;

}



.specs-table th {

  background: #F8FAFC;

  color: #0F172A;

  font-weight: 800;

  width: 240px;

}



.specs-table td {

  color: #475569;

}



.specs-table tr:last-child th,

.specs-table tr:last-child td {

  border-bottom: none;

}



/* 60s Setup Cards */

.setup-steps-row {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 20px;

  margin-top: 18px;

}



.setup-step-card {

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  border-radius: 18px;

  padding: 24px 20px;

  position: relative;

}



.setup-step-card .step-num {

  width: 32px;

  height: 32px;

  border-radius: 50%;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 800;

  color: #FFFFFF;

  font-weight: 900;

  font-size: 14px;

  display: grid;

  place-items: center;

  margin-bottom: 14px;

}



.setup-step-card h4 {

  font-size: 16px;

  font-weight: 800;

  color: #0F172A;

  margin: 0 0 8px;

}



.setup-step-card p {

  font-size: 13px;

  color: #64748B;

  line-height: 1.5;

  margin: 0;

}



/* Reviews List */

.reviews-header-strip {

  display: flex;

  justify-content: space-between;

  align-items: center;

  padding-bottom: 20px;

  border-bottom: 1px solid #F1F5F9;

  margin-bottom: 24px;

}



.overall-rating-card {

  display: flex;

  align-items: center;

  gap: 10px;

}



.overall-rating-card .big-score {

  font-size: 32px;

  font-weight: 900;

  color: #0F172A;

}



.overall-rating-card .stars {

  color: #F59E0B;

  font-size: 20px;

}



.reviews-list {

  display: flex;

  flex-direction: column;

  gap: 16px;

}



.review-item {

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  border-radius: 16px;

  padding: 20px;

}



.rev-meta {

  display: flex;

  align-items: center;

  gap: 10px;

  font-size: 13px;

  margin-bottom: 6px;

}



.verified-buyer-pill {

  background: #DCFCE7;

  color: #15803D;

  font-size: 11px;

  font-weight: 800;

  padding: 2px 8px;

  border-radius: 9999px;

}



.rev-date {

  color: #94A3B8;

  font-size: 12px;

  margin-left: auto;

}



.rev-stars {

  color: #F59E0B;

  font-size: 13px;

  margin-bottom: 8px;

}



.rev-text {

  font-size: 13.5px;

  line-height: 1.6;

  color: #334155;

  margin: 0;

}



/* 4. FREQUENTLY BOUGHT TOGETHER SECTION & CARDS (IMAGE 3 FIX) */

.related-products-section {

  margin-bottom: 60px;

}



.related-products-section .section-title {

  font-size: 26px;

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 24px;

}



.related-grid {

  display: grid;

  grid-template-columns: repeat(auto-fill, minmax(280px, 340px));

  gap: 24px;

}



.product-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  overflow: hidden;

  display: flex;

  flex-direction: column;

  position: relative;

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.02);

  transition: all 0.25s ease;

}



.product-card:hover {

  transform: translateY(-4px);

  border-color: #CBD5E1;

  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);

}



/* Absolute badge position fix */

.product-badge {

  position: absolute;

  top: 14px;

  left: 14px;

  z-index: 5;

  background: #10B981;

  color: #FFFFFF;

  font-size: 11px;

  font-weight: 800;

  padding: 5px 12px;

  border-radius: 9999px;

  letter-spacing: 0.03em;

  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);

  display: inline-block;

  line-height: 1;

}



.product-thumb {

  width: 100%;

  height: 200px;

  overflow: hidden;

  background: #F1F5F9;

  position: relative;

}



.product-thumb img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

  transition: transform 0.35s ease;

}



.product-card:hover .product-thumb img {

  transform: scale(1.04);

}



.product-body {

  padding: 20px;

  display: flex;

  flex-direction: column;

  flex: 1;

}



.product-card-title {

  font-size: 16.5px;

  font-weight: 800;

  color: #0F172A;

  margin: 0 0 8px;

  line-height: 1.35;

}



.product-card-title a {

  color: inherit;

  text-decoration: none;

  transition: color 0.2s ease;

}



.product-card-title a:hover {

  color: #D97706;

}



.product-card-desc {

  font-size: 13px;

  color: #64748B;

  line-height: 1.5;

  margin-bottom: 16px;

  flex: 1;

}



.product-card-footer {

  display: flex;

  align-items: center;

  justify-content: space-between;

  padding-top: 14px;

  border-top: 1px solid #F1F5F9;

  gap: 12px;

}



.product-card-pricing {

  display: flex;

  align-items: baseline;

  gap: 6px;

}



.product-card-pricing .price-curr {

  font-size: 15px;

  font-weight: 800;

  color: #0F172A;

}



.product-card-pricing .price-val {

  font-size: 22px;

  font-weight: 900;

  color: #0F172A;

}



.product-card-pricing .mrp-val {

  font-size: 13px;

  color: #94A3B8;

  text-decoration: line-through;

}



.btn-outline-sm {

  padding: 8px 16px;

  border-radius: 10px;

  border: 1.5px solid #0F172A;

  background: #FFFFFF;

  color: #0F172A;

  font-size: 12.5px;

  font-weight: 750;

  cursor: pointer;

  transition: all 0.2s ease;

  white-space: nowrap;

}



.btn-outline-sm:hover {

  background: #0F172A;

  color: #FFFFFF;

}



/* 5. RESPONSIVE BREAKPOINTS (ALL PAGES) */

@media (max-width: 1024px) {

  .single-product-grid {

    grid-template-columns: 1fr;

    gap: 36px;

  }



  .product-media-column {

    position: static;

    max-width: 580px;

    margin: 0 auto;

  }



  .tab-content-grid {

    grid-template-columns: 1fr;

  }



  .tab-image {

    max-height: 300px;

  }



  .checkout-form-grid {

    grid-template-columns: 1fr;

  }



  .cart-layout-grid {

    grid-template-columns: 1fr;

  }



  .dashboard-content-layout {

    grid-template-columns: 1fr;

  }



  .featured-blog-card {

    grid-template-columns: 1fr;

  }



  .featured-card-content {

    padding: 24px;

  }



  .contact-cards-grid {

    grid-template-columns: 1fr;

  }



  .contact-form-section-grid {

    grid-template-columns: 1fr;

  }

}



@media (max-width: 768px) {

  .site-header .primary-nav {

    display: none;

  }



  .single-product-wrapper {

    padding: 24px 0 50px;

  }



  .product-main-stage {

    height: 340px;

  }



  .variant-chips-grid {

    grid-template-columns: 1fr;

  }



  .setup-steps-row {

    grid-template-columns: 1fr;

  }



  .product-mini-perks {

    grid-template-columns: 1fr;

    gap: 14px;

  }



  .dashboard-user-card {

    flex-direction: column;

    align-items: flex-start;

  }



  .user-stats-strip {

    flex-wrap: wrap;

    width: 100%;

  }



  .stat-box {

    flex: 1;

    min-width: 100px;

  }



  .related-grid {

    grid-template-columns: 1fr;

  }



  .form-fields-grid {

    grid-template-columns: 1fr;

  }

}



@media (max-width: 480px) {

  .product-main-stage {

    height: 280px;

  }



  .product-thumbnails-carousel .product-thumb-btn {

    width: 64px;

    height: 64px;

  }



  .product-title {

    font-size: 24px;

  }



  .price-main {

    font-size: 32px;

  }



  .qty-and-cart-row {

    flex-direction: column;

  }



  .product-quantity-selector {

    justify-content: center;

    width: 100%;

  }



  .product-quantity-selector .qty-count {

    flex: 1;

  }



  .product-cart-btn {

    padding: 14px;

    width: 100%;

  }



  .product-details-tabs-section {

    padding: 24px 18px;

  }

}



/* ==========================================================================

   QRTAG9 MASTER MULTI-PAGE & RESPONSIVE PRODUCTION STYLES

   Covers:

   - Global Mobile Navbar & Breadcrumb Overflow Protection

   - Cart Page (Desktop Table & Mobile Card View, Stepper, Summary, Empty State)

   - Express Checkout (Step Cards, Form Inputs, Payment Radios, Order Review)

   - Customer Dashboard (User Profile Banner, Mobile Stat Grid, Order Cards)

   - Shop Catalog (Filters, Grid Responsive, Product Cards)

   - Single Product Page (Customizer Mobile Stack, Tabs, Checkmarks, Badges)

   - All Breakpoints (1200px, 1024px, 768px, 480px, 375px)

   ========================================================================== */



/* GLOBAL OVERFLOW & BASE DEFENSES */

html,

body {

  width: 100%;

  max-width: 100vw;

  overflow-x: hidden !important;

  margin: 0;

  padding: 0;

  -webkit-font-smoothing: antialiased;

}



*,

*::before,

*::after {

  box-sizing: border-box;

}



/* TOP ANNOUNCEMENT TICKER */

.top-announcement-ticker {

  background: #0A0F1D;

  color: #FFFFFF;

  padding: 8px 16px;

  font-size: 12.5px;

  font-weight: 600;

  width: 100%;

  overflow: hidden;

  border-bottom: 1px solid rgba(255, 255, 255, 0.08);

}



.top-announcement-ticker .ticker-inner {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 12px;

  max-width: 1240px;

  margin: 0 auto;

}



.top-announcement-ticker .ticker-text {

  white-space: nowrap;

  overflow: hidden;

  text-overflow: ellipsis;

}



.top-announcement-ticker .ticker-cta {

  color: #FACC15;

  text-decoration: none;

  font-weight: 800;

  white-space: nowrap;

  transition: opacity 0.2s ease;

}



.top-announcement-ticker .ticker-cta:hover {

  text-decoration: underline;

}



/* HEADER RESPONSIVE BEHAVIOR */

.site-header {

  position: sticky;

  top: 0;

  z-index: 100;

  background: rgba(255, 255, 255, 0.95);

  backdrop-filter: blur(12px);

  border-bottom: 1px solid #E2E8F0;

  width: 100%;

}



.nav-container {

  display: flex;

  align-items: center;

  justify-content: space-between;

  max-width: 1240px;

  margin: 0 auto;

  padding: 14px 20px;

  gap: 16px;

}



.brand-link {

  display: flex;

  align-items: center;

  gap: 10px;

  text-decoration: none;

  flex-shrink: 0;

}



.brand-typography .brand-name {

  font-size: 20px;

  font-weight: 900;

  color: #0A0F1D;

  letter-spacing: -0.02em;

}



.brand-typography .brand-accent {

  color: #D97706;

}



.brand-typography .brand-meta {

  display: block;

  font-size: 9px;

  font-weight: 800;

  letter-spacing: 0.14em;

  color: #64748B;

  text-transform: uppercase;

  margin-top: -2px;

}



.primary-nav {

  display: flex;

  align-items: center;

  gap: 22px;

}



.nav-anchor {

  color: #334155;

  text-decoration: none;

  font-size: 14px;

  font-weight: 650;

  transition: color 0.2s ease;

}



.nav-anchor:hover,

.nav-anchor.active {

  color: #D97706;

}



.nav-actions {

  display: flex;

  align-items: center;

  gap: 12px;

  flex-shrink: 0;

}



.nav-cart-btn {

  display: inline-flex;

  align-items: center;

  gap: 7px;

  padding: 8px 14px;

  border-radius: 9999px;

  border: 1.5px solid #CBD5E1;

  background: #FFFFFF;

  color: #0F172A;

  font-size: 13.5px;

  font-weight: 750;

  text-decoration: none;

  transition: all 0.2s ease;

  white-space: nowrap;

}



.nav-cart-btn:hover {

  border-color: #F59E0B;

  background: #FEF9C3;

}



.cart-counter-bubble {

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 800;

  color: #FFFFFF;

  font-size: 11px;

  font-weight: 900;

  width: 20px;

  height: 20px;

  border-radius: 50%;

  display: inline-grid;

  place-items: center;

}



.nav-auth-link {

  color: #334155;

  text-decoration: none;

  font-size: 14px;

  font-weight: 700;

  padding: 8px 12px;

  white-space: nowrap;

}



.nav-order-cta {

  padding: 9px 18px;

  font-size: 13.5px;

  font-weight: 800;

  white-space: nowrap;

}



/* BREADCRUMB STRIP (IMMUNE TO OVERFLOW) */

.breadcrumb-strip {

  background: #F8FAFC;

  border-bottom: 1px solid #E2E8F0;

  padding: 10px 0;

  width: 100%;

}



.breadcrumb-list {

  display: flex;

  align-items: center;

  gap: 8px;

  list-style: none;

  margin: 0;

  padding: 0;

  overflow-x: auto;

  white-space: nowrap;

  -webkit-overflow-scrolling: touch;

  scrollbar-width: none;

}



.breadcrumb-list::-webkit-scrollbar {

  display: none;

}



.breadcrumb-list li a {

  color: #64748B;

  text-decoration: none;

  font-size: 13px;

  font-weight: 600;

}



.breadcrumb-list li a:hover {

  color: #D97706;

}



.breadcrumb-sep {

  color: #CBD5E1;

  font-size: 12px;

}



.breadcrumb-active {

  color: #0F172A;

  font-size: 13px;

  font-weight: 700;

}



/* ==========================================================================

   CART PAGE STYLES

   ========================================================================== */

.cart-page-wrapper {

  padding: 36px 0 70px;

  background: #FFFFFF;

}



.free-shipping-card {

  background: #F0FDF4;

  border: 1.5px solid #BBF7D0;

  border-radius: 16px;

  padding: 16px 20px;

  margin-bottom: 28px;

}



.shipping-meter-header {

  display: flex;

  align-items: center;

  gap: 10px;

  font-size: 14px;

  color: #166534;

  margin-bottom: 10px;

  flex-wrap: wrap;

}



.meter-badge {

  background: #DCFCE7;

  color: #15803D;

  font-size: 11.5px;

  font-weight: 800;

  padding: 3px 10px;

  border-radius: 9999px;

  margin-left: auto;

}



.shipping-progress-bar {

  height: 8px;

  background: #DCFCE7;

  border-radius: 9999px;

  overflow: hidden;

}



.shipping-progress-bar .progress-fill {

  height: 100%;

  background: linear-gradient(90deg, #10B981 0%, #059669 100%);

  border-radius: 9999px;

  transition: width 0.4s ease;

}



.empty-cart-card {

  text-align: center;

  padding: 60px 20px;

  background: #F8FAFC;

  border: 1px dashed #CBD5E1;

  border-radius: 20px;

  max-width: 540px;

  margin: 0 auto;

}



.empty-cart-card .empty-icon {

  font-size: 54px;

  margin-bottom: 14px;

}



.empty-cart-card h2 {

  font-size: 24px;

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 10px;

}



.empty-cart-card p {

  color: #64748B;

  font-size: 14.5px;

  margin-bottom: 24px;

}



.cart-layout-grid {

  display: grid;

  grid-template-columns: 1fr 380px;

  gap: 32px;

  align-items: flex-start;

}



.cart-table-card {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 20px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);

  overflow: hidden;

  margin-bottom: 24px;

}



.cart-table {

  width: 100%;

  border-collapse: collapse;

}



.cart-table thead {

  background: #F8FAFC;

  border-bottom: 1.5px solid #E2E8F0;

}



.cart-table th {

  padding: 14px 18px;

  font-size: 12px;

  font-weight: 800;

  text-transform: uppercase;

  letter-spacing: 0.05em;

  color: #475569;

  text-align: left;

}



.cart-item-row {

  border-bottom: 1px solid #F1F5F9;

  transition: background 0.15s ease;

}



.cart-item-row:hover {

  background: #F8FAFC;

}



.cart-item-row td {

  padding: 18px;

  vertical-align: middle;

}



.cart-item-meta {

  display: flex;

  align-items: center;

  gap: 14px;

}



.cart-item-thumb {

  width: 68px;

  height: 68px;

  border-radius: 12px;

  overflow: hidden;

  border: 1px solid #E2E8F0;

  background: #F1F5F9;

  flex-shrink: 0;

}



.cart-item-thumb img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

}



.cart-item-details strong {

  display: block;

  font-size: 14.5px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 4px;

}



.cart-item-badge {

  display: inline-block;

  background: #FEF9C3;

  color: #D97706;

  font-family: 'JetBrains Mono', monospace;

  font-size: 11.5px;

  font-weight: 800;

  padding: 2px 8px;

  border-radius: 6px;

  border: 1px solid #DBEAFE;

}



.quantity-stepper {

  display: inline-flex;

  align-items: center;

  border: 1.5px solid #CBD5E1;

  border-radius: 10px;

  overflow: hidden;

  background: #FFFFFF;

}



.quantity-btn {

  width: 34px;

  height: 36px;

  border: none;

  background: transparent;

  font-size: 16px;

  font-weight: 800;

  color: #0F172A;

  cursor: pointer;

  transition: background 0.15s ease;

}



.quantity-btn:hover {

  background: #F1F5F9;

}



.quantity-display {

  width: 34px;

  text-align: center;

  font-size: 14px;

  font-weight: 800;

  color: #0F172A;

}



.cart-item-remove {

  background: none;

  border: none;

  color: #94A3B8;

  font-size: 22px;

  cursor: pointer;

  line-height: 1;

  padding: 6px;

  border-radius: 6px;

  transition: all 0.15s ease;

}



.cart-item-remove:hover {

  color: #EF4444;

  background: #FEE2E2;

}



.cart-table-footer {

  display: flex;

  align-items: center;

  justify-content: space-between;

  padding: 18px;

  background: #FAFAFA;

  border-top: 1px solid #F1F5F9;

  flex-wrap: wrap;

  gap: 14px;

}



.coupon-apply-box {

  display: flex;

  align-items: center;

  gap: 8px;

  flex-wrap: wrap;

}



.coupon-field {

  padding: 10px 14px;

  border-radius: 10px;

  border: 1.5px solid #CBD5E1;

  font-size: 13.5px;

  outline: none;

  transition: border-color 0.2s ease;

}



.coupon-field:focus {

  border-color: #F59E0B;

}



.continue-shopping-link {

  color: #D97706;

  font-size: 13.5px;

  font-weight: 750;

  text-decoration: none;

}



.continue-shopping-link:hover {

  text-decoration: underline;

}



/* CART ASSURANCES ROW */

.cart-assurances-row {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 16px;

}



.cart-assurance-item {

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  border-radius: 14px;

  padding: 16px;

  display: flex;

  align-items: flex-start;

  gap: 12px;

}



.cart-assurance-item .assure-icon {

  font-size: 22px;

  flex-shrink: 0;

}



.cart-assurance-item strong {

  display: block;

  font-size: 13px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 2px;

}



.cart-assurance-item p {

  font-size: 12px;

  color: #64748B;

  margin: 0;

  line-height: 1.4;

}



/* ORDER SUMMARY CARD */

.order-summary-card {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 20px;

  padding: 24px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);

}



.summary-title {

  font-size: 18px;

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 18px;

}



.summary-lines {

  display: flex;

  flex-direction: column;

  gap: 12px;

}



.summary-line {

  display: flex;

  justify-content: space-between;

  align-items: center;

  font-size: 14px;

  color: #475569;

}



.summary-line strong {

  color: #0F172A;

  font-weight: 800;

}



.summary-line .text-success {

  color: #059669;

}



.summary-divider {

  height: 1px;

  background: #E2E8F0;

  margin: 14px 0;

}



.grand-total-line {

  font-size: 17px;

}



.grand-total-line span {

  font-weight: 900;

  color: #0F172A;

}



.grand-total-line .grand-price {

  font-size: 24px;

  font-weight: 900;

  color: #D97706;

}



.checkout-btn {

  width: 100%;

  margin-top: 18px;

  padding: 14px;

  font-size: 15px;

  font-weight: 800;

  border-radius: 12px;

  text-align: center;

  display: block;

  text-decoration: none;

}



.trust-micro-strip {

  font-size: 11.5px;

  color: #64748B;

  text-align: center;

  margin-top: 14px;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 6px;

}



/* ==========================================================================

   CHECKOUT PAGE STYLES

   ========================================================================== */

.checkout-page-wrapper {

  padding: 36px 0 70px;

  background: #FFFFFF;

}



.checkout-page-title {

  font-size: clamp(26px, 3vw, 34px);

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 28px;

}



.checkout-form-grid {

  display: grid;

  grid-template-columns: 1fr 400px;

  gap: 32px;

  align-items: flex-start;

}



.checkout-card {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 20px;

  padding: 24px 28px;

  margin-bottom: 24px;

  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.03);

}



.card-step-header {

  display: flex;

  align-items: center;

  gap: 14px;

  margin-bottom: 20px;

  padding-bottom: 16px;

  border-bottom: 1px solid #F1F5F9;

}



.step-badge {

  width: 32px;

  height: 32px;

  border-radius: 50%;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 800;

  color: #FFFFFF;

  font-weight: 900;

  font-size: 14px;

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.card-step-header h3 {

  font-size: 17px;

  font-weight: 800;

  color: #0F172A;

  margin: 0 0 2px;

}



.card-step-header p {

  font-size: 12.5px;

  color: #64748B;

  margin: 0;

}



.form-fields-grid {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 16px;

}



.form-group.full-width {

  grid-column: span 2;

}



.form-group label {

  display: block;

  font-size: 13px;

  font-weight: 750;

  color: #0F172A;

  margin-bottom: 6px;

}



.form-input {

  width: 100%;

  height: 48px;

  padding: 0 14px;

  border-radius: 12px;

  border: 1.5px solid #CBD5E1;

  font-size: 14.5px;

  background: #FFFFFF;

  color: #0F172A;

  outline: none;

  transition: all 0.2s ease;

}



.form-input:focus {

  border-color: #F59E0B;

  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.12);

}



.phone-input-wrap {

  display: flex;

  align-items: center;

}



.phone-prefix {

  height: 48px;

  padding: 0 14px;

  background: #F1F5F9;

  border: 1.5px solid #CBD5E1;

  border-right: none;

  border-radius: 12px 0 0 12px;

  font-size: 14px;

  font-weight: 800;

  color: #334155;

  display: flex;

  align-items: center;

}



.phone-input-wrap .form-input {

  border-radius: 0 12px 12px 0;

}



.field-hint {

  display: block;

  font-size: 12px;

  color: #64748B;

  margin-top: 6px;

}



/* CHECKOUT ORDER REVIEW BOX */

.order-review-box {

  position: sticky;

  top: 90px;

}



.review-title {

  font-size: 18px;

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 16px;

}



.checkout-item-row {

  display: flex;

  align-items: center;

  gap: 12px;

  padding-bottom: 16px;

  border-bottom: 1px solid #F1F5F9;

  margin-bottom: 16px;

}



.checkout-item-thumb {

  width: 54px;

  height: 54px;

  border-radius: 10px;

  overflow: hidden;

  border: 1px solid #E2E8F0;

  flex-shrink: 0;

}



.checkout-item-thumb img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

}



.checkout-item-meta {

  flex: 1;

}



.checkout-item-meta strong {

  display: block;

  font-size: 13.5px;

  font-weight: 800;

  color: #0F172A;

}



.checkout-item-meta span {

  font-size: 12px;

  color: #64748B;

}



.checkout-item-price {

  font-size: 15px;

  font-weight: 900;

  color: #0F172A;

}



.breakdown-row {

  display: flex;

  justify-content: space-between;

  align-items: center;

  font-size: 13.5px;

  color: #475569;

  margin-bottom: 10px;

}



.breakdown-row strong {

  color: #0F172A;

}



.total-payable-row {

  display: flex;

  justify-content: space-between;

  align-items: center;

  padding: 14px 0;

  border-top: 1.5px solid #E2E8F0;

  border-bottom: 1.5px solid #E2E8F0;

  margin: 14px 0 20px;

}



.total-payable-row span {

  font-size: 16px;

  font-weight: 900;

  color: #0F172A;

}



.total-payable-row strong {

  font-size: 24px;

  font-weight: 900;

  color: #D97706;

}



/* PAYMENT SELECTOR OPTIONS */

.payment-methods-group {

  margin-bottom: 20px;

}



.payment-methods-title {

  display: block;

  font-size: 13px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 10px;

}



.payment-method-card {

  border: 1.5px solid #E2E8F0;

  border-radius: 12px;

  padding: 12px 14px;

  margin-bottom: 8px;

  cursor: pointer;

  transition: all 0.2s ease;

  display: flex;

  align-items: flex-start;

  gap: 12px;

}



.payment-method-card:hover {

  border-color: #94A3B8;

  background: #F8FAFC;

}



.payment-method-card.active,

.payment-method-card:has(input:checked) {

  border-color: #F59E0B;

  background: #FEF9C3;

}



.payment-radio-info strong {

  display: block;

  font-size: 13.5px;

  font-weight: 800;

  color: #0F172A;

}



.payment-radio-info small {

  font-size: 11.5px;

  color: #64748B;

  display: block;

  margin-top: 2px;

}



.place-order-cta-btn {

  width: 100%;

  padding: 15px;

  font-size: 16px;

  font-weight: 800;

  border-radius: 14px;

}



/* ==========================================================================

   CUSTOMER DASHBOARD STYLES

   ========================================================================== */

.dashboard-page-wrapper {

  padding: 36px 0 70px;

  background: #FFFFFF;

}



.dashboard-user-card {

  background: #0A0F1D;

  border-radius: 22px;

  padding: 26px 32px;

  display: flex;

  justify-content: space-between;

  align-items: center;

  color: #FFFFFF;

  margin-bottom: 32px;

  box-shadow: 0 10px 30px rgba(10, 15, 29, 0.12);

}



.user-profile-meta {

  display: flex;

  align-items: center;

  gap: 18px;

}



.user-avatar-circle {

  width: 56px;

  height: 56px;

  border-radius: 50%;

  background: linear-gradient(135deg, #FACC15 0%, #00C48C 100%);

  color: #FFFFFF;

  font-size: 20px;

  font-weight: 900;

  display: grid;

  place-items: center;

  box-shadow: 0 4px 14px rgba(245, 158, 11, 0.4);

  flex-shrink: 0;

}



.user-info-text h2 {

  font-size: 22px;

  font-weight: 900;

  margin: 0 0 4px;

  color: #FFFFFF;

}



.user-info-text .verified-pill {

  background: rgba(0, 196, 140, 0.18);

  color: #00C48C;

  font-size: 11px;

  font-weight: 800;

  padding: 2px 8px;

  border-radius: 9999px;

  border: 1px solid rgba(0, 196, 140, 0.3);

  margin-left: 6px;

}



.user-info-text p {

  font-size: 13px;

  color: #94A3B8;

  margin: 0;

}



.user-stats-strip {

  display: flex;

  gap: 12px;

}



.stat-box {

  background: rgba(255, 255, 255, 0.06);

  border: 1px solid rgba(255, 255, 255, 0.1);

  border-radius: 14px;

  padding: 12px 18px;

  text-align: center;

  min-width: 90px;

}



.stat-box .stat-num {

  font-size: 24px;

  font-weight: 900;

  color: #FFFFFF;

  display: block;

}



.stat-box .stat-label {

  font-size: 11px;

  color: #94A3B8;

  margin-top: 2px;

  display: block;

}



.dashboard-content-layout {

  display: grid;

  grid-template-columns: 260px 1fr;

  gap: 32px;

  align-items: flex-start;

}



.dashboard-sidebar-nav {

  display: flex;

  flex-direction: column;

  gap: 8px;

}



.dashboard-tab-link {

  display: flex;

  align-items: center;

  gap: 12px;

  padding: 12px 16px;

  border-radius: 12px;

  border: none;

  background: #F8FAFC;

  color: #475569;

  font-size: 14px;

  font-weight: 750;

  cursor: pointer;

  text-align: left;

  transition: all 0.2s ease;

  width: 100%;

}



.dashboard-tab-link:hover {

  background: #F1F5F9;

  color: #0F172A;

}



.dashboard-tab-link.active {

  background: #0A0F1D;

  color: #FFFFFF;

}



.order-card-item {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 18px;

  padding: 22px;

  margin-bottom: 20px;

  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.02);

}



.order-header-row {

  display: flex;

  justify-content: space-between;

  align-items: center;

  padding-bottom: 16px;

  border-bottom: 1px solid #F1F5F9;

  margin-bottom: 16px;

  flex-wrap: wrap;

  gap: 10px;

}



.order-number {

  font-size: 15px;

  font-weight: 800;

  color: #0F172A;

  display: block;

}



.order-date {

  font-size: 12.5px;

  color: #64748B;

  display: block;

  margin-top: 2px;

}



.order-status-badge {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  font-size: 12px;

  font-weight: 800;

  padding: 4px 12px;

  border-radius: 9999px;

}



.order-status-badge.in-transit {

  background: #FEF9C3;

  color: #D97706;

  border: 1px solid #DBEAFE;

}



.order-status-badge.delivered {

  background: #DCFCE7;

  color: #15803D;

  border: 1px solid #BBF7D0;

}



.status-dot {

  width: 7px;

  height: 7px;

  border-radius: 50%;

  background: currentColor;

}



.order-items-summary {

  display: flex;

  align-items: center;

  justify-content: space-between;

  margin-bottom: 18px;

}



.item-preview {

  display: flex;

  align-items: center;

  gap: 14px;

}



.item-preview img {

  width: 60px;

  height: 60px;

  border-radius: 12px;

  border: 1px solid #E2E8F0;

  object-fit: cover;

}



.item-text strong {

  display: block;

  font-size: 14px;

  font-weight: 800;

  color: #0F172A;

}



.item-text span {

  font-size: 12px;

  color: #64748B;

}



.item-pricing .item-amount {

  font-size: 18px;

  font-weight: 900;

  color: #0F172A;

}



.order-actions-bar {

  display: flex;

  align-items: center;

  justify-content: space-between;

  padding-top: 14px;

  border-top: 1px solid #F1F5F9;

  flex-wrap: wrap;

  gap: 12px;

}



.tracking-snippet {

  font-size: 12.5px;

  color: #475569;

}



.action-buttons {

  display: flex;

  gap: 10px;

}



/* ==========================================================================

   RESPONSIVE DESIGN BREAKPOINTS ACROSS ALL PAGES

   ========================================================================== */



/* 1. TABLET & SMALL LAPTOP (max-width: 1024px) */

@media (max-width: 1024px) {

  .cart-layout-grid {

    grid-template-columns: 1fr;

  }



  .checkout-form-grid {

    grid-template-columns: 1fr;

  }



  .dashboard-content-layout {

    grid-template-columns: 1fr;

  }



  .order-review-box {

    position: static;

  }



  .dashboard-sidebar-nav {

    flex-direction: row;

    overflow-x: auto;

    padding-bottom: 6px;

  }



  .dashboard-tab-link {

    white-space: nowrap;

    width: auto;

  }

}



/* 2. TABLET & SMARTPHONE HORIZONTAL (max-width: 768px) */

@media (max-width: 768px) {

  .site-header .primary-nav {

    display: none;

  }



  .nav-actions .nav-auth-link {

    display: none;

  }



  /* REMOVE ORDER BUTTON ON MOBILE HEADER AS REQUESTED */

  .site-header .nav-order-cta,

  .nav-order-cta {

    display: none !important;

  }



  .nav-actions {

    display: flex;

    align-items: center;

    gap: 10px;

  }



  .hamburger-btn {

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

    gap: 4.5px;

    width: 42px;

    height: 42px;

    padding: 0;

    border-radius: 12px;

    background: #F8FAFC;

    border: 1px solid #E2E8F0;

    cursor: pointer;

    flex-shrink: 0;

    transition: all 0.2s ease;

  }



  .hamburger-btn:hover {

    background: #F1F5F9;

    border-color: #CBD5E1;

  }



  .primary-nav.nav-open .mobile-nav-menu-ctas {

    display: flex;

    flex-direction: column;

    gap: 10px;

    margin-top: 14px;

    padding-top: 18px;

    border-top: 1px solid #E2E8F0;

    width: 100%;

  }



  .mobile-menu-order-btn {

    width: 100%;

    justify-content: center;

    padding: 12px 20px;

    font-weight: 800;

    font-size: 14px;

    border-radius: 12px;

  }



  .mobile-menu-login-link {

    text-align: center;

    font-size: 13.5px;

    font-weight: 700;

    color: #475569;

    padding: 8px;

  }



  .cart-assurances-row {

    grid-template-columns: 1fr;

  }



  .form-fields-grid {

    grid-template-columns: 1fr;

  }



  .form-group.full-width {

    grid-column: span 1;

  }



  /* CART TABLE TURNS INTO RESPONSIVE CARDS ON MOBILE */

  .cart-table,

  .cart-table tbody,

  .cart-table tr,

  .cart-table td {

    display: block;

    width: 100%;

  }



  .cart-table thead {

    display: none;

  }



  .cart-item-row {

    padding: 16px;

    position: relative;

    border-bottom: 1.5px solid #E2E8F0;

  }



  .cart-item-row td {

    padding: 6px 0;

    border: none;

  }



  .cart-item-row td:last-child {

    position: absolute;

    top: 14px;

    right: 14px;

    width: auto;

  }



  .cart-table-footer {

    flex-direction: column;

    align-items: stretch;

  }



  .coupon-apply-box {

    width: 100%;

  }



  .coupon-field {

    flex: 1;

  }



  /* DASHBOARD MOBILE STATS & USER CARD */

  .dashboard-user-card {

    flex-direction: column;

    align-items: stretch;

    padding: 20px;

    gap: 18px;

  }



  .user-stats-strip {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 8px;

    width: 100%;

  }



  .stat-box {

    min-width: 0;

    padding: 10px 4px;

  }



  .stat-box .stat-num {

    font-size: 20px;

  }



  .stat-box .stat-label {

    font-size: 10px;

  }



  .order-items-summary {

    flex-direction: column;

    align-items: flex-start;

    gap: 12px;

  }



  .order-actions-bar {

    flex-direction: column;

    align-items: stretch;

    gap: 12px;

  }



  .action-buttons {

    flex-direction: column;

    width: 100%;

  }



  .action-buttons .btn {

    width: 100%;

    text-align: center;

  }

}



/* 3. MOBILE SMARTPHONES (max-width: 480px) */

@media (max-width: 480px) {

  .nav-container {

    padding: 12px 14px;

  }



  .nav-actions {

    gap: 8px;

  }



  .site-header .nav-order-cta,

  .nav-order-cta {

    display: none !important;

  }



  .customizer-input-wrap {

    flex-direction: column;

    align-items: stretch;

    gap: 8px;

  }



  .plate-preset-btn {

    width: 100%;

  }



  .qty-and-cart-row {

    flex-direction: column;

  }



  .product-quantity-selector {

    width: 100%;

    justify-content: center;

  }



  .product-cart-btn {

    width: 100%;

    padding: 14px;

  }



  .product-details-tabs-section {

    padding: 20px 16px;

  }



  .checkout-card {

    padding: 18px 16px;

  }



  .order-summary-card {

    padding: 18px 16px;

  }

}



html,

body {

  width: 100%;

  max-width: 100vw;

  overflow-x: clip !important;

}



.site-footer {

  width: 100%;

  max-width: 100%;

  overflow: hidden !important;

  contain: paint;

}



.footer-marquee-strip {

  width: 100%;

  max-width: 100%;

  overflow: hidden !important;

  contain: paint;

}



.presets-btn-row {

  display: flex;

  gap: 8px;

  align-items: center;

}



@media (max-width: 600px) {

  .customizer-input-wrap {

    flex-direction: column;

    align-items: stretch;

    gap: 10px;

  }



  .presets-btn-row {

    width: 100%;

  }



  .presets-btn-row .plate-preset-btn {

    flex: 1;

    text-align: center;

  }

}



/* ==========================================================================

   LUXURY UI/UX DESIGN SYSTEM UPGRADE

   Addresses all 5 user screenshots:

   1. Cart Page (Polished Table, Sleek Summary, License Plate Pill, Payment Trust)

   2. Checkout Payment Selection (Selectable Cards, Glowing Active, Logos, Sleek CTA)

   3. Customer Dashboard Orders (Logistics Cards, Radar Pulse Dot, Clean Actions)

   4. Customer Dashboard Vehicle Tags (Apple/Tesla IoT Device Cards, iOS Switches)

   5. Customer Dashboard Profile (Encrypted Telemetry Form, Security Badges)

   ========================================================================== */



/* --------------------------------------------------------------------------

   1. CART PAGE REFINEMENT (SCREENSHOT 1)

   -------------------------------------------------------------------------- */

.cart-page-wrapper {

  background: #F8FAFC;

  padding: 40px 0 80px;

}



.free-shipping-card {

  background: linear-gradient(135deg, #ECFDF5 0%, #F0FDF4 100%);

  border: 1.5px solid #A7F3D0;

  border-radius: 18px;

  padding: 18px 24px;

  margin-bottom: 30px;

  box-shadow: 0 4px 16px rgba(16, 185, 129, 0.06);

}



.shipping-meter-header {

  display: flex;

  align-items: center;

  gap: 12px;

  font-size: 14.5px;

  font-weight: 800;

  color: #065F46;

  margin-bottom: 12px;

  flex-wrap: wrap;

}



.shipping-meter-header .meter-icon {

  font-size: 20px;

}



.shipping-meter-header .meter-badge {

  background: #DCFCE7;

  color: #15803D;

  font-size: 11.5px;

  font-weight: 800;

  padding: 4px 12px;

  border-radius: 9999px;

  border: 1px solid #BBF7D0;

  margin-left: auto;

}



.shipping-progress-bar {

  height: 9px;

  background: #D1FAE5;

  border-radius: 9999px;

  overflow: hidden;

}



.shipping-progress-bar .progress-fill {

  height: 100%;

  background: linear-gradient(90deg, #10B981 0%, #059669 100%);

  border-radius: 9999px;

  box-shadow: 0 0 10px rgba(16, 185, 129, 0.5);

}



.cart-layout-grid {

  display: grid;

  grid-template-columns: 1fr 390px;

  gap: 32px;

  align-items: flex-start;

}



.cart-table-card {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 22px;

  box-shadow: 0 4px 24px rgba(15, 23, 42, 0.03);

  overflow: hidden;

  margin-bottom: 24px;

}



.cart-table thead {

  background: #F8FAFC;

  border-bottom: 1.5px solid #E2E8F0;

}



.cart-table th {

  padding: 16px 22px;

  font-size: 11.5px;

  font-weight: 800;

  text-transform: uppercase;

  letter-spacing: 0.08em;

  color: #64748B;

  text-align: left;

}



.cart-item-row {

  border-bottom: 1px solid #F1F5F9;

  transition: background 0.2s ease;

}



.cart-item-row:hover {

  background: #FAFAFA;

}



.cart-item-row td {

  padding: 22px;

  vertical-align: middle;

}



.cart-item-meta {

  display: flex;

  align-items: center;

  gap: 16px;

}



.cart-item-thumb {

  width: 74px;

  height: 74px;

  border-radius: 16px;

  overflow: hidden;

  border: 1.5px solid #E2E8F0;

  background: #0A0F1D;

  flex-shrink: 0;

  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);

}



.cart-item-thumb img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

}



.cart-item-details strong {

  display: block;

  font-size: 15px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 6px;

  line-height: 1.35;

}



/* AUTHENTIC HSRP LICENSE PLATE BADGE */

.cart-item-badge {

  display: inline-flex;

  align-items: center;

  gap: 5px;

  background: #FACC15;

  color: #000000;

  font-family: 'JetBrains Mono', monospace;

  font-size: 11.5px;

  font-weight: 900;

  padding: 3px 9px;

  border-radius: 5px;

  border: 1.5px solid #000000;

  letter-spacing: 0.06em;

  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);

}



.quantity-stepper {

  display: inline-flex;

  align-items: center;

  border: 1.5px solid #CBD5E1;

  border-radius: 10px;

  overflow: hidden;

  background: #FFFFFF;

  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.03);

}



.quantity-stepper .quantity-btn {

  width: 36px;

  height: 38px;

  border: none;

  background: transparent;

  font-size: 16px;

  font-weight: 800;

  color: #0F172A;

  cursor: pointer;

  transition: all 0.15s ease;

}



.quantity-stepper .quantity-btn:hover {

  background: #F1F5F9;

  color: #D97706;

}



.quantity-stepper .quantity-display {

  width: 36px;

  text-align: center;

  font-size: 14.5px;

  font-weight: 800;

  color: #0F172A;

}



.cart-item-remove {

  width: 34px;

  height: 34px;

  border-radius: 50%;

  border: 1px solid #E2E8F0;

  background: #FFFFFF;

  color: #94A3B8;

  font-size: 18px;

  cursor: pointer;

  display: inline-grid;

  place-items: center;

  transition: all 0.2s ease;

}



.cart-item-remove:hover {

  color: #EF4444;

  border-color: #FCA5A5;

  background: #FEF2F2;

  transform: scale(1.08);

}



.cart-table-footer {

  display: flex;

  align-items: center;

  justify-content: space-between;

  padding: 20px 24px;

  background: #F8FAFC;

  border-top: 1.5px solid #E2E8F0;

  flex-wrap: wrap;

  gap: 16px;

}



.coupon-apply-box {

  display: flex;

  align-items: center;

  gap: 10px;

  flex-wrap: wrap;

}



.coupon-field {

  padding: 12px 18px;

  border-radius: 12px;

  border: 1.5px solid #CBD5E1;

  font-size: 14px;

  width: 260px;

  outline: none;

  background: #FFFFFF;

  color: #0F172A;

  transition: all 0.2s ease;

}



.coupon-field:focus {

  border-color: #F59E0B;

  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.12);

}



.coupon-apply-box .btn {

  padding: 12px 20px;

  font-weight: 800;

  border-radius: 12px;

}



.continue-shopping-link {

  color: #D97706;

  font-size: 14px;

  font-weight: 800;

  text-decoration: none;

  display: inline-flex;

  align-items: center;

  gap: 6px;

  transition: all 0.2s ease;

}



.continue-shopping-link:hover {

  transform: translateX(-4px);

  text-decoration: underline;

}



/* 3 ASSURANCE CARDS */

.cart-assurances-row {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 18px;

  margin-top: 24px;

}



.cart-assurance-item {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 18px;

  padding: 20px;

  display: flex;

  align-items: flex-start;

  gap: 14px;

  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.02);

  transition: all 0.22s ease;

}



.cart-assurance-item:hover {

  transform: translateY(-2px);

  border-color: #CBD5E1;

  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);

}



.cart-assurance-item .assure-icon {

  font-size: 26px;

  width: 48px;

  height: 48px;

  border-radius: 14px;

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.cart-assurance-item strong {

  display: block;

  font-size: 13.5px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 3px;

}



.cart-assurance-item p {

  font-size: 12px;

  color: #64748B;

  line-height: 1.45;

  margin: 0;

}



/* ORDER SUMMARY CARD */

.order-summary-card {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 24px;

  padding: 28px;

  box-shadow: 0 8px 30px rgba(15, 23, 42, 0.05);

  position: sticky;

  top: 90px;

}



.summary-title {

  font-size: 20px;

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 20px;

  letter-spacing: -0.01em;

}



.summary-line {

  display: flex;

  justify-content: space-between;

  align-items: center;

  font-size: 14.5px;

  color: #64748B;

  margin-bottom: 14px;

}



.summary-line strong {

  color: #0F172A;

  font-weight: 800;

}



.summary-line .text-success {

  background: #DCFCE7;

  color: #15803D;

  font-size: 12px;

  font-weight: 800;

  padding: 3px 10px;

  border-radius: 9999px;

  border: 1px solid #BBF7D0;

}



.summary-divider {

  height: 1.5px;

  background: #F1F5F9;

  margin: 18px 0;

}



.summary-line.total-line {

  padding-top: 6px;

}



.summary-line.total-line strong {

  font-size: 17px;

  color: #0F172A;

}



.grand-total-amount {

  font-size: 28px !important;

  font-weight: 900;

  color: #D97706 !important;

  letter-spacing: -0.02em;

}



.checkout-btn {

  width: 100%;

  margin-top: 20px;

  padding: 16px 24px;

  font-size: 16px;

  font-weight: 900;

  border-radius: 14px;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #FFFFFF;

  border: none;

  cursor: pointer;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  text-decoration: none;

  box-shadow: 0 8px 24px rgba(245, 158, 11, 0.28);

  transition: all 0.25s ease;

  letter-spacing: 0.01em;

}



.checkout-btn:hover {

  background: linear-gradient(135deg, #D97706 0%, #0036A8 100%);

  transform: translateY(-2px);

  box-shadow: 0 12px 30px rgba(245, 158, 11, 0.38);

}



.summary-security-badge {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  font-size: 12px;

  font-weight: 750;

  color: #059669;

  margin-top: 18px;

  text-align: center;

}



.payment-methods-strip {

  margin-top: 14px;

  padding-top: 14px;

  border-top: 1px solid #F1F5F9;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  font-size: 11.5px;

  color: #64748B;

  flex-wrap: wrap;

}



.methods-badges {

  display: flex;

  gap: 6px;

  flex-wrap: wrap;

}



.method-badge {

  background: #F1F5F9;

  color: #334155;

  font-size: 11px;

  font-weight: 800;

  padding: 2px 7px;

  border-radius: 6px;

  border: 1px solid #E2E8F0;

}





/* --------------------------------------------------------------------------

   2. CHECKOUT PAYMENT METHODS (SCREENSHOT 2)

   -------------------------------------------------------------------------- */

.payment-selection-section {

  margin-top: 24px;

  padding-top: 20px;

  border-top: 1.5px solid #F1F5F9;

}



.payment-section-title {

  font-size: 16px;

  font-weight: 800;

  color: #0F172A;

  margin: 0 0 16px;

  letter-spacing: -0.01em;

}



.payment-options-list {

  display: flex;

  flex-direction: column;

  gap: 12px;

}



.payment-option-card {

  display: flex;

  align-items: flex-start;

  gap: 14px;

  padding: 16px 20px;

  border-radius: 16px;

  border: 1.5px solid #E2E8F0;

  background: #FFFFFF;

  cursor: pointer;

  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);

  position: relative;

  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.02);

}



.payment-option-card:hover {

  border-color: #94A3B8;

  background: #F8FAFC;

  transform: translateY(-1px);

  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.05);

}



.payment-option-card:has(input[type="radio"]:checked) {

  border-color: #F59E0B;

  background: #F0F5FF;

  box-shadow: 0 0 0 1px #F59E0B, 0 8px 24px rgba(245, 158, 11, 0.08);

}



.payment-option-card input[type="radio"] {

  appearance: none;

  -webkit-appearance: none;

  width: 20px;

  height: 20px;

  border: 2px solid #CBD5E1;

  border-radius: 50%;

  margin: 2px 0 0;

  outline: none;

  cursor: pointer;

  transition: all 0.2s ease;

  position: relative;

  flex-shrink: 0;

  background: #FFFFFF;

}



.payment-option-card input[type="radio"]:checked {

  border-color: #F59E0B;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 800;

  box-shadow: inset 0 0 0 4px #FFFFFF;

}



.payment-option-body {

  flex: 1;

}



.option-header {

  display: flex;

  align-items: center;

  justify-content: space-between;

  flex-wrap: wrap;

  gap: 8px;

  margin-bottom: 4px;

}



.option-header strong {

  font-size: 14.5px;

  font-weight: 800;

  color: #0F172A;

}



.upi-extra-tag {

  background: #DCFCE7;

  color: #15803D;

  font-size: 11px;

  font-weight: 800;

  padding: 3px 9px;

  border-radius: 9999px;

  border: 1px solid #BBF7D0;

}



.cards-icons {

  background: #F1F5F9;

  color: #334155;

  font-size: 11px;

  font-weight: 750;

  padding: 3px 9px;

  border-radius: 9999px;

  border: 1px solid #E2E8F0;

}



.cod-tag {

  background: #FEF3C7;

  color: #B45309;

  font-size: 11px;

  font-weight: 800;

  padding: 3px 9px;

  border-radius: 9999px;

  border: 1px solid #FDE68A;

}



.option-sub {

  font-size: 12.5px;

  line-height: 1.45;

  color: #64748B;

  margin: 0;

}



/* TERMS AGREEMENT */

.terms-agreement-row {

  margin: 22px 0 16px;

}



.terms-checkbox {

  display: flex;

  align-items: center;

  gap: 10px;

  font-size: 13px;

  color: #475569;

  cursor: pointer;

  user-select: none;

}



.terms-checkbox input[type="checkbox"] {

  width: 18px;

  height: 18px;

  border-radius: 6px;

  border: 1.5px solid #CBD5E1;

  accent-color: #F59E0B;

  cursor: pointer;

}



.terms-checkbox a {

  color: #D97706;

  font-weight: 700;

  text-decoration: none;

}



.terms-checkbox a:hover {

  text-decoration: underline;

}



/* PLACE ORDER BUTTON */

.place-order-btn {

  width: 100%;

  padding: 16px 24px;

  border-radius: 14px;

  font-size: 16px;

  font-weight: 900;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #FFFFFF;

  border: none;

  cursor: pointer;

  box-shadow: 0 8px 24px rgba(245, 158, 11, 0.28);

  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  letter-spacing: 0.01em;

}



.place-order-btn:hover {

  transform: translateY(-2px);

  box-shadow: 0 12px 30px rgba(245, 158, 11, 0.38);

  background: linear-gradient(135deg, #D97706 0%, #0036A8 100%);

}



.checkout-guarantees {

  display: flex;

  align-items: center;

  justify-content: center;

  flex-wrap: wrap;

  gap: 16px;

  margin-top: 18px;

  padding-top: 16px;

  border-top: 1px solid #F1F5F9;

}



.guarantee-chip {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  font-size: 12px;

  font-weight: 750;

  color: #64748B;

}





/* --------------------------------------------------------------------------

   3. CUSTOMER DASHBOARD - ORDERS (SCREENSHOT 3)

   -------------------------------------------------------------------------- */

.dashboard-page-wrapper {

  background: #F8FAFC;

  padding: 40px 0 80px;

}



.dashboard-user-card {

  background: linear-gradient(135deg, #0A0F1D 0%, #111827 100%);

  border: 1px solid rgba(255, 255, 255, 0.12);

  border-radius: 24px;

  padding: 28px 36px;

  display: flex;

  justify-content: space-between;

  align-items: center;

  color: #FFFFFF;

  margin-bottom: 36px;

  box-shadow: 0 16px 40px -10px rgba(10, 15, 29, 0.3);

}



.dashboard-sidebar-nav {

  display: flex;

  flex-direction: column;

  gap: 8px;

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 20px;

  padding: 12px;

  box-shadow: 0 4px 18px rgba(15, 23, 42, 0.03);

}



.dashboard-tab-link {

  display: flex;

  align-items: center;

  gap: 12px;

  padding: 14px 18px;

  border-radius: 14px;

  border: 1px solid transparent;

  background: transparent;

  color: #475569;

  font-size: 14px;

  font-weight: 750;

  cursor: pointer;

  text-align: left;

  transition: all 0.2s ease;

  width: 100%;

}



.dashboard-tab-link:hover {

  background: #F8FAFC;

  color: #0F172A;

  border-color: #E2E8F0;

}



.dashboard-tab-link.active {

  background: linear-gradient(135deg, #0A0F1D 0%, #1E293B 100%);

  color: #FFFFFF;

  border-color: transparent;

  box-shadow: 0 6px 20px rgba(10, 15, 29, 0.16);

}



.dashboard-tab-link svg {

  flex-shrink: 0;

}



.dashboard-tab-link.active svg {

  stroke: #00C48C;

}



.order-card-item {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 22px;

  padding: 26px;

  margin-bottom: 22px;

  box-shadow: 0 4px 20px rgba(15, 23, 42, 0.03);

  transition: all 0.25s ease;

}



.order-card-item:hover {

  border-color: #CBD5E1;

  box-shadow: 0 8px 28px rgba(15, 23, 42, 0.06);

}



.order-header-row {

  display: flex;

  justify-content: space-between;

  align-items: center;

  padding-bottom: 16px;

  border-bottom: 1px solid #F1F5F9;

  margin-bottom: 20px;

  flex-wrap: wrap;

  gap: 12px;

}



.order-number {

  font-family: 'JetBrains Mono', monospace;

  font-size: 15.5px;

  font-weight: 900;

  color: #0F172A;

}



.order-date {

  font-size: 12.5px;

  color: #64748B;

  display: block;

  margin-top: 3px;

}



.order-status-badge {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  font-size: 12.5px;

  font-weight: 800;

  padding: 6px 16px;

  border-radius: 9999px;

  letter-spacing: 0.02em;

}



.order-status-badge.in-transit {

  background: #FEF9C3;

  color: #D97706;

  border: 1.5px solid #FDE68A;

}



.order-status-badge.delivered {

  background: #ECFDF5;

  color: #059669;

  border: 1.5px solid #A7F3D0;

}



.status-dot {

  width: 8px;

  height: 8px;

  border-radius: 50%;

  background: currentColor;

}



.order-status-badge.in-transit .status-dot {

  animation: pulseRadar 1.8s infinite;

}



.order-items-summary {

  display: flex;

  align-items: center;

  justify-content: space-between;

  margin-bottom: 20px;

  gap: 16px;

}



.item-preview {

  display: flex;

  align-items: center;

  gap: 18px;

  flex: 1;

}



.item-preview img {

  width: 68px;

  height: 68px;

  border-radius: 16px;

  border: 1.5px solid #E2E8F0;

  object-fit: cover;

  flex-shrink: 0;

  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);

}



.item-text strong {

  display: block;

  font-size: 15px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 6px;

}



.item-text span {

  font-size: 12.5px;

  color: #64748B;

  display: flex;

  align-items: center;

  gap: 6px;

  flex-wrap: wrap;

}



.item-text code {

  background: #FACC15;

  color: #000000;

  font-family: 'JetBrains Mono', monospace;

  font-size: 11.5px;

  font-weight: 900;

  padding: 3px 8px;

  border-radius: 5px;

  border: 1.5px solid #000000;

  letter-spacing: 0.05em;

  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);

}



.item-pricing .item-amount {

  font-size: 24px;

  font-weight: 900;

  color: #0F172A;

  letter-spacing: -0.01em;

}



.order-actions-bar {

  display: flex;

  align-items: center;

  justify-content: space-between;

  padding-top: 18px;

  border-top: 1px solid #F1F5F9;

  flex-wrap: wrap;

  gap: 14px;

}



.tracking-snippet {

  display: flex;

  align-items: center;

  gap: 8px;

  font-size: 13px;

  color: #475569;

}



.awb-text strong {

  color: #D97706;

  font-family: 'JetBrains Mono', monospace;

}



.action-buttons {

  display: flex;

  align-items: center;

  gap: 10px;

}



.action-buttons .btn {

  padding: 9px 18px;

  border-radius: 10px;

  font-size: 13px;

  font-weight: 800;

}





/* --------------------------------------------------------------------------

   4. CUSTOMER DASHBOARD - VEHICLE TAGS (SCREENSHOT 4)

   -------------------------------------------------------------------------- */

.panel-header {

  display: flex;

  justify-content: space-between;

  align-items: center;

  margin-bottom: 24px;

  flex-wrap: wrap;

  gap: 16px;

}



.panel-header h3 {

  font-size: 22px;

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 4px;

  letter-spacing: -0.01em;

}



.panel-header p {

  font-size: 14px;

  color: #64748B;

  margin: 0;

}



.panel-header .btn {

  padding: 10px 20px;

  border-radius: 12px;

  font-weight: 800;

  font-size: 13.5px;

}



.registered-tag-card {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 22px;

  padding: 26px;

  margin-bottom: 24px;

  box-shadow: 0 6px 24px -4px rgba(15, 23, 42, 0.04);

  position: relative;

  overflow: hidden;

  transition: all 0.25s ease;

}



.registered-tag-card:hover {

  border-color: #CBD5E1;

  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.07);

}



.registered-tag-card::before {

  content: '';

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  height: 4px;

  background: linear-gradient(90deg, #FACC15 0%, #00C48C 100%);

}



.tag-card-head {

  display: flex;

  justify-content: space-between;

  align-items: center;

  padding-bottom: 18px;

  border-bottom: 1px solid #F1F5F9;

  margin-bottom: 20px;

  flex-wrap: wrap;

  gap: 14px;

}



.tag-vehicle-info {

  display: flex;

  align-items: center;

  gap: 16px;

}



.v-type-icon {

  font-size: 28px;

  width: 54px;

  height: 54px;

  border-radius: 16px;

  background: #F8FAFC;

  border: 1.5px solid #E2E8F0;

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.tag-vehicle-info h4 {

  font-size: 17.5px;

  font-weight: 800;

  color: #0F172A;

  margin: 0 0 6px;

}



.plate-code-badge {

  display: inline-block;

  background: #FACC15;

  color: #000000;

  font-family: 'JetBrains Mono', monospace;

  font-size: 12.5px;

  font-weight: 900;

  padding: 3px 10px;

  border-radius: 6px;

  border: 1.5px solid #000000;

  letter-spacing: 0.06em;

  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);

}



.tag-health-badge {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  font-size: 12.5px;

  font-weight: 800;

  padding: 6px 16px;

  border-radius: 9999px;

  background: #ECFDF5;

  color: #059669;

  border: 1.5px solid #A7F3D0;

}



.tag-settings-grid {

  display: flex;

  flex-direction: column;

  gap: 12px;

  margin-bottom: 22px;

}



.setting-toggle-row {

  display: flex;

  justify-content: space-between;

  align-items: center;

  padding: 16px 20px;

  background: #F8FAFC;

  border: 1.5px solid #E2E8F0;

  border-radius: 16px;

  gap: 18px;

  transition: all 0.2s ease;

}



.setting-toggle-row:hover {

  background: #F1F5F9;

  border-color: #CBD5E1;

}



.setting-toggle-row strong {

  display: block;

  font-size: 14.5px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 2px;

}



.setting-toggle-row p {

  font-size: 12.5px;

  color: #64748B;

  margin: 0;

  line-height: 1.4;

}



/* APPLE-GRADE SWITCH TOGGLE */

.switch-toggle {

  position: relative;

  display: inline-block;

  width: 50px;

  height: 30px;

  flex-shrink: 0;

}



.switch-toggle input {

  opacity: 0;

  width: 0;

  height: 0;

}



.switch-toggle .slider {

  position: absolute;

  cursor: pointer;

  top: 0;

  left: 0;

  right: 0;

  bottom: 0;

  background-color: #CBD5E1;

  transition: 0.28s cubic-bezier(0.16, 1, 0.3, 1);

  border-radius: 9999px;

}



.switch-toggle .slider:before {

  position: absolute;

  content: "";

  height: 24px;

  width: 24px;

  left: 3px;

  bottom: 3px;

  background-color: white;

  transition: 0.28s cubic-bezier(0.16, 1, 0.3, 1);

  border-radius: 50%;

  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);

}



.switch-toggle input:checked+.slider {

  background-color: #10B981;

}



.switch-toggle input:checked+.slider:before {

  transform: translateX(20px);

}



.tag-card-footer {

  display: flex;

  align-items: center;

  gap: 12px;

  padding-top: 18px;

  border-top: 1px solid #F1F5F9;

  flex-wrap: wrap;

}



.tag-card-footer .btn {

  padding: 10px 18px;

  border-radius: 12px;

  font-size: 13px;

  font-weight: 800;

}





/* --------------------------------------------------------------------------

   5. CUSTOMER DASHBOARD - PROFILE & ROUTING (SCREENSHOT 5)

   -------------------------------------------------------------------------- */

.profile-settings-form {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 22px;

  padding: 34px;

  box-shadow: 0 6px 24px -4px rgba(15, 23, 42, 0.04);

}



.profile-settings-form .form-fields-grid {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 22px;

}



.profile-settings-form .form-group.full-width {

  grid-column: span 2;

}



.profile-settings-form label {

  display: block;

  font-size: 13.5px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 8px;

}



.profile-settings-form .form-input {

  width: 100%;

  height: 50px;

  padding: 0 16px;

  border-radius: 12px;

  border: 1.5px solid #CBD5E1;

  font-size: 15px;

  color: #0F172A;

  background: #F8FAFC;

  outline: none;

  transition: all 0.2s ease;

}



.profile-settings-form .form-input:focus {

  background: #FFFFFF;

  border-color: #F59E0B;

  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.12);

}



.profile-settings-form .phone-prefix {

  height: 50px;

  padding: 0 16px;

  font-size: 15px;

  background: #EEF2F6;

  border-color: #CBD5E1;

  font-weight: 800;

  color: #334155;

}



.profile-settings-form .field-hint {

  display: block;

  font-size: 12px;

  color: #64748B;

  margin-top: 6px;

  line-height: 1.4;

}



.profile-settings-form button[type="submit"] {

  padding: 15px 32px;

  font-size: 15px;

  font-weight: 800;

  border-radius: 14px;

  box-shadow: 0 8px 24px rgba(245, 158, 11, 0.25);

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #FFFFFF;

  border: none;

  cursor: pointer;

  transition: all 0.2s ease;

}



.profile-settings-form button[type="submit"]:hover {

  transform: translateY(-2px);

  box-shadow: 0 12px 28px rgba(245, 158, 11, 0.35);

}



/* ==========================================================================

   AUTHENTICATION SPLIT HERO DESIGN (MATCHING USER REFERENCE UI)

   ========================================================================== */

.auth-page-wrapper {

  background: #FAF8F5;

  padding: 40px 0 80px;

  position: relative;

  min-height: calc(100vh - 120px);

  display: flex;

  align-items: center;

}



.auth-ambient-glow {

  position: absolute;

  top: 5%;

  right: 5%;

  width: 500px;

  height: 500px;

  background: radial-gradient(circle, rgba(254, 240, 138, 0.45) 0%, rgba(250, 248, 245, 0) 70%);

  filter: blur(80px);

  pointer-events: none;

  z-index: 0;

}



.auth-split-container {

  display: grid;

  grid-template-columns: minmax(440px, 1.15fr) 1fr;

  gap: 36px;

  align-items: stretch;

  max-width: 1220px;

  margin: 0 auto;

  position: relative;

  z-index: 1;

}



/* LEFT SHOWCASE CARD */

.auth-showcase-card {

  position: relative;

  border-radius: 28px;

  overflow: hidden;

  box-shadow: 0 16px 40px -10px rgba(0, 0, 0, 0.15);

  display: flex;

  flex-direction: column;

  justify-content: flex-end;

  min-height: 640px;

  background: #0A0F1D;

  border: 1px solid rgba(255, 255, 255, 0.08);

}



.auth-showcase-bg-wrap {

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  bottom: 0;

  z-index: 1;

}



.auth-showcase-img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

}



.auth-showcase-gradient-overlay {

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  bottom: 0;

  background: linear-gradient(180deg, rgba(10, 15, 29, 0.15) 0%, rgba(10, 15, 29, 0.6) 50%, rgba(10, 15, 29, 0.96) 100%);

}



.auth-showcase-body {

  position: relative;

  z-index: 2;

  padding: 40px 36px 36px;

  display: flex;

  flex-direction: column;

  gap: 30px;

}



.auth-showcase-title {

  font-size: clamp(34px, 3.8vw, 48px);

  font-weight: 900;

  color: #FFFFFF;

  line-height: 1.15;

  letter-spacing: -0.025em;

  margin: 0 0 14px;

}



.auth-title-privacy {

  color: #FACC15;

  position: relative;

  display: inline-block;

}



.auth-swoosh-brush {

  position: absolute;

  bottom: -8px;

  left: 0;

  width: 100%;

  height: 16px;

  pointer-events: none;

}



.auth-showcase-subtitle {

  font-size: 15px;

  line-height: 1.6;

  color: #E2E8F0;

  margin: 0;

  max-width: 440px;

}



.auth-features-row {

  display: flex;

  flex-direction: column;

  gap: 12px;

}



@media (min-width: 640px) {

  .auth-features-row {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 12px;

  }

}



.auth-feature-pill {

  background: rgba(15, 23, 42, 0.72);

  backdrop-filter: blur(12px);

  -webkit-backdrop-filter: blur(12px);

  border: 1px solid rgba(255, 255, 255, 0.12);

  border-radius: 16px;

  padding: 14px;

  display: flex;

  flex-direction: column;

  gap: 10px;

}



.feature-icon-circle {

  width: 36px;

  height: 36px;

  border-radius: 50%;



  border: 1px solid rgba(250, 204, 21, 0.35);

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.feature-text strong {

  display: block;

  font-size: 13px;

  font-weight: 800;

  color: #FFFFFF;

  margin-bottom: 2px;

  line-height: 1.25;

}



.feature-text span {

  font-size: 11px;

  color: #94A3B8;

  line-height: 1.35;

  display: block;

}



/* RIGHT AUTH CARD */

.auth-form-card {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 28px;

  padding: 38px 42px;

  box-shadow: 0 12px 40px -10px rgba(15, 23, 42, 0.06);

  display: flex;

  flex-direction: column;

  justify-content: center;

}



.auth-capsule-switcher {

  display: flex;

  background: #F1F5F9;

  border-radius: 9999px;

  padding: 5px;

  margin-bottom: 28px;

}



.auth-capsule-btn {

  flex: 1;

  padding: 11px 20px;

  border-radius: 9999px;

  border: none;

  background: transparent;

  font-size: 14px;

  font-weight: 750;

  color: #64748B;

  cursor: pointer;

  transition: all 0.22s ease;

  text-align: center;

}



.auth-capsule-btn.active {

  background: #FEF08A;

  color: #0F172A;

  font-weight: 850;

  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);

}



.auth-card-header {

  margin-bottom: 24px;

}



.auth-card-title {

  font-size: 30px;

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 6px;

  letter-spacing: -0.02em;

}



.auth-card-subtitle {

  font-size: 14px;

  color: #64748B;

  margin: 0;

  line-height: 1.5;

}



.auth-input-group {

  margin-bottom: 18px;

}



.auth-input-group label {

  display: block;

  font-size: 13.5px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 7px;

}



.auth-input-wrap {

  position: relative;

  display: flex;

  align-items: center;

}



.auth-field-icon {

  position: absolute;

  left: 16px;

  pointer-events: none;

  display: flex;

  align-items: center;

}



.auth-field-prefix {

  position: absolute;

  left: 16px;

  font-size: 14px;

  font-weight: 800;

  color: #334155;

  pointer-events: none;

}



.auth-field-input {

  width: 100%;

  height: 50px;

  padding: 0 16px 0 46px;

  border-radius: 12px;

  border: 1.5px solid #CBD5E1;

  font-size: 14.5px;

  background: #FFFFFF;

  color: #0F172A;

  outline: none;

  transition: all 0.2s ease;

}



.auth-field-input:focus {

  border-color: #F59E0B;

  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.15);

}



.auth-input-wrap:has(.auth-field-prefix) .auth-field-input {

  padding-left: 78px;

}



.auth-eye-toggle {

  position: absolute;

  right: 14px;

  background: none;

  border: none;

  cursor: pointer;

  padding: 6px;

  display: flex;

  align-items: center;

  color: #64748B;

  transition: color 0.15s ease;

}



.auth-eye-toggle:hover {

  color: #0F172A;

}



.auth-options-row {

  display: flex;

  justify-content: space-between;

  align-items: center;

  margin: 18px 0 22px;

  font-size: 13.5px;

  flex-wrap: wrap;

  gap: 10px;

}



.auth-remember-check {

  display: flex;

  align-items: center;

  gap: 8px;

  color: #334155;

  cursor: pointer;

  user-select: none;

  font-weight: 600;

}



.auth-remember-check input[type="checkbox"] {

  width: 18px;

  height: 18px;

  border-radius: 5px;

  border: 1.5px solid #CBD5E1;

  accent-color: #F59E0B;

  cursor: pointer;

}



.auth-forgot-link {

  color: #D97706;

  font-weight: 750;

  text-decoration: none;

  transition: opacity 0.2s ease;

}



.auth-forgot-link:hover {

  text-decoration: underline;

}



.auth-submit-yellow-btn {

  width: 100%;

  padding: 16px 28px;

  border-radius: 9999px;

  font-size: 16px;

  font-weight: 900;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  border: none;

  cursor: pointer;

  box-shadow: 0 6px 20px rgba(245, 158, 11, 0.32);

  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  letter-spacing: 0.01em;

}



.auth-submit-yellow-btn:hover {

  transform: translateY(-2px);

  box-shadow: 0 10px 26px rgba(245, 158, 11, 0.42);

  background: linear-gradient(180deg, #FDE047 0%, #EAB308 100%);

}



.auth-or-divider {

  display: flex;

  align-items: center;

  text-align: center;

  margin: 22px 0 18px;

  color: #94A3B8;

  font-size: 12.5px;

  font-weight: 700;

}



.auth-or-divider::before,

.auth-or-divider::after {

  content: '';

  flex: 1;

  border-bottom: 1px solid #E2E8F0;

}



.auth-or-divider span {

  padding: 0 14px;

}



.auth-btn-whatsapp {

  width: 100%;

  padding: 14px 22px;

  border-radius: 9999px;

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  color: #0F172A;

  font-size: 14.5px;

  font-weight: 800;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 10px;

  cursor: pointer;

  transition: all 0.2s ease;

  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);

}



.auth-btn-whatsapp:hover {

  background: #F8FAFC;

  border-color: #25D366;

  transform: translateY(-1px);

}



.auth-security-chip {

  background: #ECFDF5;

  border: 1px solid #A7F3D0;

  border-radius: 16px;

  padding: 14px 18px;

  display: flex;

  align-items: center;

  gap: 12px;

  margin-top: 24px;

}



.sec-icon-circle {

  width: 36px;

  height: 36px;

  border-radius: 50%;

  background: #D1FAE5;

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.sec-text strong {

  display: block;

  font-size: 13px;

  font-weight: 800;

  color: #065F46;

  margin-bottom: 2px;

}



.sec-text span {

  font-size: 11.5px;

  color: #047857;

  display: block;

}



/* RESPONSIVE SPLIT */

@media (max-width: 1024px) {

  .auth-split-container {

    grid-template-columns: 1fr;

    max-width: 620px;

  }



  .auth-showcase-card {

    min-height: 500px;

  }

}



@media (max-width: 640px) {

  .auth-page-wrapper {

    padding: 20px 0 50px;

  }



  .auth-form-card {

    padding: 26px 20px;

    border-radius: 20px;

  }



  .auth-showcase-card {

    min-height: 440px;

    border-radius: 20px;

  }



  .auth-showcase-body {

    padding: 24px 20px;

  }



  .auth-showcase-title {

    font-size: 30px;

  }

}



/* ==========================================================================

   DEDICATED AUTHENTICATION PAGE (PIXEL-PERFECT MATCH TO REFERENCE)

   ========================================================================== */

body.auth-page-body {

  background-color: #FAF8F5;

  color: #0F172A;

  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;

  margin: 0;

  padding: 0;

  min-height: 100vh;

  position: relative;

  overflow-x: hidden;

}



/* WARM AMBIENT BACKGROUND BLOBS */

.auth-bg-blob {

  position: fixed;

  border-radius: 50%;

  pointer-events: none;

  z-index: 0;

  filter: blur(80px);

}



.auth-blob-top-right {

  top: -120px;

  right: -100px;

  width: 580px;

  height: 580px;

  background: radial-gradient(circle, rgba(254, 240, 138, 0.55) 0%, rgba(253, 230, 138, 0.25) 50%, rgba(250, 248, 245, 0) 75%);

}



.auth-blob-mid-left {

  top: 35%;

  left: -140px;

  width: 480px;

  height: 480px;

  background: radial-gradient(circle, rgba(254, 243, 199, 0.5) 0%, rgba(254, 240, 138, 0.15) 50%, rgba(250, 248, 245, 0) 75%);

}



.auth-blob-bottom-right {

  bottom: -140px;

  right: -100px;

  width: 520px;

  height: 520px;

  background: radial-gradient(circle, rgba(254, 240, 138, 0.45) 0%, rgba(254, 243, 199, 0.15) 50%, rgba(250, 248, 245, 0) 75%);

}



/* TOP NAVIGATION HEADER */

.auth-nav-header {

  position: relative;

  z-index: 10;

  padding: 26px 48px 16px;

  max-width: 1360px;

  margin: 0 auto;

}



.auth-nav-container {

  display: flex;

  align-items: center;

  justify-content: flex-start;

  gap: 32px;

}



.auth-brand-logo {

  display: inline-flex;

  align-items: center;

  text-decoration: none;

  color: #0A0F1D;

  font-weight: 900;

  font-size: 27px;

  letter-spacing: -0.03em;

  line-height: 1;

}



.auth-logo-text {

  color: #0A0F1D;

}



.auth-logo-badge {

  color: #0A0F1D;

  background: #FACC15;

  width: 28px;

  height: 28px;

  border-radius: 50%;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  font-size: 19px;

  font-weight: 900;

  margin-left: 1px;

}



.auth-logo-reg {

  font-size: 12px;

  font-weight: 700;

  color: #0A0F1D;

  margin-left: 2px;

  top: -8px;

}



.auth-breadcrumb {

  display: inline-flex;

  align-items: center;

  gap: 10px;

  font-size: 13.5px;

  font-weight: 600;

}



.auth-bc-home {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  color: #475569;

  text-decoration: none;

  transition: color 0.15s ease;

}



.auth-bc-home:hover {

  color: #0F172A;

}



.auth-bc-sep {

  color: #94A3B8;

  font-weight: 400;

}



.auth-bc-active {

  color: #0F172A;

  font-weight: 700;

}



/* MAIN SPLIT VIEW */

.auth-viewport-wrapper {

  position: relative;

  z-index: 5;

  max-width: 1360px;

  margin: 0 auto;

  padding: 10px 48px 60px;

}



.auth-split-grid {

  display: grid;

  grid-template-columns: minmax(500px, 1.25fr) minmax(440px, 1fr);

  gap: 36px;

  align-items: stretch;

}



/* LEFT SHOWCASE CARD */

.auth-showcase-card {

  position: relative;

  border-radius: 28px;

  overflow: hidden;

  box-shadow: 0 16px 44px -8px rgba(0, 0, 0, 0.18);

  display: flex;

  flex-direction: column;

  justify-content: flex-end;

  min-height: 680px;

  background: #0A0F1D;

  border: 1px solid rgba(255, 255, 255, 0.08);

}



.auth-showcase-bg-wrap {

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  bottom: 0;

  z-index: 1;

}



.auth-showcase-img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

}



.auth-showcase-gradient-overlay {

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  bottom: 0;

  background: linear-gradient(180deg, rgba(10, 15, 29, 0.05) 0%, rgba(10, 15, 29, 0.4) 40%, rgba(10, 15, 29, 0.9) 75%, rgba(10, 15, 29, 0.98) 100%);

}



.auth-showcase-body {

  position: relative;

  z-index: 2;

  padding: 44px 38px 36px;

  display: flex;

  flex-direction: column;

  gap: 30px;

}



.auth-showcase-headings {

  max-width: 500px;

}



.auth-showcase-title {

  font-size: clamp(34px, 3.8vw, 48px);

  font-weight: 900;

  color: #FFFFFF;

  line-height: 1.14;

  letter-spacing: -0.03em;

  margin: 0 0 14px;

}



.auth-title-privacy {

  color: #FACC15;

  position: relative;

  display: inline-block;

}



.auth-swoosh-brush {

  position: absolute;

  bottom: -6px;

  left: 0;

  width: 100%;

  height: 16px;

  pointer-events: none;

}



.auth-showcase-subtitle {

  font-size: 15.5px;

  line-height: 1.55;

  color: #E2E8F0;

  margin: 0;

  max-width: 420px;

  font-weight: 500;

}



.auth-features-row {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 14px;

}



.auth-feature-pill {

  background: rgba(15, 23, 42, 0.76);

  backdrop-filter: blur(14px);

  -webkit-backdrop-filter: blur(14px);

  border: 1px solid rgba(255, 255, 255, 0.14);

  border-radius: 16px;

  padding: 14px;

  display: flex;

  flex-direction: column;

  gap: 12px;

}



.feature-icon-circle {

  width: 40px;

  height: 40px;

  border-radius: 50%;



  border: 1.5px solid rgba(250, 204, 21, 0.35);

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.feature-text strong {

  display: block;

  font-size: 13.5px;

  font-weight: 800;

  color: #FFFFFF;

  margin-bottom: 3px;

  line-height: 1.25;

}



.feature-text span {

  font-size: 11px;

  color: #94A3B8;

  line-height: 1.35;

  display: block;

  font-weight: 500;

}



/* RIGHT AUTH CARD */

.auth-form-card {

  background: #FFFFFF;

  border: 1.5px solid #F1F5F9;

  border-radius: 28px;

  padding: 38px 44px;

  box-shadow: 0 16px 44px -10px rgba(15, 23, 42, 0.08);

  display: flex;

  flex-direction: column;

  justify-content: center;

}



/* CAPSULE SWITCHER */

.auth-capsule-switcher {

  display: flex;

  background: #F1F5F9;

  border-radius: 9999px;

  padding: 5px;

  margin-bottom: 26px;

}



.auth-capsule-btn {

  flex: 1;

  padding: 11px 22px;

  border-radius: 9999px;

  border: none;

  background: transparent;

  font-size: 14px;

  font-weight: 700;

  color: #64748B;

  cursor: pointer;

  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);

  text-align: center;

}



.auth-capsule-btn.active {

  background: #FEF08A;

  color: #0F172A;

  font-weight: 850;

  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);

}



.auth-card-header {

  margin-bottom: 22px;

}



.auth-card-title {

  font-size: 32px;

  font-weight: 900;

  color: #0F172A;

  margin: 0 0 6px;

  letter-spacing: -0.025em;

}



.auth-card-subtitle {

  font-size: 14px;

  color: #64748B;

  margin: 0;

  line-height: 1.5;

}



/* INPUTS */

.auth-input-group {

  margin-bottom: 18px;

}



.auth-input-group label {

  display: block;

  font-size: 13.5px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 8px;

}



.auth-input-wrap {

  position: relative;

  display: flex;

  align-items: center;

}



.auth-field-icon {

  position: absolute;

  left: 16px;

  pointer-events: none;

  display: flex;

  align-items: center;

  color: #94A3B8;

}



.auth-field-prefix {

  position: absolute;

  left: 16px;

  font-size: 14.5px;

  font-weight: 800;

  color: #334155;

  pointer-events: none;

}



.auth-input-wrap.has-prefix .auth-field-input {

  padding-left: 64px;

}



.auth-field-input {

  width: 100%;

  height: 52px;

  padding: 0 16px 0 46px;

  border-radius: 12px;

  border: 1.5px solid #CBD5E1;

  font-size: 14.5px;

  background: #FFFFFF;

  color: #0F172A;

  outline: none;

  font-family: inherit;

  transition: all 0.2s ease;

  box-sizing: border-box;

}



.auth-field-input:focus {

  border-color: #F59E0B;

  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.16);

}



.auth-field-input::placeholder {

  color: #94A3B8;

}



.auth-eye-toggle {

  position: absolute;

  right: 14px;

  background: none;

  border: none;

  cursor: pointer;

  padding: 6px;

  display: flex;

  align-items: center;

  color: #64748B;

  transition: color 0.15s ease;

}



.auth-eye-toggle:hover {

  color: #0F172A;

}



/* OPTIONS ROW */

.auth-options-row {

  display: flex;

  justify-content: space-between;

  align-items: center;

  margin: 16px 0 22px;

  font-size: 13.5px;

  flex-wrap: wrap;

  gap: 10px;

}



.auth-remember-check {

  display: flex;

  align-items: center;

  gap: 8px;

  color: #334155;

  cursor: pointer;

  user-select: none;

  font-weight: 600;

}



.auth-remember-check input[type="checkbox"] {

  width: 18px;

  height: 18px;

  border-radius: 5px;

  border: 1.5px solid #CBD5E1;

  accent-color: #F59E0B;

  cursor: pointer;

}



.auth-forgot-link {

  color: #D97706;

  font-weight: 750;

  text-decoration: none;

  transition: opacity 0.2s ease;

}



.auth-forgot-link:hover {

  text-decoration: underline;

}



/* PRIMARY YELLOW CTA */

.auth-submit-yellow-btn {

  width: 100%;

  padding: 16px 28px;

  border-radius: 9999px;

  font-size: 16px;

  font-weight: 900;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  border: none;

  cursor: pointer;

  box-shadow: 0 6px 20px rgba(245, 158, 11, 0.32);

  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  letter-spacing: 0.01em;

  box-sizing: border-box;

}



.auth-submit-yellow-btn:hover {

  transform: translateY(-2px);

  box-shadow: 0 10px 26px rgba(245, 158, 11, 0.42);

  background: linear-gradient(180deg, #FDE047 0%, #EAB308 100%);

}



.auth-submit-yellow-btn:active {

  transform: translateY(0);

}



/* DIVIDER */

.auth-or-divider {

  display: flex;

  align-items: center;

  text-align: center;

  margin: 22px 0 18px;

  color: #94A3B8;

  font-size: 12.5px;

  font-weight: 700;

}



.auth-or-divider::before,

.auth-or-divider::after {

  content: '';

  flex: 1;

  border-bottom: 1px solid #E2E8F0;

}



.auth-or-divider span {

  padding: 0 14px;

}



/* WHATSAPP BUTTON */

.auth-btn-whatsapp {

  width: 100%;

  padding: 14px 22px;

  border-radius: 9999px;

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  color: #0F172A;

  font-size: 14.5px;

  font-weight: 800;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 10px;

  cursor: pointer;

  transition: all 0.2s ease;

  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);

  box-sizing: border-box;

}



.auth-btn-whatsapp:hover {

  background: #F8FAFC;

  border-color: #25D366;

  transform: translateY(-1px);

}



/* MINT SECURITY CHIP */

.auth-security-chip {

  background: #ECFDF5;

  border: 1px solid #A7F3D0;

  border-radius: 16px;

  padding: 14px 18px;

  display: flex;

  align-items: center;

  gap: 14px;

  margin-top: 24px;

}



.sec-icon-circle {

  width: 38px;

  height: 38px;

  border-radius: 50%;

  background: #D1FAE5;

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.sec-text strong {

  display: block;

  font-size: 13.5px;

  font-weight: 800;

  color: #065F46;

  margin-bottom: 2px;

}



.sec-text span {

  font-size: 11.5px;

  color: #047857;

  display: block;

  font-weight: 500;

}



/* RESPONSIVE LAYOUT */

@media (max-width: 1080px) {

  .auth-nav-header {

    padding: 20px 24px 12px;

  }



  .auth-viewport-wrapper {

    padding: 10px 24px 40px;

  }



  .auth-split-grid {

    grid-template-columns: 1fr;

    max-width: 640px;

    margin: 0 auto;

  }



  .auth-showcase-card {

    min-height: 520px;

  }

}



@media (max-width: 640px) {

  .auth-nav-container {

    flex-direction: column;

    align-items: flex-start;

    gap: 12px;

  }



  .auth-features-row {

    grid-template-columns: 1fr;

    gap: 10px;

  }



  .auth-showcase-card {

    min-height: 460px;

    border-radius: 20px;

  }



  .auth-showcase-body {

    padding: 24px 20px;

  }



  .auth-showcase-title {

    font-size: 32px;

  }



  .auth-form-card {

    padding: 28px 20px;

    border-radius: 20px;

  }

}



/* AUTH REFINEMENTS - EXACT 1:1 TO REFERENCE UI */

.auth-features-row {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 16px;

}



.auth-feature-pill {

  background: rgba(10, 15, 29, 0.65) !important;

  backdrop-filter: blur(16px);

  -webkit-backdrop-filter: blur(16px);

  border: 1px solid rgba(255, 255, 255, 0.12) !important;

  border-radius: 18px !important;

  padding: 12px 14px !important;

  display: flex !important;

  flex-direction: row !important;

  align-items: center !important;

  gap: 12px !important;

}



.feature-icon-circle {

  width: 42px !important;

  height: 42px !important;

  border-radius: 50% !important;



  border: 1.5px solid rgba(250, 204, 21, 0.5) !important;

  display: grid !important;

  place-items: center !important;

  flex-shrink: 0 !important;

}



.feature-text {

  flex: 1;

}



.feature-text strong {

  display: block !important;

  font-size: 13px !important;

  font-weight: 800 !important;

  color: #FFFFFF !important;

  margin-bottom: 2px !important;

  line-height: 1.25 !important;

}



.feature-text span {

  font-size: 10.5px !important;

  color: #94A3B8 !important;

  line-height: 1.3 !important;

  display: block !important;

  font-weight: 500 !important;

}



.auth-title-privacy {

  color: #FACC15 !important;

  position: relative !important;

  display: inline-block !important;

}



.auth-swoosh-brush {

  position: absolute !important;

  bottom: -6px !important;

  left: 0 !important;

  width: 100% !important;

  height: 12px !important;

  pointer-events: none !important;

}



/* On mobile/tablet, show form first for seamless UX */

@media (max-width: 1080px) {

  .auth-split-grid {

    grid-template-columns: 1fr;

    max-width: 580px;

  }



  .auth-showcase-card {

    order: 2;

    min-height: 460px;

  }



  .auth-form-card {

    order: 1;

  }



  .auth-features-row {

    grid-template-columns: 1fr;

    gap: 10px;

  }

}



/* ==========================================================================

   404 ERROR PAGE - PARKING BLOCKED UI (MATCHING USER REFERENCE DESIGN)

   ========================================================================== */

body.page-404-body {

  background-color: #FAF8F5;

  color: #0F172A;

  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;

  margin: 0;

  padding: 0;

  min-height: 100vh;

  display: flex;

  flex-direction: column;

  justify-content: space-between;

  overflow-x: hidden;

}



/* 404 HEADER */

.header-404 {

  padding: 24px 48px;

  width: 100%;

  box-sizing: border-box;

}



.nav-404-container {

  max-width: 1360px;

  margin: 0 auto;

  display: flex;

  align-items: center;

  justify-content: space-between;

}



.logo-404 {

  display: inline-flex;

  align-items: center;

  text-decoration: none;

  font-size: 27px;

  font-weight: 900;

  color: #0A0F1D;

  letter-spacing: -0.03em;

  line-height: 1;

}



.logo-text {

  color: #0A0F1D;

}



.logo-nine-bubble {

  color: #0A0F1D;

  background: #FACC15;

  width: 27px;

  height: 27px;

  border-radius: 50%;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  font-size: 19px;

  font-weight: 900;

  margin-left: 2px;

}



.logo-reg-symbol {

  font-size: 11px;

  font-weight: 700;

  color: #0A0F1D;

  margin-left: 2px;

  top: -8px;

  position: relative;

}



.nav-404-links {

  display: flex;

  align-items: center;

  gap: 32px;

}



.nav-404-link {

  text-decoration: none;

  font-size: 14.5px;

  font-weight: 700;

  color: #1E293B;

  transition: color 0.18s ease;

}



.nav-404-link:hover {

  color: #F59E0B;

}



.btn-404-shop {

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-weight: 850;

  font-size: 14px;

  padding: 10px 22px;

  border-radius: 9999px;

  display: inline-flex;

  align-items: center;

  gap: 8px;

  text-decoration: none;

  box-shadow: 0 4px 14px rgba(245, 158, 11, 0.28);

  transition: all 0.2s ease;

}



.btn-404-shop:hover {

  transform: translateY(-2px);

  box-shadow: 0 6px 18px rgba(245, 158, 11, 0.38);

  background: linear-gradient(180deg, #FDE047 0%, #EAB308 100%);

}



/* 404 MAIN HERO */

.main-404-viewport {

  flex: 1;

  display: flex;

  align-items: center;

  padding: 20px 48px 40px;

}



.container-404 {

  max-width: 1360px;

  margin: 0 auto;

  width: 100%;

  box-sizing: border-box;

}



.grid-404 {

  display: grid;

  grid-template-columns: 1.15fr 1fr;

  gap: 48px;

  align-items: center;

}



.visual-404-col {

  display: flex;

  justify-content: center;

  align-items: center;

}



.visual-404-wrap {

  width: 100%;

  max-width: 620px;

  border-radius: 28px;

  overflow: hidden;

  box-shadow: 0 16px 44px -8px rgba(0, 0, 0, 0.12);

  background: #FFFFFF;

}



.img-404-hero {

  width: 100%;

  height: auto;

  display: block;

  object-fit: cover;

}



.content-404-col {

  display: flex;

  flex-direction: column;

  justify-content: center;

  padding-left: 10px;

}



.content-404-inner {

  max-width: 490px;

}



.num-cone-row {

  display: flex;

  align-items: flex-end;

  gap: 12px;

  margin-bottom: 8px;

  position: relative;

}



.big-404-num {

  font-size: clamp(84px, 9vw, 120px);

  font-weight: 900;

  line-height: 0.95;

  color: #0A0F1D;

  letter-spacing: -0.05em;

}



.traffic-cone-wrap {

  position: relative;

  width: 84px;

  height: 96px;

  display: flex;

  align-items: flex-end;

  margin-bottom: 6px;

}



.cone-3d-img {

  width: 82px;

  height: 82px;

  object-fit: contain;

  /* mix-blend-mode transparent */

  transform: rotate(-6deg);

  filter: drop-shadow(0 6px 12px rgba(0, 0, 0, 0.12));

}



.cone-sparkles {

  position: absolute;

  top: -14px;

  left: 16px;

  width: 36px;

  height: 22px;

  pointer-events: none;

}



.title-404 {

  font-size: clamp(28px, 3.2vw, 38px);

  font-weight: 900;

  color: #0A0F1D;

  margin: 0 0 12px;

  letter-spacing: -0.025em;

  line-height: 1.18;

}



.desc-404 {

  font-size: 15.5px;

  color: #475569;

  line-height: 1.6;

  margin: 0 0 24px;

  font-weight: 500;

}



.callout-card-404 {

  background: #FEF9C3;

  border: 1px solid rgba(250, 204, 21, 0.45);

  border-radius: 18px;

  padding: 16px 20px;

  display: flex;

  align-items: center;

  gap: 16px;

  margin-bottom: 26px;

  box-shadow: 0 4px 16px -4px rgba(234, 179, 8, 0.15);

}



.callout-icon-circle {

  width: 44px;

  height: 44px;

  border-radius: 50%;

  background: #FACC15;

  display: grid;

  place-items: center;

  flex-shrink: 0;

  box-shadow: 0 2px 8px rgba(245, 158, 11, 0.25);

}



.callout-text h3 {

  font-size: 15.5px;

  font-weight: 900;

  color: #0A0F1D;

  margin: 0 0 2px;

}



.callout-text p {

  font-size: 13px;

  color: #334155;

  margin: 0;

  line-height: 1.4;

  font-weight: 500;

}



.btn-404-cta {

  width: 100%;

  max-width: 440px;

  padding: 16px 28px;

  border-radius: 9999px;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-size: 16px;

  font-weight: 900;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 10px;

  text-decoration: none;

  box-shadow: 0 8px 24px rgba(245, 158, 11, 0.35);

  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);

  box-sizing: border-box;

}



.btn-404-cta:hover {

  transform: translateY(-2px);

  box-shadow: 0 12px 28px rgba(245, 158, 11, 0.45);

  background: linear-gradient(180deg, #FDE047 0%, #EAB308 100%);

}



.btn-404-cta .cta-arrow {

  font-size: 18px;

  transition: transform 0.2s ease;

}



.btn-404-cta:hover .cta-arrow {

  transform: translateX(4px);

}



/* BOTTOM 404 FEATURE STRIP */

.strip-404-footer {

  background: #FFFFFF;

  border-top: 1px solid #E2E8F0;

  padding: 20px 48px;

  width: 100%;

  box-sizing: border-box;

}



.strip-404-inner {

  display: flex;

  align-items: center;

  justify-content: space-between;

  flex-wrap: wrap;

  gap: 24px;

}



.strip-features-group {

  display: flex;

  align-items: center;

  gap: 28px;

}



.strip-feature-item {

  display: flex;

  align-items: center;

  gap: 12px;

}



.strip-feat-icon {

  width: 38px;

  height: 38px;

  border-radius: 50%;

  background: #0A0F1D;

  display: grid;

  place-items: center;

  flex-shrink: 0;

  box-shadow: 0 2px 8px rgba(10, 15, 29, 0.15);

}



.strip-feat-text strong {

  display: block;

  font-size: 13.5px;

  font-weight: 800;

  color: #0A0F1D;

  line-height: 1.25;

}



.strip-feat-text span {

  display: block;

  font-size: 11.5px;

  color: #64748B;

  line-height: 1.3;

  font-weight: 500;

}



.strip-divider {

  width: 1px;

  height: 32px;

  background: #E2E8F0;

}



.slogan-handwritten-wrap {

  display: flex;

  flex-direction: column;

  align-items: flex-end;

  position: relative;

}



.slogan-handwritten-text {

  font-family: 'Caveat', 'Kalam', cursive;

  font-size: 28px;

  font-weight: 700;

  color: #0A0F1D;

  transform: rotate(-2deg);

  line-height: 1.1;

  letter-spacing: 0.01em;

}



.slogan-brush-swoosh {

  width: 210px;

  height: 12px;

  margin-top: 2px;

}



/* 404 RESPONSIVE */

@media (max-width: 1080px) {

  .header-404 {

    padding: 20px 24px;

  }



  .main-404-viewport {

    padding: 20px 24px 30px;

  }



  .grid-404 {

    grid-template-columns: 1fr;

    gap: 36px;

    max-width: 600px;

    margin: 0 auto;

  }



  .content-404-col {

    padding-left: 0;

    align-items: center;

    text-align: center;

  }



  .content-404-inner {

    max-width: 100%;

    display: flex;

    flex-direction: column;

    align-items: center;

  }



  .strip-404-footer {

    padding: 20px 24px;

  }



  .strip-404-inner {

    flex-direction: column;

    align-items: center;

    gap: 20px;

  }

}



@media (max-width: 680px) {

  .nav-404-links {

    display: none;

  }



  .strip-features-group {

    flex-direction: column;

    align-items: flex-start;

    gap: 14px;

  }



  .strip-divider {

    display: none;

  }



  .num-cone-row {

    justify-content: center;

  }

}



/* ==========================================================================

   UNIFIED BRAND PALETTE: SIGNATURE RADIANT YELLOW & OBSIDIAN (APPLIED WHOLE SITE)

   ========================================================================== */

:root {

  --brand-blue: #F59E0B !important;

  --brand-blue-hover: #D97706 !important;

  --brand-blue-subtle: #FEF9C3 !important;

  --brand-blue-border: #FDE68A !important;

  --brand-blue-dark: #B45309 !important;

  --brand-blue-glow: rgba(245, 158, 11, 0.28) !important;

  --brand-yellow: #FACC15 !important;

  --brand-yellow-hover: #F59E0B !important;

  --brand-yellow-subtle: #FEF9C3 !important;

  --brand-yellow-border: #FDE68A !important;

  --line-focus: #F59E0B !important;

  --brand-accent: #FACC15 !important;

}



/* Base Body Background */

body.site-body {

  background-color: #FAF8F5;

}



/* All Primary Buttons Across All Pages */

.btn-primary,

.nav-order-cta,

.auth-submit-btn,

.checkout-submit-btn,

.btn-proceed-pay,

.add-to-cart-btn,

.product-buy-now-btn,

.cart-checkout-cta {

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%) !important;

  color: #000000 !important;

  font-weight: 850 !important;

  border: none !important;

  box-shadow: 0 6px 20px rgba(245, 158, 11, 0.32) !important;

}



.btn-primary:hover,

.nav-order-cta:hover,

.auth-submit-btn:hover,

.checkout-submit-btn:hover,

.btn-proceed-pay:hover,

.add-to-cart-btn:hover,

.product-buy-now-btn:hover,

.cart-checkout-cta:hover {

  background: linear-gradient(180deg, #FDE047 0%, #EAB308 100%) !important;

  color: #000000 !important;

  transform: translateY(-2px) !important;

  box-shadow: 0 10px 26px rgba(245, 158, 11, 0.42) !important;

}



/* Eyebrows, Badges & Pills */

.section-eyebrow,

.live-pill,

.badge-gold,

.bento-tag.tag-blue,

.product-tag-pill {

  background: #FEF9C3 !important;

  color: #92400E !important;

  border: 1px solid #FDE68A !important;

}



/* Nav Cart Bubble */

.cart-counter-bubble {

  background: #FACC15 !important;

  color: #000000 !important;

  font-weight: 850 !important;

}



/* Ticker Live Pill */

.announcement-inner .live-pill {

  background: #FEF08A !important;

  color: #0F172A !important;

  border: 1px solid #FACC15 !important;

}



.announcement-inner .pulse-dot {

  background: #EAB308 !important;

}



.announcement-inner .ticker-cta {

  color: #FACC15 !important;

}



/* Form Inputs Focus States */

input:focus,

select:focus,

textarea:focus,

.form-input:focus {

  border-color: #F59E0B !important;

  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.16) !important;

}



/* Form Checkboxes & Radios */

input[type="checkbox"],

input[type="radio"] {

  accent-color: #F59E0B !important;

}



/* Dashboard & Account Buttons */

.profile-settings-form button[type="submit"] {

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%) !important;

  color: #000000 !important;

  font-weight: 850 !important;

  box-shadow: 0 6px 20px rgba(245, 158, 11, 0.32) !important;

}



.dashboard-nav-item.active {

  background: #FEF08A !important;

  color: #0F172A !important;

  font-weight: 800 !important;

}



/* Brand Accent Text Highlights */

.brand-accent,

.brand-name span,

.marquee-nine {

  color: #FACC15 !important;

}



/* Header & Footer Brand Logos in SVG */

.brand-mark svg rect[stroke="var(--brand-blue)"],

.brand-mark svg rect[stroke="#F59E0B"] {

  stroke: #FACC15 !important;

}



/* ==========================================================================

   OFFICIAL QRTAG9 LOGO IMAGE STYLING (WHOLE WEBSITE)

   ========================================================================== */

.brand-link,
.custom-logo-link {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  flex-shrink: 0;
  height: 36px;
}

.brand-logo-img,
.custom-logo,
.brand-link img,
.custom-logo-link img {
  height: 36px !important;
  max-height: 36px !important;
  width: auto !important;
  max-width: 170px !important;
  display: block;
  object-fit: contain;
  transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.2s ease;
}

.brand-link:hover .brand-logo-img,
.brand-link:hover img,
.custom-logo-link:hover img {
  transform: scale(1.03);
}



.brand-logo-white {

  height: 34px;

}



.footer-brand-link {

  display: inline-flex;

  align-items: center;

  margin-bottom: 16px;

}



@media (max-width: 768px) {

  .brand-logo-img {

    height: 30px;

  }

}



/* ==========================================================================

   DASHBOARD HELP & WARRANTY CLAIM TAB (LUXURY AUTOMOTIVE STYLING)

   ========================================================================== */

.warranty-status-pill {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  background: #FEF9C3;

  color: #92400E;

  border: 1px solid #FDE68A;

  padding: 6px 14px;

  border-radius: 9999px;

  font-size: 12.5px;

  font-weight: 800;

}



.warranty-status-pill .pulse-dot {

  width: 8px;

  height: 8px;

  border-radius: 50%;

  background: #EAB308;

  box-shadow: 0 0 8px rgba(234, 179, 8, 0.6);

}



.warranty-active-banner {

  background: linear-gradient(135deg, #0A0F1D 0%, #1E293B 100%);

  border-radius: 20px;

  padding: 24px 28px;

  color: #FFFFFF;

  display: flex;

  align-items: flex-start;

  gap: 20px;

  margin-bottom: 24px;

  box-shadow: 0 8px 24px rgba(10, 15, 29, 0.12);

  border: 1px solid rgba(255, 255, 255, 0.08);

}



.banner-icon-circle {

  width: 48px;

  height: 48px;

  border-radius: 14px;

  background: rgba(250, 204, 21, 0.15);

  border: 1.5px solid rgba(250, 204, 21, 0.35);

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.banner-text {

  flex: 1;

}



.banner-title-row {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 12px;

  flex-wrap: wrap;

  margin-bottom: 6px;

}



.banner-title-row h4 {

  font-size: 16px;

  font-weight: 850;

  color: #FFFFFF;

  margin: 0;

}



.badge-coverage {

  background: rgba(250, 204, 21, 0.2);

  color: #FACC15;

  border: 1px solid rgba(250, 204, 21, 0.4);

  padding: 3px 10px;

  border-radius: 9999px;

  font-size: 11px;

  font-weight: 800;

}



.banner-text p {

  font-size: 13.5px;

  color: #CBD5E1;

  margin: 0;

  line-height: 1.5;

}



.banner-text p strong {

  color: #FACC15;

}



/* 3 BENTO CARDS */

.support-cards-grid {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 20px;

  margin-bottom: 28px;

}



.support-card {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 22px;

  padding: 24px;

  display: flex;

  flex-direction: column;

  justify-content: space-between;

  box-shadow: 0 4px 18px rgba(15, 23, 42, 0.04);

  transition: all 0.24s cubic-bezier(0.16, 1, 0.3, 1);

}



.support-card:hover {

  transform: translateY(-4px);

  border-color: #F59E0B;

  box-shadow: 0 12px 30px rgba(245, 158, 11, 0.12);

}



.support-card-top {

  display: flex;

  align-items: center;

  justify-content: space-between;

  margin-bottom: 16px;

}



.sup-icon-circle {

  width: 44px;

  height: 44px;

  border-radius: 14px;

  display: grid;

  place-items: center;

}



.icon-circle-green {

  background: #ECFDF5;

  border: 1px solid #A7F3D0;

}



.icon-circle-gold {

  background: #FEF9C3;

  border: 1px solid #FDE68A;

}



.icon-circle-slate {

  background: #F1F5F9;

  border: 1px solid #CBD5E1;

}



.card-mini-badge {

  font-size: 11px;

  font-weight: 800;

  padding: 4px 10px;

  border-radius: 9999px;

}



.badge-green {

  background: #ECFDF5;

  color: #065F46;

  border: 1px solid #A7F3D0;

}



.badge-gold {

  background: #FEF9C3;

  color: #92400E;

  border: 1px solid #FDE68A;

}



.badge-slate {

  background: #F1F5F9;

  color: #334155;

  border: 1px solid #CBD5E1;

}



.support-card h4 {

  font-size: 16.5px;

  font-weight: 850;

  color: #0F172A;

  margin: 0 0 8px;

  line-height: 1.25;

}



.support-card p {

  font-size: 13px;

  color: #64748B;

  line-height: 1.55;

  margin: 0 0 20px;

  flex: 1;

}



.support-card-bottom {

  margin-top: auto;

}



.btn-support-whatsapp {

  width: 100%;

  padding: 12px 18px;

  border-radius: 9999px;

  background: #25D366;

  color: #FFFFFF;

  font-size: 13.5px;

  font-weight: 800;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  text-decoration: none;

  box-shadow: 0 4px 14px rgba(37, 211, 102, 0.28);

  transition: all 0.2s ease;

  box-sizing: border-box;

}



.btn-support-whatsapp:hover {

  background: #20BD5A;

  transform: translateY(-2px);

  box-shadow: 0 6px 18px rgba(37, 211, 102, 0.38);

}



.btn-support-gold {

  width: 100%;

  padding: 12px 18px;

  border-radius: 9999px;

  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%);

  color: #000000;

  font-size: 13.5px;

  font-weight: 850;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  border: none;

  cursor: pointer;

  box-shadow: 0 4px 14px rgba(245, 158, 11, 0.28);

  transition: all 0.2s ease;

  box-sizing: border-box;

}



.btn-support-gold:hover {

  background: linear-gradient(180deg, #FDE047 0%, #EAB308 100%);

  transform: translateY(-2px);

  box-shadow: 0 8px 20px rgba(245, 158, 11, 0.38);

}



.btn-support-slate {

  width: 100%;

  padding: 12px 18px;

  border-radius: 9999px;

  background: #0F172A;

  color: #FFFFFF;

  font-size: 13.5px;

  font-weight: 800;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  border: none;

  cursor: pointer;

  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.15);

  transition: all 0.2s ease;

  box-sizing: border-box;

}



.btn-support-slate:hover {

  background: #1E293B;

  transform: translateY(-2px);

  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.25);

}



/* FAQ ACCORDION */

.support-faq-box {

  background: #FFFFFF;

  border: 1.5px solid #E2E8F0;

  border-radius: 20px;

  padding: 24px 28px;

  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.03);

}



.faq-box-title {

  font-size: 16px;

  font-weight: 850;

  color: #0F172A;

  margin: 0 0 16px;

}



.faq-items-list {

  display: flex;

  flex-direction: column;

  gap: 12px;

}



.support-faq-item {

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  border-radius: 12px;

  padding: 14px 18px;

  transition: background 0.2s ease;

}



.support-faq-item[open] {

  background: #FFFBEB;

  border-color: #FDE68A;

}



.support-faq-item summary {

  font-size: 14px;

  font-weight: 750;

  color: #0F172A;

  cursor: pointer;

  outline: none;

  list-style: none;

  display: flex;

  align-items: center;

  justify-content: space-between;

}



.support-faq-item summary::-webkit-details-marker {

  display: none;

}



.support-faq-item summary::after {

  content: '+';

  font-size: 18px;

  font-weight: 700;

  color: #F59E0B;

  margin-left: 10px;

}



.support-faq-item[open] summary::after {

  content: '−';

}



.support-faq-item p {

  font-size: 13px;

  color: #475569;

  line-height: 1.55;

  margin: 10px 0 0;

}



/* SIDEBAR TABS POLISH */

.dashboard-tab-link {

  width: 100%;

  display: flex;

  align-items: center;

  gap: 12px;

  padding: 14px 18px;

  border-radius: 14px;

  font-size: 14px;

  font-weight: 700;

  color: #475569;

  background: transparent;

  cursor: pointer;

  transition: all 0.2s ease;

  border: none;

  text-align: left;

}



.dashboard-tab-link:hover {

  background: #FEF9C3;

  color: #0F172A;

}



.dashboard-tab-link.active {

  background: #0A0F1D !important;

  color: #FFFFFF !important;

  font-weight: 850 !important;

  box-shadow: 0 4px 16px rgba(10, 15, 29, 0.15);

}



.dashboard-tab-link.active svg {

  stroke: #FACC15 !important;

}



@media (max-width: 900px) {

  .support-cards-grid {

    grid-template-columns: 1fr;

    gap: 16px;

  }

}



/* ==========================================================================

   ORDER CONFIRMATION (THANK YOU) PAGE LUXURY BENTO STYLING

   ========================================================================== */

.thankyou-page-wrapper {

  padding: 40px 0 90px;

  background: #F8FAFC;

}



.thankyou-container {

  max-width: 1080px;

  margin: 0 auto;

}



.thankyou-hero-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 24px;

  padding: 44px 36px;

  text-align: center;

  margin-bottom: 32px;

  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.03);

  position: relative;

}



.success-icon-bubble {

  width: 72px;

  height: 72px;

  border-radius: 50%;

  background: #DCFCE7;

  border: 2.5px solid #86EFAC;

  display: grid;

  place-items: center;

  margin: 0 auto 16px;

  box-shadow: 0 6px 20px rgba(22, 196, 140, 0.25);

}



.thankyou-status-pill {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  background: #DCFCE7;

  color: #166534;

  border: 1px solid #BBF7D0;

  font-size: 11.5px;

  font-weight: 850;

  padding: 5px 14px;

  border-radius: 9999px;

  letter-spacing: 0.05em;

  margin-bottom: 12px;

}



.status-pulse-dot {

  width: 7px;

  height: 7px;

  border-radius: 50%;

  background: #16A34A;

  box-shadow: 0 0 8px rgba(22, 163, 74, 0.7);

}



.thankyou-title {

  font-size: clamp(28px, 4vw, 40px);

  font-weight: 900;

  color: #0F172A;

  letter-spacing: -0.02em;

  margin: 0 0 10px;

}



.thankyou-sub {

  font-size: 15.5px;

  color: #64748B;

  max-width: 680px;

  margin: 0 auto 22px;

  line-height: 1.6;

}



.order-id-strip {

  display: inline-flex;

  align-items: center;

  gap: 12px;

  background: #0A0F1D;

  color: #FFFFFF;

  padding: 10px 20px;

  border-radius: 14px;

  box-shadow: 0 4px 16px rgba(10, 15, 29, 0.15);

}



.order-id-label {

  font-size: 13px;

  color: #94A3B8;

  font-weight: 600;

}



.order-id-code {

  font-size: 15px;

  color: #FACC15;

  font-family: 'JetBrains Mono', monospace;

  font-weight: 800;

  letter-spacing: 0.02em;

}



.btn-copy-order {

  display: inline-flex;

  align-items: center;

  gap: 6px;

  background: rgba(255, 255, 255, 0.12);

  color: #FFFFFF;

  border: 1px solid rgba(255, 255, 255, 0.2);

  padding: 5px 10px;

  border-radius: 8px;

  font-size: 12px;

  font-weight: 750;

  cursor: pointer;

  transition: all 0.2s ease;

}



.btn-copy-order:hover {

  background: rgba(255, 255, 255, 0.22);

}



/* 2-COLUMN BENTO GRID */

.thankyou-details-grid {

  display: grid;

  grid-template-columns: 1.15fr 0.85fr;

  gap: 28px;

  margin-bottom: 32px;

  align-items: flex-start;

}



.thankyou-card {

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 24px;

  padding: 32px;

  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.03);

}



.card-title-row {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 12px;

  margin-bottom: 24px;

  padding-bottom: 18px;

  border-bottom: 1px solid #F1F5F9;

}



.card-title-with-icon {

  display: flex;

  align-items: center;

  gap: 14px;

}



.title-icon-circle {

  width: 44px;

  height: 44px;

  border-radius: 12px;

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.title-icon-circle.gold {

  background: #FEF3C7;

  border: 1.5px solid #FDE68A;

}



.title-icon-circle.slate {

  background: #F1F5F9;

  border: 1.5px solid #CBD5E1;

}



.card-title-with-icon h3 {

  font-size: 19px;

  font-weight: 850;

  color: #0F172A;

  margin: 0;

  letter-spacing: -0.01em;

}



.card-subtitle {

  font-size: 12.5px;

  color: #64748B;

  margin: 2px 0 0;

}



.delivery-badge-pill {

  font-size: 11.5px;

  font-weight: 800;

  padding: 4px 12px;

  border-radius: 9999px;

  background: #FEF9C3;

  color: #92400E;

  border: 1px solid #FDE68A;

}



.paid-badge-pill {

  font-size: 11.5px;

  font-weight: 800;

  padding: 4px 12px;

  border-radius: 9999px;

  background: #DCFCE7;

  color: #166534;

  border: 1px solid #BBF7D0;

}



/* STEPPER TIMELINE */

.order-timeline {

  display: flex;

  flex-direction: column;

  position: relative;

  padding-left: 6px;

}



.timeline-step {

  display: flex;

  align-items: flex-start;

  gap: 18px;

  position: relative;

  padding-bottom: 26px;

}



.timeline-step::before {

  content: '';

  position: absolute;

  left: 15px;

  top: 32px;

  bottom: 0;

  width: 2px;

  background: #E2E8F0;

}



.timeline-step.completed::before {

  background: #16A34A;

}



.timeline-step:last-child {

  padding-bottom: 0;

}



.timeline-step:last-child::before {

  display: none;

}



.timeline-marker {

  width: 32px;

  height: 32px;

  border-radius: 50%;

  display: grid;

  place-items: center;

  flex-shrink: 0;

  position: relative;

  z-index: 2;

  font-size: 13px;

}



.timeline-step.completed .timeline-marker {

  background: #16A34A;

  color: #FFFFFF;

  box-shadow: 0 0 10px rgba(22, 163, 74, 0.4);

}



.timeline-step.in-progress .timeline-marker {

  background: #FEF9C3;

  border: 2.5px solid #F59E0B;

}



.pulse-marker-core {

  width: 10px;

  height: 10px;

  border-radius: 50%;

  background: #F59E0B;

  box-shadow: 0 0 8px rgba(245, 158, 11, 0.8);

}



.timeline-step.pending .timeline-marker {

  background: #F8FAFC;

  border: 2px solid #CBD5E1;

}



.timeline-content {

  flex: 1;

}



.timeline-header {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 10px;

  margin-bottom: 3px;

}



.timeline-header strong {

  font-size: 14.5px;

  color: #0F172A;

  font-weight: 800;

}



.step-time-badge {

  font-size: 11px;

  font-weight: 750;

  color: #64748B;

  background: #F1F5F9;

  padding: 2px 8px;

  border-radius: 6px;

}



.step-time-badge.active {

  background: #FEF3C7;

  color: #92400E;

  border: 1px solid #FDE68A;

}



.timeline-content p {

  font-size: 12.5px;

  color: #64748B;

  margin: 0;

  line-height: 1.5;

}



/* WHATSAPP NOTIFICATION STRIP */

.whatsapp-alert-box {

  margin-top: 24px;

  background: #F0FDF4;

  border: 1.5px solid #BBF7D0;

  border-radius: 16px;

  padding: 18px;

  display: flex;

  align-items: flex-start;

  gap: 14px;

}



.wa-icon-circle {

  width: 40px;

  height: 40px;

  border-radius: 12px;

  background: rgba(37, 211, 102, 0.15);

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.wa-text strong {

  display: block;

  font-size: 13.5px;

  font-weight: 800;

  color: #166534;

  margin-bottom: 3px;

}



.wa-text p {

  font-size: 12.5px;

  color: #15803D;

  margin: 0;

  line-height: 1.5;

}



/* RECEIPT ITEMS & BREAKDOWN */

.thankyou-items-box {

  background: #F8FAFC;

  border: 1px solid #E2E8F0;

  border-radius: 14px;

  padding: 14px 16px;

  margin-bottom: 18px;

}



.receipt-item-row {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 12px;

}



.receipt-item-left {

  display: flex;

  align-items: center;

  gap: 12px;

}



.receipt-item-thumb {

  width: 44px;

  height: 44px;

  border-radius: 10px;

  object-fit: cover;

  border: 1px solid #E2E8F0;

}



.receipt-item-meta strong {

  display: block;

  font-size: 13px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 2px;

}



.receipt-item-meta span {

  font-size: 12px;

  color: #64748B;

}



.receipt-item-meta code {

  background: #FEF3C7;

  color: #92400E;

  padding: 1px 6px;

  border-radius: 4px;

  font-weight: 750;

  font-family: inherit;

}



.receipt-item-price {

  font-size: 15px;

  font-weight: 850;

  color: #0F172A;

}



.receipt-breakdown {

  display: flex;

  flex-direction: column;

  gap: 10px;

  margin-bottom: 24px;

}



.breakdown-row {

  display: flex;

  align-items: center;

  justify-content: space-between;

  font-size: 13.5px;

  color: #475569;

}



.badge-free-shipping {

  background: #DCFCE7;

  color: #166534;

  font-weight: 800;

  font-size: 11px;

  padding: 2px 8px;

  border-radius: 6px;

  border: 1px solid #BBF7D0;

}



.text-success-bold {

  color: #16A34A;

  font-weight: 750;

  font-size: 12.5px;

}



.breakdown-divider {

  height: 1px;

  background: #E2E8F0;

  margin: 6px 0;

}



.grand-row {

  font-size: 16px;

  color: #0F172A;

  font-weight: 850;

  padding-top: 4px;

}



.grand-amount {

  font-size: 20px;

  font-weight: 900;

  color: #0F172A;

}



/* ACTIONS */

.thankyou-next-actions {

  display: flex;

  flex-direction: column;

  gap: 10px;

}



.thankyou-main-btn {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  padding: 14px 20px;

  font-size: 14.5px;

  font-weight: 850;

  color: #0A0F1D;

  background: linear-gradient(135deg, #FACC15 0%, #F59E0B 100%);

  border: none;

  border-radius: 14px;

  text-decoration: none;

  box-shadow: 0 4px 16px rgba(245, 158, 11, 0.25);

  transition: all 0.2s ease;

}



.thankyou-main-btn:hover {

  transform: translateY(-2px);

  box-shadow: 0 8px 22px rgba(245, 158, 11, 0.35);

  background: linear-gradient(135deg, #FDE047 0%, #F59E0B 100%);

}



.btn-invoice-dl {

  width: 100%;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 8px;

  background: #0A0F1D;

  color: #FFFFFF;

  padding: 13px 18px;

  border-radius: 14px;

  border: none;

  font-size: 13.5px;

  font-weight: 750;

  cursor: pointer;

  transition: all 0.2s ease;

}



.btn-invoice-dl:hover {

  background: #1E293B;

  transform: translateY(-1px);

}



.reorder-link {

  display: block;

  text-align: center;

  color: #D97706;

  font-size: 13px;

  font-weight: 800;

  text-decoration: none;

  margin-top: 6px;

  transition: all 0.2s ease;

}



.reorder-link:hover {

  color: #B45309;

  text-decoration: underline;

}



/* TRUST STRIP */

.thankyou-trust-strip {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 20px;

  background: #FFFFFF;

  border: 1px solid #E2E8F0;

  border-radius: 20px;

  padding: 24px;

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.02);

}



.trust-pillar {

  display: flex;

  align-items: flex-start;

  gap: 14px;

}



.trust-icon {

  font-size: 24px;

  flex-shrink: 0;

}



.trust-pillar strong {

  display: block;

  font-size: 14px;

  font-weight: 800;

  color: #0F172A;

  margin-bottom: 3px;

}



.trust-pillar p {

  font-size: 12.5px;

  color: #64748B;

  margin: 0;

  line-height: 1.5;

}



@media (max-width: 900px) {

  .thankyou-details-grid {

    grid-template-columns: 1fr;

  }



  .thankyou-trust-strip {

    grid-template-columns: 1fr;

    gap: 16px;

  }



  .thankyou-hero-card {

    padding: 32px 20px;

  }

}



/* ==========================================================================

   ACTIVATION GUARANTEE BANNERS (NO VEHICLE NUMBER DURING ORDER)

   ========================================================================== */

.activation-guarantee-pill-bar {

  display: flex;

  align-items: flex-start;

  gap: 14px;

  background: #FFFBEB;

  border: 1.5px solid #FDE68A;

  border-radius: 16px;

  padding: 16px 20px;

  margin-bottom: 24px;

}



.act-pill-icon {

  width: 38px;

  height: 38px;

  border-radius: 10px;

  background: rgba(245, 158, 11, 0.15);

  display: grid;

  place-items: center;

  flex-shrink: 0;

}



.act-pill-text strong {

  display: block;

  font-size: 14px;

  font-weight: 850;

  color: #92400E;

  margin-bottom: 3px;

}



.act-pill-text p {

  font-size: 13px;

  color: #78350F;

  margin: 0;

  line-height: 1.5;

}



.checkout-activation-notice {

  display: flex;

  align-items: flex-start;

  gap: 14px;

  background: #F0FDF4;

  border: 1.5px solid #BBF7D0;

  border-radius: 16px;

  padding: 18px 20px;

  margin-top: 20px;

}



.act-notice-icon {

  font-size: 24px;

  flex-shrink: 0;

}



.act-notice-text strong {

  display: block;

  font-size: 14px;

  font-weight: 850;

  color: #166534;

  margin-bottom: 3px;

}



.act-notice-text p {

  font-size: 13px;

  color: #15803D;

  margin: 0;

  line-height: 1.5;

}



/* ==========================================================================

   GLOBAL MOBILE VIEWPORT & HEADER FIXES

   ========================================================================== */

@media (max-width: 768px) {

  html {

    overflow-x: hidden;

    overflow-x: clip !important;

    width: 100% !important;

    max-width: 100vw !important;

  }

  body {

    overflow-x: clip !important;

    overflow-y: visible !important;

    width: 100% !important;

    max-width: 100vw !important;

  }



  .site-header {

    width: 100% !important;

  }



  .nav-container {

    padding: 10px 16px !important;

    gap: 12px !important;

    width: 100% !important;

  }



  .brand-logo-img {

    height: 32px !important;

    width: auto !important;

  }



  .nav-actions {

    display: flex !important;

    align-items: center !important;

    gap: 10px !important;

  }



  .nav-cart-btn {

    padding: 6px 12px !important;

    font-size: 12.5px !important;

    gap: 6px !important;

  }



  /* ORDER NOW BUTTON COMPLETELY HIDDEN ON MOBILE HEADER */

  .site-header .nav-order-cta,

  .nav-order-cta {

    display: none !important;

  }



  .hamburger-btn {

    display: flex !important;

    flex-direction: column !important;

    justify-content: center !important;

    align-items: center !important;

    gap: 4px !important;

    width: 38px !important;

    height: 38px !important;

    padding: 0 !important;

    border-radius: 10px !important;

    background: #F8FAFC !important;

    border: 1px solid #E2E8F0 !important;

    cursor: pointer !important;

    flex-shrink: 0 !important;

  }



  .hamburger-btn span {

    display: block !important;

    width: 18px !important;

    height: 2px !important;

    background: #0A0F1D !important;

    border-radius: 2px !important;

  }



  .site-header .primary-nav.nav-open,

  .primary-nav.nav-open {

    display: flex !important;

    position: absolute !important;

    top: 100% !important;

    left: 0 !important;

    right: 0 !important;

    background: #FFFFFF !important;

    flex-direction: column !important;

    padding: 20px 24px !important;

    gap: 16px !important;

    border-bottom: 1px solid #E2E8F0 !important;

    box-shadow: 0 10px 25px rgba(10, 15, 29, 0.08) !important;

    z-index: 1000 !important;

  }



  .top-announcement {

    padding: 6px 12px !important;

    font-size: 11px !important;

    overflow: hidden !important;

  }



  .announcement-inner {

    gap: 6px !important;

    text-align: center !important;

    font-size: 11px !important;

  }



  .hero-section {

    padding: 40px 0 60px !important;

  }



  .hero-headline {

    font-size: clamp(26px, 7.5vw, 36px) !important;

    line-height: 1.15 !important;

    word-break: break-word !important;

    overflow-wrap: break-word !important;

  }



  .hero-lead {

    font-size: 15px !important;

    line-height: 1.5 !important;

    padding: 0 8px !important;

  }

}





@media (max-width: 600px) {

  .container {

    width: 100% !important;

    padding-inline: 16px !important;

  }



  .hero-status-pill {

    font-size: 11px !important;

    padding: 6px 12px !important;

    border-radius: 12px !important;

  }



  .announcement-inner {

    flex-direction: column !important;

    gap: 3px !important;

    text-align: center !important;

  }

}





/* ==========================================================================

   MOBILE AMBIENT GLOW & OVERFLOW PREVENTATIVE FIX

   ========================================================================== */

@media (max-width: 768px) {

  .brand-gradient-orb,

  .flagship-ambient-glow,

  .video-ambient-glow,

  .unboxing-ambient-glow,

  .ambient-glow-orb {

    display: none !important;

  }



  section,

  main,

  .hero-section,

  .flagship-section,

  .video-story-section,

  .unboxing-experience-section {

    overflow-x: clip !important;

    overflow-y: visible !important;

    max-width: 100vw !important;

  }

}





/* ==========================================================================

   CART & CHECKOUT MOBILE RESPONSIVE PERFECTION (MAX-WIDTH: 768PX)

   ========================================================================== */

@media (max-width: 768px) {

  .cart-page-wrapper {

    padding: 20px 0 60px !important;

    overflow-x: clip !important;

    overflow-y: visible !important;

    width: 100% !important;

  }



  .cart-layout-grid {

    grid-template-columns: 1fr !important;

    gap: 20px !important;

    width: 100% !important;

    min-width: 0 !important;

  }



  .cart-items-column,

  .cart-summary-column {

    width: 100% !important;

    min-width: 0 !important;

    max-width: 100% !important;

    box-sizing: border-box !important;

  }



  .cart-table-card {

    padding: 16px !important;

    border-radius: 18px !important;

    border: 1px solid #E2E8F0 !important;

    box-shadow: 0 4px 16px rgba(10, 15, 29, 0.04) !important;

    overflow: hidden !important;

    width: 100% !important;

    min-width: 0 !important;

    max-width: 100% !important;

    box-sizing: border-box !important;

  }



  .table-responsive {

    overflow: visible !important;

  }



  .cart-table,

  .cart-table tbody {

    display: block !important;

    width: 100% !important;

  }



  .cart-table thead {

    display: none !important;

  }



  .cart-item-row {

    display: block !important;

    position: relative !important;

    background: #FFFFFF !important;

    border: 1.5px solid #F1F5F9 !important;

    border-radius: 16px !important;

    padding: 16px !important;

    margin-bottom: 14px !important;

    box-shadow: 0 2px 8px rgba(10, 15, 29, 0.04) !important;

    box-sizing: border-box !important;

    width: 100% !important;

  }



  .cart-item-row:last-child {

    margin-bottom: 0 !important;

  }



  .cart-item-row::after {

    content: '' !important;

    display: table !important;

    clear: both !important;

  }



  /* TD 1: Product Thumbnail & Details */

  .cart-item-row td:nth-child(1) {

    display: block !important;

    width: 100% !important;

    padding: 0 0 14px 0 !important;

    border: none !important;

    box-sizing: border-box !important;

  }



  .cart-item-meta {

    display: flex !important;

    align-items: flex-start !important;

    gap: 12px !important;

    width: 100% !important;

    padding-right: 36px !important;
    /* reserve room for remove button */

    box-sizing: border-box !important;

  }



  .cart-item-thumb {

    width: 60px !important;

    height: 60px !important;

    min-width: 60px !important;

    border-radius: 12px !important;

    overflow: hidden !important;

    border: 1.5px solid #E2E8F0 !important;

    background: #0A0F1D !important;

    flex-shrink: 0 !important;

  }



  .cart-item-thumb img {

    width: 100% !important;

    height: 100% !important;

    object-fit: cover !important;

  }



  .cart-item-details {

    display: flex !important;

    flex-direction: column !important;

    gap: 5px !important;

    min-width: 0 !important;

    flex: 1 !important;

  }



  .cart-item-details strong {

    font-size: 13.5px !important;

    font-weight: 800 !important;

    color: #0A0F1D !important;

    line-height: 1.35 !important;

    word-break: break-word !important;

    overflow-wrap: break-word !important;

  }



  .cart-item-badge {

    display: inline-block !important;

    font-size: 10px !important;

    font-weight: 750 !important;

    padding: 3px 8px !important;

    border-radius: 6px !important;

    background: #FEF08A !important;

    color: #854D0E !important;

    border: 1px solid #FDE68A !important;

    width: fit-content !important;

    max-width: 100% !important;

    white-space: normal !important;

    line-height: 1.25 !important;

    word-break: break-word !important;

  }



  /* TD 2: Base unit price - hidden on mobile */

  .cart-item-row td:nth-child(2) {

    display: none !important;

  }



  /* TD 3: Stepper bottom-left */

  .cart-item-row td:nth-child(3) {

    display: inline-flex !important;

    float: left !important;

    width: auto !important;

    padding: 0 !important;

    border: none !important;

  }



  .quantity-stepper {

    display: inline-flex !important;

    align-items: center !important;

    background: #F8FAFC !important;

    border: 1.5px solid #E2E8F0 !important;

    border-radius: 9999px !important;

    padding: 2px 6px !important;

    gap: 4px !important;

  }



  .quantity-btn {

    width: 28px !important;

    height: 28px !important;

    border-radius: 50% !important;

    font-size: 15px !important;

    font-weight: 800 !important;

    background: transparent !important;

    cursor: pointer !important;

    display: grid !important;

    place-items: center !important;

    color: #0F172A !important;

    border: none !important;

    padding: 0 !important;

    line-height: 1 !important;

  }



  .quantity-btn:hover {

    background: #E2E8F0 !important;

  }



  .quantity-display {

    min-width: 24px !important;

    text-align: center !important;

    font-size: 14px !important;

    font-weight: 800 !important;

    color: #0A0F1D !important;

  }



  /* TD 4: Subtotal price bottom-right */

  .cart-item-row td:nth-child(4) {

    display: inline-block !important;

    float: right !important;

    width: auto !important;

    text-align: right !important;

    line-height: 34px !important;

    padding: 0 !important;

    border: none !important;

  }



  .cart-item-row td:nth-child(4) strong {

    font-size: 17px !important;

    font-weight: 900 !important;

    color: #0A0F1D !important;

  }



  /* TD 5: Remove button top-right */

  .cart-item-row td:nth-child(5) {

    position: absolute !important;

    top: 14px !important;

    right: 14px !important;

    width: auto !important;

    padding: 0 !important;

    border: none !important;

    display: block !important;

    margin: 0 !important;

  }



  .cart-item-remove {

    width: 28px !important;

    height: 28px !important;

    border-radius: 50% !important;

    background: #F8FAFC !important;

    border: 1px solid #E2E8F0 !important;

    color: #64748B !important;

    font-size: 18px !important;

    display: grid !important;

    place-items: center !important;

    cursor: pointer !important;

    transition: all 0.2s ease !important;

    padding: 0 !important;

    line-height: 1 !important;

  }



  .cart-item-remove:hover {

    background: #FEE2E2 !important;

    color: #DC2626 !important;

    border-color: #FCA5A5 !important;

  }



  /* Coupon box & footer */

  .cart-table-footer {

    flex-direction: column !important;

    gap: 14px !important;

    padding-top: 16px !important;

    align-items: stretch !important;

  }



  .coupon-apply-box {

    width: 100% !important;

    display: flex !important;

    flex-direction: column !important;

    gap: 8px !important;

  }



  .coupon-field {

    width: 100% !important;

    max-width: 100% !important;

    box-sizing: border-box !important;

  }



  .coupon-apply-box .btn {

    width: 100% !important;

    justify-content: center !important;

  }



  .cart-assurances-row {

    grid-template-columns: 1fr !important;

    width: 100% !important;

    min-width: 0 !important;

    gap: 12px !important;

  }



  .cart-assurance-item {

    width: 100% !important;

    min-width: 0 !important;

    box-sizing: border-box !important;

    padding: 14px 16px !important;

  }



  .checkout-ssl-chip {

    display: none !important;

  }



  .free-shipping-card {

    padding: 14px 16px !important;

    border-radius: 16px !important;

    margin-bottom: 18px !important;

  }



  .shipping-meter-header {

    flex-wrap: wrap !important;

    gap: 6px !important;

    font-size: 12.5px !important;

  }



  .meter-badge {

    margin-left: 0 !important;

    font-size: 10.5px !important;

    padding: 3px 8px !important;

  }



  /* Top announcement ticker in subpages */

  .top-announcement-ticker {

    padding: 6px 12px !important;

    font-size: 11px !important;

    overflow: hidden !important;

  }



  .top-announcement-ticker .ticker-inner {

    flex-direction: column !important;

    gap: 3px !important;

    text-align: center !important;

  }



  .top-announcement-ticker .ticker-text {

    white-space: normal !important;

    font-size: 11px !important;

    text-align: center !important;

  }



  .top-announcement-ticker .ticker-cta {

    font-size: 11px !important;

  }

}



/* ==========================================================================

   DYNAMIC STICKY HEADER (SCROLL DOWN = VISIBLE, SCROLL UP = HIDDEN)

   Works across Desktop, Tablet & Mobile

   ========================================================================== */

.site-header {

  position: sticky !important;

  top: 0 !important;

  left: 0 !important;

  right: 0 !important;

  width: 100% !important;

  z-index: 1000 !important;

  transform: translateY(0);

  transition: transform 0.38s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease, background 0.3s ease;

  will-change: transform;

}



.site-header.header-hidden {

  transform: translateY(-100%) !important;

  box-shadow: none !important;

  pointer-events: none !important;

}



.site-header.header-sticky-visible {

  transform: translateY(0) !important;

  box-shadow: 0 4px 20px rgba(10, 15, 29, 0.08) !important;

  pointer-events: auto !important;

}



/* ==========================================================================

   VIDEO EXPLAINER VS VIRAL REELS DISPLAY PERFECTION

   ========================================================================== */

.viral-reels-grid[style*="display: none"],

.viral-reels-grid.is-hidden {

  display: none !important;

}



.featured-video-stage[style*="display: none"],

.featured-video-stage.is-hidden {

  display: none !important;

}



@media (max-width: 768px) {

  .theater-bottom-bar {

    flex-direction: column !important;

    align-items: stretch !important;

    gap: 12px !important;

    padding: 14px 16px !important;

  }



  .theater-info-text h3,

  .theater-meta strong {

    font-size: 14px !important;

    line-height: 1.35 !important;

    display: block !important;

  }



  .theater-info-text p,

  .theater-meta p {

    font-size: 11.5px !important;

    line-height: 1.4 !important;

  }



  .yt-id-updater-box {

    width: 100% !important;

    flex-direction: column !important;

    align-items: stretch !important;

    gap: 8px !important;

    margin-top: 4px !important;

  }



  .updater-input-group {

    width: 100% !important;

    display: flex !important;

    gap: 8px !important;

  }



  .yt-input {

    flex: 1 !important;

    width: 100% !important;

    min-width: 0 !important;

    padding: 8px 12px !important;

    font-size: 12px !important;

  }



  .updater-input-group .btn {

    white-space: nowrap !important;

    flex-shrink: 0 !important;

    padding: 8px 14px !important;

  }

}



/* ==========================================================================

   COMPARISON TABLE ZERO-OVERLAP & SMOOTH COLUMN NAVIGATION

   ========================================================================== */

.table-responsive-container {

  overflow-x: auto !important;

  -webkit-overflow-scrolling: touch !important;

  touch-action: pan-x pan-y !important;

  overscroll-behavior-x: contain !important;

}



.brand-compare-table {

  touch-action: pan-x pan-y !important;

  user-select: none !important;

}



/* Clean divider and distinct shadow on sticky first column */

.brand-compare-table th:first-child,

.brand-compare-table td:first-child {

  position: sticky !important;

  left: 0 !important;

  z-index: 5 !important;

  background: #FFFFFF !important;

  border-right: 2px solid #E2E8F0 !important;

  box-shadow: 4px 0 12px -2px rgba(0, 0, 0, 0.1) !important;

  touch-action: pan-x pan-y !important;

}



.brand-compare-table th:first-child {

  background: #F8FAFC !important;

  z-index: 6 !important;

}



/* Generous left padding on comparison columns so letters are NEVER clipped */

@media (max-width: 768px) {

  .brand-compare-table {

    min-width: 580px !important;

  }



  .brand-compare-table th:not(:first-child),

  .brand-compare-table td:not(:first-child) {

    padding-left: 20px !important;

    padding-right: 16px !important;

    min-width: 145px !important;

  }

}



.table-swipe-hint {

  /* display: flex !important; */

  align-items: center !important;

  justify-content: space-between !important;

  gap: 12px !important;

  font-size: 12px !important;

  font-weight: 750 !important;

  color: #B45309 !important;

  background: #FFFBEB !important;

  border: 1.5px solid #FDE68A !important;

  padding: 8px 12px !important;

  border-radius: 12px !important;

  margin-bottom: 14px !important;

}



.swipe-hint-content {

  display: inline-flex !important;

  align-items: center !important;

  gap: 8px !important;

  justify-content: center !important;

  flex: 1 !important;

}



.table-scroll-btn {

  width: 32px !important;

  height: 32px !important;

  min-width: 32px !important;

  border-radius: 50% !important;

  background: #FFFFFF !important;

  border: 1.5px solid #F59E0B !important;

  color: #B45309 !important;

  font-size: 20px !important;

  font-weight: 900 !important;

  display: grid !important;

  place-items: center !important;

  cursor: pointer !important;

  line-height: 1 !important;

  padding: 0 !important;

  box-shadow: 0 2px 6px rgba(180, 83, 9, 0.18) !important;

  transition: all 0.2s ease !important;

}



.table-scroll-btn:hover,

.table-scroll-btn:active {

  background: #FEF3C7 !important;

  transform: scale(1.08) !important;

}



/* ==========================================================================

   STEP 1 PHONE DISPLAY CANVAS OVERLAP FIX

   ========================================================================== */

.phone-display-canvas {

  justify-content: flex-start !important;

  padding: 14px 12px !important;

  gap: 8px !important;

}



.phone-screen-banner {

  position: static !important;

  display: inline-flex !important;

  align-items: center !important;

  gap: 6px !important;

  font-family: var(--font-mono) !important;

  font-size: 10px !important;

  font-weight: 700 !important;

  color: var(--brand-emerald-dark) !important;

  background: rgba(0, 196, 140, 0.12) !important;

  border: 1px solid rgba(0, 196, 140, 0.25) !important;

  padding: 4px 10px !important;

  border-radius: var(--radius-pill) !important;

  flex-shrink: 0 !important;

  margin-bottom: 2px !important;

}



.phone-order-box {

  margin-top: 0 !important;

  padding: 14px 12px !important;

  gap: 10px !important;

}



/* ==========================================================================

   HERO SPACE REDUCTION ON MOBILE

   ========================================================================== */

@media (max-width: 768px) {

  .hero-section {

    padding: 18px 0 24px !important;

  }



  .hero-header-box {

    margin: 0 auto 12px !important;

  }



  .hero-status-pill {

    margin-bottom: 10px !important;

    font-size: 11px !important;

    padding: 5px 12px !important;

  }



  .hero-headline {

    margin-bottom: 8px !important;

    font-size: clamp(23px, 6.5vw, 29px) !important;

    line-height: 1.15 !important;

  }



  .hero-lead {

    margin-bottom: 12px !important;

    font-size: 13px !important;

    line-height: 1.4 !important;

    padding: 0 4px !important;

  }



  .hero-cta-cluster {

    flex-direction: column !important;

    gap: 8px !important;

    margin-bottom: 10px !important;

    width: 100% !important;

  }



  .hero-cta-cluster .btn {

    width: 100% !important;

    padding: 10px 16px !important;

    font-size: 13.5px !important;

    min-height: 42px !important;

  }



  .hero-video-wrapper {

    margin: 8px auto 16px !important;

  }

}



/* ==========================================================================

   VIRAL REELS UNIVERSAL CAROUSEL (DESKTOP: 4, TABLET: 3, MOBILE: 1)

   1-by-1 Step Navigation & Frictionless Touch/Arrow Scrolling

   ========================================================================== */

.viral-reels-grid {

  display: flex !important;

  flex-direction: row !important;

  flex-wrap: nowrap !important;

  align-items: stretch !important;

  overflow-x: auto !important;

  overflow-y: hidden !important;

  scroll-snap-type: x mandatory !important;

  -webkit-overflow-scrolling: touch !important;

  touch-action: pan-x pan-y !important;

  scrollbar-width: none !important;

  -ms-overflow-style: none !important;

  max-width: 1180px !important;

  margin: 32px auto 0 !important;

}



.viral-reels-grid::-webkit-scrollbar {

  display: none !important;

}



.viral-reels-grid[style*="display: none"],

.viral-reels-grid.is-hidden {

  display: none !important;

}



/* Card base styling in carousel */

.viral-reels-grid .reel-card {

  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06) !important;

  border-radius: 20px !important;

  overflow: hidden !important;

  cursor: pointer !important;

  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease !important;

  background: #FFFFFF !important;

  border: 1px solid #E2E8F0 !important;

}



.viral-reels-grid .reel-card:hover {

  transform: translateY(-5px) !important;

  box-shadow: 0 18px 36px -10px rgba(0, 0, 0, 0.16) !important;

}



/* Desktop: exactly 4 items visible per view (min-width: 1024px) */

@media (min-width: 1024px) {

  .viral-reels-grid {

    gap: 20px !important;

    padding: 10px 4px 20px !important;

    scroll-padding: 0 4px !important;

  }



  .viral-reels-grid .reel-card {

    flex: 0 0 calc((100% - 60px) / 4) !important;

    width: calc((100% - 60px) / 4) !important;

    min-width: calc((100% - 60px) / 4) !important;

    max-width: calc((100% - 60px) / 4) !important;

    scroll-snap-align: start !important;

    scroll-snap-stop: always !important;

  }

}



/* Tablet: exactly 3 items visible per view (641px to 1023px) */

@media (min-width: 641px) and (max-width: 1023px) {

  .viral-reels-grid {

    gap: 16px !important;

    padding: 10px 16px 20px !important;

    scroll-padding: 0 16px !important;

  }



  .viral-reels-grid .reel-card {

    flex: 0 0 calc((100% - 32px) / 3) !important;

    width: calc((100% - 32px) / 3) !important;

    min-width: calc((100% - 32px) / 3) !important;

    max-width: calc((100% - 32px) / 3) !important;

    scroll-snap-align: start !important;

    scroll-snap-stop: always !important;

  }

}



/* Mobile: exactly 1 item visible per view (max-width: 640px) */

@media (max-width: 640px) {

  .viral-reels-grid {

    gap: 16px !important;

    padding: 8px 16px 20px !important;

    scroll-padding: 0 16px !important;

  }



  .viral-reels-grid .reel-card {

    flex: 0 0 calc(100% - 32px) !important;

    width: calc(100% - 32px) !important;

    min-width: calc(100% - 32px) !important;

    max-width: 320px !important;

    margin: 0 auto !important;

    scroll-snap-align: center !important;

    scroll-snap-stop: always !important;

  }

}



/* Carousel Controls (Arrows + Dots) - Visible on Desktop, Tablet & Mobile */

.reels-carousel-controls {

  display: flex !important;

  align-items: center !important;

  justify-content: center !important;

  gap: 16px !important;

  margin-top: 18px !important;

  padding-bottom: 12px !important;

}



.reels-carousel-controls[style*="display: none"],

.reels-carousel-controls.is-hidden {

  display: none !important;

}



.reels-nav-btn {

  width: 42px !important;

  height: 42px !important;

  border-radius: 50% !important;

  background: #FFFFFF !important;

  border: 1.5px solid #F59E0B !important;

  color: #B45309 !important;

  display: grid !important;

  place-items: center !important;

  box-shadow: 0 3px 10px rgba(245, 158, 11, 0.18) !important;

  cursor: pointer !important;

  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;

  user-select: none !important;

}



.reels-nav-btn:hover {

  background: #FEF3C7 !important;

  transform: scale(1.08) !important;

  box-shadow: 0 6px 16px rgba(245, 158, 11, 0.28) !important;

}



.reels-nav-btn:active {

  transform: scale(0.95) !important;

}



.reels-dots-indicator {

  display: flex !important;

  align-items: center !important;

  gap: 8px !important;

}



.reel-dot {

  width: 8px !important;

  height: 8px !important;

  border-radius: 50% !important;

  background: #CBD5E1 !important;

  cursor: pointer !important;

  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;

}



.reel-dot.active {

  width: 26px !important;

  border-radius: 9999px !important;

  background: #F59E0B !important;

}

/* ==========================================================================
   PRODUCT PAGE SPECIFICATION REDESIGN & KNOW PRODUCT / MOBILE SECTIONS
   ========================================================================== */

/* 1. Redesigned Product Specifications Card */
.product-details-tabs-section {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 20px !important;
  padding: 28px 24px !important;
  margin-bottom: 56px !important;
  box-shadow: 0 4px 24px rgba(10, 15, 29, 0.04) !important;
}

.product-tabs-header-wrap {
  position: relative;
  border-bottom: 2px solid #F1F5F9;
  padding-bottom: 14px;
  margin-bottom: 28px;
}

.product-tabs-nav {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  border-bottom: none !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.tab-nav-btn {
  padding: 10px 18px !important;
  border-radius: 8px !important;
  border: 1px solid transparent !important;
  background: #F8FAFC !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #64748B !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.tab-nav-btn:hover {
  color: #0F172A !important;
  background: #F1F5F9 !important;
}

.tab-nav-btn.active {
  background: #0A0F1D !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
  border-color: #0A0F1D !important;
}

.tab-active-indicator {
  position: absolute;
  bottom: -2px;
  left: 0;
  height: 3px;
  background: #0A0F1D;
  border-radius: 3px 3px 0 0;
  transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
}

.tab-panel {
  display: none;
  animation: tabFadeIn 0.25s ease-out;
}

.tab-panel.active {
  display: block !important;
}

@keyframes tabFadeIn {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

.tab-heading {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #0A0F1D !important;
  line-height: 1.25 !important;
  margin: 0 0 16px !important;
}

.tab-para {
  font-size: 14.5px !important;
  line-height: 1.65 !important;
  color: #64748B !important;
  margin: 0 0 16px !important;
}

.tab-para strong {
  color: #334155 !important;
  font-weight: 700 !important;
}

.tab-check-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 22px 0 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

.tab-check-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  color: #475569 !important;
}

.tab-check-item strong {
  color: #0F172A !important;
  font-weight: 700 !important;
}

.tab-check-circle {
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  border-radius: 50% !important;
  background: #ECFDF5 !important;
  border: 1px solid #A7F3D0 !important;
  color: #059669 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 1px !important;
  flex-shrink: 0 !important;
}

/* Specs Tab Modern Enhancements */
.specs-modern-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 16px;
  margin-top: 20px;
}

.spec-chip-card {
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  padding: 16px 18px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  transition: all 0.2s ease;
}

.spec-chip-card:hover {
  background: #FFFFFF;
  border-color: #CBD5E1;
  box-shadow: 0 6px 16px rgba(10, 15, 29, 0.04);
}

.spec-chip-label {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #64748B;
}

.spec-chip-val {
  font-size: 14.5px;
  font-weight: 700;
  color: #0F172A;
  line-height: 1.4;
}

.spec-chip-sub {
  font-size: 12px;
  color: #059669;
  font-weight: 600;
}

/* ==========================================================================
   2. SECTION TITLE COMPONENT
   ========================================================================== */
.product-section-block {
  margin-bottom: 64px;
}

.section-head-center {
  text-align: center;
  max-width: 680px;
  margin: 0 auto 36px;
}

.section-pill-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #F1F5F9;
  color: #0F172A;
  border: 1px solid #E2E8F0;
  padding: 6px 14px;
  border-radius: 9999px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 12px;
}

.section-pill-tag.emerald {
  background: #ECFDF5;
  color: #065F46;
  border-color: #A7F3D0;
}

.section-pill-tag.amber {
  background: #FEF3C7;
  color: #92400E;
  border-color: #FDE68A;
}

.section-main-title {
  font-size: 28px;
  font-weight: 850;
  color: #0A0F1D;
  line-height: 1.25;
  margin: 0 0 12px;
}

.section-subtitle-text {
  font-size: 15px;
  line-height: 1.6;
  color: #64748B;
  margin: 0;
}

/* ==========================================================================
   3. INTERACTIVE MOBILE CALLER FLOW (LIVE SIMULATION)
   ========================================================================== */
.mobile-sim-wrapper {
  background: #0A0F1D;
  border-radius: 28px;
  padding: 44px 32px;
  color: #FFFFFF;
  position: relative;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(10, 15, 29, 0.15);
}

.mobile-sim-wrapper::before {
  content: "";
  position: absolute;
  top: -100px;
  right: -100px;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 196, 140, 0.15) 0%, transparent 70%);
  pointer-events: none;
}

.mobile-sim-grid {
  display: grid;
  grid-template-columns: 360px 1fr;
  gap: 48px;
  align-items: center;
}

/* Mobile Screen Mockup */
.phone-mockup-frame {
  background: #1E293B;
  border: 4px solid #334155;
  border-radius: 36px;
  padding: 16px 14px 20px;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5), inset 0 0 0 1px rgba(255, 255, 255, 0.1);
  position: relative;
  max-width: 340px;
  margin: 0 auto;
}

.phone-top-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 11px;
  font-weight: 600;
  color: #94A3B8;
  padding: 2px 10px 10px;
}

.phone-speaker-pill {
  width: 56px;
  height: 5px;
  background: #475569;
  border-radius: 9999px;
  margin: 0 auto 10px;
}

.phone-screen-body {
  background: #FFFFFF;
  border-radius: 24px;
  padding: 20px 16px;
  color: #0F172A;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}

.phone-screen-header {
  text-align: center;
  border-bottom: 1px dashed #E2E8F0;
  padding-bottom: 14px;
  margin-bottom: 16px;
}

.vehicle-plate-chip {
  display: inline-block;
  background: #FEF3C7;
  color: #78350F;
  border: 1.5px solid #F59E0B;
  padding: 4px 12px;
  border-radius: 6px;
  font-family: 'JetBrains Mono', monospace;
  font-weight: 800;
  font-size: 14px;
  letter-spacing: 1px;
  margin-bottom: 6px;
}

.screen-vehicle-model {
  font-size: 13px;
  font-weight: 600;
  color: #475569;
  margin-bottom: 6px;
}

.screen-privacy-shield-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #ECFDF5;
  color: #065F46;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 9999px;
}

.screen-pulse-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #10B981;
  animation: pulseDot 1.5s infinite;
}

@keyframes pulseDot {
  0% { transform: scale(0.95); opacity: 0.8; }
  50% { transform: scale(1.3); opacity: 1; }
  100% { transform: scale(0.95); opacity: 0.8; }
}

.action-buttons-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 16px;
}

.sim-action-btn {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1.5px solid #E2E8F0;
  background: #F8FAFC;
  color: #0F172A;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s ease;
  text-align: left;
  width: 100%;
}

.sim-action-btn:hover {
  background: #F1F5F9;
  border-color: #CBD5E1;
  transform: translateY(-1px);
}

.sim-action-btn.active {
  background: #0A0F1D;
  color: #FFFFFF;
  border-color: #0A0F1D;
  box-shadow: 0 4px 12px rgba(10, 15, 29, 0.2);
}

.sim-action-icon {
  font-size: 18px;
  line-height: 1;
}

.sim-primary-call-btn {
  background: linear-gradient(135deg, #00C48C 0%, #059669 100%);
  color: #FFFFFF;
  border: none;
  box-shadow: 0 6px 16px rgba(0, 196, 140, 0.35);
}

.sim-primary-call-btn:hover {
  background: linear-gradient(135deg, #059669 0%, #047857 100%);
  border: none;
}

/* Phone Live Notification Box */
.phone-live-alert-box {
  background: #F1F5F9;
  border-left: 3px solid #00C48C;
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 12px;
  color: #334155;
  line-height: 1.4;
  transition: all 0.3s ease;
}

.phone-live-alert-box strong {
  display: block;
  color: #0F172A;
  margin-bottom: 2px;
}

/* Mobile Sim Explanation on Right */
.sim-details-col h3 {
  font-size: 26px;
  font-weight: 800;
  color: #FFFFFF;
  line-height: 1.3;
  margin: 0 0 16px;
}

.sim-details-col p {
  font-size: 15px;
  line-height: 1.65;
  color: #94A3B8;
  margin-bottom: 24px;
}

.sim-perks-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 28px;
}

.sim-perk-item {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 14px;
  padding: 16px;
}

.sim-perk-icon {
  font-size: 22px;
  margin-bottom: 8px;
}

.sim-perk-title {
  font-size: 14px;
  font-weight: 750;
  color: #FFFFFF;
  margin-bottom: 4px;
}

.sim-perk-desc {
  font-size: 12px;
  color: #94A3B8;
  line-height: 1.45;
  margin: 0;
}

.sim-cta-wrap {
  display: flex;
  align-items: center;
  gap: 16px;
}

/* ==========================================================================
   4. KNOW YOUR PRODUCT: 6 PILLARS GRID
   ========================================================================== */
.know-product-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.know-product-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 20px;
  padding: 28px 24px;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
}

.know-product-card:hover {
  transform: translateY(-4px);
  border-color: #CBD5E1;
  box-shadow: 0 16px 32px rgba(10, 15, 29, 0.06);
}

.know-icon-badge {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  margin-bottom: 20px;
}

.know-icon-badge.emerald {
  background: #ECFDF5;
  color: #059669;
}

.know-icon-badge.amber {
  background: #FEF3C7;
  color: #D97706;
}

.know-icon-badge.blue {
  background: #EFF6FF;
  color: #2563EB;
}

.know-icon-badge.purple {
  background: #FAF5FF;
  color: #7C3AED;
}

.know-icon-badge.rose {
  background: #FFF1F2;
  color: #E11D48;
}

.know-card-title {
  font-size: 18px;
  font-weight: 800;
  color: #0A0F1D;
  margin: 0 0 10px;
  line-height: 1.3;
}

.know-card-desc {
  font-size: 14px;
  line-height: 1.6;
  color: #64748B;
  margin: 0 0 16px;
  flex-grow: 1;
}

.know-card-metric {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  color: #059669;
  background: #ECFDF5;
  padding: 4px 10px;
  border-radius: 6px;
  width: fit-content;
}

/* ==========================================================================
   5. UNBOXING KIT (WHAT'S IN THE BOX)
   ========================================================================== */
.unboxing-kit-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.unboxing-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 18px;
  padding: 24px 20px;
  text-align: center;
  transition: all 0.2s ease;
}

.unboxing-card:hover {
  border-color: #F59E0B;
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(245, 158, 11, 0.08);
}

.unboxing-item-num {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #0A0F1D;
  color: #FFFFFF;
  font-weight: 800;
  font-size: 13px;
  display: grid;
  place-items: center;
  margin: 0 auto 14px;
}

.unboxing-item-icon {
  font-size: 36px;
  margin-bottom: 12px;
}

.unboxing-item-title {
  font-size: 15px;
  font-weight: 800;
  color: #0A0F1D;
  margin: 0 0 6px;
}

.unboxing-item-desc {
  font-size: 12.5px;
  line-height: 1.5;
  color: #64748B;
  margin: 0;
}

/* ==========================================================================
   6. WINDSHIELD PLACEMENT & COMPATIBILITY GUIDE
   ========================================================================== */
.placement-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.placement-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
  transition: all 0.2s ease;
}

.placement-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 28px rgba(10, 15, 29, 0.06);
}

.placement-thumb {
  height: 180px;
  background: #0F172A;
  overflow: hidden;
  position: relative;
}

.placement-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.placement-card:hover .placement-thumb img {
  transform: scale(1.05);
}

.placement-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  background: rgba(10, 15, 29, 0.85);
  backdrop-filter: blur(8px);
  color: #FFFFFF;
  font-size: 11px;
  font-weight: 750;
  padding: 4px 10px;
  border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.placement-content {
  padding: 22px 20px;
}

.placement-vehicle-title {
  font-size: 17px;
  font-weight: 800;
  color: #0A0F1D;
  margin: 0 0 8px;
}

.placement-location-tag {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 700;
  color: #2563EB;
  margin-bottom: 10px;
}

.placement-desc {
  font-size: 13.5px;
  line-height: 1.55;
  color: #64748B;
  margin: 0 0 14px;
}

.placement-tip {
  font-size: 12px;
  background: #F8FAFC;
  border-left: 3px solid #00C48C;
  padding: 8px 10px;
  border-radius: 4px;
  color: #334155;
}

/* ==========================================================================
   7. PRODUCT FAQ ACCORDION
   ========================================================================== */
.product-faq-wrap {
  max-width: 820px;
  margin: 0 auto;
}

.product-faq-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  margin-bottom: 12px;
  overflow: hidden;
  transition: all 0.2s ease;
}

.product-faq-card:hover {
  border-color: #CBD5E1;
}

.product-faq-card.open {
  border-color: #0A0F1D;
  box-shadow: 0 6px 20px rgba(10, 15, 29, 0.04);
}

.product-faq-header {
  padding: 18px 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  user-select: none;
  background: #FFFFFF;
  gap: 16px;
}

.product-faq-question {
  font-size: 15.5px;
  font-weight: 750;
  color: #0A0F1D;
  margin: 0;
}

.product-faq-arrow {
  width: 24px;
  height: 24px;
  min-width: 24px;
  border-radius: 50%;
  background: #F1F5F9;
  display: grid;
  place-items: center;
  font-size: 12px;
  color: #475569;
  transition: transform 0.25s ease;
}

.product-faq-card.open .product-faq-arrow {
  transform: rotate(180deg);
  background: #0A0F1D;
  color: #FFFFFF;
}

.product-faq-body {
  padding: 0 22px 18px;
  font-size: 14.5px;
  line-height: 1.65;
  color: #64748B;
  display: none;
}

.product-faq-card.open .product-faq-body {
  display: block;
}

/* ==========================================================================
   8. RESPONSIVE BREAKPOINTS (TABLET & MOBILE)
   ========================================================================== */
@media (max-width: 1024px) {
  .know-product-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .unboxing-kit-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .placement-guide-grid {
    grid-template-columns: 1fr;
    max-width: 540px;
    margin: 0 auto;
  }
  .mobile-sim-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}

@media (max-width: 768px) {
  .product-details-tabs-section {
    padding: 20px 16px !important;
    border-radius: 16px !important;
  }

  .product-tabs-nav {
    gap: 8px !important;
  }

  .tab-nav-btn {
    padding: 9px 15px !important;
    font-size: 13.5px !important;
  }

  .tab-content-grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .tab-image {
    display: none !important; /* Matches mobile view where focus is on informative text */
  }

  .tab-heading {
    font-size: 20px !important;
  }

  .tab-para {
    font-size: 14px !important;
  }

  .section-main-title {
    font-size: 23px !important;
  }

  .mobile-sim-wrapper {
    padding: 28px 18px !important;
    border-radius: 20px !important;
  }

  .sim-perks-row {
    grid-template-columns: 1fr !important;
  }

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

  .unboxing-kit-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
  }

  .unboxing-card {
    padding: 16px 12px !important;
  }

  .unboxing-item-icon {
    font-size: 28px !important;
  }
}

@media (max-width: 480px) {
  .unboxing-kit-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ==========================================================================
   REDESIGNED SHOP FILTERS & ZERO-SCROLL MOBILE SHOPPING ARCHITECTURE
   ========================================================================== */

/* Streamlined Mobile Hero Banner */
@media (max-width: 768px) {
  .shop-header-banner {
    padding: 24px 20px !important;
    margin-bottom: 20px !important;
    border-radius: 18px !important;
  }

  .shop-header-banner h1 {
    font-size: 24px !important;
    margin-bottom: 8px !important;
  }

  .shop-header-banner p {
    font-size: 13.5px !important;
    line-height: 1.5 !important;
    margin-bottom: 14px !important;
  }

  .shop-trust-badges-row {
    gap: 8px 14px !important;
    font-size: 11.5px !important;
    padding-top: 12px !important;
  }
}

/* 1. Horizontal Quick-Filter Category Pills Bar */
.shop-category-pills-bar {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  overflow-x: auto !important;
  padding: 4px 2px 14px !important;
  margin-bottom: 16px !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
}

.shop-category-pills-bar::-webkit-scrollbar {
  display: none !important;
}

.cat-pill-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 10px 18px !important;
  border-radius: 9999px !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #475569 !important;
  background: #FFFFFF !important;
  border: 1.5px solid #E2E8F0 !important;
  cursor: pointer !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  box-shadow: 0 2px 6px rgba(10, 15, 29, 0.03) !important;
}

.cat-pill-btn:hover {
  border-color: #CBD5E1 !important;
  color: #0F172A !important;
  background: #F8FAFC !important;
  transform: translateY(-1px) !important;
}

.cat-pill-btn.active {
  background: #0A0F1D !important;
  color: #FFFFFF !important;
  border-color: #0A0F1D !important;
  box-shadow: 0 4px 14px rgba(10, 15, 29, 0.18) !important;
}

.cat-pill-icon {
  font-size: 15px !important;
  line-height: 1 !important;
}

.cat-pill-count {
  font-size: 11px !important;
  font-weight: 800 !important;
  padding: 2px 7px !important;
  border-radius: 9999px !important;
  background: #F1F5F9 !important;
  color: #475569 !important;
  transition: all 0.2s ease !important;
}

.cat-pill-btn.active .cat-pill-count {
  background: rgba(255, 255, 255, 0.2) !important;
  color: #FFFFFF !important;
}

/* 2. Modernized Shop Toolbar */
.shop-toolbar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 16px !important;
  padding: 12px 18px !important;
  margin-bottom: 24px !important;
  box-shadow: 0 2px 10px rgba(10, 15, 29, 0.02) !important;
}

.shop-toolbar-left {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}

.shop-results-count {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: #64748B !important;
}

.shop-results-count strong {
  color: #0F172A !important;
  font-weight: 800 !important;
}

.active-filter-chips {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
}

.filter-chip-tag {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #FEF3C7 !important;
  color: #92400E !important;
  border: 1px solid #FDE68A !important;
  padding: 3px 10px !important;
  border-radius: 9999px !important;
  font-size: 11.5px !important;
  font-weight: 750 !important;
}

.filter-chip-clear {
  cursor: pointer !important;
  font-weight: 800 !important;
  color: #B45309 !important;
  display: inline-flex !important;
  align-items: center !important;
  margin-left: 2px !important;
}

.shop-toolbar-right {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.btn-filter-drawer-trigger {
  display: none; /* Shown on <= 992px */
  align-items: center !important;
  gap: 7px !important;
  padding: 8px 14px !important;
  border-radius: 10px !important;
  background: #F8FAFC !important;
  border: 1.5px solid #E2E8F0 !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  color: #0F172A !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.btn-filter-drawer-trigger:hover {
  background: #F1F5F9 !important;
  border-color: #CBD5E1 !important;
}

.btn-filter-drawer-trigger .filter-badge-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #F59E0B;
}

.sort-select-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.sort-select-wrapper label {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #64748B !important;
}

.shop-sort-select {
  padding: 8px 14px !important;
  border-radius: 10px !important;
  border: 1.5px solid #E2E8F0 !important;
  background: #F8FAFC !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #0F172A !important;
  cursor: pointer !important;
  outline: none !important;
  transition: all 0.2s ease !important;
}

.shop-sort-select:hover,
.shop-sort-select:focus {
  border-color: #0A0F1D !important;
  background: #FFFFFF !important;
}

/* 3. Mobile Slide-out Drawer Architecture for Sidebar */
.drawer-header {
  display: none; /* Only in mobile drawer */
  align-items: center;
  justify-content: space-between;
  padding-bottom: 18px;
  margin-bottom: 20px;
  border-bottom: 1.5px solid #F1F5F9;
}

.drawer-title {
  font-size: 18px;
  font-weight: 850;
  color: #0A0F1D;
}

.btn-drawer-close {
  background: #F1F5F9;
  border: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 18px;
  font-weight: 700;
  color: #475569;
  cursor: pointer;
  transition: all 0.2s ease;
}

.btn-drawer-close:hover {
  background: #E2E8F0;
  color: #0F172A;
}

.drawer-sticky-footer {
  display: none; /* Only in mobile drawer */
  position: sticky;
  bottom: 0;
  left: 0;
  right: 0;
  background: #FFFFFF;
  padding: 16px 0 0;
  border-top: 1px solid #F1F5F9;
  margin-top: 24px;
  gap: 10px;
}

.btn-drawer-clear {
  padding: 10px 16px;
  border-radius: 10px;
  background: #F8FAFC;
  border: 1.5px solid #E2E8F0;
  font-size: 13px;
  font-weight: 750;
  color: #64748B;
  cursor: pointer;
  flex: 1;
}

.btn-drawer-apply {
  flex: 2;
  padding: 10px 18px !important;
  font-size: 13px !important;
  border-radius: 10px !important;
}

.shop-drawer-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(10, 15, 29, 0.65);
  backdrop-filter: blur(4px);
  z-index: 1998;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.shop-drawer-backdrop.active {
  opacity: 1;
  pointer-events: auto;
}

/* Responsive Transformation on <= 992px */
@media (max-width: 992px) {
  .shop-layout-grid {
    display: block !important; /* Eliminates stacking sidebar above products! */
  }

  .btn-filter-drawer-trigger {
    display: inline-flex !important;
  }

  .drawer-header {
    display: flex !important;
  }

  .drawer-sticky-footer {
    display: flex !important;
  }

  .shop-sidebar {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    width: 320px !important;
    max-width: 86vw !important;
    height: 100vh !important;
    background: #FFFFFF !important;
    z-index: 1999 !important;
    overflow-y: auto !important;
    padding: 24px 20px 40px !important;
    box-shadow: -10px 0 35px rgba(10, 15, 29, 0.25) !important;
    transform: translateX(105%) !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    border-radius: 0 !important;
    border: none !important;
  }

  .shop-sidebar.drawer-open {
    transform: translateX(0) !important;
  }

  /* Products Grid starts immediately without scroll */
  .shop-main-content {
    width: 100% !important;
  }

  .products-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
  }
}

@media (max-width: 580px) {
  .products-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .shop-toolbar {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
  }

  .shop-toolbar-right {
    justify-content: space-between !important;
  }
}

/* Empty State Styling */
.shop-empty-state {
  grid-column: 1 / -1;
  text-align: center;
  padding: 60px 20px;
  background: #FFFFFF;
  border: 1.5px dashed #CBD5E1;
  border-radius: 20px;
}

.empty-state-icon {
  font-size: 48px;
  margin-bottom: 12px;
}

.empty-state-title {
  font-size: 20px;
  font-weight: 800;
  color: #0A0F1D;
  margin-bottom: 6px;
}

.empty-state-text {
  font-size: 14px;
  color: #64748B;
  margin-bottom: 18px;
}

/* ==========================================================================
   GLOBAL DUAL SCROLLBAR ELIMINATION DEFENSE (DESKTOP & ALL MOBILE BREAKPOINTS)
   Ensures that only the root document window (html) scrolls vertically.
   No main, section, wrapper, or body element can establish a secondary
   vertical scroll container.
   ========================================================================== */
html {
  overflow-x: clip !important;
  overflow-y: auto !important;
  width: 100% !important;
  max-width: 100vw !important;
}

body,
body.site-body,
body.auth-page-body,
body.page-404-body,
main,
section,
.hero-section,
.flagship-section,
.video-story-section,
.unboxing-experience-section,
.single-product-wrapper,
.shop-main-layout,
.cart-page-wrapper,
.checkout-page-wrapper,
.dashboard-page-wrapper,
.contact-page-wrapper,
.blog-page-wrapper,
.article-page-wrapper,
.legal-page-wrapper,
.auth-page-wrapper {
  overflow-x: clip !important;
  overflow-y: visible !important;
}

/* ==========================================================================
   DYNAMIC WOOCOMMERCE MASTER THEME COMPONENT STYLING
   High-converting styles for Cart, Checkout, Auth Forms & My Account
   ========================================================================== */

/* 1. Global WooCommerce Overrides */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info {
  background: #F0FDF4;
  border-top-color: #00C48C;
  color: #166534;
  border-radius: 12px;
  padding: 14px 20px;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 24px;
}

.woocommerce .woocommerce-error {
  background: #FEF2F2;
  border-top-color: #EF4444;
  color: #991B1B;
  border-radius: 12px;
  padding: 14px 20px;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 24px;
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  background: linear-gradient(180deg, #FACC15 0%, #F59E0B 100%) !important;
  color: #0A0F1D !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  padding: 11px 22px !important;
  border-radius: 10px !important;
  border: none !important;
  box-shadow: 0 4px 14px rgba(245, 158, 11, 0.3) !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  background: linear-gradient(180deg, #FDE047 0%, #D97706 100%) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 18px rgba(245, 158, 11, 0.4) !important;
}

/* 2. WooCommerce Form Inputs */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
  width: 100%;
  height: 46px;
  padding: 10px 14px;
  background: #FFFFFF;
  border: 1.5px solid #CBD5E1;
  border-radius: 10px;
  font-size: 14px;
  color: #0A0F1D;
  transition: all 0.2s ease;
  box-sizing: border-box;
}

.woocommerce form .form-row textarea {
  height: auto;
  min-height: 90px;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  outline: none;
  border-color: #F59E0B;
  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.15);
}

.woocommerce form .form-row label {
  font-size: 13.5px;
  font-weight: 700;
  color: #1E293B;
  margin-bottom: 6px;
  display: block;
}

/* 3. Login & Registration Columns */
.woocommerce-my-account-wrapper #customer_login {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 32px;
  max-width: 900px;
  margin: 0 auto;
}

.woocommerce-my-account-wrapper .u-column1,
.woocommerce-my-account-wrapper .u-column2 {
  background: #FFFFFF;
  padding: 30px;
  border-radius: 18px;
  border: 1.5px solid #E2E8F0;
  box-shadow: 0 4px 20px rgba(10, 15, 29, 0.03);
}

.woocommerce-my-account-wrapper h2 {
  font-size: 20px;
  font-weight: 850;
  color: #0A0F1D;
  margin: 0 0 18px;
}

/* 4. My Account Dashboard Layout */
.woocommerce-account .woocommerce-MyAccount-navigation {
  float: left;
  width: 25%;
  background: #FFFFFF;
  border-radius: 16px;
  border: 1.5px solid #E2E8F0;
  padding: 16px;
  box-shadow: 0 4px 16px rgba(10, 15, 29, 0.02);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
  list-style: none !important;
  margin: 0;
  padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: flex;
  align-items: center;
  padding: 11px 16px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 700;
  color: #475569;
  text-decoration: none;
  transition: all 0.2s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  background: #F8FAFC;
  color: #0A0F1D;
  transform: translateX(3px);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  background: #FEF9C3;
  color: #B45309;
  font-weight: 800;
}

.woocommerce-account .woocommerce-MyAccount-content {
  float: right;
  width: 72%;
  background: #FFFFFF;
  border-radius: 16px;
  border: 1.5px solid #E2E8F0;
  padding: 30px;
  box-shadow: 0 4px 16px rgba(10, 15, 29, 0.02);
}

@media (max-width: 860px) {
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content {
    float: none;
    width: 100%;
    margin-bottom: 24px;
  }
}

/* 5. WooCommerce Cart & Checkout Tables */
.woocommerce table.shop_table {
  border-collapse: separate;
  border-spacing: 0;
  border: 1.5px solid #E2E8F0;
  border-radius: 16px;
  overflow: hidden;
  width: 100%;
  margin-bottom: 30px;
  background: #FFFFFF;
}

.woocommerce table.shop_table th {
  background: #F8FAFC;
  color: #475569;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 14px 18px;
  border-bottom: 1.5px solid #E2E8F0;
}

.woocommerce table.shop_table td {
  padding: 16px 18px;
  border-bottom: 1px solid #F1F5F9;
  color: #1E293B;
  font-size: 14.5px;
}

.woocommerce table.shop_table td.product-name a {
  font-weight: 750;
  color: #0A0F1D;
  text-decoration: none;
}

.woocommerce table.shop_table td.product-name a:hover {
  color: #D97706;
}

/* Cart Collaterals / Totals */
.woocommerce .cart-collaterals {
  display: flex;
  justify-content: flex-end;
}

.woocommerce .cart-collaterals .cart_totals {
  width: 100%;
  max-width: 440px;
  background: #FFFFFF;
  padding: 24px;
  border-radius: 16px;
  border: 1.5px solid #E2E8F0;
}

.woocommerce .cart-collaterals .cart_totals h2 {
  font-size: 18px;
  font-weight: 850;
  color: #0A0F1D;
  margin: 0 0 16px;
}

/* Checkout Page Grid */
.woocommerce-checkout form.checkout {
  display: grid;
  grid-template-columns: 1fr 420px;
  gap: 36px;
}

@media (max-width: 960px) {
  .woocommerce-checkout form.checkout {
    grid-template-columns: 1fr;
  }
}

.woocommerce-checkout #customer_details {
  background: #FFFFFF;
  padding: 30px;
  border-radius: 18px;
  border: 1.5px solid #E2E8F0;
}

.woocommerce-checkout #order_review {
  background: #FFFFFF;
  padding: 28px;
  border-radius: 18px;
  border: 1.5px solid #E2E8F0;
  position: sticky;
  top: 90px;
}

.woocommerce-checkout #order_review_heading {
  font-size: 20px;
  font-weight: 850;
  color: #0A0F1D;
  margin: 0 0 16px;
}

/* Price Formatting */
.woocommerce .price,
.wc-single-price,
.wc-price-block {
  font-size: 18px;
  font-weight: 850;
  color: #0A0F1D;
}

.woocommerce span.price del,
.wc-single-price del {
  color: #94A3B8;
  font-size: 14px;
  font-weight: 500;
  margin-right: 6px;
}

.woocommerce span.price ins,
.wc-single-price ins {
  text-decoration: none;
  color: #0A0F1D;
  font-weight: 850;
}
