/* RUSENCOM v50 — Management visual rhythm polish. */

/* Section labels should read as real section names, not micro-captions. */
html body .rsc-release-134 .rsc-v11-kicker{
  margin-bottom:17px!important;
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:800!important;
  letter-spacing:.07em!important;
}

/* Internal pages use the same top rhythm as the homepage hero:
   64px main reserve + 112px inner reserve = 176px on desktop. */
html body .rsc-inner-main .rsc-inner-shell:has(.rsc-news-grid),
html body .rsc-article-shell:has(.rsc-legal-page){
  padding-top:112px!important;
}

/* Benefits: stronger hierarchy, technical framing, restrained motion. */
html body .rsc-v26-benefit-grid{
  counter-reset:rsc-benefit!important;
  gap:14px!important;
  margin-top:28px!important;
}
html body .rsc-v26-benefit-card article{
  counter-increment:rsc-benefit!important;
  position:relative!important;
  min-height:118px!important;
  padding:23px 58px 22px 24px!important;
  overflow:hidden!important;
  border:1px solid #2b3d48!important;
  border-radius:15px!important;
  background:
    radial-gradient(circle at 92% 12%,rgba(249,129,30,.09),transparent 30%),
    linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.022))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 16px 36px rgba(0,0,0,.09)!important;
  transition:transform .24s cubic-bezier(.22,1,.36,1),border-color .22s ease,box-shadow .22s ease,background .22s ease!important;
}
html body .rsc-v26-benefit-card article::before{
  content:"0" counter(rsc-benefit)!important;
  position:absolute!important;
  top:18px!important;
  right:20px!important;
  color:rgba(249,129,30,.7)!important;
  font:800 12px/1 "RSC Magistral",Arial,sans-serif!important;
  letter-spacing:.08em!important;
  transition:color .22s ease,transform .24s cubic-bezier(.22,1,.36,1)!important;
}
html body .rsc-v26-benefit-card article::after{
  content:""!important;
  position:absolute!important;
  left:24px!important;
  top:0!important;
  width:48px!important;
  height:3px!important;
  border-radius:0 0 999px 999px!important;
  background:linear-gradient(90deg,#f9811e,#ffb25e)!important;
  box-shadow:0 0 16px rgba(249,129,30,.22)!important;
  transform-origin:left center!important;
  transition:width .24s cubic-bezier(.22,1,.36,1),box-shadow .22s ease!important;
}
html body .rsc-v26-benefit-card strong{
  color:#fff!important;
  font:800 17px/1.2 "RSC Magistral",Arial,sans-serif!important;
  letter-spacing:-.02em!important;
}
html body .rsc-v26-benefit-card span{
  margin-top:8px!important;
  max-width:420px!important;
  color:#aebbc4!important;
  font:400 14px/1.5 "RSC Roboto",Arial,sans-serif!important;
}
@media (hover:hover) and (pointer:fine){
  html body .rsc-v26-benefit-card article:hover{
    transform:translateY(-4px)!important;
    border-color:rgba(249,129,30,.58)!important;
    background:
      radial-gradient(circle at 92% 12%,rgba(249,129,30,.14),transparent 34%),
      linear-gradient(145deg,rgba(255,255,255,.068),rgba(255,255,255,.028))!important;
    box-shadow:0 0 0 1px rgba(249,129,30,.08),0 20px 48px rgba(0,0,0,.16)!important;
  }
  html body .rsc-v26-benefit-card article:hover::before{
    color:#f9811e!important;
    transform:translateY(-1px)!important;
  }
  html body .rsc-v26-benefit-card article:hover::after{
    width:82px!important;
    box-shadow:0 0 22px rgba(249,129,30,.34)!important;
  }
}

/* Ordinary header items: one crisp underline, no pulsing glow. */
@media (min-width:1181px){
  html body .rsc-header-editable .wp-block-navigation__container{
    width:auto!important;
    flex:0 1 auto!important;
    margin-left:auto!important;
    justify-content:flex-end!important;
    gap:clamp(16px,1.35vw,26px)!important;
  }
  html body .rsc-header-editable .wp-block-navigation-item:not(.rsc-nav-cta)>.wp-block-navigation-item__content{
    text-shadow:none!important;
  }
  html body .rsc-header-editable .wp-block-navigation-item:not(.rsc-nav-cta)>.wp-block-navigation-item__content::before{
    display:none!important;
    content:none!important;
    animation:none!important;
  }
  html body .rsc-header-editable .wp-block-navigation-item:not(.rsc-nav-cta)>.wp-block-navigation-item__content::after{
    bottom:-13px!important;
    height:3px!important;
    box-shadow:0 0 8px rgba(249,129,30,.22)!important;
    opacity:0!important;
    transform:scaleX(0)!important;
    transform-origin:center!important;
    transition:opacity .14s ease,transform .18s cubic-bezier(.22,1,.36,1)!important;
    animation:none!important;
  }
  html body .rsc-header-editable .wp-block-navigation-item.is-current-section:not(.rsc-nav-cta)>.wp-block-navigation-item__content::after,
  html body .rsc-header-editable .wp-block-navigation-item:not(.rsc-nav-cta):is(:hover,:focus-within)>.wp-block-navigation-item__content::after{
    opacity:1!important;
    transform:scaleX(1)!important;
  }

  /* Journal returns as a compact orange CTA, still inside the 1420px frame. */
  html body .rsc-header-editable .rsc-nav-cta{
    position:relative!important;
    margin-left:8px!important;
    padding-left:20px!important;
  }
  html body .rsc-header-editable .rsc-nav-cta::before{
    display:block!important;
    content:""!important;
    position:absolute!important;
    left:0!important;
    top:4px!important;
    bottom:4px!important;
    width:1px!important;
    background:rgba(176,198,211,.22)!important;
  }
  html body .rsc-header-editable .wp-block-navigation__container .rsc-nav-cta>.wp-block-navigation-item__content{
    position:relative!important;
    isolation:isolate!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:102px!important;
    min-height:42px!important;
    padding:0 16px!important;
    overflow:visible!important;
    border:1px solid rgba(255,178,96,.34)!important;
    border-radius:7px!important;
    background:linear-gradient(135deg,#ff8d20 0%,#f77912 100%)!important;
    color:#fff!important;
    font-size:clamp(14px,1vw,17px)!important;
    line-height:1!important;
    text-transform:none!important;
    box-shadow:0 9px 24px rgba(249,129,30,.18),inset 0 1px rgba(255,255,255,.16)!important;
    transform:none!important;
    transition:transform .2s cubic-bezier(.22,1,.36,1),box-shadow .2s ease,filter .2s ease!important;
  }
  html body .rsc-header-editable .wp-block-navigation__container .rsc-nav-cta>.wp-block-navigation-item__content::after{
    display:none!important;
    content:none!important;
  }
  html body .rsc-header-editable .wp-block-navigation__container .rsc-nav-cta>.wp-block-navigation-item__content::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    z-index:2!important;
    inset:-4px!important;
    padding:2px!important;
    border-radius:10px!important;
    background:conic-gradient(from var(--rsc-trace-angle),transparent 0deg,transparent 250deg,rgba(249,129,30,.08) 278deg,rgba(255,190,120,.9) 312deg,#fff 329deg,#f9811e 344deg,transparent 360deg)!important;
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
    -webkit-mask-composite:xor!important;
    mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
    mask-composite:exclude!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  html body .rsc-header-editable .rsc-nav-cta:is(:hover,:focus-within)>.wp-block-navigation-item__content{
    color:#fff!important;
    transform:translateY(-2px)!important;
    filter:saturate(1.08) brightness(1.03)!important;
    box-shadow:0 14px 32px rgba(249,129,30,.28),inset 0 1px rgba(255,255,255,.18)!important;
  }
  html body .rsc-header-editable .rsc-nav-cta:is(:hover,:focus-within)>.wp-block-navigation-item__content::before{
    opacity:1!important;
    animation:rsc-cta-trace 1.18s linear infinite!important;
  }
}

/* The same perimeter trace for vacancy response buttons. */
html body .rsc-v24-vacancy-card article>a{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
  transition:transform .2s cubic-bezier(.22,1,.36,1),box-shadow .2s ease,filter .2s ease!important;
}
html body .rsc-v24-vacancy-card article>a::before{
  content:""!important;
  position:absolute!important;
  z-index:2!important;
  inset:-4px!important;
  padding:2px!important;
  border-radius:9px!important;
  background:conic-gradient(from var(--rsc-trace-angle),transparent 0deg,transparent 250deg,rgba(249,129,30,.08) 278deg,rgba(255,190,120,.9) 312deg,#fff 329deg,#f9811e 344deg,transparent 360deg)!important;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
  -webkit-mask-composite:xor!important;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
  mask-composite:exclude!important;
  opacity:0!important;
  pointer-events:none!important;
}
html body .rsc-v24-vacancy-card article>a:is(:hover,:focus-visible){
  transform:translateY(-3px) scale(1.018)!important;
  filter:saturate(1.08) brightness(1.03)!important;
  box-shadow:0 18px 38px rgba(249,129,30,.28)!important;
}
html body .rsc-v24-vacancy-card article>a:is(:hover,:focus-visible)::before{
  opacity:1!important;
  animation:rsc-cta-trace 1.18s linear infinite!important;
}

/* Services badges: explicit base/hover transforms remove the return-frame snap. */
html body #directions.rsc-release-134 .rsc-v32-cycle-card article>span{
  backface-visibility:hidden!important;
  transform:translate3d(0,0,0) rotate(0deg) scale(1)!important;
  transform-origin:50% 55%!important;
  will-change:transform!important;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),background-color .2s ease,color .2s ease,border-color .2s ease!important;
}
@media (hover:hover) and (pointer:fine){
  html body #directions.rsc-release-134 .rsc-v32-cycle-card article:hover>span{
    transform:translate3d(0,-2px,0) rotate(-8deg) scale(1.09)!important;
  }
}

/* Contacts: a cleaner final information zone, no redundant CTA row. */
html body .rsc-contact-section{
  padding:72px 0 56px!important;
  background:
    radial-gradient(circle at 88% 10%,rgba(249,129,30,.09),transparent 28%),
    linear-gradient(180deg,#08131c 0%,#0a1721 100%)!important;
}
html body .rsc-contact-head{
  grid-template-columns:minmax(0,1fr) minmax(340px,.8fr)!important;
  gap:34px 72px!important;
  align-items:end!important;
}
html body .rsc-contact-kicker{
  margin-bottom:16px!important;
  font-size:14px!important;
}
html body .rsc-contact-title{
  font-size:46px!important;
  line-height:1.04!important;
  letter-spacing:-.03em!important;
}
html body .rsc-contact-intro{
  max-width:560px!important;
  font-size:16px!important;
  line-height:1.65!important;
}
html body .rsc-contact-grid{
  gap:16px!important;
  margin-top:36px!important;
}
html body .rsc-contact-card{
  position:relative!important;
  min-height:118px!important;
  padding:24px 26px 25px!important;
  overflow:hidden!important;
  border:1px solid #2b3e49!important;
  border-radius:16px!important;
  background:
    radial-gradient(circle at 92% 12%,rgba(249,129,30,.08),transparent 30%),
    linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.018))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025),0 18px 44px rgba(0,0,0,.1)!important;
}
html body .rsc-contact-card::before{
  content:""!important;
  position:absolute!important;
  left:26px!important;
  top:0!important;
  width:46px!important;
  height:3px!important;
  border-radius:0 0 999px 999px!important;
  background:#f9811e!important;
  box-shadow:0 0 15px rgba(249,129,30,.2)!important;
  transition:width .24s cubic-bezier(.22,1,.36,1),box-shadow .22s ease!important;
}
html body .rsc-contact-label{
  margin:2px 0 12px!important;
  font-size:11px!important;
  letter-spacing:.11em!important;
}
html body .rsc-contact-value{
  font-size:clamp(18px,1.45vw,22px)!important;
}
html body .rsc-contact-address .rsc-contact-value{
  font-size:16px!important;
  line-height:1.5!important;
}
@media (hover:hover) and (pointer:fine){
  html body .rsc-contact-card:hover{
    transform:translateY(-3px)!important;
    border-color:rgba(249,129,30,.52)!important;
    background:
      radial-gradient(circle at 92% 12%,rgba(249,129,30,.12),transparent 34%),
      linear-gradient(145deg,rgba(255,255,255,.062),rgba(255,255,255,.023))!important;
  }
  html body .rsc-contact-card:hover::before{
    width:78px!important;
    box-shadow:0 0 22px rgba(249,129,30,.3)!important;
  }
}
html body .rsc-contact-actions{display:none!important}

