/* RandGoRus unified public brand layer v1
   Scope: public/about/legal/VK service pages only. */
:root{
  --rg-brand-bg:#050505;
  --rg-brand-bg-soft:#090806;
  --rg-brand-panel:#0d0c0a;
  --rg-brand-panel-2:#11100d;
  --rg-brand-gold-light:#fff0ce;
  --rg-brand-gold:#f2d6a2;
  --rg-brand-gold-deep:#c99f51;
  --rg-brand-line:rgba(201,159,81,.26);
  --rg-brand-line-soft:rgba(201,159,81,.14);
  --rg-brand-text:#f6f1e8;
  --rg-brand-muted:#aaa399;
  --rg-brand-dim:#7f786f;
  --rg-brand-gradient:linear-gradient(180deg,#fff0ce 0%,#f2d6a2 48%,#c99f51 100%);
}

body.rg-public-page,
body.rg-vk-page{
  background:var(--rg-brand-bg)!important;
  color:var(--rg-brand-text)!important;
  font-family:"Segoe UI",Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif!important;
  -webkit-font-smoothing:antialiased!important;
  text-rendering:optimizeLegibility!important;
}

body.rg-public-page::before,
body.rg-public-page::after,
body.rg-vk-page::before,
body.rg-vk-page::after{
  content:none!important;
  display:none!important;
  background:none!important;
}

/* Public header — same visual language everywhere */
body.rg-public-page .rg-public-header{
  height:78px!important;
  background:rgba(5,5,5,.985)!important;
  border-bottom:1px solid var(--rg-brand-line)!important;
  box-shadow:none!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
body.rg-public-page .rg-public-header::before{
  content:none!important;
  display:none!important;
}
body.rg-public-page .rg-public-header::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:-1px!important;
  width:min(760px,72vw)!important;
  height:1px!important;
  transform:translateX(-50%)!important;
  background:linear-gradient(90deg,transparent,rgba(201,159,81,.18),rgba(242,214,162,.54),rgba(201,159,81,.18),transparent)!important;
  pointer-events:none!important;
}
body.rg-public-page .rg-public-header-inner{
  width:min(1240px,calc(100% - 48px))!important;
  height:78px!important;
  margin:0 auto!important;
  gap:28px!important;
}
body.rg-public-page .rg-public-brand{
  margin-right:auto!important;
  text-decoration:none!important;
}
body.rg-public-page .rg-public-brand img{
  display:block!important;
  width:clamp(158px,17vw,210px)!important;
  height:auto!important;
  max-height:56px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 0 7px rgba(242,214,162,.10))!important;
}
body.rg-public-page .rg-public-nav{
  display:flex!important;
  align-items:center!important;
  gap:22px!important;
}
body.rg-public-page .rg-public-nav a{
  color:#b7b0a6!important;
  font-size:13px!important;
  font-weight:650!important;
  text-decoration:none!important;
  letter-spacing:0!important;
}
body.rg-public-page .rg-public-nav a:hover,
body.rg-public-page .rg-public-nav a[aria-current="page"]{
  color:var(--rg-brand-gold)!important;
}
body.rg-public-page .rg-public-max,
body.rg-public-page .btn,
body.rg-vk-page .btn{
  min-height:44px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:0 17px!important;
  border:1px solid rgba(201,159,81,.42)!important;
  border-radius:10px!important;
  background:transparent!important;
  color:var(--rg-brand-gold)!important;
  box-shadow:none!important;
  font-weight:700!important;
  text-decoration:none!important;
  transition:none!important;
}
body.rg-public-page .rg-public-max:hover,
body.rg-public-page .btn:hover,
body.rg-vk-page .btn:hover{
  border-color:rgba(242,214,162,.66)!important;
  background:rgba(201,159,81,.035)!important;
  color:var(--rg-brand-gold-light)!important;
  filter:none!important;
}

