/* Refresh CTAs: rr-btn plus exactly one of rr-btn--primary / rr-btn--secondary.
   Page styles own spacing and placement; this file owns button appearance. */
:root {
    --rr-btn-navy: #171245;
    --rr-btn-purple: #6A59FD;
    --rr-btn-white: #FFFFFF;
}
/* Adapt the two button types to coloured surfaces. */
:where(.rr-hero) {
    --rr-btn-primary-bg: var(--rr-btn-white);
    --rr-btn-primary-text: var(--rr-btn-navy);
    --rr-btn-primary-hover-bg: var(--rr-btn-navy);
}
:where(.rr-about) .rr-hero {
    --rr-btn-primary-hover-bg: var(--rr-btn-purple);
}
:where(.rr-careers__actions) {
    --rr-btn-min-height: 42px;
    --rr-btn-font-family: 'Noto Sans', 'Segoe UI', Arial, sans-serif;
    --rr-btn-primary-hover-bg: var(--rr-btn-white);
    --rr-btn-primary-hover-text: var(--rr-btn-navy);
}
:where(.rr-footer) {
    --rr-btn-min-height: 42px;
    --rr-btn-line-height: 1.05;
    --rr-btn-letter-spacing: -.015em;
    --rr-btn-primary-hover-bg: #F9F9F9;
    --rr-btn-primary-hover-text: var(--rr-btn-navy);
}
:where(.rr-talk, .rr-contact, .rr-service-individual) .rr-hero {
    --rr-btn-primary-bg: var(--rr-btn-navy);
    --rr-btn-primary-text: var(--rr-btn-white);
    --rr-btn-primary-hover-bg: var(--rr-btn-purple);
}
:where(.rr-careers__actions, .rr-footer) {
    --rr-btn-secondary-ink: #F9F9F9;
    --rr-btn-secondary-hover-text: var(--rr-btn-navy);
}
html .rr-btn {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: auto;
    max-width: 100%;
    min-height: var(--rr-btn-min-height, 40px);
    padding: var(--rr-btn-padding, 12px 16px 12px 12px);
    border: 1px solid transparent;
    border-radius: var(--rr-btn-radius, 10px);
    font: 500 var(--rr-btn-font-size, 17px)/var(--rr-btn-line-height, 1.35) var(--rr-btn-font-family, 'Archivo', 'Segoe UI', Arial, sans-serif);
    letter-spacing: var(--rr-btn-letter-spacing, normal);
    text-align: center;
    text-decoration: none;
    text-transform: none;
    white-space: normal;
    overflow-wrap: anywhere;
    cursor: pointer;
    transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
html .rr-btn--primary {
    background: var(--rr-btn-primary-bg, var(--rr-btn-navy));
    border-color: var(--rr-btn-primary-bg, var(--rr-btn-navy));
    color: var(--rr-btn-primary-text, var(--rr-btn-white)) !important;
}
html:not([data-rr-buttons-restored]) .rr-btn--primary:is(:hover, :active, :focus-visible) {
    background: var(--rr-btn-primary-hover-bg, var(--rr-btn-purple));
    border-color: var(--rr-btn-primary-hover-bg, var(--rr-btn-purple));
    color: var(--rr-btn-primary-hover-text, var(--rr-btn-white)) !important;
}
html .rr-btn--secondary {
    padding: var(--rr-btn-secondary-padding, var(--rr-btn-padding, 12px 16px 12px 12px));
    background: transparent;
    border-color: var(--rr-btn-secondary-ink, rgba(23, 18, 69, .5));
    color: var(--rr-btn-secondary-ink, var(--rr-btn-navy)) !important;
}
html:not([data-rr-buttons-restored]) .rr-btn--secondary:is(:hover, :active, :focus-visible) {
    background: var(--rr-btn-secondary-ink, var(--rr-btn-navy));
    border-color: var(--rr-btn-secondary-ink, var(--rr-btn-navy));
    color: var(--rr-btn-secondary-hover-text, var(--rr-btn-white)) !important;
}
html .rr-btn:focus-visible {
    outline: 2px solid #28FFFF;
    outline-offset: 3px;
}
html .rr-btn:is(:disabled, [aria-disabled="true"]) {
    opacity: .5;
    cursor: default;
    pointer-events: none;
}
html .rr-btn[hidden] { display: none; }
/* A cached page can retain :hover until the pointer moves. Reset immediately on Back. */
html[data-rr-buttons-restored] .rr-btn { transition: none; }
@media (prefers-reduced-motion: reduce) {
    html .rr-btn { transition: none; }
}
