 :root {
 --navy: #0a1628;
 --teal: #0d9488;
 --teal-light: #14b8a6;
 --gold: #f59e0b;
 --sky: #e0f2fe;
 --white: #ffffff;
 --gray: #64748b;
 --light: #f8fafc;
 --border: #e2e8f0;
 }
 *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
 html { scroll-behavior: smooth; }
 body { font-family: 'DM Sans', sans-serif; color: var(--navy); background: var(--white); }
 p { text-align: justify; line-height: 1.8; }
 /* Center context: short labels/subtitles stay centered in center-aligned sections */
 .center > p, .center .section-sub { text-align: center !important; }
 /* Multi-line body paragraphs fill full width, justified */
 .section-body p, .about p, .faq p, .why p, .svc-modal p, .blog-detail-body p,
 .rcm-detail p, .spec-desc, .service-desc { text-align: justify; width: 100%; max-width: 100%; }
 .stat-item .label, .reviewer-info span { text-align: center; }

 /* NAV */
 nav {
 position: sticky; top: 40px; z-index: 100;
 background: var(--navy);
 display: flex; align-items: center; justify-content: space-between;
 padding: 0 3%;
 box-shadow: 0 2px 20px rgba(0,0,0,0.25);
 flex-wrap: nowrap;
}
 .nav-logo { display: flex; align-items: center; gap: 12px; padding: 12px 0; text-decoration: none; }
 .nav-logo img { height: 54px; border-radius: 10px; }
.nav-links { display: flex; gap: 18px; list-style: none; }
.nav-links a { color: rgba(255,255,255,0.85); text-decoration: none; font-size: 13px; font-weight: 500; letter-spacing: 0.3px; transition: color 0.2s; }
 .nav-links a:hover { color: var(--teal-light); }

 /* NAV DROPDOWN */
 .nav-has-dropdown { position: relative; }
 .nav-dropdown {
 visibility: hidden; opacity: 0; pointer-events: none;
 position: absolute; top: 100%; left: 50%; transform: translateX(-50%);
 background: var(--navy); border: 1px solid rgba(13,184,166,0.2); border-radius: 10px;
 list-style: none; min-width: 240px; box-shadow: 0 12px 40px rgba(0,0,0,0.4);
 padding: 8px 0; z-index: 200;
 transition: opacity 0.18s ease, visibility 0.18s ease;
 margin-top: 0;
 }
 /* Bridge gap so mouse can travel from link to dropdown */
 .nav-has-dropdown::after {
 content: ''; position: absolute; top: 100%; left: 0; right: 0; height: 12px;
 }
 .nav-has-dropdown:hover .nav-dropdown,
 .nav-has-dropdown:focus-within .nav-dropdown {
 visibility: visible; opacity: 1; pointer-events: auto;
 }
 .nav-dropdown li a {
 display: block; padding: 11px 20px; color: rgba(255,255,255,0.85); font-size: 13px;
 text-decoration: none; transition: all 0.2s; white-space: nowrap;
 }
 .nav-dropdown li a:hover { background: rgba(13,148,136,0.15); color: var(--teal-light); }
 .nav-dropdown .dropdown-more a {
 color: var(--teal-light) !important; font-weight: 700;
 border-top: 1px solid rgba(13,184,166,0.2); margin-top: 4px; padding-top: 12px;
 }
 .nav-dropdown .dropdown-more a:hover { background: rgba(13,148,136,0.2); }
 .nav-cta {
 background: var(--teal); color: var(--white); border: none; padding: 11px 18px;
 border-radius: 6px; font-size: 13px; font-weight: 600; cursor: pointer; text-decoration: none;
 transition: background 0.2s; white-space: nowrap; flex-shrink: 0;
}
 .nav-cta:hover { background: var(--teal-light); }

 /* HERO */
 .hero {
  min-height: 88vh;
  background: #020c18;
  position: relative; overflow: hidden;
  display: flex; align-items: center; padding: 64px 5%;
  gap: 40px;  /* ← yeh add karo */
}
/* Hero content area - wider tak jaaye */
.hero-content {
  flex: 1;
  max-width: 52%;
  z-index: 10;
  position: relative;
}
.hero-content h1 {
  font-size: clamp(1.2rem, 1.8vw, 2.2rem);
  line-height: 1.3;
  white-space: normal;
}

.hero-content h1 em {
  display: block;
  white-space: nowrap;
}

