:root { color-scheme: dark; font-family: Inter, ui-sans-serif, system-ui, -apple-system, sans-serif; background: #0b0d0e; color: #f4f4ef; }
html[data-i18n-pending] body { visibility: hidden; }
html[data-i18n-pending]::before { content: 'Übersetzung wird geladen…'; position: fixed; inset: 0; z-index: 9999; display: grid; place-items: center; background: #fff; color: #17202b; font: 500 1rem Inter, ui-sans-serif, system-ui, sans-serif; }
html[lang="ja"][data-i18n-pending]::before { content: '翻訳を読み込んでいます…'; }
html[lang="ar"][data-i18n-pending]::before { content: 'جارٍ تحميل الترجمة…'; direction: rtl; }
html[lang="fr"][data-i18n-pending]::before { content: 'Chargement de la traduction…'; }
html[lang="ko"][data-i18n-pending]::before { content: '번역을 불러오는 중입니다…'; }
html[lang="de"][data-i18n-pending][data-i18n-failed]::before { content: 'Übersetzung konnte nicht geladen werden. Bitte aktualisieren Sie die Seite.'; }
html[lang="ja"][data-i18n-pending][data-i18n-failed]::before { content: '翻訳を読み込めませんでした。ページを再読み込みしてください。'; }
html[lang="ar"][data-i18n-pending][data-i18n-failed]::before { content: 'تعذر تحميل الترجمة. يرجى تحديث الصفحة.'; }
html[lang="fr"][data-i18n-pending][data-i18n-failed]::before { content: 'Impossible de charger la traduction. Veuillez actualiser la page.'; }
html[lang="ko"][data-i18n-pending][data-i18n-failed]::before { content: '번역을 불러오지 못했습니다. 페이지를 새로고침해 주세요.'; }
html[lang="es"][data-i18n-pending][data-i18n-failed]::before { content: 'No se pudo cargar la traducción. Actualice la página.'; }
html[lang="pt-BR"][data-i18n-pending][data-i18n-failed]::before { content: 'Não foi possível carregar a tradução. Atualize a página.'; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at 80% 10%, #253c30 0, transparent 36rem), #0b0d0e; }
a { color: inherit; text-decoration: none; }
.site-header { position:fixed; z-index:10; inset:0 0 auto; max-width:none; margin:auto; padding:28px max(32px, calc((100vw - 1240px)/2)); display:flex; align-items:center; gap:48px; border-bottom: 1px solid transparent; transition:background .35s, border-color .35s, padding .35s; }.site-header.is-scrolled { background:#0b0d0ee8; backdrop-filter:blur(16px); border-color:#ffffff20; padding-top:18px; padding-bottom:18px; }
.brand { font-weight: 800; letter-spacing: .18em; font-size: 1.1rem; margin-right:auto; }.brand span { color:#9be15d; }
nav, .header-actions { display:flex; gap:24px; font-size:.9rem; color:#c6c8c3; } nav a:hover, .header-actions a:hover, nav summary:hover { color:#fff; }
.nav-dropdown { position:relative; }.nav-dropdown summary { list-style:none; cursor:pointer; white-space:nowrap; }.nav-dropdown summary::-webkit-details-marker { display:none; }.nav-dropdown summary span { color:#9be15d; font-size:.8em; margin-left:3px; }.dropdown-panel { position:absolute; top:calc(100% + 22px); left:-22px; min-width:280px; padding:10px; background:#151917f5; border:1px solid #ffffff2a; box-shadow:0 22px 70px #0008; backdrop-filter:blur(18px); }.dropdown-panel:before { content:''; position:absolute; top:-7px; left:28px; width:12px; height:12px; background:#151917; border-left:1px solid #ffffff2a; border-top:1px solid #ffffff2a; transform:rotate(45deg); }.dropdown-panel a { display:block; padding:14px 12px; border-radius:4px; color:#f2f4ed; }.dropdown-panel a:hover { background:#ffffff12; color:#d9ffb7; }.dropdown-panel small { display:block; color:#89938a; font-size:.72rem; margin-top:5px; }.dropdown-about { min-width:245px; }
.login { border:1px solid #ffffff40; border-radius:999px; padding:10px 16px; color:#fff; }
main { max-width:1240px; margin:auto; padding: 100px 32px 72px; }.hero { max-width: 850px; }.eyebrow { color:#9be15d; text-transform:uppercase; letter-spacing:.18em; font-size:.75rem; }.hero h1 { font-size:clamp(3rem, 7vw, 6.5rem); line-height:.98; letter-spacing:-.06em; margin:24px 0 42px; font-weight:500; }
.button { display:inline-flex; gap:24px; align-items:center; background:#d9ffb7; color:#101510; padding:15px 20px; border-radius:999px; font-weight:600; }.button span { font-size:1.3rem; }
.immersive-home { padding-top:0; }.hero-stage, .statement-stage, .closing-stage { min-height:100vh; display:flex; flex-direction:column; justify-content:center; position:relative; overflow:hidden; }.hero-stage { max-width:none; padding:150px max(32px, calc((100vw - 1240px)/2)) 90px; }.hero-stage h1 { max-width:930px; }.hero-meta { display:flex; align-items:center; gap:34px; }.scroll-cue { color:#9fa59b; font-size:.8rem; display:flex; gap:12px; align-items:center; }.scroll-cue i { width:34px; height:1px; background:#9be15d; position:relative; }.scroll-cue i:after { content:''; position:absolute; right:0; top:-3px; border:3px solid transparent; border-right-color:#9be15d; transform:rotate(45deg); }.hero-orbit { position:absolute; border:1px solid #9be15d32; border-radius:50%; pointer-events:none; animation:orbit 18s linear infinite; }.orbit-one { width:54vw; height:54vw; right:-24vw; top:8vh; }.orbit-two { width:28vw; height:28vw; right:10vw; top:32vh; animation-direction:reverse; animation-duration:12s; }.statement-stage { max-width:1240px; margin:auto; padding:120px 32px; }.statement-stage h2,.closing-stage h2 { font-size:clamp(3rem,7vw,7rem); letter-spacing:-.07em; line-height:.94; margin:22px 0 30px; font-weight:500; }.statement-stage em,.closing-stage em { color:#9be15d; font-style:normal; }.statement-stage p:last-child { color:#aeb4aa; max-width:420px; line-height:1.6; }.card-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:100px auto 180px; max-width:1240px; }.feature-card { min-height:300px; padding:24px; border:1px solid #ffffff1f; background:#ffffff08; transition:transform .35s, background .35s, border-color .35s; display:flex; flex-direction:column; }.feature-card:hover { transform:translateY(-8px); background:#ffffff12; border-color:#9be15d66; }.feature-card span { color:#9be15d; font-size:.8rem; }.feature-card h2 { font-size:2rem; margin:auto 0 10px; font-weight:500; }.feature-card p { color:#b1b5ae; max-width:260px; line-height:1.5; }.feature-card b { color:#d9ffb7; font-size:.85rem; margin-top:24px; }.closing-stage { max-width:1240px; margin:auto; padding:120px 32px; min-height:80vh; }.closing-stage .button { align-self:flex-start; }
footer { max-width:1240px; margin:auto; padding:24px 32px 40px; display:flex; justify-content:space-between; color:#858a82; font-size:.8rem; border-top:1px solid #ffffff20; }
@media (max-width:760px) { .site-header { padding:20px; gap:16px; flex-wrap:wrap; } nav { order:3; width:100%; overflow:auto; gap:18px; }.header-actions { gap:12px; } main { padding:72px 20px; }.card-grid { grid-template-columns:1fr; margin-top:88px; } footer { padding:24px 20px; flex-direction:column; gap:8px; } }
.is-visible { animation:rise-in .9s cubic-bezier(.2,.7,.2,1) both; }.statement-stage,.closing-stage { opacity:0; transform:translateY(24px); }.statement-stage.is-visible,.closing-stage.is-visible { opacity:1; transform:none; transition:opacity .9s, transform .9s; }.hero-stage[data-reveal] { opacity:1; transform:none; }.hero-stage h1 { animation:rise-in 1.1s .15s cubic-bezier(.2,.7,.2,1) both; }
@keyframes rise-in { from { opacity:0; transform:translateY(28px); } to { opacity:1; transform:none; } } @keyframes orbit { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { *,*:before,*:after { animation-duration:.01ms!important; transition-duration:.01ms!important; scroll-behavior:auto!important; } }
.error-body { min-height:100vh; color:#17202b; background:radial-gradient(ellipse at 78% 42%,#e7f2fb 0,transparent 36%),#fff; display:flex; flex-direction:column; overflow-x:hidden; }
.error-header { position:relative; z-index:1; width:100%; min-height:88px; padding:18px max(24px,calc((100vw - 1320px)/2)); display:flex; align-items:center; justify-content:space-between; gap:20px; border-bottom:1px solid #dce5ed; background:#ffffffed; }
.error-header img { display:block; width:158px; height:auto; }
.error-header span { color:#60758a; font-size:.85rem; letter-spacing:.04em; }
.error-main { position:relative; isolation:isolate; width:min(1320px,100%); min-height:calc(100vh - 150px); margin:auto; padding:130px 5vw 100px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.error-code { margin:0 0 18px; color:#1263b8; font-size:.78rem; font-weight:700; letter-spacing:.18em; }
.error-code span { padding:0 .4em; color:#9ab2c8; }
.error-main h1 { position:relative; z-index:1; max-width:820px; margin:0; color:#17202b; font-size:clamp(3rem,8vw,7rem); line-height:.98; letter-spacing:-.065em; font-weight:650; }
.error-message { position:relative; z-index:1; max-width:540px; margin:28px 0 0; color:#60758a; font-size:clamp(1rem,1.8vw,1.2rem); line-height:1.75; }
.error-home { position:relative; z-index:1; display:inline-flex; align-items:center; gap:24px; margin-top:36px; padding:15px 20px; border-radius:999px; color:#fff; background:#1263b8; font-weight:650; box-shadow:0 10px 28px #1263b82b; transition:transform .2s,background .2s; }
.error-home:hover { transform:translateY(-2px); background:#084d94; }
.error-home span { font-size:1.25rem; }
.error-links { position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:12px 26px; margin-top:42px; color:#526b81; font-size:.92rem; }
.error-links a:hover { color:#1263b8; text-decoration:underline; text-underline-offset:4px; }
.error-orbit { position:absolute; z-index:-1; border:1px solid #1263b814; border-radius:50%; pointer-events:none; }
.error-orbit-one { width:min(58vw,760px); aspect-ratio:1; right:-4%; top:50%; transform:translateY(-50%); }
.error-orbit-two { width:min(38vw,500px); aspect-ratio:1; right:7%; top:50%; transform:translateY(-50%); border-color:#00ba8b20; }
.error-footer { width:100%; max-width:none; margin:0; padding:20px max(24px,calc((100vw - 1320px)/2)); border-top:1px solid #dce5ed; color:#8292a3; font-size:.8rem; }
html[dir="rtl"] .error-main { align-items:flex-end; text-align:right; }
html[dir="rtl"] .error-home span { transform:scaleX(-1); }
@media (max-width:700px) { .error-header { min-height:70px; padding:15px 20px; }.error-header img { width:128px; }.error-header span { max-width:145px; text-align:end; font-size:.72rem; }.error-main { min-height:calc(100vh - 124px); padding:100px 24px 80px; }.error-main h1 { font-size:clamp(3rem,15vw,5rem); }.error-orbit-one { width:110vw; right:-54%; top:42%; }.error-orbit-two { width:78vw; right:-24%; top:42%; }.error-footer { padding:18px 24px; }.error-links { gap:14px 20px; } }
.admin-shell { background:#f4f6f2; color:#162019; color-scheme:light; }.admin-top { height:72px; padding:0 32px; display:flex; align-items:center; gap:22px; background:#101712; color:#f4f6f2; }.admin-top .brand { margin-right:0; }.admin-name { color:#9be15d; font-size:.72rem; letter-spacing:.16em; }.admin-user { margin-left:auto; color:#aab4aa; font-size:.8rem; }.admin-layout { display:grid; grid-template-columns:240px 1fr; min-height:calc(100vh - 72px); }.admin-sidebar { padding:32px 18px; border-right:1px solid #dce2db; background:#fff; }.admin-sidebar a { display:block; padding:11px 14px; border-radius:7px; color:#5c675d; font-size:.9rem; }.admin-sidebar a.active,.admin-sidebar a:hover { background:#eaf5e2; color:#263c27; }.sidebar-label { color:#96a097; text-transform:uppercase; letter-spacing:.12em; font-size:.65rem; margin:18px 14px 8px; }.admin-main { max-width:1240px; width:100%; padding:52px 48px; margin:auto; }.admin-heading { display:flex; justify-content:space-between; align-items:flex-end; }.admin-heading h1 { margin:8px 0; font-size:2.6rem; letter-spacing:-.04em; font-weight:600; }.admin-heading p:last-child { color:#718073; }.admin-primary { border:0; border-radius:999px; background:#17351f; color:#d9ffb7; padding:13px 18px; font:inherit; cursor:pointer; }.admin-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin:38px 0; }.admin-stats article,.admin-panel { background:#fff; border:1px solid #e0e7de; border-radius:10px; padding:22px; box-shadow:0 8px 25px #233c1810; }.admin-stats span,.admin-stats small { display:block; color:#758176; font-size:.8rem; }.admin-stats strong { display:block; font-size:2rem; margin:12px 0 4px; }.admin-stats .status-dot { color:#2d7a3f; font-size:1.35rem; }.admin-columns { display:grid; grid-template-columns:1.4fr 1fr; gap:16px; }.panel-heading { display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; }.panel-heading h2 { font-size:1.05rem; margin:0; }.panel-heading a { color:#367443; font-size:.8rem; }.queue-row { display:grid; grid-template-columns:78px 1fr auto; gap:14px; align-items:center; padding:16px 0; border-top:1px solid #edf0ec; }.queue-row b,.queue-row small { display:block; }.queue-row small,.queue-status { color:#7d897d; font-size:.75rem; margin-top:4px; }.type-pill { font-size:.6rem; letter-spacing:.1em; padding:5px 7px; border-radius:4px; text-align:center; }.type-pill.product { background:#e8f4ff; color:#24628b; }.type-pill.solution { background:#eaf5e2; color:#367443; }.type-pill.news { background:#fff1dd; color:#966226; }.quick-link { display:flex; gap:14px; padding:15px 0; border-top:1px solid #edf0ec; align-items:center; }.quick-link > span { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; background:#edf6e8; color:#367443; }.quick-link b,.quick-link small { display:block; }.quick-link small { color:#7d897d; font-size:.75rem; margin-top:4px; }
@media (max-width:760px) { .admin-layout { grid-template-columns:1fr; }.admin-sidebar { display:flex; gap:6px; overflow:auto; padding:12px; border-right:0; border-bottom:1px solid #dce2db; }.admin-sidebar .sidebar-label { display:none; }.admin-main { padding:32px 20px; }.admin-heading { align-items:flex-start; gap:18px; flex-direction:column; }.admin-stats { grid-template-columns:repeat(2,1fr); }.admin-columns { grid-template-columns:1fr; }.queue-row { grid-template-columns:70px 1fr; }.queue-status { grid-column:2; } }
.leads-toolbar { display:flex; gap:14px; margin:32px 0 16px; align-items:center; }.leads-toolbar .content-search { flex:1; }.leads-toolbar select { min-width:170px; padding:12px 14px; border:1px solid #dce5ee; border-radius:10px; color:#25364a; background:#fff; font:inherit; }.leads-summary { display:flex; gap:10px; align-items:baseline; padding-bottom:18px; border-bottom:1px solid #e8eef3; }.leads-summary strong { font-size:2.4rem; color:#1263b8; }.leads-summary span { font-weight:600; color:#25364a; }.leads-summary small { margin-left:auto; color:#71839a; }.leads-table { margin-top:10px; }.leads-table-head,.lead-row { display:grid; grid-template-columns:1.5fr .8fr 1fr 150px 180px 80px; gap:16px; align-items:center; padding:15px 10px; }.leads-table-head { color:#8495a7; font-size:.68rem; letter-spacing:.12em; }.lead-row { border-top:1px solid #edf1f5; color:#3e5268; font-size:.88rem; }.lead-row b,.lead-row small { display:block; }.lead-row b { color:#172b40; font-size:.95rem; }.lead-row small { color:#8292a3; margin-top:4px; }.lead-row select { border:1px solid #dce5ee; border-radius:8px; padding:8px; background:#fff; color:#31506d; }.lead-row time { color:#8292a3; font-size:.78rem; }.lead-row details { grid-column:1 / -1; color:#60758a; }.lead-row details summary { cursor:pointer; color:#1263b8; }.lead-row details p { margin:8px 0 0; white-space:pre-wrap; }.leads-empty { padding:48px 12px; text-align:center; color:#8292a3; }
@media (max-width:760px) { .leads-toolbar { flex-direction:column; align-items:stretch; }.leads-summary small { display:none; }.leads-table-head { display:none; }.lead-row { grid-template-columns:1fr 1fr; gap:10px; }.lead-row > :first-child { grid-column:1 / -1; }.lead-row details { grid-column:1 / -1; } }
.inner-page { padding-top:90px; }.inner-page h1 { max-width:900px; font-size:clamp(3rem,7vw,6rem); line-height:1; letter-spacing:-.06em; font-weight:500; margin:20px 0; }.lede { max-width:620px; color:#b1b5ae; font-size:1.15rem; line-height:1.6; }.content-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:80px; }.content-card { min-height:280px; border:1px solid #ffffff1f; padding:24px; background:#ffffff08; display:flex; flex-direction:column; transition:transform .2s, background .2s; }.content-card:hover { transform:translateY(-4px); background:#ffffff12; }.content-card span { color:#9be15d; font-size:.75rem; text-transform:uppercase; letter-spacing:.1em; }.content-card h2 { font-size:1.8rem; font-weight:500; margin-top:auto; margin-bottom:10px; }.content-card p,.detail p { color:#b1b5ae; line-height:1.6; }.content-card b { color:#d9ffb7; font-size:.9rem; margin-top:24px; }.detail { max-width:720px; border-top:1px solid #ffffff2c; padding-top:30px; }.detail h2 { font-size:clamp(2.5rem,6vw,5rem); line-height:1; letter-spacing:-.05em; font-weight:500; margin:20px 0; }.detail .button { margin-top:24px; border:0; font:inherit; cursor:pointer; }.auth-actions { display:flex; gap:12px; margin-top:32px; }.auth-actions button { background:#d9ffb7; color:#101510; border:0; border-radius:999px; padding:14px 18px; font:inherit; cursor:pointer; }.auth-actions button + button { background:#ffffff15; color:#fff; border:1px solid #ffffff2f; }
@media (max-width:760px) { .content-grid { grid-template-columns:1fr; margin-top:56px; }.auth-actions { flex-direction:column; align-items:stretch; } }

/* NengBox content presented as an immersive, white-and-blue product catalogue. */
.inner-page { max-width:1440px; padding:132px 5vw 120px; }
.inner-page .eyebrow { color:#1263b8; }
.inner-page h1 { max-width:980px; color:#17202b; }
.inner-page .lede { color:#65778a; max-width:720px; }
.content-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin-top:78px; }
.content-card { min-height:520px; padding:0; overflow:hidden; border:1px solid #d7e3ee; border-radius:26px; background:#fff; box-shadow:0 10px 30px #17365b0b; }
.content-card:hover { transform:translateY(-8px); background:#fff; border-color:#6ba7dc; box-shadow:0 22px 50px #17365b18; }
.content-card-media { height:245px; min-height:245px; flex:0 0 245px; background:linear-gradient(135deg,#1263b8aa,#08284633),url('/assets/home/home-hero-03.webp') center/cover; transition:transform .5s ease,filter .5s ease; }
.content-card:hover .content-card-media { transform:scale(1.035); filter:saturate(1.1); }
.content-card-solar-storage-charging-carport .content-card-media { background-position:30% center; }
.content-card-containerized-pv-storage .content-card-media { background-position:55% center; }
.content-card-mobile-energy-box .content-card-media { background-position:70% center; }
.content-card-rooftop-pv .content-card-media { background-position:12% center; }
.content-card-ai-energy-microgrid .content-card-media { background-position:88% center; }
.content-card-solar-storage-charging-carport .content-card-media { background-image:linear-gradient(135deg,#1263b866,#08284633),url('/assets/products/mobile-solar-carport/solar-storage-charging-carport-hero.jpg'); }
.content-card-containerized-pv-storage .content-card-media { background-image:linear-gradient(135deg,#1263b866,#08284633),url('/assets/products/containerized-solar-system/containerized-solar-storage-power-station-hero.png'); }
.content-card-mobile-energy-box .content-card-media { background-image:linear-gradient(135deg,#1263b866,#08284633),url('/assets/products/mobile-energy-box/mobile-energy-box-residential-solar-hero.jpg'); }
.content-card-rooftop-pv .content-card-media { background-image:linear-gradient(135deg,#1263b866,#08284633),url('/assets/products/vehicle-solar-system/vehicle-rooftop-solar-system-hero.webp'); }
.content-card-lightweight-pv-module .content-card-media { background-image:linear-gradient(135deg,#1263b866,#08284633),url('/assets/products/research/firm-light-pv/firm-light-pv-rooftop-hero.jpg'); background-position:center; }
.content-card-ai-energy-microgrid .content-card-media { background-image:linear-gradient(135deg,#1263b866,#08284633),url('/assets/products/ai-energy-microgrid/ai-energy-coordination-microgrid-control-center.jpg'); }
.content-card-distributed-energy .content-card-media { background-image:linear-gradient(135deg,#1263b866,#08284633),url('/assets/products/home-energy-solution-hero-20261008.jpg'); background-position:center; }
.content-card-commercial-storage .content-card-media { background-image:linear-gradient(135deg,#1263b866,#08284633),url('/assets/products/commercial-energy-menu-20261008.jpg'); background-position:center; }
.content-card-smart-microgrid .content-card-media { background-image:linear-gradient(135deg,#1263b866,#08284633),url('/assets/products/mobile-solar-carport/solar-storage-charging-carport-installed.jpg'); background-position:center; }
.content-card-coastal-industrial-park .content-card-media { background-image:linear-gradient(135deg,#1263b866,#08284633),url('/assets/home/project-coastal-industrial-park.jpg'); background-position:center; }
.content-card-rural-energy-hub .content-card-media { background-image:linear-gradient(135deg,#1263b866,#08284633),url('/assets/home/project-rural-energy-hub.jpg'); background-position:center; }
.content-card-urban-logistics .content-card-media { background-image:linear-gradient(135deg,#1263b866,#08284633),url('/assets/home/project-urban-logistics.jpg'); background-position:center; }
.content-card-copy { padding:26px 30px 30px; display:flex; min-height:275px; flex-direction:column; align-items:flex-start; }
.content-card-copy span { color:#1263b8; font-size:.76rem; letter-spacing:.12em; }
.content-card-copy h2 { color:#17202b; font-size:clamp(1.65rem,2.5vw,2.25rem); line-height:1.08; margin:22px 0 12px; }
.content-card-copy p { color:#65778a; line-height:1.65; margin:0; max-width:560px; }
.content-card-copy b { color:#1263b8; margin-top:auto; padding-top:22px; }
.detail { max-width:1240px; border:0; padding:0; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); gap:64px; align-items:center; }
.detail-visual { min-height:560px; border-radius:28px; background:linear-gradient(135deg,#1263b8aa,#08284633),url('/assets/home/home-hero-03.webp') center/cover; order:2; box-shadow:0 18px 46px #17365b1b; }
.detail-visual-solar-storage-charging-carport { background-position:30% center; }
.detail-visual-containerized-pv-storage { background-position:55% center; }
.detail-visual-mobile-energy-box { background-position:70% center; }
.detail-visual-rooftop-pv { background-position:12% center; }
.detail-visual-ai-energy-microgrid { background-position:88% center; }
.detail-copy { order:1; }
.detail-copy .eyebrow { color:#1263b8; }
.detail-copy h2 { color:#17202b; }
.detail-copy p:not(.eyebrow) { color:#65778a; max-width:600px; font-size:1.15rem; line-height:1.75; }
.detail-copy .button { margin-top:18px; }
@media (max-width:760px) { .inner-page { padding:108px 20px 80px; }.content-grid { grid-template-columns:1fr; gap:16px; margin-top:52px; }.content-card { min-height:440px; border-radius:20px; }.content-card-media { height:190px; min-height:190px; flex-basis:190px; }.content-card-copy { min-height:250px; padding:22px; }.detail { display:flex; flex-direction:column; gap:28px; align-items:stretch; }.detail-visual { order:1; min-height:300px; border-radius:20px; }.detail-copy { order:2; }.detail-copy h2 { font-size:clamp(2.5rem,12vw,4.5rem); } }

/* Account and inquiry flows: restrained blue, white and grey surfaces. */
body[data-page="login"] .inner-page>p,body[data-page="login"] .inner-page>h1,body[data-page="login"] .inner-page>.lede,
body[data-page="register"] .inner-page>p,body[data-page="register"] .inner-page>h1,body[data-page="register"] .inner-page>.lede { display:none; }
body[data-page="login"] .content-grid,body[data-page="register"] .content-grid { display:block; margin-top:18px; }
.auth-card { width:min(620px,100%); margin:0 auto; padding:42px; border:1px solid #d7e3ee; border-radius:28px; background:#fff; box-shadow:0 24px 70px #17365b13; }
.auth-heading h2,.lead-copy h2 { color:#17202b; font-size:clamp(2.2rem,4vw,4rem); line-height:1.02; letter-spacing:-.05em; margin:14px 0 18px; }
.auth-heading>p:last-child,.lead-copy>p:last-child { color:#65778a; line-height:1.65; }
.auth-tabs { display:grid; grid-template-columns:1fr 1fr; gap:8px; padding:6px; margin:30px 0 24px; border-radius:999px; background:#eef3f8; }
.auth-tabs button { border:0; border-radius:999px; padding:12px; background:transparent; color:#65778a; font:inherit; cursor:pointer; }
.auth-tabs button.is-active { background:#1263b8; color:#fff; box-shadow:0 6px 18px #1263b82b; }
.auth-tabs:has(button[hidden]) { grid-template-columns:1fr; }
.auth-tabs button[hidden],.auth-form[hidden],.auth-google[hidden] { display:none !important; }
.auth-form,.lead-form { display:flex; flex-direction:column; gap:18px; }
.auth-form label,.lead-form label { display:flex; flex-direction:column; gap:8px; color:#33485c; font-size:.9rem; }
.auth-form input,.auth-form select,.lead-form input,.lead-form select,.lead-form textarea { width:100%; min-height:48px; border:1px solid #cbd9e6; border-radius:12px; background:#fff; color:#17202b; padding:13px 14px; font:inherit; outline:none; transition:border-color .18s ease,box-shadow .18s ease; }
.auth-form input:focus,.auth-form select:focus,.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus { border-color:#1263b8; box-shadow:0 0 0 3px #1263b817; }
.auth-code-row { display:grid; grid-template-columns:1fr auto; align-items:end; gap:12px; }
.button-secondary { min-height:48px; border:1px solid #1263b8; background:#fff; color:#1263b8; }
.button-google { width:100%; justify-content:space-between; }
.auth-google p { color:#65778a; font-size:.85rem; line-height:1.55; }
.auth-consent { display:flex; flex-direction:row !important; align-items:center !important; gap:10px !important; color:#65778a !important; line-height:1.45; }
.auth-consent input { width:18px; height:18px; flex:none; margin:0; accent-color:#1263b8; }
.auth-submit { width:100%; justify-content:space-between; border:0; cursor:pointer; }
.auth-switch { margin:24px 0 0; padding-top:22px; border-top:1px solid #e1e9f0; color:#65778a; text-align:center; }
.auth-story-strip { margin:-42px -42px 34px; padding:24px 42px 22px; border-radius:28px 28px 0 0; background:#f3f7fb; border-bottom:1px solid #d7e3ee; }.auth-story-strip>span { display:block; color:#1263b8; font-size:.7rem; letter-spacing:.16em; }.auth-story-strip>strong { display:block; margin:10px 0 7px; color:#17202b; font-size:1.15rem; }.auth-story-strip>p { margin:0; color:#65778a; font-size:.88rem; }.auth-story-strip ol { display:flex; flex-wrap:wrap; gap:14px 24px; margin:20px 0 0; padding:0; list-style:none; color:#52687c; font-size:.78rem; }.auth-story-strip li { display:flex; gap:7px; align-items:center; }.auth-story-strip b { color:#1263b8; font-size:.7rem; letter-spacing:.08em; }.auth-note { color:#65778a; font-size:.8rem; line-height:1.5; margin:2px 0 0; }
.auth-switch a { color:#1263b8; font-weight:600; }
.auth-card-international { width:min(520px,100%); padding:52px; text-align:center; }
.moveto-auth-logo { display:block; width:max-content; margin:0 auto 28px; }
.moveto-auth-logo img { display:block; width:148px; height:auto; }
.auth-card-international .auth-heading h2 { font-size:clamp(2rem,3.4vw,2.8rem); letter-spacing:-.04em; margin:0 0 12px; }
.auth-card-international .auth-heading>p:last-child { margin:0 0 36px; }
.auth-card-international .auth-google .button-google { display:flex; align-items:center; justify-content:center; gap:13px; min-height:56px; border:1px solid #202124; border-radius:12px; background:#202124; color:#fff; font-size:1rem; font-weight:600; box-shadow:none; }
.auth-card-international .auth-google .button-google:hover,.auth-card-international .auth-google .button-google:focus-visible { background:#333539; border-color:#333539; transform:none; }
.auth-card-international .google-g { width:23px; height:23px; flex:none; }
.auth-card-international .auth-google .button-google { overflow:hidden; min-width:0; }
.auth-card-international .auth-google .button-google > span { min-width:0; font-size:1rem; line-height:1.2; margin-left:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.auth-alternative { margin:28px 0 0; }
.auth-alternative>span { display:flex; align-items:center; gap:16px; color:#8694a3; font-size:.88rem; }
.auth-alternative>span:before,.auth-alternative>span:after { content:''; height:1px; background:#e1e7ed; flex:1; }
.auth-phone-choice { display:block; width:100%; min-height:52px; margin-top:22px; border:1px solid #d5dde5; border-radius:12px; background:#fff; color:#263442; font:inherit; cursor:pointer; }
.auth-phone-choice:hover,.auth-phone-choice:focus-visible { border-color:#1263b8; color:#1263b8; }
.auth-card-international .auth-form { text-align:left; }
.auth-card-international .auth-form-primary { margin-top:8px; }
.auth-card-international .auth-form-primary .auth-submit { min-height:56px; border-radius:12px; justify-content:center; font-size:1rem; }
.account-card { max-width:720px; }
.account-summary { margin:32px 0; padding:24px; border:1px solid #d7e3ee; border-radius:16px; color:#52687c; }
.account-summary dl { display:grid; grid-template-columns:140px 1fr; gap:14px 20px; margin:0; }
.account-summary dt { color:#7b8d9f; }.account-summary dd { margin:0; color:#17202b; font-weight:600; word-break:break-word; }
.account-actions { display:flex; align-items:center; gap:18px; }.account-actions .button { text-decoration:none; }.account-actions .outline-link { color:#1263b8; }
@media (max-width:760px) { .auth-card-international { padding:32px 22px; } }
.form-status { min-height:22px; margin:14px 0 0; color:#1263b8; font-size:.88rem; line-height:1.45; }
.lead-card { grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr); gap:80px; padding:58px; border:1px solid #d7e3ee; border-radius:30px; background:linear-gradient(135deg,#f5f9fd,#fff 58%); }
.lead-card-premium { position:relative; overflow:hidden; box-shadow:0 24px 70px #17365b12; }
.lead-card-premium::after { content:""; position:absolute; width:360px; height:360px; right:-180px; top:-180px; border-radius:50%; background:#1263b812; pointer-events:none; }
.lead-hero-image { grid-column:1 / -1; min-height:300px; border-radius:22px; background:linear-gradient(90deg,#071b32aa,#071b3222),url('/assets/home/home-hero-03.webp') center/cover; }
.lead-trust { display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; margin-top:42px; color:#65778a; font-size:.82rem; }
.lead-trust span { color:#1263b8; font-weight:700; letter-spacing:.12em; }
.lead-form select { appearance:none; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='m3 5 4 4 4-4' fill='none' stroke='%2365778a' stroke-width='1.5'/%3E%3C/svg%3E") right 14px center/14px no-repeat; }
.lead-form select.country-select.is-taiwan { background-image:url('/assets/brand/zh_TW.svg'),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='m3 5 4 4 4-4' fill='none' stroke='%2365778a' stroke-width='1.5'/%3E%3C/svg%3E"); background-position:14px center,right 14px center; background-size:22px 15px,14px 14px; background-repeat:no-repeat; padding-left:46px; }
.country-picker { position:relative; }
.country-picker-trigger { width:100%; min-height:48px; padding:13px 42px 13px 14px; border:1px solid #cbd9e6; border-radius:12px; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='m3 5 4 4 4-4' fill='none' stroke='%2365778a' stroke-width='1.5'/%3E%3C/svg%3E") right 14px center/14px no-repeat; color:#17202b; font:inherit; text-align:left; cursor:pointer; }
.country-picker.is-open .country-picker-trigger { border-color:#1263b8; box-shadow:0 0 0 3px #1263b817; }
.country-picker-menu { position:absolute; z-index:20; display:none; top:calc(100% + 8px); left:0; right:0; max-height:300px; overflow:auto; padding:6px; border:1px solid #cbd9e6; border-radius:14px; background:#fff; box-shadow:0 16px 40px #17365b2b; }
.country-picker.is-open .country-picker-menu { display:grid; }
.country-option { display:flex; align-items:center; gap:10px; width:100%; padding:10px 12px; border:0; border-radius:9px; background:transparent; color:#17202b; font:inherit; text-align:left; cursor:pointer; }
.country-option:hover,.country-option:focus-visible { background:#eef5fb; color:#1263b8; }
.country-option-flag { width:26px; display:inline-flex; justify-content:center; align-items:center; font-size:1.2rem; }
.country-option-flag img { width:22px; height:15px; object-fit:cover; display:block; }
.lead-google-gate,.lead-phone-gate { display:grid; gap:14px; padding:18px; border:1px solid #d7e3ee; border-radius:16px; background:#f8fbfe; }
.lead-google-gate p { margin:0; color:#65778a; font-size:.82rem; line-height:1.5; }
.lead-google-gate .button-google { width:auto; min-width:240px; align-self:flex-start; justify-content:space-between; padding-inline:24px; }
.lead-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.lead-form .button { align-self:flex-start; border:0; cursor:pointer; }
.contact-page .inner-page { width:100%; max-width:none; padding:0; }
.contact-page .inner-page > .eyebrow,.contact-page .inner-page > h1,.contact-page .inner-page > .lede { display:none; }
.contact-page .content-grid { width:100%; max-width:none; margin:0; }
.contact-page .lead-card { display:flex; flex-direction:column; gap:42px; width:100%; max-width:none; padding:0 7vw 100px; border:0; border-radius:0; background:#f5f8fb; box-shadow:none; }
.contact-page .lead-hero-image { width:100vw; min-height:clamp(420px,58vw,760px); margin-left:calc(50% - 50vw); border-radius:0; background:linear-gradient(90deg,#071b32cc 0%,#071b3255 48%,#071b3218),url('/assets/home/home-hero-03.webp') center/cover; }
.contact-page .lead-copy { width:min(1160px,100%); margin:0 auto; }
.contact-page .lead-form { width:min(1160px,100%); margin:0 auto; padding:clamp(28px,4vw,56px); border:1px solid #d7e3ee; border-radius:28px; background:#fff; box-shadow:0 24px 70px #17365b12; }
.contact-page .lead-form .auth-consent { flex-direction:row !important; align-items:center; white-space:nowrap; }
.contact-page .lead-form .auth-consent input { width:20px; height:20px; border-radius:4px; }
.faq-page .faq-copy { display:grid; gap:18px; }
.faq-page .faq-copy h1 { margin:0; font-size:clamp(2.4rem,5vw,5.2rem); line-height:1.05; letter-spacing:-.04em; }
.faq-page .faq-lead { max-width:860px; font-size:clamp(1.1rem,1.8vw,1.45rem); color:#526b82; line-height:1.75; }
.faq-page .faq-path { margin-top:18px; padding:30px clamp(20px,3vw,42px); border:1px solid #d7e3ee; border-radius:24px; background:#fff; box-shadow:0 16px 50px #17365b0d; }
.faq-page .faq-path h2 { margin:8px 0 12px; font-size:clamp(1.3rem,2.4vw,2.2rem); line-height:1.2; color:#10243b; }
.faq-page .faq-path p:last-child { max-width:900px; color:#62778c; line-height:1.75; }
.faq-page .faq-list { margin-top:26px; }
.faq-page .faq-list > h2 { margin:8px 0 20px; font-size:clamp(1.8rem,3vw,3rem); color:#10243b; }
.faq-page .faq-item { border-top:1px solid #cfdce8; padding:0; }
.faq-page .faq-item:last-child { border-bottom:1px solid #cfdce8; }
.faq-page .faq-item summary { display:flex; align-items:center; gap:18px; padding:22px 4px; cursor:pointer; list-style:none; font-size:clamp(1rem,1.5vw,1.25rem); font-weight:650; color:#162b41; }
.faq-page .faq-item summary::-webkit-details-marker { display:none; }
.faq-page .faq-item summary::after { content:'+'; margin-left:auto; color:#1263b8; font-size:1.5rem; font-weight:400; }
.faq-page .faq-item[open] summary::after { content:'−'; }
.faq-page .faq-item summary span { color:#1263b8; font-size:.8rem; letter-spacing:.12em; }
.faq-page .faq-item p { margin:0 34px 24px 42px; color:#65798c; line-height:1.75; }
@media (max-width:760px) { .faq-page .faq-copy h1 { font-size:clamp(2rem,9vw,3.1rem); }.faq-page .faq-path { padding:22px 18px; border-radius:18px; }.faq-page .faq-path h2 { font-size:1.15rem; word-break:break-word; }.faq-page .faq-item summary { gap:10px; padding:18px 0; font-size:1rem; }.faq-page .faq-item p { margin:0 8px 20px 30px; }.faq-page .lead-hero-image { min-height:300px; } }
@media (max-width:760px) { .auth-card { padding:26px 20px; border-radius:20px; }.auth-story-strip { margin:-26px -20px 26px; padding:20px; border-radius:20px 20px 0 0; }.auth-story-strip ol { display:grid; gap:8px; }.auth-code-row { grid-template-columns:1fr; }.button-secondary { width:100%; justify-content:center; }.lead-card { display:flex; flex-direction:column; gap:34px; padding:26px 20px; border-radius:20px; }.lead-hero-image { min-height:220px; border-radius:16px; }.lead-form-grid { grid-template-columns:1fr; }.lead-form .button { width:100%; justify-content:space-between; }.lead-google-gate .button-google { min-width:0; width:auto; }.lead-trust { margin-top:28px; gap:8px 10px; }.lead-phone-gate,.lead-google-gate { padding:14px; }.contact-page .lead-card { padding:0 20px 64px; }.contact-page .lead-hero-image { min-height:300px; margin-left:-20px; width:calc(100% + 40px); }.contact-page .lead-form { padding:24px 18px; border-radius:20px; }.contact-page .lead-form .auth-consent { white-space:normal; align-items:flex-start; } }
.nav-dropdown summary span { display:none !important; }
.nav-dropdown summary { position:relative; transition:color .2s ease; }
.nav-dropdown:hover summary,.nav-dropdown[open] summary { color:#1263b8 !important; }

/* Product detail pages are immersive, full-bleed layouts. The shared detail
   shell normally uses a two-column card grid; remove that constraint so the
   product template can occupy the complete viewport width on desktop and
   mobile alike. */
body.product-detail-page .inner-page { width:100%; max-width:none; padding:0; }
body.product-detail-page .inner-page > .eyebrow,
body.product-detail-page .inner-page > h1,
body.product-detail-page .inner-page > .lede { display:none; }
body.product-detail-page #content-grid { display:block; width:100%; max-width:none; margin:0; }
body.product-detail-page .product-template { width:100%; max-width:none; margin:0; }
.product-template.home-solution section { min-height:0; }
.home-solution-hero { position:relative; min-height:680px!important; display:flex; align-items:end; overflow:hidden; background:#0b2130; color:#fff; }
.home-solution-hero>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.home-solution-hero:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#061521eb 0%,#0615218c 52%,#06152122 100%); }
.home-solution-hero>div { position:relative; z-index:1; width:100%; max-width:760px; min-width:0; box-sizing:border-box; padding:150px 7vw 90px; }
.home-solution-hero h1 { color:#fff; font-size:clamp(3.2rem,6vw,6.5rem); line-height:1; margin:18px 0 25px; overflow-wrap:anywhere; }
.home-solution-hero p { color:#edf5fa; line-height:1.7; }
.home-solution-hero .button { display:inline-flex; max-width:100%; white-space:normal; margin-top:24px; }
.home-solution-intro { max-width:1100px; padding:110px 32px; margin:auto; }
.home-solution-intro h2,.home-solution-process h2 { font-size:clamp(2.4rem,4vw,4.5rem); line-height:1.08; max-width:800px; margin:18px 0 24px; }
.home-solution-intro>p:last-child { max-width:850px; color:#526879; font-size:1.12rem; line-height:1.8; }
.home-solution-scene { display:grid; grid-template-columns:1fr 1fr; min-height:620px; background:#f2f6f7; }
.home-solution-scene:nth-child(even) .home-solution-image { order:2; }
.home-solution-image { min-height:480px; overflow:hidden; }
.home-solution-image img { display:block; width:100%; height:100%; object-fit:cover; }
.home-solution-copy { align-self:center; padding:72px clamp(32px,6vw,110px); }
.home-solution-copy h2 { font-size:clamp(2.3rem,3.3vw,4rem); line-height:1.1; margin:18px 0 22px; }
.home-solution-copy h3 { font-size:1.1rem; margin:30px 0 10px; }
.home-solution-copy p,.home-solution-copy li { color:#526879; line-height:1.75; }
.home-solution-copy ul { padding-left:1.25em; }
.home-solution-copy>a { display:inline-block; margin-top:24px; font-weight:700; color:#006b83; }
.solution-service-strip { padding:80px max(24px,5vw); background:#f6f8fa; }
.solution-service-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; max-width:1440px; margin:auto; padding:42px 28px; background:#fff; border:1px solid #e1e7eb; border-radius:18px; }
.solution-service-grid article { text-align:center; padding:10px 8px; }
.solution-service-icon { display:grid; place-items:center; width:58px; height:58px; margin:0 auto 24px; border-radius:50%; background:#07161d; color:#fff; font-size:.95rem; font-weight:700; }
.solution-service-grid h2 { font-size:1.35rem; margin:0 0 14px; color:#13202a; }
.solution-service-grid p { margin:0; color:#788491; line-height:1.65; }
.solution-service-terms { max-width:1440px; margin:18px auto 0; color:#657480; font-size:.86rem; line-height:1.6; }
.home-solution-process { background:#092834; color:#fff; padding:100px max(32px,7vw); }
.home-solution-process h2 { color:#fff; }
.home-solution-process ol { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; padding:0; list-style:none; counter-reset:step; margin:45px 0; }
.home-solution-process li { counter-increment:step; border-top:1px solid #ffffff77; padding:25px 15px 20px 0; line-height:1.6; }
.home-solution-process li:before { content:"0" counter(step); display:block; font-size:1.6rem; color:#83d3da; margin-bottom:20px; }
.home-solution-process .button { max-width:100%; white-space:normal; box-sizing:border-box; }
.home-solution-note { padding:32px max(32px,7vw) 70px; margin:0; font-size:.9rem; line-height:1.7; color:#526879; }
@media (max-width:800px) { .home-solution:not(.commercial-solution):not(.parking-solution) .home-solution-hero>img { object-position:76% center; } .home-solution-hero { min-height:600px!important; } .home-solution-hero>div { padding:145px 20px 60px; } .home-solution-intro { padding:75px 20px; } .home-solution-scene { display:block; } .home-solution-scene:nth-child(even) .home-solution-image { order:initial; } .home-solution-image { height:320px; min-height:0; } .home-solution-copy { padding:55px 20px 70px; } .solution-service-strip { padding:55px 20px; } .solution-service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 8px; padding:30px 12px; } .solution-service-grid article { padding:8px 3px; } .solution-service-grid h2 { font-size:1.1rem; } .solution-service-grid p { font-size:.9rem; } .home-solution-process { padding:75px 20px; } .home-solution-process ol { grid-template-columns:1fr; gap:5px; } .home-solution-note { padding:28px 20px 65px; } }
body.reference-product-detail .inner-page { max-width:none; padding:0; }
.reference-product-page { color:#17202b; background:#fff; }
.reference-product-hero { min-height:720px; display:grid; grid-template-columns:minmax(0,1fr) minmax(420px,1fr); align-items:stretch; background:#07172c; color:#fff; }
.reference-product-hero>div:first-child { display:flex; flex-direction:column; justify-content:flex-end; padding:100px clamp(28px,8vw,130px) 100px; }
.reference-product-hero h1 { max-width:760px; font-size:clamp(3.2rem,6.4vw,7.4rem); line-height:.95; letter-spacing:-.065em; margin:20px 0 28px; }
.reference-product-hero p:not(.eyebrow) { max-width:680px; color:#d7e5f1; line-height:1.75; font-size:1.08rem; }
.reference-product-hero .button { align-self:flex-start; margin-top:24px; }
.reference-product-hero-media { min-height:520px; overflow:hidden; }
.reference-product-hero-media .reference-product-media { height:100%; }
.reference-product-hero-media .reference-product-media img { height:100%; }
.reference-product-media { position:relative; margin:0; min-height:180px; overflow:hidden; background:#dce6ef; }
.reference-product-media img,.reference-product-media video { width:100%; height:100%; min-height:180px; object-fit:cover; display:block; }
.reference-product-media figcaption { position:absolute; left:18px; bottom:16px; color:#fff; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; text-shadow:0 1px 4px #000; }
.reference-product-story { max-width:1240px; margin:auto; padding:115px 32px 90px; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:80px; }
.reference-product-story h2 { max-width:650px; font-size:clamp(2.5rem,4.5vw,5rem); line-height:1; letter-spacing:-.06em; margin:18px 0; }
.reference-product-story>p { align-self:end; color:#5c7084; line-height:1.85; font-size:1.08rem; }
.reference-product-sections { max-width:1240px; margin:auto; padding:0 32px 100px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:#dce4eb; }
.reference-product-section { min-height:260px; padding:38px; background:#fff; display:grid; grid-template-columns:48px 1fr; gap:20px; }
.reference-product-section>span { color:#2d78be; font-size:1.3rem; }
.reference-product-section p:not(.eyebrow) { color:#5c7084; line-height:1.8; }
.reference-product-specs { background:#eef4f7; padding:95px max(32px,calc((100vw - 1176px)/2)); }
.reference-product-specs>div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:28px; }
.reference-product-specs article { background:#fff; padding:30px; min-height:170px; }
.reference-product-specs article b { color:#2d78be; letter-spacing:.1em; }
.reference-product-specs article h3 { font-size:1.25rem; margin:15px 0; }
.reference-product-specs article p { color:#5c7084; line-height:1.65; }
.reference-product-specs>small { display:block; max-width:900px; margin-top:25px; color:#6c7d8c; line-height:1.6; }
.reference-product-gallery { max-width:1240px; margin:auto; padding:110px 32px; }
.reference-product-gallery h2 { font-size:clamp(2.3rem,4vw,4.4rem); letter-spacing:-.06em; margin:18px 0 45px; }
.reference-product-gallery>div:last-child { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.reference-product-gallery .reference-product-media:first-child { grid-column:span 2; min-height:440px; }
.reference-product-gallery .reference-product-media:first-child img { min-height:440px; }
.reference-product-disclaimer { padding:35px max(32px,calc((100vw - 1176px)/2)) 80px; color:#6c7d8c; font-size:.9rem; line-height:1.7; }
@media (max-width:800px) { .reference-product-hero { grid-template-columns:1fr; } .reference-product-hero>div:first-child { min-height:570px; padding:90px 20px 65px; } .reference-product-hero-media { min-height:330px; } .reference-product-story { grid-template-columns:1fr; gap:25px; padding:80px 20px 60px; } .reference-product-sections { grid-template-columns:1fr; padding:0 20px 70px; } .reference-product-section { min-height:0; padding:28px 22px; } .reference-product-specs { padding:70px 20px; } .reference-product-specs>div { grid-template-columns:1fr; } .reference-product-gallery { padding:75px 20px; } .reference-product-gallery>div:last-child { grid-template-columns:1fr; } .reference-product-gallery .reference-product-media:first-child { grid-column:auto; min-height:260px; } .reference-product-gallery .reference-product-media:first-child img { min-height:260px; } .reference-product-disclaimer { padding:25px 20px 60px; } }
.product-reference-template { background:#f7f9fb; }
.product-reference-hero { position:relative; min-height:clamp(620px,78vh,900px); display:flex; align-items:flex-end; overflow:hidden; background:#07172c; }
.product-reference-hero::before { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg,#020d24e8 0%,#06142d98 45%,#06142d24 100%),linear-gradient(0deg,#020713a8,transparent 58%); }
.product-reference-hero::after { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(180deg,transparent 65%,#02071366); }
.product-reference-hero-image { position:absolute; inset:0; z-index:0; width:100%; height:100%; object-fit:cover; display:block; }
.product-reference-hero-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.product-reference-hero .product-template-hero-copy { position:relative; z-index:2; }
.product-template-actions { display:flex; flex-wrap:wrap; align-items:center; gap:22px; margin-top:24px; }
.product-template-actions .button { margin-top:0; }
.product-reference-hero-media { display:none; }
.product-reference-hero-media .product-reference-media { height:100%; }
.product-reference-hero-media img,.product-reference-hero-media video { width:100%; height:100%; object-fit:cover; display:block; }
.product-reference-media { position:relative; margin:0; min-height:220px; overflow:hidden; background:#dce6ef; }
.product-reference-media img,.product-reference-media video { width:100%; height:100%; min-height:220px; object-fit:cover; display:block; }
.product-reference-media figcaption { position:absolute; left:18px; bottom:16px; color:#fff; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; text-shadow:0 1px 4px #000; }
.product-reference-story,.product-reference-scenarios,.product-reference-specs,.product-reference-gallery { padding:110px max(32px,calc((100vw - 1176px)/2)); }
.product-reference-story { background:#fff; }
.evse827-turnkey-solution { padding:96px max(32px,calc((100vw - 1176px)/2)) 88px; background:linear-gradient(135deg,#eaf5f8 0%,#f7fbfc 58%,#fff 100%); }
.evse827-turnkey-solution .product-section-heading { max-width:980px; }
.evse827-turnkey-solution .product-section-heading h2 { max-width:920px; }
.evse827-turnkey-solution .product-section-heading p:not(.eyebrow) { max-width:860px; color:#5c7084; line-height:1.85; }
.evse827-features { padding:96px max(32px,calc((100vw - 1176px)/2)); background:#fff; }
.evse827-features .product-section-heading { max-width:980px; }
.evse827-features .product-section-heading p:not(.eyebrow) { max-width:900px; color:#5c7084; line-height:1.85; }
.evse827-feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin-top:42px; background:#d7e1e8; }
.evse827-feature-grid article { min-height:230px; padding:32px; background:#f5f9fb; }
.evse827-feature-grid span { color:#2776b8; font-size:1.25rem; }
.evse827-feature-grid h3 { margin:28px 0 14px; font-size:1.35rem; }
.evse827-feature-grid p { margin:0; color:#5c7084; line-height:1.8; }
.product-story-grid,.product-scenario-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin-top:42px; background:#d7e1e8; }
.product-story-card,.product-scenario-card { min-height:240px; padding:34px; background:#fff; }
.product-story-card>span,.product-scenario-card>span { color:#2776b8; font-size:1.25rem; }
.product-story-card .eyebrow,.product-scenario-card .eyebrow { margin-top:26px; }
.product-story-card>p:last-child,.product-scenario-card>p:last-child { color:#5c7084; line-height:1.8; }
.product-reference-scenarios { background:#eef4f7; }
.product-scenario-card { background:#f8fbfc; }
.product-scenario-card h3 { margin:10px 0 14px; font-size:1.45rem; }
.product-reference-specs { background:#07172c; color:#fff; }
.product-reference-specs .product-section-heading p:not(.eyebrow) { color:#c6d7e6; }
.product-spec-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:38px; }
.product-spec-grid article { min-height:190px; padding:30px; background:#102943; border:1px solid #244662; }
.product-spec-grid b { color:#8cc7ef; letter-spacing:.12em; }
.product-spec-grid h3 { margin:16px 0 12px; }
.product-spec-grid p { color:#c6d7e6; line-height:1.7; }
.container-specifications { background:linear-gradient(135deg,#091a14,#123c2b); }
.container-specifications .eyebrow { color:#70cb45; letter-spacing:.18em; }
.container-specifications .product-section-heading h2 { color:#fff; }
.container-specifications .product-section-heading p:not(.eyebrow) { color:#b4c4bb; }
.container-spec-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px; margin-top:48px; }
.container-spec-card { min-width:0; padding:clamp(24px,3vw,48px); border:1px solid #ffffff20; border-radius:22px; background:#ffffff0b; }
.container-spec-card>header { display:flex; flex-wrap:wrap; align-items:center; gap:14px; }
.container-spec-card>header h3 { margin:0; color:#fff; font-size:clamp(1.35rem,2vw,1.8rem); }
.container-spec-card>header span { padding:7px 15px; border-radius:999px; background:#68b93b26; color:#8bd45b; font-size:1rem; font-weight:750; white-space:nowrap; }
.container-spec-summary { min-height:3em; margin:16px 0 24px; color:#a9b9af; line-height:1.7; }
.container-spec-card dl { margin:0; }
.container-spec-card dl>div { display:grid; grid-template-columns:minmax(130px,.8fr) minmax(0,1.2fr); gap:18px; padding:15px 0; border-top:1px solid #ffffff14; }
.container-spec-card dt { color:#9baea2; }
.container-spec-card dd { margin:0; color:#e3eae5; line-height:1.55; }
.product-reference-gallery { background:#fff; }
.lightweight-advantages,.lightweight-applications,.lightweight-cases { padding:110px max(32px,calc((100vw - 1176px)/2)); }
.lightweight-advantages { background:#fff; }
.lightweight-applications { background:#eef4f7; }
.lightweight-cases { background:#fff; }
.lightweight-advantage-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:42px; }
.lightweight-advantage-grid article { min-height:230px; padding:34px; background:#f3f7f8; border-top:3px solid #0a8192; }
.lightweight-advantage-grid span { color:#168698; font-weight:700; }
.lightweight-advantage-grid h3 { font-size:1.55rem; margin:24px 0 14px; }
.lightweight-advantage-grid p { color:#536a79; line-height:1.75; margin:0; }
.lightweight-application-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:42px; }
.lightweight-application-grid article { overflow:hidden; background:#fff; }
.lightweight-application-grid img { display:block; width:100%; height:250px; object-fit:cover; background:#dae5ea; }
.lightweight-application-grid article:last-child img { object-fit:contain; padding:14px; box-sizing:border-box; }
.lightweight-application-grid article>div { padding:27px 26px 32px; }
.lightweight-application-grid h3 { font-size:1.45rem; margin:0 0 14px; }
.lightweight-application-grid p { color:#536a79; line-height:1.75; margin:0; }
.lightweight-case-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:42px; }
.lightweight-case-grid figure { margin:0; overflow:hidden; background:#f3f7f8; border:1px solid #dce8eb; }
.lightweight-case-grid img { display:block; width:100%; height:270px; object-fit:cover; background:#dce8eb; }
.lightweight-case-grid figcaption { padding:23px 25px 26px; font-size:1.25rem; font-weight:700; line-height:1.35; }
@media (max-width:800px) { .lightweight-advantages,.lightweight-applications,.lightweight-cases { padding:75px 20px; } .lightweight-advantage-grid,.lightweight-application-grid,.lightweight-case-grid { grid-template-columns:1fr; } .lightweight-advantage-grid article { min-height:0; padding:28px; } .lightweight-application-grid img { height:240px; } .lightweight-case-grid img { height:240px; } }
.product-reference-gallery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:38px; }
.product-reference-gallery-grid .product-reference-media:first-child { grid-column:span 2; min-height:460px; }
.product-reference-gallery-grid .product-reference-media:first-child img,.product-reference-gallery-grid .product-reference-media:first-child video { min-height:460px; }
.product-reference-rooftop-pv .product-reference-gallery-grid .product-reference-media:first-child { grid-column:1 / -1; min-height:420px; }
.product-reference-rooftop-pv .product-reference-gallery-grid .product-reference-media:first-child img { min-height:420px; }
.product-reference-containerized-pv-storage .product-reference-gallery-grid .product-reference-media:first-child { grid-column:1 / -1; min-height:420px; }
.product-reference-containerized-pv-storage .product-reference-gallery-grid .product-reference-media:first-child img { min-height:420px; }
.product-reference-disclaimer { padding:30px max(32px,calc((100vw - 1176px)/2)) 80px; background:#fff; color:#6c7d8c; font-size:.9rem; line-height:1.7; }
.product-reference-hybrid-inverter-mt-1085eh48l .product-reference-hero,
.product-reference-hybrid-inverter-mt-150eh48l .product-reference-hero { background:#07172c; }
.product-reference-hybrid-inverter-mt-1085eh48l .product-reference-hero::before,
.product-reference-hybrid-inverter-mt-150eh48l .product-reference-hero::before { background:linear-gradient(90deg,#020d24e8 0%,#06142d98 45%,#06142d24 100%),linear-gradient(0deg,#020713a8,transparent 58%); }
.product-reference-hybrid-inverter-mt-1085eh48l .product-reference-hero::after,
.product-reference-hybrid-inverter-mt-150eh48l .product-reference-hero::after { background:linear-gradient(180deg,transparent 65%,#02071366); }
.product-reference-hybrid-inverter-mt-1085eh48l .product-reference-hero-image,
.product-reference-hybrid-inverter-mt-150eh48l .product-reference-hero-image { object-fit:cover; object-position:center center; background:#07172c; }
.product-reference-hybrid-inverter-mt-1085eh48l .product-template-hero-copy,
.product-reference-hybrid-inverter-mt-150eh48l .product-template-hero-copy { color:#fff; text-shadow:0 1px 4px #0008; max-width:620px; }
.product-reference-hybrid-inverter-mt-1085eh48l .product-template-hero-copy h1,
.product-reference-hybrid-inverter-mt-150eh48l .product-template-hero-copy h1 { color:#fff; }
.product-reference-hybrid-inverter-mt-1085eh48l .product-template-hero-copy > p:not(.eyebrow),
.product-reference-hybrid-inverter-mt-150eh48l .product-template-hero-copy > p:not(.eyebrow) { color:#edf5fa; }
.product-reference-hybrid-inverter-mt-1085eh48l .product-template-hero-copy .product-breadcrumb,
.product-reference-hybrid-inverter-mt-150eh48l .product-template-hero-copy .product-breadcrumb { color:#d7e8f5; }
.product-reference-hybrid-inverter-mt-1085eh48l .product-story-card ul,
.product-reference-hybrid-inverter-mt-1085eh48l .product-scenario-card ul,
.product-reference-hybrid-inverter-mt-150eh48l .product-story-card ul,
.product-reference-hybrid-inverter-mt-150eh48l .product-scenario-card ul { margin:16px 0 0; padding-left:20px; color:#5c7084; line-height:1.8; }
.technical-parameter-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:38px; }
.technical-parameter-grid article { background:#102943; border:1px solid #244662; }
.technical-parameter-grid h3 { margin:0; padding:22px 24px 16px; color:#fff; }
.technical-parameter-grid table { width:100%; border-collapse:collapse; }
.technical-parameter-grid th,.technical-parameter-grid td { padding:12px 24px; border-top:1px solid #244662; text-align:left; vertical-align:top; font-size:.88rem; line-height:1.5; }
.technical-parameter-grid th { width:48%; color:#c6d7e6; font-weight:500; }
.technical-parameter-grid td { color:#fff; }
.product-overview-real-media { position:relative; min-height:480px; margin:0; overflow:hidden; border-radius:24px; background:#dce6ef; box-shadow:0 18px 46px #17365b1b; cursor:zoom-in; }
.product-overview-real-media img,.product-overview-real-media video { width:100%; height:100%; min-height:480px; object-fit:cover; display:block; transition:transform .45s ease; }
.product-overview-real-media:hover img { transform:scale(1.03); }
.product-overview-real-media figcaption { position:absolute; left:22px; bottom:18px; color:#fff; font-size:.72rem; letter-spacing:.12em; text-shadow:0 1px 4px #000; }
.product-lightbox { position:fixed; inset:0; z-index:1000; display:flex; align-items:center; justify-content:center; padding:32px; background:#020713e8; opacity:0; visibility:hidden; transition:opacity .2s ease,visibility .2s ease; }
.product-lightbox.is-open { opacity:1; visibility:visible; }
.product-lightbox img { max-width:94vw; max-height:90vh; object-fit:contain; box-shadow:0 20px 80px #0008; }
.product-lightbox-close { position:absolute; top:22px; right:28px; border:0; background:transparent; color:#fff; font-size:42px; line-height:1; cursor:pointer; }
.product-lightbox-close:focus-visible { outline:2px solid #fff; outline-offset:5px; border-radius:4px; }
body.lightbox-open { overflow:hidden; }
/* Product and mega-menu images invite inspection and provide clear hover/focus feedback. */
.product-reference-media img[data-lightbox],.product-overview-real-media img[data-lightbox] { cursor:zoom-in; transition:transform .38s cubic-bezier(.2,.7,.25,1),filter .38s ease; }
.product-reference-media:has(img[data-lightbox]),.product-overview-real-media:has(img[data-lightbox]) { cursor:zoom-in; }
.product-reference-media:has(img[data-lightbox]):hover,.product-overview-real-media:has(img[data-lightbox]):hover { box-shadow:0 20px 45px #17365b20; }
.product-reference-media img[data-lightbox]:hover,.product-overview-real-media img[data-lightbox]:hover { transform:scale(1.035); filter:saturate(1.06); }
.product-reference-media img[data-lightbox]:focus-visible,.product-overview-real-media img[data-lightbox]:focus-visible { outline:3px solid #1670c5; outline-offset:-5px; }
@media (prefers-reduced-motion:reduce) { .product-reference-media img[data-lightbox],.product-overview-real-media img[data-lightbox] { transition:none; } }
.sustainability-template { width:100%; background:#fff; color:#17202b; }
.sustainability-hero { position:relative; min-height:clamp(640px,86vh,920px); display:flex; align-items:flex-end; overflow:hidden; background:#07172c; }
.sustainability-hero>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; cursor:zoom-in; }
.sustainability-hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,#031225e8 0%,#07172c9c 48%,#07172c18 100%),linear-gradient(0deg,#031225b8,transparent 58%); }
.sustainability-hero-copy { position:relative; z-index:1; width:min(1240px,100%); margin:0 auto; padding:120px 32px 92px; color:#fff; }
.sustainability-hero-copy h1 { max-width:900px; margin:20px 0 28px; font-size:clamp(3.4rem,7vw,7.5rem); line-height:.94; letter-spacing:-.065em; }
.sustainability-hero-copy>p:last-child { max-width:720px; color:#d9e6ef; font-size:1.1rem; line-height:1.8; }
.sustainability-commitment { max-width:1240px; margin:auto; padding:120px 32px; display:grid; grid-template-columns:1fr .9fr; gap:90px; }
.sustainability-commitment h2,.sustainability-framework h2 { margin:18px 0 0; font-size:clamp(2.8rem,5vw,5.2rem); line-height:.98; letter-spacing:-.06em; }
.sustainability-commitment>div:last-child { color:#5f7387; font-size:1.08rem; line-height:1.85; }
.sustainability-framework { padding:110px max(32px,calc((100vw - 1176px)/2)); background:#eef4f7; }
.sustainability-value-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin-top:52px; background:#cedbe5; }
.sustainability-value-grid article { min-height:270px; padding:36px; background:#fff; }
.sustainability-value-grid span { color:#1263b8; letter-spacing:.12em; }
.sustainability-value-grid h3 { margin:42px 0 16px; font-size:1.65rem; }
.sustainability-value-grid p { color:#63778a; line-height:1.75; }
.sustainability-statement { padding:110px max(32px,calc((100vw - 1176px)/2)); display:grid; grid-template-columns:1fr .8fr; gap:90px; background:#07172c; color:#fff; }
.sustainability-statement blockquote { margin:0; font-size:clamp(2.2rem,4vw,4.4rem); line-height:1.08; letter-spacing:-.045em; }
.sustainability-statement>div>p:last-child { color:#c8d8e6; line-height:1.8; }
@media (max-width:800px) { .sustainability-hero-copy { padding:110px 20px 70px; } .sustainability-commitment,.sustainability-statement { grid-template-columns:1fr; gap:36px; padding:78px 20px; } .sustainability-framework { padding:78px 20px; } .sustainability-value-grid { grid-template-columns:1fr; } }
@media (max-width:800px) { .product-reference-hero { grid-template-columns:1fr; } .product-reference-hero-media { min-height:330px; } .product-template-actions { align-items:flex-start; flex-direction:column; gap:14px; } .evse827-features,.evse827-turnkey-solution,.product-reference-story,.product-reference-scenarios,.product-reference-specs,.product-reference-gallery { padding:75px 20px; } .evse827-feature-grid,.product-story-grid,.product-scenario-grid,.product-spec-grid,.product-reference-gallery-grid { grid-template-columns:1fr; } .container-spec-grid { grid-template-columns:1fr; gap:16px; } .container-spec-card { padding:26px 22px; } .product-reference-gallery-grid .product-reference-media:first-child { grid-column:auto; min-height:280px; } .product-reference-gallery-grid .product-reference-media:first-child img,.product-reference-gallery-grid .product-reference-media:first-child video { min-height:280px; } .product-reference-disclaimer { padding:25px 20px 60px; } }
@media (max-width:800px) { .technical-parameter-grid { grid-template-columns:1fr; } .product-reference-hybrid-inverter-mt-1085eh48l .product-reference-hero::before,.product-reference-hybrid-inverter-mt-150eh48l .product-reference-hero::before { background:linear-gradient(0deg,#020713e8 0%,#06142d55 52%,#06142d00 100%); } .product-reference-hybrid-inverter-mt-1085eh48l .product-reference-hero-image,.product-reference-hybrid-inverter-mt-150eh48l .product-reference-hero-image { object-position:center center; } .product-reference-hybrid-inverter-mt-1085eh48l .product-template-hero-copy,.product-reference-hybrid-inverter-mt-150eh48l .product-template-hero-copy { background:#020d24cc; padding:24px; border-radius:12px; } }
.product-reference-evse827-7kw-ac-charger .product-template-overview,.product-reference-evse827-7kw-ac-charger .product-reference-story,.product-reference-evse827-7kw-ac-charger .product-reference-scenarios { display:none; }
.brand-image img,.admin-top .brand img { filter:none !important; }
.product-reference-evse827-7kw-ac-charger .product-reference-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.product-reference-evse827-7kw-ac-charger .product-reference-gallery-grid .product-reference-media,
.product-reference-evse827-7kw-ac-charger .product-reference-gallery-grid .product-reference-media:first-child { grid-column:auto; min-height:0; height:auto; background:#fff; }
.product-reference-evse827-7kw-ac-charger .product-reference-gallery-grid .product-reference-media img { width:100%; height:auto; min-height:0; object-fit:contain; display:block; }
@media (max-width:520px) { .container-spec-card dl>div { grid-template-columns:1fr; gap:5px; padding:13px 0; } .container-spec-summary { min-height:0; } }
@media (min-width:761px) {
  body.product-detail-page .product-template-hero-copy { width:min(86vw,1180px); max-width:none; }
  body.product-detail-page .product-template-hero-copy h1 { font-size:clamp(4rem,5.4vw,6.8rem); white-space:nowrap; word-break:keep-all; }
}
@media (max-width:760px) {
body.product-detail-page .product-template-hero-copy h1 { white-space:normal; word-break:break-word; }
/* About / story / sustainability use the culture banner in place of the
   solution middle banner; keep the original top hero and hide only the
   duplicate solution sections that followed it. */
body.product-detail-page .about-culture-middle ~ .product-template-related { display:none !important; }
body.product-detail-page:has(.about-culture-middle) .product-template-related { display:none !important; }
body.product-detail-page:has(.about-culture-middle) .product-template-scenarios { display:none !important; }
body:has(.about-culture-middle) .product-template-scenarios { display:none !important; }
}

/* Keep the Google sign-in action compact within the lead form. */
.lead-google-gate .lead-google-button,
.lead-google-gate .button-google {
  width: fit-content !important;
  min-width: 240px;
  max-width: 100%;
  align-self: flex-start;
}

@media (max-width:760px) {
  .lead-google-gate .lead-google-button,
  .lead-google-gate .button-google {
    width: fit-content !important;
    min-width: 0;
  }
}
.nav-dropdown:hover summary::after,.nav-dropdown[open] summary::after { content:''; display:block; position:absolute; left:0; right:0; bottom:-1px; height:3px; background:#1263b8; }
.nav-dropdown:hover > .dropdown-panel,.nav-dropdown[open] > .dropdown-panel { display:block !important; }
.globe-icon { display:inline-block !important; width:25px; height:25px; border:0 !important; border-radius:0 !important; font-size:0 !important; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }

/* 2026 redesign: public experience aligned to the approved energy-site reference. */
.brand-image img { width:150px; height:auto; display:block; filter:brightness(0) invert(1); }.site-header { height:72px; padding-top:0; padding-bottom:0; color:#fff; border-bottom-color:#ffffff35; }.site-header.is-scrolled { height:64px; padding-top:0; padding-bottom:0; background:#13211ee8; }.immersive-home { max-width:none; padding:0; background:#f4f5f1; color:#17201b; }.hero-showcase { position:relative; height:100svh; min-height:680px; overflow:hidden; color:#fff; }.hero-media { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }.hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,#07110db8 0%,#07110d40 55%,#07110d1a 100%),linear-gradient(0deg,#07110d70,transparent 45%); }.hero-copy { position:absolute; left:max(5vw,calc((100vw - 1240px)/2)); bottom:16vh; max-width:780px; }.hero-kicker { font-size:.72rem; letter-spacing:.18em; margin:0 0 24px; }.hero-copy h1 { font-size:clamp(3rem,6.5vw,6.6rem); line-height:.98; letter-spacing:-.055em; font-weight:500; margin:0 0 24px; }.hero-summary { font-size:1.05rem; max-width:560px; line-height:1.65; margin-bottom:34px; }.hero-link { display:inline-flex; gap:52px; align-items:center; border:1px solid #ffffffa0; border-radius:999px; padding:14px 18px; }.hero-controls { position:absolute; left:max(5vw,calc((100vw - 1240px)/2)); right:max(5vw,calc((100vw - 1240px)/2)); bottom:34px; display:flex; align-items:center; gap:12px; }.hero-controls button { width:74px; padding:10px 0; color:#ffffff90; background:transparent; border:0; border-top:1px solid #ffffff55; text-align:left; cursor:pointer; }.hero-controls button.active { color:#fff; border-color:#8ee7b4; }.hero-controls .pause { width:auto; margin-left:auto; border:1px solid #ffffff70; border-radius:50%; width:38px; height:38px; text-align:center; }.sunevo-section,.projects-showcase { max-width:1240px; margin:auto; padding:130px 32px; }.section-heading { display:grid; grid-template-columns:180px 1fr auto; gap:30px; align-items:start; margin-bottom:72px; }.section-heading div { display:flex; gap:12px; align-items:center; font-size:.78rem; text-transform:uppercase; letter-spacing:.12em; color:#64726a; }.section-heading div span { color:#25935b; }.section-heading h2 { font-size:clamp(2.6rem,5vw,5rem); line-height:1; letter-spacing:-.055em; font-weight:500; margin:0; }.section-heading>a { padding-top:10px; color:#286744; }.solution-list { border-top:1px solid #ccd2cc; }.solution-list>a { display:grid; grid-template-columns:90px 1fr 1fr; gap:30px; padding:30px 0; border-bottom:1px solid #ccd2cc; align-items:center; transition:padding .25s,background .25s; }.solution-list>a:hover { padding-left:18px; background:#e9ede8; }.solution-list span { color:#2b9960; font-size:.78rem; }.solution-list h3 { font-size:1.8rem; margin:0; font-weight:500; }.solution-list p { color:#677168; line-height:1.55; max-width:470px; }.product-showcase { display:grid; grid-template-columns:1.08fr .92fr; min-height:760px; background:#13211e; color:#fff; }.product-visual { background:linear-gradient(135deg,#0002,#0007),url('/assets/home/home-hero-03.webp') center/cover; }.product-copy { padding:110px clamp(40px,8vw,120px); display:flex; flex-direction:column; justify-content:center; }.product-copy h2,.about-showcase h2 { font-size:clamp(3rem,5.5vw,5.5rem); letter-spacing:-.06em; line-height:.98; margin:18px 0 30px; font-weight:500; }.product-copy>p { color:#c7d1ca; line-height:1.7; }.product-copy ul { list-style:none; padding:0; margin:50px 0 0; border-top:1px solid #ffffff2b; }.product-copy li { border-bottom:1px solid #ffffff2b; }.product-copy li a { display:block; padding:18px 0; }.about-showcase { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:end; }.about-showcase>div>p:not(.eyebrow) { max-width:540px; color:#657067; line-height:1.7; }.outline-link { display:inline-block; margin-top:24px; border-bottom:1px solid #287049; padding-bottom:8px; }.metrics { display:grid; grid-template-columns:1fr 1fr; }.metrics article { border-top:1px solid #cbd2cc; padding:28px 10px; }.metrics strong { display:block; font-size:3.5rem; font-weight:500; }.metrics span { color:#68736a; }.projects-showcase { background:#e9ede7; max-width:none; padding-left:max(32px,calc((100vw - 1240px)/2)); padding-right:max(32px,calc((100vw - 1240px)/2)); }.project-track { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }.project-track>a { overflow:hidden; }.project-image { aspect-ratio:1.28; background-size:cover; background-position:center; transition:transform .5s; }.project-track>a:hover .project-image { transform:scale(1.025); }.project-one { background-image:linear-gradient(135deg,#29413555,#0002),url('/assets/home/home-hero-03.webp'); }.project-two { background-image:linear-gradient(135deg,#1f523855,#0002),url('/assets/home/home-hero-03.webp'); background-position:30% center; }.project-three { background-image:linear-gradient(135deg,#42532d55,#0002),url('/assets/home/home-hero-03.webp'); background-position:70% center; }.project-track small { display:block; color:#68736a; letter-spacing:.1em; font-size:.66rem; margin-top:18px; }.project-track h3 { font-size:1.4rem; font-weight:500; margin:8px 0; }
@media (max-width:1100px) { nav { gap:12px; font-size:.76rem; }.header-actions { gap:12px; }.brand-image img { width:120px; }.section-heading { grid-template-columns:120px 1fr; }.section-heading>a { grid-column:2; }.product-showcase { grid-template-columns:1fr; }.product-visual { min-height:520px; } }
@media (max-width:760px) { .site-header { height:auto; min-height:68px; }.site-header nav { padding:14px 0 6px; }.hero-showcase { min-height:720px; }.hero-copy { left:20px; right:20px; bottom:140px; }.hero-copy h1 { font-size:clamp(2.7rem,13vw,4.3rem); }.hero-controls { left:20px; right:20px; }.sunevo-section,.projects-showcase { padding:84px 20px; }.section-heading { grid-template-columns:1fr; gap:14px; }.section-heading>a { grid-column:auto; }.solution-list>a { grid-template-columns:42px 1fr; }.solution-list p { grid-column:2; margin-top:0; }.product-visual { min-height:380px; }.product-copy { padding:80px 20px; }.about-showcase { grid-template-columns:1fr; gap:60px; }.project-track { grid-template-columns:1fr; }.brand-image img { width:110px; } }

/* Mega menu matching the supplied SunEvo interaction: full-width white panel with list/detail split. */
.site-header { background:#fff; color:#17191a; border-bottom:1px solid #dfe1e2; }.site-header nav,.site-header .header-actions { color:#17191a; }.site-header .brand-image img { filter:none; }.site-header .login { border-color:#1d1f20; color:#17191a; }.site-header nav a:hover,.site-header .header-actions a:hover,.site-header nav summary:hover { color:#1d62ad; }.site-header.is-scrolled { background:#fff; border-color:#dfe1e2; }.mega-overlay { position:fixed; z-index:9; left:0; right:0; top:72px; min-height:calc(100vh - 72px); display:grid; grid-template-columns:minmax(310px,30%) 1fr; background:#fff; color:#18191a; box-shadow:0 22px 40px #0001; border-top:1px solid #e4e6e7; }.mega-side { padding:108px 7vw 56px; border-right:1px solid #dfe1e2; overflow:auto; }.mega-side p { color:#c6c8ca; font-size:1.2rem; margin:0 0 30px; }.mega-side a { display:block; padding:11px 0; font-size:1.1rem; font-weight:600; color:#414346; }.mega-side a:hover,.mega-side a.active { color:#1d62ad; }.mega-content { display:grid; grid-template-columns:minmax(340px,1fr) minmax(360px,48%); gap:42px; align-items:center; padding:80px 7vw; }.mega-kicker { color:#b5b8ba; font-size:1.1rem; margin:0 0 20px; }.mega-content h2 { font-size:clamp(2rem,3vw,3.3rem); margin:0 0 28px; letter-spacing:-.045em; }.mega-content>div>p:not(.mega-kicker) { max-width:520px; color:#62676a; line-height:1.65; font-size:1.05rem; }.mega-actions { margin-top:38px; display:flex; flex-direction:column; align-items:flex-start; gap:14px; }.mega-actions a { border:2px solid #2c6fc0; color:#2c6fc0; border-radius:999px; padding:12px 22px; min-width:270px; display:flex; justify-content:space-between; font-size:1rem; }.mega-actions a.mega-primary { background:#2467b4; color:#fff; }.mega-image { min-height:330px; border-radius:24px; background-size:cover; background-position:center; }.mega-solar { background-image:linear-gradient(135deg,#0000,#0002),url('/assets/home/home-hero-03.webp'); }.nav-dropdown[open] summary { color:#1d62ad; }.nav-dropdown[open] summary:after { content:''; display:block; height:3px; background:#2467b4; position:absolute; left:0; right:0; bottom:-25px; }.nav-dropdown .dropdown-panel { display:none; }
@media (max-width:900px) { .mega-overlay { grid-template-columns:1fr; top:120px; min-height:calc(100vh - 120px); overflow:auto; }.mega-side { padding:30px 24px; border-right:0; border-bottom:1px solid #dfe1e2; max-height:310px; }.mega-side a { font-size:.95rem; display:inline-block; width:48%; padding-right:15px; }.mega-content { grid-template-columns:1fr; padding:40px 24px 70px; }.mega-image { min-height:220px; } }
.language-trigger { display:inline-flex; align-items:center; gap:9px; border:0; background:none; color:inherit; cursor:pointer; font:inherit; font-size:.95rem; padding:8px 0; }.globe-icon { display:grid; place-items:center; width:25px; height:25px; border:1.5px solid currentColor; border-radius:50%; font-size:1.35rem; line-height:1; }.language-overlay { position:fixed; z-index:9; left:0; right:0; top:72px; min-height:calc(100vh - 72px); padding:92px max(5vw,calc((100vw - 1280px)/2)) 72px; display:grid; grid-template-columns:1fr 1.55fr 1.5fr 1fr 1.2fr 1fr; gap:38px; overflow:auto; background:#fff; color:#2e3032; border-top:1px solid #dfe1e2; box-shadow:0 22px 40px #0001; }.language-column h3 { color:#8f9295; font-size:1.1rem; font-weight:500; margin:0 0 26px; }.language-column a { display:flex; gap:9px; align-items:center; white-space:nowrap; padding:8px 0; color:#3e4144; font-size:.95rem; }.language-column a:hover { color:#1f64b0; }.language-column i { font-style:normal; font-size:1.15rem; width:25px; text-align:center; }.language-column .language-flag { width:25px; height:17px; object-fit:contain; display:block; flex:none; }.language-trigger[aria-expanded="true"] { color:#1f64b0; }.language-trigger[aria-expanded="true"]:after { content:''; position:absolute; right:0; bottom:-21px; left:0; height:3px; background:#2467b4; }
@media (max-width:1100px) { .language-overlay { grid-template-columns:repeat(3,1fr); gap:24px; padding:48px 32px; } }.language-overlay[hidden],.mega-overlay[hidden] { display:none; }
@media (max-width:760px) { .language-overlay { top:120px; min-height:calc(100vh - 120px); grid-template-columns:repeat(2,1fr); padding:30px 20px; gap:20px; }.language-column a { white-space:normal; font-size:.82rem; } }

/* Approved MoveTo palette: white + blue. Keep the dark-green NengBox visual out of the new site. */
:root { color-scheme: light; background:#fff; color:#17202b; scrollbar-gutter:stable; }
body { background:#fff; color:#17202b; }
.site-header { color:#17202b; background:#fff; border-bottom-color:#dce5ef; }
.site-header nav,.site-header .header-actions { color:#17202b; }
.site-header.is-scrolled { background:#fff; border-color:#dce5ef; }
.site-header nav a:hover,.site-header .header-actions a:hover,.site-header nav summary:hover { color:#1263b8; }
.brand span,.eyebrow,.hero-kicker,.mega-side a:hover,.mega-side a.active { color:#1263b8; }
.login { border-color:#1263b8; color:#1263b8; }
.button { background:#1263b8; color:#fff; }
.button:hover { background:#0b4f98; }
.scroll-cue { color:#62778d; }.scroll-cue i { background:#1263b8; }.scroll-cue i:after { border-right-color:#1263b8; }
.hero-shade { background:linear-gradient(90deg,#061a32c7 0%,#123d6b55 55%,#123d6b20 100%),linear-gradient(0deg,#061a324f,transparent 45%); }
.hero-controls button.active { border-color:#69a9e8; }.hero-controls .pause { border-color:#ffffffa8; }
.immersive-home { background:#fff; color:#17202b; }
.sunevo-section,.projects-showcase { background:#fff; }.section-heading div span,.section-heading>a,.outline-link { color:#1263b8; }.section-heading>a { color:#1263b8; }
.solution-list { border-color:#d4e0ec; }.solution-list>a { border-color:#d4e0ec; }.solution-list>a:hover { background:#f0f6fc; }.solution-list span { color:#1263b8; }.solution-list p { color:#65778a; }
.product-showcase { background:#1263b8; color:#fff; }.product-copy>p { color:#d8e9f8; }.product-copy ul,.product-copy li { border-color:#ffffff4d; }.product-copy li a:hover { color:#bfe0ff; }
.product-showcase { min-height:760px; grid-template-columns:1.08fr .92fr; }
.product-carousel-media { position:relative; min-height:760px; overflow:hidden; background:#0b2743; }
.product-carousel-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.product-carousel-media::before { content:''; position:absolute; z-index:1; inset:0; background:linear-gradient(135deg,#0002,#0007); pointer-events:none; }
.product-carousel-image.is-next { opacity:0; transform:scale(1.045); filter:blur(10px); pointer-events:none; }
.product-carousel-image.is-current { z-index:0; }
.product-carousel-image.is-next { z-index:2; }
.product-carousel-media.is-changing .product-carousel-image.is-next { animation:product-mist-crossfade 1.35s cubic-bezier(.22,.61,.36,1) both; }
@keyframes product-mist-crossfade { 0% { opacity:0; transform:scale(1.045); filter:blur(12px); } 28% { opacity:.42; filter:blur(8px); } 72% { opacity:.92; filter:blur(2px); } 100% { opacity:1; transform:scale(1); filter:blur(0); } }
.product-carousel-copy { padding:clamp(48px,8vw,120px); display:flex; flex-direction:column; justify-content:space-between; min-height:760px; }
.product-carousel-copy.is-changing > div:first-child { animation:product-copy-drift 1.05s cubic-bezier(.22,.61,.36,1) both; }
@keyframes product-copy-drift { 0% { opacity:.18; transform:translateY(12px); filter:blur(5px); } 58% { opacity:.82; filter:blur(1px); } 100% { opacity:1; transform:translateY(0); filter:blur(0); } }
.product-carousel-copy h2 { font-size:clamp(3rem,5.5vw,5.5rem); letter-spacing:-.06em; line-height:.98; margin:18px 0 30px; font-weight:500; max-width:680px; }
.product-carousel-copy p[data-product-description] { color:#d8e9f8; line-height:1.7; max-width:650px; }
.product-carousel-link { display:inline-flex; gap:52px; align-items:center; margin-top:34px; border:1px solid #ffffff99; border-radius:999px; padding:14px 18px; }
.product-carousel-controls { display:flex; align-items:center; gap:20px; color:#d8e9f8; border-top:1px solid #ffffff4d; padding-top:24px; }
.product-carousel-controls button { width:48px; height:48px; border:1px solid #ffffff99; border-radius:50%; background:transparent; color:#fff; font-size:1.25rem; cursor:pointer; transition:background .2s,color .2s; }
.product-carousel-controls button:hover,.product-carousel-controls button:focus-visible { background:#fff; color:#1263b8; }
.product-carousel-controls span { font-size:.8rem; letter-spacing:.12em; }.product-carousel-controls b { font-size:1.05rem; font-weight:500; }
@media (max-width:760px) {
  .product-showcase { grid-template-columns:1fr; }
  .product-carousel-media { min-height:440px; }
  .product-carousel-copy { min-height:480px; padding:58px 22px 42px; }
  .product-carousel-copy h2 { font-size:clamp(2.7rem,12vw,4.2rem); }
  .product-carousel-link { margin-top:24px; }
}
.about-showcase>div>p:not(.eyebrow),.metrics span { color:#65778a; }.metrics article { border-color:#d4e0ec; }.metrics strong { color:#1263b8; }
.projects-showcase { background:#f1f6fb; }.project-track small { color:#65778a; }
.feature-card,.content-card { border-color:#d7e3ee; background:#fff; }.feature-card:hover,.content-card:hover { background:#f1f6fb; border-color:#6ba7dc; }.feature-card span,.content-card span,.feature-card b,.content-card b { color:#1263b8; }
footer { color:#65778a; border-top-color:#d7e3ee; }
.mega-overlay,.language-overlay { color:#17202b; background:#fff; border-color:#dce5ef; }.mega-side { border-color:#dce5ef; }.mega-side p,.mega-kicker { color:#9aa9b8; }.mega-content>div>p:not(.mega-kicker) { color:#65778a; }.mega-actions a { color:#1263b8; border-color:#1263b8; }.mega-actions a.mega-primary { background:#1263b8; color:#fff; }
.admin-shell { min-height:100vh; background:radial-gradient(circle at 82% -10%,#eaf4fd 0,#f6f9fc 32%,#eef3f8 100%); color:#17202b; }.admin-top { background:linear-gradient(102deg,#0d58a9,#1673ca); box-shadow:0 8px 24px #0d4f9826; position:relative; z-index:2; }.admin-primary { background:#1263b8; color:#fff; }.admin-sidebar a.active,.admin-sidebar a:hover { color:#1263b8; }.admin-stats .status-dot { color:#1263b8; }.type-pill.solution { background:#e8f2fc; color:#1263b8; }.quick-link > span { background:#e8f2fc; color:#1263b8; }
.admin-top .brand img { display:block; width:132px; height:auto; filter:brightness(0) invert(1); }.admin-logout { color:#fff; font-size:.8rem; text-decoration:none; padding-left:16px; border-left:1px solid #ffffff66; }
.admin-content-main { max-width:1380px; }.content-toolbar { display:flex; justify-content:space-between; align-items:center; gap:22px; margin:42px 0 16px; padding:12px 14px; border:1px solid #dce8f2; border-radius:14px; background:#fff; box-shadow:0 10px 26px #17365b0a; }.content-tabs { display:flex; gap:4px; }.content-tabs button { border:0; border-radius:8px; background:transparent; color:#708294; padding:10px 12px; font:inherit; cursor:pointer; }.content-tabs button.is-active { background:#e8f2fc; color:#1263b8; font-weight:650; }.content-tabs span { margin-left:5px; color:#9aabba; font-size:.72rem; }.content-controls { display:flex; gap:9px; }.content-search { display:flex; align-items:center; gap:8px; min-width:210px; border:1px solid #dce8f2; border-radius:8px; padding:0 10px; color:#92a1b0; }.content-search input { width:100%; border:0; outline:0; padding:10px 0; font:inherit; }.content-controls select { border:1px solid #dce8f2; border-radius:8px; padding:0 10px; color:#52687c; background:#fff; }.content-table-panel { padding:0; overflow:hidden; }.content-table-head,.content-table-row { display:grid; grid-template-columns:minmax(300px,1.8fr) 110px 140px 120px 130px 22px; align-items:center; gap:18px; padding:16px 24px; }.content-table-head { color:#91a0ae; font-size:.65rem; letter-spacing:.1em; border-bottom:1px solid #e5edf4; }.content-table-row { color:#607487; text-decoration:none; border-bottom:1px solid #edf2f6; transition:background .18s ease; }.content-table-row:last-child { border-bottom:0; }.content-table-row:hover { background:#f7fbff; }.content-title { display:flex; align-items:center; gap:12px; }.content-title b,.content-title small { display:block; }.content-title b { color:#1b2a39; }.content-title small { color:#9aa9b7; margin-top:4px; font-size:.72rem; }.content-thumb { display:grid; place-items:center; width:42px; height:42px; border-radius:11px; color:#fff; font-weight:700; }.thumb-blue { background:linear-gradient(135deg,#1263b8,#5ea9ec); }.thumb-green { background:linear-gradient(135deg,#239271,#8ac9a3); }.thumb-orange { background:linear-gradient(135deg,#d68b36,#f4c98b); }.status-chip { justify-self:start; padding:5px 9px; border-radius:20px; font-size:.7rem; }.status-chip.published { color:#168255; background:#e7f7ef; }.status-chip.review { color:#1263b8; background:#e8f2fc; }.status-chip.draft { color:#92702a; background:#fff5df; }.content-footer { display:flex; justify-content:space-between; align-items:center; margin-top:16px; color:#8b9bab; font-size:.76rem; }.content-footer button { border:1px solid #dce8f2; background:#fff; color:#718496; padding:7px 10px; cursor:pointer; }.content-footer .current { color:#1263b8; background:#e8f2fc; }
.content-toolbar { box-shadow:0 16px 34px #17365b10; }.content-table-row { min-height:76px; }.content-table-row > span:not(.type-pill):not(.row-arrow) { font-size:.78rem; }.content-footer button:first-child,.content-footer button:last-child { border-radius:7px; }.content-footer button:first-child { margin-left:8px; }
.admin-top { background:rgba(255,255,255,.94); color:#17202b; border-bottom:1px solid #dfeaf3; box-shadow:0 6px 24px #17365b0d; backdrop-filter:blur(18px); }.admin-top .brand img { filter:none; width:142px; }.admin-divider { background:#d9e5ee; }.admin-name { color:#6d8193; font-weight:700; letter-spacing:.2em; }.admin-user { color:#6d8193; }.admin-language { color:#6d8193; }.admin-language button { color:#6d8193; }.admin-language button.active { color:#1263b8; }.admin-avatar { background:#e8f2fc; color:#1263b8; box-shadow:inset 0 0 0 1px #c9def1; }.admin-logout { color:#1263b8; border-left-color:#d9e5ee; }.admin-top-actions { gap:14px; }
.button-icon { display:inline-grid; place-items:center; width:18px; height:18px; margin-right:6px; color:#dff0ff; }
.admin-primary,.admin-secondary,.admin-logout,.quick-link,.content-tabs button,.content-footer button { transition:transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease; }.admin-primary { position:relative; overflow:hidden; border-radius:11px; padding:13px 20px; box-shadow:0 9px 18px #1263b838, inset 0 1px 0 #ffffff33; }.admin-primary::after { content:''; position:absolute; top:-50%; left:-35%; width:24%; height:220%; background:#ffffff55; transform:rotate(24deg) translateX(-220px); transition:transform .5s ease; }.admin-primary:hover { transform:translateY(-3px); box-shadow:0 14px 24px #1263b84d, inset 0 1px 0 #ffffff44; }.admin-primary:hover::after { transform:rotate(24deg) translateX(520px); }.admin-secondary { box-shadow:0 5px 12px #17365b0b; }.admin-secondary:hover { transform:translateY(-2px); border-color:#9fc4e3; color:#1263b8; box-shadow:0 9px 18px #17365b16; }.admin-logout:hover { transform:translateX(2px); color:#0b4f97; }
.admin-stats article,.admin-panel { position:relative; transition:transform .2s ease, box-shadow .2s ease; }.admin-stats article:hover,.admin-panel:hover { transform:translateY(-3px); box-shadow:0 22px 42px #17365b18; }.admin-stats article::before,.admin-panel::before { content:''; position:absolute; inset:0; pointer-events:none; border-radius:inherit; box-shadow:inset 0 1px 0 #ffffffcc; }.quick-link:hover { transform:translateX(3px); box-shadow:0 6px 16px #1263b812; }.content-tabs button:hover { color:#1263b8; background:#f3f8fd; }.content-table-row:hover { box-shadow:inset 4px 0 0 #1263b8; }.content-footer button:hover { border-color:#a7c8e2; color:#1263b8; transform:translateY(-1px); }
.nav-glyph { filter:drop-shadow(0 1px 1px #17365b18); }.admin-sidebar a.active { box-shadow:0 7px 17px #1263b81c, inset 0 1px 0 #ffffff; }.workspace-mark { box-shadow:0 7px 15px #1263b83b, inset 0 1px 0 #ffffff55; }
@media (max-width:900px) { .admin-layout { grid-template-columns:1fr; }.admin-sidebar { box-shadow:0 8px 20px #17365b10; }.admin-main::before { inset:10px 12px auto; }.content-toolbar { align-items:stretch; flex-direction:column; }.content-tabs { overflow:auto; }.content-controls { width:100%; }.content-search { flex:1; }.content-table-panel { overflow-x:auto; }.content-table-head,.content-table-row { min-width:860px; } }
.admin-top { background:rgba(255,255,255,.96); color:#17202b; border-bottom:1px solid #dfeaf3; box-shadow:0 6px 24px #17365b0d; backdrop-filter:blur(18px); }.admin-top .brand img { filter:none; }.admin-divider { background:#d9e5ee; }.admin-name,.admin-user { color:#6d8193; }.admin-language,.admin-language button { color:#6d8193; }.admin-language button.active { color:#1263b8; }.admin-avatar { background:#e8f2fc; color:#1263b8; }.admin-logout { color:#1263b8; border-left-color:#d9e5ee; }.button-icon { display:inline-grid; place-items:center; width:18px; height:18px; margin-right:6px; color:#dff0ff; }
.admin-divider { width:1px; height:24px; background:#ffffff55; }.admin-top-actions { margin-left:auto; display:flex; align-items:center; gap:16px; }.admin-language { display:flex; align-items:center; gap:6px; color:#dceeff; font-size:.72rem; }.admin-language button { border:0; background:transparent; color:#dceeff; cursor:pointer; font:inherit; padding:4px; }.admin-language button.active { color:#fff; font-weight:700; }.admin-avatar { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:#fff; color:#1263b8; font-weight:700; font-size:.75rem; }.admin-workspace { display:flex; align-items:center; gap:10px; padding:10px 12px 24px; border-bottom:1px solid #e3ecf4; margin-bottom:20px; }.workspace-mark { display:grid; place-items:center; width:32px; height:32px; border-radius:10px; background:#1263b8; color:#fff; font-weight:700; }.admin-workspace strong,.admin-workspace small { display:block; }.admin-workspace strong { font-size:.82rem; }.admin-workspace small { color:#8a9aab; font-size:.68rem; margin-top:3px; }.workspace-caret { margin-left:auto; color:#8a9aab; }.nav-glyph { display:inline-grid; place-items:center; width:22px; margin-right:9px; color:#8495a6; font-size:.9rem; }.admin-sidebar a.active .nav-glyph,.admin-sidebar a:hover .nav-glyph { color:#1263b8; }.nav-count { float:right; min-width:19px; padding:2px 5px; border-radius:20px; background:#e8f2fc; color:#1263b8; text-align:center; font-size:.65rem; }.sidebar-footer { display:flex; gap:9px; align-items:center; margin:36px 10px 0; padding:12px 10px; border:1px solid #e0ebf4; border-radius:12px; background:#f7fbff; }.sidebar-footer strong,.sidebar-footer small { display:block; }.sidebar-footer strong { font-size:.68rem; }.sidebar-footer small { color:#8a9aab; font-size:.62rem; margin-top:3px; }.status-pulse { width:8px; height:8px; flex:none; border-radius:50%; background:#30a66b; box-shadow:0 0 0 4px #30a66b1c; }
.admin-sidebar a { margin:5px 0; border:1px solid transparent; transition:background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.admin-sidebar a.active { border-color:#c9def1; background:#eaf4fd; box-shadow:0 5px 14px #1263b812; font-weight:650; }
.admin-sidebar a:hover:not(.active) { border-color:#e4edf5; background:#f7fbff; transform:translateX(2px); }
.admin-sidebar .sidebar-label + a { margin-top:8px; }
.admin-sidebar .sidebar-label:nth-of-type(2) { margin-top:30px; padding-top:22px; border-top:1px solid #e3ecf4; }
.admin-layout { grid-template-columns:248px minmax(0,1fr); }.admin-sidebar { background:rgba(255,255,255,.92); box-shadow:8px 0 26px #17365b08; padding:28px 18px; }.admin-main { position:relative; }.admin-main::before { content:''; position:absolute; inset:22px 28px auto; height:170px; border-radius:28px; background:linear-gradient(115deg,#ffffffaa,#e9f4ff66); pointer-events:none; z-index:0; }.admin-main > * { position:relative; z-index:1; }.admin-heading { padding:18px 8px 0; }.admin-heading h1 { font-size:clamp(2.25rem,4vw,3.35rem); }.admin-heading .eyebrow { letter-spacing:.19em; font-weight:700; }.admin-stats { gap:18px; }.admin-stats article { min-height:128px; position:relative; overflow:hidden; }.admin-stats article::after { content:''; position:absolute; right:-28px; bottom:-38px; width:110px; height:110px; border-radius:50%; background:#e8f2fc; opacity:.75; }.admin-stats strong,.admin-stats small,.admin-stats span { position:relative; z-index:1; }.admin-columns { gap:20px; }.admin-panel { box-shadow:0 18px 44px #17365b10; }.admin-review-panel,.admin-quick-panel { min-height:300px; }
.admin-main { padding-top:58px; }.admin-heading h1 { font-weight:650; letter-spacing:-.055em; }.admin-heading-actions { display:flex; gap:10px; }.admin-secondary { border:1px solid #d8e4ee; border-radius:9px; background:#fff; color:#52687c; padding:12px 16px; font:inherit; cursor:pointer; }.admin-primary { border-radius:9px; box-shadow:0 8px 18px #1263b82b; }.admin-panel,.admin-stats article { border-color:#dce8f2; box-shadow:0 12px 30px #17365b0d; }.admin-panel { border-radius:16px; }.panel-heading h2 { font-weight:650; }.queue-row { grid-template-columns:78px 1fr auto 18px; }.row-arrow { color:#9aaaba; }.quick-link { transition:background .18s ease, padding .18s ease; border-radius:10px; padding-inline:10px; }.quick-link:hover { background:#f4f9fd; padding-left:16px; }.quick-link em { margin-left:auto; color:#9aaaba; font-style:normal; }

/* Native hover fallback for the SunEvo-style full-width solution panel. */
.site-header:has(.nav-dropdown[data-menu]:hover) + .mega-overlay:not([hidden]),
body:has(.mega-overlay:hover) .mega-overlay:not([hidden]) { display:grid !important; }
body:has(.language-trigger:hover) .language-overlay:not([hidden]) { display:grid !important; }

/* SunEvo navigation dropdown: white surface, dark text, blue hover state.
   The panel touches the summary so moving the pointer into it never loses
   :hover and every child link remains clickable. */
.site-header .nav-dropdown { z-index:12; }
.site-header .nav-dropdown > .dropdown-panel {
  top:100%; left:50%; transform:translateX(-50%); min-width:280px;
  padding:14px 0; background:#fff; color:#17202b; border:1px solid #dce5ef;
  border-radius:0; box-shadow:0 18px 42px #17365b1c; backdrop-filter:none;
}
.site-header .nav-dropdown > .dropdown-panel::before {
  top:-7px; left:50%; width:12px; height:12px; background:#fff;
  border-left:1px solid #dce5ef; border-top:1px solid #dce5ef;
}
.site-header .nav-dropdown > .dropdown-panel a {
  display:block; padding:13px 22px; color:#263443; border-radius:0;
  line-height:1.35; white-space:nowrap;
}
.site-header .nav-dropdown > .dropdown-panel a:hover,
.site-header .nav-dropdown > .dropdown-panel a:focus-visible {
  background:#f0f6fc; color:#1263b8;
}
.site-header .nav-dropdown > .dropdown-panel small { color:#7d8b9a; }
.site-header .nav-dropdown:first-child > .dropdown-panel { display:none !important; }
.site-header .nav-dropdown > .dropdown-panel { display:none !important; }
.site-header .nav-dropdown:hover > .dropdown-panel,
.site-header .nav-dropdown[open] > .dropdown-panel { display:none !important; }
.site-header { z-index:30; }
.mega-overlay,.language-overlay { z-index:25; pointer-events:auto; }
.mega-overlay a,.language-overlay a { pointer-events:auto; }

/* Final interaction alignment: lift the content toward the header and give
   every language entry its own hit area above the page layers. */
.mega-content { align-items:start !important; padding-top:44px !important; padding-bottom:72px !important; }
.mega-image { margin-top:2px; }
.language-trigger { position:relative; z-index:61; }
.language-overlay { top:72px; z-index:60 !important; padding-top:46px; pointer-events:auto; isolation:isolate; }

/* Homepage hero carousel: three media-led slides aligned with NengBox. */
.hero-showcase .hero-slide { position:absolute; inset:0; opacity:0; visibility:hidden; transition:opacity .55s ease,visibility .55s ease; background-size:cover; background-position:center; }
.hero-showcase .hero-slide.is-active { opacity:1; visibility:visible; z-index:1; }
.hero-showcase .hero-controls { z-index:3; }

/* Keep the English mobile header on one stable row: language and sign-in
   stay aligned beside the brand while the primary menu scrolls below. */
@media (max-width:760px) {
  .site-header { align-items:center; min-width:0; }
  .site-header .brand { min-width:0; flex:0 1 auto; }
  .site-header .brand-image img { width:104px; }
  .site-header .header-actions { margin-left:auto; flex:0 0 auto; min-width:0; flex-wrap:nowrap; align-items:center; }
  .site-header .language-trigger { white-space:nowrap; flex:0 0 auto; }
  .site-header .login { white-space:nowrap; flex:0 0 auto; padding:8px 12px; font-size:.84rem; }
  .site-header nav { min-width:0; flex:0 0 100%; }
}
@media (max-width:380px) {
  .site-header { padding-left:14px; padding-right:14px; gap:10px; }
  .site-header .brand-image img { width:92px; }
  .site-header .header-actions { gap:8px; }
  .site-header .language-trigger { font-size:.82rem; gap:5px; }
  .site-header .globe-icon { width:21px; height:21px; }
  .site-header .login { padding:7px 10px; font-size:.78rem; }
}
.language-column a { position:relative; z-index:1; cursor:pointer; pointer-events:auto; }
/* Only the menu currently controlling the mega panel gets the blue rule. */
.site-header .nav-dropdown[open] summary::after { display:none !important; }
.site-header .nav-dropdown.is-menu-active summary::after { content:''; display:block !important; position:absolute; left:0; right:0; bottom:-1px; height:3px; background:#1263b8; }
.site-header .nav-dropdown.is-menu-active summary { color:#1263b8 !important; }
/* Keyboard/click fallback: focused controls keep the panel open while the
   pointer moves from the header into a child link. */
body:has(.nav-dropdown[data-menu]:focus-within) .mega-overlay:not([hidden]) { display:grid !important; }
body.menu-open { overflow:hidden; overscroll-behavior:none; }
.mega-close { display:none; }
@media (max-width:900px) {
  .about-culture-stage { min-height:560px; height:70vh; }
  .about-culture .culture-slide { padding:90px 44px; }
  .about-culture-stage::before { left:14px; }.about-culture-stage::after { right:14px; }
  .mega-overlay,.language-overlay { top:120px; min-height:0; max-height:calc(100dvh - 120px); overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; }
  .mega-overlay { display:block; }
  .mega-side { max-height:none; padding:26px 20px 20px; }
  .mega-content { display:block; padding:24px 20px 56px !important; }
  .mega-content h2 { font-size:2rem; }
  .mega-image { min-height:190px; margin-top:28px; }
    .mega-close { display:grid !important; place-items:center; position:fixed; top:130px; right:16px; z-index:200; width:42px; height:42px; border:1px solid #cbd9e6; border-radius:50%; background:#fff; color:#1263b8; font-size:25px; line-height:1; cursor:pointer; pointer-events:auto; touch-action:manipulation; -webkit-tap-highlight-color:transparent; }
  .language-overlay { padding:28px 20px 56px; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
}
.mega-actions a { transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease; }
.mega-actions a:hover,.mega-actions a:focus-visible,.mega-actions a.is-selected,.mega-actions a:active { background:#1263b8; border-color:#1263b8; color:#fff; transform:translateY(-1px); box-shadow:0 8px 18px #1263b82e; }
/* Global interaction rule: every primary action visibly responds to hover,
   keyboard focus and press, while retaining the white/blue MoveTo palette. */
.hero-link,.login,.language-trigger,.button,.outline-link,.hero-controls button,.auth-actions button,.content-card b { transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.hero-link:hover,.hero-link:focus-visible,.hero-link:active { background:#1263b8; border-color:#1263b8; color:#fff; box-shadow:0 8px 20px #061a324d; transform:translateY(-1px); }
.site-header .header-actions .login:hover,.site-header .header-actions .login:focus-visible,.site-header .header-actions .login:active { background:#1263b8; border-color:#1263b8; color:#fff !important; box-shadow:0 6px 16px #1263b833; transform:translateY(-1px); }
.language-trigger:hover,.language-trigger:focus-visible,.language-trigger:active { color:#1263b8; }
.outline-link:hover,.outline-link:focus-visible,.outline-link:active { color:#fff; background:#1263b8; border-color:#1263b8; padding-left:18px; padding-right:18px; border-radius:999px; }
.auth-actions button:hover,.auth-actions button:focus-visible,.auth-actions button:active { background:#1263b8; border-color:#1263b8; color:#fff; }
.site-footer { display:block; width:100%; max-width:none; margin:0; padding:0; box-sizing:border-box; background:#f3f6f9; color:#17202b; border-top:1px solid #d7e3ee; font-size:.86rem; }
.footer-main { max-width:1440px; margin:0 auto; padding:72px 5vw 64px; display:grid; grid-template-columns:1.35fr 1.2fr 1.25fr .85fr .9fr 1.1fr; gap:44px; }
.footer-column,.footer-column-group { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:13px; }
.footer-column h3 { margin:0 0 9px; color:#8192a2; font-size:.83rem; font-weight:500; }
.footer-column a { min-width:0; color:#1d2c3b; line-height:1.25; overflow-wrap:anywhere; transition:color .18s ease,transform .18s ease; }
.footer-column a:hover,.footer-column a:focus-visible { color:#1263b8; transform:translateX(2px); }
.footer-column-group { gap:34px; }
.footer-brand { display:flex; flex-direction:column; align-items:flex-start; gap:14px; }
.footer-brand img { width:170px; height:auto; margin-bottom:20px; }
.footer-brand a { width:185px; box-sizing:border-box; display:flex; justify-content:space-between; align-items:center; padding:10px 16px; border:1px solid #cbd8e4; border-radius:999px; color:#1263b8; background:#fff; transition:background-color .18s ease,color .18s ease,border-color .18s ease; }
.footer-brand a:hover,.footer-brand a:focus-visible { color:#fff; border-color:#1263b8; background:#1263b8; }
.footer-bottom { max-width:1440px; margin:0 auto; padding:18px 5vw 24px; border-top:1px solid #d7e3ee; display:flex; justify-content:space-between; align-items:center; gap:24px; color:#65778a; }
.footer-socials { display:flex; align-items:center; gap:18px; }
.footer-social { width:52px; height:52px; border:0; border-radius:0; display:grid; place-items:center; background:transparent; color:#050505; font-size:1.9rem; font-weight:700; line-height:1; text-decoration:none; transition:color .18s ease,transform .18s ease; }
.footer-social svg { width:30px; height:30px; display:block; overflow:visible; transition:transform .22s ease; }
.footer-social:hover svg,.footer-social:focus-visible svg { transform:scale(1.1); }
.wechat-social-icon { width:30px; height:30px; display:block; }
.footer-social:hover,.footer-social:focus-visible,.footer-social:active { background:transparent; border-color:transparent; color:#1263b8; transform:translateY(-2px); box-shadow:none; }
.cookie-consent { position:fixed; z-index:120; inset:0; width:100%; height:100%; box-sizing:border-box; display:grid; place-items:center; padding:24px; background:#0b172899; color:#17202b; }
.cookie-consent::before { content:""; position:absolute; inset:0; backdrop-filter:blur(2px); }
.cookie-consent > * { position:relative; }
.cookie-close { position:absolute; z-index:1; top:20px; right:30px; width:42px; height:42px; border:0; background:transparent; color:#555; font-size:2.4rem; line-height:1; cursor:pointer; }
.cookie-consent[hidden],.cookie-consent.is-dismissed { display:none !important; }
.cookie-mark { width:40px; height:40px; display:grid; place-items:center; border:2px solid #1263b8; border-radius:50%; color:#1263b8; font-size:1.65rem; }
.cookie-copy { width:min(1340px,100%); padding:70px 58px 26px; border:2px solid #111; border-radius:34px; background:#fff; box-shadow:0 22px 60px #0003; }.cookie-copy h2 { display:none; }.cookie-copy p { margin:0; color:#666; line-height:1.65; font-size:clamp(1rem,1.6vw,1.35rem); }.cookie-copy a { color:#1263b8; font-weight:700; text-decoration:underline; text-underline-offset:3px; }.cookie-actions { width:min(1340px,100%); display:flex; align-items:center; justify-content:flex-end; gap:28px; margin-top:-100px; padding:0 58px 28px; }.cookie-actions button { min-width:260px; min-height:84px; padding:16px 28px; border:2px solid #111; border-radius:45px; background:#fff; color:#111; font:600 1.25rem inherit; cursor:pointer; white-space:nowrap; }.cookie-actions button:hover,.cookie-actions button:focus-visible { background:#f0f4f8; }.cookie-actions .cookie-accept,.cookie-actions button[data-cookie-action="necessary"] { border-color:#000; background:#000; color:#fff; }.cookie-preferences { display:flex; gap:18px; margin-top:12px; padding-top:10px; border-top:1px solid #dce5ef; color:#52687c; font-size:.82rem; }.cookie-preferences input { accent-color:#1263b8; }
.footer-legal-links { display:flex; flex-wrap:wrap; gap:10px 18px; margin-top:2px; }.footer-legal-links a { width:auto; padding:0; border:0; border-radius:0; color:#1263b8; background:transparent; font-size:.82rem; }.footer-legal-links a:hover,.footer-legal-links a:focus-visible { color:#0b4f98; background:transparent; text-decoration:underline; }
.legal-document { max-width:980px; margin:0 auto; padding:132px 32px 140px; color:#17202b; }.legal-document h1 { max-width:900px; color:#17202b; font-size:clamp(3rem,7vw,6rem); line-height:.98; letter-spacing:-.06em; margin:18px 0 24px; }.legal-lede { max-width:720px; color:#65778a; font-size:1.15rem; line-height:1.7; }.legal-updated { margin-top:28px; color:#8aa0b4; font-size:.85rem; }.legal-sections { margin-top:76px; border-top:1px solid #d7e3ee; }.legal-sections section { display:grid; grid-template-columns:80px 1fr; gap:24px; padding:34px 0; border-bottom:1px solid #d7e3ee; }.legal-sections section>span { color:#1263b8; font-size:.8rem; letter-spacing:.14em; }.legal-sections h2 { margin:0 0 12px; color:#17202b; font-size:clamp(1.45rem,2.2vw,2rem); }.legal-sections p { margin:0; color:#65778a; line-height:1.8; max-width:760px; }.legal-contact { margin-top:48px; color:#65778a; line-height:1.7; }.legal-contact a { color:#1263b8; font-weight:600; }
@media (max-width:1100px) { .footer-main { grid-template-columns:repeat(3,1fr); gap:38px 28px; }.footer-brand { grid-column:span 3; flex-direction:row; flex-wrap:wrap; align-items:center; }.footer-brand img { margin:0 20px 0 0; } }
@media (max-width:760px) { .footer-main { grid-template-columns:repeat(2,1fr); padding:52px 20px 42px; gap:34px 20px; }.footer-column-group { gap:26px; }.footer-brand { grid-column:span 2; flex-direction:column; align-items:flex-start; }.footer-brand img { width:150px; margin:0 0 8px; }.footer-bottom { padding:18px 20px 24px; align-items:flex-start; flex-direction:column-reverse; }.footer-socials { gap:9px; flex-wrap:wrap; }.footer-social { width:42px; height:42px; font-size:1.35rem; } }
.project-track .project-one { background-image:linear-gradient(135deg,#29413525,#0002),url('/assets/home/project-coastal-industrial-park.jpg'); background-position:center; }
.project-track .project-two { background-image:linear-gradient(135deg,#1f523820,#0002),url('/assets/home/project-rural-energy-hub.jpg'); background-position:center; }
.project-track .project-three { background-image:linear-gradient(135deg,#42532d20,#0002),url('/assets/home/project-urban-logistics.jpg'); background-position:center; }
@media (max-width:900px) { .cookie-consent { padding:14px; }.cookie-copy { padding:56px 22px 22px; border-radius:24px; }.cookie-close { top:12px; right:18px; }.cookie-copy p { font-size:.95rem; }.cookie-actions { width:100%; display:grid; grid-template-columns:1fr; gap:10px; margin-top:-4px; padding:0; }.cookie-actions button { width:100%; min-width:0; min-height:54px; font-size:1rem; }.cookie-preferences { flex-direction:column; gap:8px; } }
.cookie-consent { display:block; padding:0; }
.cookie-copy { position:absolute !important; top:12%; left:10%; width:80%; max-height:32vh; overflow:auto; box-sizing:border-box; padding:42px 54px 22px; border-radius:28px; }
.cookie-copy p { font-size:clamp(.92rem,1.35vw,1.2rem); line-height:1.55; }
.cookie-actions { position:absolute; left:10%; bottom:7%; width:80%; margin:0; padding:0; justify-content:flex-end; }
.cookie-actions button { min-width:220px; min-height:68px; font-size:1.05rem; }
@media (max-width:900px) { .cookie-copy { top:9%; left:7%; width:86%; max-height:48vh; padding:42px 22px 18px; border-radius:22px; }.cookie-copy p { font-size:.9rem; }.cookie-actions { left:7%; bottom:5%; width:86%; }.cookie-actions button { min-height:52px; font-size:.95rem; } }
@media (max-width:760px) { .legal-document { padding:108px 20px 80px; }.legal-sections { margin-top:48px; }.legal-sections section { grid-template-columns:1fr; gap:10px; padding:26px 0; } }

/* Customer workspace: keep data readable at every width. */
.admin-leads-main { max-width:1480px; padding-top:42px; }
.admin-leads-main .admin-heading { padding:28px 30px; border:1px solid #d8e5f0; border-radius:22px; background:linear-gradient(135deg,#fff,#f2f7fc); box-shadow:0 14px 36px #17365b0d; }
.admin-leads-main .admin-heading h1 { font-size:clamp(2.2rem,4vw,4rem); }
.admin-leads-main .admin-panel { border-radius:18px; box-shadow:0 10px 28px #17365b0d; }
.admin-leads-main .leads-table { width:100%; overflow-x:auto; }
.admin-leads-main .leads-table-head,.admin-leads-main .lead-row { min-width:900px; grid-template-columns:minmax(220px,1.6fr) minmax(120px,.8fr) minmax(150px,1fr) 150px 180px 90px !important; column-gap:22px !important; }
.admin-leads-main .lead-row { min-height:76px; }
.admin-leads-main .leads-table-head span { white-space:nowrap; }
.admin-leads-main .lead-row > * { min-width:0; overflow-wrap:anywhere; }
.content-editor-form{max-width:920px;background:#fff;border:1px solid #dce8f3;border-radius:24px;padding:32px;box-shadow:0 20px 50px rgba(25,66,105,.08)}.content-editor-form label{display:grid;gap:9px;margin:22px 0;color:#30445a;font-weight:700}.content-editor-form input,.content-editor-form textarea,.content-editor-form select{width:100%;box-sizing:border-box;border:1px solid #c9d9e8;border-radius:12px;padding:14px 16px;font:inherit;color:#1c2b3a;background:#fbfdff}.content-editor-form textarea{resize:vertical}.editor-meta{display:flex;justify-content:space-between;align-items:center;color:#688096;font-size:13px}.editor-meta label{display:flex;align-items:center;gap:10px;margin:0;font-weight:600}.editor-meta select{width:auto;padding:9px 12px}.editor-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:28px}.editor-actions button{cursor:pointer}.is-success{color:#16734a}.is-error{color:#b83333}
.admin-topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:#1263b8;color:#fff}.admin-brand{color:#fff;text-decoration:none;font-weight:800;letter-spacing:.08em}.admin-brand small{margin-left:16px;color:#b9dcff;font-size:10px}.admin-account{display:flex;gap:18px;align-items:center;font-size:13px}.admin-account a{color:#fff}.admin-topbar~.admin-sidebar{top:72px}
.admin-leads-main .lead-row details { min-width:0; }
@media (max-width:760px) {
  .admin-leads-main .admin-heading { padding:22px 20px; }
  .admin-leads-main .leads-table { overflow:visible; }
  .admin-leads-main .leads-table-head { display:none; }
  .admin-leads-main .lead-row { min-width:0; display:grid; grid-template-columns:1fr auto !important; padding:18px 4px; border:1px solid #e3ebf2; border-radius:14px; margin:10px 0; background:#fbfdff; }
  .admin-leads-main .lead-row > * { grid-column:auto !important; }
  .admin-leads-main .lead-row > :first-child { grid-column:1 / -1 !important; }
  .admin-leads-main .lead-row details { grid-column:1 / -1 !important; }
}
@media (max-width:760px) { .about-carousel { min-height:760px; align-items:flex-start; padding:120px 20px 220px; }.about-carousel-copy { width:auto; margin:0; }.about-carousel-copy h2 { font-size:clamp(2.5rem,12vw,4.5rem); }.about-carousel-cards { left:20px; right:20px; top:auto; bottom:70px; width:auto; display:flex; overflow:auto; transform:none; gap:8px; }.about-carousel-card { min-width:260px; grid-template-columns:62px 1fr auto; min-height:78px; padding:9px; border-radius:14px; }.about-carousel-card img { width:62px; height:58px; }.about-carousel-card b { font-size:.82rem; }.about-carousel-card small,.about-carousel-card em { font-size:.65rem; }.about-carousel-prev { left:14px; }.about-carousel-next { right:14px; } }

/* Keep the three about cards below the copy on phones. Absolute positioning
   made long localized headings collide with the card row. */
@media (max-width:760px) {
  .about-carousel {
    min-height:0 !important;
    height:auto !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    padding:96px 20px 24px !important;
  }
  .about-carousel-copy {
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    flex:none !important;
  }
  .about-carousel-copy h2 {
    max-width:none !important;
    font-size:clamp(2.25rem,10.5vw,4rem) !important;
    overflow-wrap:anywhere;
  }
  .about-carousel-cards {
    position:relative !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    width:100% !important;
    margin:34px 0 50px !important;
    padding:4px 2px 10px !important;
    display:flex !important;
    gap:10px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    transform:none !important;
  }
  .about-carousel-card {
    flex:0 0 min(78vw,300px) !important;
    min-width:0 !important;
    min-height:82px !important;
    grid-template-columns:62px 1fr auto !important;
    padding:10px !important;
  }
  .about-carousel-card img { width:62px !important; height:58px !important; }
  .about-carousel-arrow {
    top:auto !important;
    bottom:18px !important;
    transform:none !important;
  }
  .about-carousel-prev { left:20px !important; }
  .about-carousel-next { right:20px !important; }
}
/* Final SunEvo geometry and no-script fallback: native details still reveals
   the localized mega panel if a browser delays JavaScript initialization. */
@media (min-width:901px) {
  .site-header { height:58px; }
  .mega-overlay,.language-overlay { top:58px; min-height:calc(100vh - 58px); }
}
.mobile-menu-toggle{display:none}
@media (max-width:760px){.site-header .mobile-menu-toggle{display:block}.site-header nav{display:none!important;position:fixed;left:12px;right:12px;top:76px;max-height:calc(100dvh - 92px);overflow:auto;padding:12px;background:#fff;border:1px solid #dce5ef;border-radius:18px;box-shadow:0 22px 55px #102c481f}.site-header nav.mobile-nav-open{display:block!important}.site-header nav .nav-dropdown{display:block}.site-header nav .dropdown-panel{display:none}.site-header nav details[open] .dropdown-panel{display:block}.site-header .mega-overlay{display:none!important}}
.mobile-menu-toggle{display:none;border:0;background:transparent;color:#17202b;width:42px;height:42px;padding:9px;border-radius:10px;cursor:pointer;touch-action:manipulation}.mobile-menu-toggle span{display:block;height:2px;background:currentColor;margin:5px 0;border-radius:2px;transition:transform .2s ease,opacity .2s ease}.mobile-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.mobile-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media (max-width:760px){.site-header{position:sticky;top:0;z-index:40;display:flex;flex-wrap:nowrap;padding:10px 16px;gap:8px;min-height:64px;box-sizing:border-box}.site-header .brand{order:1}.site-header .mobile-menu-toggle{display:block;order:2;margin-left:auto}.site-header .header-actions{order:3;margin-left:0}.site-header .header-actions .language-trigger{font-size:0;padding:8px}.site-header .header-actions .language-trigger .globe-icon{width:22px;height:22px}.site-header .header-actions .login{font-size:.8rem;padding:8px 10px}.site-header nav{order:4;display:none;position:fixed;z-index:60;left:12px;right:12px;top:76px;max-height:calc(100dvh - 92px);overflow:auto;padding:12px;background:#fff;border:1px solid #dce5ef;border-radius:18px;box-shadow:0 22px 55px #102c481f}.site-header nav.mobile-nav-open{display:block}.site-header nav .nav-dropdown{display:block;border-bottom:1px solid #edf2f6}.site-header nav .nav-dropdown:last-child{border-bottom:0}.site-header nav summary{display:flex;justify-content:space-between;align-items:center;padding:16px 10px;font-size:1rem;font-weight:700;list-style:none;cursor:pointer}.site-header nav summary::-webkit-details-marker{display:none}.site-header nav summary span{font-size:1.1rem;transition:transform .2s ease}.site-header nav details[open] summary span{transform:rotate(180deg)}.site-header nav .dropdown-panel{display:none;padding:0 10px 12px}.site-header nav details[open] .dropdown-panel{display:block}.site-header nav .dropdown-panel a{display:block;padding:11px 12px;border-radius:10px;color:#42566a}.site-header nav .dropdown-panel a:hover,.site-header nav .dropdown-panel a:focus-visible{background:#eef6ff;color:#1263b8}.site-header nav .dropdown-panel small{display:block;margin-top:3px;color:#8b9bab}.site-header:has(nav.mobile-nav-open)::after{content:'';position:fixed;z-index:50;inset:76px 0 0;background:#102c4833}.site-header nav.mobile-nav-open{z-index:70}.site-header .mega-overlay{display:none!important}}

/* Mobile navigation uses native details panels so every section can be
   expanded without relying on hover or the large-screen mega overlay. */
@media (max-width:760px) {
  .site-header nav { display:flex; flex-direction:column; align-items:stretch; gap:0; max-height:calc(100dvh - 92px); overflow-y:auto; padding:8px 0 14px; }
  .site-header .nav-dropdown { width:100%; }
  .site-header .nav-dropdown summary { position:relative; padding:14px 4px; font-size:.95rem; }
  .site-header .nav-dropdown summary::after { content:'＋'; position:absolute; right:4px; color:#1263b8; }
  .site-header .nav-dropdown[open] summary::after { content:'−'; }
  .site-header .nav-dropdown > .dropdown-panel,
  .site-header .nav-dropdown[open] > .dropdown-panel { display:block !important; position:static; min-width:0; padding:4px 0 8px 14px; border:0; border-left:2px solid #d7e3ee; box-shadow:none; background:transparent; }
  .site-header .nav-dropdown > .dropdown-panel::before { display:none; }
  .site-header .nav-dropdown > .dropdown-panel a { padding:10px 12px; white-space:normal; }
  .site-header .nav-dropdown:hover > .dropdown-panel { display:none !important; }
  .site-header .nav-dropdown[open]:hover > .dropdown-panel { display:block !important; }
  .about-culture-stage { min-height:980px; height:auto; padding-bottom:24px; }
  .about-culture .culture-slide { min-height:680px; padding:110px 20px 330px; align-items:flex-start; justify-content:flex-start; }
  .about-culture .culture-slide-copy { max-width:none; }
  .about-culture .culture-slide-copy h1 { font-size:clamp(2.6rem,11vw,4.2rem); }
  .culture-card-stack { position:absolute; top:auto; right:20px; bottom:76px; left:20px; width:auto; transform:none; display:flex; gap:10px; overflow-x:auto; padding:4px 2px 10px; z-index:4; }
  .culture-card { flex:0 0 min(82vw,300px); min-width:0; }
  .culture-dots { bottom:28px; z-index:5; }
}

/* Compact cookie choice: keep the explanation and actions together at the
   lower-left corner. Button colors are intentionally static. */
.cookie-consent { display:block; inset:0; padding:0; background:#0b172899; }
.cookie-copy { position:absolute !important; left:20px; bottom:76px; top:auto; width:min(680px,calc(100vw - 40px)); max-height:none; overflow:visible; box-sizing:border-box; padding:15px 18px 10px; border:1px solid #111; border-radius:16px 16px 0 0; box-shadow:none; }
.cookie-copy p { font-size:12px; line-height:1.45; }
.cookie-preferences { margin-top:8px; padding-top:7px; gap:14px; font-size:10px; }
.cookie-actions { position:absolute; left:20px; bottom:20px; width:min(680px,calc(100vw - 40px)); box-sizing:border-box; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin:0; padding:10px 18px 14px; border:1px solid #111; border-top:0; border-radius:0 0 16px 16px; background:#fff; }
.cookie-actions button { min-width:0; min-height:38px; padding:8px 10px; border:1px solid #111; border-radius:20px; font-size:12px; line-height:1.1; }
.cookie-actions button:hover,.cookie-actions button:focus-visible,.cookie-actions button:active { background:#fff; color:#111; border-color:#111; box-shadow:none; transform:none; }
.cookie-actions .cookie-accept,.cookie-actions button[data-cookie-action="necessary"],.cookie-actions .cookie-accept:hover,.cookie-actions button[data-cookie-action="necessary"]:hover,.cookie-actions .cookie-accept:focus-visible,.cookie-actions button[data-cookie-action="necessary"]:focus-visible,.cookie-actions .cookie-accept:active,.cookie-actions button[data-cookie-action="necessary"]:active { border-color:#000; background:#000; color:#fff; }
@media (max-width:760px) {
  .cookie-copy { left:12px; bottom:70px; width:calc(100vw - 24px); padding:12px 14px 8px; border-radius:14px 14px 0 0; }
  .cookie-copy p { font-size:11px; line-height:1.4; }
  .cookie-actions { left:12px; bottom:12px; width:calc(100vw - 24px); gap:5px; padding:8px 10px 10px; border-radius:0 0 14px 14px; }
  .cookie-actions button { min-height:34px; padding:6px 4px; font-size:10px; }
}

body.about-culture-page { background:#f4f6f8; }
html:has(body.about-culture-page), body.about-culture-page { overflow-x:hidden; }
body.about-culture-page main, body.about-culture-page .inner-page, body.about-culture-page .content-grid { width:100% !important; max-width:none !important; margin-left:0; margin-right:0; margin-top:0 !important; padding-left:0; padding-right:0; }
body.about-culture-page .content-grid { display:block !important; }
body.about-culture-page .inner-page > .eyebrow,
body.about-culture-page .inner-page > h1,
body.about-culture-page .inner-page > .lede { display:none; }
.about-culture { display:block; position:relative; left:50%; width:100vw !important; min-width:100vw; max-width:none !important; margin-left:-50vw; margin-right:-50vw; overflow:hidden; background:#f4f6f8; color:#17202b; }
.about-culture-stage { min-height:760px; height:min(86vh,900px); }
.about-culture .culture-slide { align-items:flex-end; justify-content:flex-start; padding:clamp(100px,14vh,170px) max(6vw,calc((100vw - 1280px)/2)) 90px; }
.about-culture .culture-slide-copy { max-width:760px; text-align:left; margin:0; }
.about-culture .culture-slide-copy h1 { max-width:760px; font-size:clamp(3rem,6.8vw,7rem); }
.about-culture .culture-slide-copy>p:not(.eyebrow) { margin:0; }
.about-culture .culture-card-stack,.about-culture .culture-dots,.about-culture .culture-slide-index { display:grid; }
.about-culture .culture-dots { display:flex; }
.about-solution-band { position:relative; left:50%; width:100vw; min-height:560px; margin-left:-50vw; overflow:hidden; display:grid; place-items:center; background:linear-gradient(90deg,#061426d9,#06142666),url('/assets/home/home-hero-03.webp') center/cover; color:#fff; }
.about-solution-copy { position:relative; z-index:1; max-width:900px; padding:80px 24px; text-align:center; }
.about-solution-copy h2 { margin:18px 0 24px; color:#fff; font-size:clamp(2.8rem,5.5vw,5.6rem); line-height:1; letter-spacing:-.06em; }
.about-solution-copy>p:not(.eyebrow) { max-width:760px; margin:0 auto 28px; color:#e1ebf4; line-height:1.7; }
.about-solution-copy .eyebrow { color:#b9d2e9; }
.about-solution-arrow { position:absolute; z-index:2; top:50%; width:42px; height:42px; border:1px solid #fff9; border-radius:50%; background:transparent; color:#fff; font-size:2rem; transform:translateY(-50%); cursor:pointer; }
.about-solution-prev { left:7vw; }.about-solution-next { right:7vw; }
.about-top-solution .culture-slide { align-items:center; justify-content:center; padding:100px 14vw; }
.about-top-solution .culture-slide-copy { max-width:900px; text-align:center; margin:auto; }
.about-top-solution .culture-slide-copy h1 { max-width:900px; font-size:clamp(3rem,6vw,6.5rem); }
.about-top-solution .culture-slide-copy>p:not(.eyebrow) { margin:0 auto 28px; }
.about-top-solution .culture-card-stack,.about-top-solution .culture-dots,.about-top-solution .culture-slide-index { display:none; }
.about-culture-middle { position:relative; width:100vw; min-width:100vw; margin-left:calc(50% - 50vw); overflow:hidden; }
.about-culture-middle .culture-slide { align-items:flex-end; justify-content:flex-start; }
.about-culture-middle .culture-card-stack { display:grid; }
.about-culture-stage { min-height:clamp(560px,68vw,820px); height:min(78vh,820px); }
.about-culture-stage::before,.about-culture-stage::after { content:'‹'; position:absolute; z-index:5; top:50%; width:42px; height:42px; display:grid; place-items:center; border:1px solid #ffffffaa; border-radius:50%; color:#fff; font-size:2rem; line-height:1; transform:translateY(-50%); }
.about-culture-stage::before { left:7vw; }.about-culture-stage::after { right:7vw; content:'›'; }
.about-culture .culture-slide { align-items:center; justify-content:center; padding:100px 14vw; }
.about-culture .culture-slide-copy { max-width:900px; text-align:center; margin:auto; }
.about-culture .culture-slide-copy h1 { max-width:900px; font-size:clamp(3rem,6vw,6.5rem); }
.about-culture .culture-slide-copy>p:not(.eyebrow) { margin:0 auto 30px; }
.about-culture .culture-slide-copy::after { display:none; }
.scenario-hero-link { display:inline-flex; gap:8px; align-items:center; padding:12px 0 8px; border-bottom:1px solid #fff; color:#fff; font-size:1rem; }
.scenario-hero-link:hover,.scenario-hero-link:focus-visible { color:#9fc9f2; border-color:#9fc9f2; }
.about-culture .culture-card-stack,.about-culture .culture-dots,.about-culture .culture-slide-index { display:none; }
.about-culture-hero { width:100%; }
.about-culture-stage { position:relative; min-height:760px; height:min(86vh,900px); overflow:hidden; background:#0b1c2d; }
.culture-slide { position:absolute; inset:0; display:flex; align-items:flex-end; padding:clamp(100px,14vh,170px) max(6vw,calc((100vw - 1280px)/2)) 90px; opacity:0; visibility:hidden; transform:scale(1.025); transition:opacity .7s ease,transform 1.2s ease,visibility .7s; background-position:center; background-size:cover; }
.culture-slide.is-active { opacity:1; visibility:visible; transform:scale(1); }
.culture-slide-mission { background-image:url('/assets/about/meitu-sustainability-coastal-road.avif'); background-position:center 44%; }
.culture-slide-vision { background-image:url('/assets/about/meitu-sustainability-coastal-road.avif'); background-position:30% center; }
.culture-slide-values { background-image:url('/assets/about/meitu-sustainability-coastal-road.avif'); background-position:72% center; }
.culture-slide-shade { position:absolute; inset:0; background:linear-gradient(90deg,#061426e8 0%,#061426a8 38%,#06142635 75%,#06142655),linear-gradient(0deg,#061426c4 0%,transparent 54%); }
.culture-slide-copy { position:relative; z-index:1; max-width:760px; color:#fff; }
.culture-slide-copy .eyebrow { color:#a9c9e6; }
.culture-slide-copy h1 { max-width:760px; margin:18px 0 26px; color:#fff; font-size:clamp(3rem,6.8vw,7rem); line-height:.96; letter-spacing:-.065em; }
.culture-slide-copy>p:not(.eyebrow) { max-width:590px; margin:0; color:#e1ebf4; font-size:1.08rem; line-height:1.75; }
.culture-slide-index { position:absolute; z-index:2; right:6vw; bottom:74px; color:#fff; font-size:1.05rem; letter-spacing:.1em; }
.culture-slide-index span { color:#ffffff80; }
.culture-card-stack { position:absolute; z-index:3; top:50%; right:max(6vw,calc((100vw - 1280px)/2)); width:min(340px,28vw); transform:translateY(-50%); display:grid; gap:12px; }
.culture-card { position:relative; display:grid; grid-template-columns:88px 1fr; grid-template-rows:auto auto; gap:0 16px; width:100%; min-height:110px; padding:14px; border:1px solid #ffffff3d; border-radius:20px; background:#ffffffd9; color:#1b2c3d; text-align:left; box-shadow:0 12px 34px #0614262b; cursor:pointer; transition:background .25s,transform .25s,border-color .25s,box-shadow .25s; }
.culture-card:hover,.culture-card:focus-visible { transform:translateX(-8px); background:#fff; border-color:#1263b8; box-shadow:0 16px 38px #06142645; }
.culture-card.is-active { background:#fff; border-color:#1263b8; box-shadow:0 18px 44px #06142655; }
.culture-card-image { grid-row:span 2; display:block; min-height:82px; border-radius:12px; background-image:url('/assets/home/home-hero-03.webp'); background-size:cover; background-position:center; }
.culture-card-image-vision { background-position:28% center; filter:saturate(.85) hue-rotate(8deg); }
.culture-card-image-values { background-position:72% center; filter:saturate(.72) contrast(1.04); }
.culture-card-copy { display:flex; flex-direction:column; justify-content:end; gap:5px; }
.culture-card-copy b { color:#17202b; font-size:1rem; }
.culture-card-copy small { color:#70869a; font-size:.75rem; }
.culture-card em { align-self:end; color:#8093a4; font-size:.7rem; font-style:normal; text-align:right; }
.culture-dots { position:absolute; z-index:4; left:max(6vw,calc((100vw - 1280px)/2)); bottom:40px; display:flex; gap:8px; }
.culture-dot { width:34px; height:3px; border:0; padding:0; background:#ffffff66; cursor:pointer; transition:background .2s,width .2s; }
.culture-dot.is-active { width:68px; background:#fff; }
.about-culture-intro { max-width:1240px; margin:auto; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); gap:80px; align-items:end; padding:130px 32px 100px; }
.about-culture-intro h2 { max-width:700px; margin:18px 0 0; font-size:clamp(2.8rem,5.2vw,5.5rem); line-height:.98; letter-spacing:-.06em; }
.about-culture-intro>p { max-width:500px; color:#62778b; font-size:1.1rem; line-height:1.8; margin:0 0 5px; }
.about-culture-pillars { max-width:1240px; margin:auto; padding:0 32px 140px; display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.about-culture-pillars article { min-height:270px; padding:30px; border-top:1px solid #c8d7e5; background:#fff; }
.about-culture-pillars article>span { color:#1263b8; font-size:.8rem; letter-spacing:.13em; }
.about-culture-pillars article .eyebrow { margin-top:28px; color:#1263b8; }
.about-culture-pillars h3 { margin:12px 0 16px; color:#17202b; font-size:1.55rem; line-height:1.1; }
.about-culture-pillars article>p:last-child { margin:0; color:#65778a; line-height:1.7; }
@media (max-width:900px) {
  .about-culture .culture-slide { padding:120px 20px 150px; }
  .about-solution-band { min-height:520px; }
  .about-solution-arrow { width:36px; height:36px; }.about-solution-prev { left:14px; }.about-solution-next { right:14px; }
  .about-culture-stage { min-height:760px; height:auto; }
  .culture-slide { min-height:760px; padding:120px 20px 150px; align-items:flex-end; }
  .culture-slide-copy h1 { max-width:calc(100vw - 40px); font-size:clamp(2.8rem,12vw,5rem); }
  .culture-card-stack { top:auto; right:20px; bottom:74px; left:20px; width:auto; transform:none; display:flex; gap:8px; overflow:auto; }
  .culture-card { min-width:238px; grid-template-columns:58px 1fr; min-height:78px; padding:9px; border-radius:14px; }
  .culture-card-image { min-height:58px; }
  .culture-card-copy b { font-size:.84rem; }
  .culture-card-copy small,.culture-card em { font-size:.65rem; }
  .culture-slide-index { right:20px; top:104px; bottom:auto; }
  .culture-dots { left:20px; bottom:40px; }
  .about-culture-intro { grid-template-columns:1fr; gap:28px; padding:84px 20px 70px; }
  .about-culture-pillars { grid-template-columns:1fr; padding:0 20px 90px; }
}

/* Product detail template: four SunEvo-inspired sections backed by the
   published NengBox product fields. */
.product-template { margin: -90px -5vw 0; color:#17202b; background:#fff; }
.product-template section { min-height:680px; }
.product-template-hero { position:relative; min-height:100svh !important; overflow:hidden; display:flex; align-items:flex-end; color:#fff; background:#06142d; }
body.product-detail-page .product-template-hero { width:100vw; max-width:none; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.product-template-hero-visual { position:absolute; inset:0; background:linear-gradient(90deg,#020d24e8 0%,#06142d88 52%,#06142d20),linear-gradient(0deg,#020713b8,transparent 52%),url('/assets/home/home-hero-03.webp') center/cover; filter:saturate(.88); }
.product-template-hero-copy { position:relative; z-index:1; max-width:660px; padding:0 7vw 12vh; }
.product-template-hero-copy .eyebrow,.product-template-hero-copy h1,.product-template-hero-copy>p { color:#fff; }
.product-template-hero-copy h1 { font-size:clamp(3.4rem,7vw,7rem); line-height:.95; letter-spacing:-.065em; margin:20px 0 24px; }
.product-template-hero-copy>p:not(.eyebrow) { max-width:590px; line-height:1.65; font-size:1.05rem; color:#d6e2ef; }
.product-breadcrumb { margin-top:110px; color:#c8d4e0; font-size:.8rem; }
.product-template-overview { display:grid; grid-template-columns:minmax(0,1fr) minmax(420px,.95fr); gap:72px; align-items:center; max-width:1240px; margin:auto; padding:120px 32px; }
.product-template-overview h2 { max-width:620px; font-size:clamp(2.8rem,5vw,5rem); line-height:.98; letter-spacing:-.06em; margin:18px 0 30px; }
.product-template-overview p:not(.eyebrow) { max-width:570px; color:#62778b; line-height:1.75; font-size:1.05rem; }
.product-overview-visual { min-height:480px; border-radius:24px; background:linear-gradient(135deg,#eaf2fa99,#fff0),url('/assets/home/home-hero-03.webp') center/cover; box-shadow:0 18px 46px #17365b1b; }
.product-template-scenarios { position:relative; display:grid; place-items:center; min-height:680px !important; overflow:hidden; color:#fff; background:linear-gradient(90deg,#000b,#0005),url('/assets/home/home-hero-03.webp') center/cover; }
.about-carousel { position:relative; min-height:680px; overflow:hidden; display:flex; align-items:center; color:#fff; background:#071a2d; }
.about-carousel-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.about-carousel::before { content:''; position:absolute; z-index:1; inset:0; background:linear-gradient(90deg,#031224e8 0%,#03122496 48%,#03122445); pointer-events:none; }
.about-carousel-shade { position:absolute; inset:0; background:linear-gradient(0deg,#031224b8,transparent 55%); pointer-events:none; }
.about-carousel-copy { position:relative; z-index:2; width:min(650px,52vw); margin-left:max(7vw,calc((100vw - 1240px)/2)); }
.about-carousel-copy h2 { margin:18px 0 22px; color:#fff; font-size:clamp(2.8rem,5vw,5.5rem); line-height:.98; letter-spacing:-.06em; }
.about-carousel-copy>p:not(.eyebrow) { max-width:590px; color:#e1ebf4; line-height:1.7; }
.about-carousel-copy .eyebrow { color:#b9d2e9; }
.about-carousel-cards { position:absolute; z-index:3; right:max(7vw,calc((100vw - 1240px)/2)); top:50%; width:min(360px,29vw); display:grid; gap:12px; transform:translateY(-50%); }
.about-carousel-card { display:grid; grid-template-columns:92px 1fr auto; gap:14px; align-items:center; min-height:112px; padding:12px; border:1px solid #ffffff55; border-radius:18px; background:#ffffffd9; color:#1b2c3d; text-align:left; box-shadow:0 12px 30px #0002; cursor:pointer; transition:background .2s,border-color .2s,transform .2s; }
.about-carousel-card:hover,.about-carousel-card:focus-visible,.about-carousel-card.is-active { background:#fff; border-color:#1263b8; transform:translateX(-6px); }
.about-carousel-card img { width:92px; height:82px; object-fit:cover; border-radius:10px; }
.about-carousel-card span { display:flex; flex-direction:column; gap:6px; }
.about-carousel-card b { font-size:.92rem; }.about-carousel-card small { color:#6f8498; line-height:1.35; }.about-carousel-card em { align-self:end; color:#8093a4; font-size:.7rem; font-style:normal; white-space:nowrap; }
.about-carousel-arrow { position:absolute; z-index:4; top:50%; width:42px; height:42px; border:1px solid #ffffffaa; border-radius:50%; background:#0002; color:#fff; font-size:1.8rem; line-height:1; transform:translateY(-50%); cursor:pointer; }
.about-carousel-arrow:hover,.about-carousel-arrow:focus-visible { background:#fff; color:#1263b8; }.about-carousel-prev { left:7vw; }.about-carousel-next { right:3vw; }
.scenario-shade { position:absolute; inset:0; background:#06132466; }
.scenario-copy { position:relative; z-index:1; width:min(820px,80%); text-align:center; }
.scenario-copy .eyebrow,.scenario-copy h2,.scenario-copy p { color:#fff; }
.scenario-copy h2 { font-size:clamp(2.3rem,4vw,4.4rem); line-height:1; letter-spacing:-.055em; margin:18px 0 24px; }
.scenario-copy>p:not(.eyebrow) { line-height:1.65; color:#e4edf5; }
.scenario-copy .outline-link { color:#fff; border-color:#fff; }
.scenario-arrow { position:absolute; z-index:2; top:50%; transform:translateY(-50%); width:42px; height:42px; border:1px solid #fff9; border-radius:50%; background:#0002; color:#fff; font-size:1.8rem; line-height:1; cursor:pointer; transition:background .18s,color .18s; }
.scenario-arrow:hover,.scenario-arrow:focus-visible { background:#fff; color:#1263b8; }
.scenario-prev { left:7vw; }.scenario-next { right:7vw; }
.button,.hero-link,.scenario-hero-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:56px;box-sizing:border-box;padding:0 30px;border:0;border-radius:999px;background:#1263b8;color:#fff;text-decoration:none;font-weight:700;line-height:1.1;white-space:nowrap;transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease}.button span,.hero-link span,.scenario-hero-link span{font-size:2rem;line-height:1;margin-left:auto}.button:hover,.button:focus-visible,.hero-link:hover,.hero-link:focus-visible,.scenario-hero-link:hover,.scenario-hero-link:focus-visible{background:#0b4f98;color:#fff;box-shadow:0 10px 24px #1263b84d;transform:translateY(-1px)}
.product-template-related { max-width:1240px; margin:auto; padding:110px 32px 130px; }
.product-parameters { max-width:1240px; margin:auto; padding:110px 32px 90px; background:#fff; color:#17202b; }
.parameter-heading { margin-bottom:34px; }
.parameter-heading h2 { margin:14px 0 8px; font-size:clamp(2.3rem,4vw,4rem); letter-spacing:-.055em; }
.model-tabs { display:flex; gap:10px; padding:8px; margin-bottom:34px; border:1px solid #e4ebf2; border-radius:16px; background:#f8fafc; overflow:auto; }
.model-tab { flex:1; min-width:150px; border:0; border-radius:10px; padding:15px 18px; background:transparent; color:#65778a; font:inherit; cursor:pointer; transition:background-color .18s ease,color .18s ease,box-shadow .18s ease; }
.model-tab:hover,.model-tab:focus-visible { color:#1263b8; background:#edf5fd; }
.model-tab.is-active { background:#1263b8; color:#fff; box-shadow:0 8px 18px #1263b82b; }
.parameter-layout { display:grid; grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr); gap:46px; align-items:start; }
.parameter-model-visual { min-height:390px; display:flex; flex-direction:column; align-items:center; justify-content:center; border-radius:22px; background:linear-gradient(145deg,#f4f8fc,#e7eef5); color:#17202b; }
.parameter-device { width:130px; height:260px; border:10px solid #d2dce7; border-radius:12px; background:linear-gradient(90deg,#fff 0 75%,#c6d2df 75%); box-shadow:16px 16px 24px #17365b25; margin-bottom:24px; }
.parameter-model-visual strong { color:#1263b8; font-size:1.1rem; letter-spacing:.04em; }
.parameter-groups { display:grid; gap:12px; }
.parameter-panel { border:1px solid #edf1f5; border-radius:14px; background:#fff; box-shadow:0 8px 24px #17365b10; overflow:hidden; }
.parameter-panel.is-featured { border-color:#e7edf3; }
.parameter-panel.is-featured .parameter-toggle { color:#f08a16; }
.parameter-panel.is-featured .parameter-toggle b { border-color:#f6b000; color:#f08a16; background:#fffaf0; }
.parameter-toggle { width:100%; display:flex; align-items:center; justify-content:space-between; padding:22px 24px; border:0; background:#fff; color:#25384c; font:inherit; font-size:1.05rem; text-align:left; cursor:pointer; }
.parameter-toggle b { width:30px; height:30px; display:grid; place-items:center; border:1px solid #1263b8; border-radius:50%; color:#1263b8; font-weight:400; }
.parameter-toggle:hover { color:#1263b8; background:#f8fbfe; }
.parameter-body { padding:0 24px 20px; }
.parameter-body div { display:grid; grid-template-columns:1fr 1fr; gap:20px; padding:15px 0; border-top:1px solid #e1e9f0; color:#65778a; }
.parameter-body strong { color:#25384c; font-weight:500; }
.product-section-heading { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:50px; }
.product-section-heading h2 { margin:14px 0 8px; font-size:clamp(2.3rem,4vw,4rem); letter-spacing:-.055em; }
.product-section-heading p:not(.eyebrow) { color:#62778b; margin:0; }
.related-arrows { color:#1263b8; font-size:1.8rem; }
.product-related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.product-related-card { min-height:390px; padding:26px; display:flex; flex-direction:column; justify-content:flex-end; border-radius:20px; background:linear-gradient(135deg,#f2f5f8,#e7edf3); color:#17202b; transition:transform .2s,box-shadow .2s,background .2s; }
.product-related-card:hover,.product-related-card:focus-visible { transform:translateY(-5px); background:#e4effa; box-shadow:0 16px 34px #17365b1c; }
.product-related-card span { color:#1263b8; font-size:.72rem; letter-spacing:.12em; }
.product-related-card h3 { margin:14px 0 10px; font-size:1.65rem; line-height:1.05; }
.product-related-card p { color:#62778b; line-height:1.55; margin:0; }
.product-related-card b { color:#1263b8; margin-top:22px; }
@media (max-width:760px) {
  .product-template { margin:-108px -20px 0; }
  .product-template-hero { min-height:760px !important; }
  .product-template-hero-copy { padding:0 20px 70px; }
  .product-template-hero-copy h1 { font-size:clamp(3rem,14vw,5rem); }
  .product-breadcrumb { margin-top:70px; }
  .product-template-overview { grid-template-columns:1fr; gap:34px; padding:84px 20px; }
  .product-overview-visual { min-height:300px; }
  .product-template-scenarios { min-height:560px !important; }
  .scenario-copy { width:calc(100% - 80px); }
  .scenario-prev { left:16px; }.scenario-next { right:16px; }
  .product-template-related { padding:84px 20px 96px; }
  .product-parameters { padding:84px 20px 70px; }
  .model-tabs { margin-bottom:24px; }
  .parameter-layout { grid-template-columns:1fr; gap:24px; }
  .parameter-model-visual { min-height:260px; }
  .parameter-device { width:100px; height:190px; }
  .parameter-toggle { padding:18px; }
  .parameter-body { padding:0 18px 14px; }
  .parameter-body div { grid-template-columns:1fr; gap:6px; }
  .product-section-heading { margin-bottom:30px; }
  .product-related-grid { grid-template-columns:1fr; }
  .product-related-card { min-height:300px; }
}
@media (max-width:900px) { .mega-close { pointer-events:auto !important; } }
@media (min-width:901px) {
  /* SunEvo-style menu: keep the next page visible beneath the panel. */
  .mega-overlay { height:min(570px, calc(100vh - 58px)); min-height:0; overflow:hidden; }
  .mega-side { height:100%; box-sizing:border-box; overflow-y:auto; }
  .mega-content { height:100%; box-sizing:border-box; overflow:hidden; }
}
/* Final mobile navigation override: the hamburger controls a compact drawer. */
@media (max-width:760px){.site-header nav{display:none!important;position:fixed!important;left:12px!important;right:12px!important;top:76px!important;max-height:calc(100dvh - 92px)!important;overflow:auto!important;padding:12px!important;background:#fff!important;background-image:none!important;border:1px solid #dce5ef!important;border-radius:0!important;box-shadow:0 22px 55px #102c481f!important}.site-header nav.mobile-nav-open{display:block!important}.site-header nav .nav-dropdown{display:block!important}.site-header nav .nav-dropdown summary{border-radius:0!important;transition:color .18s ease,background-color .18s ease,box-shadow .18s ease,text-shadow .18s ease}.site-header nav .nav-dropdown summary::marker{content:''!important}.site-header nav .nav-dropdown summary::-webkit-details-marker{display:none!important}.site-header nav .nav-dropdown summary::after{content:'+'!important;display:block!important;position:absolute!important;right:4px!important;bottom:auto!important;left:auto!important;height:auto!important;background:transparent!important;color:#1263b8!important;font-size:1.35rem!important;line-height:1!important}.site-header nav .nav-dropdown[open] > summary::after{content:'−'!important}.site-header nav .nav-dropdown[open] > summary,.site-header nav .nav-dropdown > summary:hover,.site-header nav .nav-dropdown > summary:focus-visible{color:#1263b8!important;background:#eef6ff!important;box-shadow:inset 3px 0 #1263b8,0 0 18px #1263b826!important;text-shadow:0 0 12px #1263b866!important}.site-header nav .dropdown-panel{display:none!important;position:static!important;min-width:0!important;padding:4px 0 8px 14px!important;border:0!important;border-left:2px solid #d7e3ee!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;background-image:none!important;backdrop-filter:none!important}.site-header nav details[open] > .dropdown-panel{display:block!important}.site-header nav .dropdown-panel::before{display:none!important}.site-header nav .dropdown-panel small{display:none!important}.site-header nav .dropdown-panel a{padding:10px 12px!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#42566a!important;transition:color .18s ease,background-color .18s ease,box-shadow .18s ease,text-shadow .18s ease}.site-header nav .dropdown-panel a:hover,.site-header nav .dropdown-panel a:focus-visible,.site-header nav .dropdown-panel a:active{color:#1263b8!important;background:#f1f7ff!important;box-shadow:inset 3px 0 #1263b8,0 0 16px #1263b81f!important;text-shadow:0 0 10px #1263b844!important}.site-header .mega-overlay{display:none!important;background-image:none!important}}
/* Mobile culture carousel: keep copy and cards in separate flow regions. */
@media (max-width:760px){.about-culture-stage{height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background:#0b1c2d}.about-culture-stage .culture-slide{position:relative!important;inset:auto!important;display:none!important;order:1;min-height:0!important;height:auto!important;box-sizing:border-box;padding:92px 20px 54px!important;align-items:flex-start!important;justify-content:flex-start!important;opacity:1!important;visibility:visible!important;transform:none!important;background-position:center!important}.about-culture-stage .culture-slide.is-active{display:flex!important}.about-culture-stage .culture-slide-copy{width:100%!important;max-width:none!important;margin:0!important}.about-culture-stage .culture-slide-copy h1{max-width:none!important;margin:16px 0 20px!important;font-size:clamp(2.35rem,11vw,4rem)!important;line-height:1.04!important}.about-culture-stage .culture-slide-copy>p:not(.eyebrow){max-width:none!important;line-height:1.65!important}.about-culture-stage .culture-card-stack{position:relative!important;order:2;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;width:100%!important;transform:none!important;display:flex!important;flex-wrap:nowrap!important;gap:12px!important;overflow-x:auto!important;padding:18px 20px 24px!important;box-sizing:border-box!important;background:#0b1c2d}.about-culture-stage .culture-card{flex:0 0 min(78vw,290px)!important;min-height:92px!important}.about-culture-stage .culture-dots{position:relative!important;order:3;left:auto!important;bottom:auto!important;padding:0 20px 26px!important;background:#0b1c2d}.about-culture-stage .culture-slide-index{right:20px!important;bottom:22px!important}.culture-arrow{position:absolute;z-index:8;top:18px;width:40px;height:40px;border:1px solid #ffffff80;border-radius:50%;background:#ffffff18;color:#fff;font-size:26px;line-height:1;display:grid;place-items:center;cursor:pointer}.culture-arrow-prev{right:70px}.culture-arrow-next{right:20px}}
/* Three stable cards below the copy at phone and tablet widths. */
@media (max-width:900px){
  .about-culture .about-culture-stage .culture-slide.is-active{min-height:clamp(410px,58svh,590px)!important;box-sizing:border-box!important}
  .about-culture .about-culture-stage .culture-card-stack{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;overflow:visible!important;align-items:stretch!important}
  .about-culture .about-culture-stage .culture-card{width:100%!important;min-width:0!important;min-height:0!important;display:flex!important;flex-direction:column!important;gap:7px!important;padding:7px!important;transform:none!important}
  .about-culture .about-culture-stage .culture-card:hover,.about-culture .about-culture-stage .culture-card:focus-visible{transform:none!important}
  .about-culture .about-culture-stage .culture-card-image{display:block!important;flex:none!important;width:100%!important;min-height:0!important;height:clamp(56px,15vw,110px)!important;border-radius:8px!important}
  .about-culture .about-culture-stage .culture-card-copy{display:block!important;min-width:0!important}
  .about-culture .about-culture-stage .culture-card-copy b{display:block!important;font-size:clamp(.68rem,2.5vw,.94rem)!important;line-height:1.3!important;overflow-wrap:anywhere!important}
  .about-culture .about-culture-stage .culture-card-copy small{display:none!important}
  .about-culture .about-culture-stage .culture-card em{margin-top:auto!important;font-size:.61rem!important;white-space:nowrap!important}
}
@media (max-width:760px){
  .site-header nav .dropdown-panel small{display:none!important}
  .site-header nav .dropdown-panel a.mobile-nav-overview{display:none!important}
  .site-header nav .dropdown-panel a{font-size:.95rem;padding:12px 10px}
  .language-overlay{top:76px!important;left:12px!important;right:12px!important;min-height:0!important;max-height:calc(100dvh - 92px)!important;padding:58px 18px 24px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;border-radius:18px;box-shadow:0 22px 55px #102c481f;overflow:auto}
  .language-overlay-close{display:grid!important;place-items:center;position:absolute;top:10px;right:12px;width:38px;height:38px;border:1px solid #dce5ef;border-radius:50%;background:#fff;color:#1263b8;font-size:25px;line-height:1;cursor:pointer;z-index:2}
  .language-column h3{font-size:.75rem;margin:0 0 8px;color:#8b9bab}.language-column a{padding:9px 6px;font-size:.78rem}
}
.language-overlay-close{display:none}
/* Keep expanded mobile submenus inside the drawer and wrap long labels. */
@media (max-width:760px){
  .site-header nav .nav-dropdown{min-width:0!important}
  .site-header nav .nav-dropdown > .dropdown-panel{
    left:auto!important;right:auto!important;transform:none!important;
    width:100%!important;max-width:100%!important;box-sizing:border-box!important
  }
  .site-header nav .nav-dropdown > .dropdown-panel a{
    width:100%;max-width:100%;box-sizing:border-box;
    white-space:normal!important;overflow-wrap:anywhere
  }
}
/* Wider phones and tablets use the same no-overlap flow. */
@media (min-width:761px) and (max-width:900px){.about-culture-stage{height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}.about-culture-stage .culture-slide{position:relative!important;inset:auto!important;display:none!important;order:1;min-height:0!important;height:auto!important;padding:100px 32px 54px!important;opacity:1!important;visibility:visible!important;transform:none!important;align-items:flex-start!important;justify-content:flex-start!important}.about-culture-stage .culture-slide.is-active{display:flex!important}.about-culture-stage .culture-slide-copy{width:100%!important;max-width:none!important}.about-culture-stage .culture-card-stack{position:relative!important;order:2;inset:auto!important;width:100%!important;transform:none!important;display:flex!important;gap:14px!important;overflow-x:auto!important;padding:18px 32px 26px!important;box-sizing:border-box!important;background:#0b1c2d}.about-culture-stage .culture-card{flex:0 0 260px!important}.about-culture-stage .culture-dots{position:relative!important;order:3;left:auto!important;bottom:auto!important;padding:0 32px 28px!important;background:#0b1c2d}}
/* Workbench operations rail: make the next action visible without faking auth health. */
.admin-ops-rail{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:4px 0 22px;padding:20px 22px;border:1px solid #cfe1ef;border-radius:18px;background:linear-gradient(110deg,#f5fbff,#fff 62%,#eef7ff);box-shadow:0 14px 32px #17365b0b}.ops-kicker{display:block;color:#1263b8;font-size:.65rem;font-weight:800;letter-spacing:.18em}.admin-ops-rail strong{display:block;margin-top:7px;color:#1d3449;font-size:1.1rem}.admin-ops-rail>div:first-child small{display:block;margin-top:5px;color:#71869a}.ops-actions{display:flex;gap:10px}.ops-actions a{display:flex;align-items:center;gap:10px;min-width:190px;padding:11px 13px;border:1px solid #d6e5f1;border-radius:12px;background:#ffffffb8;color:#1c3449;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.ops-actions a:hover{transform:translateY(-2px);border-color:#9fc4e3;box-shadow:0 8px 20px #1263b812}.ops-actions i{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#e8f3fc;color:#1263b8;font-style:normal;font-size:1rem}.ops-actions b,.ops-actions small{display:block}.ops-actions b{font-size:.76rem}.ops-actions small{margin-top:3px;color:#7a8ea0;font-size:.65rem}
@media (max-width:900px){.admin-ops-rail{align-items:stretch;flex-direction:column}.ops-actions{flex-direction:column}.ops-actions a{min-width:0}}

/* Show the full outlines of both lightweight PV modules in the product gallery. */
.product-reference-lightweight-pv-module .product-reference-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.product-reference-lightweight-pv-module .product-reference-gallery-grid .product-reference-media,
.product-reference-lightweight-pv-module .product-reference-gallery-grid .product-reference-media:first-child { grid-column:auto; height:520px; min-height:0; }
.product-reference-lightweight-pv-module .product-reference-gallery-grid .product-reference-media img,
.product-reference-lightweight-pv-module .product-reference-gallery-grid .product-reference-media:first-child img { width:100%; height:100%; min-height:0; object-fit:contain; box-sizing:border-box; padding:24px; }
@media (max-width:800px) {
  .product-reference-lightweight-pv-module .product-reference-gallery-grid { grid-template-columns:1fr; }
  .product-reference-lightweight-pv-module .product-reference-gallery-grid .product-reference-media,
  .product-reference-lightweight-pv-module .product-reference-gallery-grid .product-reference-media:first-child { height:420px; }
}

/* Product-angle gallery: one dominant product view with supporting angle thumbnails. */
.product-reference-hybrid-inverter-mt-1085eh48l .product-reference-gallery-grid,
.product-reference-hybrid-inverter-mt-150eh48l .product-reference-gallery-grid,
.product-reference-hybrid-inverter-mt-3305eh600 .product-reference-gallery-grid,
.product-reference-integrated-ess-mt-ess-60 .product-reference-gallery-grid { grid-template-columns:minmax(0,1.7fr) minmax(210px,.72fr); grid-auto-rows:178px; gap:18px; align-items:stretch; }
.product-reference-hybrid-inverter-mt-1085eh48l .product-reference-gallery-grid .product-reference-media,
.product-reference-hybrid-inverter-mt-150eh48l .product-reference-gallery-grid .product-reference-media,
.product-reference-hybrid-inverter-mt-3305eh600 .product-reference-gallery-grid .product-reference-media,
.product-reference-integrated-ess-mt-ess-60 .product-reference-gallery-grid .product-reference-media { grid-column:2; height:auto; min-height:0; border:1px solid #e1e9ef; border-radius:20px; background:#fff; box-shadow:0 14px 34px #17365b0d; }
.product-reference-hybrid-inverter-mt-1085eh48l .product-reference-gallery-grid .product-reference-media:first-child,
.product-reference-hybrid-inverter-mt-150eh48l .product-reference-gallery-grid .product-reference-media:first-child,
.product-reference-hybrid-inverter-mt-3305eh600 .product-reference-gallery-grid .product-reference-media:first-child,
.product-reference-integrated-ess-mt-ess-60 .product-reference-gallery-grid .product-reference-media:first-child { grid-column:1; grid-row:1 / span 3; height:auto; min-height:0; }
.product-reference-hybrid-inverter-mt-1085eh48l .product-reference-gallery-grid .product-reference-media img,
.product-reference-hybrid-inverter-mt-150eh48l .product-reference-gallery-grid .product-reference-media img,
.product-reference-hybrid-inverter-mt-3305eh600 .product-reference-gallery-grid .product-reference-media img,
.product-reference-integrated-ess-mt-ess-60 .product-reference-gallery-grid .product-reference-media img { width:100%; height:100%; min-height:0; object-fit:contain; padding:22px; box-sizing:border-box; background:#fff; }
@media (max-width:800px) {
  .product-reference-hybrid-inverter-mt-1085eh48l .product-reference-gallery-grid,
  .product-reference-hybrid-inverter-mt-150eh48l .product-reference-gallery-grid,
  .product-reference-hybrid-inverter-mt-3305eh600 .product-reference-gallery-grid,
  .product-reference-integrated-ess-mt-ess-60 .product-reference-gallery-grid { grid-template-columns:1fr; grid-auto-rows:auto; }
  .product-reference-hybrid-inverter-mt-1085eh48l .product-reference-gallery-grid .product-reference-media,
  .product-reference-hybrid-inverter-mt-150eh48l .product-reference-gallery-grid .product-reference-media,
  .product-reference-hybrid-inverter-mt-3305eh600 .product-reference-gallery-grid .product-reference-media,
  .product-reference-integrated-ess-mt-ess-60 .product-reference-gallery-grid .product-reference-media { grid-column:auto; height:240px; }
  .product-reference-hybrid-inverter-mt-1085eh48l .product-reference-gallery-grid .product-reference-media:first-child,
  .product-reference-hybrid-inverter-mt-150eh48l .product-reference-gallery-grid .product-reference-media:first-child,
  .product-reference-hybrid-inverter-mt-3305eh600 .product-reference-gallery-grid .product-reference-media:first-child,
  .product-reference-integrated-ess-mt-ess-60 .product-reference-gallery-grid .product-reference-media:first-child { grid-column:auto; grid-row:auto; height:340px; }
}

.mega-content img.mega-image { display:block; width:100%; height:330px; object-fit:contain; object-position:center; padding:18px; box-sizing:border-box; background:#f7f9fb; }
@media (max-width:900px) { .mega-content img.mega-image { height:220px; padding:12px; } }

/* Technical support detail and inquiry */
.support-page .content-grid { display:block; width:100%; max-width:none; margin:0; }
.support-template { display:block; width:100%; color:#17283b; background:#fff; }
.support-hero { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); min-height:660px; background:#071b2d; color:#fff; }
.support-hero-copy { align-self:center; width:100%; box-sizing:border-box; padding:120px 42px 100px max(7vw,calc((100vw - 1260px)/2)); }
.support-hero .eyebrow { color:#6fcbe6; }
.support-hero h1 { margin:22px 0 28px; color:#fff; font-size:clamp(3.15rem,4.2vw,5.2rem); line-height:1.06; letter-spacing:-.06em; }
.support-hero-copy>p:not(.eyebrow) { max-width:610px; color:#d2e0ed; font-size:1.08rem; line-height:1.85; }
.support-hero .button { display:inline-flex; margin-top:28px; }
.support-hero>img { width:100%; height:100%; min-height:660px; object-fit:cover; object-position:center; }
.support-services,.support-process,.support-inquiry { padding:105px max(32px,calc((100vw - 1260px)/2)); }
.support-section-heading { max-width:740px; }
.support-section-heading h2,.support-inquiry-copy h2 { margin:18px 0 20px; font-size:clamp(2.6rem,4.2vw,4.7rem); line-height:1.05; letter-spacing:-.055em; }
.support-section-heading>p:last-child,.support-inquiry-copy>p:not(.eyebrow) { color:#5a6e7f; line-height:1.8; font-size:1.03rem; }
.support-service-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; margin-top:52px; background:#d9e6ee; border:1px solid #d9e6ee; }
.support-service-grid article { min-height:270px; padding:31px 27px; background:#f8fbfc; }
.support-service-grid span,.support-process li span { color:#1686a1; font-weight:750; letter-spacing:.12em; }
.support-service-grid h3 { margin:48px 0 14px; font-size:1.45rem; }
.support-service-grid p { margin:0; color:#5c7080; line-height:1.7; }
.support-process { background:#0b283a; color:#fff; }
.support-process h2 { color:#fff; }
.support-process ol { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin:52px 0 0; padding:0; list-style:none; }
.support-process li { border-top:2px solid #4b8191; padding:23px 14px 0 0; }
.support-process li span { color:#84d3e2; }
.support-process li h3 { margin:30px 0 12px; font-size:1.3rem; }
.support-process li p { margin:0; color:#bcd1dc; line-height:1.7; }
.support-inquiry { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:clamp(40px,7vw,105px); align-items:start; background:#eef4f7; scroll-margin-top:80px; }
.support-inquiry-copy { padding-top:22px; }
.support-inquiry-copy h2 { font-size:clamp(2.6rem,4vw,4.4rem); }
.support-prep { margin:42px 0 30px; padding:29px; border-left:3px solid #1686a1; background:#fff; }
.support-prep h3 { margin:0 0 15px; font-size:1.1rem; }
.support-prep ul { margin:0; padding-left:21px; color:#5a6e7f; line-height:1.9; }
.support-inquiry-copy>a { color:#1263b8; font-weight:700; text-underline-offset:4px; }
.support-form { min-width:0; padding:clamp(27px,3.3vw,50px); border:1px solid #d6e4eb; border-radius:24px; background:#fff; box-shadow:0 22px 60px #0b334216; }
.support-form-title { margin-bottom:8px; }
.support-form-title span { color:#1686a1; font-size:.78rem; font-weight:750; letter-spacing:.12em; }
.support-form-title h3 { margin:12px 0 0; font-size:1.8rem; }
.support-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; }
.support-form label { min-width:0; }
.support-form textarea { resize:vertical; min-height:140px; }
.support-verification { display:grid; gap:15px; padding:22px; border:1px solid #d7e6ec; border-radius:16px; background:#f5f9fa; }
.support-verification .eyebrow { margin:0; color:#1686a1; }
.support-verification>p:last-child { margin:0; color:#607485; font-size:.88rem; line-height:1.55; }
.support-code-button,.support-google-button { justify-self:start; min-height:45px; padding:11px 19px; border:1px solid #1263b8; border-radius:999px; background:#fff; color:#1263b8; font:inherit; font-weight:700; cursor:pointer; }
.support-code-button:hover,.support-google-button:hover { background:#eaf4ff; }
.support-form .support-consent { display:flex; flex-direction:row; align-items:flex-start; gap:11px; line-height:1.6; }
.support-form .support-consent input { flex:none; width:20px; min-height:20px; height:20px; margin:2px 0 0; padding:0; }
.support-form .support-consent a { color:#1263b8; text-decoration:underline; }
.support-form .support-submit { align-self:start; display:inline-flex; min-height:50px; }
.support-form .support-submit:disabled { opacity:.6; cursor:wait; }
.support-terms { margin:0; padding:27px 32px 65px; color:#6b7e8a; background:#eef4f7; text-align:center; font-size:.86rem; line-height:1.7; }
@media (max-width:900px) {
  .support-hero { grid-template-columns:1fr; }
  .support-hero-copy { padding:110px 32px 65px; }
  .support-hero>img { height:390px; min-height:0; }
  .support-services,.support-process,.support-inquiry { padding:75px 32px; }
  .support-service-grid,.support-process ol { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .support-inquiry { grid-template-columns:1fr; }
}
@media (max-width:600px) {
  .support-hero-copy { padding:92px 20px 60px; }
  .support-hero h1 { font-size:clamp(2.9rem,11vw,4.2rem); }
  .support-hero>img { height:270px; }
  .support-services,.support-process,.support-inquiry { padding:68px 20px; }
  .support-service-grid,.support-process ol,.support-form-grid { grid-template-columns:1fr; }
  .support-service-grid article { min-height:0; }
  .support-service-grid h3 { margin-top:25px; }
  .support-form { padding:26px 20px; }
  .support-terms { padding:22px 20px 55px; }
}

/* Keep hero imagery in the stylesheet so the site CSP can block inline styles. */
.hero-showcase .hero-slide-products { background-image:url('/assets/home/MovetoSolar-qingzhiguangfu.webp'); }
.hero-showcase .hero-slide-partners { background-image:url('/assets/home/home-hero-03.webp'); }
/* Systems navigation has three first-level entries; hybrid inverters open a
   second-level product list without mixing the three products into the main
   systems dropdown. */
.site-header .nav-submenu { position:relative; }
.site-header .nav-submenu > summary { display:block; padding:14px 12px; border-radius:4px; color:#f2f4ed; cursor:pointer; list-style:none; }
.site-header .nav-submenu > summary::-webkit-details-marker { display:none; }
.site-header .nav-submenu > summary::after { content:'›'; float:right; color:#9be15d; font-size:1.1rem; line-height:1; }
.site-header .nav-submenu:hover > summary,
.site-header .nav-submenu[open] > summary { background:#ffffff12; color:#d9ffb7; }
.site-header .dropdown-subpanel { display:none; position:absolute; top:-10px; left:calc(100% + 10px); min-width:230px; padding:10px; background:#151917f5; border:1px solid #ffffff2a; box-shadow:0 22px 70px #0008; backdrop-filter:blur(18px); }
.site-header .dropdown-subpanel::before { content:''; position:absolute; top:20px; left:-7px; width:12px; height:12px; background:#151917; border-left:1px solid #ffffff2a; border-bottom:1px solid #ffffff2a; transform:rotate(45deg); }
.site-header .nav-submenu:hover > .dropdown-subpanel,
.site-header .nav-submenu[open] > .dropdown-subpanel { display:block; }
.site-header .dropdown-subpanel a { display:block; padding:12px; color:#f2f4ed; border-radius:4px; }
.site-header .dropdown-subpanel a:hover,
.site-header .dropdown-subpanel a:focus-visible { background:#ffffff12; color:#d9ffb7; }
@media (max-width:760px) {
  .site-header nav .nav-submenu { display:block; }
  .site-header nav .nav-submenu > summary { padding:10px 12px; color:#42566a; border-radius:0; }
  .site-header nav .nav-submenu > summary::after { content:'+'; color:#1263b8; }
  .site-header nav .nav-submenu[open] > summary { color:#1263b8; background:#eef6ff; }
  .site-header nav .nav-submenu[open] > summary::after { content:'−'; }
  .site-header nav .nav-submenu > .dropdown-subpanel,
  .site-header nav .nav-submenu[open] > .dropdown-subpanel { display:none; position:static; min-width:0; padding:4px 0 4px 14px; border:0; border-left:2px solid #d7e3ee; box-shadow:none; background:transparent; backdrop-filter:none; }
  .site-header nav .nav-submenu[open] > .dropdown-subpanel { display:block; }
  .site-header nav .dropdown-subpanel::before { display:none; }
  .site-header nav .dropdown-subpanel a { padding:10px 12px; color:#42566a; }
}

.mega-side-group { margin:10px 0 12px; }
.mega-side-group > strong { display:block; color:#1263b8; font-size:1rem; margin:0 0 4px; }
.mega-side-subitems { display:grid; gap:2px; padding-left:14px; border-left:2px solid #d7e3ee; }
.mega-side-subitems a { font-size:.9rem; padding:8px 10px; }
/* Generated solar carport preview for the solutions mega-menu. */
.mega-solar { background-image:linear-gradient(135deg,#0000,#0002),url('/assets/products/mobile-solar-carport/solar-storage-charging-carport-generated.png'); }
/* Shared About hero image: coastal road and sea aerial. */
.about-culture .culture-slide,
.about-culture .culture-slide-mission,
.about-culture .culture-slide-vision,
.about-culture .culture-slide-values { background-image:url('/assets/about/about-coastal-road-aerial.png'); }
.sustainability-page .sustainability-hero > img { content:url('/assets/about/about-coastal-road-aerial.png'); }
body.product-detail-page .product-template-hero-visual { background-image:linear-gradient(90deg,#020d24e8 0%,#06142d88 52%,#06142d20),linear-gradient(0deg,#020713b8,transparent 52%),url('/assets/about/about-coastal-road-aerial.png'); }
.lead-admin-fields { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:14px; padding-top:14px; border-top:1px solid #edf1f5; }
.lead-admin-fields label { display:flex; flex-direction:column; gap:5px; color:#60758a; font-size:.78rem; }
.lead-admin-fields input,.lead-admin-fields textarea { border:1px solid #dce5ee; border-radius:8px; padding:8px; color:#25364a; font:inherit; background:#fff; }
.lead-admin-fields textarea { min-height:64px; resize:vertical; }
.lead-admin-fields label:nth-child(3),.lead-admin-fields button,.lead-admin-fields span { grid-column:1 / -1; }
.lead-admin-fields button { justify-self:start; padding:9px 14px; font-size:.8rem; }
.lead-admin-fields span { color:#367443; font-size:.78rem; }
