:root{color:#111827;background:#f8fafc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--navy:#1e3a5f;--slate:#4b5563;--green:#22c55e;--off-white:#f8fafc;--ink:#111827;--muted:#4b5563;--panel:#ffffff;--line:#d8dee8;--accent-dark:#168a43;--navy-soft:#e8eef6;--danger:#b42318;--success-bg:#ecfdf3;--danger-bg:#fef3f2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,rgba(30,58,95,.06),transparent 360px),var(--off-white)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.page-shell{min-height:100vh;overflow:hidden}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:min(1120px,calc(100% - 32px));margin:0 auto;padding:22px 0}.brand,.button,.header-action{display:inline-flex;align-items:center;justify-content:center}.brand{color:var(--navy)}.brand-logo,.footer-logo-img,.hero-logo{display:block;height:auto;object-fit:contain}.brand-logo{width:clamp(220px,22vw,280px)}.header-action{min-height:42px;border:1px solid var(--line);border-radius:8px;padding:0 1rem;color:var(--navy);background:rgba(255,255,255,.76);font-weight:800}.header-action:hover{border-color:rgba(34,197,94,.7);color:var(--accent-dark)}.hero{width:min(1120px,calc(100% - 32px));margin:26px auto 0;min-height:calc(100vh - 112px);display:grid;grid-template-columns:minmax(0,.98fr) minmax(330px,.72fr);align-items:center;grid-gap:clamp(2.5rem,6vw,6rem);gap:clamp(2.5rem,6vw,6rem);padding-bottom:72px}.hero-copy{max-width:660px}.hero-logo{width:clamp(360px,40vw,480px);max-width:100%;margin-bottom:1.8rem}.eyebrow{margin:0 0 .9rem;color:var(--navy);font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{margin-bottom:1.25rem;color:var(--navy);font-size:clamp(3rem,7vw,5rem);line-height:.98}h1,h2{letter-spacing:0}h2{color:var(--ink);font-size:clamp(2rem,4vw,3.35rem);line-height:1.02}h2,h3{margin-bottom:0}h3{color:var(--navy);font-size:1.05rem}.form-copy>p,.hero-text,.intro>p{color:var(--muted);font-size:1.1rem;line-height:1.7}.hero-text{max-width:620px;margin-bottom:2rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem}.button{min-height:50px;border:0;border-radius:8px;padding:0 1.15rem;cursor:pointer;font-weight:900}.button:disabled{cursor:not-allowed;opacity:.72}.button-primary{background:var(--green);color:#07130b;box-shadow:0 14px 30px rgba(34,197,94,.2)}.button-primary:hover:not(:disabled){background:var(--accent-dark);color:#ffffff}.button-secondary{background:#ffffff;color:var(--navy);border:1px solid var(--line)}.button-secondary:hover{border-color:rgba(30,58,95,.35);background:var(--navy-soft)}.quote-form,.quote-preview{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.94);box-shadow:0 28px 80px rgba(17,24,39,.12)}.quote-preview{padding:1.2rem;position:relative}.quote-preview:before{content:"";position:absolute;inset:-32px -28px auto auto;width:122px;height:122px;border:16px solid rgba(34,197,94,.18);border-radius:8px;z-index:-1}.part-card,.preview-grid,.preview-header{position:relative}.preview-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;color:var(--muted);font-size:.92rem;font-weight:800}.preview-header strong{border-radius:999px;background:rgba(34,197,94,.14);color:var(--accent-dark);padding:.35rem .7rem;font-size:.78rem}.part-card{grid-template-columns:112px 1fr;grid-gap:1rem;gap:1rem;align-items:center;margin-bottom:1rem;padding:1rem;background:var(--navy-soft)}.part-card,.part-visual{display:grid;border-radius:8px}.part-visual{aspect-ratio:1;background:linear-gradient(135deg,rgba(30,58,95,.24),rgba(34,197,94,.1)),repeating-linear-gradient(90deg,transparent 0 12px,rgba(17,24,39,.07) 12px 13px);position:relative;overflow:hidden;place-items:center}.part-visual span{position:absolute;display:block;background:var(--navy)}.part-visual span:first-child{width:58%;height:18%;left:20%;top:28%;border-radius:7px}.part-visual span:nth-child(2){width:22%;height:52%;left:39%;top:27%;border-radius:7px}.part-visual span:nth-child(3){width:18px;height:18px;left:42%;top:32%;border-radius:999px;background:var(--off-white)}.part-title{margin-bottom:.3rem;color:var(--ink);font-weight:900;font-size:1.08rem}.part-meta{margin-bottom:0;color:var(--muted)}.preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.preview-grid div{min-height:92px;border:1px solid var(--line);border-radius:8px;padding:.9rem;background:#ffffff}.preview-grid span{display:block;color:var(--muted);font-size:.8rem;margin-bottom:.45rem}.preview-grid strong{color:var(--ink)}.quote-section,.section{width:min(1120px,calc(100% - 32px));margin:0 auto}.intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(300px,.7fr);grid-gap:clamp(1.5rem,4vw,4rem);gap:clamp(1.5rem,4vw,4rem);align-items:end;padding:72px 0 34px;border-top:1px solid rgba(30,58,95,.14)}.intro>p{margin-bottom:0}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1rem;gap:1rem;padding:0 0 72px}.step{min-height:150px;border-top:4px solid var(--green);background:#ffffff;border-radius:8px;padding:1.2rem;box-shadow:0 16px 40px rgba(17,24,39,.08)}.step span{display:block;margin-bottom:1.5rem;color:var(--muted);font-weight:900}.quote-section{display:grid;grid-template-columns:minmax(0,.76fr) minmax(320px,1fr);grid-gap:clamp(1.5rem,4vw,4rem);gap:clamp(1.5rem,4vw,4rem);align-items:start;padding:74px 0 88px;border-top:1px solid rgba(30,58,95,.14)}.form-copy{position:-webkit-sticky;position:sticky;top:24px}.form-copy p{margin-top:1.1rem}.capability-list{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.5rem}.capability-list span{border:1px solid var(--line);border-radius:999px;padding:.55rem .8rem;background:rgba(255,255,255,.76);color:var(--navy);font-size:.9rem;font-weight:800}.quote-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem;padding:clamp(1rem,3vw,1.5rem)}label{display:grid;grid-gap:.45rem;gap:.45rem;color:var(--ink);font-weight:800;font-size:.92rem}.optional-label{color:var(--muted);font-size:.78rem;font-weight:800}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:#ffffff;color:var(--ink);padding:.85rem .9rem;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(34,197,94,.16)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--danger)}textarea{resize:vertical}.file-upload-field input[type=file]{padding:.75rem}.file-selected{color:var(--navy);font-size:.82rem;font-weight:800;overflow-wrap:anywhere}.field-error,.field-hint{font-size:.82rem;font-weight:700}.field-error{color:var(--danger)}.field-hint{color:var(--muted)}.form-status{grid-column:1/-1;margin:0;border-radius:8px;padding:.9rem 1rem;font-weight:750;line-height:1.5}.form-status p{margin:0}.form-status p+p,.status-action{margin-top:.75rem}.form-status-success{border:1px solid rgba(34,197,94,.34);background:var(--success-bg);color:#14532d}.form-status-error{border:1px solid rgba(180,35,24,.24);background:var(--danger-bg);color:var(--danger)}.full-width{grid-column:1/-1}.site-footer{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:30px 0 42px;border-top:1px solid rgba(30,58,95,.14);display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.footer-logo{color:var(--navy)}.footer-logo-img{width:clamp(130px,16vw,180px)}.site-footer p{margin:0;color:var(--muted);line-height:1.5;text-align:right}@media (max-width:850px){.hero,.intro,.quote-section{grid-template-columns:1fr}.hero{min-height:auto;margin-top:22px}h1{font-size:clamp(2.8rem,13vw,4.8rem)}.form-copy{position:static}}@media (max-width:640px){.hero,.quote-section,.section,.site-header{width:min(100% - 24px,1120px)}.header-action{display:none}.brand-logo{width:clamp(170px,52vw,210px)}.hero{padding-bottom:56px}.hero-logo{width:min(100%,340px);margin-bottom:1.4rem}.button,.hero-actions{width:100%}.quote-preview{padding:.9rem}.part-card,.preview-grid,.quote-form,.steps{grid-template-columns:1fr}.part-card{grid-template-columns:92px 1fr}.intro,.quote-section{padding-top:56px}.site-footer{width:min(100% - 24px,1120px);align-items:flex-start;flex-direction:column}.site-footer p{text-align:left}}