
/* ── Scoped Reset ── */
#NanaimoHero_root__Hr9X2,
#NanaimoHero_root__Hr9X2 *,
#NanaimoHero_root__Hr9X2 *::before,
#NanaimoHero_root__Hr9X2 *::after {
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

#NanaimoHero_root__Hr9X2 {
  font-family: &quot;Inter&quot;, system-ui, -apple-system, sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
  position: relative !important;
  width: 100% !important;
  height: 100vh !important;
  min-height: 600px !important;
  overflow: hidden !important; /* Safe: No sticky descendants */
  background-color: #F8FAFC !important;
  padding-top: 5rem !important; /* Space for CMS Navbar */
}

/* ── Background Images ── */
#NanaimoHero_root__Hr9X2 .NanaimoHero_bgLayer__Hr9X2 {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  opacity: 0 !important;
  transform: scale(1.02) !important;
  transition: opacity 1.5s ease-in-out, transform 1.5s ease-in-out !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_bgLayer__Hr9X2.NanaimoHero_active__Hr9X2 {
  opacity: 1 !important;
  transform: scale(1) !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_bgLayer__Hr9X2 img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  filter: brightness(0.3) !important;
}

/* ── Overlays (Premium Security Gradients) ── */
#NanaimoHero_root__Hr9X2 .NanaimoHero_overlay1__Hr9X2 {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  background: linear-gradient(to top, #F8FAFC, rgba(234,234,234,0.1), rgba(44,62,80,0.6)) !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_overlay2__Hr9X2 {
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  background: linear-gradient(to right, rgba(248,250,252,0.85), rgba(234,234,234,0.1), rgba(248,250,252,0.5)) !important;
}

/* ── Main Content Grid ── */
#NanaimoHero_root__Hr9X2 .NanaimoHero_content__Hr9X2 {
  position: relative !important;
  z-index: 10 !important;
  max-width: 80rem !important;
  margin: 0 auto !important;
  width: 100% !important;
  padding: 0 1rem !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

@media (min-width: 640px) {
  #NanaimoHero_root__Hr9X2 .NanaimoHero_content__Hr9X2 { padding: 0 1.5rem !important; }
}
@media (min-width: 1024px) {
  #NanaimoHero_root__Hr9X2 .NanaimoHero_content__Hr9X2 { padding: 0 2rem !important; }
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_grid__Hr9X2 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 2rem !important;
  align-items: center !important;
}

@media (min-width: 1024px) {
  #NanaimoHero_root__Hr9X2 .NanaimoHero_grid__Hr9X2 {
    grid-template-columns: repeat(12, 1fr) !important;
    gap: 2rem !important;
  }
  #NanaimoHero_root__Hr9X2 .NanaimoHero_leftCol__Hr9X2 { grid-column: span 6 !important; }
  #NanaimoHero_root__Hr9X2 .NanaimoHero_spacer__Hr9X2 { grid-column: span 1 !important; display: block !important; }
  #NanaimoHero_root__Hr9X2 .NanaimoHero_rightCol__Hr9X2 { grid-column: span 5 !important; }
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_spacer__Hr9X2 { display: none !important; }

/* ── Left Column: CSS Grid Stacking for Animations ── */
#NanaimoHero_root__Hr9X2 .NanaimoHero_descWrap__Hr9X2,
#NanaimoHero_root__Hr9X2 .NanaimoHero_actions__Hr9X2 {
  display: grid !important;
  grid-template-areas: &quot;stack&quot; !important;
  position: relative !important;
  min-height: 8rem !important;
  margin-bottom: 1.5rem !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_actions__Hr9X2 { min-height: 4rem !important; margin-bottom: 0 !important; }

#NanaimoHero_root__Hr9X2 .NanaimoHero_desc__Hr9X2,
#NanaimoHero_root__Hr9X2 .NanaimoHero_btnGroup__Hr9X2 {
  grid-area: stack !important;
  opacity: 0 !important;
  transform: translateY(15px) !important;
  transition: opacity 0.4s ease, transform 0.4s ease !important;
  pointer-events: none !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_desc__Hr9X2.NanaimoHero_active__Hr9X2,
#NanaimoHero_root__Hr9X2 .NanaimoHero_btnGroup__Hr9X2.NanaimoHero_active__Hr9X2 {
  opacity: 1 !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_desc__Hr9X2 p {
  color: #4A5568 !important; /* Slate Gray */
  font-size: 0.875rem !important;
  line-height: 1.6 !important;
  margin-bottom: 1rem !important;
  max-width: 32rem !important;
}

@media (min-width: 640px) {
  #NanaimoHero_root__Hr9X2 .NanaimoHero_desc__Hr9X2 p { font-size: 1rem !important; }
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_btnGroup__Hr9X2 {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 1rem !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_btnPrimary__Hr9X2,
#NanaimoHero_root__Hr9X2 .NanaimoHero_btnSecondary__Hr9X2 {
  padding: 0.875rem 1.5rem !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  text-decoration: none !important;
  border-radius: 0.25rem !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
  cursor: pointer !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_btnPrimary__Hr9X2 {
  background-color: #1B365D !important; /* Navy Blue */
  color: #FFFFFF !important;
  border: 2px solid #1B365D !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_btnSecondary__Hr9X2 {
  background-color: transparent !important;
  color: #1B365D !important;
  border: 2px solid #1B365D !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_btnPrimary__Hr9X2:hover,
#NanaimoHero_root__Hr9X2 .NanaimoHero_btnSecondary__Hr9X2:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 20px rgba(27, 54, 93, 0.15) !important;
}

/* ── Right Column: Glassmorphism Card ── */
#NanaimoHero_root__Hr9X2 .NanaimoHero_card__Hr9X2 {
  background: rgba(255, 255, 255, 0.9) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border-left: 4px solid #1B365D !important; /* Navy Blue Accent */
  padding: 1.5rem !important;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15) !important;
  position: relative !important;
  overflow: hidden !important;
}

