/* ==================================================
   0) FONTS
   ================================================== */

/* Load Lato (you can also link this in <head>) */
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&display=swap');

/* Museo Slab (self-hosted) */
@font-face {
    font-family: 'Museo Slab';
    src: url('/fonts/MuseoSlab-500.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

/* Font tokens */
:root {
    --font-body: "Lato", Arial, sans-serif;
    --font-heading: "Museo Slab", "Times New Roman", Times, serif;
}


/* ==================================================
   1) DESIGN TOKENS (default single/light mode)
   ================================================== */

:root {
    --bs-body-bg: #ffffff;
    --bs-body-color: #212529;
    --bs-primary: #AC1E2C;
    --bs-secondary: #5E2A2A;
    --bs-success: #4C9462;
    --bs-info: #0098CE;
    --bs-warning: #FFC52F;
    --bs-danger: #E12727;
    --bs-light: #F8F9FA;
    --bs-dark: #31251C;
    --bs-btn-primary-bg: #42738D;
    --bs-btn-primary-border-color: #42738D;
    --bs-btn-primary-hover-bg: #366075;
    --bs-btn-primary-hover-border-color: #2d4f61;
    --bs-btn-secondary-bg: #4C4F54;
    --bs-btn-secondary-border-color: #4C4F54;
    --bs-btn-secondary-hover-bg: #3b3d41;
    --bs-btn-secondary-hover-border-color: #2d2f32;
    --bs-btn-success-bg: #49783C;
    --bs-btn-success-border-color: #49783C;
    --bs-btn-success-hover-bg: #3a6230;
    --bs-btn-success-hover-border-color: #2e5025;
    --bs-btn-danger-bg: #AC1E2C;
    --bs-btn-danger-border-color: #AC1E2C;
    --bs-btn-danger-hover-bg: #911822;
    --bs-btn-danger-hover-border-color: #7A141D;
    --bs-btn-warning-bg: #FFC52F;
    --bs-btn-warning-border-color: #FFC52F;
    --bs-btn-warning-hover-bg: #e0ad27;
    --bs-btn-warning-hover-border-color: #c9971e;
}


/* ==================================================
   2) BASE / GLOBAL
   ================================================== */

/* Headings use Museo Slab */
h1, h2, h3, h4, h5, h6, .header-sub-title {
    font-family: var(--font-heading);
    font-weight: 500;
    line-height: 1.2;
    margin: 0 0 1rem;
}

/* Everything else uses Lato */
html, body, button, input, select, textarea,
p, a, small, strong, em, label, li, dt, dd,
th, td, caption, blockquote, code, pre, span, div,
nav, header, footer, section, article, aside {
    font-family: var(--font-body);
}

/* Skip to content */
#skiptocontent a {
    padding: 6px;
    position: absolute;
    left: -400px;
    color: #000;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    border-bottom-right-radius: 8px;
    background: #ffc52f;
    transition: top .5s ease-out;
    z-index: 100;
}

    #skiptocontent a:focus {
        position: static;
        width: auto;
        height: auto;
    }

/* System message ticker */
.system-message-bar {
    overflow: hidden;
    white-space: nowrap;
}

    .system-message-bar .message-content {
        display: inline-block;
        padding-left: 45%;
        animation: system-message-scroll 15s linear infinite;
    }

@keyframes system-message-scroll {
    0% {
        transform: translateX(100%);
    }

    100% {
        transform: translateX(-100%);
    }
}

/* Interactive underline  NAV LINKS ONLY */
.nav-link {
    position: relative;
    transition: color 0.3s;
}

    .nav-link::after {
        content: "";
        display: block;
        height: 3px;
        width: 0;
        background-color: #FFC52F;
        transition: width 0.3s;
        position: absolute;
        left: 0;
        bottom: -3px;
    }

    .nav-link:hover::after,
    .nav-link:focus::after {
        width: 100%;
    }

/* Remove caret/after on certain components */
.dropdown-item::after,
.accordion-button::after,
.dropdown-toggle::after,
.fixed-table-toolbar .dropdown-toggle::after {
    content: none !important;
    display: none !important;
}

/* Checkboxes */
input[type="checkbox"].form-check-input {
    border-color: #495057;
    background-color: #fff;
}

    input[type="checkbox"].form-check-input:checked {
        background-color: #0d6efd;
        border-color: #0d6efd;
    }

