/* ==========================================================================
   Japan Food Lanka (Pvt) Ltd - Official Web Application Stylesheet
   Figma Design Implementation: B2B Premium Distribution
   ========================================================================== */

/*:root {*/
  /* Brand Palette from Figma */
/*  --color-bg-canvas: #F7F5F0;*/
  /* Warm Japanese Washi Off-White */
/*  --color-white: #FFFFFF;*/
/*  --color-primary: #C8102E;*/
  /* Brand Crimson Red */
/*  --color-primary-hover: #a80d26;*/
/*  --color-navy-dark: #1B2A41;*/
  /* Deep Navy Dark */
/*  --color-navy-card: #23354E;*/
  /* Feature Card Dark Navy */
/*  --color-gold: #B8935A;*/
  /* Brand Warm Gold */

/*  --color-border: #E6E2DC;*/
  /* Light Sand Border */
/*  --color-border-dark: #2D3E56;*/
  /* Dark Section Border */
/*  --color-box-bg: #FCFAF6;*/
  /* Soft Box Surface */

/*  --color-text-main: #1A1A1A;*/
/*  --color-text-navy: #1B2A41;*/
/*  --color-text-muted: #66645E;*/
/*  --color-text-light-muted: #94A3B8;*/

  /* Typography */
/*  --font-serif: 'Instrument Serif', Georgia, serif;*/
/*  --font-sans: 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;*/
/*  --font-japanese: 'Instrument Serif', 'Noto Serif JP', serif;*/

  /* Layout Dimensions */
/*  --max-width: 1440px;*/
/*  --header-height: 80px;*/
/*  --radius-sm: 2px;*/
/*  --radius-md: 4px;*/
/*  --radius-card: 8px;*/
/*  --radius-round: 6px;*/
/*  --transition: all 0.2s ease-in-out;*/
/*}*/

/* Base & Reset */
/**,*/
/**::before,*/
/**::after {*/
/*  box-sizing: border-box;*/
/*  margin: 0;*/
/*  padding: 0;*/
/*}*/

/*html {*/
/*  scroll-behavior: smooth;*/
/*  font-size: 16px;*/
/*}*/

/* Ensure sticky header does not overlap anchored section titles */
/*section[id],*/
/*div[id],*/
/*#contact,*/
/*#about,*/
/*#why-us,*/
/*#products,*/
/*#catalog,*/
/*#inquiry,*/
/*#confirmation {*/
/*  scroll-margin-top: calc(var(--header-height) + 20px);*/
/*}*/

/*body {*/
/*  font-family: var(--font-sans);*/
/*  background-color: var(--color-bg-canvas);*/
/*  color: var(--color-text-main);*/
/*  line-height: 1.5;*/
/*  overflow-x: hidden;*/
/*  -webkit-font-smoothing: antialiased;*/
/*}*/

/*a {*/
/*  color: inherit;*/
/*  text-decoration: none;*/
/*  transition: var(--transition);*/
/*}*/

/*img {*/
/*  max-width: 100%;*/
/*  display: block;*/
/*}*/

/*button,*/
/*input,*/
/*select,*/
/*textarea {*/
/*  font-family: inherit;*/
/*}*/

/*.container {*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*  margin: 0 auto;*/
/*  padding: 0 24px;*/
/*}*/

/* ==========================================================================
   Navigation Bar (sticky-nav)
   ========================================================================== */
/*.site-header {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  justify-content: space-between;*/
/*  align-items: center;*/
/*  padding: 0px 80px;*/

/*  position: sticky;*/
/*  top: 0px;*/
/*  left: 0px;*/
/*  right: 0px;*/
/*  height: var(--header-height);*/

/*  background: var(--color-white);*/
/*  border-bottom: 1px solid var(--color-border);*/
/*  z-index: 1000;*/
/*}*/

/*.header-inner {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  justify-content: space-between;*/
/*  width: 100%;*/
/*  max-width: 1440px;*/
/*  margin: 0 auto;*/
/*  padding: 0;*/
/*}*/

/* Logo */
/*.brand-logo {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 0px;*/
/*  gap: 12px;*/
/*  height: 48px;*/
/*  text-decoration: none;*/
/*  flex: none;*/
/*  order: 0;*/
/*  flex-grow: 0;*/
/*}*/

/*.logo-icon,*/
/*img.logo-icon {*/
/*  width: 32px;*/
/*  height: 32px;*/
/*  border-radius: 2px;*/
/*  object-fit: contain;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  flex: none;*/
/*  order: 0;*/
/*  flex-grow: 0;*/
/*}*/

/*.logo-icon .label-jp {*/
/*  font-family: var(--font-serif);*/
/*  font-style: italic;*/
/*  font-weight: 400;*/
/*  font-size: 22px;*/
/*  line-height: 1;*/
/*  color: var(--color-white);*/
/*}*/

/*.logo-text {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  justify-content: center;*/
/*  padding: 0px;*/
/*  gap: 2px;*/
/*  height: 48px;*/
/*  flex: none;*/
/*  order: 1;*/
/*  flex-grow: 0;*/
/*}*/

/*.logo-title {*/
/*  font-family: var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 26px;*/
/*  line-height: 34px;*/
/*  color: var(--color-navy-dark);*/
/*  letter-spacing: normal;*/
/*}*/

/*.logo-sub {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 9px;*/
/*  line-height: 12px;*/
/*  text-transform: uppercase;*/
/*  color: var(--color-gold);*/
/*}*/

/* Nav Menu (menu-links) */
/*.nav-menu {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 0px;*/
/*  gap: 32px;*/
/*  list-style: none;*/
/*  margin: 0;*/
/*  flex: none;*/
/*  order: 1;*/
/*  flex-grow: 0;*/
/*}*/

/*.nav-link {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 500;*/
/*  font-size: 13px;*/
/*  line-height: 17px;*/
/*  color: var(--color-text-main);*/
/*  padding: 8px 0;*/
/*  position: relative;*/
/*  text-decoration: none;*/
/*  transition: var(--transition);*/
/*}*/

/*.nav-link:hover {*/
/*  color: var(--color-primary);*/
/*}*/

/*.nav-link.active {*/
/*  font-weight: 700;*/
/*  color: var(--color-primary);*/
/*}*/

/* Header Actions */
/*.header-actions {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 16px;*/
/*  flex: none;*/
/*  order: 2;*/
/*  flex-grow: 0;*/
/*}*/

/* Buttons */
/*.btn-primary {*/
/*  display: inline-flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  padding: 14px 28px;*/
/*  width: 184px;*/
/*  height: 48px;*/
/*  background: var(--color-primary);*/
/*  color: var(--color-white);*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  text-transform: uppercase;*/
/*  border-radius: var(--radius-md);*/
/*  border: none;*/
/*  cursor: pointer;*/
/*  transition: var(--transition);*/
/*  text-decoration: none;*/
/*  white-space: nowrap;*/
/*  box-sizing: border-box;*/
/*}*/

/*.btn-primary:hover {*/
/*  background: var(--color-primary-hover);*/
/*  color: var(--color-white);*/
/*  transform: translateY(-1px);*/
/*}*/

/*.btn-ghost {*/
/*  display: inline-flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  padding: 14px 28px;*/
/*  background: transparent;*/
/*  color: var(--color-white);*/
/*  border: 1px solid var(--color-border);*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  text-transform: uppercase;*/
/*  border-radius: var(--radius-md);*/
/*  cursor: pointer;*/
/*  transition: var(--transition);*/
/*  text-decoration: none;*/
/*  white-space: nowrap;*/
/*}*/

/*.btn-ghost:hover {*/
/*  background: rgba(255, 255, 255, 0.1);*/
/*  border-color: var(--color-white);*/
/*  color: var(--color-white);*/
/*  transform: translateY(-1px);*/
/*}*/

/* Mobile Toggle */
/*.mobile-toggle {*/
/*  display: none;*/
/*  background: none;*/
/*  border: none;*/
/*  font-size: 26px;*/
/*  color: var(--color-navy-dark);*/
/*  cursor: pointer;*/
/*  padding: 8px;*/
/*  margin-right: -8px;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  line-height: 1;*/
/*}*/

/* Mobile Nav Drawer */
/*.mobile-overlay {*/
/*  display: none;*/
/*  position: fixed;*/
/*  inset: 0;*/
/*  background: rgba(0, 0, 0, 0.55);*/
/*  backdrop-filter: blur(2px);*/
/*  z-index: 1001;*/
/*  transition: opacity 0.3s ease;*/
/*}*/

/*.mobile-overlay.active {*/
/*  display: block;*/
/*}*/

/*.mobile-nav {*/
/*  position: fixed;*/
/*  top: 0;*/
/*  right: -320px;*/
/*  width: 320px;*/
/*  max-width: 86vw;*/
/*  height: 100vh;*/
/*  height: 100dvh;*/
/*  background: var(--color-white);*/
/*  z-index: 1002;*/
/*  padding: 20px 20px calc(24px + env(safe-area-inset-bottom, 0px));*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  box-sizing: border-box;*/
/*  transition: right 0.3s cubic-bezier(0.16, 1, 0.3, 1);*/
/*  box-shadow: -6px 0 28px rgba(0, 0, 0, 0.18);*/
/*  overflow-y: auto;*/
/*  -webkit-overflow-scrolling: touch;*/
/*}*/

/*.mobile-nav.open {*/
/*  right: 0;*/
/*}*/

/*.mobile-nav-header {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: space-between;*/
/*  margin-bottom: 20px;*/
/*  padding-bottom: 16px;*/
/*  border-bottom: 1px solid var(--color-border);*/
/*  flex-shrink: 0;*/
/*}*/

/*.mobile-links {*/
/*  list-style: none;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 8px;*/
/*  margin: 0;*/
/*  padding: 0;*/
/*  flex: 1 1 auto;*/
/*}*/

/*.mobile-links a {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: space-between;*/
/*  font-size: 15px;*/
/*  font-weight: 500;*/
/*  color: var(--color-text-main);*/
/*  padding: 10px 12px;*/
/*  border-radius: 6px;*/
/*  text-decoration: none;*/
/*  transition: all 0.2s ease;*/
/*}*/

/*.mobile-links a:hover,*/
/*.mobile-links a:active {*/
/*  background: rgba(200, 16, 46, 0.06);*/
/*  color: var(--color-primary);*/
/*}*/

/*.mobile-nav-footer {*/
/*  margin-top: auto;*/
/*  padding-top: 18px;*/
/*  border-top: 1px solid var(--color-border);*/
/*  flex-shrink: 0;*/
/*  width: 100%;*/
/*  box-sizing: border-box;*/
/*}*/

/*.mobile-nav-footer .btn-primary,*/
/*.mobile-nav-footer .mobile-quote-btn {*/
/*  width: 100% !important;*/
/*  min-width: 0 !important;*/
/*  height: 48px;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  text-align: center;*/
/*  font-size: 13.5px;*/
/*  font-weight: 600;*/
/*  letter-spacing: 0.5px;*/
/*  border-radius: 4px;*/
/*  box-sizing: border-box;*/
/*  text-decoration: none;*/
/*  background: var(--color-primary);*/
/*  color: var(--color-white);*/
/*}*/

/*.mobile-nav-footer .btn-primary:hover,*/
/*.mobile-nav-footer .mobile-quote-btn:hover {*/
/*  background: var(--color-primary-hover);*/
/*  color: var(--color-white);*/
/*}*/

/* ==========================================================================
   Section Labels & Micro-Typography
   ========================================================================== */
/*.section-label {*/
/*  display: inline-flex;*/
/*  align-items: center;*/
/*  gap: 12px;*/
/*  margin-bottom: 16px;*/
/*}*/

/*.section-label .label-en {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  letter-spacing: 0.5px;*/
/*}*/

/*.section-label.gold .label-en {*/
/*  color: var(--color-gold);*/
/*}*/

/*.section-label.red .label-en {*/
/*  color: var(--color-primary);*/
/*}*/

/*.section-label .label-divider {*/
/*  width: 16px;*/
/*  height: 0;*/
/*  border: 1px solid var(--color-border);*/
/*}*/

/*.section-label.dark-divider .label-divider {*/
/*  border-color: var(--color-border-dark);*/
/*}*/

/*.section-label .label-jp {*/
/*  font-family: var(--font-serif);*/
/*  font-style: italic;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*}*/

/*.section-label.gold .label-jp {*/
/*  color: var(--color-text-light-muted);*/
/*}*/

/*.section-label.red .label-jp {*/
/*  color: var(--color-text-muted);*/
/*}*/

/* ==========================================================================
   Hero Section Slider (section-hero)
   Theme: Figma Specification - Dynamic B2B Multi-Slide Hero Showcase
   ========================================================================== */
/*.section-hero {*/
/*  position: relative;*/
/*  width: 100%;*/
/*  min-height: 720px;*/
/*  background-color: #1B2A41;*/
/*  overflow: hidden;*/
/*  isolation: isolate;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*}*/

/*.hero-slides-wrapper {*/
/*  position: relative;*/
/*  width: 100%;*/
/*  min-height: 720px;*/
/*  flex: 1;*/
/*}*/

/*.hero-slide {*/
/*  position: absolute;*/
/*  inset: 0;*/
/*  width: 100%;*/
/*  min-height: 720px;*/
/*  background-size: cover;*/
/*  background-position: center;*/
/*  background-repeat: no-repeat;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  justify-content: center;*/
/*  align-items: flex-start;*/
/*  padding: 180px 0 80px;*/
/*  box-sizing: border-box;*/
/*  opacity: 0;*/
/*  visibility: hidden;*/
/*  pointer-events: none;*/
/*  transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.8s cubic-bezier(0.4, 0, 0.2, 1);*/
/*  z-index: 1;*/
/*}*/

/*.hero-slide::before {*/
/*  content: '';*/
/*  position: absolute;*/
/*  inset: 0;*/
/*  background: linear-gradient(180deg, rgba(27, 42, 65, 0.82) 0%, rgba(27, 42, 65, 0.65) 50%, rgba(27, 42, 65, 0.92) 100%);*/
/*  opacity: 0;*/
/*  transition: opacity 0.3s ease;*/
/*  pointer-events: none;*/
/*  z-index: 0;*/
/*}*/

/*.hero-slide.active {*/
/*  opacity: 1;*/
/*  visibility: visible;*/
/*  pointer-events: auto;*/
/*  z-index: 2;*/
/*  position: relative;*/
/*}*/

/*.hero-inner {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  justify-content: space-between;*/
/*  align-items: flex-start;*/
/*  min-height: 460px;*/
/*  gap: 32px;*/
/*  max-width: 1280px;*/
/*  width: 100%;*/
/*  padding: 0 80px;*/
/*  margin: 0 auto;*/
/*  box-sizing: border-box;*/
/*  position: relative;*/
/*  z-index: 1;*/
/*}*/

/*.hero-content {*/
/*  max-width: 843px;*/
/*  width: 100%;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0px;*/
/*  gap: 32px;*/
/*  z-index: 1;*/
/*}*/

/*.hero-content .section-label {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 0px;*/
/*  gap: 12px;*/
/*  margin-bottom: 0;*/
/*  flex-wrap: wrap;*/
/*}*/

/*.hero-content .label-en {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  color: #B8935A;*/
/*  letter-spacing: 0.5px;*/
/*}*/

/*.hero-content .label-divider {*/
/*  box-sizing: border-box;*/
/*  width: 16px;*/
/*  height: 0px;*/
/*  border: 1px solid #2D3E56;*/
/*}*/

/*.hero-content .label-jp {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: italic;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  color: #94A3B8;*/
/*}*/

/*.hero-title {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 64px;*/
/*  line-height: 110%;*/
  /* 70px */
/*  color: #FFFFFF;*/
/*  letter-spacing: normal;*/
/*  margin: 0;*/
/*  max-width: 843px;*/
/*}*/

/*.hero-subtitle {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 18px;*/
/*  line-height: 160%;*/
/*  color: #94A3B8;*/
/*  max-width: 843px;*/
/*  margin: 0;*/
/*}*/

/*.hero-actions {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 0px;*/
/*  gap: 16px;*/
/*  flex-wrap: wrap;*/
/*}*/

/*.hero-actions .btn-primary {*/
/*  display: inline-flex;*/
/*  flex-direction: row;*/
/*  justify-content: center;*/
/*  align-items: center;*/
/*  padding: 14px 28px;*/
/*  min-width: 232px;*/
/*  height: 48px;*/
/*  background: #C8102E;*/
/*  border-radius: 4px;*/
/*  border: none;*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  text-transform: uppercase;*/
/*  color: #FFFFFF;*/
/*  text-decoration: none;*/
/*  transition: all 0.2s ease;*/
/*  white-space: nowrap;*/
/*  box-sizing: border-box;*/
/*}*/

/*.hero-actions .btn-primary:hover {*/
/*  background: #a80d26;*/
/*  transform: translateY(-2px);*/
/*  box-shadow: 0 8px 20px rgba(200, 16, 46, 0.4);*/
/*}*/

/*.hero-actions .btn-ghost {*/
/*  box-sizing: border-box;*/
/*  display: inline-flex;*/
/*  flex-direction: row;*/
/*  justify-content: center;*/
/*  align-items: center;*/
/*  padding: 14px 28px;*/
/*  min-width: 144px;*/
/*  height: 48px;*/
/*  border: 1px solid #E6E2DC;*/
/*  border-radius: 4px;*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  text-transform: uppercase;*/
/*  color: #FFFFFF;*/
/*  background: rgba(27, 42, 65, 0.4);*/
/*  backdrop-filter: blur(4px);*/
/*  text-decoration: none;*/
/*  transition: all 0.2s ease;*/
/*  white-space: nowrap;*/
/*}*/

/*.hero-actions .btn-ghost:hover {*/
/*  background: #FFFFFF;*/
/*  color: #1B2A41;*/
/*  border-color: #FFFFFF;*/
/*  transform: translateY(-2px);*/
/*}*/

/* Trust Strip */
/*.trust-strip {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 16px 0px;*/
/*  gap: 24px;*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*  height: auto;*/
/*  min-height: 50px;*/
/*  border-top: 1px solid #434343;*/
/*  margin-top: 18px;*/
/*  flex-wrap: wrap;*/
/*  z-index: 3;*/
/*}*/

/*.trust-label {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 13px;*/
/*  line-height: 17px;*/
/*  text-transform: uppercase;*/
/*  color: #B8935A;*/
/*  white-space: nowrap;*/
/*}*/

/*.trust-text {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  color: #FFFFFF;*/
/*}*/

/* Image Indicators (Figma Ellipse Dots) */
/*.image-indicators {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  padding: 5px 7px;*/
/*  gap: 6px;*/
/*  position: absolute;*/
/*  height: 18px;*/
/*  left: 50%;*/
/*  transform: translateX(-50%);*/
/*  bottom: 33px;*/
/*  background: rgba(10, 13, 18, 0.48);*/
/*  border-radius: 999px;*/
/*  z-index: 10;*/
/*}*/

/*.indicator-dot {*/
/*  box-sizing: border-box;*/
/*  width: 8px;*/
/*  height: 8px;*/
/*  border-radius: 50%;*/
/*  background: rgba(255, 255, 255, 0.78);*/
/*  opacity: 0.35;*/
/*  border: 1px solid rgba(18, 23, 33, 0.5);*/
/*  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.35);*/
/*  cursor: pointer;*/
/*  padding: 0;*/
/*  transition: all 0.3s ease;*/
/*  outline: none;*/
/*}*/

/*.indicator-dot:hover {*/
/*  opacity: 0.75;*/
/*}*/

/*.indicator-dot.active {*/
/*  background: #FFFFFF;*/
/*  opacity: 0.9;*/
/*  border: 1px solid rgba(18, 23, 33, 0.5);*/
/*  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.35);*/
/*  transform: scale(1.15);*/
/*}*/

/* ==========================================================================
   Hero Slider Responsive Breakpoints
   ========================================================================== */
/*@media (max-width: 1200px) {*/
/*  .hero-inner {*/
/*    padding: 0 48px;*/
/*  }*/
/*  .hero-title {*/
/*    font-size: 56px;*/
/*  }*/
/*}*/

/*@media (max-width: 992px) {*/
/*  .section-hero,*/
/*  .hero-slides-wrapper,*/
/*  .hero-slide {*/
/*    min-height: 640px;*/
/*  }*/
/*  .hero-slide {*/
/*    padding: 130px 0 60px;*/
/*  }*/
/*  .hero-inner {*/
/*    padding: 0 32px;*/
/*    gap: 24px;*/
/*    min-height: auto;*/
/*  }*/
/*  .hero-content {*/
/*    gap: 24px;*/
/*    max-width: 100%;*/
/*  }*/
/*  .hero-title {*/
/*    font-size: 46px;*/
/*    line-height: 1.15;*/
/*  }*/
/*  .hero-subtitle {*/
/*    font-size: 16px;*/
/*    line-height: 1.55;*/
/*  }*/
/*  .hero-actions {*/
/*    gap: 12px;*/
/*  }*/
/*  .hero-actions .btn-primary {*/
/*    min-width: 200px;*/
/*    height: 46px;*/
/*  }*/
/*  .hero-actions .btn-ghost {*/
/*    min-width: 130px;*/
/*    height: 46px;*/
/*  }*/
/*  .trust-strip {*/
/*    gap: 16px;*/
/*    padding: 14px 0;*/
/*    margin-top: 14px;*/
/*  }*/
/*  .image-indicators {*/
/*    bottom: 24px;*/
/*  }*/
/*}*/

