.brand-kit { max-width: 960px; padding: 1.5rem 0; }
.brand-kit__hero { max-width: 700px; padding: 1.5rem 0 1.5rem; }
.brand-kit__hero h1, .brand-kit__hero p { margin-top: 0; }
.brand-kit__eyebrow {
    display: block; line-height: 1.2; margin-bottom: .75rem;
    font-size: .72rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase;
    color: var(--bs-primary, #0d6efd);
}
.brand-kit__block { margin-bottom: 2.5rem; }
.brand-kit__h { font-size: 1.15rem; margin-bottom: 1rem; }
.brand-kit__tile {
    display: flex; align-items: center; justify-content: center;
    min-height: 160px; padding: 1.5rem; border-radius: .75rem;
    border: 1px solid var(--bs-border-color, #dee2e6);
}
.brand-kit__tile--light { background: #ffffff; }
.brand-kit__tile--brand { background: var(--bs-primary, #0d6efd); border-color: transparent; }
.brand-kit__tile--dark { background: #111418; border-color: #111418; }
.brand-kit__tile--square { aspect-ratio: 1 / 1; min-height: 0; }
.brand-kit__logo { max-width: 100%; max-height: 90px; object-fit: contain; }
.brand-kit__icon { width: 96px; height: 96px; object-fit: contain; border-radius: 22%; }
.brand-kit__caption {
    display: flex; align-items: center; justify-content: space-between;
    gap: .75rem; margin-top: .5rem; font-size: .875rem;
}
.brand-kit__note { margin-top: .75rem; font-size: .875rem; opacity: .7; }
.brand-kit__swatch {
    display: flex; flex-direction: column; gap: .15rem; width: 100%;
    text-align: left; padding: 0; background: transparent; color: inherit;
    border: 1px solid var(--bs-border-color, #dee2e6); border-radius: .75rem;
    overflow: hidden; cursor: pointer; transition: box-shadow .15s ease;
}
.brand-kit__swatch:hover, .brand-kit__swatch:focus-visible { box-shadow: 0 0 0 2px var(--bs-primary, #0d6efd); outline: 0; }
.brand-kit__chip { display: block; height: 84px; }
.brand-kit__swatch-name { font-weight: 600; padding: .5rem .75rem 0; }
.brand-kit__swatch-hex { font-family: ui-monospace, monospace; padding: 0 .75rem; font-size: .9rem; }
.brand-kit__swatch-rgb { padding: 0 .75rem .6rem; font-size: .8rem; opacity: .65; }
.brand-kit__swatch.is-copied .brand-kit__swatch-hex { color: var(--bs-success, #198754); }
.brand-kit__font {
    display: flex; flex-direction: column; gap: .25rem; height: 100%;
    padding: 1.25rem; border: 1px solid var(--bs-border-color, #dee2e6); border-radius: .75rem;
}
.brand-kit__font-role { font-size: .8rem; text-transform: uppercase; letter-spacing: .05em; opacity: .65; }
.brand-kit__font-name { font-weight: 600; }
.brand-kit__font-aa { font-size: 3.5rem; line-height: 1.1; margin: .25rem 0; }
.brand-kit__font-sample { font-size: .95rem; word-break: break-word; opacity: .85; }
.brand-kit__rules { padding: 1rem 1.25rem; border-radius: .75rem; height: 100%; border: 1px solid var(--bs-border-color, #dee2e6); }
.brand-kit__rules ul { margin-top: .5rem; }
.brand-kit__rules li { margin-bottom: .35rem; }
.brand-kit__rules--do i { color: var(--bs-success, #198754); }
.brand-kit__rules--dont i { color: var(--bs-danger, #dc3545); }
