/* Solid actions with a quiet directional cue. The entire label is a stable target. */
:root{--action-blue:#233db9;--action-deep:#172b91;--action-ease:cubic-bezier(.22,.68,0,1)}
:is(.bf-home,.shell) .button.bf-action{
 position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:space-between;
 min-height:52px;gap:20px;padding:14px 18px;border:1px solid var(--action-blue);border-radius:0;
 background:var(--action-blue);color:#fff;
 font-family:'DM Sans',sans-serif;font-size:.95rem;font-weight:600;line-height:1.35;text-decoration:none;
 box-shadow:none;
 transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;
 -webkit-tap-highlight-color:transparent;
}
:is(.bf-home,.shell) .bf-action::before{content:'';position:absolute;inset:0;border-radius:inherit;background:var(--action-deep);opacity:0;z-index:-1;transition:opacity .22s}
:is(.bf-home,.shell) .bf-action .action-label{position:relative;min-width:0;text-align:left;padding:0;white-space:normal}
:is(.bf-home,.shell) .bf-action .action-icon{
 display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;margin:0;border:0;border-radius:0;
 background:transparent;color:inherit;overflow:hidden;transition:color .2s;
}
.bf-action .action-icon svg{display:block;width:22px;height:22px;overflow:visible}
.bf-action .action-icon path{stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
:is(.bf-home,.shell) .button-outline.bf-action{background:transparent;border-color:#8f9abc;color:#202c59;box-shadow:none}
:is(.bf-home,.shell) .button-outline.bf-action::before{background:#e9edff}
:is(.bf-home,.shell) .button-outline.bf-action .action-icon{background:transparent;color:inherit;border:0}
:is(.bf-home,.shell) .bf-action:focus-visible{outline:3px solid var(--action-blue);outline-offset:5px}
:is(.bf-home,.shell) .bf-action:focus-visible::before{opacity:1}
:is(.bf-home,.shell) .bf-action:active{box-shadow:none}
:is(.bf-home,.shell) .bf-action:disabled{opacity:.6;cursor:default;box-shadow:none}
.bf-home .hero-actions .bf-action{min-width:242px;font-size:1rem}
.bf-home .header .bf-action{min-height:46px;padding:6px 7px 6px 17px;gap:17px;font-size:.84rem;box-shadow:none}
.bf-home .header .bf-action .action-icon{width:30px;height:30px;flex-basis:30px}
.bf-home .header .bf-action svg{width:18px;height:18px}
.bf-home .practice-card .bf-action{width:100%;min-height:58px;margin-top:auto;padding:8px 8px 8px 20px;font-size:.88rem}
.bf-home .practice-card .bf-action .action-icon{width:38px;height:38px;flex-basis:38px}
.bf-home .decision-copy .bf-action{margin-top:10px;max-width:100%;font-size:.9rem}
.bf-home .brief-form .bf-action{margin-top:12px;min-height:56px;font-size:.9rem}
.bf-home .brief-form .bf-action .action-icon{width:36px;height:36px;flex-basis:36px}
.service-image-hero .bf-action{margin-top:4px}
.shell .pilot-section .button.bf-action{background:#f3f0e8;color:#1b2578;border-color:#f3f0e8;box-shadow:none}
.shell .pilot-section .button.bf-action::before{display:none}
.shell .pilot-section .button.bf-action:hover{background:white;color:#1b2578;border-color:white;box-shadow:none}
.shell .pilot-section .button.bf-action:focus-visible{outline-color:white}
.practice-card-image{border-radius:3px}
.practice-card-image img{transform:scale(1);transform-origin:50% 50%}
.view-controls{display:flex;gap:5px;padding:5px;border:1px solid #c7ccdf;border-radius:30px;background:#f9f8f2}
.view-controls[hidden]{display:none}
.view-controls button{position:relative;min-height:40px;border:0!important;border-radius:23px;padding:9px 18px!important;font-size:.82rem!important;color:#515766!important;background:transparent}
.view-controls button[aria-pressed=true]{background:#233db9!important;color:white!important;box-shadow:0 2px 5px #182b8822}
.view-controls button:focus-visible{outline:2px solid var(--action-blue);outline-offset:2px}
.motion-toggle{min-height:40px;border-radius:22px;padding:9px 15px!important;background:#f9f8f2}
@media(hover:hover) and (pointer:fine){
 :is(.bf-home,.shell) .bf-action:hover{border-color:var(--action-deep);color:#fff}
 :is(.bf-home,.shell) .bf-action:hover::before{opacity:1}
 :is(.bf-home,.shell) .button-outline.bf-action:hover{color:#172b91;border-color:#7185d4;background:#faf9f4}
 html[data-page-motion=on] :is(.bf-home,.shell) .bf-action{transition:transform .22s var(--action-ease),box-shadow .22s,background-color .2s,color .2s,border-color .2s}
 html[data-page-motion=on] .bf-action .action-icon svg{transition:transform .25s var(--action-ease)}
 html[data-page-motion=on] :is(.bf-home,.shell) .bf-action:hover{transform:none;box-shadow:none}
 html[data-page-motion=on] :is(.bf-home,.shell) .button-outline.bf-action:hover{box-shadow:none}
 html[data-page-motion=on] :is(.bf-home,.shell) .bf-action:active{transform:none;box-shadow:none;transition-duration:.08s}
 html[data-page-motion=on] .bf-action:is(:hover,:focus-visible)[data-action-kind=right] svg{transform:translateX(3px)}
 html[data-page-motion=on] .bf-action:is(:hover,:focus-visible)[data-action-kind=down] svg{transform:translateY(3px)}
 html[data-page-motion=on] .bf-action:is(:hover,:focus-visible)[data-action-kind=external] svg{transform:translate(2px,-2px)}
 html[data-page-motion=on] .bf-action:is(:hover,:focus-visible)[data-action-kind=mail] svg{transform:translateY(-2px)}
 html[data-page-motion=on] .practice-card-image img{transition:transform .65s var(--action-ease)}
 html[data-page-motion=on] .practice-card:is(:hover,:focus-within) .practice-card-image img{transform:scale(1.035)}
}
html[data-page-motion=off] .bf-action,html[data-page-motion=off] .bf-action svg,html[data-page-motion=off] .practice-card-image img{transform:none!important;transition:none!important}
@media(max-width:1100px){.bf-home .hero-actions .bf-action{min-width:215px;font-size:.92rem}.bf-home .header .bf-action{gap:10px;padding-left:13px}}
@media(max-width:720px){
 .bf-home .hero-actions .bf-action{min-width:0;width:100%;min-height:58px;font-size:.96rem;padding:8px 8px 8px 21px}
 .bf-home .practice-card .bf-action{font-size:.9rem}
 .view-controls{gap:2px;padding:4px}
 .view-controls button{font-size:.73rem!important;padding:8px 12px!important;min-height:38px}
 .motion-toggle{min-height:38px;font-size:.7rem!important;padding:8px 11px!important}
 :is(.bf-home,.shell) .bf-action{max-width:100%}
}
@media(prefers-reduced-motion:reduce){
 html :is(.bf-home,.shell) .bf-action,html .bf-action svg,html .practice-card-image img{transform:none!important;transition:none!important;animation:none!important}
}
@media print{.bf-action{box-shadow:none!important;background:none!important;color:#000!important}.action-icon{display:none!important}}
