/* YMCC source: mega-theme-css | https://iyoumega.com/wp-content/themes/mega/assets/theme.css?ver=1779642113 */
/* ═══════════════════════════════════════════════════════════════════════
   theme.css — shared design-system styles across MEGA's 10 main pages

   These are CSS rules that appeared IDENTICALLY in all 10 main content
   pages (homepage, products, product-detail, services, how-it-works,
   case-studies, sustainability, about, faq, insights).

   The 4 small pages (privacy, terms, thank-you, 404) have their own
   self-contained styles and do not need this file.

   ═══════ HOW TO USE THIS FILE IN THE WORDPRESS BUILD ═══════
   1. Save this file as: wp-content/themes/mega/assets/theme.css
   2. In your theme's functions.php, enqueue it on every page:
        wp_enqueue_style('mega-theme',
          get_template_directory_uri() . '/assets/theme.css',
          array(), '1.0');
   3. From each page's inline <style> block, you can safely DELETE any
      rule that exists in this file (search by selector to find duplicates).
      What remains inline is page-unique CSS that should stay where it is.
   4. Once you've extracted shared CSS, you'll see the inline <style>
      blocks shrink dramatically — that's the goal.

   ═══════ WHY THIS WAS NOT EXTRACTED IN THE STATIC HTML ═══════
   We deliberately keep each static HTML file self-contained (no external
   CSS dependencies) so the outsourcer can preview each page locally
   without setting up a server. The extraction happens in the WP build
   step using this file as the reference.
   ═══════════════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════════════
   CSS VARIABLES — Design System Tokens
   ═══════════════════════════════════════════════════════════════════════ */
:root {
  --bg: #fafaf8;
  --bg-2: #f2f1ed;
  --bg-3: #e8e6df;
  --ink: #0a0a0a;
  --muted: #6b6b68;
  --muted-2: #9a9a95;
  --line: #dcdad3;
  --line-dk: #2a2a2a;
  --accent: #c8372a;
  --font-display: 'Archivo', sans-serif;
  --font-body: 'Inter', sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

/* ═══════════════════════════════════════════════════════════════════════
   BASE STYLES
   ═══════════════════════════════════════════════════════════════════════ */

html {
  scroll-behavior:smooth;
}

body {
  font-family: var(--font-body);
  background: var(--bg);
  color: var(--ink);
  -webkit-font-smoothing: antialiased;
  line-height: 1.55;
  font-size: 15px;
  overflow-x: hidden;
}

img {
  display:block;max-width:100%;
}

/* ═══════════════════════════════════════════════════════════════════════
   TYPOGRAPHY
   ═══════════════════════════════════════════════════════════════════════ */

.display {
  font-family: var(--font-display);
  letter-spacing: -0.035em;
  line-height: 0.9;
}

.label {
  font-family: var(--font-display);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--muted);
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.reveal {
  opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease;
}

.reveal.in {
  opacity:1;transform:none;
}

.reveal.delay-1 {
  transition-delay:.08s;
}

.reveal.delay-2 {
  transition-delay:.16s;
}

.reveal.delay-3 {
  transition-delay:.24s;
}

.hero-headline.reveal {
  opacity: 1;
  transform: none;
  transition: none;
}

.logo span {
  color:var(--accent);
}

.nav-right {
  display:flex;gap:14px;align-items:center;
}

.cta-btn:hover {
  background:#dd4934;
}

.foot-logo span {
  color:var(--accent);
}

.foot-top h5 {
  font-family:'Archivo',sans-serif;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#8d8d87;margin-bottom:18px;
}

.foot-legal a {
  color:#8f8f89;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s;
}

.foot-legal a:hover {
  border-bottom-color:#c8372a;color:#c8372a;
}

.foot-legal .sep {
  opacity:.5;
}

.nav-burger {
  display:none;
    background:none;border:none;cursor:pointer;
    padding:8px;width:40px;height:40px;
    flex-direction:column;gap:5px;justify-content:center;align-items:center;
    color:inherit;
}

.nav-burger span {
  display:block;height:2px;width:24px;background:currentColor;
    transition:transform .3s ease, opacity .3s ease;
}

.nav-burger.open span:nth-child(1) {
  transform:translateY(7px) rotate(45deg);
}

.nav-burger.open span:nth-child(2) {
  opacity:0;
}

.nav-burger.open span:nth-child(3) {
  transform:translateY(-7px) rotate(-45deg);
}

@media(max-width:1100px) {
  nav, nav#nav{
      background:rgba(250,250,248,.96) !important;
      backdrop-filter:blur(16px);
      border-bottom:1px solid var(--line);
      color:var(--ink) !important;
    }
    nav .logo-img{filter:none !important;}
    .nav-inner{grid-template-columns:auto 1fr auto;padding:18px 24px;gap:20px;}
    .nav-burger{display:flex;}
    .lang-btn{display:none;}
    .nav-links{
      display:flex !important;
      position:absolute;top:100%;left:0;right:0;
      background:var(--bg);
      border-top:1px solid var(--line);border-bottom:1px solid var(--line);
      flex-direction:column;gap:0;
      padding:0;margin:0;
      max-height:0;overflow:hidden;
      transition:max-height .35s ease;
    }
    .nav-links.open{max-height:520px;}
    .nav-links li{list-style:none;border-bottom:1px solid var(--line);}
    .nav-links li:last-child{border-bottom:none;}
    .nav-links a{
      display:block;padding:16px 24px;
      opacity:1 !important;color:var(--ink);
      font-size:14px;font-weight:500;
    }
}

.skip-link {
  position:absolute;
    top:-100px;
    left:8px;
    background:var(--ink);
    color:#fff;
    padding:12px 20px;
    text-decoration:none;
    font-size:14px;
    font-weight:600;
    border-radius:4px;
    z-index:9999;
    transition:top 0.2s;
}

.skip-link:focus {
  top:8px;outline:2px solid var(--accent);outline-offset:2px;
}

.mqd-launcher {
  position:fixed;bottom:100px;right:28px;z-index:998;
  display:flex;align-items:center;gap:10px;
  padding:14px 20px 14px 18px;border-radius:50px;
  background:#0a0a0a;color:#fff;border:none;cursor:pointer;
  font-family:'Archivo',sans-serif;font-size:12px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;
  box-shadow:0 6px 24px rgba(0,0,0,.25);
  transition:transform .25s ease, background .25s ease;
}

.mqd-launcher:hover {
  transform:translateY(-2px);background:#c8372a;
}

.mqd-launcher svg {
  flex-shrink:0;
}

.mqd-launcher .mqd-pulse {
  position:absolute;top:10px;right:10px;
  width:10px;height:10px;border-radius:50%;background:#c8372a;
}

.mqd-launcher .mqd-pulse::after {
  content:'';position:absolute;inset:0;border-radius:50%;background:#c8372a;
  animation:mqd-pulse 1.8s ease-out infinite;
}

@keyframes mqd-pulse {
  0%{transform:scale(1);opacity:.7;}
  100%{transform:scale(2.6);opacity:0;}
}

@media(max-width:720px) {
  .mqd-launcher{
    bottom:96px;right:20px;padding:12px 16px;font-size:11px;
  }
  .mqd-launcher span.mqd-label-long{display:none;}
}

.mqd-backdrop {
  position:fixed;inset:0;z-index:1000;background:rgba(10,10,10,.55);
  backdrop-filter:blur(4px);opacity:0;pointer-events:none;
  transition:opacity .35s ease;
}

.mqd-backdrop.mqd-open {
  opacity:1;pointer-events:auto;
}

.mqd-drawer {
  position:fixed;top:0;right:0;bottom:0;z-index:1001;
  width:480px;max-width:100vw;background:#fafaf8;
  transform:translateX(100%);transition:transform .4s cubic-bezier(.4,0,.2,1);
  display:flex;flex-direction:column;
  box-shadow:-12px 0 40px rgba(0,0,0,.2);
}

.mqd-drawer.mqd-open {
  transform:translateX(0);
}

.mqd-drawer-head {
  padding:28px 32px 20px;border-bottom:1px solid #dcdad3;
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
}

.mqd-drawer-head h3 {
  font-family:'Archivo',sans-serif;font-size:24px;font-weight:800;
  letter-spacing:-.02em;line-height:1.15;color:#0a0a0a;margin:0 0 8px;
}

.mqd-drawer-head p {
  font-family:'Inter',sans-serif;font-size:13px;color:#6b6b68;
  line-height:1.55;margin:0;
}

.mqd-close {
  width:36px;height:36px;border-radius:50%;border:1px solid #dcdad3;
  background:#fff;cursor:pointer;display:flex;align-items:center;
  justify-content:center;flex-shrink:0;font-size:18px;color:#0a0a0a;
  transition:background .2s;
}

.mqd-close:hover {
  background:#f2f1ed;
}

.mqd-form {
  flex:1;overflow-y:auto;padding:24px 32px 32px;
}

.mqd-form .mqd-row {
  display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px;
}

.mqd-form .mqd-row.mqd-full {
  grid-template-columns:1fr;
}

.mqd-form label {
  font-family:'Archivo',sans-serif;font-size:10px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;color:#6b6b68;
  display:block;margin-bottom:6px;
}

.mqd-form input,
.mqd-form textarea,
.mqd-form select {
  width:100%;padding:12px 14px;background:#fff;border:1px solid #dcdad3;
  font-family:'Inter',sans-serif;font-size:14px;color:#0a0a0a;
  border-radius:0;outline:none;transition:border-color .2s;
}

.mqd-form input:focus,
.mqd-form textarea:focus,
.mqd-form select:focus {
  border-color:#0a0a0a;
}

.mqd-form textarea {
  min-height:90px;resize:vertical;
}

.mqd-form .mqd-hint {
  font-size:11px;color:#9a9a95;margin-top:4px;
}

.mqd-form .mqd-submit {
  width:100%;padding:16px;margin-top:8px;background:#0a0a0a;color:#fff;
  border:none;font-family:'Archivo',sans-serif;font-size:12px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;cursor:pointer;
  transition:background .2s;
}

.mqd-form .mqd-submit:hover {
  background:#c8372a;
}

.mqd-form .mqd-privacy {
  font-size:11px;color:#6b6b68;line-height:1.6;
  margin-top:14px;text-align:center;
}

.mqd-form .mqd-privacy strong {
  color:#0a0a0a;
}

.mqd-form .mqd-hp {
  position:absolute;left:-10000px;top:auto;
  width:1px;height:1px;overflow:hidden;
}

.mqd-trust-row {
  display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;
}

.mqd-trust-chip {
  font-family:'Archivo',sans-serif;font-size:9px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:#6b6b68;
  padding:5px 10px;background:#f2f1ed;border:1px solid #e8e6df;
}

.mega-heading-offset-sm {
  margin-top: 14px;
}

.mega-faq-more {
  margin-top: 48px;
  text-align: center;
}

.mega-accent-underline-link {
  font-family: 'Archivo', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--accent);
  text-decoration: none;
  border-bottom: 1px solid var(--accent);
  padding-bottom: 4px;
}

.mega-form-gap-lg {
  margin-bottom: 32px;
}

.mega-muted-line {
  font-size: 14px;
  color: var(--muted);
  margin-bottom: 8px;
}

.mega-form-optional {
  color: var(--muted-2);
  font-weight: 400;
  text-transform: none;
  letter-spacing: 0;
}

.mega-font-normal {
  font-weight: 400;
}

.mqd-form .mega-form-optional,
.mega-file-helper .mega-form-optional {
  color: #9a9a95;
}

.mega-file-helper {
  font-size: 13px;
  color: var(--muted);
}

.mqd-form .mega-file-helper {
  color: #9a9a95;
}

.mega-file-trigger {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.mega-hidden-file-input {
  display: none;
}

.mega-file-name {
  margin-left: 8px;
  color: var(--ink);
  font-weight: 500;
}

.mega-file-hint {
  margin-top: 4px;
  font-size: 11px;
  color: var(--muted-2);
}

@media(max-width:520px) {
  .mqd-drawer{width:100vw;}
  .mqd-drawer-head{padding:22px 22px 16px;}
  .mqd-drawer-head h3{font-size:21px;}
  .mqd-form{padding:20px 22px 28px;}
  .mqd-form .mqd-row{grid-template-columns:1fr;}
}

body.mqd-locked {
  overflow:hidden;
}

/* ═══════════════════════════════════════════════════════════════════════
   HERO SECTION (Homepage)
   ═══════════════════════════════════════════════════════════════════════ */

.hero {
  position: relative;
  min-height: 100vh;
  color: #fff;
  overflow: hidden;
}

.hero-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  transform: scale(1.04);
}

.hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
  display: none;
}
.hero-video.is-active {
  display: block;
}

@media (prefers-reduced-motion: reduce) {
  .hero-video {
    display: none !important;
  }
}

/* 2026-05-20: keep EN/ES language switcher visible on mobile nav */
@media (max-width: 1100px) {
  nav .nav-right {
    margin-left: auto;
    gap: 10px;
    min-width: 0;
  }

  nav .lang-switch {
    order: -1;
    display: inline-flex !important;
    align-items: center;
    gap: 0;
    height: 34px;
    padding: 3px 4px;
    border: 1px solid rgba(10,10,10,.18);
    background: rgba(255,255,255,.82);
    color: var(--ink);
    opacity: 1 !important;
    backdrop-filter: blur(10px);
  }

  nav .lang-switch .lang-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    height: 26px;
    padding: 0 6px;
    font-family: 'Archivo', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .04em;
    color: var(--ink);
    opacity: .58;
    text-decoration: none;
  }

  nav .lang-switch .lang-btn.is-current {
    color: var(--accent);
    opacity: 1;
  }

  nav .nav-burger {
    order: 0;
  }
}

@media (max-width: 520px) {
  nav .nav-right {
    gap: 8px;
  }

  nav .nav-right > .ghost-link:not(.lang-switch),
  nav .nav-right .cta-btn {
    display: none !important;
  }

  nav .lang-switch {
    height: 32px;
    padding: 2px 3px;
  }

  nav .lang-switch .lang-btn {
    min-width: 28px;
    height: 24px;
    font-size: 11px;
  }
}

@media (max-width: 780px) {
  .hero-video {
    display: none !important;
  }
}

.hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10,10,10,.46) 0%, rgba(10,10,10,.25) 28%, rgba(10,10,10,.78) 85%, rgba(10,10,10,.92) 100%);
  z-index: 1;
}

.hero-content {
  position: relative;
  z-index: 2;
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 40px 90px;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.hero-meta {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 28px;
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  opacity: 0.88;
}
.hero-meta .dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--accent);
}

.hero-headline {
  font-size: clamp(56px, 8.8vw, 148px);
  max-width: 1120px;
  margin-bottom: 28px;
}
.hero-headline strong {
  font-weight: 800;
  color: #fff;
}
.hero-headline .accent {
  color: var(--accent);
  font-style: italic;
  font-weight: 800;
}

.hero-sub {
  max-width: 660px;
  font-size: 19px;
  line-height: 1.65;
  opacity: 0.94;
  margin-bottom: 34px;
}

.hero-mini {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 38px;
}

.small-chip {
  padding: 10px 14px;
  border: 1px solid rgba(255,255,255,0.24);
  background: rgba(255,255,255,0.06);
  color: #fff;
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.hero-ctas {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.hero-ctas a,
.hero-ctas .btn-primary,
.hero-ctas .btn-secondary {
  text-decoration: none !important;
}

.cats-grid .cat-card,
section.case .detail-card {
  color: inherit;
  text-decoration: none;
}

.hero-stats {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  background: rgba(10,10,10,0.52);
  backdrop-filter: blur(18px);
  border-top: 1px solid rgba(255,255,255,0.1);
}

.hero-stats-inner {
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 40px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.hero-stat {
  padding: 26px 28px;
  border-right: 1px solid rgba(255,255,255,0.1);
  display: flex;
  align-items: center;
  gap: 16px;
}
.hero-stat:last-child {
  border-right: none;
}
.hero-stat .k {
  font-family: 'Archivo', sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1;
}
.hero-stat .v {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.11em;
  color: rgba(255,255,255,0.68);
  font-family: 'Archivo', sans-serif;
}

.scroll-ind {
  position: absolute;
  right: 40px;
  bottom: 120px;
  z-index: 3;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.6);
  display: flex;
  align-items: center;
  gap: 16px;
}
.scroll-ind::after {
  content: '';
  width: 1px;
  height: 40px;
  background: rgba(255,255,255,0.3);
  animation: pulse 2.5s ease-in-out infinite;
}

@keyframes pulse {
  0%, 100% {
    opacity: 0.2;
    transform: scaleY(0.5);
  }
  50% {
    opacity: 1;
    transform: scaleY(1);
  }
}

/* ═══════════════════════════════════════════════════════════════════════
   NAVIGATION
   ═══════════════════════════════════════════════════════════════════════ */

nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  color: #fff;
  transition: 0.35s ease;
}

nav.scrolled {
  background: rgba(250,250,248,0.96);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--line);
  color: var(--ink);
}

/* Batch G-3: solid nav pages must be readable on first paint */
nav.nav--solid {
  background: rgba(250,250,248,0.96);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--line);
  color: var(--ink);
}

.nav-inner {
  max-width: 1480px;
  margin: 0 auto;
  padding: 22px 40px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 40px;
  align-items: center;
}

.logo {
  font-family: 'Archivo', sans-serif;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: inherit;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  width: 154px;
  min-width: 154px;
  height: 32px;
  overflow: visible;
}

.logo-img {
  display: block;
  width: 154px;
  height: auto;
  max-width: none;
  transition: filter .25s ease, opacity .25s ease;
}

.nav--home:not(.scrolled) .logo-img {
  filter: invert(1);
}

nav.scrolled .logo-img,
.nav--solid .logo-img {
  filter: none;
}

.nav-links {
  display: flex;
  gap: 28px;
  list-style: none;
  margin-left: 22px;
}
.nav-links a {
  text-decoration: none;
  color: inherit;
  font-size: 13px;
  font-weight: 500;
  opacity: 0.86;
  transition: opacity 0.2s;
}
.nav-links a.active,
.nav-links a[aria-current="page"] {
  opacity: 1;
  color: var(--accent);
}
.nav-links a:hover {
  opacity: 1;
}

.ghost-link {
  font-size: 12px;
  opacity: 0.8;
  text-decoration: none;
  color: inherit;
  transition: opacity 0.2s;
}
.ghost-link:hover {
  opacity: 1;
}
.lang-switch {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.lang-switch a {
  color: inherit;
  text-decoration: none;
}
.lang-switch .lang-btn.is-current {
  opacity: 1;
}

.cta-btn {
  padding: 12px 20px;
  background: var(--accent);
  color: #fff;
  text-decoration: none;
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border: none;
  cursor: pointer;
  transition: background 0.2s;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
/* ═══════════════════════════════════════════════════════════════════════
   LABEL WITH DIAMOND
   ═══════════════════════════════════════════════════════════════════════ */

.label::before {
  content: '◆';
  color: var(--accent);
  font-size: 8px;
}

/* ═══════════════════════════════════════════════════════════════════════
   SECTION BASE
   ═══════════════════════════════════════════════════════════════════════ */

section {
  padding: 140px 0;
}

.container {
  max-width: 1560px;
  margin: 0 auto;
  padding: 0 48px;
}

/* 静态稿驱动页面使用各自的原始版心，避免被主题通用 container 污染 */
.mega-static-mega-products .container {
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 40px;
}

.mega-static-mega-services .container,
.mega-static-mega-how-it-works .container,
.mega-static-mega-about .container,
.mega-static-mega-case-studies .container,
.mega-static-mega-sustainability .container,
.mega-static-mega-insights .container,
.mega-static-mega-faq .container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px;
}

/* ═══════════════════════════════════════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════════════════════════════════════ */

footer {
  background: #0b0b0b;
  color: #fff;
  padding: 78px 0 34px;
}

.foot-top {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
  gap: 44px;
  padding-bottom: 54px;
  border-bottom: 1px solid #262626;
}

.foot-logo {
  font-family: 'Archivo', sans-serif;
  font-size: 30px;
  font-weight: 800;
  letter-spacing: -0.02em;
  margin-bottom: 20px;
}

.foot-logo-img {
  display: block;
  width: 198px;
  height: auto;
  max-width: none;
  filter: invert(1);
  opacity: .96;
}

.foot-desc {
  font-size: 13px;
  color: #b8b8b1;
  max-width: 360px;
  line-height: 1.8;
  margin-bottom: 18px;
}

.foot-top ul {
  list-style: none;
  display: grid;
  gap: 10px;
}
.foot-top a,
.foot-top li {
  font-size: 13px;
  color: #d7d7d1;
  text-decoration: none;
  transition: color 0.2s;
}
.foot-top a:hover {
  color: var(--accent);
}

.foot-bot {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  padding-top: 24px;
  font-size: 11px;
  color: #8f8f89;
}

.foot-bottom {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  padding-top: 24px;
  font-size: 11px;
  color: #8f8f89;
}

.footer--compact .foot-top {
  grid-template-columns: 2fr 1fr 1fr 1fr;
}

.foot-addr {
  font-size: 13px;
  color: #b8b8b1;
  line-height: 1.8;
}

.foot-addr a {
  color: #d7d7d1;
}

.foot-legal {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  padding-top: 14px;
  font-size: 11px;
  color: #8f8f89;
}

.footer--standard .foot-top {
  gap: 60px;
  margin-bottom: 60px;
  padding-bottom: 0;
  border-bottom: none;
}

.footer--standard .foot-top ul {
  display: block;
}

.footer--standard .foot-top li {
  margin-bottom: 10px;
}

.footer--standard .foot-logo {
  font-size: 24px;
  color: #fff;
  margin-bottom: 16px;
}

.footer--standard .foot-desc {
  max-width: 340px;
  line-height: 1.7;
  margin-bottom: 0;
}

.footer--standard .foot-top a,
.footer--standard .foot-top li {
  color: #bcbcb7;
}

.footer--standard .foot-top a:hover {
  color: #fff;
}

.footer--standard .foot-bot {
  border-top: 1px solid #1f1f1f;
  padding-top: 28px;
  font-size: 12px;
  color: #6b6b68;
}

.footer--standard .foot-legal {
  justify-content: center;
}

.catalog-dl-icon {
  font-size: 22px;
  line-height: 1;
  color: #fff;
  font-family: 'Inter', 'Arial Unicode MS', 'Segoe UI Symbol', sans-serif;
  font-variant-emoji: text;
}

/* ═══════════════════════════════════════════════════════════════════════
   CLIENT WALL (Homepage)
   ═══════════════════════════════════════════════════════════════════════ */

.client-wall {
  position: relative;
  background: var(--ink);
  padding: 40px 0 44px;
  overflow: hidden;
  box-shadow:
    inset 0 4px 8px -4px rgba(200,55,42,0.18),
    inset 0 -4px 8px -4px rgba(200,55,42,0.12);
}
.client-wall::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 1100px 300px at 50% 50%, rgba(200,55,42,0.08), transparent 70%);
  pointer-events: none;
}

.cw-label {
  position: relative;
  z-index: 3;
  text-align: center;
  margin-bottom: 28px;
  padding: 0 20px;
}

.cw-label-title {
  display: block;
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--accent);
}

