:root{--blue:#0754b8;--dark:#003f91;--ink:#101216;--muted:#626d7a;--line:#dce4ee;--soft:#f4f8fd}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}
.header{height:82px;position:fixed;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;gap:28px;padding:0 5vw;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid #e9edf2}.brand{margin-right:auto}.brand img{width:180px;height:auto;max-height:62px;object-fit:contain;display:block;transform:translateY(-5px)}.header nav{display:flex;gap:28px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.header nav a:hover{color:var(--blue)}
.quote{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:178px;padding:16px 25px;background:linear-gradient(135deg,var(--blue),var(--dark));color:#fff;font-size:12px;font-weight:900;letter-spacing:.09em;overflow:hidden;box-shadow:0 10px 25px rgba(0,63,145,.2);transition:.25s}.quote:hover{transform:translateY(-3px);box-shadow:0 15px 32px rgba(0,63,145,.3)}.broom{position:absolute;left:-48px;font-size:28px;filter:grayscale(1) brightness(0) invert(1);opacity:0}.quote:hover .broom{opacity:1;animation:sweep 1s cubic-bezier(.65,0,.35,1) forwards}.quote i{position:absolute;color:#fff;font-style:normal;font-size:13px;opacity:0}.quote i:first-of-type{left:38%;top:18%}.quote i:last-of-type{right:25%;bottom:17%}.quote:hover i{animation:spark .75s ease forwards}.quote:hover i:last-of-type{animation-delay:.12s}
@keyframes sweep{0%{left:-48px;transform:rotate(-18deg)}50%{transform:rotate(8deg) translateY(-3px)}100%{left:calc(100% + 5px);transform:rotate(-3deg)}}@keyframes spark{0%{opacity:0;transform:scale(.2)}35%{opacity:1;transform:scale(1.2)}100%{opacity:0;transform:scale(.4)}}
.menu{display:none;background:none;border:0;font-size:25px}.hero{min-height:730px;padding:145px 7vw 85px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:35px;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#fff 53%,#f3f8ff 100%)}.hero-copy{max-width:650px}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.18em;margin:0 0 18px}.blue{color:var(--blue)}h1{font-size:clamp(58px,7vw,104px);line-height:.9;letter-spacing:-.065em;margin:0;font-weight:900}h1 span{color:var(--blue)}.line{width:120px;height:5px;background:var(--blue);border-radius:10px;margin:28px 0}.lead{font-size:20px;line-height:1.55;color:var(--muted);max-width:540px}.actions{display:flex;align-items:center;gap:28px;margin-top:34px}.explore{color:var(--blue);font-weight:800}.hero-art{height:520px;position:relative}.buildings{position:absolute;right:0;top:0;width:85%;height:100%;background:linear-gradient(145deg,#0754b8,#003276);clip-path:polygon(24% 0,100% 0,100% 100%,0 100%,14% 55%);overflow:hidden}.buildings div{position:absolute;bottom:0;transform:skewY(-8deg);background:linear-gradient(160deg,rgba(255,255,255,.35),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.22)}.buildings div:nth-child(1){left:13%;width:28%;height:60%}.buildings div:nth-child(2){left:43%;width:25%;height:82%}.buildings div:nth-child(3){right:4%;width:24%;height:52%}.buildings b{position:absolute;right:18%;top:14%;font-size:110px;color:rgba(255,255,255,.32);transform:rotate(20deg)}.curve{position:absolute;left:-15%;bottom:-18%;width:90%;height:42%;background:#fff;border-radius:50%;transform:rotate(-7deg)}
.strip{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;padding:34px 7vw;background:var(--blue);color:#fff}.strip div{display:flex;flex-direction:column;gap:7px;border-right:1px solid rgba(255,255,255,.35);padding-right:28px}.strip div:last-child{border:0}.strip strong{font-size:19px}.strip span{font-size:13px;color:#dbeaff;line-height:1.5}
.section{padding:110px 7vw}.heading{max-width:700px}.heading h2,.why h2,.cta h2{font-size:clamp(44px,5vw,72px);line-height:.98;letter-spacing:-.05em;margin:0 0 24px}.heading>p:last-child{font-size:18px;line-height:1.6;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(2,1fr);margin-top:60px;border-top:1px solid var(--line)}.card{padding:38px 35px 42px;border-bottom:1px solid var(--line);transition:.3s}.card:nth-child(odd){border-right:1px solid var(--line)}.card:hover{background:var(--soft);transform:translateY(-3px)}.card small{color:var(--blue);font-weight:900}.card h3{font-size:29px;margin:20px 0 10px}.card p{color:var(--muted);line-height:1.65}.card a{color:var(--blue);font-size:13px;font-weight:900}
.why{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:center;background:var(--soft);padding:110px 7vw}.why-art{height:430px;background:linear-gradient(145deg,var(--blue),var(--dark));display:flex;align-items:center;justify-content:center;position:relative;clip-path:ellipse(75% 65% at 35% 50%)}.why-art .t{width:220px;height:220px;border:2px solid rgba(255,255,255,.45);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:120px;font-weight:900}.why-art span{position:absolute;right:17%;top:18%;color:#fff;font-size:30px}.why h2 span{color:var(--blue)}.why-list{margin-top:38px}.why-list div{display:flex;gap:22px;padding:20px 0;border-top:1px solid var(--line)}.why-list b{color:var(--blue)}.why-list p{margin:0;color:var(--muted);line-height:1.55}.why-list strong{color:var(--ink)}
.center{text-align:center;margin-left:auto;margin-right:auto}.steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px;border-top:1px solid var(--line)}.step{padding:34px 30px;border-right:1px solid var(--line)}.step:last-child{border:0}.step span{font-size:42px;color:var(--blue);font-weight:900}.step h3{font-size:25px;margin:20px 0 10px}.step p{color:var(--muted);line-height:1.6}

.quote-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:start}.quote-copy{padding-top:10px}.quote-copy h2{margin-bottom:20px}.quote-copy p:not(.eyebrow){max-width:520px}.quote-form{background:#fff;padding:30px;color:var(--ink);box-shadow:0 22px 55px rgba(0,25,80,.2)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.quote-form label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.quote-form .full{grid-column:1/-1}.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:1px solid #d8e0ea;background:#fff;padding:13px 14px;font:inherit;font-size:14px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--ink);outline:none;border-radius:0}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(7,84,184,.08)}.quote-form textarea{resize:vertical;min-height:100px}.submit-quote{border:0;cursor:pointer;margin-top:20px;min-width:210px}.submit-quote span{margin-left:8px;font-size:17px}.form-success{font-size:14px!important;line-height:1.5;color:#16723a!important;background:#eefaf2;border:1px solid #bfe5ca;padding:14px 16px;margin:16px 0 0!important;font-weight:700}.form-error{font-size:14px!important;line-height:1.5;color:#9d2d2d!important;background:#fff2f2;border:1px solid #efc0c0;padding:14px 16px;margin:16px 0 0!important;font-weight:700}.form-error a{color:#0754b8;text-decoration:underline}.form-note{font-size:11px!important;color:#687383!important;margin:12px 0 0!important}.honeypot{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.cta{padding:115px 7vw;background:linear-gradient(135deg,var(--blue),var(--dark));color:#fff;overflow:hidden;position:relative}.cta:after{content:"✦";position:absolute;right:10%;top:5%;font-size:190px;color:rgba(255,255,255,.08)}.cta>div{position:relative;z-index:2}.cta p:not(.eyebrow){font-size:20px;color:#dcecff;margin-bottom:32px}.quote.light{background:#fff;color:var(--blue);box-shadow:none}.quote.light .broom{filter:none}
footer{display:grid;grid-template-columns:1fr 1fr auto;gap:35px;align-items:end;padding:50px 7vw}footer img{width:155px;height:68px;object-fit:cover;object-position:50% 32%;mix-blend-mode:multiply}footer p{color:var(--muted);margin:6px 0 0}.footer-links{display:flex;gap:20px;flex-wrap:wrap;font-size:13px;font-weight:800}footer small{color:#77808d;text-align:right}
.reveal{opacity:0;transform:translateY(24px);transition:.75s cubic-bezier(.22,1,.36,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:850px){.quote-wrap{grid-template-columns:1fr;gap:35px}.quote-form{padding:24px}.header{padding:0 5vw}.header nav{display:none}.header>.quote{display:none}.menu{display:block}.hero{grid-template-columns:1fr;padding-top:130px}.hero-art{height:360px}.strip{grid-template-columns:1fr;gap:22px}.strip div{border-right:0;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:20px}.cards{grid-template-columns:1fr}.card:nth-child(odd){border-right:0}.why{grid-template-columns:1fr;gap:45px}.why-art{height:350px}.steps{grid-template-columns:1fr}.step{border-right:0;border-bottom:1px solid var(--line)}footer{grid-template-columns:1fr}footer small{text-align:left}}
@media(max-width:560px){.form-grid{grid-template-columns:1fr}.quote-form .full{grid-column:auto}.quote-form{padding:20px}h1{font-size:54px}.lead{font-size:17px}.actions{align-items:flex-start;flex-direction:column}.section,.why,.cta{padding:80px 6vw}.hero{padding-left:6vw;padding-right:6vw}.hero-art{height:300px}.buildings{width:105%;right:-10%}.heading h2,.why h2,.cta h2{font-size:46px}}
