/* Approved homepage v02: secondary sections on the shared content axis.
 * This layer only styles existing editable content; links and business copy stay native.
 * Brief: quiet silver industrial photography, aligned edges, generous spacing,
 * retained company disclosure and real navigation, readable desktop/mobile views.
 */

/* Company photograph remains proportional, with its native disclosure below. */
body.home .elementor-4980 .elementor-element.mrv-company-banner.e-con {
  width: var(--mrv-home-width);
  max-width: none;
  min-height: min(calc((100vw - 64px) * .42059), 683px);
  grid-template-columns: 61.5% 38.5%;
  margin: 0 auto;
  padding: 0;
}
body.home .elementor-4980 .mrv-company-banner .elementor-element.mrv-company-copy.e-con {
  padding: 6.5cqw 3.2cqw 6.5cqw 0;
}
body.home .elementor-4980 .mrv-company-copy .mrv-company-eyebrow {
  font-size: clamp(12px, .862cqw, 14px);
  margin-bottom: 29px;
  letter-spacing: .1em;
}
body.home .elementor-4980 .mrv-company-title .elementor-heading-title {
  font-size: clamp(34px, 2.956cqw, 48px);
  line-height: 1.32;
  letter-spacing: -.02em;
}
body.home .elementor-4980 .mrv-company-copy .mrv-company-description {
  margin-top: 28px;
  font-size: clamp(15px, 1.109cqw, 18px);
  line-height: 1.95;
}
body.home .elementor-4980 .mrv-company-copy .mrv-company-action { margin-top: 33px; }
body.home .elementor-4980 .mrv-company-details > summary {
  min-height: 56px;
  padding: 12px 28px;
  gap: 36px;
  font-size: clamp(15px, 1.047cqw, 17px);
}
body.home .elementor-4980 .mrv-company-more {
  font-size: 15px;
  line-height: 1.9;
}

/* Keep the three original service messages. Six native icon/text children
 * share one grid so wrapping and alignment do not depend on template widths. */
body.home .elementor-4980 .elementor-element.mrv-home-services.e-con {
  width: var(--mrv-home-width);
  max-width: none;
  margin: 0 auto;
  padding: 54px 32px 58px;
  background: #fff;
  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
  --gap: 0px;
}
body.home .elementor-4980 .mrv-home-services > .e-con-inner,
body.home .elementor-4980 .mrv-home-services .elementor-element-064df8e,
body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  min-height: 0;
  gap: 0;
}
body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner {
  display: grid;
  grid-template-columns: repeat(3, 44px minmax(0, 1fr));
  align-items: center;
  width: 100%;
  max-width: none;
  gap: 0 24px;
  margin: 0;
  padding: 0 5%;
}
body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner > .e-con {
  position: relative;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  gap: 0;
  align-items: flex-start;
}
body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner > .e-con:nth-child(3)::before,
body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner > .e-con:nth-child(5)::before {
  content: "";
  position: absolute;
  width: 1px;
  top: 0;
  bottom: 0;
  left: -32px;
  background: #dde2e5;
}
body.home .elementor-4980 .mrv-home-services .elementor-widget {
  width: 100%;
  margin: 0;
  text-align: left;
}
body.home .elementor-4980 .mrv-home-services .elementor-widget-image img {
  display: block;
  width: 42px;
  height: 42px;
  object-fit: contain;
  opacity: .75;
}
body.home .elementor-4980 .mrv-home-services .elementor-heading-title {
  margin: 0;
  color: #4e5c61;
  font: 500 17px/1.5 "Microsoft YaHei", "PingFang SC", sans-serif;
  letter-spacing: 0;
}
body.home .elementor-4980 .mrv-home-services .elementor-widget-text-editor {
  margin-top: 5px;
  color: #76838b;
  font-size: 14px;
  line-height: 1.6;
}
body.home .elementor-4980 .mrv-home-services .elementor-widget-text-editor p { margin: 0; }
body.home .elementor-4980 .mrv-home-services .elementor-widget-text-editor p + p,
body.home .elementor-4980 .mrv-home-services .elementor-widget-spacer { display: none; }

