/* ============================================
   ThinkPayu — Light Green & White Theme
   Override file: load AFTER style.css
   ============================================ */

:root {
  --tpg-primary:       #3cb371;   /* medium sea green */
  --tpg-primary-dark:  #2a9057;   /* hover / active */
  --tpg-primary-light: #e8f7ef;   /* tinted backgrounds */
  --tpg-accent:        #27ae60;   /* headings accent */
  --tpg-text-dark:     #1a3a28;   /* dark text on light green */
  --tpg-white:         #ffffff;
  --tpg-glass-bg:      rgba(255, 255, 255, 0.15);
  --tpg-glass-border:  rgba(255, 255, 255, 0.30);
  --tpg-shadow:        0 4px 24px rgba(60, 179, 113, 0.12);
}


/* ============================================
   1. NAVBAR — Glass effect
   ============================================ */

.theme-main-menu.theme-menu-four {
  background: var(--tpg-glass-bg) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  border-bottom: 1px solid var(--tpg-glass-border);
  box-shadow: 0 2px 16px rgba(60, 179, 113, 0.10);
}

/* Nav links */
.theme-main-menu .navbar-nav .nav-link {
  color: #1a3a28 !important;
  font-weight: 500;
  transition: color 0.2s ease;
}

.theme-main-menu .navbar-nav .nav-link:hover,
.theme-main-menu .navbar-nav .nav-link:focus {
  color: var(--tpg-primary-dark) !important;
}

.theme-main-menu .navbar-nav .nav-item.active .nav-link {
  color: var(--tpg-primary-dark) !important;
}

/* Login link */
.theme-main-menu .signIn-action {
  color: var(--tpg-primary-dark) !important;
  font-weight: 600;
  transition: color 0.2s ease;
}

.theme-main-menu .signIn-action:hover {
  color: var(--tpg-primary) !important;
}

/* Sticky: give it a white tint so it stays readable over any section */
.theme-main-menu.fixed-nav,
.theme-main-menu.sticky-menu.fixed {
  background: rgba(255, 255, 255, 0.80) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}


/* ============================================
   2. CTA BUTTONS — Solid light green
   ============================================ */

.theme-btn-five,
a.theme-btn-five,
button.theme-btn-five {
  background: var(--tpg-primary) !important;
  border: 2px solid var(--tpg-primary) !important;
  color: var(--tpg-white) !important;
  border-radius: 6px;
  font-weight: 600;
  letter-spacing: 0.3px;
  transition: background 0.22s ease, transform 0.15s ease, box-shadow 0.22s ease;
  box-shadow: 0 3px 14px rgba(60, 179, 113, 0.28);
}

.theme-btn-five:hover,
a.theme-btn-five:hover {
  background: var(--tpg-primary-dark) !important;
  border-color: var(--tpg-primary-dark) !important;
  color: var(--tpg-white) !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(60, 179, 113, 0.38);
}

.theme-btn-five:active,
a.theme-btn-five:active {
  transform: translateY(0);
  box-shadow: none;
}


/* ============================================
   3. HERO SECTION
   ============================================ */

