/* SIGNIN RCM OLD SITE ENHANCEMENT PACK
   Purpose: Keep the existing SIGNIN RCM website structure, but improve spacing, fonts,
   frames, images, icons, thumbnails, forms, mobile proportions and premium 3D look.
   Safe to add after the existing CSS files. */

:root{
  --signin-blue:#005bbb;
  --signin-navy:#071d55;
  --signin-sky:#eaf6ff;
  --signin-orange:#f58220;
  --signin-aqua:#08b6d9;
  --signin-text:#12213f;
  --signin-muted:#61708d;
  --signin-line:rgba(0,91,187,.14);
  --signin-card:#ffffff;
  --signin-shadow:0 18px 45px rgba(7,29,85,.12);
  --signin-shadow-soft:0 10px 28px rgba(7,29,85,.10);
  --signin-radius:22px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  color:var(--signin-text);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
  font-size:16px;
  line-height:1.65;
  background:
    radial-gradient(circle at 18% 6%, rgba(8,182,217,.14), transparent 32%),
    radial-gradient(circle at 82% 2%, rgba(245,130,32,.12), transparent 30%),
    linear-gradient(180deg,#f7fbff 0%,#ffffff 38%,#f8fbff 100%) !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  opacity:.32;
  background-image:linear-gradient(rgba(0,91,187,.06) 1px, transparent 1px),linear-gradient(90deg, rgba(0,91,187,.05) 1px, transparent 1px);
  background-size:42px 42px;
}

img{max-width:100%;height:auto;}
a{color:var(--signin-blue);text-decoration:none;transition:all .22s ease;}
a:hover{color:var(--signin-orange);}

/* Site width and page rhythm */
.container, .wrapper, .main-container, .content, .section-container, section > div, header > div, footer > div{
  max-width:1180px;
}
section, .section, main > div{
  position:relative;
}
section{
  padding-top:clamp(46px,6vw,86px) !important;
  padding-bottom:clamp(46px,6vw,86px) !important;
}

/* Header / navigation polishing without changing original menu structure */
header, .header, .navbar, .nav-bar, .main-header{
  background:rgba(255,255,255,.88) !important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(0,91,187,.12) !important;
  box-shadow:0 10px 26px rgba(7,29,85,.07) !important;
  z-index:999;
}
header img, .header img, .navbar img, .main-header img{
  max-height:76px !important;
  width:auto !important;
  object-fit:contain !important;
}
nav a, header a, .navbar a, .nav a, .menu a{
  font-size:14px !important;
  font-weight:700 !important;
  letter-spacing:.01em;
}
nav a:not(.btn):not(.button):hover, header a:not(.btn):not(.button):hover{
  transform:translateY(-1px);
}

/* CTA buttons */
a[href*="contact"], a[href*="demo"], a[href*="schedule"], .btn, .button, button, input[type="submit"]{
  border-radius:999px !important;
}
.btn, .button, button, input[type="submit"], a.cta, .cta a, .primary-btn, .secondary-btn{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-weight:800 !important;
  box-shadow:0 12px 26px rgba(0,91,187,.18);
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease;
}
.btn:hover, .button:hover, button:hover, input[type="submit"]:hover, a.cta:hover, .cta a:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(0,91,187,.22);
}

/* Typography proportions */
h1,h2,h3,h4,h5,h6{
  color:var(--signin-navy) !important;
  letter-spacing:-.025em;
  line-height:1.16 !important;
  margin-top:0;
}
h1{font-size:clamp(36px,5.4vw,68px) !important;max-width:980px;}
h2{font-size:clamp(28px,3.6vw,46px) !important;}
h3{font-size:clamp(20px,2vw,26px) !important;}
p{font-size:clamp(15.5px,1.05vw,17px);color:var(--signin-text);}
small,.small{font-size:13px;}