.cw-label-title .cw-sep {
  display: inline-block;
  width: 40px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(200,55,42,0.55), transparent);
  vertical-align: middle;
  margin: 0 20px;
}

.cw-label-sub {
  display: block;
  margin-top: 12px;
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.02em;
  color: rgba(255,255,255,0.38);
}

.cw-brands {
  display: flex;
  justify-content: center;
  gap: 56px;
  flex-wrap: wrap;
}

.cw-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(255,255,255,0.65);
  font-family: 'Archivo', sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.04em;
  transition: color 0.3s ease;
}
.cw-brand:hover {
  color: #fff;
}
.cw-brand img {
  height: 28px;
  filter: grayscale(1) brightness(1.6);
  opacity: 0.7;
  transition: filter 0.35s ease, opacity 0.35s ease;
}
.cw-brand:hover img {
  filter: none;
  opacity: 1;
}

/* ═══════════════════════════════════════════════════════════════════════
   CERT BAND (Homepage)
   ═══════════════════════════════════════════════════════════════════════ */

.cert-band {
  padding: 36px 0;
  background: var(--bg-2);
  border-bottom: 1px solid var(--line);
}

.cert-inner {
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 40px;
  display: flex;
  justify-content: center;
  gap: 48px;
  flex-wrap: wrap;
  align-items: center;
}

.cert-chip {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 10px 18px;
  background: #fff;
  border: 1px solid var(--line);
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
  transition: border-color 0.25s ease, color 0.25s ease;
}
.cert-chip:hover {
  border-color: var(--accent);
  color: var(--accent);
}
.cert-chip img {
  height: 22px;
}

/* 静态首页认证区以 HTML 静态稿为准，清掉旧版 trust-chip 样式残留。 */
.mega-static-mega-garment-home-clean0 .cert-band {
  border-bottom: 0;
}
.mega-static-mega-garment-home-clean0 .cert-inner {
  max-width: 1560px;
  padding: 0;
  display: block;
  justify-content: normal;
  gap: 0;
  flex-wrap: nowrap;
  align-items: stretch;
}

/* ═══════════════════════════════════════════════════════════════════════
   CAPABILITIES (Homepage)
   ═══════════════════════════════════════════════════════════════════════ */

.caps {
  background: var(--bg-2);
}

.caps-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--line);
}

.cap-cell {
  padding: 48px 28px 42px 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  min-height: 360px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: 0.3s ease;
}
.cap-cell:last-child {
  border-right: none;
}
.cap-cell:hover {
  background: var(--ink);
  color: #fff;
  padding-left: 28px;
  padding-right: 28px;
}

.cap-num {
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--muted);
}
.cap-cell:hover .cap-num {
  color: var(--accent);
}

.cap-cell h3 {
  font-family: 'Archivo', sans-serif;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1;
  margin: 70px 0 14px;
}

.cap-cell p {
  font-size: 14px;
  line-height: 1.7;
  opacity: 0.82;
}

.cap-spec {
  padding-top: 20px;
  border-top: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: baseline;
}
.cap-cell:hover .cap-spec {
  border-top-color: rgba(255,255,255,0.15);
}
.cap-spec span {
  font-size: 11px;
  color: var(--muted);
  letter-spacing: 0.11em;
  text-transform: uppercase;
}
.cap-cell:hover .cap-spec span {
  color: rgba(255,255,255,0.6);
}
.cap-spec strong {
  font-family: 'Archivo', sans-serif;
  font-size: 18px;
  font-weight: 700;
}

/* ═══════════════════════════════════════════════════════════════════════
   RESPONSIVE (Hero & Nav)
   ═══════════════════════════════════════════════════════════════════════ */

@media (max-width: 1100px) {
  .nav-inner,
  .container,
  .hero-content,
  .hero-stats-inner {
    padding-left: 24px;
    padding-right: 24px;
  }
  
  .nav-inner {
    grid-template-columns: auto auto;
  }
  
  .hero-stats-inner {
    grid-template-columns: 1fr 1fr;
  }

  .mega-static-mega-products .nav-inner,
  .mega-static-mega-products .container,
  .mega-static-mega-services .nav-inner,
  .mega-static-mega-services .container,
  .mega-static-mega-how-it-works .nav-inner,
  .mega-static-mega-how-it-works .container,
  .mega-static-mega-about .nav-inner,
  .mega-static-mega-about .container,
  .mega-static-mega-case-studies .nav-inner,
  .mega-static-mega-case-studies .container,
  .mega-static-mega-sustainability .nav-inner,
  .mega-static-mega-sustainability .container,
  .mega-static-mega-insights .nav-inner,
  .mega-static-mega-insights .container,
  .mega-static-mega-faq .nav-inner,
  .mega-static-mega-faq .container {
    padding-left: 24px;
    padding-right: 24px;
  }
  
  .caps-grid,
  .cert-inner {
    grid-template-columns: 1fr 1fr;
  }
  
  .cw-brands {
    gap: 36px;
  }
}

@media (max-width: 720px) {
  section {
    padding: 60px 0;
  }
  
  .hero-content {
    padding-bottom: 170px;
  }
  
  .hero-sub {
    font-size: 17px;
  }
  
  .hero-stats-inner {
    grid-template-columns: 1fr;
  }
  
  .hero-stat {
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,0.1);
  }
  .hero-stat:last-child {
    border-bottom: none;
  }
  
  .caps-grid {
    grid-template-columns: 1fr;
  }
  
  .cap-cell {
    border-right: none;
  }
  
  .foot-top {
    grid-template-columns: 1fr 1fr;
    gap: 28px 20px;
    padding-bottom: 36px;
  }

  .footer--home .foot-top > div:first-child {
    grid-column: 1 / -1;
  }
}

@media(max-width:720px) {
  .foot-bot,
  .foot-bottom {
    flex-direction: column;
    gap: 8px;
    text-align: left;
    font-size: 10px;
  }
}

@media (max-width: 640px) {
  .mega-static-mega-products .container,
  .mega-static-mega-services .container,
  .mega-static-mega-how-it-works .container,
  .mega-static-mega-about .container,
  .mega-static-mega-case-studies .container,
  .mega-static-mega-sustainability .container,
  .mega-static-mega-insights .container,
  .mega-static-mega-faq .container {
    padding-left: 18px;
    padding-right: 18px;
  }
}

/* reCAPTCHA v3 会自动注入右下角 badge；正式稿不展示该浮层，隐私说明保留在表单文案中。 */
.grecaptcha-badge {
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}


/* Batch G-2: global mobile footer overflow guard */
@media (max-width: 768px) {
  .mega-footer,
  .mega-footer * {
    box-sizing: border-box;
  }
  .mega-footer .foot-inner,
  .mega-footer .foot-top,
  .mega-footer .foot-top > div,
  .mega-footer .foot-brand,
  .mega-footer .foot-services,
  .mega-footer .foot-products,
  .mega-footer .foot-company,
  .mega-footer .foot-find-us,
  .mega-footer .foot-contact,
  .mega-footer .foot-desc,
  .mega-footer .foot-addr {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
    word-wrap: break-word;
    word-break: break-word;
    hyphens: auto;
  }
  .mega-footer .foot-top {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 28px !important;
  }
  .mega-footer .foot-contact a,
  .mega-footer .foot-contact p,
  .mega-footer .foot-contact span,
  .mega-footer .foot-contact li,
  .mega-footer .foot-top a,
  .mega-footer .foot-top p,
  .mega-footer .foot-top span,
  .mega-footer .foot-top li {
    white-space: normal;
    overflow-wrap: anywhere;
    word-wrap: break-word;
    word-break: break-word;
    max-width: 100%;
  }
}

/* 2026-05-20: ES about header visibility guard */
body.lang-es.page-id-145 nav#nav,
body.lang-es.mega-static-mega-about nav#nav {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: rgba(250,250,248,.96) !important;
  color: var(--ink, #0a0a0a) !important;
  border-bottom: 1px solid var(--line, #dedbd2) !important;
  z-index: 1000 !important;
}

body.lang-es.page-id-145 nav#nav .nav-inner,
body.lang-es.mega-static-mega-about nav#nav .nav-inner,
body.lang-es.page-id-145 nav#nav .logo,
body.lang-es.mega-static-mega-about nav#nav .logo,
body.lang-es.page-id-145 nav#nav .nav-right,
body.lang-es.mega-static-mega-about nav#nav .nav-right,
body.lang-es.page-id-145 nav#nav .lang-switch,
body.lang-es.mega-static-mega-about nav#nav .lang-switch {
  visibility: visible !important;
  opacity: 1 !important;
}

body.lang-es.page-id-145 nav#nav .logo-img,
body.lang-es.mega-static-mega-about nav#nav .logo-img {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  filter: none !important;
}

body.lang-es.page-id-145 nav#nav a,
body.lang-es.mega-static-mega-about nav#nav a,
body.lang-es.page-id-145 nav#nav .nav-burger,
body.lang-es.mega-static-mega-about nav#nav .nav-burger {
  visibility: visible !important;
  opacity: 1;
  color: inherit;
}

@media (min-width: 1101px) {
  body.lang-es.page-id-145 nav#nav .nav-links,
  body.lang-es.mega-static-mega-about nav#nav .nav-links {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.lang-es.page-id-145 nav#nav .nav-burger,
  body.lang-es.mega-static-mega-about nav#nav .nav-burger {
    display: none !important;
  }
}

@media (max-width: 1100px) {
  body.lang-es.page-id-145 nav#nav .lang-switch,
  body.lang-es.mega-static-mega-about nav#nav .lang-switch {
    display: inline-flex !important;
  }
}


/* 2026-05-25: keep ES About nav CTA text white despite ES nav visibility override. */
body.lang-es.page-id-145 nav#nav a.cta-btn,
body.lang-es.mega-static-mega-about nav#nav a.cta-btn {
  color: #fff !important;
}


/* YMCC source: mega-components-css | https://iyoumega.com/wp-content/themes/mega/assets/css/components.css?ver=1778749773 */
/* ═══════════════════════════════════════════════════════════════════════
   MEGA Theme - Component Styles
   Contains: forms, drawer, modals, buttons, cards, animations
   ═══════════════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════════════
   Buttons
   ═══════════════════════════════════════════════════════════════════════ */

.btn-primary,
.btn-secondary,
.btn-dark {
  font-family: 'Archivo', sans-serif;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border: none;
  cursor: pointer;
  transition: all 0.25s ease;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.btn-primary {
  padding: 18px 30px;
  background: #fff;
  color: var(--ink);
  font-size: 12px;
}
.btn-primary:hover {
  background: var(--accent);
  color: #fff;
}

.btn-secondary {
  padding: 18px 30px;
  background: transparent;
  color: #fff;
  border: 1px solid rgba(255,255,255,0.34);
  font-size: 12px;
}
.btn-secondary:hover {
  background: #fff;
  color: var(--ink);
}

.btn-dark {
  padding: 16px 28px;
  background: var(--ink);
  color: #fff;
  font-size: 11px;
}
.btn-dark:hover {
  background: var(--accent);
}

/* ═══════════════════════════════════════════════════════════════════════
   Two-Step RFQ Form
   ═══════════════════════════════════════════════════════════════════════ */

.contact-form-2step {
  background: #f8f7f3;
  padding: 42px;
  border: 1px solid var(--line);
}

.rfq-progress {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.rfq-step {
  color: var(--muted-2);
  transition: color 0.25s ease;
  white-space: nowrap;
}
.rfq-step.is-active {
  color: var(--ink);
}

.rfq-dots {
  color: var(--line);
}

.rfq-step-1,
.rfq-step-2 {
  transition: opacity 0.35s ease, transform 0.35s ease;
}
.rfq-step-2.is-hidden {
  display: none;
}

.rfq-row {
  margin-bottom: 14px;
}

.rfq-row label {
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
  display: block;
  margin-bottom: 6px;
}

.rfq-row input,
.rfq-row select,
.rfq-row textarea {
  width: 100%;
  padding: 12px 14px;
  background: #fff;
  border: 1px solid var(--line);
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  color: var(--ink);
  border-radius: 0;
  outline: none;
  transition: border-color 0.2s;
}
.rfq-row input:focus,
.rfq-row select:focus,
.rfq-row textarea:focus {
  border-color: var(--ink);
}

#rfqForm .rfq-row select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color-scheme: light;
  min-height: 46px;
  line-height: 1.2;
  padding-right: 42px;
  background-color: #fff;
  background-image:
    linear-gradient(45deg, transparent 50%, #777 50%),
    linear-gradient(135deg, #777 50%, transparent 50%);
  background-position:
    calc(100% - 19px) 50%,
    calc(100% - 13px) 50%;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
}

#rfqForm .rfq-row select::-ms-expand {
  display: none;
}

.rfq-row textarea {
  min-height: 90px;
  resize: vertical;
}

.rfq-row small {
  color: var(--muted-2);
  font-weight: 400;
}

.rfq-continue,
.rfq-submit,
.rfq-back {
  padding: 16px 28px;
  margin-top: 8px;
}

.rfq-buttons {
  display: flex;
  gap: 12px;
  margin-top: 8px;
}

.rfq-privacy {
  font-size: 11px;
  color: var(--muted);
  line-height: 1.6;
  margin-top: 14px;
  text-align: center;
}
.rfq-privacy a {
  color: var(--accent);
}

.rfq-hp {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* ═══════════════════════════════════════════════════════════════════════
   Catalog Gate Modal
   ═══════════════════════════════════════════════════════════════════════ */

.cgm-overlay {
  position: fixed;
  inset: 0;
  z-index: 1002;
  background: rgba(10,10,10,0.55);
  backdrop-filter: blur(4px);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s ease;
}

.cgm-overlay.is-open {
  opacity: 1;
  pointer-events: auto;
}

.cgm-modal {
  max-width: 420px;
  width: 100%;
  background: #fafaf8;
  padding: 32px;
  position: relative;
}

.cgm-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid var(--line);
  background: #fff;
  cursor: pointer;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s;
}
.cgm-close:hover {
  background: var(--bg-2);
}

.cgm-eyebrow {
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--accent);
  display: block;
  margin-bottom: 8px;
}

.cgm-form h3 {
  font-family: 'Archivo', sans-serif;
  font-size: 24px;
  font-weight: 800;
  letter-spacing: -0.02em;
  margin-bottom: 12px;
}

.cgm-lead {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.6;
  margin-bottom: 24px;
}

.cgm-row {
  margin-bottom: 14px;
}

.cgm-row label {
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
  display: block;
  margin-bottom: 6px;
}

.cgm-row input {
  width: 100%;
  padding: 12px 14px;
  background: #fff;
  border: 1px solid var(--line);
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  color: var(--ink);
  outline: none;
  transition: border-color 0.2s;
}
.cgm-row input:focus {
  border-color: var(--ink);
}

.cgm-submit {
  width: 100%;
  padding: 16px;
  background: var(--ink);
  color: #fff;
  border: none;
  font-family: 'Archivo', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.2s;
}
.cgm-submit:hover {
  background: var(--accent);
}

.cgm-error {
  display: none;
  color: var(--accent);
  font-size: 13px;
  margin-top: 12px;
}
.cgm-error.is-visible {
  display: block;
}

.cgm-fineprint {
  font-size: 11px;
  color: var(--muted);
  line-height: 1.6;
  margin-top: 14px;
}
.cgm-fineprint a {
  color: var(--accent);
}

.cgm-hp {
  position: absolute;
  left: -10000px;
}

/* Success state */
.cgm-modal.is-success .cgm-form {
  display: none;
}

.cgm-success {
  display: none;
  text-align: center;
}
.cgm-modal.is-success .cgm-success {
  display: block;
}

.mega-form-status {
  margin-top: 14px;
  font-size: 13px;
  line-height: 1.6;
  color: var(--muted);
}

.mega-form-status.is-error {
  color: var(--accent);
}

.mega-form-status.is-success {
  color: #1d6b46;
}

.cgm-check {
  font-size: 48px;
  color: var(--accent);
  margin-bottom: 16px;
}

.cgm-success h4 {
  font-family: 'Archivo', sans-serif;
  font-size: 22px;
  font-weight: 800;
  margin-bottom: 12px;
}

.cgm-success p {
  font-size: 14px;
  color: var(--muted);
  margin-bottom: 20px;
}

.cgm-dl {
  display: inline-flex;
  padding: 16px 28px;
  background: var(--accent);
  color: #fff;
  font-family: 'Archivo', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background 0.2s;
}
.cgm-dl:hover {
  background: #dd4934;
}

/* ═══════════════════════════════════════════════════════════════════════
   Video Lightbox
   ═══════════════════════════════════════════════════════════════════════ */

.video-overlay {
  position: fixed;
  inset: 0;
  z-index: 1003;
  background: rgba(0,0,0,0.92);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s ease;
}

.video-overlay.is-open {
  opacity: 1;
  pointer-events: auto;
}

.video-modal {
  max-width: 900px;
  width: 100%;
  padding: 20px;
  position: relative;
}

.video-close {
  position: absolute;
  top: -40px;
  right: 0;
  width: 36px;
  height: 36px;
  background: rgba(255,255,255,0.15);
  color: #fff;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  font-size: 24px;
  transition: background 0.2s;
}
.video-close:hover {
  background: rgba(255,255,255,0.25);
}

.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ═══════════════════════════════════════════════════════════════════════
   WhatsApp Float Button
   ═══════════════════════════════════════════════════════════════════════ */

.whatsapp-float {
  position: fixed;
  bottom: 28px;
  right: 28px;
  z-index: 999;
  width: 60px;
  height: 60px;
  background: #25D366;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 20px rgba(37,211,102,0.4);
  transition: transform 0.3s ease;
  text-decoration: none;
}

.whatsapp-float:hover {
  transform: scale(1.1);
}

.whatsapp-float svg {
  width: 32px;
  height: 32px;
}

/* ═══════════════════════════════════════════════════════════════════════
   Ghost Numbers ( watermark effect)
   ═══════════════════════════════════════════════════════════════════════ */

.ghost-num {
  font-family: 'Archivo', sans-serif;
  font-size: 240px;
  font-weight: 200;
  color: rgba(200,55,42,0.07);
  position: absolute;
  top: 20px;
  right: 20px;
  line-height: 1;
  pointer-events: none;
}

/* ═══════════════════════════════════════════════════════════════════════
   FAQ Cards
   ═══════════════════════════════════════════════════════════════════════ */

.faq-grid {
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: 18px;
}

.faq-item {
  background: #171717;
  border: 1px solid #282828;
  padding: 28px;
  transition: all 0.25s ease;
  position: relative;
}
.faq-item:hover {
  transform: translateY(-2px);
  border-color: var(--accent);
  background: #1a1a1a;
}

.faq-feature {
  min-height: 280px;
}

.faq-item h4 {
  font-family: 'Archivo', sans-serif;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.1;
  margin-bottom: 12px;
  color: #fff;
}

.faq-item p {
  font-size: 14px;
  color: #bcbcb7;
  line-height: 1.75;
}

.faq-chips {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: auto;
  padding-top: 24px;
  border-top: 1px solid #262626;
  position: relative;
  z-index: 2;
}

.faq-chip {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.faq-chip .k {
  font-family: 'Archivo', sans-serif;
  font-size: clamp(26px, 3vw, 34px);
  font-weight: 800;
  color: #fff;
  line-height: 1;
  letter-spacing: -0.02em;
}
.faq-chip .k .unit {
  font-size: 0.55em;
  color: var(--accent);
  font-weight: 600;
  margin-left: 2px;
}
.faq-chip .v {
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8a8a85;
  line-height: 1.3;
}
.cgm-success .cgm-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
  margin-top: 8px;
}
.cgm-success .cgm-dl-secondary {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 18px 32px;
  background: transparent;
  color: #141413;
  border: 1.5px solid #141413;
  font-family: 'Archivo', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s;
}
.cgm-success .cgm-dl-secondary:hover {
  background: #141413;
  color: #fff;
}
.cgm-success .cgm-or {
  font-size: 11px;
  color: #8d8d87;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  margin: 14px 0 4px;
}

/* ═══════════════════════════════════════════════════════════════════════
   Process Timeline
   ═══════════════════════════════════════════════════════════════════════ */

.proc-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  border-top: 1px solid #292929;
  position: relative;
}

.proc-step {
  padding: 50px 24px 68px 0;
  border-right: 1px solid #292929;
  min-height: 340px;
  position: relative;
  transition: all 0.3s ease;
}
.proc-step:last-child {
  border-right: none;
}
.proc-step:hover {
  background: #111;
  padding-left: 24px;
}

.step-label {
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--accent);
  display: block;
  margin-bottom: 18px;
}

.proc-time {
  font-family: 'Archivo', sans-serif;
  font-size: 42px;
  font-weight: 800;
  color: #fff;
  margin-bottom: 18px;
}

.proc-step h4 {
  font-family: 'Archivo', sans-serif;
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 14px;
  color: #fff;
}

.proc-step p {
  font-size: 13px;
  color: #b6b6b0;
  line-height: 1.7;
}

.proc-node {
  position: absolute;
  top: -8px;
  left: 24px;
  width: 14px;
  height: 14px;
  border: 2px solid var(--accent);
  border-radius: 50%;
  background: var(--ink);
  transition: all 0.25s ease;
}
.proc-step:hover .proc-node {
  transform: scale(1.15);
  background: var(--accent);
}

/* Red gradient connection line */
.proc-line {
  position: absolute;
  top: 0;
  left: 24px;
  right: 24px;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(200,55,42,0.55) 20%, rgba(200,55,42,0.55) 80%, transparent);
}

/* ═══════════════════════════════════════════════════════════════════════
   Service Cards (2x2 grid)
   ═══════════════════════════════════════════════════════════════════════ */

.service-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.service-card {
  position: relative;
  overflow: hidden;
  background: #101010;
  padding: 44px 48px 40px;
  border: 1px solid #222;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  transition: border-color 0.35s ease, transform 0.35s ease, background 0.35s ease;
}
.service-card:hover {
  transform: translateY(-2px);
  border-color: var(--accent);
  background: #131313;
}

.service-card .svc-num {
  position: absolute;
  top: -32px;
  right: -12px;
  font-family: 'Archivo', sans-serif;
  font-size: clamp(150px, 18vw, 240px);
  font-weight: 200;
  line-height: 1;
  letter-spacing: -0.05em;
  color: rgba(200, 55, 42, 0.07);
  pointer-events: none;
  z-index: 1;
  user-select: none;
}

.service-card > *:not(.svc-num) {
  position: relative;
  z-index: 2;
}

.service-card h3 {
  font-family: 'Archivo', sans-serif;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.02em;
  color: #fff;
  margin-bottom: 18px;
}

.service-card p {
  font-size: 14px;
  color: #b7b7b2;
  line-height: 1.7;
  margin-bottom: 28px;
}

.service-card ul {
  list-style: none;
  display: grid;
  gap: 12px;
  margin-top: auto;
  padding-top: 20px;
  border-top: 1px solid #232323;
}

.service-card li {
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #d4d4cf;
  line-height: 1.5;
  letter-spacing: 0;
  text-transform: none;
  padding: 0;
  border: none;
  display: flex;
  align-items: center;
  gap: 12px;
}
.service-card li::before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 5px;
  background: var(--accent);
  border-radius: 50%;
  flex-shrink: 0;
}