/*@media (max-width: 768px) {*/
/*  .section-hero,*/
/*  .hero-slides-wrapper,*/
/*  .hero-slide {*/
/*    min-height: 580px;*/
/*  }*/
/*  .section-hero {*/
/*    padding: 0 !important;*/
/*  }*/
/*  .hero-slide {*/
/*    padding: 105px 0 54px;*/
/*  }*/
/*  .hero-slide::before {*/
/*    opacity: 1;*/
/*  }*/
/*  .hero-inner {*/
/*    padding: 0 20px;*/
/*    gap: 20px;*/
/*    min-height: auto;*/
/*  }*/
/*  .hero-content {*/
/*    gap: 18px;*/
/*    max-width: 100%;*/
/*  }*/
/*  .hero-content .section-label {*/
/*    gap: 8px;*/
/*    flex-wrap: wrap;*/
/*  }*/
/*  .hero-content .label-en {*/
/*    font-size: 11px;*/
/*    letter-spacing: 0.5px;*/
/*  }*/
/*  .hero-content .label-jp {*/
/*    font-size: 14px;*/
/*  }*/
/*  .hero-title {*/
/*    font-size: 34px;*/
/*    line-height: 1.18;*/
/*    letter-spacing: -0.3px;*/
/*    max-width: 100%;*/
/*  }*/
/*  .hero-subtitle {*/
/*    font-size: 14.5px;*/
/*    line-height: 1.55;*/
/*    color: #CBD5E1;*/
/*    max-width: 100%;*/
/*  }*/
/*  .hero-actions {*/
/*    flex-direction: column;*/
/*    width: 100%;*/
/*    gap: 10px;*/
/*    align-items: stretch;*/
/*  }*/
/*  .hero-actions .btn-primary,*/
/*  .hero-actions .btn-ghost {*/
/*    width: 100%;*/
/*    min-width: 0;*/
/*    justify-content: center;*/
/*    height: 46px;*/
/*    font-size: 13.5px;*/
/*    padding: 12px 16px;*/
/*    border-radius: 4px;*/
/*  }*/
/*  .trust-strip {*/
/*    flex-direction: column;*/
/*    align-items: flex-start;*/
/*    gap: 4px;*/
/*    padding: 12px 0 16px;*/
/*    margin-top: 10px;*/
/*    border-top: 1px solid rgba(255, 255, 255, 0.18);*/
/*  }*/
/*  .trust-label {*/
/*    font-size: 11px;*/
/*    letter-spacing: 0.5px;*/
/*  }*/
/*  .trust-text {*/
/*    font-size: 12.5px;*/
/*    line-height: 1.45;*/
/*    color: rgba(255, 255, 255, 0.9);*/
/*  }*/
/*  .image-indicators {*/
/*    bottom: 12px;*/
/*    height: 16px;*/
/*    padding: 4px 6px;*/
/*    gap: 5px;*/
/*    background: rgba(10, 13, 18, 0.65);*/
/*  }*/
/*  .indicator-dot {*/
/*    width: 6px;*/
/*    height: 6px;*/
/*  }*/
/*  .indicator-dot.active {*/
/*    transform: scale(1.25);*/
/*  }*/
/*}*/

/*@media (max-width: 480px) {*/
/*  .section-hero,*/
/*  .hero-slides-wrapper,*/
/*  .hero-slide {*/
/*    min-height: 520px;*/
/*  }*/
/*  .hero-slide {*/
/*    padding: 92px 0 44px;*/
/*  }*/
/*  .hero-inner {*/
/*    padding: 0 16px;*/
/*    gap: 14px;*/
/*  }*/
/*  .hero-content {*/
/*    gap: 14px;*/
/*  }*/
/*  .hero-title {*/
/*    font-size: 28px;*/
/*    line-height: 1.2;*/
/*  }*/
/*  .hero-subtitle {*/
/*    font-size: 13px;*/
/*    line-height: 1.5;*/
/*  }*/
/*  .hero-actions .btn-primary,*/
/*  .hero-actions .btn-ghost {*/
/*    height: 44px;*/
/*    font-size: 13px;*/
/*  }*/
/*  .trust-strip {*/
/*    padding: 8px 0 14px;*/
/*    margin-top: 6px;*/
/*  }*/
/*  .trust-label {*/
/*    font-size: 10px;*/
/*  }*/
/*  .trust-text {*/
/*    font-size: 11.5px;*/
/*  }*/
/*  .image-indicators {*/
/*    bottom: 8px;*/
/*  }*/
/*}*/

/* ==========================================================================
   Promotional Banners Section (section-premium-banners)
   Figma Specification: B2B Premium Distribution Promo Row
   ========================================================================== */
/*.section-premium-banners {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  padding: 80px 0 20px;*/
/*  background: var(--color-bg-canvas, #F7F5F0);*/
/*  width: 100%;*/
/*  box-sizing: border-box;*/
/*}*/

/*.section-premium-banners .container {*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*  margin: 0 auto;*/
/*  padding: 0 10px;*/
/*}*/

/*.premium-banners-row {*/
/*  display: grid;*/
/*  grid-template-columns: repeat(3, 1fr);*/
/*  gap: 24px;*/
/*  width: 100%;*/
/*  align-items: stretch;*/
/*}*/

/*.premium-banner-card {*/
/*  box-sizing: border-box;*/
/*  display: block;*/
/*  position: relative;*/
/*  width: 100%;*/
/*  height: 270px;*/
/*  background-color: var(--color-white, #FFFFFF);*/
/*  border: 1px solid #E6E2DC;*/
/*  border-radius: 8px;*/
/*  overflow: hidden;*/
/*  text-decoration: none;*/
/*  box-shadow: 0 2px 8px rgba(27, 42, 65, 0.04);*/
/*  transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1),*/
/*    box-shadow 0.28s cubic-bezier(0.16, 1, 0.3, 1),*/
/*    border-color 0.25s ease;*/
/*  cursor: pointer;*/
/*}*/

/*.premium-banner-card:hover {*/
/*  transform: translateY(-4px);*/
/*  box-shadow: 0 12px 28px rgba(27, 42, 65, 0.12);*/
/*  border-color: var(--color-gold, #B8935A);*/
/*}*/

/*.premium-banner-card:active {*/
/*  transform: translateY(-1px);*/
/*  box-shadow: 0 6px 14px rgba(27, 42, 65, 0.08);*/
/*}*/

/*.banner-image-container {*/
/*  width: 100%;*/
/*  height: 100%;*/
/*  position: relative;*/
/*  overflow: hidden;*/
/*}*/

/*.premium-banner-card .banner-img {*/
/*  width: 100%;*/
/*  height: 100%;*/
/*  object-fit: cover;*/
/*  object-position: center;*/
/*  display: block;*/
/*  transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);*/
/*}*/

/*.premium-banner-card:hover .banner-img {*/
/*  transform: scale(1.025);*/
/*}*/

/*.premium-banner-card::after {*/
/*  content: '';*/
/*  position: absolute;*/
/*  top: 0;*/
/*  left: -100%;*/
/*  width: 50%;*/
/*  height: 100%;*/
/*  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0) 100%);*/
/*  transform: skewX(-25deg);*/
/*  transition: left 0.75s ease;*/
/*  pointer-events: none;*/
/*}*/

/*.premium-banner-card:hover::after {*/
/*  left: 150%;*/
/*}*/

/*@media (max-width: 1100px) {*/
/*  .section-premium-banners {*/
/*    padding: 60px 0 20px;*/
/*  }*/

/*  .premium-banners-row {*/
/*    gap: 16px;*/
/*  }*/

/*  .premium-banner-card {*/
/*    height: 230px;*/
/*  }*/
/*}*/

/*@media (max-width: 820px) {*/
/*  .section-premium-banners {*/
/*    padding: 48px 0 16px;*/
/*  }*/

/*  .premium-banners-row {*/
/*    grid-template-columns: 1fr;*/
/*    gap: 16px;*/
/*  }*/

/*  .premium-banner-card {*/
/*    height: 240px;*/
/*  }*/
/*}*/

/*@media (max-width: 480px) {*/
/*  .section-premium-banners {*/
/*    padding: 36px 0 12px;*/
/*  }*/

/*  .premium-banner-card {*/
/*    height: 210px;*/
/*    border-radius: 6px;*/
/*  }*/
/*}*/

/* ==========================================================================
   About Section (section-about)
   Theme: Figma B2B Specification - Authentic Heritage & Direct Bridge
   ========================================================================== */
/*.section-about {*/
/*  padding: 80px 0;*/
/*  background-color: #F7F5F0;*/
/*  width: 100%;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  box-sizing: border-box;*/
/*}*/

/*.section-about .container {*/
/*  max-width: 1440px;*/
/*  width: 100%;*/
/*  padding: 0 80px;*/
/*  margin: 0 auto;*/
/*  box-sizing: border-box;*/
/*}*/

/*.about-grid {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: flex-start;*/
/*  gap: 32px;*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*  margin: 0 auto;*/
/*}*/

/* about-left / about-image */
/*.about-image-wrapper {*/
/*  flex: 0 0 515px;*/
/*  width: 515px;*/
/*  height: 556px;*/
/*  border-radius: 8px;*/
/*  overflow: hidden;*/
/*  background: #EAE6DF;*/
/*  box-shadow: 0 4px 20px rgba(27, 42, 65, 0.06);*/
/*}*/

/*.about-image-wrapper img,*/
/*.about-image {*/
/*  width: 100%;*/
/*  height: 100%;*/
/*  object-fit: cover;*/
/*  display: block;*/
/*  border-radius: 8px;*/
/*}*/

/* about-right */
/*.about-right {*/
/*  flex: 1 1 0;*/
/*  max-width: 733px;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  gap: 28px;*/
/*}*/

/* section-label */
/*.about-right .section-label {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  gap: 12px;*/
/*  height: 21px;*/
/*  margin-bottom: 0;*/
/*}*/

/*.about-right .label-en {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  color: #C8102E;*/
/*}*/

/*.about-right .label-divider {*/
/*  box-sizing: border-box;*/
/*  width: 16px;*/
/*  height: 0;*/
/*  border: 1px solid #E6E2DC;*/
/*}*/

/*.about-right .label-jp {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: italic;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  color: #66645E;*/
/*}*/

/* about-title */
/*.about-title {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 48px;*/
/*  line-height: 115%;*/
  /* 55px */
/*  color: #1B2A41;*/
/*  letter-spacing: -0.5px;*/
/*  margin: 0;*/
/*}*/

/* about-body */
/*.about-body {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 15px;*/
/*  line-height: 160%;*/
  /* 24px */
/*  color: #1A1A1A;*/
/*  margin: 0;*/
/*}*/

/* about-leadership */
/*.about-leadership {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 24px;*/
/*  gap: 8px;*/
/*  width: 100%;*/
/*  background: #FCFAF6;*/
/*  border: 1px solid #E6E2DC;*/
/*  border-radius: 6px;*/
/*}*/

/*.leadership-tag {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  color: #C8102E;*/
/*  margin: 0;*/
/*}*/

/*.leadership-text {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 14px;*/
/*  line-height: 150%;*/
  /* 21px */
/*  color: #1B2A41;*/
/*  margin: 0;*/
/*}*/

/* about-values */
/*.about-values {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: flex-start;*/
/*  padding-top: 12px;*/
/*  gap: 24px;*/
/*  width: 100%;*/
/*}*/

/*.val-item {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  justify-content: center;*/
/*  align-items: flex-start;*/
/*  gap: 6px;*/
/*  flex: 1 1 0;*/
/*  min-width: 0;*/
/*}*/

/*.val-jp {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 20px;*/
/*  line-height: 26px;*/
/*  color: #B8935A;*/
/*}*/

/*.val-name {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 13px;*/
/*  line-height: 17px;*/
/*  color: #1B2A41;*/
/*}*/

/*.val-desc {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  color: #66645E;*/
/*}*/

/* Responsive adjustments */
/*@media (max-width: 1200px) {*/
/*  .section-about .container {*/
/*    padding: 0 40px;*/
/*  }*/

/*  .about-grid {*/
/*    gap: 28px;*/
/*  }*/

/*  .about-image-wrapper {*/
/*    flex: 0 0 440px;*/
/*    width: 440px;*/
/*    height: 520px;*/
/*  }*/
/*}*/

/*@media (max-width: 992px) {*/
/*  .section-about {*/
/*    padding: 60px 0;*/
/*  }*/

/*  .section-about .container {*/
/*    padding: 0 24px;*/
/*  }*/

/*  .about-grid {*/
/*    flex-direction: column;*/
/*    gap: 36px;*/
/*  }*/

/*  .about-image-wrapper {*/
/*    width: 100%;*/
/*    max-width: 515px;*/
/*    height: 420px;*/
/*    margin: 0 auto;*/
/*  }*/

/*  .about-right {*/
/*    max-width: 100%;*/
/*    gap: 24px;*/
/*  }*/

/*  .about-title {*/
/*    font-size: 36px;*/
/*    line-height: 44px;*/
/*  }*/

/*  .about-values {*/
/*    display: grid;*/
/*    grid-template-columns: repeat(2, 1fr);*/
/*    gap: 20px;*/
/*  }*/
/*}*/

/* ==========================================================================
   Most Sold Products Section (section-most-sold)
   Figma Specification: B2B Carousel Showcase
   ========================================================================== */
/*.section-most-sold {*/
/*  position: relative;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  padding: 80px 0 50px;*/
/*  background: #FFFFFF;*/
/*  width: 100%;*/
/*  box-sizing: border-box;*/
/*  overflow: hidden;*/
/*  isolation: isolate;*/
/*}*/

/* Frame 2 - Japanese Castle Background Vectors from Figma */
/*.most-sold-bg-frame {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  justify-content: space-between;*/
/*  align-items: flex-end;*/
/*  padding: 0px;*/
/*  position: absolute;*/
/*  width: 1635.63px;*/
/*  max-width: 100vw;*/
/*  height: 361.87px;*/
/*  left: calc(50% - 1635.63px / 2);*/
/*  top: 40px;*/
/*  pointer-events: none;*/
/*  z-index: 0;*/
/*  user-select: none;*/
/*}*/

/*@media (max-width: 1640px) {*/
/*  .most-sold-bg-frame {*/
/*    width: 100%;*/
/*    left: 0;*/
/*    padding: 0 10px;*/
/*  }*/
/*}*/

/*.section-most-sold .container {*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*  margin: 0 auto;*/
/*  padding: 0 24px;*/
/*  position: relative;*/
/*  z-index: 1;*/
/*}*/

/* Most Sold Header */
/*.most-sold-header {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  text-align: center;*/
/*  gap: 16px;*/
/*  margin-bottom: 36px;*/
/*  width: 100%;*/
/*}*/

/*.most-sold-header .section-label {*/
/*  display: inline-flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  gap: 12px;*/
/*  margin-bottom: 0;*/
/*}*/

/*.most-sold-header .label-en {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  color: #C8102E;*/
/*  letter-spacing: 0.5px;*/
/*}*/

/*.most-sold-header .label-divider {*/
/*  box-sizing: border-box;*/
/*  width: 16px;*/
/*  height: 0px;*/
/*  border-top: 1px solid #E6E2DC;*/
/*}*/

/*.most-sold-header .label-jp {*/
/*  font-family: var(--font-serif);*/
/*  font-style: italic;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  color: #66645E;*/
/*}*/

/*.most-sold-title {*/
/*  max-width: 843px;*/
/*  font-family: var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 48px;*/
/*  line-height: 1.25;*/
/*  text-align: center;*/
/*  color: #1B2A41;*/
/*  margin: 0;*/
/*}*/

/*.most-sold-subtitle {*/
/*  max-width: 624px;*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  text-align: center;*/
/*  color: #66645E;*/
/*  margin: 0;*/
/*}*/

/* Carousel Outer Wrapper with Relative Positioning for Controls */
/*.most-sold-carousel-wrapper {*/
/*  position: relative;*/
/*  width: 100%;*/
/*  margin-top: 8px;*/
/*}*/

/* Carousel Scroll Track */
/*.most-sold-carousel {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: stretch;*/
/*  gap: 24px;*/
/*  width: 100%;*/
/*  overflow-x: auto;*/
/*  scroll-behavior: smooth;*/
/*  scroll-snap-type: x mandatory;*/
/*  padding: 12px 2px 24px 2px;*/
/*  scrollbar-width: none;*/
/*  -ms-overflow-style: none;*/
/*}*/

/*.most-sold-carousel::-webkit-scrollbar {*/
/*  display: none;*/
/*}*/

/* Product Card */
/*.most-sold-card {*/
/*  box-sizing: border-box;*/
/*  flex: 0 0 302px;*/
/*  width: 302px;*/
/*  height: 320px;*/
/*  background: #FFFFFF;*/
/*  border: 1px solid #E6E2DC;*/
/*  border-radius: 8px;*/
/*  overflow: hidden;*/
/*  position: relative;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  scroll-snap-align: start;*/
/*  text-decoration: none;*/
/*  color: inherit;*/
/*  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1),*/
/*    box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1),*/
/*    border-color 0.25s ease;*/
/*  box-shadow: 0 2px 8px rgba(27, 42, 65, 0.03);*/
/*}*/

/*.most-sold-card:hover {*/
/*  transform: translateY(-4px);*/
/*  box-shadow: 0 12px 28px rgba(27, 42, 65, 0.10);*/
/*  border-color: var(--color-gold, #B8935A);*/
/*}*/

/* Card Image Area */
/*.most-sold-card-image {*/
/*  position: relative;*/
/*  width: 100%;*/
/*  height: 200px;*/
/*  min-height: 200px;*/
/*  background: #F4F2EC;*/
/*  overflow: hidden;*/
/*}*/

/* Multi-Image Gallery & Transitional Hover */
/*.card-img-gallery {*/
/*  position: relative;*/
/*  width: 100%;*/
/*  height: 100%;*/
/*  overflow: hidden;*/
/*}*/

/*.card-img-gallery .gallery-img {*/
/*  position: absolute;*/
/*  top: 0;*/
/*  left: 0;*/
/*  width: 100%;*/
/*  height: 100%;*/
/*  object-fit: cover;*/
/*  object-position: center;*/
/*  display: block;*/
/*  opacity: 0;*/
/*  visibility: hidden;*/
/*  transform: scale(1);*/
/*  z-index: 0;*/
/*  transition: opacity 0.55s cubic-bezier(0.4, 0, 0.2, 1),*/
/*    visibility 0.55s cubic-bezier(0.4, 0, 0.2, 1),*/
/*    transform 0.75s cubic-bezier(0.16, 1, 0.3, 1);*/
/*  pointer-events: none;*/
/*  will-change: opacity, transform;*/
/*}*/

/*.card-img-gallery .gallery-img.prev-active {*/
/*  opacity: 1;*/
/*  visibility: visible;*/
/*  z-index: 1;*/
/*}*/

/*.card-img-gallery .gallery-img.active {*/
/*  opacity: 1;*/
/*  visibility: visible;*/
/*  pointer-events: auto;*/
/*  z-index: 2;*/
/*}*/

/*.most-sold-card:hover .card-img-gallery .gallery-img.active,*/
/*.catalog-product-card:hover .card-img-gallery .gallery-img.active,*/
/*.most-sold-card:hover .card-img-gallery .gallery-img.prev-active,*/
/*.catalog-product-card:hover .card-img-gallery .gallery-img.prev-active {*/
/*  transform: scale(1.05);*/
/*}*/

/* Plus Select Button */
/*.most-sold-card .select-btn {*/
/*  position: absolute;*/
/*  top: 12px;*/
/*  right: 12px;*/
/*  width: 36px;*/
/*  height: 36px;*/
/*  border-radius: 18px;*/
/*  background: rgba(200, 16, 46, 0.67);*/
/*  border: none;*/
/*  cursor: pointer;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  color: #FFFFFF;*/
/*  font-size: 20px;*/
/*  z-index: 2;*/
/*  transition: background 0.2s ease, transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);*/
/*  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);*/
/*}*/

/*.most-sold-card .select-btn:hover {*/
/*  background: #C8102E;*/
/*  transform: scale(1.1);*/
/*}*/

/* Image Indicator Dots Pill */
/*.image-indicators {*/
/*  position: absolute;*/
/*  left: 50%;*/
/*  transform: translateX(-50%);*/
/*  bottom: 12px;*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 5px 8px;*/
/*  gap: 6px;*/
/*  background: rgba(10, 13, 18, 0.55);*/
/*  border-radius: 999px;*/
/*  z-index: 2;*/
/*  pointer-events: none;*/
/*  backdrop-filter: blur(4px);*/
/*  -webkit-backdrop-filter: blur(4px);*/
/*  transition: opacity 0.3s ease;*/
/*}*/

/*.indicator-dot {*/
/*  box-sizing: border-box;*/
/*  width: 7px;*/
/*  height: 7px;*/
/*  border-radius: 50%;*/
/*  background: rgba(255, 255, 255, 0.75);*/
/*  opacity: 0.4;*/
/*  border: 1px solid rgba(18, 23, 33, 0.4);*/
/*  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.35);*/
/*  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);*/
/*  pointer-events: auto;*/
/*  cursor: pointer;*/
/*}*/

/*.indicator-dot.active {*/
/*  background: #FFFFFF;*/
/*  opacity: 1;*/
/*  width: 16px;*/
/*  border-radius: 4px;*/
/*}*/

/* Card Body */
/*.most-sold-card-body {*/
/*  box-sizing: border-box;*/
/*  padding: 16px;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  gap: 8px;*/
/*  width: 100%;*/
/*  height: 120px;*/
/*  flex-grow: 1;*/
/*}*/

/*.most-sold-card-title {*/
/*  width: 100%;*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 15px;*/
/*  line-height: 20px;*/
/*  color: #1B2A41;*/
/*  white-space: nowrap;*/
/*  overflow: hidden;*/
/*  text-overflow: ellipsis;*/
/*  margin: 0;*/
/*}*/

/*.most-sold-card-desc {*/
/*  width: 100%;*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  color: #66645E;*/
/*  display: -webkit-box;*/
/*  -webkit-line-clamp: 2;*/
/*  -webkit-box-orient: vertical;*/
/*  overflow: hidden;*/
/*  margin: 0;*/
/*}*/

/* Carousel Control Buttons */
/*.most-sold-control {*/
/*  position: absolute;*/
/*  top: calc(50% - 24px);*/
/*  width: 48px;*/
/*  height: 48px;*/
/*  border-radius: 24px;*/
/*  background: #FFFFFF;*/
/*  border: 1px solid #E6E2DC;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  cursor: pointer;*/
/*  z-index: 5;*/
/*  color: #1B2A41;*/
/*  font-size: 22px;*/
/*  box-shadow: 0 4px 12px rgba(27, 42, 65, 0.08);*/
/*  transition: all 0.2s ease;*/
/*}*/

/*.most-sold-control:hover {*/
/*  background: #FFFFFF;*/
/*  border-color: #C8102E;*/
/*  color: #C8102E;*/
/*  box-shadow: 0 6px 18px rgba(200, 16, 46, 0.18);*/
/*  transform: scale(1.05);*/
/*}*/

/*.most-sold-control.prev-control {*/
/*  left: -21px;*/
/*}*/

/*.most-sold-control.next-control {*/
/*  right: -21px;*/
/*}*/

