/* =========================================================
   IMPERIO ACCESS EXPERIENCE v3.0
   ========================================================= */

.imperio-access-body{
  margin:0;
  min-height:100vh;
  position:relative;
  overflow-x:hidden;
  background:
    linear-gradient(rgba(3,7,18,.88), rgba(3,7,18,.92)),
    url('../img/imperio-bg.png') center center / cover no-repeat fixed;
  color:#f8fafc;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.imperio-access-body::before{
  content:'';
  position:fixed;
  inset:0;

  background:
    radial-gradient(circle at top left,
    rgba(212,175,55,.18),
    transparent 28%),

    radial-gradient(circle at bottom right,
    rgba(37,99,235,.18),
    transparent 34%);

  pointer-events:none;
  z-index:0;
}

.imperio-access-shell,
.imperio-client-shell{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:32px;
  box-sizing:border-box;
  position:relative;
  z-index:2;
}

.imperio-result-shell{
  width:100%;
  min-height:100vh;
  display:flex;
  justify-content:center;
  align-items:flex-start;
  padding:50px 24px;
  box-sizing:border-box;
  position:relative;
  z-index:2;
}

.imperio-access-shell,
.imperio-client-shell,
.imperio-result-shell,
.imperio-login-v3{
  position:relative;
  z-index:2;
}

.imperio-access-hero {
  position: relative;
  width: min(1080px, 100%);
  min-height: 680px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 34px;
  background:
    linear-gradient(135deg, rgba(15, 23, 42, .96), rgba(15, 23, 42, .72)),
    radial-gradient(circle at 20% 20%, rgba(212,175,55,.20), transparent 35%);
  box-shadow: 0 30px 90px rgba(0,0,0,.42);
  border: 1px solid rgba(255,255,255,.10);
}

.imperio-orb {
  position: absolute;
  width: 360px;
  height: 360px;
  border-radius: 999px;
  filter: blur(18px);
  opacity: .55;
}

.orb-one {
  top: -120px;
  left: -90px;
  background: rgba(212, 175, 55, .18);
}

.orb-two {
  right: -120px;
  bottom: -100px;
  background: rgba(37, 99, 235, .22);
}

.imperio-access-card,
.imperio-client-card,
.imperio-result-card {
  position: relative;
  z-index: 2;
  width: min(760px, 100%);
  border-radius: 30px;
  padding: 38px;
  background: rgba(15, 23, 42, .72);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 28px 70px rgba(0,0,0,.32);
  backdrop-filter: blur(18px);
}

.imperio-brand-center {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-bottom: 32px;
}

.imperio-brand-center.compact {
  justify-content: flex-start;
  margin-bottom: 24px;
}

.imperio-brand-center img {
  width: 62px;
  height: 62px;
  object-fit: contain;
  border-radius: 18px;
  background: rgba(255,255,255,.06);
  padding: 8px;
  border: 1px solid rgba(255,255,255,.10);
}

.imperio-brand-center h1 {
  margin: 0;
  font-size: 28px;
  letter-spacing: -0.04em;
}

.imperio-brand-center p {
  margin: 2px 0 0;
  color: #cbd5e1;
}

.imperio-access-title {
  text-align: center;
  margin-bottom: 28px;
}