/* Insights → Products 桥接组件 */
.rp-bridge {
  background: var(--bg-2);
  padding: 80px 0;
  border-top: 1px solid var(--line);
}
.rp-bridge-inner {
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 40px;
}
.rp-bridge-head {
  text-align: center;
  max-width: 580px;
  margin: 0 auto 48px;
}
.rp-bridge-head .label {
  justify-content: center;
}
.rp-bridge-head h2 {
  font-family: 'Archivo', sans-serif;
  font-size: clamp(28px, 3.6vw, 42px);
  font-weight: 800;
  letter-spacing: -.02em;
  line-height: 1.1;
  margin-top: 14px;
  color: var(--ink);
}
.rp-bridge-head p {
  font-size: 15px;
  color: var(--muted);
  line-height: 1.6;
  margin-top: 14px;
}
.rp-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.rp-card {
  background: #fff;
  border: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
  transition: border-color .25s ease, transform .35s ease;
}
.rp-card:hover {
  border-color: var(--ink);
  transform: translateY(-3px);
}
.rp-card .rp-thumb {
  aspect-ratio: 4/3;
  background: #eee;
  overflow: hidden;
}
.rp-card .rp-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}
.rp-card:hover .rp-thumb img {
  transform: scale(1.04);
}
.rp-card .rp-meta {
  padding: 20px 22px 22px;
}
.rp-card .rp-tag {
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--accent);
  display: block;
  margin-bottom: 8px;
}
.rp-card h4 {
  font-family: 'Archivo', sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: var(--ink);
  margin-bottom: 4px;
  line-height: 1.3;
}
.rp-card .rp-moq {
  font-size: 12px;
  color: var(--muted);
}
.rp-bridge-cta {
  text-align: center;
  margin-top: 36px;
}
.rp-bridge-cta a {
  display: inline-block;
  padding: 16px 28px;
  background: var(--ink);
  color: #fff;
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  text-decoration: none;
}
.rp-bridge-cta a:hover {
  background: var(--accent);
}

/* ═══════════════════════════════════════════════════════════════════════
   Responsive Adjustments
   ═══════════════════════════════════════════════════════════════════════ */

@media (max-width: 1100px) {
  .faq-grid {
    grid-template-columns: 1fr;
  }

  .proc-grid {
    grid-template-columns: 1fr;
  }

  .service-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .contact-form-2step {
    padding: 28px;
  }
}

@media (max-width: 980px) {
  .faq-chips {
    grid-template-columns: 1fr 1fr;
    gap: 16px;
  }
}

@media (max-width: 720px) {
  .cgm-modal {
    padding: 24px;
    margin: 12px;
  }

  .faq-item {
    padding: 22px;
  }

  .service-grid {
    grid-template-columns: 1fr;
  }

  .service-card {
    padding: 36px 30px 32px;
    min-height: auto;
  }

  .rp-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .rp-bridge {
    padding: 56px 0;
  }
}

@media (max-width: 560px) {
  .faq-chips {
    grid-template-columns: 1fr;
  }
}

form#rfqForm.rfq-form select {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  -webkit-border-radius: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color-scheme: light !important;
  display: block !important;
  height: 46px !important;
  min-height: 46px !important;
  line-height: 1.2 !important;
  padding: 12px 42px 12px 14px !important;
  background:
    linear-gradient(45deg, transparent 50%, #777 50%) calc(100% - 19px) 50% / 6px 6px no-repeat,
    linear-gradient(135deg, #777 50%, transparent 50%) calc(100% - 13px) 50% / 6px 6px no-repeat,
    #fff !important;
  background-clip: padding-box !important;
}


/* YMCC source: mega-pages-css | https://iyoumega.com/wp-content/themes/mega/assets/css/pages.css?ver=1778749773 */
/* ═══════════════════════════════════════════════════════════════════════
   MEGA Theme - Page Styles
   Contains: page-specific styles for all 14 pages
   ═══════════════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════════════
   Page Hero (Common for all pages)
   ═══════════════════════════════════════════════════════════════════════ */

.page-hero {
  padding: 160px 0 90px;
  background: var(--ink);
  color: #fff;
  position: relative;
  overflow: hidden;
}

.page-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 1200px 600px at 75% 25%, rgba(200,55,42,0.22), transparent 55%),
    radial-gradient(ellipse 800px 400px at 15% 85%, rgba(200,55,42,0.08), transparent 60%);
  pointer-events: none;
  z-index: 0;
}

.page-hero .container {
  position: relative;
  z-index: 2;
}

.page-hero .breadcrumb {
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.5);
  margin-bottom: 28px;
}
.page-hero .breadcrumb a {
  color: rgba(255,255,255,0.5);
  transition: color 0.2s;
  text-decoration: none;
}
.page-hero .breadcrumb a:hover {
  color: #fff;
}
.page-hero .breadcrumb span {
  color: rgba(255,255,255,0.9);
  margin: 0;
}

.page-hero h1 {
  font-family: 'Archivo', sans-serif;
  font-size: clamp(48px, 6.5vw, 96px);
  font-weight: 300;
  letter-spacing: -0.035em;
  line-height: 0.92;
  margin-bottom: 24px;
}
.page-hero h1 strong {
  font-weight: 800;
}
.page-hero h1 .accent {
  color: var(--accent);
  font-style: italic;
  font-weight: inherit;
}

.page-hero p.sub {
  max-width: 680px;
  font-size: 18px;
  line-height: 1.65;
  color: rgba(255,255,255,0.78);
}

/* ═══════════════════════════════════════════════════════════════════════
   Breadcrumb Bar
   ═══════════════════════════════════════════════════════════════════════ */

.breadcrumb-bar {
  padding: 100px 0 0;
}

.breadcrumb {
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
  padding: 20px 0;
  border-bottom: 1px solid var(--line);
}
.breadcrumb a {
  color: var(--muted);
  transition: color 0.2s;
  text-decoration: none;
}
.breadcrumb a:hover {
  color: var(--ink);
}
.breadcrumb span {
  margin: 0 8px;
  color: var(--line);
}

/* 静态列表页专用修正，避免主题通用样式压住静态稿 */
.mega-static-page .breadcrumb {
  border-bottom: none !important;
}

.mega-static-page .page-hero .breadcrumb a,
.mega-static-page .breadcrumb a {
  text-decoration: none !important;
}

.mega-static-mega-products .page-hero h1 .accent {
  color: inherit;
  font-style: normal;
  font-weight: inherit;
}

.mega-static-mega-services .page-hero h1 .accent,
.mega-static-mega-how-it-works .page-hero h1 .accent,
.mega-static-mega-about .page-hero h1 .accent,
.mega-static-mega-case-studies .page-hero h1 .accent,
.mega-static-mega-sustainability .page-hero h1 .accent,
.mega-static-mega-insights .page-hero h1 .accent,
.mega-static-mega-faq .page-hero h1 .accent {
  color: var(--accent);
  font-style: italic;
  font-weight: inherit;
}

/* ═══════════════════════════════════════════════════════════════════════
   TOC Bar (Sticky Jump Navigation)
   ═══════════════════════════════════════════════════════════════════════ */

.toc-bar {
  position: sticky;
  top: 68px;
  z-index: 50;
  background: var(--bg);
  border-bottom: 1px solid var(--line);
  padding: 16px 0;
}

.toc-inner {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
}

.toc-label {
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--muted);
  margin-right: 8px;
}

.toc-btn {
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 9px 14px;
  border: 1px solid var(--line);
  background: transparent;
  color: var(--muted);
  cursor: pointer;
  transition: all 0.25s ease;
  text-decoration: none;
  display: inline-block;
}
.toc-btn:hover {
  border-color: var(--ink);
  color: var(--ink);
}

/* ═══════════════════════════════════════════════════════════════════════
   Section Head (Common pattern)
   ═══════════════════════════════════════════════════════════════════════ */

.sec-head {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 64px;
  align-items: end;
  margin-bottom: 64px;
}

.sec-head h2 {
  font-family: 'Archivo', sans-serif;
  font-size: clamp(44px, 6vw, 92px);
  font-weight: 300;
  line-height: 0.92;
  letter-spacing: -0.035em;
}
.sec-head h2 strong {
  font-weight: 800;
}
.sec-head h2 .accent {
  color: var(--accent);
  font-weight: 800;
}

.sec-head p {
  max-width: 560px;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.7;
}

/* Dark section variant */
.services .sec-head h2,
.process .sec-head h2,
.faq .sec-head h2,
.contact-section .sec-head h2 {
  color: #fff;
}
.services .sec-head p,
.process .sec-head p,
.faq .sec-head p,
.contact-section .sec-head p {
  color: var(--muted-2);
}

/* ═══════════════════════════════════════════════════════════════════════
   Products Grid (Archive)
   ═══════════════════════════════════════════════════════════════════════ */

.products-grid-section {
  padding: 80px 0 100px;
}

.products-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

.products-grid .product-card {
  border: 1px solid var(--line);
  transition: all 0.3s ease;
}
.products-grid .product-card:hover {
  transform: translateY(-4px);
  border-color: var(--accent);
}

.products-grid .product-card a {
  display: block;
  padding: 16px;
}

.product-thumb {
  aspect-ratio: 1;
  overflow: hidden;
  margin-bottom: 12px;
}
.product-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.products-grid .product-card:hover .product-thumb img {
  transform: scale(1.05);
}

.products-grid .product-cat-tag {
  display: inline-block;
  font-family: 'Archivo', sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 4px 8px;
  background: var(--accent);
  color: #fff;
  margin-bottom: 8px;
}

.products-grid .product-sku {
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 8px;
}

.products-grid .product-title {
  font-family: 'Archivo', sans-serif;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.01em;
  margin-bottom: 8px;
}

.products-grid .product-meta {
  font-size: 12px;
  color: var(--muted);
}

.products-grid .product-quick-quote {
  display: block;
  width: 100%;
  padding: 12px;
  background: var(--ink);
  color: #fff;
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border: none;
  cursor: pointer;
  transition: background 0.2s;
}
.products-grid .product-quick-quote:hover {
  background: var(--accent);
}

/* ═══════════════════════════════════════════════════════════════════════
   Product Detail
   ═══════════════════════════════════════════════════════════════════════ */

.product-detail {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 80px;
  padding: 60px 0 100px;
  align-items: start;
}

.product-info {
  padding-top: 12px;
}

.product-info .cat-tag {
  display: inline-block;
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 6px 12px;
  background: var(--accent);
  color: #fff;
  margin-bottom: 18px;
}

.product-info .sku {
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 10px;
}

.product-info h1 {
  font-family: 'Archivo', sans-serif;
  font-size: clamp(32px, 4vw, 52px);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1;
  margin-bottom: 24px;
}

.product-info .desc {
  font-size: 16px;
  color: var(--muted);
  line-height: 1.75;
  margin-bottom: 36px;
}

.specs-table table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 36px;
}
.specs-table tr {
  border-bottom: 1px solid var(--line);
}
.specs-table td {
  padding: 14px 0;
}
.specs-table td:first-child {
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
  width: 40%;
}

.product-ctas {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

/* ═══════════════════════════════════════════════════════════════════════
   Insights Grid (Archive)
   ═══════════════════════════════════════════════════════════════════════ */

.insights-grid-section {
  padding: 80px 0 100px;
}

.insights-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.insight-card {
  border: 1px solid var(--line);
  transition: all 0.3s ease;
}
.insight-card:hover {
  transform: translateY(-4px);
  border-color: var(--accent);
}

.insight-card a {
  display: block;
  padding: 16px;
}

.insight-thumb {
  aspect-ratio: 16/9;
  overflow: hidden;
  margin-bottom: 12px;
}
.insight-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.insight-cat {
  display: inline-block;
  font-family: 'Archivo', sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 8px;
}

.insight-card h3 {
  font-family: 'Archivo', sans-serif;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.01em;
  margin-bottom: 8px;
}

.insight-excerpt {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.6;
  margin-bottom: 12px;
}

.insight-meta {
  display: flex;
  gap: 12px;
  font-size: 11px;
  color: var(--muted-2);
}

/* ═══════════════════════════════════════════════════════════════════════
   Case Studies Grid
   ═══════════════════════════════════════════════════════════════════════ */

.case-studies-section {
  padding: 80px 0 100px;
}

.case-studies-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.case-card {
  border: 1px solid var(--line);
  transition: all 0.3s ease;
}
.case-card:hover {
  transform: translateY(-4px);
  border-color: var(--accent);
}

.case-card a {
  display: block;
  padding: 16px;
}

.case-thumb {
  aspect-ratio: 3/2;
  overflow: hidden;
  margin-bottom: 12px;
}
.case-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.case-header {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 12px;
}
.case-client {
  font-family: 'Archivo', sans-serif;
  font-size: 14px;
  font-weight: 700;
}
.case-country {
  font-size: 12px;
  color: var(--muted);
}

.case-card h3 {
  font-family: 'Archivo', sans-serif;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.01em;
  margin-bottom: 8px;
}

.case-summary {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.6;
}

.case-metrics {
  display: flex;
  gap: 8px;
  margin-top: 12px;
}

.metric-chip {
  display: inline-flex;
  gap: 4px;
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  padding: 6px 10px;
  background: var(--bg-2);
  border: 1px solid var(--line);
}

/* ═══════════════════════════════════════════════════════════════════════
   Trust Strip (Case Studies stats)
   ═══════════════════════════════════════════════════════════════════════ */

.trust-strip--stats {
  background: var(--ink);
  padding: 40px 0;
}

.trust-strip--stats .trust-strip-inner {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

.trust-strip--stats .trust-stat {
  text-align: center;
  color: #fff;
}
.trust-strip--stats .trust-num {
  font-family: 'Archivo', sans-serif;
  font-size: 48px;
  font-weight: 800;
  line-height: 1;
}
.trust-strip--stats .trust-label {
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.6);
}

/* ═══════════════════════════════════════════════════════════════════════
   Insights Bridge (Related Products)
   ═══════════════════════════════════════════════════════════════════════ */

.insights-bridge {
  background: var(--bg-2);
  padding: 80px 0;
}

.bridge-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.bridge-card {
  border: 1px solid var(--line);
  background: var(--bg);
  transition: all 0.3s ease;
}
.bridge-card:hover {
  transform: translateY(-4px);
  border-color: var(--accent);
}

.bridge-thumb {
  aspect-ratio: 1;
  overflow: hidden;
}

.bridge-cat {
  display: inline-block;
  font-family: 'Archivo', sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--accent);
  padding: 4px 8px;
}

.bridge-card h3 {
  font-family: 'Archivo', sans-serif;
  font-size: 18px;
  font-weight: 700;
  margin: 8px 12px;
}

.bridge-meta {
  font-size: 12px;
  color: var(--muted);
  margin: 0 12px 12px;
}

.bridge-quote-btn {
  display: block;
  width: 100%;
  padding: 12px;
  background: var(--ink);
  color: #fff;
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border: none;
  cursor: pointer;
}

/* ═══════════════════════════════════════════════════════════════════════
   Founder Notes Section (About page)
   ═══════════════════════════════════════════════════════════════════════ */

.fn-section {
  padding: 80px 0;
  background: var(--bg-2);
}

.fn-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.fn-card {
  cursor: pointer;
  transition: all 0.3s ease;
}
.fn-card:hover {
  transform: translateY(-4px);
}

.fn-thumb {
  position: relative;
  aspect-ratio: 16/9;
  overflow: hidden;
}
.fn-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.founder-note-detail {
  background: var(--paper, #f7f4ee);
  color: var(--ink, #151515);
}

.founder-note-body {
  padding: clamp(48px, 7vw, 92px) 0;
}

.fn-video-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #111;
  margin-bottom: clamp(28px, 5vw, 56px);
  overflow: hidden;
}

.fn-video-frame iframe,
.fn-video-frame img {
  width: 100%;
  height: 100%;
  border: 0;
  object-fit: cover;
  display: block;
}

.fn-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 64px;
  height: 64px;
  background: rgba(200,55,42,0.9);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  transition: all 0.3s ease;
}
.fn-card:hover .fn-play {
  background: var(--accent);
  transform: translate(-50%, -50%) scale(1.1);
}

.fn-duration {
  position: absolute;
  bottom: 8px;
  right: 8px;
  background: rgba(0,0,0,0.7);
  color: #fff;
  font-size: 11px;
  padding: 4px 8px;
}

.fn-meta {
  padding: 12px;
}

.fn-tag {
  display: inline-block;
  font-family: 'Archivo', sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 8px;
}

.fn-meta h4 {
  font-family: 'Archivo', sans-serif;
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 4px;
}

.fn-meta p {
  font-size: 13px;
  color: var(--muted);
}

/* ═══════════════════════════════════════════════════════════════════════
   FAQ Page
   ═══════════════════════════════════════════════════════════════════════ */

.faq-page-section {
  padding: 80px 0 100px;
  background: #111;
  color: #fff;
}

.faq-list {
  display: grid;
  gap: 18px;
}

.faq-item-page {
  background: #171717;
  border: 1px solid #282828;
  padding: 28px;
}

.faq-feature-page {
  min-height: 280px;
  position: relative;
}

.faq-toggle {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
}
.faq-toggle h3 {
  font-family: 'Archivo', sans-serif;
  font-size: 22px;
  font-weight: 700;
  color: #fff;
}
.faq-icon {
  font-size: 28px;
  color: var(--accent);
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
}
.faq-answer.is-open {
  max-height: 500px;
}
.faq-answer p {
  padding-top: 16px;
  color: #bcbcb7;
  line-height: 1.75;
}

/* ═══════════════════════════════════════════════════════════════════════
   Legal Pages (Privacy, Terms)
   ═══════════════════════════════════════════════════════════════════════ */

.page-hero-legal {
  padding: 120px 0 60px;
  background: var(--bg-2);
  border-bottom: 1px solid var(--line);
}
.page-hero-legal h1 {
  font-family: 'Archivo', sans-serif;
  font-size: 42px;
  font-weight: 700;
  margin-bottom: 12px;
}
.page-hero-legal p {
  color: var(--muted);
}

.legal-content {
  padding: 60px 0 100px;
}

.legal-body {
  max-width: 800px;
}
.legal-body h2 {
  font-family: 'Archivo', sans-serif;
  font-size: 22px;
  font-weight: 700;
  margin: 32px 0 16px;
  padding-top: 24px;
  border-top: 1px solid var(--line);
}
.legal-body h2:first-of-type {
  border-top: none;
  padding-top: 0;
}
.legal-body p {
  line-height: 1.75;
  margin-bottom: 16px;
}
.legal-body ul {
  margin: 16px 0;
  padding-left: 24px;
}
.legal-body li {
  margin-bottom: 8px;
  line-height: 1.6;
}

/* ═══════════════════════════════════════════════════════════════════════
   Thank You Page
   ═══════════════════════════════════════════════════════════════════════ */

.thank-you-hero {
  padding: 160px 0 100px;
  background: var(--bg-2);
  text-align: center;
}

.ty-icon {
  font-size: 64px;
  color: var(--accent);
  margin-bottom: 24px;
}

.thank-you-hero h1 {
  font-family: 'Archivo', sans-serif;
  font-size: clamp(48px, 6vw, 72px);
  font-weight: 300;
  margin-bottom: 24px;
}
.thank-you-hero h1 strong {
  font-weight: 800;
}

.thank-you-hero p {
  font-size: 18px;
  color: var(--muted);
  max-width: 600px;
  margin: 0 auto 36px;
}

.ty-next-steps {
  background: var(--bg);
  padding: 24px;
  border: 1px solid var(--line);
  max-width: 500px;
  margin: 36px auto;
}
.ty-next-steps h3 {
  font-family: 'Archivo', sans-serif;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin-bottom: 16px;
}
.ty-next-steps ul {
  list-style: none;
}
.ty-next-steps li {
  display: flex;
  gap: 12px;
  margin-bottom: 12px;
}
.ty-next-steps .step-num {
  display: inline-flex;
  width: 24px;
  height: 24px;
  background: var(--accent);
  color: #fff;
  font-family: 'Archivo', sans-serif;
  font-weight: 700;
  font-size: 12px;
  align-items: center;
  justify-content: center;
}

.ty-while-wait {
  padding: 80px 0;
}

.ty-resources-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.ty-resource {
  display: block;
  padding: 20px;
  background: var(--bg-2);
  border: 1px solid var(--line);
  text-align: center;
  transition: all 0.25s ease;
}
.ty-resource:hover {
  transform: translateY(-2px);
  border-color: var(--accent);
}

.resource-icon {
  font-size: 32px;
  margin-bottom: 12px;
}

.ty-resource h4 {
  font-family: 'Archivo', sans-serif;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 8px;
}

.ty-resource p {
  font-size: 12px;
  color: var(--muted);
}

/* ═══════════════════════════════════════════════════════════════════════
   404 Page
   ═══════════════════════════════════════════════════════════════════════ */

.404-hero {
  padding: 160px 0 100px;
  background: var(--bg-2);
  text-align: center;
}

.404-hero h1 {
  font-family: 'Archivo', sans-serif;
  font-size: clamp(72px, 10vw, 120px);
  font-weight: 300;
  margin-bottom: 24px;
}
.404-hero h1 .accent {
  color: var(--accent);
  font-weight: 800;
}

.404-hero p {
  font-size: 18px;
  color: var(--muted);
  max-width: 500px;
  margin: 0 auto 36px;
}

.404-actions {
  display: flex;
  gap: 16px;
  justify-content: center;
  margin-bottom: 48px;
}

.404-links {
  margin-bottom: 36px;
}
.404-links h3 {
  font-family: 'Archivo', sans-serif;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 16px;
}
.404-links ul {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: center;
  list-style: none;
}
.404-links a {
  color: var(--muted);
  transition: color 0.2s;
}
.404-links a:hover {
  color: var(--accent);
}

/* ═══════════════════════════════════════════════════════════════════════
   CTA Sections (Common)
   ═══════════════════════════════════════════════════════════════════════ */

.catalog-cta,
.case-cta,
.process-cta,
.services-cta,
.about-cta,
.sustain-cta,
.case-detail-cta,
.insight-cta {
  padding: 60px 0;
  background: var(--bg-2);
  text-align: center;
}

.cta-content h2 {
  font-family: 'Archivo', sans-serif;
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 16px;
}

.cta-content p {
  color: var(--muted);
  font-size: 16px;
  max-width: 500px;
  margin: 0 auto 24px;
}

.cta-actions {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}

/* ═══════════════════════════════════════════════════════════════════════
   Pagination
   ═══════════════════════════════════════════════════════════════════════ */

.pagination {
  display: flex;
  justify-content: center;
  gap: 8px;
  padding: 40px 0;
}

.pagination .nav-links {
  display: flex;
  gap: 8px;
}

.pagination a,
.pagination span {
  display: inline-flex;
  min-width: 40px;
  height: 40px;
  padding: 8px 12px;
  background: var(--bg);
  border: 1px solid var(--line);
  font-family: 'Archivo', sans-serif;
  font-size: 12px;
  font-weight: 600;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
}
.pagination a:hover {
  background: var(--ink);
  color: #fff;
  border-color: var(--ink);
}
.pagination .current {
  background: var(--accent);
  color: #fff;
  border-color: var(--accent);
}