/* Pagination Dots */
/*.most-sold-pagination {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  gap: 8px;*/
/*  width: 100%;*/
/*  margin-top: 16px;*/
/*}*/

/*.most-sold-pagination .pagination-dot {*/
/*  width: 8px;*/
/*  height: 8px;*/
/*  border-radius: 50%;*/
/*  background: #E6E2DC;*/
/*  cursor: pointer;*/
/*  transition: background 0.2s ease, transform 0.2s ease;*/
/*}*/

/*.most-sold-pagination .pagination-dot.active {*/
/*  background: #C8102E;*/
/*  transform: scale(1.15);*/
/*}*/

/* Responsive adjustments */
/*@media (max-width: 1340px) {*/
/*  .most-sold-control.prev-control {*/
/*    left: -10px;*/
/*  }*/

/*  .most-sold-control.next-control {*/
/*    right: -10px;*/
/*  }*/
/*}*/

/*@media (max-width: 1024px) {*/
/*  .section-most-sold {*/
/*    padding: 60px 0 36px;*/
/*  }*/

/*  .most-sold-title {*/
/*    font-size: 38px;*/
/*    line-height: 1.25;*/
/*  }*/

/*  .most-sold-control {*/
/*    display: none;*/
/*  }*/
/*}*/

/*@media (max-width: 640px) {*/
/*  .section-most-sold {*/
/*    padding: 48px 0 28px;*/
/*  }*/

/*  .most-sold-title {*/
/*    font-size: 32px;*/
/*  }*/

/*  .most-sold-subtitle {*/
/*    font-size: 14px;*/
/*    line-height: 19px;*/
/*  }*/

/*  .most-sold-card {*/
/*    flex: 0 0 270px;*/
/*    width: 270px;*/
/*  }*/
/*}*/

/* ==========================================================================
   Products Section (section-products)
   Theme: Figma B2B Specification with Ramen Background Pattern across Whole Section
   ========================================================================== */
/*.section-products {*/
/*  padding: 80px 0;*/
/*  background-color: #FFFFFF;*/
/*  position: relative;*/
/*  overflow: hidden;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  width: 100%;*/
/*  box-sizing: border-box;*/
/*}*/

/* Decorative Ramen Watermarks (Exact Figma B2B Specification - 5 Strategic Positions) */
/*.products-ramen-frame {*/
/*  position: absolute;*/
/*  top: 0;*/
/*  left: 50%;*/
/*  transform: translateX(-50%);*/
/*  width: 1440px;*/
/*  height: 100%;*/
/*  pointer-events: none;*/
/*  z-index: 0;*/
/*  overflow: visible;*/
/*}*/

/*.ramen-watermark {*/
/*  position: absolute;*/
/*  width: 277.99px;*/
/*  height: 277.99px;*/
/*  background-image: url('../ramen.png');*/
/*  background-size: contain;*/
/*  background-repeat: no-repeat;*/
/*  background-position: center;*/
/*  opacity: 0.05;*/
/*  transform: rotate(-14.31deg);*/
/*  pointer-events: none;*/
/*}*/

/* ramen 1 */
/*.ramen-watermark.ramen-1 {*/
/*  left: -183.81px;*/
/*  top: -8px;*/
/*}*/

/* ramen 4 */
/*.ramen-watermark.ramen-4 {*/
/*  left: 1023px;*/
/*  top: 21px;*/
/*}*/

/* ramen 5 */
/*.ramen-watermark.ramen-5 {*/
/*  left: calc(50% - 277.99px / 2 - 30.01px);*/
/*  top: 414px;*/
/*}*/

/* ramen 2 */
/*.ramen-watermark.ramen-2 {*/
/*  left: 1092px;*/
/*  top: 810px;*/
/*}*/

/* ramen 3 */
/*.ramen-watermark.ramen-3 {*/
/*  left: -217px;*/
/*  top: 1079px;*/
/*}*/

/*.section-products .container {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  padding: 0 80px;*/
/*  gap: 60px;*/
/*  max-width: 1440px;*/
/*  width: 100%;*/
/*  margin: 0 auto;*/
/*  box-sizing: border-box;*/
/*  position: relative;*/
/*  z-index: 1;*/
/*}*/

/* products-header */
/*.products-header {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  text-align: center;*/
/*  padding: 0;*/
/*  gap: 16px;*/
/*  max-width: 843px;*/
/*  width: 100%;*/
/*  margin: 0 auto;*/
/*  position: relative;*/
/*  z-index: 1;*/
/*}*/

/*.products-header .section-label {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  padding: 0;*/
/*  gap: 12px;*/
/*  height: 21px;*/
/*  margin-bottom: 0;*/
/*}*/

/*.products-header .label-en {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  color: #C8102E;*/
/*}*/

/*.products-header .label-divider {*/
/*  box-sizing: border-box;*/
/*  width: 16px;*/
/*  height: 0;*/
/*  border: 1px solid #E6E2DC;*/
/*}*/

/*.products-header .label-jp {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: italic;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  color: #66645E;*/
/*}*/

/*.products-title {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 48px;*/
/*  line-height: 62px;*/
/*  text-align: center;*/
/*  color: #1B2A41;*/
/*  max-width: 843px;*/
/*  margin: 0;*/
/*  letter-spacing: -0.5px;*/
/*}*/

/*.products-subtitle {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  text-align: center;*/
/*  color: #66645E;*/
/*  max-width: 624px;*/
/*  margin: 0;*/
/*}*/

/* Products Grid */
/*.products-grid {*/
/*  display: grid;*/
/*  grid-template-columns: repeat(3, 1fr);*/
/*  gap: 32px;*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*  position: relative;*/
/*  z-index: 1;*/
/*}*/

/*.product-card {*/
/*  box-sizing: border-box;*/
/*  background: #FFFFFF;*/
/*  border: 1px solid #E6E2DC;*/
/*  border-radius: 8px;*/
/*  overflow: hidden;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  justify-content: space-between;*/
/*  min-height: 351px;*/
/*  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;*/
/*}*/

/*.product-card:hover {*/
/*  border-color: #cbd5e1;*/
/*  box-shadow: 0 12px 28px rgba(27, 42, 65, 0.08);*/
/*  transform: translateY(-2px);*/
/*}*/

/*.card-top {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  width: 100%;*/
/*}*/

/*.card-image {*/
/*  width: 100%;*/
/*  height: 180px;*/
/*  object-fit: cover;*/
/*  background: #f1f3f7;*/
/*  display: block;*/
/*}*/

/*.card-content {*/
/*  padding: 20px;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  gap: 12px;*/
/*  width: 100%;*/
/*  box-sizing: border-box;*/
/*}*/

/*.card-title {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 24px;*/
/*  line-height: 31px;*/
/*  color: #1B2A41;*/
/*  margin: 0;*/
/*}*/

/*.card-list {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 13px;*/
/*  line-height: 150%;*/
/*  color: #66645E;*/
/*  margin: 0;*/
/*  min-height: 40px;*/
/*}*/

/*.card-footer {*/
/*  box-sizing: border-box;*/
/*  padding: 16px 20px;*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: flex-start;*/
/*}*/

/*.card-inquire-link {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  color: #C8102E;*/
/*  text-decoration: none;*/
/*  display: inline-flex;*/
/*  align-items: center;*/
/*  gap: 6px;*/
/*  transition: transform 0.2s ease, color 0.2s ease;*/
/*}*/

/*.card-inquire-link:hover {*/
/*  color: #A00D24;*/
/*  transform: translateX(3px);*/
/*}*/

/* Responsive adjustments for Products */
/*@media (max-width: 1200px) {*/
/*  .section-products .container {*/
/*    padding: 0 40px;*/
/*    gap: 48px;*/
/*  }*/

/*  .products-grid {*/
/*    grid-template-columns: repeat(2, 1fr);*/
/*    gap: 24px;*/
/*  }*/

/*  .products-ramen-frame {*/
/*    width: 100%;*/
/*  }*/
/*}*/

/*@media (max-width: 768px) {*/
/*  .section-products {*/
/*    padding: 60px 0;*/
/*  }*/

/*  .section-products .container {*/
/*    padding: 0 20px;*/
/*    gap: 40px;*/
/*  }*/

/*  .products-header {*/
/*    margin-bottom: 0;*/
/*  }*/

/*  .products-title {*/
/*    font-size: 32px;*/
/*    line-height: 40px;*/
/*  }*/

/*  .products-grid {*/
/*    grid-template-columns: 1fr;*/
/*    gap: 20px;*/
/*  }*/

/*  .products-ramen-frame {*/
/*    width: 100%;*/
/*    left: 0;*/
/*    transform: none;*/
/*  }*/

/*  .ramen-watermark {*/
/*    opacity: 0.035;*/
/*    width: 180px;*/
/*    height: 180px;*/
/*  }*/

/*  .ramen-watermark.ramen-1 {*/
/*    left: -60px;*/
/*    top: -10px;*/
/*  }*/

/*  .ramen-watermark.ramen-4 {*/
/*    left: auto;*/
/*    right: -60px;*/
/*    top: 40px;*/
/*  }*/

/*  .ramen-watermark.ramen-5 {*/
/*    display: none;*/
/*  }*/

/*  .ramen-watermark.ramen-2 {*/
/*    left: auto;*/
/*    right: -60px;*/
/*    top: 70%;*/
/*  }*/

/*  .ramen-watermark.ramen-3 {*/
/*    left: -60px;*/
/*    top: 90%;*/
/*  }*/
/*}*/

/* ==========================================================================
   Why Partner With Us Section (section-why-us)
   Theme: Figma B2B Specification - Cold-Chain Integrity & Uncompromising Quality
   ========================================================================== */
/*.section-why-us {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 80px 0;*/
/*  background: #F7F5F0;*/
/*  width: 100%;*/
/*}*/

/*.section-why-us .container {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0 80px;*/
/*  gap: 60px;*/
/*  max-width: 1440px;*/
/*  width: 100%;*/
/*  margin: 0 auto;*/
/*  box-sizing: border-box;*/
/*}*/

/* why-us-header */
/*.why-us-header {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  gap: 16px;*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*}*/

/*.why-us-header .section-label {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 0;*/
/*  gap: 12px;*/
/*  margin-bottom: 0;*/
/*  height: 21px;*/
/*}*/

/*.why-us-header .label-en {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  color: #C8102E;*/
/*  letter-spacing: 0.5px;*/
/*}*/

/*.why-us-header .label-divider {*/
/*  box-sizing: border-box;*/
/*  width: 16px;*/
/*  height: 0;*/
/*  border: 1px solid #2D3E56;*/
/*}*/

/*.why-us-header .label-jp {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: italic;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  color: #66645E;*/
/*}*/

/*.why-us-title {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 48px;*/
/*  line-height: 62px;*/
/*  color: #1B2A41;*/
/*  max-width: 971px;*/
/*  margin: 0;*/
/*  letter-spacing: -0.5px;*/
/*}*/

/* why-us-features */
/*.why-us-features,*/
/*.why-us-grid {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  gap: 48px;*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*}*/

/* feature items */
/*.feature-item {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  gap: 20px;*/
/*  flex: 1 1 0;*/
/*  max-width: 284px;*/
/*}*/

/* feature-icon badge */
/*.feature-icon {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  justify-content: center;*/
/*  align-items: center;*/
/*  padding: 0;*/
/*  width: 56px;*/
/*  height: 56px;*/
/*  background: #FFFFFF;*/
/*  border: 1px solid rgba(255, 255, 255, 0.2);*/
/*  border-radius: 28px;*/
/*  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);*/
/*  flex-shrink: 0;*/
/*  transition: transform 0.25s ease, box-shadow 0.25s ease;*/
/*}*/

/*.feature-item:hover .feature-icon {*/
/*  transform: translateY(-2px);*/
/*  box-shadow: 0 6px 16px rgba(184, 147, 90, 0.18);*/
/*}*/

/*.feature-svg {*/
/*  width: 24px;*/
/*  height: 24px;*/
/*  display: block;*/
/*}*/

/* feature-content */
/*.feature-content {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  gap: 8px;*/
/*  width: 100%;*/
/*}*/

/*.feature-title {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 24px;*/
/*  line-height: 31px;*/
/*  color: #1B2A41;*/
/*  margin: 0;*/
/*}*/

/*.feature-desc {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 14px;*/
/*  line-height: 150%;*/
  /* 21px */
/*  color: #66645E;*/
/*  margin: 0;*/
/*}*/

/* Responsive adjustments for Why Us */
/*@media (max-width: 1200px) {*/
/*  .section-why-us .container {*/
/*    padding: 0 40px;*/
/*    gap: 48px;*/
/*  }*/

/*  .why-us-features,*/
/*  .why-us-grid {*/
/*    display: grid;*/
/*    grid-template-columns: repeat(2, 1fr);*/
/*    gap: 40px 32px;*/
/*  }*/

/*  .feature-item {*/
/*    max-width: 100%;*/
/*  }*/
/*}*/

/*@media (max-width: 768px) {*/
/*  .section-why-us {*/
/*    padding: 60px 0;*/
/*  }*/

/*  .section-why-us .container {*/
/*    padding: 0 24px;*/
/*    gap: 36px;*/
/*  }*/

/*  .why-us-title {*/
/*    font-size: 34px;*/
/*    line-height: 42px;*/
/*  }*/

/*  .why-us-features,*/
/*  .why-us-grid {*/
/*    grid-template-columns: 1fr;*/
/*    gap: 32px;*/
/*  }*/
/*}*/

/* ==========================================================================
   Contact Us Section (section-contact)
   ========================================================================== */
/* ==========================================================================
   Contact Us Section (section-contact)
   Theme: Figma B2B Specification with Hanging Lanterns Backdrop
   ========================================================================== */
/*.section-contact {*/
/*  padding: 120px 80px;*/
/*  background: #FFFFFF;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  gap: 64px;*/
/*  isolation: isolate;*/
/*  position: relative;*/
/*  width: 100%;*/
/*  overflow: hidden;*/
/*  box-sizing: border-box;*/
/*}*/

/* Hanging Lanterns Background Frame (Frame 3) */
/*.contact-lanterns-frame {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  justify-content: space-between;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  position: absolute;*/
/*  width: 1298px;*/
/*  max-width: calc(100% - 40px);*/
/*  height: 141px;*/
/*  left: 50%;*/
/*  transform: translateX(-50%);*/
/*  top: 0;*/
/*  pointer-events: none;*/
/*  z-index: 0;*/
/*}*/

/*.lantern-item {*/
/*  width: 141px;*/
/*  height: 141px;*/
/*  background-image: url('../lantern.png');*/
/*  background-repeat: no-repeat;*/
/*  background-position: top center;*/
/*  background-size: contain;*/
/*  opacity: 0.08;*/
  /* Clearly visible delicate watermark matching screenshot */
/*  flex-shrink: 0;*/
/*}*/

/*.section-contact .container {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  gap: 64px;*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*  margin: 0 auto;*/
/*  position: relative;*/
/*  z-index: 1;*/
/*}*/

/* contact-header */
/*.contact-header {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  text-align: center;*/
/*  padding: 0;*/
/*  gap: 20px;*/
/*  max-width: 843px;*/
/*  width: 100%;*/
/*  margin: 0 auto;*/
/*}*/

/*.contact-header .section-label {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  padding: 0;*/
/*  gap: 12px;*/
/*  height: 21px;*/
/*  margin-bottom: 0;*/
/*}*/

/*.contact-header .label-en {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  text-transform: uppercase;*/
/*  color: #C8102E;*/
/*}*/

/*.contact-header .label-divider {*/
/*  box-sizing: border-box;*/
/*  width: 16px;*/
/*  height: 0;*/
/*  border: 1px solid #2D3E56;*/
/*}*/

/*.contact-header .label-jp {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: italic;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  color: #94A3B8;*/
/*}*/

/*.contact-title {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 48px;*/
/*  line-height: 62px;*/
/*  text-align: center;*/
/*  color: #1B2A41;*/
/*  letter-spacing: -0.5px;*/
/*  margin: 0;*/
/*  max-width: 843px;*/
/*}*/

/*.contact-subtitle {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 160%;*/
/*  text-align: center;*/
/*  color: #66645E;*/
/*  max-width: 843px;*/
/*  margin: 0;*/
/*}*/

/* contact-info-grid */
/*.contact-info-grid {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: stretch;*/
/*  padding: 0;*/
/*  gap: 32px;*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*}*/

/*.contact-info-card {*/
/*  flex: 1 1 0;*/
/*  background: #F7F5F0;*/
/*  border-radius: 12px;*/
/*  padding: 24px;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  gap: 12px;*/
/*  min-height: 163px;*/
/*  box-sizing: border-box;*/
/*  transition: transform 0.25s ease, box-shadow 0.25s ease;*/
/*}*/

/*.contact-info-card:hover {*/
/*  transform: translateY(-2px);*/
/*  box-shadow: 0 10px 24px rgba(27, 42, 65, 0.06);*/
/*}*/

/*.contact-card-header {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 0;*/
/*  gap: 12px;*/
/*  width: 100%;*/
/*  height: 21px;*/
/*}*/

/*.contact-card-icon {*/
/*  width: 20px;*/
/*  height: 20px;*/
/*  flex-shrink: 0;*/
/*  display: block;*/
/*}*/

/*.contact-card-title {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  text-transform: uppercase;*/
/*  color: #1B2A41;*/
/*  letter-spacing: 0.5px;*/
/*  margin: 0;*/
/*}*/

/*.contact-card-list {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  gap: 8px;*/
/*  width: 100%;*/
/*}*/

/*.contact-card-link {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 14px;*/
/*  line-height: 150%;*/
/*  color: #1B2A41;*/
/*  text-decoration: none;*/
/*  transition: color 0.2s ease;*/
/*}*/

/*.contact-card-link:hover {*/
/*  color: #C8102E;*/
/*}*/

/*.contact-card-note {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 13px;*/
/*  line-height: 150%;*/
/*  color: #1B2A41;*/
/*  opacity: 0.8;*/
/*}*/

/* Social List */
/*.contact-social-list {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  gap: 10px;*/
/*  width: 100%;*/
/*}*/

/*.contact-social-item {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 0;*/
/*  gap: 10px;*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  color: #1B2A41;*/
/*  text-decoration: none;*/
/*  transition: color 0.2s ease;*/
/*}*/

/*.contact-social-item:hover {*/
/*  color: #C8102E;*/
/*}*/

/*.contact-social-item svg {*/
/*  width: 18px;*/
/*  height: 18px;*/
/*  flex-shrink: 0;*/
/*  stroke: #1B2A41;*/
/*  transition: stroke 0.2s ease;*/
/*}*/

/*.contact-social-item:hover svg {*/
/*  stroke: #C8102E;*/
/*}*/

/* Responsive adjustments */
/*@media (max-width: 1200px) {*/
/*  .section-contact {*/
/*    padding: 80px 40px;*/
/*  }*/

/*  .contact-lanterns-frame {*/
/*    width: 100%;*/
/*    padding: 0 40px;*/
/*    box-sizing: border-box;*/
/*  }*/

/*  .contact-info-grid {*/
/*    gap: 20px;*/
/*  }*/
/*}*/

/*@media (max-width: 900px) {*/
/*  .section-contact {*/
/*    padding: 60px 24px;*/
/*    gap: 40px;*/
/*  }*/

/*  .contact-lanterns-frame {*/
/*    display: none;*/
/*  }*/

/*  .contact-info-grid {*/
/*    flex-direction: column;*/
/*    gap: 16px;*/
/*  }*/

/*  .contact-title {*/
/*    font-size: 34px;*/
/*    line-height: 42px;*/
/*  }*/
/*}*/

/* ==========================================================================
   Footer (footer)
   ========================================================================== */
/*.site-footer {*/
/*  background: var(--color-white);*/
/*  border-top: 1px solid var(--color-border);*/
/*  padding: 80px 0 40px;*/
/*}*/

/*.footer-top {*/
/*  display: grid;*/
/*  grid-template-columns: 405px 1fr 1fr;*/
/*  gap: 48px;*/
/*  margin-bottom: 48px;*/
/*}*/

/*.footer-brand {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 16px;*/
/*}*/

/*.footer-desc {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 14px;*/
/*  line-height: 150%;*/
/*  color: var(--color-text-muted);*/
/*  max-width: 405px;*/
/*}*/

/*.footer-links-col {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 16px;*/
/*}*/

/*.footer-heading {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  color: var(--color-navy-dark);*/
/*  letter-spacing: 0.5px;*/
/*}*/

/*.footer-links-list {*/
/*  list-style: none;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 8px;*/
/*}*/

/*.footer-links-list a {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 13px;*/
/*  line-height: 17px;*/
/*  color: var(--color-text-muted);*/
/*}*/

/*.footer-links-list a:hover {*/
/*  color: var(--color-primary);*/
/*}*/

/*.enquiry-details {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 8px;*/
/*}*/

/*.enquiry-item {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 13px;*/
/*  line-height: 17px;*/
/*  color: var(--color-text-muted);*/
/*}*/

/*.enquiry-item a:hover {*/
/*  color: var(--color-primary);*/
/*}*/

/* Footer Bottom */
/*.footer-bottom {*/
/*  border-top: 1px solid var(--color-border);*/
/*  padding-top: 24px;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: space-between;*/
/*}*/

/*.copyright-text {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  color: var(--color-text-muted);*/
/*}*/

/*.social-icons {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 16px;*/
/*}*/

/*.social-circle {*/
/*  width: 32px;*/
/*  height: 32px;*/
/*  background: var(--color-bg-canvas);*/
/*  border-radius: 16px;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  color: var(--color-text-muted);*/
/*  font-size: 14px;*/
/*  transition: var(--transition);*/
/*}*/

/*.social-circle:hover {*/
/*  background: var(--color-primary);*/
/*  color: var(--color-white);*/
/*}*/

/* ==========================================================================
   Responsive Breakpoints
   ========================================================================== */
/*@media (max-width: 1200px) {*/
/*  .products-grid {*/
/*    grid-template-columns: repeat(2, 1fr);*/
/*  }*/

/*  .why-us-grid {*/
/*    grid-template-columns: repeat(2, 1fr);*/
/*  }*/
/*}*/

/*@media (max-width: 992px) {*/
/*  .site-header {*/
/*    padding: 0 32px;*/
/*  }*/

/*  .nav-menu,*/
/*  .header-actions .btn-primary {*/
/*    display: none;*/
/*  }*/

/*  .mobile-toggle {*/
/*    display: block;*/
/*  }*/

