.app-brandkit-page, .app-brandkit-page .app-main { background: #fff; }
html[data-theme='dark'] .app-brandkit-page, html[data-theme='dark'] .app-brandkit-page .app-main { background: #000; }
.brandkit-page {
  --brandkit-bg: #fff;
  --brandkit-ink: #171719;
  --brandkit-muted: #64646c;
  --brandkit-soft: #f7f7f8;
  --brandkit-line: #e5e5e8;
  --brandkit-mono: 'JetBrains Mono', 'SF Mono', Monaco, Consolas, monospace;
  width: 100%; max-width: 1184px; min-width: 0; margin: 0 auto; padding: 28px 32px 48px;
  background: var(--brandkit-bg); color: var(--brandkit-ink);
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
}
html[data-theme='dark'] .brandkit-page {
  --brandkit-bg: #000; --brandkit-ink: #f4f4f5; --brandkit-muted: #a3a3ad;
  --brandkit-soft: #111113; --brandkit-line: #29292e; color-scheme: dark;
}
.brandkit-page, .brandkit-page *, .brandkit-page *::before, .brandkit-page *::after { box-sizing: border-box; }
.brandkit-page :is(h1, h2, h3, p, a) { overflow-wrap: anywhere; }
.brandkit-page :is(h1, h2, h3) { margin: 0; color: var(--brandkit-ink); font-weight: 550; text-wrap: balance; }
.brandkit-page h1 { max-width: 600px; font-size: clamp(42px, 5vw, 66px); line-height: 1.07; letter-spacing: -.055em; }
.brandkit-page h2 { font-size: 29px; line-height: 1.2; letter-spacing: -.04em; }
.brandkit-page h3 { font-size: 16px; line-height: 1.4; letter-spacing: -.02em; }
.brandkit-page p { margin: 0; color: var(--brandkit-muted); font-size: 13px; line-height: 1.8; }
.brandkit-page a { color: inherit; text-underline-offset: 4px; }
.brandkit-page :is(a, summary):focus-visible { outline: 2px solid var(--brandkit-ink); outline-offset: 4px; }
.brandkit-page svg { flex-shrink: 0; stroke-width: 1.6; }
.brandkit-page .brandkit-eyebrow { margin: 0 0 16px; font: 10px/1.7 var(--brandkit-mono); letter-spacing: .075em; text-transform: uppercase; }
.brandkit-breadcrumb { display: flex; align-items: center; gap: 12px; margin-bottom: 32px; color: var(--brandkit-muted); font-size: 11px; }
.brandkit-breadcrumb a { display: inline-flex; align-items: center; min-height: 30px; text-decoration: none; }
.brandkit-hero { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); align-items: center; gap: 64px; padding: 16px 0 42px; border-bottom: 1px solid var(--brandkit-line); }
.brandkit-page .brandkit-lead { max-width: 475px; margin-top: 22px; font-size: 15px; }
.brandkit-jump-links { display: flex; flex-wrap: wrap; gap: 4px 24px; margin-top: 22px; }
.brandkit-jump-links a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 12px; font-weight: 500; text-decoration: none; }
.brandkit-archive { padding: 28px; border: 1px solid var(--brandkit-line); border-radius: 14px; background: var(--brandkit-soft); }
.brandkit-archive > svg { margin-bottom: 20px; }
.brandkit-archive h2 { max-width: 270px; margin-bottom: 12px; font-size: 25px; }
.brandkit-page .brandkit-button {
  display: inline-flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px;
  min-height: 48px; padding: 13px 18px; border: 1px solid var(--brandkit-ink); border-radius: 7px;
  background: var(--brandkit-ink); color: var(--brandkit-bg); text-decoration: none; font-size: 12px; font-weight: 550;
}
.brandkit-button > span { font-size: 10px; font-weight: 400; opacity: .8; white-space: nowrap; }
.brandkit-archive .brandkit-button { width: 100%; margin-top: 24px; }
.brandkit-page .brandkit-archive-note { margin-top: 11px; font-size: 10px; text-align: center; }
.brandkit-section { padding-top: 44px; scroll-margin-top: calc(var(--app-main-padding-top, 80px) + 24px); }
.brandkit-section-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 22px; }
.brandkit-section-heading .brandkit-eyebrow { margin-bottom: 9px; }
.brandkit-section-heading h2 { margin-bottom: 10px; }
.brandkit-section-count { flex-shrink: 0; margin-bottom: 4px; color: var(--brandkit-muted); font: 10px/1.7 var(--brandkit-mono); }
.brandkit-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.brandkit-card { min-width: 0; overflow: hidden; border: 1px solid var(--brandkit-line); border-radius: 12px; background: var(--brandkit-bg); }
.brandkit-preview { position: relative; display: flex; align-items: center; justify-content: center; height: 212px; padding: 32px 32px 48px; border-bottom: 1px solid var(--brandkit-line); }
.brandkit-preview-light { background: #f5f5f6; color: #68686e; }
.brandkit-preview-dark { background: #151517; color: #b4b4bc; }
.brandkit-preview img { display: block; max-width: 84%; max-height: 100%; width: auto; height: auto; object-fit: contain; }
.brandkit-preview-caption { position: absolute; left: 20px; bottom: 16px; font: 9px/1.5 var(--brandkit-mono); letter-spacing: .04em; text-transform: uppercase; }
.brandkit-card-content { padding: 20px 22px 8px; }
.brandkit-card-content > p { margin-top: 7px; font-size: 11px; }
.brandkit-downloads { margin-top: 18px; }
.brandkit-file { display: flex; align-items: center; gap: 12px; min-height: 46px; padding: 12px 0; border-top: 1px solid var(--brandkit-line); text-decoration: none; }
.brandkit-file-label { flex: 1; min-width: 0; font-size: 12px; font-weight: 500; }
.brandkit-file-size { color: var(--brandkit-muted); font: 10px/1.5 var(--brandkit-mono); white-space: nowrap; }
.brandkit-section-originals .brandkit-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.brandkit-section-originals .brandkit-preview { height: 196px; }
.brandkit-section-originals .brandkit-card-content { padding: 18px 18px 6px; }
.brandkit-extras { margin-top: 44px; padding-block: 24px; border-block: 1px solid var(--brandkit-line); }
.brandkit-extras summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 44px; cursor: pointer; list-style: none; }
.brandkit-extras summary::-webkit-details-marker { display: none; }
.brandkit-extras-title { display: block; font-size: 17px; font-weight: 550; letter-spacing: -.02em; }
.brandkit-extras-description { display: block; margin-top: 6px; color: var(--brandkit-muted); font-size: 12px; line-height: 1.7; }
.brandkit-extras details[open] summary > svg { transform: rotate(90deg); }
.brandkit-extras-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 36px; margin-top: 20px; }
.brandkit-closing { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding-top: 36px; }
.brandkit-closing h2 { font-size: 24px; }
.brandkit-closing p { margin-top: 8px; }
.brandkit-home-link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 20px; font-size: 12px; text-decoration: none; }
@media (hover: hover) {
  .brandkit-page :is(.brandkit-breadcrumb a, .brandkit-jump-links a, .brandkit-home-link):hover { text-decoration: underline; }
  .brandkit-file:hover .brandkit-file-label { text-decoration: underline; text-underline-offset: 4px; }
  .brandkit-page .brandkit-button:hover { opacity: .85; }
}
@media (max-width: 900px) {
  .brandkit-hero { gap: 30px; }
  .brandkit-archive { padding: 24px; }
  .brandkit-section-originals .brandkit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 650px) {
  .brandkit-page { padding: 22px 22px 32px; }
  .brandkit-breadcrumb { margin-bottom: 22px; }
  .brandkit-hero { grid-template-columns: minmax(0, 1fr); gap: 26px; padding: 10px 0 28px; }
  .brandkit-page .brandkit-lead { font-size: 14px; }
  .brandkit-archive h2 { max-width: none; }
  .brandkit-section { padding-top: 32px; }
  .brandkit-section-heading { gap: 14px; }
  .brandkit-section-heading h2 { font-size: 25px; }
  .brandkit-section-count { display: none; }
  .brandkit-grid, .brandkit-section-originals .brandkit-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .brandkit-preview { height: 200px; padding-inline: 24px; }
  .brandkit-extras { margin-top: 32px; }
  .brandkit-extras-list { grid-template-columns: minmax(0, 1fr); }
  .brandkit-closing { align-items: flex-start; flex-direction: column; gap: 20px; padding-top: 28px; }
  .brandkit-closing .brandkit-button { width: 100%; }
}