/* Mobile pe normal wrap ho */
@media (max-width: 768px) {
  .hero-content {
    max-width: 100%;
  }
  .hero-content h1 {
    white-space: normal;
    font-size: clamp(1.6rem, 5vw, 2.2rem);
  }
}
 #hero-canvas {
 position: absolute; inset: 0; width: 100%; height: 100%;
 pointer-events: none; z-index: 0;
 }
 /* Animated ECG/heartbeat line overlay */
 .hero-ecg-wrap {
 position: absolute; inset: 0; z-index: 1; overflow: hidden; pointer-events: none;
 }
 .hero-ecg-svg {
 position: absolute; bottom: 18%; left: 0; width: 200%; height: 120px;
 animation: ecg-slide 5s linear infinite;
 opacity: 0.18;
 }
 .hero-ecg-svg2 {
 position: absolute; bottom: 30%; left: 0; width: 200%; height: 80px;
 animation: ecg-slide 8s linear infinite reverse;
 opacity: 0.09;
 }
 @keyframes ecg-slide { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

 /* Floating medical claim "data cells" */
 .hero-cell {
 position: absolute; border-radius: 8px;
 border: 1px solid rgba(13,184,166,0.25);
 background: rgba(13,184,166,0.04);
 animation: cell-float linear infinite;
 pointer-events: none; overflow: hidden;
 }
 .hero-cell::after {
 content: '';
 position: absolute; inset: 0;
 background: linear-gradient(90deg, transparent 0%, rgba(13,184,166,0.12) 50%, transparent 100%);
 animation: cell-sweep 3s ease-in-out infinite;
 }
 @keyframes cell-float {
 0% { transform: translateY(0px) rotate(0deg); opacity: 0; }
 10% { opacity: 1; }
 90% { opacity: 0.6; }
 100% { transform: translateY(-80px) rotate(2deg); opacity: 0; }
 }
 @keyframes cell-sweep { 0%,100%{transform:translateX(-100%)} 50%{transform:translateX(100%)} }

 /* Orbiting rings (claim lifecycle visualization) */
 .hero-ring {
 position: absolute; border-radius: 50%;
 border: 1px solid rgba(13,184,166,0.08);
 animation: ring-spin linear infinite;
 pointer-events: none;
 }
 .hero-ring::before {
 content: '';
 position: absolute; width: 8px; height: 8px; border-radius: 50%;
 background: var(--teal-light);
 box-shadow: 0 0 12px var(--teal-light);
 top: -4px; left: 50%; transform: translateX(-50%);
 animation: ring-node linear infinite;
 animation-duration: inherit;
 }
 @keyframes ring-spin { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
 @keyframes ring-node { from{transform:rotate(0deg) translateX(-50%)} to{transform:rotate(-360deg) translateX(-50%)} }

 /* Scanning grid lines */
 .hero-scanline {
 position: absolute; left: 0; right: 0; height: 1px;
 background: linear-gradient(90deg, transparent 0%, rgba(13,184,166,0.3) 30%, rgba(20,184,166,0.5) 50%, rgba(13,184,166,0.3) 70%, transparent 100%);
 animation: scanline-move 6s ease-in-out infinite;
 pointer-events: none; z-index: 1;
 }
 @keyframes scanline-move {
 0% { top: 10%; opacity: 0; }
 10% { opacity: 1; }
 90% { opacity: 0.5; }
 100% { top: 90%; opacity: 0; }
 }

 /* Data stream columns */
 .hero-stream {
 position: absolute; top: 0; bottom: 0; width: 1px;
 background: linear-gradient(180deg, transparent 0%, rgba(13,184,166,0.15) 50%, transparent 100%);
 animation: stream-flow 4s ease-in-out infinite;
 pointer-events: none;
 }
 @keyframes stream-flow {
 0%,100% { opacity: 0.2; transform: scaleY(0.3) translateY(-30%); }
 50% { opacity: 0.7; transform: scaleY(1) translateY(0%); }
 }

 .hero-overlay {
 position: absolute; inset: 0; z-index: 2;
 background: radial-gradient(ellipse 60% 80% at 75% 50%, rgba(13,148,136,0.10) 0%, transparent 60%),
 radial-gradient(ellipse 40% 60% at 5% 80%, rgba(245,158,11,0.05) 0%, transparent 55%),
 radial-gradient(ellipse 80% 50% at 50% 0%, rgba(2,12,24,0.4) 0%, transparent 60%),
 linear-gradient(175deg, rgba(2,12,24,0.1) 0%, rgba(2,12,24,0.65) 100%);
 }
 .hero-grid { display:none; }

 /* BILLING SOFTWARE */
 .software {
 background: #ffffff;
 padding: 56px 5%;
 position: relative; overflow: hidden;
 }
 .software::before {
 content: '';
 position: absolute; inset: 0;
 background:
 radial-gradient(ellipse 50% 80% at 20% 50%, rgba(13,148,136,0.04) 0%, transparent 60%),
 radial-gradient(ellipse 40% 60% at 80% 50%, rgba(13,148,136,0.03) 0%, transparent 60%);
 pointer-events: none;
 }
 .software-grid-bg { display: none; }
 .software-inner { text-align: center; position: relative; z-index: 1; }
 .software-inner .section-tag { background: rgba(13,148,136,0.1); color: var(--teal); }
 .software-inner .section-title { color: var(--navy); }
 .software-inner .section-title em { color: var(--teal); }
 .software-sub { font-size: 15px; color: var(--gray); margin-bottom: 44px; width: 100%; line-height: 1.8; text-align: justify; max-width: 100%; }
 .software-track-wrap { overflow: hidden; position: relative; }
 .software-track-wrap::before, .software-track-wrap::after {
 content: ''; position: absolute; top: 0; bottom: 0; width: 140px; z-index: 2; pointer-events: none;
 }
 .software-track-wrap::before { left: 0; background: linear-gradient(90deg, #ffffff, transparent); }
 .software-track-wrap::after { right: 0; background: linear-gradient(-90deg, #ffffff, transparent); }
 .software-track { display: flex; gap: 16px; animation: scroll-left 32s linear infinite; width: max-content; will-change: transform; }
 .software-track:hover { animation-play-state: paused; }
 .sw-pill {
 display: flex; align-items: center; gap: 10px; padding: 13px 26px;
 background: #f8fafc;
 border: 1.5px solid #d1d5db;
 border-radius: 50px;
 white-space: nowrap; font-size: 14px; font-weight: 700; color: #1e293b;
 transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1); cursor: pointer;
 box-shadow: 0 2px 8px rgba(0,0,0,0.06);
 text-decoration: none;
 }
 .sw-pill:hover {
 border-color: var(--teal);
 color: var(--teal);
 background: rgba(13,148,136,0.06);
 transform: translateY(-6px);
 box-shadow: 0 8px 24px rgba(13,148,136,0.2);
 }
 .sw-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--teal); flex-shrink: 0; }
 @keyframes scroll-left { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

 /* FAQ */

 /*.faq-item {*/
 /*background: var(--white); border: 1.5px solid var(--border); border-radius: 16px;*/
 /*overflow: hidden; transition: box-shadow 0.25s;*/
 /*}*/
 /*.faq-item:hover { box-shadow: 0 8px 28px rgba(13,148,136,0.1); }*/
 /*.faq-q {*/
 /*display: flex; justify-content: space-between; align-items: center;*/
 /*padding: 22px 26px; cursor: pointer; gap: 16px; background: var(--white);*/
 /*}*/
 /*.faq-q h4 { font-size: 15px; font-weight: 700; color: var(--navy); line-height: 1.45; text-align: left; }*/
 /*.faq-icon {*/
 /*width: 32px; height: 32px; border-radius: 50%; background: rgba(13,148,136,0.1);*/
 /*display: flex; align-items: center; justify-content: center;*/
 /*color: var(--teal); font-size: 18px; font-weight: 700; flex-shrink: 0;*/
 /*transition: all 0.25s;*/
 /*}*/
 /*.faq-item.open .faq-icon { background: var(--teal); color: var(--white); transform: rotate(45deg); }*/
 /*.faq-divider {*/
 /*display: none; height: 2px;*/
 /*background: linear-gradient(90deg, rgba(13,148,136,0.7), rgba(13,184,166,0.35), transparent);*/
 /*margin: 0;*/
 /*}*/
 /*.faq-item.open .faq-divider { display: block; }*/
 /*.faq-a {*/
 /*max-height: 0; overflow: hidden;*/
 /*transition: max-height 0.4s ease, padding 0.3s ease;*/
 /*padding: 0;*/
 /*background: linear-gradient(135deg, rgba(13,148,136,0.07) 0%, rgba(14,184,166,0.04) 60%, rgba(224,242,254,0.35) 100%);*/
 /*}*/
 /*.faq-a p { font-size: 14px; color: #334155; line-height: 1.75; padding-bottom: 22px; text-align: left; }*/
 /*.faq-item.open .faq-a { max-height: 300px; padding: 18px 26px 0; }*/
 /*.faq-item.open { border-color: rgba(13,148,136,0.35); }*/
 /*.faq-wide { grid-column: 1 / -1; }*/
 .hero-content { position: relative; max-width: 680px; z-index: 3; }
 .hero-badge {
 display: inline-flex; align-items: center; gap: 8px;
 background: rgba(13,148,136,0.2); border: 1px solid rgba(13,148,136,0.4);
 color: var(--teal-light); font-size: 13px; font-weight: 600;
 padding: 6px 16px; border-radius: 50px; margin-bottom: 28px; letter-spacing: 0.5px;
 }
 .hero-badge span { width: 7px; height: 7px; background: var(--teal-light); border-radius: 50%; display: inline-block; }
 .hero h1 {
 font-family: 'Playfair Display', serif;
 font-size: clamp(2.2rem, 4vw, 3.6rem); font-weight: 700;
 color: var(--white); line-height: 1.18; margin-bottom: 22px;
 }
 .hero h1 em { font-style: normal; color: var(--teal-light); }
 .hero p { font-size: 17px; color: rgba(255,255,255,0.75); line-height: 1.75; margin-bottom: 36px; }
 .hero-btns { display: flex; gap: 16px; flex-wrap: wrap; }
 .btn-primary {
 background: var(--teal); color: var(--white); padding: 15px 32px;
 border-radius: 8px; text-decoration: none; font-weight: 600; font-size: 15px;
 transition: all 0.2s; display: inline-flex; align-items: center; gap: 8px;
 }
 .btn-primary:hover { background: var(--teal-light); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(13,148,136,0.35); }
 .btn-outline {
 background: transparent; color: var(--white); padding: 15px 32px;
 border-radius: 8px; text-decoration: none; font-weight: 600; font-size: 15px;
 border: 1.5px solid rgba(255,255,255,0.35); transition: all 0.2s;
 }
 .btn-outline:hover { border-color: var(--white); background: rgba(255,255,255,0.08); }
 .hero-stats {
 display: flex; gap: 40px; margin-top: 36px; padding-top: 36px;
 border-top: 1px solid rgba(255,255,255,0.1); flex-wrap: wrap;
 }
 .stat { }
 .stat-num { font-family: 'Playfair Display', serif; font-size: 2.4rem; font-weight: 700; color: var(--white); line-height: 1; }
 .stat-num span { color: var(--teal-light); }
 .stat-label { font-size: 13px; color: rgba(255,255,255,0.55); margin-top: 4px; font-weight: 500; }
 .hero-visual {
 position: absolute; right: 5%; top: 50%; transform: translateY(-50%);
 display: flex; flex-direction: column; gap: 10px; z-index: 3;
 }
 .hero-card {
 background: rgba(255,255,255,0.06); backdrop-filter: blur(12px);
 border: 1px solid rgba(255,255,255,0.12); border-radius: 14px;
 padding: 14px 20px; min-width: 220px;
 transition: transform 0.2s, background 0.2s;
 }
 .hero-card:hover {
 background: rgba(13,184,166,0.1);
 border-color: rgba(13,184,166,0.35);
 transform: translateX(-4px);
 }
 .hc-label { font-size: 11px; color: rgba(255,255,255,0.5); text-transform: uppercase; letter-spacing: 1px; margin-bottom: 4px; }
 .hc-val { font-size: 1.6rem; font-weight: 700; color: var(--white); font-family: 'Playfair Display', serif; }
 .hc-val span { color: var(--teal-light); font-size: 0.95rem; }
 .hc-sub { font-size: 11px; color: rgba(255,255,255,0.45); margin-top: 2px; }

 /* TOP BAR */
 .topbar {
 background: linear-gradient(90deg, #0a1628 0%, #0d3a52 40%, #0a1628 100%);
 color: var(--white);
 overflow: hidden; white-space: nowrap; position: sticky; top: 0; z-index: 101;
 padding: 0; font-size: 13.5px; font-weight: 500; height: 40px; display: flex; align-items: center;
 border-bottom: 1px solid rgba(13,184,166,0.25);
 }
 .topbar-track {
 display: inline-flex; align-items: center; gap: 0;
 animation: topbar-scroll 28s linear infinite;
 white-space: nowrap;
 }
 .topbar:hover .topbar-track { animation-play-state: paused; }
 .topbar-item {
 display: inline-flex; align-items: center; gap: 8px; padding: 0 40px;
 color: rgba(255,255,255,0.88); text-decoration: none; font-weight: 500; font-size: 13.5px;
 border-right: 1px solid rgba(13,184,166,0.3);
 }
 .topbar-item:hover { color: var(--teal-light); }
 .topbar-sep { color: rgba(255,255,255,0.4); padding: 0 12px; }
 @keyframes topbar-scroll { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

 /* SECTION SHARED */
 section { padding: 64px 5%; }
 .section-tag {
 display: inline-block; background: rgba(13,148,136,0.1); color: var(--teal);
 font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px;
 padding: 5px 14px; border-radius: 50px; margin-bottom: 16px;
 }
 .section-title {
 font-family: 'Playfair Display', serif;
 font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight: 700;
 color: var(--navy); line-height: 1.25; margin-bottom: 16px;
 }
 .section-title em { font-style: normal; color: var(--teal); }
 .section-sub { font-size: 16px; color: var(--gray); line-height: 1.7; max-width: 100%; width: 100%; text-align: justify; }
 .center { text-align: center; }
 .center .section-sub { margin: 0 auto; text-align: justify; max-width: 100%; width: 100%; }

 /* ABOUT */
 .about { background: var(--light); }
 .about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: stretch; margin-top: 32px; }
 .about-img-wrap {
 background: linear-gradient(135deg, #060f1e 0%, #0a1f3a 50%, #0d2847 100%);
 border-radius: 20px; padding: 40px 36px; text-align: center;
 position: relative; overflow: hidden;
 border: 1px solid rgba(13,184,166,0.2);
 box-shadow: 0 8px 40px rgba(0,0,0,0.18), inset 0 1px 0 rgba(255,255,255,0.05);
 display: flex; flex-direction: column; justify-content: center;
 min-height: 0;
 }
 /* Animated bubbles */
 .ab-bubble {
 position: absolute; border-radius: 50%; pointer-events: none;
 }
 .ab-bubble-1 {
 width: 180px; height: 180px;
 background: radial-gradient(circle, rgba(13,148,136,0.22) 0%, transparent 70%);
 top: -50px; right: -50px;
 animation: ab-float1 7s ease-in-out infinite alternate;
 }
 .ab-bubble-2 {
 width: 130px; height: 130px;
 background: radial-gradient(circle, rgba(245,158,11,0.18) 0%, transparent 70%);
 bottom: -40px; left: -40px;
 animation: ab-float2 9s ease-in-out infinite alternate;
 }
 .ab-bubble-3 {
 width: 80px; height: 80px;
 background: radial-gradient(circle, rgba(139,92,246,0.20) 0%, transparent 70%);
 top: 40%; left: 10%;
 animation: ab-float3 6s ease-in-out infinite alternate;
 }
 .ab-bubble-4 {
 width: 55px; height: 55px;
 background: radial-gradient(circle, rgba(0,255,247,0.15) 0%, transparent 70%);
 top: 20%; right: 15%;
 animation: ab-float4 8s ease-in-out infinite alternate;
 }
 .ab-bubble-5 {
 width: 40px; height: 40px;
 background: radial-gradient(circle, rgba(255,45,85,0.18) 0%, transparent 70%);
 bottom: 25%; right: 10%;
 animation: ab-float5 5s ease-in-out infinite alternate;
 }
 @keyframes ab-float1 { 0%{transform:translate(0,0) scale(1);} 100%{transform:translate(-20px,25px) scale(1.2);} }
 @keyframes ab-float2 { 0%{transform:translate(0,0) scale(1);} 100%{transform:translate(22px,-18px) scale(1.15);} }
 @keyframes ab-float3 { 0%{transform:translate(0,0) scale(1);} 100%{transform:translate(15px,-20px) scale(1.3);} }
 @keyframes ab-float4 { 0%{transform:translate(0,0) scale(1);} 100%{transform:translate(-12px,14px) scale(1.2);} }
 @keyframes ab-float5 { 0%{transform:translate(0,0) scale(1);} 100%{transform:translate(-10px,-16px) scale(1.25);} }
 /* Glowing pulse ring behind icon */
 .about-icon-wrap {
 position: relative; display: inline-flex; align-items: center; justify-content: center;
 width: 100px; height: 100px; margin: 0 auto 20px; z-index: 1;
 }
 .about-icon-wrap::before {
 content: ''; position: absolute; inset: -8px; border-radius: 50%;
 border: 2px solid rgba(13,184,166,0.35);
 animation: ab-pulse 3s ease-in-out infinite;
 }
 .about-icon-wrap::after {
 content: ''; position: absolute; inset: -18px; border-radius: 50%;
 border: 1px solid rgba(13,184,166,0.15);
 animation: ab-pulse 3s ease-in-out infinite 0.5s;
 }
 @keyframes ab-pulse {
 0%,100% { transform: scale(1); opacity: 0.7; }
 50% { transform: scale(1.08); opacity: 1; }
 }
 .about-icon-bg {
 width: 100px; height: 100px; border-radius: 50%;
 background: linear-gradient(135deg, rgba(13,148,136,0.25), rgba(13,184,166,0.1));
 border: 1.5px solid rgba(13,184,166,0.3);
 display: flex; align-items: center; justify-content: center;
 font-size: 2.8rem; position: relative; z-index: 1;
 }
 .about-img-wrap h3 { color: var(--white); font-family: 'Playfair Display', serif; font-size: 1.35rem; margin-top: 4px; position: relative; z-index: 1; line-height: 1.4; }
 .about-img-wrap > p { color: rgba(255,255,255,0.5); font-size: 13px; margin-top: 6px; position: relative; z-index: 1; }
 /* Divider */
 .about-divider {
 width: 60%; height: 1px; margin: 20px auto;
 background: linear-gradient(90deg, transparent, rgba(13,184,166,0.4), transparent);
 position: relative; z-index: 1;
 }
 /* Stat mini row */
 .about-mini-stats { display: flex; gap: 12px; justify-content: center; margin-bottom: 20px; position: relative; z-index: 1; }
 .about-mini-stat { flex: 1; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08); border-radius: 12px; padding: 12px 8px; text-align: center; }
 .about-mini-stat .ams-num { font-family: 'Playfair Display', serif; font-size: 1.4rem; font-weight: 700; background: linear-gradient(135deg,#0d9488,#14b8a6); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
 .about-mini-stat .ams-lbl { font-size: 10px; color: rgba(255,255,255,0.45); margin-top: 3px; line-height: 1.3; }
 .about-badges { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; position: relative; z-index: 1; }
 .badge { background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.15); color: var(--white); font-size: 11.5px; padding: 6px 14px; border-radius: 50px; font-weight: 500; transition: background 0.2s; }
 .badge:hover { background: rgba(13,184,166,0.15); border-color: rgba(13,184,166,0.35); }
 .about-points { display: flex; flex-direction: column; gap: 22px; margin-top: 28px; }
 .about-point { display: flex; gap: 16px; }
 .ap-icon { width: 44px; height: 44px; background: rgba(13,148,136,0.1); border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 1.3rem; flex-shrink: 0; }
 .ap-content h4 { font-size: 15px; font-weight: 600; color: var(--navy); margin-bottom: 4px; }
 .ap-content p { font-size: 14px; color: var(--gray); line-height: 1.6; }

 /* SERVICES */
 .services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin-top: 36px; }
 .service-card {
 background: var(--white); border: 1px solid var(--border); border-radius: 16px;
 padding: 32px 28px; transition: all 0.3s; position: relative; overflow: hidden;
 text-align: center;
 }
 .service-card::before {
 content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
 background: linear-gradient(90deg, var(--teal), var(--teal-light)); opacity: 0; transition: opacity 0.3s;
 }
 .service-card:hover { box-shadow: 0 12px 40px rgba(13,148,136,0.12); transform: translateY(-4px); border-color: rgba(13,148,136,0.2); }
 .service-card:hover::before { opacity: 1; }
 .sc-icon { 
 width: 64px; height: 64px; margin: 0 auto 20px; 
 background: linear-gradient(135deg, rgba(13,148,136,0.12) 0%, rgba(13,148,136,0.06) 100%);
 border-radius: 16px; display: flex; align-items: center; justify-content: center;
 border: 1.5px solid rgba(13,148,136,0.2);
 }
 .sc-icon svg { width: 30px; height: 30px; }
 .service-card h3 { font-size: 17px; font-weight: 700; color: var(--navy); margin-bottom: 10px; text-align: left; }
 .service-card p { font-size: 14px; color: var(--gray); line-height: 1.65; text-align: left; }
 .sc-link { display: inline-flex; align-items: center; gap: 6px; color: var(--teal); font-size: 13.5px; font-weight: 600; margin-top: 16px; text-decoration: none; cursor: pointer; width:100%; justify-content:center; }
 .sc-link:hover { color: var(--teal-light); }

 /* SERVICE MODAL */
 .svc-modal-overlay {
 display: none; position: fixed; inset: 0; z-index: 1000;
 background: rgba(6,15,30,0.82); backdrop-filter: blur(6px);
 align-items: center; justify-content: center; padding: 24px;
 }
 .svc-modal-overlay.open { display: flex; }
 .svc-modal {
 background: var(--white); border-radius: 20px; max-width: 720px; width: 100%;
 max-height: 88vh; overflow-y: auto; padding: 44px 48px;
 position: relative; box-shadow: 0 24px 80px rgba(0,0,0,0.35);
 animation: modal-in 0.28s ease;
 }
 @keyframes modal-in { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }
 .svc-modal-close {
 position: absolute; top: 18px; right: 22px;
 width: 36px; height: 36px; border-radius: 50%;
 background: var(--light); border: none; cursor: pointer;
 font-size: 18px; color: var(--navy); display: flex; align-items: center; justify-content: center;
 transition: background 0.2s;
 }
 .svc-modal-close:hover { background: var(--border); }
 .svc-modal-icon { font-size: 2.8rem; margin-bottom: 14px; }
 .svc-modal h2 { font-family: 'Playfair Display', serif; font-size: 1.7rem; color: var(--navy); margin-bottom: 18px; }
 .svc-modal p { font-size: 15px; color: var(--gray); line-height: 1.8; text-align: justify; margin-bottom: 12px; }
 .svc-modal-cta {
 display: inline-flex; align-items: center; gap: 8px;
 background: var(--teal); color: var(--white); padding: 13px 28px;
 border-radius: 8px; text-decoration: none; font-weight: 600; font-size: 14px;
 margin-top: 20px; transition: background 0.2s;
 }
 .svc-modal-cta:hover { background: var(--teal-light); }

 /* SPECIALTIES */
 .specialties { background: #060f1e; position: relative; overflow: hidden; }
 .specialties::before {
 content: '';
 position: absolute; inset: 0;
 background: radial-gradient(ellipse 70% 60% at 50% 50%, rgba(13,148,136,0.10) 0%, transparent 70%),
 radial-gradient(ellipse 40% 30% at 80% 80%, rgba(245,158,11,0.05) 0%, transparent 60%);
 pointer-events: none;
 }
 .specialties .section-title { color: var(--white); }
 .specialties .section-sub { color: rgba(255,255,255,0.6); }
 .specialties .section-tag { background: rgba(13,148,136,0.25); color: var(--teal-light); }
 .spec-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 36px; }
 .spec-item {
 background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1);
 border-radius: 12px; padding: 22px 18px; text-align: center;
 transition: all 0.25s; display: flex; flex-direction: column; align-items: center; justify-content: center;
 }
 .spec-item:hover { background: rgba(13,148,136,0.15); border-color: rgba(13,148,136,0.4); transform: translateY(-3px); }
 .spec-item .icon { font-size: 1.8rem; margin-bottom: 10px; }
 .spec-item p { color: rgba(255,255,255,0.8); font-size: 13.5px; font-weight: 500; }

 /* WHY US */
 .why { background: var(--light); }
 .why-grid {
 display: grid; grid-template-columns: 1fr 1fr; gap: 28px; align-items: stretch; margin-top: 32px;
 }
 .why-features {
 display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: stretch;
 }
 .why-feat {
 background: var(--white); border-radius: 14px; padding: 32px 20px;
 border: 1px solid var(--border); transition: all 0.25s;
 display: flex; flex-direction: column; align-items: center; justify-content: center;
 text-align: center; height: 100%;
 }
 .why-feat:hover { border-color: var(--teal); box-shadow: 0 6px 24px rgba(13,148,136,0.1); }
 .wf-num {
 font-family: 'Playfair Display', serif; font-size: 2.6rem; font-weight: 700;
 color: var(--teal); margin-bottom: 10px; text-align: center; width: 100%;
 }
 .why-feat h4 {
 font-size: 15px; font-weight: 700; color: var(--navy); margin-bottom: 8px;
 text-align: center; width: 100%;
 }
 .why-feat p { font-size: 13px; color: var(--gray); line-height: 1.7; margin-top: 6px; text-align: justify; }
 .why-visual {
 background: linear-gradient(135deg, var(--navy) 0%, #0f3a5a 100%);
 border-radius: 20px; padding: 48px 40px; color: var(--white);
 display: flex; flex-direction: column; justify-content: center;
 }
 .why-visual h3 {
 font-family: 'Playfair Display', serif; font-size: 1.7rem; margin-bottom: 28px;
 text-align: center; width: 100%;
 }
 .why-visual-sub {
 font-size: 14px; color: rgba(255,255,255,0.65); text-align: center;
 margin-bottom: 36px; line-height: 1.7;
 }
 .why-promise-list { display: flex; flex-direction: column; gap: 18px; }
 .why-promise-item {
 display: flex; align-items: flex-start; gap: 14px;
 background: rgba(255,255,255,0.05); border-radius: 12px;
 padding: 16px 18px; border: 1px solid rgba(255,255,255,0.08);
 transition: all 0.25s;
 }
 .why-promise-item:hover { background: rgba(13,148,136,0.15); border-color: rgba(13,148,136,0.35); }
 .why-promise-icon {
 width: 36px; height: 36px; background: var(--teal); border-radius: 50%;
 display: flex; align-items: center; justify-content: center;
 font-size: 16px; flex-shrink: 0;
 }
 .why-promise-text h5 { font-size: 14px; font-weight: 700; color: #fff; margin-bottom: 3px; }
 .why-promise-text p { font-size: 12.5px; color: rgba(255,255,255,0.58); line-height: 1.6; }
 .process-steps { display: flex; flex-direction: column; gap: 20px; }
 .process-step { display: flex; align-items: flex-start; gap: 16px; }
 .ps-num { width: 36px; height: 36px; background: var(--teal); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 14px; flex-shrink: 0; }
 .ps-content h5 { font-size: 14px; font-weight: 600; color: var(--white); margin-bottom: 3px; }
 .ps-content p { font-size: 13px; color: rgba(255,255,255,0.55); }

 /* STATS BANNER */
 .stats-banner {
 background: linear-gradient(135deg, var(--teal) 0%, #0a8f84 100%);
 padding: 64px 5%;
 }
 .stats-row { display: flex; justify-content: space-around; flex-wrap: wrap; gap: 40px; }
 .stat-item { text-align: center; }
 .stat-item .num { font-family: 'Playfair Display', serif; font-size: 3rem; font-weight: 700; color: var(--white); line-height: 1; }
 .stat-item .label { font-size: 14px; color: rgba(255,255,255,0.8); margin-top: 8px; font-weight: 500; }

 /* REVIEWS */
 .reviews { background: #060f1e; position: relative; overflow: hidden; }
 .reviews::before {
 content: '';
 position: absolute; inset: 0;
 background: radial-gradient(ellipse 80% 60% at 50% 30%, rgba(13,148,136,0.07) 0%, transparent 70%);
 pointer-events: none;
 }
 .reviews .section-title { color: #fff; }
 .reviews .section-sub { color: rgba(255,255,255,0.6); }
 .reviews .section-tag { background: rgba(13,148,136,0.25); color: var(--teal-light); }
 .reviews-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; margin-top: 36px; }
 @media(max-width:1200px){ .reviews-grid { grid-template-columns: repeat(3,1fr) !important; } }
 @media(max-width:900px){ .reviews-grid { grid-template-columns: repeat(2,1fr) !important; } }
 @media(max-width:580px){ .reviews-grid { grid-template-columns: 1fr !important; } }
 .review-card {
 border-radius: 18px; padding: 28px;
 transition: all 0.3s; position: relative; overflow: hidden;
 border: 1px solid transparent;
 }
 .review-card::before {
 content: ''; position: absolute; inset: 0; border-radius: 18px;
 background: var(--rc-bg); z-index: 0; opacity: 0.9;
 animation: rc-pulse var(--rc-dur,3s) ease-in-out infinite alternate;
 }
 @keyframes rc-pulse { 0%{opacity:0.8;} 100%{opacity:1;} }
 .review-card::after {
 content: ''; position: absolute; inset: -1px; border-radius: 19px;
 border: 1.5px solid var(--rc-border, rgba(13,184,166,0.3)); z-index: 0;
 animation: rc-glow var(--rc-dur,3s) ease-in-out infinite alternate;
 }
 @keyframes rc-glow {
 0% { box-shadow: 0 0 0px var(--rc-glow-color,rgba(13,184,166,0)); }
 100% { box-shadow: 0 0 20px var(--rc-glow-color,rgba(13,184,166,0.25)); }
 }
 .review-card:hover { transform: translateY(-5px); }
 .review-card > * { position: relative; z-index: 1; }

 .rc-1 { --rc-bg:linear-gradient(145deg,#071520,#0c2336); --rc-border:rgba(13,184,166,0.45); --rc-glow-color:rgba(13,184,166,0.28); --rc-dur:2.8s; }
 .rc-2 { --rc-bg:linear-gradient(145deg,#060e1c,#0a1a2c); --rc-border:rgba(20,184,166,0.40); --rc-glow-color:rgba(20,184,166,0.22); --rc-dur:3.2s; }
 .rc-3 { --rc-bg:linear-gradient(145deg,#091a28,#0e2a3e); --rc-border:rgba(13,148,136,0.45); --rc-glow-color:rgba(13,148,136,0.28); --rc-dur:2.5s; }
 .rc-4 { --rc-bg:linear-gradient(145deg,#0a1628,#102440); --rc-border:rgba(14,184,166,0.42); --rc-glow-color:rgba(14,184,166,0.24); --rc-dur:3.5s; }
 .rc-5 { --rc-bg:linear-gradient(145deg,#071420,#0b1e30); --rc-border:rgba(13,184,166,0.40); --rc-glow-color:rgba(13,184,166,0.22); --rc-dur:2.9s; }
 .rc-6 { --rc-bg:linear-gradient(145deg,#0c1e32,#112e4a); --rc-border:rgba(20,184,166,0.45); --rc-glow-color:rgba(20,184,166,0.28); --rc-dur:3.1s; }
 .rc-7 { --rc-bg:linear-gradient(145deg,#081625,#0d2438); --rc-border:rgba(13,148,136,0.42); --rc-glow-color:rgba(13,148,136,0.24); --rc-dur:2.7s; }
 .rc-8 { --rc-bg:linear-gradient(145deg,#0b1c2e,#102c44); --rc-border:rgba(20,184,166,0.40); --rc-glow-color:rgba(20,184,166,0.22); --rc-dur:3.3s; }
 .rc-9 { --rc-bg:linear-gradient(145deg,#0a1c2e,#0f2a42); --rc-border:rgba(13,184,166,0.45); --rc-glow-color:rgba(13,184,166,0.28); --rc-dur:2.6s; }
 .rc-10 { --rc-bg:linear-gradient(145deg,#0c2034,#112e48); --rc-border:rgba(14,184,166,0.42); --rc-glow-color:rgba(14,184,166,0.24); --rc-dur:3.4s; }

 .stars { color: var(--gold); font-size: 15px; margin-bottom: 14px; letter-spacing: 2px; }
 .review-text { font-size: 14px; color: rgba(255,255,255,0.8); line-height: 1.7; margin-bottom: 18px; font-style: italic; text-align: justify; }
 .reviewer { display: flex; align-items: center; gap: 12px; }
 .reviewer-avatar {
 width: 44px; height: 44px; border-radius: 50%;
 background: linear-gradient(135deg, var(--teal) 0%, var(--navy) 100%);
 display: flex; align-items: center; justify-content: center;
 color: var(--white); font-weight: 700; font-size: 16px; flex-shrink: 0;
 }
 .reviewer-info h5 { font-size: 14px; font-weight: 700; color: #fff; }
 .reviewer-info span { font-size: 12px; color: rgba(255,255,255,0.55); }

 /* CONTACT */
 .contact { background: #020c18; position: relative; overflow: hidden; }

 /* Unique "Revenue Flow" animated background for contact */
 .contact-bg-canvas {
 position: absolute; inset: 0; width: 100%; height: 100%;
 pointer-events: none; z-index: 0;
 }
 /* Flowing revenue nodes */
 .contact-node {
 position: absolute; border-radius: 50%;
 background: radial-gradient(circle, rgba(13,184,166,0.5) 0%, transparent 70%);
 animation: node-pulse linear infinite;
 pointer-events: none;
 }
 @keyframes node-pulse {
 0% { transform: scale(0.4) translate(0,0); opacity: 0; }
 20% { opacity: 1; }
 80% { opacity: 0.5; }
 100% { transform: scale(1.8) translate(var(--nx,20px), var(--ny,-40px)); opacity: 0; }
 }
 /* Dollar sign rain effect */
 .contact-dollar {
 position: absolute; top: -30px; color: rgba(13,184,166,0.12);
 font-size: 18px; font-weight: 900; font-family: 'Playfair Display', serif;
 animation: dollar-fall linear infinite;
 pointer-events: none; user-select: none;
 }
 @keyframes dollar-fall {
 0% { transform: translateY(-40px) rotate(0deg); opacity: 0; }
 10% { opacity: 1; }
 90% { opacity: 0.3; }
 100% { transform: translateY(calc(100vh + 40px)) rotate(15deg); opacity: 0; }
 }
 /* Morphing claim-path network lines */
 .contact-network {
 position: absolute; inset: 0; pointer-events: none; z-index: 0;
 }
 /* Glowing particles that travel paths */
 .contact-particle {
 position: absolute; width: 4px; height: 4px; border-radius: 50%;
 background: #14b8a6;
 box-shadow: 0 0 8px #14b8a6, 0 0 16px rgba(13,184,166,0.4);
 animation: particle-travel linear infinite;
 pointer-events: none;
 }
 @keyframes particle-travel {
 0% { transform: translate(0,0); opacity: 0; }
 5% { opacity: 1; }
 95% { opacity: 0.8; }
 100% { transform: translate(var(--px,200px), var(--py,-150px)); opacity: 0; }
 }
 /* Hexagonal claim "cells" in background */
 .contact-hex {
 position: absolute;
 width: 60px; height: 69px;
 clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
 background: rgba(13,148,136,0.04);
 border: none;
 animation: hex-breathe ease-in-out infinite alternate;
 pointer-events: none;
 }
 @keyframes hex-breathe {
 0% { opacity: 0.3; transform: scale(0.9); }
 100% { opacity: 0.8; transform: scale(1.05); background: rgba(13,148,136,0.07); }
 }

 .contact::before {
 content: '';
 position: absolute; inset: 0; z-index: 1;
 background: radial-gradient(ellipse 70% 60% at 30% 50%, rgba(13,148,136,0.09) 0%, transparent 65%),
 radial-gradient(ellipse 50% 40% at 80% 70%, rgba(245,158,11,0.04) 0%, transparent 55%),
 linear-gradient(135deg, rgba(2,12,24,0.6) 0%, rgba(2,12,24,0.3) 100%);
 pointer-events: none;
 }
 .contact-grid { display: grid; grid-template-columns: 1fr 1.3fr; gap: 60px; margin-top: 32px; align-items: start; }
 .contact-info { display: flex; flex-direction: column; gap: 24px; }
 .ci-item { display: flex; gap: 16px; align-items: flex-start; }
 .ci-icon { width: 48px; height: 48px; background: var(--teal); border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 1.3rem; flex-shrink: 0; }
 .ci-text h4 { font-size: 15px; font-weight: 700; color: #fff; margin-bottom: 4px; }
 .ci-text p, .ci-text a { font-size: 14px; color: rgba(255,255,255,0.7); text-decoration: none; line-height: 1.5; }
 .ci-text a:hover { color: var(--teal-light); }
 .contact-form { background: rgba(255,255,255,0.97); border-radius: 20px; padding: 40px; border: 1px solid var(--border); box-shadow: 0 24px 60px rgba(0,0,0,0.25); }
 .contact-form h3 { font-family: 'Playfair Display', serif; font-size: 1.5rem; color: var(--navy); margin-bottom: 24px; }
 .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 16px; }
 .form-group { display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px; }
 .form-group label { font-size: 13px; font-weight: 600; color: var(--navy); }
 .form-group input, .form-group select, .form-group textarea {
 border: 1.5px solid var(--border); border-radius: 8px; padding: 12px 14px;
 font-family: 'DM Sans', sans-serif; font-size: 14px; color: var(--navy);
 background: var(--light); outline: none; transition: border-color 0.2s;
 }
 .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--teal); background: var(--white); }
 .form-group textarea { resize: vertical; min-height: 100px; }
 .form-submit {
 width: 100%; background: var(--teal); color: var(--white); border: none;
 padding: 15px; border-radius: 8px; font-size: 15px; font-weight: 700;
 cursor: pointer; transition: background 0.2s; font-family: 'DM Sans', sans-serif;
 letter-spacing: 0.3px;
 }
 .form-submit:hover { background: var(--teal-light); }
@media (min-width: 1200px) {
  .contact-grid {
    gap: 80px;
  }}
 /* FOOTER */
 footer {
 background: var(--navy); color: rgba(255,255,255,0.7);
 padding: 64px 5% 32px;
 }
 .footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 48px; margin-bottom: 48px; }
 .footer-brand p { font-size: 14px; line-height: 1.75; margin-top: 16px; }
 .footer-logo img { height: 80px; border-radius: 10px; width: auto; object-fit: contain; }
 .footer-logo span { color: var(--white); font-family: 'Playfair Display', serif; font-size: 1.2rem; font-weight: 700; }
 footer h4 { color: var(--white); font-size: 14px; font-weight: 700; margin-bottom: 16px; text-transform: uppercase; letter-spacing: 1px; }
 footer ul { list-style: none; display: flex; flex-direction: column; gap: 10px; }
 footer ul li a { color: rgba(255,255,255,0.6); text-decoration: none; font-size: 14px; transition: color 0.2s; }
 footer ul li a:hover { color: var(--teal-light); }
 .footer-bottom { border-top: 1px solid rgba(255,255,255,0.1); padding-top: 28px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; }
 .footer-bottom p { font-size: 13px; }
 .footer-social { display: flex; gap: 12px; }
 .social-btn { width: 36px; height: 36px; background: rgba(255,255,255,0.08); border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: 15px; color: rgba(255,255,255,0.7); text-decoration: none; transition: all 0.2s; }
 .social-btn:hover { background: var(--teal); color: var(--white); }

 @keyframes pulse { 0%,100%{opacity:1} 50%{opacity:0.4} }

 /* ===== NEON CORNER DECORATORS (static, no blinking) ===== */
 .neon-corner-wrap {
 position: relative;
 }
 .neon-corner-wrap::before,
 .neon-corner-wrap::after {
 content: '';
 position: absolute;
 width: 0; height: 0;
 z-index: 10;
 pointer-events: none;
 display: none;
 }
 .neon-corner-wrap .neon-corner-bl,
 .neon-corner-wrap .neon-corner-br {
 display: none;
 }

 /* ===== STEP CONNECTOR LINES (animated) ===== */
 .hp-timeline { position: relative; }
 .hp-connector {
 position: absolute;
 top: 40px;
 height: 3px;
 z-index: 0;
 overflow: hidden;
 background: transparent;
 border-radius: 2px;
 }
 .hp-connector::after {
 display: none;
 }
 /* Individual connector positioning for 6 steps in 2 rows of 3 */
 .hp-conn-1-2 { left: calc(16.67% + 40px); width: calc(16.67% - 80px); }
 .hp-conn-2-3 { left: calc(33.33% + 40px); width: calc(16.67% - 80px); }
 .hp-conn-3-4 { display: none; } /* row break */
 .hp-conn-4-5 { left: calc(16.67% + 40px); width: calc(16.67% - 80px); top: calc(40px + 180px); }
 .hp-conn-5-6 { left: calc(33.33% + 40px); width: calc(16.67% - 80px); top: calc(40px + 180px); }

 /* FAQ answer text justified */
 .faq-a p { text-align: justify !important; }
 /* RATING TOOL */
 .rating-section {
 background: #060f1e;
 padding: 64px 5%;
 text-align: center;
 position: relative; overflow: hidden;
 }
 .rating-section::before {
 content: '';
 position: absolute; inset: 0;
 background: radial-gradient(ellipse 55% 70% at 75% 40%, rgba(13,148,136,0.12) 0%, transparent 65%),
 radial-gradient(ellipse 40% 50% at 15% 80%, rgba(13,148,136,0.07) 0%, transparent 60%),
 radial-gradient(ellipse 50% 40% at 50% 10%, rgba(13,148,136,0.06) 0%, transparent 65%);
 pointer-events: none; z-index: 0;
 }
 .rating-section .section-tag { background: rgba(13,148,136,0.25); color: var(--teal-light); }
 .rating-section .section-title { color: var(--white); }
 .rating-section .section-title em { color: var(--teal-light); }
 .rating-section .section-sub { color: rgba(255,255,255,0.65); margin: 0 auto 48px; }
 .rating-widget {
 background: rgba(4,20,36,0.75); backdrop-filter: blur(20px);
 border: 1px solid rgba(13,184,166,0.30); border-radius: 24px;
 padding: 48px 52px; max-width: 100%; width: 100%; margin: 0 auto;
 position: relative; z-index: 1;
 box-shadow: 0 8px 48px rgba(0,0,0,0.5), inset 0 1px 0 rgba(13,184,166,0.15);
 }
 .rating-stars-input { display: flex; justify-content: center; gap: 14px; margin-bottom: 28px; }
 .rating-stars-input .star-btn {
 font-size: 3rem; cursor: pointer; transition: transform 0.2s, filter 0.2s;
 background: none; border: none; color: rgba(255,255,255,0.2); padding: 0; line-height: 1;
 filter: grayscale(1);
 }
 .rating-stars-input .star-btn.active,
 .rating-stars-input .star-btn.hover {
 color: var(--gold); filter: grayscale(0); transform: scale(1.2);
 }
 .rating-label { color: rgba(255,255,255,0.75); font-size: 16px; font-weight: 500; margin-bottom: 24px; }
 .rating-form-inner { display: flex; flex-direction: column; gap: 14px; }
 .rating-input {
 background: rgba(255,255,255,0.08); border: 1.5px solid rgba(255,255,255,0.15);
 border-radius: 10px; padding: 13px 18px; font-family: 'DM Sans', sans-serif;
 font-size: 14px; color: var(--white); outline: none; transition: border-color 0.2s;
 width: 100%;
 }
 .rating-input::placeholder { color: rgba(255,255,255,0.35); }
 .rating-input:focus { border-color: var(--teal-light); }
 .rating-textarea { min-height: 100px; resize: vertical; }
 .rating-submit {
 background: var(--teal); color: var(--white); border: none; padding: 15px 36px;
 border-radius: 10px; font-size: 15px; font-weight: 700; cursor: pointer;
 font-family: 'DM Sans', sans-serif; transition: all 0.2s; margin-top: 6px;
 letter-spacing: 0.3px; width: 100%;
 }
 .rating-submit:hover { background: var(--teal-light); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(13,148,136,0.4); }
 .rating-success {
 display: none; padding: 32px; text-align: center;
 color: var(--white);
 }
 .rating-success .check { font-size: 3.5rem; margin-bottom: 16px; }
 .rating-success h3 { font-family: 'Playfair Display', serif; font-size: 1.6rem; margin-bottom: 10px; color: var(--teal-light); }
 .rating-success p { color: rgba(255,255,255,0.65); font-size: 15px; }

 /* Published ratings display */
 .published-ratings { margin-top: 40px; position: relative; z-index: 1; }
 .pub-ratings-title { color: rgba(255,255,255,0.6); font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 20px; }
 .pub-ratings-list { display: flex; flex-direction: column; gap: 16px; max-height: 360px; overflow-y: auto; padding-right: 4px; }
 .pub-ratings-list::-webkit-scrollbar { width: 4px; }
 .pub-ratings-list::-webkit-scrollbar-track { background: rgba(255,255,255,0.05); border-radius: 4px; }
 .pub-ratings-list::-webkit-scrollbar-thumb { background: var(--teal); border-radius: 4px; }
 .pub-rating-card {
 background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1);
 border-radius: 14px; padding: 20px 24px; text-align: left;
 }
 .pub-rating-card .stars-display { color: var(--gold); font-size: 16px; margin-bottom: 8px; letter-spacing: 2px; }
 .pub-rating-card .pub-comment { color: rgba(255,255,255,0.75); font-size: 14px; line-height: 1.65; margin-bottom: 12px; font-style: italic; }
 .pub-rating-card .pub-author { color: var(--teal-light); font-size: 13px; font-weight: 600; }
 .no-ratings { color: rgba(255,255,255,0.4); font-size: 14px; padding: 24px; text-align: center; }

 /* MAP SECTION */
 .map-section { padding: 0; display: flex; flex-direction: column; }
 .map-section-inner { padding: 56px 5% 0; background: var(--light); overflow: hidden; }
 .map-section-inner .section-tag { background: rgba(13,148,136,0.1); color: var(--teal); }
 .map-container {
 width: 100%; height: 480px; overflow: hidden;
 margin-top: 40px; border-radius: 0;
 }
 .map-container iframe { width: 100%; height: 100%; border: none; display: block; }

 /* Scrolling info strip */
 .map-info-strip {
 background: var(--navy);
 padding: 0;
 height: 54px;
 overflow: hidden;
 white-space: nowrap;
 display: flex;
 align-items: center;
 border-top: 1px solid rgba(13,184,166,0.25);
 position: relative;
 }
 .map-info-strip::before,
 .map-info-strip::after {
 content: ''; position: absolute; top: 0; bottom: 0; width: 80px; z-index: 2; pointer-events: none;
 }
 .map-info-strip::before { left: 0; background: linear-gradient(90deg, var(--navy), transparent); }
 .map-info-strip::after { right: 0; background: linear-gradient(-90deg, var(--navy), transparent); }
 .map-info-track {
 display: inline-flex; align-items: center; gap: 0;
 animation: map-info-scroll 22s linear infinite;
 white-space: nowrap;
 }
 .map-info-strip:hover .map-info-track { animation-play-state: paused; }
 @keyframes map-info-scroll { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }
 .map-info-item {
 display: inline-flex; align-items: center; gap: 10px;
 color: rgba(255,255,255,0.88); font-size: 14px; font-weight: 500;
 padding: 0 44px;
 border-right: 1px solid rgba(13,184,166,0.3);
 height: 54px;
 transition: color 0.2s;
 cursor: default;
 white-space: nowrap;
 }
 .map-info-item:hover { color: var(--teal-light); }
 .map-info-item .icon {
 display: inline-flex; align-items: center; justify-content: center;
 width: 28px; height: 28px; border-radius: 50%;
 background: rgba(13,184,166,0.15);
 flex-shrink: 0;
 }
 .map-info-item .icon svg { width: 14px; height: 14px; }


 /* RESPONSIVE */

 /* BLOG PAGE OVERLAY */
 #blog-page {
 display: none;
 position: fixed; inset: 0; z-index: 200;
 background: var(--light); overflow-y: auto;
 }
 #blog-page.active { display: block; }
 .blog-page-header {
 background: var(--navy); padding: 24px 5%;
 display: flex; align-items: center; gap: 20px;
 position: sticky; top: 0; z-index: 10;
 box-shadow: 0 2px 20px rgba(0,0,0,0.3);
 }
 .blog-back-btn {
 background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.2);
 color: var(--white); padding: 10px 20px; border-radius: 8px;
 font-size: 14px; font-weight: 600; cursor: pointer; display: flex; align-items: center; gap: 8px;
 transition: all 0.2s; font-family: 'DM Sans', sans-serif;
 }
 .blog-back-btn:hover { background: var(--teal); border-color: var(--teal); }
 .blog-page-title { color: var(--white); font-family: 'Playfair Display', serif; font-size: 1.3rem; font-weight: 700; }
 .blog-page-content { padding: 60px 5%; max-width: 1300px; margin: 0 auto; }

 /* BLOG DETAIL OVERLAY */
 #blog-detail {
 display: none;
 position: fixed; inset: 0; z-index: 300;
 background: var(--white); overflow-y: auto;
 }
 #blog-detail.active { display: block; }
 .blog-detail-header {
 background: var(--navy); padding: 24px 5%;
 display: flex; align-items: center; gap: 20px;
 position: sticky; top: 0; z-index: 10;
 box-shadow: 0 2px 20px rgba(0,0,0,0.3);
 }
 .blog-detail-content { max-width: 860px; margin: 0 auto; padding: 60px 5%; }
 .blog-detail-tag { display: inline-block; background: rgba(13,148,136,0.1); color: var(--teal); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; padding: 4px 12px; border-radius: 20px; margin-bottom: 20px; }
 .blog-detail-title { font-family: 'Playfair Display', serif; font-size: clamp(1.6rem, 3vw, 2.2rem); font-weight: 700; color: var(--navy); line-height: 1.3; margin-bottom: 16px; }
 .blog-detail-meta { display: flex; gap: 20px; align-items: center; font-size: 13px; color: var(--gray); margin-bottom: 36px; padding-bottom: 28px; border-bottom: 1.5px solid var(--border); }
 .blog-detail-body { font-size: 16px; color: #374151; line-height: 1.85; }
 .blog-detail-body h3 { font-family: 'Playfair Display', serif; font-size: 1.3rem; color: var(--navy); margin: 36px 0 14px; }
 .blog-detail-body p { margin-bottom: 20px; }
 .blog-detail-body ul { margin: 0 0 20px 24px; }
 .blog-detail-body ul li { margin-bottom: 8px; }
 .blog-detail-thumb {
 height: 260px; border-radius: 16px; display: flex; align-items: center; justify-content: center;
 font-size: 4rem; margin-bottom: 36px; overflow: hidden;
 }
 .blog-detail-thumb svg { width: 110px; height: 110px; }

 /* BLOG */
 .blog { background: var(--light); padding: 64px 5%; }
 .blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin-top: 36px; }
 .blog-card {
 background: var(--white); border: 1px solid var(--border); border-radius: 18px;
 overflow: hidden; transition: all 0.3s; display: flex; flex-direction: column;
 }
 .blog-card:hover { box-shadow: 0 16px 48px rgba(13,148,136,0.13); transform: translateY(-5px); border-color: rgba(13,148,136,0.3); }
 .blog-thumb {
 height: 180px; display: flex; align-items: center; justify-content: center;
 font-size: 3rem; position: relative; overflow: hidden;
 }
 .blog-thumb-billing { background: linear-gradient(135deg, #e0f7fa, #b2ebf2); }
 .blog-thumb-coding { background: linear-gradient(135deg, #e8f5e9, #c8e6c9); }
 .blog-thumb-ar { background: linear-gradient(135deg, #fff3e0, #ffe0b2); }
 .blog-thumb-denial { background: linear-gradient(135deg, #fce4ec, #f8bbd0); }
 .blog-thumb-cred { background: linear-gradient(135deg, #e3f2fd, #bbdefb); }
 .blog-thumb-rcm { background: linear-gradient(135deg, #f3e5f5, #e1bee7); }
 .blog-thumb-hipaa { background: linear-gradient(135deg, #e8eaf6, #c5cae9); }
 .blog-thumb svg { width: 64px; height: 64px; }
 .blog-body { padding: 24px 24px 28px; flex: 1; display: flex; flex-direction: column; }
 .blog-tag { display: inline-block; background: rgba(13,148,136,0.1); color: var(--teal); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; padding: 3px 10px; border-radius: 20px; margin-bottom: 12px; }
 .blog-title { font-size: 16px; font-weight: 700; color: var(--navy); line-height: 1.45; margin-bottom: 10px; }
 .blog-excerpt { font-size: 13.5px; color: var(--gray); line-height: 1.65; flex: 1; }
 .blog-meta { display: flex; align-items: center; justify-content: space-between; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--border); }
 .blog-date { font-size: 12px; color: var(--gray); font-weight: 500; }
 .blog-read { font-size: 12.5px; font-weight: 700; color: var(--teal); text-decoration: none; display: flex; align-items: center; gap: 4px; }
 .blog-read:hover { color: var(--teal-light); }
 @media(max-width:1024px){ .blog-grid { grid-template-columns: 1fr 1fr; } }
 @media(max-width:768px){ .blog-grid { grid-template-columns: 1fr; } }

 @media(max-width:900px){
 .rating-grid { grid-template-columns: 1fr !important; }
 .rating-widget { padding: 32px 24px; }
 .map-container { height: 320px; }
 }
 @media(max-width:1024px){
 .services-grid { grid-template-columns: 1fr 1fr; }
 .spec-grid { grid-template-columns: repeat(3,1fr) !important; }
 .hero-visual { display: none; }
 .about-grid, .why-grid, .contact-grid { grid-template-columns: 1fr; }
 .footer-grid { grid-template-columns: 1fr 1fr; }
 }
 @media(max-width:768px){
 .services-grid, .reviews-grid { grid-template-columns: 1fr; }
 .spec-grid { grid-template-columns: repeat(2,1fr) !important; }
 .why-features { grid-template-columns: 1fr; }
 .footer-grid { grid-template-columns: 1fr; }
 .form-row { grid-template-columns: 1fr; }
 .nav-links { display: none; }
 .stats-row { gap: 24px; }
 .topbar { gap: 16px; font-size: 12px; }
 }

 /* RCM Services - moved from body */
 /* RCM Services Grid - 4 per row */
 .services-grid-rcm {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 22px;
 margin-top: 36px;
 }
 @media(max-width:1200px){ .services-grid-rcm { grid-template-columns: repeat(3,1fr); } }
 @media(max-width:800px){ .services-grid-rcm { grid-template-columns: repeat(2,1fr); } }
 @media(max-width:520px){ .services-grid-rcm { grid-template-columns: 1fr; } }

 .service-card-rcm {
 position: relative;
 border-radius: 18px;
 padding: 28px 22px;
 overflow: hidden;
 cursor: pointer;
 transition: transform 0.3s, box-shadow 0.3s;
 text-align: center;
 }
 .service-card-rcm:hover { transform: translateY(-6px); box-shadow: 0 20px 50px rgba(0,0,0,0.25); }

 /* Blink / pulse background animation */
 .service-card-rcm::before {
 content: '';
 position: absolute;
 inset: 0;
 border-radius: 18px;
 opacity: 0.85;
 animation: card-pulse var(--pulse-dur, 3s) ease-in-out infinite alternate;
 background: var(--card-bg);
 z-index: 0;
 }
 .service-card-rcm::after {
 content: '';
 position: absolute;
 inset: -2px;
 border-radius: 20px;
 background: var(--card-glow);
 z-index: -1;
 opacity: 0;
 animation: glow-blink var(--pulse-dur, 3s) ease-in-out infinite alternate;
 }
 @keyframes card-pulse {
 0% { opacity: 0.75; filter: brightness(0.9); }
 100% { opacity: 1; filter: brightness(1.15); }
 }
 @keyframes glow-blink {
 0% { opacity: 0; }
 100% { opacity: 1; }
 }

 /* 12 Different color themes */
 .sc-theme-1 { --card-bg: linear-gradient(135deg,#0d3a5c,#0d9488); --card-glow: radial-gradient(ellipse at center,rgba(13,184,166,0.6),transparent 70%); --pulse-dur: 2.8s; }
 .sc-theme-2 { --card-bg: linear-gradient(135deg,#1a0a3c,#7c3aed); --card-glow: radial-gradient(ellipse at center,rgba(139,92,246,0.7),transparent 70%); --pulse-dur: 3.2s; }
 .sc-theme-3 { --card-bg: linear-gradient(135deg,#0a2a1a,#059669); --card-glow: radial-gradient(ellipse at center,rgba(16,185,129,0.7),transparent 70%); --pulse-dur: 2.5s; }
 .sc-theme-4 { --card-bg: linear-gradient(135deg,#1a1a0a,#d97706); --card-glow: radial-gradient(ellipse at center,rgba(245,158,11,0.7),transparent 70%); --pulse-dur: 3.6s; }
 .sc-theme-5 { --card-bg: linear-gradient(135deg,#1a0a0a,#dc2626); --card-glow: radial-gradient(ellipse at center,rgba(239,68,68,0.7),transparent 70%); --pulse-dur: 2.9s; }
 .sc-theme-6 { --card-bg: linear-gradient(135deg,#0a1a3c,#2563eb); --card-glow: radial-gradient(ellipse at center,rgba(59,130,246,0.7),transparent 70%); --pulse-dur: 3.1s; }
 .sc-theme-7 { --card-bg: linear-gradient(135deg,#1a0a2a,#9333ea); --card-glow: radial-gradient(ellipse at center,rgba(168,85,247,0.7),transparent 70%); --pulse-dur: 2.7s; }
 .sc-theme-8 { --card-bg: linear-gradient(135deg,#0a1e1a,#0891b2); --card-glow: radial-gradient(ellipse at center,rgba(14,165,233,0.7),transparent 70%); --pulse-dur: 3.4s; }
 .sc-theme-9 { --card-bg: linear-gradient(135deg,#1a1a0a,#ca8a04); --card-glow: radial-gradient(ellipse at center,rgba(234,179,8,0.7),transparent 70%); --pulse-dur: 2.6s; }
 .sc-theme-10 { --card-bg: linear-gradient(135deg,#0a2a1a,#16a34a); --card-glow: radial-gradient(ellipse at center,rgba(34,197,94,0.7),transparent 70%); --pulse-dur: 3.3s; }
 .sc-theme-11 { --card-bg: linear-gradient(135deg,#1a0a1a,#be185d); --card-glow: radial-gradient(ellipse at center,rgba(236,72,153,0.7),transparent 70%); --pulse-dur: 2.4s; }
 .sc-theme-12 { --card-bg: linear-gradient(135deg,#0a1a2a,#0369a1); --card-glow: radial-gradient(ellipse at center,rgba(2,132,199,0.7),transparent 70%); --pulse-dur: 3.0s; }
 .sc-theme-13 { --card-bg: linear-gradient(135deg,#1a0a10,#e11d48); --card-glow: radial-gradient(ellipse at center,rgba(244,63,94,0.7),transparent 70%); --pulse-dur: 2.85s; }
 .sc-theme-14 { --card-bg: linear-gradient(135deg,#0a1a10,#15803d); --card-glow: radial-gradient(ellipse at center,rgba(22,163,74,0.7),transparent 70%); --pulse-dur: 3.15s; }

 .service-card-rcm .sc-inner { position: relative; z-index: 1; }
 .service-card-rcm .sc-icon-rcm {
 width: 60px; height: 60px; margin: 0 auto 16px;
 background: rgba(255,255,255,0.15);
 border-radius: 14px;
 display: flex; align-items: center; justify-content: center;
 border: 1.5px solid rgba(255,255,255,0.25);
 backdrop-filter: blur(4px);
 }
 .service-card-rcm .sc-icon-rcm svg { width: 28px; height: 28px; }
 .service-card-rcm h3 { font-size: 15px; font-weight: 700; color: #fff; margin-bottom: 10px; text-align: center; }
 .service-card-rcm p { font-size: 13px; color: rgba(255,255,255,0.8); line-height: 1.65; text-align: justify; }
 .sc-link-rcm {
 display: inline-flex; align-items: center; gap: 5px; color: rgba(255,255,255,0.9);
 font-size: 13px; font-weight: 700; margin-top: 14px; cursor: pointer;
 background: rgba(255,255,255,0.15); padding: 7px 16px; border-radius: 20px;
 border: 1px solid rgba(255,255,255,0.25); transition: all 0.2s;
 }
 .sc-link-rcm:hover { background: rgba(255,255,255,0.25); }
 .services-rcm-section { background: #060f1e; padding: 64px 5%; position: relative; overflow: hidden; }
 .services-rcm-section::before {
 content: '';
 position: absolute; inset: 0;
 background: radial-gradient(ellipse 80% 60% at 50% 50%, rgba(13,148,136,0.08) 0%, transparent 70%);
 pointer-events: none;
 }
 .services-rcm-section .section-title { color: #fff; }
 .services-rcm-section .section-title em { color: var(--teal-light); }
 .services-rcm-section .section-sub { color: rgba(255,255,255,0.65); text-align: justify; max-width: 100%; width: 100%; }
 .services-rcm-section .section-tag { background: rgba(13,148,136,0.25); color: var(--teal-light); }
 .services-rcm-section .center .section-sub { margin: 0 auto; text-align: center; }

 .cf-error { color: #e53e3e; font-size: 12px; margin-top: 4px; display: block; }
 .form-group input.err, .form-group select.err, .form-group textarea.err { border-color: #e53e3e; }

 /* ── Moved from body ── */

 .trust-strip {
 background: #060f1e;
 border-top: 1px solid rgba(13,184,166,0.18);
 border-bottom: 1px solid rgba(13,184,166,0.18);
 padding: 0 2%;
 display: flex; flex-wrap: nowrap; justify-content: center; align-items: stretch; gap: 0;
 position: relative; overflow: hidden;
 }
 .trust-strip::before {
 content: '';
 position: absolute; inset: 0;
 background: radial-gradient(ellipse 60% 80% at 50% 50%, rgba(13,148,136,0.05) 0%, transparent 70%);
 pointer-events: none;
 }
 .trust-item {
 display: flex; align-items: center; gap: 10px;
 color: #fff; font-size: 13.5px; font-weight: 600; letter-spacing: 0.15px;
 padding: 18px 20px;
 position: relative; transition: background 0.2s;
 white-space: nowrap; flex-shrink: 0;
 }
 .trust-item:hover { background: rgba(13,148,136,0.07); }
 .trust-icon-wrap {
 width: 32px; height: 32px; border-radius: 7px;
 display: flex; align-items: center; justify-content: center;
 flex-shrink: 0;
 }
 .trust-icon-wrap svg { width: 20px; height: 20px; }
 .trust-sep {
 width: 1px; background: rgba(13,184,166,0.22);
 align-self: stretch; flex-shrink: 0; margin: 10px 0;
 }
 @media(max-width:1200px){
 .trust-item { padding: 16px 14px; font-size: 12.5px; gap: 8px; }
 .trust-icon-wrap { width: 28px; height: 28px; }
 .trust-icon-wrap svg { width: 17px; height: 17px; }
 }
 @media(max-width:900px){
 .trust-strip { flex-wrap: wrap; padding: 0 4%; }
 .trust-sep { display: none; }
 .trust-item { padding: 12px 16px; font-size: 13px; }
 }

 /* HOME FEATURES ROW */
 .home-features {
 background: linear-gradient(135deg, #060f1e 0%, #091828 60%, #060f1e 100%);
 padding: 64px 5%;
 position: relative; overflow: hidden;
 }
 .home-features::before {
 content: '';
 position: absolute; inset: 0;
 background: radial-gradient(ellipse 60% 50% at 30% 50%, rgba(13,148,136,0.07) 0%, transparent 70%),
 radial-gradient(ellipse 40% 40% at 80% 60%, rgba(245,158,11,0.04) 0%, transparent 70%);
 pointer-events: none;
 }
 .hf-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 grid-template-rows: 1fr 1fr;
 gap: 24px;
 margin-top: 36px;
 position: relative; z-index: 1;
 }
 @media(max-width:900px){ .hf-grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; } }
 @media(max-width:580px){ .hf-grid { grid-template-columns: 1fr; grid-template-rows: auto; } }
 .hf-card {
 background: rgba(255,255,255,0.04);
 border: 1px solid rgba(13,184,166,0.15);
 border-radius: 18px; padding: 36px 28px;
 position: relative; overflow: hidden;
 transition: border-color 0.3s, transform 0.3s, box-shadow 0.3s;
 display: flex; flex-direction: column; align-items: center;
 box-sizing: border-box;
 }
 /* Animated floating bubbles inside each card */
 .hf-card::after {
 content: '';
 position: absolute;
 border-radius: 50%;
 background: var(--hf-color, linear-gradient(135deg,#0d9488,#14b8a6));
 opacity: 0.07;
 width: 120px; height: 120px;
 bottom: -40px; right: -30px;
 animation: hf-bubble1 5s ease-in-out infinite alternate;
 pointer-events: none;
 }
 @keyframes hf-bubble1 {
 0% { transform: translate(0,0) scale(1); opacity: 0.07; }
 100% { transform: translate(-18px,-22px) scale(1.3); opacity: 0.13; }
 }
 .hf-card .hf-bubble2 {
 position: absolute;
 border-radius: 50%;
 background: var(--hf-color, linear-gradient(135deg,#0d9488,#14b8a6));
 opacity: 0.05;
 width: 70px; height: 70px;
 top: -20px; left: -20px;
 animation: hf-bubble2 6s ease-in-out infinite alternate;
 pointer-events: none;
 }
 @keyframes hf-bubble2 {
 0% { transform: translate(0,0) scale(1); opacity: 0.05; }
 100% { transform: translate(14px,18px) scale(1.25); opacity: 0.11; }
 }
 .hf-card::before {
 content: '';
 position: absolute; top: 0; left: 0; right: 0; height: 3px;
 background: var(--hf-color, linear-gradient(90deg, var(--teal), var(--teal-light)));
 opacity: 0.7; transition: opacity 0.3s;
 border-radius: 18px 18px 0 0;
 }
 .hf-card:hover { border-color: rgba(0,255,247,0.5); transform: translateY(-5px); box-shadow: 0 16px 40px rgba(0,0,0,0.4), 0 0 30px rgba(0,255,247,0.15); }
 .hf-card:hover::before { opacity: 1; }
 .hf-num {
 font-family: 'Playfair Display', serif;
 font-size: 3.4rem; font-weight: 700; line-height: 1;
 color: #ffffff;
 -webkit-text-fill-color: #ffffff;
 background: none;
 margin-bottom: 12px;
 position: relative; z-index: 1;
 text-align: center; width: 100%;
 }
 .hf-card h4 {
 font-size: 17px; font-weight: 700; color: #fff; margin-bottom: 14px;
 text-align: center; line-height: 1.35;
 position: relative; z-index: 1; width: 100%;
 }
 .hf-card p {
 font-size: 14px; color: rgba(255,255,255,0.72); line-height: 1.78;
 text-align: center;
 flex: 1;
 position: relative; z-index: 1;
 width: 100%;
 margin: 0;
 }

 /* HOME WHY CHOOSE ROW */
 .home-why-row {
 background: #f8fafc; padding: 64px 5%;
 }
 .hwr-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: stretch; margin-top: 32px; }
 @media(max-width:900px){ .hwr-grid { grid-template-columns: 1fr; } }
 .hwr-list { display: flex; flex-direction: column; gap: 16px; height: 100%; }
 .hwr-item { display: flex; gap: 16px; align-items: flex-start; background: rgba(13,148,136,0.05); border: 1px solid rgba(13,148,136,0.15); border-radius: 14px; padding: 20px; flex: 1; }
 .hwr-check { width: 40px; height: 40px; background: linear-gradient(135deg,#0d9488,#14b8a6); border-radius: 10px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; font-size: 1.2rem; }
 .hwr-item h4 { font-size: 16px; font-weight: 700; color: var(--navy); margin-bottom: 6px; }
 .hwr-item p { font-size: 14px; color: var(--gray); line-height: 1.65; text-align: justify; }
 .hwr-visual {
 background: linear-gradient(135deg, #0a1628, #0d3a5a);
 border-radius: 20px; padding: 40px; position: relative; overflow: hidden;
 display: flex; flex-direction: column; justify-content: center;
 }
 .hwr-visual-title {
 color: #fff; font-family: 'Playfair Display', serif; font-size: 1.3rem;
 margin-bottom: 28px; position: relative; z-index: 1;
 text-align: center; font-weight: 700;
 }
 .hwr-visual::before { display: none; }
 .hwr-bubble {
 position: absolute; border-radius: 50%; pointer-events: none;
 animation: hwr-float ease-in-out infinite alternate;
 }
 @keyframes hwr-float {
 0% { transform: translate(0,0) scale(1); opacity: 0.5; }
 100% { transform: translate(var(--dx,15px), var(--dy,-20px)) scale(1.15); opacity: 0.85; }
 }
 .hwr-metric { margin-bottom: 24px; position: relative; z-index: 1; }
 .hwr-metric-label { font-size: 13px; color: rgba(255,255,255,0.5); margin-bottom: 6px; text-transform: uppercase; letter-spacing: 1px; }
 .hwr-bar-wrap { background: rgba(255,255,255,0.08); border-radius: 50px; height: 10px; overflow: hidden; }
 .hwr-bar { height: 100%; border-radius: 50px; animation: bar-grow 1.5s ease forwards; }
 @keyframes bar-grow { from { width: 0; } }
 .hwr-metric-vals { display: flex; justify-content: space-between; margin-top: 5px; }
 .hwr-metric-vals span { font-size: 12px; color: rgba(255,255,255,0.45); }
 .hwr-metric-vals strong { font-size: 14px; font-weight: 700; color: #14b8a6; }

 /* HOME PROCESS TIMELINE */
 .hp-timeline { display: grid; grid-template-columns: repeat(3,1fr); gap: 0; margin-top: 36px; position: relative; }
 .hp-timeline::before {
 content: ''; position: absolute; top: 40px; left: 16.67%; right: 16.67%; height: 2px;
 background: linear-gradient(90deg,var(--teal),var(--teal-light)); z-index: 0;
 }
 @media(max-width:900px){ .hp-timeline { grid-template-columns: 1fr; } .hp-timeline::before { display:none; } }
 .hp-step { text-align: center; padding: 0 16px; position: relative; z-index: 1; }
 .hp-num {
 width: 80px; height: 80px; border-radius: 50%; margin: 0 auto 20px;
 background: linear-gradient(135deg,#0d9488,#14b8a6);
 display: flex; align-items: center; justify-content: center;
 font-family: 'Playfair Display',serif; font-size: 1.8rem; font-weight: 700; color: #fff;
 box-shadow: 0 0 0 6px rgba(13,148,136,0.15), 0 8px 24px rgba(13,148,136,0.3);
 }
 .hp-step h4 { font-size: 17px; font-weight: 700; color: var(--navy); margin-bottom: 10px; }
 .hp-step p { font-size: 14.5px; color: var(--gray); line-height: 1.7; text-align: justify; }


 .hp-timeline { display: grid; grid-template-columns: repeat(3,1fr); gap: 0 0; margin-top: 36px; position: relative; }
 @media(max-width:900px){ .hp-timeline { grid-template-columns: 1fr; } .hp-connector { display:none; } }
 .hp-step { text-align: center; padding: 0 16px 48px; position: relative; z-index: 1; }
 .hp-num {
 width: 80px; height: 80px; border-radius: 50%; margin: 0 auto 20px;
 background: linear-gradient(135deg,#0d9488,#14b8a6);
 display: flex; align-items: center; justify-content: center;
 font-family: 'Playfair Display',serif; font-size: 1.8rem; font-weight: 700; color: #fff;
 box-shadow: 0 0 0 6px rgba(13,148,136,0.15), 0 8px 24px rgba(13,148,136,0.3);
 position: relative; z-index: 2;
 animation: step-num-glow 3s ease-in-out infinite alternate;
 }
 @keyframes step-num-glow {
 0% { box-shadow: 0 0 0 6px rgba(13,148,136,0.15), 0 8px 24px rgba(13,148,136,0.3), 0 0 0 rgba(13,184,166,0); }
 50% { box-shadow: 0 0 0 10px rgba(245,158,11,0.2), 0 8px 32px rgba(245,158,11,0.4), 0 0 30px rgba(245,158,11,0.2); }
 100% { box-shadow: 0 0 0 6px rgba(139,92,246,0.2), 0 8px 24px rgba(139,92,246,0.4), 0 0 20px rgba(139,92,246,0.15); }
 }
 .hp-step h4 { font-size: 17px; font-weight: 700; color: var(--navy); margin-bottom: 10px; }
 .hp-step p { font-size: 14.5px; color: var(--gray); line-height: 1.7; text-align: justify; }

 /* Animated connector lines between steps */
 .hp-connector-row {
 position: absolute; top: 40px; left: 0; right: 0; height: 3px;
 display: grid; grid-template-columns: repeat(3,1fr);
 pointer-events: none; z-index: 0;
 }
 .hp-connector-row-2 {
 top: calc(40px + 200px);
 }
 .hp-conn-seg {
 position: relative; height: 3px;
 display: flex; align-items: center;
 }
 .hp-conn-seg-inner {
 position: absolute;
 left: calc(50% + 40px); right: calc(-50% + 40px);
 height: 3px;
 background: rgba(13,184,166,0.15);
 border-radius: 2px;
 overflow: hidden;
 }
 .hp-conn-seg:last-child .hp-conn-seg-inner { display: none; }
 .hp-conn-seg-inner::after {
 content: '';
 position: absolute;
 top: 0; left: -200%; width: 100%;
 height: 100%;
 background: linear-gradient(90deg, transparent 0%, #14b8a6 30%, #f59e0b 60%, #8b5cf6 80%, transparent 100%);
 animation: line-travel-seg 2.5s linear infinite;
 border-radius: 2px;
 }
 .hp-conn-seg:nth-child(2) .hp-conn-seg-inner::after { animation-delay: 0.8s; }
 @keyframes line-travel-seg {
 0% { transform: translateX(-100%); }
 100% { transform: translateX(300%); }
 }


 /* INTERACTIVE 6-STEP RCM PROCESS */
 .home-process {
 background: linear-gradient(180deg, #f8fafc 0%, #ffffff 50%, #f0fafa 100%);
 padding: 64px 5%; position: relative;
 }
 .home-process::before {
 content: '';
 position: absolute; inset: 0;
 background: radial-gradient(ellipse 55% 45% at 50% 0%, rgba(13,148,136,0.07) 0%, transparent 60%),
 radial-gradient(ellipse 35% 35% at 95% 90%, rgba(13,148,136,0.05) 0%, transparent 55%);
 pointer-events: none;
 }
 .rcm-step-btn h5 { font-size: 16px !important; font-weight: 700; }
 .rcm-step-btn span { font-size: 13.5px !important; }
 .rcm-detail h3 { font-size: 1.6rem !important; color: #ffffff !important; }
 .rcm-detail p { font-size: 15px !important; line-height: 1.85 !important; color: rgba(255,255,255,0.72) !important; }
 .rcm-detail-point { font-size: 14.5px !important; color: rgba(255,255,255,0.85) !important; }
 .rcm-detail-result { font-size: 14.5px !important; color: #14b8a6 !important; }
 .rcm-process-layout {
 display: grid; grid-template-columns: 340px 1fr; gap: 0; margin-top: 36px;
 border-radius: 20px; overflow: hidden;
 box-shadow: 0 20px 60px rgba(13,148,136,0.12);
 border: 1.5px solid rgba(13,148,136,0.15);
 }
 @media(max-width:900px){ .rcm-process-layout { grid-template-columns: 1fr; } }
 /* Left steps nav */
 .rcm-steps-nav { background: linear-gradient(160deg, #0a1628 0%, #0d3a5a 100%); display: flex; flex-direction: column; }
 .rcm-step-btn {
 display: flex; align-items: center; gap: 16px;
 padding: 22px 28px; cursor: pointer;
 border: none; background: transparent; text-align: left;
 border-bottom: 1px solid rgba(255,255,255,0.07);
 transition: all 0.25s; position: relative;
 }
 .rcm-step-btn:last-child { border-bottom: none; }
 .rcm-step-btn::before {
 content: ''; position: absolute; left: 0; top: 0; bottom: 0;
 width: 4px; background: var(--teal-light); opacity: 0; transition: opacity 0.25s;
 border-radius: 0 2px 2px 0;
 }
 .rcm-step-btn.active { background: rgba(13,148,136,0.15); }
 .rcm-step-btn.active::before { opacity: 1; }
 .rcm-step-btn:hover { background: rgba(13,148,136,0.1); }
 .rcm-btn-num {
 width: 44px; height: 44px; border-radius: 50%; flex-shrink: 0;
 background: linear-gradient(135deg, #0d9488, #14b8a6);
 display: flex; align-items: center; justify-content: center;
 font-family: 'Playfair Display', serif; font-size: 1.2rem; font-weight: 700; color: #fff;
 box-shadow: 0 4px 12px rgba(13,148,136,0.3);
 transition: all 0.25s;
 }
 .rcm-step-btn.active .rcm-btn-num {
 background: linear-gradient(135deg, #f59e0b, #d97706);
 box-shadow: 0 4px 16px rgba(245,158,11,0.4);
 }
 .rcm-btn-text h5 { font-size: 14px; font-weight: 700; color: rgba(255,255,255,0.9); margin-bottom: 3px; line-height: 1.3; }
 .rcm-btn-text span { font-size: 12px; color: rgba(255,255,255,0.45); }
 .rcm-step-btn.active .rcm-btn-text h5 { color: #14b8a6; }
 /* Right detail panel */
 .rcm-detail-panel { background: linear-gradient(160deg, #0a1628 0%, #0d2847 100%); padding: 48px 40px; display: flex; flex-direction: column; justify-content: center; position: relative; overflow: hidden; }
 .rcm-detail { display: none; }
 .rcm-detail.active { display: block; animation: detail-fade 0.35s ease; }
 @keyframes detail-fade { from { opacity: 0; transform: translateX(12px); } to { opacity: 1; transform: translateX(0); } }
 .rcm-detail-tag { display: inline-flex; align-items: center; gap: 8px; background: rgba(13,184,166,0.18); color: #14b8a6; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px; padding: 5px 14px; border-radius: 20px; margin-bottom: 18px; border: 1px solid rgba(13,184,166,0.25); }
 .rcm-detail h3 { font-family: 'Playfair Display', serif; font-size: 1.6rem; font-weight: 700; color: #ffffff; margin-bottom: 16px; line-height: 1.3; }
 .rcm-detail p { font-size: 15px; color: rgba(255,255,255,0.72); line-height: 1.8; margin-bottom: 16px; text-align: justify; }
 .rcm-detail-points { display: flex; flex-direction: column; gap: 10px; margin-top: 20px; }
 .rcm-detail-point { display: flex; align-items: flex-start; gap: 12px; font-size: 14px; color: rgba(255,255,255,0.85); line-height: 1.5; }
 .rcm-detail-point::before { content: '✓'; display: flex; align-items: center; justify-content: center; width: 22px; height: 22px; background: rgba(13,184,166,0.2); color: #14b8a6; font-size: 13px; font-weight: 700; border-radius: 50%; flex-shrink: 0; margin-top: 1px; border: 1px solid rgba(13,184,166,0.3); }
 .rcm-detail-result { margin-top: 24px; padding: 16px 20px; background: linear-gradient(135deg, rgba(13,148,136,0.2), rgba(13,184,166,0.12)); border: 1px solid rgba(13,184,166,0.35); border-radius: 12px; font-size: 14px; color: #14b8a6; font-weight: 600; display: flex; align-items: center; gap: 10px; }


 .spec-item-link { text-decoration: none; color: inherit; display: block; }
 .spec-item-link .spec-item { transition: all 0.25s; cursor: pointer; }
 .spec-item-link:hover .spec-item { border-color: var(--teal-light); transform: translateY(-4px); box-shadow: 0 8px 24px rgba(13,184,166,0.25); }
 .spec-item-link:hover .spec-item p { color: var(--teal-light); }
 #spec-more-btn:hover { background: rgba(13,148,136,0.3) !important; transform: translateY(-2px); }
 

 .rating-section-v2 {
 background: #f8fafc;
 padding: 64px 5%;
 position: relative;
 overflow: hidden;
 border-top: 4px solid #e2e8f0;
 }
 .rating-section-v2::before {
 content: '';
 position: absolute; inset: 0;
 background: radial-gradient(ellipse 70% 60% at 50% 30%, rgba(13,148,136,0.06) 0%, transparent 70%),
 radial-gradient(ellipse 50% 40% at 20% 80%, rgba(245,158,11,0.04) 0%, transparent 60%);
 pointer-events: none; z-index: 0;
 }

 /* MOVING BACKGROUND STARS / PARTICLES */
 .rating-bg-canvas {
 position: absolute; inset: 0; width: 100%; height: 100%;
 pointer-events: none; z-index: 0;
 }

 /* MOVING REVIEW TICKER */
 .rating-ticker-wrap {
 overflow: hidden; position: relative; margin-bottom: 60px;
 }
 .rating-ticker-wrap::before, .rating-ticker-wrap::after {
 content: ''; position: absolute; top: 0; bottom: 0; width: 100px; z-index: 2; pointer-events: none;
 }
 .rating-ticker-wrap::before { left: 0; background: linear-gradient(90deg, #020c18, transparent); }
 .rating-ticker-wrap::after { right: 0; background: linear-gradient(-90deg, #020c18, transparent); }
 .rating-ticker {
 display: flex; gap: 24px; animation: rating-scroll 35s linear infinite;
 width: max-content; will-change: transform;
 }
 .rating-ticker:hover { animation-play-state: paused; }
 @keyframes rating-scroll { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

 .ticker-card {
 min-width: 300px; max-width: 320px;
 background: linear-gradient(145deg, #071520, #0c2336);
 border: 1.5px solid rgba(13,184,166,0.35);
 border-radius: 16px; padding: 24px;
 flex-shrink: 0;
 box-shadow: 0 0 18px rgba(13,184,166,0.15);
 transition: transform 0.3s;
 animation: ticker-glow 3s ease-in-out infinite alternate;
 }
 @keyframes ticker-glow {
 0% { box-shadow: 0 0 8px rgba(13,184,166,0.1); }
 100%{ box-shadow: 0 0 24px rgba(13,184,166,0.3); }
 }
 .ticker-card:hover { transform: translateY(-4px); }
 .ticker-stars { color: #f59e0b; font-size: 14px; letter-spacing: 2px; margin-bottom: 10px; }
 .ticker-text { font-size: 13px; color: rgba(255,255,255,0.8); line-height: 1.65; font-style: italic; margin-bottom: 14px; text-align: justify; }
 .ticker-author { display: flex; align-items: center; gap: 10px; }
 .ticker-avatar {
 width: 38px; height: 38px; border-radius: 50%;
 background: linear-gradient(135deg, var(--teal), var(--navy));
 display: flex; align-items: center; justify-content: center;
 color: #fff; font-weight: 700; font-size: 14px; flex-shrink: 0;
 }
 .ticker-author h6 { font-size: 13px; font-weight: 700; color: #fff; margin-bottom: 2px; }
 .ticker-author span { font-size: 11px; color: rgba(255,255,255,0.5); }

 /* 4 RECENT RATINGS GRID */
 .recent-ratings-grid {
 display: grid; grid-template-columns: 1fr; gap: 20px;
 margin-bottom: 52px; position: relative; z-index: 1;
 }
 @media(max-width:1000px){ .recent-ratings-grid { grid-template-columns: 1fr; } }
 @media(max-width:580px){ .recent-ratings-grid { grid-template-columns: 1fr; } }
 .recent-rating-card {
 background: linear-gradient(145deg, #0b1c30, #112844);
 border: 1.5px solid rgba(13,184,166,0.3);
 border-radius: 16px; padding: 28px 32px;
 transition: all 0.3s;
 animation: rc-glow 3s ease-in-out infinite alternate;
 display: flex; flex-direction: column; gap: 10px;
 }
 .recent-rating-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(13,184,166,0.2); }
 .rrc-stars { color: #f59e0b; font-size: 14px; letter-spacing: 1px; margin-bottom: 10px; }
 .rrc-text { font-size: 13px; color: rgba(255,255,255,0.8); line-height: 1.65; font-style: italic; margin-bottom: 14px; text-align: justify; }
 .rrc-author { display: flex; align-items: center; gap: 10px; }
 .rrc-avatar {
 width: 36px; height: 36px; border-radius: 50%;
 background: linear-gradient(135deg, #0d9488, #0a1628);
 display: flex; align-items: center; justify-content: center;
 color: #fff; font-weight: 700; font-size: 13px; flex-shrink: 0;
 }
 .rrc-author h6 { font-size: 13px; font-weight: 700; color: #fff; margin-bottom: 2px; }
 .rrc-author span { font-size: 11px; color: rgba(255,255,255,0.5); }
 .rrc-date { font-size: 10px; color: rgba(13,184,166,0.7); margin-top: 10px; text-align: right; }

 /* SUBMIT FORM */
 .rating-submit-box {
 background: rgba(255,255,255,0.03);
 border: 1.5px solid rgba(13,184,166,0.2);
 border-radius: 20px; padding: 44px;
 max-width: 640px; margin: 0 auto;
 position: relative; z-index: 1;
 }
 .rating-submit-box h3 {
 font-family: 'Playfair Display', serif;
 font-size: 1.6rem; color: #fff; margin-bottom: 8px; text-align: center;
 }
 .rating-submit-box > p {
 font-size: 14px; color: rgba(255,255,255,0.6); margin-bottom: 28px; text-align: center;
 }
 .stars-input-row {
 display: flex; justify-content: center; gap: 8px; margin-bottom: 10px;
 }
 .star-btn-v2 {
 font-size: 2.2rem; background: none; border: none; cursor: pointer;
 color: rgba(0,0,0,0.15); transition: color 0.15s, transform 0.15s;
 line-height: 1;
 }
 .star-btn-v2.lit { color: #f59e0b; transform: scale(1.15); }
 .star-label { font-size: 13px; color: var(--gray); text-align: center; margin-bottom: 20px; min-height: 18px; }
 .rating-field {
 width: 100%; background: #f8fafc;
 border: 1.5px solid #e2e8f0;
 border-radius: 8px; padding: 12px 14px;
 font-family: 'DM Sans', sans-serif; font-size: 14px;
 color: var(--navy); outline: none; transition: border-color 0.2s;
 margin-bottom: 14px;
 }
 .rating-field:focus { border-color: var(--teal); background: #fff; box-shadow: 0 0 0 3px rgba(13,148,136,0.1); }
 .rating-field::placeholder { color: #94a3b8; }
 textarea.rating-field { resize: vertical; min-height: 96px; }
 .rating-submit-btn {
 width: 100%; background: var(--teal); color: #fff; border: none;
 padding: 15px; border-radius: 8px; font-size: 15px; font-weight: 700;
 cursor: pointer; transition: background 0.2s;
 font-family: 'DM Sans', sans-serif; letter-spacing: 0.3px;
 }
 .rating-submit-btn:hover { background: var(--teal-light); }
 .rating-submit-btn:disabled { opacity: 0.6; cursor: not-allowed; }
 .rating-success-v2 {
 text-align: center; padding: 32px;
 display: none;
 }
 .rating-success-v2.show { display: block; }
 .rating-success-v2 .check { font-size: 3rem; margin-bottom: 16px; }
 .rating-success-v2 h3 { color: var(--teal); font-family: 'Playfair Display',serif; font-size: 1.4rem; margin-bottom: 10px; }
 .rating-success-v2 p { color: var(--gray); font-size: 14px; line-height: 1.65; }


 /* New "What Sets Us Apart" section cards hover */
 @media(max-width:1000px){
 .apart-grid { grid-template-columns: 1fr 1fr !important; }
 }
 @media(max-width:640px){
 .apart-grid { grid-template-columns: 1fr !important; }
 }

 /* HAMBURGER MENU */
 .hamburger {
 display: none;
 flex-direction: column;
 cursor: pointer;
 gap: 5px;
 padding: 8px;
 background: none;
 border: none;
 z-index: 300;
 }
 .hamburger span {
 display: block;
 width: 25px;
 height: 3px;
 background: #fff;
 border-radius: 3px;
 transition: all 0.3s ease;
 }
 .hamburger.active span:nth-child(1) { transform: rotate(45deg) translate(5px, 6px); }
 .hamburger.active span:nth-child(2) { opacity: 0; }
 .hamburger.active span:nth-child(3) { transform: rotate(-45deg) translate(5px, -6px); }
 .mobile-nav-overlay {
 display: none;
 position: fixed;
 inset: 0;
 background: rgba(0,0,0,0.5);
 z-index: 150;
 }
 .mobile-nav-overlay.active { display: block; }
 .mobile-nav-menu {
 display: none;
 position: fixed;
 top: 0;
 right: -100%;
 width: min(320px, 90vw);
 height: 100vh;
 background: var(--navy);
 z-index: 200;
 overflow-y: auto;
 transition: right 0.35s ease;
 box-shadow: -4px 0 30px rgba(0,0,0,0.5);
 padding: 80px 0 40px;
 }
 .mobile-nav-menu.open { display: block; right: 0; }
 .mobile-nav-menu li { list-style: none; border-bottom: 1px solid rgba(255,255,255,0.07); }
 .mobile-nav-menu li a {
 display: block;
 padding: 16px 28px;
 color: rgba(255,255,255,0.9);
 text-decoration: none;
 font-size: 16px;
 font-weight: 500;
 transition: background 0.2s, color 0.2s;
 }
 .mobile-nav-menu li a:hover { background: rgba(13,184,166,0.15); color: var(--teal-light); }
 .mobile-nav-close {
 position: absolute;
 top: 20px;
 right: 20px;
 background: none;
 border: none;
 color: #fff;
 font-size: 28px;
 cursor: pointer;
 z-index: 10;
 width: 40px;
 height: 40px;
 display: flex;
 align-items: center;
 justify-content: center;
 border-radius: 50%;
 transition: background 0.2s;
 }
 .mobile-nav-close:hover { background: rgba(255,255,255,0.1); }
 .mobile-nav-cta-wrap { padding: 20px 28px 0; }
 .mobile-nav-cta-wrap a {
 display: block;
 background: var(--teal);
 color: #fff;
 text-align: center;
 padding: 14px;
 border-radius: 8px;
 font-weight: 700;
 text-decoration: none;
 font-size: 15px;
 transition: background 0.2s;
 }
 .mobile-nav-cta-wrap a:hover { background: var(--teal-light); }
 @media(max-width:768px){
 .hamburger { display: flex; }
 .nav-cta { display: none; }
 }


  /* EXTRA MOBILE FIXES */
  @media(max-width:768px){
    nav { padding: 0 4%; top: 32px; }
    .hero { padding: 48px 4%; min-height: auto; }
    .hero-content { padding: 0; }
    .section-title { font-size: clamp(1.4rem, 4vw, 2rem); }
    .section-sub { font-size: 14px; }
    .hf-grid-7 { gap: 14px; }
    .apart-grid { grid-template-columns: 1fr !important; }
    .contact-grid { grid-template-columns: 1fr; }
    .svc-modal { padding: 28px 20px; }
    .stats-row { flex-direction: column; gap: 20px; align-items: center; }
    .stat-item .num { font-size: 2.4rem; }
    .about-grid { grid-template-columns: 1fr !important; }
    .software-inner { padding: 0 4%; }
    .blog-page-content { padding: 40px 4%; }
    .rating-submit-box { padding: 28px 16px; }
    .map-info-item { padding: 0 20px; font-size: 13px; }
    section, .section-body, .about, .why, .services, .specialties, .blog, .reviews { padding-left: 4%; padding-right: 4%; }
  }
  @media(max-width:480px){
    .topbar { height: 32px; font-size: 11px; }
    .hero h1 { font-size: 1.7rem; }
    .hero p { font-size: 14px; }
    .hero-btns { flex-direction: column; gap: 12px; }
    .hero-btn, .hero-btn-out { width: 100%; text-align: center; }
    .hf-grid-7 { grid-template-columns: 1fr; }
    .spec-grid { grid-template-columns: 1fr 1fr !important; }
    .why-features { grid-template-columns: 1fr !important; }
    .footer-grid { grid-template-columns: 1fr !important; }
    .trust-row { flex-wrap: wrap; gap: 8px; justify-content: center; }
    .trust-item { font-size: 12px; }
  }

 @keyframes hfb-float1 { 0%{transform:translate(0,0) scale(1);opacity:0.55;} 50%{transform:translate(70px,50px) scale(1.25);opacity:0.85;} 100%{transform:translate(20px,90px) scale(0.95);opacity:0.6;} }
 @keyframes hfb-float2 { 0%{transform:translate(0,0) scale(1);opacity:0.5;} 50%{transform:translate(-60px,40px) scale(1.2);opacity:0.8;} 100%{transform:translate(-30px,-60px) scale(1.05);opacity:0.55;} }
 @keyframes hfb-float3 { 0%{transform:translate(0,0) scale(1);opacity:0.4;} 50%{transform:translate(45px,-55px) scale(1.3);opacity:0.7;} 100%{transform:translate(-20px,30px) scale(0.9);opacity:0.5;} }
 @keyframes hfb-float4 { 0%{transform:translate(0,0) scale(1);opacity:0.45;} 50%{transform:translate(-50px,70px) scale(0.85);opacity:0.75;} 100%{transform:translate(40px,20px) scale(1.15);opacity:0.5;} }
 @keyframes hfb-float5 { 0%{transform:translate(0,0) scale(1);opacity:0.5;} 50%{transform:translate(-35px,-40px) scale(1.35);opacity:0.8;} 100%{transform:translate(25px,-70px) scale(1.1);opacity:0.6;} }
 @keyframes hfb-float6 { 0%{transform:translate(0,0) scale(1);opacity:0.4;} 50%{transform:translate(55px,-30px) scale(1.15);opacity:0.7;} 100%{transform:translate(10px,55px) scale(0.9);opacity:0.5;} }
 @keyframes hfb-float7 { 0%{transform:translate(0,0) scale(1);opacity:0.35;} 50%{transform:translate(-40px,60px) scale(1.2);opacity:0.65;} 100%{transform:translate(30px,-25px) scale(1.05);opacity:0.45;} }
 @keyframes hfb-float8 { 0%{transform:translate(0,0) scale(1);opacity:0.5;} 50%{transform:translate(60px,-50px) scale(0.9);opacity:0.8;} 100%{transform:translate(-15px,35px) scale(1.2);opacity:0.55;} }
 @keyframes hfb-float9 { 0%{transform:translate(0,0) scale(1);opacity:0.3;} 50%{transform:translate(-30px,-60px) scale(1.3);opacity:0.6;} 100%{transform:translate(50px,20px) scale(0.95);opacity:0.4;} }
 @keyframes hfb-float10 { 0%{transform:translate(0,0) scale(1);opacity:0.45;} 50%{transform:translate(40px,65px) scale(1.1);opacity:0.75;} 100%{transform:translate(-20px,-30px) scale(1.25);opacity:0.5;} }
 @keyframes hfb-float11 { 0%{transform:translate(0,0) scale(1);opacity:0.35;} 50%{transform:translate(-55px,30px) scale(0.85);opacity:0.65;} 100%{transform:translate(20px,-50px) scale(1.15);opacity:0.4;} }
 @keyframes hfb-float12 { 0%{transform:translate(0,0) scale(1);opacity:0.5;} 50%{transform:translate(30px,-70px) scale(1.2);opacity:0.8;} 100%{transform:translate(-40px,40px) scale(0.9);opacity:0.6;} }
 .hf-grid-7 {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 24px;
 margin-top: 36px;
 position: relative; z-index: 1;
 }
 .hf-grid-7 .hf-card:last-child {
 grid-column: auto;
 }
 @media(max-width:900px){ 
 .hf-grid-7 { grid-template-columns: 1fr 1fr; }
 .hf-grid-7 .hf-card:last-child { grid-column: auto; }
 }
 @media(max-width:580px){ 
 .hf-grid-7 { grid-template-columns: 1fr; }
 .hf-grid-7 .hf-card:last-child { grid-column: auto; }
 }
/* ============================================
   Who We Serve Section
   ============================================ */
.who-we-serve-section {
  padding: 60px 20px;
  background: #0a1520; /* dark theme like 2nd screenshot */
}

.who-we-serve-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 32px;
  background: linear-gradient(135deg, #0a1a26, #0d2435);
  border: 1px solid rgba(13, 184, 166, 0.25);
  border-radius: 20px;
}

.wws-title {
  color: #14b8a6;
  font-family: 'Playfair Display', serif;
  font-size: 1.8rem;
  text-align: center;
  margin: 0 0 12px;
}

.wws-subtitle {
  color: rgba(255, 255, 255, 0.7);
  text-align: center;
  font-size: 15px;
  line-height: 1.6;
  max-width: 720px;
  margin: 0 auto 32px;
}

/* Grid: 5 columns desktop -> 4 -> 3 -> 2 -> 1 (auto) */
.wws-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
}

/* Card base */
.wws-card {
  text-align: center;
  padding: 22px 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  border: 1.5px solid;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  min-height: 150px;
}

.wws-card:hover {
  transform: translateY(-4px);
}

.wws-icon {
  font-size: 2rem;
  margin-bottom: 8px;
  line-height: 1;
}

.wws-card-title {
  color: #fff;
  font-weight: 700;
  font-size: 14px;
  margin: 0 0 6px;
}

.wws-card-desc {
  color: rgba(255, 255, 255, 0.6);
  font-size: 12px;
  line-height: 1.5;
  margin: 0;
}

/* Color variants */
.wws-card--teal    { background: linear-gradient(135deg, #0a2030, #0d3a4a); border-color: rgba(13, 184, 166, 0.35); }
.wws-card--teal:hover    { box-shadow: 0 12px 32px rgba(13, 184, 166, 0.3); }

.wws-card--purple  { background: linear-gradient(135deg, #1a0a30, #3a1060); border-color: rgba(139, 92, 246, 0.35); }
.wws-card--purple:hover  { box-shadow: 0 12px 32px rgba(139, 92, 246, 0.3); }

.wws-card--green   { background: linear-gradient(135deg, #0a2510, #0a4020); border-color: rgba(16, 185, 129, 0.35); }
.wws-card--green:hover   { box-shadow: 0 12px 32px rgba(16, 185, 129, 0.3); }

.wws-card--amber   { background: linear-gradient(135deg, #251a00, #402800); border-color: rgba(245, 158, 11, 0.35); }
.wws-card--amber:hover   { box-shadow: 0 12px 32px rgba(245, 158, 11, 0.3); }

.wws-card--red     { background: linear-gradient(135deg, #200a0a, #3a1010); border-color: rgba(239, 68, 68, 0.35); }
.wws-card--red:hover     { box-shadow: 0 12px 32px rgba(239, 68, 68, 0.3); }

.wws-card--blue    { background: linear-gradient(135deg, #0a1530, #0a2050); border-color: rgba(59, 130, 246, 0.35); }
.wws-card--blue:hover    { box-shadow: 0 12px 32px rgba(59, 130, 246, 0.3); }

.wws-card--violet  { background: linear-gradient(135deg, #150a25, #2a1050); border-color: rgba(168, 85, 247, 0.35); }
.wws-card--violet:hover  { box-shadow: 0 12px 32px rgba(168, 85, 247, 0.3); }

.wws-card--sky     { background: linear-gradient(135deg, #0a1e22, #0a2a30); border-color: rgba(14, 165, 233, 0.35); }
.wws-card--sky:hover     { box-shadow: 0 12px 32px rgba(14, 165, 233, 0.3); }

.wws-card--yellow  { background: linear-gradient(135deg, #1e1800, #302500); border-color: rgba(234, 179, 8, 0.35); }
.wws-card--yellow:hover  { box-shadow: 0 12px 32px rgba(234, 179, 8, 0.3); }

.wws-card--emerald { background: linear-gradient(135deg, #0a2010, #0a3018); border-color: rgba(34, 197, 94, 0.35); }
.wws-card--emerald:hover { box-shadow: 0 12px 32px rgba(34, 197, 94, 0.3); }

/* ============================================
   Responsive Breakpoints
   ============================================ */

/* Large tablets / small desktops: 4 columns */
@media (max-width: 1100px) {
  .wws-grid { grid-template-columns: repeat(4, 1fr); }
}

/* Tablets: 3 columns */
@media (max-width: 880px) {
  .wws-grid { grid-template-columns: repeat(3, 1fr); }
  .who-we-serve-container { padding: 28px 20px; }
  .wws-title { font-size: 1.5rem; }
}

/* Small tablets / large phones: 2 columns */
@media (max-width: 640px) {
  .wws-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .who-we-serve-section { padding: 40px 14px; }
  .who-we-serve-container { padding: 22px 16px; border-radius: 16px; }
  .wws-title { font-size: 1.35rem; }
  .wws-subtitle { font-size: 13px; margin-bottom: 22px; }
  .wws-card { padding: 18px 10px; min-height: 140px; }
  .wws-icon { font-size: 1.75rem; }
  .wws-card-title { font-size: 13px; }
  .wws-card-desc { font-size: 11px; }
}

/* Very small phones: 2 columns but tighter */
@media (max-width: 380px) {
  .wws-grid { gap: 10px; }
  .wws-card { padding: 14px 8px; min-height: 130px; }
  .wws-card-desc { font-size: 10.5px; }
}
/* ============================================
   Software Compatibility Section
   ============================================ */

/* Section tag override (was inline) */
.sw-section-tag {
  background: #000000;
  color: #ffffff;
  border: 1.5px solid #000000;
  font-weight: 700;
}

.sw-section-title {
  margin-bottom: 12px;
}

/* ---------- Feature Cards Grid ---------- */
.sw-features-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 48px;
  position: relative;
  z-index: 1;
}

.sw-feature {
  border-radius: 16px;
  padding: 32px 24px;
  text-align: center;
  border: 1.5px solid;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.sw-feature-icon {
  font-size: 2.4rem;
  margin-bottom: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
}

.sw-feature-title {
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  margin: 0 0 10px;
}

.sw-feature-desc {
  color: rgba(255, 255, 255, 0.85);
  font-size: 13px;
  line-height: 1.7;
  text-align: justify;
  margin: 0;
}

/* Color variants */
.sw-feature--teal {
  background: linear-gradient(135deg, #0d3a5c, #0d9488);
  border-color: rgba(13, 184, 166, 0.4);
  box-shadow: 0 8px 28px rgba(13, 184, 166, 0.15);
}
.sw-feature--teal:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 40px rgba(13, 184, 166, 0.3);
}

.sw-feature--purple {
  background: linear-gradient(135deg, #1a0a3c, #7c3aed);
  border-color: rgba(139, 92, 246, 0.4);
  box-shadow: 0 8px 28px rgba(139, 92, 246, 0.15);
}
.sw-feature--purple:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 40px rgba(139, 92, 246, 0.3);
}

.sw-feature--red {
  background: linear-gradient(135deg, #1a0a0a, #dc2626);
  border-color: rgba(239, 68, 68, 0.4);
  box-shadow: 0 8px 28px rgba(239, 68, 68, 0.15);
}
.sw-feature--red:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 40px rgba(239, 68, 68, 0.3);
}

/* ============================================
   Responsive Breakpoints
   ============================================ */

/* Tablets: 2 columns then 1 (cards are content-heavy, so go to 1 early) */
@media (max-width: 1024px) {
  .sw-features-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-top: 40px;
  }
  /* Make the 3rd card span full width on 2-col layout */
  .sw-features-grid .sw-feature:nth-child(3) {
    grid-column: 1 / -1;
    max-width: 600px;
    margin: 0 auto;
    width: 100%;
  }
}

/* Mobile: single column */
@media (max-width: 720px) {
  .sw-features-grid {
    grid-template-columns: 1fr;
    gap: 18px;
    margin-top: 32px;
  }
  .sw-features-grid .sw-feature:nth-child(3) {
    max-width: 100%;
  }
  .sw-feature {
    padding: 26px 20px;
  }
  .sw-feature-icon {
    font-size: 2.1rem;
    margin-bottom: 12px;
  }
  .sw-feature-title {
    font-size: 14.5px;
  }
  .sw-feature-desc {
    font-size: 12.5px;
    line-height: 1.65;
    text-align: left; /* justify mobile پر gaps بناتا ہے */
  }
}

/* Small phones */
@media (max-width: 400px) {
  .sw-feature {
    padding: 22px 16px;
  }
  .sw-feature-desc {
    font-size: 12px;
  }
}

/* ---------- Marquee track responsive tweaks ---------- */
@media (max-width: 720px) {
  .software-sub {
    font-size: 14px;
    line-height: 1.65;
  }
  .sw-pill {
    font-size: 12.5px;
    padding: 8px 14px;
  }
}
/* ===========================================
   CONTACT US SECTION - RESPONSIVE STYLES
   =========================================== */

/* ---------- SECTION WRAPPER ---------- */
.contact-section {
  background: #050d1a;
  padding: 64px 5%;
  position: relative;
  overflow: hidden;
}

/* ---------- BACKGROUND CANVAS ---------- */
.contact-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
}

/* ---------- FLOATING ORBS ---------- */
.contact-orb {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
}
.contact-orb-1 {
  top: 10%;
  left: 5%;
  width: 380px;
  height: 380px;
  background: radial-gradient(circle, rgba(6, 182, 212, 0.10) 0%, transparent 65%);
  animation: orb-float1 9s ease-in-out infinite;
}
.contact-orb-2 {
  bottom: 8%;
  right: 4%;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(99, 102, 241, 0.09) 0%, transparent 65%);
  animation: orb-float2 11s ease-in-out infinite;
}
.contact-orb-3 {
  top: 45%;
  left: 45%;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(20, 184, 166, 0.06) 0%, transparent 65%);
  transform: translate(-50%, -50%);
  animation: orb-float3 13s ease-in-out infinite;
}
.contact-orb-4 {
  top: 5%;
  right: 20%;
  width: 200px;
  height: 200px;
  background: radial-gradient(circle, rgba(168, 85, 247, 0.07) 0%, transparent 65%);
  animation: orb-float1 7s ease-in-out infinite 2s;
}

/* ---------- ANIMATED GRID ---------- */
.contact-grid-lines {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(6, 182, 212, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(6, 182, 212, 0.03) 1px, transparent 1px);
  background-size: 56px 56px;
  pointer-events: none;
  z-index: 0;
  animation: grid-shift 25s linear infinite;
}

/* ---------- SCANNING BEAM ---------- */
.contact-scan-beam {
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(6, 182, 212, 0.5) 30%,
    rgba(20, 184, 166, 0.9) 50%,
    rgba(6, 182, 212, 0.5) 70%,
    transparent 100%);
  animation: scan-line-anim 6s ease-in-out infinite;
  pointer-events: none;
  z-index: 1;
  box-shadow: 0 0 14px rgba(6, 182, 212, 0.5);
}

/* ---------- KEYFRAMES ---------- */
@keyframes orb-float1 {
  0%, 100% { transform: translate(0, 0); }
  50%      { transform: translate(22px, -28px); }
}
@keyframes orb-float2 {
  0%, 100% { transform: translate(0, 0); }
  50%      { transform: translate(-20px, 24px); }
}
@keyframes orb-float3 {
  0%, 100% { transform: translate(-50%, -50%); }
  50%      { transform: translate(-50%, -54%); }
}
@keyframes grid-shift {
  0%   { background-position: 0 0, 0 0; }
  100% { background-position: 56px 56px, 56px 56px; }
}
@keyframes scan-line-anim {
  0%   { top: 0%;   opacity: 0; }
  8%   { opacity: 1; }
  92%  { opacity: 0.4; }
  100% { top: 100%; opacity: 0; }
}

/* ---------- HEADER ---------- */
.contact-header {
  position: relative;
  z-index: 2;
  text-align: center;
  margin-bottom: 40px;
}
.contact-tag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #ffffff;
  color: #000000;
  border: 1.5px solid #000000;
  font-weight: 700;
  padding: 5px 14px;
  border-radius: 50px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 16px;
}
.contact-title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(1.6rem, 3.5vw, 2.8rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.15;
  margin-bottom: 14px;
}
.contact-title em {
  color: #22d3ee;
  font-style: normal;
}
.contact-subtitle {
  font-size: 15px;
  color: rgba(255, 255, 255, 0.55);
  text-align: center;
  margin: 0 auto;
  line-height: 1.8;
  max-width: 560px;
}

/* ---------- MAIN GRID ---------- */
.contact-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr 1.45fr;
  gap: 36px;
  align-items: stretch;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

/* ---------- LEFT: INFO COLUMN ---------- */
.contact-info-new {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 10px;
  height: 100%;
}

.contact-info-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 16px 20px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  transition: all 0.3s;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  color: inherit;
}
.contact-info-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  border-radius: 3px 0 0 3px;
  opacity: 0.7;
  transition: opacity 0.3s;
}
.contact-info-item:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.15);
  transform: translateX(5px);
}
.contact-info-item:hover::before { opacity: 1; }

/* per-item accent bars */
.ci-office::before { background: linear-gradient(180deg, #06b6d4, #0891b2); }
.ci-email::before  { background: linear-gradient(180deg, #6366f1, #8b5cf6); }
.ci-phone::before  { background: linear-gradient(180deg, #10b981, #059669); }
.ci-hours::before  { background: linear-gradient(180deg, #f59e0b, #d97706); }
.ci-it::before     { background: linear-gradient(180deg, #a855f7, #7c3aed); }
.ci-hours          { cursor: default; }

/* icon boxes */
.contact-icon-box {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.contact-icon-box svg {
  width: 24px;
  height: 24px;
}
.icon-office { background: linear-gradient(135deg, #0e7490, #06b6d4); box-shadow: 0 4px 14px rgba(6, 182, 212, 0.35); }
.icon-email  { background: linear-gradient(135deg, #4338ca, #6366f1); box-shadow: 0 4px 14px rgba(99, 102, 241, 0.35); }
.icon-phone  { background: linear-gradient(135deg, #047857, #10b981); box-shadow: 0 4px 14px rgba(16, 185, 129, 0.35); }
.icon-hours  { background: linear-gradient(135deg, #b45309, #f59e0b); box-shadow: 0 4px 14px rgba(245, 158, 11, 0.35); }
.icon-it     { background: linear-gradient(135deg, #5b21b6, #a855f7); box-shadow: 0 4px 14px rgba(168, 85, 247, 0.35); }

/* text inside info item */
.contact-info-text h4 {
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  margin: 0 0 3px 0;
  letter-spacing: 0.2px;
}
.contact-info-text p {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.55);
  margin: 0;
  line-height: 1.5;
}

/* ---------- STATS STRIP ---------- */
.contact-stats {
  margin-top: auto;
  padding: 18px 20px;
  background: rgba(6, 182, 212, 0.07);
  border: 1px solid rgba(6, 182, 212, 0.15);
  border-radius: 14px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.stat-item     { text-align: center; }
.stat-num {
  font-family: 'Playfair Display', serif;
  font-size: 1.6rem;
  font-weight: 700;
  color: #22d3ee;
}
.stat-label {
  font-size: 11px;
  color: rgba(255, 255, 255, 0.45);
  margin-top: 2px;
  letter-spacing: 0.3px;
}

/* ---------- RIGHT: FORM CARD ---------- */
.contact-card-new {
  background: rgba(255, 255, 255, 0.97);
  border-radius: 18px;
  padding: 44px 48px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 32px 80px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(6, 182, 212, 0.15);
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.form-title {
  font-family: 'Playfair Display', serif;
  font-size: 1.65rem;
  color: #0a1628;
  margin: 0 0 6px 0;
}
.form-subtitle {
  font-size: 13.5px;
  color: #64748b;
  margin: 0 0 28px 0;
}

/* form fields */
.contact-field-new {
  width: 100%;
  padding: 13px 16px;
  background: #f8fafc;
  border: 1.5px solid #e2e8f0;
  border-radius: 10px;
  font-size: 14px;
  font-family: 'DM Sans', sans-serif;
  color: #0a1628;
  outline: none;
  transition: all 0.25s;
  margin-bottom: 12px;
  box-sizing: border-box;
}
.contact-field-new:focus {
  border-color: #06b6d4;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(6, 182, 212, 0.12);
}
.contact-field-new::placeholder { color: #94a3b8; }

textarea.contact-field-new {
  resize: vertical;
  min-height: 100px;
}
select.contact-field-new { appearance: none; }

.field-row-new {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

/* submit button */
.contact-submit-new {
  width: 100%;
  padding: 15px 24px;
  background: linear-gradient(135deg, #0e7490, #06b6d4);
  color: #fff;
  border: none;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 700;
  font-family: 'DM Sans', sans-serif;
  cursor: pointer;
  transition: all 0.3s;
  box-shadow: 0 6px 20px rgba(6, 182, 212, 0.35);
  letter-spacing: 0.3px;
}
.contact-submit-new:hover {
  background: linear-gradient(135deg, #0c6680, #0891b2);
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(6, 182, 212, 0.45);
}

.form-secure {
  font-size: 12px;
  color: #94a3b8;
  text-align: center;
  margin-top: 14px;
}
.cn-validation {
  display: none;
  color: #ef4444;
  font-size: 13px;
  margin-bottom: 10px;
}

/* success state */
.contact-success-new {
  display: none;
  text-align: center;
  padding: 32px 20px;
}
.contact-success-new .success-icon {
  font-size: 3rem;
  margin-bottom: 16px;
}
.contact-success-new h3 {
  font-family: 'Playfair Display', serif;
  color: #0a1628;
  font-size: 1.4rem;
  margin-bottom: 8px;
}
.contact-success-new p {
  color: #64748b;
  font-size: 14px;
}

/* =====================================================
   RESPONSIVE BREAKPOINTS
   ===================================================== */

/* ---------- LARGE TABLETS / SMALL DESKTOPS (≤ 1024px) ---------- */
@media (max-width: 1024px) {
  .contact-section { padding: 56px 4%; }
  .contact-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .contact-card-new { padding: 36px 32px; }
}

/* ---------- TABLETS (≤ 768px) ---------- */
@media (max-width: 768px) {
  .contact-section { padding: 48px 4%; }
  .contact-header { margin-bottom: 32px; }
  .contact-subtitle { font-size: 14px; }

  .contact-card-new { padding: 28px 22px; }
  .form-title { font-size: 1.4rem; }
  .field-row-new { grid-template-columns: 1fr; }

  /* shrink decorative orbs so they don't overflow */
  .contact-orb-1 { width: 240px; height: 240px; }
  .contact-orb-2 { width: 200px; height: 200px; }
  .contact-orb-3 { width: 320px; height: 320px; }
  .contact-orb-4 { width: 140px; height: 140px; }
}

/* ---------- MOBILE (≤ 480px) ---------- */
@media (max-width: 480px) {
  .contact-section { padding: 40px 16px; }

  .contact-tag {
    font-size: 10px;
    padding: 4px 12px;
    letter-spacing: 0.8px;
  }
  .contact-title { font-size: 1.7rem; }
  .contact-subtitle {
    font-size: 13.5px;
    line-height: 1.7;
  }

  .contact-info-item {
    padding: 14px 14px;
    gap: 12px;
    border-radius: 12px;
  }
  .contact-info-item:hover { transform: none; }
  .contact-icon-box {
    width: 42px;
    height: 42px;
    border-radius: 10px;
  }
  .contact-icon-box svg { width: 20px; height: 20px; }
  .contact-info-text h4 { font-size: 13.5px; }
  .contact-info-text p  { font-size: 12.5px; }

  .contact-stats {
    padding: 16px 14px;
    gap: 10px;
  }
  .stat-num { font-size: 1.4rem; }
  .stat-label { font-size: 10px; }

  .contact-card-new {
    padding: 24px 18px;
    border-radius: 14px;
  }
  .form-title { font-size: 1.25rem; }
  .form-subtitle {
    font-size: 13px;
    margin-bottom: 20px;
  }
  .contact-field-new {
    padding: 12px 14px;
    font-size: 13.5px;
  }
  .contact-submit-new {
    padding: 14px 20px;
    font-size: 14px;
  }
}

/* ---------- VERY SMALL PHONES (≤ 360px) ---------- */
@media (max-width: 360px) {
  .contact-section { padding: 36px 12px; }
  .contact-title { font-size: 1.5rem; }
  .contact-stats { grid-template-columns: 1fr 1fr; gap: 8px; }
  .stat-num { font-size: 1.25rem; }
}

/* ===== FAQ SECTION ===== */
 /* .faq {
  padding: 80px 20px;
  background: #ffffff; 
}
.faq .center {
  text-align: center;
  margin-bottom: 48px;
}
.faq-grid {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  gap: 0 !important;
  max-width: 860px !important;
  margin: 0 auto !important;
  width: 100% !important;
}
.faq-item {
  display: block !important;
  width: 100% !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12); 
  overflow: hidden;
}
.faq-q {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 4px;
  cursor: pointer;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}
.faq-q h4 {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  flex: 1;
  color: #1a3c5e; 
}
.faq-icon {
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 50%;
  background: #14b8a6; 
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 300;
  line-height: 1;
  transition: transform 0.3s ease, background 0.3s ease;
}
.faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, padding 0.3s ease;
  padding: 0 4px;
}
.faq-a p {
  margin: 0 0 20px;
  font-size: 15px;
  line-height: 1.7;
  color: rgba(0, 0, 0, 0.65); 
}
.faq-item.open .faq-a {
  max-height: 800px !important;
  padding: 18px 26px 0 !important;
}
.faq-item.open .faq-icon {
  transform: rotate(45deg);
  background: #ef4444; 
}
.faq .center h2,
.faq .center h3 {
  color: #1a3c5e;
}
.faq .center p {
  color: rgba(0, 0, 0, 0.55); 
}
.faq-divider {
  height: 1px;
  background: rgba(0, 0, 0, 0.06);
  display: none;
}} */