/*  .about-grid {*/
/*    grid-template-columns: 1fr;*/
/*  }*/

/*  .about-image-wrapper {*/
/*    height: 380px;*/
/*    max-width: 100%;*/
/*  }*/

/*  .footer-top {*/
/*    grid-template-columns: 1fr;*/
/*    gap: 32px;*/
/*  }*/

/*  .section-contact {*/
/*    padding: 80px 32px;*/
/*  }*/

/*  .contact-info-grid {*/
/*    flex-direction: column;*/
/*    gap: 20px;*/
/*  }*/
/*}*/

/*@media (max-width: 768px) {*/
/*  .site-header {*/
/*    padding: 0 20px;*/
/*  }*/

/*  .products-title,*/
/*  .about-title,*/
/*  .why-us-title,*/
/*  .contact-title {*/
/*    font-size: 32px;*/
/*  }*/

/*  .products-grid {*/
/*    grid-template-columns: 1fr;*/
/*  }*/

/*  .why-us-grid {*/
/*    grid-template-columns: 1fr;*/
/*  }*/

/*  .about-values {*/
/*    grid-template-columns: repeat(2, 1fr);*/
/*  }*/

/*  .section-contact {*/
/*    padding: 60px 20px;*/
/*  }*/

/*  .section-contact .container {*/
/*    gap: 40px;*/
/*  }*/

/*  .footer-bottom {*/
/*    flex-direction: column;*/
/*    align-items: flex-start;*/
/*    gap: 16px;*/
/*  }*/
/*}*/

/* ==========================================================================
   Products Catalog & Inquiry Page (products.php)
   ========================================================================== */
/*.catalog-header-section {*/
/*  padding: 60px 0 40px;*/
/*  background: #F7F5F0;*/
/*  width: 100%;*/
/*}*/

/*.breadcrumbs {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 8px;*/
/*  font-family: var(--font-sans);*/
/*  font-size: 13px;*/
/*  line-height: 17px;*/
/*  margin-bottom: 24px;*/
/*}*/

/*.breadcrumb-link {*/
/*  color: #66645E;*/
/*  text-decoration: none;*/
/*  transition: var(--transition);*/
/*}*/

/*.breadcrumb-link:hover {*/
/*  color: #C8102E;*/
/*}*/

/*.breadcrumb-sep {*/
/*  color: #66645E;*/
/*}*/

/*.breadcrumb-current {*/
/*  color: #1B2A41;*/
/*  font-weight: 600;*/
/*}*/

/*.catalog-title-block {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 16px;*/
/*  margin-bottom: 32px;*/
/*}*/

/*.catalog-eyebrow {*/
/*  font-family: var(--font-sans);*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  color: #C8102E;*/
/*  letter-spacing: 0.5px;*/
/*}*/

/*.catalog-title {*/
/*  font-family: var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 56px;*/
/*  line-height: 110%;*/
/*  color: #1B2A41;*/
/*  letter-spacing: -0.5px;*/
/*  margin: 0;*/
/*}*/

/*.catalog-subtitle {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 160%;*/
/*  color: #66645E;*/
/*  max-width: 1280px;*/
/*  margin: 0;*/
/*}*/

/* Search & Filter Controls */
/*.search-filter-controls {*/
/*  background: #FFFFFF;*/
/*  border: 1px solid #E6E2DC;*/
/*  border-radius: 8px;*/
/*  padding: 24px;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 20px;*/
/*  box-shadow: 0 4px 16px rgba(27, 42, 65, 0.03);*/
/*}*/

/*.catalog-search-box {*/
/*  background: rgba(255, 255, 255, 0.2);*/
/*  border: 1px solid #E6E2DC;*/
/*  border-radius: 4px;*/
/*  padding: 12px 18px;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 12px;*/
/*  transition: var(--transition);*/
/*}*/

/*.catalog-search-box:focus-within {*/
/*  border-color: #C8102E;*/
/*  box-shadow: 0 0 0 3px rgba(200, 16, 46, 0.08);*/
/*}*/

/*.catalog-search-box i {*/
/*  color: #66645E;*/
/*  font-size: 18px;*/
/*}*/

/*.catalog-search-input {*/
/*  border: none;*/
/*  outline: none;*/
/*  background: transparent;*/
/*  width: 100%;*/
/*  font-family: var(--font-sans);*/
/*  font-size: 15px;*/
/*  color: #1B2A41;*/
/*}*/

/*.catalog-search-input::placeholder {*/
/*  color: #66645E;*/
/*  opacity: 0.8;*/
/*}*/

/*.filter-pills-row {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  flex-wrap: wrap;*/
/*  align-items: center;*/
/*  gap: 8px;*/
/*}*/

/*.filter-pill {*/
/*  padding: 8px 16px;*/
/*  background: #FFFFFF;*/
/*  border: 1px solid #E6E2DC;*/
/*  border-radius: 100px;*/
/*  font-family: var(--font-sans);*/
/*  font-size: 13px;*/
/*  line-height: 17px;*/
/*  font-weight: 500;*/
/*  color: #1A1A1A;*/
/*  cursor: pointer;*/
/*  transition: var(--transition);*/
/*  display: inline-flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  text-decoration: none;*/
/*  user-select: none;*/
/*}*/

/*.filter-pill:hover {*/
/*  border-color: #C8102E;*/
/*  color: #C8102E;*/
/*}*/

/*.filter-pill.active {*/
/*  background: #C8102E;*/
/*  border-color: #C8102E;*/
/*  color: #FFFFFF;*/
/*  font-weight: 600;*/
/*}*/

/* Catalog Body Sections */
/*.catalog-body-sections {*/
/*  background: #FFFFFF;*/
/*  padding: 60px 0 80px;*/
/*  width: 100%;*/
/*}*/

/*.catalog-categories-container {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 64px;*/
/*}*/

/*.catalog-category-block {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 24px;*/
/*  scroll-margin-top: 100px;*/
/*}*/

/*.category-block-header {*/
/*  border-bottom: 1px solid #E6E2DC;*/
/*  padding-bottom: 16px;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 8px;*/
/*}*/

/*.cat-title-row {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 12px;*/
/*  flex-wrap: wrap;*/
/*}*/

/*.cat-title-en {*/
/*  font-family: var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 32px;*/
/*  line-height: 42px;*/
/*  color: #1B2A41;*/
/*  margin: 0;*/
/*}*/

/*.cat-title-div {*/
/*  box-sizing: border-box;*/
/*  width: 12px;*/
/*  height: 0;*/
/*  border: 1px solid #E6E2DC;*/
/*}*/

/*.cat-title-jp {*/
/*  font-family: var(--font-serif);*/
/*  font-style: italic;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  color: #B8935A;*/
/*}*/

/*.cat-desc {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  color: #66645E;*/
/*  margin: 0;*/
/*}*/

/* Product Grid */
/*.catalog-product-grid {*/
/*  display: grid;*/
/*  grid-template-columns: repeat(4, 1fr);*/
/*  gap: 24px;*/
/*}*/

/*.catalog-product-card {*/
/*  box-sizing: border-box;*/
/*  background: #FFFFFF;*/
/*  border: 1px solid #E6E2DC;*/
/*  border-radius: 8px;*/
/*  overflow: hidden;*/
/*  position: relative;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  height: 320px;*/
/*  transition: var(--transition);*/
/*}*/

/*.catalog-product-card:hover {*/
/*  border-color: #cbd5e1;*/
/*  box-shadow: 0 10px 24px rgba(27, 42, 65, 0.08);*/
/*  transform: translateY(-2px);*/
/*}*/

/*.catalog-product-card.is-selected {*/
/*  border-color: #C8102E;*/
/*  box-shadow: 0 4px 16px rgba(200, 16, 46, 0.12);*/
/*}*/

/*.catalog-product-card.product-highlight {*/
/*  animation: productPulseHighlight 2.5s ease-in-out;*/
/*  border-color: #C8102E !important;*/
/*  box-shadow: 0 0 0 3px #C8102E, 0 12px 32px rgba(200, 16, 46, 0.25) !important;*/
/*}*/

/*@keyframes productPulseHighlight {*/
/*  0% {*/
/*    transform: scale(1);*/
/*    box-shadow: 0 0 0 0 rgba(200, 16, 46, 0.7);*/
/*  }*/

/*  25% {*/
/*    transform: scale(1.03);*/
/*    box-shadow: 0 0 0 8px rgba(200, 16, 46, 0.35);*/
/*  }*/

/*  50% {*/
/*    transform: scale(1.01);*/
/*    box-shadow: 0 0 0 4px rgba(200, 16, 46, 0.2);*/
/*  }*/

/*  75% {*/
/*    transform: scale(1.02);*/
/*    box-shadow: 0 0 0 6px rgba(200, 16, 46, 0.25);*/
/*  }*/

/*  100% {*/
/*    transform: scale(1);*/
/*    box-shadow: 0 0 0 0 rgba(200, 16, 46, 0);*/
/*  }*/
/*}*/

/*.card-img-wrap {*/
/*  width: 100%;*/
/*  height: 200px;*/
/*  position: relative;*/
/*  overflow: hidden;*/
/*  background: #f8f7f4;*/
/*}*/

/*.card-img-wrap .card-img-gallery {*/
/*  width: 100%;*/
/*  height: 100%;*/
/*}*/

/*.btn-select-product {*/
/*  position: absolute;*/
/*  top: 12px;*/
/*  right: 12px;*/
/*  width: 36px;*/
/*  height: 36px;*/
/*  border-radius: 18px;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  background: rgba(200, 16, 46, 0.7);*/
/*  color: #FFFFFF;*/
/*  font-size: 18px;*/
/*  border: none;*/
/*  cursor: pointer;*/
/*  transition: var(--transition);*/
/*  z-index: 2;*/
/*}*/

/*.btn-select-product:hover {*/
/*  background: #C8102E;*/
/*  transform: scale(1.1);*/
/*}*/

/*.btn-select-product.selected {*/
/*  background: #C8102E;*/
/*  box-shadow: 0 4px 12px rgba(200, 16, 46, 0.4);*/
/*}*/

/*.card-info {*/
/*  padding: 16px;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 8px;*/
/*  flex: 1;*/
/*  justify-content: center;*/
/*}*/

/*.product-name {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 15px;*/
/*  line-height: 20px;*/
/*  color: #1B2A41;*/
/*  margin: 0;*/
/*}*/

/*.product-origin {*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  color: #66645E;*/
/*  margin: 0;*/
/*}*/

/* ==========================================================================
   Section Inquiry (section-inquiry) - Exact Figma Design Specification
   ========================================================================== */
/*.section-inquiry {*/
/*  background: #F7F5F0;*/
/*  padding: 80px 0;*/
/*  width: 100%;*/
/*  scroll-margin-top: 80px;*/
/*}*/

/*.section-inquiry .container {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  gap: 64px;*/
/*  max-width: 1280px;*/
/*  margin: 0 auto;*/
/*  padding: 0 24px;*/
/*}*/

/* inquiry-header */
/*.inquiry-header {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  padding: 0px;*/
/*  gap: 16px;*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*  text-align: center;*/
/*}*/

/* section-label */
/*.inquiry-header .section-label {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 0px;*/
/*  gap: 12px;*/
/*  margin: 0;*/
/*}*/

/* label-en */
/*.inquiry-header .label-en {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  color: #C8102E;*/
/*  margin: 0;*/
/*}*/

/* label-divider */
/*.inquiry-header .label-divider {*/
/*  box-sizing: border-box;*/
/*  width: 16px;*/
/*  height: 0px;*/
/*  border: 1px solid #E6E2DC;*/
/*  display: inline-block;*/
/*}*/

/* label-jp */
/*.inquiry-header .label-jp {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: italic;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  color: #66645E;*/
/*  margin: 0;*/
/*}*/

/* Request Pricing & Availability */
/*.inquiry-title {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 48px;*/
/*  line-height: 62px;*/
/*  text-align: center;*/
/*  color: #1B2A41;*/
/*  margin: 0;*/
/*}*/

/* Subtitle */
/*.inquiry-subtitle {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  text-align: center;*/
/*  color: #66645E;*/
/*  max-width: 624px;*/
/*  margin: 0 auto;*/
/*}*/

/* form-split */
/*.form-split,*/
/*.form-split-grid {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: flex-start;*/
/*  padding: 0px;*/
/*  gap: 40px;*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*}*/

/* form-left-col */
/*.form-left-col,*/
/*.form-left-box {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 40px;*/
/*  gap: 32px;*/
/*  flex: 1;*/
/*  background: #FFFFFF;*/
/*  border: 2px solid #1B2A41;*/
/*  box-shadow: 0px 2px 6px rgba(27, 42, 65, 0.0588235), 0px 12px 32px -12px rgba(27, 42, 65, 0.12549);*/
/*  border-radius: 12px;*/
/*}*/

/* subsec-business */
/*.subsec-business {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0px;*/
/*  gap: 20px;*/
/*  width: 100%;*/
/*}*/

/* Business Profile */
/*.subsec-title,*/
/*.box-heading {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 24px;*/
/*  line-height: 31px;*/
/*  color: #1B2A41;*/
/*  margin: 0;*/
/*  border: none;*/
/*  padding: 0;*/
/*}*/

/* Inline Form Validation Alert */
/*.inquiry-error-alert {*/
/*  background: #FEF2F2;*/
/*  border: 1px solid #FECACA;*/
/*  color: #991B1B;*/
/*  padding: 12px 16px;*/
/*  border-radius: 6px;*/
/*  margin-bottom: 20px;*/
/*  font-size: 14px;*/
/*  line-height: 20px;*/
/*  font-family: var(--font-sans);*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 10px;*/
/*  box-shadow: 0 1px 3px rgba(220, 38, 38, 0.08);*/
/*}*/

/*.inquiry-input-box.input-error,*/
/*.inquiry-select-box.input-error,*/
/*.inquiry-textarea-box.input-error {*/
/*  border-color: #DC2626 !important;*/
/*  background-color: #FFF5F5 !important;*/
/*}*/

/* input-field */
/*.inquiry-field,*/
/*.form-group {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0px;*/
/*  gap: 8px;*/
/*  width: 100%;*/
/*}*/

/*.inquiry-field-label,*/
/*.form-group label {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 13px;*/
/*  line-height: 17px;*/
/*  color: #1B2A41;*/
/*  margin: 0;*/
/*}*/

/*.req-star {*/
/*  color: #C8102E;*/
/*}*/

/* input-box */
/*.inquiry-input-box {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  justify-content: space-between;*/
/*  align-items: center;*/
/*  padding: 12px 16px;*/
/*  width: 100%;*/
/*  height: 42px;*/
/*  background: #FFFFFF;*/
/*  border: 1px solid #E6E2DC;*/
/*  border-radius: 4px;*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  color: #1B2A41;*/
/*  outline: none;*/
/*  transition: var(--transition);*/
/*}*/

/*.inquiry-input-box::placeholder {*/
/*  color: #66645E;*/
/*}*/

/*.inquiry-input-box:focus {*/
/*  border-color: #1B2A41;*/
/*  box-shadow: 0 0 0 2px rgba(27, 42, 65, 0.08);*/
/*}*/

/* select-wrapper */
/*.select-wrapper {*/
/*  position: relative;*/
/*  width: 100%;*/
/*}*/

/*.inquiry-select-box {*/
/*  appearance: none;*/
/*  -webkit-appearance: none;*/
/*  -moz-appearance: none;*/
/*  cursor: pointer;*/
/*  padding-right: 40px;*/
/*}*/

/*.inquiry-select-box:invalid,*/
/*.inquiry-select-box option[value=""] {*/
/*  color: #66645E;*/
/*}*/

/*.select-chevron {*/
/*  position: absolute;*/
/*  right: 16px;*/
/*  top: 50%;*/
/*  transform: translateY(-50%);*/
/*  pointer-events: none;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  color: #66645E;*/
/*}*/

/*.select-chevron svg {*/
/*  display: block;*/
/*}*/

/* row-inputs */
/*.row-inputs,*/
/*.inquiry-row-inputs,*/
/*.form-row-2 {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: flex-start;*/
/*  padding: 0px;*/
/*  gap: 16px;*/
/*  width: 100%;*/
/*}*/

/*.row-inputs .inquiry-field,*/
/*.inquiry-row-inputs .inquiry-field,*/
/*.form-row-2 .form-group {*/
/*  flex: 1;*/
/*}*/

/* textarea-field */
/*.inquiry-textarea-box {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: flex-start;*/
/*  padding: 12px 16px;*/
/*  width: 100%;*/
/*  min-height: 70px;*/
/*  height: 70px;*/
/*  background: #FFFFFF;*/
/*  border: 1px solid #E6E2DC;*/
/*  border-radius: 4px;*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  color: #1B2A41;*/
/*  outline: none;*/
/*  resize: vertical;*/
/*  transition: var(--transition);*/
/*}*/

/*.inquiry-textarea-box::placeholder {*/
/*  color: #66645E;*/
/*}*/

/*.inquiry-textarea-box:focus {*/
/*  border-color: #1B2A41;*/
/*  box-shadow: 0 0 0 2px rgba(27, 42, 65, 0.08);*/
/*}*/

/* form-actions */
/*.form-actions,*/
/*.inquiry-form-actions {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0px;*/
/*  gap: 16px;*/
/*  width: 100%;*/
/*  margin-top: 12px;*/
/*}*/

/* btn-submit */
/*.btn-submit,*/
/*.btn-submit-inquiry {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  justify-content: center;*/
/*  align-items: center;*/
/*  padding: 16px 32px;*/
/*  width: 100%;*/
/*  height: 53px;*/
/*  background: #C8102E;*/
/*  border: none;*/
/*  border-radius: 4px;*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  text-transform: uppercase;*/
/*  color: #FFFFFF;*/
/*  cursor: pointer;*/
/*  transition: var(--transition);*/
/*}*/

/*.btn-submit:hover,*/
/*.btn-submit-inquiry:hover {*/
/*  background: #a80d26;*/
/*  transform: translateY(-1px);*/
/*}*/

/* form-disclaimer */
/*.form-disclaimer,*/
/*.inquiry-disclaimer {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-align: center;*/
/*  color: #66645E;*/
/*  width: 100%;*/
/*  margin: 0;*/
/*}*/

/* form-right-col */
/*.form-right-col,*/
/*.form-right-box {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 32px;*/
/*  gap: 24px;*/
/*  width: 440px;*/
/*  flex-shrink: 0;*/
/*  background: #1B2A41;*/
/*  border-radius: 8px;*/
/*  position: sticky;*/
/*  top: 100px;*/
/*}*/

/* Selected for Quote */
/*.quote-title,*/
/*.quote-heading {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 24px;*/
/*  line-height: 31px;*/
/*  color: #FFFFFF;*/
/*  margin: 0;*/
/*  border: none;*/
/*  padding: 0;*/
/*}*/

/* selected-items */
/*.selected-items,*/
/*.selected-items-list,*/
/*.selected-quote-items {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0px;*/
/*  gap: 16px;*/
/*  width: 100%;*/
/*}*/

/*.quote-empty-msg {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-size: 13px;*/
/*  line-height: 150%;*/
/*  color: rgba(255, 255, 255, 0.6);*/
/*  padding: 12px 0;*/
/*}*/

/* inquiry-item */
/*.inquiry-item,*/
/*.quote-item-row {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  justify-content: space-between;*/
/*  align-items: center;*/
/*  padding: 0px;*/
/*  width: 100%;*/
/*  height: 38px;*/
/*}*/

/* item-info */
/*.item-info,*/
/*.quote-item-info {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0px;*/
/*  gap: 4px;*/
/*  flex: 1;*/
/*  min-width: 0;*/
/*}*/

/*.item-name,*/
/*.quote-item-name {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  color: #FFFFFF;*/
/*  white-space: nowrap;*/
/*  overflow: hidden;*/
/*  text-overflow: ellipsis;*/
/*  max-width: 240px;*/
/*}*/

/*.item-cat,*/
/*.quote-item-cat {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  color: #B8935A;*/
/*}*/

/* qty-unit-box */
/*.qty-unit-box,*/
/*.qty-counter {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 0px;*/
/*  gap: 4px;*/
/*  flex-shrink: 0;*/
/*}*/

/* qty-input (-) & (+) */
/*.qty-input,*/
/*.qty-btn,*/
/*.qty-val,*/
/*.qty-display {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  justify-content: center;*/
/*  align-items: center;*/
/*  height: 28px;*/
/*  background: #1F2E47;*/
/*  border: 1px solid #2D3E56;*/
/*  border-radius: 4px;*/
/*  color: #FFFFFF;*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-align: center;*/
/*}*/

/*.qty-btn {*/
/*  width: 33px;*/
/*  cursor: pointer;*/
/*  border: 1px solid #2D3E56;*/
/*  transition: var(--transition);*/
/*}*/

/*.qty-btn:hover {*/
/*  background: #2D3E56;*/
/*}*/

/*.qty-val,*/
/*.qty-display {*/
/*  width: 48px;*/
/*  padding: 6px 10px;*/
/*}*/

/* Line / Divider */
/*.quote-line,*/
/*.quote-divider {*/
/*  box-sizing: border-box;*/
/*  width: 100%;*/
/*  height: 0px;*/
/*  border: 1px solid #2D3E56;*/
/*  margin: 0;*/
/*}*/

/* add-more-link */
/*.add-more-link,*/
/*.btn-add-more {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 0px;*/
/*  gap: 8px;*/
/*  color: #B8935A;*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  text-decoration: none;*/
/*  cursor: pointer;*/
/*  transition: var(--transition);*/
/*}*/

/*.add-more-link:hover,*/
/*.btn-add-more:hover {*/
/*  color: #d1ab6e;*/
/*}*/

/*.add-more-link svg,*/
/*.add-more-link i,*/
/*.btn-add-more i {*/
/*  flex-shrink: 0;*/
/*}*/

/* contact-footer */
/*.contact-footer {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  padding: 0px;*/
/*  gap: 8px;*/
/*  width: 100%;*/
/*  margin-top: 8px;*/
/*}*/

/*.contact-phone,*/
/*.contact-footer-phone {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 16px;*/
/*  line-height: 21px;*/
/*  text-align: center;*/
/*  color: #FFFFFF;*/
/*  text-decoration: none;*/
/*  width: 100%;*/
/*}*/

/*.contact-phone:hover,*/
/*.contact-footer-phone:hover {*/
/*  color: #B8935A;*/
/*}*/

