@import url('inner-hero-legacy.css');
.page-hero{position:relative;isolation:isolate;background:linear-gradient(90deg,rgba(6,58,90,.97),rgba(6,58,90,.75)),var(--page-image,url('images/1.webp')) center/cover;color:#fff;padding:88px 0 78px}.page-hero .eyebrow{color:#8ff1f4}.page-hero h1{max-width:820px;margin:0 0 16px;font-family:'Manrope',sans-serif;font-size:clamp(36px,5vw,64px);line-height:1.05}.page-hero p{max-width:700px;margin:0;color:#dff7fc;font-size:17px;line-height:1.7}.page-hero--services{--page-image:url('images/1.webp')}.page-hero--about{--page-image:url('images/6.webp')}.page-hero--areas{--page-image:url('images/6.webp')}.page-hero--contact{--page-image:url('images/2.webp')}.content-page{padding:70px 0}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:52px;align-items:start}.copy h2{margin:40px 0 12px;color:var(--navy);font-family:'Manrope',sans-serif;font-size:28px}.copy h2:first-child{margin-top:0}.copy p,.copy li{color:#547487;line-height:1.75;font-size:15px}.copy ul,.copy ol{padding-left:22px}.copy strong{color:var(--navy)}.side-panel{position:sticky;top:20px;padding:25px;background:var(--pale);border:1px solid #ccebf1;border-radius:8px}.side-panel h3{margin:0 0 12px;color:var(--navy);font-family:'Manrope',sans-serif}.side-panel a{display:block;padding:10px 0;border-bottom:1px solid #d7edf2;color:var(--navy);font-size:13px;font-weight:700}.side-panel a:last-child{border-bottom:0}.side-panel .button{margin-top:14px;color:#fff;border-bottom:0}.faq-list{display:grid;gap:12px}.faq-item{padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:6px}.faq-item strong{display:block;margin-bottom:7px;color:var(--navy)}.service-index{padding:70px 0}.service-index-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.service-index-card{padding:26px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 20px rgba(6,58,90,.06)}.service-index-card h2{margin:0 0 8px;color:var(--navy);font-family:'Manrope',sans-serif;font-size:21px}.service-index-card p{margin:0 0 14px;color:var(--muted);line-height:1.6;font-size:14px}.service-index-card a{color:#079eb9;font-size:13px;font-weight:800}.contact-form{display:grid;gap:14px}.contact-form label{display:grid;gap:6px;color:var(--navy);font-weight:700;font-size:13px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #cfe4ea;border-radius:5px;padding:13px;font:inherit}.contact-form textarea{min-height:130px;resize:vertical}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.info-card{padding:28px;background:var(--pale);border-radius:8px}.info-card h2{margin-top:0}.info-card a{color:#079eb9;font-weight:700}.inner-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.4fr;gap:34px;padding:42px 0 30px}.inner-footer-grid h3{margin:0 0 12px;color:#fff;font-size:13px}.inner-footer-grid a,.inner-footer-grid p,.inner-footer-grid span{display:block;margin:7px 0;color:#b9d6e2;font-size:12px}.inner-footer-grid .footer-brand img{width:170px;background:#fff}.inner-footer-bottom{border-top:1px solid #245776;padding:18px 0;color:#8eb2c2;font-size:11px;display:flex;justify-content:space-between}@media(max-width:800px){.content-layout,.contact-grid{grid-template-columns:1fr}.side-panel{position:static}.service-index-grid{grid-template-columns:1fr}.page-hero{padding:54px 0}.content-page,.service-index{padding:52px 0}.inner-footer-grid{grid-template-columns:1fr 1fr}.inner-footer-bottom{display:block}.inner-footer-bottom span{display:block;margin:5px 0}}

/* v16 fix: sticky sidebar orange button was tight/clipped because .side-panel a
   (display:block; padding:10px 0) outranked .button's own padding.
   Restore a real button box inside the sidebar only; link list unchanged. */
.content-layout .side-panel a.button{display:flex;align-items:center;justify-content:center;height:auto;min-height:48px;padding:13px 18px;line-height:1.35;text-align:center;white-space:normal}