/* ═══════════════════════════════════════════════════════════════════════
   Filter Bar
   ═══════════════════════════════════════════════════════════════════════ */

.filter-bar {
  padding: 24px 0;
  border-bottom: 1px solid var(--line);
  background: var(--bg);
}

.filter-inner {
  display: flex;
  gap: 16px;
  align-items: center;
  flex-wrap: wrap;
}

.filter-label {
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
}

.filter-group select {
  padding: 10px 14px;
  background: #fff;
  border: 1px solid var(--line);
  font-size: 13px;
  cursor: pointer;
}

.filter-tags {
  display: flex;
  gap: 8px;
}

.filter-tag {
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 8px 12px;
  border: 1px solid var(--line);
  background: transparent;
  color: var(--muted);
  text-decoration: none;
  transition: all 0.2s;
}
.filter-tag:hover,
.filter-tag.active {
  background: var(--ink);
  color: #fff;
  border-color: var(--ink);
}

/* ═══════════════════════════════════════════════════════════════════════
   Responsive Adjustments
   ═══════════════════════════════════════════════════════════════════════ */

@media (max-width: 1100px) {
  .products-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .insights-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .case-studies-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .bridge-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .fn-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .trust-strip--stats .trust-strip-inner {
    grid-template-columns: repeat(2, 1fr);
  }

  .ty-resources-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .sec-head {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .product-detail {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

@media (max-width: 720px) {
  .products-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .insights-grid {
    grid-template-columns: 1fr;
  }

  .case-studies-grid {
    grid-template-columns: 1fr;
  }

  .bridge-grid {
    grid-template-columns: 1fr;
  }

  .fn-grid {
    grid-template-columns: 1fr;
  }

  .trust-strip--stats .trust-strip-inner {
    grid-template-columns: 1fr;
  }

  .ty-resources-grid {
    grid-template-columns: 1fr;
  }

  .page-hero {
    padding: 120px 0 60px;
  }

  .page-hero h1 {
    font-size: 42px;
  }

  .toc-bar {
    top: 56px;
  }

  .toc-inner {
    padding: 0 16px;
  }

  .filter-inner {
    padding: 0 16px;
  }
}

/* ═══════════════════════════════════════════════════════════════════════
   CASE STUDIES HIGHLIGHT (Homepage)
   ═══════════════════════════════════════════════════════════════════════ */

.case {
  padding: 80px 0;
  background: var(--bg-2);
}

.case-inner .sec-head {
  margin-bottom: 48px;
}

.case-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

.case-card {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.case-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 48px rgba(10,10,10,0.12);
}

.case-img {
  height: 220px;
  background-size: cover;
  background-position: center;
  position: relative;
}

.case-tag {
  position: absolute;
  top: 16px;
  left: 16px;
  background: var(--accent);
  color: #fff;
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  padding: 6px 14px;
  border-radius: 4px;
}

.case-body {
  padding: 24px;
}

.case-body h3 {
  font-family: 'Archivo', sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.25;
  margin-bottom: 12px;
}

.case-quote {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.55;
  margin-bottom: 20px;
}

.case-stats {
  display: flex;
  gap: 24px;
  border-top: 1px solid var(--line);
  padding-top: 16px;
}

.case-stats div {
  text-align: center;
}

.case-stats strong {
  display: block;
  font-family: 'Archivo', sans-serif;
  font-weight: 800;
  font-size: 22px;
  color: var(--accent);
  margin-bottom: 4px;
}

.case-stats div:last-child strong {
  font-size: 18px;
}

.case-cta {
  margin-top: 48px;
  text-align: center;
}

/* ═══════════════════════════════════════════════════════════════════════
   CRAFT DETAILS (Homepage)
   ═══════════════════════════════════════════════════════════════════════ */

.craft {
  padding: 90px 0;
  background: var(--ink);
  color: #fff;
}

.craft-inner .sec-head {
  margin-bottom: 56px;
}

.craft-inner .sec-head .label {
  color: rgba(255,255,255,0.6);
}

.craft-inner .sec-head p {
  color: rgba(255,255,255,0.7);
}

.craft-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 16px;
}

.craft-cell {
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

.craft-cell img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s ease;
}

.craft-cell:hover img {
  transform: scale(1.04);
}

.craft-cell::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(0,0,0,0.85));
}

.craft-info {
  position: absolute;
  bottom: 24px;
  left: 24px;
  right: 24px;
  z-index: 2;
}

.craft-info .tech,
.craft-tech {
  font-family: 'Archivo', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 8px;
}

.craft-info h4 {
  font-family: 'Archivo', sans-serif;
  font-weight: 700;
  font-size: 20px;
  letter-spacing: -0.01em;
  margin-bottom: 4px;
}

.craft-info .desc,
.craft-info p {
  font-size: 12px;
  color: rgba(255,255,255,0.7);
  line-height: 1.5;
}

/* Irregular layout */
.craft-1 { grid-column: span 5; aspect-ratio: 4 / 5; }
.craft-2 { grid-column: span 4; aspect-ratio: 1 / 1; }
.craft-3 { grid-column: span 3; aspect-ratio: 3 / 4; }
.craft-4 { grid-column: span 4; aspect-ratio: 4 / 3; }
.craft-5 { grid-column: span 4; aspect-ratio: 4 / 3; }
.craft-6 { grid-column: span 4; aspect-ratio: 4 / 3; }

/* ═══════════════════════════════════════════════════════════════════════
   FACILITIES (Homepage)
   ═══════════════════════════════════════════════════════════════════════ */

.facilities {
  padding: 80px 0;
  background: var(--bg);
}

.fac-inner .sec-head {
  margin-bottom: 48px;
}

.fac-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.fac-card {
  background: var(--bg);
  border: none;
  border-radius: 0;
  overflow: visible;
  box-shadow: none;
  transition: transform 0.4s ease;
}

.fac-card:hover {
  transform: translateY(-4px);
  border-color: transparent;
  box-shadow: none;
}

.fac-img {
  height: 180px;
  background-size: cover;
  background-position: center;
}

.fac-body {
  padding: 24px;
}

.fac-loc {
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  color: var(--muted);
  margin-bottom: 10px;
}

.fac-body h3 {
  font-family: 'Archivo', sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.2;
  margin-bottom: 12px;
}

.fac-body p {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.5;
  margin-bottom: 18px;
}

.fac-specs {
  display: flex;
  gap: 16px;
}

.fac-specs div {
  font-size: 12px;
  color: var(--muted-2);
}

.fac-specs strong {
  color: var(--ink);
  margin-left: 6px;
}

/* ═══════════════════════════════════════════════════════════════════════
   BIG NUMBERS (Homepage)
   ═══════════════════════════════════════════════════════════════════════ */

.big-numbers {
  background: var(--ink);
  color: #fff;
  padding: 160px 0;
  position: relative;
  overflow: hidden;
}

.big-numbers::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px);
  background-size: 80px 80px;
}

.big-numbers .container {
  position: relative;
}

.big-numbers .sec-head h2 {
  color: #fff;
}

.big-numbers .sec-head p {
  color: var(--muted-2);
}

.big-nums-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2px;
  background: #1a1a1a;
  border: 1px solid #1a1a1a;
}

.big-num {
  padding: 80px 60px;
  background: var(--ink);
  position: relative;
  overflow: hidden;
  transition: background 0.4s;
}

.big-num:hover {
  background: #0f0f0f;
}

.big-num .idx {
  font-family: 'Archivo', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 32px;
  display: block;
}

.big-num .val {
  font-family: 'Archivo', sans-serif;
  font-weight: 200;
  font-size: clamp(100px, 16vw, 240px);
  line-height: 0.85;
  letter-spacing: -0.05em;
  color: #fff;
  display: flex;
  align-items: baseline;
}

.big-num .val .count-big {
  font-family: inherit;
  font-size: 1em;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  display: inline-block;
}

.big-num .val .unit {
  font-size: 0.22em;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-left: 14px;
  color: var(--muted-2);
  align-self: center;
}

.big-num .caption {
  margin-top: 40px;
  max-width: 400px;
  font-size: 15px;
  color: var(--muted-2);
  line-height: 1.6;
  padding-top: 24px;
  border-top: 1px solid #2a2a2a;
}

.big-num .caption strong {
  color: #fff;
  font-weight: 600;
}

/* Responsive adjustments */
@media (max-width: 1024px) {
  .case-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .craft-grid {
    grid-template-columns: 1fr;
  }

  .craft-1,
  .craft-2,
  .craft-3,
  .craft-4,
  .craft-5,
  .craft-6 {
    grid-column: span 1;
    aspect-ratio: 4 / 3;
  }

  .fac-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .big-nums-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .case-grid {
    grid-template-columns: 1fr;
  }

  .case-img {
    height: 180px;
  }

  .craft-grid {
    grid-template-columns: 1fr;
  }

  .craft-cell {
    min-height: 220px;
  }

  .craft .sec-head {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-bottom: 28px;
  }

  .craft .sec-head h2 {
    max-width: 11ch;
    font-size: clamp(34px, 9vw, 42px);
    line-height: 1.02;
  }

  .craft .sec-head p {
    max-width: 100%;
    margin: 0;
    font-size: 14px;
    line-height: 1.65;
  }

  .craft-info {
    left: 18px;
    right: 18px;
    bottom: 18px;
  }

  .craft-info .desc,
  .craft-info p {
    font-size: 11px;
    line-height: 1.45;
  }

  .fac-grid {
    grid-template-columns: 1fr;
  }

  .big-nums-grid {
    grid-template-columns: 1fr;
  }

  .big-num {
    padding: 44px 22px;
  }

  .big-numbers {
    padding: 80px 0;
  }

  .big-num .idx {
    font-size: 10px;
    margin-bottom: 18px;
  }

  .big-num .val {
    font-size: clamp(66px, 20vw, 120px);
    line-height: 0.88;
    gap: 8px;
    flex-wrap: wrap;
  }

  .big-num .val .unit {
    font-size: 0.24em;
    margin-left: 0;
  }

  .big-num .caption {
    margin-top: 22px;
    padding-top: 18px;
    font-size: 14px;
    line-height: 1.65;
  }
}


/* YMCC source: mega-style-css | https://iyoumega.com/wp-content/themes/mega/style.css?ver=1783431569 */
/*
Theme Name: YOUMEGA
Theme URI: https://iyoumega.com/
Author: Xiamen Mega Garment Co., Ltd.
Description: YOUMEGA 官网 WordPress 手写主题。基于静态稿 clean-slate 重建，包含产品、Insights、案例、Founder Notes、线索表单、多语言与 SEO 支持。
Version: 2.1.15
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mega
*/

.cmplz-cookiebanner {
  font-family: 'Archivo', sans-serif !important;
  background: #0a0a0a !important;
  color: #e8e6df !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.32) !important;
}

.cmplz-cookiebanner .cmplz-title,
.cmplz-cookiebanner .cmplz-message,
.cmplz-cookiebanner .cmplz-category-title,
.cmplz-cookiebanner .cmplz-category-header {
  color: #e8e6df !important;
}