.imperio-access-title span,
.login-card-title span {
  display: inline-flex;
  color: #facc15;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.imperio-access-title h2,
.imperio-client-intro h2,
.login-card-title h2 {
  margin: 0;
  font-size: clamp(30px, 5vw, 52px);
  letter-spacing: -0.06em;
  line-height: 1;
}

.imperio-access-title p,
.imperio-client-intro p,
.login-card-title p {
  color: #cbd5e1;
  margin: 14px auto 0;
  max-width: 560px;
  line-height: 1.55;
}

.imperio-access-options {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.imperio-access-option {
  text-decoration: none;
  color: #f8fafc;
  padding: 24px;
  border-radius: 24px;
  display: flex;
  gap: 16px;
  min-height: 140px;
  align-items: flex-start;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}

.imperio-access-option:hover {
  transform: translateY(-4px);
  background: rgba(255,255,255,.10);
  border-color: rgba(250, 204, 21, .55);
}

.imperio-access-option .option-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: rgba(250, 204, 21, .13);
  font-size: 23px;
}

.imperio-access-option strong {
  display: block;
  font-size: 22px;
  margin-bottom: 8px;
}

.imperio-access-option span {
  color: #cbd5e1;
  line-height: 1.45;
}

.imperio-access-footer,
.imperio-client-note,
.login-security-note {
  margin-top: 26px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.10);
  color: #94a3b8;
  font-size: 14px;
  text-align: center;
}

/* Cliente */

.imperio-client-card {
  max-width: 620px;
}

.imperio-back-link {
  color: #facc15;
  text-decoration: none;
  display: inline-flex;
  margin-bottom: 20px;
  font-weight: 700;
}

.imperio-back-link.light {
  color: #fde68a;
}

.imperio-client-intro h2 {
  font-size: clamp(28px, 4vw, 42px);
}

.imperio-client-form {
  margin-top: 26px;
  display: grid;
  gap: 14px;
}

.imperio-client-form label,
.login-form-v3 label {
  color: #cbd5e1;
  font-size: 14px;
  font-weight: 700;
}

.imperio-client-form input,
.login-form-v3 input {
  width: 100%;
  box-sizing: border-box;
  padding: 17px 18px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.16);
  outline: none;
  background: rgba(255,255,255,.08);
  color: #f8fafc;
  font-size: 18px;
}

.imperio-client-form input:focus,
.login-form-v3 input:focus {
  border-color: rgba(250, 204, 21, .70);
  box-shadow: 0 0 0 4px rgba(250, 204, 21, .12);
}

.imperio-client-form button,
.login-form-v3 button {
  margin-top: 8px;
  border: 0;
  border-radius: 18px;
  padding: 17px 22px;
  cursor: pointer;
  color: #111827;
  background: linear-gradient(135deg, #facc15, #d4af37);
  font-weight: 900;
  font-size: 16px;
  box-shadow: 0 18px 40px rgba(212, 175, 55, .22);
}

/* Resultado cliente */

.imperio-result-card {
  width: min(1040px, 100%);
}

.imperio-result-top {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}

.imperio-result-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  margin-bottom: 26px;
}

.imperio-result-header span {
  color: #facc15;
  font-weight: 800;
}

.imperio-result-header h1 {
  margin: 4px 0;
  font-size: clamp(30px, 5vw, 48px);
  letter-spacing: -0.05em;
}

.imperio-result-header p {
  color: #cbd5e1;
  margin: 0;
}

.imperio-result-header img {
  width: 74px;
  height: 74px;
  object-fit: contain;
}

.imperio-credit-list {
  display: grid;
  gap: 18px;
}

.imperio-credit-card {
  padding: 24px;
  border-radius: 26px;
  background: rgba(255,255,255,.065);
  border: 1px solid rgba(255,255,255,.12);
}

.imperio-credit-card.credit-ok {
  border-color: rgba(34, 197, 94, .35);
}

.imperio-credit-card.credit-danger {
  border-color: rgba(239, 68, 68, .45);
}

.credit-card-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  margin-bottom: 16px;
}

.credit-card-head span {
  color: #94a3b8;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
}

.credit-card-head h2 {
  margin: 4px 0 0;
  font-size: 28px;
}

.credit-badge {
  padding: 9px 14px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 900;
}

.credit-badge.ok {
  background: rgba(34, 197, 94, .15);
  color: #86efac;
  border: 1px solid rgba(34, 197, 94, .35);
}

.credit-badge.danger {
  background: rgba(239, 68, 68, .16);
  color: #fca5a5;
  border: 1px solid rgba(239, 68, 68, .35);
}

