.card{
  transition:all .25s cubic-bezier(.2,.8,.3,1);
}

.card:hover{
  transform:translateY(-6px);
  box-shadow:0 12px 30px rgba(47,127,240,.25);
  border-color:#2f7ff0;
}

.card:hover .icon-circle{
  background:#2f7ff0;
  color:#fff;
  transform:scale(1.1) rotate(-6deg);
  transition:all .25s ease;
}

.card:hover h3{
  color:#0a2f6b;
}

.card:hover .apply-link{
  color:#2f7ff0;
}

.card:hover .apply-link svg{
  transform:translateX(4px);
}

.service-card{
  position:relative;
  overflow:hidden;
  transition:all .25s cubic-bezier(.2,.8,.3,1) !important;
}

.service-card:hover{
  transform:translateY(-6px) !important;
  box-shadow:0 12px 30px rgba(47,127,240,.25) !important;
  border-color:#2f7ff0 !important;
}

.service-card:hover .icon{
  background:#2f7ff0 !important;
  color:#fff !important;
  transform:scale(1.1) rotate(-6deg);
  transition:all .25s ease;
}

.service-card:hover .service-title{
  color:#0a2f6b !important;
}

.service-card::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:3px;
  background:linear-gradient(90deg,#2f7ff0,#0a2f6b);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .3s;
}

.service-card:hover::before{
  transform:scaleX(1);
}

