:root{
  --bg:#070708;
  --panel:rgba(10,11,13,.72);
  --panel-strong:rgba(10,11,13,.84);
  --line:rgba(255,255,255,.14);
  --text:#f7f7f8;
  --muted:#b9bdc7;
  --dim:#7b808b;
  --red:#7b061c;
  --red-2:#a9112b;
  --red-3:#d23a58;
  --ok:#48db8b;
  --warn:#ffd34d;
  --shadow:0 26px 90px rgba(0,0,0,.56);
  --radius:24px;
}
*{box-sizing:border-box}
html,body{min-height:100%;margin:0}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:#08090a}
.page-bg{min-height:100vh;background-size:cover;background-position:center;position:relative;overflow:hidden}
.page-bg::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.08),rgba(0,0,0,.08) 38%,rgba(0,0,0,.35) 100%)}
.login-bg{background-image:url('../assets/bg-login.png')}
.twofa-bg{background-image:url('../assets/bg-2fa.png');background-position:center}
.center-logo{position:absolute;z-index:2;left:53.2%;top:34.5%;transform:translate(-10%,-10%);text-align:center;user-select:none}
.rebus-word{font-size:clamp(64px,7.2vw,128px);font-weight:900;letter-spacing:.22em;line-height:.9;color:rgba(20,22,24,.70);text-shadow:0 1px 0 rgba(255,255,255,.18),0 12px 24px rgba(0,0,0,.32);filter:drop-shadow(0 1px 0 rgba(255,255,255,.20))}
.login-word{display:flex;align-items:center;justify-content:center;margin-top:34px;padding:0;border:0;background:transparent;color:#ffffff;font-size:clamp(18px,2vw,34px);font-weight:900;letter-spacing:.12em;text-decoration:none;text-transform:uppercase;cursor:pointer;transition:.25s ease;text-shadow:0 12px 28px rgba(0,0,0,.28);width:100%;height:100%;text-align:center}
.login-word:hover{color:#ff1a1a;text-shadow:0 0 14px rgba(255,26,26,.65),0 16px 34px rgba(0,0,0,.34);transform:translateY(-1px)}
.login-word:disabled{opacity:.55;cursor:wait}
.corner-status{position:fixed;left:28px;bottom:24px;z-index:3;display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.72);font-size:14px;letter-spacing:.02em}.dot{width:11px;height:11px;border-radius:999px;background:var(--red-3);box-shadow:0 0 16px rgba(210,58,88,.5)}.dot.ok{background:var(--ok);box-shadow:0 0 16px rgba(72,219,139,.5)}.dot.warn{background:var(--warn);box-shadow:0 0 16px rgba(255,211,77,.45)}
.auth-wrap{position:relative;z-index:2;min-height:100vh;display:flex;align-items:center;justify-content:flex-start;padding:44px 7vw}.auth-wrap::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.30) 34%,rgba(0,0,0,.06) 62%,rgba(0,0,0,.16))}
.auth-card{width:min(448px,92vw);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(16,17,20,.82),rgba(7,8,10,.86));backdrop-filter:blur(14px);box-shadow:var(--shadow);padding:32px}.brand{display:flex;align-items:center;gap:14px;margin-bottom:26px}.brand img{width:52px;height:52px;object-fit:contain}.brand-title{font-size:34px;font-weight:950;letter-spacing:.03em}.brand-title span{margin-left:8px;color:var(--red-3);font-size:.62em}.title{margin:0 0 12px;font-size:30px;line-height:1.12}.sub{margin:0 0 24px;color:var(--muted);font-size:16px;line-height:1.55}.code-input{width:100%;height:64px;border-radius:17px;border:1px solid rgba(255,255,255,.15);background:rgba(0,0,0,.36);color:#fff;text-align:center;font-size:28px;letter-spacing:.36em;font-weight:800;outline:none}.code-input:focus{border-color:rgba(210,58,88,.7);box-shadow:0 0 0 4px rgba(210,58,88,.12)}.stack{display:grid;gap:14px}.btn{min-height:56px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:linear-gradient(135deg,#b11634,#73051a);color:#fff;font-size:17px;font-weight:900;cursor:pointer;box-shadow:0 18px 46px rgba(139,9,31,.24);transition:.16s ease}.btn:hover{transform:translateY(-1px);filter:brightness(1.08)}.btn.secondary{background:rgba(255,255,255,.065);box-shadow:none}.status{min-height:24px;margin-top:16px;color:var(--muted);font-size:14px;line-height:1.45}.status.error{color:#ff91a2}.status.ok{color:var(--ok)}.status.warn{color:var(--warn)}
.shell{min-height:100vh;display:grid;grid-template-columns:292px 1fr;background:radial-gradient(circle at 80% -10%,rgba(143,12,34,.18),transparent 34%),#08090a}.side{padding:26px 22px;border-right:1px solid rgba(255,255,255,.09);background:linear-gradient(180deg,#101116,#08090b);display:flex;flex-direction:column;gap:26px}.side .brand-title{font-size:25px}.side .brand img{width:42px;height:42px}.nav{display:grid;gap:8px}.nav a{color:var(--muted);text-decoration:none;font-weight:800;padding:14px 16px;border-radius:15px}.nav a.active,.nav a:hover{background:linear-gradient(90deg,rgba(156,11,37,.28),rgba(156,11,37,.08));color:#fff}.side-bottom{margin-top:auto}.main{padding:34px 38px;overflow:auto}.top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:28px}.top h1{margin:0;font-size:36px}.profile-mini{text-align:right;color:var(--muted);line-height:1.35}.profile-mini strong{display:block;color:#fff;font-size:17px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.panel{border:1px solid rgba(255,255,255,.11);border-radius:22px;background:linear-gradient(180deg,rgba(20,22,26,.75),rgba(10,11,13,.75));box-shadow:0 18px 60px rgba(0,0,0,.22);overflow:hidden}.panel.pad{padding:22px}.panel h2,.panel h3{margin:0 0 12px}.muted{color:var(--muted)}.kv{display:grid;gap:12px}.kv-row{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07)}.kv-row:last-child{border-bottom:0}.badge{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:7px 11px;font-weight:900;font-size:13px;background:rgba(72,219,139,.12);color:#78f0aa}.badge.warn{background:rgba(255,211,77,.12);color:var(--warn)}.learn-list{display:grid;gap:12px;margin-top:12px}.learn-item{padding:15px;border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.035)}.learn-item strong{display:block;margin-bottom:4px}.wide{grid-column:1/-1}.ghost-link{display:inline-block;color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.14);padding:12px 16px;border-radius:14px;font-weight:900;background:rgba(255,255,255,.055)}
@media(max-width:920px){.center-logo{left:50%;top:38%;transform:translate(-5%,-10%)}.rebus-word{font-size:54px}.login-word{font-size:19px}.auth-wrap{justify-content:center;padding:26px}.shell{grid-template-columns:1fr}.side{display:none}.main{padding:24px}.grid{grid-template-columns:1fr}.top{display:block}.profile-mini{text-align:left;margin-top:10px}}

/* === REBUS user portal visual corrections === */
.login-bg::before{
  background:linear-gradient(90deg,rgba(0,0,0,.03),rgba(0,0,0,.02) 45%,rgba(0,0,0,.16) 100%);
}
.login-entry{
  position:absolute;
  z-index:2;
  left:67.6%;
  top:48.2%;
  transform:translate(-50%,-50%);
  text-align:center;
  user-select:none;
}
.login-word{
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:#ffffff;
  font-size:clamp(18px,2.05vw,34px);
  font-weight:950;
  letter-spacing:.12em;
  line-height:1;
  text-align:center;
  text-decoration:none;
  text-transform:uppercase;
  cursor:pointer;
  transition:.22s ease;
  text-shadow:0 10px 28px rgba(0,0,0,.30);
}
.login-word:hover{
  color:#ff1a1a;
  text-shadow:0 0 14px rgba(255,26,26,.70),0 16px 34px rgba(0,0,0,.34);
  transform:translateY(-1px);
}
.login-word:disabled{opacity:.62;cursor:wait}
.twofa-bg::before{
  background:linear-gradient(90deg,rgba(0,0,0,.04),rgba(0,0,0,.05) 42%,rgba(0,0,0,.58) 100%);
}
.twofa-wrap{
  position:relative;
  z-index:2;
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  padding:44px 7vw;
}
.twofa-wrap::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(0,0,0,0),rgba(0,0,0,.05) 46%,rgba(0,0,0,.38));
}
.twofa-card{
  width:min(470px,92vw);
  margin-right:1.5vw;
}
.brand.compact img{
  width:46px;
  height:46px;
}
.brand.compact .brand-title{
  font-size:30px;
}
@media(max-width:920px){
  .login-entry{left:67%;top:49%}
  .twofa-wrap{justify-content:center;padding:24px}
  .twofa-card{margin-right:0}
}