.credit-message {
  padding: 14px 16px;
  border-radius: 18px;
  margin-bottom: 18px;
  line-height: 1.45;
}

.credit-message.ok {
  background: rgba(34, 197, 94, .12);
  border: 1px solid rgba(34, 197, 94, .24);
  color: #dcfce7;
}

.credit-message.danger {
  background: rgba(239, 68, 68, .13);
  border: 1px solid rgba(239, 68, 68, .24);
  color: #fee2e2;
}

.credit-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.credit-kpi-grid div {
  padding: 16px;
  border-radius: 18px;
  background: rgba(15, 23, 42, .62);
  border: 1px solid rgba(255,255,255,.08);
}

.credit-kpi-grid span,
.credit-next-box span {
  display: block;
  color: #94a3b8;
  font-size: 13px;
  margin-bottom: 6px;
}

.credit-kpi-grid strong {
  font-size: 22px;
}

.credit-next-box {
  margin-top: 14px;
  padding: 18px;
  border-radius: 20px;
  background: rgba(250, 204, 21, .10);
  border: 1px solid rgba(250, 204, 21, .22);
}

.credit-next-box strong {
  font-size: 22px;
}

.credit-next-box small {
  display: block;
  margin-top: 6px;
  color: #cbd5e1;
}

.credit-meta {
  margin-top: 14px;
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  color: #94a3b8;
  font-size: 13px;
}

.imperio-empty-state {
  text-align: center;
  padding: 54px 20px;
}

.empty-icon {
  font-size: 54px;
  margin-bottom: 16px;
}

.imperio-alert {
  padding: 14px 16px;
  border-radius: 16px;
  margin: 14px 0;
}

.imperio-alert.danger {
  background: rgba(239, 68, 68, .14);
  border: 1px solid rgba(239, 68, 68, .30);
  color: #fecaca;
}

/* Login funcionario */

.imperio-login-v3 {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 1.08fr .92fr;
}

.login-visual {
  position: relative;
  padding: 34px;
  display: flex;
  align-items: center;
  background:
    linear-gradient(135deg, rgba(15, 23, 42, .96), rgba(15, 23, 42, .70)),
    radial-gradient(circle at 20% 20%, rgba(212,175,55,.25), transparent 34%),
    radial-gradient(circle at 80% 80%, rgba(37,99,235,.20), transparent 36%);
  border-right: 1px solid rgba(255,255,255,.10);
}

.login-visual-content {
  max-width: 620px;
}

.login-visual-content img {
  width: 78px;
  height: 78px;
  object-fit: contain;
  margin-bottom: 22px;
}

.login-visual-content h1 {
  margin: 0;
  font-size: clamp(44px, 6vw, 78px);
  letter-spacing: -0.07em;
  line-height: .95;
}

.login-visual-content p {
  color: #cbd5e1;
  font-size: 18px;
  line-height: 1.55;
  max-width: 520px;
}

.login-visual-stats {
  margin-top: 34px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.login-visual-stats div {
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.10);
}

.login-visual-stats strong {
  display: block;
  color: #facc15;
  font-size: 28px;
}

.login-visual-stats span {
  color: #cbd5e1;
  font-size: 13px;
}

.login-panel {
  display: grid;
  place-items: center;
  padding: 32px;
}

.login-card-v3 {
  width: min(460px, 100%);
  padding: 34px;
  border-radius: 30px;
  background: rgba(15, 23, 42, .74);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 28px 70px rgba(0,0,0,.30);
  backdrop-filter: blur(18px);
}

.login-card-title h2 {
  font-size: 42px;
}

.login-form-v3 {
  margin-top: 26px;
  display: grid;
  gap: 16px;
}

/* Responsive */

