.legal-dossier-page .site-header,
.legal-dossier-page .site-footer { background: var(--ink); }

.legal-dossier-page .global-tape-path { opacity: .11; }

.legal-dossier {
  --folder: #9f2b23;
  --folder-dark: #712019;
  --sheet: #f1eadc;
  --sheet-deep: #e2d8c5;
  --type: #211e19;
  --stamp: #8e2720;
  position: relative;
  background: #2b2721;
  color: var(--type);
}

.legal-cover {
  min-height: 690px;
  position: relative;
  display: grid;
  align-content: center;
  padding: clamp(92px,9vw,150px) max(3.2vw,32px) clamp(78px,8vw,130px);
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 18%, rgba(240,216,59,.09), transparent 25%),
    linear-gradient(118deg, #12100d 0 64%, #1b1713 64% 100%);
}

.legal-cover::before {
  content: '';
  position: absolute;
  inset: 0;
  opacity: .24;
  background: repeating-linear-gradient(4deg, transparent 0 9px, rgba(244,237,223,.025) 10px);
  pointer-events: none;
}

.legal-cover__breadcrumbs {
  width: min(100%,1450px);
  position: absolute;
  z-index: 3;
  top: 34px;
  inset-inline: max(3.2vw,32px);
  display: flex;
  align-items: center;
  gap: 10px;
  color: #9f978a;
  font: 11px var(--font-mono),monospace;
  text-transform: uppercase;
}

.legal-cover__breadcrumbs a { text-underline-offset: .32em; }
.legal-cover__breadcrumbs a:hover { color: var(--signal); }
.legal-cover__breadcrumbs b { color: #d2cabc; font-weight: 400; }

.legal-folder {
  width: min(100%,1450px);
  min-height: 445px;
  position: relative;
  z-index: 2;
  justify-self: center;
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(250px,.48fr);
  align-items: end;
  gap: clamp(48px,8vw,150px);
  padding: clamp(62px,6vw,96px) clamp(38px,6vw,92px) clamp(48px,5vw,74px);
  background: var(--folder);
  box-shadow: 0 32px 76px rgba(0,0,0,.42), 0 3px 0 rgba(255,255,255,.1) inset;
  transform: rotate(-.7deg);
}

.legal-folder::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 12px -13px -16px 16px;
  background: #67201a;
  box-shadow: 0 18px 38px rgba(0,0,0,.28);
  transform: rotate(1.45deg);
}

.legal-folder::after {
  content: '';
  position: absolute;
  inset: 0;
  opacity: .17;
  background:
    repeating-linear-gradient(0deg, rgba(255,255,255,.08) 0 1px, transparent 1px 5px),
    linear-gradient(105deg, rgba(255,255,255,.14), transparent 22% 77%, rgba(47,10,7,.2));
  mix-blend-mode: soft-light;
  pointer-events: none;
}

.legal-folder__tab {
  position: absolute;
  inset-inline-start: 0;
  top: -41px;
  min-width: 230px;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  padding: 10px 25px;
  background: var(--folder);
  color: #ead8c2;
  font: 11px var(--font-mono),monospace;
  letter-spacing: .06em;
  text-transform: uppercase;
  clip-path: polygon(0 0,86% 0,100% 100%,0 100%);
}