/* === Login + favicon + 2FA fixes, 2026-06-13 === */
.login-entry{
  left:68.9%;
  top:54.8%;
  transform:translate(-50%,-50%);
}
.login-word{
  font-size:clamp(18px,1.9vw,31px);
  letter-spacing:.52em;
  color:rgba(111,8,22,.78);
}
.twofa-card{
  width:min(492px,92vw);
  margin-right:4vw;
  background:linear-gradient(180deg,rgba(13,14,17,.86),rgba(6,7,9,.90));
}
.twofa-wrap{
  padding-right:8vw;
}
.brand.compact img{
  width:54px;
  height:54px;
}
@media(max-width:920px){
  .login-entry{left:68%;top:55.5%}
  .twofa-wrap{padding-right:24px;justify-content:center}
}
.corner-status{display:none!important}

.small-note{margin-top:-12px;margin-bottom:20px;font-size:13px;color:rgba(255,255,255,.55)}


/* Public informational pages for Chrome Web Store */
.support-bg {
  background-image:
    linear-gradient(90deg, rgba(4, 5, 8, .86), rgba(14, 4, 8, .62)),
    url('../assets/bg-2fa.png');
  background-size: cover;
  background-position: center;
}

.public-page {
  min-height: 100vh;
  display: flex;
  align-items: center;
  padding: 48px clamp(20px, 5vw, 96px);
}

.public-card {
  width: min(980px, 100%);
  padding: clamp(28px, 4vw, 56px);
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 28px;
  background: linear-gradient(145deg, rgba(13, 15, 19, .92), rgba(25, 6, 12, .84));
  box-shadow: 0 32px 120px rgba(0, 0, 0, .56);
  backdrop-filter: blur(14px);
}

.brand-line {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 34px;
}

.brand-mark {
  width: 54px;
  height: 54px;
  object-fit: contain;
}

.brand-title {
  font-size: 32px;
  font-weight: 900;
  letter-spacing: .03em;
  color: #fff;
}

.brand-title span {
  color: #ef3f6b;
  font-size: .55em;
  margin-left: 8px;
  letter-spacing: .08em;
}

.public-card h1 {
  margin: 0 0 14px;
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1;
  color: #fff;
}

.public-lead {
  max-width: 760px;
  margin: 0 0 34px;
  color: rgba(255, 255, 255, .76);
  font-size: 18px;
  line-height: 1.65;
}

.public-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 28px 0;
}

.public-grid article {
  padding: 22px;
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, .1);
  background: rgba(255, 255, 255, .045);
}

.public-grid h2 {
  margin: 0 0 10px;
  font-size: 18px;
  color: #fff;
}

.public-grid p {
  margin: 0;
  color: rgba(255, 255, 255, .68);
  line-height: 1.55;
}

.support-box {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 26px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, .1);
}

.support-box strong {
  display: block;
  color: #fff;
  margin-bottom: 6px;
}

.support-box p {
  margin: 0;
  color: rgba(255, 255, 255, .72);
}

.public-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 32px;
}

.ghost-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, .16);
  color: #fff;
  text-decoration: none;
  font-weight: 800;
  background: rgba(255, 255, 255, .06);
}

.ghost-link:hover {
  border-color: rgba(239, 63, 107, .65);
  box-shadow: 0 0 30px rgba(239, 63, 107, .16);
}

@media (max-width: 760px) {
  .public-grid,
  .support-box {
    grid-template-columns: 1fr;
  }
}