/* Header band (if you use .text-bg-dark inside header) */
header .text-bg-dark {
    background-color: #42738D !important;
}


/* ==================================================
   3) BRAND BAR (.joco-group)
   ================================================== */

/* Use on any container you want to brand with blue */
.joco-group {
    background-color: #42738D;
}

    .joco-group a {
        color: #fff !important;
        text-decoration: none;
    }

        .joco-group a:hover,
        .joco-group a:focus {
            color: #fff !important;
            text-decoration: underline;
            text-decoration-color: #FFC52F;
            text-underline-offset: 3px;
        }


/* ==================================================
   4) NAVBAR (Bootstrap)  shorter, even spacing, brand look
   ================================================== */

/* Attach to: <nav class="navbar navbar-expand-lg joco-group"> */
.navbar.joco-group {
    background-color: #42738D;
    color: #fff;
    margin-bottom: 9px; /* space below the bar */
    min-height: 56px; /* target ~56px height */
    padding-top: 0; /* remove vertical padding on the bar */
    padding-bottom: 0;
}

    /* No sliding underline inside the brand navbar */
    .navbar.joco-group .nav-link::after {
        display: none !important;
    }

    /* Base link look (mobile first) */
    .navbar.joco-group .nav-link,
    .navbar.joco-group .navbar-text a,
    .navbar.joco-group .navbar-brand {
        color: #fff !important;
        text-decoration: none;
        font-size: 1.125rem; /* ~18px on mobile */
        padding: 8px 0; /* tighter to reduce total height */
        margin-bottom: 0;
        line-height: 1.2;
        display: block;
        font-weight: 600;
        border-bottom: 3px solid transparent; /* hidden baseline */
    }

        /* Hover: instant yellow underline (border) */
        .navbar.joco-group .nav-link:hover,
        .navbar.joco-group .navbar-text a:hover {
            border-bottom: 3px solid #ffc52f;
            text-decoration: none;
        }

/* Desktop layout and even spacing (>= 992px) */
@media (min-width: 992px) {
    .navbar.joco-group .navbar-collapse {
        display: flex !important;
        flex-direction: row;
        justify-content: space-between;
        margin: 0 1rem; /* 16px left/right as requested */
    }

    .navbar.joco-group .navbar-nav {
        flex: 1 1 auto;
        display: flex;
        margin-right: 0 !important;
    }

        .navbar.joco-group .navbar-nav .nav-item {
            flex: 1 1 0;
            text-align: center;
            background-color: #42738D;
        }

    /* Keep desktop items tight as well */
    .navbar.joco-group .nav-link,
    .navbar.joco-group .navbar-text a,
    .navbar.joco-group .navbar-brand {
        width: 100%;
        font-size: 1.25rem; /* 20px desktop */
        padding: 8px 0; /* tighter padding to reduce height */
        margin-bottom: 0;
    }

        .navbar.joco-group .nav-link:hover span,
        .navbar.joco-group .nav-link.is-active span,
        .navbar.joco-group .nav-link.active span {
            padding-bottom: 0;
            border-bottom: none;
        }
}

/* Hamburger contrast on blue */
.navbar.joco-group .navbar-toggler {
    border-color: rgba(255, 255, 255, 0.35);
}

.navbar.joco-group .navbar-toggler-icon {
    filter: invert(1) grayscale(100%);
}

/* Keep special right-side text white */
.navbar.joco-group .navbar-text a {
    color: #fff !important;
}


/* ==================================================
   5) BUTTONS (spacing and brand styles)
   ================================================== */

/* 9px of space between above text and buttons */
button:not(.navbar-toggler),
.btn,
input[type="submit"],
input[type="button"],
input[type="reset"],
.fc-button {
    margin-top: 9px;
}

    /* Remove sliding underline on buttons; use text-only underline on hover */
    button::after,
    .btn::after,
    .fc-button::after {
        content: none !important;
        display: none !important;
    }

button,
.btn,
.fc-button {
    text-decoration: none;
}

    button:hover,
    button:focus,
    .btn:hover,
    .btn:focus,
    .fc-button:hover,
    .fc-button:focus {
        text-decoration: underline;
        text-decoration-color: #FFC52F;
        text-underline-offset: 3px;
    }