.cmplz-cookiebanner .cmplz-btn {
  border-radius: 0 !important;
  font-family: 'Archivo', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

.cmplz-cookiebanner .cmplz-accept {
  background: #c8372a !important;
  border-color: #c8372a !important;
}

.cmplz-cookiebanner .cmplz-deny,
.cmplz-cookiebanner .cmplz-view-preferences,
.cmplz-cookiebanner .cmplz-save-preferences {
  background: transparent !important;
  border-color: rgba(255, 255, 255, 0.28) !important;
  color: #fff !important;
}

.footer-social-icons {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  margin-top: 0.9rem;
}

.footer-social-icons a {
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  transition: color 160ms ease, border-color 160ms ease, background 160ms ease;
}

.footer-social-icons a:hover {
  color: #fff;
  border-color: var(--brand-red, #c8362b);
  background: rgba(200, 54, 43, 0.16);
}

.footer-social-icons .social-icon-svg {
  width: 15px;
  height: 15px;
  display: block;
}

.case-byline-avatar-logo {
  width: 64px;
  height: 64px;
  background-color: #fff !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  border-radius: 50% !important;
  padding: 8px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.mega-footer.footer--compact {
  background: #0a0a0a !important;
  width: 100% !important;
  padding: 3rem 0 2rem !important;
}

.mega-footer.footer--compact .foot-inner.container {
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 0 1.5rem !important;
}

section.case .case-see-all-wrap {
  display: flex;
  justify-content: center;
  margin: clamp(1.75rem, 4vw, 3rem) 0 0;
}

section.case .case-see-all-link {
  color: var(--brand-red, #c8362b);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: underline;
  text-underline-offset: 0.55rem;
  text-decoration-thickness: 2px;
}

body.single-case_study .case-factory-visit-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 1rem;
}

body.single-case_study .case-factory-visit-figure {
  margin: 0;
  border: 1px solid rgba(20, 20, 19, 0.12);
  background: #f7f5ef;
}

body.single-case_study .case-factory-visit-figure img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

body.single-case_study .case-factory-visit-figure figcaption {
  padding: 0.85rem 1rem 1rem;
  color: #5f5c55;
  font-size: 0.9rem;
  line-height: 1.5;
}


/* YOUMEGA case imagery crop refinement - 2026-05-16 */
.cs-img-slot img,
.case-card-image img,
.cs-card-thumbnail img,
.case-carousel-image img,
body.single-case_study .rel-cs-img img {
  object-fit: cover !important;
  object-position: center 38% !important;
}

body.single-case_study .case-hero {
  margin-top: clamp(32px, 4vw, 56px) !important;
}

body.single-case_study .case-hero img {
  object-fit: cover !important;
  object-position: center 42% !important;
}

section.case .detail-card .img,
.case-img {
  background-position: center 38% !important;
}

@media (max-width: 720px) {
  .cs-img-slot img,
  .case-card-image img,
  .cs-card-thumbnail img,
  .case-carousel-image img,
  body.single-case_study .rel-cs-img img {
    object-position: center 36% !important;
  }

  body.single-case_study .case-hero {
    margin-top: 28px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  body.single-case_study .case-hero img {
    object-position: center 40% !important;
  }

  section.case .detail-card .img,
  .case-img {
    background-position: center 36% !important;
  }
}

/* YOUMEGA final case image ratio + mobile H1 fix - 2026-05-16 */
.cs-img-slot,
.case-card-image,
.cs-card-thumbnail,
.case-carousel-image,
body.single-case_study .rel-cs-img {
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

.cs-img-slot img,
.case-card-image img,
.cs-card-thumbnail img,
.case-carousel-image img,
body.single-case_study .rel-cs-img img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center 50% !important;
}

body.single-case_study .case-hero {
  margin-top: clamp(28px, 4vw, 52px) !important;
  padding-left: clamp(20px, 4vw, 40px) !important;
  padding-right: clamp(20px, 4vw, 40px) !important;
}

body.single-case_study .case-hero .img-wrap {
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
}

body.single-case_study .case-hero img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
  object-position: center 50% !important;
}

body.single-case_study .case-header h1 {
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  hyphens: auto !important;
}

@media (max-width: 720px) {
  body.single-case_study .case-header .container,
  body.single-case_study .case-hero {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body.single-case_study .case-header h1 {
    font-size: clamp(1.55rem, 8.2vw, 1.8rem) !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
    max-width: 100% !important;
    margin-bottom: 18px !important;
  }

  body.single-case_study .case-summary {
    font-size: 1rem !important;
    line-height: 1.55 !important;
  }

  .cs-img-slot,
  .case-card-image,
  .cs-card-thumbnail,
  .case-carousel-image,
  body.single-case_study .rel-cs-img,
  body.single-case_study .case-hero .img-wrap {
    aspect-ratio: 16 / 9 !important;
  }
}
/* End YOUMEGA final case image ratio + mobile H1 fix */

/* YOUMEGA v8 reset mobile carousel + FAQ performance - 2026-05-16 */
.post-type-archive-case_study .reveal,
.post-type-archive-case_study .cs-card,
.post-type-archive-case_study .cs-grid > *,
body.mega-static-mega-case-studies .reveal,
body.mega-static-mega-case-studies .cs-card {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

.cert-band-card .cert-band-logo-slot,
.cert-card-sus .cert-logo-slot-sus {
  width: 64px !important;
  height: 64px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  overflow: visible !important;
  border-radius: 0 !important;
}

.cert-band-card .cert-band-logo-slot img,
.cert-card-sus .cert-logo-slot-sus img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
  clip-path: none !important;
  filter: none !important;
  image-rendering: auto !important;
}

@media (max-width: 768px) {
  section.case .case-carousel-shell {
    overflow: visible !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  section.case .detail-grid,
  section.case #case-marquee,
  section.case .case-studies-grid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    animation: none !important;
    transform: none !important;
    gap: 14px !important;
    padding: 4px 18px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    scroll-snap-type: none !important;
    touch-action: pan-x !important;
    overscroll-behavior-x: contain !important;
    cursor: auto !important;
    user-select: auto !important;
  }

  section.case .detail-grid::-webkit-scrollbar,
  section.case #case-marquee::-webkit-scrollbar,
  section.case .case-studies-grid::-webkit-scrollbar {
    display: none !important;
  }

  section.case .detail-card,
  section.case .case-card,
  section.case #case-marquee > * {
    flex: 0 0 82vw !important;
    width: 82vw !important;
    max-width: 340px !important;
    scroll-snap-align: none !important;
    scroll-snap-stop: normal !important;
  }

  section.case .detail-card:last-child,
  section.case .case-card:last-child {
    margin-right: 18px !important;
  }

  .faq .faq-grid,
  .mega-static-mega-faq .faq-list,
  .faq-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    flex-direction: column !important;
    gap: 12px !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    scroll-snap-type: none !important;
    padding: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .faq .faq-grid .faq-item:nth-child(n+7) {
    display: block !important;
  }

  .faq .faq-item,
  .faq .faq-card,
  .faq-list .faq-item {
    width: 100% !important;
    flex: none !important;
    min-height: 0 !important;
    transition: none !important;
    transform: none !important;
    box-shadow: none !important;
    scroll-snap-align: none !important;
  }

  .faq .faq-item > p,
  .faq .faq-item .txt,
  .faq .faq-item .body,
  .faq .faq-card-answer,
  .faq-list .faq-item p {
    max-height: none !important;
    overflow: visible !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    transition: none !important;
  }

  .faq .faq-card-question,
  .faq .faq-item h3,
  .faq .faq-item h4 {
    cursor: default !important;
    display: block !important;
    padding: 0 !important;
  }

  .faq .faq-card-question::after,
  .faq .faq-item h3::after,
  .faq .faq-item h4::after {
    content: none !important;
    display: none !important;
  }

  .faq .faq-item:hover,
  .faq .faq-card:hover,
  .faq-list .faq-item:hover {
    transform: none !important;
    box-shadow: none !important;
  }

  .faq .reveal,
  .faq-page .reveal,
  .mega-static-mega-faq .reveal {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .categories .cat-card.cat-6,
  section.categories .cat-card.cat-6,
  section.cats .cat-card.cat-6,
  section.cats a.cat-card.cat-6 {
    aspect-ratio: 4 / 5 !important;
    min-height: 0 !important;
  }

  .categories .cat-card.cat-6 > img.main-img,
  section.categories .cat-card.cat-6 > img.main-img,
  section.cats .cat-card.cat-6 > img.main-img,
  section.cats a.cat-card.cat-6 > img.main-img {
    content: image-set(
      url('https://iyoumega.com/wp-content/uploads/2026/05/product-bras-tops-mobile-4-5-v2.webp') type('image/webp'),
      url('https://iyoumega.com/wp-content/uploads/2026/05/product-bras-tops-mobile-4-5-v2.jpg') type('image/jpeg')
    ) !important;
    object-fit: cover !important;
    object-position: 50% 50% !important;
  }
}

@media (hover: hover) and (pointer: fine) {
  .faq-item:hover {
    box-shadow: 0 8px 24px -8px rgba(0, 0, 0, .06);
  }
}
/* End YOUMEGA v8 reset mobile carousel + FAQ performance - 2026-05-16 */

/* YOUMEGA mobile pan fix - 2026-05-17 */
@media (max-width: 768px) {
  section.case .detail-grid,
  section.case .case-studies-grid,
  section.case #case-marquee,
  #case-marquee {
    overflow-x: auto !important;
    overflow-y: visible !important;
    touch-action: pan-x pan-y !important;
    scroll-snap-type: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .faq-grid,
  .faq-list,
  .faq-page .faq-list,
  .faq .faq-grid,
  .mega-static-mega-faq .faq-list {
    grid-template-columns: 1fr !important;
    touch-action: pan-y !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
  }
}
/* End YOUMEGA mobile pan fix - 2026-05-17 */

/* YOUMEGA final round case labels FAQ accordion mobile arrows - 2026-05-17 */
section.case .detail-card .img .tag,
.case-card .tag,
.cs-card .tag,
.case-card-tag {
  background: transparent !important;
  color: #fff !important;
  text-shadow: 0 1px 4px rgba(0,0,0,0.7) !important;
  padding: 6px 10px !important;
  font-size: 10px !important;
  line-height: 1.2 !important;
  top: 12px !important;
  left: 12px !important;
  box-shadow: none !important;
  border: 0 !important;
}

section.case .detail-card .img .tag span,
.case-card .tag span,
.cs-card .tag span {
  color: #fff !important;
  font-size: 10px !important;
  letter-spacing: .12em !important;
}

.faq-item p,
.faq-item .faq-chips {
  max-height: 2000px;
  overflow: hidden;
  transition: max-height 0.3s ease, opacity 0.2s ease, margin 0.3s ease;
  opacity: 1;
}

.faq-item[aria-expanded="false"] p,
.faq-item[aria-expanded="false"] .faq-chips {
  max-height: 0;
  opacity: 0;
  margin-top: 0;
  margin-bottom: 0;
}

.faq-item h4 {
  position: relative;
  padding-right: 32px;
  cursor: pointer;
}

.faq-item h4::after {
  content: "+";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 24px;
  color: var(--accent);
  transition: transform 0.2s, content 0.2s;
  font-weight: 300;
  line-height: 1;
}

.faq-item[aria-expanded="true"] h4::after {
  content: "−";
}

@media (max-width: 768px) {
  .case-prev, .case-next,
  .case-nav-prev, .case-nav-next,
  .carousel-arrow,
  section.case button[class*="nav"],
  section.case button[class*="arrow"],
  section.case .swiper-button-prev,
  section.case .swiper-button-next {
    display: none !important;
  }

  section.case .detail-grid,
  section.case .case-studies-grid,
  section.case #case-marquee,
  #case-marquee {
    overflow-x: auto !important;
    overflow-y: visible !important;
    touch-action: pan-x pan-y !important;
    scroll-snap-type: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .faq-grid,
  .faq-list,
  .faq-page .faq-list,
  .faq .faq-grid,
  .mega-static-mega-faq .faq-list {
    grid-template-columns: 1fr !important;
    touch-action: pan-y !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
  }
}
/* End YOUMEGA final round case labels FAQ accordion mobile arrows - 2026-05-17 */

/* YOUMEGA FAQ progressive accordion - 2026-05-17b */
.faq-item p,
.faq-item .faq-chips {
  max-height: none !important;
  overflow: visible !important;
  opacity: 1 !important;
  margin: 12px 0 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.faq-item[data-accordion="true"] p,
.faq-item[data-accordion="true"] .faq-chips {
  overflow: hidden !important;
  transition: max-height 0.3s ease, opacity 0.2s ease, margin 0.3s ease !important;
}

.faq-item[data-accordion="true"][aria-expanded="true"] p,
.faq-item[data-accordion="true"][aria-expanded="true"] .faq-chips {
  max-height: 2000px !important;
  opacity: 1 !important;
  margin: 12px 0 0 !important;
}

.faq-item[data-accordion="true"][aria-expanded="false"] p,
.faq-item[data-accordion="true"][aria-expanded="false"] .faq-chips {
  max-height: 0 !important;
  opacity: 0 !important;
  margin: 0 !important;
}

.faq-item h4 {
  position: relative !important;
  padding-right: 32px !important;
  cursor: pointer !important;
  margin: 0 !important;
}

.faq-item h4::after,
.faq .faq-item h4::after,
.faq .faq-card-question::after {
  content: "+" !important;
  position: absolute !important;
  right: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  display: block !important;
  font-size: 28px !important;
  color: var(--accent) !important;
  font-weight: 300 !important;
  line-height: 1 !important;
  transition: transform 0.2s !important;
}

.faq-item[aria-expanded="true"] h4::after,
.faq .faq-item[aria-expanded="true"] h4::after,
.faq .faq-item[aria-expanded="true"] .faq-card-question::after {
  content: "−" !important;
}
/* End YOUMEGA FAQ progressive accordion - 2026-05-17b */

/* YOUMEGA about team bilingual facility product image fix - 2026-05-17b */
.about-lang-en { display: inline; }
.about-lang-es { display: none; }
html[lang="es"] .about-lang-en,
html[lang="es-ES"] .about-lang-en,
.lang-es .about-lang-en,
body.es .about-lang-en,
body.lang-es .about-lang-en { display: none !important; }
html[lang="es"] .about-lang-es,
html[lang="es-ES"] .about-lang-es,
.lang-es .about-lang-es,
body.es .about-lang-es,
body.lang-es .about-lang-es { display: inline !important; }

.about-facility img,
.facility-img,
section.facility img,
.facility-card img {
  object-fit: cover !important;
  object-position: center 30% !important;
}

@media (max-width: 768px) {
  .product-detail .main-img,
  .product-gallery .main-img,
  .product-gallery img.gallery-main {
    aspect-ratio: 4 / 5 !important;
    object-fit: contain !important;
    width: 100% !important;
    height: auto !important;
    max-height: 80vh !important;
    background: #f5f3ee !important;
  }
}
/* End YOUMEGA about team bilingual facility product image fix - 2026-05-17b */

/* YOUMEGA wide facility image crop fix - 2026-05-17b */
.wide-image-wrap img,
.about-facility img,
.facility-img,
section.facility img,
.facility-card img {
  object-fit: cover !important;
  object-position: center 30% !important;
}
/* End YOUMEGA wide facility image crop fix - 2026-05-17b */

/* YOUMEGA product gallery mobile contain fix - 2026-05-17b */
@media (max-width: 768px) {
  .product-detail .main-img,
  .product-detail .main-img img,
  .product-gallery .main-img,
  .product-gallery .main-img img,
  .product-gallery img.gallery-main,
  .product-gallery .gallery-main img,
  .gallery-main img {
    aspect-ratio: 4 / 5 !important;
    object-fit: contain !important;
    width: 100% !important;
    height: auto !important;
    max-height: 80vh !important;
    background: #f5f3ee !important;
  }
}
/* End YOUMEGA product gallery mobile contain fix - 2026-05-17b */

/* YOUMEGA N+2 visual fixes facility product team case country - 2026-05-17 */
/* Case country label accent: country is wrapped in .tag span in the live DOM. */
section.case .detail-card .img .tag,
.case-card .tag,
.cs-card .tag {
  background: transparent !important;
  color: #fff !important;
  text-shadow: 0 1px 4px rgba(0,0,0,0.7) !important;
  padding: 6px 10px !important;
  font-size: 10px !important;
  top: 12px !important;
  left: 12px !important;
  box-shadow: none !important;
  border: 0 !important;
}

section.case .detail-card .img .tag span,
.case-card .tag span,
.cs-card .tag span,
section.case .detail-card .img .tag .country,
.case-card .tag .country,
.cs-card .tag .country,
section.case .detail-card .img .tag em,
.case-card .tag em,
.cs-card .tag em,
section.case .detail-card .img .tag strong,
.case-card .tag strong,
.cs-card .tag strong {
  color: var(--accent) !important;
  text-shadow: 0 1px 4px rgba(0,0,0,0.8) !important;
}

@media (max-width: 768px) {
  .single-product .main-img,
  .single-product .main-image,
  .single-product .product-image,
  .single-product .gallery-main,
  .single-product .gallery-main img,
  .single-product img#mainImg,
  .single-product img.attachment-large,
  .single-product .woocommerce-product-gallery__image img,
  .product-detail .main-img,
  .product-detail .main-image,
  .product-detail .gallery-main,
  .product-detail .gallery-main img,
  .product-detail img#mainImg,
  .product-gallery .main-img,
  .product-gallery .gallery-main,
  .product-gallery .gallery-main img,
  .ym-product-gallery .main-image,
  .ym-product-gallery .main-image img,
  body[class*="single-product"] .gallery-main,
  body[class*="single-product"] .gallery-main img,
  body[class*="single-product"] img#mainImg,
  body[class*="single-product"] img[class*="main"] {
    aspect-ratio: 4 / 5 !important;
    object-fit: contain !important;
    object-position: center top !important;
    width: 100% !important;
    height: auto !important;
    max-height: 75vh !important;
    background: #f5f3ee !important;
    margin: 0 auto !important;
    display: block !important;
  }
}
/* End YOUMEGA N+2 visual fixes facility product team case country - 2026-05-17 */

/* YOUMEGA FAQ red-white color system - Aaron 2026-05-17 */
:root { --accent: #C8372A; }

/* === 1. Default collapsed state: white card, black question, black 75% answer === */
.faq-item,
.faq-page .faq-item,
section.faq .faq-item,
article .faq-item,
.single-post .faq-item,
.entry-content .faq-item,
.article-body .faq-item {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease !important;
}

.faq-item h3,
.faq-item h4,
.faq-page .faq-item h3,
.faq-page .faq-item h4,
section.faq .faq-item h3,
section.faq .faq-item h4,
article .faq-item h3,
article .faq-item h4,
.single-post .faq-item h3,
.single-post .faq-item h4,
.entry-content .faq-item h3,
.entry-content .faq-item h4,
.article-body .faq-item h3,
.article-body .faq-item h4 {
  color: #0A0A0A !important;
  transition: color 0.25s ease !important;
}

.faq-item p,
.faq-page .faq-item p,
section.faq .faq-item p,
article .faq-item p,
.single-post .faq-item p,
.entry-content .faq-item p,
.article-body .faq-item p {
  color: rgba(0, 0, 0, 0.75) !important;
}

.faq-item h3::after,
.faq-item h4::after,
.faq-page .faq-item h3::after,
.faq-page .faq-item h4::after {
  color: var(--accent) !important;
}

/* === 2. Expanded state: black card, red question, white answer === */
.faq-item[aria-expanded="true"],
.faq-item.is-open,
.faq-item.active,
.faq-item.expanded,
.faq-page .faq-item[aria-expanded="true"],
section.faq .faq-item[aria-expanded="true"],
article .faq-item[aria-expanded="true"],
.single-post .faq-item[aria-expanded="true"],
.entry-content .faq-item[aria-expanded="true"],
.article-body .faq-item[aria-expanded="true"] {
  background: #0A0A0A !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

.faq-item[aria-expanded="true"] h3,
.faq-item[aria-expanded="true"] h4,
.faq-item.is-open h3,
.faq-item.is-open h4,
.faq-item.active h3,
.faq-item.active h4,
.faq-item.expanded h3,
.faq-item.expanded h4,
.faq-page .faq-item[aria-expanded="true"] h3,
.faq-page .faq-item[aria-expanded="true"] h4,
section.faq .faq-item[aria-expanded="true"] h3,
section.faq .faq-item[aria-expanded="true"] h4,
article .faq-item[aria-expanded="true"] h3,
article .faq-item[aria-expanded="true"] h4,
.single-post .faq-item[aria-expanded="true"] h3,
.single-post .faq-item[aria-expanded="true"] h4,
.entry-content .faq-item[aria-expanded="true"] h3,
.entry-content .faq-item[aria-expanded="true"] h4,
.article-body .faq-item[aria-expanded="true"] h3,
.article-body .faq-item[aria-expanded="true"] h4 {
  color: var(--accent) !important;
}

.faq-item[aria-expanded="true"] p,
.faq-item.is-open p,
.faq-item.active p,
.faq-item.expanded p,
.faq-page .faq-item[aria-expanded="true"] p,
section.faq .faq-item[aria-expanded="true"] p,
article .faq-item[aria-expanded="true"] p,
.single-post .faq-item[aria-expanded="true"] p,
.entry-content .faq-item[aria-expanded="true"] p,
.article-body .faq-item[aria-expanded="true"] p {
  color: rgba(255, 255, 255, 0.92) !important;
}

.faq-item[aria-expanded="true"] p strong,
.faq-item[aria-expanded="true"] p b,
.faq-item[aria-expanded="true"] strong,
.faq-item[aria-expanded="true"] b,
.faq-item.is-open p strong,
.faq-item.is-open p b,
.faq-item.active p strong,
.faq-item.active p b,
article .faq-item[aria-expanded="true"] strong,
article .faq-item[aria-expanded="true"] b,
.single-post .faq-item[aria-expanded="true"] strong,
.article-body .faq-item[aria-expanded="true"] strong {
  color: var(--accent) !important;
  font-weight: 600 !important;
}

.faq-item[aria-expanded="true"] a,
.faq-item.is-open a,
.faq-item.active a,
article .faq-item[aria-expanded="true"] a,
.single-post .faq-item[aria-expanded="true"] a,
.article-body .faq-item[aria-expanded="true"] a {
  color: var(--accent) !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}

.faq-item[aria-expanded="true"] h3::after,
.faq-item[aria-expanded="true"] h4::after,
.faq-item.is-open h3::after,
.faq-item.is-open h4::after {
  color: var(--accent) !important;
}

/* === 3. Hover state: desktop only, only collapsed cards === */
@media (hover: hover) {
  .faq-item:not([aria-expanded="true"]):not(.is-open):not(.active):hover,
  .faq-page .faq-item:not([aria-expanded="true"]):hover,
  article .faq-item:not([aria-expanded="true"]):hover,
  .article-body .faq-item:not([aria-expanded="true"]):hover,
  section.faq .faq-item:not([aria-expanded="true"]):hover {
    background: #0A0A0A !important;
    border-color: var(--accent) !important;
  }

  .faq-item:not([aria-expanded="true"]):hover h3,
  .faq-item:not([aria-expanded="true"]):hover h4,
  .faq-page .faq-item:not([aria-expanded="true"]):hover h3,
  .faq-page .faq-item:not([aria-expanded="true"]):hover h4,
  article .faq-item:not([aria-expanded="true"]):hover h3,
  article .faq-item:not([aria-expanded="true"]):hover h4,
  .article-body .faq-item:not([aria-expanded="true"]):hover h3,
  .article-body .faq-item:not([aria-expanded="true"]):hover h4 {
    color: var(--accent) !important;
  }

  .faq-item:not([aria-expanded="true"]):hover p,
  article .faq-item:not([aria-expanded="true"]):hover p,
  .article-body .faq-item:not([aria-expanded="true"]):hover p {
    color: rgba(255, 255, 255, 0.92) !important;
  }

  .faq-item:not([aria-expanded="true"]):hover h3::after,
  .faq-item:not([aria-expanded="true"]):hover h4::after {
    color: var(--accent) !important;
  }
}

/* === 4. Mobile touch protection: no sticky hover on collapsed touch cards === */
@media (hover: none) {
  .faq-item:not([aria-expanded="true"]):not(.is-open):hover {
    background: #ffffff !important;
    border-color: rgba(0, 0, 0, 0.08) !important;
  }
  .faq-item:not([aria-expanded="true"]):hover h3,
  .faq-item:not([aria-expanded="true"]):hover h4 {
    color: #0A0A0A !important;
  }
}

/* === 5. High-specificity fallback === */
html body .faq-page .faq-item[aria-expanded="true"] h3,
html body .faq-page .faq-item[aria-expanded="true"] h4,
html body article .faq-item[aria-expanded="true"] h3,
html body article .faq-item[aria-expanded="true"] h4,
html body .article-body .faq-item[aria-expanded="true"] h3,
html body .article-body .faq-item[aria-expanded="true"] h4,
html body section .faq-item[aria-expanded="true"] h3,
html body section .faq-item[aria-expanded="true"] h4 {
  color: var(--accent) !important;
}

html body .faq-page .faq-item[aria-expanded="true"] p,
html body article .faq-item[aria-expanded="true"] p,
html body .article-body .faq-item[aria-expanded="true"] p,
html body section .faq-item[aria-expanded="true"] p {
  color: rgba(255, 255, 255, 0.92) !important;
}

html body .faq-page .faq-item[aria-expanded="true"] strong,
html body article .faq-item[aria-expanded="true"] strong,
html body .article-body .faq-item[aria-expanded="true"] strong {
  color: var(--accent) !important;
}
/* End YOUMEGA FAQ red-white color system - Aaron 2026-05-17 */

/* YOUMEGA Insights related product image crop fix - Aaron 2026-05-17 */
/* Insights article bottom product widget: FROM THE CATALOG / Ready to see this in action? */
#related-products-bridge .rp-thumb,
.rp-bridge .rp-thumb,
.rp-grid .rp-thumb,
section.rp-bridge .rp-thumb,
section.from-the-catalog .product-card,
section[class*="catalog"] .product-card,
.recommended-products-grid .product-card,
.related-products .product-card {
  aspect-ratio: 3 / 4 !important;
  overflow: hidden !important;
}

#related-products-bridge .rp-thumb img,
.rp-bridge .rp-thumb img,
.rp-grid .rp-thumb img,
section.rp-bridge .rp-thumb img,
section.from-the-catalog .product-card img,
section.from-the-catalog img,
.insight-catalog .product-card img,
.catalog-recommendation .product-card img,
.recommended-products-grid img,
.related-products img,
section[class*="catalog"] .product-card img,
section[class*="catalog"] img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 3 / 4 !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
}

@media (min-width: 769px) {
  #related-products-bridge .rp-thumb,
  .rp-bridge .rp-thumb,
  .rp-grid .rp-thumb,
  section.rp-bridge .rp-thumb,
  section.from-the-catalog .product-card,
  section[class*="catalog"] .product-card {
    aspect-ratio: 4 / 5 !important;
  }

  #related-products-bridge .rp-thumb img,
  .rp-bridge .rp-thumb img,
  .rp-grid .rp-thumb img,
  section.rp-bridge .rp-thumb img,
  section.from-the-catalog .product-card img,
  .insight-catalog .product-card img,
  section[class*="catalog"] .product-card img {
    aspect-ratio: 4 / 5 !important;
    object-position: center 15% !important;
  }
}
/* End YOUMEGA Insights related product image crop fix - Aaron 2026-05-17 */

.cert-band-logo-slot img[src*="oeko-tex-standard-100-300x300"],
.cert-band-logo-slot img[src*="bsci-audited-300x300"],
.cert-band-logo-slot img[src*="reach-compliant-300x300"],
.cert-band-logo-slot img[src*="cpsia-compliant-300x300"]{
    border-radius:50%!important;
    clip-path:circle(49% at 50% 50%)!important;
    -webkit-clip-path:circle(49% at 50% 50%)!important;
    -webkit-mask-image:radial-gradient(circle at 50% 50%, #000 0 49%, transparent 50%)!important;
    mask-image:radial-gradient(circle at 50% 50%, #000 0 49%, transparent 50%)!important;
    background:transparent!important;
}


/* YMCC source: mega-static-mega-insights-css | https://iyoumega.com/wp-content/themes/mega/assets/css/static/mega-insights.css?ver=1778750971 */
/* Extracted from mega-insights.html. Keep static HTML structure separate from runtime CSS. */
:root{
  --bg:#fafaf8;--bg-2:#f2f1ed;--bg-3:#e8e6df;
  --ink:#0a0a0a;--muted:#6b6b68;--muted-2:#9a9a95;
  --line:#dcdad3;--accent:#c8372a;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.55;font-size:15px;overflow-x:hidden;}
img{display:block;max-width:100%;}
a{text-decoration:none;color:inherit;}

/* ── Keyboard accessibility (focus-visible) ── */
button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px;
}
button:focus:not(:focus-visible),
a:focus:not(:focus-visible){outline:none;}
.display{font-family:'Archivo',sans-serif;letter-spacing:-0.035em;line-height:.92;}
.label{font-family:'Archivo',sans-serif;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:10px;}
.label::before{content:'◆';color:var(--accent);font-size:8px;}
.container{max-width:1280px;margin:0 auto;padding:0 40px;}

/* ══ NAV ══ */
nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(250,250,248,0.96);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);color:var(--ink);}
.nav-inner{max-width:1480px;margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:40px;padding:22px 40px;}
.logo{font-family:'Archivo',sans-serif;font-size:22px;font-weight:800;letter-spacing:-.02em;color:inherit;text-decoration:none;}
.logo span{color:var(--accent);}
.nav-links{display:flex;gap:28px;list-style:none;justify-self:start;}
.nav-links a{text-decoration:none;color:inherit;font-size:13px;font-weight:500;opacity:.7;transition:opacity .2s;}
.nav-links a:hover,.nav-links a.active{opacity:1;}
.nav-links a.active{color:var(--accent);}
.nav-right{display:flex;gap:14px;align-items:center;}
.ghost-link{font-size:12px;opacity:.7;color:inherit;}
.cta-btn{font-family:'Archivo',sans-serif;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border:none;cursor:pointer;padding:12px 20px;background:var(--accent);color:#fff;font-size:11px;transition:.2s;}
.cta-btn:hover{background:#dd4934;}

/* ══ PAGE HERO ══ */
.page-hero{
  padding:160px 0 90px;
  background:var(--ink);color:#fff;
  position:relative;overflow:hidden;
}
.page-hero::before{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse 1200px 600px at 75% 25%, rgba(200,55,42,0.22), transparent 55%),
    radial-gradient(ellipse 800px 400px at 15% 85%, rgba(200,55,42,0.08), transparent 60%);
  pointer-events:none;
  z-index:0;
}
.page-hero .container{position:relative;z-index:2;}
.page-hero .breadcrumb{
  font-family:'Archivo',sans-serif;font-size:11px;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.5);
  margin-bottom:28px;
}
.page-hero .breadcrumb a{color:rgba(255,255,255,.5);transition:color .2s;}
.page-hero .breadcrumb a:hover{color:#fff;}
.page-hero .breadcrumb span{color:rgba(255,255,255,.9);}
.page-hero h1{
  font-family:'Archivo',sans-serif;font-size:clamp(48px,6.5vw,96px);
  font-weight:300;letter-spacing:-0.035em;line-height:.92;margin-bottom:24px;
}
.page-hero h1 strong{font-weight:800;}
.page-hero h1 .accent{color:var(--accent);font-style:italic;}
.page-hero p.sub{max-width:680px;font-size:18px;line-height:1.65;color:rgba(255,255,255,.78);}

/* ══ TOC (sticky jump nav) ══ */
.toc-bar{
  position:sticky;top:68px;z-index:50;
  background:var(--bg);border-bottom:1px solid var(--line);
  padding:16px 0;
}
.toc-inner{
  max-width:1280px;margin:0 auto;padding:0 40px;
  display:flex;gap:8px;flex-wrap:wrap;align-items:center;
}
.toc-inner .toc-label{
  font-family:'Archivo',sans-serif;font-size:10px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
  margin-right:8px;
}
.toc-btn{
  font-family:'Archivo',sans-serif;font-size:11px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;
  padding:9px 14px;border:1px solid var(--line);
  background:transparent;color:var(--muted);cursor:pointer;
  transition:.25s;text-decoration:none;display:inline-block;
}
.toc-btn:hover{border-color:var(--ink);color:var(--ink);}

/* ══ FAQ SECTIONS ══ */
.faq-page{padding:80px 0 100px; background:#111; color:#fff;}
.faq-group{margin-bottom:72px; scroll-margin-top:140px;}
.faq-group:last-child{margin-bottom:0;}
.faq-group-head{
  display:flex;align-items:baseline;gap:20px;
  margin-bottom:32px;padding-bottom:18px;
  border-bottom:1px solid #282828;
}
.faq-group-num{
  font-family:'Archivo',sans-serif;font-size:13px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--accent);
}
.faq-group-head h2{
  font-family:'Archivo',sans-serif;font-size:clamp(28px,3.2vw,42px);
  font-weight:800;letter-spacing:-.025em;line-height:1.05;color:#fff;
}
.faq-list{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.faq-item{
  background:#171717;border:1px solid #282828;padding:32px;
  transition:border-color .3s, transform .3s;
}
.faq-item:hover{border-color:var(--accent); transform:translateY(-2px);}
.faq-item h4{
  font-family:'Archivo',sans-serif;font-size:19px;font-weight:700;
  letter-spacing:-.015em;line-height:1.2;margin-bottom:14px;color:#fff;
}
.faq-item p{font-size:14px;color:#bcbcb7;line-height:1.75;}
.faq-item p strong{color:#fff;font-weight:600;}

/* ══ BOTTOM CTA ══ */
.bottom-cta{
  padding:100px 0;background:var(--bg-2);
  text-align:center;
}
.bottom-cta h2{
  font-family:'Archivo',sans-serif;font-size:clamp(40px,5vw,68px);
  font-weight:300;letter-spacing:-.03em;line-height:.95;margin-bottom:20px;
}
.bottom-cta h2 strong{font-weight:800;}
.bottom-cta p{font-size:17px;color:var(--muted);max-width:620px;margin:0 auto 36px;line-height:1.65;}
.cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.btn-dark{
  font-family:'Archivo',sans-serif;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;padding:18px 32px;background:var(--ink);
  color:#fff;font-size:12px;border:none;cursor:pointer;transition:.2s;
}
.btn-dark:hover{background:var(--accent);}
.btn-outline-dark{
  font-family:'Archivo',sans-serif;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;padding:18px 32px;background:transparent;
  color:var(--ink);font-size:12px;border:1px solid var(--ink);
  cursor:pointer;transition:.2s;display:inline-flex;align-items:center;gap:10px;
}
.btn-outline-dark:hover{background:var(--ink);color:#fff;}

/* ══ FOOTER ══ */
footer{background:#0a0a0a;color:#9a9a95;padding:80px 0 40px;}
.foot-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:60px;margin-bottom:60px;}
.foot-logo{font-family:'Archivo',sans-serif;font-size:24px;font-weight:800;color:#fff;letter-spacing:-.02em;margin-bottom:16px;}
.foot-logo span{color:var(--accent);}
.foot-desc{font-size:13px;line-height:1.7;max-width:340px;}
.foot-top h5{font-family:'Archivo',sans-serif;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#8d8d87;margin-bottom:18px;}
.foot-top ul{list-style:none;}
.foot-top li{margin-bottom:10px;}
.foot-top li a{color:#bcbcb7;font-size:13px;transition:color .2s;}
.foot-top li a:hover{color:#fff;}
.foot-bot{border-top:1px solid #1f1f1f;padding-top:28px;display:flex;justify-content:space-between;font-size:12px;color:#6b6b68;}
.foot-legal{padding-top:14px;font-size:11px;color:#8f8f89;display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:center;}
.foot-legal a{color:#8f8f89;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s;}
.foot-legal a:hover{border-bottom-color:#c8372a;color:#c8372a;}
.foot-legal .sep{opacity:.5;}


/* ══ WHATSAPP ══ */
.wa-btn{
  position:fixed;bottom:28px;right:28px;z-index:999;
  width:60px;height:60px;border-radius:50%;background:#25D366;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 20px rgba(37,211,102,0.4);
  transition:transform .3s;text-decoration:none;
}
.wa-btn:hover{transform:scale(1.1);}

/* ══ RESPONSIVE ══ */
@media(max-width:1000px){
  .faq-list{grid-template-columns:1fr;}
  .foot-top{grid-template-columns:1fr 1fr;gap:40px;}
}
@media(max-width:720px){
  .container{padding:0 24px;}
  .nav-links{display:none;}
  .nav-inner{grid-template-columns:auto auto;padding:18px 24px;}
  .page-hero{padding:120px 0 60px;}
  .faq-page{padding:48px 0 72px;}
  .faq-group{margin-bottom:56px;}
  .faq-item{padding:24px;}
  .foot-top{grid-template-columns:1fr;gap:32px;}
  .toc-bar{padding:12px 0;}
  .toc-inner{padding:0 24px;gap:6px;}
  .toc-btn{padding:7px 11px;font-size:10px;}
}

  /* ── Mobile hamburger menu ── */
  .nav-burger{
    display:none;
    background:none;border:none;cursor:pointer;
    padding:8px;width:40px;height:40px;
    flex-direction:column;gap:5px;justify-content:center;align-items:center;
    color:inherit;
  }
  .nav-burger span{
    display:block;height:2px;width:24px;background:currentColor;
    transition:transform .3s ease, opacity .3s ease;
  }
  .nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .nav-burger.open span:nth-child(2){opacity:0;}
  .nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

  @media(max-width:1100px){
    nav, nav#nav{
      background:rgba(250,250,248,.96) !important;
      backdrop-filter:blur(16px);
      border-bottom:1px solid var(--line);
      color:var(--ink) !important;
    }
    .nav-inner{grid-template-columns:auto 1fr auto;padding:18px 24px;gap:20px;}
    .nav-burger{display:flex;}
    .lang-btn{display:none;}
    .nav-links{
      display:flex !important;
      position:absolute;top:100%;left:0;right:0;
      background:var(--bg);
      border-top:1px solid var(--line);border-bottom:1px solid var(--line);
      flex-direction:column;gap:0;
      padding:0;margin:0;
      max-height:0;overflow:hidden;
      transition:max-height .35s ease;
    }
    .nav-links.open{max-height:520px;}
    .nav-links li{list-style:none;border-bottom:1px solid var(--line);}
    .nav-links li:last-child{border-bottom:none;}
    .nav-links a{
      display:block;padding:16px 24px;
      opacity:1 !important;color:var(--ink);
      font-size:14px;font-weight:500;
    }
  }


  /* Skip-to-content link for keyboard / screen reader users */
  .skip-link{
    position:absolute;
    top:-100px;
    left:8px;
    background:var(--ink);
    color:#fff;
    padding:12px 20px;
    text-decoration:none;
    font-size:14px;
    font-weight:600;
    border-radius:4px;
    z-index:9999;
    transition:top 0.2s;
  }
  .skip-link:focus{top:8px;outline:2px solid var(--accent);outline-offset:2px;}

/* ══ INSIGHTS PAGE ══ */
.ins-filters{padding:20px 0 32px;}
.filter-pills{display:flex;flex-wrap:wrap;gap:10px;}
.pill{
  font-family:'Inter',sans-serif;font-size:13px;font-weight:500;
  padding:9px 20px;border:1px solid var(--line);background:var(--bg);
  color:var(--ink);cursor:pointer;border-radius:100px;
  transition:all 0.15s;
}
.pill:hover{border-color:var(--ink);}
.pill.active{background:var(--ink);color:#fff;border-color:var(--ink);}

.ins-featured{padding:0 0 56px;}
.featured-card{
  display:grid;grid-template-columns:1.1fr 1fr;gap:0;
  background:var(--bg);border:1px solid var(--line);
  text-decoration:none;color:inherit;
  transition:transform 0.2s,box-shadow 0.2s;
}
.featured-card:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(0,0,0,0.06);}
.featured-img-slot{
  background:var(--bg-2);
  display:flex;align-items:center;justify-content:center;
  font-size:12px;color:var(--muted);
  text-transform:uppercase;letter-spacing:0.1em;
  min-height:380px;
}
.featured-body{padding:48px 56px;display:flex;flex-direction:column;gap:18px;justify-content:center;}
.featured-tag{font-family:'Archivo',sans-serif;font-size:11px;font-weight:700;color:var(--accent);letter-spacing:0.14em;text-transform:uppercase;}
.featured-card h2{font-family:'Archivo',sans-serif;font-size:32px;font-weight:700;line-height:1.2;letter-spacing:-0.018em;}
.featured-card p{font-size:15px;line-height:1.7;color:var(--muted);}
.featured-meta{display:flex;gap:12px;font-size:12px;color:var(--muted);font-weight:500;}

.ins-grid-section{padding:0 0 120px;}
.ins-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.ins-card{
  background:var(--bg);border:1px solid var(--line);
  display:flex;flex-direction:column;
  text-decoration:none;color:inherit;
  transition:transform 0.2s,box-shadow 0.2s;
}
.ins-card:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(0,0,0,0.06);}
.ins-img-slot{
  aspect-ratio:16/10;background:var(--bg-2);
  border-bottom:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;
  font-size:11px;color:var(--muted);
  text-transform:uppercase;letter-spacing:0.1em;
}
.ins-body{padding:24px 26px 28px;display:flex;flex-direction:column;gap:12px;flex:1;}
.ins-tag{font-family:'Archivo',sans-serif;font-size:10px;font-weight:700;color:var(--accent);letter-spacing:0.12em;text-transform:uppercase;}
.ins-card h3{font-family:'Archivo',sans-serif;font-size:18px;font-weight:700;letter-spacing:-0.012em;line-height:1.25;}
.ins-card p{font-size:13px;line-height:1.65;color:var(--muted);flex:1;}
.ins-meta{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:0.06em;font-weight:600;border-top:1px solid var(--line);padding-top:14px;}

.ins-cta-bottom{margin-top:48px;padding:24px 28px;background:var(--bg-2);text-align:center;font-size:14px;color:var(--muted);}
.ins-cta-bottom a{color:var(--accent);font-weight:600;text-decoration:underline;}

@media (max-width:980px){
  .ins-grid{grid-template-columns:repeat(2,1fr);}
  .featured-card{grid-template-columns:1fr;}
  .featured-img-slot{min-height:240px;}
  .featured-body{padding:32px 28px;}
  .featured-card h2{font-size:24px;}
}
@media (max-width:600px){
  .ins-grid{grid-template-columns:1fr;}
}

/* Reveal-on-scroll animation */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease;}
.reveal.in{opacity:1;transform:none;}
.reveal.delay-1{transition-delay:.08s;}
.reveal.delay-2{transition-delay:.16s;}
.reveal.delay-3{transition-delay:.24s;}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none;}
}

.ins-img-slot{
  padding:0 !important;
  overflow:hidden;
  transform:translateZ(0);
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
}
.ins-img-slot img{
  width:100%;height:100%;aspect-ratio:16/10;object-fit:cover;display:block;
  filter:grayscale(0.12);
  transform:translateZ(0) scale(1);
  transform-origin:center center;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  will-change:transform,filter;
  transition:transform 0.3s ease-out,filter 0.3s ease-out;
}
.ins-card:hover .ins-img-slot img{
  transform:translateZ(0) scale(1.04);
  filter:grayscale(0);
}
.featured-img-slot{padding:0 !important;}
.featured-img-slot img{
  width:100%;height:100%;min-height:380px;object-fit:cover;display:block;
  filter:grayscale(0.1);
}

/* ═══ Insights → Related products bridge (single-post template component) ═══ */
.rp-bridge{
  background:var(--bg-2);padding:80px 0;border-top:1px solid var(--line);
}
.rp-bridge-inner{max-width:1080px;margin:0 auto;padding:0 40px;}
.rp-bridge-head{text-align:center;max-width:580px;margin:0 auto 48px;}
.rp-bridge-head .label{justify-content:center;}
.rp-bridge-head h2{
  font-family:'Archivo',sans-serif;font-size:clamp(28px,3.6vw,42px);
  font-weight:800;letter-spacing:-.02em;line-height:1.1;
  margin-top:14px;color:var(--ink);
}
.rp-bridge-head p{
  font-size:15px;color:var(--muted);line-height:1.6;margin-top:14px;
}
.rp-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;
}
.rp-card{
  background:#fff;border:1px solid var(--line);
  display:flex;flex-direction:column;text-decoration:none;color:inherit;
  transition:border-color .25s ease,transform .35s ease;
}
.rp-card:hover{border-color:var(--ink);transform:translateY(-3px);}
.rp-card .rp-thumb{
  aspect-ratio:4/3;background:#eee;overflow:hidden;
}
.rp-card .rp-thumb img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .5s ease;
}
.rp-card:hover .rp-thumb img{transform:scale(1.04);}
.rp-card .rp-meta{padding:20px 22px 22px;}
.rp-card .rp-tag{
  font-family:'Archivo',sans-serif;font-size:10px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--accent);
  display:block;margin-bottom:8px;
}
.rp-card h4{
  font-family:'Archivo',sans-serif;font-size:15px;font-weight:700;
  color:var(--ink);margin-bottom:4px;line-height:1.3;
}
.rp-card .rp-moq{font-size:12px;color:var(--muted);}
.rp-bridge-cta{text-align:center;margin-top:36px;}
.rp-bridge-cta a{
  display:inline-block;padding:16px 28px;background:var(--ink);color:#fff;
  font-family:'Archivo',sans-serif;font-size:11px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;text-decoration:none;
}
.rp-bridge-cta a:hover{background:var(--accent);}
@media (max-width:780px){
  .rp-grid{grid-template-columns:1fr;gap:14px;}
  .rp-bridge{padding:56px 0;}
}



  /* ══ QUOTE DRAWER (shared component) ══ */
  .mqd-launcher {
    position:fixed;bottom:100px;right:28px;z-index:998;
    display:flex;align-items:center;gap:10px;
    padding:14px 20px 14px 18px;border-radius:50px;
    background:#0a0a0a;color:#fff;border:none;cursor:pointer;
    font-family:'Archivo',sans-serif;font-size:12px;font-weight:700;
    letter-spacing:.12em;text-transform:uppercase;
    box-shadow:0 6px 24px rgba(0,0,0,.25);
    transition:transform .25s ease, background .25s ease;
  }
  
  .mqd-launcher:hover {
    transform:translateY(-2px);background:#c8372a;
  }
  
  .mqd-launcher svg {
    flex-shrink:0;
  }
  
  .mqd-launcher .mqd-pulse {
    position:absolute;top:10px;right:10px;
    width:10px;height:10px;border-radius:50%;background:#c8372a;
  }
  
  .mqd-launcher .mqd-pulse::after {
    content:'';position:absolute;inset:0;border-radius:50%;background:#c8372a;
    animation:mqd-pulse 1.8s ease-out infinite;
  }
  
  @keyframes mqd-pulse {
    0%{transform:scale(1);opacity:.7;}
    100%{transform:scale(2.6);opacity:0;}
  }
  
  @media(max-width:720px) {
    .mqd-launcher{
      bottom:96px;right:20px;padding:12px 16px;font-size:11px;
    }
    .mqd-launcher span.mqd-label-long{display:none;}
  }
  
  .mqd-backdrop {
    position:fixed;inset:0;z-index:1000;background:rgba(10,10,10,.55);
    backdrop-filter:blur(4px);opacity:0;pointer-events:none;
    transition:opacity .35s ease;
  }
  
  .mqd-backdrop.mqd-open {
    opacity:1;pointer-events:auto;
  }
  
  .mqd-drawer {
    position:fixed;top:0;right:0;bottom:0;z-index:1001;
    width:480px;max-width:100vw;background:#fafaf8;
    transform:translateX(100%);transition:transform .4s cubic-bezier(.4,0,.2,1);
    display:flex;flex-direction:column;
    box-shadow:-12px 0 40px rgba(0,0,0,.2);
  }
  
  .mqd-drawer.mqd-open {
    transform:translateX(0);
  }
  
  .mqd-drawer-head {
    padding:28px 32px 20px;border-bottom:1px solid #dcdad3;
    display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  }
  
  .mqd-drawer-head h3 {
    font-family:'Archivo',sans-serif;font-size:24px;font-weight:800;
    letter-spacing:-.02em;line-height:1.15;color:#0a0a0a;margin:0 0 8px;
  }
  
  .mqd-drawer-head p {
    font-family:'Inter',sans-serif;font-size:13px;color:#6b6b68;
    line-height:1.55;margin:0;
  }
  
  .mqd-close {
    width:36px;height:36px;border-radius:50%;border:1px solid #dcdad3;
    background:#fff;cursor:pointer;display:flex;align-items:center;
    justify-content:center;flex-shrink:0;font-size:18px;color:#0a0a0a;
    transition:background .2s;
  }
  
  .mqd-close:hover {
    background:#f2f1ed;
  }
  
  .mqd-form {
    flex:1;overflow-y:auto;padding:24px 32px 32px;
  }
  
  .mqd-form .mqd-row {
    display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px;
  }
  
  .mqd-form .mqd-row.mqd-full {
    grid-template-columns:1fr;
  }
  
  .mqd-form label {
    font-family:'Archivo',sans-serif;font-size:10px;font-weight:700;
    letter-spacing:.12em;text-transform:uppercase;color:#6b6b68;
    display:block;margin-bottom:6px;
  }
  
  .mqd-form input,
  .mqd-form textarea,
  .mqd-form select {
    width:100%;padding:12px 14px;background:#fff;border:1px solid #dcdad3;
    font-family:'Inter',sans-serif;font-size:14px;color:#0a0a0a;
    border-radius:0;outline:none;transition:border-color .2s;
  }
  
  .mqd-form input:focus,
  .mqd-form textarea:focus,
  .mqd-form select:focus {
    border-color:#0a0a0a;
  }
  
  .mqd-form textarea {
    min-height:90px;resize:vertical;
  }
  
  .mqd-form .mqd-hint {
    font-size:11px;color:#9a9a95;margin-top:4px;
  }
  
  .mqd-form .mqd-submit {
    width:100%;padding:16px;margin-top:8px;background:#0a0a0a;color:#fff;
    border:none;font-family:'Archivo',sans-serif;font-size:12px;font-weight:700;
    letter-spacing:.14em;text-transform:uppercase;cursor:pointer;
    transition:background .2s;
  }
  
  .mqd-form .mqd-submit:hover {
    background:#c8372a;
  }
  
  .mqd-form .mqd-privacy {
    font-size:11px;color:#6b6b68;line-height:1.6;
    margin-top:14px;text-align:center;
  }
  
  .mqd-form .mqd-privacy strong {
    color:#0a0a0a;
  }
  
  .mqd-form .mqd-hp {
    position:absolute;left:-10000px;top:auto;
    width:1px;height:1px;overflow:hidden;
  }
  
  .mqd-trust-row {
    display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;
  }
  
  .mqd-trust-chip {
    font-family:'Archivo',sans-serif;font-size:9px;font-weight:700;
    letter-spacing:.1em;text-transform:uppercase;color:#6b6b68;
    padding:5px 10px;background:#f2f1ed;border:1px solid #e8e6df;
  }
  
  @media(max-width:520px) {
    .mqd-drawer{width:100vw;}
    .mqd-drawer-head{padding:22px 22px 16px;}
    .mqd-drawer-head h3{font-size:21px;}
    .mqd-form{padding:20px 22px 28px;}
    .mqd-form .mqd-row{grid-template-columns:1fr;}
  }
  
  body.mqd-locked {
    overflow:hidden;
  }

  /* ══ FILE UPLOAD (inquiry forms) ══ */
  .file-upload{
    margin-bottom:14px;padding:18px;
    border:2px dashed var(--line);background:#fff;
    text-align:center;cursor:pointer;transition:.2s;
    display:block;
  }
  .file-upload:hover{border-color:var(--accent);background:var(--bg-2);}
  .file-upload input[type=file]{display:none;}
  .file-upload .upload-icon{font-size:24px;margin-bottom:6px;}
  .file-upload .upload-text{
    font-family:'Archivo',sans-serif;font-size:12px;font-weight:600;
    letter-spacing:.08em;text-transform:uppercase;color:var(--ink);
    margin-bottom:4px;
  }
  .file-upload .upload-hint{font-size:11px;color:var(--muted);}
  .file-upload .upload-nda{
    font-size:11px;color:var(--accent);margin-top:10px;
    padding-top:10px;border-top:1px dashed var(--line);
    font-weight:600;letter-spacing:0.01em;line-height:1.5;
    max-width:380px;margin-left:auto;margin-right:auto;
  }
  .file-upload.has-file{border-color:var(--accent);border-style:solid;background:var(--bg-2);}
  .file-upload.has-file .upload-text{color:var(--accent);}

/* ═══ 全站按钮 shine sweep ═══ */
.btn-primary,.btn-secondary,.btn-dark,.cta-btn,.btn-light{
  position:relative; overflow:hidden; isolation:isolate;
  transition:background .4s ease, color .4s ease, transform .4s cubic-bezier(.25,.8,.25,1), border-color .4s ease;
}
.btn-primary::before,.btn-secondary::before,.btn-dark::before,.cta-btn::before,.btn-light::before{
  content:'';
  position:absolute;
  top:0; left:-100%;
  width:55%; height:100%;
  background:linear-gradient(100deg, transparent 0%, rgba(255,255,255,.28) 40%, rgba(255,255,255,.45) 50%, rgba(255,255,255,.28) 60%, transparent 100%);
  transform:skewX(-18deg);
  transition:left .7s cubic-bezier(.3,.7,.4,1);
  pointer-events:none;
  z-index:-1;
}
.btn-primary:hover::before,.btn-secondary:hover::before,
.btn-dark:hover::before,.cta-btn:hover::before,.btn-light:hover::before{left:160%;}
.btn-primary:hover,.btn-secondary:hover,.btn-dark:hover,.btn-light:hover{transform:translateY(-1px);}

  /* ══ CTA BRIDGE (before footer) ══ */
  .cta-bridge{
    position:relative;
    padding:110px 0 120px;
    background:var(--bg-2);
    overflow:hidden;
    border-top:1px solid var(--line);
  }
  .cta-bridge::before{
    content:'';
    position:absolute;
    top:0; left:0; right:0;
    height:3px;
    background:linear-gradient(90deg, transparent 0%, var(--accent) 25%, var(--accent) 75%, transparent 100%);
  }
  .cta-bridge::after{
    content:'';
    position:absolute;
    inset:0;
    background:
      radial-gradient(ellipse 800px 400px at 20% 100%, rgba(200,55,42,.05), transparent 60%),
      radial-gradient(ellipse 600px 300px at 85% 0%, rgba(200,55,42,.03), transparent 60%);
    pointer-events:none;
  }
  .cta-bridge .container{position:relative; z-index:2; max-width:1200px; margin:0 auto; padding:0 40px;}
  .cta-bridge-inner{
    display:grid;
    grid-template-columns:1.4fr 1fr;
    gap:80px;
    align-items:center;
  }
  .cta-bridge-label{
    display:inline-block;
    font-family:'Archivo',sans-serif;
    font-size:11px;
    font-weight:700;
    letter-spacing:.22em;
    text-transform:uppercase;
    color:var(--accent);
    padding-bottom:14px;
    border-bottom:1px solid rgba(200,55,42,.25);
    margin-bottom:22px;
  }
  .cta-bridge h2{
    font-family:'Archivo',sans-serif;
    font-size:clamp(32px, 4vw, 48px);
    font-weight:700;
    line-height:1.1;
    letter-spacing:-.02em;
    color:var(--ink);
    margin-bottom:18px;
  }
  .cta-bridge h2 strong{color:var(--accent); font-weight:700;}
  .cta-bridge-lead{
    font-size:15px;
    line-height:1.65;
    color:var(--muted);
    max-width:520px;
  }
  .cta-bridge-actions{
    display:flex;
    flex-direction:column;
    gap:14px;
    align-items:flex-start;
  }
  .cta-bridge-actions .btn-primary,
  .cta-bridge-actions .btn-secondary{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:18px 32px;
    font-family:'Archivo',sans-serif;
    font-size:13px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
    text-decoration:none;
    width:100%;
    justify-content:space-between;
    max-width:360px;
  }
  .cta-bridge-actions .btn-primary{
    background:var(--accent);
    color:#fff;
    border:1px solid var(--accent);
  }
  .cta-bridge-actions .btn-primary:hover{
    background:#a82d22;
    border-color:#a82d22;
  }
  .cta-bridge-actions .btn-secondary{
    background:transparent;
    color:var(--ink);
    border:1px solid var(--ink);
  }
  .cta-bridge-actions .btn-secondary:hover{
    background:var(--ink);
    color:#fff;
  }
  .cta-bridge-meta{
    margin-top:18px;
    font-size:12px;
    color:var(--muted-2);
    letter-spacing:.03em;
  }
  .cta-bridge-meta strong{color:var(--ink); font-weight:600;}
  @media(max-width:880px){
    .cta-bridge{padding:72px 0 80px;}
    .cta-bridge-inner{grid-template-columns:1fr; gap:40px;}
    .cta-bridge-actions .btn-primary,
    .cta-bridge-actions .btn-secondary{max-width:100%;}
  }



/* ═══ INSIGHTS PAGE MOBILE FINE-TUNE ═══ */
@media(max-width:720px){
  .ins-featured{grid-template-columns:1fr !important; gap:0 !important;}
  .ins-featured .ins-img-slot{height:220px !important;}
  
  .ins-grid{grid-template-columns:1fr !important; gap:20px !important;}
  .ins-card .ins-img-slot{height:200px !important;}
  .ins-card .ins-body{padding:20px 18px !important;}
  .ins-card h3{font-size:18px !important;}
  .ins-tag{font-size:9px !important;}
  
  .rp-grid{grid-template-columns:1fr !important; gap:14px !important;}
  .rp-card{padding:0 !important;}
  
  .ins-filters{gap:8px !important; flex-wrap:wrap !important;}
}


/* ═══════════════════════════════════════════════════════════════
   MOBILE SAFETY NET — declared last to override any earlier rules.
═══════════════════════════════════════════════════════════════ */
@media(max-width:1100px){
  /* Section headings */
  .sec-head{grid-template-columns:1fr !important; gap:28px !important; margin-bottom:48px !important;}
  .sec-head h2{font-size:clamp(36px, 7vw, 56px) !important;}
  .sec-head p{max-width:100% !important;}
  
  /* Common grids → 2 col */
  .caps-grid, .service-grid, .faq-grid, .trust-grid, .cases-grid, 
  .cert-band-grid, .cs-aggregate-inner, .qff-grid,
  .product-grid, .related-grid, .team-grid, .factory-grid, .fn-grid{
    grid-template-columns:1fr 1fr !important;
  }
  /* Common grids → 1 col */
  .cats-grid, .craft-grid, .fac-grid, .proc-grid, .detail-grid, .cs-grid,
  .svc-visual-row, .how-grid, .options-grid, .ins-grid, .rp-grid{
    grid-template-columns:1fr !important;
  }
  /* Cat card resets */
  .cat-1,.cat-2,.cat-3,.cat-4,.cat-5,.cat-6{grid-column:span 1 !important;}
  .craft-1,.craft-2,.craft-3,.craft-4,.craft-5,.craft-6{grid-column:span 1 !important;}
  
  /* Contact / hero */
  .contact-inner{grid-template-columns:1fr !important; gap:40px !important;}
  
  /* Footer */
  .foot-top{grid-template-columns:1fr 1fr !important;}
  
  /* Container */
  .nav-inner, .container{padding-left:24px !important; padding-right:24px !important;}
  /* nav-links: mobile menu uses max-height toggle, not display:none */
  
  /* Page hero headlines */
  .page-hero h1, .hero h1{font-size:clamp(36px, 9vw, 64px) !important;}
  .page-hero .hero-lead, .page-hero p.sub{max-width:100% !important;}
}

@media(max-width:720px){
  /* ═══ GLOBAL ═══ */
  section{padding:64px 0 !important;}
  .container{padding-left:18px !important; padding-right:18px !important;}
  .sec-head{margin-bottom:28px !important; gap:14px !important;}
  .sec-head h2{font-size:32px !important; line-height:1.05 !important;}
  .sec-head p{font-size:14px !important; line-height:1.6 !important;}
  .label, .label-light{font-size:10px !important;}
  
  /* ═══ PAGE HERO ═══ */
  .page-hero{padding:100px 0 64px !important; min-height:auto !important;}
  .page-hero h1{font-size:clamp(34px, 10vw, 48px) !important; line-height:1.0 !important;}
  .page-hero p.sub{font-size:14px !important; line-height:1.55 !important;}
  .page-hero .breadcrumb{font-size:10px !important;}
  
  /* ═══ GRIDS — full-size cards → 1 col ═══ */
  .caps-grid, .service-grid, .cases-grid, .trust-grid, .cs-grid,
  .svc-visual-row, .how-grid, .ins-grid, .rp-grid{
    grid-template-columns:1fr !important;
  }
  /* Small tiles stay 2x2 */
  .faq-grid, .cert-band-grid, .team-grid, .factory-grid, .fn-grid,
  .foot-top, .cs-aggregate-inner, .qff-grid,
  .product-grid, .related-grid{
    grid-template-columns:1fr 1fr !important;
  }
  
  /* ═══ CARDS — shorter ═══ */
  .cap-cell, .caps-card{min-height:auto !important; padding:24px 22px !important;}
  .cap-cell h3, .caps-card h3{font-size:22px !important;}
  .cap-cell p, .caps-card p{font-size:14px !important;}
  .craft-cell{min-height:auto !important;}
  .craft-info h4{font-size:20px !important;}
  .fac-card h3{font-size:20px !important;}
  .proc-step{
    min-height:auto !important;
    padding:28px 22px 32px !important;
    border-right:none !important; border-bottom:1px solid #292929 !important;
  }
  .proc-step h4{font-size:19px !important;}
  .proc-step p{font-size:14px !important;}
  
  /* ═══ CS-CARD (case-studies page) ═══ */
  .cs-card .cs-body{padding:24px 20px 20px !important;}
  .cs-card h2{font-size:20px !important;}
  .cs-card p{font-size:14px !important;}
  
  /* ═══ FAQ ═══ */
  .faq-item{padding:22px 20px !important;}
  .faq-item h4{font-size:18px !important;}
  .faq-item p{font-size:14px !important;}
  
  /* ═══ CTA BRIDGE ═══ */
  .cta-bridge{padding:60px 0 !important;}
  .cta-bridge-inner{grid-template-columns:1fr !important; gap:32px !important;}
  .cta-bridge h2{font-size:28px !important;}
  .cta-bridge-lead{font-size:14px !important;}
  
  /* ═══ FLOATING BUTTONS — slimmer ═══ */
  .mqd-launcher{
    padding:10px 14px !important; font-size:11px !important;
    letter-spacing:0.08em !important; gap:6px !important;
    box-shadow:0 2px 12px rgba(0,0,0,0.18) !important;
  }
  .mqd-launcher svg{width:14px !important; height:14px !important;}
  .mqd-launcher .mqd-label-long{display:none !important;}
  .mqd-launcher .mqd-pulse{width:5px !important; height:5px !important;}
  .wa-float{width:48px !important; height:48px !important;}
  .wa-float svg{width:20px !important; height:20px !important;}
  
  /* ═══ FOOTER — compact ═══ */
  .foot-top{gap:28px 20px !important; padding-bottom:36px !important;}
  .foot-top > div:first-child{grid-column:1 / -1;}
  .foot-top h5{font-size:10px !important; margin-bottom:12px !important;}
  .foot-top a, .foot-top li{font-size:12px !important;}
  .foot-desc{font-size:13px !important;}
  .foot-addr{font-size:12px !important;}
  .foot-bot{flex-direction:column !important; gap:8px !important; font-size:10px !important;}
  
  /* ═══ FORMS — mobile friendly ═══ */
  .form-row{grid-template-columns:1fr !important;}
  .contact-form{padding:0 !important;}
}


/* ═══ UNIVERSAL CARD HOVER (subtle lift + accent glow) ═══ */
.how-cell, .svc-card, .team-card, .factory-card, .facility-card,
.proc-step, .cert-band-card, .faq-item, .svc-visual-card,
.ins-card, .qff-card {
  transition: transform .45s cubic-bezier(.25,.8,.25,1),
              box-shadow .45s cubic-bezier(.25,.8,.25,1),
              border-color .35s ease !important;
}
.how-cell:hover, .svc-card:hover, .team-card:hover, 
.factory-card:hover, .cert-band-card:hover,
.ins-card:hover, .qff-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 36px -12px rgba(0,0,0,.08),
              0 4px 8px -4px rgba(200,55,42,.06);
}
/* Cards with top accent border: hover intensifies it */
.how-cell:hover, .svc-card:hover {
  border-top-color: var(--accent) !important;
  box-shadow: 0 14px 36px -12px rgba(0,0,0,.1),
              0 -2px 0 0 var(--accent);
}
/* Number turns accent color on hover */
.how-cell:hover .how-num,
.svc-card:hover .svc-num {
  color: var(--accent);
  transform: translateX(4px);
  transition: transform .35s ease, color .35s ease;
}
/* Process steps: subtle left-border accent on hover */
.proc-step:hover {
  background: rgba(200,55,42,.02);
}
.proc-step:hover .time {
  color: var(--accent) !important;
}
/* FAQ items already have hover, just enhance shadow */
.faq-item:hover {
  box-shadow: 0 8px 24px -8px rgba(0,0,0,.06);
}

/* Safari hover guard: keep Insights archive card/image transforms explicit and non-accumulative. */
.ins-grid-section .ins-card {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform-style: flat;
  will-change: transform;
}
.ins-grid-section .ins-card:hover {
  -webkit-transform: translate3d(0,-4px,0);
  transform: translate3d(0,-4px,0);
}
.ins-grid-section .ins-img-slot {
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.ins-grid-section .ins-img-slot img {
  -webkit-transform: translate3d(0,0,0) scale(1);
  transform: translate3d(0,0,0) scale(1);
  -webkit-transform-origin: center center;
  transform-origin: center center;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
.ins-grid-section .ins-card:hover .ins-img-slot img {
  -webkit-transform: translate3d(0,0,0) scale(1.04);
  transform: translate3d(0,0,0) scale(1.04);
}


/* YMCC source: ymcs-visual-polish-css-css | https://iyoumega.com/wp-content/plugins/youmega-capa-service-visual-polish-v2026.07.04.1/assets/ymcs-visual-polish.css?ver=2026.07.28.1 */
/* Restore the floating quote / WhatsApp launcher to the smaller production footprint. */
    .mqd-launcher,
    .youmega-floating-quote-pill {
      position: fixed !important;
      right: 24px !important;
      bottom: 88px !important;
      z-index: 1001 !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      gap: 13px !important;
      width: auto !important;
      min-width: 0 !important;
      height: 54px !important;
      min-height: 0 !important;
      padding: 0 22px !important;
      border: 0 !important;
      border-radius: 999px !important;
      background: rgba(5,5,5,.94) !important;
      color: #fff !important;
      font-family: Archivo, Arial, sans-serif !important;
      font-size: 12px !important;
      font-weight: 800 !important;
      letter-spacing: .14em !important;
      line-height: 1 !important;
      text-transform: uppercase !important;
      text-decoration: none !important;
      box-shadow: 0 18px 44px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.06) !important;
      -webkit-backdrop-filter: blur(10px) !important;
      backdrop-filter: blur(10px) !important;
      overflow: visible !important;
    }
    .mqd-launcher:hover,
    .mqd-launcher:focus,
    .youmega-floating-quote-pill:hover,
    .youmega-floating-quote-pill:focus {
      transform: translateY(-2px) !important;
      background: #050505 !important;
      outline: 0 !important;
    }
    .youmega-floating-quote-pill:before {
      content: "" !important;
      display: inline-block !important;
      width: 19px !important;
      height: 15px !important;
      border: 2px solid currentColor !important;
      border-radius: 3px !important;
      box-sizing: border-box !important;
      clip-path: polygon(0 0,100% 0,100% 74%,38% 74%,20% 100%,20% 74%,0 74%) !important;
      flex: 0 0 auto !important;
    }
    .youmega-floating-quote-pill:after {
      content: "" !important;
      position: absolute !important;
      top: 9px !important;
      right: 15px !important;
      width: 10px !important;
      height: 10px !important;
      border-radius: 50% !important;
      background: #d84338 !important;
      box-shadow: 0 0 0 8px rgba(216,67,56,.08) !important;
    }
    .youmega-floating-whatsapp,
    .whatsapp-float.wa-btn,
    .whatsapp-float.wa-float {
      position: fixed !important;
      right: 24px !important;
      bottom: 22px !important;
      z-index: 1002 !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      width: 54px !important;
      height: 54px !important;
      min-width: 54px !important;
      min-height: 54px !important;
      border-radius: 999px !important;
      background: #24d366 !important;
      color: #fff !important;
      text-decoration: none !important;
      box-shadow: 0 18px 44px rgba(37,211,102,.3) !important;
      font-size: 0 !important;
      line-height: 1 !important;
    }
    .youmega-floating-whatsapp:before {
      width: 31px !important;
      height: 31px !important;
      background-size: contain !important;
    }
    .whatsapp-float.wa-btn svg,
    .whatsapp-float.wa-float svg {
      width: 30px !important;
      height: 30px !important;
    }

    /* Compact glass menu: keep all initial server-rendered links intact, only refine the panel. */
    @media (min-width: 881px) {
      nav#nav .ymwm-mega {
        width: min(500px, calc(100vw - 32px)) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: min(58vh, 460px) !important;
        overflow: auto !important;
        padding: 12px !important;
        border-radius: 12px !important;
        transform: translateX(-18%) translateY(6px) !important;
        background: linear-gradient(145deg, rgba(18,18,18,.70), rgba(22,18,16,.54)) !important;
        -webkit-backdrop-filter: blur(14px) saturate(1.08) !important;
        backdrop-filter: blur(14px) saturate(1.08) !important;
        box-shadow: 0 22px 68px rgba(0,0,0,.34) !important;
      }
      nav#nav .ymwm-mega:before,
      nav#nav .ymwm-mega:after {
        content: none !important;
        display: none !important;
      }
      nav#nav .ymwm-menu-item:hover .ymwm-mega,
      nav#nav .ymwm-menu-item:focus-within .ymwm-mega {
        transform: translateX(-18%) translateY(0) !important;
      }
      nav#nav .ymwm-mega-inner {
        display: grid !important;
        grid-template-columns: 1fr !important;
        align-content: start !important;
        gap: 8px !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
      }
      nav#nav .ymwm-group {
        display: grid !important;
        grid-template-columns: 108px minmax(0, 1fr) !important;
        align-items: start !important;
        gap: 8px !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
      }
      nav#nav .ymwm-group h3 {
        margin: 5px 0 0 !important;
        font-size: 10px !important;
        line-height: 1.2 !important;
        letter-spacing: .18em !important;
      }
      nav#nav .ymwm-group ul {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 5px !important;
        margin: 0 !important;
        padding: 0 !important;
      }
      nav#nav .ymwm-group li {
        margin: 0 !important;
      }
      nav#nav .ymwm-group a {
        min-height: 0 !important;
        padding: 5px 8px !important;
        border-radius: 6px !important;
        font-size: 11px !important;
        line-height: 1.14 !important;
        white-space: nowrap !important;
      }
      nav#nav .ymwm-cta {
        display: inline-flex !important;
        width: auto !important;
        margin-top: 9px !important;
        padding: 9px 11px !important;
        border-radius: 7px !important;
        font-size: 10px !important;
      }
    }

    /* Capabilities / Services: preserve the live ymgeo-b1 text and schema, polish layout only. */
    .ymgeo-b1 {
      --ym-red: #c8372a;
      --ym-ink: #111;
      --ym-paper: #f3efe8;
      --ym-muted: #7a736a;
      --ym-dark: #050505;
      --ym-line: rgba(17,17,17,.14);
      background: var(--ym-paper) !important;
      color: var(--ym-ink) !important;
      overflow: hidden !important;
    }
    .ymgeo-b1 .wrap {
      width: min(100% - 72px, 1220px) !important;
      margin: 0 auto !important;
    }
    .ymgeo-b1 section {
      padding: clamp(58px, 7vw, 92px) 0 !important;
    }
    .ymgeo-b1 .dark {
      background: var(--ym-dark) !important;
      color: #fff !important;
    }
    .ymgeo-b1 .kicker,
    .ymgeo-b1 .updated {
      color: var(--ym-red) !important;
      font-family: Archivo, Arial, sans-serif !important;
      font-size: 12px !important;
      font-weight: 900 !important;
      letter-spacing: .15em !important;
      text-transform: uppercase !important;
    }
    .ymgeo-b1 h2 {
      max-width: 980px !important;
      margin: 0 0 18px !important;
      font-family: Archivo, Arial, sans-serif !important;
      font-size: clamp(34px, 4.4vw, 62px) !important;
      line-height: 1 !important;
      letter-spacing: 0 !important;
      font-weight: 950 !important;
    }
    .ymgeo-b1 h3 {
      font-family: Archivo, Arial, sans-serif !important;
      font-size: clamp(20px, 2vw, 28px) !important;
      line-height: 1.1 !important;
      font-weight: 950 !important;
      letter-spacing: 0 !important;
    }
    .ymgeo-b1 p,
    .ymgeo-b1 dd,
    .ymgeo-b1 li {
      color: var(--ym-muted) !important;
      font-size: 16px !important;
      line-height: 1.66 !important;
    }
    .ymgeo-b1 .dark p,
    .ymgeo-b1 .dark dd,
    .ymgeo-b1 .dark li {
      color: rgba(255,255,255,.74) !important;
    }
    .ymgeo-b1 .answer {
      max-width: 900px !important;
    }
    .ymgeo-b1 .grid {
      display: grid !important;
      grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr) !important;
      gap: 28px !important;
      align-items: stretch !important;
    }
    .ymgeo-b1 .grid-3 {
      gap: 16px !important;
    }
    .ymgeo-b1 .card {
      border: 1px solid rgba(255,255,255,.14) !important;
      background: #111 !important;
      color: #fff !important;
      padding: clamp(22px, 3vw, 34px) !important;
    }
    .ymgeo-b1 section:not(.dark) .card,
    .ymgeo-b1 section:not(.dark) .result {
      border-color: var(--ym-line) !important;
      background: #fff !important;
      color: #111 !important;
    }
    .ymgeo-b1 .pillrow {
      display: flex !important;
      flex-wrap: wrap !important;
      gap: 10px !important;
    }
    .ymgeo-b1 button,
    .ymgeo-b1 .pill {
      min-height: 46px !important;
      border: 1px solid rgba(255,255,255,.16) !important;
      background: #f7f3ec !important;
      color: #111 !important;
      padding: 11px 15px !important;
      font-family: Archivo, Arial, sans-serif !important;
      font-size: 12px !important;
      font-weight: 900 !important;
      letter-spacing: .08em !important;
      text-transform: uppercase !important;
      transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease !important;
    }
    .ymgeo-b1 button:hover,
    .ymgeo-b1 .pill:hover {
      transform: translateY(-2px) !important;
      border-color: var(--ym-red) !important;
    }
    .ymgeo-b1 button[aria-pressed="true"] {
      border-color: var(--ym-red) !important;
      box-shadow: inset 0 0 0 2px var(--ym-red) !important;
      background: #fff !important;
    }
    .ymgeo-b1 button[aria-pressed="true"] h3,
    .ymgeo-b1 button[aria-pressed="true"] p {
      color: #111 !important;
    }
    .ymgeo-b1 .dark button:not([aria-pressed="true"]) h3,
    .ymgeo-b1 .dark button:not([aria-pressed="true"]) p {
      color: rgba(255,255,255,.86) !important;
    }
    .ymgeo-b1 .result {
      display: flex !important;
      flex-direction: column !important;
      justify-content: center !important;
      min-height: 260px !important;
      border-left: 6px solid var(--ym-red) !important;
      background: #fff !important;
      color: #111 !important;
      padding: clamp(28px, 4vw, 52px) !important;
    }
    .ymgeo-b1#ymgeo-b1-capabilities .result {
      display: grid !important;
      grid-template-columns: minmax(0, 1fr) minmax(210px, .78fr) !important;
      gap: clamp(20px, 3vw, 36px) !important;
      align-items: stretch !important;
      overflow: hidden !important;
    }
    .ymgeo-b1#ymgeo-b1-capabilities .result h3,
    .ymgeo-b1#ymgeo-b1-capabilities .result p {
      grid-column: 1 !important;
    }
    .ymgeo-b1#ymgeo-b1-capabilities .result h3 {
      align-self: end !important;
      margin-bottom: 10px !important;
    }
    .ymgeo-b1#ymgeo-b1-capabilities .result p {
      align-self: start !important;
      margin-bottom: 0 !important;
    }
    .ymcs-cap-media,
    .ymcs-service-media {
      position: relative !important;
      overflow: hidden !important;
      background: #111 !important;
      border: 1px solid rgba(17,17,17,.12) !important;
      margin: 0 !important;
    }
    .ymgeo-b1#ymgeo-b1-capabilities .ymcs-cap-media {
      grid-column: 2 !important;
      grid-row: 1 / span 2 !important;
      min-height: 250px !important;
    }
    .ymcs-cap-media img,
    .ymcs-service-media img,
    .ymcs-route-thumb img {
      width: 100% !important;
      height: 100% !important;
      object-fit: cover !important;
      display: block !important;
      transition: transform .55s ease, opacity .18s ease !important;
    }
    .ymcs-cap-media:hover img,
    .ymcs-service-media:hover img {
      transform: scale(1.04) !important;
    }
    .ymcs-route-thumb {
      display: block !important;
      width: 96px !important;
      height: 64px !important;
      flex: 0 0 96px !important;
      overflow: hidden !important;
      background: #111 !important;
      border: 1px solid rgba(255,255,255,.12) !important;
    }
    .ymgeo-b1#ymgeo-b1-services .ymgeo-route {
      display: grid !important;
      grid-template-columns: minmax(0, 1fr) 96px !important;
      gap: 12px !important;
      align-items: center !important;
      text-align: left !important;
    }
    .ymgeo-b1#ymgeo-b1-services #ymgeo-route-answer {
      display: grid !important;
      grid-template-columns: minmax(0, 1fr) minmax(220px, .78fr) !important;
      gap: clamp(18px, 3vw, 34px) !important;
      align-items: stretch !important;
      overflow: hidden !important;
    }
    .ymgeo-b1#ymgeo-b1-services #ymgeo-route-answer h3,
    .ymgeo-b1#ymgeo-b1-services #ymgeo-route-answer p {
      grid-column: 1 !important;
    }
    .ymgeo-b1#ymgeo-b1-services .ymcs-service-media {
      grid-column: 2 !important;
      grid-row: 1 / span 2 !important;
      min-height: 210px !important;
    }
    .ymgeo-b1 table {
      border-collapse: collapse !important;
      box-shadow: 0 16px 44px rgba(0,0,0,.08) !important;
    }
    .ymgeo-b1 th {
      background: #f7f3ec !important;
    }
    .ymgeo-b1 .dark table {
      box-shadow: none !important;
    }
    .ymgeo-b1 .link-list {
      gap: 10px !important;
    }
    .ymgeo-b1 .link-list a {
      min-height: 42px !important;
      background: #fff !important;
      color: #111 !important;
      transition: border-color .18s ease, transform .18s ease !important;
    }
    .ymgeo-b1 .link-list a:hover {
      border-color: var(--ym-red) !important;
      transform: translateY(-2px) !important;
    }
    .ymgeo-b1 .sr-static {
      border-top: 1px solid rgba(0,0,0,.13) !important;
      margin-top: 30px !important;
      padding-top: 26px !important;
    }
    .ymgeo-b1 .dark .sr-static {
      border-top-color: rgba(255,255,255,.14) !important;
    }
    .ymgeo-b1-faq .card {
      margin-bottom: 10px !important;
      background: #111 !important;
      border-color: rgba(255,255,255,.14) !important;
    }
    .ymgeo-b1 .updated {
      display: inline-grid !important;
      border: 1px solid rgba(255,255,255,.12) !important;
      border-left: 4px solid var(--ym-red) !important;
      background: #111 !important;
      color: #f5efe7 !important;
      padding: 12px 16px !important;
      margin-top: 0 !important;
    }
    .ymgeo-b1#ymgeo-b1-services .grid:first-of-type {
      grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
    .ymgeo-b1#ymgeo-b1-services .grid:first-of-type .card {
      cursor: pointer !important;
    }
    .ymgeo-b1#ymgeo-b1-services .result {
      margin-top: 20px !important;
      min-height: 200px !important;
    }
    .ymgeo-b1#ymgeo-b1-services .step-buttons {
      grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
    }
    .ymgeo-b1#ymgeo-b1-services .step-buttons button {
      min-height: 54px !important;
      padding: 10px !important;
      white-space: normal !important;
      line-height: 1.15 !important;
    }

    @media (max-width: 900px) {
      .mqd-launcher,
      .youmega-floating-quote-pill {
        right: 16px !important;
        bottom: 70px !important;
        width: 46px !important;
        height: 46px !important;
        min-width: 46px !important;
        padding: 0 !important;
        border-radius: 999px !important;
        font-size: 0 !important;
        gap: 0 !important;
      }
      .youmega-floating-quote-pill:before {
        width: 18px !important;
        height: 14px !important;
      }
      .youmega-floating-quote-pill:after,
      .mqd-launcher .mqd-pulse {
        display: none !important;
      }
      .youmega-floating-whatsapp,
      .whatsapp-float.wa-btn,
      .whatsapp-float.wa-float {
        right: 16px !important;
        bottom: 12px !important;
        width: 46px !important;
        height: 46px !important;
        min-width: 46px !important;
        min-height: 46px !important;
      }
      .youmega-floating-whatsapp:before,
      .whatsapp-float.wa-btn svg,
      .whatsapp-float.wa-float svg {
        width: 27px !important;
        height: 27px !important;
      }
      .ymgeo-b1 .wrap {
        width: min(100% - 32px, 1220px) !important;
      }
      .ymgeo-b1 .grid,
      .ymgeo-b1 .grid-3,
      .ymgeo-b1#ymgeo-b1-services .grid:first-of-type,
      .ymgeo-b1 .link-list {
        grid-template-columns: 1fr !important;
      }
      .ymgeo-b1 .card {
        padding: 22px !important;
      }
      .ymgeo-b1 .pillrow {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      }
      .ymgeo-b1 button,
      .ymgeo-b1 .pill {
        width: 100% !important;
        min-height: 44px !important;
        padding: 10px 12px !important;
        font-size: 12px !important;
        white-space: normal !important;
        line-height: 1.12 !important;
      }
      .ymgeo-b1 .result {
        min-height: 0 !important;
        padding: 24px !important;
      }
      .ymgeo-b1#ymgeo-b1-capabilities .result,
      .ymgeo-b1#ymgeo-b1-services #ymgeo-route-answer {
        grid-template-columns: 1fr !important;
      }
      .ymgeo-b1#ymgeo-b1-capabilities .ymcs-cap-media,
      .ymgeo-b1#ymgeo-b1-services .ymcs-service-media {
        grid-column: 1 !important;
        grid-row: auto !important;
        min-height: 220px !important;
      }
      .ymgeo-b1#ymgeo-b1-services .ymgeo-route {
        grid-template-columns: minmax(0, 1fr) 72px !important;
      }
      .ymcs-route-thumb {
        width: 72px !important;
        height: 56px !important;
        flex-basis: 72px !important;
      }
      .ymgeo-b1 table {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: visible !important;
      }
      .ymgeo-b1#ymgeo-b1-services .step-buttons {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      }
    }

    /* v4 regression guard: restore the older compact launcher feel and remove the odd red halo. */
    .mqd-launcher .mqd-pulse,
    .youmega-floating-quote-pill:after {
      width: 8px !important;
      height: 8px !important;
      top: 10px !important;
      right: 14px !important;
      background: #d84338 !important;
      box-shadow: none !important;
      opacity: .95 !important;
    }
    .mqd-launcher svg {
      display: block !important;
      width: 20px !important;
      height: 20px !important;
      color: #fff !important;
      stroke: currentColor !important;
      flex: 0 0 auto !important;
      margin: 0 !important;
    }
    .mqd-launcher span,
    .mqd-launcher .mqd-label-long {
      display: inline !important;
      color: #fff !important;
      white-space: nowrap !important;
    }
    .mqd-launcher .mqd-pulse {
      position: absolute !important;
      border-radius: 50% !important;
      animation: none !important;
    }
    .youmega-floating-quote-pill:before {
      border: 0 !important;
      clip-path: none !important;
      width: 20px !important;
      height: 20px !important;
      background-repeat: no-repeat !important;
      background-position: center !important;
      background-size: contain !important;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a4 4 0 0 1-4 4H8l-5 3V7a4 4 0 0 1 4-4h10a4 4 0 0 1 4 4z'/%3E%3C/svg%3E") !important;
    }
    .youmega-floating-whatsapp > * {
      display: none !important;
    }
    .youmega-floating-whatsapp:before {
      display: block !important;
      flex: 0 0 auto !important;
    }
    .youmega-floating-whatsapp[data-ymcs-hidden],
    .whatsapp-float[data-ymcs-hidden],
    .mqd-launcher[data-ymcs-hidden],
    .youmega-floating-quote-pill[data-ymcs-hidden] {
      display: none !important;
    }

    /* Keep the Products proof bench poster visible while a clicked video is buffering. */
    .ymfpb-stage {
      background-color: #141210 !important;
      background-image: url("https://iyoumega.com/wp-content/uploads/2026/07/youmega-fabric-test-poster.webp") !important;
      background-position: center !important;
      background-size: cover !important;
    }
    .ymfpb-stage .ymfpb-vid {
      transition: opacity .16s ease !important;
    }
    .ymfpb-stage.ymcs-video-loading .ymfpb-vid,
    .ymfpb-stage:not(.ymcs-video-ready) .ymfpb-vid:not([src]) {
      opacity: 0 !important;
    }
    .ymfpb-stage.ymcs-video-ready .ymfpb-vid {
      opacity: 1 !important;
    }

    @media (max-width: 880px) {
      nav#nav .nav-links,
      nav#nav #navLinks {
        max-height: calc(100dvh - 104px) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior: contain !important;
      }
      nav#nav .ymwm-menu-item {
        display: block !important;
        align-items: stretch !important;
      }
      nav#nav .ymwm-menu-item:after {
        display: none !important;
      }
      nav#nav .ymwm-trigger {
        width: 100% !important;
        text-align: left !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
      }
      nav#nav .ymwm-menu-item .ymwm-mega {
        display: none !important;
        max-height: 0 !important;
        overflow: hidden !important;
        padding: 0 !important;
        border: 0 !important;
        box-shadow: none !important;
      }
      nav#nav .ymwm-menu-item.is-open .ymwm-mega {
        position: static !important;
        display: block !important;
        width: auto !important;
        max-width: none !important;
        max-height: min(46vh, 360px) !important;
        overflow-y: auto !important;
        margin: 0 !important;
        padding: 16px 18px 18px !important;
        border: 1px solid rgba(17,17,17,.08) !important;
        border-radius: 10px !important;
        background: rgba(255,255,255,.92) !important;
        color: #111 !important;
        transform: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        -webkit-backdrop-filter: blur(10px) saturate(1.04) !important;
        backdrop-filter: blur(10px) saturate(1.04) !important;
      }
      nav#nav .ymwm-menu-item.is-open .ymwm-trigger span {
        transform: rotate(180deg) !important;
      }
      nav#nav .ymwm-menu-item.is-open .ymwm-mega-inner {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
      }
      nav#nav .ymwm-menu-item.is-open .ymwm-group h3 {
        color: #c8372a !important;
      }
      nav#nav .ymwm-menu-item.is-open .ymwm-group a {
        color: #111 !important;
        background: #f8f6f1 !important;
        border-color: rgba(17,17,17,.12) !important;
        min-height: 38px !important;
      }
      .mqd-launcher,
      .youmega-floating-quote-pill {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        right: 16px !important;
        bottom: 68px !important;
        padding: 0 !important;
      }
      .mqd-launcher svg {
        width: 20px !important;
        height: 20px !important;
      }
      .mqd-launcher span,
      .mqd-launcher .mqd-label-long {
        display: none !important;
      }
      .youmega-floating-quote-pill:after,
      .mqd-launcher .mqd-pulse {
        display: none !important;
      }
      .youmega-floating-whatsapp,
      .whatsapp-float.wa-btn,
      .whatsapp-float.wa-float {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        right: 16px !important;
        bottom: 12px !important;
      }
      .youmega-floating-whatsapp:before,
      .whatsapp-float.wa-btn svg,
      .whatsapp-float.wa-float svg {
        width: 26px !important;
        height: 26px !important;
      }
      main table,
      article table,
      .entry-content table,
      .page-content table,
      .wp-block-table table,
      .wp-block-table,
      .ymgeo-tablewrap,
      .ymgeo-comparison,
      .ymgeo-b1 table {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        table-layout: auto !important;
        overflow: visible !important;
        border-collapse: separate !important;
        border-spacing: 0 !important;
      }
      .wp-block-table,
      .ymgeo-tablewrap,
      .ymgeo-comparison {
        overflow: visible !important;
      }
      main table thead,
      article table thead,
      .entry-content table thead,
      .page-content table thead,
      .wp-block-table table thead,
      .ymgeo-b1 table thead {
        display: none !important;
      }
      main table tbody,
      main table tr,
      main table th,
      main table td,
      article table tbody,
      article table tr,
      article table th,
      article table td,
      .entry-content table tbody,
      .entry-content table tr,
      .entry-content table th,
      .entry-content table td,
      .page-content table tbody,
      .page-content table tr,
      .page-content table th,
      .page-content table td,
      .wp-block-table table tbody,
      .wp-block-table table tr,
      .wp-block-table table th,
      .wp-block-table table td,
      .ymgeo-b1 table tbody,
      .ymgeo-b1 table tr,
      .ymgeo-b1 table th,
      .ymgeo-b1 table td {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
      }
      main table tr,
      article table tr,
      .entry-content table tr,
      .page-content table tr,
      .wp-block-table table tr,
      .ymgeo-b1 table tr {
        margin: 0 0 10px !important;
        border: 1px solid rgba(17,17,17,.12) !important;
        background: rgba(255,255,255,.6) !important;
      }
      main table th,
      main table td,
      article table th,
      article table td,
      .entry-content table th,
      .entry-content table td,
      .page-content table th,
      .page-content table td,
      .wp-block-table table th,
      .wp-block-table table td,
      .ymgeo-b1 table th,
      .ymgeo-b1 table td {
        padding: 10px 12px !important;
        border-width: 0 0 1px !important;
        font-size: 13px !important;
        line-height: 1.38 !important;
      }
      main table tr > :last-child,
      article table tr > :last-child,
      .entry-content table tr > :last-child,
      .page-content table tr > :last-child,
      .wp-block-table table tr > :last-child,
      .ymgeo-b1 table tr > :last-child {
        border-bottom: 0 !important;
      }
    }


