/* One line weight; shape follows purpose. No icon is an unlabeled control. */
.ui-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:22px;height:22px;padding:0;vertical-align:middle;line-height:1;color:inherit}
.ui-icon svg{display:block;width:100%;height:100%;overflow:visible;pointer-events:none}
.ui-icon.frame-circle{width:36px;height:36px;padding:9px;border:1px solid currentColor;border-radius:50%}
.ui-icon.frame-square{width:34px;height:34px;padding:8px;border:1px solid var(--line);border-radius:10px;background:#fff}
.ui-icon.frame-soft{width:52px;height:52px;padding:13px;border-radius:15px;background:#edf1e7;color:var(--olive)}
.action-link{display:inline-flex;align-items:center;gap:14px;max-width:100%}
.action-link .action-label,.button>.button-label{font-size:inherit;font-weight:inherit;line-height:inherit;min-width:0}
.action-link .ui-icon{font-size:inherit;padding-left:0;transition:background .2s,color .2s,border-color .2s}
.action-link:hover{ text-decoration:none }
.action-link:hover>.action-label{text-decoration:underline;text-underline-offset:5px}
.action-link>.icon-external{width:15px;height:15px;opacity:.78}
.plain-link{padding-bottom:4px;border-bottom:1px solid #b8c3ab;gap:0}
.plain-link:hover{border-color:var(--olive);text-decoration:none}
.nav-link{position:relative;justify-content:flex-start;gap:12px;border:0}
.nav-link:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--olive);position:absolute;left:-14px;opacity:0}
.nav-link.active:before{opacity:1}
.nav-link .ui-icon{margin-left:auto;width:17px;height:17px;color:var(--olive);opacity:0;transform:translateX(-4px);transition:opacity .18s,transform .18s}
.nav-link:hover .ui-icon,.nav-link:focus-visible .ui-icon{opacity:1;transform:translateX(0)}
.side-cta{gap:12px;align-items:center;border-radius:10px;padding:13px 14px}
.side-cta>.ui-icon{width:19px;height:19px;color:inherit}
.official-link{display:flex;justify-content:space-between;align-items:flex-start;gap:9px}
.official-link>.ui-icon{width:13px;height:13px;margin-top:3px;color:inherit}
.topline a{display:inline-flex;align-items:center;gap:9px}
.topline a .ui-icon{width:17px;height:17px;padding:0}
.topline a .action-label{padding:0}
.button{gap:20px;border-radius:10px;min-height:58px;padding:12px 18px 12px 22px}
.button>.ui-icon{width:34px;height:34px;padding:8px;background:#ffffff19;border-color:#ffffff65}
.button.secondary>.ui-icon{background:transparent;border-color:#c4cdbb}
.button:hover>.ui-icon{background:#ffffff27}
.button.secondary:hover>.ui-icon{background:#e8edde}
.hero .button{padding:12px 18px 12px 22px;gap:26px}
.hero .hero-actions .plain-link{font-weight:600}
.quick-paths>a{gap:18px;padding:29px 27px}
.quick-paths>a>.ui-icon{margin:0;color:var(--olive)}
.quick-paths>a>span.path-copy{margin:0;color:var(--ink);min-width:0;font-size:inherit}
.quick-paths .path-copy small{color:var(--muted)}
.quick-paths>a:hover strong{text-decoration:underline;text-underline-offset:5px}
.quick-paths>a:hover>.ui-icon{background:#e2e9d8}
.practice-list>a{grid-template-columns:28px 245px 1fr 34px}
.practice-list>a>.ui-icon{margin:0}
.practice-list>a:hover>.ui-icon{color:var(--olive);border-color:#b2c39e;background:#f1f4ec}
.feature-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;margin-bottom:21px}
.feature-heading .eyebrow{margin:0}
.feature-heading>.ui-icon{width:43px;height:43px;padding:10px;border-radius:12px;background:#f3f1eb;color:var(--brown)}
.featured-practice .plain-link{font-size:15px}
.section-desc .action-link>.ui-icon{width:36px;height:36px}
.section-desc .action-link:hover>.ui-icon,.case-bottom .action-link:hover>.ui-icon{background:var(--olive);border-color:var(--olive);color:white}
.case-bottom .card-action{gap:11px}
.case-bottom .card-action>.ui-icon{width:29px;height:29px;padding:7px;color:var(--olive);border-color:#bac8ad}
.case-bottom .card-action:hover>.ui-icon{color:#fff}
.guide-card{border:1px solid var(--line);border-radius:14px;background:#fff;padding:26px 25px 25px;transition:border-color .2s,box-shadow .2s}
.guide-card:hover{border-color:#aebe9d;box-shadow:0 8px 24px #3d3a300b}
.guide-top{align-items:center;gap:14px;margin-bottom:24px;width:100%}
.guide-category{display:inline-flex;align-items:center;gap:10px;min-width:0}
.guide-category>.ui-icon{width:30px;height:30px;padding:6px;border:0;background:#edf1e7;border-radius:8px;color:var(--olive)}
.guide-card .plain-link{font-size:15px}
.search-form button{display:inline-flex;align-items:center;gap:8px;min-height:48px}
.search-form button>.ui-icon{width:19px;height:19px}
.reset-search{display:inline-flex;align-items:center;justify-content:center;gap:7px}
.reset-search>.ui-icon{width:16px;height:16px}
.reset-search.button>.ui-icon{width:32px;height:32px;padding:7px}
.faq-list summary>.ui-icon{width:30px;height:30px;padding:6px;background:#eef1e8;border-radius:50%;margin-top:2px;transform:none}
.faq-list details[open] summary>.ui-icon{transform:none;background:var(--olive);color:#fff}
.faq-list .icon-vertical{transition:opacity .18s}
.faq-list details[open] .icon-vertical{opacity:0}
.contact-choice>.contact-symbol{width:48px;height:48px;padding:12px;border-radius:14px;border:1px solid #c6cdbb;color:var(--olive);margin-bottom:24px}
.contact-choice.primary>.contact-symbol{background:#ffffff14;color:#fff;border-color:#ffffff55}
.contact-choice .plain-link{font-size:15px}
.contact-choice.primary .plain-link{border-color:#d4dec3}
.footer-contact>.action-link{justify-content:flex-start}
.footer-contact>.action-link>.ui-icon{width:18px;height:18px}
.footer-details .action-link>.ui-icon{width:12px;height:12px}
.menu-toggle .ui-icon{width:25px;height:25px;color:var(--olive);padding:0}
.menu-line{transform-box:fill-box;transform-origin:center;transition:transform .18s,opacity .18s}
.menu-toggle[aria-expanded=true] .menu-line.top{transform:translateY(6px) rotate(45deg)}
.menu-toggle[aria-expanded=true] .menu-line.middle{opacity:0}
.menu-toggle[aria-expanded=true] .menu-line.bottom{transform:translateY(-6px) rotate(-45deg)}
.mobile-contact a{display:flex;align-items:center;justify-content:center;gap:9px}
.mobile-contact a>.ui-icon{width:19px;height:19px;padding:0}
.mobile-contact a>.action-label{padding:0;font-size:inherit;line-height:inherit}
@media(max-width:1220px){.quick-paths>a{gap:12px;padding:27px 20px}.quick-paths>a>.ui-icon{width:43px;height:43px;padding:10px;border-radius:12px}.quick-paths strong{font-size:20px}.quick-paths small{font-size:12px}.practice-list>a{grid-template-columns:24px 214px 1fr 34px;gap:16px}}
@media(max-width:1000px){.nav-link:before{left:-14px}.nav-link .ui-icon{opacity:1;transform:none}.mobile-nav-contact a{display:inline-flex;align-items:center;gap:10px}}
@media(max-width:760px){.quick-paths>a{padding:25px 24px;gap:17px}.quick-paths>a>.ui-icon{width:48px;height:48px;padding:12px;border-radius:13px}.quick-paths small{font-size:14px}.quick-paths strong{font-size:23px}.hero .button{font-size:16px;padding:12px 15px 12px 18px;gap:20px;min-height:58px}.button>.ui-icon{width:32px;height:32px;padding:8px}.button{padding:12px 16px 12px 19px;gap:16px}.practice-list>a{grid-template-columns:22px minmax(0,1fr) 32px;gap:0 14px}.practice-list>a>.ui-icon{grid-column:3;grid-row:1;width:32px;height:32px;padding:8px}.feature-heading{margin-bottom:19px}.guide-card{padding:25px 24px}.section-desc .action-link>.ui-icon{width:32px;height:32px;padding:8px}.contact-choice>.contact-symbol{width:44px;height:44px;padding:10px;margin-bottom:22px}.mobile-contact a{padding:17px 10px}.contact-band>div:last-child .button{max-width:100%}.faq-list summary>.ui-icon{width:28px;height:28px;padding:6px}.action-link{gap:11px}}
@media(max-width:370px){.hero .button{font-size:15px;gap:13px}.hero .button>.ui-icon{width:29px;height:29px;padding:7px}.quick-paths>a{gap:13px}.quick-paths strong{font-size:22px}.quick-paths small{font-size:13px}.quick-paths>a>.ui-icon{width:43px;height:43px;padding:10px}.button{gap:10px}.case-status .button{font-size:14px}}
@media(prefers-reduced-motion:reduce){.ui-icon,.nav-link .ui-icon,.menu-line,.faq-list .icon-vertical{transition:none}}