/* Never underline buttons that are inside table headers */
th button,
th .btn,
th .fc-button,
th button:hover,
th button:focus,
th .btn:hover,
th .btn:focus,
th .fc-button:hover,
th .fc-button:focus {
    text-decoration: none !important;
}

.btn-outline-danger {
    color: #AC1E2C;
    border-color: #AC1E2C;
}

    .btn-outline-danger:hover {
        background-color: #AC1E2C;
        color: #fff;
    }

.btn-primary {
    background-color: var(--bs-btn-primary-bg);
    border-color: var(--bs-btn-primary-border-color);
    color: #fff;
}

    .btn-primary:hover {
        background-color: var(--bs-btn-primary-hover-bg);
        border-color: var(--bs-btn-primary-hover-border-color);
    }

.btn-outline-primary {
    color: var(--bs-btn-primary-bg);
    border-color: var(--bs-btn-primary-border-color);
}

    .btn-outline-primary:hover,
    .btn-outline-primary:active,
    .btn-outline-primary.active,
    .btn-check:checked + .btn-outline-primary {
        background-color: var(--bs-btn-primary-bg);
        border-color: var(--bs-btn-primary-border-color);
        color: #fff;
    }

.btn-secondary {
    background-color: var(--bs-btn-secondary-bg);
    border-color: var(--bs-btn-secondary-border-color);
    color: #fff;
}

    .btn-secondary:hover {
        background-color: var(--bs-btn-secondary-hover-bg);
        border-color: var(--bs-btn-secondary-hover-border-color);
    }

.btn-success {
    background-color: var(--bs-btn-success-bg);
    border-color: var(--bs-btn-success-border-color);
    color: #fff;
}

    .btn-success:hover {
        background-color: var(--bs-btn-success-hover-bg);
        border-color: var(--bs-btn-success-hover-border-color);
    }

.btn-danger {
    background-color: var(--bs-btn-danger-bg);
    border-color: var(--bs-btn-danger-border-color);
    color: #fff;
}

    .btn-danger:hover {
        background-color: var(--bs-btn-danger-hover-bg);
        border-color: var(--bs-btn-danger-hover-border-color);
    }

.btn-warning {
    background-color: var(--bs-btn-warning-bg);
    border-color: var(--bs-btn-warning-border-color);
    color: #000;
}

    .btn-warning:hover {
        background-color: var(--bs-btn-warning-hover-bg);
        border-color: var(--bs-btn-warning-hover-border-color);
        color: #000;
    }


/* ==================================================
   6) PAGINATION
   ================================================== */

.pagination .page-item.active .page-link {
    background-color: #42738D;
    border-color: #42738D;
    color: #fff;
}

.pagination .page-link {
    color: #42738D;
    border: 1px solid #dee2e6;
}


/* ==================================================
   7) TABLES
   ================================================== */

:root {
    --table-header-bg: #42738D;
    --table-header-color: #fff;
    --table-header-border: #42738D;
}

/* Bootstrap tables */
.table thead,
.table thead tr,
.table thead th {
    background-color: var(--table-header-bg) !important;
    color: var(--table-header-color) !important;
    border-color: var(--table-header-border) !important;
}

    .table thead th a {
        color: var(--table-header-color) !important;
        text-decoration: none;
    }

        .table thead th a:hover {
            text-decoration: underline;
        }

    /* Override any "light" header styling */
    .table thead.table-light,
    .table thead.table-light th {
        background-color: var(--table-header-bg) !important;
        color: var(--table-header-color) !important;
        border-color: var(--table-header-border) !important;
    }

/* Plain (non-Bootstrap) table fallback */
table thead th,
table thead tr {
    background-color: var(--table-header-bg);
    color: var(--table-header-color);
    border-color: var(--table-header-border);
}


/* ==================================================
   8) BOOTSTRAP-TABLE TOOLBAR & PAGINATION
   ================================================== */

/* Existing toolbar toggle (kept) */
.fixed-table-toolbar .dropdown-toggle {
    background-color: #42738D;
    border-color: #42738D;
    color: #fff;
}

    .fixed-table-toolbar .dropdown-toggle:hover {
        background-color: #366075;
        border-color: #2d4f61;
        color: #fff;
    }