/* YMCC source: ymux-regression-hotfix-20260705-css | https://iyoumega.com/wp-content/plugins/youmega-ux-regression-hotfix-20260705/assets/ymux-regression-hotfix-20260705.css?ver=2026.07.05.27 */
@media (min-width:881px){
  nav#nav .ymwm-mega{
    position:fixed!important;
    top:calc(var(--ymux-trigger-bottom,var(--ymux-nav-top,76px)) + 8px)!important;
    left:var(--ymux-what-left,16px)!important;
    right:auto!important;
    width:var(--ymux-what-width,min(600px,calc(100vw - 32px)))!important;
    max-width:calc(100vw - 32px)!important;
    max-height:min(420px,calc(100dvh - var(--ymux-trigger-bottom,var(--ymux-nav-top,76px)) - 16px))!important;
    overflow:auto!important;
    overflow-x:hidden!important;
    padding:12px!important;
    border-radius:10px!important;
    transform:translateY(6px)!important;
    box-sizing:border-box!important;
  }
  nav#nav .ymwm-menu-item:hover .ymwm-mega,
  nav#nav .ymwm-menu-item:focus-within .ymwm-mega,
  nav#nav .ymwm-menu-item.is-open .ymwm-mega{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }
  nav#nav .ymwm-menu-item.is-open .ymwm-trigger span{
    transform:rotate(180deg)!important;
  }
  nav#nav .ymwm-menu-item::after{
    content:""!important;
    display:none!important;
    position:fixed!important;
    left:var(--ymux-bridge-left,0)!important;
    top:var(--ymux-bridge-top,0)!important;
    width:var(--ymux-bridge-width,0)!important;
    height:var(--ymux-bridge-height,0)!important;
    z-index:1001!important;
    background:transparent!important;
    pointer-events:auto!important;
  }
  nav#nav .ymwm-menu-item:hover::after,
  nav#nav .ymwm-menu-item:focus-within::after,
  nav#nav .ymwm-menu-item.is-open::after{
    display:block!important;
  }
  nav#nav .ymwm-mega-inner{
    display:grid!important;
    grid-template-columns:minmax(0,1.2fr) minmax(0,.82fr) minmax(0,.82fr)!important;
    gap:14px!important;
    align-items:start!important;
  }
  nav#nav .ymwm-group{
    display:block!important;
    min-width:0!important;
    width:auto!important;
  }
  nav#nav .ymwm-group h3{
    display:block!important;
    position:static!important;
    margin:0 0 8px!important;
    margin-bottom:8px!important;
    font-size:10px!important;
    line-height:1.2!important;
    letter-spacing:.18em!important;
    white-space:normal!important;
  }
  nav#nav .ymwm-group ul{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
  }
  nav#nav .ymwm-group:first-child ul{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  nav#nav .ymwm-group a{
    box-sizing:border-box!important;
    min-height:31px!important;
    padding:6px 9px!important;
    border-radius:7px!important;
    font-size:12px!important;
    line-height:1.15!important;
    white-space:normal!important;
  }
  nav#nav .ymwm-cta{
    margin-top:10px!important;
    padding:10px 12px!important;
    border-radius:7px!important;
    font-size:11px!important;
  }
}
@media (max-width:900px){
  section.case .case-carousel-shell{overflow:hidden!important;max-width:100%!important;}
  section.case #case-marquee.carousel-track,
  #case-marquee.carousel-track,
  .case-carousel-shell .carousel-track{
    display:flex!important;
    flex-flow:row nowrap!important;
    grid-template-columns:none!important;
    grid-auto-flow:column!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    gap:18px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-x:contain!important;
    scroll-snap-type:none!important;
    scroll-behavior:auto!important;
    scrollbar-width:none!important;
    touch-action:pan-x pan-y!important;
  }
  section.case #case-marquee.carousel-track::-webkit-scrollbar,
  #case-marquee.carousel-track::-webkit-scrollbar,
  .case-carousel-shell .carousel-track::-webkit-scrollbar{display:none!important;}
  section.case #case-marquee>.detail-card,
  #case-marquee>.detail-card,
  .case-carousel-shell .carousel-track>.detail-card{
    display:block!important;
    flex:0 0 min(84vw,360px)!important;
    width:min(84vw,360px)!important;
    max-width:min(84vw,360px)!important;
    min-width:0!important;
    scroll-snap-align:none!important;
  }
}
@media (max-width:880px){
  .mqd-launcher,
  .youmega-floating-quote-pill{
    position:fixed!important;
    left:auto!important;
    right:14px!important;
    bottom:calc(max(12px,env(safe-area-inset-bottom)) + 64px)!important;
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    min-height:52px!important;
    max-width:52px!important;
    max-height:52px!important;
    padding:0!important;
    border-radius:999px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:0!important;
    overflow:hidden!important;
    font-size:0!important;
    line-height:1!important;
    color:#fff!important;
    transform:none!important;
    z-index:1002!important;
  }
  .mqd-launcher span,
  .mqd-launcher .mqd-label-long{display:none!important;}
  .mqd-launcher .mqd-pulse,
  .youmega-floating-quote-pill:after{display:none!important;animation:none!important;box-shadow:none!important;}
  .mqd-launcher svg,
  .youmega-floating-quote-pill:before{
    width:22px!important;
    height:22px!important;
    margin:0!important;
    flex:0 0 auto!important;
  }
  .youmega-floating-whatsapp,
  .whatsapp-float.wa-btn,
  .whatsapp-float.wa-float,
  .wa-float{
    position:fixed!important;
    left:auto!important;
    right:14px!important;
    bottom:max(12px,env(safe-area-inset-bottom))!important;
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    min-height:52px!important;
    max-width:52px!important;
    max-height:52px!important;
    border-radius:999px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:0!important;
    line-height:1!important;
    transform:none!important;
    z-index:1003!important;
  }
  .youmega-floating-whatsapp:before,
  .whatsapp-float.wa-btn svg,
  .whatsapp-float.wa-float svg,
  .wa-float svg{
    width:29px!important;
    height:29px!important;
  }
}
  .youmega-floating-whatsapp[data-ymux-newfix-hidden],
