/*
 Theme Name: Astra Child MDC
 Theme URI: https://mdcboiler.vn
 Description: Replicated layout & style from baiteburners.com for MDC
 Author: MDC Developer
 Template: astra
 Version: 3.7.76
*/

/* ==========================================================================
   DESIGN TOKENS & TYPOGRAPHY
   ========================================================================== */
@font-face {
  font-family: 'MDC Montserrat';
  src: url('fonts/montserrat-variable.ttf') format('truetype-variations');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: 'MDC Inter';
  src: url('fonts/inter-variable.ttf') format('truetype-variations');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

:root {
  --font-primary: 'MDC Inter', Arial, sans-serif;
  --font-heading: 'MDC Montserrat';
  --color-primary: #010101;
  --color-secondary: #444444;
  --color-accent-red: #e2001a;
  --color-accent-red-dark: #b80015;
  --color-accent-green: #2e7d32;
  --color-bg-dark: #000000;
  --color-bg-light: #f8f9fa;
  --color-bg-card: #ffffff;
  --color-border: #e2e2e2;
  
  --radius-xs: 3px;
  --radius-sm: 5px;
  --radius-md: 12px;
  --radius-pill: 50px;
  
  --shadow-card: 0px 0px 20px 0px rgba(0, 0, 0, 0.06);
  --shadow-hover: 0px 8px 25px 0px rgba(226, 0, 26, 0.15);
  --transition-fast: 300ms ease;
}

body, html {
  font-family: var(--font-primary) !important;
  color: var(--color-primary);
  font-size: 16px;
  line-height: 1.7;
  background-color: #ffffff;
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

button, input, select, textarea {
  font-family: var(--font-primary) !important;
  color: var(--color-primary);
}

h1, h2, h3, h4, h5, h6,
pre, code, kbd, samp, .site .skip-link,
.entry-title, .page-title, .site-title {
  background-color: transparent;
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading) !important;
}

/* Container & Global Width Reset */
.ast-container, #content, .entry-content, .entry-header {
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Hide default page title, text Site Title, and Astra default footer copyright bar */
.entry-title, .ast-single-post-order .entry-header, header.entry-header,
.ast-site-title-wrap, .site-title, .site-description,
.site-below-footer-wrap, .ast-small-footer, .ast-footer-copyright, .site-footer-below-section-1 {
  display: none !important;
}

.baite-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

/* ==========================================================================
   HEADER NAVIGATION (Clean White Header)
   ========================================================================== */
.ast-primary-header-bar {
  background: #ffffff !important;
  border-bottom: 1px solid #e5e5e5 !important;
  padding: 10px 0 !important;
}

.main-header-bar-navigation a {
  font-family: var(--font-heading) !important;
  font-weight: 600 !important;
  font-size: 18px !important;
  text-transform: none;
  color: #010101 !important;
  letter-spacing: 0.3px;
}

.main-header-bar-navigation a:hover,
.main-header-bar-navigation .current-menu-item > a {
  color: var(--color-accent-red) !important;
}

/* ==========================================================================
   HERO BANNER SLIDER (Full-View Interactive Carousel)
   ========================================================================== */
.baite-slider-section {
  max-width: 1200px;
  margin: 25px auto 35px;
  padding: 0 20px;
}

.baite-slider-box {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-sm);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
  border: 1px solid var(--color-border);
  background: #ffffff;
}

.baite-slider-track {
  display: flex;
  transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
  width: 100%;
}

.baite-slide-item {
  min-width: 100%;
  box-sizing: border-box;
}

.baite-slide-item img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}

.baite-slider-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0, 0, 0, 0.65);
  color: #ffffff;
  border: none;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  cursor: pointer;
  font-size: 20px;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background var(--transition-fast);
}

.baite-slider-btn:hover {
  background: var(--color-accent-red);
}

.baite-slider-prev { left: 15px; }
.baite-slider-next { right: 15px; }

/* ==========================================================================
   BUTTONS (BaiteBurners Red & Solid styling)
   ========================================================================== */
.baite-btn {
  display: inline-block;
  padding: 14px 28px;
  font-family: var(--font-primary) !important;
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  text-decoration: none;
  border-radius: var(--radius-xs);
  transition: all var(--transition-fast);
  cursor: pointer;
  border: none;
  line-height: 1.4;
}

.baite-btn-red {
  background-color: var(--color-accent-red);
  color: #ffffff !important;
}

.baite-btn-red:hover {
  background-color: var(--color-accent-red-dark);
  transform: translateY(-2px);
  box-shadow: 0 5px 15px rgba(226, 0, 26, 0.4);
}

.baite-btn-green {
  background-color: var(--color-accent-green);
  color: #ffffff !important;
}

.baite-btn-green:hover {
  background-color: #1b5e20;
  transform: translateY(-2px);
}

.baite-btn-outline {
  background-color: transparent;
  color: #ffffff !important;
  border: 2px solid #ffffff;
}

.baite-btn-outline:hover {
  background-color: #ffffff;
  color: #010101 !important;
}

/* ==========================================================================
   SECTION HEADINGS
   ========================================================================== */
.baite-section {
  padding: 70px 0;
}

.baite-section h2 {
  background: transparent !important;
  position: relative !important;
  z-index: 2 !important;
  margin-top: 0 !important;
}

.baite-title-block {
  text-align: center;
  margin-bottom: 45px;
}

.baite-title-block h2 {
  font-family: var(--font-primary) !important;
  font-size: 28px;
  font-weight: 800;
  color: var(--color-primary);
  text-transform: uppercase;
  margin: 0 0 12px 0;
  letter-spacing: 0.3px;
  line-height: 1.35;
  position: relative;
  display: inline-block;
  padding-bottom: 12px;
}

.baite-title-block h2::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 3px;
  background-color: var(--color-accent-red);
}

.baite-title-block p {
  font-family: var(--font-primary) !important;
  font-size: 15px;
  color: var(--color-secondary);
  max-width: 750px;
  margin: 10px auto 0;
  line-height: 1.65;
}

/* ==========================================================================
   PRODUCT CARDS GRID (BaiteBurners style: white cards, red border hover)
   ========================================================================== */
.baite-grid-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

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

@media (max-width: 576px) {
  .baite-grid-4 { grid-template-columns: 1fr; }
}

.baite-card {
  position: relative;
  background: var(--color-bg-card);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  padding: 32px 22px 24px;
  text-align: center;
  transition: all var(--transition-fast);
  display: flex;
  flex-direction: column;
  height: 100%;
  box-sizing: border-box;
}

.baite-card:hover {
  border-color: var(--color-accent-red);
  box-shadow: var(--shadow-hover);
  transform: translateY(-4px);
}

.baite-card-ribbon {
  position: absolute;
  top: 12px;
  right: 12px;
  font-size: 10.5px;
  font-weight: 800;
  padding: 4px 10px;
  border-radius: 4px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #ffffff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
  display: flex;
  align-items: center;
  gap: 4px;
}

/* Modern Sector Card Product Image Showcase Box */
.baite-card-image-box {
  background: #f8f9fa;
  border-radius: 6px;
  padding: 16px;
  margin-bottom: 18px;
  position: relative;
  overflow: hidden;
  height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border: 1px solid #eaeaea;
  transition: all 0.3s ease;
}

.baite-card-image-box img {
  max-height: 148px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
  filter: drop-shadow(0 6px 12px rgba(0,0,0,0.08));
}

.baite-card:hover .baite-card-image-box {
  background: #ffffff;
  border-color: var(--color-accent-red);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.08);
}

.baite-card:hover .baite-card-image-box img {
  transform: scale(1.08);
}

.baite-card-title {
  font-family: var(--font-primary) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--color-primary);
  margin: 0 0 10px 0;
  line-height: 1.4 !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: 2.8em;
  max-height: 2.8em;
}

.baite-card-desc {
  font-family: var(--font-primary) !important;
  font-size: 14px !important;
  color: var(--color-secondary);
  line-height: 1.65 !important;
  margin-bottom: 20px;
  flex-grow: 1;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: 3.3em;
  max-height: 3.3em;
}

.baite-card-btn {
  background-color: var(--color-primary);
  color: #ffffff !important;
  font-family: var(--font-primary) !important;
  font-size: 12.5px;
  font-weight: 800;
  text-transform: uppercase;
  padding: 11px 20px;
  border-radius: var(--radius-xs);
  text-decoration: none !important;
  transition: all var(--transition-fast);
  letter-spacing: 0.3px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: auto;
}

.baite-card:hover .baite-card-btn {
  background-color: var(--color-accent-red);
  text-decoration: none !important;
  transform: translateY(-2px);
}

/* Equal Heights & Multi-line Ellipsis for MDC Product Cards */
.mdc-products-card {
  min-width: 0;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  box-sizing: border-box !important;
  padding: 24px !important;
  background: #ffffff !important;
  border-right: 1px solid var(--mdc-products-line, #e2dfd7) !important;
  border-bottom: 1px solid var(--mdc-products-line, #e2dfd7) !important;
  transition: transform .28s ease, box-shadow .28s ease !important;
}

.mdc-products-card:hover {
  position: relative !important;
  z-index: 1 !important;
  transform: translateY(-5px) !important;
  box-shadow: 0 18px 35px rgba(22,23,26,.11) !important;
}

.mdc-products-card-image {
  height: 190px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 18px 0 22px !important;
  background: #f7f6f2 !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}

.mdc-products-card-image img {
  width: 90% !important;
  height: 174px !important;
  object-fit: contain !important;
  transition: transform .35s ease !important;
}

.mdc-products-card:hover img {
  transform: scale(1.06) !important;
}

.mdc-products-card h3 {
  font-family: 'MDC Montserrat', Arial, sans-serif !important;
  font-size: 16.5px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  margin: 0 0 10px 0 !important;
  color: var(--mdc-products-ink, #111315) !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  min-height: 2.7em !important;
  max-height: 2.7em !important;
}

.mdc-products-card p {
  font-family: 'MDC Inter', Arial, sans-serif !important;
  font-size: 13.5px !important;
  line-height: 1.65 !important;
  font-weight: 400 !important;
  color: var(--mdc-products-muted, #5e6066) !important;
  margin: 0 0 20px 0 !important;
  flex-grow: 1 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  min-height: 3.3em !important;
  max-height: 3.3em !important;
}

.mdc-products-card-link {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding-top: 15px !important;
  color: var(--mdc-products-ink, #111315) !important;
  border-top: 1px solid #e1ded7 !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: .85px !important;
  margin-top: auto !important;
}

/* ==========================================================================
   MULTI-COLUMN RED FOOTER (Modern MDC Brand Red Styling)
   ========================================================================== */
.baite-footer {
  background-color: #e2001a;
  color: #ffffff;
  padding: 48px 0 0 0;
  border-top: none !important;
  font-family: var(--font-primary) !important;
}

.baite-footer-grid {
  display: grid;
  grid-template-columns: 1.35fr 1fr 1fr 1.25fr;
  gap: 32px;
  padding-bottom: 30px;
}

@media (max-width: 992px) {
  .baite-footer-grid { grid-template-columns: repeat(2, 1fr); gap: 30px; }
}

@media (max-width: 576px) {
  .baite-footer { padding-top: 32px; }
  .baite-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 16px; padding-bottom: 24px; }
  .baite-footer-col:first-child,
  .baite-footer-col:last-child { grid-column: 1 / -1; }
  .baite-footer-col h4 { margin-bottom: 14px; padding: 6px 13px; font-size: 14px !important; }
  .baite-footer-col p,
  .baite-footer-col ul li,
  .baite-footer-col ul li a,
  .baite-footer-contact-item { font-size: 15px !important; line-height: 1.72; }
  .baite-footer-desc { font-size: 14.5px !important; line-height: 1.75 !important; }
  .baite-footer-col ul li { margin-bottom: 10px; }
  .baite-footer-slogan { font-size: 13px !important; margin-bottom: 14px; }
  .baite-footer-bottom p { font-size: 14px !important; }
}

.baite-footer-logo-wrap {
  margin-bottom: 16px;
  background: #ffffff;
  display: inline-block;
  padding: 10px 18px;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.baite-footer-slogan {
  display: block;
  background: #ffffff;
  color: #e2001a !important;
  font-family: var(--font-heading) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.35;
  padding: 8px 16px;
  border-radius: 6px;
  letter-spacing: 0.5px;
  margin-bottom: 18px;
  text-transform: uppercase;
  width: fit-content;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.15);
}

.baite-footer .baite-footer-col h4 {
  font-family: var(--font-heading) !important;
  color: #111315 !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  padding: 7px 15px !important;
  border-radius: 6px;
  font-size: 15px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  margin: 0 0 20px 0;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  letter-spacing: 0.4px;
  line-height: 1.35;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.16);
}

.baite-footer .baite-footer-col h4 i {
  color: #e2001a !important;
  font-size: 15px;
  margin-right: 2px;
}

.baite-footer-col p,
.baite-footer-col ul li {
  font-family: var(--font-primary) !important;
  font-size: 15.5px;
  font-weight: 400;
  color: #ffffff !important;
  line-height: 1.75;
}

.baite-footer-desc {
  font-family: var(--font-heading) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  color: #ffffff !important;
  line-height: 1.75 !important;
  letter-spacing: 0.1px;
  margin: 0;
}

.baite-footer-desc strong {
  font-family: var(--font-heading) !important;
  font-weight: 700 !important;
  color: #ffffff !important;
}

.baite-footer-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.baite-footer-col ul li {
  margin-bottom: 12px;
}

.baite-footer-col ul li a {
  font-family: var(--font-primary) !important;
  font-size: 15.5px !important;
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 400;
  line-height: 1.7;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  transition: all var(--transition-fast);
}

.baite-footer-col ul li a i {
  color: #ffeb3b !important;
  font-size: 15px;
  width: 18px;
  text-align: center;
  flex-shrink: 0;
}

.baite-footer-col ul li a:hover {
  color: #ffeb3b !important;
  transform: translateX(3px);
  text-decoration: none !important;
}

.baite-footer-contact-item {
  margin-bottom: 13px;
  color: #ffffff !important;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-family: var(--font-primary) !important;
  font-size: 15px !important;
  font-weight: 400;
  line-height: 1.7;
}

.baite-footer-contact-item > i {
  color: #ffeb3b !important;
  font-size: 16px;
  margin-top: 4px;
  width: 18px;
  text-align: center;
  flex-shrink: 0;
}

.baite-footer-contact-item strong {
  font-weight: 700;
  color: #ffffff !important;
}

.baite-footer-contact-item a {
  color: #ffffff !important;
  font-family: var(--font-primary) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  background: rgba(0, 0, 0, 0.22);
  padding: 3px 10px;
  border-radius: 4px;
  display: inline-block;
  transition: all var(--transition-fast);
}

.baite-footer-contact-item a:hover {
  color: #ffeb3b !important;
  background: rgba(0, 0, 0, 0.4);
}

.baite-footer-map { padding: 0 0 24px; }

.baite-footer-map-grid {
  display: grid;
  grid-template-columns: minmax(310px, .82fr) minmax(0, 1.18fr);
  min-height: 210px;
}

.baite-footer-map-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 22px 28px;
  background: #9e0012;
  color: #ffffff;
}

.baite-footer-map-copy > p {
  margin: 0 0 6px;
  color: #ffeb3b !important;
  font-family: var(--font-heading) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  letter-spacing: 1px;
  line-height: 1.35;
}

.baite-footer-map-copy h2 {
  margin: 0 0 8px;
  color: #ffffff !important;
  background: transparent !important;
  font-family: var(--font-heading) !important;
  font-size: clamp(24px, 2.6vw, 32px) !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

.baite-footer-map-copy address {
  margin: 0 0 8px;
  color: #ffffff;
  font-family: var(--font-primary) !important;
  font-size: 16.5px !important;
  font-style: normal;
  font-weight: 400;
  line-height: 1.8;
}

.baite-footer-map-copy > span {
  color: rgba(255, 255, 255, 0.95) !important;
  font-family: var(--font-primary) !important;
  font-size: 14.5px !important;
  font-weight: 400;
  line-height: 1.7;
}

.baite-footer-map-copy > a {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-top: 14px;
  padding: 10px 20px;
  border: 1px solid rgba(255, 255, 255, 0.75);
  color: #ffffff !important;
  font-family: var(--font-heading) !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px;
  line-height: 1.35;
  text-decoration: none !important;
  border-radius: 6px;
  transition: all var(--transition-fast);
}

.baite-footer-map-copy > a:hover,
.baite-footer-map-copy > a:focus-visible {
  background: #ffffff;
  color: #9e0012 !important;
}

.baite-footer-map-frame {
  min-width: 0;
  min-height: 210px;
  background: #f3f1ed;
}

.baite-footer-map-frame iframe {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 210px;
  border: 0;
  filter: grayscale(.12) contrast(1.04);
}

@media (max-width: 760px) {
  .baite-footer-map-grid { grid-template-columns: 1fr; }
  .baite-footer-map-copy { padding: 22px; }
  .baite-footer-map-copy > span { display: none; }
  .baite-footer-map-frame,
  .baite-footer-map-frame iframe { min-height: 190px; }
}

.baite-footer-bottom {
  background-color: #9e0012;
  text-align: center;
  padding: 22px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  font-family: var(--font-primary) !important;
  font-size: 15.5px !important;
  font-weight: 400;
  line-height: 1.75;
  color: #ffffff;
}

.baite-footer-bottom p {
  margin: 0;
  color: #ffffff;
  font-family: var(--font-primary) !important;
  font-size: 15.5px !important;
  font-weight: 400;
  line-height: 1.75;
}

/* Floating Action Buttons */
.mdc-floating-bar {
  position: fixed !important;
  bottom: 25px !important;
  right: 25px !important;
  z-index: 999999 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

/* ==========================================================================
   ANIMATED PARTNER MARQUEE TICKER (Red Background Section)
   ========================================================================== */
.baite-partner-section {
  background-color: #e2001a;
  color: #ffffff;
  padding: 60px 0;
  overflow: hidden;
  position: relative;
}

.baite-partner-marquee-box {
  overflow: hidden;
  position: relative;
  width: 100%;
  padding: 10px 0;
}

.baite-partner-marquee-track {
  display: flex;
  gap: 30px;
  width: max-content;
  animation: mdcPartnerMarquee 22s linear infinite;
}

.baite-partner-marquee-track:hover {
  animation-play-state: paused;
}

@keyframes mdcPartnerMarquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.baite-partner-card {
  background: #ffffff;
  padding: 10px 22px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: 15px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease;
  white-space: nowrap;
}

.baite-partner-card:hover {
  transform: scale(1.08);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.35);
}

.baite-partner-card img {
  height: 38px;
  width: auto;
  display: block;
  object-fit: contain;
}

.baite-partner-name {
  font-family: var(--font-primary) !important;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: 0.5px;
}

.mdc-btn-zalo {
  background-color: #0068ff !important;
  color: #ffffff !important;
  padding: 10px 18px;
  border-radius: var(--radius-pill);
  font-family: var(--font-primary) !important;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 4px 15px rgba(0,0,0,0.3);
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13.5px;
}

.mdc-btn-call {
  background-color: var(--color-accent-red) !important;
  color: #ffffff !important;
  padding: 10px 18px;
  border-radius: var(--radius-pill);
  font-family: var(--font-primary) !important;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 4px 15px rgba(0,0,0,0.3);
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13.5px;
}

.mdc-btn-quote {
  background-color: var(--color-accent-green) !important;
  color: #ffffff !important;
  padding: 10px 18px;
  border-radius: var(--radius-pill);
  font-family: var(--font-primary) !important;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 4px 15px rgba(0,0,0,0.3);
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13.5px;
}

/* ==========================================================================
   SUB-MENU DROPDOWN STYLING (Astra Navigation Header)
   ========================================================================== */
.main-header-menu .sub-menu, .ast-builder-menu .sub-menu {
  background: #ffffff !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15) !important;
  border-top: 3px solid #e2001a !important;
  border-radius: 0 0 6px 6px !important;
  padding: 8px 0 !important;
  min-width: 260px !important;
}

.main-header-menu .sub-menu .menu-item a, .ast-builder-menu .sub-menu .menu-item a {
  font-family: var(--font-primary) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #010101 !important;
  padding: 11px 20px !important;
  transition: all 0.25s ease !important;
  display: flex !important;
  align-items: center !important;
}

.main-header-menu .sub-menu .menu-item a i, .ast-builder-menu .sub-menu .menu-item a i {
  transition: transform 0.3s ease !important;
  display: inline-block !important;
}

.main-header-menu .sub-menu .menu-item a:hover, .ast-builder-menu .sub-menu .menu-item a:hover {
  background: #fff5f5 !important;
  color: #e2001a !important;
  padding-left: 25px !important;
}

.main-header-menu .sub-menu .menu-item a:hover i, .ast-builder-menu .sub-menu .menu-item a:hover i {
  transform: scale(1.25) rotate(6deg) !important;
}

/* Wide Container for Catalog & Large Grid Displays */
.baite-container-wide {
  max-width: 1840px !important;
  margin: 0 auto !important;
  padding: 0 25px !important;
}

/* ==========================================================================
   PRODUCT CATALOG LAYOUT (Left Sidebar 250px + Expanded Product Area)
   ========================================================================== */
.mdc-catalog-wrapper {
  display: flex !important;
  flex-direction: row !important;
  gap: 25px !important;
  align-items: flex-start !important;
  width: 100% !important;
  position: relative !important;
}

.mdc-catalog-sidebar {
  width: 250px !important;
  min-width: 250px !important;
  max-width: 250px !important;
  flex-shrink: 0 !important;
  position: sticky !important;
  top: 100px !important;
  background: #ffffff !important;
  border-radius: 8px !important;
  border: 1px solid #e0e0e0 !important;
  padding: 18px !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
  z-index: 2 !important;
}

.mdc-catalog-content {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: calc(100% - 275px) !important;
}

.mdc-catalog-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
}

@media (max-width: 1400px) {
  .mdc-catalog-grid {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

@media (max-width: 992px) {
  .mdc-catalog-wrapper {
    flex-direction: column !important;
  }

  .mdc-catalog-sidebar {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    top: 0 !important;
    margin-bottom: 30px !important;
  }

  .mdc-catalog-content {
    width: 100% !important;
  }

  .mdc-catalog-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 576px) {
  .mdc-catalog-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ==========================================================================
   FIX H1 VISIBILITY & HERO HEADER BACKGROUND OVERLAPS FOR CATALOG PAGE
   ========================================================================== */
.page-id-15 .site-content,
.page-slug-san-pham .site-content {
  padding-top: 0 !important;
  background-color: #f8f9fa !important;
}

.page-id-15 .entry-header,
.page-slug-san-pham .entry-header {
  display: none !important;
}

/* ========================================================================== 
   ABOUT PAGE - INDUSTRIAL EDITORIAL LAYOUT
   ========================================================================== */
.mdc-about {
  --about-black: #0b0c0e;
  --about-ink: #15171a;
  --about-red: #e2001a;
  --about-paper: #f3f1ed;
  overflow: hidden;
  background: #ffffff;
}

.mdc-about *, .mdc-about *::before, .mdc-about *::after { box-sizing: border-box; }
.mdc-about h1, .mdc-about h2, .mdc-about h3, .mdc-about p { background: transparent !important; }
.mdc-about a { text-decoration: none !important; }

.mdc-about-hero {
  display: none !important;
}

.mdc-about-btn { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; padding: 14px 22px; font-size: 12px; font-weight: 900; letter-spacing: .6px; transition: transform .25s ease, background .25s ease; }
.mdc-about-btn:hover { transform: translateY(-3px); }
.mdc-about-btn-light { color: var(--about-black) !important; background: #ffffff; }
.mdc-about-btn-light:hover { background: var(--about-red); color: #ffffff !important; }
.mdc-about-phone { display: flex; align-items: center; gap: 12px; color: #ffffff !important; }
.mdc-about-phone > i { color: var(--about-red); font-size: 22px; }
.mdc-about-phone span { display: flex; flex-direction: column; color: #9da0a5; font-size: 9px; font-weight: 800; letter-spacing: 1px; }
.mdc-about-phone b { color: #ffffff; font-size: 15px; letter-spacing: .5px; margin-top: 2px; }

.mdc-about-intro, .mdc-about-direction { padding: 100px 0; }
.mdc-about-section-head { display: flex; gap: 24px; align-items: flex-start; margin-bottom: 52px; }
.mdc-about-section-head > div { position: relative; }
.mdc-about-section-head h2 { position: relative; display: inline-block; color: var(--about-ink) !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(32px, 3.8vw, 48px) !important; line-height: 1.28 !important; letter-spacing: 0 !important; font-weight: 700 !important; margin: 0; padding-bottom: 16px; }
.mdc-about-section-head h2::after { content: ''; position: absolute; bottom: 0; left: 0; width: 64px; max-width: 100%; height: 4px; border-radius: 2px; background: var(--about-red); transition: width .35s cubic-bezier(.25,1,.5,1); }
.mdc-about-section-head:hover h2::after, .mdc-about-section-head h2:hover::after { width: 100%; }

.mdc-about-intro-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 90px; }
.mdc-about-intro-statement { color: var(--about-ink) !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(18px, 1.8vw, 24px); line-height: 1.5; font-weight: 700; margin: 0; }
.mdc-about-intro-copy { border-left: 1px solid #d6d3ce; padding-left: 42px; }
.mdc-about-intro-copy p { color: #5a5c60 !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 17px !important; line-height: 1.75 !important; font-weight: 400 !important; margin: 0 0 16px; }
.mdc-about-intro-copy strong { color: var(--about-ink); font-weight: 700; }
.mdc-about-stats { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 70px; border-top: 1px solid #d6d3ce; border-bottom: 1px solid #d6d3ce; }
.mdc-about-stats > div { padding: 28px 24px; border-right: 1px solid #d6d3ce; }
.mdc-about-stats > div:last-child { border: 0; }
.mdc-about-stats b { display: block; color: var(--about-ink); font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 42px; line-height: 1; letter-spacing: -2px; font-weight: 700; }
.mdc-about-stats b span { color: var(--about-red); font-size: 20px; }
.mdc-about-stats p { color: #74767a !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 14px !important; font-weight: 600 !important; letter-spacing: 0 !important; margin: 10px 0 0; }

.mdc-about-capabilities { padding: 100px 0; background: var(--about-ink); }
.mdc-about-capabilities .mdc-about-section-head { justify-content: center; text-align: center; }
.mdc-about-capabilities .mdc-about-section-head h2 { color: #ffffff !important; }
.mdc-about-capabilities .mdc-about-section-head h2::after { left: 50%; transform: translateX(-50%); }
.mdc-about-cap-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid #3a3c3f; border-left: 1px solid #3a3c3f; }
.mdc-about-cap-card { position: relative; display: flex; min-width: 0; min-height: 520px; flex-direction: column; padding: 26px; color: #ffffff !important; border-right: 1px solid #3a3c3f; border-bottom: 1px solid #3a3c3f; transition: background .3s ease; }
.mdc-about-cap-card:hover, .mdc-about-cap-card:focus-visible { background: #202226; }
.mdc-about-cap-image { height: 180px; display: flex; align-items: center; justify-content: center; margin: 8px 0 22px; background: #ffffff; border-radius: 8px; overflow: hidden; }
.mdc-about-cap-image img { width: 90%; height: 165px; object-fit: contain; transition: transform .35s ease; }
.mdc-about-cap-card:hover img, .mdc-about-cap-card:focus-visible img { transform: scale(1.07); }
.mdc-about-cap-content > i { color: var(--about-red); font-size: 24px; }
.mdc-about-cap-content h3 { color: #ffffff !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 24px !important; line-height: 1.3 !important; letter-spacing: 0 !important; font-weight: 700 !important; margin: 14px 0 13px; }
.mdc-about-cap-content p { color: #aeb1b5 !important; font-family: 'MDC Inter', Arial, sans-serif !important; min-height: 68px; font-size: 15px !important; line-height: 1.65 !important; font-weight: 400 !important; margin: 0 0 22px; }
.mdc-about-cap-link { display: inline-flex; align-items: center; gap: 8px; color: #ffffff; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 13px !important; font-weight: 700 !important; letter-spacing: 0 !important; }
.mdc-about-cap-link i { color: var(--about-red); margin-left: 6px; }

.mdc-about-direction { background: var(--about-paper); }
.mdc-about-direction-grid { display: grid; grid-template-columns: .92fr 1.08fr; gap: 80px; align-items: center; }
.mdc-about-direction-visual { position: relative; padding: 0 35px 35px 0; }
.mdc-about-direction-visual::after { content: ''; position: absolute; z-index: 0; right: 0; bottom: 0; width: 75%; height: 75%; background: var(--about-red); border-radius: 8px; }
.mdc-about-direction-visual img { position: relative; z-index: 1; display: block; width: 100%; height: 520px; object-fit: cover; filter: grayscale(.15); border-radius: 8px; }
.mdc-about-direction-visual span { position: absolute; z-index: 2; left: 0; bottom: 35px; padding: 16px 20px; background: var(--about-black); color: #ffffff; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 14px !important; line-height: 1.4; font-weight: 700 !important; letter-spacing: 0 !important; border-radius: 4px; }
.mdc-about-direction-item { display: flex; flex-direction: column; padding: 26px 0; border-top: 1px solid #cbc8c2; }
.mdc-about-direction-item h3 { position: relative; display: inline-block; align-self: flex-start; color: var(--about-ink) !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 22px !important; font-weight: 700 !important; margin: 0 0 10px; padding-bottom: 8px; }
.mdc-about-direction-item h3::after { content: ''; position: absolute; bottom: 0; left: 0; width: 42px; height: 3px; border-radius: 2px; background: var(--about-red); transition: width .3s ease; }
.mdc-about-direction-item:hover h3::after { width: 100%; }
.mdc-about-direction-item p { color: #606267 !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 16px !important; line-height: 1.75 !important; font-weight: 400 !important; margin: 0; }

.mdc-about-values { padding: 100px 0; background: var(--about-red); }
.mdc-about-values .mdc-about-section-head { justify-content: center; text-align: center; }
.mdc-about-values .mdc-about-section-head h2 { color: #ffffff !important; }
.mdc-about-values .mdc-about-section-head h2::after { background: #ffffff; left: 50%; transform: translateX(-50%); }
.mdc-about-values-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.mdc-about-values-grid > div { position: relative; min-height: 270px; padding: 32px 26px; border: 1px solid rgba(255,255,255,.35); border-radius: 8px; color: #ffffff; background: rgba(0,0,0,.08); transition: transform .25s ease, background .25s ease; }
.mdc-about-values-grid > div:hover { transform: translateY(-4px); background: rgba(0,0,0,.22); }
.mdc-about-values-grid i { font-size: 32px; margin-bottom: 24px; display: block; }
.mdc-about-values-grid h3 { color: #ffffff !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 22px !important; font-weight: 700 !important; margin: 0 0 12px; }
.mdc-about-values-grid p { color: #ffffff !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 15px !important; line-height: 1.65 !important; font-weight: 400 !important; margin: 0; opacity: .9; }

.mdc-about-cta { padding: 72px 0; background: #ffffff; }
.mdc-about-cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.mdc-about-cta h2 { position: relative; display: inline-block; color: var(--about-ink) !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(27px, 3vw, 42px) !important; line-height: 1.28 !important; letter-spacing: 0 !important; font-weight: 700 !important; margin: 0; padding-bottom: 14px; }
.mdc-about-cta h2::after { content: ''; position: absolute; bottom: 0; left: 0; width: 64px; height: 4px; border-radius: 2px; background: var(--about-red); transition: width .35s cubic-bezier(.25,1,.5,1); }
.mdc-about-cta:hover h2::after { width: 100%; }
.mdc-about-btn-dark { flex-shrink: 0; color: #ffffff !important; background: var(--about-black); font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 14px !important; font-weight: 700 !important; border-radius: 8px; padding: 16px 28px; }
.mdc-about-btn-dark:hover { background: var(--about-red); }

@media (max-width: 992px) {
  .mdc-about-intro-grid, .mdc-about-direction-grid { grid-template-columns: 1fr; gap: 45px; }
  .mdc-about-intro-grid { padding-left: 0; }
  .mdc-about-cap-grid { grid-template-columns: repeat(2, 1fr); }
  .mdc-about-values-grid { grid-template-columns: repeat(2, 1fr); }
  .mdc-about-cap-card { min-height: 480px; }
}

@media (max-width: 640px) {
  .mdc-about-intro, .mdc-about-direction, .mdc-about-capabilities, .mdc-about-values { padding: 48px 0; }
  .mdc-about-section-head { gap: 14px; margin-bottom: 32px; }
  .mdc-about-section-head h2 { font-size: 26px !important; }
  .mdc-about-intro-statement { font-size: 18px; }
  .mdc-about-intro-copy { border: 0; padding: 0; }
  .mdc-about-stats { grid-template-columns: repeat(2, 1fr); }
  .mdc-about-stats > div:nth-child(2) { border-right: 0; }
  .mdc-about-stats > div:nth-child(-n+2) { border-bottom: 1px solid #d6d3ce; }
  .mdc-about-stats b { font-size: 32px; }
  .mdc-about-cap-grid, .mdc-about-values-grid { grid-template-columns: 1fr; }
  .mdc-about-cap-card { min-height: auto; }
  .mdc-about-cap-content p { min-height: 0; }
  .mdc-about-values-grid > div { min-height: auto; }
  .mdc-about-direction-visual { padding: 0 18px 18px 0; }
  .mdc-about-direction-visual img { height: 360px; }
  .mdc-about-cta-inner { align-items: flex-start; flex-direction: column; }
}

/* ========================================================================== 
   MDC HEADER - INDUSTRIAL NAVIGATION SYSTEM
   ========================================================================== */
#masthead {
  position: relative;
  z-index: 10000;
}

#masthead .ast-primary-header-bar {
  min-height: 84px;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #d8d6d1 !important;
  background: rgba(255,255,255,.97) !important;
  box-shadow: 0 8px 28px rgba(11,12,14,.055);
  backdrop-filter: blur(14px);
}

#masthead .site-primary-header-wrap.ast-container {
  width: min(1320px, calc(100% - 40px));
  max-width: none !important;
  min-height: 84px;
  padding: 0 !important;
}

#masthead .ast-builder-grid-row {
  min-height: 84px;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 34px;
}

#masthead .site-header-primary-section-left,
#masthead .site-header-primary-section-right {
  min-width: 0;
}

#masthead .site-branding {
  padding: 0;
}

#masthead .custom-logo-link {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 58px;
  padding: 7px 18px 7px 12px;
  border: 1px solid #dedcd7;
  border-left: 4px solid #e2001a;
  background: #ffffff;
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

#masthead .custom-logo-link::after {
  position: absolute;
  right: 12px;
  bottom: 6px;
  color: #797b7f;
  content: 'INDUSTRIAL SYSTEMS';
  font-size: 7px;
  font-weight: 800;
  letter-spacing: 1.15px;
}

#masthead .custom-logo-link:hover,
#masthead .custom-logo-link:focus-visible {
  border-color: #e2001a;
  box-shadow: 0 9px 25px rgba(11,12,14,.1);
  transform: translateY(-2px);
}

#masthead .custom-logo {
  width: auto !important;
  height: 46px !important;
  max-width: 178px;
  padding: 0 70px 0 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  object-fit: contain;
  object-position: left center;
}

#masthead .ast-main-header-bar-alignment,
#masthead .main-header-bar-navigation,
#masthead .main-navigation,
#masthead .main-navigation > .main-header-menu {
  height: 100%;
}

#masthead .main-header-menu {
  align-items: center;
  gap: 2px;
}

#masthead .main-header-menu > .menu-item {
  line-height: 1 !important;
}

#masthead .main-header-menu > .menu-item > .menu-link {
  position: relative;
  min-height: 84px;
  display: flex;
  align-items: center;
  padding: 0 14px !important;
  color: #181a1d !important;
  font-family: var(--font-heading) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: .25px !important;
  white-space: nowrap;
}

#masthead .main-header-menu > .menu-item > .menu-link::before {
  position: absolute;
  right: 14px;
  bottom: 0;
  left: 14px;
  height: 3px;
  background: #e2001a;
  content: '';
  opacity: 0;
  transform: scaleX(.35);
  transform-origin: left;
  transition: opacity .25s ease, transform .25s ease;
}

#masthead .main-header-menu > .menu-item:hover > .menu-link,
#masthead .main-header-menu > .menu-item > .menu-link:focus-visible,
#masthead .main-header-menu > .current-menu-item > .menu-link,
#masthead .main-header-menu > .current-menu-ancestor > .menu-link {
  color: #e2001a !important;
}

#masthead .main-header-menu > .menu-item:hover > .menu-link::before,
#masthead .main-header-menu > .menu-item > .menu-link:focus-visible::before,
#masthead .main-header-menu > .current-menu-item > .menu-link::before,
#masthead .main-header-menu > .current-menu-ancestor > .menu-link::before {
  opacity: 1;
  transform: scaleX(1);
}

#masthead .main-header-menu > .menu-item:last-child {
  margin-left: 10px;
}

#masthead .main-header-menu > .menu-item:last-child > .menu-link {
  min-height: 44px;
  padding: 0 22px !important;
  border-radius: 999px !important;
  background: #e2001a;
  color: #ffffff !important;
  font-family: var(--font-heading) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  box-shadow: 0 6px 18px rgba(226,0,26,.25);
  transition: background .25s ease, transform .25s ease, box-shadow .25s ease;
}

#masthead .main-header-menu > .menu-item:last-child > .menu-link::before {
  display: none;
}

#masthead .main-header-menu > .menu-item:last-child > .menu-link::after {
  width: 14px;
  height: 14px;
  margin-left: 8px;
  flex-shrink: 0;
  content: '';
  display: inline-block;
  vertical-align: middle;
  background-color: #ffffff;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7.2 3.5 10 8l-2.1 2.2c1.2 2.6 3.2 4.6 5.8 5.8l2.2-2.1 4.6 2.8-.7 3.1c-.2.8-.9 1.3-1.7 1.3C9.7 20.5 3.5 14.3 2.9 5.9c0-.8.5-1.5 1.3-1.7l3-.7Z' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7.2 3.5 10 8l-2.1 2.2c1.2 2.6 3.2 4.6 5.8 5.8l2.2-2.1 4.6 2.8-.7 3.1c-.2.8-.9 1.3-1.7 1.3C9.7 20.5 3.5 14.3 2.9 5.9c0-.8.5-1.5 1.3-1.7l3-.7Z' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

#masthead .main-header-menu > .menu-item:last-child > .menu-link:hover,
#masthead .main-header-menu > .menu-item:last-child > .menu-link:focus-visible {
  background: #0b0c0e;
  color: #ffffff !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(11,12,14,.3);
}

#masthead .dropdown-menu-toggle {
  margin-left: 7px;
  padding: 0 !important;
}

#masthead .dropdown-menu-toggle .ast-arrow-svg {
  width: 9px;
  height: 6px;
  fill: currentColor;
  transition: transform .25s ease;
}

#masthead .menu-item-has-children:hover > .menu-link .ast-arrow-svg {
  transform: rotate(180deg);
}

/* Products mega panel */
#ast-desktop-header .main-header-menu > .menu-item-has-children > .sub-menu {
  left: 50%;
  width: 620px !important;
  min-width: 620px !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  padding: 1px !important;
  border: 1px solid #dedcd7 !important;
  border-top: 4px solid #e2001a !important;
  border-radius: 0 !important;
  background: #d9d7d2 !important;
  box-shadow: 0 22px 55px rgba(11,12,14,.18) !important;
  transform: translateX(-50%);
}

#ast-desktop-header .main-header-menu .sub-menu > .menu-item {
  min-width: 0;
  background: #ffffff;
}

#ast-desktop-header .main-header-menu .sub-menu > .menu-item > .menu-link {
  position: relative;
  min-height: 96px;
  display: grid !important;
  grid-template-columns: 50px 1fr;
  align-content: center;
  gap: 14px;
  padding: 18px 20px !important;
  color: #15171a !important;
  font-family: var(--font-heading) !important;
  font-size: 16.5px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  text-transform: none;
  transition: background .25s ease, color .25s ease !important;
}

#ast-desktop-header .main-header-menu .sub-menu > .menu-item > .menu-link::before {
  width: 50px;
  height: 50px;
  grid-row: 1 / span 2;
  align-self: center;
  border: 1px solid #e2ded9;
  border-radius: 8px;
  background-color: #ffffff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  content: '';
  transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}

#ast-desktop-header .main-header-menu .sub-menu > .menu-item:nth-child(1) > .menu-link::before { background-image: url('/wp-content/uploads/sectors/tudien-300x300.png'); }
#ast-desktop-header .main-header-menu .sub-menu > .menu-item:nth-child(2) > .menu-link::before { background-image: url('/wp-content/uploads/sectors/burner-300x300.png'); }
#ast-desktop-header .main-header-menu .sub-menu > .menu-item:nth-child(3) > .menu-link::before { background-image: url('/wp-content/uploads/sectors/lohoi-300x300.png'); }
#ast-desktop-header .main-header-menu .sub-menu > .menu-item:nth-child(4) > .menu-link::before { background-image: url('/wp-content/uploads/sectors/phukien-300x300.png'); }

#ast-desktop-header .main-header-menu .sub-menu > .menu-item > .menu-link::after {
  grid-column: 2;
  color: #8a8c90;
  content: 'Xem sản phẩm  →';
  font-family: var(--font-heading) !important;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .5px;
  margin-top: 2px;
}

#ast-desktop-header .main-header-menu .sub-menu > .menu-item > .menu-link:hover,
#ast-desktop-header .main-header-menu .sub-menu > .menu-item > .menu-link:focus-visible {
  padding: 18px 20px !important;
  background: #f8f7f5 !important;
  color: #e2001a !important;
}

#ast-desktop-header .main-header-menu .sub-menu > .menu-item > .menu-link:hover::before,
#ast-desktop-header .main-header-menu .sub-menu > .menu-item > .menu-link:focus-visible::before {
  border-color: #e2001a;
  transform: scale(1.04);
  box-shadow: 0 4px 12px rgba(226, 0, 26, 0.12);
}

@media (max-width: 1120px) and (min-width: 922px) {
  #masthead .site-primary-header-wrap.ast-container { width: min(100% - 28px, 1320px); }
  #masthead .ast-builder-grid-row { gap: 18px; }
  #masthead .main-header-menu > .menu-item > .menu-link { padding-inline: 9px !important; font-size: 11px !important; }
  #masthead .main-header-menu > .menu-item:last-child { margin-left: 4px; }
  #masthead .main-header-menu > .menu-item:last-child > .menu-link { padding-inline: 14px !important; }
  #masthead .custom-logo-link { padding-right: 12px; }
  #masthead .custom-logo-link::after { display: none; }
  #masthead .custom-logo { max-width: 135px; padding-right: 0 !important; }
}

/* Mobile header and navigation drawer */
@media (max-width: 921px) {
  #masthead .ast-mobile-header-wrap .ast-primary-header-bar {
    min-height: 72px;
    padding: 0 !important;
  }

  #masthead .ast-mobile-header-wrap .site-primary-header-wrap.ast-container {
    width: 100%;
    min-height: 72px;
    padding: 0 16px !important;
  }

  #masthead .ast-mobile-header-wrap .ast-builder-grid-row {
    min-height: 72px;
    gap: 16px;
  }

  #masthead .ast-mobile-header-wrap .custom-logo-link {
    min-height: 48px;
    padding: 5px 10px;
    border-left-width: 3px;
  }

  #masthead .ast-mobile-header-wrap .custom-logo-link::after { display: none; }
  #masthead .ast-mobile-header-wrap .custom-logo { height: 38px !important; max-width: 128px; padding: 0 !important; }

  #masthead .ast-button-wrap .menu-toggle {
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    border: 1px solid var(--mdc-red, #e2001a) !important;
    border-radius: 8px !important;
    background: var(--mdc-red, #e2001a) !important;
    color: #ffffff !important;
  }

  #masthead .ast-button-wrap .menu-toggle:hover,
  #masthead .ast-button-wrap .menu-toggle:focus-visible {
    background: #b80015 !important;
    border-color: #b80015 !important;
    color: #ffffff !important;
  }
  #masthead .mobile-menu-toggle-icon .ast-mobile-svg { width: 22px !important; height: 22px !important; fill: currentColor !important; }

  #masthead .ast-mobile-header-content {
    position: absolute;
    right: 0;
    left: 0;
    width: 100%;
    padding: 0 16px 18px;
    border-top: 1px solid #dedcd7;
    border-bottom: 4px solid #e2001a;
    background: #ffffff !important;
    box-shadow: 0 22px 45px rgba(11,12,14,.16);
  }

  #masthead .ast-builder-menu-mobile { padding: 0 !important; }
  #masthead .ast-builder-menu-mobile .main-header-menu { display: block; background: #ffffff !important; }
  #masthead .ast-builder-menu-mobile .main-header-menu > .menu-item { border-bottom: 1px solid #e4e2dd; }
  #masthead .ast-builder-menu-mobile .main-header-menu > .menu-item > .menu-link {
    min-height: 56px;
    display: flex;
    align-items: center;
    padding: 0 14px !important;
    background: transparent !important;
    color: #15171a !important;
    font-family: var(--font-heading) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: .25px !important;
  }

  #masthead .ast-builder-menu-mobile .main-header-menu > .current-menu-item > .menu-link,
  #masthead .ast-builder-menu-mobile .main-header-menu > .current-menu-ancestor > .menu-link {
    border-left: 3px solid #e2001a;
    color: #e2001a !important;
  }

  #masthead .ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle {
    top: 5px;
    right: 4px;
    width: 46px;
    height: 46px;
    border: 0;
    background: #f3f1ed;
    color: #15171a;
  }

  #masthead .ast-builder-menu-mobile .sub-menu { padding: 5px 0 12px !important; background: #f3f1ed !important; }
  #masthead .ast-builder-menu-mobile .sub-menu .menu-link {
    min-height: 50px;
    padding: 8px 16px 8px 38px !important;
    border-left: 0;
    background: transparent !important;
    color: #3f4145 !important;
    font-family: var(--font-heading) !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
  }

  #masthead .ast-builder-menu-mobile .main-header-menu > .menu-item:last-child {
    margin: 14px 0 0;
    border: 0;
  }

  #masthead .ast-builder-menu-mobile .main-header-menu > .menu-item:last-child > .menu-link {
    min-height: 48px;
    justify-content: center;
    border-radius: 999px !important;
    background: #e2001a !important;
    color: #ffffff !important;
    font-family: var(--font-heading) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
  }
}