/* Page size control (dropdown button style) */
.bootstrap-table .fixed-table-pagination .page-list .btn,
.bootstrap-table .fixed-table-pagination .page-list .btn-secondary,
.bootstrap-table .fixed-table-pagination .page-list .dropdown-toggle {
    background-color: var(--bs-btn-primary-bg) !important; /* #42738D */
    border-color: var(--bs-btn-primary-border-color) !important;
    color: #fff !important;
}

    .bootstrap-table .fixed-table-pagination .page-list .btn:hover,
    .bootstrap-table .fixed-table-pagination .page-list .btn:focus,
    .bootstrap-table .fixed-table-pagination .page-list .dropdown-toggle:hover,
    .bootstrap-table .fixed-table-pagination .page-list .dropdown-toggle:focus {
        background-color: var(--bs-btn-primary-hover-bg) !important; /* #366075 */
        border-color: var(--bs-btn-primary-hover-border-color) !important;
        color: #fff !important;
    }

/* Page size control (native <select> fallback) */
.bootstrap-table .fixed-table-pagination .page-list select,
.bootstrap-table .fixed-table-pagination .page-list .form-select {
    background-color: var(--bs-btn-primary-bg) !important;
    border-color: var(--bs-btn-primary-border-color) !important;
    color: #fff !important;
}

    .bootstrap-table .fixed-table-pagination .page-list .form-select:focus {
        box-shadow: 0 0 0 0.25rem rgba(66,115,141,0.45);
    }

/* Ensure dropdown menu items remain readable */
.bootstrap-table .fixed-table-pagination .page-list .dropdown-menu .dropdown-item.active,
.bootstrap-table .fixed-table-pagination .page-list .dropdown-menu .dropdown-item:active {
    background-color: var(--bs-btn-primary-bg);
    color: #fff;
}

/* ==================================================
   9) COLOR BAR (footer accent)
   ================================================== */

.color-bar span {
    height: 1.125rem;
    display: block;
}

    .color-bar span:nth-child(1) {
        width: 17%;
    }

    .color-bar span:nth-child(2),
    .color-bar span:nth-child(3) {
        width: 15%;
    }

    .color-bar span:nth-child(4) {
        width: 21%;
    }

    .color-bar span:nth-child(5) {
        width: 18%;
    }

    .color-bar span:nth-child(6) {
        width: 14%;
    }

.primary-2-bg {
    background: #356f8d;
}

.accent-4-bg {
    background: #bae0e0;
}

.primary-1-bg {
    background: #ac1e2c;
}

.accent-1-bg {
    background: #ffc52f;
}

.success-bg {
    background: #367f2d;
}

.accent-3-bg {
    background: #acc37e;
}


/* ==================================================
   10) FOOTER
   ================================================== */

.footer {
    background: #5e2a2a;
    color: #fff;
    line-height: 1.5;
}

    .footer .footer-address {
        padding: 30px;
        margin-right: 50px;
    }

    .footer a {
        color: #fff;
        text-decoration: none;
        padding: 10px 0;
    }

    .footer nav li {
        margin: 0 0 0.5em 0;
        list-style: none;
    }

    .footer li:focus,
    .footer li:hover,
    .footer li a:focus,
    .footer li a:hover {
        text-decoration: underline;
        background-color: #ffc52f !important;
        color: #000;
        padding: 2px 0 2px 5px;
    }

    .footer .site-logo .logo-inverse {
        width: 216px;
        height: 110px;
        display: block;
        margin: 0 auto 25px;
    }

    .footer .site-logo .logo-color {
        display: none;
    }

    .footer .address {
        margin: 1rem 0 1.5rem;
    }

    /* Ensure footer children inherit size (fonts are globally Lato) */
    .footer, .footer p, .footer a, .footer li, .footer nav, .footer nav a {
        font-size: inherit;
    }

        /* Optional social list helpers (safe if unused) */
        .footer .block-social-media-links li {
            margin-bottom: 0;
            line-height: 1.5;
        }

            .footer .block-social-media-links li svg {
                font-size: 1.15rem;
            }

            .footer .block-social-media-links li .icon {
                display: inline-block;
                width: 1.3rem;
                color: #fff;
            }

.social-media-links--platforms.vertical li {
    list-style-type: none;
    margin: 0 0 0.5em 0;
}


/* ==================================================
   11) LINKS  brand blue sitewide (except brand bars)
   ================================================== */