/* Product-detail photographs: original links, inset white titles and hover copy. */
body.home .elementor-4980 .elementor-element.mrv-details-heading.e-con {
  width: var(--mrv-home-width);
  max-width: none;
  padding: 0 0 36px;
}
body.home .elementor-4980 .mrv-details-eyebrow p {
  font-size: 13px;
  letter-spacing: 2px;
}
body.home .elementor-4980 .mrv-details-title .elementor-heading-title {
  margin: 19px 0 17px;
  font-size: clamp(28px, 2.1vw, 36px);
  line-height: 1.3;
}
body.home .elementor-4980 .mrv-details-intro p { font-size: 17px; line-height: 1.65; }
body.home .elementor-4980 .elementor-element.mrv-details-gallery.e-con {
  width: var(--mrv-home-width);
  max-width: none;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
  padding: 0 0 86px;
}
body.home .elementor-4980 .mrv-details-gallery .mrv-detail-card { --mrv-detail-label-height: 64px; }
body.home .elementor-4980 .mrv-details-gallery .mrv-detail-card .elementor-image-box-wrapper { overflow: hidden; }
body.home .elementor-4980 .mrv-details-gallery .mrv-detail-card .elementor-image-box-wrapper .elementor-image-box-img,
body.home .elementor-4980 .mrv-details-gallery .mrv-detail-card .elementor-image-box-wrapper .elementor-image-box-img img {
  aspect-ratio: 312 / 404;
}
body.home .elementor-4980 .mrv-detail-card .elementor-image-box-wrapper::after {
  content: "";
  position: absolute;
  inset: 45% 0 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(transparent, rgba(15,24,28,.62));
}
body.home .elementor-4980 .mrv-detail-card .elementor-image-box-content {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}
body.home .elementor-4980 .mrv-detail-card h3.elementor-image-box-title {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 16px;
  height: auto;
  min-height: 44px;
  margin: 0;
  border: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 1px;
}
body.home .elementor-4980 .mrv-detail-card .elementor-image-box-title a {
  min-height: 44px;
  color: inherit;
  pointer-events: auto;
}
body.home .elementor-4980 .mrv-detail-card .elementor-image-box-title a::after { display: none; }
body.home .elementor-4980 .mrv-detail-card .elementor-image-box-description {
  left: 0;
  right: 0;
  bottom: 64px;
  padding: 38px 24px 12px;
  font-size: 14px;
  line-height: 1.75;
  background: none;
  text-shadow: 0 1px 3px rgba(0,0,0,.5);
}
body.home .elementor-4980 .mrv-detail-card a:focus-visible { outline-color: #d2ff42; }

/* Existing WordPress footer widgets: same full-width silver surface as the draft. */
body.home #colophon.site-footer { background: #f0f3f4; }
body.home #colophon > :is(.woostify-container, .container) {
  width: var(--mrv-home-width);
  max-width: none;
}
body.home #colophon :is(.site-footer-widget, .footer-widgets) {
  grid-template-columns: 1.68fr .91fr .98fr 1.55fr;
  gap: clamp(28px, 2.8125vw, 54px);
  padding: 62px 0 48px;
  border-top: 0;
}
body.home #colophon .mrv-footer-brand img { width: 180px; margin-bottom: 23px; mix-blend-mode: multiply; }
body.home #colophon .mrv-footer-brand p { max-width: 450px; font-size: 15px; line-height: 1.9; }
body.home #colophon .mrv-footer-brand .mrv-footer-company-name { font-size: 18px; line-height: 1.7; margin-bottom: 12px; }
body.home #colophon :is(.mrv-footer-products, .mrv-footer-support, .mrv-footer-contact) h2 {
  margin: 0 0 22px;
  padding: 0;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.7;
}
body.home #colophon :is(.mrv-footer-products, .mrv-footer-support, .mrv-footer-contact) h2::after { display: none; }
body.home #colophon :is(.mrv-footer-products, .mrv-footer-support) li a {
  font-size: 15px;
  min-height: 40px;
  line-height: 1.5;
}
body.home #colophon .mrv-footer-contact-label { font-size: 13px; }
body.home #colophon .mrv-footer-phone {
  margin: 0;
  font-size: 26px;
  font-weight: 650;
  letter-spacing: .2px;
  line-height: 1.5;
}
body.home #colophon .mrv-footer-hours { font-size: 14px; margin: 2px 0 6px; line-height: 1.9; }
body.home #colophon a.mrv-footer-email { margin: 0; font-size: 16px; min-height: 40px; }
body.home #colophon a.mrv-footer-quote {
  width: 250px;
  max-width: 100%;
  min-height: 48px;
  margin-top: 12px;
  padding: 17px 0 0;
  border: 0;
  border-top: 1px solid #cfd8dc;
  border-radius: 0;
  background: transparent;
  color: #20282b;
  font-size: 15px;
}
body.home #colophon a.mrv-footer-quote span { color: #66747d; }
body.home #colophon a.mrv-footer-quote:hover { background: transparent; color: #20282b; border-color: #849199; text-decoration: underline; text-underline-offset: 5px; }
body.home #colophon .site-info { padding: 0 0 24px; }
body.home #colophon .mrv-footer-address {
  padding: 23px 0;
  margin: 0;
  font-size: 14px;
  line-height: 1.8;
  border-bottom: 1px solid #d6dee2;
}
body.home #colophon .mrv-footer-bottom { padding-top: 15px; }
body.home #colophon .mrv-footer-copyright { font-size: 12px; line-height: 1.8; }