/*.contact-note,*/
/*.contact-footer-note {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 500;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-align: center;*/
/*  color: #B8935A;*/
/*  width: 100%;*/
/*}*/

/* Responsive Overrides for Catalog & Inquiry */
/*@media (max-width: 1200px) {*/
/*  .catalog-product-grid {*/
/*    grid-template-columns: repeat(3, 1fr);*/
/*  }*/
/*}*/

/*@media (max-width: 992px) {*/
/*  .section-inquiry {*/
/*    padding: 60px 0;*/
/*  }*/

/*  .section-inquiry .container {*/
/*    gap: 40px;*/
/*    padding: 0 20px;*/
/*  }*/

/*  .catalog-product-grid {*/
/*    grid-template-columns: repeat(2, 1fr);*/
/*  }*/

/*  .form-split,*/
/*  .form-split-grid {*/
/*    flex-direction: column;*/
/*    gap: 32px;*/
/*    width: 100%;*/
/*  }*/

/*  .form-left-col,*/
/*  .form-left-box {*/
/*    width: 100%;*/
/*    max-width: 100%;*/
/*    padding: 32px 24px;*/
/*    order: 1;*/
/*  }*/

/*  .form-right-col,*/
/*  .form-right-box {*/
/*    width: 100%;*/
/*    max-width: 100%;*/
/*    position: static;*/
/*    top: auto;*/
/*    padding: 28px 24px;*/
/*    order: 2;*/
/*  }*/

/*  .catalog-title {*/
/*    font-size: 40px;*/
/*  }*/

/*  .inquiry-title {*/
/*    font-size: 36px;*/
/*    line-height: 44px;*/
/*  }*/
/*}*/

/*@media (max-width: 768px) {*/
/*  .section-inquiry {*/
/*    padding: 50px 0;*/
/*  }*/

/*  .inquiry-header {*/
/*    gap: 14px;*/
/*  }*/

/*  .inquiry-title {*/
/*    font-size: 32px;*/
/*    line-height: 40px;*/
/*  }*/

/*  .inquiry-subtitle {*/
/*    font-size: 15px;*/
/*    line-height: 22px;*/
/*  }*/

/*  .form-left-col,*/
/*  .form-left-box {*/
/*    padding: 28px 20px;*/
/*    border-radius: 10px;*/
/*  }*/

/*  .form-right-col,*/
/*  .form-right-box {*/
/*    padding: 24px 20px;*/
/*    border-radius: 10px;*/
/*  }*/
/*}*/

/*@media (max-width: 600px) {*/
/*  .section-inquiry {*/
/*    padding: 40px 0;*/
/*  }*/

/*  .section-inquiry .container {*/
/*    gap: 28px;*/
/*    padding: 0 16px;*/
/*  }*/

/*  .catalog-product-grid {*/
/*    grid-template-columns: 1fr;*/
/*  }*/

/*  .inquiry-header {*/
/*    gap: 12px;*/
/*  }*/

/*  .inquiry-header .section-label {*/
/*    gap: 8px;*/
/*  }*/

/*  .inquiry-title {*/
/*    font-size: 28px;*/
/*    line-height: 36px;*/
/*  }*/

/*  .inquiry-subtitle {*/
/*    font-size: 14px;*/
/*    line-height: 20px;*/
/*  }*/

/*  .form-split,*/
/*  .form-split-grid {*/
/*    gap: 24px;*/
/*  }*/

/*  .form-left-col,*/
/*  .form-left-box {*/
/*    padding: 24px 16px;*/
/*    gap: 20px;*/
/*    border-radius: 8px;*/
/*    border-width: 1.5px;*/
/*  }*/

/*  .subsec-business {*/
/*    gap: 16px;*/
/*  }*/

/*  .subsec-title,*/
/*  .box-heading {*/
/*    font-size: 20px;*/
/*    line-height: 26px;*/
/*  }*/

/*  .row-inputs,*/
/*  .inquiry-row-inputs,*/
/*  .form-row-2 {*/
/*    flex-direction: column;*/
/*    gap: 16px;*/
/*    width: 100%;*/
/*  }*/

/*  .inquiry-field,*/
/*  .form-group {*/
/*    gap: 6px;*/
/*    width: 100%;*/
/*  }*/

/*  .inquiry-field-label,*/
/*  .form-group label {*/
/*    font-size: 13px;*/
/*    line-height: 16px;*/
/*  }*/

/*  .inquiry-input-box {*/
/*    height: 44px;*/
/*    padding: 10px 14px;*/
/*    font-size: 15px;*/
/*  }*/

/*  .inquiry-select-box {*/
/*    font-size: 15px;*/
/*    padding-right: 36px;*/
/*  }*/

/*  .select-chevron {*/
/*    right: 12px;*/
/*  }*/

/*  .inquiry-textarea-box {*/
/*    min-height: 75px;*/
/*    padding: 10px 14px;*/
/*    font-size: 15px;*/
/*  }*/

/*  .form-actions,*/
/*  .inquiry-form-actions {*/
/*    gap: 12px;*/
/*    margin-top: 8px;*/
/*  }*/

/*  .btn-submit,*/
/*  .btn-submit-inquiry {*/
/*    height: 48px;*/
/*    padding: 12px 20px;*/
/*    font-size: 14px;*/
/*    letter-spacing: 0.5px;*/
/*  }*/

/*  .form-disclaimer,*/
/*  .inquiry-disclaimer {*/
/*    font-size: 11px;*/
/*    line-height: 16px;*/
/*  }*/

/*  .form-right-col,*/
/*  .form-right-box {*/
/*    padding: 24px 16px;*/
/*    gap: 20px;*/
/*    border-radius: 8px;*/
/*  }*/

/*  .quote-title,*/
/*  .quote-heading {*/
/*    font-size: 20px;*/
/*    line-height: 26px;*/
/*  }*/

/*  .selected-items,*/
/*  .selected-items-list,*/
/*  .selected-quote-items {*/
/*    gap: 14px;*/
/*    max-height: 380px;*/
/*  }*/

/*  .inquiry-item,*/
/*  .quote-item-row {*/
/*    height: auto;*/
/*    min-height: 38px;*/
/*    gap: 10px;*/
/*  }*/

/*  .item-info,*/
/*  .quote-item-info {*/
/*    flex: 1;*/
/*    min-width: 0;*/
/*  }*/

/*  .item-name,*/
/*  .quote-item-name {*/
/*    font-size: 13px;*/
/*    line-height: 17px;*/
/*    max-width: 100%;*/
/*    white-space: normal;*/
/*    word-break: break-word;*/
/*  }*/

/*  .item-cat,*/
/*  .quote-item-cat {*/
/*    font-size: 11px;*/
/*    line-height: 14px;*/
/*  }*/

/*  .qty-unit-box,*/
/*  .qty-counter {*/
/*    gap: 3px;*/
/*    flex-shrink: 0;*/
/*  }*/

/*  .qty-input,*/
/*  .qty-btn,*/
/*  .qty-val,*/
/*  .qty-display {*/
/*    height: 30px;*/
/*  }*/

/*  .qty-btn {*/
/*    width: 30px;*/
/*    font-size: 14px;*/
/*  }*/

/*  .qty-val,*/
/*  .qty-display {*/
/*    width: 42px;*/
/*    padding: 4px 6px;*/
/*    font-size: 12px;*/
/*  }*/

/*  .add-more-link,*/
/*  .btn-add-more {*/
/*    font-size: 13px;*/
/*    padding: 4px 0;*/
/*  }*/

/*  .contact-footer {*/
/*    gap: 6px;*/
/*    margin-top: 4px;*/
/*  }*/

/*  .contact-phone,*/
/*  .contact-footer-phone {*/
/*    font-size: 15px;*/
/*    line-height: 20px;*/
/*  }*/

/*  .contact-note,*/
/*  .contact-footer-note {*/
/*    font-size: 11px;*/
/*    line-height: 14px;*/
/*  }*/

/*  .catalog-title {*/
/*    font-size: 32px;*/
/*  }*/
/*}*/

/*@media (max-width: 380px) {*/
/*  .section-inquiry .container {*/
/*    padding: 0 12px;*/
/*  }*/

/*  .form-left-col,*/
/*  .form-left-box,*/
/*  .form-right-col,*/
/*  .form-right-box {*/
/*    padding: 18px 12px;*/
/*  }*/

/*  .inquiry-title {*/
/*    font-size: 24px;*/
/*    line-height: 30px;*/
/*  }*/

/*  .inquiry-header .label-en {*/
/*    font-size: 11px;*/
/*  }*/

/*  .inquiry-header .label-jp {*/
/*    font-size: 14px;*/
/*  }*/

/*  .btn-submit,*/
/*  .btn-submit-inquiry {*/
/*    font-size: 13px;*/
/*    padding: 10px 14px;*/
/*  }*/
/*}*/

/* ==========================================================================
   Section Confirmation (section-confirmation)
   ========================================================================== */
/*.section-confirmation {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  padding: 100px 80px;*/
/*  gap: 48px;*/
/*  position: relative;*/
/*  width: 100%;*/
/*  min-height: 593px;*/
/*  background: #FFFFFF;*/
/*  box-sizing: border-box;*/
/*}*/

/*.confirm-card {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  padding: 48px;*/
/*  gap: 28px;*/
/*  width: 640px;*/
/*  max-width: 100%;*/
/*  min-height: 393px;*/
/*  background: #FCFAF6;*/
/*  border: 1px solid #E6E2DC;*/
/*  border-radius: 8px;*/
/*  text-align: center;*/
/*}*/

/*.confirm-success-icon {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  justify-content: center;*/
/*  align-items: center;*/
/*  padding: 0;*/
/*  width: 64px;*/
/*  height: 64px;*/
/*  background: #B8935A;*/
/*  border-radius: 32px;*/
/*  color: #FFFFFF;*/
/*  font-size: 32px;*/
/*  flex-shrink: 0;*/
/*}*/

/*.confirm-text-group {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  padding: 0;*/
/*  gap: 12px;*/
/*  width: 544px;*/
/*  max-width: 100%;*/
/*}*/

/*.confirm-title {*/
/*  width: 100%;*/
/*  font-family: var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 36px;*/
/*  line-height: 47px;*/
/*  text-align: center;*/
/*  color: #1B2A41;*/
/*  margin: 0;*/
/*}*/

/*.confirm-desc {*/
/*  width: 100%;*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 15px;*/
/*  line-height: 160%;*/
/*  text-align: center;*/
/*  color: #66645E;*/
/*  margin: 0;*/
/*}*/

/*.confirm-actions {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  padding: 0;*/
/*  gap: 16px;*/
/*  width: 448px;*/
/*  max-width: 100%;*/
/*  flex-wrap: wrap;*/
/*}*/

/*.confirm-btn-primary {*/
/*  display: inline-flex;*/
/*  flex-direction: row;*/
/*  justify-content: center;*/
/*  align-items: center;*/
/*  padding: 14px 28px;*/
/*  background: #C8102E;*/
/*  border-radius: 4px;*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  text-transform: uppercase;*/
/*  color: #FFFFFF;*/
/*  text-decoration: none;*/
/*  transition: var(--transition);*/
/*  border: none;*/
/*  cursor: pointer;*/
/*  white-space: nowrap;*/
/*}*/

/*.confirm-btn-primary:hover {*/
/*  background: #a00c24;*/
/*  transform: translateY(-1px);*/
/*}*/

/*.confirm-btn-secondary {*/
/*  box-sizing: border-box;*/
/*  display: inline-flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  padding: 14px 28px;*/
/*  border: 1px solid #1B2A41;*/
/*  border-radius: 4px;*/
/*  font-family: var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 600;*/
/*  font-size: 14px;*/
/*  line-height: 18px;*/
/*  text-transform: uppercase;*/
/*  color: #1B2A41;*/
/*  background: transparent;*/
/*  text-decoration: none;*/
/*  transition: var(--transition);*/
/*  cursor: pointer;*/
/*  white-space: nowrap;*/
/*}*/

/*.confirm-btn-secondary:hover {*/
/*  background: #1B2A41;*/
/*  color: #FFFFFF;*/
/*  transform: translateY(-1px);*/
/*}*/

/*@media (max-width: 768px) {*/
/*  .section-confirmation {*/
/*    padding: 60px 20px;*/
/*    min-height: auto;*/
/*  }*/

/*  .confirm-card {*/
/*    padding: 32px 20px;*/
/*    width: 100%;*/
/*  }*/

/*  .confirm-title {*/
/*    font-size: 28px;*/
/*    line-height: 1.2;*/
/*  }*/

/*  .confirm-actions {*/
/*    flex-direction: column;*/
/*    width: 100%;*/
/*  }*/

/*  .confirm-btn-primary,*/
/*  .confirm-btn-secondary {*/
/*    width: 100%;*/
/*    text-align: center;*/
/*  }*/
/*}*/

/* ==========================================================================
   Footer Section (footer)
   Theme: Figma Specification #1B2A41
   ========================================================================== */
/*.site-footer {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 80px 0 40px;*/
/*  background: #1B2A41;*/
/*  border-top: 1px solid #2B3A5A;*/
/*  width: 100%;*/
/*}*/

/*.site-footer .footer-container {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0 80px;*/
/*  gap: 48px;*/
/*  max-width: 1440px;*/
/*  width: 100%;*/
/*  margin: 0 auto;*/
/*}*/

/* footer-top */
/*.footer-top {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  justify-content: space-between;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*}*/

/* footer-brand */
/*.footer-brand {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  gap: 16px;*/
/*  width: 405px;*/
/*  max-width: 100%;*/
/*}*/

/*.footer-logo {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 0;*/
/*  gap: 12px;*/
/*  text-decoration: none;*/
/*}*/

/*.footer-logo-icon,*/
/*img.footer-logo-icon {*/
/*  width: 32px;*/
/*  height: 32px;*/
/*  border-radius: 2px;*/
/*  object-fit: contain;*/
/*  display: block;*/
/*  flex-shrink: 0;*/
/*}*/

/*.footer-logo-icon .label-jp {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: italic;*/
/*  font-weight: 400;*/
/*  font-size: 20px;*/
/*  line-height: 1;*/
/*  text-align: center;*/
/*  color: #FFFFFF;*/
/*}*/

/*.footer-company-name {*/
/*  font-family: 'Instrument Serif', var(--font-serif);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 35px;*/
/*  line-height: 46px;*/
/*  color: #F7F5F0;*/
/*  white-space: nowrap;*/
/*}*/

/*.footer-company-desc {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 14px;*/
/*  line-height: 150%;*/
/*  color: #F7F5F0;*/
/*  opacity: 0.9;*/
/*  margin: 0;*/
/*}*/

/* footer-links */
/*.footer-links {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  gap: 12px;*/
/*}*/

/*.footer-directory-title {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  color: #B8935A;*/
/*  letter-spacing: 0.5px;*/
/*}*/

/*.links-list {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  gap: 8px;*/
/*  list-style: none;*/
/*  margin: 0;*/
/*}*/

/*.links-list li {*/
/*  margin: 0;*/
/*  padding: 0;*/
/*}*/

/*.footer-link {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 13px;*/
/*  line-height: 17px;*/
/*  color: #F7F5F0;*/
/*  text-decoration: none;*/
/*  transition: color 0.2s ease;*/
/*}*/

/*.footer-link:hover {*/
/*  color: #B8935A;*/
/*}*/

/* footer-contact-direct */
/*.footer-contact-direct {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  gap: 12px;*/
/*}*/

/*.footer-contact-title {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 700;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  text-transform: uppercase;*/
/*  color: #B8935A;*/
/*  letter-spacing: 0.5px;*/
/*}*/

/*.enquiry-details {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: flex-start;*/
/*  padding: 0;*/
/*  gap: 8px;*/
/*}*/

/*.footer-contact-item {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 13px;*/
/*  line-height: 17px;*/
/*  color: #F7F5F0;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 4px;*/
/*}*/

/*.footer-link-inline {*/
/*  color: #F7F5F0;*/
/*  text-decoration: none;*/
/*  transition: color 0.2s ease;*/
/*}*/

/*.footer-link-inline:hover {*/
/*  color: #B8935A;*/
/*}*/

/*.footer-text-inline {*/
/*  color: #F7F5F0;*/
/*}*/

/* footer-bottom */
/*.footer-bottom {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  justify-content: space-between;*/
/*  align-items: center;*/
/*  padding: 24px 0 0;*/
/*  width: 100%;*/
/*  max-width: 1280px;*/
/*  border-top: 1px solid #2B3A5A;*/
/*}*/

/*.footer-copyright {*/
/*  font-family: 'Geist', var(--font-sans);*/
/*  font-style: normal;*/
/*  font-weight: 400;*/
/*  font-size: 12px;*/
/*  line-height: 16px;*/
/*  color: #F7F5F0;*/
/*  opacity: 0.85;*/
/*}*/

/*.footer-socials {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  align-items: center;*/
/*  padding: 0;*/
/*  gap: 16px;*/
/*}*/

/*.social-circle {*/
/*  display: flex;*/
/*  flex-direction: row;*/
/*  justify-content: center;*/
/*  align-items: center;*/
/*  padding: 0;*/
/*  width: 32px;*/
/*  height: 32px;*/
/*  background: #0A4D8F;*/
/*  border-radius: 16px;*/
/*  color: #FFFFFF;*/
/*  text-decoration: none;*/
/*  font-size: 18px;*/
/*  transition: transform 0.2s ease, background-color 0.2s ease;*/
/*}*/

/*.social-circle:hover {*/
/*  background: #C8102E;*/
/*  transform: translateY(-2px);*/
/*  color: #FFFFFF;*/
/*}*/

/* Responsive adjustments for footer */
/*@media (max-width: 1024px) {*/
/*  .site-footer .footer-container {*/
/*    padding: 0 40px;*/
/*    gap: 36px;*/
/*  }*/

/*  .footer-top {*/
/*    flex-wrap: wrap;*/
/*    gap: 40px;*/
/*  }*/

/*  .footer-brand {*/
/*    width: 100%;*/
/*  }*/
/*}*/

/*@media (max-width: 768px) {*/
/*  .site-footer {*/
/*    padding: 60px 0 32px;*/
/*  }*/

/*  .site-footer .footer-container {*/
/*    padding: 0 20px;*/
/*    gap: 32px;*/
/*  }*/

/*  .footer-top {*/
/*    flex-direction: column;*/
/*    gap: 32px;*/
/*  }*/

/*  .footer-bottom {*/
/*    flex-direction: column-reverse;*/
/*    align-items: flex-start;*/
/*    gap: 16px;*/
/*  }*/
/*}*/


/* ==========================================================================
   Japan Food Lanka (Pvt) Ltd - Official Web Application Stylesheet
   Figma Design Implementation: B2B Premium Distribution
   ========================================================================== */

:root {
  /* Brand Palette from Figma */
  --color-bg-canvas: #F7F5F0;
  /* Warm Japanese Washi Off-White */
  --color-white: #FFFFFF;
  --color-primary: #C8102E;
  /* Brand Crimson Red */
  --color-primary-hover: #a80d26;
  --color-navy-dark: #1B2A41;
  /* Deep Navy Dark */
  --color-navy-card: #23354E;
  /* Feature Card Dark Navy */
  --color-gold: #B8935A;
  /* Brand Warm Gold */

  --color-border: #E6E2DC;
  /* Light Sand Border */
  --color-border-dark: #2D3E56;
  /* Dark Section Border */
  --color-box-bg: #FCFAF6;
  /* Soft Box Surface */

  --color-text-main: #1A1A1A;
  --color-text-navy: #1B2A41;
  --color-text-muted: #66645E;
  --color-text-light-muted: #94A3B8;

  /* Typography */
  --font-serif: 'Instrument Serif', Georgia, serif;
  --font-sans: 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-japanese: 'Instrument Serif', 'Noto Serif JP', serif;

  /* Layout Dimensions */
  --max-width: 1440px;
  --header-height: 80px;
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-card: 8px;
  --radius-round: 6px;
  --transition: all 0.2s ease-in-out;
}

/* Base & Reset */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
  font-size: 16px;
}

/* Ensure sticky header does not overlap anchored section titles */
section[id],
div[id],
#contact,
#about,
#why-us,
#products,
#catalog,
#inquiry,
#confirmation {
  scroll-margin-top: calc(var(--header-height) + 20px);
}

body {
  font-family: var(--font-sans);
  background-color: var(--color-bg-canvas);
  color: var(--color-text-main);
  line-height: 1.5;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

a {
  color: inherit;
  text-decoration: none;
  transition: var(--transition);
}

img {
  max-width: 100%;
  display: block;
}

button,
input,
select,
textarea {
  font-family: inherit;
}

.container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
}

/* ==========================================================================
   Navigation Bar (sticky-nav)
   ========================================================================== */
.site-header {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 0px 80px;

  position: sticky;
  top: 0px;
  left: 0px;
  right: 0px;
  height: var(--header-height);

  background: var(--color-white);
  border-bottom: 1px solid var(--color-border);
  z-index: 1000;
}

.header-inner {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0;
}

/* Logo */
.brand-logo {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0px;
  gap: 12px;
  height: 48px;
  text-decoration: none;
  flex: none;
  order: 0;
  flex-grow: 0;
}

.logo-icon,
img.logo-icon {
  width: 32px;
  height: 32px;
  border-radius: 2px;
  object-fit: contain;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  order: 0;
  flex-grow: 0;
}

.logo-icon .label-jp {
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: 400;
  font-size: 22px;
  line-height: 1;
  color: var(--color-white);
}

.logo-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 0px;
  gap: 2px;
  height: 48px;
  flex: none;
  order: 1;
  flex-grow: 0;
}

.logo-title {
  font-family: var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 26px;
  line-height: 34px;
  color: var(--color-navy-dark);
  letter-spacing: normal;
}

.logo-sub {
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 9px;
  line-height: 12px;
  text-transform: uppercase;
  color: var(--color-gold);
}

/* Nav Menu (menu-links) */
.nav-menu {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0px;
  gap: 32px;
  list-style: none;
  margin: 0;
  flex: none;
  order: 1;
  flex-grow: 0;
}

.nav-link {
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 500;
  font-size: 13px;
  line-height: 17px;
  color: var(--color-text-main);
  padding: 8px 0;
  position: relative;
  text-decoration: none;
  transition: var(--transition);
}

.nav-link:hover {
  color: var(--color-primary);
}

.nav-link.active {
  font-weight: 700;
  color: var(--color-primary);
}