/* About page */
body.rg-about-page{
  background:var(--rg-brand-bg)!important;
}
body.rg-about-page main,
body.rg-about-page section,
body.rg-about-page .hero{
  background:transparent!important;
}
body.rg-about-page .eyebrow,
body.rg-about-page .journey-tag,
body.rg-about-page .journey-row .number,
body.rg-about-page .journey-end,
body.rg-about-page .step .num,
body.rg-about-page .price{
  color:var(--rg-brand-gold)!important;
}
body.rg-about-page .hero h1 span,
body.rg-about-page h2 span,
body.rg-about-page .card h3,
body.rg-about-page .business-panel h3{
  background:var(--rg-brand-gradient)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  color:transparent!important;
}
body.rg-about-page .hero .intro,
body.rg-about-page .lead,
body.rg-about-page .card p,
body.rg-about-page .step p,
body.rg-about-page .business p,
body.rg-about-page .business li,
body.rg-about-page .faq p,
body.rg-about-page .free-values p,
body.rg-about-page .note{
  color:var(--rg-brand-muted)!important;
}
body.rg-about-page .journey,
body.rg-about-page .card,
body.rg-about-page .free,
body.rg-about-page .business-panel,
body.rg-about-page .docs a{
  border:1px solid var(--rg-brand-line)!important;
  background:rgba(13,12,10,.72)!important;
  box-shadow:none!important;
}
body.rg-about-page .journey,
body.rg-about-page .free{
  border-radius:18px!important;
}
body.rg-about-page .card,
body.rg-about-page .docs a{
  border-radius:12px!important;
}
body.rg-about-page .business-panel{
  border-left:2px solid var(--rg-brand-gold-deep)!important;
  border-radius:0 12px 12px 0!important;
}
body.rg-about-page .journey-row,
body.rg-about-page .faq details{
  border-color:var(--rg-brand-line-soft)!important;
}
body.rg-about-page .step{
  border-top-color:rgba(201,159,81,.34)!important;
}
body.rg-about-page .docs a{
  color:var(--rg-brand-text)!important;
}
body.rg-about-page .docs a:hover{
  border-color:rgba(242,214,162,.48)!important;
  background:rgba(201,159,81,.035)!important;
}
body.rg-about-page .docs small,
body.rg-about-page .footer,
body.rg-about-page .footer a{
  color:var(--rg-brand-dim)!important;
}