/* === Login word alignment to printed oval button, 2026-06-14 === */
.login-entry{
  left:81.8%;
  top:72.5%;
  transform:translate(-50%,-50%);
}
.login-word{
  color:rgba(18,18,18,.86);
  font-size:clamp(18px,1.55vw,28px);
  font-weight:800;
  letter-spacing:.08em;
  text-shadow:0 1px 0 rgba(255,255,255,.28),0 8px 18px rgba(0,0,0,.18);
}
.login-word:hover{
  color:#151515;
  text-shadow:0 0 10px rgba(255,255,255,.25),0 0 16px rgba(185,13,37,.28);
  transform:translateY(-1px);
}
@media(max-width:920px){
  .login-entry{left:81.8%;top:72.5%}
  .login-word{font-size:18px;letter-spacing:.06em}
}

/* === FINAL FIX: login text centered in printed oval, bordo + red hover === */
.login-entry{
  left:81.8% !important;
  top:74.4% !important;
  transform:translate(-50%,-50%) !important;
}
.login-word{
  color:#6f1021 !important;
  font-size:clamp(18px,1.55vw,28px) !important;
  font-weight:900 !important;
  letter-spacing:.08em !important;
  line-height:1 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.22),0 8px 18px rgba(0,0,0,.20) !important;
}
.login-word:hover{
  color:#ff243d !important;
  text-shadow:0 0 12px rgba(255,36,61,.42),0 8px 18px rgba(0,0,0,.22) !important;
  transform:none !important;
}
@media(max-width:920px){
  .login-entry{left:81.8% !important;top:74.4% !important;}
  .login-word{font-size:18px !important;letter-spacing:.06em !important;}
}


/* === REBUS first-time 2FA setup === */
.setup-2fa-card{
  width:min(580px,92vw);
  max-height:calc(100vh - 56px);
  overflow:auto;
}
.qr-box{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:286px;
  margin:18px 0 16px;
  padding:22px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 22px 70px rgba(0,0,0,.22);
}
.qr-placeholder{
  color:rgba(255,255,255,.62);
  font-weight:800;
  text-align:center;
}
.qr-img,
.qr-svg svg{
  width:240px;
  height:240px;
  display:block;
  border-radius:18px;
  background:#fff;
  padding:12px;
  box-shadow:0 18px 44px rgba(0,0,0,.35);
}
.qr-svg{
  display:flex;
  align-items:center;
  justify-content:center;
}
.setup-steps{
  display:grid;
  gap:8px;
  margin:0 0 16px;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.22);
  color:rgba(255,255,255,.78);
  font-size:13px;
  line-height:1.35;
}
.setup-steps b{
  color:#ff4c71;
}
.setup-secret-wrap{
  margin:0 0 18px;
  padding:13px 16px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.24);
}
.setup-secret-wrap summary{
  cursor:pointer;
  color:rgba(255,255,255,.68);
  font-size:13px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  list-style:none;
}
.setup-secret-wrap summary::-webkit-details-marker{
  display:none;
}
.setup-secret-wrap summary::after{
  content:'+';
  float:right;
  color:#ff4c71;
}
.setup-secret-wrap[open] summary::after{
  content:'–';
}
.setup-secret{
  display:block;
  margin-top:12px;
  overflow-wrap:anywhere;
  color:#fff;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:13px;
  line-height:1.45;
}
.setup-actions{
  margin-top:8px;
}
.setup-2fa-card .sub{
  margin-bottom:10px;
}
.setup-success-icon{
  width:92px;
  height:92px;
  display:grid;
  place-items:center;
  margin:28px auto 20px;
  border-radius:999px;
  background:linear-gradient(135deg,#19c37d,#0a7d51);
  color:#fff;
  font-size:52px;
  font-weight:1000;
  box-shadow:0 18px 50px rgba(25,195,125,.28);
}
@media(max-width:920px){
  .setup-2fa-card{width:min(520px,94vw)}
  .qr-box{min-height:246px;padding:18px}
  .qr-img,.qr-svg svg{width:210px;height:210px}
}
@media(max-width:560px){
  .qr-img,.qr-svg svg{width:190px;height:190px}
}


/* === REBUS setup 2FA compact QR fix === */
.setup-2fa-card{
  width:min(520px,92vw) !important;
  max-height:none !important;
  overflow:visible !important;
  padding:28px !important;
}
.setup-2fa-card .brand{
  margin-bottom:18px !important;
}
.setup-2fa-card .title{
  font-size:28px !important;
  margin-bottom:10px !important;
}
.setup-2fa-card .sub{
  font-size:14px !important;
  line-height:1.45 !important;
  margin-bottom:12px !important;
}
.qr-box{
  min-height:230px !important;
  margin:12px 0 12px !important;
  padding:16px !important;
}
.qr-img,
.qr-svg svg{
  width:210px !important;
  height:210px !important;
  padding:10px !important;
  border-radius:16px !important;
}
.setup-steps{
  font-size:12px !important;
  gap:6px !important;
  margin-bottom:12px !important;
  padding:12px 14px !important;
}
.setup-secret-wrap{
  margin-bottom:12px !important;
  padding:11px 14px !important;
}
.setup-actions{
  gap:10px !important;
}
.setup-2fa-card .code-input{
  height:56px !important;
  font-size:25px !important;
}
.setup-2fa-card .btn{
  min-height:50px !important;
}
.setup-2fa-card .status{
  margin-top:12px !important;
  font-size:13px !important;
}
@media(max-height:760px){
  .setup-2fa-card{transform:scale(.92);transform-origin:center right;}
}
@media(max-width:920px){
  .setup-2fa-card{transform:none !important;}
}


/* === Login page video background, 2026-06-21 === */
.login-video-page{
  background-image:url('../assets/bg-login.png');
}
.login-bg-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
  pointer-events:none;
}
.login-video-page::before{
  z-index:1;
  background:linear-gradient(90deg,rgba(0,0,0,.10),rgba(0,0,0,.04) 45%,rgba(0,0,0,.22) 100%);
}
.login-video-page .login-entry{
  z-index:2;
}
@media (prefers-reduced-motion: reduce){
  .login-bg-video{display:none}
}


/* === Final login button correction === */
.login-video-page .login-entry{
  left:67.6%;
  top:48.2%;
  transform:translate(-50%,-50%);
}
.login-video-page .login-word{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#ffffff !important;
  letter-spacing:.12em !important;
  text-align:center !important;
}
.login-video-page .login-word:hover{
  color:#ff1a1a !important;
}


