/* Shared visual treatment for the five public service pages. */
.services-public{--service-ink:#143342;--service-teal:#146772;--service-gold:#bb8a46;background:radial-gradient(ellipse at 100% 0,#deeeea,transparent 45%),#f4f7f6;color:var(--service-ink)}
.services-public .public-content{padding-block:clamp(2.5rem,5vw,5rem)}
.services-public .public-eyebrow{color:#876126;letter-spacing:.17em;font-size:.75rem;font-weight:750;text-transform:uppercase}
.services-public .public-section-title{color:#143342;letter-spacing:-.035em;line-height:1.15}
.services-public .public-lead{color:#506a74;line-height:1.85}
.services-public .public-service-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center;max-width:none;margin-bottom:4rem}
.services-public .public-service-intro .public-section-title{font-size:clamp(2.15rem,4vw,3.5rem);max-width:620px;margin:1rem 0 1.5rem}
.service-audience{position:relative;background:white;border:1px solid #d7e4e1;border-top:3px solid #c6a164;border-radius:20px;padding:clamp(1.5rem,3vw,2.5rem);box-shadow:0 12px 36px #14334209}
.service-audience-icon{display:grid;place-items:center;width:48px;height:48px;background:#eaf3ef;color:#146772;border-radius:14px;font-size:1.6rem;margin-bottom:1.5rem}
.service-audience h3{font-size:1.2rem;letter-spacing:-.02em}.service-audience p{color:#536c75;line-height:1.8}.service-audience a{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #e1ebe7;margin-top:1.5rem;padding-top:1rem;color:#146772;text-decoration:none;font-weight:650;font-size:.9rem}
.service-section-heading{display:flex;align-items:center;gap:2rem}.service-section-heading .public-section-title{margin:0}.service-heading-line{flex:1;height:1px;background:linear-gradient(90deg,#c6a164,#d9e6e1)}
.services-public .public-service-grid{gap:1.5rem;margin:2rem 0 4rem;counter-reset:capability}
.services-public .public-service-card{position:relative;border:1px solid #d7e4e1;border-radius:20px;padding:clamp(1.5rem,3vw,2.25rem);box-shadow:0 5px 20px #14334208;transition:transform .35s,box-shadow .35s,border-color .35s;counter-increment:capability}
.services-public .public-service-card:after{content:counter(capability,decimal-leading-zero);position:absolute;top:1.75rem;right:1.75rem;font-size:.75rem;letter-spacing:.1em;color:#81978f;font-weight:600}
.services-public .public-service-card>i{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:#e7f1ed;color:#146772;font-size:1.7rem;transition:background .3s,color .3s,transform .3s}
.services-public .public-service-card h3{color:#143342;font-size:1.2rem;line-height:1.4;letter-spacing:-.02em;margin-top:1.5rem}.services-public .public-service-card p{color:#536c75;line-height:1.85;font-size:.95rem}
.services-public .public-service-process{border:1px solid #d7e4e1;border-radius:24px;background:#eaf1ee;padding:clamp(1.5rem,4vw,3rem);gap:3rem;scroll-margin-top:110px}
.services-public .public-service-process p{color:#536c75;line-height:1.8}.services-public .public-service-process ol{padding:0;list-style:none;counter-reset:steps;margin:0}
.services-public .public-service-process li{position:relative;display:flex;gap:1.25rem;padding:0 0 1.75rem;margin:0;counter-increment:steps;color:#284b57;font-size:.95rem;line-height:1.8}
.services-public .public-service-process li:before{content:counter(steps,decimal-leading-zero);display:grid;place-items:center;flex:0 0 38px;height:38px;background:#146772;color:white;border-radius:50%;font-size:.75rem;font-weight:700;z-index:1}
.services-public .public-service-process li:not(:last-child):after{content:"";position:absolute;top:38px;bottom:0;left:18px;width:2px;background:#c5d8ce}.services-public .public-service-process li:last-child{padding-bottom:0}
.services-public .public-service-cta{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(110deg,#143342,#216665);border:0;border-top:3px solid #c6a164;border-radius:24px;padding:clamp(1.5rem,4vw,3rem);margin:3rem 0;color:white}
.services-public .public-service-cta:before{content:"";position:absolute;inset:0;z-index:-1;background:repeating-radial-gradient(ellipse at 110% 120%,transparent 0 27px,#c4dcd41b 28px 29px);pointer-events:none}
.services-public .public-service-cta .public-section-title{color:white;font-size:clamp(1.65rem,3vw,2.3rem)}.services-public .public-service-cta .public-lead{color:#e0ece7;font-size:1rem;line-height:1.8}
.services-public .public-service-cta .btn{background:white;color:#143342;border-color:white;padding:.85rem 1.25rem;font-weight:650}.services-public .public-service-cta .btn:hover{background:#f1e7d4;border-color:#f1e7d4}
.services-public .public-related{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.services-public .public-related a{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff;border:1px solid #d7e4e1;border-radius:14px;padding:1.25rem;color:#146772;text-decoration:none;line-height:1.6;transition:transform .3s,box-shadow .3s}.services-public a:focus-visible{outline:3px solid #146772;outline-offset:4px}.services-public .public-service-cta a:focus-visible{outline-color:#f1d39f}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.services-public .public-service-card:hover{transform:translateY(-6px);box-shadow:0 18px 36px #14334214;border-color:#aacbc2}.services-public .public-service-card:hover>i{background:#146772;color:white;transform:rotate(-5deg)}.services-public .public-related a:hover{transform:translateY(-3px);box-shadow:0 10px 20px #1433420c}}
@keyframes service-arrive{from{opacity:.2;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){.services-public .service-arriving{animation:service-arrive .65s cubic-bezier(.2,.7,.2,1) both}}
@media(min-width:768px) and (max-width:991.98px){.services-public .public-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767.98px){.services-public .public-service-intro,.services-public .public-service-process{grid-template-columns:1fr;gap:1.5rem}.services-public .public-service-intro{margin-bottom:2.5rem}.services-public .public-service-grid{grid-template-columns:1fr;margin-bottom:2.5rem}.services-public .public-related{grid-template-columns:1fr}.services-public .public-service-cta{align-items:start;flex-direction:column;gap:1.5rem}.service-heading-line{display:none}}
@media(prefers-reduced-motion:reduce){.services-public *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