@media (max-width: 900px) {
  .imperio-access-options,
  .credit-kpi-grid,
  .login-visual-stats {
    grid-template-columns: 1fr;
  }

  .imperio-login-v3 {
    grid-template-columns: 1fr;
  }

  .login-visual {
    min-height: 420px;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.10);
  }

  .imperio-result-header {
    align-items: flex-start;
  }
}

@media (max-width: 640px) {
  .imperio-access-shell,
  .imperio-client-shell,
  .imperio-result-shell,
  .login-panel {
    padding: 16px;
  }

  .imperio-access-card,
  .imperio-client-card,
  .imperio-result-card,
  .login-card-v3 {
    padding: 24px;
    border-radius: 24px;
  }

  .imperio-access-hero {
    border-radius: 24px;
    min-height: auto;
    padding: 18px;
  }

  .credit-card-head,
  .imperio-result-header,
  .imperio-result-top {
    flex-direction: column;
  }
}

/* =========================================================
   RESULTADO CLIENTE FIX
   ========================================================= */

.imperio-result-shell{
  width:100%;
  min-height:100vh;
  display:flex;
  justify-content:center;
  align-items:flex-start;
  padding:50px 24px;
  box-sizing:border-box;
}

.imperio-result-card{
  width:min(1180px,100%);
  border-radius:34px;
  padding:42px;
  background:rgba(8,15,30,.78);
  border:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(18px);
  box-shadow:0 30px 90px rgba(0,0,0,.45);
}

.imperio-result-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:30px;
}

.imperio-result-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:30px;
  margin-bottom:34px;
}

.imperio-result-header img{
  width:170px;
  height:auto;
  object-fit:contain;
  opacity:.96;
}

.imperio-result-header span{
  display:block;
  color:#facc15;
  font-weight:800;
  margin-bottom:10px;
}

.imperio-result-header h1{
  margin:0;
  font-size:clamp(42px,5vw,70px);
  line-height:1;
  letter-spacing:-.06em;
}

.imperio-result-header p{
  margin-top:16px;
  color:#cbd5e1;
  font-size:20px;
  line-height:1.5;
  max-width:720px;
}

.imperio-credit-list{
  display:grid;
  gap:24px;
}

.imperio-credit-card{
  padding:30px;
  border-radius:30px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

.credit-card-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:24px;
  margin-bottom:22px;
}

.credit-card-head span{
  color:#94a3b8;
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
}

.credit-card-head h2{
  margin:8px 0 0;
  font-size:42px;
  line-height:1;
}

.credit-badge{
  padding:12px 18px;
  border-radius:999px;
  font-size:14px;
  font-weight:900;
}

.credit-badge.ok{
  background:rgba(34,197,94,.15);
  color:#bbf7d0;
  border:1px solid rgba(34,197,94,.30);
}

.credit-badge.danger{
  background:rgba(239,68,68,.14);
  color:#fecaca;
  border:1px solid rgba(239,68,68,.30);
}

.credit-message{
  padding:18px 20px;
  border-radius:20px;
  margin-bottom:24px;
  line-height:1.6;
  font-size:16px;
}

.credit-message.ok{
  background:rgba(34,197,94,.10);
  border:1px solid rgba(34,197,94,.22);
  color:#dcfce7;
}

.credit-message.danger{
  background:rgba(239,68,68,.10);
  border:1px solid rgba(239,68,68,.22);
  color:#fee2e2;
}

.credit-kpi-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-bottom:24px;
}

