/* Nazareth Hospital — Modern UI Layer (auto across all pages) */
:root{
  --nh-primary:#1977cc;
  --nh-primary-2:#0d5ba3;
  --nh-sky:#5c9bd1;
  --nh-navy:#0a3d62;
  --nh-ink:#122033;
  --nh-muted:#5e6b7a;
  --nh-bg:#f6f9fe;
  --nh-card:#ffffff;
  --nh-radius:18px;
  --nh-shadow:0 14px 40px rgba(10,61,98,.12);
  --nh-shadow-soft:0 10px 28px rgba(10,61,98,.08);
}

html{ scroll-behavior:smooth; }
body{
  background:
    radial-gradient(900px 380px at 12% -240px, rgba(25,119,204,.10), transparent 70%),
    radial-gradient(900px 380px at 110% -240px, rgba(92,155,209,.10), transparent 70%),
    linear-gradient(180deg, #ffffff 0%, #ffffff 35%, var(--nh-bg) 100%);
}

/* Better section spacing on all screens */
.container, .container-fluid{ --nh-gap: clamp(12px, 2vw, 22px); }
.section-title h1, .section-title h2{ letter-spacing:-.02em; }

/* Navbar polish */
.navbar{
  backdrop-filter:saturate(1.2) blur(10px);
}
.navbar.nh-scrolled{
  box-shadow: 0 10px 28px rgba(10,61,98,.10) !important;
}

/* Buttons */
.btn{
  border-radius: 999px !important;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}
.btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 28px rgba(25,119,204,.18);
}
.btn-primary{
  background: linear-gradient(135deg, var(--nh-primary) 0%, var(--nh-primary-2) 100%);
  border: none;
}
.btn-outline-primary{
  border-color: rgba(25,119,204,.55);
}

/* Card upgrades */
.service-item,.feature-item,.team-item,.blog-item,
.appointment-form, figure.bg-white{
  border-radius: var(--nh-radius) !important;
  overflow:hidden;
  box-shadow: var(--nh-shadow-soft);
  border: 1px solid rgba(25,119,204,.10);
}
.service-item:hover,.feature-item:hover,.team-item:hover,.blog-item:hover{
  box-shadow: var(--nh-shadow);
}

/* Image glow on hover */
.service-img img, .blog-img img, .team-img img, figure img{
  transition: transform .35s ease, filter .35s ease;
}
.service-item:hover .service-img img,
.blog-item:hover .blog-img img,
.team-item:hover .team-img img{
  transform: scale(1.03);
  filter: saturate(1.05) contrast(1.02);
}

/* Subtle gradient stripe */
.section-boundary{
  position:relative;
}
.section-boundary::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background: linear-gradient(90deg, rgba(25,119,204,.07), transparent 35%, rgba(92,155,209,.06));
  opacity:.25;
  mask-image: linear-gradient(180deg, transparent 0%, #000 12%, #000 88%, transparent 100%);
}

/* Scroll reveal */
.nh-reveal{
  opacity:0;
  transform: translateY(14px);
  transition: opacity .6s ease, transform .6s ease;
  will-change: opacity, transform;
}
.nh-reveal.nh-in{
  opacity:1;
  transform:none;
}

/* Video embeds responsive */
.nh-video{
  border-radius: 16px;
  overflow:hidden;
  box-shadow: var(--nh-shadow-soft);
  border: 1px solid rgba(25,119,204,.10);
}

/* Floating quick actions */
.nh-fabs{
  position: fixed;
  right: 18px;
  bottom: 18px;
  display:flex;
  flex-direction:column;
  gap:10px;
  z-index: 9999;
}
.nh-fab{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(25,119,204,.18);
  box-shadow: 0 10px 22px rgba(10,61,98,.14);
  color: var(--nh-ink);
  text-decoration:none;
  font-weight:600;
  transition: transform .18s ease, box-shadow .18s ease;
}
.nh-fab:hover{ transform: translateY(-2px); box-shadow: 0 16px 30px rgba(10,61,98,.18); }
.nh-fab i{ color: var(--nh-primary); }

/* Reduce motion */
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  .nh-reveal{ transition:none; transform:none; opacity:1; }
  .btn, .service-img img, .blog-img img, .team-img img{ transition:none; }
}
