/* ==========================================================================
   Inner pages: brings existing templates in line with the new home page.
   Loaded on every page except home, after modern.css. Scoped to body.rgInner.
   ========================================================================== */

.rgInner { font-family: var(--rg-sans); color: #1d2330; }
.rgInner p { line-height: 1.7; }

/* ---------- Hero ---------- */
.rgInner .hero_banner,
.rgInner .hero_bannerr {
  position: relative; isolation: isolate; overflow: hidden;
  background:
    radial-gradient(55% 80% at 100% 40%, rgba(10, 110, 230, .85) 0%, rgba(6, 60, 150, .45) 35%, transparent 70%),
    linear-gradient(90deg, #000 0%, #02060f 45%, #031a3d 100%) !important;
}
.rgInner .hero_banner::before, .rgInner .hero_bannerr::before { display: none; }
.rgInner .rgHeroCanvas {
  position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; pointer-events: none; opacity: .7;
  -webkit-mask-image: linear-gradient(100deg, rgba(0,0,0,.2) 0%, rgba(0,0,0,.45) 45%, #000 80%);
  mask-image: linear-gradient(100deg, rgba(0,0,0,.2) 0%, rgba(0,0,0,.45) 45%, #000 80%);
}
.rgInner .hero_banner h1, .rgInner .hero_bannerr h1, .rgInner .hero_section h1, .rgInner .hero_bannerr .section_content h2 {
  font-family: var(--rg-display); font-weight: 400; font-size: clamp(36px, 4.2vw, 64px); line-height: 1.12;
  background: linear-gradient(90deg, #ffffff 0%, #d8f1ff 30%, #8fd2ff 65%, #39a8ff 100%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent;
  animation: rgIn .9s var(--rg-ease) both;
}
.rgInner .hero_banner p, .rgInner .hero_bannerr p { color: rgba(255, 255, 255, .88); animation: rgIn .9s var(--rg-ease) .12s both; }
.rgInner .hero_banner .btnBlock, .rgInner .hero_banner .request_quote_section, .rgInner .hero_bannerr .btnBlock { animation: rgIn .9s var(--rg-ease) .22s both; }
.rgInner .hero_banner .bannerImg img, .rgInner .hero_banner .hero_right_img img { animation: rgFloat 6s ease-in-out infinite; }
@keyframes rgIn { from { opacity: 0; transform: translateY(18px); } }
@keyframes rgFloat { 50% { transform: translateY(-10px); } }

/* ---------- Section headings ---------- */
.rgInner h2, .rgInner .section_content h2, .rgInner .section_heading h2, .rgInner .section_heading h3 {
  font-family: var(--rg-display); font-weight: 400; letter-spacing: 0;
  font-size: clamp(30px, 3.6vw, 52px); line-height: 1.12;
  background: none; -webkit-text-fill-color: currentColor; color: #05070d;
}
.rgInner .section_content h2 span {
  font-family: var(--rg-sans); font-size: 15px; line-height: 1.6; color: #4b5260; -webkit-text-fill-color: currentColor; margin-top: 12px;
}
.rgInner .section_content p { color: #3a4150; font-size: 15px; }
.rgInner h3 { letter-spacing: -.01em; }

/* Dark sections use the home page's navy glow */
.rgInner .dark_bg, .rgInner .dark_block, .rgInner .hiring, .rgInner .CTA3, .rgInner .techtabs {
  background: radial-gradient(70% 60% at 50% 0%, #0c3a6b 0%, #06182f 55%, #000 100%) !important;
}
.rgInner .dark_bg::before { opacity: .2; }
.rgInner .dark_bg h2, .rgInner .dark_block h2, .rgInner .hiring h2, .rgInner .dark_bg .section_content h2,
.rgInner .dark_bg h3, .rgInner .dark_block h3, .rgInner .portfolio h2, .rgInner .services h2, .rgInner .solutions h2,
.rgInner .development_process h2 {
  color: #fff; -webkit-text-fill-color: #fff; background: none;
}
.rgInner .dark_bg p, .rgInner .dark_block p, .rgInner .hiring p { color: rgba(255, 255, 255, .85); }
.rgInner .dark_bg .section_content h2 span, .rgInner .dark_block .section_content h2 span { color: rgba(255, 255, 255, .8); }

/* ---------- Buttons: pill + round arrow, like the home page ---------- */
.rgInner .button {
  height: auto; min-height: 48px; min-width: 0; padding: 0 62px 0 24px; border-radius: 999px;
  font-family: var(--rg-sans); font-weight: 700; font-size: 15px; color: #fff; overflow: visible;
}
.rgInner .button::before {
  transform: none !important; width: 100% !important; height: 100% !important; border-radius: 999px; background: var(--rg-blue);
  transition: background .3s, box-shadow .3s;
}
.rgInner .button::after {
  top: 6px; right: 6px; bottom: auto; width: 36px !important; height: 36px !important; border-radius: 50% !important;
  transform: none !important; backdrop-filter: none; -webkit-backdrop-filter: none; z-index: -1;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f9bff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 7l10 10M17 9v8H9'/%3E%3C/svg%3E") center / 15px no-repeat;
  transition: transform .35s var(--rg-ease);
}
.rgInner .button:hover::before { background: var(--rg-blue-deep); box-shadow: 0 12px 28px -12px rgba(15, 155, 255, .8); }
.rgInner .button:hover::after { transform: rotate(-45deg) !important; }
.rgInner .button.buttonWhite { color: #05070d; }
.rgInner .button.buttonWhite::before { background: #fff; }
.rgInner .button.buttonWhite:hover { color: #05070d !important; }
.rgInner .button.buttonWhite::after {
  background: var(--rg-blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 7l10 10M17 9v8H9'/%3E%3C/svg%3E") center / 15px no-repeat;
}
.rgInner .quate_Btn .rqst_btn { border-radius: 999px; }
.rgInner .quate_Btn .rqst_btn_submit { border-radius: 50%; background: var(--rg-blue); }

/* ---------- Cards ---------- */
.rgInner .support_card, .rgInner .ondemandCard, .rgInner .services-card, .rgInner .feature-card, .rgInner .tech-card,
.rgInner .testimonial-card, .rgInner .itsolutionCard, .rgInner .platformCards, .rgInner .showcase-card, .rgInner .service_item,
.rgInner .feature-item, .rgInner .card.bookingCard {
  border-radius: 14px !important; border: 1px solid #ececec !important; overflow: hidden;
  background: linear-gradient(180deg, #fff 0%, #fff 55%, #fff4ea 100%) !important;
  transition: transform .45s var(--rg-ease), box-shadow .45s var(--rg-ease), border-color .3s !important;
}
.rgInner .support_card:hover, .rgInner .ondemandCard:hover, .rgInner .services-card:hover, .rgInner .feature-card:hover,
.rgInner .tech-card:hover, .rgInner .testimonial-card:hover, .rgInner .itsolutionCard:hover, .rgInner .platformCards:hover,
.rgInner .showcase-card:hover, .rgInner .service_item:hover, .rgInner .feature-item:hover, .rgInner .card.bookingCard:hover {
  transform: translateY(-5px); border-color: #ffd2ad !important; box-shadow: 0 26px 44px -28px rgba(240, 122, 26, .65) !important;
}
.rgInner .dark_bg .support_card, .rgInner .dark_bg .ondemandCard, .rgInner .dark_block .ondemandCard {
  background: linear-gradient(170deg, rgba(60, 120, 210, .28), rgba(20, 70, 160, .14)) !important; border-color: rgba(255, 255, 255, .14) !important; color: #fff;
}
.rgInner .support_card h3, .rgInner .ondemandCard h3, .rgInner .card_content h3 { font-family: var(--rg-sans); font-weight: 600; letter-spacing: -.01em; }
.rgInner .support_card:hover h3, .rgInner .ondemandCard:hover h3 { color: var(--rg-orange) !important; }
.rgInner .card_list img, .rgInner .ondemandCard img, .rgInner .feature-icon img {
  transition: transform .5s var(--rg-ease);
}
.rgInner .support_card:hover .card_list img, .rgInner .ondemandCard:hover img, .rgInner .feature-card:hover .feature-icon img { transform: scale(1.08) rotate(-4deg); }
.rgInner .horizonCard { border-radius: 14px; overflow: hidden; }
.rgInner .horizonCard .cardImg img { transition: transform .8s var(--rg-ease); }
.rgInner .horizonCard:hover .cardImg img { transform: scale(1.06); }
.rgInner .bannerImg img { border-radius: 16px; }
.rgInner .techStackCards { border-radius: 12px; transition: transform .35s var(--rg-ease), box-shadow .35s; }
.rgInner .techStackCards:hover { transform: translateY(-3px); box-shadow: 0 14px 26px -18px rgba(15, 155, 255, .6); }

/* Content blocks inside a card stay flat: only the outer card lifts */
.rgInner .support_card .card_content, .rgInner .ondemandCard .card_content, .rgInner .feature-card .card_content,
.rgInner .services-card .card_content {
  background: none !important; box-shadow: none !important; transform: none !important; border-radius: 0 !important;
}

/* ---------- Stats ---------- */
.rgInner .statsCards .network_count { border-left-color: #f1e3d6; }
.rgInner .network_count h2, .rgInner .network_count h3 {
  font-family: var(--rg-sans); font-weight: 600; letter-spacing: -.02em; color: #05070d; -webkit-text-fill-color: currentColor; background: none;
}

/* ---------- CTA bands ---------- */
.rgInner .CTA1, .rgInner .CTA2, .rgInner .CTA3, .rgInner .cta1Container.ctaContainer3 .CTA1 {
  position: relative; overflow: hidden; border-radius: 18px; border: 1px solid rgba(255, 255, 255, .14);
  background: radial-gradient(60% 120% at 85% 50%, #0c3d8f 0%, #061b44 55%, #030a1c 100%) !important;
}
.rgInner .CTA1::before, .rgInner .CTA2::before, .rgInner .CTA3::before {
  content: ""; position: absolute; width: 380px; height: 380px; right: -80px; top: -160px; border-radius: 50%; pointer-events: none;
  background: conic-gradient(from 90deg, #0f9bff, #7c5cff, #00d4ff, #0f9bff); filter: blur(80px); opacity: .35; animation: rgSpin 18s linear infinite;
}
@keyframes rgSpin { to { transform: rotate(360deg); } }
.rgInner .CTA1 h3, .rgInner .CTA2 h3, .rgInner .CTA3 h3, .rgInner .CTA1 h2, .rgInner .CTA2 h2, .rgInner .CTA3 h2 {
  font-family: var(--rg-sans); font-weight: 700; color: #fff; -webkit-text-fill-color: #fff; background: none;
}
.rgInner .CTA1 h3 span, .rgInner .CTA2 h3 span, .rgInner .CTA3 h3 span { font: inherit; color: inherit; -webkit-text-fill-color: currentColor; }
.rgInner .CTA1 h3, .rgInner .CTA2 h3, .rgInner .CTA3 h3 { font-size: clamp(26px, 2.8vw, 40px); line-height: 1.25; }
.rgInner .CTA1 .bannerImg img, .rgInner .CTA2 .bannerImg img, .rgInner .CTA3 .bannerImg img { animation: rgFloat 6s ease-in-out infinite; border-radius: 0; }
.rgInner .ctalines::after { opacity: .35; }

/* ---------- Forms ---------- */
.rgInner .quateForm { border-radius: 20px; box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .55); }
.rgInner .quateForm .form-control, .rgInner .quateForm .form-select, .rgInner .quateForm button.refreshCaptchs {
  height: 52px; border-radius: 12px; border: 1px solid #e6e9ef; background: #f7f8fb;
}
.rgInner .quateForm textarea.form-control { height: auto; min-height: 110px; }
.rgInner .quateForm .form-control:focus { background: #fff; border-color: var(--rg-blue); }
.rgInner .quateForm .captcha { border-radius: 12px; }
.rgInner .form-check-input:checked { background-color: var(--rg-blue); border-color: var(--rg-blue); }

/* ---------- FAQ accordions ---------- */
.rgInner .accordion-item { border: 1px solid #f3e0cf !important; border-radius: 10px !important; overflow: hidden; margin-bottom: 10px; background: linear-gradient(90deg, #f2f4f8 0%, #fdf3ea 100%); }
.rgInner .accordion-button { background: transparent !important; font-family: var(--rg-sans); font-weight: 600; color: #05070d; box-shadow: none !important; }
.rgInner .accordion-button::after, .rgInner .accordion-button:not(.collapsed)::after {
  width: 20px; height: 20px; background-size: 20px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23f07a1a' stroke-width='1.5'%3E%3Ccircle cx='10' cy='10' r='9'/%3E%3Cpath d='M10 6v8M6 10h8' stroke-linecap='round'/%3E%3C/svg%3E");
  transition: transform .3s var(--rg-ease);
}
.rgInner .accordion-button:not(.collapsed)::after { transform: rotate(45deg); }
.rgInner .accordion-body { color: #3a4150; }
.rgInner .dark_bg .accordion-item, .rgInner .dark_block .accordion-item { background: rgba(255, 255, 255, .05); border-color: rgba(255, 255, 255, .15) !important; }
.rgInner .dark_bg .accordion-button, .rgInner .dark_block .accordion-button, .rgInner .dark_bg .accordion-body { color: #fff; }

/* ---------- Tabs ---------- */
.rgInner .nav-pills .nav-link, .rgInner .project_tabs .nav-link, .rgInner .techtabs .nav-link {
  border-radius: 999px; border: 1px solid rgba(0, 0, 0, .12); font-family: var(--rg-sans); font-weight: 600; transition: background .25s, color .25s, border-color .25s;
}
.rgInner .techtabs .nav-link { border-color: rgba(255, 255, 255, .35); color: #fff; }
.rgInner .nav-pills .nav-link.active, .rgInner .project_tabs .nav-link.active, .rgInner .techtabs .nav-link.active {
  background: var(--rg-blue) !important; border-color: var(--rg-blue); color: #fff !important;
}

/* ---------- Scroll reveal for cards (classes added by modern.js) ---------- */
.rgInner .rg-reveal { transition-delay: var(--rg-d, 0s); }

@media (max-width: 767px) {
  .rgInner .CTA1, .rgInner .CTA2, .rgInner .CTA3 { padding: 32px 22px !important; }
  .rgInner .quateForm { padding: 24px 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .rgInner .rgHeroCanvas { display: none; }
}