/* === REBUS: lower login word only === */
body.login-video-page .login-entry{
  top:77.2% !important;
}

body.login-video-page .login-word{
  color:#ffffff !important;
}

body.login-video-page .login-word:hover{
  color:#ff1a1a !important;
}


/* === REBUS cabinet clean base: background + first-block video + logout only === */
.cabinet-clean-page{
  margin:0;
  background:#0b0b0d;
  overflow-x:hidden;
}

.cabinet-clean{
  position:relative;
  min-height:100vh;
  background:#0b0b0d;
}

.cabinet-clean-bg{
  display:block;
  width:100%;
  height:auto;
  min-height:100vh;
  position:relative;
  z-index:0;
  pointer-events:none;
  user-select:none;
}

.cabinet-clean-hero{
  position:absolute;
  inset:0 0 auto 0;
  width:100%;
  height:100vh;
  overflow:hidden;
  z-index:1;
  pointer-events:none;
}

.cabinet-clean-video{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.cabinet-clean-logout{
  position:fixed;
  top:22px;
  right:24px;
  z-index:20;
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.28);
  background:rgba(0,0,0,.35);
  color:#fff;
  font-size:14px;
  font-weight:850;
  letter-spacing:.02em;
  cursor:pointer;
  backdrop-filter:blur(10px);
  transition:.2s ease;
}

.cabinet-clean-logout:hover{
  color:#ff1a1a;
  border-color:rgba(255,26,26,.55);
  background:rgba(0,0,0,.48);
}


.hero-overlay{
position:absolute;
inset:0;
width:100%;
height:100%;
object-fit:contain;
z-index:3;
pointer-events:none;
}
.hero-arrow{
position:absolute;
right:70px;
bottom:55px;
left:auto;
transform:none;
z-index:4;
transition:.2s ease;
}
.hero-arrow:hover{transform:scale(1.08)}
.hero-arrow img{width:64px;height:64px;display:block}
#menu-block{height:100vh}


/* === REBUS: remove empty black block after cabinet background === */
.cabinet-clean-page{
  background:#edf1f4 !important;
}

.cabinet-clean{
  min-height:0 !important;
  height:auto !important;
  background:#edf1f4 !important;
  overflow:hidden !important;
}

.cabinet-clean-bg{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
}

.cabinet-clean::after{
  content:none !important;
}

.cabinet-clean-hero{
  height:100vh !important;
}

.menu-block-anchor{
  top:100vh !important;
  height:0 !important;
}


/* === REBUS fix: remove empty menu gap and keep arrow active === */
#menu-block{
  height:0 !important;
  min-height:0 !important;
  overflow:hidden !important;
}

.menu-block-anchor{
  height:0 !important;
  min-height:0 !important;
  overflow:hidden !important;
}

.hero-arrow,
.hero-arrow-btn{
  z-index:9999 !important;
  pointer-events:auto !important;
  cursor:pointer !important;
  opacity:1 !important;
  visibility:visible !important;
}

.hero-arrow img,
.hero-arrow-btn img{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
}

.hero-overlay,
.hero-overlay-svg{
  pointer-events:none !important;
}


/* === REBUS second block cards: base grayscale + exact diamond hover/click zones === */
#menu-block,
.menu-block-anchor{
  position:absolute !important;
  left:0 !important;
  top:56.25vw !important;
  width:1px !important;
  height:1px !important;
  min-height:0 !important;
  overflow:hidden !important;
}

.menu-cards-area{
  position:absolute !important;
  left:24.5vw !important;
  top:60vw !important;
  width:67vw !important;
  aspect-ratio:1366 / 768 !important;
  z-index:8 !important;
  pointer-events:auto !important;
}

.menu-cards-base{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block !important;
  pointer-events:none !important;
  user-select:none !important;
  z-index:1 !important;
}

.menu-hover-layer{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  background-image:url('../assets/menu-cards-hover.svg') !important;
  background-repeat:no-repeat !important;
  background-size:100% 300% !important;
  opacity:0 !important;
  z-index:2 !important;
  pointer-events:none !important;
  transition:opacity .32s ease, filter .32s ease !important;
}

.hover-cabinet{
  background-position:center top !important;
  clip-path:polygon(38.75% 7.94%, 56.89% 7.94%, 41.51% 90%, 23.36% 90%) !important;
}

.hover-learning{
  background-position:center center !important;
  clip-path:polygon(58.67% 7.94%, 76.79% 7.94%, 61.42% 90%, 43.27% 90%) !important;
}

.hover-contacts{
  background-position:center bottom !important;
  clip-path:polygon(78.72% 7.94%, 96.87% 7.94%, 81.51% 90%, 63.34% 90%) !important;
}

.menu-card-hotspots{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  z-index:5 !important;
  display:block !important;
  overflow:visible !important;
}

.menu-hotspot polygon{
  fill:rgba(255,255,255,0.001) !important;
  stroke:transparent !important;
  pointer-events:all !important;
  cursor:pointer !important;
}

.menu-cards-area:has(.hotspot-cabinet:hover) .hover-cabinet,
.menu-cards-area:has(.hotspot-cabinet:focus-visible) .hover-cabinet{
  opacity:1 !important;
  filter:drop-shadow(0 18px 34px rgba(0,0,0,.18)) !important;
}

.menu-cards-area:has(.hotspot-learning:hover) .hover-learning,
.menu-cards-area:has(.hotspot-learning:focus-visible) .hover-learning{
  opacity:1 !important;
  filter:drop-shadow(0 18px 34px rgba(0,0,0,.18)) !important;
}

.menu-cards-area:has(.hotspot-contacts:hover) .hover-contacts,
.menu-cards-area:has(.hotspot-contacts:focus-visible) .hover-contacts{
  opacity:1 !important;
  filter:drop-shadow(0 18px 34px rgba(0,0,0,.18)) !important;
}

.section-anchor-learning{
  position:absolute !important;
  left:0 !important;
  top:56.25vw !important;
  width:1px !important;
  height:1px !important;
}

.section-anchor-support{
  position:absolute !important;
  left:0 !important;
  top:112.5vw !important;
  width:1px !important;
  height:1px !important;
}

/* Hide accidental old template from previous test patches if it exists */
.menu-cards-section{
  display:none !important;
}