.credit-kpi-grid div{
  padding:20px;
  border-radius:22px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

.credit-kpi-grid span{
  display:block;
  color:#94a3b8;
  font-size:13px;
  margin-bottom:10px;
}

.credit-kpi-grid strong{
  font-size:30px;
  line-height:1;
}

.credit-next-box{
  padding:24px;
  border-radius:24px;
  background:rgba(250,204,21,.08);
  border:1px solid rgba(250,204,21,.18);
}

.credit-next-box span{
  display:block;
  color:#fde68a;
  margin-bottom:12px;
  font-weight:700;
}

.credit-next-box strong{
  display:block;
  font-size:30px;
  line-height:1.2;
}

.credit-next-box small{
  display:block;
  margin-top:10px;
  color:#cbd5e1;
  font-size:15px;
}

.credit-meta{
  margin-top:22px;
  display:flex;
  justify-content:space-between;
  gap:18px;
  color:#94a3b8;
  font-size:14px;
}

/* MOBILE */

@media(max-width:900px){

  .imperio-result-header{
    flex-direction:column;
    align-items:flex-start;
  }

  .credit-kpi-grid{
    grid-template-columns:1fr 1fr;
  }

  .credit-meta{
    flex-direction:column;
  }

  .login-visual-content{
  padding:0;
}

.login-visual-content img{
  width:230px;
}

.login-visual-content h1{
  font-size:52px;
}


}

@media(max-width:640px){

  .imperio-result-card{
    padding:24px;
    border-radius:24px;
  }

  .credit-kpi-grid{
    grid-template-columns:1fr;
  }

  .credit-card-head{
    flex-direction:column;
  }

  .imperio-result-header h1{
    font-size:44px;
  }

  .credit-card-head h2{
    font-size:34px;
  }

  .credit-next-box strong{
    font-size:24px;
  }
}

/* =========================================================
   LANDING HOME PREMIUM FIX
   ========================================================= */

.access-home{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:32px;
  box-sizing:border-box;
  position:relative;
  z-index:2;
}

.access-home-card{
  width:min(820px,100%);
  padding:44px;
  border-radius:34px;
  background:rgba(8,15,30,.82);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 34px 100px rgba(0,0,0,.48);
  backdrop-filter:blur(18px);
}

.access-home-brand{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  margin-bottom:34px;
}

.access-home-brand img{
  width:120px;
  height:auto;
  object-fit:contain;
  padding:14px;
  border-radius:22px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
}

.access-home-brand h1{
  margin:0;
  color:#fff;
  font-size:44px;
  letter-spacing:-.06em;
  line-height:1;
}

.access-home-brand p{
  margin:6px 0 0;
  color:#cbd5e1;
  font-size:18px;
}

.access-home-title{
  text-align:center;
}

.access-home-title span{
  display:inline-block;
  color:#facc15;
  font-size:13px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:18px;
}

.access-home-title h2{
  margin:0;
  color:#fff;
  font-size:clamp(38px,5vw,58px);
  letter-spacing:-.07em;
  line-height:1;
}

.access-home-title p{
  margin:18px auto 0;
  color:#cbd5e1;
  max-width:620px;
  font-size:17px;
  line-height:1.55;
}

.access-home-options{
  margin-top:34px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.access-home-option{
  min-height:150px;
  padding:26px;
  border-radius:26px;
  display:flex;
  align-items:flex-start;
  gap:18px;
  text-decoration:none;
  color:#fff;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  transition:.22s ease;
}

.access-home-option:hover{
  transform:translateY(-5px);
  background:rgba(255,255,255,.11);
  border-color:rgba(250,204,21,.55);
  box-shadow:0 24px 50px rgba(0,0,0,.28);
}

.access-icon{
  width:54px;
  height:54px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(250,204,21,.14);
  font-size:26px;
  flex:none;
}

.access-home-option strong{
  display:block;
  font-size:25px;
  margin-bottom:10px;
}

.access-home-option small{
  display:block;
  color:#cbd5e1;
  font-size:16px;
  line-height:1.45;
}

.access-home-footer{
  margin-top:32px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.10);
  color:#94a3b8;
  text-align:center;
  font-size:14px;
}

@media(max-width:720px){
  .access-home{
    padding:18px;
  }

  .access-home-card{
    padding:28px;
    border-radius:26px;
  }

  .access-home-brand{
    flex-direction:column;
    text-align:center;
  }

  .access-home-options{
    grid-template-columns:1fr;
  }

  .access-home-title h2{
    font-size:38px;
  }
}

.login-visual-content{
  width:min(760px,100%);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  padding:0 70px;
  box-sizing:border-box;
}

.login-visual-content img{
  width:300px;
  max-width:100%;
  height:auto;
  margin-bottom:44px;
  object-fit:contain;

  filter:
    drop-shadow(0 12px 40px rgba(212,175,55,.18))
    drop-shadow(0 2px 12px rgba(0,0,0,.40));

  transition:.25s ease;
}

.login-visual-content h1{
  font-size:72px;
  line-height:.92;
  letter-spacing:-.08em;
  margin:0 0 20px;
  text-align:left;
}

.login-visual-content p{
  font-size:20px;
  max-width:620px;
  line-height:1.65;
  text-align:left;
  color:#d6dbe7;
}

.login-visual-stats{
  margin-top:46px;
  width:100%;
  max-width:720px;

  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.login-visual .imperio-back-link{
  position:absolute;
  top:34px;
  left:34px;

  display:flex;
  align-items:left;
  gap:8px;

  padding:12px 18px;
  border-radius:14px;

  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);

  color:#facc15;
  font-weight:800;
  text-decoration:none;

  backdrop-filter:blur(10px);

  transition:.22s ease;
}

.login-visual .imperio-back-link:hover{
  background:rgba(250,204,21,.12);
  border-color:rgba(250,204,21,.35);

  transform:translateY(-2px);
}

/* =========================================================
   LOGIN DESKTOP BALANCE FIX
   ========================================================= */

@media (min-width: 1200px){

  .imperio-login-v3{
    grid-template-columns: 55% 45%;
  }

  .login-visual{
    justify-content:center;
    padding:0;
  }

  .login-visual-content{
    width:min(640px,78%);
    margin:0 auto;
    padding:0;
    transform:translateY(-10px);
  }

  .login-visual-content img{
    width:300px;
    margin-bottom:44px;
  }

  .login-visual-content h1{
    font-size:68px;
    max-width:520px;
    margin-left:auto;
    margin-right:auto;
  }

  .login-visual-content p{
    max-width:520px;
    margin-left:auto;
    margin-right:auto;
  }

  .login-visual-stats{
    max-width:540px;
    margin-left:auto;
    margin-right:auto;
    grid-template-columns:repeat(3,1fr);
  }

  .login-panel{
    justify-content:center;
    padding:0 70px 0 30px;
  }

  .login-card-v3{
    width:min(460px,100%);
    transform:translateX(-12px);
  }
}

@media (min-width: 1600px){

  .imperio-login-v3{
    grid-template-columns: 52% 48%;
  }

  .login-visual-content{
    width:620px;
    transform:translateY(-8px);
  }

  .login-panel{
    padding-right:140px;
  }

  .login-card-v3{
    transform:translateX(-20px);
  }
}

/* =========================================================
   LOGIN FINAL DESKTOP PREMIUM FIX
   ========================================================= */

@media (min-width: 1100px){

  .imperio-login-v3{
    min-height:100vh;
    display:grid;
    grid-template-columns: 50% 50%;
  }

  .login-visual{
    min-height:100vh;
    padding:0;
    display:flex;
    align-items:center;
    justify-content:center;
  }

  .login-visual-content{
    width:min(560px,82%);
    padding:0;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    transform:translateY(-8px);
  }

  .login-visual-content img{
    width:340px !important;
    height:auto !important;
    max-width:100%;
    margin:0 auto 44px !important;
    object-fit:contain;
    display:block;
  }

  .login-visual-content h1{
    width:100%;
    max-width:560px;
    margin:0 auto 22px;
    font-size:68px;
    line-height:.92;
    letter-spacing:-.08em;
    text-align:center;
  }

  .login-visual-content p{
    max-width:520px;
    margin:0 auto;
    font-size:20px;
    line-height:1.65;
    text-align:center;
    color:#d6dbe7;
  }

  .login-visual-stats{
    width:100%;
    max-width:540px;
    margin:46px auto 0;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
  }

  .login-visual .imperio-back-link{
    position:absolute;
    top:34px;
    left:34px;
    transform:none;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:12px 18px;
    border-radius:14px;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.08);
    color:#facc15;
    font-weight:900;
    text-decoration:none;
    backdrop-filter:blur(10px);
  }

  .login-panel{
    min-height:100vh;
    padding:0;
    display:flex;
    align-items:center;
    justify-content:center;
  }

  .login-card-v3{
    width:460px;
    max-width:88%;
    transform:none;
  }
}