/* Header Actions */
.header-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  flex: none;
  order: 2;
  flex-grow: 0;
}

/* Buttons */
.btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 28px;
  width: 184px;
  height: 48px;
  background: var(--color-primary);
  color: var(--color-white);
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  line-height: 18px;
  text-transform: uppercase;
  border-radius: var(--radius-md);
  border: none;
  cursor: pointer;
  transition: var(--transition);
  text-decoration: none;
  white-space: nowrap;
  box-sizing: border-box;
}

.btn-primary:hover {
  background: var(--color-primary-hover);
  color: var(--color-white);
  transform: translateY(-1px);
}

.btn-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 28px;
  background: transparent;
  color: var(--color-white);
  border: 1px solid var(--color-border);
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  line-height: 18px;
  text-transform: uppercase;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: var(--transition);
  text-decoration: none;
  white-space: nowrap;
}

.btn-ghost:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: var(--color-white);
  color: var(--color-white);
  transform: translateY(-1px);
}

/* Mobile Toggle */
.mobile-toggle {
  display: none;
  background: none;
  border: none;
  font-size: 26px;
  color: var(--color-navy-dark);
  cursor: pointer;
  padding: 8px;
  margin-right: -8px;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

/* Mobile Nav Drawer */
.mobile-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(2px);
  z-index: 1001;
  transition: opacity 0.3s ease;
}

.mobile-overlay.active {
  display: block;
}

.mobile-nav {
  position: fixed;
  top: 0;
  right: -320px;
  width: 320px;
  max-width: 86vw;
  height: 100vh;
  height: 100dvh;
  background: var(--color-white);
  z-index: 1002;
  padding: 20px 20px calc(24px + env(safe-area-inset-bottom, 0px));
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  transition: right 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: -6px 0 28px rgba(0, 0, 0, 0.18);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.mobile-nav.open {
  right: 0;
}

.mobile-nav-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--color-border);
  flex-shrink: 0;
}

.mobile-links {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  flex: 1 1 auto;
}

.mobile-links a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 15px;
  font-weight: 500;
  color: var(--color-text-main);
  padding: 10px 12px;
  border-radius: 6px;
  text-decoration: none;
  transition: all 0.2s ease;
}

.mobile-links a:hover,
.mobile-links a:active {
  background: rgba(200, 16, 46, 0.06);
  color: var(--color-primary);
}

.mobile-nav-footer {
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid var(--color-border);
  flex-shrink: 0;
  width: 100%;
  box-sizing: border-box;
}

.mobile-nav-footer .btn-primary,
.mobile-nav-footer .mobile-quote-btn {
  width: 100% !important;
  min-width: 0 !important;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 13.5px;
  font-weight: 600;
  letter-spacing: 0.5px;
  border-radius: 4px;
  box-sizing: border-box;
  text-decoration: none;
  background: var(--color-primary);
  color: var(--color-white);
}

.mobile-nav-footer .btn-primary:hover,
.mobile-nav-footer .mobile-quote-btn:hover {
  background: var(--color-primary-hover);
  color: var(--color-white);
}

/* ==========================================================================
   Section Labels & Micro-Typography
   ========================================================================== */
.section-label {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}

.section-label .label-en {
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.section-label.gold .label-en {
  color: var(--color-gold);
}

.section-label.red .label-en {
  color: var(--color-primary);
}

.section-label .label-divider {
  width: 16px;
  height: 0;
  border: 1px solid var(--color-border);
}

.section-label.dark-divider .label-divider {
  border-color: var(--color-border-dark);
}

.section-label .label-jp {
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
}

.section-label.gold .label-jp {
  color: var(--color-text-light-muted);
}

.section-label.red .label-jp {
  color: var(--color-text-muted);
}

/* ==========================================================================
   Hero Section Slider (section-hero)
   Theme: Figma Specification - Dynamic B2B Multi-Slide Hero Showcase
   ========================================================================== */
.section-hero {
  position: relative;
  width: 100%;
  min-height: 720px;
  background-color: #1B2A41;
  overflow: hidden;
  isolation: isolate;
  display: flex;
  flex-direction: column;
}

.hero-slides-wrapper {
  position: relative;
  width: 100%;
  min-height: 720px;
  flex: 1;
}

.hero-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  min-height: 720px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 180px 0 80px;
  box-sizing: border-box;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 1;
}

.hero-slide::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(27, 42, 65, 0.82) 0%, rgba(27, 42, 65, 0.65) 50%, rgba(27, 42, 65, 0.92) 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
  z-index: 0;
}

.hero-slide.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 2;
  position: relative;
}

.hero-inner {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  min-height: 460px;
  gap: 32px;
  max-width: 1280px;
  width: 100%;
  padding: 0 80px;
  margin: 0 auto;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}

.hero-content {
  max-width: 843px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px;
  gap: 32px;
  z-index: 1;
}

.hero-content .section-label {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0px;
  gap: 12px;
  margin-bottom: 0;
  flex-wrap: wrap;
}

.hero-content .label-en {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #B8935A;
  letter-spacing: 0.5px;
}

.hero-content .label-divider {
  box-sizing: border-box;
  width: 16px;
  height: 0px;
  border: 1px solid #2D3E56;
}

.hero-content .label-jp {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: italic;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  color: #94A3B8;
}

.hero-title {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 64px;
  line-height: 110%;
  /* 70px */
  color: #FFFFFF;
  letter-spacing: normal;
  margin: 0;
  max-width: 843px;
}

.hero-subtitle {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 18px;
  line-height: 160%;
  color: #94A3B8;
  max-width: 843px;
  margin: 0;
}

.hero-actions {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0px;
  gap: 16px;
  flex-wrap: wrap;
}

.hero-actions .btn-primary {
  display: inline-flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 14px 28px;
  min-width: 232px;
  height: 48px;
  background: #C8102E;
  border-radius: 4px;
  border: none;
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  line-height: 18px;
  text-transform: uppercase;
  color: #FFFFFF;
  text-decoration: none;
  transition: all 0.2s ease;
  white-space: nowrap;
  box-sizing: border-box;
}

.hero-actions .btn-primary:hover {
  background: #a80d26;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(200, 16, 46, 0.4);
}

.hero-actions .btn-ghost {
  box-sizing: border-box;
  display: inline-flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 14px 28px;
  min-width: 144px;
  height: 48px;
  border: 1px solid #E6E2DC;
  border-radius: 4px;
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  line-height: 18px;
  text-transform: uppercase;
  color: #FFFFFF;
  background: rgba(27, 42, 65, 0.4);
  backdrop-filter: blur(4px);
  text-decoration: none;
  transition: all 0.2s ease;
  white-space: nowrap;
}

.hero-actions .btn-ghost:hover {
  background: #FFFFFF;
  color: #1B2A41;
  border-color: #FFFFFF;
  transform: translateY(-2px);
}

/* Trust Strip */
.trust-strip {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 16px 0px;
  gap: 24px;
  width: 100%;
  max-width: 1280px;
  height: auto;
  min-height: 50px;
  border-top: 1px solid #434343;
  margin-top: 18px;
  flex-wrap: wrap;
  z-index: 3;
}

.trust-label {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 13px;
  line-height: 17px;
  text-transform: uppercase;
  color: #B8935A;
  white-space: nowrap;
}

.trust-text {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 18px;
  color: #FFFFFF;
}

/* Image Indicators (Figma Ellipse Dots) */
.image-indicators {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 5px 7px;
  gap: 6px;
  position: absolute;
  height: 18px;
  left: 50%;
  transform: translateX(-50%);
  bottom: 33px;
  background: rgba(10, 13, 18, 0.48);
  border-radius: 999px;
  z-index: 10;
}

.indicator-dot {
  box-sizing: border-box;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.78);
  opacity: 0.35;
  border: 1px solid rgba(18, 23, 33, 0.5);
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.35);
  cursor: pointer;
  padding: 0;
  transition: all 0.3s ease;
  outline: none;
}

.indicator-dot:hover {
  opacity: 0.75;
}

.indicator-dot.active {
  background: #FFFFFF;
  opacity: 0.9;
  border: 1px solid rgba(18, 23, 33, 0.5);
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.35);
  transform: scale(1.15);
}

/* ==========================================================================
   Hero Slider Responsive Breakpoints
   ========================================================================== */
@media (max-width: 1200px) {
  .hero-inner {
    padding: 0 48px;
  }
  .hero-title {
    font-size: 56px;
  }
}

@media (max-width: 992px) {
  .section-hero,
  .hero-slides-wrapper,
  .hero-slide {
    min-height: 640px;
  }
  .hero-slide {
    padding: 130px 0 60px;
  }
  .hero-inner {
    padding: 0 32px;
    gap: 24px;
    min-height: auto;
  }
  .hero-content {
    gap: 24px;
    max-width: 100%;
  }
  .hero-title {
    font-size: 46px;
    line-height: 1.15;
  }
  .hero-subtitle {
    font-size: 16px;
    line-height: 1.55;
  }
  .hero-actions {
    gap: 12px;
  }
  .hero-actions .btn-primary {
    min-width: 200px;
    height: 46px;
  }
  .hero-actions .btn-ghost {
    min-width: 130px;
    height: 46px;
  }
  .trust-strip {
    gap: 16px;
    padding: 14px 0;
    margin-top: 14px;
  }
  .image-indicators {
    bottom: 24px;
  }
}

@media (max-width: 768px) {
  .section-hero,
  .hero-slides-wrapper,
  .hero-slide {
    min-height: 580px;
  }
  .section-hero {
    padding: 0 !important;
  }
  .hero-slide {
    padding: 105px 0 54px;
    align-items: center;
  }
  .hero-slide::before {
    opacity: 1;
  }
  .hero-inner {
    padding: 0 20px;
    gap: 20px;
    min-height: auto;
    align-items: center;
  }
  .hero-content {
    gap: 18px;
    max-width: 100%;
    align-items: center;
    text-align: center;
    margin: 0 auto;
  }
  .hero-content .section-label {
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
  }
  .hero-content .label-en {
    font-size: 11px;
    letter-spacing: 0.5px;
  }
  .hero-content .label-jp {
    font-size: 14px;
  }
  .hero-title {
    font-size: 34px;
    line-height: 1.18;
    letter-spacing: -0.3px;
    max-width: 100%;
    text-align: center;
    margin: 0 auto;
  }
  .hero-subtitle {
    font-size: 14.5px;
    line-height: 1.55;
    color: #CBD5E1;
    max-width: 100%;
    text-align: center;
    margin: 0 auto;
  }
  .hero-actions {
    flex-direction: column;
    width: 100%;
    max-width: 320px;
    gap: 10px;
    align-items: stretch;
    justify-content: center;
    margin: 0 auto;
  }
  .hero-actions .btn-primary,
  .hero-actions .btn-ghost {
    width: 100%;
    min-width: 0;
    justify-content: center;
    height: 46px;
    font-size: 13.5px;
    padding: 12px 16px;
    border-radius: 4px;
    text-align: center;
  }
  .trust-strip {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 4px;
    padding: 12px 0 16px;
    margin-top: 10px;
    border-top: 1px solid rgba(255, 255, 255, 0.18);
    width: 100%;
  }
  .trust-label {
    font-size: 11px;
    letter-spacing: 0.5px;
    text-align: center;
  }
  .trust-text {
    font-size: 12.5px;
    line-height: 1.45;
    color: rgba(255, 255, 255, 0.9);
    text-align: center;
  }
  .image-indicators {
    bottom: 12px;
    height: 16px;
    padding: 4px 6px;
    gap: 5px;
    background: rgba(10, 13, 18, 0.65);
  }
  .indicator-dot {
    width: 6px;
    height: 6px;
  }
  .indicator-dot.active {
    transform: scale(1.25);
  }
}

@media (max-width: 480px) {
  .section-hero,
  .hero-slides-wrapper,
  .hero-slide {
    min-height: 520px;
  }
  .hero-slide {
    padding: 92px 0 44px;
    align-items: center;
  }
  .hero-inner {
    padding: 0 16px;
    gap: 14px;
    align-items: center;
  }
  .hero-content {
    gap: 14px;
    align-items: center;
    text-align: center;
    margin: 0 auto;
  }
  .hero-title {
    font-size: 28px;
    line-height: 1.2;
    text-align: center;
    margin: 0 auto;
  }
  .hero-subtitle {
    font-size: 13px;
    line-height: 1.5;
    text-align: center;
    margin: 0 auto;
  }
  .hero-actions {
    max-width: 100%;
    margin: 0 auto;
  }
  .hero-actions .btn-primary,
  .hero-actions .btn-ghost {
    height: 44px;
    font-size: 13px;
    text-align: center;
  }
  .trust-strip {
    padding: 8px 0 14px;
    margin-top: 6px;
    align-items: center;
    text-align: center;
  }
  .trust-label {
    font-size: 10px;
    text-align: center;
  }
  .trust-text {
    font-size: 11.5px;
    text-align: center;
  }
  .image-indicators {
    bottom: 8px;
  }
}

/* ==========================================================================
   Promotional Banners Section (section-premium-banners)
   Figma Specification: B2B Premium Distribution Promo Row
   ========================================================================== */
.section-premium-banners {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 80px 0 20px;
  background: var(--color-bg-canvas, #F7F5F0);
  width: 100%;
  box-sizing: border-box;
}

.section-premium-banners .container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 10px;
}

.premium-banners-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  width: 100%;
  align-items: stretch;
}

.premium-banner-card {
  box-sizing: border-box;
  display: block;
  position: relative;
  width: 100%;
  height: 270px;
  background-color: var(--color-white, #FFFFFF);
  border: 1px solid #E6E2DC;
  border-radius: 8px;
  overflow: hidden;
  text-decoration: none;
  box-shadow: 0 2px 8px rgba(27, 42, 65, 0.04);
  transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.28s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.25s ease;
  cursor: pointer;
}

.premium-banner-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(27, 42, 65, 0.12);
  border-color: var(--color-gold, #B8935A);
}

.premium-banner-card:active {
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(27, 42, 65, 0.08);
}

.banner-image-container {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.premium-banner-card .banner-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}

.premium-banner-card:hover .banner-img {
  transform: scale(1.025);
}

.premium-banner-card::after {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0) 100%);
  transform: skewX(-25deg);
  transition: left 0.75s ease;
  pointer-events: none;
}

.premium-banner-card:hover::after {
  left: 150%;
}

@media (max-width: 1100px) {
  .section-premium-banners {
    padding: 60px 0 20px;
  }

  .premium-banners-row {
    gap: 16px;
  }

  .premium-banner-card {
    height: 230px;
  }
}

@media (max-width: 820px) {
  .section-premium-banners {
    padding: 48px 0 16px;
  }

  .premium-banners-row {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .premium-banner-card {
    height: 240px;
  }
}

@media (max-width: 480px) {
  .section-premium-banners {
    padding: 36px 0 12px;
  }

  .premium-banner-card {
    height: 210px;
    border-radius: 6px;
  }
}

/* ==========================================================================
   About Section (section-about)
   Theme: Figma B2B Specification - Authentic Heritage & Direct Bridge
   ========================================================================== */
.section-about {
  padding: 80px 0;
  background-color: #F7F5F0;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
}

.section-about .container {
  max-width: 1440px;
  width: 100%;
  padding: 0 80px;
  margin: 0 auto;
  box-sizing: border-box;
}

.about-grid {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 32px;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}

/* about-left / about-image */
.about-image-wrapper {
  flex: 0 0 515px;
  width: 515px;
  height: 556px;
  border-radius: 8px;
  overflow: hidden;
  background: #EAE6DF;
  box-shadow: 0 4px 20px rgba(27, 42, 65, 0.06);
}

.about-image-wrapper img,
.about-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 8px;
}

/* about-right */
.about-right {
  flex: 1 1 0;
  max-width: 733px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 28px;
}

/* section-label */
.about-right .section-label {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  height: 21px;
  margin-bottom: 0;
}

.about-right .label-en {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #C8102E;
}

.about-right .label-divider {
  box-sizing: border-box;
  width: 16px;
  height: 0;
  border: 1px solid #E6E2DC;
}

.about-right .label-jp {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: italic;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  color: #66645E;
}

/* about-title */
.about-title {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 48px;
  line-height: 115%;
  /* 55px */
  color: #1B2A41;
  letter-spacing: -0.5px;
  margin: 0;
}

/* about-body */
.about-body {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 15px;
  line-height: 160%;
  /* 24px */
  color: #1A1A1A;
  margin: 0;
}

/* about-leadership */
.about-leadership {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 24px;
  gap: 8px;
  width: 100%;
  background: #FCFAF6;
  border: 1px solid #E6E2DC;
  border-radius: 6px;
}

.leadership-tag {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #C8102E;
  margin: 0;
}

.leadership-text {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  line-height: 150%;
  /* 21px */
  color: #1B2A41;
  margin: 0;
}

/* about-values */
.about-values {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  padding-top: 12px;
  gap: 24px;
  width: 100%;
}

.val-item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 6px;
  flex: 1 1 0;
  min-width: 0;
}

.val-jp {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 26px;
  color: #B8935A;
}

.val-name {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 13px;
  line-height: 17px;
  color: #1B2A41;
}

.val-desc {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  color: #66645E;
}

/* Responsive adjustments */
@media (max-width: 1200px) {
  .section-about .container {
    padding: 0 40px;
  }

  .about-grid {
    gap: 28px;
  }

  .about-image-wrapper {
    flex: 0 0 440px;
    width: 440px;
    height: 520px;
  }
}

@media (max-width: 992px) {
  .section-about {
    padding: 60px 0;
  }

  .section-about .container {
    padding: 0 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .about-grid {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 36px;
  }

  .about-image-wrapper {
    width: 100%;
    max-width: 515px;
    height: 420px;
    margin: 0 auto;
  }

  .about-right {
    max-width: 100%;
    gap: 24px;
    align-items: center;
    text-align: center;
  }

  .about-right .section-label {
    justify-content: center;
    margin: 0 auto;
  }

  .about-title {
    font-size: 36px;
    line-height: 44px;
    text-align: center;
  }

  .about-body {
    text-align: center;
  }

  .about-leadership {
    align-items: center;
    text-align: center;
    margin: 0 auto;
    width: 100%;
  }

  .about-leadership .leadership-tag,
  .about-leadership .leadership-text {
    text-align: center;
    width: 100%;
  }

  .about-values {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    justify-content: center;
    text-align: center;
    width: 100%;
  }

  .val-item {
    align-items: center;
    text-align: center;
  }

  .val-jp,
  .val-name,
  .val-desc {
    text-align: center;
  }
}

/* ==========================================================================
   Most Sold Products Section (section-most-sold)
   Figma Specification: B2B Carousel Showcase
   ========================================================================== */
.section-most-sold {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 80px 0 50px;
  background: #FFFFFF;
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  isolation: isolate;
}

/* Frame 2 - Japanese Castle Background Vectors from Figma */
.most-sold-bg-frame {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  padding: 0px;
  position: absolute;
  width: 1635.63px;
  max-width: 100vw;
  height: 361.87px;
  left: calc(50% - 1635.63px / 2);
  top: 40px;
  pointer-events: none;
  z-index: 0;
  user-select: none;
}

@media (max-width: 1640px) {
  .most-sold-bg-frame {
    width: 100%;
    left: 0;
    padding: 0 10px;
  }
}

.section-most-sold .container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
  position: relative;
  z-index: 1;
}

/* Most Sold Header */
.most-sold-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 16px;
  margin-bottom: 36px;
  width: 100%;
}

.most-sold-header .section-label {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  margin-bottom: 0;
}

.most-sold-header .label-en {
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #C8102E;
  letter-spacing: 0.5px;
}

.most-sold-header .label-divider {
  box-sizing: border-box;
  width: 16px;
  height: 0px;
  border-top: 1px solid #E6E2DC;
}

.most-sold-header .label-jp {
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  color: #66645E;
}

.most-sold-title {
  max-width: 843px;
  font-family: var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 48px;
  line-height: 1.25;
  text-align: center;
  color: #1B2A41;
  margin: 0;
}

.most-sold-subtitle {
  max-width: 624px;
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  text-align: center;
  color: #66645E;
  margin: 0;
}

/* Carousel Outer Wrapper with Relative Positioning for Controls */
.most-sold-carousel-wrapper {
  position: relative;
  width: 100%;
  margin-top: 8px;
}

/* Carousel Scroll Track */
.most-sold-carousel {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 24px;
  width: 100%;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  padding: 12px 2px 24px 2px;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.most-sold-carousel::-webkit-scrollbar {
  display: none;
}

/* Product Card */
.most-sold-card {
  box-sizing: border-box;
  flex: 0 0 302px;
  width: 302px;
  height: 320px;
  background: #FFFFFF;
  border: 1px solid #E6E2DC;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  scroll-snap-align: start;
  text-decoration: none;
  color: inherit;
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.25s ease;
  box-shadow: 0 2px 8px rgba(27, 42, 65, 0.03);
}

.most-sold-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(27, 42, 65, 0.10);
  border-color: var(--color-gold, #B8935A);
}

/* Card Image Area */
.most-sold-card-image {
  position: relative;
  width: 100%;
  height: 200px;
  min-height: 200px;
  background: #F4F2EC;
  overflow: hidden;
}

/* Multi-Image Gallery & Transitional Hover */
.card-img-gallery {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.card-img-gallery .gallery-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  opacity: 0;
  visibility: hidden;
  transform: scale(1);
  z-index: 0;
  transition: opacity 0.55s cubic-bezier(0.4, 0, 0.2, 1),
    visibility 0.55s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.75s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
  will-change: opacity, transform;
}

.card-img-gallery .gallery-img.prev-active {
  opacity: 1;
  visibility: visible;
  z-index: 1;
}

.card-img-gallery .gallery-img.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 2;
}

.most-sold-card:hover .card-img-gallery .gallery-img.active,
.catalog-product-card:hover .card-img-gallery .gallery-img.active,
.most-sold-card:hover .card-img-gallery .gallery-img.prev-active,
.catalog-product-card:hover .card-img-gallery .gallery-img.prev-active {
  transform: scale(1.05);
}

