html { min-height:100%; }
body { margin:0; min-height:100vh; display:flex; flex-direction:column; }
body > #root, body > main { flex:1 0 auto; }
body > #root > main { min-height:0 !important; }
body > main { min-height:0 !important; }
.nexops-site-header,.nexops-site-footer { box-sizing:border-box; width:100%; background:#001427; color:white; font-family:Quicksand,Arial,sans-serif; }
.nexops-site-header { flex:none; padding:18px 24px; display:flex; align-items:center; justify-content:center; border-bottom:1px solid #263747; }
.nexops-site-header img { display:block; width:170px; max-width:60vw; height:auto; }
.nexops-site-footer { flex:none; margin-top:auto; border-top:1px solid #263747; }
.nexops-footer-inner { max-width:1180px; margin:0 auto; padding:26px 24px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; }
.nexops-footer-inner p { margin:0; font-size:13px; color:#c7cbcf; }
.nexops-footer-legal { display:flex; flex-wrap:wrap; gap:18px; font-size:13px; }
.nexops-footer-legal a { color:white; }
body > #root .topbar,body > #root .footer { display:none !important; }
.saved-card > .eyebrow,.error-card > .eyebrow { display:none !important; }
.progress-card { position:static !important; }
.offer-card { position:static !important; }
.page-wrap { padding-bottom:48px !important; }
body:not([data-details-open]) .content-grid { visibility:hidden; }
body[data-intro-active] #root { display:none; }
.project-intro { box-sizing:border-box; width:min(980px,calc(100% - 40px)); margin:0 auto; padding:56px 0; color:#001427; font-family:Quicksand,Arial,sans-serif; }
.project-intro .intro-eyebrow { font-size:13px; letter-spacing:.14em; font-weight:700; color:#7569df; }
.project-intro h1 { font:400 clamp(34px,5vw,52px)/1.15 Heebo,Arial,sans-serif; margin:12px 0 18px; }
.project-intro p { max-width:760px; font-size:17px; line-height:1.65; }
.project-intro ol { padding-left:24px; margin:24px 0; }
.project-intro li { padding:7px 0; line-height:1.6; }
.project-intro .primary-button { border:0; border-radius:9px; background:#f6d416; color:#001427; padding:16px 24px; font:700 16px Quicksand,Arial,sans-serif; cursor:pointer; }
.project-intro .project-note { font-size:14px; color:#657288; }
@media(max-width:700px){.nexops-footer-inner{justify-content:center;text-align:center}.nexops-footer-legal{justify-content:center}.project-intro{padding:32px 0}.page-wrap{width:calc(100% - 32px)!important}}
