/* One rounded, bold arrow shape, matching the contact form's back control. */
:root {
    --rounded-arrow-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 12H4M11 5L4 12l7 7' fill='none' stroke='black' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
html body .button-arrow {
    --arrow-angle: 180deg;
    display: inline-block;
    position: relative;
    width: var(--button-arrow-size, 22px);
    height: var(--button-arrow-size, 22px);
    flex: 0 0 var(--button-arrow-size, 22px);
    vertical-align: middle;
    color: inherit;
    line-height: 1;
    pointer-events: none;
}
html body .button-arrow::before {
    content: '';
    position: absolute;
    inset: 0;
    background: currentColor;
    -webkit-mask: var(--rounded-arrow-mask) center / contain no-repeat;
    mask: var(--rounded-arrow-mask) center / contain no-repeat;
    transform: rotate(var(--arrow-angle));
}
html body .button-arrow-left { --arrow-angle: 0deg; }
html body .button-arrow-up { --arrow-angle: 90deg; }
html body .button-arrow-up-right { --arrow-angle: 135deg; }
html body .button-arrow-down { --arrow-angle: -90deg; }
html body .page-back-icon::before {
    -webkit-mask: var(--rounded-arrow-mask) center / contain no-repeat;
    mask: var(--rounded-arrow-mask) center / contain no-repeat;
}
.homepage-redesign :is(.feature-card-arrow, .resource-preview-action) {
    --button-arrow-size: 18px;
    display: inline-flex;
    align-items: center;
    gap: .8rem;
}
.homepage-redesign :is(.care-process-arrow, .feature-symbol, .service-mode-arrow) .button-arrow,
.booking-calendar-header .button-arrow { --button-arrow-size: 24px; }
.homepage-redesign .team-story-team-link { display: inline-flex; align-items: center; gap: 1rem; }
html body .top-nav .nav-contact .nav-contact-icon path { stroke-width: 4; }