/* Hero section: old content, better proportions */
.hero, .banner, .home-banner, .hero-section, main > section:first-of-type{
  overflow:hidden;
}
.hero, .banner, .home-banner, .hero-section{
  min-height:520px;
  display:flex;
  align-items:center;
}
.hero h1, .banner h1, .home-banner h1, .hero-section h1, main > section:first-of-type h1,
.hero h2, .banner h2, .home-banner h2, .hero-section h2, main > section:first-of-type h2{
  background:linear-gradient(135deg,var(--signin-navy),var(--signin-blue) 55%,var(--signin-aqua));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent !important;
}
.hero p, .banner p, .home-banner p, .hero-section p, main > section:first-of-type p{
  max-width:760px;
  color:#33425f;
  font-size:clamp(17px,1.3vw,20px);
}

/* Premium card / frame styling for existing sections */
.card, .service-card, .solution-card, .feature-card, .industry-card, .blog-card, .testimonial-card,
[class*="card"], [class*="box"], [class*="service"], [class*="item"]{
  border-radius:var(--signin-radius) !important;
}
.card, .service-card, .solution-card, .feature-card, .industry-card, .blog-card, .testimonial-card,
[class*="service-card"], [class*="feature-card"], [class*="industry-card"], [class*="testimonial"], [class*="why"]{
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,251,255,.92)) !important;
  border:1px solid var(--signin-line) !important;
  box-shadow:var(--signin-shadow-soft) !important;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.card:hover, .service-card:hover, .solution-card:hover, .feature-card:hover, .industry-card:hover, .blog-card:hover, .testimonial-card:hover,
[class*="service-card"]:hover, [class*="feature-card"]:hover, [class*="industry-card"]:hover, [class*="testimonial"]:hover{
  transform:translateY(-7px);
  box-shadow:var(--signin-shadow) !important;
  border-color:rgba(0,91,187,.28) !important;
}

