.uk-hidden-visually:not(:focus):not(:active):not(:focus-within) {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    border: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
}

/* Altairbalt OÜ brand palette overrides
   Palette is based on the logo:
   lighter corporate blue, secondary aqua, orange only as a small accent.
*/

:root {
    --ab-navy-900: #244783;
    --ab-navy: #2F5AA8;
    --ab-blue: #3F75BA;
    --ab-aqua: #43BFC8;
    --ab-aqua-dark: #1B8FA0;
    --ab-orange: #FF9300;
    --ab-orange-dark: #E87500;
    --ab-soft-bg: #F5F8FC;
    --ab-soft-blue: #EEF4FF;
    --ab-text: #28333E;
    --ab-muted-text: #4E555C;

    --bs-blue: var(--ab-navy);
    --bs-cyan: var(--ab-aqua-dark);
    --bs-primary: var(--ab-navy);
    --bs-info: var(--ab-aqua-dark);
    --bs-orange: var(--ab-orange);
    --bs-teal: var(--ab-aqua);
    --bs-primary-rgb: 47, 90, 168;
    --bs-info-rgb: 27, 143, 160;
    --bs-body-color: var(--ab-text);
}

/* General tone */
body {
    color: var(--ab-text);
}

.uk-section-muted {
    background-color: var(--ab-soft-bg);
}

::selection {
    background: #FFF46A;
    color: var(--ab-navy-900);
}

/* Primary brand areas */
.uk-section-primary,
.uk-tile-primary,
.uk-card-primary,
.bg-primary {
    background-color: var(--ab-navy) !important;
    color: #ffffff;
}

.uk-section-primary {
    background-image: linear-gradient(135deg, var(--ab-navy-900) 0%, var(--ab-navy) 58%, var(--ab-aqua-dark) 100%) !important;
}

.uk-tile-primary.uk-tile-hover:hover,
.uk-card-primary.uk-card-hover:hover {
    background-color: var(--ab-blue) !important;
}

/* Overrides old inline emerald backgrounds from the previous design */
[style*="background-color: #009B77"],
[style*="background-color:#009B77"],
[style*="background-color: #009b77"],
[style*="background-color:#009b77"] {
    background-color: var(--ab-navy) !important;
}

[style*="rgba(0, 155, 119"],
[style*="rgba(0,155,119"] {
    background-color: rgba(47, 90, 168, 0.68) !important;
}

/* Text and links */
a,
.uk-link,
.text-primary,
.uk-text-primary {
    color: var(--ab-navy);
}

a:hover,
.uk-link:hover,
.text-primary:hover,
.uk-text-primary:hover {
    color: var(--ab-aqua-dark);
}

.uk-section-primary a:not(.uk-button),
.uk-tile-primary a:not(.uk-button),
.uk-card-primary a:not(.uk-button),
.uk-light a:not(.uk-button) {
    color: rgba(255, 255, 255, 0.92);
}

.uk-section-primary a:not(.uk-button):hover,
.uk-tile-primary a:not(.uk-button):hover,
.uk-card-primary a:not(.uk-button):hover,
.uk-light a:not(.uk-button):hover {
    color: var(--ab-orange);
}

/* Navigation */
.uk-navbar-nav > li > a {
    position: relative;
    color: var(--ab-text);
}

.uk-navbar-nav > li.uk-active > a,
.uk-navbar-nav > li > a:hover,
.uk-navbar-toggle:hover,
.uk-navbar-toggle[aria-expanded="true"] {
    color: var(--ab-navy);
}

.uk-navbar-nav > li > a::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 18px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--ab-orange), var(--ab-aqua));
    opacity: 0;
    transform: scaleX(0.35);
    transform-origin: center;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.uk-navbar-nav > li.uk-active > a::after,
.uk-navbar-nav > li > a:hover::after {
    opacity: 1;
    transform: scaleX(1);
}

.uk-nav-default > li.uk-active > a,
.uk-nav-default > li > a:hover {
    color: var(--ab-navy);
}

.uk-offcanvas-bar {
    background: linear-gradient(180deg, var(--ab-navy-900), var(--ab-navy));
}

/* Buttons and calls to action */
.uk-button-primary,
.btn-primary,
.btn-info,
.btn-success {
    background-color: var(--ab-navy) !important;
    color: #ffffff !important;
    border-color: var(--ab-navy) !important;
    box-shadow: 0 8px 20px rgba(47, 90, 168, 0.16);
    transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.uk-button-primary:hover,
.btn-primary:hover,
.btn-info:hover,
.btn-success:hover {
    background-color: var(--ab-aqua-dark) !important;
    color: #ffffff !important;
    border-color: var(--ab-aqua-dark) !important;
    box-shadow: 0 10px 24px rgba(27, 143, 160, 0.20);
    transform: translateY(-1px);
}

.uk-button-primary.uk-active,
.uk-button-primary:active,
.btn-primary.uk-active,
.btn-primary:active,
.btn-info.uk-active,
.btn-info:active,
.btn-success.uk-active,
.btn-success:active {
    background-color: var(--ab-navy-900) !important;
    color: #ffffff !important;
    border-color: var(--ab-navy-900) !important;
}

.uk-light .uk-button-primary,
.uk-section-primary .uk-button-primary,
.uk-tile-primary .uk-button-primary,
.uk-card-primary .uk-button-primary {
    background-color: #ffffff !important;
    color: var(--ab-navy) !important;
    border-color: #ffffff !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.16);
}

.uk-light .uk-button-primary:hover,
.uk-section-primary .uk-button-primary:hover,
.uk-tile-primary .uk-button-primary:hover,
.uk-card-primary .uk-button-primary:hover {
    background-color: var(--ab-orange) !important;
    color: var(--ab-text) !important;
    border-color: var(--ab-orange) !important;
}

/* Forms */
.uk-input:focus,
.uk-select:focus,
.uk-textarea:focus,
.form-control:focus,
.form-select:focus {
    border-color: var(--ab-aqua) !important;
    box-shadow: 0 0 0 0.18rem rgba(52, 183, 189, 0.18) !important;
}

.uk-checkbox:checked,
.uk-radio:checked,
.form-check-input:checked {
    background-color: var(--ab-navy) !important;
    border-color: var(--ab-navy) !important;
}

/* Small visual accents */
.uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before {
    border-left-color: rgba(255, 255, 255, 0.28);
}

.uk-label,
.badge.bg-primary {
    background-color: var(--ab-soft-blue) !important;
    color: var(--ab-navy) !important;
}

.uk-totop:hover {
    color: var(--ab-orange);
}

hr,
.uk-hr {
    border-top-color: rgba(47, 90, 168, 0.14);
}