@media(max-width:900px){
  .menu-cards-area{
    left:8vw !important;
    top:65vw !important;
    width:86vw !important;
  }
}


.download-block{
display:flex;
align-items:center;
justify-content:center;
gap:8vw;
min-height:100vh;
background:#dfe2e5;
}
.download-logo{width:36vw;max-width:600px;}
.download-content h2{font-size:4rem;margin:0;}
.download-content p{font-size:1.6rem;margin:10px 0 30px;}
.download-link img{width:90px;height:auto;}
.download-link:hover{opacity:.8;}


/* === REBUS: third block download icon fix === */
.download-block{
  display:none !important;
}

.rebus-download-icon{
  position:absolute !important;
  left:72.2% !important;
  top:139.8vw !important;
  transform:translate(-50%,0) !important;
  z-index:50 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:92px !important;
  height:92px !important;
  text-decoration:none !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  transition:transform .22s ease, opacity .22s ease, filter .22s ease !important;
}

.rebus-download-icon img{
  display:block !important;
  width:92px !important;
  height:92px !important;
  object-fit:contain !important;
  opacity:1 !important;
  visibility:visible !important;
  border:0 !important;
}

.rebus-download-icon:hover{
  transform:translate(-50%,6px) scale(1.04) !important;
  opacity:.86 !important;
  filter:drop-shadow(0 12px 20px rgba(0,0,0,.18)) !important;
}

/* Hide old broken download link if it remains from cache/older markup */
.third-block-download{
  display:none !important;
}


/* === REBUS NAV ARROWS STRONG PATCH === */
.hero-arrow{
  position:absolute !important;
  right:8.6% !important;
  bottom:11.2% !important;
  left:auto !important;
  top:auto !important;
  z-index:2147483647 !important;
  width:76px !important;
  height:76px !important;
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  cursor:pointer !important;
  background:transparent !important;
  border:0 !important;
  transform:none !important;
  transition:transform .22s ease, opacity .22s ease, filter .22s ease !important;
}
.hero-arrow img{
  content:url("../assets/arrow-down.svg") !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  opacity:1 !important;
  visibility:visible !important;
}
.hero-arrow:hover{
  transform:translateY(7px) !important;
  opacity:.86 !important;
  filter:drop-shadow(0 0 16px rgba(255,255,255,.75)) !important;
}

.menu-next-arrow{ position:absolute !important; right:14% !important; top:96vw !important;
  left:auto !important;
  z-index:2147483647 !important;
  width:76px !important;
  height:76px !important;
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  cursor:pointer !important;
  background:transparent !important;
  border:0 !important;
  transition:transform .22s ease, opacity .22s ease, filter .22s ease !important;
}
.menu-next-arrow img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  opacity:1 !important;
  visibility:visible !important;
}
.menu-next-arrow:hover{
  transform:translateY(7px) !important;
  opacity:.86 !important;
  filter:drop-shadow(0 0 14px rgba(0,0,0,.35)) !important;
}
.download-block-anchor{
  position:absolute !important;
  left:0 !important;
  top:112.5vw !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}
.hero-overlay,
.hero-overlay-svg,
.menu-cards-base{
  pointer-events:none !important;
}


/* === REBUS fix: first-block arrow inside rectangle, white === */
.hero-arrow{
  position:absolute !important;
  left:auto !important;
  top:auto !important;
  right:14.6% !important;
  bottom:14.7% !important;
  width:64px !important;
  height:64px !important;
  z-index:2147483647 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  cursor:pointer !important;
  background:transparent !important;
  border:0 !important;
  transform:none !important;
  transition:transform .22s ease, opacity .22s ease, filter .22s ease !important;
}

.hero-arrow img{
  width:64px !important;
  height:64px !important;
  display:block !important;
  object-fit:contain !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:brightness(0) invert(1) !important;
}

.hero-arrow:hover{
  transform:translateY(7px) !important;
  opacity:.86 !important;
  filter:drop-shadow(0 0 16px rgba(255,255,255,.75)) !important;
}


/* === REBUS separate pages v1 === */
.rebus-subpage{
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(circle at 78% 18%, rgba(190,18,42,.22), transparent 34%),
    linear-gradient(135deg,#07080b,#15161a 54%,#08090c);
  color:#f4f4f4;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.rebus-subpage-shell{
  min-height:100vh;
  padding:32px clamp(22px,5vw,86px) 80px;
}

.rebus-subpage-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:52px;
}

.rebus-back-link{
  color:rgba(255,255,255,.72);
  text-decoration:none;
  font-weight:850;
  letter-spacing:.02em;
  transition:.2s ease;
}

.rebus-back-link:hover{
  color:#ff1a1a;
}

.rebus-subpage-hero{
  max-width:980px;
  padding:clamp(70px,10vw,150px) 0 clamp(40px,6vw,80px);
}

.rebus-subpage-kicker{
  color:#ff1a1a;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.14em;
  margin-bottom:18px;
}

.rebus-subpage-hero h1{
  margin:0;
  font-size:clamp(64px,10vw,156px);
  line-height:.86;
  letter-spacing:-.075em;
}

.rebus-subpage-hero p{
  max-width:720px;
  margin:28px 0 0;
  color:rgba(255,255,255,.72);
  font-size:clamp(18px,2.1vw,30px);
  line-height:1.42;
}

.rebus-subpage-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}

.rebus-subpage-card{
  min-height:210px;
  padding:28px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
  box-shadow:0 30px 90px rgba(0,0,0,.22);
  transition:.25s ease;
}

.rebus-subpage-card:hover{
  transform:translateY(-8px);
  border-color:rgba(255,26,26,.46);
  box-shadow:0 34px 96px rgba(155,0,24,.22);
}

.rebus-subpage-card h2{
  margin:0 0 12px;
  color:#fff;
  font-size:clamp(24px,2.3vw,38px);
  letter-spacing:-.04em;
}

.rebus-subpage-card p{
  margin:0;
  color:rgba(255,255,255,.68);
  font-size:16px;
  line-height:1.55;
}

@media(max-width:850px){
  .rebus-subpage-grid{
    grid-template-columns:1fr;
  }
}


/* === REBUS user cabinet page v1 === */
.rebus-profile-page{
  margin:0;
  min-height:100vh;
  background:#eef2f5;
  color:#292929;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  overflow-x:hidden;
}