/* Make existing 2D icons feel 3D */
.service-card img, .solution-card img, .feature-card img, .industry-card img, .card img,
img[src*="icon"], img[alt*="Icon"], img[alt*="icon"]{
  width:clamp(58px,6vw,92px) !important;
  height:clamp(58px,6vw,92px) !important;
  object-fit:contain !important;
  padding:12px !important;
  border-radius:22px !important;
  background:linear-gradient(145deg,#ffffff,#e8f5ff) !important;
  border:1px solid rgba(0,91,187,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 14px 28px rgba(0,91,187,.16),0 4px 0 rgba(0,91,187,.07);
  transform:perspective(700px) rotateX(4deg) rotateY(-4deg);
}

/* Thumbnail and logo/systems rows */
img[src*="medical"], img[src*="dental"], img[src*="software"], img[src*="clearing"], img[src*="payment"], img[src*="coding"]{
  border-radius:18px;
  box-shadow:0 14px 32px rgba(7,29,85,.13);
}

/* Grids: improves spacing without changing content */
[class*="grid"], .row, .cards, .services, .features, .industries{
  gap:clamp(18px,2.4vw,34px) !important;
}
.service-card, .feature-card, .industry-card, .testimonial-card, .blog-card, .card{
  padding:clamp(20px,2.6vw,32px) !important;
}

/* Specialty buttons / tag lists */
.specialty a, .specialities a, .tags a, .pills a, [class*="special"] a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin:6px;
  padding:10px 16px;
  border-radius:999px;
  color:var(--signin-navy) !important;
  background:linear-gradient(180deg,#fff,#eef7ff);
  border:1px solid rgba(0,91,187,.14);
  box-shadow:0 8px 18px rgba(7,29,85,.08);
  font-weight:700;
}

/* Forms */
form{
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(238,247,255,.86));
  border:1px solid rgba(0,91,187,.14);
  border-radius:26px;
  padding:clamp(22px,3vw,38px) !important;
  box-shadow:var(--signin-shadow-soft);
}
input, textarea, select{
  width:100%;
  border:1px solid rgba(0,91,187,.22) !important;
  border-radius:14px !important;
  padding:13px 14px !important;
  font:inherit;
  color:var(--signin-text);
  background:#fff !important;
  box-shadow:inset 0 1px 2px rgba(7,29,85,.05);
}
input:focus, textarea:focus, select:focus{
  outline:3px solid rgba(8,182,217,.18) !important;
  border-color:var(--signin-blue) !important;
}
textarea{min-height:120px;resize:vertical;}
label{font-weight:750;color:var(--signin-navy);}

/* Tables and lists */
li{margin-bottom:8px;}
ul{padding-left:1.15rem;}
hr{border:0;border-top:1px solid rgba(0,91,187,.14);}

/* Footer */
footer, .footer{
  background:linear-gradient(135deg,#071d55,#003f91) !important;
  color:#fff !important;
  border-top:1px solid rgba(255,255,255,.12);
}
footer h1, footer h2, footer h3, footer h4, footer p, footer li, footer a,
.footer h1, .footer h2, .footer h3, .footer h4, .footer p, .footer li, .footer a{
  color:#fff !important;
}
footer a:hover, .footer a:hover{color:#ffbc72 !important;}

/* WhatsApp floating smart chat */
.signin-whatsapp-launcher{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:99999;
  width:64px;
  height:64px;
  border-radius:50%;
  border:none;
  cursor:pointer;
  background:linear-gradient(145deg,#2ee86f,#00a94e);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:31px;
  box-shadow:0 18px 36px rgba(0,169,78,.35), inset 0 1px 0 rgba(255,255,255,.45);
  animation:signinPulse 2.4s infinite;
}
.signin-whatsapp-launcher span{line-height:1;}
.signin-whatsapp-panel{
  position:fixed;
  right:22px;
  bottom:96px;
  width:min(360px,calc(100vw - 34px));
  z-index:99998;
  background:#fff;
  border:1px solid rgba(0,91,187,.16);
  border-radius:24px;
  box-shadow:0 24px 60px rgba(7,29,85,.22);
  overflow:hidden;
  transform:translateY(16px) scale(.96);
  transform-origin:bottom right;
  opacity:0;
  pointer-events:none;
  transition:all .25s ease;
}
.signin-whatsapp-panel.is-open{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}
.signin-whatsapp-head{
  background:linear-gradient(135deg,#071d55,#005bbb 58%,#08b6d9);
  color:#fff;
  padding:18px 20px;
}
.signin-whatsapp-head strong{display:block;font-size:16px;}
.signin-whatsapp-head small{display:block;color:rgba(255,255,255,.85);margin-top:4px;}
.signin-whatsapp-body{padding:16px;}
.signin-whatsapp-option{
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  padding:12px 13px;
  margin:8px 0;
  border-radius:16px;
  color:var(--signin-navy) !important;
  background:linear-gradient(180deg,#fff,#f0f8ff);
  border:1px solid rgba(0,91,187,.12);
  box-shadow:0 8px 18px rgba(7,29,85,.08);
  font-weight:750;
}
.signin-whatsapp-option:hover{transform:translateY(-2px);background:#eef8ff;}
.signin-whatsapp-close{
  position:absolute;right:12px;top:10px;background:rgba(255,255,255,.16);color:#fff;border:0;border-radius:50%;width:30px;height:30px;min-height:30px;box-shadow:none;font-size:18px;line-height:1;cursor:pointer;
}
@keyframes signinPulse{0%{box-shadow:0 0 0 0 rgba(0,169,78,.35),0 18px 36px rgba(0,169,78,.28)}70%{box-shadow:0 0 0 14px rgba(0,169,78,0),0 18px 36px rgba(0,169,78,.28)}100%{box-shadow:0 0 0 0 rgba(0,169,78,0),0 18px 36px rgba(0,169,78,.28)}}

/* Reveal animation */
.signin-reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease;}
.signin-reveal.is-visible{opacity:1;transform:none;}

/* Mobile fixes */
@media (max-width: 900px){
  body{font-size:15.5px;}
  h1{font-size:clamp(32px,9vw,46px) !important;}
  h2{font-size:clamp(26px,7vw,36px) !important;}
  section{padding-top:42px !important;padding-bottom:42px !important;}
  header img, .header img, .navbar img{max-height:60px !important;}
  .hero, .banner, .home-banner, .hero-section{min-height:auto;padding-top:46px;padding-bottom:46px;}
  .service-card, .feature-card, .industry-card, .testimonial-card, .blog-card, .card{padding:20px !important;}
  .signin-whatsapp-launcher{right:16px;bottom:16px;width:58px;height:58px;font-size:28px;}
  .signin-whatsapp-panel{right:16px;bottom:84px;}
}