@media (max-width: 1200px) and (min-width: 1001px) {
  body.home .elementor-4980 .mrv-company-banner .elementor-element.mrv-company-copy.e-con { padding: 44px 24px 44px 0; }
  body.home .elementor-4980 .mrv-company-copy .mrv-company-eyebrow { margin-bottom: 18px; }
  body.home .elementor-4980 .mrv-company-title .elementor-heading-title { font-size: 34px; }
  body.home .elementor-4980 .mrv-company-copy .mrv-company-description { margin-top: 22px; font-size: 15px; }
  body.home .elementor-4980 .mrv-company-copy .mrv-company-action { margin-top: 24px; }
  body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner { padding-inline: 0; gap: 0 18px; }
}
@media (max-width: 1000px) {
  body.home .elementor-4980 .elementor-element.mrv-company-banner.e-con { min-height: 0; margin-bottom: 0; }
  body.home .elementor-4980 .mrv-company-banner .elementor-element.mrv-company-copy.e-con { padding: 24px 7cqw 48px; }
  body.home .elementor-4980 .mrv-company-title .elementor-heading-title { font-size: clamp(32px, 6.8cqw, 48px); }
  body.home .elementor-4980 .mrv-company-copy .mrv-company-description { font-size: 16px; margin-top: 22px; }
  body.home .elementor-4980 .elementor-element.mrv-home-services.e-con { padding: 36px 0 44px; }
  body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: 42px auto;
    gap: 16px 24px;
    padding: 0;
  }
  body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner > .e-con:nth-child(1) { grid-area: 1 / 1; }
  body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner > .e-con:nth-child(2) { grid-area: 2 / 1; }
  body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner > .e-con:nth-child(3) { grid-area: 1 / 2; }
  body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner > .e-con:nth-child(4) { grid-area: 2 / 2; }
  body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner > .e-con:nth-child(5) { grid-area: 1 / 3; }
  body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner > .e-con:nth-child(6) { grid-area: 2 / 3; }
  body.home .elementor-4980 .mrv-home-services .elementor-widget { text-align: center; }
  body.home .elementor-4980 .mrv-home-services .elementor-widget-image img { margin-inline: auto; }
  body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner > .e-con::before { display: none; }
  body.home .elementor-4980 .mrv-home-services .elementor-heading-title { font-size: 16px; }
  body.home .elementor-4980 .mrv-home-services .elementor-widget-text-editor { font-size: 13px; }
  body.home .elementor-4980 .elementor-element.mrv-details-gallery.e-con { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; padding-bottom: 56px; }
  body.home #colophon :is(.site-footer-widget, .footer-widgets) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 36px; padding: 44px 0; }
  body.home #colophon :is(.site-footer-widget, .footer-widgets) > .widget:first-child,
  body.home #colophon :is(.site-footer-widget, .footer-widgets) > .widget:last-child { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  body.home .elementor-4980 .mrv-company-banner .elementor-element.mrv-company-copy.e-con { padding: 18px 24px 36px; }
  body.home .elementor-4980 .mrv-company-title .elementor-heading-title { font-size: 32px; }
  body.home .elementor-4980 .mrv-company-copy .mrv-company-description { font-size: 15px; }
  body.home .elementor-4980 .mrv-company-copy .mrv-company-eyebrow { margin-bottom: 20px; }
  body.home .elementor-4980 .mrv-company-copy .mrv-company-action { margin-top: 27px; }
  body.home .elementor-4980 .mrv-company-details > summary { min-height: 48px; }
  body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner {
    grid-template-columns: 44px minmax(0, 1fr);
    grid-template-rows: auto;
    gap: 24px;
    padding: 0 16px;
  }
  body.home .elementor-4980 .mrv-home-services .elementor-element-9be4064 > .e-con-inner > .e-con:nth-child(n) { grid-area: auto; }
  body.home .elementor-4980 .mrv-home-services .elementor-widget { text-align: left; }
  body.home .elementor-4980 .elementor-element.mrv-details-heading.e-con { padding-bottom: 28px; }
  body.home .elementor-4980 .mrv-details-intro p { font-size: 14px; }
  body.home .elementor-4980 .elementor-element.mrv-details-gallery.e-con { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding-bottom: 44px; }
  body.home .elementor-4980 .mrv-detail-card h3.elementor-image-box-title { left: 14px; right: 14px; bottom: 7px; font-size: 15px; letter-spacing: 0; }
  body.home .elementor-4980 .mrv-detail-card .elementor-image-box-description { bottom: 52px; padding: 30px 14px 6px; font-size: 12px; line-height: 1.6; }
  body.home #colophon .mrv-footer-brand .mrv-footer-company-name { font-size: 16px; }
  body.home #colophon .mrv-footer-brand p { font-size: 14px; }
  body.home #colophon .mrv-footer-hours { font-size: 13px; }
  body.home #colophon .mrv-footer-address { font-size: 13px; }
  body.home #colophon .mrv-footer-bottom { flex-wrap: wrap; gap: 6px 20px; }
}
@media (max-width: 379px) {
  body.home #colophon :is(.site-footer-widget, .footer-widgets) { grid-template-columns: minmax(0, 1fr); gap: 28px; }
}