@media (min-width: 1600px){

  .login-visual-content{
    width:620px;
  }

  .login-visual-content img{
    width:390px !important;
  }

  .login-visual-content h1{
    font-size:74px;
  }

  .login-card-v3{
    width:480px;
  }
}

/* =========================================================
   CONSULTA CLIENTE HEADER FINAL FIX
   ========================================================= */

.imperio-client-card .imperio-brand-center.compact{
  justify-content:flex-start;
  align-items:center;
  gap:22px;
  margin-bottom:34px;
}

.imperio-client-card .imperio-brand-center.compact img{
  width:150px !important;
  height:auto !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
  object-fit:contain !important;

  filter:
    drop-shadow(0 12px 34px rgba(212,175,55,.18))
    drop-shadow(0 2px 12px rgba(0,0,0,.40));
}

.imperio-client-card .imperio-brand-center.compact h1{
  margin:0;
  font-size:34px;
  line-height:1;
  letter-spacing:-.05em;
  text-align:left;
}

.imperio-client-card .imperio-brand-center.compact p{
  margin:8px 0 0;
  color:#cbd5e1;
  font-size:20px;
  text-align:left;
}

.imperio-client-intro{
  text-align:left;
}

.imperio-client-intro h2{
  text-align:left;
  font-size:54px;
  line-height:.95;
  letter-spacing:-.07em;
  margin:0 0 22px;
}

