/* Reliance Specialized Hospital — public homepage skin.
   Scoped so the existing admin/database/doctor modules keep their own layouts. */
:root{
  --hospital-purple:#5d1591;
  --hospital-purple-dark:#35106c;
  --hospital-green:#16a765;
  --hospital-ink:#191b45;
  --hospital-muted:#667085;
  --hospital-line:#e8e5f1;
  --hospital-soft:#f7f5ff;
}
body.hospital-home{background:#fff;color:var(--hospital-ink);font-family:"Hind Siliguri","Noto Sans Bengali",Arial,sans-serif}
.hospital-home a{text-decoration:none}
.hospital-home .hospital-wrap{width:min(1540px,calc(100% - 56px));margin:0 auto}

/* top info bar */
.hospital-topbar{background:linear-gradient(90deg,#fbf9ff,#fff);border-bottom:1px solid #eee9f7;color:#55227d;font-size:14px}
.hospital-topbar .hospital-wrap{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.hospital-topbar-left,.hospital-topbar-right{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.hospital-topbar .sep{height:20px;width:1px;background:#ded7e8}
.hospital-social{display:flex;gap:8px}
.hospital-social a{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#f4effb;color:var(--hospital-purple);font-weight:800}

/* header/nav */
.hospital-header{background:#fff;border-bottom:1px solid #eeeaf5;position:sticky;top:0;z-index:80;box-shadow:0 5px 20px rgba(68,29,98,.035)}
.hospital-header-main{display:grid;grid-template-columns:330px 1fr;align-items:center;gap:25px;padding:16px 0 11px}
.hospital-brand{display:flex;align-items:center;gap:13px;color:var(--hospital-purple-dark)}
.hospital-mark{position:relative;width:58px;height:58px;flex:0 0 58px}
.hospital-mark:before,.hospital-mark:after{content:"";position:absolute;background:linear-gradient(145deg,#6d1ab0,#4d0f83);border-radius:6px}
.hospital-mark:before{width:20px;height:58px;left:19px;top:0}
.hospital-mark:after{height:20px;width:58px;left:0;top:19px}
.hospital-leaf{position:absolute;z-index:2;right:-2px;bottom:0;width:34px;height:34px;border-radius:30px 4px 30px 4px;background:linear-gradient(145deg,#76c84b,#24a65d);transform:rotate(-12deg);box-shadow:0 0 0 4px #fff}
.hospital-leaf:after{content:"";position:absolute;width:22px;height:2px;background:#fff;left:6px;top:17px;transform:rotate(-38deg);transform-origin:left center;border-radius:5px}
.hospital-brand-text strong{display:block;font-family:Arial,sans-serif;font-size:27px;line-height:1.04;color:#53208d;letter-spacing:-.7px}
.hospital-brand-text span{display:block;font-family:Arial,sans-serif;color:#26315b;font-size:14px;margin-top:4px}
.hospital-nav-area{min-width:0}
.hospital-nav{display:flex;justify-content:flex-start;align-items:center;gap:8px;flex-wrap:wrap}
.hospital-nav a{padding:9px 12px;border-radius:9px;color:#261a48;font-weight:600;font-size:15px;white-space:nowrap}
.hospital-nav a.active{background:var(--hospital-purple);color:#fff;box-shadow:0 6px 16px rgba(94,22,145,.18)}
.hospital-nav a:hover{background:#f6f0fb;color:var(--hospital-purple)}
.hospital-nav a.active:hover{background:var(--hospital-purple);color:#fff}
.hospital-actionbar{display:flex;justify-content:center;gap:12px;padding:0 0 15px;flex-wrap:wrap}
.hospital-cta{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:210px;padding:13px 20px;border-radius:11px;background:linear-gradient(135deg,#6b18a5,#561184);color:#fff!important;font-weight:800;box-shadow:0 9px 20px rgba(85,17,132,.14)}
.hospital-cta.green{background:linear-gradient(135deg,#1db46b,#129956);box-shadow:0 9px 20px rgba(18,153,86,.14)}
.hospital-menu-toggle{display:none;border:0;background:var(--hospital-purple);color:#fff;border-radius:9px;padding:9px 12px;font-size:20px}

/* hero */
.hospital-hero-shell{background:linear-gradient(180deg,#f8f6ff 0%,#fff 100%);padding:18px 0 24px}
.hospital-hero-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(385px,.92fr);gap:22px;align-items:stretch}
.hospital-hero-card{position:relative;min-height:545px;border-radius:19px;overflow:hidden;background:linear-gradient(118deg,#dff2ff 0%,#fff 52%,#edf9ff 100%);box-shadow:0 17px 45px rgba(45,28,76,.09);border:1px solid #e6edf6}
.hospital-hero-copy{position:relative;z-index:3;width:52%;padding:54px 22px 120px 45px}
.hospital-eyebrow{font-weight:700;color:#263a6d;font-size:20px;line-height:1.45;margin-bottom:12px}
.hospital-hero-copy h1{font-size:49px;line-height:1.1;margin:0 0 18px;color:#2f166b;letter-spacing:-1.4px;font-weight:900}
.hospital-hero-copy p{font-size:19px;line-height:1.65;color:#3b4d70;margin:0 0 25px}
.hospital-hero-photo{position:absolute;inset:0 0 88px 43%;z-index:1;background-image:linear-gradient(90deg,rgba(235,248,255,.0) 0%,rgba(255,255,255,.02) 20%),url('../images/hospital-demo.jpg');background-size:cover;background-position:center center}
.hospital-hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#eaf7ff 0%,rgba(234,247,255,.8) 4%,rgba(255,255,255,0) 30%)}
.hospital-hero-highlights{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:22px;max-width:620px}
.hospital-highlight{padding:0 13px;text-align:center;border-right:1px solid rgba(66,76,119,.2);font-size:14px;font-weight:700;color:#2c3765}
.hospital-highlight:first-child{padding-left:0}.hospital-highlight:last-child{border-right:0}
.hospital-highlight .ico{font-size:31px;line-height:1;margin-bottom:8px}
.hospital-hero-strip{position:absolute;z-index:5;left:0;right:0;bottom:0;min-height:88px;background:linear-gradient(105deg,#6520a8,#3f126f);display:grid;grid-template-columns:repeat(3,1fr);align-items:center;color:#fff}
.hospital-strip-item{display:flex;gap:14px;align-items:center;padding:15px 28px;border-right:1px solid rgba(255,255,255,.22);min-width:0}
.hospital-strip-item:last-child{border-right:0}
.hospital-strip-item .ico{font-size:28px;flex:0 0 auto}.hospital-strip-item b{display:block;font-size:17px}.hospital-strip-item span{display:block;font-size:13px;opacity:.93;margin-top:2px}

/* booking card */
.hospital-booking-card{background:#fff;border:1px solid #ebe6f3;border-radius:19px;box-shadow:0 17px 45px rgba(60,30,88,.08);overflow:hidden;min-height:545px}
.hospital-booking-head{padding:21px 22px 14px;border-bottom:1px solid #eee9f4;display:flex;align-items:flex-start;gap:12px}
.hospital-booking-head .icon{font-size:33px;line-height:1}.hospital-booking-head h2{margin:0;color:#4b187e;font-size:26px}.hospital-booking-head p{margin:4px 0 0;color:#747086;font-size:14px}
.hospital-booking-body{padding:15px 20px 18px}
.hospital-doctor-select{margin-bottom:13px}.hospital-doctor-select label{display:block;font-weight:800;color:#30244d;margin-bottom:6px}.hospital-doctor-select select{width:100%;padding:11px 12px;border:1px solid #e2d9ec;border-radius:10px;background:#fff;color:#33234f;font:inherit}
.hospital-booking-card .appt-slot-instruction{display:none}
.hospital-booking-card .pro-scheduler{border:0!important;padding:0!important;box-shadow:none!important;background:transparent!important}
.hospital-booking-card .pro-schedule-head{padding:0 0 13px!important}
.hospital-booking-card .pro-schedule-title{font-size:18px!important;color:#322149!important}.hospital-booking-card .pro-schedule-sub{font-size:12px!important}
.hospital-booking-card .pro-date-button{min-width:130px!important}
.hospital-booking-card .pro-slot-card{border-radius:13px!important;background:#fbf9ff!important;border-color:#efe7f7!important}
.hospital-booking-card .alert{margin-top:12px;background:#edf9ef;color:#26693c;border:1px solid #dff1e4;border-radius:10px;padding:11px 12px;font-size:13px}

/* feature row */
.hospital-feature-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}
.hospital-feature-card{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid #ebe8f1;border-radius:16px;padding:18px 17px;box-shadow:0 9px 25px rgba(48,27,73,.05)}
.hospital-feature-icon{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;font-size:27px;background:#f8e9ee}
.hospital-feature-card:nth-child(2) .hospital-feature-icon{background:#f1e8fc}.hospital-feature-card:nth-child(3) .hospital-feature-icon{background:#e5f4ff}.hospital-feature-card:nth-child(4) .hospital-feature-icon{background:#e5f8ec}
.hospital-feature-card b{display:block;color:#482078;font-size:18px}.hospital-feature-card span{display:block;color:#777185;font-size:13px;margin-top:3px}

/* reusable sections */
.hospital-section{padding:56px 0}.hospital-section.soft{background:#faf9fd}.hospital-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}
.hospital-section-head h2{font-size:32px;margin:0;color:#301368}.hospital-section-head p{margin:5px 0 0;color:#6f7180}.hospital-link-btn{background:#5c168f;color:#fff!important;padding:10px 16px;border-radius:10px;font-weight:800}
.hospital-service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.hospital-service-card{background:#fff;border:1px solid #ece8f2;border-radius:15px;padding:21px;box-shadow:0 10px 24px rgba(55,29,77,.04)}.hospital-service-card .ico{font-size:28px;margin-bottom:11px}.hospital-service-card b{color:#492076;font-size:17px}
.hospital-contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.hospital-contact-card{background:#fff;border:1px solid #ebe8f0;border-radius:17px;padding:24px}.hospital-contact-card h2{margin-top:0;color:#431678}.hospital-contact-card p{color:#5f6170}
.hospital-footer{background:#27143f;color:#e9dcf5;padding:25px 0;margin-top:20px}.hospital-footer .hospital-wrap{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.hospital-footer a{color:#fff}

/* Doctor grid gets a little more air on hospital homepage */
.hospital-home .doctor-grid{gap:16px}.hospital-home .doctor-card{box-shadow:0 9px 26px rgba(28,38,58,.05)}

@media(max-width:1180px){
  .hospital-header-main{grid-template-columns:280px 1fr}.hospital-brand-text strong{font-size:23px}
  .hospital-nav a{font-size:14px;padding:8px 9px}.hospital-hero-grid{grid-template-columns:1.45fr 1fr}
  .hospital-hero-copy{width:56%;padding-left:32px}.hospital-hero-copy h1{font-size:41px}.hospital-service-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:980px){
  .hospital-wrap{width:min(100% - 28px,900px)}
  .hospital-topbar-right .hours,.hospital-social{display:none}
  .hospital-header-main{grid-template-columns:1fr auto;padding:12px 0}.hospital-menu-toggle{display:block}.hospital-nav-area{grid-column:1/-1;display:none}.hospital-nav-area.open{display:block}.hospital-nav{display:grid;grid-template-columns:repeat(2,1fr);padding:8px 0 5px}.hospital-actionbar{display:none}
  .hospital-hero-grid{grid-template-columns:1fr}.hospital-hero-card{min-height:530px}.hospital-booking-card{min-height:unset}.hospital-feature-row{grid-template-columns:repeat(2,1fr)}
  .hospital-service-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  .hospital-wrap{width:calc(100% - 20px)}.hospital-topbar .hospital-wrap{font-size:12px}.hospital-topbar .sep{display:none}.hospital-topbar-left{gap:9px}.hospital-topbar-right{display:none}
  .hospital-brand-text strong{font-size:20px}.hospital-brand-text span{font-size:12px}.hospital-mark{width:48px;height:48px;flex-basis:48px}.hospital-mark:before{height:48px;width:17px;left:15px}.hospital-mark:after{width:48px;height:17px;top:15px}.hospital-leaf{width:29px;height:29px}
  .hospital-nav{grid-template-columns:1fr}.hospital-hero-shell{padding-top:10px}.hospital-hero-card{min-height:650px}.hospital-hero-photo{inset:260px 0 88px 0;background-position:center}.hospital-hero-photo:after{background:linear-gradient(180deg,#eaf7ff 0%,rgba(255,255,255,0) 18%)}
  .hospital-hero-copy{width:auto;padding:28px 22px 0}.hospital-eyebrow{font-size:16px}.hospital-hero-copy h1{font-size:35px}.hospital-hero-copy p{font-size:16px}.hospital-hero-highlights{grid-template-columns:repeat(4,1fr);margin-top:14px}.hospital-highlight{font-size:11px;padding:0 5px}.hospital-highlight .ico{font-size:23px}
  .hospital-hero-strip{grid-template-columns:1fr;min-height:auto}.hospital-strip-item{display:none}.hospital-strip-item:first-child{display:flex;border:0;padding:13px 20px}.hospital-feature-row{grid-template-columns:1fr}.hospital-section{padding:38px 0}.hospital-section-head{align-items:flex-start}.hospital-section-head h2{font-size:27px}.hospital-section-head p{font-size:14px}.hospital-service-grid{grid-template-columns:1fr}.hospital-contact-grid{grid-template-columns:1fr}.hospital-footer .hospital-wrap{display:block;text-align:center}.hospital-footer .footer-support{margin-top:10px}
  .hospital-booking-head h2{font-size:22px}.hospital-booking-body{padding:14px 12px 16px}
}


/* =========================================================
   RELIANCE BRAND PATCH — same design, updated identity
   ========================================================= */
.hospital-brand-logo{
  min-width:300px;
  align-items:center;
}
.hospital-logo-stack{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  line-height:1;
}
.hospital-logo-stack img{
  display:block;
  width:260px;
  height:auto;
  max-height:66px;
  object-fit:contain;
  object-position:left center;
}
.hospital-logo-stack small{
  display:block;
  margin:4px 0 0 67px;
  color:#26315b;
  font:600 12px/1.2 Arial,sans-serif;
  letter-spacing:.1px;
}
.hospital-mobile{white-space:nowrap}

/* Gentle professional motion: no layout or functionality changes */
.hospital-topbar{animation:relianceTopIn .55s ease-out both}
.hospital-header{animation:relianceHeaderIn .65s .05s ease-out both}
.hospital-hero-card{animation:relianceHeroIn .75s .12s ease-out both}
.hospital-booking-card{animation:relianceBookingIn .75s .20s ease-out both}
.hospital-hero-copy .hospital-eyebrow{animation:relianceCopyIn .6s .30s ease-out both}
.hospital-hero-copy h1{animation:relianceCopyIn .65s .38s ease-out both}
.hospital-hero-copy p{animation:relianceCopyIn .65s .46s ease-out both}
.hospital-hero-highlights{animation:relianceCopyIn .65s .54s ease-out both}
.hospital-hero-photo{
  transform-origin:center center;
  animation:reliancePhotoIn .85s .18s ease-out both,reliancePhotoBreath 14s 1.1s ease-in-out infinite alternate;
}
.hospital-highlight,.hospital-strip-item,.hospital-cta,.hospital-logo-stack img{
  transition:transform .22s ease,filter .22s ease,box-shadow .22s ease;
}
.hospital-highlight:hover{transform:translateY(-3px)}
.hospital-strip-item:hover{transform:translateY(-2px)}
.hospital-cta:hover{transform:translateY(-2px);filter:brightness(1.04)}
.hospital-brand:hover .hospital-logo-stack img{transform:scale(1.015)}
.hospital-booking-card .pro-slot:hover:not(:disabled){transform:translateY(-2px)}

@keyframes relianceTopIn{
  from{opacity:0;transform:translateY(-8px)}
  to{opacity:1;transform:none}
}
@keyframes relianceHeaderIn{
  from{opacity:0;transform:translateY(-12px)}
  to{opacity:1;transform:none}
}
@keyframes relianceHeroIn{
  from{opacity:0;transform:translateX(-18px)}
  to{opacity:1;transform:none}
}
@keyframes relianceBookingIn{
  from{opacity:0;transform:translateX(18px)}
  to{opacity:1;transform:none}
}
@keyframes relianceCopyIn{
  from{opacity:0;transform:translateY(12px)}
  to{opacity:1;transform:none}
}
@keyframes reliancePhotoIn{
  from{opacity:.5;transform:scale(1.035)}
  to{opacity:1;transform:scale(1)}
}
@keyframes reliancePhotoBreath{
  from{transform:scale(1)}
  to{transform:scale(1.025)}
}

@media(max-width:1180px){
  .hospital-brand-logo{min-width:265px}
  .hospital-logo-stack img{width:230px}
  .hospital-logo-stack small{margin-left:59px}
}
@media(max-width:980px){
  .hospital-brand-logo{min-width:0}
  .hospital-logo-stack img{width:220px;max-height:58px}
  .hospital-logo-stack small{margin-left:56px;font-size:11px}
  .hospital-topbar-right .hospital-mobile{display:none}
}
@media(max-width:680px){
  .hospital-logo-stack img{width:205px;max-height:54px}
  .hospital-logo-stack small{margin-left:52px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){
  .hospital-topbar,.hospital-header,.hospital-hero-card,.hospital-booking-card,
  .hospital-hero-copy .hospital-eyebrow,.hospital-hero-copy h1,.hospital-hero-copy p,
  .hospital-hero-highlights,.hospital-hero-photo{
    animation:none!important;
  }
  .hospital-highlight,.hospital-strip-item,.hospital-cta,.hospital-logo-stack img{
    transition:none!important;
  }
}
