:root {
  --navy-950: #031225;
  --navy-900: #061b34;
  --navy-800: #0b2a4c;
  --navy-700: #123e68;
  --blue-600: #1767d2;
  --blue-500: #2584ef;
  --cyan-400: #3dd9f5;
  --cyan-300: #75e7fb;
  --red-500: #c7232a;
  --slate-900: #152238;
  --slate-700: #42536b;
  --slate-500: #6e7f96;
  --slate-300: #b8c4d3;
  --slate-200: #dbe3ec;
  --slate-100: #edf2f7;
  --paper: #f7f9fc;
  --white: #fff;
  --shadow-sm: 0 10px 30px rgba(8, 30, 58, 0.08);
  --shadow-lg: 0 28px 80px rgba(2, 17, 37, 0.2);
  --radius-sm: 12px;
  --radius-md: 20px;
  --radius-lg: 30px;
  --container: min(1180px, calc(100% - 40px));
}
@media(max-width:900px){.site-about-menu summary{padding:12px 4px;color:#fff}.site-about-mega{position:static;width:100%;grid-template-columns:1fr 1fr;transform:none;padding:16px;border-radius:12px;background:#fff}.site-about-feature{grid-column:1/-1}}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--slate-900);
  background: var(--white);
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.container { width: var(--container); margin-inline: auto; }
.section { padding: 96px 0; }
.section-sm { padding: 64px 0; }
.section-dark { color: var(--white); background: var(--navy-950); }
.section-soft { background: var(--paper); }
.section-blue { color: var(--white); background: linear-gradient(135deg, #07284b, #0a4c86); }
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
  color: var(--blue-600);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.eyebrow::before { content: ""; width: 28px; height: 2px; background: currentColor; }
.section-dark .eyebrow, .section-blue .eyebrow, .page-hero .eyebrow { color: var(--cyan-300); }
h1, h2, h3, h4, p { margin-top: 0; }
h1, h2, h3, h4 { line-height: 1.15; }
h1 { font-size: clamp(2.6rem, 6vw, 5.6rem); letter-spacing: -0.045em; }
h2 { margin-bottom: 20px; font-size: clamp(2rem, 4vw, 3.6rem); letter-spacing: -0.035em; }
h3 { margin-bottom: 12px; font-size: 1.25rem; }
.lead { color: var(--slate-700); font-size: clamp(1.04rem, 1.8vw, 1.24rem); }
.section-dark .lead, .section-blue .lead, .page-hero .lead { color: #c2d5e8; }
.section-heading { display: grid; grid-template-columns: 1fr minmax(280px, 520px); gap: 48px; align-items: end; margin-bottom: 48px; }
.section-heading > * { margin-bottom: 0; }
.center-heading { max-width: 760px; margin: 0 auto 48px; text-align: center; }
.center-heading .eyebrow::before { display: none; }
.btn-row { display: flex; flex-wrap: wrap; gap: 12px; }
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 0 22px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 0.9rem;
  font-weight: 750;
  transition: transform 0.25s ease, background 0.25s ease, border-color 0.25s ease;
}
.btn:hover { transform: translateY(-2px); }
.btn-primary { color: var(--white); background: var(--blue-600); }
.btn-primary:hover { background: var(--blue-500); }
.btn-light { color: var(--navy-950); background: var(--white); }
.btn-outline { color: var(--white); border-color: rgba(255,255,255,.35); background: rgba(255,255,255,.04); }
.btn-outline:hover { border-color: var(--cyan-400); }
.btn-dark { color: var(--white); background: var(--navy-900); }
.text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--blue-600); font-weight: 750; }
.text-link::after { content: "→"; transition: transform .2s ease; }
.text-link:hover::after { transform: translateX(4px); }

.site-header {
  position: sticky;
  z-index: 100;
  top: 0;
  height: 78px;
  border-bottom: 1px solid rgba(10, 39, 70, 0.08);
  background: rgba(255,255,255,.93);
  backdrop-filter: blur(16px);
}
.nav-wrap { display: flex; align-items: center; justify-content: space-between; height: 100%; }
.brand { display: flex; align-items: center; width: 205px; height: 52px; }
.brand img { width: 100%; max-height: 50px; object-fit: contain; }
.site-nav { display: flex; align-items: center; gap: 28px; }
.site-nav > a { position: relative; color: var(--slate-700); font-size: .87rem; font-weight: 700; }
.site-nav > a:not(.nav-cta)::after { content: ""; position: absolute; right: 0; bottom: -9px; left: 0; height: 2px; transform: scaleX(0); background: var(--blue-600); transition: transform .2s ease; }
.site-nav > a:hover::after, .site-nav > a[aria-current="page"]::after { transform: scaleX(1); }
.site-about-menu{position:relative;color:inherit}.site-about-menu summary{list-style:none;cursor:pointer;color:inherit;font-size:.87rem;font-weight:700}.site-about-menu summary::-webkit-details-marker{display:none}.site-about-menu summary::after{content:"";display:inline-block;width:6px;height:6px;margin-left:7px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg) translateY(-2px)}.site-about-mega{position:fixed;top:78px;left:50%;width:min(1120px,calc(100% - 80px));padding:28px;display:grid;grid-template-columns:repeat(3,1fr) 1.25fr;gap:28px;transform:translateX(-50%);border:1px solid var(--slate-200);border-radius:0 0 18px 18px;background:rgba(255,255,255,.98);box-shadow:0 28px 70px rgba(7,27,51,.18);color:#071b33}.site-about-mega strong{display:block;margin-bottom:10px;color:#0b70dc;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.site-about-mega a{display:block;padding:6px 0;color:#425a72;font-size:13px}.site-about-feature{padding:20px;border-radius:13px;color:#fff;background:linear-gradient(135deg,#06264a,#075eb4)}.site-about-feature b{font-size:18px}.site-about-feature p{font-size:12px;color:#c5d7e8}.site-about-feature a{color:#6bc5ff;font-weight:800}
.site-about-mega-simple{width:min(430px,calc(100% - 80px));grid-template-columns:repeat(3,1fr);gap:8px;padding:14px}.site-about-mega-simple a{padding:14px 18px;text-align:center;border-radius:10px;color:#0a2342;font-size:15px;font-weight:800;transition:.25s}.site-about-mega-simple a:hover,.site-about-mega-simple a:focus-visible{color:#0876e8;background:#edf7ff}
@media(max-width:900px){.site-about-mega-simple{width:100%;grid-template-columns:1fr;padding:10px}.site-about-mega-simple a{text-align:left}}
.nav-cta { padding: 11px 17px; color: var(--white) !important; border-radius: 999px; background: var(--blue-600); }
.nav-toggle { display: none; width: 44px; height: 44px; border: 0; border-radius: 50%; background: var(--slate-100); }
.nav-toggle span { display: block; width: 20px; height: 2px; margin: 4px auto; background: var(--navy-950); }

.home-hero {
  position: relative;
  min-height: calc(100vh - 78px);
  overflow: hidden;
  color: var(--white);
  background:
    radial-gradient(circle at 76% 42%, rgba(34, 131, 239, .34), transparent 34%),
    radial-gradient(circle at 30% 80%, rgba(61, 217, 245, .14), transparent 32%),
    linear-gradient(125deg, #020c19 0%, #061b34 48%, #082e54 100%);
}
.home-hero::before, .page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .2;
  background-image: linear-gradient(rgba(105, 209, 255, .18) 1px, transparent 1px), linear-gradient(90deg, rgba(105, 209, 255, .18) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: linear-gradient(to bottom, #000, transparent 85%);
}
.home-hero::after {
  content: "";
  position: absolute;
  width: 720px;
  height: 720px;
  right: -220px;
  top: 20px;
  border: 1px solid rgba(88, 213, 255, .3);
  border-radius: 50%;
  box-shadow: 0 0 80px rgba(28, 147, 241, .16), inset 0 0 90px rgba(28, 147, 241, .08);
}
.energy-line { position: absolute; z-index: 0; height: 1px; width: 62%; right: -5%; top: 48%; transform: rotate(-12deg); background: linear-gradient(90deg, transparent, var(--cyan-400), transparent); box-shadow: 0 0 14px var(--cyan-400); animation: pulse-line 4s ease-in-out infinite; }
@keyframes pulse-line { 50% { opacity: .35; transform: rotate(-12deg) translateX(-45px); } }
.hero-layout { position: relative; z-index: 2; display: grid; grid-template-columns: 1.05fr .95fr; gap: 50px; align-items: center; min-height: calc(100vh - 78px); padding: 76px 0; }
.hero-copy h1 { max-width: 780px; margin-bottom: 26px; font-size: clamp(3rem, 6vw, 5.45rem); }
.hero-copy .lead { max-width: 720px; margin-bottom: 34px; }
.home-hero .lead { color: #c2d5e8; }
.hero-copy .eyebrow { color: var(--cyan-300); }
.hero-products { position: relative; min-height: 600px; }
.product-orbit { position: absolute; inset: 7% 2% 7% 6%; border: 1px solid rgba(96, 219, 255, .22); border-radius: 48% 52% 48% 52%; transform: rotate(-10deg); }
.product-orbit::before, .product-orbit::after { content: ""; position: absolute; border-radius: 50%; background: var(--cyan-400); box-shadow: 0 0 20px var(--cyan-400); }
.product-orbit::before { width: 8px; height: 8px; top: 12%; left: 13%; }
.product-orbit::after { width: 5px; height: 5px; right: 9%; bottom: 17%; }
.hero-product { position: absolute; z-index: 2; object-fit: contain; filter: drop-shadow(0 30px 24px rgba(0,0,0,.35)); }
.hero-product.p1 { right: 2%; bottom: 4%; width: 48%; }
.hero-product.p2 { left: 2%; bottom: 0; width: 36%; }
.hero-product.p3 { left: 0; top: 4%; width: 33%; }
.hero-product.p4 { right: 1%; top: 4%; width: 33%; }
.hero-product.p5 { left: 32%; top: 18%; width: 34%; }
.hero-tag { position: absolute; z-index: 3; right: 3%; top: 46%; padding: 11px 16px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; color: #d5edff; background: rgba(3,18,37,.72); backdrop-filter: blur(12px); font-size: .78rem; font-weight: 700; }

.metric-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; border: 1px solid var(--slate-200); border-radius: var(--radius-md); overflow: hidden; background: var(--slate-200); box-shadow: var(--shadow-sm); }
.metric { min-height: 150px; padding: 30px; background: var(--white); }
.metric strong { display: block; margin-bottom: 5px; color: var(--blue-600); font-size: clamp(1.75rem, 3vw, 2.6rem); line-height: 1; }
.metric span { color: var(--slate-700); font-size: .88rem; font-weight: 650; }
.metric small { display: block; margin-top: 6px; color: var(--slate-500); font-size: .7rem; }

.challenge-layout { display: grid; grid-template-columns: .86fr 1.14fr; gap: 70px; align-items: start; }
.challenge-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.challenge-item, .value-item { position: relative; padding: 25px; border: 1px solid var(--slate-200); border-radius: var(--radius-sm); background: var(--white); box-shadow: var(--shadow-sm); }
.challenge-item::before { content: ""; display: block; width: 32px; height: 4px; margin-bottom: 18px; border-radius: 10px; background: linear-gradient(90deg, var(--blue-600), var(--cyan-400)); }
.challenge-item h3 { font-size: 1rem; }
.challenge-item p { margin-bottom: 0; color: var(--slate-500); font-size: .86rem; }

.solution-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.solution-card { position: relative; min-height: 370px; overflow: hidden; border-radius: var(--radius-md); color: var(--white); background: var(--navy-900); box-shadow: var(--shadow-lg); }
.solution-card img { width: 100%; height: 100%; min-height: 370px; object-fit: cover; opacity: .52; transition: transform .5s ease, opacity .5s ease; }
.solution-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(2,13,28,.96), rgba(4,29,57,.08)); }
.solution-card:hover img { transform: scale(1.04); opacity: .7; }
.solution-card-content { position: absolute; z-index: 2; right: 26px; bottom: 24px; left: 26px; }
.solution-card-content span { color: var(--cyan-300); font-size: .72rem; font-weight: 800; letter-spacing: .1em; }
.solution-card-content p { margin-bottom: 0; color: #c8d8e8; font-size: .87rem; }

.product-family-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.family-card { position: relative; min-height: 330px; padding: 22px; overflow: hidden; border: 1px solid var(--slate-200); border-radius: var(--radius-md); background: linear-gradient(160deg, #fff, #eef4fa); }
.family-card img { width: 100%; height: 180px; object-fit: contain; transition: transform .35s ease; }
.family-card:hover img { transform: translateY(-8px) scale(1.04); }
.family-card h3 { font-size: 1rem; }
.family-card p { margin-bottom: 0; color: var(--slate-500); font-size: .78rem; }

.value-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.value-item { border-color: rgba(255,255,255,.12); background: rgba(255,255,255,.055); box-shadow: none; }
.value-item strong { display: block; margin-bottom: 7px; color: var(--cyan-300); font-size: 1.02rem; }
.value-item span { color: #c2d5e8; font-size: .84rem; }

.advantage-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.advantage-card { padding: 30px; border: 1px solid var(--slate-200); border-radius: var(--radius-md); background: var(--white); box-shadow: var(--shadow-sm); }
.advantage-number { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-bottom: 24px; border-radius: 50%; color: var(--white); background: var(--blue-600); font-size: .8rem; font-weight: 800; }
.advantage-card p { margin-bottom: 0; color: var(--slate-700); font-size: .9rem; }

.media-split { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.media-frame { position: relative; overflow: hidden; border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); }
.media-frame img { width: 100%; min-height: 460px; object-fit: cover; }
.media-badge { position: absolute; right: 22px; bottom: 22px; left: 22px; padding: 18px 20px; border: 1px solid rgba(255,255,255,.2); border-radius: var(--radius-sm); color: var(--white); background: rgba(3,18,37,.82); backdrop-filter: blur(10px); }
.media-badge strong { display: block; font-size: 1.2rem; }
.check-list { display: grid; gap: 14px; padding: 0; list-style: none; }
.check-list li { position: relative; padding-left: 30px; color: var(--slate-700); }
.check-list li::before { content: "✓"; position: absolute; left: 0; top: 0; color: var(--blue-600); font-weight: 900; }
.section-dark .check-list li, .section-blue .check-list li { color: #ccdaea; }

.page-hero { position: relative; overflow: hidden; padding: 105px 0 90px; color: var(--white); background: radial-gradient(circle at 85% 15%, rgba(38,132,232,.35), transparent 30%), linear-gradient(135deg, #031225, #0b3158); }
.page-hero .container { position: relative; z-index: 2; }
.page-hero h1 { max-width: 900px; margin-bottom: 22px; font-size: clamp(2.7rem, 5vw, 4.8rem); }
.page-hero .lead { max-width: 780px; margin-bottom: 0; }
.breadcrumbs { margin-bottom: 20px; color: #8eb4d7; font-size: .8rem; }
.breadcrumbs a:hover { color: var(--white); }

.category-nav { position: sticky; z-index: 20; top: 78px; border-bottom: 1px solid var(--slate-200); background: rgba(255,255,255,.94); backdrop-filter: blur(12px); }
.category-nav-inner { display: flex; gap: 8px; overflow-x: auto; padding: 14px 0; scrollbar-width: none; }
.category-nav a, .filter-button { flex: 0 0 auto; padding: 9px 15px; border: 1px solid var(--slate-200); border-radius: 999px; color: var(--slate-700); background: var(--white); font-size: .78rem; font-weight: 700; }
.category-nav a:hover, .filter-button:hover, .filter-button.active { color: var(--white); border-color: var(--blue-600); background: var(--blue-600); }
.product-category { scroll-margin-top: 150px; padding: 88px 0; }
.product-category:nth-child(even) { background: var(--paper); }
.category-intro { display: grid; grid-template-columns: .8fr 1.2fr; gap: 50px; margin-bottom: 38px; }
.category-intro p { color: var(--slate-700); }
.product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.product-card { overflow: hidden; border: 1px solid var(--slate-200); border-radius: var(--radius-md); background: var(--white); box-shadow: var(--shadow-sm); }
.product-image { display: flex; align-items: center; justify-content: center; height: 245px; padding: 24px; background: linear-gradient(145deg, #f8fafc, #eaf1f8); }
.product-image img { width: 100%; height: 100%; object-fit: contain; transition: transform .35s ease; }
.product-card:hover .product-image img { transform: scale(1.05) translateY(-4px); }
.product-content { padding: 20px; }
.product-content .tag { display: inline-block; margin-bottom: 10px; color: var(--blue-600); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.product-content h3 { margin-bottom: 5px; font-size: 1rem; }
.product-content p { margin-bottom: 0; color: var(--slate-500); font-size: .78rem; }
.system-card { padding: 28px; border: 1px solid rgba(255,255,255,.12); border-radius: var(--radius-md); background: rgba(255,255,255,.05); }
.system-card h3 { color: var(--white); }
.system-card p { margin-bottom: 0; color: #bdd0e3; font-size: .88rem; }

.detail-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }
.detail-card { padding: 34px; border: 1px solid var(--slate-200); border-radius: var(--radius-md); background: var(--white); box-shadow: var(--shadow-sm); }
.detail-card ul { margin-bottom: 0; padding-left: 20px; color: var(--slate-700); }
.detail-card li + li { margin-top: 7px; }
.detail-card.wide { grid-column: 1 / -1; }
.tech-icon { display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; margin-bottom: 22px; border-radius: 16px; color: var(--white); background: linear-gradient(135deg, var(--blue-600), var(--cyan-400)); font-weight: 900; }

.timeline { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.timeline::before { content: ""; position: absolute; top: 19px; right: 8%; left: 8%; height: 1px; background: var(--slate-300); }
.timeline-item { position: relative; padding-top: 55px; }
.timeline-item::before { content: ""; position: absolute; z-index: 1; top: 11px; left: 0; width: 17px; height: 17px; border: 6px solid var(--white); border-radius: 50%; background: var(--blue-600); box-shadow: 0 0 0 1px var(--blue-600); }
.timeline-item strong { display: block; color: var(--blue-600); font-size: 1.35rem; }
.timeline-item p { color: var(--slate-700); font-size: .86rem; }

.facility-list { display: grid; gap: 22px; }
.facility { display: grid; grid-template-columns: 250px 1fr; overflow: hidden; border: 1px solid var(--slate-200); border-radius: var(--radius-md); background: var(--white); box-shadow: var(--shadow-sm); }
.facility-index { display: flex; flex-direction: column; justify-content: flex-end; min-height: 230px; padding: 26px; color: var(--white); background: linear-gradient(145deg, var(--navy-900), var(--blue-600)); }
.facility-index span { color: var(--cyan-300); font-size: .75rem; font-weight: 800; letter-spacing: .1em; }
.facility-index strong { margin-top: 8px; font-size: 1.25rem; line-height: 1.2; }
.facility-content { display: flex; align-items: center; padding: 34px; }
.facility-content p { margin-bottom: 0; color: var(--slate-700); }

.download-toolbar { display: grid; grid-template-columns: 1fr 260px; gap: 16px; margin-bottom: 30px; }
.search-box, .select-box, .form-field input, .form-field textarea { width: 100%; border: 1px solid var(--slate-300); border-radius: 12px; color: var(--slate-900); background: var(--white); outline: none; }
.search-box, .select-box { height: 52px; padding: 0 16px; }
.search-box:focus, .select-box:focus, .form-field input:focus, .form-field textarea:focus { border-color: var(--blue-500); box-shadow: 0 0 0 3px rgba(37,132,239,.12); }
.filter-row { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 30px; }
.filter-button { cursor: pointer; }
.download-list { display: grid; gap: 12px; }
.download-item { display: grid; grid-template-columns: 1fr auto; gap: 20px; align-items: center; padding: 22px; border: 1px solid var(--slate-200); border-radius: var(--radius-sm); background: var(--white); }
.download-item h3 { margin-bottom: 4px; font-size: .98rem; }
.download-meta { display: flex; flex-wrap: wrap; gap: 10px; color: var(--slate-500); font-size: .72rem; }
.download-meta span { padding: 3px 8px; border-radius: 999px; background: var(--slate-100); }
.empty-state { padding: 48px; border: 1px dashed var(--slate-300); border-radius: var(--radius-md); text-align: center; }

.contact-grid { display: grid; grid-template-columns: .75fr 1.25fr; gap: 70px; }
.contact-item { padding: 22px 0; border-bottom: 1px solid var(--slate-200); }
.contact-item span { display: block; color: var(--slate-500); font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.contact-item strong { display: block; margin-top: 5px; font-size: 1.08rem; }
.contact-form { padding: 34px; border: 1px solid var(--slate-200); border-radius: var(--radius-md); background: var(--white); box-shadow: var(--shadow-sm); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.form-field { display: grid; gap: 6px; }
.form-field.full { grid-column: 1 / -1; }
.form-field label { color: var(--slate-700); font-size: .78rem; font-weight: 750; }
.form-field input { height: 50px; padding: 0 14px; }
.form-field textarea { min-height: 150px; padding: 14px; resize: vertical; }
.form-note { margin: 16px 0 0; color: var(--slate-500); font-size: .75rem; }

.cta-band { position: relative; overflow: hidden; padding: 68px 0; color: var(--white); background: linear-gradient(125deg, var(--blue-600), #0d477b); }
.cta-band::after { content: ""; position: absolute; width: 360px; height: 360px; right: -80px; top: -180px; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; }
.cta-inner { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: center; }
.cta-inner h2 { margin-bottom: 8px; font-size: clamp(1.8rem, 3vw, 2.8rem); }
.cta-inner p { margin-bottom: 0; color: #d8eaff; }

.site-footer { color: #b8c9db; background: #020b16; }
.footer-main { display: grid; grid-template-columns: 1.4fr repeat(3, 1fr); gap: 50px; padding: 72px 0 50px; }
.footer-brand { width: 240px; margin-bottom: 22px; padding: 0; border-radius: 0; background: transparent; filter: grayscale(1) brightness(0) invert(1); }
.footer-about p { max-width: 400px; font-size: .86rem; }
.footer-column h3 { color: var(--white); font-size: .9rem; }
.footer-column a { display: block; padding: 5px 0; font-size: .82rem; }
.footer-column a:hover { color: var(--cyan-300); }
.footer-bottom { display: flex; justify-content: space-between; gap: 30px; padding: 22px 0; border-top: 1px solid rgba(255,255,255,.09); font-size: .72rem; }
.footer-bottom p { margin-bottom: 0; }

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

@media (max-width: 1050px) {
  .site-nav { gap: 17px; }
  .site-nav > a { font-size: .78rem; }
  .hero-layout { grid-template-columns: 1fr; padding-top: 84px; }
  .hero-products { min-height: 520px; }
  .metric-grid { grid-template-columns: repeat(2, 1fr); }
  .product-family-grid { grid-template-columns: repeat(3, 1fr); }
  .product-grid { grid-template-columns: repeat(3, 1fr); }
  .footer-main { grid-template-columns: 1.4fr repeat(2, 1fr); }
}

@media (max-width: 820px) {
  .section { padding: 72px 0; }
  .section-heading, .challenge-layout, .media-split, .category-intro, .contact-grid { grid-template-columns: 1fr; gap: 28px; }
  .nav-toggle { display: flex !important; align-items: center; justify-content: center; flex-direction: column; flex: 0 0 44px; }
  .site-nav { position: fixed; inset: 78px 0 auto; display: grid; gap: 0; padding: 22px 20px 30px; transform: translateY(-130%); border-bottom: 1px solid var(--slate-200); background: var(--white); box-shadow: var(--shadow-lg); transition: transform .3s ease; }
  .site-nav.open { transform: translateY(0); }
  .site-nav > a { padding: 12px 4px; font-size: .95rem; }
  .site-nav > a::after { display: none; }
  .nav-cta { margin-top: 8px; text-align: center; }
  .hero-layout { min-height: auto; }
  .hero-products { min-height: 440px; }
  .solution-grid, .advantage-grid { grid-template-columns: repeat(2, 1fr); }
  .value-grid { grid-template-columns: repeat(2, 1fr); }
  .product-grid { grid-template-columns: repeat(2, 1fr); }
  .timeline { grid-template-columns: repeat(2, 1fr); }
  .timeline::before { display: none; }
  .facility { grid-template-columns: 1fr; }
  .facility-index { min-height: 160px; }
  .download-toolbar { grid-template-columns: 1fr; }
  .cta-inner { grid-template-columns: 1fr; }
  .footer-main { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 560px) {
  :root { --container: min(100% - 28px, 1180px); }
  h1 { font-size: 2.55rem; }
  .hero-copy h1 { font-size: 2.65rem; }
  .home-hero { min-height: auto; }
  .hero-layout { padding: 64px 0; }
  .hero-products { min-height: 330px; margin-top: 20px; }
  .hero-product.p1 { width: 52%; }
  .hero-product.p2 { width: 38%; }
  .hero-tag { display: none; }
  .btn-row .btn { width: 100%; }
  .metric-grid, .challenge-list, .solution-grid, .product-family-grid, .value-grid, .advantage-grid, .product-grid, .detail-grid, .timeline, .form-grid, .footer-main { grid-template-columns: 1fr; }
  .detail-card.wide, .form-field.full { grid-column: auto; }
  .solution-card, .solution-card img { min-height: 320px; }
  .product-image { height: 280px; }
  .footer-bottom { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
  .reveal { opacity: 1; transform: none; }
}

/* --------------------------------------------------------------------------
   VESTWOODS 2026 — three complete visual systems
   design=1 cinematic / design=2 editorial / design=3 engineered
   -------------------------------------------------------------------------- */
:root {
  --navy-950: #020b18; --navy-900: #06152a; --navy-800: #0a2342;
  --blue-500: #0b7cff; --blue-400: #38a3ff; --cyan-400: #22d3ee;
  --green-400: #22c55e; --gray-100: #f5f7fa; --gray-300: #cbd5e1;
  --container: min(1360px, calc(100% - 72px));
}

body[data-design] { background: var(--theme-bg); color: var(--theme-text); }
body[data-design="1"] { --theme-bg:#020b18; --theme-surface:#071b33; --theme-card:rgba(7,27,51,.72); --theme-text:#fff; --theme-muted:#a9bdd2; --theme-border:rgba(56,163,255,.24); --theme-soft:#06152a; --theme-radius:20px; --theme-shadow:0 20px 60px rgba(0,0,0,.28); }
body[data-design="2"] { --theme-bg:#fff; --theme-surface:#f3f8fd; --theme-card:#fff; --theme-text:#071a33; --theme-muted:#52677e; --theme-border:#dce8f4; --theme-soft:#eef6fd; --theme-radius:14px; --theme-shadow:0 20px 55px rgba(28,67,108,.10); }
body[data-design="3"] { --theme-bg:#020b18; --theme-surface:#06152a; --theme-card:rgba(4,19,38,.94); --theme-text:#fff; --theme-muted:#9bb4cc; --theme-border:rgba(56,163,255,.34); --theme-soft:#041225; --theme-radius:6px; --theme-shadow:0 22px 70px rgba(0,0,0,.35); }

body[data-design] .section { padding: 112px 0; color: var(--theme-text); background: var(--theme-bg); }
body[data-design] .section-soft { background: var(--theme-soft); }
body[data-design] .section-dark { color:#fff; background:#020b18; }
body[data-design] .section-blue { background:linear-gradient(135deg,#06152a,#0b5ea8); }
body[data-design] h1 { font-size:clamp(3rem,5.5vw,5rem); line-height:1.04; letter-spacing:-.05em; }
body[data-design] h2 { font-size:clamp(2.35rem,4.2vw,3.5rem); line-height:1.08; letter-spacing:-.045em; }
body[data-design] h3 { letter-spacing:-.02em; }
body[data-design] .lead { color:var(--theme-muted); font-size:18px; line-height:1.7; }
body[data-design] .eyebrow { color:var(--blue-400); }
body[data-design] .reveal { transform:translateY(24px); opacity:0; transition:opacity .55s ease,transform .55s ease; }
body[data-design] .reveal.visible { transform:none; opacity:1; }

.design-switcher { position:fixed; z-index:220; right:22px; bottom:22px; display:flex; align-items:center; gap:6px; padding:7px; border:1px solid rgba(255,255,255,.18); border-radius:999px; color:#fff; background:rgba(2,11,24,.88); box-shadow:0 16px 50px rgba(0,0,0,.25); backdrop-filter:blur(18px); }
.design-switcher span { padding:0 8px; color:#92a9c0; font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.design-switcher a { display:grid; place-items:center; width:38px; height:38px; border-radius:50%; font-size:13px; font-weight:800; }
.design-switcher a:hover,.design-switcher a[aria-current="page"] { color:#06152a; background:#fff; }

/* Shared home modules */
.home-hero { min-height:900px; background:#020b18; }
.hero-layout { min-height:900px; grid-template-columns:45fr 55fr; gap:54px; padding:142px 0 86px; }
.hero-copy h1 { max-width:730px; margin-bottom:28px; font-size:clamp(3.3rem,5vw,4rem); line-height:1.12; }
.hero-copy .lead { max-width:690px; font-size:18px; line-height:30px; }
.btn { min-height:54px; border-radius:12px; }
.btn-primary { background:#0b7cff; box-shadow:0 12px 36px rgba(11,124,255,.28); }
.btn:hover { transform:translateY(-3px); box-shadow:0 16px 42px rgba(11,124,255,.3); }
.hero-products { min-height:620px; }
.hero-product { max-height:340px; }
.strength-section { position:relative; overflow:hidden; }
.strength-grid { grid-template-columns:repeat(4,1fr); gap:18px; border:0; overflow:visible; background:transparent; box-shadow:none; }
body[data-design] .metric { min-height:166px; padding:34px; border:1px solid var(--theme-border); border-radius:var(--theme-radius); color:var(--theme-text); background:var(--theme-card); box-shadow:var(--theme-shadow); }
body[data-design] .metric strong { color:var(--blue-400); font-size:clamp(2.2rem,3.6vw,3.4rem); }
body[data-design] .metric span { color:var(--theme-muted); }
.challenges-section { position:relative; isolation:isolate; overflow:hidden; }
.challenges-section::before { position:absolute; z-index:-2; inset:0; content:""; background:url('/public/images/application-scenarios/commercial-and-industrial-energy-storage.webp') center/cover; }
.challenges-section::after { position:absolute; z-index:-1; inset:0; content:""; background:linear-gradient(90deg,rgba(2,11,24,.94),rgba(2,11,24,.74)); }
.challenge-layout { grid-template-columns:.72fr 1.28fr; gap:86px; align-items:center; }
.challenge-intro { color:#fff; }
.challenge-intro .lead { color:#b7c9da!important; }
.challenge-list { grid-template-columns:repeat(3,1fr); gap:18px; }
body[data-design] .challenge-item,body[data-design] .value-item { min-height:178px; padding:28px; border:1px solid var(--theme-border); border-radius:var(--theme-radius); color:var(--theme-text); background:var(--theme-card); box-shadow:var(--theme-shadow); backdrop-filter:blur(16px); }
.challenge-item::before { display:none; }
.challenge-item .line-icon { display:grid; place-items:center; width:42px; height:42px; margin-bottom:24px; border:1px solid rgba(34,211,238,.4); border-radius:12px; color:#22d3ee; font-size:22px; }
.challenge-item p,.value-item p { color:var(--theme-muted); }
.solution-showcase { overflow:hidden; }
.solution-tabs { display:grid; grid-template-columns:repeat(6,1fr); margin-top:48px; border:1px solid var(--theme-border); background:var(--theme-card); }
.solution-tabs button { min-height:68px; padding:10px 14px; border:0; border-right:1px solid var(--theme-border); color:var(--theme-muted); background:transparent; font-size:13px; font-weight:750; }
.solution-tabs button:last-child { border-right:0; }
.solution-tabs button.active { color:#fff; background:#0b7cff; }
.solution-panel { display:grid; grid-template-columns:1.05fr .95fr .9fr; border:1px solid var(--theme-border); color:var(--theme-text); background:var(--theme-card); box-shadow:var(--theme-shadow); }
.solution-panel.panel-enter { animation:panel-in .32s ease; }
@keyframes panel-in { from { opacity:.25; transform:translateY(8px); } }
.solution-scene { position:relative; min-height:480px; overflow:hidden; }
.solution-scene::after { position:absolute; inset:45% 0 0; content:""; background:linear-gradient(transparent,rgba(2,11,24,.92)); }
.solution-scene img { width:100%; height:100%; min-height:480px; object-fit:cover; }
.solution-scene>div { position:absolute; z-index:2; right:32px; bottom:28px; left:32px; color:#fff; }
.solution-scene span,.panel-label { color:#22d3ee; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.solution-scene h3 { margin:8px 0 0; font-size:28px; }
.architecture,.solution-detail { padding:40px 34px; border-left:1px solid var(--theme-border); }
.architecture-map { display:grid; grid-template-columns:1fr; justify-items:center; margin:34px 0; }
.architecture-map span { display:grid; place-items:center; width:100%; min-height:52px; border:1px solid rgba(56,163,255,.35); color:var(--theme-text); background:rgba(11,124,255,.08); font-weight:750; }
.architecture-map i { width:1px; height:20px; background:#22d3ee; box-shadow:0 0 10px #22d3ee; }
.architecture p,.solution-detail p,.solution-detail li { color:var(--theme-muted); font-size:14px; line-height:1.65; }
.solution-detail ul { margin:18px 0 34px; padding-left:18px; }
.solution-detail .text-link { margin-top:30px; }
.benefit-strip { grid-column:1/-1; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--theme-border); }
.benefit-strip span { padding:22px 18px; border-right:1px solid var(--theme-border); color:var(--theme-text); font-size:13px; font-weight:750; text-align:center; }
.benefit-strip span:last-child { border-right:0; }
.portfolio-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:18px; }
.portfolio-card { display:flex; min-width:0; padding:18px; border:1px solid var(--theme-border); border-radius:var(--theme-radius); flex-direction:column; color:var(--theme-text); background:var(--theme-card); box-shadow:var(--theme-shadow); transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease; }
.portfolio-card:hover { transform:translateY(-6px); border-color:rgba(56,163,255,.7); box-shadow:0 24px 80px rgba(11,124,255,.24); }
.portfolio-media { display:grid; place-items:center; height:240px; margin-bottom:26px; overflow:hidden; border-radius:calc(var(--theme-radius) - 5px); background:radial-gradient(circle at 50% 70%,rgba(56,163,255,.25),transparent 55%),#07182d; }
.portfolio-media img { width:88%; height:88%; object-fit:contain; filter:drop-shadow(0 18px 16px rgba(0,0,0,.3)); transition:transform .4s ease; }
.portfolio-card:hover img { transform:scale(1.04); }
.portfolio-card h3 { min-height:56px; margin-bottom:12px; font-size:20px; }
.portfolio-card p { min-height:70px; color:var(--theme-muted); font-size:14px; line-height:1.6; }
.portfolio-card strong { min-height:46px; color:var(--theme-text); font-size:12px; line-height:1.55; }
.portfolio-card>span { margin-top:auto; padding-top:20px; color:#38a3ff; font-size:13px; font-weight:800; }
.home-values { grid-template-columns:repeat(4,1fr); gap:18px; }
.value-item>span { color:#38a3ff; font-size:12px; font-weight:800; letter-spacing:.1em; }
.value-item h3 { margin-top:20px; }
.why-layout { display:grid; grid-template-columns:1.12fr .88fr; gap:52px; align-items:center; }
.section-heading.compact { display:block; margin-bottom:38px; }
.advantage-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
body[data-design] .advantage-card { padding:26px; border:1px solid var(--theme-border); border-radius:var(--theme-radius); color:var(--theme-text); background:var(--theme-card); box-shadow:var(--theme-shadow); }
.advantage-card p { margin:0; color:var(--theme-muted); font-size:14px; }
.why-media { position:relative; min-height:680px; overflow:hidden; border-radius:var(--theme-radius); }
.why-media img { width:100%; height:680px; object-fit:cover; }
.why-media::after { position:absolute; inset:55% 0 0; content:""; background:linear-gradient(transparent,rgba(2,11,24,.92)); }
.why-media-caption { position:absolute; z-index:2; right:34px; bottom:32px; left:34px; color:#fff; }
.why-media-caption strong { display:block; font-size:24px; }
.why-media-caption span { color:#afc3d7; font-size:13px; }
.inquiry-section { position:relative; overflow:hidden; }
.inquiry-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:70px; align-items:center; }
.inquiry-links { display:grid; max-width:430px; margin:40px 0; border-top:1px solid var(--theme-border); }
.inquiry-links a { padding:18px 0; border-bottom:1px solid var(--theme-border); color:var(--theme-text); font-weight:750; }
.trust-row { display:flex; flex-wrap:wrap; gap:18px; color:var(--theme-muted); font-size:12px; }
.inquiry-form { padding:40px; border:1px solid var(--theme-border); border-radius:var(--theme-radius); background:var(--theme-card); box-shadow:var(--theme-shadow); backdrop-filter:blur(16px); }
.form-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.form-grid label { color:var(--theme-muted); font-size:12px; font-weight:750; }
.form-grid .full { grid-column:1/-1; }
.form-grid input,.form-grid select,.form-grid textarea { width:100%; margin-top:8px; border:1px solid var(--theme-border); border-radius:10px; outline:none; color:var(--theme-text); background:rgba(255,255,255,.05); }
.form-grid input,.form-grid select { height:52px; padding:0 15px; }
.form-grid textarea { padding:14px 15px; resize:vertical; }
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus { border-color:#38a3ff; box-shadow:0 0 0 3px rgba(56,163,255,.12); }
.form-grid .consent { display:flex; align-items:center; gap:10px; }
.form-grid .consent input { width:18px; height:18px; margin:0; }

/* Complete interior-page restyle shared by all three concepts */
body[data-design] .site-header { height:84px; border-color:var(--theme-border); background:color-mix(in srgb,var(--theme-bg) 88%,transparent); }
body[data-design] .site-nav>a { color:var(--theme-muted); }
body[data-design] .site-nav>a:hover,body[data-design] .site-nav>a[aria-current="page"] { color:var(--theme-text); }
body[data-design] .page-hero { min-height:610px; padding:176px 0 100px; color:var(--theme-text); background:var(--theme-soft); }
body[data-design] .page-hero::before { opacity:.22; }
body[data-design] .page-hero .container { position:relative; z-index:2; }
body[data-design] .page-hero h1 { max-width:980px; }
body[data-design] .page-hero .lead { max-width:820px; }
body[data-design] .breadcrumbs { color:var(--theme-muted); }
body[data-design] .category-nav { top:84px; border-color:var(--theme-border); background:color-mix(in srgb,var(--theme-bg) 92%,transparent); backdrop-filter:blur(18px); }
body[data-design] .category-nav a { color:var(--theme-muted); }
body[data-design] .product-category { padding:110px 0; color:var(--theme-text); background:var(--theme-bg); }
body[data-design] .product-category:nth-of-type(even) { background:var(--theme-soft); }
body[data-design] .category-intro p { color:var(--theme-muted); }
body[data-design] .product-card,body[data-design] .system-card,body[data-design] .detail-card,body[data-design] .tech-card,body[data-design] .download-item,body[data-design] .facility-item,body[data-design] .timeline-item { border:1px solid var(--theme-border); border-radius:var(--theme-radius); color:var(--theme-text); background:var(--theme-card); box-shadow:var(--theme-shadow); }
body[data-design] .product-card:hover { transform:translateY(-6px); border-color:rgba(56,163,255,.68); box-shadow:0 24px 80px rgba(11,124,255,.22); }
body[data-design] .product-image { background:radial-gradient(circle at 50% 72%,rgba(56,163,255,.18),transparent 50%),color-mix(in srgb,var(--theme-surface) 86%,#fff); }
body[data-design] .product-content p,body[data-design] .system-card p,body[data-design] .detail-card p,body[data-design] .tech-card p,body[data-design] .timeline-item p { color:var(--theme-muted); }
body[data-design] .media-frame { border:1px solid var(--theme-border); border-radius:var(--theme-radius); box-shadow:var(--theme-shadow); }
body[data-design] .media-badge { border-color:var(--theme-border); color:#fff; background:rgba(2,11,24,.84); backdrop-filter:blur(14px); }
body[data-design] .check-list li { color:var(--theme-muted); }
body[data-design] .site-footer { color:#9ab0c6; background:#010711; }

/* Design 1 — cinematic energy journey */
body[data-design="1"] .home-hero { background:linear-gradient(90deg,rgba(2,11,24,.95) 0%,rgba(2,11,24,.65) 48%,rgba(2,11,24,.16)),url('/public/images/designs/hero-global-grid.png') center/cover; }
body[data-design="1"] .brand,body[data-design="3"] .brand { height:56px; padding:7px 10px; border-radius:8px; background:rgba(255,255,255,.96); }
body[data-design="1"] .hero-layout { grid-template-columns:46fr 54fr; }
body[data-design="1"] .strength-section::after { position:absolute; right:-10%; bottom:-40%; width:700px; height:700px; content:""; border-radius:50%; background:radial-gradient(circle,rgba(11,124,255,.18),transparent 67%); }
body[data-design="1"] .value-section { background:linear-gradient(rgba(2,11,24,.92),rgba(2,11,24,.98)),url('/public/images/company/vestwoods-global-market-network.webp') center/cover; }
body[data-design="1"] .why-section { background:linear-gradient(120deg,#06152a,#020b18); }
body[data-design="1"] .inquiry-section { background:linear-gradient(120deg,rgba(2,11,24,.92),rgba(6,21,42,.92)),url('/public/images/company/future-energy-architecture.webp') center/cover; }
body[data-design="1"] .page-hero { background:linear-gradient(90deg,rgba(2,11,24,.96),rgba(2,11,24,.68)),url('/public/images/company/future-energy-architecture.webp') center/cover; }

/* Design 2 — international editorial clarity */
body[data-design="2"] .site-header { background:rgba(255,255,255,.94); }
body[data-design="2"] .brand { width:190px; }
body[data-design="2"] .home-hero { color:#071a33; background:linear-gradient(90deg,rgba(248,252,255,.98) 0%,rgba(244,250,255,.82) 44%,rgba(232,244,255,.2)),url('/public/images/designs/hero-product-atlas.png') center/cover; }
body[data-design="2"] .home-hero::before { opacity:.06; }
body[data-design="2"] .home-hero::after,body[data-design="2"] .energy-line,body[data-design="2"] .hero-products { display:none; }
body[data-design="2"] .hero-layout { display:flex; min-height:900px; align-items:center; }
body[data-design="2"] .hero-copy { max-width:720px; }
body[data-design="2"] .hero-copy .lead { color:#4e647b; }
body[data-design="2"] .btn-outline { color:#0b4f96; border-color:#91bce7; background:rgba(255,255,255,.5); }
body[data-design="2"] .strength-section { margin-top:-72px; padding-top:0; background:transparent; }
body[data-design="2"] .metric { box-shadow:0 18px 48px rgba(26,78,127,.1); }
body[data-design="2"] .challenges-section::after { background:linear-gradient(90deg,rgba(247,251,255,.98),rgba(242,249,255,.84)); }
body[data-design="2"] .challenge-intro { color:#071a33; }
body[data-design="2"] .challenge-intro .lead { color:#52677e!important; }
body[data-design="2"] .challenge-item { background:rgba(255,255,255,.92); }
body[data-design="2"] .solution-showcase { color:#fff; background:#020f22; }
body[data-design="2"] .solution-showcase .lead { color:#a8bed3; }
body[data-design="2"] .solution-showcase .solution-tabs,body[data-design="2"] .solution-showcase .solution-panel { --theme-text:#fff; --theme-muted:#a9bdd2; --theme-border:rgba(56,163,255,.24); --theme-card:rgba(7,27,51,.82); }
body[data-design="2"] .portfolio-card { padding:12px 12px 24px; }
body[data-design="2"] .portfolio-card h3,body[data-design="2"] .portfolio-card p,body[data-design="2"] .portfolio-card strong,body[data-design="2"] .portfolio-card>span { margin-right:10px; margin-left:10px; }
body[data-design="2"] .portfolio-media { background:#f2f7fb; }
body[data-design="2"] .value-section { background:#edf6fe; }
body[data-design="2"] .why-section { background:#fff; }
body[data-design="2"] .inquiry-section { background:linear-gradient(120deg,#e9f4ff,#fff); }
body[data-design="2"] .form-grid input,body[data-design="2"] .form-grid select,body[data-design="2"] .form-grid textarea { background:#f8fbfe; }
body[data-design="2"] .page-hero { background:linear-gradient(90deg,rgba(249,252,255,.98),rgba(235,246,255,.88)),url('/public/images/designs/hero-product-atlas.png') center/cover; }
body[data-design="2"] .page-hero::before { opacity:.06; }
body[data-design="2"] .section-dark,body[data-design="2"] .section-blue { color:#fff; }
body[data-design="2"] .section-dark .lead,body[data-design="2"] .section-blue .lead { color:#bad0e5; }

/* Design 3 — precision product ecosystem */
body[data-design="3"] { font-family:Bahnschrift,"Arial Narrow","Segoe UI",sans-serif; background-image:linear-gradient(rgba(56,163,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(56,163,255,.035) 1px,transparent 1px); background-size:48px 48px; }
body[data-design="3"] .site-header { background:rgba(2,11,24,.96); }
body[data-design="3"] .nav-cta,body[data-design="3"] .btn,body[data-design="3"] .product-card,body[data-design="3"] .metric,body[data-design="3"] .portfolio-card,body[data-design="3"] .value-item,body[data-design="3"] .challenge-item { border-radius:6px; }
body[data-design="3"] .home-hero { background:radial-gradient(circle at 78% 42%,rgba(11,124,255,.16),transparent 30%),linear-gradient(120deg,#020711,#06152a); }
body[data-design="3"] .home-hero::before { background-size:38px 38px; }
body[data-design="3"] .hero-layout { grid-template-columns:42fr 58fr; gap:30px; }
body[data-design="3"] .hero-products { min-height:620px; overflow:hidden; border:1px solid rgba(34,211,238,.22); background:linear-gradient(rgba(56,163,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(56,163,255,.055) 1px,transparent 1px),radial-gradient(circle at 50% 65%,rgba(11,124,255,.22),transparent 48%),#031022; background-size:42px 42px,42px 42px,auto,auto; }
body[data-design="3"] .hero-products::before { position:absolute; top:28px; left:28px; content:"ENERGY STORAGE SYSTEM ARCHITECTURE"; color:#22d3ee; font-size:10px; font-weight:800; letter-spacing:.16em; }
body[data-design="3"] .hero-products::after { position:absolute; right:28px; bottom:22px; content:"DC POWER  ·  AC POWER  ·  COMMUNICATION"; color:#7d9ab7; font-size:9px; letter-spacing:.12em; }
body[data-design="3"] .product-orbit { inset:68px 36px 54px; border-radius:0; transform:none; background:linear-gradient(90deg,transparent 49.9%,rgba(34,211,238,.12) 50%,transparent 50.1%); }
body[data-design="3"] .hero-product.p1 { right:3%; bottom:7%; width:41%; }
body[data-design="3"] .hero-product.p2 { left:34%; bottom:3%; width:32%; }
body[data-design="3"] .hero-product.p3 { left:5%; top:16%; width:27%; }
body[data-design="3"] .hero-product.p4 { right:3%; top:13%; width:28%; }
body[data-design="3"] .hero-product.p5 { left:8%; bottom:7%; top:auto; width:29%; }
body[data-design="3"] .strength-grid { gap:10px; }
body[data-design="3"] .metric { box-shadow:inset 0 0 0 1px rgba(11,124,255,.05); }
body[data-design="3"] .challenge-item .line-icon { border-radius:2px; }
body[data-design="3"] .solution-tabs,body[data-design="3"] .solution-panel { box-shadow:0 0 0 1px rgba(34,211,238,.05),0 30px 90px rgba(0,0,0,.4); }
body[data-design="3"] .solution-panel { position:relative; }
body[data-design="3"] .solution-panel::before { position:absolute; z-index:4; top:-1px; left:-1px; width:80px; height:3px; content:""; background:#22d3ee; box-shadow:0 0 15px #22d3ee; }
body[data-design="3"] .portfolio-media { border:1px solid rgba(56,163,255,.2); border-radius:0; }
body[data-design="3"] .value-section { background:linear-gradient(rgba(2,11,24,.96),rgba(2,11,24,.96)),url('/public/images/company/vestwoods-global-market-network.webp') center/cover; }
body[data-design="3"] .why-section { background:#041225; }
body[data-design="3"] .inquiry-section { background:linear-gradient(90deg,#020b18,#06152a); }
body[data-design="3"] .page-hero { background:linear-gradient(90deg,rgba(2,11,24,.98),rgba(2,11,24,.66)),url('/public/images/company/pv-ess-x-solution-ecosystem.webp') center/cover; }
body[data-design="3"] .page-hero::after { position:absolute; inset:0; content:""; background-image:linear-gradient(rgba(56,163,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(56,163,255,.05) 1px,transparent 1px); background-size:42px 42px; }

@media (max-width:1180px) {
  .portfolio-grid { grid-template-columns:repeat(3,1fr); }
  .solution-panel { grid-template-columns:1fr 1fr; }
  .solution-detail { grid-column:1/-1; border-top:1px solid var(--theme-border); }
  .challenge-list { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:980px) {
  :root { --container:min(calc(100% - 40px),1360px); }
  body[data-design] .site-nav { color:#fff; background:rgba(2,11,24,.98); }
  body[data-design] .site-nav>a { color:#fff; }
  .hero-layout,.why-layout,.inquiry-layout,.challenge-layout { grid-template-columns:1fr; }
  .hero-products { min-height:480px; }
  .strength-grid,.home-values { grid-template-columns:repeat(2,1fr); }
  .solution-tabs { grid-template-columns:repeat(3,1fr); }
  .portfolio-grid { grid-template-columns:repeat(2,1fr); }
  .why-media,.why-media img { min-height:480px; height:480px; }
}
@media (max-width:640px) {
  :root { --container:min(calc(100% - 28px),1360px); }
  body[data-design] .section { padding:78px 0; }
  body[data-design] h1 { font-size:40px; }
  body[data-design] h2 { font-size:32px; }
  .home-hero,.hero-layout { min-height:760px; }
  .hero-layout { padding:124px 0 64px; }
  .hero-copy h1 { font-size:40px; line-height:1.08; }
  .hero-copy .lead { font-size:15px; line-height:1.65; }
  .hero-products { display:none; }
  .strength-grid,.home-values,.challenge-list,.portfolio-grid,.advantage-grid,.form-grid { grid-template-columns:1fr; }
  .solution-tabs { display:flex; overflow:auto; }
  .solution-tabs button { min-width:150px; }
  .solution-panel { grid-template-columns:1fr; }
  .architecture,.solution-detail { border-top:1px solid var(--theme-border); border-left:0; }
  .benefit-strip { grid-template-columns:repeat(2,1fr); }
  .portfolio-card h3,.portfolio-card p,.portfolio-card strong { min-height:0; }
  .form-grid .full { grid-column:auto; }
  .inquiry-form { padding:24px; }
  .design-switcher span { display:none; }
  body[data-design] .page-hero { min-height:520px; padding:142px 0 76px; }
}

/* ==========================================================================
   Home structural rebuild — primary Design 2
   ========================================================================== */
.home-rebuild[data-design="2"] { --home-navy:#071b33; --home-deep:#0a2347; --home-blue:#0b7cff; --home-cyan:#22d3ee; --home-green:#22c55e; --home-light:#f4f8fb; --home-line:#dce7f2; --home-copy:#52677e; }
.home-rebuild[data-design="2"] .container { width:min(1360px,calc(100% - 72px)); }
.home-rebuild[data-design="2"] .section { padding:112px 0; }
.home-rebuild[data-design="2"] h2 { font-size:clamp(42px,4vw,56px); line-height:1.08; letter-spacing:-.045em; }
.home-rebuild[data-design="2"] .site-header { position:fixed; inset:0 0 auto; width:100%; height:86px; border-bottom:1px solid rgba(255,255,255,.14); color:#fff; background:rgba(4,17,34,.18); transition:background .3s ease,border-color .3s ease,box-shadow .3s ease; }
.home-rebuild[data-design="2"] .site-header .brand { width:205px; height:56px; padding:7px 10px; border-radius:7px; background:rgba(255,255,255,.96); }
.home-rebuild[data-design="2"] .site-header .site-nav>a { color:rgba(255,255,255,.78); }
.home-rebuild[data-design="2"] .site-header .site-nav>a:hover,.home-rebuild[data-design="2"] .site-header .site-nav>a[aria-current="page"] { color:#fff; }
.home-rebuild[data-design="2"] .site-header.scrolled { border-color:rgba(7,27,51,.1); background:rgba(255,255,255,.88); box-shadow:0 14px 40px rgba(7,27,51,.08); backdrop-filter:blur(18px); }
.home-rebuild[data-design="2"] .site-header.scrolled .site-nav>a { color:#53677d; }
.home-rebuild[data-design="2"] .site-header.scrolled .site-nav>a:hover,.home-rebuild[data-design="2"] .site-header.scrolled .site-nav>a[aria-current="page"] { color:#071b33; }

.home-rebuild[data-design="2"] .home2-hero { min-height:900px; color:#fff; background:linear-gradient(90deg,rgba(3,14,29,.98) 0%,rgba(4,23,46,.82) 43%,rgba(6,31,58,.05) 84%),url('/public/images/designs/hero-energy-platform-v2.png') center/cover; }
.home-rebuild[data-design="2"] .design-switcher { display:none; }
.home-rebuild[data-design="2"] .home2-hero h1,
.home-rebuild[data-design="2"] .home2-hero .hero-subtitle,
.home-rebuild[data-design="2"] .home2-hero .button { text-shadow:none; }
.home-rebuild[data-design="2"] .home2-hero::before { opacity:.12; background-size:68px 68px; mask-image:linear-gradient(to right,#000,transparent 75%); }
.home-rebuild[data-design="2"] .home2-hero::after { position:absolute; inset:auto 0 0; width:auto; height:260px; border:0; border-radius:0; content:""; background:linear-gradient(transparent,rgba(2,11,24,.45)); box-shadow:none; }
.home-rebuild[data-design="2"] .hero-layout { display:grid; grid-template-columns:45fr 55fr; min-height:900px; gap:34px; padding:150px 0 70px; }
.home-rebuild[data-design="2"] .hero-copy { position:relative; z-index:5; }
.home-rebuild[data-design="2"] .hero-copy h1 { max-width:700px; margin-bottom:28px; color:#fff; font-size:clamp(56px,5vw,72px); line-height:1.04; letter-spacing:-.055em; }
.home-rebuild[data-design="2"] .hero-copy .lead { max-width:650px; margin-bottom:36px; color:#c5d5e5; font-size:18px; line-height:1.72; }
.home-rebuild[data-design="2"] .hero-copy .btn { min-height:56px; padding:0 25px; border-radius:10px; }
.home-rebuild[data-design="2"] .hero-copy .btn-outline { color:#fff; border-color:rgba(255,255,255,.52); background:rgba(2,15,31,.14); }
.home-rebuild[data-design="2"] .hero-product-stage { position:relative; z-index:3; min-height:650px; align-self:end; }
.hero-site-line { position:absolute; right:3%; bottom:4%; left:3%; height:2px; background:linear-gradient(90deg,transparent,#0b7cff 20%,#22d3ee 60%,transparent); box-shadow:0 0 18px rgba(34,211,238,.65); }
.stage-product { position:absolute; z-index:2; object-fit:contain; filter:drop-shadow(0 30px 24px rgba(0,0,0,.46)); }
.stage-home { left:3%; bottom:5%; width:23%; max-height:310px; }
.stage-ci { left:29%; bottom:4%; width:28%; max-height:440px; }
.stage-telecom { left:50%; bottom:2%; width:22%; max-height:175px; }
.stage-ups { right:15%; bottom:3%; width:21%; max-height:265px; }
.stage-utility { right:-3%; bottom:3%; width:35%; max-height:330px; }

.proof2-section { color:#071b33!important; background:#fff!important; }
.proof2-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,540px); gap:70px; align-items:end; margin-bottom:52px; }
.proof2-heading h2 { max-width:720px; margin:0; }
.proof2-heading p { max-width:540px; margin:0; color:#5a6f85; font-size:17px; line-height:1.7; }
.proof2-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.proof2-card { display:flex; min-height:152px; padding:28px; border:1px solid #dbe7f2; border-radius:16px; align-items:center; justify-content:center; flex-direction:column; text-align:center; background:#fff; box-shadow:0 14px 38px rgba(23,75,120,.06); }
.proof2-card strong { color:#0b7cff; font-size:clamp(36px,3.4vw,50px); line-height:1; letter-spacing:-.04em; }
.proof2-card span { margin-top:12px; color:#32495f; font-size:13px; font-weight:700; }

.challenges2-section { position:relative; isolation:isolate; overflow:hidden; color:#071b33!important; background:#edf6fc!important; }
.challenges2-section::before { position:absolute; z-index:-2; inset:0; content:""; opacity:.16; background:url('/public/images/application-scenarios/power-station.webp') center/cover; }
.challenges2-section::after { position:absolute; z-index:-1; inset:0; content:""; background:linear-gradient(90deg,rgba(244,249,253,.97),rgba(237,246,252,.88)); }
.challenges2-layout { display:grid; grid-template-columns:.76fr 1.24fr; gap:86px; align-items:center; }
.challenges2-copy h2 { max-width:520px; margin-bottom:22px; }
.challenges2-copy p { max-width:520px; margin:0; color:#52677e; font-size:18px; line-height:1.7; }
.challenges2-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.challenge2-card { min-height:148px; padding:25px; border:1px solid rgba(133,171,205,.38); border-radius:15px; background:rgba(255,255,255,.84); box-shadow:0 14px 36px rgba(40,83,121,.07); backdrop-filter:blur(8px); }
.challenge2-card span { color:#0b7cff; font-size:12px; font-weight:800; }
.challenge2-card h3 { margin:32px 0 0; color:#142d45; font-size:19px; line-height:1.35; }
.challenges2-bridge { max-width:900px; margin:64px auto 0; padding-top:28px; border-top:1px solid rgba(93,132,168,.25); color:#49627a; font-size:16px; text-align:center; }

.solutions2-section { color:#fff!important; background:linear-gradient(135deg,#06172d,#071b33 55%,#0a2347)!important; }
.solutions2-heading { max-width:900px; margin:0 auto 48px; text-align:center; }
.solutions2-heading h2 { color:#fff; }
.solutions2-heading p { margin:0 auto; color:#b8cbe0; font-size:18px; line-height:1.7; }
.solutions2-tabs { display:flex; margin:0; overflow-x:auto; border:0; border-bottom:1px solid rgba(158,190,219,.25); background:transparent; scrollbar-width:none; }
.solutions2-tabs button { min-width:max-content; min-height:66px; padding:0 30px; border:0; color:#b7c9dc; background:transparent; font-size:15px; }
.solutions2-tabs button.active { color:#38a3ff; background:transparent; box-shadow:inset 0 -3px #0b7cff; }
.solutions2-panel { display:grid; grid-template-columns:1.08fr .72fr .9fr; margin-top:30px; overflow:hidden; border:1px solid rgba(112,159,201,.35); border-radius:16px; color:#fff; background:rgba(3,17,34,.52); box-shadow:0 32px 90px rgba(0,0,0,.25); }
.solution2-scene { position:relative; min-height:610px; overflow:hidden; }
.solution2-scene::after { position:absolute; inset:40% 0 0; content:""; background:linear-gradient(transparent,rgba(2,11,24,.95)); }
.solution2-scene img { width:100%; height:610px; object-fit:cover; }
.solution2-scene>div { position:absolute; z-index:2; right:36px; bottom:34px; left:36px; }
.solution2-scene h3 { margin-bottom:15px; color:#fff; font-size:30px; }
.solution2-scene p { max-width:470px; margin:0; color:#c5d5e5; font-size:16px; line-height:1.65; }
.solution2-flow { padding:40px 32px; border-left:1px solid rgba(112,159,201,.28); }
.solution2-flow>span,.solution2-detail>div>span { color:#38a3ff; font-size:11px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.simple-flow { display:flex; margin-top:32px; align-items:center; flex-direction:column; }
.simple-flow b { display:grid; place-items:center; width:100%; min-height:54px; border:1px solid rgba(56,163,255,.32); border-radius:8px; color:#e7f4ff; background:rgba(11,124,255,.08); font-size:14px; }
.simple-flow i { height:28px; color:#22d3ee; font-style:normal; line-height:28px; }
.solution2-detail { display:flex; padding:40px 34px; border-left:1px solid rgba(112,159,201,.28); flex-direction:column; gap:28px; }
.solution2-detail ul { margin:15px 0 0; padding-left:18px; color:#c5d5e5; font-size:14px; line-height:1.9; }
.solution2-benefits { display:flex; margin-top:15px; flex-wrap:wrap; gap:8px; }
.solution2-benefits b,.solution2-benefits span { padding:8px 10px; border:1px solid rgba(56,163,255,.22); border-radius:7px; color:#c8dbec; background:rgba(255,255,255,.035); font-size:12px; font-weight:600; }
.solution2-detail p { margin:14px 0 0; color:#c5d5e5; font-size:14px; line-height:1.7; }
.solution2-link { margin-top:auto; color:#38a3ff; font-size:14px; font-weight:800; }

.products2-section { color:#071b33!important; background:#fff!important; }
.section2-heading { display:flex; margin-bottom:52px; align-items:end; justify-content:space-between; gap:30px; }
.section2-heading h2 { max-width:800px; margin:0; }
.section2-heading>a { flex:0 0 auto; color:#0b7cff; font-size:14px; font-weight:800; }
.products2-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
.product2-card { display:grid; grid-template-columns:1fr .9fr; min-height:400px; overflow:hidden; border:1px solid #dce7f2; border-radius:17px; color:#071b33; background:linear-gradient(135deg,#fff,#f5f9fd); box-shadow:0 18px 48px rgba(25,69,108,.07); transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease; }
.product2-card:hover,.utility2-card:hover { transform:translateY(-6px); border-color:#8bc1f4; box-shadow:0 26px 65px rgba(20,92,156,.14); }
.product2-copy { display:flex; padding:36px 12px 34px 36px; flex-direction:column; }
.product2-copy h3,.utility2-copy h3 { margin-bottom:16px; color:#071b33; font-size:25px; line-height:1.25; }
.product2-copy p,.utility2-copy p { color:#53697f; font-size:15px; line-height:1.65; }
.product2-copy small,.utility2-copy small { color:#71869b; font-size:12px; line-height:1.7; }
.product2-copy span,.utility2-copy span { margin-top:auto; padding-top:25px; color:#0b7cff; font-size:13px; font-weight:800; }
.product2-media { display:grid; min-height:400px; overflow:hidden; background:#eaf2f8; }
.product2-media img { width:100%; height:100%; min-height:400px; object-fit:cover; transition:transform .35s ease; }
.product2-card:hover img,.utility2-card:hover img { transform:scale(1.025); }
.utility2-card { display:grid; grid-template-columns:.75fr 1.25fr; min-height:430px; margin-top:22px; overflow:hidden; border:1px solid #dce7f2; border-radius:17px; color:#071b33; background:linear-gradient(120deg,#fff,#eef5fb); box-shadow:0 18px 48px rgba(25,69,108,.07); transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease; }
.utility2-copy { display:flex; padding:52px; flex-direction:column; }
.utility2-media { display:grid; overflow:hidden; background:#eaf2f8; }
.utility2-media img { width:100%; height:100%; min-height:430px; object-fit:cover; transition:transform .35s ease; }

.technology2-section { color:#071b33!important; background:#f4f8fb!important; }
.technology2-top { display:grid; grid-template-columns:.86fr 1.14fr; overflow:hidden; border:1px solid #dae6f0; border-radius:18px; background:#fff; box-shadow:0 20px 55px rgba(25,69,108,.07); }
.technology2-copy { display:flex; padding:58px; justify-content:center; flex-direction:column; }
.technology2-copy h2 { margin-bottom:24px; }
.technology2-copy p { margin-bottom:26px; color:#53697f; font-size:16px; line-height:1.75; }
.technology2-media { position:relative; min-height:530px; }
.technology2-media img { width:100%; height:530px; object-fit:cover; }
.technology2-media::after { position:absolute; inset:50% 0 0; content:""; background:linear-gradient(transparent,rgba(3,15,30,.82)); }
.technology2-media>div { position:absolute; z-index:2; right:32px; bottom:30px; left:32px; color:#fff; }
.technology2-media strong { display:block; font-size:22px; }
.technology2-media span { color:#c4d5e6; font-size:12px; }
.technology2-proof { display:grid; grid-template-columns:repeat(4,1fr); margin-top:-1px; border:1px solid #dae6f0; border-radius:0 0 16px 16px; background:#fff; box-shadow:0 18px 42px rgba(25,69,108,.06); }
.technology2-proof>div { padding:28px; border-right:1px solid #dae6f0; text-align:center; }
.technology2-proof>div:last-child { border-right:0; }
.technology2-proof strong { display:block; color:#0b7cff; font-size:34px; line-height:1; }
.technology2-proof span { display:block; margin-top:10px; color:#52677e; font-size:12px; font-weight:700; }
.technology2-capabilities { display:grid; grid-template-columns:repeat(4,1fr); margin-top:20px; border:1px solid #dae6f0; border-radius:15px; background:#fff; }
.technology2-capabilities a { display:flex; min-height:92px; padding:22px; border-right:1px solid #dae6f0; align-items:center; gap:18px; }
.technology2-capabilities a:last-child { border-right:0; }
.technology2-capabilities span { color:#0b7cff; font-size:12px; font-weight:800; }
.technology2-capabilities strong { color:#17324c; font-size:14px; }

.final2-section { color:#fff!important; background:linear-gradient(120deg,rgba(4,18,35,.98),rgba(7,35,66,.94)),url('/public/images/company/vestwoods-global-market-network.webp') center/cover!important; }
.final2-layout { display:grid; grid-template-columns:.76fr 1.24fr; gap:70px; align-items:center; }
.final2-copy h2 { color:#fff; }
.final2-copy p { max-width:520px; color:#bbcee0; font-size:18px; line-height:1.7; }
.final2-actions { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.final2-card { display:flex; min-height:310px; padding:28px; border:1px solid rgba(123,177,225,.38); border-radius:15px; color:#fff; background:rgba(8,32,60,.56); flex-direction:column; backdrop-filter:blur(12px); transition:transform .3s ease,border-color .3s ease,background .3s ease; }
.final2-card:hover { transform:translateY(-6px); border-color:#38a3ff; background:rgba(10,45,83,.74); }
.final2-card>span { color:#38a3ff; font-size:12px; font-weight:800; }
.final2-card h3 { margin:42px 0 14px; color:#fff; font-size:22px; }
.final2-card p { color:#b9ccde; font-size:13px; line-height:1.65; }
.final2-card b { margin-top:auto; color:#38a3ff; font-size:12px; }
.final2-contact { display:grid; grid-template-columns:repeat(3,1fr); margin-top:50px; padding-top:32px; border-top:1px solid rgba(146,187,222,.25); }
.final2-contact a { padding:0 28px; border-right:1px solid rgba(146,187,222,.25); }
.final2-contact a:first-child { padding-left:0; }
.final2-contact a:last-child { border-right:0; }
.final2-contact span { display:block; color:#8fa9c1; font-size:11px; text-transform:uppercase; letter-spacing:.1em; }
.final2-contact strong { display:block; margin-top:7px; color:#fff; font-size:14px; }
.quick-contact { position:fixed; z-index:190; right:22px; bottom:86px; display:grid; place-items:center; min-width:104px; height:46px; padding:0 18px; border-radius:999px; color:#fff; background:#0b7cff; box-shadow:0 15px 40px rgba(11,124,255,.3); font-size:13px; font-weight:800; transition:transform .25s ease,box-shadow .25s ease; }
.quick-contact:hover { transform:translateY(-3px); box-shadow:0 20px 48px rgba(11,124,255,.38); }

@media (max-width:1120px) {
  .home-rebuild[data-design="2"] .container { width:min(100% - 40px,1360px); }
  .home-rebuild[data-design="2"] .hero-layout { grid-template-columns:1fr; padding-top:150px; }
  .home-rebuild[data-design="2"] .hero-product-stage { min-height:450px; }
  .proof2-heading,.challenges2-layout,.final2-layout { grid-template-columns:1fr; gap:44px; }
  .proof2-grid { grid-template-columns:repeat(2,1fr); }
  .solutions2-panel { grid-template-columns:1fr 1fr; }
  .solution2-detail { grid-column:1/-1; border-top:1px solid rgba(112,159,201,.28); border-left:0; }
  .product2-card { grid-template-columns:1fr; }
  .product2-media { grid-row:1; min-height:300px; }
  .product2-media img { height:270px; min-height:270px; }
  .technology2-top { grid-template-columns:1fr; }
}

@media (max-width:760px) {
  .home-rebuild[data-design="2"] .container { width:min(100% - 28px,1360px); }
  .home-rebuild[data-design="2"] .section { padding:80px 0; }
  .home-rebuild[data-design="2"] .site-header { height:76px; }
  .home-rebuild[data-design="2"] .site-header .brand { width:190px; height:54px; }
  .home-rebuild[data-design="2"] .site-header .nav-toggle { display:block; background:#fff; }
  .home-rebuild[data-design="2"] .site-header .site-nav { color:#fff; background:rgba(2,11,24,.98); }
  .home-rebuild[data-design="2"] .site-header .site-nav>a,.home-rebuild[data-design="2"] .site-header.scrolled .site-nav>a { color:#fff; }
  .home-rebuild[data-design="2"] .home2-hero { min-height:auto; }
  .home-rebuild[data-design="2"] .hero-layout { min-height:auto; padding:132px 0 60px; }
  .home-rebuild[data-design="2"] .hero-copy h1 { font-size:40px; line-height:1.08; }
  .home-rebuild[data-design="2"] .hero-copy .lead { font-size:15px; }
  .home-rebuild[data-design="2"] .hero-copy .btn-row { display:grid; grid-template-columns:1fr; }
  .home-rebuild[data-design="2"] .hero-product-stage { min-height:330px; }
  .stage-home { left:2%; width:26%; }.stage-ci { left:27%; width:34%; }.stage-telecom { display:none; }.stage-ups { right:22%; width:24%; }.stage-utility { right:-7%; width:42%; }
  .proof2-heading { display:block; }
  .proof2-heading p { margin-top:22px; }
  .proof2-grid,.challenges2-grid,.products2-grid,.technology2-proof,.technology2-capabilities,.final2-actions,.final2-contact { grid-template-columns:1fr; }
  .proof2-card { min-height:128px; }
  .challenge2-card { min-height:120px; }
  .solutions2-heading { text-align:left; }
  .solutions2-tabs { margin-right:-14px; }
  .solutions2-tabs button { min-width:164px; padding:0 18px; }
  .solutions2-panel { grid-template-columns:1fr; }
  .solution2-scene,.solution2-scene img { min-height:430px; height:430px; }
  .solution2-flow,.solution2-detail { border-top:1px solid rgba(112,159,201,.28); border-left:0; }
  .product2-card { min-height:0; }
  .product2-copy { padding:30px; }
  .product2-media { min-height:280px; }
  .utility2-card { grid-template-columns:1fr; }
  .utility2-copy { padding:34px; }
  .utility2-media { grid-row:1; }
  .utility2-media img { height:260px; min-height:260px; }
  .technology2-copy { padding:34px; }
  .technology2-media,.technology2-media img { min-height:360px; height:360px; }
  .technology2-proof>div,.technology2-capabilities a { border-right:0; border-bottom:1px solid #dae6f0; }
  .technology2-proof>div:last-child,.technology2-capabilities a:last-child { border-bottom:0; }
  .final2-contact a { padding:18px 0; border-right:0; border-bottom:1px solid rgba(146,187,222,.25); }
  .final2-contact a:last-child { border-bottom:0; }
  .quick-contact { right:auto; bottom:16px; left:14px; min-width:92px; }
}
/* Keep the navigation brand mark consistent with the Home header. */
.site-header .brand img {
  filter: grayscale(1) brightness(0) invert(1) !important;
}

/* Larger primary navigation labels across shared-header pages. */
.site-header .site-nav > a,
.site-header .site-about-menu > summary {
  font-size: 20px !important;
  white-space: nowrap;
}