.imperio-client-intro p{
  margin:0 0 32px !important;
  max-width:620px;
  text-align:left !important;
  font-size:20px;
  line-height:1.65;
  color:#d6dbe7;
}

.imperio-client-card{
  width:min(820px,100%) !important;
  max-width:820px !important;
  padding:46px !important;
}

/* =========================================================
   CONSULTA CLIENTE COMPOSITION FIX
   ========================================================= */

.imperio-client-shell{
  position:relative;
}

.imperio-client-shell .imperio-back-link{
  position:fixed;
  top:34px;
  left:34px;

  display:flex;
  align-items:center;
  gap:8px;

  padding:12px 18px;
  border-radius:14px;

  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);

  color:#facc15;
  font-weight:800;
  text-decoration:none;

  backdrop-filter:blur(10px);
  z-index:999;

  transition:.22s ease;
}

.imperio-client-shell .imperio-back-link:hover{
  background:rgba(250,204,21,.12);
  border-color:rgba(250,204,21,.35);
  transform:translateY(-2px);
}

/* CARD */

.imperio-client-card{
  width:min(720px,100%) !important;
  max-width:720px !important;

  padding:54px !important;
}

/* HEADER */

.imperio-client-card .imperio-brand-center.compact{
  margin-bottom:42px;
}

/* TITULO */

.imperio-client-intro h2{
  max-width:700px;
  font-size:64px;
  line-height:.92;
}

/* DESCRIPCION */

.imperio-client-intro p{
  max-width:560px !important;
}

/* FORMULARIO */

.imperio-client-card form{
  width:100%;
  max-width:620px;
}

.imperio-client-card input{
  height:74px;
  font-size:20px;
  padding:0 24px;
}

.imperio-client-card button{
  height:74px;
  font-size:22px;
  font-weight:800;
}

/* FOOTER */

