@font-face{font-family:'Oswald';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/oswald-cyrillic-ext.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;}
@font-face{font-family:'Oswald';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/oswald-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;}
@font-face{font-family:'Oswald';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/oswald-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Oswald';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/oswald-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Noto Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/notosans-cyrillic-ext.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;}
@font-face{font-family:'Noto Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/notosans-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;}
@font-face{font-family:'Noto Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/notosans-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Noto Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/notosans-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}

html[data-family="blueprint"] {
  
  --c-chrome: #b6c6d9;

  
  --c-accent2: #c25a1b;
  --c-accent2-700: #8d3f0e;
  --c-accent2-tint: #f7e3cd;

  
  --shadow-md: 0 2px 0 0 color-mix(in srgb, #16223a 16%, transparent), 0 10px 20px -12px rgba(22, 34, 58, .42), 0 24px 44px -28px rgba(22, 34, 58, .40);
  --shadow-lg: 0 3px 0 0 color-mix(in srgb, #16223a 18%, transparent), 0 30px 58px -30px rgba(22, 34, 58, .48);
  
  --edge: inset 0 0 0 1px color-mix(in srgb, #16223a 14%, transparent), inset 0 1px 0 0 rgba(255, 255, 255, .75);
  --ring: 0 0 0 3px color-mix(in srgb, var(--c-accent) 26%, transparent), 0 0 0 2px var(--c-accent);
}

html[data-family="blueprint"] body {
  background-image: url("/assets/family-blueprint.svg");
  background-repeat: repeat;
  background-position: 0 0;
  background-size: 120px 120px;
}

html[data-family="blueprint"] h1 { letter-spacing: .004em; }
html[data-family="blueprint"] h2 { letter-spacing: .006em; }
html[data-family="blueprint"] h3 { letter-spacing: .012em; }
html[data-family="blueprint"] .logo {
  text-transform: uppercase;
  letter-spacing: .07em;
  font-size: 18px;
  font-weight: 600;
}
html[data-family="blueprint"] .nav__link {
  font-family: var(--f-head);
  text-transform: uppercase;
  letter-spacing: .06em;
  font-size: 14.5px;
  font-weight: 500;
}
html[data-family="blueprint"] .btn {
  font-family: var(--f-head);
  text-transform: uppercase;
  letter-spacing: .06em;
  font-weight: 600;
}
html[data-family="blueprint"] .hero__badge,
html[data-family="blueprint"] .card__tag,
html[data-family="blueprint"] .toc__head { letter-spacing: .1em; }

html[data-family="blueprint"] .crumbs { background: var(--c-chrome); }
html[data-family="blueprint"] .topbar--solid {
  background: var(--c-chrome);
  box-shadow: inset 0 -1px 0 0 color-mix(in srgb, #16223a 16%, transparent);
}
html[data-family="blueprint"] .footer {
  background: var(--c-chrome);
  border-top: 3px double color-mix(in srgb, var(--c-accent) 45%, transparent);
}

html[data-family="blueprint"][data-skeleton="dossier"] .hero {
  background: color-mix(in srgb, var(--c-surface) 78%, var(--c-bg));
  border-bottom: 3px double color-mix(in srgb, var(--c-accent) 55%, transparent);
}
html[data-family="blueprint"][data-skeleton="dossier"] .hero::before {
  background:
    repeating-linear-gradient(to bottom, transparent 0 23px, color-mix(in srgb, var(--c-accent) 10%, transparent) 23px 24px),
    repeating-linear-gradient(to right, transparent 0 23px, color-mix(in srgb, var(--c-accent) 8%, transparent) 23px 24px),
    radial-gradient(620px 400px at 90% -14%, color-mix(in srgb, var(--c-accent) 18%, transparent), transparent 62%),
    radial-gradient(520px 380px at 76% 122%, color-mix(in srgb, var(--c-accent2) 16%, transparent), transparent 64%);
}

@media (max-width: 899px) {
  html[data-family="blueprint"][data-skeleton="dossier"] .hero::before { background: none; }
}

html[data-family="blueprint"][data-skeleton="dossier"] .hero::after { opacity: .2; }

html[data-family="blueprint"] .card,
html[data-family="blueprint"] .dl,
html[data-family="blueprint"] .link-card,
html[data-family="blueprint"] .faq__item,
html[data-family="blueprint"] .toc__list,
html[data-family="blueprint"] .table__scroll,
html[data-family="blueprint"] .scheme__art,
html[data-family="blueprint"] .figure__img {
  background-color: var(--c-surface);
}

html[data-family="blueprint"][data-skeleton="dossier"] .card::after {
  content: "";
  position: absolute;
  inset: 11px;
  pointer-events: none;
  background-image:
    linear-gradient(color-mix(in srgb, var(--c-accent) 40%, transparent), color-mix(in srgb, var(--c-accent) 40%, transparent)),
    linear-gradient(color-mix(in srgb, var(--c-accent) 40%, transparent), color-mix(in srgb, var(--c-accent) 40%, transparent)),
    linear-gradient(color-mix(in srgb, var(--c-accent) 40%, transparent), color-mix(in srgb, var(--c-accent) 40%, transparent)),
    linear-gradient(color-mix(in srgb, var(--c-accent) 40%, transparent), color-mix(in srgb, var(--c-accent) 40%, transparent)),
    linear-gradient(color-mix(in srgb, var(--c-accent) 40%, transparent), color-mix(in srgb, var(--c-accent) 40%, transparent)),
    linear-gradient(color-mix(in srgb, var(--c-accent) 40%, transparent), color-mix(in srgb, var(--c-accent) 40%, transparent));
  background-repeat: no-repeat;
  background-size: 11px 1px, 1px 11px, 11px 1px, 1px 11px, 11px 1px, 1px 11px;
  background-position: right top, right top, left bottom, left bottom, right bottom, right bottom;
}

html[data-family="blueprint"][data-skeleton="dossier"] .card::before {
  background: var(--c-accent2);
  width: 104px;
  height: 6px;
  border-radius: 0 0 2px 0;
}
html[data-family="blueprint"][data-skeleton="dossier"] .link-card::before {
  background: color-mix(in srgb, var(--c-accent) 70%, transparent);
  border-radius: 0 0 2px 0;
}
html[data-family="blueprint"][data-skeleton="dossier"] .card__ic {
  border-radius: 10px 10px 10px 2px;
  background: var(--c-accent-tint);
}

html[data-family="blueprint"][data-skeleton="dossier"] .block__title::before {
  background: var(--c-accent);
  border-color: transparent;
  border-radius: 2px;
  color: var(--c-accent-ink);
  padding: 4px 9px;
  letter-spacing: .07em;
}
html[data-family="blueprint"][data-skeleton="dossier"] .block__title::after {
  background: repeating-linear-gradient(
    to right,
    color-mix(in srgb, var(--c-accent) 55%, transparent) 0 7px,
    transparent 7px 14px
  );
}

html[data-family="blueprint"] .table th {
  border-bottom: 3px double color-mix(in srgb, var(--c-accent) 55%, transparent);
}
html[data-family="blueprint"] .table tbody tr:nth-child(even) td {
  background: color-mix(in srgb, var(--c-accent) 6%, var(--c-surface));
}

html[data-family="blueprint"][data-skeleton="dossier"] .toc__list {
  border-left: 4px solid var(--c-accent2);
  border-radius: 2px 12px 12px 2px;
}

html[data-family="blueprint"][data-skeleton="dossier"] .step__num {
  background: color-mix(in srgb, var(--c-accent) 9%, transparent);
  border-radius: 2px;
}

html[data-family="blueprint"] .btn--primary {
  box-shadow: 0 1px 0 0 color-mix(in srgb, #16223a 22%, transparent), 0 9px 18px -12px color-mix(in srgb, var(--c-accent) 78%, transparent);
}
html[data-family="blueprint"] .btn--primary:hover {
  box-shadow: 0 2px 0 0 color-mix(in srgb, #16223a 24%, transparent), 0 13px 24px -12px color-mix(in srgb, var(--c-accent) 85%, transparent);
}
html[data-family="blueprint"] .btn--ghost {
  border-color: color-mix(in srgb, var(--c-accent) 55%, transparent);
}

html[data-family="blueprint"] .dl__icon { background: var(--c-surface); border-radius: 12px; }
html[data-family="blueprint"] .dl__go { border-radius: var(--r-btn); }
html[data-family="blueprint"] .dl__chip { border-radius: 3px; }

html[data-family="blueprint"] .sale__ic { border-radius: 4px; }

html[data-family="blueprint"] .scheme .s-box { fill: var(--c-surface); stroke: color-mix(in srgb, #16223a 30%, transparent); }
html[data-family="blueprint"] .scheme .s-line { stroke: color-mix(in srgb, #16223a 42%, transparent); }

html[data-family="blueprint"] .scheme .s-t { font-family: var(--f-head); }
html[data-family="blueprint"] .scheme .s-box--accent { fill: var(--c-accent-tint); stroke: var(--c-accent); }
html[data-family="blueprint"] .scheme .s-line--accent { stroke: var(--c-accent); }
html[data-family="blueprint"] .scheme .s-t--head { font-family: var(--f-head); font-weight: 600; }
html[data-family="blueprint"] .scheme .s-t--mut { fill: var(--c-muted); }
html[data-family="blueprint"] .scheme .s-t--accent { fill: var(--c-accent-800); font-weight: 600; }

html[data-family="blueprint"] .washed { filter: saturate(.5) contrast(1.02) brightness(1.03); }

html[data-family="blueprint"] ::selection { background: color-mix(in srgb, var(--c-accent) 26%, transparent); }