.btn-track .badge{width:8px;height:8px;border-radius:50%;background:#22c55e;animation:b 1.3s infinite;display:inline-block}
@keyframes b{0%{box-shadow:0 0 0 0 #22c55e8c}70%{box-shadow:0 0 0 7px #22c55e00}}
.btn-login{position:relative;overflow:hidden;isolation:isolate}
.btn-login::before{content:'';position:absolute;inset:0;padding:1.5px;border-radius:10px;background:conic-gradient(#2f7ff0,transparent 35%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;animation:s 2.2s linear infinite;z-index:2;pointer-events:none}
.btn-login:hover::before{opacity:1}
@keyframes s{to{transform:rotate(360deg)}}
.btn-primary{animation:p 2.2s ease-in-out infinite}
@keyframes p{0%,100%{box-shadow:0 0 0 0 #2f7ff066}50%{box-shadow:0 0 0 9px #2f7ff000}}

.hero-main,.carousel-slide{background:linear-gradient(135deg,#eaf3ff,#dceaff);color:#0a2f6b}
.hero-main p,.carousel-slide p{color:#5c6672}
.btn-primary{background:#2f7ff0;color:#fff}
.btn-primary:hover{background:#1257b3}
.carousel-dot.active{background:#2f7ff0}

:root{--primary:#00579c;--primary-dark:#003b6f;--light-blue:#e8f4fd;--sky:#d4ecfb;--accent-orange:#f7941e;--text:#1a1a1a;--muted:#5a5a5a;--white:#ffffff}
body{background:#fff;color:#1a1a1a}
.util-strip{background:var(--primary-dark);color:#cfe6f9}
.site-nav{background:#fff;border-bottom:3px solid var(--accent-orange)}
.brand h1{color:var(--primary-dark)}
.hero-main,.carousel-slide{background:linear-gradient(135deg,var(--light-blue),var(--sky));color:var(--primary-dark)}
.hero-main p,.carousel-slide p{color:var(--muted)}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-dark)}
.btn-outline{border-color:var(--primary);color:var(--primary)}
.tab.active{background:var(--primary);color:#fff}
.card:hover{border-color:var(--primary);box-shadow:0 8px 20px rgba(0,87,156,.15)}
.icon-circle{background:var(--light-blue);color:var(--primary)}
.card:hover .icon-circle{background:var(--primary);color:#fff}
.tag{background:var(--accent-orange)}
.carousel-dot.active{background:var(--primary)}
.helpline{background:var(--primary-dark)}
footer{background:var(--primary-dark)}

:root{--cream:#faf3dc;--navy:#0d2c5c;--navy2:#144a86;--teal:#1c8fc0;--foot1:#16305c;--foot2:#2c5f96}
.util-strip{background:var(--navy);color:#cfe6f9}
.site-nav{background:var(--cream)}
.brand h1,.nav-links a{color:var(--navy)}
.tabs{background:linear-gradient(90deg,var(--navy),var(--navy2),var(--teal));color:#fff}
.tab.active{background:rgba(255,255,255,.2);border-bottom:3px solid #fff}
.hero-main,.carousel-slide{background:linear-gradient(90deg,var(--navy),var(--teal));color:#fff}
.hero-main p{color:#dceaf7}
.btn-primary{background:#fff;color:var(--navy)}
.icon-circle{background:#e8f4fd;color:var(--navy)}
.card:hover .icon-circle{background:var(--teal);color:#fff}
.helpline,footer{background:linear-gradient(135deg,var(--foot1),var(--foot2));color:#fff}

/* UIDAI palette mapped to actual classes in current templates */
:root{--cream:#faf3dc;--navy:#0d2c5c;--navy2:#144a86;--teal:#1c8fc0;--foot1:#16305c;--foot2:#2c5f96}

.utility-bar{background:var(--navy) !important;color:#cfe6f9 !important}
.utility-label,.utility-control{color:#cfe6f9 !important}

.site-header,.eo-navbar{background:var(--cream) !important}
.logo,.eo-logo,.main-nav a,.eo-nav-link{color:var(--navy) !important}

.category-tabs{background:linear-gradient(90deg,var(--navy),var(--navy2),var(--teal)) !important;color:#fff !important;padding:6px;border-radius:8px}
.tab-btn.active,.category-tabs .tab-btn.active{background:rgba(255,255,255,.2) !important;border-bottom:3px solid #fff !important;color:#fff !important}

.hero,.slide,.slide-active{background:linear-gradient(90deg,var(--navy),var(--teal)) !important;color:#fff !important}
.hero p,.slide-content p{color:#dceaf7 !important}

.btn-primary,.btn.btn-primary,.eo-pill-primary{background:#fff !important;color:var(--navy) !important;border-color:#fff !important}
.btn-primary:hover,.btn.btn-primary:hover,.eo-pill-primary:hover{background:#f3f7ff !important;color:var(--navy) !important}

.service-card .icon,.icon{background:#e8f4fd !important;color:var(--navy) !important}
.service-card:hover .icon,.card:hover .icon-circle{background:var(--teal) !important;color:#fff !important}

.dot-active,.news-tag{background:var(--teal) !important}

.site-footer,.eo-footer{background:linear-gradient(135deg,var(--foot1),var(--foot2)) !important;color:#fff !important}
.site-footer p,.site-footer a,.eo-footer p,.eo-footer a{color:#dceaf7 !important}

/* Theme upgrade: light blue palette and animated interactions */
:root{
  --theme-bg:#e8f4fd;
  --theme-primary:#00579c;
  --theme-accent:#f7941e;
  --submit-green-1:#1a9f6b;
  --submit-green-2:#128456;
  --theme-shadow:rgba(0,87,156,.18);
  --theme-shadow-strong:rgba(0,87,156,.2);
}

body,
body.eo-body{
  background:var(--theme-bg) !important;
  color:#1a1a1a;
}

.eo-form-card,
.eo-service-card,
.service-card,
.news-card,
.card{
  border-radius:12px !important;
  box-shadow:0 8px 24px var(--theme-shadow) !important;
}

.eo-form-card{
  animation:popIn .5s cubic-bezier(.2,.9,.3,1.3);
}

@keyframes popIn{
  from{opacity:0;transform:translateY(22px) scale(.96)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

.eo-form-card .form-control,
.eo-form-card .form-select,
.eo-form-card input[type="file"]{
  border-radius:10px !important;
}

.eo-form-card .form-control:focus,
.eo-form-card .form-select:focus,
.eo-form-card input[type="file"]:focus{
  border-color:var(--theme-primary) !important;
  animation:focusPulse .5s ease;
  box-shadow:0 0 0 .25rem rgba(0,87,156,.2) !important;
}

@keyframes focusPulse{
  0%{box-shadow:0 0 0 0 rgba(0,87,156,.25)}
  100%{box-shadow:0 0 0 .25rem rgba(0,87,156,.15)}
}

.eo-form-card input[type="file"]{
  width:100%;
  border:2px dashed #dfe6f2 !important;
  background:#fff;
  padding:.8rem;
}

.eo-form-card input[type="file"]:hover,
.eo-form-card input[type="file"]:focus{
  border-style:solid !important;
  border-color:var(--theme-primary) !important;
  background:var(--theme-bg) !important;
}

.eo-submit-btn{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,var(--submit-green-1),var(--submit-green-2)) !important;
  border-radius:10px !important;
  box-shadow:0 0 0 0 rgba(26,159,107,.45);
  animation:submitGlow 2.2s ease-in-out infinite;
  transition:transform .2s ease, box-shadow .2s ease;
}

@keyframes submitGlow{
  0%,100%{box-shadow:0 0 0 0 rgba(26,159,107,.4)}
  50%{box-shadow:0 0 0 10px rgba(26,159,107,0)}
}

.eo-submit-btn:hover{
  animation-play-state:paused;
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(18,132,86,.28) !important;
}

.eo-service-card{
  position:relative;
  overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease;
}

.eo-service-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:4px;
  background:var(--theme-accent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .25s ease;
}

.eo-service-card:hover{
  transform:translateY(-8px);
  box-shadow:0 16px 32px rgba(247,148,30,.25) !important;
}

.eo-service-card:hover::before{
  transform:scaleX(1);
}

.eo-service-card:hover .eo-service-title{
  color:#e67700 !important;
}

.eo-apply-btn,
.btn-primary,
.btn.btn-primary,
.eo-pill-primary{
  position:relative;
  overflow:hidden;
  border-radius:10px !important;
  transition:transform .2s ease, background .2s ease, color .2s ease;
}

.eo-apply-btn{
  background:var(--theme-primary) !important;
  color:#fff !important;
}

.eo-apply-btn:hover{
  background:var(--theme-accent) !important;
  color:#fff !important;
  transform:translateY(-2px);
}

.ripple{
  position:absolute;
  border-radius:50%;
  background:rgba(255,255,255,.45);
  transform:scale(0);
  animation:rippleEffect .6s linear;
  pointer-events:none;
}

@keyframes rippleEffect{
  to{transform:scale(4);opacity:0}
}

.auth-chip{
  position:relative;
  animation:chipIn .45s ease;
}

.auth-chip-btn{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  border:1px solid rgba(0,87,156,.2);
  background:#fff;
  color:#1a1a1a;
  border-radius:999px;
  padding:.28rem .7rem .28rem .3rem;
}

.auth-avatar{
  width:30px;
  height:30px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--theme-accent);
  color:#fff;
  font-weight:700;
  animation:avatarPop .48s cubic-bezier(.2,.9,.3,1.3);
}

.auth-chip-menu{
  position:absolute;
  right:0;
  top:calc(100% + 8px);
  min-width:170px;
  background:#fff;
  border:1px solid rgba(0,87,156,.18);
  border-radius:10px;
  box-shadow:0 14px 26px var(--theme-shadow-strong);
  padding:.35rem;
  display:none;
  transform-origin:top right;
}

.auth-chip-menu.is-open{
  display:block;
  animation:popIn .28s cubic-bezier(.2,.9,.3,1.3);
}

.auth-chip-link{
  display:block;
  padding:.5rem .65rem;
  border-radius:8px;
  color:#1a1a1a;
  text-decoration:none;
}

.auth-chip-link:hover{
  background:var(--theme-bg);
  color:var(--theme-primary);
}

@keyframes chipIn{
  from{opacity:0;transform:scale(.92)}
  to{opacity:1;transform:scale(1)}
}

@keyframes avatarPop{
  0%{transform:scale(0)}
  70%{transform:scale(1.2)}
  100%{transform:scale(1)}
}