.rebus-topnav{
  position:sticky;
  top:0;
  z-index:1000;
  height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 28px 0 14px;
  background:rgba(82,82,82,.96);
  backdrop-filter:blur(14px);
  box-shadow:0 1px 0 rgba(255,255,255,.12);
}

.rebus-nav-logo{
  display:flex;
  align-items:center;
  width:58px;
  height:42px;
  text-decoration:none;
}

.rebus-nav-logo img{
  width:52px;
  height:52px;
  object-fit:contain;
  filter:brightness(0) invert(1);
}

.rebus-nav-links{
  display:flex;
  align-items:center;
  gap:clamp(22px,4vw,58px);
}

.rebus-nav-links a,
.rebus-nav-links button{
  position:relative;
  appearance:none;
  border:0;
  background:transparent;
  padding:0;
  color:rgba(255,255,255,.78);
  text-decoration:none;
  font-size:15px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  cursor:pointer;
  transition:.2s ease;
}

.rebus-nav-links a:hover,
.rebus-nav-links button:hover{
  color:#fff;
}

.rebus-nav-links a.active{
  color:#fff;
}

.rebus-nav-links a.active::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-14px;
  height:2px;
  background:#fff;
  border-radius:999px;
}

.profile-hero{
  display:grid;
  grid-template-columns:43% 57%;
  min-height:660px;
  background:#2b2b2c;
}

.profile-hero-image{
  min-height:660px;
  overflow:hidden;
  background:#111;
}

.profile-hero-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:left center;
  display:block;
}