/* Section-specific type pairing: Montserrat titles and Inter Regular copy. */
.mdc-home-why .mdc-home-why-intro h2 {
  font-family: 'MDC Montserrat', Arial, sans-serif !important;
  font-weight: 800 !important;
  line-height: 1.12 !important;
}

.mdc-home-why .mdc-home-why-list h3 {
  font-family: 'MDC Montserrat', Arial, sans-serif !important;
  font-weight: 700 !important;
}

.mdc-home-why .mdc-home-why-intro > p:last-of-type,
.mdc-home-why .mdc-home-why-list p {
  font-family: 'MDC Inter', Arial, sans-serif !important;
  font-weight: 400 !important;
}

/* Vietnamese heading rhythm across editorial and catalog components. */
.mdc-home-hero h1,
.mdc-about-hero h1,
.mdc-service-hero h1,
.mdc-contact-hero h1,
.mdc-dynamic-hero h1,
.mdc-news-hero h1,
.mdc-article-entry > .mdc-article-header h1,
.mdc-product-detail-summary h1 {
  line-height: 1.2 !important;
  letter-spacing: -.8px !important;
}

.mdc-site-section-head h2,
.mdc-about-section-head h2,
.mdc-about-cta h2,
.mdc-home-cta-copy h2,
.mdc-service-cta h2,
.mdc-contact-footer-cta h2,
.mdc-dynamic-catalog-toolbar h2,
.mdc-dynamic-section-header h2,
.mdc-dynamic-deep-heading h2,
.mdc-dynamic-quote-copy h2,
.mdc-news-section-header h2,
.mdc-news-featured-content > h2,
.mdc-article-section-header h2,
.baite-footer-map-copy h2 {
  line-height: 1.3 !important;
  letter-spacing: -.45px !important;
}

.mdc-home-card-body h3,
.mdc-home-industry-card h3,
.mdc-about-cap-content h3,
.mdc-about-direction-item h3,
.mdc-about-values-grid h3,
.mdc-service-card h3,
.mdc-service-sign-list h3,
.mdc-service-process-list h3,
.mdc-dynamic-product-title,
.mdc-news-card-body h3,
.mdc-article-related-card h3 {
  line-height: 1.4 !important;
  letter-spacing: 0 !important;
}

/* Header live product search dropdown. */
#masthead .mdc-header-product-search form { position: relative; }

#masthead .mdc-header-search-results {
  position: absolute;
  z-index: 10002;
  top: calc(100% + 8px);
  right: 0;
  width: min(380px, calc(100vw - 32px));
  max-height: min(540px, calc(100vh - 110px));
  overflow-y: auto;
  border: 1px solid #d8d6d1;
  border-top: 4px solid #e2001a;
  background: #ffffff;
  box-shadow: 0 18px 42px rgba(11,12,14,.2);
}

#masthead .mdc-header-search-results[hidden] { display: none !important; }

#masthead .mdc-header-search-result {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
  gap: 13px;
  min-height: 78px;
  padding: 10px 13px;
  border-bottom: 1px solid #e4e2dd;
  color: #15171a !important;
  text-decoration: none;
}

#masthead .mdc-header-search-result:hover,
#masthead .mdc-header-search-result:focus-visible,
#masthead .mdc-header-search-result.is-active { background: #f3f1ed; }

#masthead .mdc-header-search-result img {
  width: 58px;
  height: 58px;
  padding: 4px;
  background: #ffffff;
  object-fit: contain;
}

#masthead .mdc-header-search-result-copy,
#masthead .mdc-header-search-result-title,
#masthead .mdc-header-search-result-meta,
#masthead .mdc-header-search-result-price { display: block; min-width: 0; }

#masthead .mdc-header-search-result-title {
  color: #15171a;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.4;
}

#masthead .mdc-header-search-result:hover .mdc-header-search-result-title,
#masthead .mdc-header-search-result:focus-visible .mdc-header-search-result-title,
#masthead .mdc-header-search-result.is-active .mdc-header-search-result-title { color: #e2001a; }

#masthead .mdc-header-search-result-meta {
  margin-top: 3px;
  overflow: hidden;
  color: #696c70;
  font-size: 10px;
  font-weight: 650;
  line-height: 1.4;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#masthead .mdc-header-search-result-price {
  margin-top: 4px;
  color: #e2001a;
  font-size: 9px;
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: .45px;
}

#masthead .mdc-header-search-all {
  display: block;
  padding: 14px;
  background: #0b0c0e;
  color: #ffffff !important;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: .6px;
  text-align: center;
  text-decoration: none;
}

#masthead .mdc-header-search-all:hover,
#masthead .mdc-header-search-all:focus-visible,
#masthead .mdc-header-search-all.is-active { background: #e2001a; }

@media (max-width: 921px) {
  #masthead .mdc-header-search-results {
    top: calc(100% + 6px);
    right: 0;
    left: 0;
    width: 100%;
    max-height: min(430px, calc(100vh - 190px));
  }

  #masthead .mdc-header-search-result {
    grid-template-columns: 52px minmax(0, 1fr);
    min-height: 72px;
    padding: 9px 11px;
  }

  #masthead .mdc-header-search-result img { width: 52px; height: 52px; }
}

/* Product search in the Astra primary and mobile menus. */
#masthead .mdc-header-product-search {
  display: flex;
  align-items: center;
  margin-left: 8px;
}

#masthead .mdc-header-product-search form {
  display: grid;
  grid-template-columns: minmax(120px, 180px) 42px;
  align-items: center;
  min-height: 42px;
  border: 1px solid #d8d6d1;
  border-radius: 999px;
  background: #ffffff;
  overflow: hidden;
  transition: border-color .25s ease, box-shadow .25s ease;
}

#masthead .mdc-header-product-search input {
  width: 100%;
  min-width: 0;
  height: 40px;
  padding: 8px 10px 8px 16px;
  border: 0;
  outline: 0;
  background: transparent;
  color: #15171a;
  font-family: var(--font-heading) !important;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
}

#masthead .mdc-header-product-search input::placeholder {
  color: #8a8c90;
  font-family: var(--font-heading) !important;
  font-size: 11.5px;
  font-weight: 500;
}

#masthead .mdc-header-product-search form:focus-within {
  border-color: #e2001a;
  box-shadow: 0 0 0 3px rgba(226,0,26,.12);
}

#masthead .mdc-header-product-search button {
  width: 42px;
  height: 40px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-left: 1px solid #d8d6d1;
  border-radius: 0 999px 999px 0;
  background: #0b0c0e;
  color: #ffffff;
  cursor: pointer;
  transition: background .25s ease;
}

#masthead .mdc-header-product-search button:hover,
#masthead .mdc-header-product-search button:focus-visible { background: #e2001a; }

@media (max-width: 1120px) and (min-width: 922px) {
  #masthead .mdc-header-product-search form { grid-template-columns: minmax(95px, 125px) 40px; }
  #masthead .mdc-header-product-search button { width: 40px; }
}

@media (max-width: 921px) {
  #masthead .mdc-header-product-search {
    width: 100%;
    margin: 12px 0 4px;
    padding: 0 14px;
    border: 0 !important;
  }

  #masthead .mdc-header-product-search form {
    width: 100%;
    grid-template-columns: minmax(0, 1fr) 46px;
    min-height: 46px;
    border-radius: 999px;
    overflow: hidden;
  }

  #masthead .mdc-header-product-search input { height: 44px; font-size: 14px; padding-left: 18px; }
  #masthead .mdc-header-product-search button { width: 46px; height: 44px; border-radius: 0 999px 999px 0; }
}

/* Header corrections: preserve Astra layout and keep the brand mark unmodified. */
#masthead .ast-builder-grid-row {
  grid-template-columns: max-content auto !important;
  gap: 24px;
}

#masthead #ast-desktop-header .site-primary-header-wrap.ast-container {
  width: 100% !important;
  max-width: none !important;
  padding-right: 24px !important;
  padding-left: 18px !important;
}

#masthead .site-header-primary-section-right {
  width: 100%;
  margin-left: auto;
  justify-content: flex-end;
}

#masthead .site-header-primary-section-right > .ast-builder-layout-element,
#masthead .site-header-primary-section-right .ast-main-header-bar-alignment {
  margin-left: auto;
}

#masthead .custom-logo-link,
#masthead .ast-mobile-header-wrap .custom-logo-link {
  min-height: 0;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

#masthead .custom-logo-link::after {
  display: none !important;
  content: none !important;
}

#masthead .custom-logo,
#masthead .ast-mobile-header-wrap .custom-logo {
  width: auto !important;
  height: 54px !important;
  max-width: 150px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  object-fit: contain;
}

@media (max-width: 1120px) and (min-width: 922px) {
  #masthead .ast-builder-grid-row { gap: 14px; }
  #masthead #ast-desktop-header .site-primary-header-wrap.ast-container {
    padding-right: 14px !important;
    padding-left: 14px !important;
  }
  #masthead .custom-logo { height: 48px !important; max-width: 130px !important; }
}

@media (max-width: 921px) {
  #masthead .ast-mobile-header-wrap .ast-builder-grid-row {
    grid-template-columns: max-content auto !important;
    gap: 16px;
  }
  #masthead .ast-mobile-header-wrap .site-primary-header-wrap.ast-container {
    width: 100% !important;
    max-width: none !important;
    padding-right: 14px !important;
    padding-left: 14px !important;
  }
  #masthead .ast-mobile-header-wrap .site-header-primary-section-right {
    margin-left: auto;
    justify-content: flex-end;
  }
  #masthead .ast-mobile-header-wrap .custom-logo { height: 44px !important; max-width: 125px !important; }
}

/* ==========================================================================
   MDC CORE PAGES - INDUSTRIAL EDITORIAL SYSTEM
   ========================================================================== */
.mdc-site-main,
.mdc-site-page {
  --mdc-red: #e2001a;
  --mdc-black: #0b0c0e;
  --mdc-ink: #15171a;
  --mdc-paper: #f3f1ed;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  background: #ffffff;
  color: var(--mdc-ink);
}

