:root{--ink:#111827;--paper:#f7f9fc;--gold:#2563eb;--white:#fff;--muted:#667085;--line:#d9e1ec;--deep:#0b1628;--sky:#38bdf8;--blue:#2563eb}
body{background:#f4f7fb;color:var(--ink)}
.site-header{position:absolute;height:92px;background:linear-gradient(180deg,rgba(7,15,28,.94),rgba(7,15,28,.45),transparent);border:0;padding:0 6vw}.site-header nav>a:not(.nav-call){color:#e7edf7}.nav-call{background:#fff;color:#0b1628;border:0;border-radius:999px;padding:.78rem 1.15rem}.nav-call:hover{background:#dceaff!important;color:#0b1628!important}.brand-mark{border-radius:12px;background:linear-gradient(145deg,#2563eb,#38bdf8);box-shadow:0 10px 26px rgba(37,99,235,.3)}.brand-mark svg{fill:#fff}.brand small{color:#bcd4ff}
.hero{min-height:760px;padding:130px 7vw 70px}.hero-shade{background:linear-gradient(90deg,rgba(5,12,24,.96) 0%,rgba(5,12,24,.81) 44%,rgba(5,12,24,.25) 78%),linear-gradient(0deg,rgba(5,12,24,.58),transparent 50%)}.hero-content{max-width:850px;padding:2.2rem 2.35rem;border:1px solid rgba(255,255,255,.17);background:linear-gradient(135deg,rgba(12,24,43,.72),rgba(12,24,43,.22));backdrop-filter:blur(13px);border-radius:24px;box-shadow:0 28px 70px rgba(0,0,0,.28)}.hero h1{font-size:clamp(4rem,7.6vw,7.3rem)}.hero h1 span{color:#72c9ff}.hero-copy{color:#e4e9f2}.primary,.button.light,.form-submit{background:linear-gradient(135deg,#2563eb,#1677df);border-radius:10px;box-shadow:0 12px 28px rgba(37,99,235,.22)}.primary:hover,.button.light:hover,.form-submit:hover{background:linear-gradient(135deg,#1d4ed8,#0f6bc8)}.ghost{border-radius:10px;background:rgba(255,255,255,.06)}.hero-proof{padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.15)}
.intro,.why,.process,.requests,.service-area{background:#f7f9fc}.intro{padding-top:8rem}.services-grid{gap:1.25rem;background:#f7f9fc}.service{border:1px solid #dbe4ef;border-top:0;border-radius:18px;padding:1.5rem;overflow:hidden;box-shadow:0 14px 40px rgba(11,22,40,.07);min-height:700px}.service:before{content:"";height:5px;background:linear-gradient(90deg,#2563eb,#38bdf8);position:absolute;top:0;left:0;right:0}.service{position:relative}.service-visual{margin:1rem -1.5rem 1.6rem}.service.featured,.service:hover{border-color:#aac5eb;box-shadow:0 24px 55px rgba(20,64,125,.14)}.service h3{font-size:1.55rem}.service-number{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#e8f1ff;color:#1d4ed8;font-weight:800}.why{background:var(--deep);color:#fff}.why-panel>p:not(.eyebrow){color:#b8c5d8}.checks span{border-color:#34435a}.quote-card{border-radius:22px;background:linear-gradient(145deg,#173b70,#2563eb);box-shadow:0 22px 60px rgba(0,0,0,.25)}.process{background:#fff}.steps b{border-radius:12px;color:#fff}.contact{background:linear-gradient(135deg,#0b1628,#102d57);color:#fff;border-top:0}.contact .eyebrow{color:#66c8ff}.requests{background:#eef3f9}.lead-form{border:1px solid #d5e1ef;border-top:0;border-radius:18px;position:relative;overflow:hidden}.lead-form:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#2563eb,#38bdf8)}.form-title>span{border-radius:11px;background:#0b1628}.lead-form input,.lead-form select,.lead-form textarea{border-radius:9px;background:#f8fafc}.map-frame{border-radius:22px;overflow:hidden;border:8px solid #fff}.area-tags span{border-radius:999px;background:#fff;color:#26476e}.mobile-call{background:#2563eb}
.review-section{padding:7rem 7vw;background:linear-gradient(135deg,#081326,#132b4d);color:#fff;display:grid;grid-template-columns:.78fr 1.22fr;gap:6rem;align-items:center}.review-copy h2{font:700 clamp(3rem,5.3vw,5.4rem)/.98 "Oswald",sans-serif;letter-spacing:-.055em;margin:0 0 1.8rem}.review-copy>p:not(.eyebrow){color:#b9c7da;line-height:1.75;max-width:550px}.review-promise{border-left:3px solid #38bdf8;padding:1rem 0 1rem 1.3rem;margin-top:2.2rem}.review-promise strong,.review-promise span{display:block}.review-promise span{color:#9fb0c7;font-size:.83rem;margin-top:.25rem}.rating-form{background:#fff;color:#111827;border-radius:22px;padding:2.2rem;display:grid;gap:1.2rem;box-shadow:0 30px 70px rgba(0,0,0,.28)}.rating-heading{display:flex;align-items:center;gap:1rem}.rating-heading>span{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:#e8f1ff;color:#2563eb;font-size:1.6rem}.rating-heading h3{font:700 1.55rem "Oswald",sans-serif;margin:0}.rating-heading p{margin:.15rem 0 0;color:#667085;font-size:.85rem}.rating-form fieldset{border:0;padding:0;margin:0}.rating-form legend,.rating-form label{display:grid;gap:.45rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#344054}.rating-stars{display:flex;gap:.25rem}.rating-stars button{border:0;background:transparent;color:#c9d1dc;font-size:2.25rem;line-height:1;cursor:pointer;padding:.2rem}.rating-stars button.active{color:#2f80ed;text-shadow:0 5px 18px rgba(47,128,237,.25)}.rating-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.rating-form input,.rating-form select,.rating-form textarea{width:100%;border:1px solid #ced8e5;border-radius:9px;background:#f8fafc;color:#111827;padding:.9rem;font:500 1rem Inter,sans-serif}.rating-form textarea{resize:vertical}.rating-status{min-height:1.4rem;margin:0;color:#1d4ed8;font-size:.82rem}
.chat-launcher{position:fixed;right:24px;bottom:24px;z-index:50;border:0;border-radius:999px;background:linear-gradient(135deg,#0b1628,#183d71);color:#fff;padding:.9rem 1.1rem;display:flex;align-items:center;gap:.65rem;font:700 .84rem Inter,sans-serif;box-shadow:0 18px 50px rgba(7,18,35,.32);cursor:pointer}.chat-launcher b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#2563eb}.chat-pulse{width:9px;height:9px;border-radius:50%;background:#54d98c;box-shadow:0 0 0 5px rgba(84,217,140,.15)}.chat-panel{position:fixed;right:24px;bottom:88px;z-index:60;width:min(390px,calc(100vw - 32px));height:min(620px,calc(100vh - 120px));background:#fff;border:1px solid #d5deea;border-radius:22px;box-shadow:0 28px 80px rgba(5,14,28,.3);display:none;grid-template-rows:auto 1fr auto auto auto;overflow:hidden}.chat-panel.open{display:grid}.chat-header{padding:1rem 1.1rem;background:#0b1628;color:#fff;display:flex;justify-content:space-between;align-items:center}.chat-header>div{display:flex;align-items:center;gap:.75rem}.assistant-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#2563eb,#38bdf8);font:700 1.25rem Oswald,sans-serif}.chat-header strong,.chat-header small{display:block}.chat-header small{color:#b9c7da;font-size:.7rem}.chat-header small i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#54d98c;margin-right:.35rem}.chat-header>button{border:0;background:transparent;color:#fff;font-size:1.8rem;cursor:pointer}.chat-messages{padding:1rem;background:#f4f7fb;overflow-y:auto;display:flex;flex-direction:column;gap:.7rem}.chat-message{max-width:84%;padding:.78rem .9rem;border-radius:15px;font-size:.88rem;line-height:1.48}.chat-message.assistant{align-self:flex-start;background:#fff;color:#26374e;border:1px solid #dbe4ef;border-bottom-left-radius:4px}.chat-message.user{align-self:flex-end;background:#2563eb;color:#fff;border-bottom-right-radius:4px}.chat-message a{font-weight:800;text-decoration:underline}.chat-chips{display:flex;gap:.45rem;overflow-x:auto;padding:.65rem .75rem;background:#fff;border-top:1px solid #edf1f6}.chat-chips button{white-space:nowrap;border:1px solid #bfd0e6;background:#f6f9fd;color:#24466f;border-radius:999px;padding:.5rem .7rem;font:600 .72rem Inter,sans-serif;cursor:pointer}.chat-form{display:grid;grid-template-columns:1fr auto;gap:.5rem;padding:.75rem;border-top:1px solid #edf1f6}.chat-form input{border:1px solid #cdd8e5;border-radius:999px;padding:.78rem .9rem;font:500 .9rem Inter,sans-serif}.chat-form button{width:42px;height:42px;border-radius:50%;border:0;background:#2563eb;color:#fff;font-size:1.15rem;cursor:pointer}.chat-note{margin:0;padding:0 .9rem .7rem;text-align:center;font-size:.64rem;color:#7a8798;background:#fff}
@media(max-width:900px){.review-section{grid-template-columns:1fr;gap:3rem;padding:5rem 6vw}.hero-content{padding:1.7rem}.site-header{height:76px}.site-header nav{top:76px;background:#0b1628}.service{min-height:670px}}
@media(max-width:600px){.hero-content{padding:1.35rem;border-radius:18px}.review-section{padding:4.5rem 6vw}.rating-form{padding:1.35rem}.rating-fields{grid-template-columns:1fr}.chat-launcher{right:14px;bottom:70px}.chat-panel{right:16px;bottom:128px;height:min(560px,calc(100vh - 155px))}.service{min-height:0}.contact{color:#fff}}
