.backdrop-blur{
  backdrop-filter: blur(10px);
}

.navbar .nav-link{
  opacity: .85;
}
.navbar .nav-link.active{
  opacity: 1;
}

.hero-card{
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  box-shadow: 0 18px 45px rgba(0,0,0,.45);
  border-radius: 18px;
}

.section-muted{
  color: rgba(255,255,255,.72);
}

.card-soft{
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  border-radius: 16px;
}

.badge-soft{
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
}
.hero-card, .card-soft { overflow: hidden; }
#contact-feedback {
  border-radius: 12px;
  font-size: .95rem;
}
.alert-success {
  background: rgba(25,135,84,.15);
  border-color: rgba(25,135,84,.35);
}
.alert-warning {
  background: rgba(255,193,7,.15);
  border-color: rgba(255,193,7,.35);
}
.alert-danger {
  background: rgba(220,53,69,.15);
  border-color: rgba(220,53,69,.35);
}

.work-card{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.02);
  box-shadow: 0 14px 44px rgba(0,0,0,.38);
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.work-card:hover{
  transform: translateY(-2px);
  border-color: rgba(255,255,255,.16);
  box-shadow: 0 20px 64px rgba(0,0,0,.48);
}

.work-media{
  position: relative;
  background: rgba(0,0,0,.12);
}
.work-media::after{ display:none !important; }

.work-cover{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: none !important;
  transform: none !important;
}

.work-badge{ display:none !important; }

.work-icon{
  position:absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  width: 38px;
  height: 38px;
  border-radius: 12px;
  object-fit: cover;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.25);
  box-shadow: 0 10px 24px rgba(0,0,0,.30);
}

.work-card .p-4{
  padding: 1.25rem !important;
  background: rgba(255,255,255,.02);
}
.work-card .p-4::before{
  content:"";
  display:block;
  height: 1px;
  margin: -1.25rem -1.25rem 1rem -1.25rem;
  background: rgba(255,255,255,.08);
}
.work-card .small.text-body-secondary{
  color: rgba(255,255,255,.58) !important;
  letter-spacing: .2px;
}
.work-card h2{
  font-size: 1.05rem;
  line-height: 1.25;
  letter-spacing: .1px;
  margin-bottom: .45rem;
}
.section-muted{
  color: rgba(255,255,255,.72) !important;
}

.work-card .badge{
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  color: rgba(255,255,255,.78) !important;
  border-radius: 999px;
  padding: .34rem .56rem;
  font-weight: 500;
}

.work-card .btn{
  border-radius: 999px;
  padding: .42rem .78rem;
  border-width: 1px;
}

.work-card .btn.btn-light{
  background: rgba(255,255,255,.10) !important;
  border-color: rgba(255,255,255,.14) !important;
  color: rgba(255,255,255,.92) !important;
}
.work-card .btn.btn-light:hover{
  background: rgba(255,255,255,.16) !important;
  border-color: rgba(255,255,255,.18) !important;
}
.work-card .btn.btn-success,
.work-card .btn.btn-warning,
.work-card .btn.btn-danger{
  background: transparent !important;
  border-color: rgba(255,255,255,.16) !important;
  color: rgba(255,255,255,.90) !important;
}
.work-card .btn.btn-success:hover,
.work-card .btn.btn-warning:hover,
.work-card .btn.btn-danger:hover{
  background: rgba(255,255,255,.08) !important;
  border-color: rgba(255,255,255,.22) !important;
}
.work-title-icon{
  width: 22px;
  height: 22px;
  border-radius: 6px;
  object-fit: cover;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  flex: 0 0 auto;
}

.work-card h2{
  text-align: left !important;
  justify-content: flex-start !important;
}

.hero-card{
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  box-shadow: 0 18px 70px rgba(0,0,0,.40);
}

.card-soft{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  box-shadow: 0 14px 44px rgba(0,0,0,.28);
}

.section-muted{
  color: rgba(255,255,255,.72) !important;
}

.hero-cta .btn{
  border-radius: 999px;
  padding: .70rem 1.05rem;
  border-width: 1px;
}

.hero-cta .btn.btn-light{
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.16);
  color: rgba(255,255,255,.95);
}
.hero-cta .btn.btn-light:hover{
  background: rgba(255,255,255,.18);
  border-color: rgba(255,255,255,.20);
  color: #fff;
}

.hero-cta .btn.btn-outline-light{
  border-color: rgba(255,255,255,.20);
  color: rgba(255,255,255,.92);
}
.hero-cta .btn.btn-outline-light:hover{
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.24);
  color: #fff;
}
.hero-list{
  padding-left: 1.0rem;
  margin: 0;
}
.hero-list li{
  margin: .35rem 0;
}
.home-tile{
  text-decoration: none;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.home-tile:hover{
  transform: translateY(-2px);
  border-color: rgba(255,255,255,.16);
  box-shadow: 0 18px 60px rgba(0,0,0,.40);
  text-decoration: none;
}

.home-tile .fw-semibold{
  letter-spacing: .1px;
}
.brand-logo{
  height: 42px;
  width: auto;
  display: block;
}

.brand-text{
  font-size: 1.05rem;
  letter-spacing: .2px;
}

@media (max-width: 576px){
  .brand-logo{
    height: 36px;
  }
  .brand-text{
    font-size: 1rem;
  }
}

.backdrop-blur{
  background: rgba(10, 10, 12, .55); 
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.navbar{
  border-bottom-color: rgba(255,255,255,.10) !important;
}

.brand-logo{
  border-radius: 8px;
  display: block;
}

.brand-text{
  letter-spacing: .2px;
}

.navbar .nav-link{
  color: rgba(255,255,255,.78);
  border-radius: 999px;
  padding: .45rem .70rem;
  transition: background-color .14s ease, color .14s ease, border-color .14s ease;
}

.navbar .nav-link:hover{
  color: rgba(255,255,255,.92);
  background: rgba(255,255,255,.08);
}

.navbar .nav-link.active{
  color: #fff;
  background: rgba(255,255,255,.12);
}

.navbar .navbar-toggler{
  border-color: rgba(255,255,255,.18);
  border-radius: 12px;
}

.app-card{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  box-shadow: 0 14px 44px rgba(0,0,0,.28);
}

.app-icon{
  width: 56px;
  height: 56px;
  border-radius: 16px;
  object-fit: cover;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  flex: 0 0 auto;
}

.about-links{
  border-radius: 18px;
}

.social-icon{
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color: rgba(255,255,255,.88);

  text-decoration: none;
  transition: transform .12s ease, background .12s ease, border-color .12s ease, color .12s ease;
}

.social-icon:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.07);
  border-color: rgba(255,255,255,.18);
  color: #fff;
}

.social-icon:focus-visible{
  outline: none;
  box-shadow: 0 0 0 .25rem rgba(255,255,255,.10);
}
