/* NEC premium craft. Existing palette, type and approved page copy retained. */
:root{--r:12px;--shadow:0 2px 5px rgba(22,36,56,.025),0 16px 35px -22px rgba(22,36,56,.22),0 36px 70px -45px rgba(22,36,56,.18)}
section[id]{scroll-margin-top:100px}
.hdr{background:rgba(255,255,255,.96);box-shadow:0 8px 30px -24px rgba(22,36,56,.3)}
.hdr .in{gap:20px}.hdr .wordmark{display:flex;align-items:center;flex-shrink:0}
.nec-brand-logo{width:222px;height:42px;object-fit:contain;object-position:left center}
.nec-brand-light{display:none}
body.home .hdr:not(.solid):not(.open) .nec-brand-dark{display:none}
body.home .hdr:not(.solid):not(.open) .nec-brand-light{display:block}
.hdr .wordmark small{display:none}.ftr .wordmark small{font-size:12px;letter-spacing:.08em;white-space:normal;line-height:1.7}
.nav a,.nav button,.burger,.btn,.exit{min-height:44px}.burger{min-width:44px}
.nav a,.nav button{font-size:14px;padding-inline:9px}
.btn{border-radius:999px;min-height:52px;padding:14px 25px;box-shadow:0 4px 9px -5px rgba(22,36,56,.18),0 14px 28px -18px rgba(22,36,56,.3);transition:transform .22s,box-shadow .22s,background .22s}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px -12px rgba(22,36,56,.3)}
.btn-sm{min-height:44px;font-size:13px;padding:10px 18px}.btn-champagne{border:1px solid rgba(255,255,255,.22)}
.sec{padding-block:clamp(80px,9vw,136px)}
.light{background:#f5f6f8}
h2{line-height:1.15}h3{line-height:1.24}.eyebrow,.label{font-size:12px;line-height:1.6}
.panel,.team-card{box-shadow:var(--shadow);border-color:#e3e6ec;border-radius:16px;overflow:hidden}
.panel .body{padding:32px}.panel figure{overflow:hidden}.panel figure img{transition:transform .65s}.panel:hover figure img{transform:scale(1.025)}
.strategy-row{gap:clamp(30px,6vw,88px)}.strategy-row figure,.hero-split figure{border-radius:16px;box-shadow:var(--shadow);overflow:hidden}
.rows li{padding-block:28px}.rows .n{color:var(--champ-ink)}
.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:12px;box-shadow:0 8px 30px -26px rgba(22,36,56,.4)}
.faq summary{padding:24px 28px;min-height:60px}.faq details .a{padding:0 28px 28px}
.tblwrap{border-radius:16px;box-shadow:var(--shadow)}
.cta-quiet,.cta-band{padding-block:clamp(80px,10vw,140px);border-top:1px solid rgba(206,183,142,.3)}
.ftr{padding-top:70px}.ftr .top{gap:40px}.ftr .legal{font-size:12px;line-height:1.8;margin-top:40px}.ftr h4{font-size:14px;letter-spacing:.08em}.ftr .top>div>a:not(.wordmark){min-height:44px;display:flex;align-items:center;font-size:15px;padding-block:9px}
.reading{max-width:800px}.reading p{line-height:1.8}.reading h2{margin-top:48px}
/* Preserve the home hero composition, with readable small labels. */
.hero-epic .eyebrow{font-size:12px!important}.nec-orbit text{font-size:14px!important}.nec-orbit text.big{font-size:17px!important}.nec-orbit text.lbl{letter-spacing:.02em}
.eco-hero{position:relative;overflow:hidden;padding:105px 0 90px;text-align:center;background:radial-gradient(ellipse at 50% 0,rgba(206,183,142,.16),transparent 60%),#fff;border-bottom:1px solid var(--line)}
.eco-hero h1{font-size:clamp(42px,5.3vw,76px);max-width:1050px;margin:22px auto 28px;line-height:1.08;letter-spacing:-.025em}
.eco-hero .lede{max-width:730px;margin:auto;color:var(--ink-2);font-size:20px;line-height:1.7}
.eco-hero .eyebrow,.section-heading .eyebrow,.eco-closing .eyebrow{display:flex;align-items:center;justify-content:center;gap:14px;color:var(--champ-ink);letter-spacing:.2em}
.eco-hero .eyebrow::before,.eco-hero .eyebrow::after,.section-heading .eyebrow::before,.section-heading .eyebrow::after,.eco-closing .eyebrow::before,.eco-closing .eyebrow::after{content:"";width:36px;height:1px;background:var(--champagne);opacity:1;margin:0}
.eco-index{display:flex;gap:24px;justify-content:center;align-items:center;margin-top:35px}.eco-index a{min-height:44px;display:inline-flex;align-items:center;gap:14px;font-size:14px;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--champagne)}.eco-index-dot{width:4px;height:4px;border-radius:50%;background:var(--champagne)}
.section-heading{text-align:center;max-width:800px;margin:0 auto 60px}.section-heading h2{margin-top:14px;font-size:clamp(34px,3.7vw,52px)}.section-heading>p:last-child:not(.eyebrow){margin:22px auto 0;max-width:630px;color:var(--ink-2)}
.eco-system{background:var(--deep);color:#dce4ee}.eco-system .section-heading h2{color:white}.eco-system .section-heading p:last-child{color:#c8d3e2}.eco-system .section-heading .eyebrow{color:var(--champagne)}
.eco-system .section-heading{margin-bottom:12px}.eco-map{max-width:1120px;margin:auto}.eco-map svg{display:block;width:100%;overflow:visible}.eco-ring{fill:none;stroke:#ceb78e;stroke-opacity:.28}.eco-ring.faint{stroke-opacity:.12;stroke-dasharray:2 8}
.eco-flow-lines{fill:none;stroke:var(--champagne);stroke-width:1.3}.eco-map text{font-family:var(--body);font-size:16px;fill:#d3dce8}.eco-node rect{fill:#1e314b;stroke:#52617a;stroke-width:1}.eco-node text{text-anchor:middle}.eco-node text.eco-node-name{font-size:21px;fill:#fff;font-family:var(--display)}.eco-map text.eco-flow-label{font-size:15px;fill:#d8c4a1}.eco-flow-label.centered{text-anchor:middle}.eco-core rect{fill:#eee5d6;stroke:#ceb78e}.eco-core text{text-anchor:middle;fill:#162438}.eco-core .eco-core-kicker{font-size:13px;letter-spacing:2px}.eco-core .eco-core-name{font-family:var(--display);font-size:30px}.eco-core path{stroke:#a38c65}.eco-map .eco-map-caption{text-anchor:middle;fill:#b9c6d8;font-size:16px;letter-spacing:1px}.eco-note{text-align:center;max-width:800px;margin:25px auto 0;font-size:15px;line-height:1.7;color:var(--muted)}.eco-system .eco-note{color:#c5cedc}.eco-mobile-flow{display:none}
.eco-enabling{background:#f6f7f9}.eco-company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.eco-card{border:1px solid #dfe4eb;border-radius:16px;overflow:hidden;background:#fff;box-shadow:var(--shadow);display:flex;flex-direction:column;min-width:0;transition:transform .25s,box-shadow .25s}.eco-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -25px rgba(22,36,56,.35)}
.eco-shot{display:block;overflow:hidden;aspect-ratio:8/5;background:#edf0f4;border-bottom:1px solid #e5e9ef}.eco-shot img{width:100%;height:100%;object-fit:contain;transition:transform .6s}.eco-card:hover .eco-shot img{transform:scale(1.015)}.eco-card-body{padding:30px;display:flex;flex:1;flex-direction:column;align-items:flex-start}.eco-card-body .eyebrow{font-size:12px;letter-spacing:.08em;min-height:38px;color:var(--champ-ink);margin-bottom:14px}.eco-card h3{font-size:27px;margin-bottom:20px;letter-spacing:-.02em}.eco-card-body p{font-size:16px;line-height:1.75;color:var(--muted)}.eco-card-body .eco-card-lead{font-size:18px;color:var(--ink-2);margin-bottom:18px;line-height:1.6}.eco-link{display:inline-flex;align-items:center;gap:14px;min-height:48px;text-decoration:none;color:var(--navy);font-size:15px;border-bottom:1px solid #c6b18c}.eco-card .eco-link{margin-top:auto;padding-top:24px;min-height:68px}.eco-link:hover{color:var(--deep)}.eco-link span[aria-hidden]{font-size:20px}
.eco-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.eco-project .eco-card-body{padding:36px}.eco-project h3{font-size:36px}.eco-support-title{font-family:var(--body);font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--champ-ink);margin:12px 0 22px}.eco-support{display:grid;grid-template-columns:155px 1fr;gap:15px 20px;padding-top:22px;border-top:1px solid var(--line);margin-bottom:10px}.eco-support dt{font-size:14px;color:var(--ink);font-weight:500}.eco-support dd{font-size:15px;color:var(--muted);line-height:1.65}.eco-private{text-align:center;margin-top:24px;font-size:15px;color:var(--champ-ink)}
.eco-risk{background:#f5f6f8}.eco-matrix{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.eco-matrix table{width:100%;border-collapse:collapse;text-align:left}.eco-matrix th,.eco-matrix td{padding:28px;vertical-align:top;border-bottom:1px solid var(--line);font-size:16px;line-height:1.7}.eco-matrix thead th{background:var(--deep);color:#e5d4b5;font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:500}.eco-matrix tbody th{width:22%;font-family:var(--display);font-size:21px;font-weight:400}.eco-matrix td:nth-child(2){width:27%;color:var(--navy)}.eco-matrix td:last-child{color:var(--ink-2)}.eco-matrix tbody tr:last-child>*{border:0}
.eco-accountability{margin:40px auto 0;max-width:800px;text-align:center}.eco-accountability>p:not(.eyebrow){font-size:15px;color:var(--muted);line-height:1.75}.eco-accountability .eco-link{margin-top:14px}.eco-closing .eyebrow{color:var(--champagne);margin-bottom:24px}.eco-closing h2{font-size:clamp(36px,4.4vw,60px)}.eco-closing .btn{margin-top:12px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(prefers-reduced-motion:no-preference){.eco-map.on .eco-flow-lines{stroke-dasharray:180;animation:eco-connect 1.6s ease-out both}@keyframes eco-connect{from{stroke-dashoffset:180;opacity:.2}to{stroke-dashoffset:0;opacity:1}}}
@media(min-width:1440px){.hdr .wrap{width:calc(100% - 64px);max-width:1500px}.hdr .in{gap:14px}.hdr .cta{margin-left:0}}
@media(max-width:1439px){.hdr.open .nav{top:80px;height:calc(100dvh - 80px)}.hdr.open .nav .mob-cta{display:flex}.hdr.open .nav{box-shadow:0 20px 50px rgba(22,36,56,.1)}}
@media(max-width:1100px){.eco-company-grid{grid-template-columns:1fr}.eco-company-grid .eco-card{display:grid;grid-template-columns:1fr 1fr}.eco-company-grid .eco-shot{height:100%;aspect-ratio:auto;display:flex;align-items:center;background:#f2f4f7}.eco-company-grid .eco-shot img{height:auto}.eco-card-body .eyebrow{min-height:0}.eco-support{grid-template-columns:1fr;gap:6px}.eco-support dd{margin-bottom:14px}.eco-project .eco-card-body{padding:28px}}
@media(max-width:760px){.eco-map svg{display:none}.eco-mobile-flow{display:block;margin-top:40px}.eco-mobile-flow ol{list-style:none;display:grid;gap:24px}.eco-mobile-flow li{padding:24px 20px;border:1px solid #4e5e74;border-radius:12px;background:#1e314b;display:flex;gap:16px;position:relative}.eco-mobile-flow li::after{content:"";position:absolute;width:1px;height:25px;bottom:-25px;left:50%;background:var(--champagne)}.eco-flow-num{color:var(--champagne);font-size:13px;padding-top:3px}.eco-mobile-flow h3{color:#fff;font-size:23px}.eco-mobile-flow p{font-size:15px;color:#c8d3e2;margin-top:8px}.eco-mobile-flow small{font-size:14px;color:#dfccaa;display:block;margin-top:12px}.eco-flow-core{border-radius:12px;background:#eee5d6;color:var(--ink);text-align:center;margin-top:24px;padding:30px 20px}.eco-flow-core h3{color:var(--ink);font-size:27px}.eco-flow-core p{color:var(--ink-2)}.eco-flow-core .eyebrow{color:var(--champ-ink);margin:0 0 12px}.eco-project-grid{grid-template-columns:1fr}.eco-company-grid .eco-card{display:flex}.eco-company-grid .eco-shot{aspect-ratio:8/5}.eco-company-grid .eco-shot img{height:100%}.eco-matrix table,.eco-matrix tbody,.eco-matrix tr{display:block}.eco-matrix thead{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}.eco-matrix{border:0;box-shadow:none;background:transparent}.eco-matrix tbody tr{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;margin-bottom:20px}.eco-matrix tbody th,.eco-matrix td,.eco-matrix td:nth-child(2){display:block;width:100%;padding:20px 24px;border:0}.eco-matrix tbody th{background:#edf0f5;padding-block:18px}.eco-matrix td:last-child{padding-top:0}.eco-matrix td::before{content:attr(data-label);display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--champ-ink);margin-bottom:6px}}
@media(max-width:640px){.hdr .in{height:72px}.nec-brand-logo{width:210px;height:40px}.hdr.open .nav{top:72px;height:calc(100dvh - 72px)}.hdr .wrap{width:calc(100% - 40px)}.hdr-min .nec-brand-logo{width:190px;height:36px}.eco-hero{padding:65px 0 56px}.eco-hero h1{font-size:43px;line-height:1.13;margin:22px auto}.eco-desktop-break{display:none}.eco-hero .lede{font-size:17px;line-height:1.7}.eco-index{gap:14px;flex-wrap:wrap;margin-top:26px}.eco-index a{font-size:13px;gap:8px}.eco-index-dot{display:none}.section-heading{margin-bottom:36px}.section-heading h2{font-size:35px}.section-heading>p:last-child:not(.eyebrow){font-size:17px}.eco-card-body,.eco-project .eco-card-body{padding:26px}.eco-card h3{font-size:28px}.eco-project h3{font-size:33px}.eco-note{font-size:14px;margin-top:28px}.eco-support{grid-template-columns:1fr}.eco-private{font-size:14px;line-height:1.8}.eco-closing h2{font-size:38px}.eco-closing .btn{font-size:15px;width:100%;padding-inline:12px}.panel .body{padding:26px}.faq summary{padding:22px}.faq details .a{padding:0 22px 24px}.ftr{padding-top:54px}.ftr .wordmark{font-size:18px;white-space:normal}.hero-epic .eyebrow{white-space:normal!important;max-width:30ch!important;letter-spacing:.14em!important}.btn{font-size:15px}}
@media(prefers-reduced-motion:reduce){.btn,.eco-card,.eco-shot img,.panel figure img{transition:none}.eco-card:hover,.btn:hover,.eco-card:hover .eco-shot img,.panel:hover figure img{transform:none}.eco-flow-lines{animation:none!important}}
.preview-form-note{padding:20px;border:1px solid var(--champagne);background:#f5eee2;color:var(--ink);border-radius:10px;margin-bottom:28px;font-size:16px;line-height:1.6}.form[aria-disabled=true] :disabled{cursor:not-allowed;opacity:.65}
@media(max-width:1439px){.hdr.open,body.home.nec-preview .hdr.open{position:fixed;inset:0 0 auto;width:100%;transform:none;opacity:1}.hdr.open .nav{top:80px;height:calc(100dvh - 80px)}}
@media(max-width:640px){.hdr.open .nav{top:72px;height:calc(100dvh - 72px)}}

.hero-cue span{font-size:12px!important}
body.home.nec-preview .hdr{position:sticky;top:0;background:rgba(255,255,255,.97);border-bottom-color:var(--line)}
body.home.nec-preview .hdr .nec-brand-dark{display:block!important}body.home.nec-preview .hdr .nec-brand-light{display:none!important}
body.home.nec-preview .hdr .nav a,body.home.nec-preview .hdr .nav button{color:var(--ink)}body.home.nec-preview .hdr .burger span{background:var(--deep)}
.eco-closing{text-align:center}.eco-closing h2,.eco-closing p{margin-left:auto;margin-right:auto}
@media(max-width:640px){.hero-epic .hero-copy{height:auto;min-height:100svh;padding-bottom:100px!important;padding-top:110px!important}.hero-epic .hero-copy>*{flex-shrink:0}}

/* Keep every comparison-table value visible on a phone. Labels repeat existing column headings. */
@media(max-width:760px){
 .tblwrap{overflow:visible;border:0;box-shadow:none;border-radius:0}
 .tblwrap table.tbl{display:block;min-width:0;width:100%}
 .tblwrap thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
 .tblwrap tbody,.tblwrap tbody tr{display:block}
 .tblwrap tbody tr{border:1px solid var(--line);border-radius:12px;background:#fff;margin-bottom:20px;overflow:hidden}
 .tblwrap table.tbl td{display:block;width:100%;white-space:normal;overflow-wrap:anywhere;padding:18px 22px}
 .tblwrap table.tbl td:first-child{background:#edf0f5}
 .tblwrap table.tbl td:last-child{border-bottom:0}
 .tblwrap td::before{content:attr(data-label);display:block;font-family:var(--body);font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--champ-ink);margin-bottom:6px}
}