.profile-panel{
  position:relative;
  padding:clamp(70px,8vw,112px) clamp(54px,8vw,110px) 70px;
  color:#f4f4f4;
  background:
    radial-gradient(circle at 88% 18%, rgba(255,255,255,.07), transparent 34%),
    linear-gradient(135deg,#2d2d2e,#222224);
}

.profile-panel h1{
  margin:0 0 clamp(56px,6vw,82px);
  color:#fff;
  font-size:clamp(34px,4.2vw,54px);
  line-height:1;
  font-weight:950;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.profile-lines{
  width:100%;
  max-width:650px;
}

.profile-line{
  display:grid;
  grid-template-columns:220px 1fr;
  align-items:center;
  gap:26px;
  min-height:62px;
  border-bottom:1px solid rgba(255,255,255,.65);
}

.profile-line span{
  color:#fff;
  font-size:15px;
  font-weight:950;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.profile-line strong{
  color:rgba(255,255,255,.86);
  font-size:18px;
  font-weight:650;
  text-align:right;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.profile-log-jump{
  position:absolute;
  right:clamp(58px,7vw,120px);
  bottom:84px;
  display:flex;
  align-items:center;
  gap:34px;
  appearance:none;
  border:0;
  background:transparent;
  color:#fff;
  cursor:pointer;
  padding:0;
  transition:.22s ease;
}

.profile-log-jump span{
  font-size:15px;
  font-weight:950;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.profile-log-jump img{
  width:72px;
  height:72px;
  object-fit:contain;
  filter:brightness(0) invert(1);
}

.profile-log-jump:hover{
  transform:translateY(6px);
  opacity:.82;
}

.profile-log-section{
  min-height:720px;
  padding:clamp(56px,7vw,92px) clamp(34px,7vw,86px) 110px;
  background:#eef2f5;
}

.profile-log-heading{
  max-width:1400px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:30px;
}

.profile-log-section h2{
  margin:0 0 14px;
  color:#292929;
  font-size:clamp(48px,6vw,86px);
  line-height:.95;
  font-weight:950;
  letter-spacing:-.065em;
}

.profile-log-heading p{
  margin:0;
  color:rgba(41,41,41,.72);
  font-size:17px;
  line-height:1.45;
}

.profile-log-controls{
  max-width:1400px;
  display:grid;
  grid-template-columns:minmax(280px,1.5fr) auto minmax(180px,.55fr) minmax(220px,.7fr) auto;
  align-items:end;
  gap:18px;
  margin:0 0 24px;
}

.profile-log-controls label,
.log-search-field{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
}

.profile-log-controls label span,
.log-search-field span{
  color:rgba(41,41,41,.72);
  font-size:12px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.profile-log-controls input,
.profile-log-controls select{
  width:100%;
  min-height:48px;
  box-sizing:border-box;
  border:1px solid rgba(41,41,41,.14);
  border-radius:12px;
  background:rgba(255,255,255,.78);
  color:#292929;
  padding:0 15px;
  font:inherit;
  font-weight:650;
  outline:none;
  box-shadow:0 12px 34px rgba(12,20,28,.04);
  transition:.2s ease;
}

.profile-log-controls input:focus,
.profile-log-controls select:focus{
  border-color:rgba(186,20,56,.48);
  box-shadow:0 0 0 4px rgba(186,20,56,.08);
}

.log-date-group{
  display:grid;
  grid-template-columns:repeat(2,minmax(130px,1fr));
  gap:12px;
}

.log-reset-btn,
.log-refresh-btn{
  appearance:none;
  border:1px solid rgba(41,41,41,.14);
  border-radius:12px;
  min-height:48px;
  padding:0 18px;
  background:rgba(255,255,255,.74);
  color:#292929;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 12px 34px rgba(12,20,28,.04);
  transition:.2s ease;
}

.log-refresh-btn{
  min-height:42px;
}

.log-reset-btn:hover,
.log-refresh-btn:hover{
  transform:translateY(-2px);
  border-color:rgba(186,20,56,.34);
}

.log-reset-btn:disabled,
.log-refresh-btn:disabled{
  opacity:.55;
  cursor:wait;
  transform:none;
}

.profile-log-wrap{
  max-width:1400px;
  overflow:auto;
  background:rgba(255,255,255,.62);
  border:1px solid rgba(41,41,41,.08);
  border-radius:18px;
  box-shadow:0 24px 70px rgba(12,20,28,.06);
}

.profile-log-table{
  width:100%;
  border-collapse:collapse;
  color:#292929;
  font-size:15px;
}

.profile-log-table th{
  padding:0 18px 18px;
  color:rgba(41,41,41,.62);
  font-size:12px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-align:left;
  border-bottom:1px solid rgba(41,41,41,.14);
}

.profile-log-table td{
  padding:17px 18px;
  border-bottom:1px solid rgba(41,41,41,.12);
  vertical-align:middle;
}

.profile-log-table tr:last-child td{
  border-bottom:0;
}

.profile-log-table td:nth-child(1){
  white-space:nowrap;
}

.log-object{
  display:block;
  max-width:520px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.log-error-text{
  display:block;
  margin-top:5px;
  color:#b42318;
  font-size:12px;
  line-height:1.35;
}

.log-status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-weight:850;
}

.log-status::before{
  content:"";
  width:10px;
  height:10px;
  border-radius:999px;
  background:#9ca3af;
}

.log-status.ok::before{
  background:#23bf63;
}

.log-status.bad::before{
  background:#ff3b3b;
}

.log-status.warn::before{
  background:#f59e0b;
}

.profile-log-footer{
  max-width:1400px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:18px 6px 0;
  color:rgba(41,41,41,.62);
  font-size:14px;
  font-weight:700;
}

.log-empty{
  text-align:center;
  color:rgba(41,41,41,.55);
  padding:40px 18px !important;
}

@media(max-width:900px){
  .rebus-topnav{
    height:auto;
    padding:12px 16px;
    align-items:flex-start;
  }

  .rebus-nav-links{
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:16px 22px;
  }

  .rebus-nav-links a,
  .rebus-nav-links button{
    font-size:12px;
  }

  .profile-hero{
    grid-template-columns:1fr;
  }

  .profile-hero-image{
    min-height:360px;
  }

  .profile-panel{
    min-height:560px;
  }

  .profile-line{
    grid-template-columns:1fr;
    gap:8px;
    padding:14px 0;
  }

  .profile-line strong{
    text-align:left;
    white-space:normal;
  }

  .profile-log-jump{
    position:static;
    margin-top:54px;
  }

  .profile-log-heading{
    align-items:flex-start;
    flex-direction:column;
  }

  .profile-log-controls{
    grid-template-columns:1fr;
  }

  .log-date-group{
    grid-template-columns:1fr;
  }

  .profile-log-table{
    min-width:880px;
  }
}


/* === REBUS training page v1 === */
html{
  scroll-behavior:smooth;
}

.rebus-training-page{
  margin:0;
  min-height:100vh;
  background:#e9eef1;
  color:#292929;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  overflow-x:hidden;
}

.training-page-main{
  position:relative;
  width:100%;
  background:#e9eef1;
}

.training-page-bg{
  display:block;
  width:100%;
  height:auto;
  margin:0;
  padding:0;
  user-select:none;
  pointer-events:none;
}

.training-arrow{
  position:absolute;
  z-index:50;
  display:flex;
  align-items:center;
  justify-content:center;
  width:76px;
  height:76px;
  cursor:pointer;
  text-decoration:none;
  transition:transform .22s ease, opacity .22s ease, filter .22s ease;
}

.training-arrow img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  filter:brightness(0);
}

.training-arrow:hover{
  transform:translateY(8px);
  opacity:.78;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.22));
}

.training-arrow-1{
  right:7.8%;
  top:28.5%;
}

.training-arrow-1 img{
  filter:brightness(0);
}

.training-arrow-2{
  right:7.8%;
  top:61.8%;
}

.training-arrow-2 img{
  filter:brightness(0) invert(1);
}

.training-anchor{
  position:absolute;
  left:0;
  width:1px;
  height:1px;
  overflow:hidden;
}

.training-anchor-decrypt{
  top:33.3%;
}

.training-anchor-roles{
  top:66.6%;
}

@media(max-width:900px){
  .training-arrow{
    width:52px;
    height:52px;
    right:5.5%;
  }

  .training-arrow-1{
    top:29.2%;
  }

  .training-arrow-2{
    top:62.5%;
  }
}


/* === REBUS contacts page v1 === */
.rebus-contact-page{
  margin:0;
  min-height:100vh;
  background:#2d2d2d;
  color:#f4f4f4;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  overflow-x:hidden;
}

.contact-page-main{
  min-height:calc(100vh - 52px);
  background:#2d2d2d;
  padding:26px clamp(24px,6vw,88px) 72px;
}

.contact-hero-media{
  width:100%;
  max-width:1420px;
  height:clamp(220px,29vw,430px);
  margin:0 auto 24px;
  overflow:hidden;
  background:#1f1f1f;
}

.contact-hero-media video{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}

.contact-content{
  max-width:1420px;
  margin:0 auto;
  text-align:center;
}

.contact-content h1{
  margin:26px 0 34px;
  color:#f4f4f4;
  font-size:clamp(72px,9vw,146px);
  line-height:.9;
  font-weight:950;
  letter-spacing:-.055em;
}

.contact-box{
  min-height:124px;
  border:1px solid rgba(255,255,255,.72);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(42px,5vw,78px);
  padding:22px 34px;
}

.contact-icon-link{
  width:58px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  transition:transform .22s ease, opacity .22s ease, filter .22s ease;
}

.contact-icon-link img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  filter:brightness(0) invert(1);
}

.contact-icon-link:hover{
  transform:translateY(-6px) scale(1.06);
  opacity:.82;
  filter:drop-shadow(0 0 16px rgba(255,255,255,.28));
}

@media(max-width:760px){
  .contact-page-main{
    padding:18px 18px 54px;
  }

  .contact-content h1{
    margin:26px 0 26px;
    font-size:clamp(58px,18vw,96px);
  }

  .contact-box{
    min-height:108px;
    gap:34px;
  }

  .contact-icon-link{
    width:48px;
    height:48px;
  }
}


/* === REBUS privacy page final overrides === */
.rebus-privacy-page{
  background:radial-gradient(circle at 80% 12%,rgba(255,49,89,.16),transparent 34%),linear-gradient(135deg,#040911,#07111b 46%,#03070c)!important;
}
.privacy-hero{
  min-height:560px!important;
  background:radial-gradient(circle at 78% 50%,rgba(255,49,89,.2),transparent 30%),linear-gradient(115deg,rgba(5,10,17,.98),rgba(8,14,22,.94) 54%,rgba(22,5,11,.9))!important;
}
.privacy-hero-content{grid-template-columns:minmax(0,1fr) minmax(360px,.86fr)!important}
.privacy-shield,.shield-orbit,.shield-body,.shield-lock{display:none!important}
.privacy-shield-image{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;min-height:390px}
.privacy-shield-image img{width:min(38vw,470px);height:auto;display:block;object-fit:contain;filter:drop-shadow(0 0 34px rgba(255,49,89,.35))}
.privacy-icon img,.privacy-bottom-icon img{width:58%;height:58%;display:block;object-fit:contain;filter:brightness(0) saturate(100%) invert(33%) sepia(96%) saturate(2892%) hue-rotate(332deg) brightness(107%) contrast(101%)}
.privacy-icon{border-radius:999px!important;background:radial-gradient(circle,rgba(255,49,89,.18),rgba(255,49,89,.04))!important}
.privacy-bottom-simple{grid-template-columns:minmax(280px,.7fr) minmax(360px,1fr)!important;border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:30px 34px!important;margin-bottom:34px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02))}
.privacy-bottom-simple .privacy-contact,.privacy-bottom-simple .privacy-about{display:grid!important;grid-template-columns:72px 1fr!important}
.privacy-bottom-simple .privacy-about{border-left:1px solid rgba(255,255,255,.12);padding-left:34px}
.privacy-resources{display:none!important}
.privacy-bottom-icon{border-radius:999px!important;background:radial-gradient(circle,rgba(255,49,89,.16),rgba(255,49,89,.035))!important}
.privacy-footer{padding-top:26px!important}
.privacy-footer a[href="support.html"],.privacy-footer a:nth-of-type(2){display:none!important}
@media(max-width:1050px){
  .privacy-hero-content{grid-template-columns:1fr!important}
  .privacy-shield-image{min-height:260px}
  .privacy-shield-image img{width:min(70vw,390px)}
  .privacy-bottom-simple{grid-template-columns:1fr!important}
  .privacy-bottom-simple .privacy-about{border-left:0;border-top:1px solid rgba(255,255,255,.12);padding-left:0;padding-top:28px}
}
@media(max-width:620px){
  .privacy-bottom-simple .privacy-contact,.privacy-bottom-simple .privacy-about{grid-template-columns:1fr!important}
}


/* Oval around login word */
.login-video-page .login-word{
  border:2px solid rgba(255,255,255,.9) !important;
  border-radius:999px !important;
  padding:12px 34px !important;
  backdrop-filter:blur(4px);
  background:rgba(0,0,0,.10);
}
.login-video-page .login-word:hover{
  border-color:#ff2b2b !important;
  box-shadow:0 0 18px rgba(255,43,43,.45);
}

/* === REBUS menu cards: premium hover awakening effect === */
.menu-hover-layer{
  transform:translate3d(0,0,0) scale(1) !important;
  transform-origin:center center !important;
  filter:grayscale(1) saturate(.18) brightness(.92) contrast(1.02) !important;
  transition:
    opacity .46s cubic-bezier(.22,.61,.36,1),
    filter .46s cubic-bezier(.22,.61,.36,1),
    transform .46s cubic-bezier(.22,.61,.36,1) !important;
  will-change:opacity,filter,transform !important;
}

.menu-dim-layer{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  background:rgba(237,241,244,.22) !important;
  opacity:0 !important;
  z-index:3 !important;
  pointer-events:none !important;
  transition:opacity .34s ease !important;
}

.dim-cabinet{clip-path:polygon(38.75% 7.94%, 56.89% 7.94%, 41.51% 90%, 23.36% 90%) !important;}
.dim-learning{clip-path:polygon(58.67% 7.94%, 76.79% 7.94%, 61.42% 90%, 43.27% 90%) !important;}
.dim-contacts{clip-path:polygon(78.72% 7.94%, 96.87% 7.94%, 81.51% 90%, 63.34% 90%) !important;}

.menu-cards-area:has(.menu-hotspot:hover) .menu-cards-base,
.menu-cards-area:has(.menu-hotspot:focus-visible) .menu-cards-base{
  filter:brightness(.96) contrast(.98) !important;
  transition:filter .34s ease !important;
}

.menu-cards-area:has(.hotspot-cabinet:hover) .hover-cabinet,
.menu-cards-area:has(.hotspot-cabinet:focus-visible) .hover-cabinet,
.menu-cards-area:has(.hotspot-learning:hover) .hover-learning,
.menu-cards-area:has(.hotspot-learning:focus-visible) .hover-learning,
.menu-cards-area:has(.hotspot-contacts:hover) .hover-contacts,
.menu-cards-area:has(.hotspot-contacts:focus-visible) .hover-contacts{
  opacity:1 !important;
  transform:translate3d(0,-7px,0) scale(1.018) !important;
  filter:saturate(1.18) brightness(1.05) contrast(1.08)
    drop-shadow(0 14px 24px rgba(0,0,0,.22))
    drop-shadow(0 0 18px rgba(210,58,88,.28)) !important;
}

.menu-cards-area:has(.hotspot-cabinet:hover) .dim-learning,
.menu-cards-area:has(.hotspot-cabinet:hover) .dim-contacts,
.menu-cards-area:has(.hotspot-cabinet:focus-visible) .dim-learning,
.menu-cards-area:has(.hotspot-cabinet:focus-visible) .dim-contacts,
.menu-cards-area:has(.hotspot-learning:hover) .dim-cabinet,
.menu-cards-area:has(.hotspot-learning:hover) .dim-contacts,
.menu-cards-area:has(.hotspot-learning:focus-visible) .dim-cabinet,
.menu-cards-area:has(.hotspot-learning:focus-visible) .dim-contacts,
.menu-cards-area:has(.hotspot-contacts:hover) .dim-cabinet,
.menu-cards-area:has(.hotspot-contacts:hover) .dim-learning,
.menu-cards-area:has(.hotspot-contacts:focus-visible) .dim-cabinet,
.menu-cards-area:has(.hotspot-contacts:focus-visible) .dim-learning{
  opacity:1 !important;
}

@media (prefers-reduced-motion: reduce){
  .menu-hover-layer,
  .menu-dim-layer,
  .menu-cards-base{
    transition:none !important;
  }
  .menu-cards-area:has(.menu-hotspot:hover) .menu-hover-layer,
  .menu-cards-area:has(.menu-hotspot:focus-visible) .menu-hover-layer{
    transform:none !important;
  }
}