/* Legal/document pages */
body.rg-legal-page{
  min-height:100vh!important;
  background:var(--rg-brand-bg)!important;
  font-size:17px!important;
  line-height:1.82!important;
}
body.rg-legal-page>.wrap{
  width:min(1120px,calc(100% - 48px))!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:56px 0 82px!important;
}
body.rg-legal-page .wrap>.brand{
  display:none!important;
}
body.rg-legal-page .wrap>.card{
  position:relative!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.rg-legal-page .wrap>.card::before{
  content:"RANDGORUS · ДОКУМЕНТЫ"!important;
  display:block!important;
  position:static!important;
  inset:auto!important;
  width:auto!important;
  height:auto!important;
  margin:0 0 18px!important;
  background:none!important;
  opacity:1!important;
  transform:none!important;
  pointer-events:none!important;
  color:var(--rg-brand-gold)!important;
  font-size:10px!important;
  line-height:1.4!important;
  font-weight:800!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  z-index:auto!important;
}
body.rg-legal-page .wrap>.card::after{
  content:none!important;
  display:none!important;
}
body.rg-legal-page .card h1{
  max-width:930px!important;
  margin:0 0 12px!important;
  background:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  -webkit-text-fill-color:#f2d6a2!important;
  color:#f2d6a2!important;
  font-size:clamp(34px,4.2vw,52px)!important;
  line-height:1.12!important;
  letter-spacing:-.03em!important;
  font-weight:700!important;
  text-shadow:
    0 -1px 0 rgba(255,240,206,.78),
    0 1px 0 rgba(201,159,81,.72),
    0 0 10px rgba(242,214,162,.06)!important;
}
body.rg-legal-page .card .meta{
  margin:0 0 34px!important;
  color:var(--rg-brand-muted)!important;
  font-size:13px!important;
  line-height:1.55!important;
}
body.rg-legal-page .card>p:first-of-type{
  max-width:860px!important;
  margin:0 0 28px!important;
  color:var(--rg-brand-muted)!important;
  font-size:17px!important;
}
body.rg-legal-page .card h2{
  position:relative!important;
  margin:42px 0 15px!important;
  padding-top:20px!important;
  color:var(--rg-brand-gold)!important;
  font-size:21px!important;
  line-height:1.36!important;
  font-weight:700!important;
}
body.rg-legal-page .card h2::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  width:54px!important;
  height:1px!important;
  background:linear-gradient(90deg,var(--rg-brand-gold-deep),transparent)!important;
}
body.rg-legal-page .card p,
body.rg-legal-page .card li{
  color:#d4cec4!important;
  font-size:17px!important;
  line-height:1.86!important;
  overflow-wrap:anywhere!important;
}
body.rg-legal-page .card ul,
body.rg-legal-page .card ol{
  padding-left:24px!important;
}
body.rg-legal-page .card li+li{
  margin-top:8px!important;
}
body.rg-legal-page .card b,
body.rg-legal-page .card strong{
  color:#f4eee4!important;
}
body.rg-legal-page .card a{
  color:var(--rg-brand-gold)!important;
  text-decoration-color:rgba(242,214,162,.36)!important;
  text-underline-offset:4px!important;
}
body.rg-legal-page .card .note{
  margin:28px 0!important;
  padding:18px 20px!important;
  border:1px solid var(--rg-brand-line)!important;
  border-left:2px solid var(--rg-brand-gold-deep)!important;
  border-radius:10px!important;
  background:rgba(17,16,13,.76)!important;
  color:#d7d0c6!important;
  box-shadow:none!important;
}
body.rg-legal-page .doclinks{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  margin-top:26px!important;
}
body.rg-legal-page .doclinks a{
  position:relative!important;
  min-height:112px!important;
  padding:19px 44px 19px 20px!important;
  border:1px solid var(--rg-brand-line)!important;
  border-radius:11px!important;
  background:rgba(13,12,10,.72)!important;
  color:inherit!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
body.rg-legal-page .doclinks a::after{
  content:"›"!important;
  position:absolute!important;
  right:18px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  color:var(--rg-brand-gold-deep)!important;
  font-size:24px!important;
}
body.rg-legal-page .doclinks a:hover{
  border-color:rgba(242,214,162,.46)!important;
  background:rgba(201,159,81,.035)!important;
}
body.rg-legal-page .doclinks a b{
  display:block!important;
  color:var(--rg-brand-gold)!important;
  font-size:16px!important;
  line-height:1.35!important;
}
body.rg-legal-page .doclinks a small{
  display:block!important;
  margin-top:7px!important;
  color:var(--rg-brand-muted)!important;
  font-size:13px!important;
  line-height:1.55!important;
}
body.rg-legal-page .card footer{
  margin-top:44px!important;
  padding-top:18px!important;
  border-top:1px solid var(--rg-brand-line-soft)!important;
  color:var(--rg-brand-dim)!important;
  font-size:12px!important;
}

/* VK service/connect pages */
body.rg-vk-page{
  min-height:100vh!important;
  display:grid!important;
  place-items:center!important;
  padding:24px!important;
}
body.rg-vk-page .card{
  width:min(100%,620px)!important;
  padding:32px!important;
  border:1px solid var(--rg-brand-line)!important;
  border-radius:18px!important;
  background:rgba(13,12,10,.88)!important;
  box-shadow:0 26px 80px rgba(0,0,0,.52)!important;
}
body.rg-vk-page .brand{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin-bottom:26px!important;
}
body.rg-vk-page .brand img{
  width:190px!important;
  max-width:55vw!important;
  height:auto!important;
  display:block!important;
}
body.rg-vk-page .brand-context{
  color:var(--rg-brand-dim)!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
body.rg-vk-page .icon{
  width:52px!important;
  height:52px!important;
  display:grid!important;
  place-items:center!important;
  margin:0 0 18px!important;
  border:1px solid var(--rg-brand-line)!important;
  border-radius:14px!important;
  background:transparent!important;
  color:var(--rg-brand-gold)!important;
  font-size:23px!important;
}
body.rg-vk-page h1{
  margin:0 0 10px!important;
  background:var(--rg-brand-gradient)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  color:transparent!important;
  font-size:28px!important;
  line-height:1.16!important;
}
body.rg-vk-page .lead{
  margin:0!important;
  color:var(--rg-brand-muted)!important;
}
body.rg-vk-page .status,
body.rg-vk-page .steps{
  margin-top:18px!important;
  padding:16px 17px!important;
  border:1px solid var(--rg-brand-line)!important;
  border-radius:11px!important;
  background:rgba(5,5,5,.52)!important;
  color:#d8d1c7!important;
  box-shadow:none!important;
}
body.rg-vk-page .steps{
  display:grid!important;
  gap:7px!important;
  color:var(--rg-brand-muted)!important;
  font-size:14px!important;
}
body.rg-vk-page .steps b{
  color:var(--rg-brand-gold)!important;
}
body.rg-vk-page .actions{
  display:flex!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  margin-top:22px!important;
}
body.rg-vk-page .btn.primary{
  background:transparent!important;
  color:var(--rg-brand-gold)!important;
  border-color:rgba(242,214,162,.58)!important;
}
body.rg-vk-page .foot{
  margin-top:18px!important;
  color:var(--rg-brand-dim)!important;
  font-size:12px!important;
}

body.rg-public-page a:focus-visible,
body.rg-public-page button:focus-visible,
body.rg-vk-page a:focus-visible,
body.rg-vk-page button:focus-visible{
  outline:2px solid var(--rg-brand-gold-deep)!important;
  outline-offset:4px!important;
}

@media(max-width:760px){
  body.rg-public-page .rg-public-header{
    height:auto!important;
    min-height:68px!important;
  }
  body.rg-public-page .rg-public-header-inner{
    width:calc(100% - 28px)!important;
    min-height:68px!important;
    height:auto!important;
    flex-wrap:wrap!important;
    padding:10px 0!important;
    gap:8px 14px!important;
  }
  body.rg-public-page .rg-public-brand img{
    width:154px!important;
  }
  body.rg-public-page .rg-public-nav{
    width:100%!important;
    overflow-x:auto!important;
    gap:18px!important;
    padding:3px 0 2px!important;
    scrollbar-width:none!important;
  }
  body.rg-public-page .rg-public-nav::-webkit-scrollbar{
    display:none!important;
  }
  body.rg-public-page .rg-public-nav a{
    white-space:nowrap!important;
    font-size:12px!important;
  }
  body.rg-public-page .rg-public-max{
    min-height:38px!important;
    padding:0 12px!important;
  }
  body.rg-legal-page>.wrap{
    width:calc(100% - 28px)!important;
    padding:34px 0 56px!important;
  }
  body.rg-legal-page .card h1{
    font-size:30px!important;
  }
  body.rg-legal-page .card h2{
    margin-top:34px!important;
    font-size:20px!important;
  }
  body.rg-legal-page .card p,
  body.rg-legal-page .card li{
    font-size:16px!important;
    line-height:1.78!important;
  }
  body.rg-legal-page .doclinks{
    grid-template-columns:1fr!important;
  }
  body.rg-legal-page .doclinks a{
    min-height:0!important;
  }
  body.rg-vk-page{
    padding:14px!important;
  }
  body.rg-vk-page .card{
    padding:24px 19px!important;
    border-radius:15px!important;
  }
  body.rg-vk-page .brand{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  body.rg-vk-page h1{
    font-size:24px!important;
  }
  body.rg-vk-page .actions{
    display:grid!important;
  }
  body.rg-vk-page .btn{
    width:100%!important;
  }
}
