:root{
  --ig-purple:#8F4AA9;
  --ink:#222;
  --muted:#666;
  --line:#d9d9d9;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{
  margin:0;
  min-height:100%;
  background:#fff !important;
  color:var(--ink);
  font-family:"Calibri Light",Calibri,"Segoe UI",system-ui,Roboto,Arial,sans-serif;
}
body{
  overflow-x:hidden;
  line-height:1.66;
}

/* Постоянная рамка — как на главной */
.corner{
  position:fixed;
  width:12.5vh !important;
  height:12.5vh !important;
  z-index:20;
  pointer-events:auto;
}
#corner-inst{top:0 !important;left:0 !important}
#corner-etsy{right:0 !important;bottom:0 !important}
.corner-link{
  position:fixed;
  width:12.5vh;
  height:12.5vh;
  top:0;
  left:0;
  z-index:21;
  display:block;
}
.brand{
  position:fixed;
  left:calc(12.5vh + 12.5vh * 0.2);
  top:calc(12.5vh * 0.17);
  font-weight:700;
  font-size:4.25vh;
  line-height:1;
  color:var(--ig-purple);
  z-index:22;
  white-space:nowrap;
}
.brand a{
  text-decoration:none;
  color:inherit;
}
.back-link{
  position:fixed;
  left:4vh;
  bottom:4vh;
  z-index:22;
  font-size:clamp(18px,3vh,28px);
  line-height:1;
  color:#888;
  text-decoration:none;
  white-space:nowrap;
}
.etsy-hotspot{
  position:fixed;
  width:25vh;
  height:25vh;
  right:0;
  bottom:0;
  z-index:21;
  background:transparent;
}

/* Legal content */
.site-shell{
  width:min(920px,calc(100% - 32px));
  margin:16vh auto 12vh;
  padding-bottom:4vh;
}
.topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  background:#fff !important;
  border:1px solid var(--line);
  border-radius:22px;
  padding:18px 20px;
  margin:14px 0;
}
.legal-home{
  color:var(--ink);
  text-decoration:none;
  font-weight:700;
  font-size:18px;
}
.lang-nav{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.lang-nav a{
  color:var(--ink);
  text-decoration:none;
  border:1px solid var(--line);
  background:#fff !important;
  border-radius:999px;
  padding:6px 10px;
  font-size:13px;
  font-weight:650;
}
.lang-nav a[aria-current="page"]{
  border-color:#777;
  font-weight:800;
}
.legal-document,
.index-card{
  background:#fff !important;
  border:1px solid var(--line);
  border-radius:22px;
}
.legal-document{
  padding:clamp(24px,5vw,52px);
  margin:14px 0 36px;
}
.index-card{
  padding:24px;
  margin:14px 0;
}
h1,h2{
  color:var(--ink);
  line-height:1.22;
}
h1{
  font-size:clamp(28px,4.8vw,42px);
  margin:0 0 20px;
}
h2{
  font-size:clamp(20px,3vw,26px);
  margin-top:34px;
}
.index-card h2{margin-top:0}
p,li{font-size:16px}
strong{font-weight:700}
a{color:var(--ink)}
hr{border:0;border-top:1px solid var(--line);margin:28px 0}
.link-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:12px;
}
.doc-link{
  display:block;
  padding:16px;
  border-radius:16px;
  border:1px solid var(--line);
  text-decoration:none;
  color:var(--ink);
  background:#fff !important;
}
.doc-link:hover,
.lang-nav a:hover,
.legal-home:hover{border-color:#999}
.footer{
  color:var(--muted);
  font-size:13px;
  padding:8px 0 24px;
  text-align:center;
}

@media (max-width:560px){
  .site-shell{
    width:min(100% - 20px,920px);
    margin-top:16vh;
    margin-bottom:16vh;
  }
  .topbar,
  .index-card,
  .legal-document{
    border-radius:18px;
  }
  .legal-document{padding:22px 18px}
  .index-card{padding:22px 18px}
  .link-grid{grid-template-columns:1fr}
}
