/* Dedicated service pages share the site's typography and restrained palette. */
.page-inner .landing-intro{padding-top:36px;padding-bottom:60px;background:var(--wash);border-bottom:1px solid var(--line)}
.landing-hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:64px;align-items:start}
.landing-hero-grid h1{font-size:52px;line-height:1.08;letter-spacing:-1.7px;max-width:740px}
.landing-lead{font-size:18px;line-height:1.7;color:var(--muted);margin-top:26px;max-width:720px}
.landing-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px}
.landing-phone{display:flex;flex-direction:column;gap:3px}.landing-phone>span{font-size:11px;letter-spacing:.8px}.landing-phone>strong{font-size:23px;font-weight:500;line-height:1.3;white-space:nowrap}
.landing-brief{border-top:2px solid var(--navy);padding-top:22px}.landing-brief h2{font-size:28px;line-height:1.2;letter-spacing:-.7px}.landing-brief dl{margin:26px 0}.landing-brief dl>div{display:grid;grid-template-columns:100px 1fr;gap:18px;border-top:1px solid var(--line);padding:14px 0}.landing-brief dt{font-size:13px;color:var(--muted)}.landing-brief dd{font-size:15px;line-height:1.5;margin:0}.landing-brief .text-link{font-size:15px;gap:18px}
.landing-section-heading{display:grid;grid-template-columns:1fr 2fr;gap:35px;align-items:start;margin-bottom:38px}.landing-section-heading h2{font-size:36px;line-height:1.18;max-width:730px}.landing-section-heading>.page-kicker{padding-top:8px}
.landing-scope{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px}.landing-scope li{display:flex;align-items:flex-start;gap:24px;border-top:1px solid var(--line);padding:24px 0}.landing-scope li>span{font-size:13px;color:var(--muted);padding-top:3px}.landing-scope p{font-size:18px;line-height:1.65;max-width:550px}
.landing-process{background:var(--navy);color:#fff}.landing-process .page-kicker{color:var(--accent)}.landing-process ol{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;padding:0;margin:0}.landing-process li{border-top:1px solid #ffffff50;padding-top:20px}.landing-process li>span{font-size:13px;color:var(--accent)}.landing-process li>p{margin-top:20px;font-size:16px;line-height:1.7;color:#d5e0e6}
.landing-contact{display:grid;grid-template-columns:1fr 1.35fr;gap:65px;align-items:start}.landing-contact-copy h2{font-size:38px;line-height:1.2}.landing-contact-copy>p:not(.page-kicker){font-size:16px;line-height:1.7;max-width:380px;color:var(--muted);margin-top:25px}.landing-contact-number{display:inline-block;font-size:30px;line-height:1.25;margin-top:26px}.landing-contact-copy>.landing-office{font-size:14px!important}.landing-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.landing-field{display:flex;flex-direction:column;align-items:flex-start;font-size:14px;line-height:1.5;position:relative}.landing-field>span{display:none}.landing-field:has([required]){font-weight:500}.landing-field input,.landing-field textarea{width:100%;border:1px solid #c7d3d9;border-radius:0;background:#fff;color:var(--ink);font-size:16px;line-height:1.5;padding:12px;margin-top:8px;min-height:50px;font-weight:400}.landing-field textarea{resize:vertical}.landing-field input::placeholder,.landing-field textarea::placeholder{color:#6b7a83;opacity:1;font-size:14px}.landing-field-wide{grid-column:1/-1}.landing-form-note{font-size:13px;line-height:1.7;color:var(--muted);margin:20px 0}.landing-form-feedback{font-size:14px;line-height:1.6;margin-top:18px}.landing-form-feedback a{text-decoration:underline;text-underline-offset:3px}
.landing-faq{background:var(--wash);display:grid;grid-template-columns:1fr 1.5fr;gap:60px}.landing-faq .landing-section-heading{display:block}.landing-faq .landing-section-heading h2{font-size:34px}.landing-faq details{border-top:1px solid #bfcdd4}.landing-faq details:last-child{border-bottom:1px solid #bfcdd4}.landing-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:flex-start;gap:25px;padding:21px 0;font-size:18px;line-height:1.5;font-weight:500}.landing-faq summary::-webkit-details-marker{display:none}.landing-faq summary>span{font-size:24px;line-height:1.1;flex:none;font-weight:400;transition:transform .15s}.landing-faq details[open] summary>span{transform:rotate(45deg)}.landing-faq details>p{font-size:16px;line-height:1.75;color:var(--muted);padding:0 32px 24px 0}.page-inner .landing-related{padding-top:38px;padding-bottom:38px}.landing-related .text-link{font-size:16px}.landing-related{border-bottom:1px solid var(--line)}
@media(max-width:1100px){.landing-hero-grid{gap:35px;grid-template-columns:1.25fr 1fr}.landing-hero-grid h1{font-size:44px}.landing-contact{gap:40px}.landing-faq{gap:35px}}
@media(max-width:760px){.page-inner .landing-intro{padding-top:28px;padding-bottom:40px}.landing-hero-grid{grid-template-columns:1fr;gap:38px}.landing-hero-grid h1{font-size:38px;line-height:1.12;letter-spacing:-1.1px}.landing-lead{font-size:16px;margin-top:22px}.landing-actions{gap:22px;margin-top:25px}.landing-actions .button{width:100%;max-width:360px;gap:16px}.landing-phone>strong{font-size:24px}.landing-brief{padding-top:24px}.landing-brief h2{font-size:28px}.landing-brief dl{margin:22px 0}.landing-brief dl>div{grid-template-columns:94px 1fr;gap:14px}.landing-section-heading{display:block;margin-bottom:28px}.landing-section-heading h2{font-size:30px}.landing-scope{grid-template-columns:1fr}.landing-scope li{gap:20px;padding:22px 0}.landing-scope p{font-size:16px}.landing-process ol{grid-template-columns:1fr 1fr;gap:26px 22px}.landing-process li>p{font-size:16px;margin-top:14px}.landing-contact{grid-template-columns:1fr;gap:34px}.landing-contact-copy h2{font-size:32px}.landing-contact-number{font-size:28px}.landing-fields{grid-template-columns:1fr;gap:20px}.landing-field-wide{grid-column:auto}.landing-form .button{width:100%;gap:12px;padding:15px;font-size:15px}.landing-faq{grid-template-columns:1fr;gap:0}.landing-faq .landing-section-heading h2{font-size:30px}.landing-faq summary{font-size:17px;gap:15px}.landing-faq details>p{padding-right:0}.landing-related .related-links{gap:22px}.landing-related .text-link{font-size:16px;gap:12px}}
@media(max-width:365px){.landing-hero-grid h1{font-size:34px}.landing-process ol{grid-template-columns:1fr}.landing-form .button{font-size:14px;gap:9px}}
@media(prefers-reduced-motion:reduce){.landing-faq summary>span{transition:none}}
