:root {
    --pal-blue: #123a6b;
    --pal-blue-dark: #0b2647;
    --pal-blue-light: #1e5aa8;
    --pal-gold: #c99a2e;
    --pal-gold-dark: #a87f1f;
    --pal-gold-light: #f2d888;
}

body {
    font-family: 'Segoe UI', Arial, Helvetica, sans-serif;
}

a {
    color: var(--pal-blue-light);
}

    a:hover {
        color: var(--pal-gold-dark);
    }

.pal-hero .pal-title {
    font-size: 2.4rem;
}

.pal-hero .pal-subtitle {
    font-size: 1.15rem;
    opacity: .9;
}

/* Icon sizing helpers used across the toolkit page */
.pal-icon {
    width: 56px;
    height: 56px;
    object-fit: contain;
    display: block;
}

.pal-icon-sm {
    width: 28px;
    height: 28px;
    object-fit: contain;
    vertical-align: middle;
}

.pal-icon-xs {
    width: 18px;
    height: 18px;
    object-fit: contain;
    vertical-align: middle;
}

/* Numbered circle badge used in the Steps section */
.step-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: var(--pal-gold);
    color: var(--pal-blue-dark);
    font-weight: 700;
    font-size: .95rem;
}

/* Card hover lift, consistent with the rest of the site */
.card {
    transition: transform .15s ease, box-shadow .15s ease;
    border-top: 3px solid transparent;
}

.card:hover {
    transform: translateY(-3px);
    border-top-color: var(--pal-gold);
}

/* "PAL Is" / "PAL Is Not" card headers */
.pal-card-header-blue {
    background-color: var(--pal-blue);
    color: #fff;
}

.pal-card-header-gold {
    background-color: var(--pal-gold);
    color: var(--pal-blue-dark);
}

/* Primary buttons: deep blue with gold hover */
.btn-primary {
    background-color: var(--pal-blue);
    border-color: var(--pal-blue);
}

    .btn-primary:hover,
    .btn-primary:focus,
    .btn-primary:active {
        background-color: var(--pal-blue-dark) !important;
        border-color: var(--pal-blue-dark) !important;
    }

/* Gold buttons, used for contrast on blue section backgrounds */
.btn-pal-gold {
    background-color: var(--pal-gold);
    border-color: var(--pal-gold);
    color: var(--pal-blue-dark);
    font-weight: 600;
}

    .btn-pal-gold:hover,
    .btn-pal-gold:focus {
        background-color: var(--pal-gold-dark);
        border-color: var(--pal-gold-dark);
        color: #fff;
    }

.link-primary {
    color: var(--pal-blue-light) !important;
}

.link-secondary {
    color: var(--pal-blue) !important;
}

/* Gold-accented alert used for the total-downloads banner */
.alert-pal-gold {
    background-color: var(--pal-gold-light);
    border-color: var(--pal-gold);
    color: var(--pal-blue-dark);
}

blockquote.blockquote {
    border-left: 4px solid var(--pal-gold);
    padding-left: 1.25rem;
}