/* Plus Select Button */
.most-sold-card .select-btn {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 36px;
  height: 36px;
  border-radius: 18px;
  background: rgba(200, 16, 46, 0.67);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
  font-size: 20px;
  z-index: 2;
  transition: background 0.2s ease, transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.most-sold-card .select-btn:hover {
  background: #C8102E;
  transform: scale(1.1);
}

/* Image Indicator Dots Pill */
.image-indicators {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 12px;
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 5px 8px;
  gap: 6px;
  background: rgba(10, 13, 18, 0.55);
  border-radius: 999px;
  z-index: 2;
  pointer-events: none;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  transition: opacity 0.3s ease;
}

.indicator-dot {
  box-sizing: border-box;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.75);
  opacity: 0.4;
  border: 1px solid rgba(18, 23, 33, 0.4);
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.35);
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: auto;
  cursor: pointer;
}

.indicator-dot.active {
  background: #FFFFFF;
  opacity: 1;
  width: 16px;
  border-radius: 4px;
}

/* Card Body */
.most-sold-card-body {
  box-sizing: border-box;
  padding: 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  width: 100%;
  height: 120px;
  flex-grow: 1;
}

.most-sold-card-title {
  width: 100%;
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 15px;
  line-height: 20px;
  color: #1B2A41;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0;
}

.most-sold-card-desc {
  width: 100%;
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  color: #66645E;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 0;
}

/* Carousel Control Buttons */
.most-sold-control {
  position: absolute;
  top: calc(50% - 24px);
  width: 48px;
  height: 48px;
  border-radius: 24px;
  background: #FFFFFF;
  border: 1px solid #E6E2DC;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 5;
  color: #1B2A41;
  font-size: 22px;
  box-shadow: 0 4px 12px rgba(27, 42, 65, 0.08);
  transition: all 0.2s ease;
}

.most-sold-control:hover {
  background: #FFFFFF;
  border-color: #C8102E;
  color: #C8102E;
  box-shadow: 0 6px 18px rgba(200, 16, 46, 0.18);
  transform: scale(1.05);
}

.most-sold-control.prev-control {
  left: -21px;
}

.most-sold-control.next-control {
  right: -21px;
}

/* Pagination Dots */
.most-sold-pagination {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  margin-top: 16px;
}

.most-sold-pagination .pagination-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #E6E2DC;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}

.most-sold-pagination .pagination-dot.active {
  background: #C8102E;
  transform: scale(1.15);
}

/* Responsive adjustments */
@media (max-width: 1340px) {
  .most-sold-control.prev-control {
    left: -10px;
  }

  .most-sold-control.next-control {
    right: -10px;
  }
}

@media (max-width: 1024px) {
  .section-most-sold {
    padding: 60px 0 36px;
  }

  .most-sold-title {
    font-size: 38px;
    line-height: 1.25;
  }

  .most-sold-control {
    display: none;
  }
}

@media (max-width: 640px) {
  .section-most-sold {
    padding: 48px 0 28px;
  }

  .most-sold-title {
    font-size: 32px;
  }

  .most-sold-subtitle {
    font-size: 14px;
    line-height: 19px;
  }

  .most-sold-card {
    flex: 0 0 270px;
    width: 270px;
  }
}

/* ==========================================================================
   Products Section (section-products)
   Theme: Figma B2B Specification with Ramen Background Pattern across Whole Section
   ========================================================================== */
.section-products {
  padding: 80px 0;
  background-color: #FFFFFF;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  box-sizing: border-box;
}

/* Decorative Ramen Watermarks (Exact Figma B2B Specification - 5 Strategic Positions) */
.products-ramen-frame {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1440px;
  height: 100%;
  pointer-events: none;
  z-index: 0;
  overflow: visible;
}

.ramen-watermark {
  position: absolute;
  width: 277.99px;
  height: 277.99px;
  background-image: url('../ramen.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0.05;
  transform: rotate(-14.31deg);
  pointer-events: none;
}

/* ramen 1 */
.ramen-watermark.ramen-1 {
  left: -183.81px;
  top: -8px;
}

/* ramen 4 */
.ramen-watermark.ramen-4 {
  left: 1023px;
  top: 21px;
}

/* ramen 5 */
.ramen-watermark.ramen-5 {
  left: calc(50% - 277.99px / 2 - 30.01px);
  top: 414px;
}

/* ramen 2 */
.ramen-watermark.ramen-2 {
  left: 1092px;
  top: 810px;
}

/* ramen 3 */
.ramen-watermark.ramen-3 {
  left: -217px;
  top: 1079px;
}

.section-products .container {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 80px;
  gap: 60px;
  max-width: 1440px;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}

/* products-header */
.products-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 0;
  gap: 16px;
  max-width: 843px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.products-header .section-label {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 0;
  gap: 12px;
  height: 21px;
  margin-bottom: 0;
}

.products-header .label-en {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #C8102E;
}

.products-header .label-divider {
  box-sizing: border-box;
  width: 16px;
  height: 0;
  border: 1px solid #E6E2DC;
}

.products-header .label-jp {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: italic;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  color: #66645E;
}

.products-title {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 48px;
  line-height: 62px;
  text-align: center;
  color: #1B2A41;
  max-width: 843px;
  margin: 0;
  letter-spacing: -0.5px;
}

.products-subtitle {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  text-align: center;
  color: #66645E;
  max-width: 624px;
  margin: 0;
}

/* Products Grid */
.products-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  width: 100%;
  max-width: 1280px;
  position: relative;
  z-index: 1;
}

.product-card {
  box-sizing: border-box;
  background: #FFFFFF;
  border: 1px solid #E6E2DC;
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 351px;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.product-card:hover {
  border-color: #cbd5e1;
  box-shadow: 0 12px 28px rgba(27, 42, 65, 0.08);
  transform: translateY(-2px);
}

.card-top {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.card-image {
  width: 100%;
  height: 180px;
  object-fit: cover;
  background: #f1f3f7;
  display: block;
}

.card-content {
  padding: 20px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  width: 100%;
  box-sizing: border-box;
}

.card-title {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 24px;
  line-height: 31px;
  color: #1B2A41;
  margin: 0;
}

.card-list {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 13px;
  line-height: 150%;
  color: #66645E;
  margin: 0;
  min-height: 40px;
}

.card-footer {
  box-sizing: border-box;
  padding: 16px 20px;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
}

.card-inquire-link {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #C8102E;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: transform 0.2s ease, color 0.2s ease;
}

.card-inquire-link:hover {
  color: #A00D24;
  transform: translateX(3px);
}

/* Responsive adjustments for Products */
@media (max-width: 1200px) {
  .section-products .container {
    padding: 0 40px;
    gap: 48px;
  }

  .products-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }

  .products-ramen-frame {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .section-products {
    padding: 60px 0;
  }

  .section-products .container {
    padding: 0 20px;
    gap: 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .products-header {
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%;
  }

  .products-header .section-label {
    justify-content: center;
    margin: 0 auto;
  }

  .products-title {
    font-size: 32px;
    line-height: 40px;
    text-align: center;
    margin: 0 auto;
  }

  .products-subtitle {
    text-align: center;
    margin: 0 auto;
  }

  .products-grid {
    grid-template-columns: 1fr;
    gap: 20px;
    justify-items: center;
    width: 100%;
  }

  .product-card-item {
    max-width: 440px;
    width: 100%;
    margin: 0 auto;
  }

  .card-content {
    align-items: center;
    text-align: center;
  }

  .card-footer {
    justify-content: center;
    width: 100%;
  }

  .products-ramen-frame {
    width: 100%;
    left: 0;
    transform: none;
  }

  .ramen-watermark {
    opacity: 0.035;
    width: 180px;
    height: 180px;
  }

  .ramen-watermark.ramen-1 {
    left: -60px;
    top: -10px;
  }

  .ramen-watermark.ramen-4 {
    left: auto;
    right: -60px;
    top: 40px;
  }

  .ramen-watermark.ramen-5 {
    display: none;
  }

  .ramen-watermark.ramen-2 {
    left: auto;
    right: -60px;
    top: 70%;
  }

  .ramen-watermark.ramen-3 {
    left: -60px;
    top: 90%;
  }
}

/* ==========================================================================
   Why Partner With Us Section (section-why-us)
   Theme: Figma B2B Specification - Cold-Chain Integrity & Uncompromising Quality
   ========================================================================== */
.section-why-us {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 80px 0;
  background: #F7F5F0;
  width: 100%;
}

.section-why-us .container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0 80px;
  gap: 60px;
  max-width: 1440px;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}

/* why-us-header */
.why-us-header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
  gap: 16px;
  width: 100%;
  max-width: 1280px;
}

.why-us-header .section-label {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0;
  gap: 12px;
  margin-bottom: 0;
  height: 21px;
}

.why-us-header .label-en {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #C8102E;
  letter-spacing: 0.5px;
}

.why-us-header .label-divider {
  box-sizing: border-box;
  width: 16px;
  height: 0;
  border: 1px solid #2D3E56;
}

.why-us-header .label-jp {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: italic;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  color: #66645E;
}

.why-us-title {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 48px;
  line-height: 62px;
  color: #1B2A41;
  max-width: 971px;
  margin: 0;
  letter-spacing: -0.5px;
}

/* why-us-features */
.why-us-features,
.why-us-grid {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  padding: 0;
  gap: 48px;
  width: 100%;
  max-width: 1280px;
}

/* feature items */
.feature-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
  gap: 20px;
  flex: 1 1 0;
  max-width: 284px;
}

/* feature-icon badge */
.feature-icon {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0;
  width: 56px;
  height: 56px;
  background: #FFFFFF;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 28px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  flex-shrink: 0;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.feature-item:hover .feature-icon {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(184, 147, 90, 0.18);
}

.feature-svg {
  width: 24px;
  height: 24px;
  display: block;
}

/* feature-content */
.feature-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
  gap: 8px;
  width: 100%;
}

.feature-title {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 24px;
  line-height: 31px;
  color: #1B2A41;
  margin: 0;
}

.feature-desc {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 150%;
  /* 21px */
  color: #66645E;
  margin: 0;
}

/* Responsive adjustments for Why Us */
@media (max-width: 1200px) {
  .section-why-us .container {
    padding: 0 40px;
    gap: 48px;
  }

  .why-us-features,
  .why-us-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px 32px;
  }

  .feature-item {
    max-width: 100%;
  }
}

@media (max-width: 768px) {
  .section-why-us {
    padding: 60px 0;
  }

  .section-why-us .container {
    padding: 0 24px;
    gap: 36px;
    align-items: center;
    text-align: center;
  }

  .why-us-header {
    align-items: center;
    text-align: center;
    margin: 0 auto;
    width: 100%;
  }

  .why-us-header .section-label {
    justify-content: center;
    margin: 0 auto;
  }

  .why-us-title {
    font-size: 34px;
    line-height: 42px;
    text-align: center;
    margin: 0 auto;
  }

  .why-us-features,
  .why-us-grid {
    grid-template-columns: 1fr;
    gap: 32px;
    justify-items: center;
    width: 100%;
  }

  .feature-item {
    align-items: center;
    text-align: center;
    margin: 0 auto;
    max-width: 440px;
    width: 100%;
  }

  .feature-icon {
    margin: 0 auto;
  }

  .feature-content {
    align-items: center;
    text-align: center;
    width: 100%;
  }

  .feature-title {
    text-align: center;
    width: 100%;
  }

  .feature-desc {
    text-align: center;
    width: 100%;
  }
}

/* ==========================================================================
   Contact Us Section (section-contact)
   ========================================================================== */
/* ==========================================================================
   Contact Us Section (section-contact)
   Theme: Figma B2B Specification with Hanging Lanterns Backdrop
   ========================================================================== */
.section-contact {
  padding: 120px 80px;
  background: #FFFFFF;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 64px;
  isolation: isolate;
  position: relative;
  width: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

/* Hanging Lanterns Background Frame (Frame 3) */
.contact-lanterns-frame {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0;
  position: absolute;
  width: 1298px;
  max-width: calc(100% - 40px);
  height: 141px;
  left: 50%;
  transform: translateX(-50%);
  top: 0;
  pointer-events: none;
  z-index: 0;
}

.lantern-item {
  width: 141px;
  height: 141px;
  background-image: url('../lantern.png');
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
  opacity: 0.08;
  /* Clearly visible delicate watermark matching screenshot */
  flex-shrink: 0;
}

.section-contact .container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 64px;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

/* contact-header */
.contact-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 0;
  gap: 20px;
  max-width: 843px;
  width: 100%;
  margin: 0 auto;
}

.contact-header .section-label {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 0;
  gap: 12px;
  height: 21px;
  margin-bottom: 0;
}

.contact-header .label-en {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 14px;
  line-height: 18px;
  text-transform: uppercase;
  color: #C8102E;
}

.contact-header .label-divider {
  box-sizing: border-box;
  width: 16px;
  height: 0;
  border: 1px solid #2D3E56;
}

.contact-header .label-jp {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: italic;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  color: #94A3B8;
}

.contact-title {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 48px;
  line-height: 62px;
  text-align: center;
  color: #1B2A41;
  letter-spacing: -0.5px;
  margin: 0;
  max-width: 843px;
}

.contact-subtitle {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 160%;
  text-align: center;
  color: #66645E;
  max-width: 843px;
  margin: 0;
}

/* contact-info-grid */
.contact-info-grid {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  padding: 0;
  gap: 32px;
  width: 100%;
  max-width: 1280px;
}

.contact-info-card {
  flex: 1 1 0;
  background: #F7F5F0;
  border-radius: 12px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  min-height: 163px;
  box-sizing: border-box;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.contact-info-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(27, 42, 65, 0.06);
}

.contact-card-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0;
  gap: 12px;
  width: 100%;
  height: 21px;
}

.contact-card-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  display: block;
}

.contact-card-title {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 16px;
  line-height: 21px;
  text-transform: uppercase;
  color: #1B2A41;
  letter-spacing: 0.5px;
  margin: 0;
}

.contact-card-list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
  gap: 8px;
  width: 100%;
}

.contact-card-link {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 150%;
  color: #1B2A41;
  text-decoration: none;
  transition: color 0.2s ease;
}

.contact-card-link:hover {
  color: #C8102E;
}

.contact-card-note {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 13px;
  line-height: 150%;
  color: #1B2A41;
  opacity: 0.8;
}

/* Social List */
.contact-social-list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
  gap: 10px;
  width: 100%;
}

.contact-social-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0;
  gap: 10px;
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 18px;
  color: #1B2A41;
  text-decoration: none;
  transition: color 0.2s ease;
}

.contact-social-item:hover {
  color: #C8102E;
}

.contact-social-item svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  stroke: #1B2A41;
  transition: stroke 0.2s ease;
}

.contact-social-item:hover svg {
  stroke: #C8102E;
}

/* Responsive adjustments */
@media (max-width: 1200px) {
  .section-contact {
    padding: 80px 40px;
  }

  .contact-lanterns-frame {
    width: 100%;
    padding: 0 40px;
    box-sizing: border-box;
  }

  .contact-info-grid {
    gap: 20px;
  }
}

@media (max-width: 900px) {
  .section-contact {
    padding: 60px 24px;
    gap: 40px;
  }

  .contact-lanterns-frame {
    display: none;
  }

  .contact-header {
    align-items: center;
    text-align: center;
    margin: 0 auto;
    width: 100%;
  }

  .contact-header .section-label {
    justify-content: center;
    margin: 0 auto;
  }

  .contact-title {
    font-size: 34px;
    line-height: 42px;
    text-align: center;
    margin: 0 auto;
  }

  .contact-subtitle {
    text-align: center;
    margin: 0 auto;
  }

  .contact-info-grid {
    flex-direction: column;
    gap: 16px;
    align-items: center;
    width: 100%;
  }

  .contact-info-card {
    align-items: center;
    text-align: center;
    margin: 0 auto;
    max-width: 440px;
    width: 100%;
  }

  .contact-card-header {
    justify-content: center;
    width: 100%;
  }

  .contact-card-list {
    align-items: center;
    text-align: center;
    display: flex;
    flex-direction: column;
    width: 100%;
  }

  .contact-social-list {
    justify-content: center;
    align-items: center;
    width: 100%;
  }
}

/* ==========================================================================
   Responsive Breakpoints
   ========================================================================== */
@media (max-width: 1200px) {
  .products-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .why-us-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 992px) {
  .site-header {
    padding: 0 32px;
  }

  .nav-menu,
  .header-actions .btn-primary {
    display: none;
  }

  .mobile-toggle {
    display: block;
  }

  .about-grid {
    grid-template-columns: 1fr;
  }

  .about-image-wrapper {
    height: 380px;
    max-width: 100%;
  }

  .footer-top {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .section-contact {
    padding: 80px 32px;
  }

  .contact-info-grid {
    flex-direction: column;
    gap: 20px;
  }
}

@media (max-width: 768px) {
  .site-header {
    padding: 0 20px;
  }

  .products-title,
  .about-title,
  .why-us-title,
  .contact-title {
    font-size: 32px;
  }

  .products-grid {
    grid-template-columns: 1fr;
  }

  .why-us-grid {
    grid-template-columns: 1fr;
  }

  .about-values {
    grid-template-columns: repeat(2, 1fr);
  }

  .section-contact {
    padding: 60px 20px;
  }

  .section-contact .container {
    gap: 40px;
  }

  .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
}

/* ==========================================================================
   Products Catalog & Inquiry Page (products.php)
   ========================================================================== */
.catalog-header-section {
  padding: 60px 0 40px;
  background: #F7F5F0;
  width: 100%;
}

.breadcrumbs {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 17px;
  margin-bottom: 24px;
}

.breadcrumb-link {
  color: #66645E;
  text-decoration: none;
  transition: var(--transition);
}

.breadcrumb-link:hover {
  color: #C8102E;
}

.breadcrumb-sep {
  color: #66645E;
}

.breadcrumb-current {
  color: #1B2A41;
  font-weight: 600;
}

.catalog-title-block {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 32px;
}

.catalog-eyebrow {
  font-family: var(--font-sans);
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #C8102E;
  letter-spacing: 0.5px;
}

.catalog-title {
  font-family: var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 56px;
  line-height: 110%;
  color: #1B2A41;
  letter-spacing: -0.5px;
  margin: 0;
}

.catalog-subtitle {
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 160%;
  color: #66645E;
  max-width: 1280px;
  margin: 0;
}

/* Search & Filter Controls */
.search-filter-controls {
  background: #FFFFFF;
  border: 1px solid #E6E2DC;
  border-radius: 8px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  box-shadow: 0 4px 16px rgba(27, 42, 65, 0.03);
}

.catalog-search-box {
  background: rgba(255, 255, 255, 0.2);
  border: 1px solid #E6E2DC;
  border-radius: 4px;
  padding: 12px 18px;
  display: flex;
  align-items: center;
  gap: 12px;
  transition: var(--transition);
}

.catalog-search-box:focus-within {
  border-color: #C8102E;
  box-shadow: 0 0 0 3px rgba(200, 16, 46, 0.08);
}

.catalog-search-box i {
  color: #66645E;
  font-size: 18px;
}

.catalog-search-input {
  border: none;
  outline: none;
  background: transparent;
  width: 100%;
  font-family: var(--font-sans);
  font-size: 15px;
  color: #1B2A41;
}

.catalog-search-input::placeholder {
  color: #66645E;
  opacity: 0.8;
}

.filter-pills-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.filter-pill {
  padding: 8px 16px;
  background: #FFFFFF;
  border: 1px solid #E6E2DC;
  border-radius: 100px;
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 17px;
  font-weight: 500;
  color: #1A1A1A;
  cursor: pointer;
  transition: var(--transition);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  user-select: none;
}

.filter-pill:hover {
  border-color: #C8102E;
  color: #C8102E;
}

.filter-pill.active {
  background: #C8102E;
  border-color: #C8102E;
  color: #FFFFFF;
  font-weight: 600;
}

/* Catalog Body Sections */
.catalog-body-sections {
  background: #FFFFFF;
  padding: 60px 0 80px;
  width: 100%;
}

.catalog-categories-container {
  display: flex;
  flex-direction: column;
  gap: 64px;
}

.catalog-category-block {
  display: flex;
  flex-direction: column;
  gap: 24px;
  scroll-margin-top: 100px;
}

.category-block-header {
  border-bottom: 1px solid #E6E2DC;
  padding-bottom: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.cat-title-row {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.cat-title-en {
  font-family: var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 32px;
  line-height: 42px;
  color: #1B2A41;
  margin: 0;
}

.cat-title-div {
  box-sizing: border-box;
  width: 12px;
  height: 0;
  border: 1px solid #E6E2DC;
}

.cat-title-jp {
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  color: #B8935A;
}

.cat-desc {
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 18px;
  color: #66645E;
  margin: 0;
}

/* Product Grid */
.catalog-product-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

.catalog-product-card {
  box-sizing: border-box;
  background: #FFFFFF;
  border: 1px solid #E6E2DC;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
  display: flex;
  flex-direction: column;
  height: 320px;
  transition: var(--transition);
}

.catalog-product-card:hover {
  border-color: #cbd5e1;
  box-shadow: 0 10px 24px rgba(27, 42, 65, 0.08);
  transform: translateY(-2px);
}

.catalog-product-card.is-selected {
  border-color: #C8102E;
  box-shadow: 0 4px 16px rgba(200, 16, 46, 0.12);
}

.catalog-product-card.product-highlight {
  animation: productPulseHighlight 2.5s ease-in-out;
  border-color: #C8102E !important;
  box-shadow: 0 0 0 3px #C8102E, 0 12px 32px rgba(200, 16, 46, 0.25) !important;
}

@keyframes productPulseHighlight {
  0% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(200, 16, 46, 0.7);
  }

  25% {
    transform: scale(1.03);
    box-shadow: 0 0 0 8px rgba(200, 16, 46, 0.35);
  }

  50% {
    transform: scale(1.01);
    box-shadow: 0 0 0 4px rgba(200, 16, 46, 0.2);
  }

  75% {
    transform: scale(1.02);
    box-shadow: 0 0 0 6px rgba(200, 16, 46, 0.25);
  }

  100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(200, 16, 46, 0);
  }
}

.card-img-wrap {
  width: 100%;
  height: 200px;
  position: relative;
  overflow: hidden;
  background: #f8f7f4;
}

.card-img-wrap .card-img-gallery {
  width: 100%;
  height: 100%;
}

.btn-select-product {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 36px;
  height: 36px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(200, 16, 46, 0.7);
  color: #FFFFFF;
  font-size: 18px;
  border: none;
  cursor: pointer;
  transition: var(--transition);
  z-index: 2;
}

.btn-select-product:hover {
  background: #C8102E;
  transform: scale(1.1);
}

.btn-select-product.selected {
  background: #C8102E;
  box-shadow: 0 4px 12px rgba(200, 16, 46, 0.4);
}

.card-info {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
  justify-content: center;
}

.product-name {
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 15px;
  line-height: 20px;
  color: #1B2A41;
  margin: 0;
}

.product-origin {
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  color: #66645E;
  margin: 0;
}

/* ==========================================================================
   Section Inquiry (section-inquiry) - Exact Figma Design Specification
   ========================================================================== */
.section-inquiry {
  background: #F7F5F0;
  padding: 80px 0;
  width: 100%;
  scroll-margin-top: 80px;
}

.section-inquiry .container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 64px;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
}