.whatsapp-float[data-ymux-newfix-hidden],
.wa-float[data-ymux-newfix-hidden],
.wa-btn[data-ymux-newfix-hidden],
.mqd-launcher[data-ymux-newfix-hidden],
.youmega-floating-quote-pill[data-ymux-newfix-hidden]{display:none!important;}
@media (max-width:760px){
  html,body{
    max-width:100%!important;
    overflow-x:clip!important;
  }
  .mqd-drawer[aria-hidden="true"]{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .mqd-drawer[aria-hidden="false"]{
    left:auto!important;
    right:0!important;
    width:min(390px,100vw)!important;
    max-width:100vw!important;
    box-sizing:border-box!important;
  }
  body.mega-static-mega-faq .faq-title,
  .faq-page .faq-title{
    font-size:clamp(42px,12vw,52px)!important;
    line-height:.92!important;
    max-width:100%!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  body.mega-static-mega-how-it-works.lang-en section.hero{
    min-height:min(803px,206vw)!important;
  }
  body.mega-static-mega-how-it-works.lang-es section.hero{
    min-height:min(756px,194vw)!important;
  }
  body.mega-static-mega-how-it-works.lang-en section.hero .hero-copy{
    min-height:min(425px,109vw)!important;
  }
  body.mega-static-mega-how-it-works.lang-es section.hero .hero-copy{
    min-height:min(378px,97vw)!important;
  }
  body.mega-static-mega-how-it-works section.hero .hero-media{
    min-height:min(330px,84vw)!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    contain:layout paint!important;
  }
  body.mega-static-mega-how-it-works section.hero .hero-media>img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:16/9!important;
    object-fit:cover!important;
  }
  body.archive.post-type-archive-product .ymvl-products-qc-layer .ymvl-media,
  body.archive.post-type-archive-product .ymvl-products-qc-layer .ymvl-play{
    aspect-ratio:16/9!important;
    min-height:0!important;
    box-sizing:border-box!important;
  }
  body.archive.post-type-archive-product .ymvl-products-qc-layer{
    min-height:min(1205px,309vw)!important;
  }
  body.archive.post-type-archive-product .ymvl-products-qc-layer .ymvl-wrap{
    min-height:min(1075px,276vw)!important;
  }
  body.archive.post-type-archive-product .ymvl-products-qc-layer .ymvl-play{
    display:block!important;
    width:100%!important;
    overflow:hidden!important;
  }
  body.archive.post-type-archive-product .ymvl-products-qc-layer .ymvl-play>img,
  body.archive.post-type-archive-product .ymvl-products-qc-layer .ymvl-play>video{
    display:block!important;
    width:100%!important;
    height:100%!important;
    aspect-ratio:16/9!important;
    object-fit:cover!important;
  }
  body.mega-static-mega-faq .faq-jump-nav,
  .faq-page .faq-jump-nav{
    display:flex!important;
    flex-flow:row wrap!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
    box-sizing:border-box!important;
    contain:layout paint!important;
    scroll-snap-type:none!important;
    padding-bottom:8px!important;
  }
  body.mega-static-mega-faq .faq-jump-nav a,
  .faq-page .faq-jump-nav a{
    flex:1 1 calc(50% - 8px)!important;
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    line-height:1.18!important;
  }
  .cmplz-document,
  .cmplz-document *{
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .cmplz-document .purpose,
  .cmplz-document .cookies-per-purpose,
  .cmplz-document .cmplz-service-description,
  .cmplz-document .name,
  .cmplz-document .retention{
    width:100%!important;
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  .cmplz-document .screen-reader-text{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    margin:-1px!important;
    padding:0!important;
    overflow:hidden!important;
    clip:rect(0 0 0 0)!important;
    white-space:nowrap!important;
    border:0!important;
  }
}
html[data-ymux-rfq-inview="1"] .mqd-launcher,
html[data-ymux-rfq-focus="1"] .mqd-launcher,
html[data-ymux-rfq-inview="1"] .youmega-floating-quote-pill,
html[data-ymux-rfq-focus="1"] .youmega-floating-quote-pill,
html[data-ymux-rfq-inview="1"] .youmega-floating-whatsapp,
html[data-ymux-rfq-focus="1"] .youmega-floating-whatsapp,
html[data-ymux-rfq-inview="1"] .whatsapp-float,
html[data-ymux-rfq-focus="1"] .whatsapp-float,
html[data-ymux-rfq-inview="1"] .wa-float,
html[data-ymux-rfq-focus="1"] .wa-float,
html[data-ymux-rfq-inview="1"] .wa-btn,
html[data-ymux-rfq-focus="1"] .wa-btn{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
html[data-ymux-cookie-visible="1"] .mqd-launcher,
html[data-ymux-cookie-visible="1"] .youmega-floating-quote-pill,
html[data-ymux-cookie-visible="1"] .youmega-floating-whatsapp,
html[data-ymux-cookie-visible="1"] .whatsapp-float,
html[data-ymux-cookie-visible="1"] .wa-float,
html[data-ymux-cookie-visible="1"] .wa-btn{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
@media (max-width:880px){
  .mqd-launcher,
  .youmega-floating-quote-pill{
    right:14px!important;
    bottom:calc(max(12px,env(safe-area-inset-bottom)) + 64px)!important;
  }
}
.cmplz-cookiebanner{
  position:fixed!important;
  left:18px!important;
  right:auto!important;
  bottom:18px!important;
  top:auto!important;
  width:min(410px,calc(100vw - 36px))!important;
  max-height:min(62vh,520px)!important;
  overflow:auto!important;
  border-radius:8px!important;
  background:#111!important;
  color:#f6f3ee!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 22px 60px rgba(0,0,0,.28)!important;
  padding:18px!important;
  z-index:2147483000!important;
}
.cmplz-cookiebanner .cmplz-title,
.cmplz-cookiebanner .cmplz-message,
.cmplz-cookiebanner .cmplz-categories,
.cmplz-cookiebanner .cmplz-category{color:#f6f3ee!important;}
.cmplz-cookiebanner .cmplz-message{font-size:13px!important;line-height:1.45!important;}
.cmplz-cookiebanner .cmplz-buttons{display:flex!important;gap:8px!important;flex-wrap:wrap!important;}
.cmplz-cookiebanner .cmplz-btn{border-radius:4px!important;min-height:38px!important;padding:10px 14px!important;font-size:12px!important;font-weight:800!important;letter-spacing:.04em!important;}
.cmplz-cookiebanner .cmplz-accept{background:#d73325!important;border-color:#d73325!important;color:#fff!important;}
.cmplz-cookiebanner .cmplz-deny,
.cmplz-cookiebanner .cmplz-view-preferences,
.cmplz-cookiebanner .cmplz-save-preferences{background:transparent!important;border:1px solid rgba(255,255,255,.34)!important;color:#f6f3ee!important;}
@media (max-width:760px){
  .cmplz-cookiebanner{
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    width:auto!important;
    max-height:46vh!important;
    padding:12px!important;
  }
  .cmplz-cookiebanner .cmplz-title{font-size:14px!important;line-height:1.2!important;margin-bottom:6px!important;}
  .cmplz-cookiebanner .cmplz-message{font-size:12px!important;line-height:1.35!important;}
  .cmplz-cookiebanner .cmplz-btn{min-height:44px!important;padding:8px 10px!important;}
}

