:root {
    --carivo-navy: #04182C;
    --carivo-orange: #FE5F05;
    --carivo-white: #FEFEFE;
    --carivo-light-navy: #12365E;
    --carivo-slate: #3A4B5E;
    --carivo-mist: #C3CFDB;
    --carivo-concrete: #F6F7FA;

    --bs-primary: var(--carivo-navy);
    --bs-primary-rgb: 4, 24, 44;
    --bs-link-color: var(--carivo-light-navy);
    --bs-link-hover-color: var(--carivo-orange);
    --bs-body-color: var(--carivo-navy);
    --bs-body-bg: var(--carivo-concrete);
    --bs-body-font-family: "Archivo", sans-serif;
    --bs-border-radius: 8px;
    --bs-border-radius-sm: 6px;
    --bs-border-radius-lg: 8px;
}

body {
    color: var(--carivo-navy);
    background: var(--carivo-concrete);
    font-family: "Archivo", sans-serif;
    font-weight: 500;
    line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--carivo-navy);
    font-weight: 800;
}

:where(.text-white, .bg-dark, .bg-primary, .lp-hero, .lp-dark-surface, [data-surface="dark"]) :is(h1, h2, h3, h4, h5, h6) {
    color: inherit;
}

.btn-primary {
    color: var(--carivo-navy) !important;
    background: var(--carivo-orange) !important;
    border-color: var(--carivo-orange) !important;
    font-weight: 800;
}

.btn-primary:hover,
.btn-primary:focus {
    color: var(--carivo-navy) !important;
    background: var(--carivo-white) !important;
    border-color: var(--carivo-orange) !important;
}

.btn,
.form-control,
.form-select,
.card,
.alert {
    border-radius: 8px;
}

.btn-outline-primary {
    color: var(--carivo-navy) !important;
    border-color: var(--carivo-navy) !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
    color: var(--carivo-white) !important;
    background: var(--carivo-navy) !important;
    border-color: var(--carivo-navy) !important;
}

:focus-visible {
    outline: 3px solid var(--carivo-orange);
    outline-offset: 2px;
}