/* Bootstrap-aware: update link variables */
:root {
    --bs-link-color: #42738D;
    --bs-link-hover-color: #2d4f61;
    --bs-link-decoration: underline;
    --bs-link-hover-decoration: underline;
}

/* Fallback for anything not using Bootstrap vars */
a {
    color: var(--bs-link-color);
    text-decoration: var(--bs-link-decoration);
}

    a:hover,
    a:focus {
        color: var(--bs-link-hover-color);
        text-decoration: var(--bs-link-hover-decoration);
    }

    a:visited {
        color: var(--bs-link-color);
    }

/* Leave navbar and footer link colors white there */
.navbar.joco-group .nav-link,
.navbar.joco-group .navbar-text a,
.footer a {
    color: #fff !important;
}

/* ==================================================
   11) Fieldset and framed-section  rounded box around fieldsets and framed-section
   ================================================== */

fieldset, .framed-section {
    border: 1px solid rgb(204, 204, 204) !important;
    padding: 0.85em !important;
    margin: 0 0 20px 0 !important;
    -webkit-box-shadow: 10px #000;
    box-shadow: 10px #000;
    border-radius: 15px 15px 15px 15px;
}

/* ==================================================
   12) ACCESSIBLE FOCUS STATES (triple ring + text-only buttons)
   ================================================== */

:root {
    --focus-ring-inner: #000000;
    --focus-ring-middle: #ffffff;
    --focus-ring-outer: rgba(66,115,141,0.45);
}

/* Universal triple-ring for everything except buttons */
:focus-visible {
    outline: none !important;
    box-shadow: 0 0 0 1px var(--focus-ring-inner), 0 0 0 3px var(--focus-ring-middle), 0 0 0 5px var(--focus-ring-outer);
    border-radius: 4px;
    transition: box-shadow 0.15s ease;
}

/* Header logo images: full triple-ring */
header a:focus-visible img,
.header a:focus-visible img,
.site-logo a:focus-visible img {
    outline: none;
    box-shadow: 0 0 0 1px var(--focus-ring-inner), 0 0 0 3px var(--focus-ring-middle), 0 0 0 5px var(--focus-ring-outer);
    border-radius: 4px;
    transition: box-shadow 0.15s ease;
}

/* Buttons anywhere (text-only underline focus) */
button:focus,
button:focus-visible,
.btn:focus,
.btn:focus-visible,
[role="button"]:focus,
[role="button"]:focus-visible,
input[type="button"]:focus,
input[type="submit"]:focus,
input[type="reset"]:focus,
.fc-button:focus,
.fc-button:focus-visible,
.navbar .btn:focus,
.navbar .btn:focus-visible {
    outline: none !important;
    box-shadow: none !important;
    text-decoration: underline !important;
    text-decoration-thickness: 3px;
    text-decoration-color: var(--focus-ring-outer);
    text-underline-offset: 4px;
}

/* Checkboxes, radios, and form fields keep triple-ring */
input[type="checkbox"]:focus-visible,
input[type="radio"]:focus-visible,
select:focus-visible,
textarea:focus-visible,
input:not([type="checkbox"]):not([type="radio"]):focus-visible {
    box-shadow: 0 0 0 1px var(--focus-ring-inner), 0 0 0 3px var(--focus-ring-middle), 0 0 0 5px var(--focus-ring-outer);
}

/* Links and pagination retain triple-ring */
a:focus-visible,
.pagination .page-link:focus-visible {
    box-shadow: 0 0 0 1px var(--focus-ring-inner), 0 0 0 3px var(--focus-ring-middle), 0 0 0 5px var(--focus-ring-outer);
}

/* Footer links */
.footer a:focus-visible {
    box-shadow: 0 0 0 1px var(--focus-ring-inner), 0 0 0 3px var(--focus-ring-middle), 0 0 0 5px var(--focus-ring-outer);
}

/* Table header buttons use underline style */
th button:focus,
th .btn:focus,
th button:focus-visible,
th .btn:focus-visible {
    text-decoration: underline !important;
}

/* ==================================================
   NAVBAR FOCUS  Triple ring box around nav links
   ================================================== */

