/* Precise line icons never fall back to platform emoji. */
.icon-arrow{display:inline-block;width:20px;height:20px;flex:0 0 20px;vertical-align:middle;transition:transform .25s}
.button:hover .icon-arrow,.text-link:hover .icon-arrow{transform:translate(2px,-2px)}
.footer-mobile{display:none}
/* Homepage services: an open editorial list, without boxed cards. */
.services-section .service-grid{display:block;border-top:1px solid #bdccbd}
.services-section .service-card{display:grid;grid-template-columns:40px minmax(0,1fr) minmax(0,.8fr) 24px;align-items:center;gap:24px;padding:28px 0;min-height:0;border:0!important;border-bottom:1px solid #bdccbd!important;background:transparent;color:var(--green)}
.services-section .service-card h3{font-size:2.3rem;line-height:1.15;margin:0;max-width:none}
.services-section .service-card p{font-size:15px;margin:0;color:var(--muted)}
.services-section .service-number{font-size:12px;color:#718469}
.services-section .card-arrow{position:static;display:flex;align-items:center;justify-content:center;color:var(--green)}
.services-section .service-card:hover{background:transparent}
.services-section .service-card:hover h3{color:#42705c}
.services-section .service-card:hover .icon-arrow{transform:translate(2px,-2px)}
@media(max-width:760px){
 .services-section .section-heading{margin-bottom:18px}
 .services-section .service-card{grid-template-columns:22px minmax(0,1fr) 20px;gap:14px;padding:23px 0;min-height:76px}
 .services-section .service-card h3{font-size:clamp(1.35rem,5.7vw,1.8rem);letter-spacing:-.025em}
 .services-section .service-card p{display:none}
 .services-section .card-arrow{grid-column:3}
 .services-section .service-number{font-size:12px}
 .footer>.footer-top,.footer>.footer-credentials,.footer>.footer-bottom{display:none}
 .footer{padding-top:0}
 .footer-mobile{display:block;padding-top:30px;padding-bottom:22px}
 .footer-mobile-brand{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:8px}
 .footer-mobile .wordmark .brand-logo{width:116px;height:30px}
 .footer-contact-link{display:flex;align-items:center;gap:10px;font-size:14px;min-height:44px}
 .footer-phone{display:inline-flex;align-items:center;min-height:44px;font-size:16px;color:var(--muted);margin-bottom:20px}
 .footer-disclosure{border-top:1px solid #dce3dd;border-bottom:0}
 .footer-disclosure:last-of-type{border-bottom:1px solid #dce3dd}
 .footer-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:12px 0;font-size:14px;cursor:pointer;list-style:none}
 .footer-disclosure summary::-webkit-details-marker{display:none}
 .disclosure-mark{position:relative;width:14px;height:14px;flex:0 0 14px}
 .disclosure-mark:before,.disclosure-mark:after{content:'';position:absolute;background:currentColor}
 .disclosure-mark:before{height:1px;width:12px;left:1px;top:6px}
 .disclosure-mark:after{height:12px;width:1px;left:6px;top:1px}
 .footer-disclosure[open] .disclosure-mark:after{display:none}
 .footer-disclosure[open] summary>.disclosure-mark{transform:none}
 .footer-disclosure-content{padding:2px 0 20px;font-size:14px;line-height:1.6}
 .footer-disclosure-content address{font-size:14px;margin:0 0 8px}
 .footer-disclosure-content a{display:flex;align-items:center;gap:10px;min-height:44px;overflow-wrap:anywhere;padding:8px 0}
 .footer-disclosure-content p{font-size:12px;line-height:1.55;padding-bottom:0}
 .footer-consultant{border-top:1px solid #dce3dd;padding-top:16px;margin-top:12px}
 .footer-policy-links{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}
 .footer-policy-links p{grid-column:1/-1;margin-top:14px}
 .footer-mobile-copyright{font-size:12px;line-height:1.5;margin-top:20px}
}
