/* Homepage introduction and formal service panel. */
.home-page .formal-hero{min-height:0;padding:54px 0 38px;border-bottom:1px solid #dce3ef}
.home-page .formal-hero>.wrap{max-width:1920px;width:100%;padding:0 clamp(24px,3vw,64px)}
.formal-hero-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);gap:clamp(36px,5vw,100px);align-items:center}
.formal-hero-grid>*{min-width:0}
.home-page .formal-hero h1{font-size:clamp(2.7rem,3.7vw,4.4rem);line-height:1.1;letter-spacing:-.045em;margin:24px 0 30px}
.home-page .formal-hero h1 .line,.home-page .formal-hero h1 .line span{display:inline;overflow:visible;transform:none;animation:none}
.home-page .formal-hero .eyebrow{font-size:12px;letter-spacing:.17em;line-height:1.6}
.home-page .formal-hero .lead{font-size:clamp(1.05rem,1.25vw,1.3rem);line-height:1.65;max-width:66ch;margin-bottom:30px}
.home-page .formal-hero .hero-cta{margin:0;gap:24px}
.home-page .formal-hero .hero-cta .btn{padding:17px 25px;box-shadow:none}
.formal-services>h2{font-family:var(--b);font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;line-height:1.6;color:#566b8d;margin:0 0 22px}
.formal-service-panel{background:rgba(255,255,255,.94);border:1px solid #ced8e9;border-radius:10px;padding:0 20px;overflow:hidden}
.formal-service-row{display:grid;grid-template-columns:44px minmax(0,1fr) 22px;align-items:center;gap:20px;padding:30px 10px;min-height:146px;text-decoration:none;transition:background .2s}
.formal-service-row+.formal-service-row{border-top:1px solid #dce3ef}
.formal-service-row:hover{background:#f5f8fd}
.formal-service-row:focus-visible{outline:3px solid #2d5bb8;outline-offset:-3px}
.formal-service-number{align-self:center;color:#2d5bb8;font-size:20px;font-weight:600;line-height:1.3}
.formal-service-copy{display:block;border-left:1px solid #cbd5e6;padding-left:24px;min-width:0}
.formal-service-copy>strong{display:block;font-family:var(--d);font-size:clamp(1.16rem,1.45vw,1.7rem);line-height:1.25;letter-spacing:-.02em;color:#10254f;font-weight:700}
.formal-service-copy>span{display:block;font-size:clamp(.98rem,1.1vw,1.12rem);line-height:1.5;color:#617397;margin-top:9px}
.formal-service-arrow{color:#426aab;font-size:23px;line-height:1}
.home-page .formal-hero .stats{border-top:1px solid #dce3ef;margin-top:34px;padding-top:24px;gap:clamp(30px,5vw,84px)}
.home-page .formal-hero .stat .num{font-size:26px;line-height:1.2}
.home-page .formal-hero .stat .lbl{font-size:12px;margin-top:4px}
@media(min-width:1600px){.formal-service-row{padding-top:34px;padding-bottom:34px;min-height:162px}.formal-services>h2{font-size:13px}}
@media(max-width:1100px){.formal-hero-grid{gap:30px}.home-page .formal-hero h1{font-size:clamp(2.35rem,4vw,3.1rem)}.formal-service-panel{padding:0 15px}.formal-service-row{grid-template-columns:30px minmax(0,1fr) 18px;gap:12px;padding:25px 4px}.formal-service-copy{padding-left:16px}.formal-service-copy>strong{font-size:1.15rem}.formal-service-copy>span{font-size:.94rem}.formal-service-number{font-size:18px}}
@media(max-width:900px){.home-page .formal-hero{padding-top:38px}.formal-hero-grid{grid-template-columns:1fr;gap:36px}.home-page .formal-hero h1{font-size:clamp(2.5rem,6.8vw,4rem);max-width:22ch}.home-page .formal-hero .lead{max-width:68ch}.formal-service-row{min-height:120px;padding:25px 10px;grid-template-columns:40px minmax(0,1fr) 22px;gap:20px}.formal-service-copy{padding-left:24px}.formal-service-copy>strong{font-size:1.35rem}.formal-service-copy>span{font-size:1rem}.formal-services>h2{margin-bottom:15px}}
@media(max-width:480px){.home-page .formal-hero>.wrap{padding:0 20px}.home-page .formal-hero h1{font-size:clamp(2rem,8.3vw,2.6rem);margin:21px 0 24px}.home-page .formal-hero .eyebrow{font-size:10px;letter-spacing:.1em}.home-page .formal-hero .lead{font-size:1rem;line-height:1.65}.home-page .formal-hero .hero-cta{gap:18px}.home-page .formal-hero .hero-cta .btn{padding:15px 22px}.formal-service-panel{padding:0 13px}.formal-service-row{grid-template-columns:24px minmax(0,1fr) 15px;gap:10px;min-height:134px;padding:24px 0}.formal-service-copy{padding-left:13px}.formal-service-copy>strong{font-size:1.05rem;line-height:1.3}.formal-service-copy>span{font-size:.9rem;margin-top:7px}.formal-service-number{font-size:16px}.formal-service-arrow{font-size:20px}.formal-services>h2{font-size:10px;letter-spacing:.09em}.home-page .formal-hero .stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px}.home-page .formal-hero .stat .num{font-size:23px}.home-page .formal-hero .stat .lbl{font-size:11px;line-height:1.4}}