/* inquiry-header */
.inquiry-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0px;
  gap: 16px;
  width: 100%;
  max-width: 1280px;
  text-align: center;
}

/* section-label */
.inquiry-header .section-label {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0px;
  gap: 12px;
  margin: 0;
}

/* label-en */
.inquiry-header .label-en {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #C8102E;
  margin: 0;
}

/* label-divider */
.inquiry-header .label-divider {
  box-sizing: border-box;
  width: 16px;
  height: 0px;
  border: 1px solid #E6E2DC;
  display: inline-block;
}

/* label-jp */
.inquiry-header .label-jp {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: italic;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  color: #66645E;
  margin: 0;
}

/* Request Pricing & Availability */
.inquiry-title {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 48px;
  line-height: 62px;
  text-align: center;
  color: #1B2A41;
  margin: 0;
}

/* Subtitle */
.inquiry-subtitle {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  text-align: center;
  color: #66645E;
  max-width: 624px;
  margin: 0 auto;
}

/* form-split */
.form-split,
.form-split-grid {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  padding: 0px;
  gap: 40px;
  width: 100%;
  max-width: 1280px;
}

/* form-left-col */
.form-left-col,
.form-left-box {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 40px;
  gap: 32px;
  flex: 1;
  background: #FFFFFF;
  border: 2px solid #1B2A41;
  box-shadow: 0px 2px 6px rgba(27, 42, 65, 0.0588235), 0px 12px 32px -12px rgba(27, 42, 65, 0.12549);
  border-radius: 12px;
}

/* subsec-business */
.subsec-business {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px;
  gap: 20px;
  width: 100%;
}

/* Business Profile */
.subsec-title,
.box-heading {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 24px;
  line-height: 31px;
  color: #1B2A41;
  margin: 0;
  border: none;
  padding: 0;
}

/* Inline Form Validation Alert */
.inquiry-error-alert {
  background: #FEF2F2;
  border: 1px solid #FECACA;
  color: #991B1B;
  padding: 12px 16px;
  border-radius: 6px;
  margin-bottom: 20px;
  font-size: 14px;
  line-height: 20px;
  font-family: var(--font-sans);
  display: flex;
  align-items: center;
  gap: 10px;
  box-shadow: 0 1px 3px rgba(220, 38, 38, 0.08);
}

.inquiry-input-box.input-error,
.inquiry-select-box.input-error,
.inquiry-textarea-box.input-error {
  border-color: #DC2626 !important;
  background-color: #FFF5F5 !important;
}

/* input-field */
.inquiry-field,
.form-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px;
  gap: 8px;
  width: 100%;
}

.inquiry-field-label,
.form-group label {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 13px;
  line-height: 17px;
  color: #1B2A41;
  margin: 0;
}

.req-star {
  color: #C8102E;
}

/* input-box */
.inquiry-input-box {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  width: 100%;
  height: 42px;
  background: #FFFFFF;
  border: 1px solid #E6E2DC;
  border-radius: 4px;
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 18px;
  color: #1B2A41;
  outline: none;
  transition: var(--transition);
}

.inquiry-input-box::placeholder {
  color: #66645E;
}

.inquiry-input-box:focus {
  border-color: #1B2A41;
  box-shadow: 0 0 0 2px rgba(27, 42, 65, 0.08);
}

/* select-wrapper */
.select-wrapper {
  position: relative;
  width: 100%;
}

.inquiry-select-box {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  padding-right: 40px;
}

.inquiry-select-box:invalid,
.inquiry-select-box option[value=""] {
  color: #66645E;
}

.select-chevron {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #66645E;
}

.select-chevron svg {
  display: block;
}

/* row-inputs */
.row-inputs,
.inquiry-row-inputs,
.form-row-2 {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  padding: 0px;
  gap: 16px;
  width: 100%;
}

.row-inputs .inquiry-field,
.inquiry-row-inputs .inquiry-field,
.form-row-2 .form-group {
  flex: 1;
}

/* textarea-field */
.inquiry-textarea-box {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  padding: 12px 16px;
  width: 100%;
  min-height: 70px;
  height: 70px;
  background: #FFFFFF;
  border: 1px solid #E6E2DC;
  border-radius: 4px;
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 18px;
  color: #1B2A41;
  outline: none;
  resize: vertical;
  transition: var(--transition);
}

.inquiry-textarea-box::placeholder {
  color: #66645E;
}

.inquiry-textarea-box:focus {
  border-color: #1B2A41;
  box-shadow: 0 0 0 2px rgba(27, 42, 65, 0.08);
}

/* form-actions */
.form-actions,
.inquiry-form-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px;
  gap: 16px;
  width: 100%;
  margin-top: 12px;
}

/* btn-submit */
.btn-submit,
.btn-submit-inquiry {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 16px 32px;
  width: 100%;
  height: 53px;
  background: #C8102E;
  border: none;
  border-radius: 4px;
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 16px;
  line-height: 21px;
  text-transform: uppercase;
  color: #FFFFFF;
  cursor: pointer;
  transition: var(--transition);
}

.btn-submit:hover,
.btn-submit-inquiry:hover {
  background: #a80d26;
  transform: translateY(-1px);
}

/* form-disclaimer */
.form-disclaimer,
.inquiry-disclaimer {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  text-align: center;
  color: #66645E;
  width: 100%;
  margin: 0;
}

/* form-right-col */
.form-right-col,
.form-right-box {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 32px;
  gap: 24px;
  width: 440px;
  flex-shrink: 0;
  background: #1B2A41;
  border-radius: 8px;
  position: sticky;
  top: 100px;
}

/* Selected for Quote */
.quote-title,
.quote-heading {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 24px;
  line-height: 31px;
  color: #FFFFFF;
  margin: 0;
  border: none;
  padding: 0;
}

/* selected-items */
.selected-items,
.selected-items-list,
.selected-quote-items {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px;
  gap: 16px;
  width: 100%;
}

.quote-empty-msg {
  font-family: 'Geist', var(--font-sans);
  font-size: 13px;
  line-height: 150%;
  color: rgba(255, 255, 255, 0.6);
  padding: 12px 0;
}

/* inquiry-item */
.inquiry-item,
.quote-item-row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 0px;
  width: 100%;
  height: 38px;
}

/* item-info */
.item-info,
.quote-item-info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px;
  gap: 4px;
  flex: 1;
  min-width: 0;
}

.item-name,
.quote-item-name {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  line-height: 18px;
  color: #FFFFFF;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 240px;
}

.item-cat,
.quote-item-cat {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  color: #B8935A;
}

/* qty-unit-box */
.qty-unit-box,
.qty-counter {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0px;
  gap: 4px;
  flex-shrink: 0;
}

/* qty-input (-) & (+) */
.qty-input,
.qty-btn,
.qty-val,
.qty-display {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  height: 28px;
  background: #1F2E47;
  border: 1px solid #2D3E56;
  border-radius: 4px;
  color: #FFFFFF;
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-align: center;
}

.qty-btn {
  width: 33px;
  cursor: pointer;
  border: 1px solid #2D3E56;
  transition: var(--transition);
}

.qty-btn:hover {
  background: #2D3E56;
}

.qty-val,
.qty-display {
  width: 48px;
  padding: 6px 10px;
}

/* Line / Divider */
.quote-line,
.quote-divider {
  box-sizing: border-box;
  width: 100%;
  height: 0px;
  border: 1px solid #2D3E56;
  margin: 0;
}

/* add-more-link */
.add-more-link,
.btn-add-more {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0px;
  gap: 8px;
  color: #B8935A;
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  line-height: 18px;
  text-decoration: none;
  cursor: pointer;
  transition: var(--transition);
}

.add-more-link:hover,
.btn-add-more:hover {
  color: #d1ab6e;
}

.add-more-link svg,
.add-more-link i,
.btn-add-more i {
  flex-shrink: 0;
}

/* contact-footer */
.contact-footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0px;
  gap: 8px;
  width: 100%;
  margin-top: 8px;
}

.contact-phone,
.contact-footer-phone {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 16px;
  line-height: 21px;
  text-align: center;
  color: #FFFFFF;
  text-decoration: none;
  width: 100%;
}

.contact-phone:hover,
.contact-footer-phone:hover {
  color: #B8935A;
}

.contact-note,
.contact-footer-note {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 500;
  font-size: 12px;
  line-height: 16px;
  text-align: center;
  color: #B8935A;
  width: 100%;
}

/* Responsive Overrides for Catalog & Inquiry */
@media (max-width: 1200px) {
  .catalog-product-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 992px) {
  .section-inquiry {
    padding: 60px 0;
  }

  .section-inquiry .container {
    gap: 40px;
    padding: 0 20px;
  }

  .catalog-product-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .form-split,
  .form-split-grid {
    flex-direction: column;
    gap: 32px;
    width: 100%;
  }

  .form-left-col,
  .form-left-box {
    width: 100%;
    max-width: 100%;
    padding: 32px 24px;
    order: 1;
  }

  .form-right-col,
  .form-right-box {
    width: 100%;
    max-width: 100%;
    position: static;
    top: auto;
    padding: 28px 24px;
    order: 2;
  }

  .catalog-title {
    font-size: 40px;
  }

  .inquiry-title {
    font-size: 36px;
    line-height: 44px;
  }
}

@media (max-width: 768px) {
  .section-inquiry {
    padding: 50px 0;
  }

  .inquiry-header {
    gap: 14px;
  }

  .inquiry-title {
    font-size: 32px;
    line-height: 40px;
  }

  .inquiry-subtitle {
    font-size: 15px;
    line-height: 22px;
  }

  .form-left-col,
  .form-left-box {
    padding: 28px 20px;
    border-radius: 10px;
  }

  .form-right-col,
  .form-right-box {
    padding: 24px 20px;
    border-radius: 10px;
  }
}

@media (max-width: 600px) {
  .section-inquiry {
    padding: 40px 0;
  }

  .section-inquiry .container {
    gap: 28px;
    padding: 0 16px;
  }

  .catalog-product-grid {
    grid-template-columns: 1fr;
  }

  .inquiry-header {
    gap: 12px;
  }

  .inquiry-header .section-label {
    gap: 8px;
  }

  .inquiry-title {
    font-size: 28px;
    line-height: 36px;
  }

  .inquiry-subtitle {
    font-size: 14px;
    line-height: 20px;
  }

  .form-split,
  .form-split-grid {
    gap: 24px;
  }

  .form-left-col,
  .form-left-box {
    padding: 24px 16px;
    gap: 20px;
    border-radius: 8px;
    border-width: 1.5px;
  }

  .subsec-business {
    gap: 16px;
  }

  .subsec-title,
  .box-heading {
    font-size: 20px;
    line-height: 26px;
  }

  .row-inputs,
  .inquiry-row-inputs,
  .form-row-2 {
    flex-direction: column;
    gap: 16px;
    width: 100%;
  }

  .inquiry-field,
  .form-group {
    gap: 6px;
    width: 100%;
  }

  .inquiry-field-label,
  .form-group label {
    font-size: 13px;
    line-height: 16px;
  }

  .inquiry-input-box {
    height: 44px;
    padding: 10px 14px;
    font-size: 15px;
  }

  .inquiry-select-box {
    font-size: 15px;
    padding-right: 36px;
  }

  .select-chevron {
    right: 12px;
  }

  .inquiry-textarea-box {
    min-height: 75px;
    padding: 10px 14px;
    font-size: 15px;
  }

  .form-actions,
  .inquiry-form-actions {
    gap: 12px;
    margin-top: 8px;
  }

  .btn-submit,
  .btn-submit-inquiry {
    height: 48px;
    padding: 12px 20px;
    font-size: 14px;
    letter-spacing: 0.5px;
  }

  .form-disclaimer,
  .inquiry-disclaimer {
    font-size: 11px;
    line-height: 16px;
  }

  .form-right-col,
  .form-right-box {
    padding: 24px 16px;
    gap: 20px;
    border-radius: 8px;
  }

  .quote-title,
  .quote-heading {
    font-size: 20px;
    line-height: 26px;
  }

  .selected-items,
  .selected-items-list,
  .selected-quote-items {
    gap: 14px;
    max-height: 380px;
  }

  .inquiry-item,
  .quote-item-row {
    height: auto;
    min-height: 38px;
    gap: 10px;
  }

  .item-info,
  .quote-item-info {
    flex: 1;
    min-width: 0;
  }

  .item-name,
  .quote-item-name {
    font-size: 13px;
    line-height: 17px;
    max-width: 100%;
    white-space: normal;
    word-break: break-word;
  }

  .item-cat,
  .quote-item-cat {
    font-size: 11px;
    line-height: 14px;
  }

  .qty-unit-box,
  .qty-counter {
    gap: 3px;
    flex-shrink: 0;
  }

  .qty-input,
  .qty-btn,
  .qty-val,
  .qty-display {
    height: 30px;
  }

  .qty-btn {
    width: 30px;
    font-size: 14px;
  }

  .qty-val,
  .qty-display {
    width: 42px;
    padding: 4px 6px;
    font-size: 12px;
  }

  .add-more-link,
  .btn-add-more {
    font-size: 13px;
    padding: 4px 0;
  }

  .contact-footer {
    gap: 6px;
    margin-top: 4px;
  }

  .contact-phone,
  .contact-footer-phone {
    font-size: 15px;
    line-height: 20px;
  }

  .contact-note,
  .contact-footer-note {
    font-size: 11px;
    line-height: 14px;
  }

  .catalog-title {
    font-size: 32px;
  }
}

@media (max-width: 380px) {
  .section-inquiry .container {
    padding: 0 12px;
  }

  .form-left-col,
  .form-left-box,
  .form-right-col,
  .form-right-box {
    padding: 18px 12px;
  }

  .inquiry-title {
    font-size: 24px;
    line-height: 30px;
  }

  .inquiry-header .label-en {
    font-size: 11px;
  }

  .inquiry-header .label-jp {
    font-size: 14px;
  }

  .btn-submit,
  .btn-submit-inquiry {
    font-size: 13px;
    padding: 10px 14px;
  }
}

/* ==========================================================================
   Section Confirmation (section-confirmation)
   ========================================================================== */
.section-confirmation {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 100px 80px;
  gap: 48px;
  position: relative;
  width: 100%;
  min-height: 593px;
  background: #FFFFFF;
  box-sizing: border-box;
}

.confirm-card {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 48px;
  gap: 28px;
  width: 640px;
  max-width: 100%;
  min-height: 393px;
  background: #FCFAF6;
  border: 1px solid #E6E2DC;
  border-radius: 8px;
  text-align: center;
}

.confirm-success-icon {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0;
  width: 64px;
  height: 64px;
  background: #B8935A;
  border-radius: 32px;
  color: #FFFFFF;
  font-size: 32px;
  flex-shrink: 0;
}

.confirm-text-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0;
  gap: 12px;
  width: 544px;
  max-width: 100%;
}

.confirm-title {
  width: 100%;
  font-family: var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 36px;
  line-height: 47px;
  text-align: center;
  color: #1B2A41;
  margin: 0;
}

.confirm-desc {
  width: 100%;
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 15px;
  line-height: 160%;
  text-align: center;
  color: #66645E;
  margin: 0;
}

.confirm-actions {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 0;
  gap: 16px;
  width: 448px;
  max-width: 100%;
  flex-wrap: wrap;
}

.confirm-btn-primary {
  display: inline-flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 14px 28px;
  background: #C8102E;
  border-radius: 4px;
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  line-height: 18px;
  text-transform: uppercase;
  color: #FFFFFF;
  text-decoration: none;
  transition: var(--transition);
  border: none;
  cursor: pointer;
  white-space: nowrap;
}

.confirm-btn-primary:hover {
  background: #a00c24;
  transform: translateY(-1px);
}

.confirm-btn-secondary {
  box-sizing: border-box;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 14px 28px;
  border: 1px solid #1B2A41;
  border-radius: 4px;
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  line-height: 18px;
  text-transform: uppercase;
  color: #1B2A41;
  background: transparent;
  text-decoration: none;
  transition: var(--transition);
  cursor: pointer;
  white-space: nowrap;
}

.confirm-btn-secondary:hover {
  background: #1B2A41;
  color: #FFFFFF;
  transform: translateY(-1px);
}

@media (max-width: 768px) {
  .section-confirmation {
    padding: 60px 20px;
    min-height: auto;
  }

  .confirm-card {
    padding: 32px 20px;
    width: 100%;
  }

  .confirm-title {
    font-size: 28px;
    line-height: 1.2;
  }

  .confirm-actions {
    flex-direction: column;
    width: 100%;
  }

  .confirm-btn-primary,
  .confirm-btn-secondary {
    width: 100%;
    text-align: center;
  }
}

/* ==========================================================================
   Footer Section (footer)
   Theme: Figma Specification #1B2A41
   ========================================================================== */
.site-footer {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 80px 0 40px;
  background: #1B2A41;
  border-top: 1px solid #2B3A5A;
  width: 100%;
}

.site-footer .footer-container {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0 80px;
  gap: 48px;
  max-width: 1440px;
  width: 100%;
  margin: 0 auto;
}

/* footer-top */
.footer-top {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0;
  width: 100%;
  max-width: 1280px;
}

/* footer-brand */
.footer-brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
  gap: 16px;
  width: 405px;
  max-width: 100%;
}

.footer-logo {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0;
  gap: 12px;
  text-decoration: none;
}

.footer-logo-icon,
img.footer-logo-icon {
  width: 32px;
  height: 32px;
  border-radius: 2px;
  object-fit: contain;
  display: block;
  flex-shrink: 0;
}

.footer-logo-icon .label-jp {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: italic;
  font-weight: 400;
  font-size: 20px;
  line-height: 1;
  text-align: center;
  color: #FFFFFF;
}

.footer-company-name {
  font-family: 'Instrument Serif', var(--font-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 32px;
  line-height: 1.2;
  color: #F7F5F0;
  white-space: normal;
  word-break: normal;
}

.footer-company-desc {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 150%;
  color: #F7F5F0;
  opacity: 0.9;
  margin: 0;
}

/* footer-links */
.footer-links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
  gap: 12px;
}

.footer-directory-title {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #B8935A;
  letter-spacing: 0.5px;
}

.links-list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
  gap: 8px;
  list-style: none;
  margin: 0;
}

.links-list li {
  margin: 0;
  padding: 0;
}

.footer-link {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 13px;
  line-height: 17px;
  color: #F7F5F0;
  text-decoration: none;
  transition: color 0.2s ease;
}

.footer-link:hover {
  color: #B8935A;
}

/* footer-contact-direct */
.footer-contact-direct {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
  gap: 12px;
}

.footer-contact-title {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #B8935A;
  letter-spacing: 0.5px;
}

.enquiry-details {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
  gap: 8px;
}

.footer-contact-item {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 13px;
  line-height: 17px;
  color: #F7F5F0;
  display: flex;
  align-items: center;
  gap: 4px;
}

.footer-link-inline {
  color: #F7F5F0;
  text-decoration: none;
  transition: color 0.2s ease;
}

.footer-link-inline:hover {
  color: #B8935A;
}

.footer-text-inline {
  color: #F7F5F0;
}

/* footer-bottom */
.footer-bottom {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 24px 0 0;
  width: 100%;
  max-width: 1280px;
  border-top: 1px solid #2B3A5A;
}

.footer-copyright {
  font-family: 'Geist', var(--font-sans);
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  color: #F7F5F0;
  opacity: 0.85;
}

.footer-socials {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0;
  gap: 16px;
}

.social-circle {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0;
  width: 32px;
  height: 32px;
  background: #0A4D8F;
  border-radius: 16px;
  color: #FFFFFF;
  text-decoration: none;
  font-size: 18px;
  transition: transform 0.2s ease, background-color 0.2s ease;
}

.social-circle:hover {
  background: #C8102E;
  transform: translateY(-2px);
  color: #FFFFFF;
}

/* Responsive adjustments for footer */
@media (max-width: 1024px) {
  .site-footer .footer-container {
    padding: 0 40px;
    gap: 36px;
  }

  .footer-top {
    flex-wrap: wrap;
    gap: 40px;
  }

  .footer-brand {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .site-footer {
    padding: 60px 0 32px;
  }

  .site-footer .footer-container {
    padding: 0 20px;
    gap: 32px;
    align-items: center;
    text-align: center;
  }

  .footer-top {
    flex-direction: column;
    gap: 32px;
    align-items: center;
    text-align: center;
    width: 100%;
  }

  .footer-brand {
    align-items: center;
    text-align: center;
    margin: 0 auto;
    width: 100%;
  }

  .footer-logo {
    justify-content: center;
    margin: 0 auto;
    max-width: 100%;
  }

  .footer-company-name {
    font-size: 26px;
    line-height: 32px;
    white-space: normal;
    word-break: normal;
    text-align: center;
  }

  .footer-company-desc {
    text-align: center;
    margin: 0 auto;
  }

  .footer-links {
    align-items: center;
    text-align: center;
    width: 100%;
  }

  .links-list {
    align-items: center;
    text-align: center;
    width: 100%;
  }

  .footer-contact-direct {
    align-items: center;
    text-align: center;
    width: 100%;
  }

  .enquiry-details {
    align-items: center;
    text-align: center;
    width: 100%;
  }

  .footer-contact-item {
    justify-content: center;
    width: 100%;
  }

  .footer-bottom {
    flex-direction: column-reverse;
    align-items: center;
    text-align: center;
    justify-content: center;
    gap: 16px;
    width: 100%;
  }

  .footer-copyright {
    text-align: center;
    width: 100%;
  }

  .footer-socials {
    justify-content: center;
    width: 100%;
  }
}

@media (max-width: 480px) {
  .footer-logo {
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
  }

  .footer-company-name {
    font-size: 22px;
    line-height: 28px;
    white-space: normal;
    word-break: normal;
    text-align: center;
  }
}