@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
:root{--ink:#13243d;--blue:#1f5ea8;--blue2:#4f84c4;--gold:#c89b45;--sage:#dfe9df;--mist:#f5f8fb;--line:#e5ebf2;--white:#fff;--muted:#5d6b7c;--shadow:0 18px 50px rgba(19,36,61,.08);--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;font-weight:300;color:var(--ink);background:#fff;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 40px));margin:auto}.eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 20px;border-radius:10px;border:1px solid var(--blue);font-size:.9rem;font-weight:500;transition:.2s ease}.btn.primary{background:var(--ink);color:#fff;border-color:var(--ink)}.btn.primary:hover{background:var(--blue);border-color:var(--blue)}.btn.secondary{background:#fff;color:var(--ink)}.btn.secondary:hover{border-color:var(--blue);color:var(--blue)}.btn.light{background:#eef5fc;border-color:#d6e5f5;color:var(--blue)}.section{padding:92px 0}.section.mist{background:var(--mist)}.section.sage{background:#f2f7f2}.section-head{max-width:720px;margin-bottom:42px}.section-head h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.1;margin:12px 0 16px;font-weight:300;letter-spacing:-.04em}.section-head p{color:var(--muted);font-size:1.05rem}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(229,235,242,.85)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;min-width:210px}.brand-ring{width:38px;height:38px;border:2px solid var(--blue);border-radius:50%;position:relative}.brand-ring:after{content:'';position:absolute;inset:7px;border:1px solid #a9c2df;border-radius:50%}.brand-name{line-height:1.02;letter-spacing:.14em;font-size:.82rem;font-weight:600}.brand-name span{display:block;font-size:.58rem;letter-spacing:.3em;color:var(--muted);margin-top:4px}.navlinks{display:flex;gap:25px;align-items:center;font-size:.82rem;color:#405065}.navlinks a:hover,.navlinks a.active{color:var(--blue)}.nav-actions{display:flex;align-items:center;gap:10px}.phone{font-size:.82rem;font-weight:500;color:var(--blue)}.menu{display:none;background:none;border:0;font-size:1.4rem}.hero{position:relative;overflow:hidden;background:linear-gradient(100deg,#fff 0%,#fff 42%,#f5f8fb 100%)}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;min-height:670px;align-items:center}.hero-copy{padding:80px 50px 80px 0;position:relative;z-index:2}.hero h1{font-size:clamp(3rem,6vw,5.6rem);line-height:.98;letter-spacing:-.065em;font-weight:300;margin:18px 0 26px}.hero h1 strong{font-weight:500;color:var(--blue)}.hero p{font-size:1.08rem;color:var(--muted);max-width:640px;margin-bottom:30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-meta{display:flex;flex-wrap:wrap;gap:18px;margin-top:34px;font-size:.77rem;color:#526275}.hero-photo{height:670px;overflow:hidden;border-radius:0 0 0 120px}.hero-photo img{height:100%;width:100%;object-fit:cover}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 8px 30px rgba(19,36,61,.04);transition:.25s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-img{height:210px;overflow:hidden}.card-img img{width:100%;height:100%;object-fit:cover}.card-body{padding:24px}.card h3{margin:0 0 9px;font-size:1.05rem;font-weight:500}.card p{font-size:.88rem;color:var(--muted);margin:0 0 16px}.text-link{font-size:.84rem;color:var(--blue);font-weight:500}.story{display:grid;grid-template-columns:1fr 1.15fr;gap:60px;align-items:center}.story-photo{border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}.story-photo img{width:100%;height:560px;object-fit:cover}.quote{font-size:1.15rem;line-height:1.75;color:#263b55;position:relative;padding-left:28px}.quote:before{content:'“';position:absolute;left:0;top:-18px;font-size:4rem;color:#b9cfe6;line-height:1}.quote-source{font-size:.82rem;color:var(--muted);margin-top:20px}.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.pill{padding:8px 12px;background:#f1f6fb;border:1px solid #dce8f4;border-radius:999px;font-size:.78rem;color:#365777}.benefit-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}.benefit{text-align:center;padding:10px}.benefit-icon{width:52px;height:52px;border-radius:50%;background:#eef5fc;color:var(--blue);display:grid;place-items:center;margin:0 auto 14px;font-size:1.25rem}.benefit h3{font-size:.95rem;font-weight:500;margin:0 0 7px}.benefit p{font-size:.82rem;color:var(--muted);margin:0}.consult{display:grid;grid-template-columns:1fr 1.2fr;gap:0;align-items:stretch;background:#eef5f1;border-radius:28px;overflow:hidden}.consult-copy{padding:58px}.consult-photo img{height:100%;width:100%;object-fit:cover;min-height:430px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review{padding:28px;border:1px solid var(--line);border-radius:18px;background:#fff}.stars{color:#d79e2f;letter-spacing:.1em;font-size:.9rem}.review p{font-size:.92rem;margin:14px 0;color:#34465b}.review cite{font-style:normal;font-size:.78rem;color:var(--muted)}.cta-band{background:var(--ink);color:#fff;border-radius:28px;padding:48px 54px;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-band h2{font-size:clamp(2rem,4vw,3rem);font-weight:300;letter-spacing:-.04em;margin:8px 0}.cta-band p{color:#cbd7e4;margin:0;max-width:650px}.cta-band .btn.primary{background:#fff;color:var(--ink);border-color:#fff}.footer{background:#f6f8fa;border-top:1px solid var(--line);padding:56px 0 24px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px}.footer h4{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:#536377;margin:0 0 15px}.footer p,.footer a{font-size:.82rem;color:#667588}.footer a{display:block;margin:7px 0}.footer-bottom{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);font-size:.72rem;color:#8290a0;display:flex;justify-content:space-between}.page-hero{padding:110px 0 75px;background:linear-gradient(120deg,#f6f9fc,#fff 60%);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.7rem,5vw,4.6rem);font-weight:300;letter-spacing:-.055em;line-height:1.03;margin:14px 0 18px}.page-hero p{max-width:750px;color:var(--muted);font-size:1.05rem}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.two-col h2{font-size:2.3rem;font-weight:300;letter-spacing:-.04em;line-height:1.1;margin:0 0 18px}.two-col p{color:var(--muted)}.feature-img{border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.feature-img img{width:100%;height:520px;object-fit:cover}.service-detail{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:center}.service-detail.reverse{grid-template-columns:1.1fr 1fr}.service-detail .photo{border-radius:24px;overflow:hidden}.service-detail .photo img{width:100%;height:500px;object-fit:cover}.checklist{list-style:none;padding:0;margin:22px 0}.checklist li{padding:10px 0 10px 28px;position:relative;color:#4f6072}.checklist li:before{content:'✓';position:absolute;left:0;color:var(--blue);font-weight:600}.form-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.78rem;font-weight:500;color:#405065}.field input,.field textarea,.field select{font:inherit;font-weight:300;border:1px solid #d8e0e9;border-radius:10px;padding:12px 13px;background:#fff;color:var(--ink);outline:none}.field input:focus,.field textarea:focus{border-color:#6e9dcd;box-shadow:0 0 0 3px #eaf2fa}.notice{padding:14px 16px;background:#f5f8fb;border-radius:12px;font-size:.78rem;color:#647386;margin:18px 0}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery figure{margin:0;border-radius:18px;overflow:hidden;background:#fff;border:1px solid var(--line)}.gallery img{width:100%;height:300px;object-fit:cover}.gallery figcaption{padding:14px 16px;font-size:.8rem;color:#607084}.hours{width:100%;border-collapse:collapse}.hours td{padding:10px 0;border-bottom:1px solid var(--line);font-size:.88rem}.hours td:last-child{text-align:right;color:#536377}.faq{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-size:1rem;font-weight:400;list-style:none}summary::-webkit-details-marker{display:none}details p{color:var(--muted);font-size:.9rem;max-width:850px}.area-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.area{padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff;font-size:.88rem}.map-placeholder{height:360px;border-radius:24px;background:#e9eff5;display:grid;place-items:center;text-align:center;color:#536377;padding:30px}.mobile-cta{display:none}
@media(max-width:1000px){.navlinks{gap:14px}.phone{display:none}.service-grid{grid-template-columns:repeat(2,1fr)}.benefit-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:70px 0 35px}.hero-photo{height:480px;border-radius:0 0 0 70px}.story,.service-detail,.service-detail.reverse,.two-col,.consult{grid-template-columns:1fr;gap:35px}.story-photo img,.service-detail .photo img{height:430px}.review-grid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}.area-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.container{width:min(100% - 28px,1180px)}.nav{height:72px}.navlinks,.nav-actions .btn{display:none}.navlinks.mobile-open{display:flex;position:absolute;top:72px;left:14px;right:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow);flex-direction:column;gap:14px}.menu{display:block}.brand{min-width:0}.hero h1{font-size:3rem}.hero-photo{height:340px;border-radius:0 0 0 45px}.section{padding:70px 0}.service-grid,.benefit-grid,.gallery,.area-grid,.form-grid{grid-template-columns:1fr}.card-img{height:220px}.consult-copy{padding:36px 26px}.consult-photo img{min-height:320px}.cta-band{padding:36px 26px;align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}.mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;background:#fff;border-top:1px solid var(--line);padding:10px;gap:8px}.mobile-cta .btn{flex:1}.footer{padding-bottom:90px}.page-hero{padding:80px 0 60px}}