.imperio-client-card .secure-note{
  margin-top:34px;
  text-align:center;
}

/* =========================================================
   CONSULTA CLIENTE FINAL LAYOUT
   ========================================================= */

.imperio-client-shell .imperio-back-link{
  position:static !important;
  top:auto !important;
  left:auto !important;

  width:max-content;
  margin:18px auto 0;
  display:flex;
  justify-content:center;
  align-items:center;

  padding:12px 22px;
  border-radius:14px;
}

.imperio-client-card{
  width:min(760px,100%) !important;
  max-width:760px !important;
  padding:46px 54px !important;
}

.imperio-client-card .imperio-brand-center.compact{
  justify-content:center;
  gap:22px;
  margin-bottom:34px;
}

.imperio-client-card .imperio-brand-center.compact img{
  width:135px !important;
}

.imperio-client-intro h2{
  max-width:620px;
  font-size:54px !important;
  line-height:.96;
  margin:0 0 22px;
}

.imperio-client-intro p{
  max-width:600px !important;
  margin:0 0 30px !important;
}

.imperio-client-form{
  max-width:620px;
  margin:0 auto;
}

.imperio-client-form input{
  height:64px;
}

.imperio-client-form button{
  height:64px;
  margin-top:18px;
}

.imperio-client-note{
  max-width:620px;
  margin:24px auto 0 !important;
  text-align:center;
}

/* =========================================================
   CONSULTA CLIENTE PREMIUM REBALANCE
   ========================================================= */

.imperio-client-card{
  width:min(680px,100%) !important;
  max-width:680px !important;
  padding:42px 48px !important;
  display:flex;
  flex-direction:column;
  align-items:center;
}

.imperio-client-card .imperio-brand-center.compact{
  width:100%;
  justify-content:center;
  align-items:center;
  gap:18px;
  margin-bottom:30px;
}

.imperio-client-card .imperio-brand-center.compact img{
  width:118px !important;
}

.imperio-client-card .imperio-brand-center.compact h1{
  font-size:34px !important;
  text-align:left;
}

.imperio-client-card .imperio-brand-center.compact p{
  font-size:19px !important;
  text-align:left;
}

.imperio-client-intro{
  width:100%;
  text-align:center;
}

.imperio-client-intro h2{
  max-width:580px;
  margin:0 auto 18px !important;
  font-size:48px !important;
  line-height:1 !important;
  letter-spacing:-.065em;
  text-align:center !important;
}

.imperio-client-intro p{
  max-width:520px !important;
  margin:0 auto 30px !important;
  font-size:18px !important;
  line-height:1.55 !important;
  text-align:center !important;
  color:#d6dbe7;
}

.imperio-client-form{
  width:100%;
  max-width:540px !important;
  margin:0 auto !important;
}

.imperio-client-form label{
  display:block;
  text-align:left;
  margin-bottom:10px;
  font-size:15px;
}

.imperio-client-form input{
  width:100%;
  height:62px !important;
  font-size:19px !important;
  padding:0 22px !important;
}

.imperio-client-form button{
  width:100%;
  height:62px !important;
  margin-top:18px !important;
  font-size:19px !important;
}

.imperio-client-shell .imperio-back-link{
  margin:18px auto 0 !important;
}

.imperio-client-note{
  width:100%;
  max-width:540px !important;
  margin:26px auto 0 !important;
  padding-top:22px;
  text-align:center !important;
  font-size:15px;
}

/* =========================================================
   CONSULTA CLIENTE LOGO ONLY
   ========================================================= */

.imperio-brand-center.logo-only{
  width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  margin-bottom:34px;
}

.imperio-brand-center.logo-only img{
  width:190px !important;
  max-width:100%;
  height:auto;
  object-fit:contain;

  filter:
    drop-shadow(0 14px 38px rgba(212,175,55,.18))
    drop-shadow(0 2px 12px rgba(0,0,0,.40));
}