@media(max-width:900px){
  html body .rsc-contact-head{
    grid-template-columns:1fr!important;
    gap:18px!important;
    align-items:start!important;
  }
}

@media(max-width:1180px){
  html body .rsc-inner-main .rsc-inner-shell:has(.rsc-news-grid),
  html body .rsc-article-shell:has(.rsc-legal-page){
    padding-top:92px!important;
  }
}
@media(max-width:760px){
  html body .rsc-release-134 .rsc-v11-kicker{font-size:13px!important}
  html body .rsc-inner-main .rsc-inner-shell:has(.rsc-news-grid),
  html body .rsc-article-shell:has(.rsc-legal-page){
    padding-top:60px!important;
  }
  html body .rsc-v26-benefit-card article{
    min-height:104px!important;
    padding:20px 52px 20px 20px!important;
  }
  html body .rsc-v26-benefit-card article::after{left:20px!important}
  html body .rsc-contact-section{padding:54px 0 44px!important}
  html body .rsc-contact-title{font-size:34px!important}
  html body .rsc-contact-grid{margin-top:28px!important}
  html body .rsc-contact-card{min-height:0!important;padding:22px 22px 23px!important}
  html body .rsc-contact-card::before{left:22px!important}
  /* Touch layouts do not need a hover-only perimeter trace; removing the
     invisible pseudo-element also keeps horizontal carousels inside viewport. */
  html body .rsc-v24-vacancy-card article>a::before{
    display:none!important;
    content:none!important;
  }
}

@media(prefers-reduced-motion:reduce){
  html body .rsc-v26-benefit-card article,
  html body .rsc-v26-benefit-card article::before,
  html body .rsc-v26-benefit-card article::after,
  html body #directions.rsc-release-134 .rsc-v32-cycle-card article>span,
  html body .rsc-v24-vacancy-card article>a,
  html body .rsc-v24-vacancy-card article>a::before,
  html body .rsc-header-editable .rsc-nav-cta>.wp-block-navigation-item__content,
  html body .rsc-header-editable .rsc-nav-cta>.wp-block-navigation-item__content::before,
  html body .rsc-contact-card,
  html body .rsc-contact-card::before{
    animation:none!important;
    transition:none!important;
  }
}