.legal-folder__heading { position: relative; z-index: 2; }
.legal-folder__heading > p {
  margin: 0 0 28px;
  color: #f0d8c1;
  font: 11px var(--font-mono),monospace;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.legal-folder h1 {
  max-width: 19ch;
  margin: 0;
  color: var(--paper-bright);
  font: clamp(3.4rem,4.6vw,4.8rem)/.88 var(--font-display),sans-serif;
  letter-spacing: -.035em;
  text-transform: uppercase;
  text-wrap: balance;
  overflow-wrap: anywhere;
  hyphens: auto;
}

.legal-folder__heading > div {
  max-width: 55ch;
  margin-top: 30px;
  color: #f2ded0;
  font-size: clamp(1rem,1.25vw,1.22rem);
  line-height: 1.5;
  text-wrap: pretty;
}

.legal-folder__meta {
  position: relative;
  z-index: 2;
  margin: 0;
  border-top: 1px solid rgba(244,237,223,.58);
}

.legal-folder__meta > div {
  display: grid;
  grid-template-columns: 78px 1fr;
  gap: 18px;
  padding: 14px 0;
  border-bottom: 1px solid rgba(244,237,223,.42);
}

.legal-folder__meta dt,
.legal-folder__meta dd { margin: 0; }
.legal-folder__meta dt { color: #eccfbb; font: 9px var(--font-mono),monospace; text-transform: uppercase; }
.legal-folder__meta dd { color: var(--paper-bright); font-size: 14px; font-weight: 700; }

.legal-folder__stamp {
  position: absolute;
  z-index: 3;
  inset-inline-end: 29%;
  bottom: 48px;
  padding: 10px 15px 8px;
  border: 3px double rgba(240,216,59,.75);
  color: rgba(240,216,59,.85);
  font: 700 11px/1.25 var(--font-mono),monospace;
  text-align: center;
  text-transform: uppercase;
  transform: rotate(-8deg);
}

.legal-folder__clip {
  width: 30px;
  height: 112px;
  position: absolute;
  z-index: 4;
  top: -24px;
  inset-inline-end: 11%;
  border: 4px solid #85847f;
  border-bottom: 0;
  border-radius: 16px 16px 0 0;
  box-shadow: 2px 3px 4px rgba(0,0,0,.24), 1px 0 rgba(255,255,255,.7) inset;
  transform: rotate(7deg);
}

.legal-folder__clip::before {
  content: '';
  position: absolute;
  inset: 9px 5px -8px;
  border: 3px solid #b9b8b1;
  border-bottom: 0;
  border-radius: 10px 10px 0 0;
}

.legal-progress {
  height: 5px;
  position: sticky;
  z-index: 20;
  top: 0;
  overflow: hidden;
  background: #171511;
}

.legal-progress i {
  width: 100%;
  height: 100%;
  display: block;
  background: var(--signal);
  transform: scaleX(0);
  transform-origin: left center;
}

.privacy-layout {
  position: relative;
  display: grid;
  grid-template-columns: minmax(220px,285px) minmax(0,820px);
  justify-content: center;
  align-items: start;
  gap: clamp(54px,7vw,118px);
  padding: clamp(90px,9vw,150px) max(5vw,42px) clamp(110px,11vw,190px);
  background: var(--sheet-deep);
}

.privacy-layout::before {
  content: '';
  position: absolute;
  inset: 0;
  opacity: .35;
  background:
    linear-gradient(90deg, rgba(69,54,36,.05), transparent 14% 86%, rgba(69,54,36,.05)),
    repeating-linear-gradient(0deg, transparent 0 7px, rgba(93,69,42,.018) 8px);
  pointer-events: none;
}

.privacy-nav {
  position: sticky;
  z-index: 3;
  top: 44px;
  display: grid;
  gap: 0;
  padding: 18px 0 10px;
  color: var(--type);
  font-size: 14px;
}

.privacy-nav::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0 -24px -10px;
  background: rgba(241,234,220,.66);
  transform: rotate(.6deg);
  box-shadow: 0 14px 32px rgba(70,51,32,.08);
}

.privacy-nav b {
  padding: 0 14px 18px;
  border-bottom: 3px solid var(--type);
  font: 1.15rem var(--font-display),sans-serif;
  text-transform: uppercase;
}

.privacy-nav a {
  min-height: 46px;
  display: flex;
  align-items: center;
  padding: 9px 14px;
  border-bottom: 1px solid rgba(33,30,25,.22);
  color: #5d5548;
  text-decoration: none;
  transition: background-color 150ms ease, color 150ms ease;
}

.privacy-nav a.is-current,
.privacy-nav a[aria-current='location'] {
  background: var(--type);
  color: var(--signal);
}

.privacy-body {
  min-width: 0;
  position: relative;
  z-index: 2;
}

.privacy-meta {
  display: inline-block;
  margin: 0 0 24px 26px;
  padding: 9px 12px;
  background: var(--type);
  color: var(--signal);
  font: 10px var(--font-mono),monospace;
  text-transform: uppercase;
  transform: rotate(-1deg);
}

.privacy-note {
  position: relative;
  margin: 0 0 46px;
  padding: clamp(30px,4vw,48px) clamp(30px,5vw,58px);
  background: #d8cbae;
  color: #332d25;
  font-size: clamp(1.08rem,1.35vw,1.28rem);
  font-weight: 700;
  line-height: 1.55;
  text-wrap: pretty;
  box-shadow: 0 16px 40px rgba(70,51,32,.13);
  transform: rotate(.35deg);
}

.privacy-note::after {
  content: 'КРАТКО';
  position: absolute;
  top: 14px;
  inset-inline-end: 18px;
  color: rgba(142,39,32,.72);
  font: 10px var(--font-mono),monospace;
  letter-spacing: .08em;
}

.privacy-body section {
  position: relative;
  scroll-margin-top: 70px;
  margin: 0 0 38px;
  padding: clamp(42px,5.5vw,74px) clamp(34px,6vw,80px) clamp(48px,6vw,82px);
  background: var(--sheet);
  box-shadow: 0 18px 46px rgba(70,51,32,.14), 0 1px 0 rgba(255,255,255,.72) inset;
}

.privacy-body section:nth-of-type(odd) { transform: rotate(-.12deg); }
.privacy-body section:nth-of-type(even) { transform: rotate(.12deg); }

.privacy-body section::before {
  content: '';
  position: absolute;
  top: 38px;
  bottom: 38px;
  inset-inline-start: 14px;
  width: 10px;
  opacity: .48;
  background: radial-gradient(circle, #a79d8c 0 3px, transparent 3.5px) center top / 10px 62px repeat-y;
}

.privacy-body section::after {
  content: '';
  width: 84px;
  height: 26px;
  position: absolute;
  top: -7px;
  inset-inline-end: 42px;
  background: rgba(169,45,37,.2);
  transform: rotate(2.5deg);
}

.privacy-body h2 {
  max-width: 17ch;
  margin: 0 0 38px;
  padding-bottom: 20px;
  border-bottom: 3px solid var(--type);
  font: clamp(2rem,3.5vw,3.25rem)/1 var(--font-display),sans-serif;
  letter-spacing: -.025em;
  text-transform: uppercase;
  text-wrap: balance;
}

.privacy-body h3 {
  margin: 34px 0 10px;
  color: var(--stamp);
  font: 1.12rem/1.3 var(--font-display),sans-serif;
  text-transform: uppercase;
}

.privacy-body p,
.privacy-body li {
  max-width: 70ch;
  font-size: 1.08rem;
  line-height: 1.68;
}

.privacy-body p { margin: 0 0 22px; text-wrap: pretty; }
.privacy-body p:last-child { margin-bottom: 0; }
.privacy-body ul { margin: 22px 0 0; padding: 0; list-style: none; }
.privacy-body li { position: relative; padding-inline-start: 31px; }
.privacy-body li + li { margin-top: 13px; }
.privacy-body li::before {
  content: '';
  width: 9px;
  height: 9px;
  position: absolute;
  top: .72em;
  inset-inline-start: 2px;
  background: var(--stamp);
  transform: rotate(45deg);
}

.privacy-body a {
  color: #7c211b;
  font-weight: 700;
  text-decoration-color: rgba(124,33,27,.52);
  text-decoration-thickness: from-font;
  text-underline-offset: .22em;
}

.privacy-body a:hover { color: #b92e25; text-decoration-color: currentColor; }
.privacy-body code {
  display: inline-block;
  padding: 3px 6px;
  background: #ded3bf;
  color: #6f1f1a;
  font: .86em var(--font-mono),monospace;
  overflow-wrap: break-word;
}

@media (hover: hover) {
  .privacy-nav a:hover { background: rgba(33,30,25,.08); color: var(--stamp); }
  .privacy-nav a.is-current:hover,
  .privacy-nav a[aria-current='location']:hover { background: var(--type); color: var(--signal); }
}

@media (max-width: 960px) {
  .legal-folder { grid-template-columns: 1fr; gap: 46px; }
  .legal-folder__meta { max-width: 560px; }
  .legal-folder__stamp { inset-inline-end: 9%; bottom: 64px; }
  .privacy-layout { grid-template-columns: minmax(190px,230px) minmax(0,740px); gap: 50px; }
  .privacy-body section { padding-inline: clamp(34px,5vw,60px); }
}

@media (max-width: 720px) {
  .legal-cover { min-height: 0; padding: 100px 20px 72px; }
  .legal-cover__breadcrumbs { top: 24px; inset-inline: 20px; }
  .legal-folder {
    min-height: 0;
    gap: 38px;
    padding: 58px 24px 42px;
    transform: rotate(-.35deg);
  }
  .legal-folder::before { inset: 9px -7px -11px 8px; }
  .legal-folder__tab { top: -37px; min-width: 190px; min-height: 38px; padding-inline: 18px; }
  .legal-folder__clip { width: 25px; height: 86px; top: -19px; inset-inline-end: 12%; border-width: 3px; }
  .legal-folder h1 { max-width: 100%; font-size: clamp(2.75rem,12vw,4.2rem); }
  .legal-folder__heading > p { margin-bottom: 20px; }
  .legal-folder__heading > div { margin-top: 24px; }
  .legal-folder__meta > div { grid-template-columns: 70px 1fr; }
  .legal-folder__stamp { display: none; }
  .legal-progress { top: 0; }

  .privacy-layout {
    display: block;
    padding: 0 0 90px;
    background: var(--sheet-deep);
  }

  .privacy-nav {
    position: sticky;
    z-index: 18;
    top: 5px;
    display: flex;
    align-items: stretch;
    gap: 0;
    padding: 0 20px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
    background: #d8cdb9;
    box-shadow: 0 10px 24px rgba(70,51,32,.14);
  }

  .privacy-nav::before { display: none; }
  .privacy-nav b,
  .privacy-nav a { flex: 0 0 auto; white-space: nowrap; }
  .privacy-nav b { min-height: 52px; display: flex; align-items: center; padding: 0 16px 0 0; border: 0; font-size: .92rem; }
  .privacy-nav a { min-height: 52px; padding: 0 14px; border: 0; border-inline-start: 1px solid rgba(33,30,25,.16); font-size: 13px; }
  .privacy-body { padding-top: 42px; }
  .privacy-meta { margin-inline: 20px 0; }
  .privacy-note { margin: 0 20px 34px; padding: 30px 24px; transform: none; }
  .privacy-body section {
    scroll-margin-top: 138px;
    margin: 0 14px 24px;
    padding: 38px 26px 46px 34px;
    transform: none !important;
    box-shadow: 0 14px 32px rgba(70,51,32,.12);
  }
  .privacy-body section::before { inset-inline-start: 10px; }
  .privacy-body section::after { width: 64px; height: 21px; inset-inline-end: 24px; }
  .privacy-body h2 { margin-bottom: 28px; padding-bottom: 16px; font-size: clamp(1.8rem,8.6vw,2.65rem); }
  .privacy-body h3 { margin-top: 28px; }
  .privacy-body p,
  .privacy-body li { font-size: 1rem; line-height: 1.62; }

}

@media (prefers-reduced-motion: reduce) {
  .privacy-nav a { transition-duration: 1ms; }
  html { scroll-behavior: auto; }
}

@media (forced-colors: active) {
  .legal-folder,
  .privacy-note,
  .privacy-body section { border: 1px solid CanvasText; }
  .legal-folder__clip,
  .privacy-body section::before,
  .privacy-body section::after { display: none; }
}