.mdc-site-main *, .mdc-site-main *::before, .mdc-site-main *::after,
.mdc-site-page *, .mdc-site-page *::before, .mdc-site-page *::after { box-sizing: border-box; }
.mdc-site-main h1, .mdc-site-main h2, .mdc-site-main h3, .mdc-site-main p,
.mdc-site-page h1, .mdc-site-page h2, .mdc-site-page h3, .mdc-site-page p { background: transparent !important; }
.mdc-site-main a, .mdc-site-page a { text-decoration: none !important; }
.mdc-site-main img, .mdc-site-page img { max-width: 100%; }

.mdc-site-container { width: min(1200px, calc(100% - 40px)); margin-inline: auto; }
.mdc-home > :not(.mdc-home-hero) .mdc-site-container { width: min(1280px, calc(100% - 48px)); }
.mdc-site-grid,
.mdc-service-hero-grid,
.mdc-contact-hero-grid {
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .14;
  background-image: linear-gradient(rgba(255,255,255,.22) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.22) 1px, transparent 1px);
  background-size: 48px 48px;
  -webkit-mask-image: linear-gradient(90deg, #000, transparent 78%);
  mask-image: linear-gradient(90deg, #000, transparent 78%);
}
.mdc-site-icon { width: 1.15em; height: 1.15em; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; overflow: visible; }
.mdc-site-kicker { display: flex; align-items: center; gap: 18px; max-width: 420px; margin-bottom: 28px; color: #aeb1b5; font-size: 10px; line-height: 1.3; font-weight: 900; letter-spacing: 1.6px; }
.mdc-site-kicker::after { content: ''; height: 1px; flex: 1; background: #4b4e52; }
.mdc-site-kicker b { order: 3; color: var(--mdc-red); white-space: nowrap; }
.mdc-site-eyebrow { margin: 0 0 15px; color: #ffffff !important; font-size: 11px; line-height: 1.3; font-weight: 900; letter-spacing: 1.7px; }
.mdc-site-btn, .mdc-site-button { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; padding: 14px 22px; border: 1px solid transparent; color: #ffffff !important; font-size: 11px; line-height: 1.3; font-weight: 900; letter-spacing: .7px; transition: color .25s ease, background .25s ease, border-color .25s ease, transform .25s ease; }
.mdc-site-btn:hover, .mdc-site-button:hover { transform: translateY(-3px); }
.mdc-site-btn-primary, .mdc-site-button-red { background: var(--mdc-red); }
.mdc-site-btn-primary:hover, .mdc-site-button-red:hover { background: #b80015; }
.mdc-site-btn-ghost { border-color: #56595e; background: transparent; }
.mdc-site-btn-ghost:hover { border-color: #ffffff; background: #ffffff; color: var(--mdc-black) !important; }
.mdc-site-btn-light, .mdc-site-button-light { background: #ffffff; color: var(--mdc-black) !important; }
.mdc-site-btn-light:hover, .mdc-site-button-light:hover { background: var(--mdc-black); color: #ffffff !important; }
.mdc-site-button-dark { background: var(--mdc-black); }
.mdc-site-button-dark:hover { background: #292c31; }
.mdc-site-text-link, .mdc-site-link { display: inline-flex; align-items: center; gap: 10px; color: #ffffff !important; font-size: 10px; font-weight: 900; letter-spacing: 1px; }
.mdc-site-text-link:hover, .mdc-site-link:hover { color: var(--mdc-red) !important; }

.mdc-site-section-head { display: flex; align-items: flex-start; gap: 24px; margin-bottom: 52px; }
.mdc-home-solutions .mdc-site-section-head { justify-content: center; text-align: center; }
.mdc-home-solutions .mdc-site-section-head > div > p { color: var(--mdc-ink) !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(34px, 3.5vw, 50px) !important; font-weight: 700 !important; line-height: 1.28 !important; letter-spacing: 0 !important; }
.mdc-home-solutions .mdc-site-section-head > div > p::after { content: ''; display: block; width: 64px; height: 4px; border-radius: 2px; margin: 18px auto 0; background: var(--mdc-red); }
.mdc-site-index, .mdc-site-section-index { min-width: 42px; padding-top: 5px; border-top: 3px solid var(--mdc-red); color: var(--mdc-red); font-size: 11px; line-height: 1; font-weight: 900; }
.mdc-site-section-head > div > p { margin: 0 0 12px; color: var(--mdc-red) !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 17px !important; line-height: 1.6 !important; font-weight: 400 !important; letter-spacing: 0 !important; }
.mdc-site-section-head h2 { margin: 0; color: var(--mdc-ink) !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(30px, 3vw, 46px); line-height: 1.28 !important; font-weight: 700 !important; letter-spacing: 0 !important; }
.mdc-site-section-note { max-width: 340px; margin: 8px 0 0 auto !important; color: #686a6e !important; font-size: 13px; line-height: 1.7; }
.mdc-site-section-head-light h2 { color: #ffffff !important; }
.mdc-site-section-head-light .mdc-site-index,
.mdc-site-section-head-light .mdc-site-section-index { color: #ffffff; }

/* Homepage */
.mdc-home-hero { position: relative; min-height: 520px; height: 72vh; max-height: 720px; display: flex; align-items: flex-end; justify-content: flex-start; isolation: isolate; background: #08090a; color: #ffffff; overflow: hidden; }
.mdc-home-hero::after { content: ''; position: absolute; inset: auto 0 0; height: 8px; z-index: 5; background: linear-gradient(90deg, var(--mdc-red) 0 70%, #fff 70% 71%, transparent 71%); }
.mdc-home-hero-bg-slider { position: absolute; inset: 0; z-index: 1; overflow: hidden; }
.mdc-home-hero-bg-slider::after { content: ''; position: absolute; inset: 0; z-index: 2; background: linear-gradient(0deg, rgba(11,12,14,.82) 0%, rgba(11,12,14,.25) 35%, rgba(11,12,14,.05) 100%); pointer-events: none; }
.mdc-home-hero-track { position: relative; width: 100%; height: 100%; overflow: hidden; background: #08090a; }
.mdc-home-hero-slide { position: absolute; inset: 0; margin: 0; opacity: 0; visibility: hidden; display: flex; align-items: center; justify-content: center; transform: scale(1.01); transition: opacity .5s ease, visibility .5s ease, transform .8s ease; }
.mdc-home-hero-slide.is-active { z-index: 1; opacity: 1; visibility: visible; transform: scale(1); }
.mdc-home-hero-slide img { display: block; width: 100%; height: 100%; max-width: 100%; max-height: 100%; object-fit: contain; object-position: center center; filter: saturate(.95) contrast(1.03); }
.mdc-home-hero-inner { position: relative; z-index: 4; width: 100%; max-width: 100%; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; text-align: left; padding: 0 0 54px 50px; }
.mdc-home-hero-copy { display: flex; flex-direction: column; align-items: flex-start; text-align: left; }
.mdc-home-hero h1 { margin: 0 0 14px; color: #ffffff !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 36px !important; line-height: 1.2 !important; font-weight: 800 !important; letter-spacing: -0.5px; text-shadow: 0 4px 24px rgba(0,0,0,.65); }
.mdc-home-hero h1 span { color: var(--mdc-red) !important; }
.mdc-home-hero-slogan { position: relative; margin: 0 0 32px; padding: 6px 0 6px 18px; border-left: 3px solid var(--mdc-red); color: rgba(255,255,255,.94) !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 16px !important; font-weight: 400 !important; font-style: italic; line-height: 1.6 !important; letter-spacing: .4px; text-shadow: 0 2px 12px rgba(0,0,0,.6); }
.mdc-home-hero-actions { display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap; gap: 18px; }
.mdc-home-hero-actions .mdc-site-btn { min-width: 175px; padding: 15px 28px; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 17.5px !important; font-weight: 700 !important; border-radius: 8px; }
.mdc-home-hero .mdc-home-slider-arrow { position: absolute; z-index: 5; top: 50%; width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; padding: 0; border: 1px solid rgba(255,255,255,.4); border-radius: 50%; background: rgba(11,12,14,.6); color: #ffffff; font-size: 22px; cursor: pointer; transform: translateY(-50%); transition: background .25s ease, border-color .25s ease; backdrop-filter: blur(4px); }
.mdc-home-hero .mdc-home-slider-arrow:hover, .mdc-home-hero .mdc-home-slider-arrow:focus-visible { border-color: var(--mdc-red); background: var(--mdc-red); }
.mdc-home-hero .mdc-home-slider-prev { left: 32px; }
.mdc-home-hero .mdc-home-slider-next { right: 32px; }
.mdc-home-hero .mdc-home-slider-nav { position: absolute; z-index: 5; right: 40px; bottom: 42px; left: auto; display: flex; align-items: center; justify-content: flex-end; gap: 20px; padding: 0; }
.mdc-home-hero .mdc-home-slider-count { display: flex; align-items: baseline; gap: 5px; color: #ffffff; }
.mdc-home-hero .mdc-home-slider-count b { color: var(--mdc-red); font-size: 18px; }
.mdc-home-hero .mdc-home-slider-count span { color: #d0d2d6; font-size: 12px; font-weight: 700; }
.mdc-home-hero .mdc-home-slider-dots { display: flex; align-items: center; gap: 8px; }
.mdc-home-hero .mdc-home-slider-dots button { width: 30px; height: 4px; min-width: 0; min-height: 0; padding: 0; border: 0; border-radius: 2px; background: rgba(255,255,255,.45); cursor: pointer; transition: width .25s ease, background .25s ease; }
.mdc-home-hero .mdc-home-slider-dots button.is-active { width: 48px; background: var(--mdc-red); }

@media (prefers-reduced-motion: reduce) {
  .mdc-home-hero-slide { transform: none; transition: none; }
  .mdc-home-slider-dots button { transition: none; }
  .mdc-home-service-points article,
  .mdc-home-service-points article::before,
  .mdc-home-service-copy h2::after,
  .mdc-home-industries-heading h2::after,
  .mdc-site-btn.mdc-home-service-btn { transition: none; }
  .mdc-home-service-points article:hover,
  .mdc-site-btn.mdc-home-service-btn:hover { transform: none; }
  .mdc-home-industry-track { will-change: transform; }
}

.mdc-home-stats { background: var(--mdc-paper); border-bottom: 1px solid #d4d1cb; }
.mdc-home-stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.mdc-home-stat { min-width: 0; padding: 30px 25px; border-right: 1px solid #d4d1cb; }
.mdc-home-stat:last-child { border-right: 0; }
.mdc-home-stat b { display: block; color: var(--mdc-ink); font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 40px; line-height: 1; font-weight: 700 !important; letter-spacing: -1px; }
.mdc-home-stat b span { color: var(--mdc-red); font-size: 18px; letter-spacing: 0; }
.mdc-home-stat p { margin: 10px 0 0; color: #707276 !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 17px !important; line-height: 1.6 !important; font-weight: 400 !important; letter-spacing: 0 !important; }
.mdc-home-solutions, .mdc-home-industries, .mdc-home-news { padding: 100px 0; }
.mdc-home-section-link { display: inline-flex; align-items: center; gap: 8px; color: var(--mdc-ink) !important; font-size: 9px; font-weight: 900; letter-spacing: .7px; }
.mdc-home-section-link:hover, .mdc-home-section-link:focus-visible { color: var(--mdc-red) !important; }
.mdc-home-solution-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid #d6d3ce; border-left: 1px solid #d6d3ce; }
.mdc-home-solution-card { position: relative; min-width: 0; min-height: 445px; display: grid; grid-template-columns: minmax(220px, .9fr) minmax(0, 1.1fr); align-items: stretch; padding: 28px; border-right: 1px solid #d6d3ce; border-bottom: 1px solid #d6d3ce; color: var(--mdc-ink) !important; transition: color .3s ease, background .3s ease; }
.mdc-home-card-no { position: absolute; top: 24px; right: 26px; color: #8a8c90; font-size: 10px; font-weight: 900; }
.mdc-home-card-image { min-height: 310px; display: flex; align-items: center; justify-content: center; margin: 28px 30px 0 0; overflow: hidden; background: #ffffff; }
.mdc-home-card-image img { width: 94%; height: 280px; object-fit: contain; transition: transform .35s ease; }
.mdc-home-solution-card:hover img { transform: scale(1.06); }
.mdc-home-card-body { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: 50px 10px 22px 0; }
.mdc-home-card-body > .mdc-site-icon { width: 34px; height: 34px; color: var(--mdc-red); }
.mdc-home-card-body h3 { margin: 22px 0 16px; color: inherit !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 30px !important; line-height: 1.3 !important; font-weight: 700 !important; letter-spacing: 0 !important; }
.mdc-home-card-body p { max-width: 330px; margin: 0 0 28px; color: #64666a !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 17px !important; font-weight: 400 !important; line-height: 1.68 !important; }
.mdc-home-card-body > span { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 18px; border-top: 1px solid #d6d3ce; color: inherit; font-size: 9px; font-weight: 900; letter-spacing: 1px; }
.mdc-home-solution-card .mdc-home-card-body > span { align-self: flex-start; padding: 14px 24px; border-top: 0; border: 1px solid #ffffff; background: var(--mdc-red); color: #ffffff !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 15px !important; font-weight: 700 !important; border-radius: 8px; }

.mdc-home-why { position: relative; padding: 64px 0; background: var(--mdc-paper); color: var(--mdc-ink); }
.mdc-home-why-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 48px; align-items: stretch; }

/* Left intro box: Red background, white text, animated white underline */
.mdc-home-why-intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 48px 40px;
  background: var(--mdc-red);
  border-radius: 12px;
  box-shadow: 0 16px 40px rgba(226, 0, 26, 0.16);
  color: #ffffff;
}

.mdc-home-why-intro h2 {
  position: relative;
  display: inline-block;
  align-self: flex-start;
  margin: 0;
  padding-bottom: 16px;
  color: #ffffff !important;
  font-family: 'MDC Montserrat', Arial, sans-serif !important;
  font-size: clamp(38px, 4vw, 54px);
  font-weight: 800;
  line-height: 1.15;
  cursor: default;
}

.mdc-home-why-intro h2 span {
  color: #ffffff !important;
}

/* White underline under "VÌ SAO CHỌN MDC?" with hover animation */
.mdc-home-why-intro h2::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 70px;
  max-width: 100%;
  height: 4px;
  background: #ffffff;
  border-radius: 2px;
  transition: width 0.35s cubic-bezier(0.25, 1, 0.5, 1);
}

.mdc-home-why-intro:hover h2::after,
.mdc-home-why-intro h2:hover::after {
  width: 100%;
}

.mdc-home-why-statement {
  margin: 24px 0 0;
  color: #ffffff !important;
  font-family: 'MDC Montserrat', Arial, sans-serif !important;
  font-size: clamp(18px, 1.8vw, 24px);
  font-weight: 700;
  line-height: 1.38;
}

.mdc-home-why-description {
  max-width: 460px;
  margin: 18px 0 0;
  color: rgba(255, 255, 255, 0.92) !important;
  font-family: 'MDC Inter', Arial, sans-serif !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.75 !important;
}

.mdc-site-btn.mdc-home-why-button {
  margin-top: 32px;
  align-self: flex-start;
  background: #ffffff;
  color: var(--mdc-red) !important;
  font-family: 'MDC Montserrat', Arial, sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  border: 1px solid #ffffff;
  border-radius: 8px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
  transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}

.mdc-home-why-button:hover,
.mdc-home-why-button:focus-visible {
  background: #111315;
  border-color: #111315;
  color: #ffffff !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(17, 19, 21, 0.25);
}

.mdc-home-why-button svg {
  fill: currentColor;
}

/* Right 1-6 articles: Dark titles with icon, partial underline on the left */
.mdc-home-why-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.mdc-home-why-list article {
  min-width: 0;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  column-gap: 18px;
  padding: 20px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  box-shadow: 0 4px 14px rgba(17, 19, 21, 0.03);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.mdc-home-why-list article:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(17, 19, 21, 0.08);
}

.mdc-why-card-top {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
  margin: 0;
}

.mdc-why-icon {
  width: 58px;
  height: 64px;
  min-width: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 0;
  color: #010101;
  font-size: 28px;
  box-sizing: border-box;
  transition: transform 0.25s ease;
}

.mdc-why-icon i {
  font-size: 28px;
  line-height: 1;
}

.mdc-home-why-list article:hover .mdc-why-icon {
  background: transparent;
  color: #010101;
  transform: translateY(-2px);
}

.mdc-why-content {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.mdc-home-why-list h3 {
  margin: 0;
  color: #333333 !important;
  font-family: 'MDC Montserrat', Arial, sans-serif !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.5px;
}

/* Underline under title - only on the left, not full title */
.mdc-home-why-list h3::after {
  content: '';
  display: block;
  width: 48px;
  height: 3px;
  background: #010101;
  border-radius: 2px;
  margin: 14px 0 16px;
}

.mdc-home-why-list p {
  margin: 0;
  color: #333333 !important;
  font-family: 'MDC Inter', Arial, sans-serif !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.68 !important;
}

.mdc-home-service { position: relative; padding: 66px 0; overflow: hidden; background: var(--mdc-red); color: #ffffff; }
.mdc-home-service::before { position: absolute; inset: 0; opacity: .11; background-image: linear-gradient(rgba(255,255,255,.55) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.55) 1px, transparent 1px); background-size: 52px 52px; content: ''; pointer-events: none; }
.mdc-home-service-inner { position: relative; display: grid; grid-template-columns: minmax(280px,.82fr) minmax(0,1.7fr); gap: 18px; align-items: stretch; }
.mdc-home-service-copy { display: flex; flex-direction: column; justify-content: center; min-height: 310px; padding: 38px; background: #ffffff; color: #010101; }
.mdc-home-service-eyebrow { display: flex; align-items: center; gap: 9px; margin: 0 0 18px; color: #333333 !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 11px !important; font-weight: 700 !important; line-height: 1.4 !important; letter-spacing: .8px !important; }
.mdc-home-service-eyebrow span { width: 8px; height: 8px; flex: 0 0 8px; border-radius: 50%; background: var(--mdc-red); box-shadow: 0 0 0 5px rgba(226,0,26,.12); }
.mdc-home-service-copy h2 { position: relative; display: inline-block; align-self: flex-start; margin: 0; padding-bottom: 15px; color: #010101 !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(36px,3.4vw,50px); font-weight: 700 !important; line-height: 1.28 !important; letter-spacing: 0 !important; }
.mdc-home-service-copy h2::after { position: absolute; bottom: 0; left: 0; width: 58px; max-width: 100%; height: 4px; border-radius: 2px; background: var(--mdc-red); content: ''; transition: width .35s cubic-bezier(.25,1,.5,1); }
.mdc-home-service-copy:hover h2::after { width: 100%; }
.mdc-home-service-lead { max-width: 410px; margin: 20px 0 0; color: #4f4f4f !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 17px !important; font-weight: 400 !important; line-height: 1.7 !important; letter-spacing: 0 !important; }
.mdc-site-btn.mdc-home-service-btn { align-self: flex-start; margin-top: 26px; border: 1px solid var(--mdc-red); border-radius: 8px; background: var(--mdc-red); color: #ffffff !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 12px !important; font-weight: 700 !important; }
.mdc-site-btn.mdc-home-service-btn:hover, .mdc-site-btn.mdc-home-service-btn:focus-visible { border-color: #010101; background: #010101; color: #ffffff !important; transform: translateY(-2px); }
.mdc-home-service-points { position: relative; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; background: rgba(255,255,255,.34); }
.mdc-home-service-points::before { position: absolute; z-index: 2; top: 31px; right: 28px; left: 28px; height: 1px; background: rgba(255,255,255,.55); content: ''; pointer-events: none; }
.mdc-home-service-points article { position: relative; min-width: 0; display: flex; flex-direction: column; justify-content: flex-end; min-height: 310px; padding: 32px 26px; overflow: hidden; background: #b80015; color: #ffffff; transition: background .25s ease, transform .25s ease; }
.mdc-home-service-points article::before { position: absolute; z-index: 3; top: 27px; left: 27px; width: 9px; height: 9px; border: 2px solid #ffffff; border-radius: 50%; background: #b80015; content: ''; transition: background .25s ease; }
.mdc-home-service-points article:hover { z-index: 1; background: #010101; transform: translateY(-4px); }
.mdc-home-service-points article:hover::before { background: #ffffff; }
.mdc-home-service-points .mdc-site-icon { width: 46px; height: 46px; margin-bottom: 48px; color: #ffffff; }
.mdc-home-service-points h3 { margin: 0; color: #ffffff !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 30px !important; font-weight: 700 !important; line-height: 1.3 !important; letter-spacing: 0 !important; }
.mdc-home-service-points h3::after { display: block; width: 38px; height: 2px; margin: 13px 0; background: #ffffff; content: ''; }
.mdc-home-service-points p { margin: 0; color: rgba(255,255,255,.84) !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 17px !important; font-weight: 400 !important; line-height: 1.68 !important; letter-spacing: 0 !important; }

.mdc-home-industries { width: 100%; min-width: 0; max-width: 100%; padding: 78px 0; overflow: hidden; background: #f1f1f1; }
.mdc-home-industries-heading { display: flex; justify-content: center; margin-bottom: 44px; text-align: center; }
.mdc-home-industries-heading h2 { position: relative; display: inline-block; margin: 0; padding-bottom: 16px; color: #333333 !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(32px,3.8vw,48px); font-weight: 700 !important; line-height: 1.28 !important; letter-spacing: 0 !important; }
.mdc-home-industries-heading h2::after { position: absolute; bottom: 0; left: 50%; width: 64px; max-width: 100%; height: 4px; border-radius: 2px; background: var(--mdc-red); content: ''; transform: translateX(-50%); transition: width .35s cubic-bezier(.25,1,.5,1); }
.mdc-home-industries-heading:hover h2::after { width: 100%; }
.mdc-home-industry-marquee { width: 100%; overflow: hidden; cursor: grab; touch-action: pan-y; user-select: none; }
.mdc-home-industry-marquee.is-dragging { cursor: grabbing; }
.mdc-home-industry-track { display: flex; width: max-content; gap: 16px; will-change: transform; }
.mdc-home-industry-group { display: flex; flex: none; gap: 16px; }
.mdc-home-industry-card { position: relative; width: clamp(250px,21vw,310px); height: 310px; flex: none; overflow: hidden; isolation: isolate; background: #010101; }
.mdc-home-industry-card img { width: 100%; height: 100%; object-fit: cover; pointer-events: none; -webkit-user-drag: none; filter: grayscale(.28) brightness(.62); transition: transform .45s ease, filter .45s ease; }
.mdc-home-industry-card:hover img { transform: scale(1.05); filter: grayscale(0) brightness(.48); }
.mdc-home-industry-card > div { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-end; padding: 26px; background: linear-gradient(180deg, transparent 30%, rgba(11,12,14,.9)); }
.mdc-home-industry-card span { position: absolute; top: 20px; right: 20px; color: var(--mdc-red); font-size: 10px; font-weight: 900; }
.mdc-home-industry-card h3 { margin: 0 0 8px; color: #ffffff !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 30px !important; line-height: 1.3 !important; font-weight: 700 !important; letter-spacing: 0 !important; }
.mdc-home-industry-card p { margin: 0; color: #d2d3d5 !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 17px !important; font-weight: 400 !important; line-height: 1.68 !important; }
.mdc-home-news { background: #ffffff; }
.mdc-home-news .mdc-site-section-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 52px; position: relative; }
.mdc-home-news-heading { flex: 1; display: flex; justify-content: center; text-align: center; }
.mdc-home-news-heading h2 { position: relative; display: inline-block; margin: 0; padding-bottom: 16px; color: #333333 !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(32px, 3.8vw, 48px) !important; font-weight: 700 !important; line-height: 1.28 !important; letter-spacing: 0 !important; }
.mdc-home-news-heading h2::after { position: absolute; bottom: 0; left: 50%; width: 64px; max-width: 100%; height: 4px; border-radius: 2px; background: var(--mdc-red); content: ''; transform: translateX(-50%); transition: width .35s cubic-bezier(.25,1,.5,1); }
.mdc-home-news-heading:hover h2::after { width: 100%; }
.mdc-home-news .mdc-home-section-link { position: absolute; right: 0; bottom: 16px; margin: 0; color: var(--mdc-ink) !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 15px !important; font-weight: 700 !important; letter-spacing: 0 !important; }
.mdc-home-news .mdc-home-section-link:hover, .mdc-home-news .mdc-home-section-link:focus-visible { color: var(--mdc-red) !important; }
.mdc-home-news-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  background: transparent;
  border: none;
}

.mdc-home-news-card {
  min-width: 0;
  margin: 0;
  background: #ffffff;
  border: 1px solid #e5e2dc;
  border-radius: 10px;
  overflow: hidden;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  box-sizing: border-box !important;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.mdc-home-news-card:hover {
  transform: translateY(-4px);
  border-color: #d0cbc2;
  box-shadow: 0 12px 28px rgba(11,12,14,.08);
}

.mdc-home-news-image {
  display: block;
  aspect-ratio: 16 / 10 !important;
  overflow: hidden;
  background: var(--mdc-paper);
  flex-shrink: 0;
}

.mdc-home-news-card:first-child .mdc-home-news-image {
  aspect-ratio: 16 / 10 !important;
}

.mdc-home-news-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.85);
  transition: transform .4s ease, filter .4s ease;
}

.mdc-home-news-card:hover .mdc-home-news-image img {
  transform: scale(1.04);
  filter: saturate(1);
}

.mdc-home-news-body {
  padding: 22px;
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
  box-sizing: border-box !important;
}

.mdc-home-news-body time {
  color: var(--mdc-red);
  font-family: 'MDC Inter', Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  display: block;
  margin-bottom: 8px;
}

.mdc-home-news-body h3 {
  margin: 0 0 10px !important;
  color: var(--mdc-ink) !important;
  font-family: 'MDC Montserrat', Arial, sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  min-height: 2.7em !important;
  max-height: 2.7em !important;
}

.mdc-home-news-card:first-child .mdc-home-news-body h3 {
  font-size: 18px !important;
}

.mdc-home-news-body h3 a {
  color: inherit !important;
  text-decoration: none !important;
}

.mdc-home-news-body h3 a:hover,
.mdc-home-news-body h3 a:focus-visible {
  color: var(--mdc-red) !important;
}

.mdc-home-news-body > p {
  margin: 0 0 20px !important;
  color: #686a6e !important;
  font-family: 'MDC Inter', Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  flex-grow: 1 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  min-height: 4.95em !important;
  max-height: 4.95em !important;
}

.mdc-home-news-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--mdc-ink) !important;
  font-family: 'MDC Montserrat', Arial, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  margin-top: auto !important;
}

.mdc-home-news-link:hover,
.mdc-home-news-link:focus-visible {
  color: var(--mdc-red) !important;
}

.mdc-home-news-empty {
  padding: 28px;
  border-left: 4px solid var(--mdc-red);
  background: var(--mdc-paper) !important;
  color: #686a6e !important;
}
.mdc-home-partners { padding: 60px 0; background: var(--mdc-paper); border-bottom: 1px solid #d4d1cb; }
.mdc-home-partners-inner { display: flex; flex-direction: column; align-items: center; gap: 40px; }
.mdc-home-partners-heading { display: flex; justify-content: center; text-align: center; width: 100%; }
.mdc-home-partners-heading h2 { position: relative; display: inline-block; margin: 0; padding-bottom: 16px; color: #000000 !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(32px, 3.8vw, 48px) !important; font-weight: 700 !important; line-height: 1.28 !important; letter-spacing: 0 !important; }
.mdc-home-partners-heading h2::after { position: absolute; bottom: 0; left: 50%; width: 64px; max-width: 100%; height: 4px; border-radius: 2px; background: var(--mdc-red); content: ''; transform: translateX(-50%); transition: width .35s cubic-bezier(.25,1,.5,1); }
.mdc-home-partners-heading:hover h2::after { width: 100%; }
.mdc-home-partner-list { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); align-items: center; justify-items: center; gap: 36px; width: 100%; }
.mdc-home-partner-list img { width: 189px; height: 144px; max-width: 100%; object-fit: contain; filter: grayscale(1); opacity: .75; transition: filter .3s ease, opacity .3s ease, transform .3s ease; }
.mdc-home-partner-list img:hover { filter: grayscale(0); opacity: 1; transform: scale(1.05); }
.mdc-home-cta { position: relative; min-height: 500px; isolation: isolate; background: var(--mdc-black); overflow: hidden; }
.mdc-home-cta-visual { position: absolute; z-index: -1; inset: 0 50% 0 0; }
.mdc-home-cta-visual::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(11,12,14,.25), var(--mdc-black)); }
.mdc-home-cta-visual img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.35); }
.mdc-home-cta-inner { min-height: 500px; display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 80px; }
.mdc-home-cta-copy p { margin: 0 0 18px; color: var(--mdc-red) !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 17px !important; font-weight: 400 !important; line-height: 1.6 !important; letter-spacing: 1px; }
.mdc-home-cta-copy h2 { margin: 0; color: #ffffff !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(34px, 4vw, 55px); line-height: 1.25 !important; font-weight: 700 !important; letter-spacing: 0 !important; }
.mdc-home-cta-copy h2 span { color: var(--mdc-red); }
.mdc-home-cta-contact { display: grid; }
.mdc-home-cta-contact > a:not(.mdc-site-btn) { display: flex; align-items: center; gap: 18px; padding: 18px 0; border-top: 1px solid #3b3d41; color: #ffffff !important; }
.mdc-home-cta-contact > a:not(.mdc-site-btn) .mdc-site-icon { width: 28px; height: 28px; color: var(--mdc-red); }
.mdc-home-cta-contact > a:not(.mdc-site-btn) span { display: flex; flex-direction: column; color: #91949a; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 15px !important; font-weight: 500 !important; line-height: 1.4 !important; letter-spacing: 0 !important; }
.mdc-home-cta-contact > a:not(.mdc-site-btn) b { margin-top: 4px; color: #ffffff; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 18px !important; font-weight: 700 !important; overflow-wrap: anywhere; }
.mdc-home-cta-contact .mdc-site-btn { margin-top: 24px; justify-self: start; padding: 15px 28px; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 15px !important; font-weight: 700 !important; border-radius: 8px; }

/* Service and contact shared technical layouts */
.mdc-service-hero, .mdc-contact-hero { position: relative; min-height: 590px; isolation: isolate; background: var(--mdc-black); color: #ffffff; }
.mdc-service-hero::after, .mdc-contact-hero::after { content: ''; position: absolute; inset: auto 0 0; height: 7px; background: linear-gradient(90deg, var(--mdc-red) 0 68%, #fff 68% 69%, transparent 69%); }
.mdc-service-hero-inner, .mdc-contact-hero-inner { min-height: 590px; display: grid; grid-template-columns: 1.35fr .65fr; align-items: center; gap: 80px; padding-block: 70px; }
.mdc-service-hero h1, .mdc-contact-hero h1 { margin: 0 0 20px; color: #ffffff !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(38px, 4.4vw, 58px) !important; line-height: 1.15 !important; font-weight: 700 !important; letter-spacing: -0.5px !important; text-transform: none !important; }
.mdc-service-hero h1 span, .mdc-contact-hero h1 span { color: var(--mdc-red); }
.mdc-service-hero-lead, .mdc-contact-hero-copy > p:last-child { max-width: 650px; margin: 0 0 24px; color: #bfc2c6 !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 16px !important; line-height: 1.7 !important; font-weight: 400 !important; }
.mdc-service-hero-badges { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 30px; }
.mdc-service-badge { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; border-radius: 4px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.15); color: #e2e4e8; font-family: 'MDC Inter', Arial, sans-serif; font-size: 13px; font-weight: 400; line-height: 1.5; }
.mdc-service-badge .mdc-site-icon { width: 15px; height: 15px; color: var(--mdc-red); flex-shrink: 0; }
.mdc-service-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
.mdc-service-hero-actions .mdc-site-button { padding: 14px 26px; font-family: 'MDC Montserrat', Arial, sans-serif; font-size: 13px; font-weight: 700; border-radius: 6px; letter-spacing: 0; }
.mdc-service-hero-actions .mdc-site-button-dark { background: #26292d; border: 1px solid #484c52; color: #ffffff; }
.mdc-service-hero-actions .mdc-site-button-dark:hover { background: var(--mdc-red); border-color: var(--mdc-red); color: #ffffff; }

.mdc-service-emergency { position: relative; padding: 32px; border: 1px solid #484a4f; border-top: 4px solid var(--mdc-red); background: #15171a; border-radius: 4px; }
.mdc-service-emergency-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; }
.mdc-service-emergency-icon { width: 42px; height: 42px; fill: none; stroke: var(--mdc-red); stroke-width: 1.7; }
.mdc-service-emergency-tag { display: inline-block; padding: 4px 10px; border-radius: 3px; background: rgba(226,0,26,.2); border: 1px solid var(--mdc-red); color: #ffffff; font-family: 'MDC Montserrat', Arial, sans-serif; font-size: 10px; font-weight: 700; letter-spacing: 1px; }
.mdc-service-emergency p { margin: 0 0 8px; color: #ffffff !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 20px !important; font-weight: 700 !important; line-height: 1.3 !important; letter-spacing: 0 !important; text-transform: none !important; }
.mdc-service-emergency a:not(.mdc-service-zalo-btn) { display: block; margin-bottom: 14px; color: var(--mdc-red) !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(26px, 3.2vw, 36px); line-height: 1.1; font-weight: 700; letter-spacing: 0; }
.mdc-service-emergency a:not(.mdc-service-zalo-btn):hover { color: #ffffff !important; }
.mdc-service-emergency span { display: block; color: #bfc2c6; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 17px !important; font-weight: 400 !important; line-height: 1.7 !important; margin-bottom: 0; }

/* Service page typography & interactive underline effects */
.mdc-service-page .mdc-site-section-head { justify-content: center; text-align: center; margin-bottom: 48px; }
.mdc-service-page .mdc-site-section-head > div { display: inline-flex; flex-direction: column; align-items: center; }
.mdc-service-page .mdc-site-section-head h2 {
  position: relative;
  display: inline-block;
  color: var(--mdc-ink) !important;
  font-family: 'MDC Montserrat', Arial, sans-serif !important;
  font-size: clamp(28px, 3.2vw, 42px);
  font-weight: 700 !important;
  line-height: 1.3 !important;
  padding-bottom: 16px;
  margin: 0 auto;
  text-align: center;
  cursor: pointer;
}
.mdc-service-page .mdc-site-section-head h2::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 64px;
  max-width: 100%;
  height: 4px;
  border-radius: 2px;
  background: var(--mdc-red);
  transform: translateX(-50%);
  transition: width .35s cubic-bezier(.25,1,.5,1);
}
.mdc-service-page .mdc-site-section-head:hover h2::after,
.mdc-service-page .mdc-site-section-head h2:hover::after {
  width: 100%;
}

/* Service Warning signs intro head */
.mdc-service-signs .mdc-site-section-head { justify-content: flex-start; text-align: left; margin-bottom: 24px; }
.mdc-service-signs .mdc-site-section-head > div { align-items: flex-start; }
.mdc-service-signs .mdc-site-section-head h2 {
  color: #ffffff !important;
  text-align: left;
  margin: 0;
}
.mdc-service-signs .mdc-site-section-head h2::after {
  left: 0;
  transform: none;
}

/* Service CTA h2 underline */
.mdc-service-cta h2 {
  position: relative;
  display: inline-block;
  margin: 0 0 10px;
  color: #ffffff !important;
  font-family: 'MDC Montserrat', Arial, sans-serif !important;
  font-size: clamp(24px, 2.6vw, 36px) !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  padding-bottom: 12px;
  cursor: pointer;
}
.mdc-service-cta h2::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 58px;
  max-width: 100%;
  height: 4px;
  border-radius: 2px;
  background: #ffffff;
  transition: width .35s cubic-bezier(.25,1,.5,1);
}
.mdc-service-cta:hover h2::after,
.mdc-service-cta h2:hover::after {
  width: 100%;
}

/* Service h3 interactive underlines */
.mdc-service-card h3,
.mdc-service-why-item h3,
.mdc-service-sign-list h3,
.mdc-service-process-list h3,
.mdc-service-industry-card h3,
.mdc-service-faq-item h3 {
  position: relative;
  display: inline-block;
  padding-bottom: 10px;
}
.mdc-service-card h3::after,
.mdc-service-why-item h3::after,
.mdc-service-sign-list h3::after,
.mdc-service-process-list h3::after,
.mdc-service-industry-card h3::after,
.mdc-service-faq-item h3::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 38px;
  max-width: 100%;
  height: 2.5px;
  border-radius: 2px;
  background: var(--mdc-red);
  transition: width .35s cubic-bezier(.25,1,.5,1);
}

.mdc-service-card:hover h3::after,
.mdc-service-card h3:hover::after,
.mdc-service-why-item:hover h3::after,
.mdc-service-why-item h3:hover::after,
.mdc-service-sign-list article:hover h3::after,
.mdc-service-sign-list h3:hover::after,
.mdc-service-process-list li:hover h3::after,
.mdc-service-process-list h3:hover::after,
.mdc-service-industry-card:hover h3::after,
.mdc-service-industry-card h3:hover::after,
.mdc-service-faq-item:hover h3::after,
.mdc-service-faq-item h3:hover::after {
  width: 100%;
}

.mdc-service-scope, .mdc-service-process, .mdc-service-faq, .mdc-contact-direct, .mdc-contact-quote { padding: 70px 0; }
.mdc-service-card-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid #d6d3ce; border-left: 1px solid #d6d3ce; }
.mdc-service-card { min-width: 0; min-height: 380px; display: flex; flex-direction: column; padding: 26px; border-right: 1px solid #d6d3ce; border-bottom: 1px solid #d6d3ce; background: #ffffff; transition: background .3s ease; }
.mdc-service-card:hover, .mdc-service-card:focus-within { background: var(--mdc-ink); }
.mdc-service-card-top, .mdc-contact-card-head { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 18px; color: #85878b; font-family: 'MDC Montserrat', Arial, sans-serif; font-size: 11px; font-weight: 700; }
.mdc-service-card-icon, .mdc-contact-card-icon { width: 32px; height: 32px; fill: none; stroke: var(--mdc-red); stroke-width: 1.7; }
.mdc-service-card h3 { margin: 0 0 12px; color: var(--mdc-ink) !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 19px; line-height: 1.35; font-weight: 700; text-transform: none; }
.mdc-service-card > p { margin: 0 0 14px; color: #44474c !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 14.5px !important; line-height: 1.65 !important; font-weight: 400 !important; }
.mdc-service-card-meta { margin-top: auto; padding: 10px 12px; background: #f4f4f4; border-radius: 4px; font-size: 13.5px; line-height: 1.55; color: #444; }
.mdc-service-card-meta strong { display: block; color: var(--mdc-ink); font-family: 'MDC Montserrat', Arial, sans-serif; font-size: 12px; font-weight: 700; margin-bottom: 2px; }
.mdc-service-card-meta span { color: #555; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 13px !important; font-weight: 400 !important; line-height: 1.55 !important; }

.mdc-service-card:hover h3, .mdc-service-card:focus-within h3 { color: #ffffff !important; }
.mdc-service-card:hover > p, .mdc-service-card:focus-within > p { color: #bfc2c6 !important; }
.mdc-service-card:hover .mdc-service-card-meta, .mdc-service-card:focus-within .mdc-service-card-meta { background: #26292e; }
.mdc-service-card:hover .mdc-service-card-meta strong, .mdc-service-card:focus-within .mdc-service-card-meta strong { color: #ffffff; }
.mdc-service-card:hover .mdc-service-card-meta span, .mdc-service-card:focus-within .mdc-service-card-meta span { color: #bfc2c6 !important; }

/* Process */
.mdc-service-process { background: #fbfbfa; }
.mdc-service-process-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; border-top: 1px solid #d6d3ce; border-left: 1px solid #d6d3ce; }
.mdc-service-process-list li { min-width: 0; min-height: 170px; padding: 24px; border-right: 1px solid #d6d3ce; border-bottom: 1px solid #d6d3ce; background: #ffffff; transition: transform .2s ease; }
.mdc-service-process-list li:hover { background: #ffffff; box-shadow: 0 4px 16px rgba(0,0,0,.06); }
.mdc-service-process-list h3 { margin: 0 0 8px; color: var(--mdc-ink) !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 17px; font-weight: 700; text-transform: none; }
.mdc-service-process-list p { margin: 0; color: #5a5d62 !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 13.5px; line-height: 1.65; font-weight: 400; }

/* FAQ */
.mdc-service-faq { background: #ffffff; }
.mdc-service-faq-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 20px; }
.mdc-service-faq-item { padding: 22px 24px; background: #fbfbfa; border: 1px solid #e4e1db; border-radius: 6px; }
.mdc-service-faq-item h3 { margin: 0 0 8px; color: var(--mdc-ink) !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 16px; font-weight: 700; line-height: 1.4; }
.mdc-service-faq-item p { margin: 0; color: #4f5258 !important; font-family: 'MDC Inter', Arial, sans-serif !important; font-size: 14px; line-height: 1.68; font-weight: 400; }

/* Bottom CTA */
.mdc-service-cta, .mdc-contact-footer-cta { padding: 60px 0; background: var(--mdc-red); color: #ffffff; }
.mdc-service-cta-inner, .mdc-contact-footer-cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.mdc-service-cta-text { max-width: 680px; }
.mdc-service-cta p, .mdc-contact-footer-cta p { margin: 0 0 10px; color: rgba(255,255,255,.8) !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 11px; font-weight: 700; letter-spacing: 1.5px; }
.mdc-service-cta h2, .mdc-contact-footer-cta h2 { margin: 0 0 10px; color: #ffffff !important; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: clamp(24px, 2.6vw, 36px) !important; line-height: 1.25 !important; font-weight: 700 !important; letter-spacing: 0 !important; }
.mdc-service-cta-text span { display: block; color: rgba(255,255,255,.9); font-family: 'MDC Inter', Arial, sans-serif; font-size: 14px; line-height: 1.6; }
.mdc-service-cta-actions, .mdc-contact-footer-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 12px; flex-shrink: 0; }
.mdc-service-cta-actions .mdc-site-button { padding: 14px 24px; font-family: 'MDC Montserrat', Arial, sans-serif; font-size: 12.5px; font-weight: 700; border-radius: 6px; }

/* ==========================================================================
   CONTACT PAGE (MODERN, CLEAN & RESPONSIVE)
   ========================================================================== */

/* Header Trung Tâm */
.mdc-contact-header-center {
  padding: 56px 0 36px;
  text-align: center;
  background: #ffffff;
}

.mdc-contact-eyebrow {
  display: block;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #e2001a;
  letter-spacing: 0.5px;
  text-transform: none;
  margin-bottom: 12px;
}

.mdc-contact-title {
  font-family: 'Montserrat', sans-serif !important;
  font-size: clamp(28px, 3.5vw, 42px) !important;
  font-weight: 700 !important;
  color: #111315 !important;
  line-height: 1.35 !important;
  margin: 0 0 16px;
}

.mdc-contact-title-underline {
  width: 60px;
  height: 4px;
  background-color: #e2001a;
  margin: 0 auto 20px;
  border-radius: 2px;
}

.mdc-contact-intro {
  font-family: 'Inter', sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: #64748b !important;
  line-height: 1.8 !important;
  max-width: 680px;
  margin: 0 auto;
}

/* Khối Kênh Liên Hệ Trực Tiếp */
.mdc-contact-channels {
  padding: 30px 0 64px;
  background: #ffffff;
}

.mdc-contact-section-head {
  margin-bottom: 32px;
}

.mdc-contact-section-head p {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #e2001a;
  letter-spacing: 0.5px;
  text-transform: none;
  margin-bottom: 8px;
}

.mdc-contact-section-head h2 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: clamp(22px, 2.4vw, 30px) !important;
  font-weight: 700 !important;
  color: #111315 !important;
  line-height: 1.35 !important;
  margin: 0;
}

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

.mdc-contact-card {
  display: flex;
  flex-direction: column;
  padding: 28px 24px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  position: relative;
  z-index: 1;
}

.mdc-contact-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.09);
  border-color: #cbd5e1;
}

.mdc-contact-card-icon-wrap {
  width: 50px;
  height: 50px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  margin-bottom: 20px;
}

.mdc-icon-red { background: #fff1f2; color: #e2001a; }
.mdc-icon-dark { background: #f1f5f9; color: #1e293b; }
.mdc-icon-zalo { background: #eff6ff; color: #0068ff; }

.mdc-contact-card-label {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  color: #64748b;
  letter-spacing: 0.4px;
  text-transform: none;
  margin-bottom: 8px;
  display: block;
}

.mdc-contact-card-value {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: #111315 !important;
  line-height: 1.45 !important;
  margin: 0 0 10px;
}

.mdc-contact-card-value a {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
}

.mdc-contact-card-value a:hover {
  color: #e2001a;
}

.mdc-contact-card-note {
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #64748b !important;
  line-height: 1.65 !important;
  margin: 0 0 20px;
  flex-grow: 1;
}

.mdc-contact-card-note a {
  color: #1e293b;
  text-decoration: none;
  font-weight: 700;
}

.mdc-contact-card-action {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 11px 16px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  color: #1e293b;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.2s ease;
  margin-top: auto;
}

.mdc-contact-card-action:hover {
  background: #111315;
  border-color: #111315;
  color: #ffffff;
}

.mdc-action-primary {
  background: #e2001a !important;
  border-color: #e2001a !important;
  color: #ffffff !important;
}

.mdc-action-primary:hover {
  background: #b80015 !important;
  border-color: #b80015 !important;
  color: #ffffff !important;
}

.mdc-action-zalo {
  background: #0068ff !important;
  border-color: #0068ff !important;
  color: #ffffff !important;
}

.mdc-action-zalo:hover {
  background: #0052cc !important;
  border-color: #0052cc !important;
  color: #ffffff !important;
}

/* Khối Bản Đồ Vị Trí */
.mdc-contact-map-section {
  padding: 70px 0;
  background: #f8fafc;
  border-top: 1px solid #e2e8f0;
  border-bottom: 1px solid #e2e8f0;
}

.mdc-contact-map-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 48px;
  align-items: center;
}

.mdc-contact-badge {
  display: inline-block;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #e2001a;
  letter-spacing: 0.5px;
  text-transform: none;
  background: #ffe4e6;
  padding: 6px 14px;
  border-radius: 6px;
  margin-bottom: 14px;
}

.mdc-contact-map-copy h2 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: clamp(24px, 2.6vw, 34px) !important;
  font-weight: 700 !important;
  color: #111315 !important;
  line-height: 1.35 !important;
  margin: 0 0 16px;
}

.mdc-contact-address-text {
  font-family: 'Inter', sans-serif !important;
  font-size: 15.5px !important;
  font-weight: 600 !important;
  color: #1e293b !important;
  line-height: 1.65 !important;
  margin: 0 0 14px;
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.mdc-contact-address-text i {
  color: #e2001a;
  margin-top: 4px;
  flex-shrink: 0;
}

.mdc-contact-map-desc {
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  color: #64748b !important;
  line-height: 1.75 !important;
  margin: 0 0 24px;
}

.mdc-contact-map-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.mdc-contact-map-actions .mdc-site-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.2s ease;
}

.mdc-contact-map-frame {
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
  border: 1px solid #e2e8f0;
  height: 380px;
}

.mdc-contact-map-frame iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

/* Khối Hướng Dẫn Chuẩn Bị Thông Tin */
.mdc-contact-checklist {
  padding: 70px 0;
  background: #ffffff;
}

.mdc-section-head-center {
  text-align: center;
  max-width: 720px;
  margin: 0 auto 40px;
}

.mdc-section-subtitle {
  font-family: 'Inter', sans-serif !important;
  font-size: 15.5px !important;
  font-weight: 400 !important;
  color: #64748b !important;
  line-height: 1.75 !important;
  margin-top: 12px;
}

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

.mdc-contact-step-card {
  position: relative;
  padding: 30px 22px 26px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-top: 3px solid #e2001a;
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.mdc-contact-step-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

.mdc-step-num {
  position: absolute;
  top: 16px;
  right: 18px;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 26px;
  font-weight: 800;
  color: #e2e8f0;
  line-height: 1;
}

.mdc-step-icon {
  width: 42px;
  height: 42px;
  border-radius: 8px;
  background: #fff1f2;
  color: #e2001a;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  margin-bottom: 18px;
}

.mdc-contact-step-card h3 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16.5px !important;
  font-weight: 700 !important;
  color: #111315 !important;
  line-height: 1.4 !important;
  margin: 0 0 10px;
}

.mdc-contact-step-card p {
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #64748b !important;
  line-height: 1.65 !important;
  margin: 0;
}

/* Khối Form Báo Giá & Tư Vấn Kỹ Thuật */
.mdc-contact-quote-section {
  padding: 70px 0 80px;
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
  border-top: 1px solid #e2e8f0;
}

.mdc-contact-quote-grid {
  display: grid;
  grid-template-columns: 1fr 1.35fr;
  gap: 50px;
  align-items: flex-start;
}

.mdc-contact-quote-intro h2 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: clamp(24px, 2.6vw, 34px) !important;
  font-weight: 700 !important;
  color: #111315 !important;
  line-height: 1.35 !important;
  margin: 0 0 16px;
}

.mdc-contact-quote-intro > p {
  font-family: 'Inter', sans-serif !important;
  font-size: 15.5px !important;
  font-weight: 400 !important;
  color: #475569 !important;
  line-height: 1.75 !important;
  margin: 0 0 28px;
}

.mdc-contact-quote-guarantees {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 30px;
}

.mdc-guarantee-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 14px 18px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
}

.mdc-guarantee-item i {
  font-size: 20px;
  color: #e2001a;
  margin-top: 3px;
  flex-shrink: 0;
}

.mdc-guarantee-item strong {
  display: block;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14.5px;
  font-weight: 700;
  color: #111315;
  margin-bottom: 3px;
}

.mdc-guarantee-item span {
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px;
  font-weight: 400;
  color: #64748b;
  line-height: 1.55;
}

.mdc-contact-quote-direct-call {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 22px;
  background: #111315;
  border-radius: 10px;
  color: #ffffff;
}

.mdc-contact-quote-direct-call span {
  font-family: 'Inter', sans-serif !important;
  font-size: 14.5px;
  color: #ffffff !important;
}

.mdc-contact-quote-direct-call a {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 18px;
  font-weight: 700;
  color: #ffffff;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: color 0.2s ease;
}

.mdc-contact-quote-direct-call a:hover {
  color: #ff4d61;
}

.mdc-contact-quote-direct-call a i {
  color: #e2001a;
}

/* Form Styles */
.mdc-contact-quote-form-wrap {
  background: #ffffff;
  padding: 36px 32px;
  border-radius: 14px;
  border: 1px solid #e2e8f0;
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.06);
}

.mdc-quote-form-kicker {
  margin: 0 0 8px;
  color: #e2001a !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  text-transform: none;
  letter-spacing: 0.4px;
}

.mdc-quote-form h3 {
  margin: 0 0 24px;
  color: #111315 !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

.mdc-quote-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.mdc-quote-field {
  margin-bottom: 18px;
}

.mdc-quote-field label {
  display: block;
  margin: 0 0 8px;
  color: #1e293b !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
}

.mdc-quote-field input,
.mdc-quote-field textarea,
.mdc-quote-field select {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 48px;
  padding: 12px 16px !important;
  background: #ffffff !important;
  border: 1.5px solid #cbd5e1 !important;
  border-radius: 8px !important;
  color: #111315 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  outline: none !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  box-shadow: none !important;
}

.mdc-quote-field textarea {
  min-height: 120px !important;
  resize: vertical;
}

.mdc-quote-field input:focus,
.mdc-quote-field textarea:focus,
.mdc-quote-field select:focus {
  border-color: #e2001a !important;
  box-shadow: 0 0 0 3px rgba(226, 0, 26, 0.12) !important;
}

.mdc-quote-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px;
  width: 100% !important;
  min-height: 52px !important;
  padding: 14px 28px !important;
  background: #e2001a !important;
  border: 0 !important;
  border-radius: 8px !important;
  color: #ffffff !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  letter-spacing: 0.3px;
  text-transform: none;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  margin-top: 10px;
  box-shadow: 0 4px 14px rgba(226, 0, 26, 0.25);
}

.mdc-quote-submit:hover {
  background: #b80015 !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(226, 0, 26, 0.35);
}

.mdc-form-status {
  margin: 0 0 20px !important;
  padding: 14px 18px !important;
  border-radius: 8px;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px;
  line-height: 1.6;
}

.mdc-form-status-success {
  background: #ecfdf5 !important;
  border: 1px solid #a7f3d0 !important;
  color: #065f46 !important;
}

.mdc-form-status-error {
  background: #fef2f2 !important;
  border: 1px solid #fecaca !important;
  color: #991b1b !important;
}

/* Responsive Overrides cho Trang Liên Hệ */
@media (max-width: 991px) {
  .mdc-contact-card-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .mdc-contact-map-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

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

  .mdc-contact-quote-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

@media (max-width: 640px) {
  .mdc-contact-header-center {
    padding: 36px 0 24px;
  }

  .mdc-contact-card-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .mdc-contact-card {
    padding: 22px 18px;
  }

  .mdc-contact-steps-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .mdc-quote-fields {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .mdc-contact-quote-form-wrap {
    padding: 24px 18px;
  }

  .mdc-contact-quote-direct-call {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .mdc-contact-map-frame {
    height: 280px;
  }
}

/* Floating contact platforms. Later rules intentionally replace legacy buttons. */
@keyframes mdcFloatingWiggle {
  0%, 100% { transform: rotate(0deg) scale(1); }
  2% { transform: rotate(-8deg) scale(1.06); }
  4% { transform: rotate(8deg) scale(1.06); }
  6% { transform: rotate(-6deg) scale(1.04); }
  8% { transform: rotate(6deg) scale(1.04); }
  10% { transform: rotate(-3deg) scale(1.02); }
  12% { transform: rotate(3deg) scale(1.02); }
  14% { transform: rotate(0deg) scale(1); }
  16% { transform: rotate(0deg) scale(1); }
}

.mdc-floating-bar { position: fixed !important; right: 24px !important; bottom: 24px !important; z-index: 999999 !important; display: flex !important; flex-direction: column !important; align-items: flex-end !important; gap: 10px !important; }
.mdc-platform-btn { width: 52px; max-width: 52px; min-height: 52px; display: flex !important; align-items: center; justify-content: flex-start; overflow: hidden; border: 2px solid #ffffff !important; border-radius: 10px; background: #ffffff !important; color: #111315 !important; box-shadow: 0 8px 25px rgba(0,0,0,.28); transition: max-width .28s ease, width .28s ease, background .25s ease, border-color .25s ease, transform .25s ease; cursor: pointer; text-decoration: none; animation: mdcFloatingWiggle 5s ease-in-out infinite !important; transform-origin: center center !important; }
.mdc-platform-zalo { animation-delay: 0s !important; }
.mdc-platform-phone { animation-delay: 1.6s !important; }
.mdc-platform-quote { animation-delay: 3.2s !important; }
.mdc-platform-btn:hover, .mdc-platform-btn:focus-visible { width: 190px; max-width: 190px; background: #ffffff !important; border-color: var(--mdc-red, #e2001a) !important; animation: none !important; transform: translateY(-2px) scale(1) !important; }
.mdc-platform-btn-icon { width: 48px; height: 48px; flex: 0 0 48px; display: flex; align-items: center; justify-content: center; }
.mdc-platform-btn-icon svg { width: 23px; height: 23px; fill: none; stroke: var(--mdc-red, #e2001a); stroke-width: 1.8; }
.mdc-platform-btn-label { min-width: 132px; padding-right: 16px; opacity: 0; white-space: nowrap; color: #111315; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 13px !important; font-weight: 700 !important; letter-spacing: .2px; transition: opacity .18s ease .08s; }
.mdc-platform-btn:hover .mdc-platform-btn-label, .mdc-platform-btn:focus-visible .mdc-platform-btn-label { opacity: 1; }
.mdc-platform-zalo { background: #ffffff !important; }
.mdc-platform-zalo .mdc-platform-btn-icon { background: transparent; }
.mdc-platform-zalo img { display: block; width: 26px; height: 26px; object-fit: contain; }
.mdc-platform-phone { background: #ffffff !important; }
.mdc-platform-phone .mdc-platform-btn-icon svg { stroke: var(--mdc-red, #e2001a) !important; }
.mdc-platform-quote { background: #ffffff !important; }
.mdc-platform-quote .mdc-platform-btn-icon svg { stroke: var(--mdc-red, #e2001a) !important; }

@media (max-width: 992px) {
  .mdc-home-hero { min-height: 380px; height: clamp(380px, 46vw, 480px); max-height: 480px; }
  .mdc-home-hero-inner { padding: 0 24px 44px; }
  .mdc-home-hero h1 { font-size: 30px !important; margin-bottom: 6px; }
  .mdc-home-hero-slogan { font-size: 14px !important; margin-bottom: 18px; }
  .mdc-home-hero-actions { flex-direction: row; flex-wrap: wrap; width: 100%; max-width: 380px; gap: 12px; }
  .mdc-home-hero-actions .mdc-site-btn { width: auto; flex: 1; }
  .mdc-home-hero .mdc-home-slider-arrow { display: none; }
  .mdc-home-hero .mdc-home-slider-nav { right: 24px; bottom: 20px; }
  .mdc-home-hero-inner, .mdc-service-hero-inner, .mdc-contact-hero-inner { grid-template-columns: 1fr; gap: 52px; }
  .mdc-home-hero-copy, .mdc-service-hero-copy, .mdc-contact-hero-copy { padding-top: 15px; }
  .mdc-home-hero-visual { width: min(100%, 720px); }
  .mdc-service-emergency { width: min(100%, 620px); }
  .mdc-contact-hero-mark { justify-self: start; }
  .mdc-home-solution-grid, .mdc-service-card-grid, .mdc-contact-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mdc-home-solution-card { min-height: 480px; display: flex; flex-direction: column; padding: 22px; }
  .mdc-home-card-no { top: 20px; right: 22px; }
  .mdc-home-card-image { height: 210px; min-height: 210px; margin: 18px 0 25px; }
  .mdc-home-card-image img { height: 195px; }
  .mdc-home-card-body { flex: 1; justify-content: flex-start; padding: 0; }
  .mdc-home-card-body > .mdc-site-icon { width: 25px; height: 25px; }
  .mdc-home-card-body h3 { margin: 16px 0 12px; font-size: 20px; }
  .mdc-home-card-body p { font-size: 12.5px; line-height: 1.65; }
  .mdc-home-why-layout { grid-template-columns: 1fr; }
  .mdc-home-why-layout { gap: 55px; }
  .mdc-home-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mdc-home-news-card:first-child { grid-column: 1 / -1; }
  .mdc-home-service-inner { grid-template-columns: 1fr; }
  .mdc-home-service-copy { min-height: 0; }
  .mdc-home-service-points { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .mdc-home-partners-inner { grid-template-columns: 1fr; gap: 28px; }
  .mdc-home-cta-inner, .mdc-service-signs-grid, .mdc-contact-guidance-grid, .mdc-contact-quote-grid { grid-template-columns: 1fr; gap: 48px; }
  .mdc-home-cta-visual { inset: 0; opacity: .24; }
  .mdc-home-cta-visual::after { background: rgba(11,12,14,.55); }
  .mdc-service-process-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mdc-service-why-grid, .mdc-service-industries-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mdc-service-faq-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .mdc-site-container { width: min(100% - 30px, 1200px); }
  .mdc-home > :not(.mdc-home-hero) .mdc-site-container { width: min(100% - 30px, 1280px); }
  .mdc-site-section-head { gap: 14px; margin-bottom: 38px; }
  .mdc-site-section-head h2 { font-size: 29px; letter-spacing: -1px; }
  .mdc-site-section-note { display: none; }
  .mdc-site-btn, .mdc-site-button { width: 100%; }
  .mdc-home-hero {
    min-height: 280px !important;
    height: clamp(280px, 62vw, 360px) !important;
    max-height: 360px !important;
    display: flex;
    align-items: flex-end;
  }
  .mdc-home-hero-inner {
    padding: 0 16px 16px !important;
    width: 100%;
    gap: 0 !important;
  }
  .mdc-home-hero-copy {
    width: 100%;
    padding-top: 0 !important;
  }
  .mdc-home-hero h1 {
    font-size: 24px !important;
    line-height: 1.2 !important;
    margin: 0 0 6px !important;
    letter-spacing: 0 !important;
  }
  .mdc-home-hero-slogan {
    font-size: 13px !important;
    line-height: 1.4 !important;
    margin: 0 0 14px !important;
    padding: 2px 0 2px 8px !important;
    border-left-width: 2px !important;
  }
  .mdc-home-hero-actions {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
  }
  .mdc-home-hero-actions .mdc-site-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    white-space: nowrap !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: auto !important;
    max-width: none !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 8px 16px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    border-radius: 6px !important;
  }
  .mdc-home-hero-actions .mdc-site-btn svg {
    width: 12px !important;
    height: 12px !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
  }
  .mdc-home-hero .mdc-home-slider-arrow { display: none !important; }
  .mdc-home-hero .mdc-home-slider-nav {
    top: 14px !important;
    right: 14px !important;
    bottom: auto !important;
    left: auto !important;
    background: rgba(11, 12, 14, 0.65) !important;
    padding: 5px 12px !important;
    border-radius: 20px !important;
    backdrop-filter: blur(4px) !important;
    height: auto !important;
    gap: 8px !important;
    z-index: 6 !important;
  }
  .mdc-home-hero .mdc-home-slider-count b { font-size: 12px !important; color: #ff3344 !important; }
  .mdc-home-hero .mdc-home-slider-count span { font-size: 10px !important; color: rgba(255,255,255,0.7) !important; }
  .mdc-home-hero .mdc-home-slider-dots { gap: 4px !important; }
  .mdc-home-hero .mdc-home-slider-dots button { width: 12px !important; height: 3px !important; border-radius: 2px !important; }
  .mdc-home-hero .mdc-home-slider-dots button.is-active { width: 22px !important; background: var(--mdc-red) !important; }


  .mdc-service-hero, .mdc-contact-hero, .mdc-service-hero-inner, .mdc-contact-hero-inner { min-height: 0; }
  .mdc-service-hero-inner, .mdc-contact-hero-inner { padding-block: 55px 68px; gap: 44px; }
  .mdc-service-hero h1, .mdc-contact-hero h1 { font-size: 32px; letter-spacing: -1px; overflow-wrap: anywhere; }
  .mdc-service-hero-actions { align-items: stretch; flex-direction: column; }
  .mdc-home-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mdc-home-stat { padding: 18px 12px; }
  .mdc-home-stat:nth-child(2) { border-right: 0; }
  .mdc-home-stat:nth-child(-n+2) { border-bottom: 1px solid #d4d1cb; }
  .mdc-home-stat b { font-size: 28px; }
  .mdc-home-stat p { font-size: 12.5px; }

  .mdc-home-solutions, .mdc-home-industries, .mdc-home-news, .mdc-home-why, .mdc-home-service,
  .mdc-service-scope, .mdc-service-signs, .mdc-service-process, .mdc-contact-direct,
  .mdc-contact-guidance, .mdc-contact-quote { padding: 42px 0; }
  .mdc-contact-map { padding-bottom: 50px; }
  .mdc-contact-map-grid { grid-template-columns: 1fr; }
  .mdc-contact-map-frame, .mdc-contact-map-frame iframe { min-height: 380px; }

  /* 1. Sản phẩm nổi bật: 2 cards song song gọn gàng */
  .mdc-home-solution-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  .mdc-home-solution-card {
    min-height: 290px !important;
    padding: 12px 10px !important;
    border-radius: 10px !important;
  }
  .mdc-home-card-image {
    height: 95px !important;
    min-height: 95px !important;
    margin: 4px 0 8px !important;
  }
  .mdc-home-card-image img {
    height: 85px !important;
  }
  .mdc-home-card-body {
    padding: 0 !important;
  }
  .mdc-home-card-body > .mdc-site-icon {
    display: none !important;
  }
  .mdc-home-card-body h3 {
    font-size: 16px !important;
    line-height: 1.3 !important;
    margin: 4px 0 6px !important;
  }
  .mdc-home-card-body p {
    font-size: 12.5px !important;
    line-height: 1.5 !important;
    margin-bottom: 12px !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .mdc-home-solution-card .mdc-home-card-body > span {
    padding: 8px 12px !important;
    font-size: 12px !important;
    border-radius: 6px !important;
    align-self: stretch !important;
    justify-content: center !important;
  }

  /* Mobile Service Page Optimization */
  .mdc-service-page .mdc-service-hero { min-height: auto !important; padding-top: 20px; }
  .mdc-service-page .mdc-service-hero-inner { padding: 40px 0 50px !important; gap: 32px !important; }
  .mdc-service-page .mdc-service-hero h1 { font-size: 30px !important; line-height: 1.2 !important; margin-bottom: 12px !important; text-align: left; }
  .mdc-service-page .mdc-service-hero-lead { font-size: 15px !important; line-height: 1.65 !important; margin-bottom: 22px !important; }
  .mdc-service-page .mdc-service-hero-actions { display: flex !important; flex-direction: column !important; width: 100% !important; gap: 10px !important; }
  .mdc-service-page .mdc-service-hero-actions .mdc-site-button { width: 100% !important; justify-content: center !important; padding: 13px 20px !important; font-size: 14px !important; }
  .mdc-service-emergency { padding: 22px 18px !important; border-radius: 8px !important; }
  .mdc-service-emergency-head { margin-bottom: 14px !important; }
  .mdc-service-emergency-icon { width: 34px !important; height: 34px !important; }
  .mdc-service-emergency p { font-size: 17px !important; margin-bottom: 6px !important; }
  .mdc-service-emergency a:not(.mdc-service-zalo-btn) { font-size: 26px !important; margin-bottom: 10px !important; }
  .mdc-service-emergency span { font-size: 14px !important; line-height: 1.6 !important; }

  .mdc-service-scope, .mdc-service-process, .mdc-service-faq { padding: 40px 0 !important; }
  .mdc-service-page .mdc-site-section-head { margin-bottom: 28px !important; }
  .mdc-service-page .mdc-site-section-head h2 { font-size: 24px !important; line-height: 1.3 !important; padding-bottom: 12px !important; }
  
  .mdc-service-card-grid {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    gap: 12px !important;
    padding: 4px 4px 14px !important;
    border: 0 !important;
    background: transparent !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .mdc-service-card-grid::-webkit-scrollbar { display: none; }
  .mdc-service-card {
    flex: 0 0 calc(85vw - 20px) !important;
    min-width: calc(85vw - 20px) !important;
    max-width: 320px !important;
    min-height: 340px !important;
    scroll-snap-align: start !important;
    border-radius: 10px !important;
    border: 1px solid #e5e2dc !important;
    box-shadow: 0 4px 14px rgba(0,0,0,.06) !important;
    padding: 20px !important;
  }
  .mdc-service-card h3 { font-size: 17px !important; line-height: 1.35 !important; }
  .mdc-service-card > p { font-size: 13.5px !important; line-height: 1.6 !important; margin-bottom: 12px !important; }
  .mdc-service-card-meta { padding: 8px 10px !important; font-size: 12.5px !important; }
  .mdc-service-card-meta strong { font-size: 11.5px !important; }
  .mdc-service-card-meta span { font-size: 12px !important; }

  .mdc-service-process-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    border: 0 !important;
  }
  .mdc-service-process-list li {
    min-height: 140px !important;
    padding: 16px 14px !important;
    border-radius: 8px !important;
    border: 1px solid #e2ded8 !important;
  }
  .mdc-service-process-list h3 { font-size: 15px !important; margin-bottom: 6px !important; }
  .mdc-service-process-list p { font-size: 12.5px !important; line-height: 1.55 !important; }

  .mdc-service-faq-grid { grid-template-columns: 1fr !important; gap: 12px !important; }
  .mdc-service-faq-item { padding: 18px 16px !important; border-radius: 8px !important; }
  .mdc-service-faq-item h3 { font-size: 15px !important; line-height: 1.35 !important; }
  .mdc-service-faq-item p { font-size: 13.5px !important; line-height: 1.6 !important; }

  .mdc-service-card-grid, .mdc-contact-card-grid,
  .mdc-service-process-list, .mdc-service-why-grid,
  .mdc-service-industries-grid, .mdc-service-faq-grid { grid-template-columns: 1fr; }

  /* 2. Vì sao chọn MDC: Grid 2 cột compact 6 lý do */
  .mdc-home-why { padding: 42px 0; }
  .mdc-home-why-layout { grid-template-columns: 1fr; gap: 20px; }
  .mdc-home-why-intro { padding: 24px 20px; border-radius: 10px; }
  .mdc-home-why-intro h2 { font-size: 28px !important; }
  .mdc-home-why-statement { font-size: 16px !important; margin-top: 12px; }
  .mdc-home-why-description { font-size: 14px !important; margin-top: 10px; line-height: 1.65; }
  .mdc-site-btn.mdc-home-why-button { margin-top: 18px; width: 100%; justify-content: center; padding: 12px 20px; }
  .mdc-home-why-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  .mdc-home-why-list article {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    padding: 14px 12px !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
  }
  .mdc-why-card-top { margin-bottom: 8px; }
  .mdc-why-icon { width: 36px; height: 36px; min-width: 36px; font-size: 20px; }
  .mdc-why-icon i { font-size: 20px; }
  .mdc-home-why-list h3 { font-size: 15px !important; line-height: 1.35 !important; margin: 0; }
  .mdc-home-why-list h3::after { width: 28px; height: 2px; margin: 8px 0 10px; }
  .mdc-home-why-list p { font-size: 13px !important; line-height: 1.55 !important; }

  /* 3. Dịch vụ kỹ thuật: Horizontal Card Deck (Scroll-Snap) */
  .mdc-home-service { padding: 42px 0; }
  .mdc-home-service-inner { grid-template-columns: 1fr; gap: 16px; }
  .mdc-home-service-copy { padding: 24px 20px; border-radius: 10px; min-height: auto; }
  .mdc-home-service-copy h2 { font-size: 30px !important; }
  .mdc-home-service-lead { font-size: 15px !important; margin-top: 12px; line-height: 1.65; }
  .mdc-site-btn.mdc-home-service-btn { margin-top: 18px; width: 100%; justify-content: center; padding: 12px 20px; }
  .mdc-home-service-points {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    gap: 12px !important;
    padding: 4px 4px 12px !important;
    background: transparent !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .mdc-home-service-points::-webkit-scrollbar { display: none; }
  .mdc-home-service-points::before { display: none !important; }
  .mdc-home-service-points article {
    flex: 0 0 calc(85vw - 24px) !important;
    min-width: calc(85vw - 24px) !important;
    max-width: 320px !important;
    scroll-snap-align: start !important;
    min-height: 220px !important;
    padding: 24px 20px !important;
    border-radius: 10px !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15) !important;
  }
  .mdc-home-service-points article::before { display: none !important; }
  .mdc-home-service-points .mdc-site-icon { width: 36px; height: 36px; margin-bottom: 24px; }
  .mdc-home-service-points h3 { font-size: 22px !important; }
  .mdc-home-service-points p { font-size: 14px !important; line-height: 1.6; }

  /* 4. Tin tức mới: Horizontal Swipe Carousel (Scroll-Snap) */
  .mdc-home-news { padding: 42px 0; }
  .mdc-home-news .mdc-site-section-head { flex-direction: column; align-items: center; gap: 14px; margin-bottom: 24px; }
  .mdc-home-news-heading h2 { font-size: 28px !important; }
  .mdc-home-news .mdc-home-section-link { position: static; width: auto; min-height: auto; margin: 0 auto; text-align: center; }
  .mdc-home-news-grid {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    gap: 14px !important;
    padding: 4px 4px 14px !important;
    border: 0 !important;
    background: transparent !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .mdc-home-news-grid::-webkit-scrollbar { display: none; }
  .mdc-home-news-card {
    flex: 0 0 calc(84vw - 20px) !important;
    min-width: calc(84vw - 20px) !important;
    max-width: 320px !important;
    scroll-snap-align: start !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.06) !important;
    border: 1px solid #e8e6e2 !important;
  }
  .mdc-home-news-card:first-child { grid-column: auto; }
  .mdc-home-news-image { aspect-ratio: 16 / 10 !important; }
  .mdc-home-news-card:first-child .mdc-home-news-image { aspect-ratio: 16 / 10 !important; }
  .mdc-home-news-body { padding: 16px 14px !important; }
  .mdc-home-news-body h3,
  .mdc-home-news-card:first-child .mdc-home-news-body h3 { font-size: 18px !important; line-height: 1.35 !important; margin: 8px 0 10px !important; }
  .mdc-home-news-body > p {
    font-size: 14px !important;
    line-height: 1.55 !important;
    margin-bottom: 14px !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .mdc-home-news-link { font-size: 13.5px !important; }

  /* 5. Ứng dụng công nghiệp & Đối tác */
  .mdc-home-industries {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100vw !important;
    padding: 42px 0 !important;
    overflow: hidden !important;
  }
  .mdc-home-industries-heading { margin-bottom: 24px; }
  .mdc-home-industries-heading h2 { font-size: 26px !important; }
  .mdc-home-industry-marquee {
    width: 100% !important;
    overflow: hidden !important;
    touch-action: pan-y;
  }
  .mdc-home-industry-card { width: 230px !important; height: 260px !important; }

  .mdc-home-partners { padding: 38px 0; }
  .mdc-home-partners-inner { gap: 20px; }
  .mdc-home-partners-heading h2 { font-size: 26px !important; }
  .mdc-home-partner-list {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px 10px !important;
  }
  .mdc-home-partner-list img {
    width: 95px !important;
    height: 52px !important;
  }
  .mdc-home-partner-list img:last-child {
    grid-column: 2 / 3 !important;
    justify-self: center !important;
  }

  /* 6. CTA cuối trang */
  .mdc-home-cta { min-height: auto; padding: 42px 0; }
  .mdc-home-cta-inner { min-height: auto; padding-block: 20px; gap: 28px; }
  .mdc-home-cta-copy h2 { font-size: 28px !important; letter-spacing: 0 !important; }
  .mdc-service-hero, .mdc-contact-hero, .mdc-service-hero-inner, .mdc-contact-hero-inner { min-height: 0; }
  .mdc-service-emergency { padding: 26px; }
  .mdc-service-emergency-icon { margin-bottom: 32px; }
  .mdc-contact-hero-mark { width: 210px; padding: 28px; }
  .mdc-service-card { min-height: 380px; }
  .mdc-service-signs-grid, .mdc-contact-guidance-grid, .mdc-contact-quote-grid { gap: 40px; }
  .mdc-service-sign-list article, .mdc-contact-guidance-list li { grid-template-columns: 34px 1fr; gap: 12px; }
  .mdc-service-process-list li { min-height: 220px; }
  .mdc-service-cta-inner, .mdc-contact-footer-cta-inner { align-items: flex-start; flex-direction: column; }
  .mdc-service-cta-actions, .mdc-contact-footer-actions { width: 100%; }
  .mdc-contact-card-address { grid-column: auto; }
  .mdc-contact-card { min-height: 260px; }
  .mdc-contact-form { padding: 25px 20px; }
  .mdc-contact-form .mdc-quote-fields { grid-template-columns: 1fr; }
  .mdc-contact-form .mdc-quote-field:last-of-type { grid-column: auto; }
  .mdc-contact-form button, .mdc-contact-form input[type="submit"], .mdc-quote-submit { width: 100% !important; }

  .mdc-floating-bar { right: 0 !important; bottom: 0 !important; left: 0 !important; width: 100% !important; display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 0 !important; padding-bottom: env(safe-area-inset-bottom) !important; background: #ffffff; box-shadow: 0 -5px 20px rgba(0,0,0,.18); }
  .mdc-platform-btn, .mdc-platform-btn:hover, .mdc-platform-btn:focus-visible { width: 100% !important; max-width: none !important; min-width: 0; min-height: 62px; flex-direction: column; justify-content: center; gap: 2px; border: 0 !important; border-right: 1px solid rgba(0,0,0,.08) !important; border-radius: 0 !important; box-shadow: none !important; }
  .mdc-platform-btn-icon { width: 28px; height: 30px; flex: 0 0 30px; }
  .mdc-platform-btn-icon svg { width: 21px; height: 21px; }
  .mdc-platform-zalo img { width: 23px; height: 23px; }
  .mdc-platform-btn-label { min-width: 0; max-width: 100%; padding: 0 4px; opacity: 1; overflow: hidden; text-overflow: ellipsis; font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 11px !important; font-weight: 700 !important; line-height: 1.25; letter-spacing: 0; color: #111315 !important; }
  .site-footer, .baite-footer { padding-bottom: calc(62px + env(safe-area-inset-bottom)) !important; }
}

.mdc-home-hero-grid { pointer-events: none; }
.mdc-service-page, .mdc-contact-page { min-width: 0; }
.mdc-contact-card-zalo { background: var(--mdc-paper); }

/* ========================================================================== 
   VIETNAMESE READABILITY PASS
   Keep diacritics clear and secondary information readable on every page.
   ========================================================================== */
body, html, button, input, select, textarea,
.baite-footer, .mdc-about, .mdc-site-main, .mdc-site-page, .mdc-products-page {
  font-family: var(--font-primary) !important;
}

.main-header-bar-navigation a {
  font-family: var(--font-heading) !important;
}

body { font-size: 16px; line-height: 1.7; }
p, li, input, select, textarea { text-rendering: optimizeLegibility; }
h1, h2, h3, h4, h5, h6 { text-wrap: balance; }
p { text-wrap: pretty; }

/* Keep the custom B2B product page outside Astra's padded shop frame. */
.mdc-single-product-page.ast-separate-container .site-content,
.mdc-single-product-page.ast-separate-container .site-content > .ast-container {
  padding: 0;
}
.mdc-single-product-page .site-content > .ast-container {
  display: block;
  max-width: none;
  width: 100%;
}
.mdc-single-product-page .site-footer:not(.baite-footer) {
  display: none;
}

/* Dynamic WooCommerce catalog pages. */
.mdc-dynamic-page {
  --mdc-dynamic-red: #e2001a;
  --mdc-dynamic-ink: #0b0c0e;
  --mdc-dynamic-paper: #f3f1ed;
  --mdc-dynamic-line: #d7d5d0;
  --mdc-dynamic-muted: #64676b;
  min-width: 0;
  background: #fff;
  color: var(--mdc-dynamic-ink);
}
.mdc-dynamic-page,
.mdc-dynamic-quote-cta { font-family: var(--font-primary); }
.mdc-dynamic-page *,
.mdc-dynamic-quote-cta * { box-sizing: border-box; }
.mdc-dynamic-page h1, .mdc-dynamic-page h2, .mdc-dynamic-page h3,
.mdc-dynamic-page p, .mdc-dynamic-page figure { margin-top: 0; }
.mdc-dynamic-page h1, .mdc-dynamic-page h2, .mdc-dynamic-page h3,
.mdc-dynamic-page h4, .mdc-dynamic-page h5, .mdc-dynamic-page h6,
.mdc-dynamic-page p, .mdc-dynamic-page span, .mdc-dynamic-page strong,
.mdc-dynamic-page small, .mdc-dynamic-page figure,
.mdc-dynamic-quote-cta h1, .mdc-dynamic-quote-cta h2,
.mdc-dynamic-quote-cta h3, .mdc-dynamic-quote-cta p,
.mdc-dynamic-quote-cta span, .mdc-dynamic-quote-cta strong {
  background: transparent !important;
  background-color: transparent !important;
}
.mdc-dynamic-products-page { width: 100vw; margin-left: calc(50% - 50vw); }
.mdc-dynamic-hero {
  position: relative;
  overflow: hidden;
  background: var(--mdc-dynamic-ink);
  color: #fff;
}
.mdc-dynamic-hero-grid {
  position: absolute;
  inset: 0;
  opacity: .12;
  background-image: linear-gradient(rgba(255,255,255,.35) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.35) 1px, transparent 1px);
  background-size: 72px 72px;
  pointer-events: none;
}
.mdc-dynamic-hero::after {
  position: absolute;
  top: 0;
  right: -7vw;
  width: 34vw;
  height: 100%;
  background: var(--mdc-dynamic-red);
  clip-path: polygon(33% 0, 100% 0, 100% 100%, 0 100%);
  content: "";
}
.mdc-dynamic-hero-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr);
  align-items: end;
  gap: clamp(40px, 7vw, 100px);
  min-height: 590px;
  padding-block: 95px 72px;
}
.mdc-dynamic-hero-copy { max-width: 790px; }
.mdc-dynamic-kicker,
.mdc-dynamic-eyebrow,
.mdc-dynamic-section-number {
  margin-bottom: 14px;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.mdc-dynamic-kicker { color: #aeb2b5; }
.mdc-dynamic-eyebrow,
.mdc-dynamic-section-number { color: var(--mdc-dynamic-red); }
.mdc-dynamic-hero h1 {
  margin-bottom: 24px;
  color: #fff;
  font-size: clamp(45px, 6.3vw, 88px);
  font-weight: 900;
  line-height: 1.28;
  letter-spacing: -.055em;
}
.mdc-dynamic-hero h1 span { color: var(--mdc-dynamic-red); }
.mdc-dynamic-lead {
  max-width: 670px;
  margin-bottom: 30px;
  color: #c4c7ca;
  font-size: 17px;
  line-height: 1.75;
}
.mdc-dynamic-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; }
.mdc-dynamic-button,
.mdc-dynamic-text-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .06em;
  text-decoration: none;
}
.mdc-dynamic-button { padding: 13px 20px; background: var(--mdc-dynamic-red); color: #fff; }
.mdc-dynamic-text-link { color: #fff; border-bottom: 1px solid #727578; }
.mdc-dynamic-button:hover, .mdc-dynamic-button:focus-visible { background: #b90015; color: #fff; }
.mdc-dynamic-text-link:hover, .mdc-dynamic-text-link:focus-visible { color: var(--mdc-dynamic-red); }
.mdc-dynamic-hero-index {
  position: relative;
  z-index: 2;
  padding: 30px;
  border: 1px solid rgba(255,255,255,.35);
  background: rgba(11,12,14,.72);
  backdrop-filter: blur(7px);
}
.mdc-dynamic-hero-index > span { color: #aeb2b5; font-size: 10px; font-weight: 800; letter-spacing: .14em; }
.mdc-dynamic-hero-index > p { margin: 28px 0 0; color: #c8cbcd; font-size: 13px; line-height: 1.7; }
.mdc-dynamic-stats { width: 100vw; margin-left: calc(50% - 50vw); background: var(--mdc-dynamic-red); color: #fff; }
.mdc-dynamic-stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.mdc-dynamic-stat { min-height: 126px; padding: 26px 22px; border-right: 1px solid rgba(255,255,255,.3); }
.mdc-dynamic-stat:last-child { border-right: 0; }
/* ==========================================================================
   MDC PRODUCT CATALOG WITH LEFT SIDEBAR LAYOUT
   ========================================================================== */
.mdc-product-catalog-page {
  --mdc-red: #e2001a;
  --mdc-black: #0b0c0e;
  --mdc-ink: #15171a;
  --mdc-paper: #f8f7f5;
  width: 100%;
  background: #fbfaf8;
  padding-bottom: 40px;
}

.mdc-product-catalog-page button {
  -webkit-tap-highlight-color: transparent !important;
  -webkit-touch-callout: none !important;
  outline: none !important;
}

.mdc-product-catalog-page button:focus,
.mdc-product-catalog-page button:focus-visible,
.mdc-product-catalog-page button:active {
  outline: none !important;
  background-image: none !important;
}

.mdc-product-layout {
  display: grid;
  grid-template-columns: 290px minmax(0, 1fr);
  gap: 36px;
  padding-block: 48px 80px;
  align-items: start;
}

/* Left Sidebar */
.mdc-product-sidebar {
  position: sticky;
  top: 90px;
  z-index: 10;
}

.mdc-mobile-cat-dropdown {
  display: none;
}

.mdc-product-sidebar-inner {
  background: #ffffff;
  border: 1px solid #e5e2dc;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 4px 20px rgba(11, 12, 14, 0.04);
}

.mdc-product-sidebar-head {
  margin-bottom: 20px;
  padding-bottom: 14px;
  border-bottom: 2px solid #e2001a;
}

.mdc-product-sidebar-kicker {
  display: block;
  font-family: var(--font-heading);
  font-size: 11px;
  font-weight: 700;
  color: #8a8c90;
  letter-spacing: 0.08em;
  text-transform: none;
  margin-bottom: 4px;
}

.mdc-product-sidebar-head h3 {
  font-family: var(--font-heading) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  color: #15171a;
  margin: 0;
  text-transform: none !important;
}

.mdc-product-category-nav {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.mdc-product-cat-btn {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 12px 14px;
  background: #f8f7f5;
  border: 1px solid transparent;
  border-radius: 8px;
  cursor: pointer;
  text-align: left;
  transition: all 0.2s ease;
  position: relative;
}

.mdc-product-cat-icon {
  width: 32px;
  height: 32px;
  border-radius: 6px;
  background: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #444;
  font-size: 13px;
  flex-shrink: 0;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06);
  transition: all 0.2s ease;
  z-index: 2;
  position: relative;
}

.mdc-product-cat-icon i,
.mdc-product-cat-icon svg {
  color: inherit !important;
  fill: currentColor !important;
  display: inline-block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.mdc-product-cat-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 0;
}

.mdc-product-cat-name {
  font-family: var(--font-heading) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  color: #2d3138;
  transition: color 0.2s ease;
}

.mdc-product-cat-count {
  font-family: var(--font-primary);
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 12px;
  background: #e7e4de;
  color: #555;
  transition: all 0.2s ease;
}

.mdc-product-cat-btn:hover {
  background: transparent;
  transform: translateX(4px);
}

.mdc-product-cat-btn:hover .mdc-product-cat-name {
  color: #e2001a;
}

.mdc-product-cat-featured {
  border-left: 3px solid #e2001a !important;
  background: transparent !important;
}

.mdc-product-cat-featured .mdc-product-cat-icon {
  background: #ffeded !important;
  color: #e2001a !important;
}

.mdc-product-cat-featured:hover {
  background: transparent !important;
}

.mdc-product-cat-btn.is-active {
  background: transparent !important;
  border-color: #e2001a !important;
  border-left: 3.5px solid #e2001a !important;
  box-shadow: 0 2px 10px rgba(226, 0, 26, 0.06) !important;
  transform: translateX(4px);
}

.mdc-product-cat-btn.is-active .mdc-product-cat-icon {
  background: #fdeeee !important;
  color: #e2001a !important;
}

.mdc-product-cat-btn.is-active .mdc-product-cat-icon i,
.mdc-product-cat-btn.is-active .mdc-product-cat-icon svg {
  color: #e2001a !important;
  fill: #e2001a !important;
}

.mdc-product-cat-btn.is-active .mdc-product-cat-name {
  color: #e2001a !important;
  font-weight: 700 !important;
}

.mdc-product-cat-btn.is-active .mdc-product-cat-count {
  background: #fdeeee !important;
  color: #e2001a !important;
}

.mdc-product-sidebar-support {
  margin-top: 24px;
  padding: 20px 18px;
  background: #fdfaf6;
  border: 1px dashed #e2ded9;
  border-radius: 12px;
}

.mdc-product-support-badge {
  font-family: var(--font-heading) !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  color: #e2001a !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 10px;
}

.mdc-product-support-badge i {
  font-size: 12px;
}

.mdc-product-sidebar-support h4 {
  font-family: var(--font-heading) !important;
  font-size: 15.5px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  color: #15171a !important;
  margin: 0 0 8px !important;
  text-transform: none !important;
}

.mdc-product-sidebar-support p {
  font-family: var(--font-primary) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  color: #555555 !important;
  margin: 0 0 16px !important;
}

.mdc-product-sidebar-support .mdc-site-btn,
.mdc-product-sidebar-support .mdc-site-btn-primary {
  width: 100%;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #e2001a !important;
  background-color: #e2001a !important;
  color: #ffffff !important;
  font-family: var(--font-heading) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  border-radius: 6px;
  border: 1px solid #e2001a !important;
  box-shadow: 0 4px 14px rgba(226, 0, 26, 0.22);
  text-decoration: none !important;
  gap: 8px;
  transition: all 0.25s ease;
}

.mdc-product-sidebar-support .mdc-site-btn:hover,
.mdc-product-sidebar-support .mdc-site-btn-primary:hover {
  background: #b90015 !important;
  background-color: #b90015 !important;
  border-color: #b90015 !important;
  color: #ffffff !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(185, 0, 21, 0.32);
}

.mdc-product-sidebar-support .mdc-site-btn i {
  color: #ffffff !important;
  font-size: 12px;
  transition: transform 0.2s ease;
}

.mdc-product-sidebar-support .mdc-site-btn:hover i {
  transform: translateX(3px);
}

/* Main Content Area */
.mdc-product-main {
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 0;
}

/* Toolbar */
.mdc-product-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 24px;
  background: #ffffff;
  border: 1px solid #e5e2dc;
  border-radius: 12px;
  box-shadow: 0 4px 18px rgba(11, 12, 14, 0.03);
  flex-wrap: wrap;
}

.mdc-product-toolbar-info {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.mdc-product-active-title {
  font-family: var(--font-heading) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  color: #15171a;
  margin: 0 !important;
}

.mdc-product-result-badge {
  font-family: var(--font-primary);
  font-size: 12px;
  font-weight: 600;
  color: #e2001a;
  background: #fdeeee;
  padding: 3px 10px;
  border-radius: 12px;
}

.mdc-product-search-box {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 320px;
}

.mdc-product-search-box i {
  position: absolute;
  left: 14px;
  color: #999;
  font-size: 14px;
  pointer-events: none;
}

.mdc-product-search-box input {
  width: 100%;
  height: 42px;
  padding: 8px 36px 8px 38px;
  border: 1px solid #d5d1c8;
  border-radius: 6px;
  font-size: 13.5px;
  font-family: var(--font-primary);
  background: #fdfcfb;
  color: #15171a;
  transition: all 0.2s ease;
}

.mdc-product-search-box input:focus {
  background: #ffffff;
  border-color: #e2001a;
  box-shadow: 0 0 0 3px rgba(226, 0, 26, 0.1);
  outline: none;
}

.mdc-product-search-box button {
  position: absolute;
  right: 10px;
  width: 22px;
  height: 22px;
  border: none;
  background: #e0ded9;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #555;
  font-size: 14px;
  line-height: 1;
}

/* Grid wrap */
.mdc-product-grid-wrap .mdc-dynamic-catalog {
  padding: 0 !important;
  background: transparent !important;
}

.mdc-product-grid-wrap .mdc-dynamic-catalog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

/* Product Card */
.mdc-dynamic-product-card {
  min-width: 0;
  margin: 0;
  border: 1px solid #e5e2dc;
  border-radius: 10px;
  background: #ffffff;
  overflow: hidden;
  box-shadow: 0 2px 10px rgba(11, 12, 14, 0.02);
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.mdc-dynamic-product-card:hover {
  transform: translateY(-4px);
  border-color: #d0cbc2;
  box-shadow: 0 14px 30px rgba(11, 12, 14, 0.08);
}

.mdc-dynamic-product-link,
.mdc-dynamic-product-link:hover,
.mdc-dynamic-product-link:focus,
.mdc-dynamic-product-link:visited,
.mdc-dynamic-product-link:active {
  display: flex;
  flex-direction: column;
  height: 100%;
  color: #15171a;
  text-decoration: none !important;
  border-bottom: none !important;
  outline: none;
}

.mdc-dynamic-product-media {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 190px;
  margin: 0;
  padding: 16px;
  background: #fdfdfd;
  border-bottom: 1px solid #f0ede8;
}

.mdc-dynamic-product-media img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  transition: transform 0.3s ease;
}

.mdc-dynamic-product-card:hover .mdc-dynamic-product-media img {
  transform: scale(1.05);
}

.mdc-dynamic-product-content {
  padding: 18px 16px 20px;
  display: flex;
  flex-direction: column;
  flex: 1;
  box-sizing: border-box;
}

.mdc-dynamic-product-brand {
  font-family: var(--font-heading) !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  color: #e2001a !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase;
  margin-bottom: 6px !important;
  text-decoration: none !important;
  border-bottom: none !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  min-height: 1.35em !important;
  max-height: 1.35em !important;
}

.mdc-dynamic-product-title {
  font-family: var(--font-heading) !important;
  font-size: 15.5px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  color: #15171a !important;
  margin: 0 0 10px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  min-height: 2.7em !important;
  max-height: 2.7em !important;
  text-decoration: none !important;
  border-bottom: none !important;
  transition: color 0.2s ease;
}

.mdc-dynamic-product-link:hover .mdc-dynamic-product-title {
  color: #e2001a !important;
  text-decoration: none !important;
}

.mdc-dynamic-product-model {
  font-family: var(--font-primary) !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  color: #777 !important;
  padding-top: 10px !important;
  border-top: 1px solid #f0ede8 !important;
  margin: auto 0 0 0 !important;
  text-decoration: none !important;
  border-bottom: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 1 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: normal !important;
  min-height: 28px !important;
  max-height: 28px !important;
  box-sizing: border-box !important;
}

/* Empty State */
.mdc-product-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 24px;
  background: #ffffff;
  border: 1px dashed #d5d1c8;
  border-radius: 12px;
  text-align: center;
}

.mdc-product-empty-state[hidden],
.mdc-product-empty-state.is-hidden {
  display: none !important;
}

.mdc-product-empty-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: #fdf0f0;
  color: #e2001a;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  margin-bottom: 16px;
}

.mdc-product-empty-state h3 {
  font-family: var(--font-heading) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #15171a;
  margin-bottom: 8px !important;
}

.mdc-product-empty-state p {
  font-family: var(--font-primary) !important;
  font-size: 14px !important;
  color: #666;
  max-width: 440px;
  margin-bottom: 20px !important;
}

/* Responsive */
@media (max-width: 1200px) {
  .mdc-product-grid-wrap .mdc-dynamic-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 992px) {
  .mdc-product-layout {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-block: 16px 48px;
    width: 100%;
  }
  .mdc-product-sidebar {
    position: static !important;
    width: 100%;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }
  .mdc-product-sidebar-inner {
    display: none !important;
  }

  /* Smart Mobile Dropdown Selector */
  .mdc-mobile-cat-dropdown {
    display: block !important;
    position: relative;
    width: 100%;
    z-index: 50;
  }

  .mdc-mobile-cat-trigger,
  .mdc-mobile-cat-trigger:hover,
  .mdc-mobile-cat-trigger:active,
  .mdc-mobile-cat-trigger:focus,
  .mdc-mobile-cat-trigger:focus-visible,
  .mdc-mobile-cat-trigger:focus-within,
  .mdc-mobile-cat-trigger.is-open {
    width: 100%;
    height: 52px;
    padding: 8px 16px;
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: 1.5px solid #dcd7cf;
    border-radius: 12px;
    box-shadow: 0 3px 12px rgba(11, 12, 14, 0.04) !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    text-align: left;
    outline: none !important;
    -webkit-tap-highlight-color: transparent !important;
    -webkit-touch-callout: none !important;
    user-select: none !important;
    -webkit-user-select: none !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
  }

  .mdc-mobile-cat-trigger:hover,
  .mdc-mobile-cat-trigger:active,
  .mdc-mobile-cat-trigger.is-open {
    border-color: #e2001a !important;
    box-shadow: 0 4px 16px rgba(226, 0, 26, 0.12) !important;
  }

  .mdc-mobile-cat-trigger-left {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    flex: 1;
  }

  .mdc-mobile-cat-trigger-icon {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    background: #fdeeee;
    color: #e2001a;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    flex-shrink: 0;
  }

  .mdc-mobile-cat-trigger-text {
    display: flex;
    flex-direction: column;
    min-width: 0;
  }

  .mdc-mobile-cat-trigger-text small {
    font-family: var(--font-primary);
    font-size: 10.5px;
    color: #888;
    line-height: 1.2;
  }

  .mdc-mobile-cat-trigger-text strong {
    font-family: var(--font-heading);
    font-size: 14px;
    font-weight: 700;
    color: #15171a;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
  }

  .mdc-mobile-cat-trigger-right {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
  }

  .mdc-mobile-cat-trigger-badge {
    font-family: var(--font-primary);
    font-size: 11px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 12px;
    background: #f0ede8;
    color: #555;
  }

  .mdc-mobile-cat-chevron {
    font-size: 12px;
    color: #888;
    transition: transform 0.25s ease;
  }

  .mdc-mobile-cat-trigger.is-open .mdc-mobile-cat-chevron {
    transform: rotate(180deg);
    color: #e2001a;
  }

  /* Dropdown Menu Container */
  .mdc-mobile-cat-menu {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    background: #ffffff;
    border: 1px solid #e2ded9;
    border-radius: 12px;
    box-shadow: 0 12px 36px rgba(11, 12, 14, 0.15);
    padding: 6px;
    z-index: 99;
    display: flex;
    flex-direction: column;
    gap: 4px;
    animation: mdcSlideDown 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  }

  .mdc-mobile-cat-menu[hidden] {
    display: none !important;
  }

  @keyframes mdcSlideDown {
    from {
      opacity: 0;
      transform: translateY(-8px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  /* Option Buttons */
  .mdc-mobile-cat-option,
  .mdc-mobile-cat-option:focus,
  .mdc-mobile-cat-option:focus-visible,
  .mdc-mobile-cat-option:focus-within {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    height: 44px;
    padding: 8px 12px;
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: 1px solid transparent;
    border-radius: 8px;
    cursor: pointer;
    text-align: left;
    outline: none !important;
    -webkit-tap-highlight-color: transparent !important;
    -webkit-touch-callout: none !important;
    user-select: none !important;
    -webkit-user-select: none !important;
    transition: all 0.15s ease;
  }

  .mdc-mobile-cat-option:hover,
  .mdc-mobile-cat-option:active {
    background: #faf9f7 !important;
    background-color: #faf9f7 !important;
    outline: none !important;
  }

  .mdc-mobile-option-icon {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: #f3f0ea;
    color: #555;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    flex-shrink: 0;
  }

  .mdc-mobile-option-name {
    font-family: var(--font-heading) !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #2d3138;
    flex: 1;
    min-width: 0;
    transition: color 0.15s ease;
  }

  .mdc-mobile-option-count {
    font-family: var(--font-primary);
    font-size: 11px;
    font-weight: 600;
    padding: 2px 7px;
    border-radius: 10px;
    background: #ede9e2;
    color: #666;
    transition: all 0.15s ease;
  }

  .mdc-mobile-option-check {
    font-size: 12px;
    color: transparent;
    opacity: 0;
    transition: all 0.15s ease;
  }

  .mdc-mobile-cat-option.mdc-mobile-option-featured {
    border-left: 3px solid #e2001a !important;
    background: #ffffff;
  }

  /* Selected Option */
  .mdc-mobile-cat-option.is-selected {
    background: #ffffff !important;
    border-color: transparent !important;
  }

  .mdc-mobile-cat-option.is-selected .mdc-mobile-option-icon {
    background: #fdeeee;
    color: #e2001a;
  }

  .mdc-mobile-cat-option.is-selected .mdc-mobile-option-icon i,
  .mdc-mobile-cat-option.is-selected .mdc-mobile-option-icon svg {
    color: #e2001a;
    fill: #e2001a;
  }

  .mdc-mobile-cat-option.is-selected .mdc-mobile-option-name {
    color: #e2001a !important;
    font-weight: 700 !important;
  }

  .mdc-mobile-cat-option.is-selected .mdc-mobile-option-count {
    background: #fdeeee;
    color: #e2001a;
  }

  .mdc-mobile-cat-option.is-selected .mdc-mobile-option-check {
    color: #e2001a;
    opacity: 1;
  }
  .mdc-product-toolbar {
    padding: 14px 16px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
  }
  .mdc-product-toolbar-info {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
  }
  .mdc-product-active-title {
    font-size: 18px !important;
  }
  .mdc-product-result-badge {
    font-size: 11.5px !important;
  }
  .mdc-product-search-box {
    max-width: 100% !important;
  }
  .mdc-product-search-box input {
    height: 40px !important;
    font-size: 13px !important;
  }
}

@media (max-width: 640px) {
  .mdc-product-grid-wrap .mdc-dynamic-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .mdc-dynamic-product-media {
    height: 130px;
    padding: 8px;
  }
  .mdc-dynamic-product-content {
    padding: 10px 10px 12px;
  }
  .mdc-dynamic-product-brand {
    font-size: 9.5px !important;
    margin-bottom: 3px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-height: 1.35em !important;
    max-height: 1.35em !important;
  }
  .mdc-dynamic-product-title {
    font-size: 13px !important;
    line-height: 1.35 !important;
    margin-bottom: 6px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-height: 2.7em !important;
    max-height: 2.7em !important;
  }
  .mdc-dynamic-product-model {
    font-size: 11px !important;
    line-height: 1.4 !important;
    padding-top: 6px !important;
    border-top: 1px solid #f0ede8 !important;
    margin-top: auto !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 1 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: normal !important;
    min-height: 22px !important;
    max-height: 22px !important;
  }
}

@media (max-width: 360px) {
  .mdc-product-grid-wrap .mdc-dynamic-catalog-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .mdc-dynamic-product-media {
    height: 160px;
  }
}

.mdc-dynamic-quote-cta {
  --mdc-dynamic-red: #e2001a;
  --mdc-dynamic-ink: #0b0c0e;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  padding: 62px 0;
  background: var(--mdc-dynamic-red);
  color: #fff;
}
.mdc-dynamic-quote-inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.mdc-dynamic-quote-copy p { margin-bottom: 8px; color: rgba(255,255,255,.75); font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.mdc-dynamic-quote-copy h2 { margin-bottom: 0; color: #fff; font-size: clamp(28px, 4vw, 47px); line-height: 1.08; }
.mdc-dynamic-button-dark { flex: 0 0 auto; background: var(--mdc-dynamic-ink); }
.mdc-dynamic-button-dark:hover { background: #fff; color: var(--mdc-dynamic-ink); }

/* Specialist product divisions. */
.mdc-dynamic-deep-page {
  --mdc-division-accent: #e2001a;
  width: 100vw;
  margin-left: calc(50% - 50vw);
}
.mdc-dynamic-tu-dien-dieu-khien-page { --mdc-division-accent: #2e7d32; }
.mdc-dynamic-lo-hoi-noi-hoi-page { --mdc-division-accent: #c64a16; }
.mdc-dynamic-phu-kien-dau-dot-page { --mdc-division-accent: #315a71; }
.mdc-dynamic-deep-breadcrumb { background: #fff; border-bottom: 1px solid var(--mdc-dynamic-line); }
.mdc-dynamic-deep-breadcrumb > div { display: flex; align-items: center; gap: 9px; min-height: 48px; overflow: hidden; color: var(--mdc-dynamic-muted); font-size: 10px; font-weight: 800; letter-spacing: .06em; white-space: nowrap; }
.mdc-dynamic-deep-breadcrumb a { color: inherit; text-decoration: none; }
.mdc-dynamic-deep-breadcrumb a:hover { color: var(--mdc-division-accent); }
.mdc-dynamic-deep-breadcrumb strong { overflow: hidden; color: var(--mdc-dynamic-ink); text-overflow: ellipsis; }
.mdc-dynamic-deep-hero::after { background: var(--mdc-division-accent); }
.mdc-dynamic-deep-hero .mdc-dynamic-eyebrow,
.mdc-dynamic-deep-hero h1 span { color: var(--mdc-division-accent); }
.mdc-dynamic-deep-hero .mdc-dynamic-button { background: var(--mdc-division-accent); }
.mdc-dynamic-deep-hero .mdc-dynamic-hero-inner { min-height: 555px; }
.mdc-dynamic-hero-note { position: relative; z-index: 2; align-self: end; padding: 30px; border: 1px solid rgba(255,255,255,.3); background: rgba(11,12,14,.78); backdrop-filter: blur(8px); }
.mdc-dynamic-hero-note span, .mdc-dynamic-hero-note small { display: block; color: #aeb2b5; font-size: 9px; font-weight: 800; line-height: 1.45; letter-spacing: .12em; }
.mdc-dynamic-hero-note strong { display: block; margin: 38px 0; color: #fff; font-size: clamp(19px, 2.2vw, 29px); line-height: 1.45; }
.mdc-dynamic-hero-note::before { display: block; width: 44px; height: 4px; margin-bottom: 22px; background: var(--mdc-division-accent); content: ""; }
.mdc-dynamic-deep-scope { background: var(--mdc-dynamic-paper); border-bottom: 1px solid var(--mdc-dynamic-line); }
.mdc-dynamic-deep-scope-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.mdc-dynamic-deep-scope-grid > div { display: grid; grid-template-columns: 38px 1fr; align-items: center; gap: 13px; min-height: 106px; padding: 22px 25px; border-right: 1px solid var(--mdc-dynamic-line); }
.mdc-dynamic-deep-scope-grid > div:last-child { border-right: 0; }
.mdc-dynamic-deep-scope-grid span { color: var(--mdc-division-accent); font-size: 11px; font-weight: 900; }
.mdc-dynamic-deep-scope-grid strong { color: var(--mdc-dynamic-ink); font-size: 11px; line-height: 1.55; letter-spacing: .04em; }
.mdc-dynamic-deep-catalog { padding: 88px 0 105px; background: #fff; scroll-margin-top: 80px; }
.mdc-dynamic-deep-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) minmax(330px, 460px); align-items: end; gap: 50px; margin-bottom: 34px; padding-bottom: 26px; border-bottom: 3px solid var(--mdc-dynamic-ink); }
.mdc-dynamic-deep-heading > p { margin-bottom: 9px; color: var(--mdc-division-accent); font-size: 10px; font-weight: 850; letter-spacing: .12em; }
.mdc-dynamic-deep-heading h2 { margin-bottom: 10px; color: var(--mdc-dynamic-ink); font-size: clamp(31px, 4vw, 51px); line-height: 1.07; letter-spacing: -.035em; }
.mdc-dynamic-deep-heading > span { display: block; color: var(--mdc-dynamic-muted); font-size: 11px; font-weight: 700; }
.mdc-dynamic-deep-search > span { display: block; margin-bottom: 9px; color: var(--mdc-dynamic-muted); font-size: 10px; font-weight: 850; letter-spacing: .09em; }
.mdc-dynamic-deep-search input { width: 100%; min-height: 54px; padding: 10px 48px 10px 15px; border: 1px solid #999c9e; border-radius: 0; background-color: #fff; background-image: linear-gradient(45deg, transparent 46%, var(--mdc-division-accent) 46% 54%, transparent 54%); background-position: calc(100% - 21px) 21px; background-repeat: no-repeat; background-size: 12px 12px; color: var(--mdc-dynamic-ink); font-size: 15px; }
.mdc-dynamic-deep-search input:focus { border-color: var(--mdc-division-accent); outline: 2px solid color-mix(in srgb, var(--mdc-division-accent) 16%, transparent); }
.mdc-dynamic-deep-results { min-height: 180px; }
.mdc-dynamic-deep-results > .mdc-dynamic-catalog { padding: 0; background: transparent; }
.mdc-dynamic-deep-page .mdc-dynamic-product-card { border-top: 3px solid var(--mdc-division-accent); }
.mdc-dynamic-deep-page .mdc-dynamic-product-brand { color: var(--mdc-division-accent); }
.mdc-dynamic-deep-page .mdc-dynamic-product-media { position: relative; }
.mdc-dynamic-deep-page .mdc-dynamic-product-media::after { position: absolute; right: 12px; bottom: 12px; width: 30px; height: 3px; background: var(--mdc-division-accent); content: ""; }
.mdc-dynamic-deep-empty { margin: 28px 0 0; padding: 30px; border: 1px solid var(--mdc-dynamic-line); border-left: 4px solid var(--mdc-division-accent); background: var(--mdc-dynamic-paper) !important; color: var(--mdc-dynamic-muted); text-align: center; }
.mdc-dynamic-deep-support { display: grid; grid-template-columns: 190px 1fr auto; align-items: center; gap: 28px; margin-top: 52px; padding: 27px 30px; background: var(--mdc-dynamic-ink); color: #fff; }
.mdc-dynamic-deep-support > span { color: var(--mdc-division-accent); font-size: 10px; font-weight: 900; letter-spacing: .09em; }
.mdc-dynamic-deep-support > p { margin-bottom: 0; color: #bfc2c5; font-size: 13px; line-height: 1.65; }
.mdc-dynamic-deep-support > a { padding: 10px 0; border-bottom: 1px solid #5f6265; color: #fff; font-size: 10px; font-weight: 850; letter-spacing: .05em; text-decoration: none; }
.mdc-dynamic-deep-support > a:hover { color: var(--mdc-division-accent); }

.mdc-dynamic-deep-scope-grid strong { color: var(--mdc-dynamic-ink); font-family: 'MDC Montserrat', Arial, sans-serif; font-size: 12px; font-weight: 700; line-height: 1.5; }
.mdc-dynamic-deep-catalog { padding: 72px 0 96px; background: #fff; scroll-margin-top: 80px; }
.mdc-dynamic-deep-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 440px); align-items: end; gap: 40px; margin-bottom: 30px; padding-bottom: 22px; border-bottom: 2px solid var(--mdc-dynamic-ink); }
.mdc-dynamic-deep-heading h2 { margin-bottom: 6px; color: var(--mdc-dynamic-ink); font-family: 'MDC Montserrat', Arial, sans-serif; font-size: clamp(26px, 3.2vw, 38px); font-weight: 700; line-height: 1.2; }
.mdc-dynamic-deep-heading > span { display: block; color: var(--mdc-dynamic-muted); font-size: 13px; font-weight: 500; }
.mdc-dynamic-deep-search > span { display: block; margin-bottom: 6px; color: var(--mdc-dynamic-muted); font-family: 'MDC Montserrat', Arial, sans-serif; font-size: 11px; font-weight: 700; }
.mdc-dynamic-deep-search input { width: 100%; min-height: 48px; padding: 10px 14px; border: 1px solid #999c9e; border-radius: 4px; background-color: #fff; color: var(--mdc-dynamic-ink); font-size: 14px; }
.mdc-dynamic-deep-search input:focus { border-color: var(--mdc-division-accent); outline: 2px solid color-mix(in srgb, var(--mdc-division-accent) 16%, transparent); }
.mdc-dynamic-deep-results { min-height: 180px; }
.mdc-dynamic-deep-results > .mdc-dynamic-catalog { padding: 0; background: transparent; }
.mdc-dynamic-deep-page .mdc-dynamic-product-card { border-top: 3px solid var(--mdc-division-accent); }
.mdc-dynamic-deep-page .mdc-dynamic-product-brand { color: var(--mdc-division-accent); }
.mdc-dynamic-deep-page .mdc-dynamic-product-price { color: var(--mdc-division-accent); }
.mdc-dynamic-deep-empty { margin: 28px 0 0; padding: 26px; border: 1px solid var(--mdc-dynamic-line); border-left: 4px solid var(--mdc-division-accent); background: var(--mdc-dynamic-paper) !important; color: var(--mdc-dynamic-muted); text-align: center; }
.mdc-dynamic-deep-support { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin-top: 48px; padding: 24px 28px; border-radius: 6px; background: var(--mdc-dynamic-ink); color: #fff; }
.mdc-dynamic-deep-support-text span { display: block; margin-bottom: 4px; color: var(--mdc-division-accent); font-family: 'MDC Montserrat', Arial, sans-serif; font-size: 13px; font-weight: 700; text-transform: uppercase; }
.mdc-dynamic-deep-support-text p { margin-bottom: 0; color: #bfc2c5; font-size: 14px; line-height: 1.6; }
.mdc-dynamic-deep-support-btn { display: inline-flex; align-items: center; gap: 6px; padding: 12px 20px; border-radius: 4px; background: var(--mdc-division-accent); color: #fff; font-family: 'MDC Montserrat', Arial, sans-serif; font-size: 12px; font-weight: 700; text-decoration: none; white-space: nowrap; flex-shrink: 0; transition: opacity .2s ease; }
.mdc-dynamic-deep-support-btn:hover { opacity: .9; color: #fff; }

@media (max-width: 980px) {
  .mdc-dynamic-hero-inner { grid-template-columns: 1fr; min-height: 0; padding-block: 78px 64px; }
  .mdc-dynamic-hero-index { max-width: 480px; }
  .mdc-dynamic-stats-grid, .mdc-dynamic-category-grid { grid-template-columns: repeat(2, 1fr); }
  .mdc-dynamic-stat:nth-child(2), .mdc-dynamic-category-grid > a:nth-child(2) { border-right: 0; }
  .mdc-dynamic-stat:nth-child(-n+2), .mdc-dynamic-category-grid > a:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.3); }
  .mdc-dynamic-category-grid > a:nth-child(-n+2) { border-bottom-color: var(--mdc-dynamic-line); }
  .mdc-dynamic-catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mdc-dynamic-deep-toolbar { grid-template-columns: 1fr; gap: 28px; }
  .mdc-dynamic-deep-support { grid-template-columns: 1fr 1fr; }
  .mdc-dynamic-deep-support > a { grid-column: 2; justify-self: start; }
}
@media (max-width: 640px) {
  .mdc-dynamic-products-page { width: 100%; margin-left: 0; }
  .mdc-dynamic-hero::after { display: none; }
  .mdc-dynamic-hero-inner { padding-block: 58px 48px; }
  .mdc-dynamic-hero h1 { font-size: 42px; line-height: 1.02; }
  .mdc-dynamic-lead { font-size: 15px; }
  .mdc-dynamic-hero-index { padding: 22px; }
  .mdc-dynamic-stats, .mdc-dynamic-category-nav, .mdc-dynamic-quote-cta { width: 100%; margin-left: 0; }
  .mdc-dynamic-stat { min-height: 108px; padding: 22px 15px; }
  .mdc-dynamic-category-grid > a { min-height: 126px; padding: 18px 14px; }
  .mdc-dynamic-products-page > .mdc-dynamic-catalog { padding-block: 62px 76px; }
  .mdc-dynamic-catalog-toolbar { grid-template-columns: 1fr; gap: 25px; margin-bottom: 54px; }
  .mdc-dynamic-section-header { grid-template-columns: 48px 1fr; align-items: start; }
  .mdc-dynamic-section-header > span { font-size: 29px; }
  .mdc-dynamic-products-page .mdc-dynamic-section-header > a { grid-column: 1 / -1; width: 100%; margin-top: 4px; }
  .mdc-dynamic-catalog-grid { grid-template-columns: 1fr; }
  .mdc-dynamic-product-media { aspect-ratio: 1 / .7; }
  .mdc-dynamic-quote-inner { align-items: stretch; flex-direction: column; }
  .mdc-dynamic-button-dark { width: 100%; }
  .mdc-dynamic-deep-page { width: 100%; margin-left: 0; }
  .mdc-dynamic-deep-hero .mdc-dynamic-hero-inner { min-height: 0; }
  .mdc-dynamic-hero-note { padding: 22px; }
  .mdc-dynamic-hero-note strong { margin: 22px 0; }
  .mdc-dynamic-deep-scope-grid { grid-template-columns: 1fr; }
  .mdc-dynamic-deep-scope-grid > div { min-height: 78px; border-right: 0; border-bottom: 1px solid var(--mdc-dynamic-line); }
  .mdc-dynamic-deep-catalog { padding: 60px 0 76px; }
  .mdc-dynamic-deep-heading h2 { font-size: 31px; }
  .mdc-dynamic-deep-search input { font-size: 16px; }
  .mdc-dynamic-deep-support { grid-template-columns: 1fr; gap: 13px; padding: 24px 20px; }
  .mdc-dynamic-deep-support > a { grid-column: auto; }
}
.main-header-bar-navigation a { font-size: 14px !important; line-height: 1.45 !important; letter-spacing: .1px !important; }

/* New editorial pages */
.mdc-about-hero h1, .mdc-home-hero h1,
.mdc-service-hero h1,
.mdc-products-hero h1 { line-height: 1.32 !important; letter-spacing: -1.8px !important; }
.mdc-contact-hero h1 { line-height: 1.5 !important; letter-spacing: -1.8px !important; }
.mdc-about-section-head h2, .mdc-site-section-head h2,
.mdc-products-section-title h2, .mdc-products-final-copy h2,
.mdc-home-cta-copy h2,
.mdc-service-cta h2, .mdc-contact-footer-cta h2 { line-height: 1.18 !important; letter-spacing: -.8px !important; }

.mdc-about-kicker, .mdc-site-kicker, .mdc-products-kicker { font-size: 12px !important; line-height: 1.5 !important; letter-spacing: .9px !important; }
.mdc-about-eyebrow, .mdc-site-eyebrow, .mdc-products-eyebrow { font-size: 13px !important; line-height: 1.5 !important; letter-spacing: .8px !important; }
.mdc-about-index, .mdc-site-index, .mdc-site-section-index,
.mdc-products-sidebar-index, .mdc-products-section-no { font-size: 12px !important; line-height: 1.35 !important; }
.mdc-about-section-head p, .mdc-site-section-head > div > p,
.mdc-products-section-title p { font-size: 12px !important; line-height: 1.45 !important; letter-spacing: 1px !important; }
.mdc-about-btn, .mdc-site-btn, .mdc-site-button, .mdc-products-btn,
.mdc-site-text-link, .mdc-site-link { font-size: 12px !important; line-height: 1.45 !important; letter-spacing: .35px !important; }

.mdc-about-lead, .mdc-home-hero-lead, .mdc-service-hero-lead,
.mdc-contact-hero-copy > p:last-child, .mdc-products-hero-lead { font-size: 17px !important; line-height: 1.75 !important; }
.mdc-about-intro-copy p, .mdc-about-direction-item p,
.mdc-site-section-note, .mdc-service-signs-intro > p,
.mdc-contact-guidance-copy > p, .mdc-contact-quote-intro > p { font-size: 15px !important; line-height: 1.75 !important; }
.mdc-about-cap-content p, .mdc-about-values-grid p,
.mdc-home-industry-card p,
.mdc-service-card > p:not(.mdc-service-card-label),
.mdc-service-sign-list p, .mdc-contact-guidance-list p,
.mdc-service-process-list p, .mdc-service-emergency span,
.mdc-contact-card > span, .mdc-products-card p { font-size: 14px !important; line-height: 1.7 !important; }

.mdc-home-card-body p { font-size: 17px !important; line-height: 1.68 !important; }

.mdc-about-cap-link, .mdc-home-card-body > span,
.mdc-service-card > a, .mdc-products-card-link,
.mdc-products-deep-link, .mdc-products-side-link { font-size: 12px !important; line-height: 1.45 !important; letter-spacing: .35px !important; }
.mdc-about-phone span, .mdc-about-image-label span, .mdc-about-cert span,
.mdc-about-stats p, .mdc-home-hero-image span,
.mdc-home-cta-copy p,
.mdc-service-emergency p, .mdc-service-card-label,
.mdc-service-cta p, .mdc-contact-footer-cta p,
.mdc-contact-card > p, .mdc-contact-form .mdc-quote-field label,
.mdc-products-hero-label span, .mdc-products-proof span,
.mdc-products-nav-copy small, .mdc-products-nav-copy span,
.mdc-products-search-label, .mdc-products-hotline span,
.mdc-products-hotline small, .mdc-products-count,
.mdc-products-card-top, .mdc-products-final-copy p { font-size: 11px !important; line-height: 1.5 !important; letter-spacing: .45px !important; }

.mdc-contact-form input:not([type="checkbox"]):not([type="radio"]),
.mdc-contact-form select, .mdc-contact-form textarea,
.mdc-quote-form input:not([type="checkbox"]):not([type="radio"]),
.mdc-quote-form select, .mdc-quote-form textarea { font-size: 16px !important; line-height: 1.6 !important; }
.mdc-contact-form button, .mdc-contact-form input[type="submit"] { font-size: 13px !important; line-height: 1.45 !important; }
.mdc-form-status, .mdc-contact-quote-note { font-size: 13px !important; line-height: 1.65 !important; }
.mdc-platform-btn-label { font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 13px !important; font-weight: 700 !important; letter-spacing: .2px; }

/* Legacy cards and four specialist catalogs */
.baite-card-title { font-size: 17px !important; line-height: 1.45 !important; }
.baite-card-desc { font-size: 14px !important; line-height: 1.75 !important; }
.baite-card-btn { font-size: 13px !important; line-height: 1.45 !important; letter-spacing: .1px !important; }
.baite-card-ribbon { font-size: 11px !important; line-height: 1.4 !important; letter-spacing: .2px !important; }
.mdc-catalog-sidebar, .mdc-catalog-sidebar label,
.mdc-catalog-sidebar a, .mdc-catalog-sidebar div { line-height: 1.6 !important; }
.mdc-catalog-sidebar label, .mdc-catalog-sidebar a { font-size: 14px !important; }
.baite-footer-col p, .baite-footer-col ul li { font-family: var(--font-primary) !important; font-size: 14px; font-weight: 400; line-height: 1.7; }

@media (max-width: 640px) {
  body { font-size: 16px; }
  .mdc-about-hero h1, .mdc-home-hero h1,
  .mdc-service-hero h1,
  .mdc-products-hero h1 { font-size: 36px !important; line-height: 1.12 !important; letter-spacing: -1px !important; }
  .mdc-contact-hero h1 { font-size: 36px !important; line-height: 1.5 !important; letter-spacing: -1px !important; }
  .mdc-contact-map-copy { padding: 32px 22px; }
  .mdc-contact-map-frame, .mdc-contact-map-frame iframe { min-height: 350px; }
  .mdc-about-section-head h2, .mdc-site-section-head h2,
  .mdc-products-section-title h2 { font-size: 28px !important; line-height: 1.32 !important; }
  .mdc-about-lead, .mdc-home-hero-lead, .mdc-service-hero-lead,
  .mdc-contact-hero-copy > p:last-child, .mdc-products-hero-lead { font-size: 16px !important; }
  .mdc-platform-btn-label { font-family: 'MDC Montserrat', Arial, sans-serif !important; font-size: 11px !important; font-weight: 700 !important; line-height: 1.25 !important; letter-spacing: 0 !important; }
}

/* ========================================================================== 
   SINGLE ARTICLE EDITORIAL SYSTEM
   ========================================================================== */
.mdc-article-page {
  --mdc-editorial-ink: #101113;
  --mdc-editorial-muted: #63666b;
  --mdc-editorial-line: #d9d9d6;
  --mdc-editorial-paper: #f3f1ec;
  --mdc-editorial-red: #e2001a;
  min-width: 0;
  background: #ffffff;
  color: var(--mdc-editorial-ink);
  font-family: var(--font-primary) !important;
}

.mdc-article-container {
  width: min(100% - 40px, 1200px);
  margin-inline: auto;
}

.mdc-article-eyebrow,
.mdc-article-kicker,
.mdc-article-category {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--mdc-editorial-red);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: .85px;
  text-transform: uppercase;
}

.mdc-article-eyebrow::before,
.mdc-article-kicker::before {
  width: 24px;
  height: 3px;
  background: currentColor;
  content: "";
}

.mdc-article-sidebar {
  min-width: 0;
  padding-left: 24px;
  border-left: 1px solid var(--mdc-editorial-line);
}

.mdc-news-widget + .mdc-news-widget {
  margin-top: 38px;
  padding-top: 30px;
  border-top: 1px solid var(--mdc-editorial-line);
}

.mdc-news-widget-title,
.mdc-article-toc-title {
  margin: 0 0 16px;
  color: var(--mdc-editorial-ink);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: .7px;
  text-transform: uppercase;
}

.mdc-news-widget ul,
.mdc-article-toc ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.mdc-news-widget li + li,
.mdc-article-toc li + li {
  margin-top: 11px;
}

.mdc-news-widget a,
.mdc-article-toc a {
  color: #3f4145;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.55;
  text-decoration: none;
}

.mdc-news-widget a:hover,
.mdc-news-widget a:focus-visible,
.mdc-article-toc a:hover,
.mdc-article-toc a:focus-visible,
.mdc-article-toc a.is-active {
  color: var(--mdc-editorial-red);
}

.mdc-article-header,
.mdc-article-hero {
  padding: 72px 0 42px;
  border-bottom: 1px solid var(--mdc-editorial-line);
  background: var(--mdc-editorial-paper);
}

.mdc-article-breadcrumbs {
  margin-bottom: 34px;
  color: var(--mdc-editorial-muted);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.6;
}

.mdc-article-breadcrumbs a {
  color: inherit;
  text-decoration: none;
}

.mdc-article-breadcrumbs a:hover,
.mdc-article-breadcrumbs a:focus-visible {
  color: var(--mdc-editorial-red);
}

.mdc-article-title {
  max-width: 980px;
  margin: 14px 0 20px;
  color: var(--mdc-editorial-ink);
  font-size: clamp(38px, 5.2vw, 68px);
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -2.2px;
  text-wrap: balance;
}

.mdc-article-lead,
.mdc-article-deck {
  max-width: 790px;
  margin: 0 0 20px;
  color: #4d5054;
  font-size: 19px;
  line-height: 1.7;
}

.mdc-article-featured,
.mdc-article-featured-image {
  width: min(100% - 40px, 1200px);
  margin: 36px auto 0;
  border-radius: 12px;
  overflow: hidden;
  background: #f8fafc;
}

.mdc-article-featured img,
.mdc-article-featured-image img {
  display: block;
  width: 100%;
  height: auto !important;
  max-height: 650px;
  object-fit: contain !important;
  margin: 0 auto;
}

.mdc-article-layout {
  display: grid;
  grid-template-columns: minmax(0, 760px) 280px;
  justify-content: center;
  gap: 80px;
  align-items: start;
  padding-block: 64px 92px;
}

.mdc-article-main,
.mdc-article-content {
  min-width: 0;
  max-width: 760px;
}

.mdc-article-content {
  color: #292b2e;
  font-size: 17px;
  line-height: 1.85;
}

.mdc-article-content > *:first-child {
  margin-top: 0;
}

.mdc-article-content p {
  margin: 0 0 1.55em;
  font-size: inherit;
  line-height: inherit;
}

.mdc-article-content h2,
.mdc-article-content h3 {
  color: var(--mdc-editorial-ink);
  font-weight: 850;
  text-wrap: balance;
}

.mdc-article-content h2 {
  margin: 2.15em 0 .75em;
  padding-top: .25em;
  border-top: 1px solid var(--mdc-editorial-line);
  font-size: clamp(27px, 3vw, 36px);
  line-height: 1.32;
  letter-spacing: -.65px;
}

.mdc-article-content h3 {
  margin: 1.8em 0 .7em;
  font-size: clamp(21px, 2.2vw, 26px);
  line-height: 1.42;
  letter-spacing: -.25px;
}

.mdc-article-content h4 {
  margin: 1.7em 0 .6em;
  color: var(--mdc-editorial-ink);
  font-size: 19px;
  font-weight: 800;
  line-height: 1.5;
}

.mdc-article-content a {
  color: #b80015;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.mdc-article-content a:hover,
.mdc-article-content a:focus-visible {
  color: var(--mdc-editorial-red);
}

.mdc-article-content ul,
.mdc-article-content ol {
  margin: 0 0 1.6em;
  padding-left: 1.4em;
}

.mdc-article-content li {
  margin-bottom: .65em;
  padding-left: .25em;
  line-height: 1.8;
}

.mdc-article-content li::marker {
  color: var(--mdc-editorial-red);
  font-weight: 800;
}

.mdc-article-content blockquote,
.mdc-article-blockquote {
  margin: 2em 0;
  padding: 24px 30px;
  border: 0;
  border-left: 5px solid var(--mdc-editorial-red);
  background: var(--mdc-editorial-paper);
  color: #242629;
  font-size: 19px;
  font-weight: 600;
  line-height: 1.7;
}

.mdc-article-content blockquote p:last-child,
.mdc-article-blockquote p:last-child {
  margin-bottom: 0;
}

.mdc-article-content figure,
.mdc-article-figure {
  width: 100%;
  margin: 2.2em 0;
}

.mdc-article-content figure img,
.mdc-article-content > img,
.mdc-article-image img,
.mdc-article-figure img {
  display: block;
  width: 100%;
  height: auto;
}

.mdc-article-content figcaption,
.mdc-article-caption {
  margin-top: 10px;
  padding-left: 14px;
  border-left: 2px solid var(--mdc-editorial-line);
  color: var(--mdc-editorial-muted);
  font-size: 12px;
  font-style: normal;
  line-height: 1.65;
}

.mdc-article-safety,
.mdc-article-safety-note,
.mdc-article-note,
.mdc-article-content > aside {
  margin: 2em 0;
  padding: 22px 24px;
  border: 1px solid #e4c45b;
  border-left: 5px solid #d4a900;
  background: #fff9df;
  color: #38301a;
  font-size: 15px;
  line-height: 1.75;
}

.mdc-article-safety strong,
.mdc-article-safety-note strong,
.mdc-article-note strong,
.mdc-article-content > aside strong {
  display: block;
  margin-bottom: 5px;
  color: #211d12;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .45px;
  text-transform: uppercase;
}

.mdc-article-cta,
.mdc-article-inline-cta,
.mdc-article-final-cta {
  margin: 2.4em 0;
  padding: 34px;
  border-radius: 12px;
  background: linear-gradient(135deg, #e2001a 0%, #b80015 100%);
  color: #ffffff;
  box-shadow: 0 14px 34px rgba(226, 0, 26, 0.2);
}

.mdc-article-final-cta {
  margin-top: 64px;
  padding: 38px;
}

.mdc-article-cta h2,
.mdc-article-cta h3,
.mdc-article-inline-cta h2,
.mdc-article-inline-cta h3,
.mdc-article-final-cta h2,
.mdc-article-final-cta h3 {
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  color: #ffffff !important;
  font-size: clamp(22px, 3vw, 30px) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

.mdc-article-cta p,
.mdc-article-inline-cta p,
.mdc-article-final-cta p {
  margin: 0 0 22px !important;
  color: #ffe9ec !important;
  font-size: 15.5px !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
}

.mdc-article-cta-button,
.mdc-article-cta .mdc-site-btn,
.mdc-article-inline-cta .mdc-site-btn,
.mdc-article-final-cta .mdc-site-btn,
.mdc-article-inline-cta > a,
.mdc-article-final-cta > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 13px 26px;
  border: 2px solid #ffffff;
  border-radius: 8px;
  background: #ffffff;
  color: #0f172a !important;
  font-family: var(--font-heading) !important;
  font-size: 13px;
  font-weight: 700 !important;
  line-height: 1.4;
  letter-spacing: 0.3px;
  text-decoration: none;
  text-transform: uppercase;
  transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.mdc-article-cta-button:hover,
.mdc-article-cta-button:focus-visible,
.mdc-article-cta .mdc-site-btn:hover,
.mdc-article-inline-cta .mdc-site-btn:hover,
.mdc-article-final-cta .mdc-site-btn:hover,
.mdc-article-inline-cta > a:hover,
.mdc-article-inline-cta > a:focus-visible,
.mdc-article-final-cta > a:hover,
.mdc-article-final-cta > a:focus-visible {
  background: #ffffff;
  border-color: #ffffff;
  color: #b80015 !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
  transform: translateY(-2px);
}

.mdc-article-toc {
  position: sticky;
  top: 110px;
  max-height: calc(100vh - 140px);
  overflow-y: auto;
  padding-right: 8px;
}

.mdc-article-toc a {
  display: block;
  padding-left: 12px;
  border-left: 2px solid transparent;
}

.mdc-article-toc a:hover,
.mdc-article-toc a:focus-visible,
.mdc-article-toc a.is-active {
  border-left-color: var(--mdc-editorial-red);
}

.mdc-article-related {
  padding: 72px 0 84px;
  border-top: 1px solid var(--mdc-editorial-line);
  background: var(--mdc-editorial-paper);
}

.mdc-article-related-title {
  margin: 0 0 28px;
  color: var(--mdc-editorial-ink);
  font-size: clamp(27px, 3vw, 38px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -.7px;
}

.mdc-article-related-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}

.mdc-news-pagination,
.mdc-article-pagination {
  margin-top: 58px;
}

.mdc-news-pagination .nav-links,
.mdc-article-pagination .nav-links,
.mdc-news-pagination,
.mdc-article-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.mdc-news-pagination .page-numbers,
.mdc-article-pagination .page-numbers,
.mdc-news-pagination > a,
.mdc-news-pagination > span,
.mdc-article-pagination > a,
.mdc-article-pagination > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  min-height: 42px;
  padding: 8px 13px;
  border: 1px solid var(--mdc-editorial-line);
  background: #ffffff;
  color: var(--mdc-editorial-ink);
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
}

.mdc-news-pagination .current,
.mdc-article-pagination .current,
.mdc-news-pagination a:hover,
.mdc-news-pagination a:focus-visible,
.mdc-article-pagination a:hover,
.mdc-article-pagination a:focus-visible {
  border-color: var(--mdc-editorial-ink);
  background: var(--mdc-editorial-ink);
  color: #ffffff;
}

@media (max-width: 992px) {
  .mdc-news-featured,
  .mdc-news-featured-grid {
    grid-template-columns: minmax(0, 1.35fr) minmax(240px, .65fr);
    gap: 24px;
  }

  .mdc-news-grid,
  .mdc-article-related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mdc-news-layout,
  .mdc-news-archive-layout,
  .mdc-article-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 50px;
  }

  .mdc-article-main,
  .mdc-article-content {
    width: 100%;
    margin-inline: auto;
  }

  .mdc-news-sidebar,
  .mdc-article-sidebar {
    padding: 30px 0 0;
    border-top: 1px solid var(--mdc-editorial-line);
    border-left: 0;
  }

  .mdc-article-toc {
    position: static;
    max-height: none;
    overflow: visible;
  }
}

/* Global public action controls: Montserrat labels with a restrained radius. */
.mdc-about-btn,
.mdc-site-btn,
.mdc-site-button,
.mdc-products-btn,
.mdc-dynamic-button,
.mdc-article-cta-button,
.mdc-product-detail-action,
.mdc-product-detail-zoom,
.mdc-product-detail-service-cta > a,
.baite-card-btn,
.baite-btn,
.mdc-contact-form button,
.mdc-contact-form input[type="submit"],
.mdc-quote-submit {
  border-radius: var(--radius-sm) !important;
  font-family: var(--font-heading) !important;
  font-weight: 700 !important;
}

@media (max-width: 640px) {
  .mdc-news-container,
  .mdc-article-container,
  .mdc-article-featured,
  .mdc-article-featured-image {
    width: min(100% - 30px, 1200px);
  }

  .mdc-news-header,
  .mdc-news-hero,
  .mdc-article-header,
  .mdc-article-hero {
    padding: 52px 0 34px;
  }

  .mdc-news-header h1,
  .mdc-news-hero h1 {
    font-size: 39px;
    line-height: 1.12;
    letter-spacing: -1.3px;
  }

  .mdc-news-header p,
  .mdc-news-hero p,
  .mdc-article-lead,
  .mdc-article-deck {
    font-size: 16px;
  }

  .mdc-news-section {
    padding: 56px 0;
  }

  .mdc-news-section-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }

  .mdc-news-featured,
  .mdc-news-featured-grid,
  .mdc-news-grid,
  .mdc-article-related-grid {
    grid-template-columns: 1fr;
  }

  .mdc-news-featured-title {
    font-size: 28px;
    letter-spacing: -.7px;
  }

  .mdc-news-featured-side,
  .mdc-news-secondary-list {
    padding-top: 8px;
    border-top: 1px solid var(--mdc-editorial-line);
  }

  .mdc-news-layout,
  .mdc-news-archive-layout,
  .mdc-article-layout {
    gap: 38px;
    padding-block: 48px 68px;
  }

  .mdc-article-breadcrumbs {
    margin-bottom: 24px;
  }

  .mdc-article-title {
    font-size: 37px;
    line-height: 1.15;
    letter-spacing: -1.15px;
  }

  .mdc-article-featured,
  .mdc-article-featured-image {
    margin-top: 28px;
  }

  .mdc-article-content {
    font-size: 17px;
    line-height: 1.85;
  }

  .mdc-article-content h2 {
    margin-top: 1.85em;
    font-size: 27px;
    line-height: 1.36;
  }

  .mdc-article-content h3 {
    font-size: 22px;
    line-height: 1.45;
  }

  .mdc-article-content blockquote,
  .mdc-article-blockquote,
  .mdc-article-safety,
  .mdc-article-safety-note,
  .mdc-article-note,
  .mdc-article-content > aside,
  .mdc-article-cta,
  .mdc-article-inline-cta,
  .mdc-article-final-cta {
    padding: 22px 19px;
  }

  .mdc-article-cta-button,
  .mdc-article-cta .mdc-site-btn,
  .mdc-article-inline-cta .mdc-site-btn,
  .mdc-article-final-cta .mdc-site-btn,
  .mdc-article-inline-cta > a,
  .mdc-article-final-cta > a {
    width: 100%;
  }

  .mdc-article-related {
    padding: 56px 0 68px;
  }

  .mdc-news-pagination,
  .mdc-article-pagination {
    margin-top: 42px;
  }
}

/* ========================================================================== 
   NEWS & KNOWLEDGE ARCHIVE (TIN TỨC & KIẾN THỨC KỸ THUẬT)
   ========================================================================== */
body.blog,
body.blog #content,
body.blog .ast-container,
body.single-post #content,
body.single-post .ast-container {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}

body.blog article.ast-article-post,
body.archive article.ast-article-post {
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

.mdc-news-archive {
  width: 100%;
  min-width: 0;
  background: #ffffff;
  color: #111315;
  font-family: var(--font-primary) !important;
}

.mdc-article-single {
  --mdc-editorial-ink: #0f172a;
  --mdc-editorial-muted: #64748b;
  --mdc-editorial-line: #e2e8f0;
  --mdc-editorial-paper: #f8fafc;
  --mdc-editorial-red: var(--color-accent-red);
  min-width: 0;
  background: #ffffff;
  color: #334155;
  font-family: var(--font-primary) !important;
}

/* News Listing Container */
.mdc-news-listing {
  width: min(100% - 40px, 1200px);
  margin-inline: auto;
  padding-block: 48px 80px;
}

/* Section Header (Centered Title with Red Underline) */
.mdc-news-header-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin-bottom: 48px;
  padding: 0;
  border-bottom: none !important;
}

.mdc-news-header-center h1 {
  color: #111315 !important;
  font-family: var(--font-heading) !important;
  font-size: clamp(28px, 3.5vw, 40px) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: normal !important;
  margin: 0;
  text-align: center;
}

.mdc-news-title-underline {
  width: 60px;
  height: 3.5px;
  background: #e2001a;
  border-radius: 2px;
  margin: 14px auto 0;
}

/* Latest News Section & Grid */
.mdc-news-latest {
  margin-top: 0;
}

.mdc-news-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px 24px;
}

.mdc-news-card {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.mdc-news-card:hover {
  transform: translateY(-4px);
  border-color: #cbd5e1;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.07);
}

.mdc-news-card-image {
  position: relative;
  display: block;
  overflow: hidden;
  background: #f1f5f9;
  aspect-ratio: 16 / 10;
}

.mdc-news-card-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.mdc-news-card:hover .mdc-news-card-image img {
  transform: scale(1.05);
}

.mdc-news-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 22px 22px 24px;
}

.mdc-news-card-body .mdc-news-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 10px;
  margin-bottom: 12px;
}

.mdc-news-author {
  color: #64748b;
  font-family: var(--font-primary) !important;
  font-size: 13px;
  font-weight: 400;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.mdc-news-author i {
  color: #e2001a;
  font-size: 12px;
}

.mdc-news-meta-divider {
  color: #cbd5e1;
  font-size: 12px;
}

.mdc-news-date {
  color: #64748b;
  font-family: var(--font-primary) !important;
  font-size: 13px;
  font-weight: 400;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.mdc-news-date i {
  color: #64748b;
  font-size: 12px;
}

.mdc-news-card-title {
  margin: 0 0 12px;
  color: #0f172a;
  font-family: var(--font-heading) !important;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

.mdc-news-card-title a {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
}

.mdc-news-card-title a:hover {
  color: #e2001a;
}

.mdc-news-card-body .mdc-news-excerpt {
  margin: 0 0 20px;
  color: #64748b;
  font-family: var(--font-primary) !important;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  flex: 1;
}

.mdc-news-card-footer {
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid #f1f5f9;
}

/* Read More Button Link */
.mdc-news-read-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #e2001a;
  font-family: var(--font-primary) !important;
  font-size: 15px;
  font-weight: 400 !important;
  text-transform: none !important;
  letter-spacing: 0;
  text-decoration: none;
  transition: color 0.2s ease, transform 0.2s ease;
}

.mdc-news-read-more .mdc-site-icon {
  width: 15px;
  height: 15px;
  color: #e2001a;
  transition: transform 0.25s ease;
}

.mdc-news-read-more:hover {
  color: #b30015;
}

.mdc-news-read-more:hover .mdc-site-icon {
  transform: translateX(4px);
}

/* Pagination */
.mdc-news-pagination {
  margin-top: 48px;
  text-align: center;
}

.mdc-news-pagination ul {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mdc-news-pagination li span,
.mdc-news-pagination li a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  height: 44px;
  padding: 0 14px;
  border-radius: 6px;
  border: 1px solid #e2e8f0;
  background: #ffffff;
  color: #1e293b;
  font-family: var(--font-heading) !important;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.2s ease;
}

.mdc-news-pagination li span.current {
  background: #e2001a;
  border-color: #e2001a;
  color: #ffffff;
}

.mdc-news-pagination li a:hover {
  border-color: #e2001a;
  color: #e2001a;
}

/* Empty State */
.mdc-news-empty {
  max-width: 600px;
  margin: 40px auto;
  padding: 60px 30px;
  text-align: center;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
}

.mdc-news-empty-icon {
  width: 48px;
  height: 48px;
  color: #e2001a;
  margin-bottom: 16px;
}

.mdc-news-empty h2 {
  font-family: var(--font-heading) !important;
  font-size: 24px;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 10px;
}

.mdc-news-empty p {
  font-family: var(--font-primary) !important;
  font-size: 16px;
  line-height: 1.65;
  color: #64748b;
  margin-bottom: 24px;
}

/* News Responsive Media Queries */
@media (max-width: 991px) {
  .mdc-news-featured-card {
    grid-template-columns: 1fr;
  }
  .mdc-news-featured-content {
    padding: 28px 24px;
  }
  .mdc-news-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
}

@media (max-width: 640px) {
  .mdc-news-hero {
    padding: 44px 0 36px;
  }
  .mdc-news-listing {
    padding-block: 36px 60px;
  }
  .mdc-news-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .mdc-news-card-body {
    padding: 18px 18px 20px;
  }
  .mdc-news-featured {
    margin-bottom: 40px;
  }
}

.mdc-article-single > .mdc-site-container {
  width: min(100% - 40px, 1200px);
  margin-inline: auto;
  padding-block: 36px 72px;
}

/* Breadcrumb */
.mdc-article-breadcrumb ol {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 8px;
  margin: 0 0 28px;
  padding: 0;
  color: #64748b;
  font-family: var(--font-primary) !important;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
  list-style: none;
}

.mdc-article-breadcrumb a {
  color: #64748b;
  text-decoration: none;
  transition: color 0.2s ease;
}

.mdc-article-breadcrumb a:hover,
.mdc-article-breadcrumb a:focus-visible {
  color: #e2001a;
}

.mdc-breadcrumb-sep {
  color: #94a3b8;
  font-size: 14px;
}

.mdc-breadcrumb-current {
  color: #0f172a;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 450px;
}

/* Article Header */
.mdc-article-header {
  margin-bottom: 28px;
}

.mdc-article-title {
  margin: 0 0 16px;
  color: #0f172a;
  font-family: var(--font-heading) !important;
  font-size: clamp(30px, 4vw, 48px);
  font-weight: 700 !important;
  line-height: 1.25;
  letter-spacing: normal;
}

.mdc-article-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-bottom: 24px;
  color: #64748b;
  font-family: var(--font-primary) !important;
  font-size: 14px;
  font-weight: 400;
}

.mdc-article-author {
  color: #475569;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.mdc-article-author i {
  color: #e2001a;
  font-size: 12px;
}

.mdc-meta-divider {
  color: #cbd5e1;
  font-size: 12px;
}

.mdc-article-date,
.mdc-article-reading-time {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #64748b;
}

.mdc-article-date i,
.mdc-article-reading-time i {
  color: #64748b;
  font-size: 12px;
}

.mdc-article-lead {
  padding: 18px 22px;
  background: #f8fafc;
  border-left: 4px solid #e2001a;
  border-radius: 0 8px 8px 0;
  margin-bottom: 32px;
}

.mdc-article-lead p {
  margin: 0;
  color: #334155;
  font-family: var(--font-primary) !important;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.7;
}

/* Featured Image */
.mdc-article-featured-image {
  margin: 0 0 36px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  text-align: center;
}

.mdc-article-featured-image img {
  display: block;
  width: 100%;
  height: auto !important;
  max-height: 650px;
  object-fit: contain !important;
  margin: 0 auto;
}

.mdc-article-featured-image figcaption {
  padding: 10px 16px;
  color: #64748b;
  font-family: var(--font-primary) !important;
  font-size: 13px;
  line-height: 1.5;
  text-align: center;
  background: #f8fafc;
}

/* Article Layout (Main + Sidebar) */
.mdc-article-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 48px;
  align-items: start;
  margin-bottom: 56px;
}

/* Editorial Body Typography */
.mdc-article-content {
  font-family: var(--font-primary) !important;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.8;
  color: #334155;
}

.mdc-article-content p {
  margin: 0 0 22px;
}

.mdc-article-content h2 {
  margin: 38px 0 16px;
  padding-bottom: 8px;
  border-bottom: 2px solid #f1f5f9;
  color: #0f172a;
  font-family: var(--font-heading) !important;
  font-size: clamp(24px, 2.5vw, 30px);
  font-weight: 700 !important;
  line-height: 1.4;
}

.mdc-article-content h3 {
  margin: 28px 0 12px;
  color: #1e293b;
  font-family: var(--font-heading) !important;
  font-size: 21px;
  font-weight: 700 !important;
  line-height: 1.45;
}

.mdc-article-content h4 {
  margin: 22px 0 10px;
  color: #334155;
  font-family: var(--font-heading) !important;
  font-size: 18px;
  font-weight: 700 !important;
  line-height: 1.45;
}

.mdc-article-content ul,
.mdc-article-content ol {
  margin: 0 0 22px;
  padding-left: 24px;
}

.mdc-article-content li {
  margin-bottom: 8px;
  line-height: 1.75;
}

.mdc-article-content blockquote {
  margin: 28px 0;
  padding: 18px 24px;
  background: #f8fafc;
  border-left: 4px solid #e2001a;
  border-radius: 0 8px 8px 0;
  color: #1e293b;
  font-style: italic;
  font-size: 16px;
  line-height: 1.7;
}

.mdc-article-content img,
.mdc-article-content .wp-block-image img {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 10px;
  margin: 24px auto;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
}

.mdc-article-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 28px 0;
  font-size: 14.5px;
}

.mdc-article-content th,
.mdc-article-content td {
  padding: 12px 16px;
  border: 1px solid #e2e8f0;
  text-align: left;
}

.mdc-article-content th {
  background: #f8fafc;
  color: #0f172a;
  font-family: var(--font-heading) !important;
  font-weight: 700;
}

.mdc-article-content a {
  color: #e2001a;
  text-decoration: underline;
  text-underline-offset: 3px;
  font-weight: 500;
  transition: color 0.2s ease;
}

.mdc-article-content a:hover {
  color: #b30015;
}

/* Bottom Share Bar */
.mdc-article-bottom-bar {
  margin-top: 44px;
  padding: 22px 26px;
  border: 1px solid #e2e8f0;
  border-left: 4px solid #e2001a;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
}

.mdc-article-share {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}

.mdc-share-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #0f172a;
  font-family: var(--font-heading) !important;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.mdc-share-label i {
  color: #e2001a;
  font-size: 16px;
}

.mdc-share-buttons {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.mdc-share-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 42px;
  padding: 0 18px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-family: var(--font-heading) !important;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2px;
  text-decoration: none;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

.mdc-share-pill:hover,
.mdc-share-pill:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
}

.mdc-share-pill:focus-visible {
  outline: 2px solid #e2001a;
  outline-offset: 2px;
}

.mdc-share-fb {
  background: #1877f2;
  color: #ffffff !important;
}

.mdc-share-fb:hover,
.mdc-share-fb:focus-visible {
  background: #0f63d8;
}

.mdc-share-fb i {
  font-size: 14px;
}

.mdc-share-zalo {
  background: #0068ff;
  color: #ffffff !important;
}

.mdc-share-zalo:hover,
.mdc-share-zalo:focus-visible {
  background: #0054cc;
}

.mdc-share-zalo svg {
  display: block;
}

.mdc-copy-link {
  background: #f1f5f9;
  border-color: #cbd5e1;
  color: #1e293b !important;
}

.mdc-copy-link:hover,
.mdc-copy-link:focus-visible {
  background: #e2e8f0;
  border-color: #94a3b8;
  color: #0f172a !important;
}

.mdc-copy-link i {
  font-size: 13px;
  color: #64748b;
}

.mdc-copy-link:hover i {
  color: #0f172a;
}

.mdc-copy-link.is-copied {
  background: #ecfdf5;
  border-color: #6ee7b7;
  color: #065f46 !important;
}

.mdc-copy-link.is-copied i {
  color: #059669;
}

/* Sticky Sidebar */
.mdc-article-sidebar-sticky {
  position: sticky;
  top: 100px;
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.mdc-article-toc {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 22px 20px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
}

.mdc-article-toc[hidden] {
  display: none;
}

.mdc-article-toc > p {
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 2px solid #f1f5f9;
  color: #0f172a;
  font-family: var(--font-heading) !important;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.5px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.mdc-article-toc > p i {
  color: #e2001a;
}

.mdc-article-toc-list {
  margin: 0;
  padding-left: 18px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.mdc-article-toc-list li a {
  color: #475569;
  font-family: var(--font-primary) !important;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  text-decoration: none;
  transition: color 0.2s ease;
}

.mdc-article-toc-list li a:hover {
  color: #e2001a;
}

/* Contact Card Support (Cuối bài viết) */
.mdc-article-contact-bottom {
  margin-top: 48px;
  padding: 32px 36px;
  background: linear-gradient(145deg, #111315 0%, #1e2227 100%);
  border-radius: 12px;
  color: #ffffff;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
}

.mdc-article-contact-inner {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 36px;
  align-items: center;
}

.mdc-article-contact-info {
  min-width: 0;
}

.mdc-article-contact-info h2 {
  margin: 0 0 12px;
  color: #ffffff;
  font-family: var(--font-heading) !important;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.35;
}

.mdc-article-contact-underline {
  width: 50px;
  height: 3.5px;
  margin: 0 0 16px;
  border-radius: 2px;
  background: #e2001a;
}

.mdc-article-contact-info p {
  margin: 0 0 14px;
  color: #cbd5e1;
  font-family: var(--font-primary) !important;
  font-size: 15px;
  line-height: 1.65;
}

.mdc-article-contact-note {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #94a3b8;
  font-family: var(--font-primary) !important;
  font-size: 13.5px;
  line-height: 1.5;
}

.mdc-article-contact-note .mdc-site-icon {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  color: #e2001a;
}

.mdc-article-contact-actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 220px;
}

.mdc-article-contact-phone {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 18px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
  color: #ffffff;
  font-family: var(--font-heading) !important;
  font-size: 17px;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.2s ease;
}

.mdc-article-contact-phone .mdc-site-icon {
  width: 18px;
  height: 18px;
  color: #e2001a;
}

.mdc-article-contact-phone:hover {
  border-color: #ff4d61;
  background: rgba(255, 255, 255, 0.1);
  color: #ff4d61;
  transform: translateY(-2px);
}

.mdc-article-contact-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px 22px;
  background: #e2001a;
  border-radius: 8px;
  color: #ffffff;
  font-family: var(--font-heading) !important;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 0.2s ease;
}

.mdc-article-contact-link .mdc-site-icon {
  width: 14px;
  height: 14px;
  transition: transform 0.2s ease;
}

.mdc-article-contact-link:hover {
  background: #b30015;
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(226, 0, 26, 0.3);
}

.mdc-article-contact-link:hover .mdc-site-icon {
  transform: translateX(4px);
}

/* Related Articles Section */
.mdc-article-related {
  margin-top: 64px;
  padding-top: 48px;
  border-top: 2px solid #e2e8f0;
}

.mdc-article-section-header {
  text-align: center;
  margin-bottom: 36px;
}

.mdc-article-section-header h2 {
  margin: 0;
  color: #0f172a;
  font-family: var(--font-heading) !important;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.3;
}

/* Prev / Next Navigation */
.mdc-article-navigation {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin-top: 48px;
  padding-top: 32px;
  border-top: 1px solid #e2e8f0;
}

.mdc-article-navigation > a {
  display: flex;
  flex-direction: column;
  padding: 18px 20px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.2s ease;
}

.mdc-article-navigation > a:hover {
  border-color: #e2001a;
  box-shadow: 0 4px 14px rgba(226, 0, 26, 0.08);
  transform: translateY(-2px);
}

.mdc-nav-direction {
  margin-bottom: 6px;
  color: #e2001a;
  font-family: var(--font-heading) !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.5px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.mdc-article-navigation-next {
  text-align: right;
  align-items: flex-end;
}

.mdc-article-navigation-next .mdc-nav-direction {
  justify-content: flex-end;
}

.mdc-nav-title {
  color: #0f172a;
  font-family: var(--font-primary) !important;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.45;
}

@media (max-width: 991px) {
  .mdc-article-layout {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .mdc-article-sidebar {
    order: -1;
  }

  .mdc-article-sidebar-sticky {
    position: static;
  }

  .mdc-article-contact-inner {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .mdc-article-contact-actions {
    flex-direction: row;
    flex-wrap: wrap;
    min-width: 100%;
  }

  .mdc-article-contact-actions > a {
    flex: 1;
    min-width: 200px;
  }
}

@media (max-width: 640px) {
  .mdc-article-contact-bottom {
    padding: 24px 20px;
    margin-top: 36px;
  }

  .mdc-article-contact-info h2 {
    font-size: 19px;
  }

  .mdc-article-contact-actions {
    flex-direction: column;
  }

  .mdc-article-contact-actions > a {
    width: 100%;
  }
}

/* Mobile compact system. */
@media (max-width: 640px) {
  #masthead .ast-mobile-header-wrap .ast-builder-grid-row {
    width: 100%;
    grid-template-columns: max-content max-content !important;
    justify-content: space-between;
    padding-right: 16px;
    padding-left: 16px;
  }

  #masthead .ast-mobile-header-wrap .site-header-primary-section-right { width: auto; }
  #masthead .ast-mobile-header-wrap .custom-logo { height: 40px !important; max-width: 116px !important; }
  #masthead .ast-button-wrap .menu-toggle { width: 44px; height: 44px; }

  .mdc-home-hero h1,
  .mdc-about-hero h1,
  .mdc-service-hero h1,
  .mdc-contact-hero h1,
  .mdc-dynamic-hero h1,
  .mdc-news-hero h1,
  .mdc-article-entry > .mdc-article-header h1 {
    line-height: 1.32 !important;
    letter-spacing: -.55px !important;
  }

  .mdc-site-section-head h2,
  .mdc-about-section-head h2,
  .mdc-dynamic-catalog-toolbar h2,
  .mdc-dynamic-section-header h2,
  .mdc-news-section-header h2,
  .mdc-article-section-header h2,
  .mdc-about-cta h2,
  .mdc-dynamic-deep-heading h2,
  .mdc-dynamic-quote-copy h2,
  .mdc-product-detail-summary h1,
  .baite-footer-map-copy h2 {
    line-height: 1.42 !important;
    letter-spacing: -.35px !important;
  }

  .mdc-home-card-body h3,
  .mdc-home-industry-card h3,
  .mdc-about-cap-content h3,
  .mdc-about-direction-item h3,
  .mdc-about-values-grid h3,
  .mdc-service-card h3,
  .mdc-service-process-list h3,
  .mdc-dynamic-product-title,
  .mdc-news-card-body h3 {
    line-height: 1.38 !important;
    letter-spacing: 0 !important;
  }

  .mdc-floating-bar {
    right: 14px !important;
    bottom: calc(14px + env(safe-area-inset-bottom)) !important;
    left: auto !important;
    width: auto !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .mdc-platform-btn,
  .mdc-platform-btn:hover,
  .mdc-platform-btn:focus-visible {
    width: 50px !important;
    max-width: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    flex-direction: row;
    justify-content: center;
    border: 2px solid #ffffff !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    box-shadow: 0 6px 20px rgba(0,0,0,.26) !important;
  }

  .mdc-platform-btn-icon { width: 46px; height: 46px; flex: 0 0 46px; }
  .mdc-platform-btn-icon svg { width: 22px; height: 22px; }
  .mdc-platform-zalo img { width: 24px; height: 24px; }
  .mdc-platform-btn-label { display: none !important; }
  .site-footer, .baite-footer { padding-bottom: 0 !important; }

  .mdc-home-solution-grid,
  .mdc-about-cap-grid,
  .mdc-about-values-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mdc-home-solution-card { min-height: 290px !important; padding: 12px 10px !important; }
  .mdc-home-card-image { height: 95px; min-height: 95px; margin: 4px 0 8px; }
  .mdc-home-card-image img { height: 85px; }
  .mdc-home-card-body > .mdc-site-icon { display: none !important; }
  .mdc-home-card-body h3 { margin: 4px 0 6px; font-size: 16px !important; line-height: 1.3 !important; }
  .mdc-home-card-body p { margin-bottom: 12px; font-size: 12.5px !important; line-height: 1.5 !important; }
  .mdc-home-solution-card .mdc-home-card-body > span { padding: 8px 12px !important; font-size: 12px !important; line-height: 1.35 !important; border-radius: 6px !important; align-self: stretch !important; justify-content: center !important; }

  .mdc-home-industry-card > div { padding: 16px 14px; }
  .mdc-home-industry-card span { top: 12px; right: 12px; font-size: 11px !important; }
  .mdc-home-industry-card h3 { margin-bottom: 6px; font-size: 16px !important; line-height: 1.3 !important; }
  .mdc-home-industry-card p { font-size: 12.5px !important; line-height: 1.5 !important; }

  .mdc-about-cap-card { min-height: 330px; padding: 13px; }
  .mdc-about-cap-image { height: 108px; margin: 6px 0 13px; }
  .mdc-about-cap-image img { height: 98px; }
  .mdc-about-cap-content > i { font-size: 17px; }
  .mdc-about-cap-content h3 { margin: 9px 0 8px; font-size: 15px; }
  .mdc-about-cap-content p { margin-bottom: 13px; font-size: 11.5px !important; line-height: 1.55 !important; }
  .mdc-about-cap-link { font-size: 9px !important; }

  .mdc-about-direction-copy {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .mdc-about-direction-copy > .mdc-about-section-head { grid-column: 1 / -1; }
  .mdc-about-direction-item { display: block; min-width: 0; padding: 16px 13px; border: 1px solid #cbc8c2; }
  .mdc-about-direction-item > span { display: block; margin-bottom: 14px; }
  .mdc-about-direction-item h3 { font-size: 15px; }
  .mdc-about-direction-item p { font-size: 11.5px !important; line-height: 1.58 !important; }

  .mdc-about-values-grid > div { min-height: 205px; padding: 16px 13px; }
  .mdc-about-values-grid span { top: 12px; right: 12px; }
  .mdc-about-values-grid i { margin: 10px 0 33px; font-size: 23px; }
  .mdc-about-values-grid h3 { font-size: 15px; }
  .mdc-about-values-grid p { font-size: 11.5px !important; line-height: 1.55 !important; }

  .mdc-dynamic-catalog-grid,
  .mdc-service-card-grid,
  .mdc-service-process-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mdc-news-grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .mdc-dynamic-category-grid > a { min-height: 112px; padding: 14px 12px; }
  .mdc-dynamic-category-grid strong { font-size: 12px; line-height: 1.4; }
  .mdc-dynamic-catalog-grid { gap: 10px; }
  .mdc-dynamic-product-media { aspect-ratio: 1 / .82; }
  .mdc-dynamic-product-media img { padding: 10px; }
  .mdc-dynamic-product-content { padding: 12px 10px 14px; }
  .mdc-dynamic-product-brand { margin-bottom: 5px; font-size: 9px; line-height: 1.35; }
  .mdc-dynamic-product-title { margin-bottom: 9px; font-size: 14px; }
  .mdc-dynamic-product-model { padding-top: 8px; font-size: 10px; line-height: 1.4; }

  .mdc-service-card { min-height: 285px; padding: 14px; }
  .mdc-service-card-icon { width: 25px; height: 25px; }
  .mdc-service-card-label { margin: 26px 0 8px; }
  .mdc-service-card h3 { margin-bottom: 10px; font-size: 16px; }
  .mdc-service-card > p:not(.mdc-service-card-label) { margin-bottom: 14px; font-size: 11.5px !important; line-height: 1.55 !important; }
  .mdc-service-card > a { font-size: 9px !important; line-height: 1.4 !important; }

  .mdc-service-process-list li { min-height: 190px; padding: 14px; }
  .mdc-service-process-list h3 { margin: 29px 0 8px; font-size: 15px; }
  .mdc-service-process-list p { font-size: 11.5px !important; line-height: 1.55 !important; }

  .mdc-news-card-body { padding: 18px 16px 20px !important; }
  .mdc-news-card-body h3 { margin-top: 0; font-size: 18px !important; }
  .mdc-news-card .mdc-news-meta { gap: 4px 8px; font-size: 12px; line-height: 1.5; }
  .mdc-news-card .mdc-news-excerpt { display: block !important; font-size: 15px !important; line-height: 1.7 !important; margin-bottom: 16px !important; }
  .mdc-news-card .mdc-news-read-more { margin-top: 0; font-size: 15px !important; }

  .mdc-article-single > .mdc-site-container {
    width: min(100% - 32px, 1200px);
    padding-block: 28px 56px;
  }

  .mdc-article-title {
    font-size: clamp(30px, 9vw, 38px);
  }

  .mdc-article-lead p {
    font-size: 17px;
  }

  .mdc-article-content {
    font-size: 16.5px;
  }

  .mdc-article-navigation {
    grid-template-columns: 1fr;
  }

  .mdc-article-navigation-placeholder {
    display: none;
  }

  .mdc-article-navigation-next {
    align-items: flex-start;
    text-align: left;
  }

  .mdc-article-navigation-next .mdc-nav-direction {
    justify-content: flex-start;
  }
}

@media (max-width: 380px) {
  .mdc-home-card-body p,
  .mdc-home-industry-card p,
  .mdc-about-cap-content p,
  .mdc-about-values-grid p,
  .mdc-service-card > p:not(.mdc-service-card-label),
  .mdc-service-process-list p { font-size: 11px !important; }

  .mdc-home-solution-card,
  .mdc-about-cap-card { padding: 11px; }
}

@media (max-width: 921px) {
  #masthead .ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle,
  #masthead .ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle:hover,
  #masthead .ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle:focus-visible {
    background: transparent !important;
    background-color: transparent !important;
  }
}

/* ========================================================================== 
   HEADING SYSTEM
   A final, Vietnamese-safe rhythm for every public heading context.
   ========================================================================== */
h1, h2, h3, h4, h5, h6,
.mdc-dynamic-product-title {
  font-family: var(--font-heading) !important;
  font-style: normal;
  text-rendering: optimizeLegibility;
}

h1 {
  font-weight: 700 !important;
  line-height: 1.32 !important;
  letter-spacing: 0 !important;
}

h2 {
  font-weight: 700 !important;
  line-height: 1.42 !important;
  letter-spacing: 0 !important;
}

h3, h4, h5, h6,
.mdc-dynamic-product-title {
  font-weight: 600 !important;
  line-height: 1.44 !important;
  letter-spacing: 0 !important;
}

.mdc-home-hero h1,
.mdc-about-hero h1,
.mdc-service-hero h1,
.mdc-contact-hero h1,
.mdc-products-hero h1,
.mdc-dynamic-hero h1,
.mdc-news-hero h1,
.mdc-article-entry > .mdc-article-header h1,
.mdc-product-detail-summary h1,
.mdc-site-post-header h1 {
  font-weight: 700 !important;
  line-height: 1.32 !important;
  letter-spacing: 0 !important;
}

.mdc-site-section-head h2,
.mdc-about-section-head h2,
.mdc-about-cta h2,
.mdc-home-cta-copy h2,
.mdc-service-cta h2,
.mdc-contact-footer-cta h2,
.mdc-contact-map-copy h2,
.mdc-products-section-title h2,
.mdc-products-final-copy h2,
.mdc-dynamic-catalog-toolbar h2,
.mdc-dynamic-section-header h2,
.mdc-dynamic-deep-heading h2,
.mdc-dynamic-quote-copy h2,
.mdc-news-section-header h2,
.mdc-news-featured-content > h2,
.mdc-article-section-header h2,
.mdc-product-detail-section-heading h2,
.mdc-product-detail-service-cta h2,
.baite-footer-map-copy h2,
.mdc-quote-form h3 {
  font-weight: 700 !important;
  line-height: 1.42 !important;
  letter-spacing: 0 !important;
}

.mdc-home-card-body h3,
.mdc-home-industry-card h3,
.mdc-about-cap-content h3,
.mdc-about-direction-item h3,
.mdc-about-values-grid h3,
.mdc-service-card h3,
.mdc-service-sign-list h3,
.mdc-contact-guidance-list h3,
.mdc-service-process-list h3,
.mdc-contact-card h3,
.mdc-news-card-body h3,
.mdc-article-related-card h3,
.mdc-product-detail-related-body h3,
.baite-card-title {
  font-weight: 600 !important;
  line-height: 1.44 !important;
  letter-spacing: 0 !important;
}

.mdc-article-content h2,
.mdc-article-content h3,
.mdc-article-content h4,
.mdc-product-detail-editorial-content h2,
.mdc-product-detail-editorial-content h3,
.mdc-product-detail-editorial-content h4 {
  font-family: var(--font-heading) !important;
  letter-spacing: 0 !important;
}

.mdc-article-content h2,
.mdc-product-detail-editorial-content h2 {
  font-weight: 700 !important;
  line-height: 1.36 !important;
}

.mdc-article-content h3,
.mdc-article-content h4,
.mdc-product-detail-editorial-content h3,
.mdc-product-detail-editorial-content h4 {
  font-weight: 600 !important;
  line-height: 1.48 !important;
}

.mdc-news-card-body h3,
.mdc-article-content h3,
.mdc-article-content h4 {
  font-weight: 700 !important;
}

.mdc-product-detail-specifications h2 {
  font-weight: 600 !important;
  line-height: 1.45 !important;
  letter-spacing: .35px !important;
}

.mdc-product-detail-service-cta h2 {
  background: transparent !important;
  background-color: transparent !important;
}

.baite-footer-col h4 {
  font-family: var(--font-heading) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: .35px !important;
}

.mdc-site-post-header h1 {
  margin: 0 0 28px;
  font-size: clamp(36px, 5vw, 58px);
}

.mdc-quote-form h3 {
  margin: 0 0 22px;
  font-size: clamp(24px, 3vw, 34px);
}

@media (max-width: 640px) {
  .mdc-home-hero h1,
  .mdc-about-hero h1,
  .mdc-service-hero h1,
  .mdc-contact-hero h1,
  .mdc-products-hero h1,
  .mdc-dynamic-hero h1,
  .mdc-news-hero h1,
  .mdc-article-entry > .mdc-article-header h1,
  .mdc-product-detail-summary h1,
  .mdc-site-post-header h1 {
    line-height: 1.24 !important;
    letter-spacing: 0 !important;
  }

  .mdc-site-section-head h2,
  .mdc-about-section-head h2,
  .mdc-about-cta h2,
  .mdc-home-cta-copy h2,
  .mdc-service-cta h2,
  .mdc-contact-footer-cta h2,
  .mdc-contact-map-copy h2,
  .mdc-dynamic-catalog-toolbar h2,
  .mdc-dynamic-section-header h2,
  .mdc-dynamic-deep-heading h2,
  .mdc-dynamic-quote-copy h2,
  .mdc-news-section-header h2,
  .mdc-product-detail-section-heading h2,
  .mdc-product-detail-service-cta h2,
  .baite-footer-map-copy h2 {
    line-height: 1.34 !important;
    letter-spacing: 0 !important;
  }

  .mdc-home-card-body h3,
  .mdc-home-industry-card h3,
  .mdc-about-cap-content h3,
  .mdc-about-direction-item h3,
  .mdc-about-values-grid h3,
  .mdc-service-card h3,
  .mdc-service-sign-list h3,
  .mdc-contact-guidance-list h3,
  .mdc-service-process-list h3,
  .mdc-dynamic-product-title,
  .mdc-news-card-body h3,
  .mdc-product-detail-related-body h3 {
    line-height: 1.46 !important;
    letter-spacing: 0 !important;
  }
}