.navbar.joco-group .nav-link:focus,
.navbar.joco-group .nav-link:focus-visible,
.navbar.joco-group .navbar-text a:focus,
.navbar.joco-group .navbar-text a:focus-visible {
    outline: none !important;
    position: relative;
    z-index: 2;
    text-decoration: none !important;
    border-bottom: none !important;
    box-shadow: 0 0 0 1px #000000, /* inner black */
    0 0 0 3px #ffffff, /* middle white */
    0 0 0 5px rgba(66,115,141,0.45); /* outer site blue glow */
    border-radius: 4px;
    transition: box-shadow 0.15s ease;
}

/* Optional hover consistency (remove if you prefer focus only) */
.navbar.joco-group .nav-link:hover {
    text-decoration: none !important;
}

/* ==================================================
   BUTTON FOCUS  Triple ring (black / white / site-blue)
   Applies to: <input class="btn">, <button class="btn">, <a class="btn">
   ================================================== */

/* site blue token (if not already defined elsewhere) */
:root {
    --site-blue: #42738D;
}

/* 1) Neutralize Bootstrap's default focus/active glow & color swap */
.btn:focus,
.btn:focus-visible,
.btn:focus:hover,
.btn:active:focus,
a.btn:focus,
a.btn:focus-visible,
a.btn:focus:hover,
button.btn:focus,
button.btn:focus-visible,
button.btn:focus:hover,
input.btn:focus,
input.btn:focus-visible,
input.btn:focus:hover {
    outline: none !important;
    box-shadow: none !important;
}

/* Keep the normal background/border while focused for common variants */
.btn-primary:focus, .btn-primary:focus-visible, .btn-primary:focus:hover {
    background-color: var(--bs-btn-primary-bg) !important;
    border-color: var(--bs-btn-primary-border-color) !important;
    color: #fff !important;
}

.btn-secondary:focus, .btn-secondary:focus-visible, .btn-secondary:focus:hover {
    background-color: var(--bs-btn-secondary-bg) !important;
    border-color: var(--bs-btn-secondary-border-color) !important;
    color: #fff !important;
}

.btn-success:focus, .btn-success:focus-visible, .btn-success:focus:hover {
    background-color: var(--bs-btn-success-bg) !important;
    border-color: var(--bs-btn-success-border-color) !important;
    color: #fff !important;
}

.btn-danger:focus, .btn-danger:focus-visible, .btn-danger:focus:hover {
    background-color: var(--bs-btn-danger-bg) !important;
    border-color: var(--bs-btn-danger-border-color) !important;
    color: #fff !important;
}

.btn-warning:focus, .btn-warning:focus-visible, .btn-warning:focus:hover {
    background-color: var(--bs-btn-warning-bg) !important;
    border-color: var(--bs-btn-warning-border-color) !important;
    color: #000 !important;
}
/* Outline variants stay transparent on focus */
.btn-outline-primary:focus, .btn-outline-primary:focus-visible, .btn-outline-primary:focus:hover {
    background-color: transparent !important;
    border-color: var(--bs-btn-primary-border-color) !important;
    color: var(--bs-btn-primary-border-color) !important;
}

.btn-outline-secondary:focus, .btn-outline-secondary:focus-visible, .btn-outline-secondary:focus:hover {
    background-color: transparent !important;
    border-color: var(--bs-btn-secondary-border-color) !important;
    color: var(--bs-btn-secondary-border-color) !important;
}

/* 2) Draw the triple ring INSIDE the button (so it hugs the label area) */
.btn:focus-visible,
a.btn:focus-visible,
button.btn:focus-visible,
input.btn:focus-visible,
/* Safari fallback */
.btn:focus:not(:focus-visible),
a.btn:focus:not(:focus-visible),
button.btn:focus:not(:focus-visible),
input.btn:focus:not(:focus-visible) {
    /* inset rings = around the content area, not outside the button */
    box-shadow: inset 0 0 0 2px #000, /* inner black */
    inset 0 0 0 4px #fff, /* middle white */
    inset 0 0 0 6px var(--site-blue) /* outer site-blue */
    !important;
    transition: box-shadow 0.15s ease;
}

/* 3) Prevent the pressed look on active */
.btn:active,
a.btn:active,
button.btn:active,
input.btn:active {
    transform: none !important;
}

/* 4) Optional: keep underline effects off buttons even if a global link style adds them */
.btn,
.btn:hover,
.btn:focus,
.btn:focus-visible {
    text-decoration: none !important;
}
}