/* V13: bounded visual refinement and final legal-page presentation. */
.legal-hero{background:linear-gradient(120deg,#010f2a,#08284c 62%,#0b4b7f);color:#f5faff;padding:82px 0 68px}.legal-hero h1{max-width:860px;margin-bottom:16px}.legal-page{max-width:920px;padding:72px 0 96px}.legal-page section{padding:23px 0;border-bottom:1px solid #bfd3e5}.legal-page h2{font-size:clamp(25px,2.5vw,36px);margin:0 0 14px}.legal-page h3{font-size:18px;margin:24px 0 5px}.legal-page p{max-width:76ch}.legal-meta{padding:20px 22px;border-left:3px solid #087cff;background:#eaf6ff;color:#173451}.footer-grid nav{gap:16px}.footer-grid nav a{font-size:12px}.footer-grid .fine{line-height:1.55}

/* Homepage: use the supplied visual audit to correct geometry without altering controls. */
.home-reconstruction .home-hero{background:radial-gradient(ellipse 40% 78% at 72% 74%,rgba(1,139,249,.30),transparent 67%),radial-gradient(ellipse 22% 42% at 98% 83%,rgba(5,107,225,.38),transparent 72%),linear-gradient(112deg,#010d26 0%,#041a39 57%,#08284e 100%)}
.home-reconstruction .home-hero:before{opacity:1;background:radial-gradient(ellipse 22% 72% at 57% 82%,rgba(12,175,255,.20),transparent 68%),radial-gradient(ellipse 28% 55% at 97% 76%,rgba(12,146,255,.20),transparent 70%)}
.home-reconstruction .home-hero:after{background:linear-gradient(90deg,rgba(0,7,22,.25),transparent 48%,rgba(4,57,117,.10))}
@media(min-width:1001px){.home-reconstruction .hero-grid{grid-template-columns:minmax(510px,.88fr) minmax(560px,1.12fr);gap:42px;min-height:515px;padding:42px 0 58px}.home-reconstruction .hero-copy{max-width:620px}.home-reconstruction .hero-copy h1{font-size:clamp(52px,4.4vw,68px);line-height:.96;letter-spacing:-.064em;white-space:nowrap;margin:15px 0 16px}.home-reconstruction .hero-copy .lead{font-size:15px;max-width:48ch}.home-reconstruction .dashboard{transform:perspective(1450px) rotateY(-4deg) rotateX(1.5deg);max-width:760px;justify-self:end}}
.home-reconstruction .dashboard{padding:16px 18px 14px;border-radius:19px;border-color:rgba(105,228,255,.92);background:linear-gradient(152deg,rgba(13,45,88,.98),rgba(2,17,47,.99));box-shadow:0 0 0 1px rgba(125,230,255,.22),0 0 18px rgba(0,187,255,.45),0 22px 48px rgba(0,5,27,.57)}
.home-reconstruction .dashboard:before{inset:-34px -42px;background:radial-gradient(ellipse at 51% 61%,rgba(0,183,255,.23),transparent 62%);filter:blur(16px)}
.home-reconstruction .dashboard:after{width:130%;height:44%;left:-16%;bottom:-18%;background:radial-gradient(ellipse 39% 80% at 16% 78%,rgba(20,206,255,.22),transparent 64%),radial-gradient(ellipse 37% 72% at 87% 65%,rgba(12,155,255,.22),transparent 63%);transform:none;opacity:1}
.home-reconstruction .dash-top{padding-bottom:7px}.home-reconstruction .dash-heading strong{font-size:14px}.home-reconstruction .data-label{font-size:9px;line-height:1.35;margin:6px 0 8px;max-width:72ch}.home-reconstruction .metrics{gap:7px}.home-reconstruction .metrics>div{padding:8px 9px;border-radius:7px}.home-reconstruction .metrics strong.metric-value{font-size:22px}.home-reconstruction .metric-cell .metric-delta{font-size:8px}.home-reconstruction .chart-tools{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:8px}.home-reconstruction .chart-tools label{display:flex;align-items:center;gap:4px;font-size:9px;color:#beddf4}.home-reconstruction .chart-tools select{min-width:0;max-width:142px;padding:3px 5px;border-radius:4px}.home-reconstruction .plot{padding:3px 7px;margin:8px 0;border-radius:7px}.home-reconstruction .plot:before{font-size:10px}.home-reconstruction .plot svg{max-height:128px}.home-reconstruction .chart-context{font-size:9px;margin:5px 0}.home-reconstruction .audit-demo{padding:7px 9px;margin-top:8px}.home-reconstruction .audit-label,.home-reconstruction .audit-legend{font-size:9px}.home-reconstruction .demo-details{display:block;margin-top:7px}.home-reconstruction .demo-details summary{font-size:9px}.home-reconstruction .demo-details p,.home-reconstruction .demo-details table{font-size:10px}
.home-reconstruction .home-hero+.pixel-band{height:58px;background:linear-gradient(180deg,#092a4c 0%,#226395 34%,#a7d1ec 68%,#edf8ff 100%)}.home-reconstruction .home-hero+.pixel-band:after{opacity:.52;background-image:radial-gradient(circle at 4% 33%,#cfeaff 0 3px,transparent 3.8px),radial-gradient(circle at 14% 53%,#cfeaff 0 4px,transparent 4.8px),radial-gradient(circle at 27% 45%,#84bce5 0 3px,transparent 3.8px),radial-gradient(circle at 47% 57%,#dff4ff 0 4px,transparent 4.8px),radial-gradient(circle at 66% 35%,#9bc9e8 0 3px,transparent 3.8px),radial-gradient(circle at 83% 53%,#dff4ff 0 4px,transparent 4.8px),radial-gradient(circle at 96% 39%,#74add7 0 3px,transparent 3.8px)}
.home-reconstruction .section{padding:45px 0}.home-reconstruction .services-grid{margin-top:25px}.home-reconstruction .service{min-height:150px}.home-reconstruction .steps{margin-top:22px}.home-reconstruction .pricing{padding-top:23px}.home-reconstruction .final-cta:after{height:174px;background:radial-gradient(ellipse 43% 75% at 9% 112%,rgba(9,128,246,.80),transparent 61%),radial-gradient(ellipse 45% 85% at 95% 115%,rgba(3,104,229,.76),transparent 62%),radial-gradient(circle at 12% 83%,rgba(225,250,255,.9) 0 1px,transparent 1.7px),radial-gradient(circle at 22% 91%,rgba(225,250,255,.9) 0 1px,transparent 1.7px),radial-gradient(circle at 76% 89%,rgba(225,250,255,.9) 0 1px,transparent 1.7px),radial-gradient(circle at 89% 82%,rgba(225,250,255,.9) 0 1px,transparent 1.7px);background-size:auto,auto,9px 9px,11px 11px,9px 9px,11px 11px}
/* Mobile navigation is deliberately a two-control layout: brand plus menu.
   The assessment action remains first in the hero and inside the expanded menu.
   This avoids asking a 320px viewport to fit three independent controls. */
@media(max-width:1000px){.home-reconstruction .nav{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:74px;padding-top:10px;padding-bottom:10px}.home-reconstruction .nav>.brand{min-width:0;max-width:100%;overflow:hidden}.home-reconstruction .nav>.brand .wordmark{max-width:100%;width:142px;height:47px}.home-reconstruction .menu-toggle{grid-column:2;position:static;margin:0;z-index:4;min-width:46px;min-height:46px;padding:0 10px;white-space:nowrap}.home-reconstruction .nav>nav{display:none!important;position:absolute;top:calc(100% + 8px);right:0;width:min(320px,calc(100vw - 36px));z-index:3}.home-reconstruction .nav>nav.open{display:flex!important;flex-direction:column;align-items:stretch;gap:2px;padding:12px;background:#061b39;border:1px solid #4d8ec1;border-radius:9px;box-shadow:0 18px 34px rgba(0,7,22,.45)}.home-reconstruction .nav>nav.open a{display:block;padding:11px 12px}.home-reconstruction .nav>nav.open .button{min-height:44px;margin-top:5px;padding:10px 12px;font-size:12px;white-space:normal}.home-reconstruction .hero-grid{grid-template-columns:1fr;padding:38px 0 48px;gap:25px}.home-reconstruction .hero-copy{max-width:590px}.home-reconstruction .hero-copy h1{font-size:clamp(43px,7.3vw,59px);line-height:.96}.home-reconstruction .dashboard{transform:none;max-width:650px;width:100%;justify-self:center}.home-reconstruction .dashboard:after{display:none}.home-reconstruction .section-heading{gap:28px}.home-reconstruction .services-grid{margin-top:20px}}
@media(max-width:700px){.home-reconstruction .wordmark{width:129px;height:42px}.home-reconstruction .hero-copy h1{font-size:clamp(39px,11vw,48px);letter-spacing:-.06em;max-width:360px}.home-reconstruction .hero-copy .lead{font-size:15px;line-height:1.5}.home-reconstruction .hero-copy .actions{margin:20px 0 12px}.home-reconstruction .proof{gap:12px;font-size:10px}.home-reconstruction .dashboard{padding:13px 12px;border-radius:15px}.home-reconstruction .dash-heading strong{font-size:13px}.home-reconstruction .data-label{font-size:8.5px}.home-reconstruction .metrics{gap:5px}.home-reconstruction .metrics>div{padding:7px 5px}.home-reconstruction .metrics strong.metric-value{font-size:18px}.home-reconstruction .metrics span{font-size:7.5px}.home-reconstruction .metric-cell .metric-delta{font-size:7px}.home-reconstruction .chart-tools{align-items:stretch;flex-direction:column}.home-reconstruction .chart-tools label{justify-content:space-between}.home-reconstruction .chart-tools select{max-width:170px}.home-reconstruction .plot svg{max-height:115px}.home-reconstruction .audit-demo{grid-template-columns:1fr .7fr}.home-reconstruction .home-hero+.pixel-band{height:48px}.home-reconstruction .section{padding:39px 0}.home-reconstruction .service{min-height:0}.home-reconstruction .steps{grid-template-columns:repeat(2,1fr);gap:22px}.home-reconstruction .pricing{gap:16px}.home-reconstruction .final-cta{padding-bottom:78px}.home-reconstruction .footer-grid{gap:15px}.home-reconstruction footer nav{gap:13px}.legal-hero{padding:56px 0 45px}.legal-page{padding:44px 0 68px}.legal-page section{padding:19px 0}.legal-meta{padding:15px}.footer-grid nav{justify-content:flex-start}}
@media(max-width:360px){.home-reconstruction .nav{gap:8px}.home-reconstruction .nav>.brand .wordmark{width:121px;height:40px}.home-reconstruction .menu-toggle{min-width:44px;min-height:44px;padding:0 8px}.home-reconstruction .nav>nav{width:calc(100vw - 36px)}}

/* Decorative ribbons are a single light SVG layer, not repeated contour texture. */
.home-reconstruction .home-hero:before{background-image:url('/assets/energy-ribbons.svg');background-repeat:no-repeat;background-position:62% 73%;background-size:min(1180px,88vw) auto;opacity:.92}
.home-reconstruction .home-hero:after{background:linear-gradient(90deg,rgba(0,7,22,.23),transparent 44%,rgba(4,57,117,.09))}
@media(max-width:1000px){.home-reconstruction .home-hero:before{background-position:50% 86%;background-size:940px auto;opacity:.70}}
@media(max-width:700px){.home-reconstruction .home-hero:before{background-position:54% 64%;background-size:680px auto;opacity:.62}}

/* A less uniform dissolve: varied square clusters with an intentionally quiet center. */
.home-reconstruction .home-hero+.pixel-band{background:linear-gradient(180deg,#082a4d 0%,#215f91 30%,#87b8d9 57%,#dceffc 79%,#eff9ff 100%)}
.home-reconstruction .home-hero+.pixel-band:after{opacity:.74;background-image:url('/assets/pixel-dissolve.svg'),radial-gradient(circle at 9% 52%,#d8f1ff 0 3px,transparent 3.8px),radial-gradient(circle at 31% 37%,#70a9d2 0 4px,transparent 4.8px),radial-gradient(circle at 68% 62%,#e7f7ff 0 3px,transparent 3.8px),radial-gradient(circle at 91% 44%,#7bb4dd 0 5px,transparent 5.8px);background-size:auto 90px,31px 29px,43px 41px,37px 35px,53px 49px;background-position:center,0 0,12px 8px,5px 11px,20px 3px}
@media(max-width:700px){.home-reconstruction .home-hero+.pixel-band:after{opacity:.47;background-size:auto 70px,37px 35px,49px 47px,43px 41px,59px 55px}}

/* Layered, dotted lower-wave field; it is decorative and remains behind the CTA. */
.home-reconstruction .final-cta:after{height:194px;background:radial-gradient(ellipse 46% 84% at 4% 111%,rgba(16,138,255,.88),transparent 60%),radial-gradient(ellipse 49% 90% at 100% 112%,rgba(1,100,226,.84),transparent 63%),radial-gradient(ellipse 28% 64% at 50% 120%,rgba(85,182,255,.50),transparent 70%),repeating-radial-gradient(ellipse 42% 18% at 12% 111%,transparent 0 5px,rgba(230,250,255,.94) 5.7px 6.7px,transparent 7.4px 12px),repeating-radial-gradient(ellipse 39% 20% at 85% 110%,transparent 0 5px,rgba(222,248,255,.92) 5.7px 6.7px,transparent 7.4px 12px)}