@media (min-width: 640px) {
  #NanaimoHero_root__Hr9X2 .NanaimoHero_card__Hr9X2 { padding: 2rem !important; }
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_cardBadge__Hr9X2 {
  display: flex !important;
  align-items: center !important;
  gap: 0.625rem !important;
  margin-bottom: 0.75rem !important;
  position: relative !important;
  min-height: 1.5rem !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_pulseDot__Hr9X2 {
  width: 0.5rem !important;
  height: 0.5rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  flex-shrink: 0 !important;
  animation: NanaimoHero_pulse__Hr9X2 2s infinite !important;
}

@keyframes NanaimoHero_pulse__Hr9X2 {
  0% { box-shadow: 0 0 0 0 rgba(27, 54, 93, 0.4); }
  70% { box-shadow: 0 0 0 10px rgba(27, 54, 93, 0); }
  100% { box-shadow: 0 0 0 0 rgba(27, 54, 93, 0); }
}

/* Grid Stacking for Badge Text */
#NanaimoHero_root__Hr9X2 .NanaimoHero_badgeText__Hr9X2 {
  position: absolute !important;
  top: 0 !important;
  left: 1.125rem !important; /* Offset for dot */
  width: calc(100% - 1.125rem) !important;
  opacity: 0 !important;
  transform: translateX(15px) !important;
  transition: opacity 0.4s ease, transform 0.4s ease !important;
  font-size: 0.625rem !important;
  font-family: monospace !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #1B365D !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_badgeText__Hr9X2.NanaimoHero_active__Hr9X2 {
  opacity: 1 !important;
  transform: translateX(0) !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_cardSubtitle__Hr9X2 {
  display: grid !important;
  grid-template-areas: &quot;stack&quot; !important;
  position: relative !important;
  min-height: 1.2rem !important;
  margin-bottom: 0.25rem !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_cardSubtitle__Hr9X2 span {
  grid-area: stack !important;
  opacity: 0 !important;
  transform: translateX(15px) !important;
  transition: opacity 0.4s ease, transform 0.4s ease !important;
  font-size: 0.6875rem !important;
  font-family: monospace !important;
  color: #64748B !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_cardSubtitle__Hr9X2 span.NanaimoHero_active__Hr9X2 {
  opacity: 1 !important;
  transform: translateX(0) !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_cardTitleWrap__Hr9X2 {
  display: grid !important;
  grid-template-areas: &quot;stack&quot; !important;
  position: relative !important;
  min-height: 6rem !important;
  margin-bottom: 0.75rem !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_cardTitle__Hr9X2 {
  grid-area: stack !important;
  opacity: 0 !important;
  transform: translateX(15px) !important;
  transition: opacity 0.4s ease, transform 0.4s ease !important;
  font-size: 1.125rem !important;
  font-weight: 900 !important;
  color: #2C3E50 !important; /* Charcoal */
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

@media (min-width: 640px) {
  #NanaimoHero_root__Hr9X2 .NanaimoHero_cardTitle__Hr9X2 { font-size: 1.25rem !important; }
}
@media (min-width: 768px) {
  #NanaimoHero_root__Hr9X2 .NanaimoHero_cardTitle__Hr9X2 { font-size: 1.5rem !important; }
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_cardTitle__Hr9X2.NanaimoHero_active__Hr9X2 {
  opacity: 1 !important;
  transform: translateX(0) !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_cardDesc__Hr9X2 {
  color: #4A5568 !important;
  font-size: 0.75rem !important;
  line-height: 1.5 !important;
  margin-bottom: 1.5rem !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_cardFooter__Hr9X2 {
  border-top: 1px solid #EAEAEA !important;
  padding-top: 1rem !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_cardLink__Hr9X2 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  color: #2C3E50 !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  transition: color 0.2s ease !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_cardLink__Hr9X2:hover {
  color: #1B365D !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_cardLink__Hr9X2 svg {
  color: #1B365D !important;
}

/* ── Bottom Indicator Bar ── */
#NanaimoHero_root__Hr9X2 .NanaimoHero_bottomBar__Hr9X2 {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 10 !important;
  background: linear-gradient(to top, #F8FAFC, rgba(248,250,252,0.5)) !important;
  padding-top: 3rem !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_bottomInner__Hr9X2 {
  max-width: 80rem !important;
  margin: 0 auto !important;
  padding: 0 1rem !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  position: relative !important;
}

@media (min-width: 768px) {
  #NanaimoHero_root__Hr9X2 .NanaimoHero_bottomInner__Hr9X2 {
    flex-direction: row !important;
    align-items: flex-end !important;
    padding: 0 2rem !important;
  }
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_indicators__Hr9X2 {
  display: flex !important;
  gap: 0.75rem !important;
  padding-bottom: 1.5rem !important;
  z-index: 20 !important;
}

@media (min-width: 768px) {
  #NanaimoHero_root__Hr9X2 .NanaimoHero_indicators__Hr9X2 { padding-bottom: 3rem !important; }
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_indicator__Hr9X2 {
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  outline: none !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_indNum__Hr9X2 {
  font-size: 0.75rem !important;
  font-family: monospace !important;
  font-weight: 700 !important;
  color: #CBD5E1 !important;
  transition: color 0.3s ease, transform 0.3s ease !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_indicator__Hr9X2.NanaimoHero_active__Hr9X2 .NanaimoHero_indNum__Hr9X2 {
  color: #1B365D !important;
  transform: scale(1.1) !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_indicatorLine__Hr9X2 {
  display: none !important;
  height: 1px !important;
  width: 1rem !important;
  background-color: #EAEAEA !important;
  transition: width 0.3s ease, background-color 0.3s ease !important;
}

@media (min-width: 768px) {
  #NanaimoHero_root__Hr9X2 .NanaimoHero_indicatorLine__Hr9X2 { display: block !important; }
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_indicator__Hr9X2.NanaimoHero_active__Hr9X2 .NanaimoHero_indicatorLine__Hr9X2 {
  width: 2rem !important;
  background-color: #1B365D !important;
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_decoText__Hr9X2 {
  position: relative !important;
  overflow: hidden !important;
  height: 60px !important;
  display: flex !important;
  align-items: flex-end !important;
  pointer-events: none !important;
  user-select: none !important;
}

@media (min-width: 640px) {
  #NanaimoHero_root__Hr9X2 .NanaimoHero_decoText__Hr9X2 { height: 100px !important; }
}

#NanaimoHero_root__Hr9X2 .NanaimoHero_decoText__Hr9X2 h1 {
  font-size: 2.25rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: transparent !important;
  -webkit-text-stroke: 1px rgba(44, 62, 80, 0.08) !important; /* Charcoal Stroke */
}

@media (min-width: 640px) {
  #NanaimoHero_root__Hr9X2 .NanaimoHero_decoText__Hr9X2 h1 { font-size: 4.5rem !important; }
}
 
/* ── Scoped Reset ── */
#NanaimoHomeIntro_root__Hm2X9,
#NanaimoHomeIntro_root__Hm2X9 *,
#NanaimoHomeIntro_root__Hm2X9 *::before,
#NanaimoHomeIntro_root__Hm2X9 *::after {
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

#NanaimoHomeIntro_root__Hm2X9 {
  font-family: &quot;Inter&quot;, system-ui, -apple-system, sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
  width: 100% !important;
  /* NO overflow-x: hidden on root (Rule #9 Trap avoided) */
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_inner__Hm2X9 {
  max-width: 80rem !important;
  margin: 0 auto !important;
  padding: 0 1rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_inner__Hm2X9 { padding: 0 1.5rem !important; }
}
@media (min-width: 1024px) {
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_inner__Hm2X9 { padding: 0 2rem !important; }
}

/* ── Section Backgrounds ── */
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_sec2__Hm2X9 {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid #EAEAEA !important;
  padding: 6rem 0 !important;
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_sec3__Hm2X9 {
  background-color: #F8FAFC !important; /* Light Silver */
  border-bottom: 1px solid #EAEAEA !important;
  padding: 6rem 0 !important;
}

/* ── Grid Layouts ── */
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_grid__Hm2X9 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 3rem !important;
  align-items: center !important;
}

@media (min-width: 1024px) {
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_grid__Hm2X9 {
    grid-template-columns: repeat(12, 1fr) !important;
  }
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_sec2__Hm2X9 .NanaimoHomeIntro_textCol__Hm2X9 { grid-column: span 8 !important; }
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_sec2__Hm2X9 .NanaimoHomeIntro_btnCol__Hm2X9 { grid-column: span 4 !important; display: flex !important; justify-content: flex-end !important; }
  
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_sec3__Hm2X9 .NanaimoHomeIntro_textCol__Hm2X9 { grid-column: span 7 !important; }
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_sec3__Hm2X9 .NanaimoHomeIntro_subCol__Hm2X9 { grid-column: span 5 !important; display: flex !important; flex-direction: column !important; justify-content: flex-end !important; }
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_mb16__Hm2X9 { margin-bottom: 4rem !important; }

/* ── Typography &amp; Badges ── */
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_badge__Hm2X9 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  color: #1B365D !important; /* Navy Blue */
  font-family: &quot;Courier New&quot;, monospace !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 1.5rem !important;
  position: relative !important;
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_staticDot__Hm2X9 {
  width: 0.375rem !important;
  height: 0.375rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  display: block !important;
}

/* Ping Animation (Replaces Tailwind animate-ping) */
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pingDot__Hm2X9 {
  position: relative !important;
  width: 0.375rem !important;
  height: 0.375rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  display: block !important;
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pingRing__Hm2X9 {
  position: absolute !important;
  top: 50% !important;
  left: 0.1875rem !important;
  width: 0.375rem !important;
  height: 0.375rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  transform: translate(-50%, -50%) !important;
  animation: NanaimoHomeIntro_ping__Hm2X9 1.5s cubic-bezier(0, 0, 0.2, 1) infinite !important;
  pointer-events: none !important;
}

@keyframes NanaimoHomeIntro_ping__Hm2X9 {
  0% { transform: translate(-50%, -50%) scale(1); opacity: 0.75; }
  75%, 100% { transform: translate(-50%, -50%) scale(3.5); opacity: 0; }
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_title__Hm2X9 {
  color: #2C3E50 !important; /* Charcoal */
  font-weight: 900 !important;
  text-transform: uppercase !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  font-size: 1.5rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_title__Hm2X9 { font-size: 2.25rem !important; }
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_desc__Hm2X9 {
  margin-top: 1.5rem !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 1rem !important;
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_desc__Hm2X9 p,
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_subText__Hm2X9 {
  color: #64748B !important;
  font-size: 0.875rem !important;
  line-height: 1.7 !important;
}

/* ── Buttons ── */
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_btnPrimary__Hm2X9 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  background-color: #1B365D !important;
  color: #FFFFFF !important;
  padding: 1rem 2rem !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 0.375rem !important;
  border: 2px solid #1B365D !important;
  cursor: pointer !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease !important;
  box-shadow: 0 4px 14px rgba(27, 54, 93, 0.15) !important;
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_btnPrimary__Hm2X9:hover {
  transform: translateY(-3px) !important;
  background-color: #152a4a !important;
  box-shadow: 0 10px 25px rgba(27, 54, 93, 0.25) !important;
}

/* ── Quote Block ── */
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_quoteBlock__Hm2X9 {
  padding: 2rem !important;
  background-color: #FFFFFF !important;
  border-left: 4px solid #1B365D !important;
  margin-bottom: 4rem !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_quoteText__Hm2X9 {
  color: #2C3E50 !important;
  font-size: 0.875rem !important;
  line-height: 1.7 !important;
  font-style: italic !important;
}

/* ── Pillars Track (Mobile Swipe / Desktop Grid) ── */
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_swipeHint__Hm2X9 {
  display: block !important;
  text-align: center !important;
  font-size: 0.625rem !important;
  color: #94A3B8 !important;
  font-family: monospace !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 0.75rem !important;
  animation: NanaimoHomeIntro_pulse__Hm2X9 2s infinite !important;
}

@media (min-width: 768px) {
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_swipeHint__Hm2X9 { display: none !important; }
}

@keyframes NanaimoHomeIntro_pulse__Hm2X9 {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.4; }
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pillarsTrack__Hm2X9 {
  display: flex !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  gap: 1.5rem !important;
  padding-bottom: 1.5rem !important;
  -ms-overflow-style: none !important;
  scrollbar-width: none !important;
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pillarsTrack__Hm2X9::-webkit-scrollbar { display: none !important; }

@media (min-width: 768px) {
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pillarsTrack__Hm2X9 {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    overflow-x: visible !important;
    scroll-snap-type: none !important;
  }
}

@media (min-width: 1024px) {
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pillarsTrack__Hm2X9 {
    grid-template-columns: repeat(4, 1fr) !important;
  }
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pillar__Hm2X9 {
  flex-shrink: 0 !important;
  width: 85vw !important;
  scroll-snap-align: center !important;
  padding: 1.5rem !important;
  background-color: #FFFFFF !important;
  border: 1px solid #EAEAEA !important;
  border-radius: 0.5rem !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
  transition: border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease !important;
  display: flex !important;
  flex-direction: column !important;
}

@media (min-width: 640px) {
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pillar__Hm2X9 { width: 350px !important; }
}
@media (min-width: 768px) {
  #NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pillar__Hm2X9 { width: auto !important; }
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pillar__Hm2X9:hover {
  border-color: rgba(27, 54, 93, 0.3) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 10px 25px rgba(0,0,0,0.08) !important;
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pillarTitle__Hm2X9 {
  color: #2C3E50 !important;
  font-size: 0.875rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 1rem !important;
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pillarDesc__Hm2X9 {
  color: #64748B !important;
  font-size: 0.75rem !important;
  line-height: 1.6 !important;
}

/* ── CLASS-BASED ANIMATION STATES (Section 10.5) ── */
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_anim__Hm2X9 {
  opacity: 0 !important;
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_anim__Hm2X9.NanaimoHomeIntro_animated__Hm2X9 {
  opacity: 1 !important;
  transform: translate(0, 0) !important;
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_slideUp__Hm2X9 {
  transform: translateY(40px) !important;
}

#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_slideLeft__Hm2X9 {
  transform: translateX(30px) !important;
}

/* Apply transitions */
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_textCol__Hm2X9,
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_btnCol__Hm2X9,
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_subCol__Hm2X9,
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_quoteBlock__Hm2X9,
#NanaimoHomeIntro_root__Hm2X9 .NanaimoHomeIntro_pillar__Hm2X9 {
  transition: opacity 0.8s cubic-bezier(0.19, 1, 0.22, 1), 
              transform 0.8s cubic-bezier(0.19, 1, 0.22, 1) !important;
}
 
/* ── Scoped Reset ── */
#NanaimoHomeCore_root__Cr5V8,
#NanaimoHomeCore_root__Cr5V8 *,
#NanaimoHomeCore_root__Cr5V8 *::before,
#NanaimoHomeCore_root__Cr5V8 *::after {
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

#NanaimoHomeCore_root__Cr5V8 {
  font-family: &quot;Inter&quot;, system-ui, -apple-system, sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
  width: 100% !important;
  /* NO overflow-x: hidden on root (Rule #9 Trap avoided) */
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_inner__Cr5V8 {
  max-width: 80rem !important;
  margin: 0 auto !important;
  padding: 0 1rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_inner__Cr5V8 { padding: 0 1.5rem !important; }
}
@media (min-width: 1024px) {
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_inner__Cr5V8 { padding: 0 2rem !important; }
}

/* ── Section Backgrounds ── */
#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_sec4__Cr5V8 {
  background-color: #F1F5F9 !important;
  border-bottom: 1px solid #EAEAEA !important;
  padding: 6rem 0 !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_sec5__Cr5V8 {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid #EAEAEA !important;
  padding: 6rem 0 !important;
}

/* ── Shared Typography &amp; Badges ── */
#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_badge__Cr5V8 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  color: #1B365D !important;
  font-family: &quot;Courier New&quot;, monospace !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 1.5rem !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_staticDot__Cr5V8 {
  width: 0.375rem !important;
  height: 0.375rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  display: block !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_title__Cr5V8 {
  color: #2C3E50 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  font-size: 1.5rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_title__Cr5V8 { font-size: 2.25rem !important; }
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_subtitle__Cr5V8,
#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_subText__Cr5V8 {
  color: #64748B !important;
  font-size: 0.875rem !important;
  line-height: 1.7 !important;
  margin-top: 1rem !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_header__Cr5V8 {
  text-align: center !important;
  max-width: 48rem !important;
  margin: 0 auto 4rem auto !important;
}

/* ── Grids ── */
#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_grid__Cr5V8 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 3rem !important;
  align-items: center !important;
}

@media (min-width: 1024px) {
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_grid__Cr5V8 { grid-template-columns: repeat(12, 1fr) !important; }
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_sec5__Cr5V8 .NanaimoHomeCore_textCol__Cr5V8 { grid-column: span 6 !important; text-align: left !important; margin: 0 !important; }
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_sec5__Cr5V8 .NanaimoHomeCore_subCol__Cr5V8 { grid-column: span 6 !important; display: flex !important; flex-direction: column !important; justify-content: flex-end !important; }
}
#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_mb16__Cr5V8 { margin-bottom: 4rem !important; }

/* ═══════════════════════════════════════════ */
/* SECTION 4: CORE SERVICES                    */
/* ═══════════════════════════════════════════ */

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_servicesList__Cr5V8 {
  display: flex !important;
  flex-direction: column !important;
  gap: 2rem !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_serviceCard__Cr5V8 {
  background-color: #FFFFFF !important;
  border: 1px solid #EAEAEA !important;
  padding: 2rem !important;
  position: relative !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1.5rem !important;
  align-items: center !important;
  cursor: pointer !important;
  transition: border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease !important;
}

@media (min-width: 1024px) {
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_serviceCard__Cr5V8 {
    grid-template-columns: auto 1fr auto !important;
    gap: 2rem !important;
  }
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_serviceCard__Cr5V8:hover {
  border-color: rgba(27, 54, 93, 0.3) !important;
  transform: scale(1.005) !important;
  box-shadow: 0 10px 25px rgba(0,0,0,0.05) !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_serviceAccent__Cr5V8 {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 4px !important;
  height: 100% !important;
  background-color: #1B365D !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_serviceNum__Cr5V8 {
  font-size: 1.875rem !important;
  font-family: monospace !important;
  font-weight: 900 !important;
  color: #1B365D !important;
  display: flex !important;
  justify-content: flex-start !important;
}

@media (min-width: 1024px) {
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_serviceNum__Cr5V8 { justify-content: center !important; }
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_serviceTitle__Cr5V8 {
  color: #2C3E50 !important;
  font-size: 1rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 0.75rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_serviceTitle__Cr5V8 { font-size: 1.125rem !important; }
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_serviceDesc__Cr5V8 {
  color: #64748B !important;
  font-size: 0.75rem !important;
  line-height: 1.6 !important;
  margin-bottom: 1rem !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_tags__Cr5V8 {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.5rem !important;
  margin-top: 0.5rem !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_tag__Cr5V8 {
  font-size: 0.625rem !important;
  font-family: monospace !important;
  color: #4A5568 !important;
  background-color: #F1F5F9 !important;
  padding: 0.25rem 0.5rem !important;
  border-radius: 0.125rem !important;
  border: 1px solid transparent !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_tag__Cr5V8:hover {
  background-color: rgba(27, 54, 93, 0.1) !important;
  color: #1B365D !important;
  border-color: rgba(27, 54, 93, 0.2) !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_serviceAction__Cr5V8 {
  display: flex !important;
  justify-content: flex-start !important;
  margin-top: 1rem !important;
}

@media (min-width: 1024px) {
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_serviceAction__Cr5V8 { justify-content: flex-end !important; margin-top: 0 !important; }
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_btnPrimary__Cr5V8 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  background-color: #1B365D !important;
  color: #FFFFFF !important;
  padding: 0.875rem 1.5rem !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 0.25rem !important;
  border: none !important;
  cursor: pointer !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease !important;
  box-shadow: 0 4px 14px rgba(27, 54, 93, 0.15) !important;
  white-space: nowrap !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_btnPrimary__Cr5V8:hover {
  transform: translateY(-2px) !important;
  background-color: #152a4a !important;
  box-shadow: 0 10px 20px rgba(27, 54, 93, 0.25) !important;
}

/* ═══════════════════════════════════════════ */
/* SECTION 5: WHY CHOOSE US                    */
/* ═══════════════════════════════════════════ */

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuGrid__Cr5V8 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 3rem !important;
  align-items: flex-start !important;
}

@media (min-width: 1024px) {
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuGrid__Cr5V8 {
    grid-template-columns: repeat(12, 1fr) !important;
  }
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuList__Cr5V8 { grid-column: span 5 !important; }
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuDetailWrap__Cr5V8 { grid-column: span 7 !important; }
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuList__Cr5V8 {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.5rem !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuItem__Cr5V8 {
  padding: 1.25rem !important;
  border-left: 4px solid transparent !important;
  background-color: rgba(248, 250, 252, 0.5) !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuItem__Cr5V8:hover {
  border-left-color: #CBD5E1 !important;
  background-color: #F8FAFC !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuItem__Cr5V8.NanaimoHomeCore_active__Cr5V8 {
  border-left-color: #1B365D !important;
  background-color: rgba(27, 54, 93, 0.05) !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuItemInner__Cr5V8 {
  display: flex !important;
  align-items: center !important;
  gap: 1rem !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuNum__Cr5V8 {
  font-family: monospace !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  color: #64748B !important;
  transition: color 0.2s ease !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuItem__Cr5V8.NanaimoHomeCore_active__Cr5V8 .NanaimoHomeCore_wcuNum__Cr5V8 {
  color: #1B365D !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuTitle__Cr5V8 {
  font-size: 0.875rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #2C3E50 !important;
  transition: color 0.2s ease !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuItem__Cr5V8.NanaimoHomeCore_active__Cr5V8 .NanaimoHomeCore_wcuTitle__Cr5V8 {
  color: #1B365D !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuArrow__Cr5V8 {
  width: 1rem !important;
  height: 1rem !important;
  color: #64748B !important;
  opacity: 0 !important;
  transform: translateX(-10px) !important;
  transition: all 0.2s ease !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuItem__Cr5V8:hover .NanaimoHomeCore_wcuArrow__Cr5V8 {
  opacity: 0.5 !important;
  transform: translateX(0) !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuItem__Cr5V8.NanaimoHomeCore_active__Cr5V8 .NanaimoHomeCore_wcuArrow__Cr5V8 {
  color: #1B365D !important;
  opacity: 1 !important;
  transform: translateX(0) scale(1.1) !important;
}

/* Right Detail Card Wrapper */
#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuDetailWrap__Cr5V8 {
  position: relative !important;
  min-height: 400px !important;
  background-color: #F8FAFC !important;
  border: 1px solid #EAEAEA !important;
  overflow: hidden !important;
}

@media (min-width: 640px) {
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuDetailWrap__Cr5V8 { min-height: 450px !important; }
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuDetail__Cr5V8 {
  position: absolute !important;
  inset: 0 !important;
  padding: 2rem !important;
  opacity: 0 !important;
  transform: translateX(15px) !important;
  transition: opacity 0.3s ease-out, transform 0.3s ease-out !important;
  pointer-events: none !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}

@media (min-width: 640px) {
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuDetail__Cr5V8 { padding: 2.5rem !important; }
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuDetail__Cr5V8.NanaimoHomeCore_active__Cr5V8 {
  opacity: 1 !important;
  transform: translateX(0) !important;
  pointer-events: auto !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuBgIcon__Cr5V8 {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  padding: 2rem !important;
  opacity: 0.05 !important;
  color: #1B365D !important;
  pointer-events: none !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuContent__Cr5V8 {
  position: relative !important;
  z-index: 10 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 1.5rem !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuIconBox__Cr5V8 {
  width: 3.5rem !important;
  height: 3.5rem !important;
  background-color: #FFFFFF !important;
  border: 1px solid #EAEAEA !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #1B365D !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuLabel__Cr5V8 {
  display: block !important;
  font-size: 0.625rem !important;
  font-family: monospace !important;
  font-weight: 700 !important;
  color: #1B365D !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 0.375rem !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuDetailTitle__Cr5V8 {
  font-size: 1.25rem !important;
  font-weight: 900 !important;
  color: #2C3E50 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

@media (min-width: 640px) {
  #NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuDetailTitle__Cr5V8 { font-size: 1.5rem !important; }
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuDetailDesc__Cr5V8 {
  color: #64748B !important;
  font-size: 0.875rem !important;
  line-height: 1.7 !important;
  max-width: 36rem !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuFooter__Cr5V8 {
  border-top: 1px solid #EAEAEA !important;
  padding-top: 1.5rem !important;
  margin-top: auto !important;
  position: relative !important;
  z-index: 10 !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuFooter__Cr5V8 span:last-child {
  font-family: monospace !important;
  font-size: 0.625rem !important;
  font-weight: 700 !important;
  color: #1B365D !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_pulseDot__Cr5V8 {
  width: 0.5rem !important;
  height: 0.5rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  animation: NanaimoHomeCore_pulse__Cr5V8 2s infinite !important;
}

@keyframes NanaimoHomeCore_pulse__Cr5V8 {
  0% { box-shadow: 0 0 0 0 rgba(27, 54, 93, 0.4); }
  70% { box-shadow: 0 0 0 10px rgba(27, 54, 93, 0); }
  100% { box-shadow: 0 0 0 0 rgba(27, 54, 93, 0); }
}

/* ── CLASS-BASED ANIMATION STATES (Section 10.5) ── */
#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_anim__Cr5V8 {
  opacity: 0 !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_anim__Cr5V8.NanaimoHomeCore_animated__Cr5V8 {
  opacity: 1 !important;
  transform: translate(0, 0) !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_slideUp__Cr5V8 {
  transform: translateY(40px) !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_slideLeft__Cr5V8 {
  transform: translateX(30px) !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_slideRight__Cr5V8 {
  transform: translateX(-30px) !important;
}

#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_header__Cr5V8,
#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_serviceCard__Cr5V8,
#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_textCol__Cr5V8,
#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_subCol__Cr5V8,
#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuList__Cr5V8,
#NanaimoHomeCore_root__Cr5V8 .NanaimoHomeCore_wcuDetailWrap__Cr5V8 {
  transition: opacity 0.8s cubic-bezier(0.19, 1, 0.22, 1), 
              transform 0.8s cubic-bezier(0.19, 1, 0.22, 1) !important;
}
 
/* ── Scoped Reset ── */
#NanaimoHomeMid_root__Md6K1,
#NanaimoHomeMid_root__Md6K1 *,
#NanaimoHomeMid_root__Md6K1 *::before,
#NanaimoHomeMid_root__Md6K1 *::after {
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

#NanaimoHomeMid_root__Md6K1 {
  font-family: &quot;Inter&quot;, system-ui, -apple-system, sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
  width: 100% !important;
  /* NO overflow-x: hidden on root (Rule #9 Trap avoided) */
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_inner__Md6K1 {
  max-width: 80rem !important;
  margin: 0 auto !important;
  padding: 0 1rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_inner__Md6K1 { padding: 0 1.5rem !important; }
}
@media (min-width: 1024px) {
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_inner__Md6K1 { padding: 0 2rem !important; }
}

/* ── Section Backgrounds ── */
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_sec6__Md6K1 {
  background-color: #F1F5F9 !important;
  padding: 6rem 0 !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_midCta__Md6K1 {
  background-color: #2C3E50 !important; /* Charcoal */
  padding: 5rem 1rem !important;
  border-top: 1px solid #1A2536 !important;
  border-bottom: 1px solid #1A2536 !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_sec7__Md6K1 {
  background-color: #FFFFFF !important;
  padding: 6rem 0 !important;
  border-bottom: 1px solid #EAEAEA !important;
}

/* ── Shared Typography &amp; Badges ── */
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_badge__Md6K1 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  color: #1B365D !important; /* Navy Blue */
  font-family: &quot;Courier New&quot;, monospace !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 1.5rem !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_staticDot__Md6K1 {
  width: 0.375rem !important;
  height: 0.375rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  display: block !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_title__Md6K1 {
  color: #2C3E50 !important; /* Charcoal */
  font-weight: 900 !important;
  text-transform: uppercase !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  font-size: 1.5rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_title__Md6K1 { font-size: 2.25rem !important; }
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_desc__Md6K1 {
  color: #64748B !important;
  font-size: 0.875rem !important;
  line-height: 1.7 !important;
  margin-top: 1rem !important;
}

/* ── Header Grids ── */
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_headerGrid__Md6K1 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 2rem !important;
  align-items: end !important;
}

@media (min-width: 1024px) {
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_headerGrid__Md6K1 { grid-template-columns: repeat(12, 1fr) !important; }
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_textCol__Md6K1 { grid-column: span 8 !important; }
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_btnCol__Md6K1 { grid-column: span 4 !important; display: flex !important; justify-content: flex-end !important; align-items: flex-end !important; }
}
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_mb16__Md6K1 { margin-bottom: 4rem !important; }

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_btnPrimary__Md6K1 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  background-color: #1B365D !important;
  color: #FFFFFF !important;
  padding: 0.875rem 1.5rem !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 0.25rem !important;
  border: 2px solid #1B365D !important;
  cursor: pointer !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease !important;
  box-shadow: 0 4px 14px rgba(27, 54, 93, 0.15) !important;
  white-space: nowrap !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_btnPrimary__Md6K1:hover {
  transform: translateY(-2px) !important;
  background-color: #152a4a !important;
  box-shadow: 0 10px 20px rgba(27, 54, 93, 0.25) !important;
}

/* ── Swipe Hint ── */
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_swipeHint__Md6K1 {
  display: block !important;
  text-align: center !important;
  font-size: 0.625rem !important;
  color: #94A3B8 !important;
  font-family: monospace !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 0.75rem !important;
  animation: NanaimoHomeMid_pulse__Md6K1 2s infinite !important;
}

@media (min-width: 768px) {
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_swipeHint__Md6K1 { display: none !important; }
}

@keyframes NanaimoHomeMid_pulse__Md6K1 {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.4; }
}

/* ── Swipe Tracks ── */
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_track__Md6K1 {
  display: flex !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  gap: 1.5rem !important;
  padding-bottom: 1.5rem !important;
  -ms-overflow-style: none !important;
  scrollbar-width: none !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_track__Md6K1::-webkit-scrollbar { display: none !important; }

@media (min-width: 768px) {
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_track__Md6K1 {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    overflow-x: visible !important;
    scroll-snap-type: none !important;
  }
}

@media (min-width: 1024px) {
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_sec6__Md6K1 .NanaimoHomeMid_track__Md6K1 {
    grid-template-columns: repeat(4, 1fr) !important;
  }
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_sec7__Md6K1 .NanaimoHomeMid_track__Md6K1 {
    grid-template-columns: repeat(5, 1fr) !important;
  }
}

/* ── Driveway Cards (Navy) ── */
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_drvCard__Md6K1 {
  flex-shrink: 0 !important;
  width: 85vw !important;
  scroll-snap-align: center !important;
  background-color: #1B365D !important;
  padding: 1.5rem !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  min-height: 220px !important;
  cursor: pointer !important;
  transition: transform 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease !important;
  border-radius: 0.25rem !important;
  overflow: hidden !important;
}

@media (min-width: 640px) {
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_drvCard__Md6K1 { width: 350px !important; }
}
@media (min-width: 768px) {
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_drvCard__Md6K1 { width: auto !important; }
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_drvCard__Md6K1:hover {
  background-color: #152a4a !important;
  transform: scale(1.02) !important;
  box-shadow: 0 15px 30px rgba(27, 54, 93, 0.2) !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_cardNum__Md6K1 {
  position: absolute !important;
  top: 1rem !important;
  right: 1.5rem !important;
  font-size: 1.5rem !important;
  font-family: monospace !important;
  font-weight: 900 !important;
  color: rgba(255, 255, 255, 0.1) !important;
  transition: color 0.3s ease !important;
  pointer-events: none !important;
  user-select: none !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_drvCard__Md6K1:hover .NanaimoHomeMid_cardNum__Md6K1 {
  color: rgba(255, 255, 255, 0.25) !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_cardTitle__Md6K1 {
  color: #FFFFFF !important;
  font-size: 0.875rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 1rem !important;
  position: relative !important;
  z-index: 2 !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_cardDesc__Md6K1 {
  color: rgba(255, 255, 255, 0.85) !important;
  font-size: 0.75rem !important;
  line-height: 1.6 !important;
  position: relative !important;
  z-index: 2 !important;
}

/* ── Gate Cards (Silver) ── */
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_gateCard__Md6K1 {
  flex-shrink: 0 !important;
  width: 85vw !important;
  scroll-snap-align: center !important;
  background-color: #F8FAFC !important;
  border: 1px solid #EAEAEA !important;
  padding: 1.5rem !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  min-height: 220px !important;
  cursor: pointer !important;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
  border-radius: 0.25rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_gateCard__Md6K1 { width: 350px !important; }
}
@media (min-width: 768px) {
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_gateCard__Md6K1 { width: auto !important; }
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_gateCard__Md6K1:hover {
  border-color: rgba(27, 54, 93, 0.3) !important;
  transform: scale(1.02) !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05) !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_gateTitle__Md6K1 {
  color: #1B365D !important; /* Navy Blue */
  font-size: 0.75rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 1rem !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_gateDesc__Md6K1 {
  color: #64748B !important;
  font-size: 0.75rem !important;
  line-height: 1.6 !important;
}

/* ── Mid CTA ── */
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_midCtaInner__Md6K1 {
  max-width: 80rem !important;
  margin: 0 auto !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 1.5rem !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_ctaBadge__Md6K1 {
  font-size: 0.625rem !important;
  font-family: monospace !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  color: #94A3B8 !important;
  text-transform: uppercase !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_ctaTitle__Md6K1 {
  color: #FFFFFF !important;
  font-size: 1.5rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  max-width: 42rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_ctaTitle__Md6K1 { font-size: 1.875rem !important; }
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_ctaDesc__Md6K1 {
  color: #CBD5E1 !important;
  font-size: 0.875rem !important;
  line-height: 1.6 !important;
  max-width: 36rem !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_ctaBtns__Md6K1 {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 1rem !important;
  justify-content: center !important;
  margin-top: 0.5rem !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_ctaBtnPrimary__Md6K1 {
  background-color: #1B365D !important;
  color: #FFFFFF !important;
  padding: 0.875rem 1.5rem !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 0.25rem !important;
  border: 2px solid #1B365D !important;
  transition: all 0.2s ease !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_ctaBtnPrimary__Md6K1:hover {
  background-color: #152a4a !important;
  transform: translateY(-2px) !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_ctaBtnSecondary__Md6K1 {
  background-color: transparent !important;
  color: #FFFFFF !important;
  padding: 0.875rem 1.5rem !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 0.25rem !important;
  border: 2px solid rgba(255, 255, 255, 0.3) !important;
  transition: all 0.2s ease !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_ctaBtnSecondary__Md6K1:hover {
  border-color: #FFFFFF !important;
  background-color: rgba(255, 255, 255, 0.1) !important;
  transform: translateY(-2px) !important;
}

/* ── CLASS-BASED ANIMATION STATES (Section 10.5) ── */
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_anim__Md6K1 {
  opacity: 0 !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_anim__Md6K1.NanaimoHomeMid_animated__Md6K1 {
  opacity: 1 !important;
  transform: translate(0, 0) !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_slideUp__Md6K1 {
  transform: translateY(40px) !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_slideLeft__Md6K1 {
  transform: translateX(30px) !important;
}

#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_textCol__Md6K1,
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_btnCol__Md6K1,
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_midCtaInner__Md6K1,
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_drvCard__Md6K1,
#NanaimoHomeMid_root__Md6K1 .NanaimoHomeMid_gateCard__Md6K1 {
  transition: opacity 0.8s cubic-bezier(0.19, 1, 0.22, 1), 
              transform 0.8s cubic-bezier(0.19, 1, 0.22, 1) !important;
}
 
/* ── Scoped Reset ── */
#NanaimoHomeAutoRepair_root__Ar9P3,
#NanaimoHomeAutoRepair_root__Ar9P3 *,
#NanaimoHomeAutoRepair_root__Ar9P3 *::before,
#NanaimoHomeAutoRepair_root__Ar9P3 *::after {
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 {
  font-family: &quot;Inter&quot;, system-ui, -apple-system, sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
  width: 100% !important;
  /* NO overflow-x: hidden on root (Rule #9 Trap avoided) */
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_inner__Ar9P3 {
  max-width: 80rem !important;
  margin: 0 auto !important;
  padding: 0 1rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_inner__Ar9P3 { padding: 0 1.5rem !important; }
}
@media (min-width: 1024px) {
  #NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_inner__Ar9P3 { padding: 0 2rem !important; }
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_relative__Ar9P3 {
  position: relative !important;
  z-index: 10 !important;
}

/* ── Section Backgrounds ── */
#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_sec8__Ar9P3 {
  background-color: #F8FAFC !important;
  border-bottom: 1px solid #EAEAEA !important;
  padding: 6rem 0 !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_sec9__Ar9P3 {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid #EAEAEA !important;
  padding: 6rem 0 !important;
  position: relative !important;
  overflow: hidden !important; /* Safe: no sticky elements inside */
}

/* ── Shared Typography &amp; Badges ── */
#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_badge__Ar9P3 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  color: #1B365D !important;
  font-family: &quot;Courier New&quot;, monospace !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 1.5rem !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_staticDot__Ar9P3 {
  width: 0.375rem !important;
  height: 0.375rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  display: block !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_pulseDot__Ar9P3 {
  width: 0.375rem !important;
  height: 0.375rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  display: block !important;
  animation: NanaimoHomeAutoRepair_pulse__Ar9P3 2s infinite !important;
}

@keyframes NanaimoHomeAutoRepair_pulse__Ar9P3 {
  0% { box-shadow: 0 0 0 0 rgba(27, 54, 93, 0.4); }
  70% { box-shadow: 0 0 0 10px rgba(27, 54, 93, 0); }
  100% { box-shadow: 0 0 0 0 rgba(27, 54, 93, 0); }
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_title__Ar9P3 {
  color: #2C3E50 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  font-size: 1.5rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_title__Ar9P3 { font-size: 2.25rem !important; }
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_desc__Ar9P3 {
  color: #64748B !important;
  font-size: 0.875rem !important;
  line-height: 1.7 !important;
  margin-top: 1rem !important;
}

/* ── Grids &amp; Layout ── */
#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_headerGrid__Ar9P3,
#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_grid__Ar9P3 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 3rem !important;
  align-items: center !important;
}

@media (min-width: 1024px) {
  #NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_headerGrid__Ar9P3,
  #NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_grid__Ar9P3 { 
    grid-template-columns: repeat(12, 1fr) !important; 
  }
  #NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_sec8__Ar9P3 .NanaimoHomeAutoRepair_textCol__Ar9P3 { grid-column: span 8 !important; }
  #NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_sec8__Ar9P3 .NanaimoHomeAutoRepair_btnCol__Ar9P3 { grid-column: span 4 !important; display: flex !important; justify-content: flex-end !important; align-items: flex-end !important; }
  
  #NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_sec9__Ar9P3 .NanaimoHomeAutoRepair_textCol__Ar9P3 { grid-column: span 7 !important; align-items: flex-start !important; }
  #NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_sec9__Ar9P3 .NanaimoHomeAutoRepair_cardCol__Ar9P3 { grid-column: span 5 !important; }
}
#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_mb16__Ar9P3 { margin-bottom: 4rem !important; }

/* ── Buttons ── */
#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_btnPrimary__Ar9P3 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  background-color: #1B365D !important;
  color: #FFFFFF !important;
  padding: 0.875rem 1.5rem !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 0.25rem !important;
  border: 2px solid #1B365D !important;
  cursor: pointer !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease !important;
  box-shadow: 0 4px 14px rgba(27, 54, 93, 0.15) !important;
  white-space: nowrap !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_btnPrimary__Ar9P3:hover {
  transform: translateY(-2px) !important;
  background-color: #152a4a !important;
  box-shadow: 0 10px 20px rgba(27, 54, 93, 0.25) !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_btnSecondary__Ar9P3 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  background-color: transparent !important;
  color: #1B365D !important;
  padding: 0.875rem 1.5rem !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 0.25rem !important;
  border: 2px solid #1B365D !important;
  cursor: pointer !important;
  transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease !important;
  white-space: nowrap !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_btnSecondary__Ar9P3:hover {
  transform: translateY(-2px) !important;
  background-color: #1B365D !important;
  color: #FFFFFF !important;
}

/* ═══════════════════════════════════════════ */
/* SECTION 8: AUTOMATION LIST                  */
/* ═══════════════════════════════════════════ */

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoList__Ar9P3 {
  display: flex !important;
  flex-direction: column !important;
  gap: 1rem !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoItem__Ar9P3 {
  background-color: #FFFFFF !important;
  border: 1px solid #EAEAEA !important;
  padding: 1.5rem !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 1.5rem !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  cursor: pointer !important;
  transition: border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease !important;
}

@media (min-width: 768px) {
  #NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoItem__Ar9P3 {
    flex-direction: row !important;
    align-items: center !important;
  }
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoItem__Ar9P3:hover {
  border-color: rgba(27, 54, 93, 0.3) !important;
  transform: scale(1.002) !important;
  box-shadow: 0 10px 25px rgba(0,0,0,0.03) !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoLeft__Ar9P3 {
  display: flex !important;
  flex-direction: column !important;
  gap: 1.5rem !important;
  flex: 1 !important;
}

@media (min-width: 768px) {
  #NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoLeft__Ar9P3 {
    flex-direction: row !important;
    align-items: center !important;
  }
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoIcon__Ar9P3 {
  width: 3rem !important;
  height: 3rem !important;
  flex-shrink: 0 !important;
  background-color: #F8FAFC !important;
  border: 1px solid #EAEAEA !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #64748B !important;
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoItem__Ar9P3:hover .NanaimoHomeAutoRepair_autoIcon__Ar9P3 {
  background-color: rgba(27, 54, 93, 0.05) !important;
  color: #1B365D !important;
  border-color: rgba(27, 54, 93, 0.2) !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoTitle__Ar9P3 {
  color: #2C3E50 !important;
  font-size: 1rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 0.375rem !important;
  transition: color 0.2s ease !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoItem__Ar9P3:hover .NanaimoHomeAutoRepair_autoTitle__Ar9P3 {
  color: #1B365D !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoDesc__Ar9P3 {
  color: #64748B !important;
  font-size: 0.75rem !important;
  line-height: 1.6 !important;
  max-width: 48rem !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoLink__Ar9P3 {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  font-size: 0.75rem !important;
  font-family: monospace !important;
  font-weight: 700 !important;
  color: rgba(27, 54, 93, 0.7) !important;
  transition: color 0.2s ease !important;
  flex-shrink: 0 !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoItem__Ar9P3:hover .NanaimoHomeAutoRepair_autoLink__Ar9P3 {
  color: #1B365D !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoLink__Ar9P3 svg {
  transition: transform 0.2s ease !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoItem__Ar9P3:hover .NanaimoHomeAutoRepair_autoLink__Ar9P3 svg {
  transform: translateX(4px) !important;
}

/* ═══════════════════════════════════════════ */
/* SECTION 9: REPAIR &amp; MAINTENANCE             */
/* ═══════════════════════════════════════════ */

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_bgGear__Ar9P3 {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 500px !important;
  height: 500px !important;
  opacity: 0.03 !important;
  color: #1B365D !important;
  pointer-events: none !important;
  user-select: none !important;
  animation: NanaimoHomeAutoRepair_spin__Ar9P3 40s linear infinite !important;
  z-index: 1 !important;
}

@keyframes NanaimoHomeAutoRepair_spin__Ar9P3 {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to { transform: translate(-50%, -50%) rotate(360deg); }
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_emergencyBox__Ar9P3 {
  background-color: #F8FAFC !important;
  border-left: 4px solid #1B365D !important;
  padding: 1.5rem !important;
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_emergencyTitle__Ar9P3 {
  color: #2C3E50 !important;
  font-size: 0.75rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 0.5rem !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_emergencyDesc__Ar9P3 {
  color: #64748B !important;
  font-size: 0.75rem !important;
  line-height: 1.6 !important;
  margin-top: 0 !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_btnGroup__Ar9P3 {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 1rem !important;
  margin-bottom: 1.5rem !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_phoneText__Ar9P3 {
  font-size: 0.75rem !important;
  font-family: monospace !important;
  color: #94A3B8 !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_phoneNum__Ar9P3 {
  color: #1B365D !important;
  font-weight: 700 !important;
  font-size: 0.875rem !important;
}

/* Right Column Card */
#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_problemsCard__Ar9P3 {
  background-color: #F8FAFC !important;
  border: 1px solid #EAEAEA !important;
  padding: 2rem !important;
  position: relative !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_cardCorner__Ar9P3 {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  width: 0.75rem !important;
  height: 0.75rem !important;
  background-color: #1B365D !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_cardTitle__Ar9P3 {
  color: #2C3E50 !important;
  font-size: 0.875rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 1.5rem !important;
  padding-bottom: 0.75rem !important;
  border-bottom: 1px solid #EAEAEA !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_problemsList__Ar9P3 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.75rem !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_problemItem__Ar9P3 {
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.75rem !important;
  font-size: 0.75rem !important;
  color: #64748B !important;
  transition: color 0.2s ease !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_problemItem__Ar9P3:hover {
  color: #2C3E50 !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_problemItem__Ar9P3 svg {
  color: #1B365D !important;
  flex-shrink: 0 !important;
  margin-top: 0.125rem !important;
}

/* ── CLASS-BASED ANIMATION STATES (Section 10.5) ── */
#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_anim__Ar9P3 {
  opacity: 0 !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_anim__Ar9P3.NanaimoHomeAutoRepair_animated__Ar9P3 {
  opacity: 1 !important;
  transform: translate(0, 0) !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_slideUp__Ar9P3 {
  transform: translateY(40px) !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_slideLeft__Ar9P3 {
  transform: translateX(30px) !important;
}

#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_textCol__Ar9P3,
#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_btnCol__Ar9P3,
#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_cardCol__Ar9P3,
#NanaimoHomeAutoRepair_root__Ar9P3 .NanaimoHomeAutoRepair_autoItem__Ar9P3 {
  transition: opacity 0.8s cubic-bezier(0.19, 1, 0.22, 1), 
              transform 0.8s cubic-bezier(0.19, 1, 0.22, 1) !important;
}
 
/* ── Scoped Reset ── */
#NanaimoHomeWorkflow_root__Wf4T7,
#NanaimoHomeWorkflow_root__Wf4T7 *,
#NanaimoHomeWorkflow_root__Wf4T7 *::before,
#NanaimoHomeWorkflow_root__Wf4T7 *::after {
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 {
  font-family: &quot;Inter&quot;, system-ui, -apple-system, sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
  width: 100% !important;
  /* NO overflow-x: hidden on root (Rule #9 Trap avoided) */
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_inner__Wf4T7 {
  max-width: 80rem !important;
  margin: 0 auto !important;
  padding: 0 1rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_inner__Wf4T7 { padding: 0 1.5rem !important; }
}
@media (min-width: 1024px) {
  #NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_inner__Wf4T7 { padding: 0 2rem !important; }
}

/* ── Section Backgrounds ── */
#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_sec10__Wf4T7 {
  background-color: #F8FAFC !important; /* Light Silver */
  border-bottom: 1px solid #EAEAEA !important;
  padding: 6rem 0 !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_sec11__Wf4T7 {
  position: relative !important;
  padding: 8rem 1rem !important;
  border-bottom: 1px solid #EAEAEA !important;
  overflow: hidden !important; /* Safe: no sticky descendants */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* ── Shared Typography &amp; Badges ── */
#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_badge__Wf4T7 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  color: #1B365D !important; /* Navy Blue */
  font-family: &quot;Courier New&quot;, monospace !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 1.5rem !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_staticDot__Wf4T7 {
  width: 0.375rem !important;
  height: 0.375rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  display: block !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_title__Wf4T7 {
  color: #2C3E50 !important; /* Charcoal */
  font-weight: 900 !important;
  text-transform: uppercase !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  font-size: 1.5rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_title__Wf4T7 { font-size: 2.25rem !important; }
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_subText__Wf4T7 {
  color: #64748B !important;
  font-size: 0.875rem !important;
  line-height: 1.7 !important;
}

/* ── Header Grid ── */
#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_headerGrid__Wf4T7 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 2rem !important;
  align-items: end !important;
}

@media (min-width: 768px) {
  #NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_headerGrid__Wf4T7 {
    grid-template-columns: 1fr 1fr !important;
    gap: 3rem !important;
  }
}
#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_mb16__Wf4T7 { margin-bottom: 4rem !important; }

@media (min-width: 768px) {
  #NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_subCol__Wf4T7 {
    text-align: right !important;
  }
}

/* ═══════════════════════════════════════════ */
/* SECTION 10: WORKFLOW GRID                   */
/* ═══════════════════════════════════════════ */

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_phasesGrid__Wf4T7 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1.5rem !important;
}

@media (min-width: 768px) {
  #NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_phasesGrid__Wf4T7 { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (min-width: 1024px) {
  #NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_phasesGrid__Wf4T7 { grid-template-columns: repeat(4, 1fr) !important; }
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_phaseCard__Wf4T7 {
  background-color: #FFFFFF !important;
  border: 1px solid #EAEAEA !important;
  padding: 1.5rem !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  height: 100% !important;
  transition: border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_phaseCard__Wf4T7:hover {
  border-color: rgba(27, 54, 93, 0.3) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05) !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_cardTop__Wf4T7 {
  margin-bottom: 1.5rem !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_stepBadge__Wf4T7 {
  display: inline-block !important;
  font-size: 0.625rem !important;
  font-family: monospace !important;
  font-weight: 700 !important;
  color: #1B365D !important;
  background-color: rgba(27, 54, 93, 0.08) !important;
  padding: 0.25rem 0.625rem !important;
  border-radius: 0.125rem !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  margin-bottom: 1rem !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_phaseTitle__Wf4T7 {
  color: #2C3E50 !important;
  font-size: 0.875rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  line-height: 1.3 !important;
  margin-bottom: 0.75rem !important;
  transition: color 0.2s ease !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_phaseCard__Wf4T7:hover .NanaimoHomeWorkflow_phaseTitle__Wf4T7 {
  color: #1B365D !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_phaseDesc__Wf4T7 {
  color: #64748B !important;
  font-size: 0.75rem !important;
  line-height: 1.6 !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_bulletsWrap__Wf4T7 {
  border-top: 1px solid #F1F5F9 !important;
  padding-top: 1rem !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.375rem !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_bulletsLabel__Wf4T7 {
  font-size: 0.5625rem !important;
  font-family: monospace !important;
  color: #94A3B8 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  font-weight: 700 !important;
  margin-bottom: 0.25rem !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_bullet__Wf4T7 {
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.5rem !important;
  font-size: 0.6875rem !important;
  color: #64748B !important;
  line-height: 1.4 !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_bullet__Wf4T7 span:first-child {
  color: #1B365D !important;
  font-weight: 700 !important;
  flex-shrink: 0 !important;
}

/* ═══════════════════════════════════════════ */
/* SECTION 11: MID-PAGE CTA                    */
/* ═══════════════════════════════════════════ */

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaBg__Wf4T7 {
  position: absolute !important;
  inset: 0 !important;
  background-image: url(&quot;https://images.unsplash.com/photo-1513694203232-719a280e022f?q=80&amp;w=1920&amp;auto=format&amp;fit=crop&quot;) !important;
  background-size: cover !important;
  background-position: center !important;
  z-index: 1 !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaOverlay__Wf4T7 {
  position: absolute !important;
  inset: 0 !important;
  background-color: rgba(0, 0, 0, 0.85) !important;
  z-index: 2 !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaInner__Wf4T7 {
  position: relative !important;
  z-index: 10 !important;
  max-width: 48rem !important;
  margin: 0 auto !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 1.5rem !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaBadge__Wf4T7 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  color: #1B365D !important; /* Wait, Navy Blue on Black is hard to read. Let&#039;s use a lighter Silver/Blue or keep it White with a Navy dot. Let&#039;s use Light Silver for text, Navy dot. */
  font-family: &quot;Courier New&quot;, monospace !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

/* Adjusting badge text color for dark background contrast */
#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaBadge__Wf4T7 span:last-child {
  color: #EAEAEA !important; 
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_pulseDot__Wf4T7 {
  width: 0.375rem !important;
  height: 0.375rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  display: block !important;
  animation: NanaimoHomeWorkflow_pulse__Wf4T7 2s infinite !important;
}

@keyframes NanaimoHomeWorkflow_pulse__Wf4T7 {
  0% { box-shadow: 0 0 0 0 rgba(27, 54, 93, 0.7); }
  70% { box-shadow: 0 0 0 10px rgba(27, 54, 93, 0); }
  100% { box-shadow: 0 0 0 0 rgba(27, 54, 93, 0); }
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaTitle__Wf4T7 {
  color: #FFFFFF !important;
  font-size: 1.5rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  letter-spacing: -0.02em !important;
  max-width: 42rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaTitle__Wf4T7 { font-size: 2.25rem !important; }
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaDesc__Wf4T7 {
  color: #E2E8F0 !important; /* Slate 200 */
  font-size: 0.875rem !important;
  line-height: 1.7 !important;
  max-width: 36rem !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaBtns__Wf4T7 {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 1rem !important;
  justify-content: center !important;
  margin-top: 0.5rem !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaBtnPrimary__Wf4T7,
#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaBtnSecondary__Wf4T7 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  padding: 0.875rem 1.5rem !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 0.25rem !important;
  border: 2px solid #1B365D !important;
  cursor: pointer !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, color 0.2s ease !important;
  white-space: nowrap !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaBtnPrimary__Wf4T7 {
  background-color: #1B365D !important;
  color: #FFFFFF !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaBtnSecondary__Wf4T7 {
  background-color: transparent !important;
  color: #FFFFFF !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaBtnPrimary__Wf4T7:hover {
  transform: translateY(-2px) !important;
  background-color: #152a4a !important;
  box-shadow: 0 10px 20px rgba(27, 54, 93, 0.4) !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaBtnSecondary__Wf4T7:hover {
  transform: translateY(-2px) !important;
  border-color: #FFFFFF !important;
  background-color: rgba(255, 255, 255, 0.1) !important;
}

/* ── CLASS-BASED ANIMATION STATES (Section 10.5) ── */
#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_anim__Wf4T7 {
  opacity: 0 !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_anim__Wf4T7.NanaimoHomeWorkflow_animated__Wf4T7 {
  opacity: 1 !important;
  transform: translate(0, 0) !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_slideUp__Wf4T7 {
  transform: translateY(40px) !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_slideLeft__Wf4T7 {
  transform: translateX(30px) !important;
}

#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_textCol__Wf4T7,
#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_subCol__Wf4T7,
#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_phaseCard__Wf4T7,
#NanaimoHomeWorkflow_root__Wf4T7 .NanaimoHomeWorkflow_ctaInner__Wf4T7 {
  transition: opacity 0.8s cubic-bezier(0.19, 1, 0.22, 1), 
              transform 0.8s cubic-bezier(0.19, 1, 0.22, 1) !important;
}
 
/* ── Scoped Reset ── */
#NanaimoHomeCCA_root__Cc8A4,
#NanaimoHomeCCA_root__Cc8A4 *,
#NanaimoHomeCCA_root__Cc8A4 *::before,
#NanaimoHomeCCA_root__Cc8A4 *::after {
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

#NanaimoHomeCCA_root__Cc8A4 {
  font-family: &quot;Inter&quot;, system-ui, -apple-system, sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
  width: 100% !important;
  /* NO overflow-x: hidden on root (Rule #9 Trap avoided) */
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_inner__Cc8A4 {
  max-width: 80rem !important;
  margin: 0 auto !important;
  padding: 0 1rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_inner__Cc8A4 { padding: 0 1.5rem !important; }
}
@media (min-width: 1024px) {
  #NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_inner__Cc8A4 { padding: 0 2rem !important; }
}

/* ── Section Backgrounds ── */
#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_sec12__Cc8A4 {
  background-color: #F8FAFC !important;
  border-bottom: 1px solid #EAEAEA !important;
  padding: 6rem 0 !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_sec13__Cc8A4 {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid #EAEAEA !important;
  padding: 6rem 0 !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_sec14__Cc8A4 {
  background-color: #F8FAFC !important;
  border-bottom: 1px solid #EAEAEA !important;
  padding: 6rem 0 !important;
}

/* ── Shared Typography &amp; Badges ── */
#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_badge__Cc8A4 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  color: #1B365D !important;
  font-family: &quot;Courier New&quot;, monospace !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 1.5rem !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_staticDot__Cc8A4 {
  width: 0.375rem !important;
  height: 0.375rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  display: block !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_title__Cc8A4 {
  color: #2C3E50 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  font-size: 1.5rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_title__Cc8A4 { font-size: 2.25rem !important; }
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_desc__Cc8A4 {
  color: #64748B !important;
  font-size: 0.875rem !important;
  line-height: 1.7 !important;
  margin-top: 1rem !important;
}

/* ── Header Grids ── */
#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_headerGrid__Cc8A4 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 2rem !important;
  align-items: end !important;
}

@media (min-width: 1024px) {
  #NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_headerGrid__Cc8A4 { grid-template-columns: repeat(12, 1fr) !important; }
  #NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_textCol__Cc8A4 { grid-column: span 8 !important; }
  #NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_btnCol__Cc8A4 { grid-column: span 4 !important; display: flex !important; justify-content: flex-end !important; align-items: flex-end !important; }
}
#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_mb16__Cc8A4 { margin-bottom: 4rem !important; }

/* ── Buttons ── */
#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_btnPrimary__Cc8A4 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  background-color: #1B365D !important;
  color: #FFFFFF !important;
  padding: 1rem 1.5rem !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 0.25rem !important;
  border: 2px solid #1B365D !important;
  cursor: pointer !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease !important;
  box-shadow: 0 4px 14px rgba(27, 54, 93, 0.15) !important;
  white-space: nowrap !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_btnPrimary__Cc8A4:hover {
  transform: translateY(-2px) !important;
  background-color: #152a4a !important;
  box-shadow: 0 10px 20px rgba(27, 54, 93, 0.25) !important;
}

/* ═══════════════════════════════════════════ */
/* SECTION 12: COMMERCIAL GRID                 */
/* ═══════════════════════════════════════════ */

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_commGrid__Cc8A4 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1.5rem !important;
}

@media (min-width: 768px) {
  #NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_commGrid__Cc8A4 { grid-template-columns: repeat(2, 1fr) !important; }
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_commCard__Cc8A4 {
  background-color: #FFFFFF !important;
  border: 1px solid #EAEAEA !important;
  padding: 2rem !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  height: 100% !important;
  transition: border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_commCard__Cc8A4:hover {
  border-color: rgba(27, 54, 93, 0.3) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05) !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_commTitle__Cc8A4 {
  color: #2C3E50 !important;
  font-size: 0.875rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 0.75rem !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_commDesc__Cc8A4 {
  color: #64748B !important;
  font-size: 0.75rem !important;
  line-height: 1.6 !important;
}

/* ═══════════════════════════════════════════ */
/* SECTION 13: CUSTOM DESIGN LIST              */
/* ═══════════════════════════════════════════ */

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designList__Cc8A4 {
  border-top: 1px solid #EAEAEA !important;
  border-bottom: 1px solid #EAEAEA !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designItem__Cc8A4 {
  display: flex !important;
  flex-direction: column !important;
  gap: 1.5rem !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  padding: 1.5rem 0 !important;
  border-bottom: 1px solid #EAEAEA !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
}

@media (min-width: 768px) {
  #NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designItem__Cc8A4 {
    flex-direction: row !important;
    align-items: center !important;
    padding: 2rem 0 !important;
  }
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designItem__Cc8A4:last-child {
  border-bottom: none !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designLeft__Cc8A4 {
  display: flex !important;
  align-items: flex-start !important;
  gap: 1.5rem !important;
  flex: 1 !important;
}

@media (min-width: 768px) {
  #NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designLeft__Cc8A4 { align-items: center !important; }
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designNum__Cc8A4 {
  font-family: monospace !important;
  font-size: 0.75rem !important;
  color: #1B365D !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  margin-top: 0.25rem !important;
  flex-shrink: 0 !important;
}

@media (min-width: 768px) {
  #NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designNum__Cc8A4 { margin-top: 0 !important; }
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designTitle__Cc8A4 {
  color: #2C3E50 !important;
  font-size: 1rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 0.25rem !important;
  transition: color 0.2s ease !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designItem__Cc8A4:hover .NanaimoHomeCCA_designTitle__Cc8A4 {
  color: #1B365D !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designDesc__Cc8A4 {
  color: #64748B !important;
  font-size: 0.75rem !important;
  line-height: 1.6 !important;
  margin-top: 0.25rem !important;
  max-width: 48rem !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designLink__Cc8A4 {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  font-size: 0.75rem !important;
  font-family: monospace !important;
  font-weight: 700 !important;
  color: rgba(27, 54, 93, 0.7) !important;
  transition: color 0.2s ease !important;
  flex-shrink: 0 !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designItem__Cc8A4:hover .NanaimoHomeCCA_designLink__Cc8A4 {
  color: #1B365D !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designLink__Cc8A4 svg {
  transition: transform 0.2s ease !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designItem__Cc8A4:hover .NanaimoHomeCCA_designLink__Cc8A4 svg {
  transform: translateX(4px) !important;
}

/* ═══════════════════════════════════════════ */
/* SECTION 14: SERVICE AREAS                   */
/* ═══════════════════════════════════════════ */

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_areasCard__Cc8A4 {
  background-color: #FFFFFF !important;
  border: 1px solid #EAEAEA !important;
  padding: 2rem !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_areasTitle__Cc8A4 {
  color: #2C3E50 !important;
  font-size: 0.75rem !important;
  font-family: monospace !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  margin-bottom: 1.5rem !important;
  padding-bottom: 0.75rem !important;
  border-bottom: 1px solid #EAEAEA !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_areasGrid__Cc8A4 {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 1.5rem !important;
}

@media (min-width: 768px) {
  #NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_areasGrid__Cc8A4 { grid-template-columns: repeat(5, 1fr) !important; }
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_areaItem__Cc8A4 {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  font-size: 0.75rem !important;
  color: #64748B !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
  cursor: pointer !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_areaItem__Cc8A4:hover {
  color: #1B365D !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_areaItem__Cc8A4 svg {
  color: #1B365D !important;
  flex-shrink: 0 !important;
}

/* ── CLASS-BASED ANIMATION STATES (Section 10.5) ── */
#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_anim__Cc8A4 {
  opacity: 0 !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_anim__Cc8A4.NanaimoHomeCCA_animated__Cc8A4 {
  opacity: 1 !important;
  transform: translate(0, 0) !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_slideUp__Cc8A4 {
  transform: translateY(40px) !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_slideLeft__Cc8A4 {
  transform: translateX(30px) !important;
}

#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_textCol__Cc8A4,
#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_btnCol__Cc8A4,
#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_commCard__Cc8A4,
#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_designItem__Cc8A4,
#NanaimoHomeCCA_root__Cc8A4 .NanaimoHomeCCA_areasCard__Cc8A4 {
  transition: opacity 0.8s cubic-bezier(0.19, 1, 0.22, 1), 
              transform 0.8s cubic-bezier(0.19, 1, 0.22, 1) !important;
}
 
/* ── Scoped Reset ── */
#NanaimoHomeFinal_root__Fn3Q8,
#NanaimoHomeFinal_root__Fn3Q8 *,
#NanaimoHomeFinal_root__Fn3Q8 *::before,
#NanaimoHomeFinal_root__Fn3Q8 *::after {
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

#NanaimoHomeFinal_root__Fn3Q8 {
  font-family: &quot;Inter&quot;, system-ui, -apple-system, sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
  width: 100% !important;
  /* NO overflow-x: hidden on root (Rule #9 Trap avoided) */
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_inner__Fn3Q8 {
  max-width: 80rem !important;
  margin: 0 auto !important;
  padding: 0 1rem !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqInner__Fn3Q8 {
  max-width: 56rem !important; /* max-w-4xl */
  margin: 0 auto !important;
  padding: 0 1rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_inner__Fn3Q8,
  #NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqInner__Fn3Q8 { padding: 0 1.5rem !important; }
}
@media (min-width: 1024px) {
  #NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_inner__Fn3Q8,
  #NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqInner__Fn3Q8 { padding: 0 2rem !important; }
}

/* ── Section Backgrounds ── */
#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_sec15__Fn3Q8 {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid #EAEAEA !important;
  padding: 6rem 0 !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_sec16__Fn3Q8 {
  background-color: #F8FAFC !important;
  border-bottom: 1px solid #EAEAEA !important;
  padding: 6rem 0 !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_sec19__Fn3Q8 {
  background-color: #FFFFFF !important;
  padding: 3rem 0 !important;
}

/* ── Shared Typography &amp; Badges ── */
#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_centerHeader__Fn3Q8 {
  text-align: center !important;
  max-width: 42rem !important;
  margin: 0 auto 4rem auto !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_badge__Fn3Q8 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  color: #1B365D !important;
  font-family: &quot;Courier New&quot;, monospace !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 1rem !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_staticDot__Fn3Q8 {
  width: 0.375rem !important;
  height: 0.375rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  display: block !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_pulseDot__Fn3Q8 {
  width: 0.375rem !important;
  height: 0.375rem !important;
  background-color: #1B365D !important;
  border-radius: 9999px !important;
  display: block !important;
  animation: NanaimoHomeFinal_pulse__Fn3Q8 2s infinite !important;
}

@keyframes NanaimoHomeFinal_pulse__Fn3Q8 {
  0% { box-shadow: 0 0 0 0 rgba(27, 54, 93, 0.4); }
  70% { box-shadow: 0 0 0 10px rgba(27, 54, 93, 0); }
  100% { box-shadow: 0 0 0 0 rgba(27, 54, 93, 0); }
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_title__Fn3Q8 {
  color: #2C3E50 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  font-size: 1.5rem !important;
}

@media (min-width: 640px) {
  #NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_title__Fn3Q8 { font-size: 2.25rem !important; }
}

/* ═══════════════════════════════════════════ */
/* SECTION 15: TESTIMONIALS                    */
/* ═══════════════════════════════════════════ */

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_testGrid__Fn3Q8 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1.5rem !important;
}

@media (min-width: 768px) {
  #NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_testGrid__Fn3Q8 { grid-template-columns: repeat(3, 1fr) !important; }
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_testCard__Fn3Q8 {
  background-color: #F8FAFC !important;
  border: 1px solid #EAEAEA !important;
  padding: 2rem !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  height: 100% !important;
  transition: border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_testCard__Fn3Q8:hover {
  border-color: rgba(27, 54, 93, 0.3) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05) !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_testQuote__Fn3Q8 {
  color: #64748B !important;
  font-size: 0.75rem !important;
  font-style: italic !important;
  line-height: 1.7 !important;
  margin-bottom: 1.5rem !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_testFooter__Fn3Q8 {
  border-top: 1px solid #EAEAEA !important;
  padding-top: 1rem !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_testAuthor__Fn3Q8 {
  color: #2C3E50 !important;
  font-size: 0.75rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_testRole__Fn3Q8 {
  display: block !important;
  font-size: 0.625rem !important;
  font-family: monospace !important;
  color: #1B365D !important;
  text-transform: uppercase !important;
  margin-top: 0.25rem !important;
}

/* ═══════════════════════════════════════════ */
/* SECTION 16: FAQ ACCORDION                   */
/* ═══════════════════════════════════════════ */

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqList__Fn3Q8 {
  display: flex !important;
  flex-direction: column !important;
  gap: 1rem !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqItem__Fn3Q8 {
  background-color: #FFFFFF !important;
  border: 1px solid #EAEAEA !important;
  transition: border-color 0.3s ease !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqItem__Fn3Q8.NanaimoHomeFinal_active__Fn3Q8 {
  border-color: rgba(27, 54, 93, 0.3) !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqBtn__Fn3Q8 {
  width: 100% !important;
  padding: 1.25rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
  outline: none !important;
  text-align: left !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqQuestion__Fn3Q8 {
  font-size: 0.75rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #2C3E50 !important;
  transition: color 0.2s ease !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqBtn__Fn3Q8:hover .NanaimoHomeFinal_faqQuestion__Fn3Q8 {
  color: #1B365D !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqIcon__Fn3Q8 {
  color: #1B365D !important;
  margin-left: 1rem !important;
  flex-shrink: 0 !important;
  position: relative !important;
  width: 1rem !important;
  height: 1rem !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_iconPlus__Fn3Q8,
#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_iconMinus__Fn3Q8 {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  transition: opacity 0.25s ease, transform 0.25s ease !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_iconPlus__Fn3Q8 {
  opacity: 1 !important;
  transform: rotate(0deg) !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_iconMinus__Fn3Q8 {
  opacity: 0 !important;
  transform: rotate(-90deg) !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqItem__Fn3Q8.NanaimoHomeFinal_active__Fn3Q8 .NanaimoHomeFinal_iconPlus__Fn3Q8 {
  opacity: 0 !important;
  transform: rotate(90deg) !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqItem__Fn3Q8.NanaimoHomeFinal_active__Fn3Q8 .NanaimoHomeFinal_iconMinus__Fn3Q8 {
  opacity: 1 !important;
  transform: rotate(0deg) !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqAnswer__Fn3Q8 {
  max-height: 0 !important;
  overflow: hidden !important;
  transition: max-height 0.35s ease !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqItem__Fn3Q8.NanaimoHomeFinal_active__Fn3Q8 .NanaimoHomeFinal_faqAnswer__Fn3Q8 {
  max-height: 300px !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqAnswer__Fn3Q8 p {
  padding: 0 1.25rem 1.25rem 1.25rem !important;
  border-top: 1px solid #F1F5F9 !important;
  padding-top: 1.25rem !important;
  font-size: 0.75rem !important;
  color: #64748B !important;
  line-height: 1.7 !important;
  background-color: rgba(248, 250, 252, 0.4) !important;
}

/* ═══════════════════════════════════════════ */
/* SECTION 19: FOOTER SEO TEXT                 */
/* ═══════════════════════════════════════════ */

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_seoBox__Fn3Q8 {
  background-color: #FFFFFF !important;
  border: 1px solid #EAEAEA !important;
  padding: 1.5rem 2rem !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_seoText__Fn3Q8 {
  color: #1B365D !important; /* Navy Blue (replaces red-600) */
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  line-height: 1.7 !important;
  text-align: justify !important;
}

@media (min-width: 640px) {
  #NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_seoText__Fn3Q8 { font-size: 0.875rem !important; }
}

/* ── CLASS-BASED ANIMATION STATES (Section 10.5) ── */
#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_anim__Fn3Q8 {
  opacity: 0 !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_anim__Fn3Q8.NanaimoHomeFinal_animated__Fn3Q8 {
  opacity: 1 !important;
  transform: translate(0, 0) !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_slideUp__Fn3Q8 {
  transform: translateY(40px) !important;
}

#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_centerHeader__Fn3Q8,
#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_testCard__Fn3Q8,
#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_faqItem__Fn3Q8,
#NanaimoHomeFinal_root__Fn3Q8 .NanaimoHomeFinal_seoBox__Fn3Q8 {
  transition: opacity 0.8s cubic-bezier(0.19, 1, 0.22, 1), 
              transform 0.8s cubic-bezier(0.19, 1, 0.22, 1) !important;
}
 
/* ── Scoped Reset ── */
#NanaimoFooter_root__Ft2L8,
#NanaimoFooter_root__Ft2L8 *,
#NanaimoFooter_root__Ft2L8 *::before,
#NanaimoFooter_root__Ft2L8 *::after {
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

#NanaimoFooter_root__Ft2L8 {
  font-family: &quot;Inter&quot;, system-ui, -apple-system, sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
  width: 100% !important;
  background-color: #F8FAFC !important;
  color: #64748B !important;
  font-size: 0.75rem !important;
  border-top: 1px solid #EAEAEA !important;
  /* NO overflow-x: hidden on root (Rule #9 Trap avoided) */
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_inner__Ft2L8 {
  max-width: 80rem !important;
  margin: 0 auto !important;
  padding: 0 1rem !important;
}

@media (min-width: 640px) {
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_inner__Ft2L8 { padding: 0 1.5rem !important; }
}
@media (min-width: 1024px) {
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_inner__Ft2L8 { padding: 0 2rem !important; }
}

/* ═══════════════════════════════════════════ */
/* UPPER FOOTER CTA                            */
/* ═══════════════════════════════════════════ */

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_upperCta__Ft2L8 {
  padding: 4rem 0 !important;
  border-bottom: 1px solid #EAEAEA !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_upperGrid__Ft2L8 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 2rem !important;
  align-items: center !important;
}

@media (min-width: 768px) {
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_upperGrid__Ft2L8 {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 2rem !important;
  }
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_ctaText__Ft2L8 {
  display: flex !important;
  flex-direction: column !important;
  gap: 1rem !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_badge__Ft2L8 {
  color: #1B365D !important; /* Navy Blue */
  font-family: &quot;Courier New&quot;, monospace !important;
  font-size: 0.625rem !important;
  letter-spacing: 0.1em !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  display: block !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_ctaTitle__Ft2L8 {
  color: #2C3E50 !important; /* Charcoal */
  font-size: 1.5rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  letter-spacing: -0.02em !important;
}

@media (min-width: 640px) {
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_ctaTitle__Ft2L8 { font-size: 1.875rem !important; }
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_ctaDesc__Ft2L8 {
  color: #64748B !important;
  max-width: 32rem !important;
  line-height: 1.6 !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_ctaBtns__Ft2L8 {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 1rem !important;
}

@media (min-width: 640px) {
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_ctaBtns__Ft2L8 {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
  }
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_btnPrimary__Ft2L8,
#NanaimoFooter_root__Ft2L8 .NanaimoFooter_btnSecondary__Ft2L8 {
  display: inline-block !important;
  width: 100% !important;
  padding: 1rem 1.5rem !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  text-decoration: none !important;
  text-align: center !important;
  border-radius: 0 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
}

@media (min-width: 640px) {
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_btnPrimary__Ft2L8,
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_btnSecondary__Ft2L8 {
    width: auto !important;
  }
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_btnPrimary__Ft2L8 {
  background-color: #1B365D !important;
  color: #FFFFFF !important;
  border: 2px solid #1B365D !important;
  box-shadow: 0 4px 14px rgba(27, 54, 93, 0.15) !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_btnPrimary__Ft2L8:hover {
  background-color: #152a4a !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 20px rgba(27, 54, 93, 0.25) !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_btnSecondary__Ft2L8 {
  background-color: #F1F5F9 !important;
  color: #2C3E50 !important;
  border: 1px solid #EAEAEA !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_btnSecondary__Ft2L8:hover {
  background-color: #E2E8F0 !important;
  transform: translateY(-2px) !important;
}

/* ═══════════════════════════════════════════ */
/* MAIN FOOTER GRID                            */
/* ═══════════════════════════════════════════ */

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_mainSection__Ft2L8 {
  padding: 5rem 0 !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_mainGrid__Ft2L8 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 2.5rem !important;
}

@media (min-width: 640px) {
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_mainGrid__Ft2L8 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (min-width: 1024px) {
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_mainGrid__Ft2L8 {
    grid-template-columns: repeat(12, 1fr) !important;
    gap: 2.5rem !important;
  }
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_brandCol__Ft2L8 { grid-column: span 3 !important; }
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_navCol__Ft2L8 { grid-column: span 3 !important; }
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_detailsCol__Ft2L8 { grid-column: span 3 !important; }
}

/* ── Brand Block ── */
#NanaimoFooter_root__Ft2L8 .NanaimoFooter_brandCol__Ft2L8 {
  display: flex !important;
  flex-direction: column !important;
  gap: 1.5rem !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_logoWrap__Ft2L8 {
  display: flex !important;
  align-items: center !important;
  gap: 0.625rem !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_logoIcon__Ft2L8 {
  width: 2.5rem !important;
  height: 2.5rem !important;
  background: linear-gradient(to bottom, #FFFFFF, #E2E8F0, #94A3B8) !important;
  border: 1px solid rgba(255, 255, 255, 0.8) !important;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 0.125rem !important;
  color: #1B365D !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_logoText__Ft2L8 {
  display: flex !important;
  flex-direction: column !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_logoMain__Ft2L8 {
  font-size: 1.125rem !important;
  font-weight: 900 !important;
  letter-spacing: -0.02em !important;
  color: #2C3E50 !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_logoAccent__Ft2L8 {
  color: #1B365D !important; /* Navy Blue replaces brand-yellow */
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_logoSub__Ft2L8 {
  display: block !important;
  font-size: 0.5rem !important;
  letter-spacing: 0.25em !important;
  color: #64748B !important;
  font-family: &quot;Courier New&quot;, monospace !important;
  margin-top: -0.25rem !important;
  font-weight: 700 !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_brandDesc__Ft2L8 {
  color: #64748B !important;
  line-height: 1.6 !important;
  font-size: 0.6875rem !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_contactList__Ft2L8 {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.625rem !important;
  font-style: normal !important;
  font-family: &quot;Courier New&quot;, monospace !important;
  font-size: 0.6875rem !important;
  color: #64748B !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_contactItem__Ft2L8 {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  text-decoration: none !important;
  color: #64748B !important;
  transition: color 0.2s ease !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_contactItem__Ft2L8:hover {
  color: #1B365D !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_contactItem__Ft2L8 svg {
  color: #1B365D !important;
  flex-shrink: 0 !important;
}

/* ── Navigation Columns ── */
#NanaimoFooter_root__Ft2L8 .NanaimoFooter_navCol__Ft2L8 {
  display: flex !important;
  flex-direction: column !important;
  gap: 1rem !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_navTitle__Ft2L8 {
  font-size: 0.625rem !important;
  font-family: &quot;Courier New&quot;, monospace !important;
  letter-spacing: 0.1em !important;
  color: #2C3E50 !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_navList__Ft2L8 {
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.5rem !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_navLink__Ft2L8 {
  display: block !important;
  color: #64748B !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  transition: color 0.2s ease !important;
  text-align: left !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_navLink__Ft2L8:hover {
  color: #1B365D !important;
  text-decoration: underline !important;
}

/* ── Service Details ── */
#NanaimoFooter_root__Ft2L8 .NanaimoFooter_detailsCol__Ft2L8 {
  display: flex !important;
  flex-direction: column !important;
  gap: 1rem !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_hoursCard__Ft2L8 {
  padding: 0.75rem !important;
  background-color: #F1F5F9 !important;
  border: 1px solid #EAEAEA !important;
  border-radius: 0.125rem !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.25rem !important;
  font-size: 0.6875rem !important;
  line-height: 1.5 !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_hoursLabel__Ft2L8 {
  color: #2C3E50 !important;
  display: block !important;
  font-weight: 700 !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_hoursTime__Ft2L8 {
  color: #64748B !important;
  display: block !important;
  margin-top: 0.25rem !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_hoursEmergency__Ft2L8 {
  color: #1B365D !important;
  font-weight: 700 !important;
  display: block !important;
  margin-top: 0.125rem !important;
}

/* ═══════════════════════════════════════════ */
/* COPYRIGHT BAR                               */
/* ═══════════════════════════════════════════ */

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_copyright__Ft2L8 {
  background-color: #FFFFFF !important;
  border-top: 1px solid #EAEAEA !important;
  padding: 2rem 0 !important;
  text-align: center !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_copyrightGrid__Ft2L8 {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 1rem !important;
  font-size: 0.625rem !important;
  font-family: &quot;Courier New&quot;, monospace !important;
  color: #64748B !important;
}

@media (min-width: 640px) {
  #NanaimoFooter_root__Ft2L8 .NanaimoFooter_copyrightGrid__Ft2L8 {
    flex-direction: row !important;
    justify-content: space-between !important;
  }
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_tagline__Ft2L8 {
  display: flex !important;
  align-items: center !important;
  gap: 0.25rem !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_heartIcon__Ft2L8 {
  color: #DC2626 !important; /* Red heart for visual pop */
  margin: 0 0.25rem !important;
}

/* ── CLASS-BASED ANIMATION STATES (Section 10.5) ── */
#NanaimoFooter_root__Ft2L8 .NanaimoFooter_anim__Ft2L8 {
  opacity: 0 !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_anim__Ft2L8.NanaimoFooter_animated__Ft2L8 {
  opacity: 1 !important;
  transform: translate(0, 0) !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_slideUp__Ft2L8 {
  transform: translateY(30px) !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_slideLeft__Ft2L8 {
  transform: translateX(20px) !important;
}

#NanaimoFooter_root__Ft2L8 .NanaimoFooter_ctaText__Ft2L8,
#NanaimoFooter_root__Ft2L8 .NanaimoFooter_ctaBtns__Ft2L8,
#NanaimoFooter_root__Ft2L8 .NanaimoFooter_brandCol__Ft2L8,
#NanaimoFooter_root__Ft2L8 .NanaimoFooter_navCol__Ft2L8,
#NanaimoFooter_root__Ft2L8 .NanaimoFooter_detailsCol__Ft2L8 {
  transition: opacity 0.8s cubic-bezier(0.19, 1, 0.22, 1), 
              transform 0.8s cubic-bezier(0.19, 1, 0.22, 1) !important;
}
 
            body{
                position: relative;
            }
            .dno{
                display: none!important;
            }
            .public-header{
                position: relative;
                transition:5s;
            }
            .absolute-container{
                background-color: #ee273a;
                border-radius: 7px;
                position: fixed;
                top: 50%;
                left: 2%;
                transform: translateY(-50%);
                padding: 10px;
                z-index: 4900;
            }
            .social-absolute{
                position: relative;
                padding: 10px 0;
                border-bottom: 1px solid rgba(0, 0, 0, .1);
                box-sizing: content-box;
                width: 24px;
                height: 24px;
            }
            .social-absolute:last-child {
                border-bottom: none !important;
            }
            .social-absolute img{
                width: 24px;
                height: 24px;
            }
            .absolute-tooltip{
                position: relative;
                transition: all 0.5s;
                border-radius: 0 7px 7px 0;
                font-size: 14px;
                overflow: hidden;
                white-space: nowrap;
            }
            .absolute-tooltip > span{
                padding: 10px 20px;
                display: block;
            }
            .tooltip-shake{
                display: block;
                width: 100%;
                height: 100%;
            }
            .tooltip-shake:before,
            .tooltip-shake:after {
                position: absolute;
                content: "";
                opacity: 0;
                transition: all 0.4s ease;
                color: #fff;
                font-weight: bold;
            }
            .tooltip-shake:before {
                content: attr(data-tooltip);
                background: #3c5059;
                width: 0;
                padding: 0;
                font-size: 0.9rem;
                top: 50%;
                left: calc(24px + 32px);
                border-radius: 5px;
                transform: translateY(-50%);
                overflow: hidden;
                white-space: nowrap;
            }
            .tooltip-shake:after {
                border-width: 8px 10px 8px 0;
                border-style: solid;
                border-color: transparent #3c5059 transparent transparent;
                top: 50%;
                left: calc(24px + 24px);
                transform: translateY(-50%);
            }
            .tooltip-shake:hover::before,
            .tooltip-shake:hover::after {
                opacity: 1;
                overflow: hidden;
                white-space: nowrap;
                transform: translate(0, -50%);
            }
            .tooltip-shake:hover::before {
                width: max-content;
                padding: 10px 25px;
            }
            @keyframes shake {
                0% {
                    transform: rotate(2deg);
                }
                50% {
                    transform: rotate(-3deg);
                }
                70% {
                    transform: rotate(3deg);
                }
                100% {
                    transform: rotate(0deg);
                }
            }
            .social-absolute:hover {
                animation: shake 500ms ease-in-out forwards;
            }
            
                .public-header{
                    width: 100%;
                    background: #fff;
                    background-size: auto;
                    background-repeat: no-repeat;
                    z-index: 100;
                }
            
            .adv-banner-container{
                width: 100%;
                height: 10px;
            }
            .adv-banner-container .adv-item{
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
            .top-bar-container{
                width: 100%;
                min-height: 40px;
                height: 40px;
                background: #222 ;
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-items: center;
            }
            .top-bar{
                width: 1200px;
                height: 100%;
                margin: auto;
                padding: 0 8px;
                display: flex;
                flex-direction: row;
                justify-content: space-between;
                align-items: center;
            }
            .top-item{
                height: 100%;
                display: flex;
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
            }
            .info-container{
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
            }
            .info-container img{
                width: 16px;
                height: 16px;
            }
            .info-container > span{
                display: inline-flex;
            }
            .top-info,
            .top-social{
                display: flex;
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
            }
            .top-social{
                padding: 5px 0;
            }
            .top-social li a img{
                width: 32px;
                height: 32px;
            }
            .top-social li a span{
                font-size: 0px;
                font-weight: 200;
                color: #777;
            }
            .top-list{
                width: max-content;
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-items: center;
                margin: 0  0px;
            }
            .top-list:hover{
                color: ;
            }
            
                .top-list:first-child{
                    margin-left : 0;
                }
                .top-list:last-child{
                    margin-right : 0;
                }
            
            .arrow-menu-container{
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-items: center;
            }
            .top-list a span,
            .top-list span{
                color: #777;
                font-weight: bold;
                font-size: 14px;
            }
            .top-list a img,
            .top-list span img{
                margin: 0 5px;
                width: 24px;
                height: 24px;
                object-fit: contain;
            }
            .top-list:first-child a img,
            .top-list:first-child span img{
                margin-left: 0;
            }
            .top-navbar{
                height: 100%;
                background: transparent;
            }
            .top-nav-list{
                position: relative;
                height: 100%;
                padding: 0 20px;
                display: flex;
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
            }
            .top-nav-list a span,
            .top-nav-list span{
                color: #000;
                font-size: 0px;
                font-weight: 200;search
            }
            .top-nav-list:hover{
                background-color: #fff;
            }
            .top-nav-list .arrow-menu-container svg{
                fill: #000;
            }
            .top-nav-list:hover a span,
            .top-nav-list:hover span,
            .top-nav-list:hover .arrow-menu-container svg{
                color: #fff;
                fill: #fff;
            }
            .top-nav-list .icon-title-part{
                padding-left: 5px;
            }
            .top-sub-nav > .top-sub-list a span,
            .top-sub-nav > .top-sub-list span{
                color: #000;
            }
            .top-sub-nav > .top-sub-list:hover a span,
            .top-sub-nav > .top-sub-list:hover span{
                color: #fff;
            }
            
            .top-sub-nav{
                flex-direction: column;
                justify-content: center;
                align-content: flex-start;
                position: absolute;
                z-index: 4999;
                min-width: 150px;
                width: max-content;
                background: #2c3e50;
                clip: rect(1px, 1px, 1px, 1px);
                opacity: 0.1;
                transition: transform 0.5s cubic-bezier(0.2, 0, 0.2, 1),
                            opacity 0.6s cubic-bezier(0.2, 0, 0.2, 1);
                transform: translateY(-10px) scaleY(0.5);
                transform-origin: top;  
                border-radius: 0;
            }
            .top-nav-list:hover > .top-sub-nav{
                display: flex;
                top: 100%;
                clip: auto;
                opacity: 1;
                transform: translateY(0) scaleY(1);
            }
            
        
                .top-nav-list:hover > .top-sub-nav{
                    left: 0;
                }
                .top-sub-list{
                    border-right: 5px solid  #f00;
                }
            
            .top-sub-list{
                width: 100%;
                padding: 8px 20px;
                display: flex;
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
            }
            .top-sub-list:hover{
                background: #fff;
            }
            .header-container{
                display: grid;
                width: 1200px;
                margin: auto;
                height: auto;
                grid-template-rows: 1fr 1fr;  
                grid-template-columns: 1fr 3fr 1fr;
                grid-template-areas: 
                    "top-1 top-2 top-3"
                    "bottom-1 bottom-2 bottom-3"; 
                padding-top: 8px;
                padding-bottom: 8px;
                padding-left: 8px;
                padding-right: 8px;
            }
            .top-section-1{
                grid-area: top-1;
                display: flex;
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
            }
            .top-section-2{
                grid-area: top-2;
                display: flex;
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
            }
            .top-section-3{
                grid-area: top-3;
                display: flex;
                flex-direction: row;
                justify-content: flex-end;
                align-items: center;
            }
            .logo-container{
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-items: center;
                width: 100%;
                height: 100%;
                padding: 0px  0px;
            }
            .logo-container img{
                display: block;
                width: auto;
                height: auto;
                max-width: auto;
                max-height: auto;
                object-fit: contain;
            }
            .nav-container{
                display: flex;
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
                box-sizing: border-box;
                margin: 0 10px;
            }
            .nav-container > .navbar{
                width: 100%;
                display: flex;
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
                background: #222 ;
                box-sizing: border-box;
                border: px  solid  ;
                border-radius: 3px;
                padding: 0 !important;
            }
            
                .nav-container > .navbar{
                    margin-right: calc(0px + 10px);
                }
            
            .max-height{
                height: 700px;
                overflow-x:hidden;
                overflow-y: auto;
                display:flex!important;
                flex-direction: column!important;
                justify-content: flex-start!important;
            }
            .nav-container .navbar .nav-list{
                padding: 10px 18px;
                min-height: 45px;
                position: relative;
                list-style: none;
                display: flex;
                flex-direction: row;
                justify-content: space-between;
                align-content: center;
                box-sizing: border-box;
            }
            .nav-container .navbar .nav-list.active{
                background-color: ;
            }
            .nav-container .navbar .nav-list.active a,
            .nav-container .navbar .nav-list.active span{
                color: ;
            }
            
            .nav-container .navbar .nav-list .icon-title-part{
                display: flex;
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
            }
            .nav-container .navbar .nav-list .icon-title-part img{
                width: 24px;
                height: 24px;
                margin: 0 5px;
            }
            .nav-container .navbar .nav-list .overflow-menu{
                justify-content: center !important;
            }
            .nav-container .navbar .nav-list:hover{
                background-color: ;
                box-sizing: border-box;
            }
            .nav-container .navbar .nav-list:hover a,
            .nav-container .navbar .nav-list:hover span{
                color:  ;
            }
            .nav-container .navbar .nav-list img{
                width: 32px;
                height: 32px;
            }
            .nav-container .navbar .nav-list a,
            .nav-container .navbar .nav-list span{
                text-decoration: none;
                font-size: 14px;
                color: #fff;
            }
            .nav-container .navbar .nav-list.base-level:hover > .navbar.navbar-sub,
            .nav-container .navbar .nav-list:hover > .overflow-menu > .navbar.navbar-sub{
                display: flex;
                top: 45px;
                clip: auto;
                opacity: 1;
                transform: translateY(0) scaleY(1);
            }
            .nav-container .navbar .nav-list:hover > .navbar.navbar-sub{
                display: flex;
                right: calc(100%  +  5px);
                top: 0;
                clip: auto;
                opacity: 1;
                transform: translateY(0) scaleY(1);
            }
            
                    .nav-container .navbar.navbar-sub{
                        flex-direction: column;
                        justify-content: center;
                        align-content: flex-start;
                        min-width: 150px;
                        width: max-content;
                    }
                    .nav-container .navbar.navbar-sub .nav-list{
                        width: 100%;
                        border-right: 5px solid red;
                    }
                    .nav-container .navbar.navbar-sub{
                        position: absolute;
                        z-index: 4999;
                        background: #fff;
                        clip: rect(1px, 1px, 1px, 1px);
                        opacity: 0.1;
                        transition: transform 0.5s cubic-bezier(0.2, 0, 0.2, 1),
                                    opacity 0.6s cubic-bezier(0.2, 0, 0.2, 1);
                        transform: translateY(-10px) scaleY(0.5);
                        transform-origin: top;  
                        border-radius: 0;
                    }
                    .nav-container .navbar.navbar-sub{
                        flex-direction: column;
                        justify-content: center;
                        align-content: flex-start;
                        min-width: 150px;
                        width: max-content;
                    }
                    .nav-container .navbar .nav-list.base-level:hover > .navbar.navbar-sub,
                    .nav-container .navbar .nav-list:hover > .overflow-menu > .navbar.navbar-sub{
                        left: 0;
                        border-radius: 0 !important;
                    }
                    .nav-container .navbar .nav-list:hover > .navbar.navbar-sub{
                        left: calc(100%  +  5px);
                    }
                    .nav-container .navbar.navbar-sub .nav-list{
                        width: 200px;
                        border-right: 5px solid red;
                        border-radius: 0 !important;
                    }
                
                .nav-container .navbar .nav-list.base-level:hover > .navbar.navbar-sub,
                .nav-container .navbar .nav-list:hover > .overflow-menu > .navbar.navbar-sub{
                    left: 0;
                }
                .nav-container .navbar .nav-list:hover > .navbar.navbar-sub{
                    left: calc(100%  +  5px);
                }
            
            .arrow-icon-menu{
                width: 8px;
                height: 8px;
            }
            .arrow-icon-menu.arrow-bottom{
                transform: rotate(90deg);
            }
            
                .arrow-menu-container{
                    margin-left: 5px;
                }
                .arrow-icon-menu.arrow-right,
                .overflow-list .arrow-icon-menu.arrow-bottom{
                    transform: rotate(0deg);
                }
                .nav-container .navbar .nav-list:first-child:hover{
                    border-radius: 3px 0 0 3px;
                }
                .nav-container .navbar .nav-list:last-child:hover{
                    border-radius: 0 3px 3px 0;
                }
            
            .nav-container .navbar .nav-list.base-level svg,
            .nav-container .navbar .nav-list .overflow-menu svg{
                fill: #fff;
            }
            .nav-container .navbar .nav-list.base-level:hover svg{
                fill: ;
            }
            .sub-menu-container{
                position: absolute;
                min-width: 150px;
                background-color: #fff;
                color: #fff;
                top: 32px;
                right: 0;
                z-index: 4999;
               /* display: none;*/
            } 
            /*.sub-navbar{
                width: 100%;
                height: 100%;
            }*/
            .nav-container .navbar.navbar-sub .nav-list img{
                width: px;
                height: px;
            }
            .nav-container .navbar.navbar-sub .nav-list a,
            .nav-container .navbar.navbar-sub .nav-list span{
                color: #000;
                font-size: 12px;
            }
            .nav-list.with-sub-menu:hover .sub-menu-container{
                display: block;
            }
            .nav-container .navbar.navbar-sub .nav-list .arrow-menu-container svg{
                fill: #000;
            }
            .active{
                background-color: ;
            }
            .active a{
                color: ;
            }     
            .icon-container{
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-content: center;
            }
            .icon-container .icon-item{
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-content: center;
                box-sizing: border-box;
                min-height: 45px;
                margin: 0 5px;
            }
            
                .icon-container .icon-item:first-child{
                    margin-left: 0 !important;
                }
                .icon-container .icon-item:last-child{
                    margin-right: 0 !important;
                }
            
            
            .icon-container .icon-item a{
                border: 0px  solid  ;
            }
            .icon-container .icon-item.basket-icon{
                position: relative;
                color: #e84118;
                min-width: 45px;
                min-height: 45px;
                outline: none;
                border-radius: 3px;
                background: #2c3e50;
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-items: center;
                cursor: pointer;
                text-decoration: none;
                margin: 0 10px;
            }
            .icon-container .icon-item .icon-shortcut{
                color: #e84118;
                min-width: 45px;
                min-height: 45px;
                margin: 0;
                outline: none;
                border-radius: 3px;
                background: #2c3e50;
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-items: center;
                transition: .4s;
                cursor: pointer;
                text-decoration: none;
            }
            
            .basket-shop{
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-items: center;
                width: 45px;
                height: 45px;
                border-radius: 3px;
            }
            .icon-container .icon-item .icon-shortcut:hover svg,
            .icon-container .icon-item .icon-shortcut:hover .add-item-to-cart.open span
            {
                fill: #fff;
                color: #fff;
            }
            
                .icon-container .icon-item.basket-icon .add-item-to-cart{
                    color: #e84118;
                    border-radius: 3px;
                    background: #2c3e50;
                    display: flex;
                    flex-direction: row;
                    justify-content: center;
                    align-items: center;
                    transition: .4s;
                    cursor: pointer;
                    box-sizing: content-box;
                    border: 0px  solid  ;
                }
                
                    .icon-container .icon-item.basket-icon .add-item-to-cart{
                        border-right: none !important;
                    }
                    .border-basket{
                        border-left: none !important;
                    }
                
                    .icon-container .icon-item:hover > span,
                    .icon-container .icon-item.login-icon:hover span{
                        color: #fff;
                    }
                    .icon-container .icon-item.basket-icon .icon-shortcut:hover,
                    .icon-container .icon-item.login-icon .icon-shortcut:hover,
                    
                    .icon-container .icon-item.basket-icon .icon-shortcut:hover .add-item-to-cart{
                       background: #3e5772;
                    }
                    .icon-container .icon-item.basket-icon .add-item-to-cart.open{
                        width: 45px;
                        border-radius: 0 3px 3px 0;
                        display: flex;
                        flex-direction: row;
                        justify-content: center;
                        align-items: center;
                    }
                    .icon-container .icon-item.basket-icon:hover .add-item-to-cart.open{
                        background: #3e5772;
                    }
                    .icon-container .icon-item.basket-icon .add-item-to-cart.open:hover span{
                        color: #fff;
                    }
                    .icon-container .icon-item.basket-icon .add-item-to-cart.open + .icon-shortcut{
                        border-radius: 3px 0 0 3px;
                    }
                    .icon-container .icon-item.lang-icon .icon-shortcut:hover{
                        background: #3e5772;
                    }
                    .icon-container .icon-item.search-icon .icon-shortcut .search-container .search-btn:hover{
                        background: #3e5772;
                    }
                 
            .icon-container .icon-item svg{
                width: 25px;
                height: 25px;
            
                fill: #e84118;
            
            }
            .icon-container .icon-item.login-icon{
                position: relative;
            }
            /*.icon-container .icon-item.login-icon .icon-shortcut{
                width: 100%;
                height: 100%;
            }*/
            .icon-container .icon-item.login-icon .icon-login{
                width: 25px;
                height: 25px;
            }
            #div_profile_picture, 
            #div_profile_picture_metro {
                display: block;
                width: 0 !important;
                height: 0 !important;
                line-height: unset !important;
            }
            #div_profile_picture .rShowLogin{
                position: absolute;
                top: 0;
                left: 0;
                width: 0;
                height: 0;
                z-index: -1000;
            }
            #div_profile_picture .login-container{
                display: none !important;
            }
            #div_profile_picture #profile_picture,
            #div_profile_picture #profile_exit{
                display: none !important;
            }
        
                .icon-container .icon-item.login-icon{
                    color: #e84118;
                    /*width: 90px !important;*/
                    min-height: 45px;
                    outline: none;
                    border-radius: 3px;
                    display: flex;
                    flex-direction: row;
                    justify-content: center;
                    align-items: center;
                    cursor: pointer;
                    text-decoration: none;
                    box-sizing: content-box;
                    border: 0px  solid  ;
                }
                .icon-container .icon-item.login-icon .status-user,
                .icon-container .icon-item.login-icon .icon-login{
                    display: flex;
                    flex-direction: row;
                    justify-content: center;
                    align-items: center;
                    text-align: center;
                    margin: 0 5px;
                    font-size:14px;
                }
            
            .public-header .bottom-section-1{
                grid-area: bottom-1;
                display: flex;
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
            }
            .public-header .bottom-section-2{
                grid-area: bottom-2;
                display: flex;
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
            }
            .public-header .bottom-section-3{
                grid-area: bottom-3;
                display: flex;
                flex-direction: row;
                justify-content: flex-start;
                align-items: center;
            }
            
                .icon-container .icon-item{
                    width: unset;
                    height: unset;
                }
                .search-icon{
                    position: relative;
                }
                .search-container {
                    display: flex;
                    flex-direction: row;
                    justify-content: flex-end;
                    align-items: center;
                    height: 100%;
                    position: relative;
                    border-radius: 3px;
                    min-width: 45px;
                }
                .search-container > .search-btn svg,
                .search-container > .close-search-btn svg{
                    fill: #e84118;
                }
                .search-container > .search-btn:hover svg,
                .search-container > .close-search-btn:hover svg{
                    fill: #fff;
                }
                .search-btn {
                    color: #fff;
                    width: 45px;
                    height: 45px;
                    margin: 0;
                    outline: none;
                    border-radius: 3px;
                    background: #2c3e50;
                    display: flex;
                    flex-direction: row;
                    justify-content: center;
                    align-items: center;
                    transition: .8s;
                    cursor: pointer;
                    text-decoration: none;
                    border: 0px  solid  transparent;
                }
                
                .icon-container .icon-item img{
                    width: 25px;
                    height: 25px;
                    object-fit:contain;
                }
                
                    .search-container.open-search-box .search-btn{
                        border-radius: 0 3px 3px 0 !important;
                    }
                    .search-container.open-search-box .close-search-btn{
                        border-radius: 3px 0 0 3px !important;
                    }    
                 
                .search-btn,
                .search-command,
                .close-search-btn{
                    box-sizing: content-box;
                }
                .search-btn > svg {
                    fill: #fff;
                }
                .cls-pls::placeholder{
                    color: ;
                }
                .search-input {
                    padding: 0;
                    height: 100%;
                    background: #2c3e50;
                    color: #fff;
                    font-size: 14px;
                    font-weight: normal;
                    transition: all 1s ease-in-out;
                    width: 0;
                    position: absolute;
                    top: 0;
                    overflow: hidden;
                    white-space: nowrap;
                    border: 0px  solid  transparent;
                }
                
                .open-search-box > .search-input{
                    padding : 10px 48px;
                }
                
                    .search-input {
                        right: calc(0px + 45px);
                        border-right: none;
                        border-left: none;
                    }
                
                        .search-container.open-search-box .search-btn{
                            border-radius: 0 3px 3px 0 !important;
                        }
                        .search-container.open-search-box .close-search-btn{
                            border-radius: 3px 0 0 3px !important;
                        }
                        .search-container.open-search-box .search-input{
                            border-radius: 3px 0 0 3px !important;
                        }    
                    
                .close-search-btn{
                    position: absolute;
                    color: #fff;
                    width: 45px;
                    height: 45px;
                    margin: 0;
                    outline: none;
                    border-radius: 3px;
                    background: #2c3e50;
                    display: flex;
                    flex-direction: row;
                    justify-content: center;
                    align-items: center;
                    cursor: pointer;
                    box-sizing: border-box;
                    box-sizing: border-box;
                }
                .close-search-btn svg{
                    fill: #e84118;
                }
            
            .sticky{
                width: 100vw;
                height: max-content;
                position: fixed;
                top: 0;
                right: 0;
                left: 0;
                z-index: 999;
                padding: 2vh 8vw;
                transition: .8s;
                background-color: #ddd !important;
            }
            .public_sticky{
                width: 100%;
                height: max-content;
                position: fixed;
                top: 0;
                right: 0;
                left: 0;
                z-index: 1001;
            }
            .d-none{
                display: none !important;
            }
            .border-left-n{
                border-left: none !important;
            }
            .border-right-n{
                border-right: none !important;
            }
            .w-1200px{
                width: 1200px !important;
                margin: auto;
            }
            .lang-icon{
                position: relative;
            }
            .language-container .lang-btn{
                width: 25px;
                height: 25px;
            }
            .lang-list-container{
                width: max-content;
                height: max-content;
                padding-top: 20px;
                position: absolute;
                top: 35px;
                left: 50%;
                clip: rect(1px, 1px, 1px, 1px);
                opacity: 0.1;
                transition: transform 0.5s cubic-bezier(0.2, 0, 0.2, 1),
                            opacity 0.6s cubic-bezier(0.2, 0, 0.2, 1);
                transform: translate(-50%, 0) scaleY(0.5);
                transform-origin: top;
                z-index: 100;
            }
            .lang-list{
                position: relative;
                width: max-content;
                height: max-content;
                padding: 10px;
                background: #2c3e50;
                border-radius: 3px;
            }
            .lang-list::after{
                content: "";
                position: absolute;
                top: -8px;
                left: 50%;
                transform: translateX(-50%);
                border-left: 10px solid transparent;
                border-right: 10px solid transparent;
                border-bottom: 10px solid #2c3e50;
                display: block;
            }
            .lang-nav{
                display: flex;
                flex-direction: column;
                justify-content: center;
                align-items: flex-start;
            }
            .lang-nav .lang-li{
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-items: center;
                list-style: none;
                width: max-content;
                margin: 5px 0;
                
            }
            .lang-nav .lang-li a{
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-items: center;
            }
            .lang-nav .lang-li img{
                width: 25px;
                height: 25px;
                object-fit: cover;
                margin: 0 4px;
            }
            .lang-nav .lang-li span{
                text-transform: uppercase;
                line-height: 2.5;
                font-size: 14px;
                margin: 0 4px;
                color: #fff;
            }
            .lang-nav .lang-li a{
                color: #fff;
            }
            .lang-nav .lang-li span:hover{
                cursor: pointer;
                color: #fff;
            }
            .lang-nav .lang-li .lang-active{
                font-weight: bold;
                color: #e84118;
            }
            .icon-item.lang-icon:hover .lang-list-container{
                clip: auto;
                opacity: 1;
                transform: translate(-50%, 0) scaleY(1);
            }
            /*---------------------------------------------------------------------------------*/
            .link-profile-container{
                width: max-content;
                height: max-content;
                padding-top: 20px;
                position: absolute;
                top: 35px;
                left: 50%;
                clip: rect(1px, 1px, 1px, 1px);
                opacity: 0.1;
                transition: transform 0.5s cubic-bezier(0.2, 0, 0.2, 1),
                            opacity 0.6s cubic-bezier(0.2, 0, 0.2, 1);
                transform: translate(-50%, 0) scaleY(0.5);
                transform-origin: top;
                z-index: 100;
            }
            .link-profile-container .link-wrapper{
                position: relative;
                width: max-content;
                height: max-content;
                padding: 10px 25px;
                background: #2c3e50;
                border-radius: 3px;
            }
            .link-profile-container .link-wrapper a{
                color: #fff;
            }
            .link-profile-container .link-wrapper a:hover{
                cursor: pointer;
                color: #fff;
            }
            .link-profile-container .link-wrapper::after{
                content: "";
                position: absolute;
                top: -8px;
                left: 50%;
                transform: translateX(-50%);
                border-left: 10px solid transparent;
                border-right: 10px solid transparent;
                border-bottom: 10px solid #2c3e50;
                display: block;
            }
             .icon-item.login-icon:hover .link-profile-container{
                clip: auto;
                opacity: 1;
                transform: translate(-50%, 0) scaleY(1);
            }
            
            .backTop{
                display: flex !important;
            }
            #back_to_top{
                display: none;
                position: fixed;
                transition: 600ms;
                right: 25px;
                left: unset;
                bottom: 50px;
                z-index: 100;
                border-radius: 50%;
                border: 1px  solid  #000;
                padding: 15px;
                flex-direction: row;
                justify-content: center;
                align-items: center;
                background-color: #777 ;
            }
            #back_to_top svg{
                width: 24px;
                height: 24px;
                fill: #fff ;
            }
            #back_to_top img{
                width: 24px;
                height: 24px;
                fill: #fff ;
                object-fit:contain;
            }
            .search-btn img{
                width: 25px;
                height: 25px;
                object-fit: contain;
            }
            .basket-shop img{
                width: 25px;
                height: 25px;
                object-fit: contain;
            }
            .lang-btn img{
                width: 25px;
                height: 25px;
                object-fit: contain;
            }
            .icon-login img{
                width: 25px;
                height: 25px;
                object-fit: contain;
            }
        
                    .header-container{
                        grid-template-rows: 1fr;  
                        grid-template-columns: auto minmax(auto, 100%) 1fr;
                        grid-template-areas: 
                            "top-1 top-2 top-3"; 
                    }
                    .top-section-1{
                        justify-content: flex-start;
                    }
                    .top-section-2{
                        justify-content: flex-start;
                    }
                    .logo-container{
                        justify-content: flex-start;
                    }
                    .nav-container{
                        justify-content: flex-start;
                    }
                    .nav-container .navbar{
                        justify-content: flex-start;
                    }
                    .width-full{
                        width: 100% !important;
                    }
                
            #body_popup_1,#body_popup_2{
                position:fixed;
                display:flex;
                text-align:center;
                top:0;
                bottom:0;
                right:0;
                left:0;
                z-index:99999;
                visibility:hidden;
                opacity: 0;
                background:rgba(0,0,0,0.5);
            }
            #body_popup_1.open-popup,#body_popup_2.open-popup{
                visibility:visible;
                opacity: 1;
            }
            #body_popup_1 > div,#body_popup_2 > div{
                display:block;
                background:#fff;
                padding:10px;
                margin:auto;
                transform:translateY(-150px);
                -webkit-transition:transform .3s;-moz-transition:transform .3s;-ms-transition:transform .3s;-o-transition:transform .3s;transition:transform .3s;
                text-align:center;
                border-radius:10px;
                position:relative;
                z-index:999999;
            }
            #body_popup_1.open-popup > div,#body_popup_1.open-popup > div{
                transform:translateY(0);
            }
            #body_popup_1 .icon-close-popup{
                position:absolute;
                font-size:30px;
                height:30px;
                width:30px;
                border-radius:50%;
                color:red;
                top:-10px;
                right:-10px;
                background-color:transparent;
                z-index:9999;
            }
            #body_popup_1 .icon-close-popup i{
                position:absolute;
                top:0;
                right:0;
            }
            #body_popup_1 .container-html{
                height:100%;
                overflow:auto;
                max-height:90vh;
            }
            #body_popup_1 .container-html::-webkit-scrollbar{
                width:5px;
                height:100%;
            }
            #body_popup_1 .container-html::-webkit-scrollbar-track{
                background-color:transparent;
            }
            #body_popup_1 .container-html::-webkit-scrollbar-thumb{
                background-color:#777;
                border-radius:20%;
            }
            #body_popup_1 .icon-close-popup{
                color:#fff;
                top:0;
                right:0;
            }
            #module_waiting_box{
                position:fixed;
                background:rgba(256,256,256,0.8);
                width:100%;
                height:100%;
                -webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s;
                top:0;
                right:0;
                opacity:0;
                z-index:9999999999999;
                visibility:hidden;
            }
            #module_waiting_box.show-waiting{
                visibility:visible;
                opacity:1;
            }
            #module_waiting_box .spinner {
              margin: 100px auto 0;
              width: 70px;
              text-align: center;
            }
            
            #module_waiting_box .spinner > div {
              width: 18px;
              height: 18px;
              background-color: #333;
              border-radius: 100%;
              display: inline-block;
              -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
              animation: sk-bouncedelay 1.4s infinite ease-in-out both;
            }
            
            #module_waiting_box .spinner .bounce1 {
              -webkit-animation-delay: -0.35s;
              animation-delay: -0.35s;
            }
            
            #module_waiting_box .spinner .bounce2 {
              -webkit-animation-delay: -0.16s;
              animation-delay: -0.16s;
            }
            
            @-webkit-keyframes sk-bouncedelay {
              0%, 95%, 100% { -webkit-transform: scale(0) }
              50% { -webkit-transform: scale(1.0) }
            }
            
            @keyframes sk-bouncedelay {
              0%, 95%, 100% { 
                -webkit-transform: scale(0);
                transform: scale(0);
              } 50% { 
                -webkit-transform: scale(1.0);
                transform: scale(1.0);
              }
            }
        body{direction: ltr;text-align: left;}