.legal-document-page { background:#fff; color:#111; }
.legal-shell { width:min(1320px,calc(100% - 40px)); margin-inline:auto; }
.legal-hero { margin:116px 20px 0; padding:90px 0 82px; border-radius:20px; color:#fff; background:#0d0d0d; }
.legal-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 65px; padding:0; list-style:none; color:#aaa; font-size:14px; }
.legal-breadcrumb a { color:#fff; }
.legal-eyebrow { margin:0 0 18px; text-transform:uppercase; letter-spacing:.12em; font-size:13px; font-weight:700; }
.legal-hero h1 { max-width:1000px; margin:0; color:#fff; font-size:clamp(44px,7vw,92px); line-height:.98; letter-spacing:-.05em; }
.legal-summary { max-width:760px; margin:32px 0 0; color:#cfcfcf; font-size:20px; line-height:1.65; }
.legal-meta { display:flex; flex-wrap:wrap; gap:40px 70px; margin:54px 0 0; }
.legal-meta div { min-width:150px; }
.legal-meta dt { color:#888; font-size:12px; text-transform:uppercase; letter-spacing:.1em; }
.legal-meta dd { margin:6px 0 0; color:#fff; font-size:16px; }
.legal-layout { display:grid; grid-template-columns:300px minmax(0,820px); justify-content:space-between; gap:80px; padding-block:120px; }
.legal-sticky { position:sticky; top:125px; }
.legal-sidebar h2 { font-size:24px; }
.legal-toc { max-height:calc(100vh - 260px); overflow:auto; margin:25px 0 30px; padding:0; list-style:none; border-top:1px solid #ddd; }
.legal-toc li { border-bottom:1px solid #ddd; }
.legal-toc a { display:block; padding:12px 4px; color:#555; font-size:14px; line-height:1.35; transition:.2s ease; }
.legal-toc a:hover,.legal-toc a:focus-visible { padding-left:10px; color:#000; }
.legal-print { padding:12px 18px; border:1px solid #111; border-radius:999px; background:#fff; font-weight:600; }
.legal-section { scroll-margin-top:130px; padding:0 0 55px; margin:0 0 55px; border-bottom:1px solid #ddd; }
.legal-section:last-child { margin-bottom:0; }
.legal-section h2 { margin:0 0 24px; font-size:clamp(28px,3vw,44px); line-height:1.1; letter-spacing:-.035em; }
.legal-section h2 a { color:#111; }
.legal-section p { margin:0 0 18px; color:#4b4b4b; font-size:18px; line-height:1.8; }
.legal-documents { padding:110px 0; background:#f5f5f5; }
.legal-documents h2 { margin:0 0 50px; font-size:clamp(42px,6vw,72px); }
.legal-documents ul { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; padding:0; list-style:none; }
.legal-documents a { display:flex; justify-content:space-between; gap:20px; min-height:68px; padding:20px 24px; border:1px solid #d7d7d7; border-radius:12px; color:#111; background:#fff; font-weight:600; }
.legal-documents a:hover,.legal-documents a:focus-visible { border-color:#111; }
.legal-documents a.is-current { color:#fff; border-color:#111; background:#111; }
.cookie-control { padding:120px 0; }
.cookie-control-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:70px; align-items:start; }
.cookie-panel { padding:42px; border-radius:20px; background:#f5f5f5; }
.cookie-category { display:flex; justify-content:space-between; gap:30px; padding:24px 0; border-bottom:1px solid #d4d4d4; }
.cookie-category h3 { margin:0 0 6px; font-size:21px; }
.cookie-category p { margin:0; color:#666; }
.cookie-state { margin:25px 0; padding:16px; border-radius:10px; background:#fff; font-size:14px; }
.cookie-actions { display:flex; flex-wrap:wrap; gap:10px; }
.cookie-actions button { padding:14px 18px; border:1px solid #111; border-radius:999px; background:#fff; font-weight:700; }
.cookie-actions button.primary { color:#fff; background:#111; }
@media(max-width:991px){.legal-layout,.cookie-control-grid{grid-template-columns:1fr}.legal-sticky{position:static}.legal-toc{max-height:none}.legal-sidebar{padding-bottom:25px;border-bottom:1px solid #ddd}.legal-documents ul{grid-template-columns:1fr}}
@media(max-width:575px){.legal-shell{width:min(100% - 30px,1320px)}.legal-hero{margin:96px 10px 0;padding:60px 0}.legal-breadcrumb{margin-bottom:45px}.legal-hero h1{font-size:clamp(38px,12vw,48px)}.legal-summary{font-size:17px}.legal-meta{gap:25px}.legal-layout{padding-block:75px;gap:50px}.legal-section{padding-bottom:35px;margin-bottom:40px}.legal-section p{font-size:16px}.legal-documents{padding:75px 0}.cookie-panel{padding:25px 20px}.cookie-category{gap:15px}}
@media print{header,footer,.legal-sidebar,.legal-documents,.legal-breadcrumb{display:none!important}.legal-hero{margin:0;padding:0;color:#111;background:#fff}.legal-hero h1,.legal-meta dd{color:#111}.legal-summary{color:#333}.legal-layout{display:block;width:100%;padding:35px 0}.legal-section{break-inside:avoid}.legal-section p{font-size:11pt}}
.legal-hash {
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.62);
  font-size: 13px;
}

.legal-hash code {
  color: #fff;
}

.legal-inventory,
.legal-request {
  padding-top: 90px;
  padding-bottom: 90px;
}

.legal-table-wrap {
  margin-top: 32px;
  overflow-x: auto;
  border: 1px solid #d8d8d8;
  border-radius: 18px;
  background: #fff;
}

.legal-table-wrap table {
  width: 100%;
  min-width: 920px;
  border-collapse: collapse;
}

.legal-table-wrap th,
.legal-table-wrap td {
  padding: 18px;
  border-bottom: 1px solid #e6e6e6;
  text-align: left;
  vertical-align: top;
}

.legal-request {
  max-width: 900px;
}

.legal-request form {
  display: grid;
  gap: 22px;
  margin-top: 32px;
  padding: 32px;
  border-radius: 20px;
  background: #f5f5f5;
}

.legal-request form > div {
  display: grid;
  gap: 9px;
}

.legal-request input,
.legal-request select,
.legal-request textarea {
  width: 100%;
  padding: 14px 16px;
  border: 1px solid #cfcfcf;
  border-radius: 10px;
  background: #fff;
}

.legal-request button {
  min-height: 52px;
  padding: 0 24px;
  border: 0;
  border-radius: 10px;
  background: #0d0d0d;
  color: #fff;
  font-weight: 700;
}

.legal-success {
  padding: 16px 18px;
  border-radius: 10px;
  background: #e9f8ed;
  color: #155b2a;
}
