/* Homepage-only visual preview. Shared components and other routes are unchanged. */
body.site-design.home-refresh.home-visual main.wrap { width:100%; max-width:none; overflow:visible; }
body.site-design.home-refresh.home-visual .nh-container { width:min(1200px,calc(100% - 96px)); }
body.site-design.home-refresh.home-visual .nh-hero-stage { display:contents; }
body.site-design.home-refresh.home-visual .nh-hero {
  width:min(1200px,calc(100% - 96px)); max-width:1200px;
  grid-template-columns:44fr 56fr; gap:0; min-height:600px;
  height:auto; position:relative; top:auto; padding:40px 0 48px;
}
body.site-design.home-refresh.home-visual .nh-hero-copy { padding:0; }
body.site-design.home-refresh.home-visual .nh-hero h1 {
  font-size:clamp(44px,4.2vw,64px)!important; max-width:560px;
  font-weight:500!important; line-height:1.08!important;
}
body.site-design.home-refresh.home-visual .nh-visual { height:520px; }
body.site-design.home-refresh.home-visual .nh-device {
  inset:24px 0 0; height:auto; width:100%; transform:none; background:none;
  display:flex; align-items:center; justify-content:flex-start;
}
body.site-design.home-refresh.home-visual .nh-device img {
  width:540px; max-width:90%;
  height:auto; max-height:400px; object-fit:contain; flex-shrink:0;
  mix-blend-mode:normal; transform:none;
}
body.site-design.home-refresh.home-visual .nh-device a {
  position:absolute; bottom:0; margin:0; min-height:44px;
}
body.site-design.home-refresh.home-visual .nh-bridge-scene {
  width:100%; left:0; bottom:48px; opacity:.36; aspect-ratio:1120/380;
}
body.site-design.home-refresh.home-visual .nh-bridge-monitor { display:none; }
body.site-design.editorial-style.home-visual .nh-capabilities.es-split {
  padding-block:64px; grid-template-columns:1fr 1fr; gap:64px;
  border-top:1px solid var(--es-line);
}
body.site-design.home-visual .nh-capability-intro { min-width:0; }
body.site-design.editorial-style.home-visual .nh-capability-intro h2 {
  font-size:clamp(40px,4vw,58px)!important; line-height:1.08!important;
  max-width:470px;
}
body.site-design.home-visual .nh-field-installation { margin:30px 0 0; }
body.site-design.home-visual .nh-field-installation img {
  display:block; width:100%; height:auto; aspect-ratio:2;
  border-radius:4px; object-fit:contain;
}
body.site-design.home-refresh.home-visual .nh-products {
  padding-block:64px; background:#f7f8f8;
}
body.site-design.home-refresh.home-visual .nh-section-head { margin-bottom:24px; }
body.site-design.home-refresh.home-visual .nh-product-grid {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px;
}
body.site-design.home-refresh.home-visual .nh-product {
  display:block; padding:0; background:transparent; border:0;
  box-shadow:none!important; border-radius:0; min-height:0;
}
body.site-design.home-refresh.home-visual .nh-product-image {
  width:100%; height:320px; display:flex; align-items:center; justify-content:center;
}
body.site-design.home-refresh.home-visual .nh-product-image img {
  width:96%; height:auto; max-width:100%; max-height:300px;
  object-fit:contain; mix-blend-mode:normal; transform:none;
}
body.site-design.home-refresh.home-visual .nh-product-copy { padding:22px 0 0; }
body.site-design.home-refresh.home-visual .nh-product h3 { margin:0 0 8px; }
body.site-design.home-refresh.home-visual .nh-product p { font-size:14px; }
body.site-design.home-refresh.home-visual .nh-case {
  display:block; padding-block:64px; border:0;
}
body.site-design.home-refresh.home-visual .nh-case-copy { margin-bottom:32px; }
body.site-design.home-refresh.home-visual .nh-case-copy .nh-eyebrow { margin:0 0 12px; }
body.site-design.home-refresh.home-visual .nh-case-copy h2 { margin:0; max-width:none; }
body.site-design.home-refresh.home-visual .nh-case-copy>p:not(.nh-eyebrow) {
  max-width:650px; margin:18px 0 14px; line-height:1.65;
}
body.site-design.home-refresh.home-visual .nh-case-copy .nh-link,
body.site-design.home-refresh.home-visual .nh-case-copy .nh-more-cases {
  display:inline-flex; align-items:center; min-height:44px; margin:0 28px 0 0;
}
body.site-design.home-refresh.home-visual .nh-case-visuals {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; align-items:start;
}
body.site-design.home-refresh.home-visual .nh-case-image { display:block; border-radius:4px; }
body.site-design.home-refresh.home-visual .nh-case-image img { display:block; width:100%; height:auto; }
body.site-design.home-refresh.home-visual .nh-case-location { left:14px; bottom:14px; }
body.site-design.editorial-style.home-visual .nh-contact {
  padding-block:36px; background:#fff; border-top:1px solid var(--es-line);
}
body.site-design.home-visual .nh-contact p { margin-top:14px; }
body.site-design.home-visual .nh-product:focus-visible {
  outline:2px solid var(--es-blue); outline-offset:7px;
}
@media(min-width:750px) and (max-width:1000px) {
  body.site-design.home-refresh.home-visual .nh-container,
  body.site-design.home-refresh.home-visual .nh-hero { width:calc(100% - 64px); }
  body.site-design.home-refresh.home-visual .nh-hero { min-height:520px; }
  body.site-design.home-refresh.home-visual .nh-hero h1 { font-size:44px!important; }
  body.site-design.home-refresh.home-visual .nh-visual { height:430px; }
  body.site-design.home-refresh.home-visual .nh-device { inset:36px 0 0; height:auto; }
  body.site-design.home-refresh.home-visual .nh-device img { width:500px; max-height:320px; }
  body.site-design.editorial-style.home-visual .nh-capabilities.es-split { gap:32px; }
  body.site-design.editorial-style.home-visual .nh-capability-intro h2 { font-size:40px!important; }
  body.site-design.home-refresh.home-visual .nh-product-grid { gap:20px; }
  body.site-design.home-refresh.home-visual .nh-product-image { height:230px; }
  body.site-design.home-refresh.home-visual .nh-product-image img { max-height:210px; }
  body.site-design.home-refresh.home-visual .nh-section-head { gap:24px; }
  body.site-design.home-refresh.home-visual .nh-section-head h2 { font-size:32px!important; max-width:440px; }
}
@media(max-width:749px) {
  body.site-design.home-refresh.home-visual .nh-container,
  body.site-design.home-refresh.home-visual .nh-hero { width:calc(100% - 40px); }
  body.site-design.home-refresh.home-visual .nh-hero {
    display:flex; flex-direction:column; min-height:0; padding:34px 0 40px;
  }
  body.site-design.home-refresh.home-visual .nh-hero h1 {
    font-size:clamp(34px,9.6vw,52px)!important; line-height:1.09!important;
  }
  body.site-design.home-refresh.home-visual .nh-visual {
    height:340px; max-width:500px; margin:24px auto 0;
  }
  body.site-design.home-refresh.home-visual .nh-device { inset:10px 0 0; height:auto; }
  body.site-design.home-refresh.home-visual .nh-device img { width:400px; max-width:98%; max-height:280px; }
  body.site-design.home-refresh.home-visual .nh-device a { font-size:11px; min-height:44px; }
  body.site-design.home-refresh.home-visual .nh-bridge-scene { width:100%; left:0; bottom:44px; opacity:.42; }
  body.site-design.editorial-style.home-visual .nh-capabilities.es-split {
    display:block; padding-block:40px;
  }
  body.site-design.editorial-style.home-visual .nh-capability-intro h2 { font-size:40px!important; }
  body.site-design.home-visual .nh-field-installation { margin-top:24px; }
  body.site-design.home-visual .nh-capability-grid { margin-top:32px; }
  body.site-design.home-refresh.home-visual .nh-products { padding-block:40px; }
  body.site-design.home-refresh.home-visual .nh-product-grid { grid-template-columns:1fr; gap:32px; }
  body.site-design.home-refresh.home-visual .nh-product { display:block; padding:0 0 30px; border-bottom:1px solid var(--line); }
  body.site-design.home-refresh.home-visual .nh-product:last-child { padding-bottom:0; border-bottom:0; }
  body.site-design.home-refresh.home-visual .nh-product-image { height:auto; min-height:230px; }
  body.site-design.home-refresh.home-visual .nh-product-image img { width:100%; max-width:390px; max-height:300px; }
  body.site-design.home-refresh.home-visual .nh-product-copy { padding:18px 0 0; }
  body.site-design.home-refresh.home-visual .nh-product p { font-size:14px; max-width:none; }
  body.site-design.home-refresh.home-visual .nh-section-head { margin-bottom:28px; }
  body.site-design.home-refresh.home-visual .nh-case { padding-block:40px; }
  body.site-design.home-refresh.home-visual .nh-case-copy { margin-bottom:24px; }
  body.site-design.home-refresh.home-visual .nh-case-visuals { grid-template-columns:1fr; gap:20px; }
  body.site-design.home-refresh.home-visual .nh-case-copy .nh-link,
  body.site-design.home-refresh.home-visual .nh-case-copy .nh-more-cases { margin-right:20px; }
  body.site-design.editorial-style.home-visual .nh-contact { padding-block:32px; }
}
@media(max-width:359px) {
  body.site-design.home-refresh.home-visual .nh-visual { height:300px; }
  body.site-design.home-refresh.home-visual .nh-device img { max-height:230px; }
  body.site-design.home-refresh.home-visual .nh-product-image { min-height:200px; }
}
@media(min-width:750px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  body.site-design.home-refresh.home-visual .nh-product-image img { transition:transform .35s ease; }
  body.site-design.home-refresh.home-visual .nh-product:hover .nh-product-image img { transform:scale(1.03); }
}
@media(prefers-reduced-motion:reduce) {
  body.site-design.home-visual .nh-device img,
  body.site-design.home-visual .nh-product-image img { animation:none!important; transition:none!important; transform:none!important; }
}