.hero-banner-four {
  background: linear-gradient(135deg, #f0fbf5 0%, #ffffff 60%, #e8f7ef 100%);
}

.hero-banner-four h1 {
  color: #1a3a28;
}

.hero-banner-four h1 span {
  color: var(--tpg-accent);
}

.hero-banner-four .sub-text {
  color: #3a5a47;
}


/* ============================================
   4. TITLE STYLE — h2 colored spans
   ============================================ */

.title-style-five h2 span,
.title-style-five h2 > span {
  color: var(--tpg-accent);
}

.title-style-five h6 {
  color: var(--tpg-primary);
}


/* ============================================
   5. HOW IT WORKS CARDS — .block-style-fourteen
   ============================================ */

.block-style-fourteen {
  background: var(--tpg-white);
  border: 1.5px solid #c2e8d3;
  border-radius: 12px;
  transition: box-shadow 0.22s ease, transform 0.22s ease;
}

.block-style-fourteen:hover {
  box-shadow: 0 8px 28px rgba(60, 179, 113, 0.18);
  transform: translateY(-4px);
}

.block-style-fourteen .title {
  color: var(--tpg-primary-dark);
  font-weight: 700;
}

.block-style-fourteen p {
  color: #4a6a56;
}


/* ============================================
   6. EARN POINTS CARDS — .box_point
   ============================================ */

.box_point {
  background: var(--tpg-primary-light);
  border: 1.5px solid #b8e4cb;
  border-radius: 10px;
  padding: 24px 20px;
  margin-bottom: 20px;
  transition: box-shadow 0.22s ease, transform 0.22s ease;
}

.box_point:hover {
  box-shadow: 0 6px 22px rgba(60, 179, 113, 0.18);
  transform: translateY(-3px);
}

.box_point h3 {
  color: var(--tpg-primary-dark);
  font-weight: 700;
}

.box_point p {
  color: #3a5a47;
}


/* ============================================
   7. PAYMENT METHODS — .box_bore
   ============================================ */

.box_bore {
  border: 1.5px solid #c2e8d3;
  border-radius: 8px;
  background: var(--tpg-white);
  transition: box-shadow 0.2s ease;
}

.box_bore:hover {
  box-shadow: 0 4px 14px rgba(60, 179, 113, 0.16);
}


/* ============================================
   8. FANCY TEXT BLOCK SECTIONS
   ============================================ */

.fancy-text-block-nineteen {
  background: var(--tpg-white);
}

.fancy-text-block-six {
  background: var(--tpg-white);
}

/* ============================================
   9. REFERRAL SECTION — .amazing-feature-section
   ============================================ */

.amazing-feature-section .section-heading h2 {
  color: var(--tpg-primary-dark);
}


/* ============================================
   10. GET PAID THROUGH SECTION
   ============================================ */

.get_paid_thought {
  background: var(--tpg-primary-light);
}

.get_paid_thought .title-style-five h2 span {
  color: var(--tpg-accent);
}


/* ============================================
   11. PRICING / CTA BOTTOM SECTION
   ============================================ */

.pricing-section-three {
  background: var(--tpg-white);
}

.pricing-section-three h2 {
  color: var(--tpg-primary-dark);
}


/* ============================================
   12. PARTNER SLIDER SECTION
   ============================================ */

.partner_section {
  background: #f4fcf7;
  border-top: 1px solid #c2e8d3;
  border-bottom: 1px solid #c2e8d3;
}

.partner_section h2 span {
  color: var(--tpg-accent);
}


/* ============================================
   13. FANCY FEATURE NINE (shapes bg section)
   ============================================ */

.fancy-feature-nine {
  background: var(--tpg-white);
}


/* ============================================
   14. LOADER
   ============================================ */

.loader {
  background-color: #f4fcf7 !important;
}


/* ============================================
   15. MOBILE HAMBURGER TOGGLE
   ============================================ */

.navbar-toggler span,
.navbar-toggler span::before,
.navbar-toggler span::after {
  background: var(--tpg-primary-dark) !important;
}


/* ============================================
   16. DROPDOWN MENU
   ============================================ */

.dropdown-menu {
  border: 1px solid #c2e8d3;
  border-radius: 8px;
}

.dropdown-menu .dropdown-item:hover {
  background: var(--tpg-primary-light);
  color: var(--tpg-primary-dark);
}


/* ============================================
   17. SCROLLBAR (optional, webkit only)
   ============================================ */

::-webkit-scrollbar-thumb {
  background: var(--tpg-primary);
  border-radius: 4px;
}

::-webkit-scrollbar-track {
  background: var(--tpg-primary-light);
}


/* ============================================
   18. REGISTRATION & LOGIN PAGES
   ============================================ */

.registration_page {
  background: linear-gradient(135deg, #f0fbf5 0%, #ffffff 60%, #e8f7ef 100%);
  min-height: 100vh;
  padding: 60px 0;
}

/* Main card panel */
.registration_page .panel.login-form,
.registration_page .panel.c-white {
  background: var(--tpg-white) !important;
  border: 1.5px solid #c2e8d3 !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 32px rgba(60, 179, 113, 0.12) !important;
  padding: 36px 40px;
  /* sd-oreng (orange shadow) override */
  box-shadow: 0 8px 32px rgba(60, 179, 113, 0.14) !important;
}

/* Panel heading */
.registration_page .panel-header h3 {
  color: var(--tpg-primary-dark);
  font-weight: 600;
  position: relative;
  padding-bottom: 14px;
}

.registration_page .panel-header h3::after {
  content: '';
  display: block;
  width: 48px;
  height: 3px;
  background: var(--tpg-primary);
  border-radius: 2px;
  margin: 10px auto 0;
}

/* Form labels */
.registration_page .form-group label {
  color: #2a5a3a;
  font-weight: 500;
  font-size: 14px;
  margin-bottom: 6px;
}

/* Form inputs */
.registration_page .form-control {
  border: 1.5px solid #c2e8d3 !important;
  border-radius: 8px !important;
  color: #1a3a28 !important;
  background: #fafffe !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  padding: 10px 14px;
}

.registration_page .form-control:focus {
  border-color: var(--tpg-primary) !important;
  box-shadow: 0 0 0 3px rgba(60, 179, 113, 0.15) !important;
  outline: none !important;
  background: var(--tpg-white) !important;
}

.registration_page .form-control::placeholder {
  color: #a0c4ae;
}

/* Select dropdown */
.registration_page select.form-control {
  appearance: auto;
  cursor: pointer;
}

/* Error spans */
.registration_page .text-danger {
  color: #c0392b !important;
  font-size: 13px;
  margin-top: 4px;
  display: block;
}

/* Alert messages (wrong password / blocked) */
.registration_page .alert-danger {
  background: #fff0f0;
  border: 1px solid #f5c6c6;
  color: #a33;
  border-radius: 8px;
  padding: 12px 16px;
  margin: 0 40px 16px;
}

/* Login / Register link below form */
.registration_page .col-12.text-center p {
  color: #4a6a56;
  font-size: 14px;
}

.registration_page .col-12.text-center a,
.registration_page a[style*="color: #89c400"],
.registration_page a[style*="color:#89c400"] {
  color: var(--tpg-primary-dark) !important;
  font-weight: 600;
  text-decoration: none !important;
  transition: color 0.2s ease;
}

.registration_page a[style*="color: #89c400"]:hover,
.registration_page a[style*="color:#89c400"]:hover {
  color: var(--tpg-accent) !important;
  text-decoration: underline !important;
}

/* Forgot password */
.registration_page .col-12.text-right label a {
  color: var(--tpg-primary-dark) !important;
  font-size: 13px;
}


/* ============================================
   19. POLICY PAGES (Privacy, Terms, etc.)
   ============================================ */

.policy-page,
.terms-page,
.privacy-page,
[class*="policy"],
[class*="terms"] {
  background: var(--tpg-white);
  padding: 60px 0;
}

/* Policy page hero / banner */
.policy-hero,
.page-banner,
.inner-banner {
  background: linear-gradient(135deg, #e8f7ef 0%, #c2e8d3 100%);
  padding: 50px 0;
  text-align: center;
}

.policy-hero h1,
.page-banner h1,
.inner-banner h1 {
  color: var(--tpg-primary-dark);
  font-weight: 700;
}

/* Content area headings */
.policy-content h2,
.policy-content h3,
.terms-content h2,
.terms-content h3 {
  color: var(--tpg-primary-dark);
  margin-top: 28px;
  margin-bottom: 12px;
}

.policy-content h2::before,
.terms-content h2::before {
  content: '';
  display: inline-block;
  width: 4px;
  height: 20px;
  background: var(--tpg-primary);
  border-radius: 2px;
  margin-right: 10px;
  vertical-align: middle;
}

/* Content body text */
.policy-content p,
.terms-content p {
  color: #3a5a47;
  line-height: 1.8;
}

/* Policy links */
.policy-content a,
.terms-content a {
  color: var(--tpg-primary-dark);
  font-weight: 500;
}

.policy-content a:hover,
.terms-content a:hover {
  color: var(--tpg-accent);
}

/* Policy content card wrapper (if wrapped in panel) */
.policy-content .panel,
.terms-content .panel {
  border: 1.5px solid #c2e8d3;
  border-radius: 12px;
  padding: 32px 36px;
  background: var(--tpg-white);
  box-shadow: 0 4px 20px rgba(60, 179, 113, 0.08);
}

/* Ordered / unordered lists in policy */
.policy-content ul,
.policy-content ol,
.terms-content ul,
.terms-content ol {
  padding-left: 20px;
  color: #3a5a47;
  line-height: 2;
}

.policy-content ul li::marker,
.terms-content ul li::marker {
  color: var(--tpg-primary);
}


/* ============================================
   20. FOOTER
   ============================================ */

.theme-footer-four {
  background: #1a3a28 !important;
  border-top: 3px solid var(--tpg-primary);
}

.theme-footer-four .top-footer {
  padding: 60px 0 40px;
}

.theme-footer-four .footer-title {
  color: var(--tpg-primary) !important;
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 18px;
  position: relative;
  padding-bottom: 10px;
}

.theme-footer-four .footer-title::after {
  content: '';
  display: block;
  width: 32px;
  height: 2px;
  background: var(--tpg-primary);
  border-radius: 2px;
  margin-top: 8px;
}

.theme-footer-four .footer-about-widget p {
  font-size: 13px !important;
  line-height: 24px !important;
  color: #a8c8b8 !important;
}

.theme-footer-four .footer-list ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.theme-footer-four .footer-list ul li {
  margin-bottom: 10px;
}

.theme-footer-four .footer-list ul li a {
  color: #a8c8b8 !important;
  font-size: 14px;
  text-decoration: none;
  transition: color 0.2s ease, padding-left 0.2s ease;
  display: inline-block;
}

.theme-footer-four .footer-list ul li a:hover {
  color: var(--tpg-primary) !important;
  padding-left: 4px;
}

.theme-footer-four .social_icon {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.theme-footer-four .social_icon li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1.5px solid #2a9057;
  color: #a8c8b8 !important;
  font-size: 16px;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.theme-footer-four .social_icon li a:hover {
  background: var(--tpg-primary);
  border-color: var(--tpg-primary);
  color: var(--tpg-white) !important;
}

.theme-footer-four .bottom-footer-content {
  background: #122a1e !important;
  border-top: 1px solid #2a5a3a;
  padding: 16px 0;
  text-align: center;
}

.theme-footer-four .bottom-footer-content p {
  color: #6a9a7a !important;
  font-size: 13px;
  margin: 0;
}


/* ============================================
   21. PAGE HEADER BANNER (Contact, About, etc.)
       .fancy-text-block-twenty & similar
   ============================================ */

.fancy-text-block-twenty,
.fancy-text-block-twentyOne,
.fancy-text-block-twentyTwo,
[class^="fancy-text-block-twenty"],
.inner-page-banner,
.page-hero {
  background: linear-gradient(135deg, #e8f7ef 0%, #c8eed8 100%) !important;
  padding: 60px 0 50px !important;
  border-bottom: 2px solid #b0dfc4;
}

.fancy-text-block-twenty .title,
.fancy-text-block-twenty h1,
.fancy-text-block-twenty h2 {
  color: var(--tpg-primary-dark) !important;
  font-weight: 700;
}


/* ============================================
   22. CONTACT PAGE
   ============================================ */

.contact-style-two {
  background: var(--tpg-white) !important;
  padding: 60px 0;
}

/* Address info cards */
.contact-style-two .address-info {
  background: var(--tpg-primary-light);
  border: 1.5px solid #c2e8d3;
  border-radius: 12px;
  padding: 28px 24px;
  text-align: center;
  width: 100%;
  margin-bottom: 24px;
  transition: box-shadow 0.22s ease, transform 0.22s ease;
}

.contact-style-two .address-info:hover {
  box-shadow: 0 6px 22px rgba(60, 179, 113, 0.18);
  transform: translateY(-3px);
}

.contact-style-two .address-info .title {
  color: var(--tpg-primary-dark) !important;
  font-weight: 700;
  font-size: 17px;
  margin: 12px 0 6px;
}

.contact-style-two .address-info p {
  color: #3a5a47;
  font-size: 14px;
  margin: 0;
}

/* Contact form wrapper */
.contact-style-two .form-style-classic {
  background: var(--tpg-white);
  border: 1.5px solid #c2e8d3;
  border-radius: 14px;
  padding: 40px;
  box-shadow: 0 6px 24px rgba(60, 179, 113, 0.10);
  margin-top: 20px;
}

/* Form labels */
.contact-style-two .form-style-classic label {
  color: #2a5a3a;
  font-weight: 500;
  font-size: 14px;
  margin-bottom: 6px;
  display: block;
}

/* Form inputs & textarea */
.contact-style-two .form-style-classic input,
.contact-style-two .form-style-classic textarea {
  width: 100%;
  border: 1.5px solid #c2e8d3 !important;
  border-radius: 8px !important;
  background: #fafffe !important;
  color: #1a3a28 !important;
  padding: 10px 14px;
  font-size: 14px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  outline: none;
}

.contact-style-two .form-style-classic input:focus,
.contact-style-two .form-style-classic textarea:focus {
  border-color: var(--tpg-primary) !important;
  box-shadow: 0 0 0 3px rgba(60, 179, 113, 0.15) !important;
  background: var(--tpg-white) !important;
}

.contact-style-two .form-style-classic textarea {
  min-height: 140px;
  resize: vertical;
}

/* theme-btn-two — contact page send button */
.theme-btn-two,
a.theme-btn-two,
button.theme-btn-two {
  background: var(--tpg-primary) !important;
  border: 2px solid var(--tpg-primary) !important;
  color: var(--tpg-white) !important;
  border-radius: 6px;
  font-weight: 600;
  padding: 12px 36px;
  cursor: pointer;
  letter-spacing: 0.3px;
  transition: background 0.22s ease, transform 0.15s ease, box-shadow 0.22s ease;
  box-shadow: 0 3px 14px rgba(60, 179, 113, 0.28);
  display: inline-block;
}

.theme-btn-two:hover,
a.theme-btn-two:hover,
button.theme-btn-two:hover {
  background: var(--tpg-primary-dark) !important;
  border-color: var(--tpg-primary-dark) !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(60, 179, 113, 0.38);
}

/* Error messages */
.contact-style-two .help-block.with-errors {
  color: #c0392b;
  font-size: 12px;
  margin-top: 4px;
}


/* ============================================
   FIX: Blue wave banner override
   Original template uses background-image on
   .fancy-text-block-twenty — force remove it
   ============================================ */

.fancy-text-block-twenty,
[class^="fancy-text-block-twenty"],
[class*="fancy-text-block-twenty"] {
  background-image: none !important;
  background-color: #e8f7ef !important;
  background: linear-gradient(135deg, #e8f7ef 0%, #c8eed8 100%) !important;
  position: relative;
}

/* Kill any pseudo-element wave overlays */
.fancy-text-block-twenty::before,
.fancy-text-block-twenty::after {
  display: none !important;
}

/* Also target common template wave/shape containers inside */
.fancy-text-block-twenty .shape-container,
.fancy-text-block-twenty .bg_img,
.fancy-text-block-twenty .wave-shape,
.fancy-text-block-twenty [class*="shape"] {
  display: none !important;
}


/* ============================================
   FIX 2: Nuclear option — hide ALL background
   images sitewide that create blue wave effect
   ============================================ */

/* Common template wave/hero bg image containers */
.bg_img,
.feature-background,
[data-background],
.hero-banner-four .shapes,
.shape-container .bg_img {
  display: none !important;
}

/* Any div that has inline background-image with blue tones
   — handled by killing the wrapper instead */
.fancy-text-block-twenty {
  background-image: none !important;
  background: linear-gradient(135deg, #e8f7ef 0%, #c8eed8 100%) !important;
  overflow: hidden;
}

/* Kill absolutely positioned shape images inside banners */
.fancy-text-block-twenty img.shapes,
.fancy-text-block-twenty img[class*="shape"],
.contact-style-two img.shapes,
.contact-style-two img[class*="shape"] {
  display: none !important;
}

/* If blue is coming from a parent wrapping div in header */
.theme-main-menu + div[style*="background"],
.theme-main-menu ~ .page-hero,
.theme-main-menu ~ [class*="banner"] {
  background-image: none !important;
  background-color: #e8f7ef !important;
}


/* ============================================
   FIX 3: Remove blue wave — ::before pseudo-element
   Source: style.css — .fancy-text-block-twenty::before
   background: url(../img/123.png)
   ============================================ */

.fancy-text-block-twenty::before {
  background-image: none !important;
  background: linear-gradient(135deg, #e8f7ef 0%, #c8eed8 100%) !important;
}


/* ============================================
   EMERGENCY FIX: Registration/Login dark bg
   ============================================ */

.registration_page {
  background: #f0fbf5 !important;
  background-image: none !important;
}

.registration_page::before,
.registration_page::after {
  display: none !important;
  content: none !important;
  background: none !important;
}

/* main wrapper dark bg override */
.main-page-wrapper {
  background: #ffffff !important;
  background-image: none !important;
}

body {
  background: #ffffff !important;
  background-image: none !important;
}
