/*--------------------------------------------------------------
1. VARIABLES & RESET
--------------------------------------------------------------*/

:root {
  /* Color Palette */
  --master-color-main:      #0F969F;
  --master-color-dark:      #0A7880;
  --master-color-darker:    #065A61;
  --master-color-light:     #14B5BF;
  --master-color-lighter:   #7FD4D9;
  --master-color-bg:        rgba(230, 247, 248, 0.8);
  --master-color-text:      #102A43;
  --master-color-white:     #FFFFFF;

  /* Typography */
  --master-font-header:     'Montserrat', sans-serif;
  --master-font-body:       'Inter',     sans-serif;

  /* Typeface sizes (1rem = 16px) */
  --master-size-body:       1rem;     /* 16px */
  --master-letter-body:     0.02em;   /* slight tracking */

  --master-size-h2:         1.0rem;     /* 32px */
  --master-letter-h2:       0.10em;   /* 10% */

  --master-size-h1:         1.5rem;   /* 40px */
  --master-letter-h1:       0.15em;   /* 15% */

  --master-size-btn:        1rem;     /* 16px */
  --master-letter-btn:      0.10em;   /* 10% */
  --master-weight-btn:      700;      /* bold */
}

/*───────────────────────────────────────────────────────────────
21. ELEMENTOR GLOBAL DESIGN TOKEN OVERRIDES
───────────────────────────────────────────────────────────────*/

:root {
  /* Colors */
  --e-global-color-primary:   var(--master-color-main)     !important;
  --e-global-color-secondary: var(--master-color-light)    !important;
  --e-global-color-text:      var(--master-color-text)     !important;
  --e-global-color-accent:    var(--master-color-dark)     !important;

  /* Typography: Primary */
  --e-global-typography-primary-font-family: var(--master-font-header) !important;
  --e-global-typography-primary-font-size:   var(--master-size-h2)     !important;
  --e-global-typography-primary-font-weight: 500                       !important;
  --e-global-typography-primary-letter-spacing: var(--master-letter-h2)!important;
  --e-global-typography-primary-word-spacing: 0 !important;

  /* Typography: Secondary */
  --e-global-typography-secondary-font-family: var(--master-font-body) !important;
  --e-global-typography-secondary-font-weight: 400                     !important;

  /* Typography: Text */
  --e-global-typography-text-font-family: var(--master-font-body)      !important;
  --e-global-typography-text-font-weight: 400                          !important;

  /* Typography: Accent */
  --e-global-typography-accent-font-family: var(--master-font-header)  !important;
  --e-global-typography-accent-font-weight: 600                        !important;
}



/*───────────────────────────────────────────────────────────────
20. THE EVENTS CALENDAR (TEC) VARIABLE OVERRIDES
───────────────────────────────────────────────────────────────*/

:root {
  /* Override The Events Calendar's global variables */
  --tec-font-family-sans-serif: var(--master-font-body) !important;
  --tec-color-accent-primary:   var(--master-color-main) !important;
  --tec-font-size-4:            var(--master-size-body)  !important;
  --tec-line-height-2:          1.5                       !important;
  --tec-spacer-13:              2rem                      !important;
  --tec-spacer-14:              2rem                      !important;
}

/* reset box-model & margins */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/*--------------------------------------------------------------
2. BASE TYPOGRAPHY & BACKGROUND
--------------------------------------------------------------*/

html {
  font-family:        var(--master-font-body);
  font-size:          var(--master-size-body);
  letter-spacing:     var(--master-letter-body);
  color:              var(--master-color-text);
  background-color:   var(--master-color-bg);
  line-height:        1.5;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
  color:              var(--master-color-text);
  margin-bottom:      1rem;
  line-height:        1.2;
  font-family:        var(--master-font-header);
}

h1 {
  font-size:          var(--master-size-h1);
  letter-spacing:     var(--master-letter-h1);
  font-weight:        500;
}

h2 {
  font-size:          var(--master-size-h2);
  letter-spacing:     var(--master-letter-h2);
  font-weight:        400;
}

/*--------------------------------------------------------------
3. LINKS & BUTTONS
--------------------------------------------------------------*/

/* Links */
a {
  color:              var(--master-color-main);
  text-decoration:    none;
}
a:hover {
  color:              var(--master-color-light);
}

/* Buttons & form submits */
button,
.button,
input[type="button"],
input[type="submit"] {
  font-family:        var(--master-font-header);
  font-size:          var(--master-size-btn);
  letter-spacing:     var(--master-letter-btn);
  font-weight:        var(--master-weight-btn);
  text-transform:     uppercase;
  background-color:   var(--master-color-main);
  color:              var(--master-color-white);
  border:             none;
  padding:            0.75em 1.5em;
  cursor:            pointer;
  display:           inline-block;
  text-align:        center;
}

button:hover,
.button:hover,
input[type="button"]:hover,
input[type="submit"]:hover {
  background-color:   var(--master-color-dark);
}

/*--------------------------------------------------------------
4. UTILITY CLASSES
   (to forcibly apply palette on any element)
--------------------------------------------------------------*/

.bg-master-main    { background-color: var(--master-color-main)   !important; }
.bg-master-dark    { background-color: var(--master-color-dark)   !important; }
.bg-master-darker  { background-color: var(--master-color-darker) !important; }
.bg-master-light   { background-color: var(--master-color-light)  !important; }
.bg-master-lighter { background-color: var(--master-color-lighter)!important; }

.text-white        { color:            var(--master-color-white) !important; }

/*--------------------------------------------------------------
5. ELEMENTOR HEADING OVERRIDE (global)
--------------------------------------------------------------*/

.elementor-widget-heading .elementor-heading-title {
  font-family:        var(--master-font-header) !important;
  font-size:          var(--master-size-h1)     !important;
  letter-spacing:     var(--master-letter-h1)   !important;
}


/*--------------------------------------------------------------x
6. OVERRIDES: Remove purple badges & hovers
--------------------------------------------------------------*/

/* 1) WPNeo “campaign-categories” badge */
.wpneo-list-details .campaign-meta .campaign-categories {
  background-color: var(--master-color-main)   !important;
  color:            var(--master-color-white)  !important;
}
.wpneo-list-details .campaign-meta .campaign-categories:hover {
  background-color: var(--master-color-dark)   !important;
}

/* 2) Global link hover color */
body a:hover {
  color: var(--master-color-light)             !important;
}

/* 3) Buttons & form-element hovers */
button:hover,
.button:hover,
input[type="button"]:hover,
input[type="submit"]:hover {
  background-color: var(--master-color-dark)   !important;
  color:            var(--master-color-white)  !important;
}


/*--------------------------------------------------------------
7. WP CROWDFUNDING DASHBOARD BUTTONS
   (override purple styling, align with Master Styles)
--------------------------------------------------------------*/

.removecampaignupdate,
.wp-crowd-btn-primary,
.wpneo-edit-btn,
.wp-crowd-btn,
.wpneo-cancel-btn,
.wpneo-save-btn,
.wpneo-image-upload,
#wpneo_active_edit_form,
.wpneo-image-upload-btn {
  padding:            0.5em 2em               !important; /* 8px 32px */
  display:            inline-block            !important;
  font-size:          var(--master-size-btn)  !important; /* 1rem = 16px */
  letter-spacing:     var(--master-letter-btn)!important;
  line-height:        1.5                     !important;
  border-radius:      5px                       !important;
  background-color:   var(--master-color-main)   !important;
  border:             none                    !important;
  font-weight:        var(--master-weight-btn)!important;
  color:              var(--master-color-white)!important;
  text-transform:     uppercase               !important;
  position:           relative                !important;
  transition:         all 0.35s               !important;
}

.removecampaignupdate:hover,
.wp-crowd-btn-primary:hover,
.wpneo-edit-btn:hover,
.wp-crowd-btn:hover,
.wpneo-cancel-btn:hover,
.wpneo-save-btn:hover,
.wpneo-image-upload:hover,
#wpneo_active_edit_form:hover,
.wpneo-image-upload-btn:hover {
  background-color: var(--master-color-dark)   !important;
  color:            var(--master-color-white)  !important;
}



/*--------------------------------------------------------------
8. WP CROWDFUNDING DASHBOARD ACTIVE STATES
   (override purple to Master Colors)
--------------------------------------------------------------*/

.wpneo-dashboard-summary ul li.active {
  background-color: var(--master-color-main)   !important;
}

.wpneo-dashboard-head-left ul li.active a {
  background-color: var(--master-color-main)   !important;
}

/*--------------------------------------------------------------
9. WP CROWDFUNDING DASHBOARD “ACTIVE” ARROW & TEXT
   (override purple pointer and ensure white text)
--------------------------------------------------------------*/

/* Change the little arrow under the active item */
.wpneo-dashboard-summary ul li.active:after {
  border-color: var(--master-color-main) transparent transparent transparent !important;
}

/* Make the active tab’s text white */
.wpneo-dashboard-summary ul li.active,
.wpneo-dashboard-summary ul li.active a {
  background-color: var(--master-color-main)   !important;
  color:            var(--master-color-white)  !important;
}


/*--------------------------------------------------------------
10. WALLET DASHBOARD
    (align with Master Styles design system)
--------------------------------------------------------------*/

/* Container keeps centered max width */
.wallet-container {
  width:           100%;
  max-width:       1200px;
  padding:         2.5rem 1.25rem;    /* 40px 20px */
  margin:          0 auto;
  box-sizing:      border-box;
}

/* Balance box with master palette & border‑radius */
.wallet-balance-box {
  display:         flex;
  justify-content: space-between;
  align-items:     center;
  background-color: var(--master-color-main)   !important;
  color:            var(--master-color-white)  !important;
  border-radius:    0.625rem;                  /* 10px */
  padding:          1.5rem;                    /* 24px */
  margin-bottom:    1.875rem;                  /* 30px */
  font-family:      var(--master-font-body);
}


/* Left side text & link */
.wallet-balance-left h2,
.wallet-balance-left p,
.wallet-balance-left a {
  color:            var(--master-color-white) !important;
  margin:           0;
  font-family:      var(--master-font-body);
}
.wallet-balance-left h2 {
  font-size:        3.8rem;     /* 32px */
  letter-spacing:   var(--master-letter-h2);
  font-weight:      500;
  margin-bottom:    0.5rem;
}
.wallet-balance-left p {
  font-size:        var(--master-size-body);
  letter-spacing:   var(--master-letter-body);
  margin-bottom:    0.5rem;
}
.wallet-balance-left a {
  font-size:        var(--master-size-body);
  text-decoration:  underline;
}

/* Right side smaller text */
.wallet-balance-right {
  font-size:        var(--master-size-body);
  opacity:          0.85;
  font-family:      var(--master-font-body);
}

/* Menu of wallet cards */
.wallet-menu {
  display:         flex;
  flex-wrap:       wrap;
  gap:             1.25rem; /* 20px */
  margin-bottom:   2.5rem;  /* 40px */
}

/* Individual card styling */
.wallet-card {
  flex:            1 1 28%;
  text-align:      center;
  background-color: var(--master-color-white);
  padding:         1.25rem;      /* 20px */
  border-radius:   0.625rem;     /* 10px */
  box-shadow:      0 0.0625rem 0.1875rem rgba(0,0,0,0.05); /* 1px 3px */
  transition:      all 0.2s ease-in-out;
  text-decoration: none;
  color:           var(--master-color-text);
  font-family:     var(--master-font-body);
}
.wallet-card:hover {
  background-color: #f0faff;
}

/* Icon & title in card */
.wallet-icon {
  font-size:       1.75rem;      /* 28px */
  margin-bottom:   0.625rem;     /* 10px */
}
.wallet-title {
  font-size:       var(--master-size-body);
  font-weight:     500;
  margin-bottom:   0.5rem;
}

/* Content box for transactions */
.wallet-content {
  background-color: var(--master-color-white);
  border-radius:    0.625rem;    /* 10px */
  padding:          1.25rem;     /* 20px */
  box-shadow:       0 0.0625rem 0.1875rem rgba(0,0,0,0.05);
}

/* Transaction list */
.wallet-transactions {
  list-style:      none;
  margin:          0;
  padding:         0;
}
.wallet-transaction {
  display:         flex;
  justify-content: space-between;
  border-bottom:   1px solid #e5e5e5;
  padding:         0.875rem 0;   /* 14px 0 */
}
.wallet-transaction-details {
  font-weight:     500;
  margin-bottom:   0.25rem;      /* 4px */
  font-family:     var(--master-font-body);
}
.wallet-transaction-date {
  font-size:       0.8125rem;    /* 13px */
  color:           #888;
}
.wallet-transaction-amount {
  font-weight:     700;
  font-size:       1rem;         /* 16px */
}
.wallet-transaction-amount.credit {
  color:           #28a745;
}
.wallet-transaction-amount.debit {
  color:           #dc3545;
}

/* Form styling */
.wallet-form {
  margin-top:      1.25rem;      /* 20px */
}
.wallet-form label {
  display:         block;
  margin-bottom:   0.375rem;     /* 6px */
  font-weight:     500;
  font-family:     var(--master-font-body);
}
.wallet-form input,
.wallet-form textarea,
.wallet-form select {
  width:           100%;
  padding:         0.625rem;      /* 10px */
  margin-bottom:   1rem;          /* 16px */
  border:          1px solid #ccc;
  border-radius:   0.375rem;      /* 6px */
  font-family:     var(--master-font-body);
}

/* Submit button in form */
.wallet-form button,
.wallet-form input[type="submit"] {
  font-family:      var(--master-font-header);
  font-size:        var(--master-size-btn);
  letter-spacing:   var(--master-letter-btn);
  font-weight:      var(--master-weight-btn);
  text-transform:   uppercase;
  background-color: var(--master-color-main);
  color:            var(--master-color-white);
  border:           none;
  padding:          0.75em 1.25em;
  border-radius:    0.375rem;     /* 6px */
  cursor:           pointer;
  transition:       background-color 0.2s;
}
.wallet-form button:hover,
.wallet-form input[type="submit"]:hover {
  background-color: var(--master-color-dark);
}


/*─────────────────────────────────────────────────────────────────────────
  GLOBAL INTERACTIVE STATE OVERRIDES
  — ensure every hover/active/focus uses your master palette
─────────────────────────────────────────────────────────────────────────*/

/*--------------------------------------------------------------
11. WPNEO SPECIFIC OVERRIDES: INFO, GOAL, PROGRESS & TABS
--------------------------------------------------------------*/

/* 1) Info values (numbers) */
.wpneo-list-details .campaign-top .campaign-single-right 
  .campaign-info .info-item .info-value {
  color:        var(--master-color-main)      !important;
  font-family:  var(--master-font-body)      !important;
}

/* 2) Goal value */
.wpneo-list-details .campaign-top .campaign-single-right 
  .campaign-goal .value-goal {
  color:        var(--master-color-main)      !important;
}

/* 3) Progress bar fill */
.wpneo-list-details .campaign-top .campaign-single-right 
  .campaign-progress .progress .progress-bar {
  background-color: var(--master-color-main) !important;
}

/* 4) Tabs menu buttons */
.wpneo-list-details .campaign-bottom .wpneo-tabs .wpneo-tabs-menu > li a {
  background-color: var(--master-color-main) !important;
  color:            var(--master-color-white)!important;
}

/* 4a) Active tab state */
.wpneo-list-details .campaign-bottom .wpneo-tabs .wpneo-tabs-menu > li.active a {
  background-color: var(--master-color-dark) !important;
  color:            var(--master-color-white)!important;
}


/*───────────────────────────────────────────────────────────────
   12. PROGRESS BAR & CURRENT TAB
───────────────────────────────────────────────────────────────*/

/* 1) Round the progress bar edges */
.wpneo-list-details .campaign-top .campaign-single-right 
  .campaign-progress .progress,
.wpneo-list-details .campaign-top .campaign-single-right 
  .campaign-progress .progress .progress-bar {
  border-radius: 0.25rem !important; /* 4px */
  overflow: hidden;                  /* ensure inner corners are clipped */
}

/* 2) Current tab different from others */
.wpneo-list-details .campaign-bottom .wpneo-tabs .wpneo-tabs-menu > li.wpneo-current a {
  background-color: var(--master-color-white) !important; /* white bg */
  color:            var(--master-color-text)  !important; /* dark text */
  border-color:     var(--master-color-main)  !important; /* accent border if any */
}

.widget-subtitle {
  display: none !important;
}


/*────────────────────────────────────────────────────────────────────────
   13. WALLET DASHBOARD OVERRIDES
   (align wallet styles with Master Styles design system)
────────────────────────────────────────────────────────────────────────*/

/* Container */
.wallet-container {
  width:            100%;
  max-width:        1200px;
  margin:           0 auto;
  padding:          2.5rem 1.25rem; /* 40px 20px */
  box-sizing:       border-box;
}

/* Balance box */
.wallet-balance-box {
  display:          flex;
  justify-content:  space-between;
  align-items:      center;
  background-color: var(--master-color-main)   !important;
  color:            var(--master-color-white)  !important;
  border-radius:    0.625rem;   /* 10px */
  padding:          1.5rem;     /* 24px */
  margin-bottom:    1.875rem;   /* 30px */
  font-family:      var(--master-font-body);
}

/* Left side headings, text & link */
.wallet-balance-left h2,
.wallet-balance-left h1,
.wallet-balance-left p,
.wallet-balance-left a {
  margin:           0;
  color:            var(--master-color-white) !important;
  font-family:      var(--master-font-body);
}

.wallet-balance-left h2 {
  font-size:        var(--master-size-h2)     !important; /* 32px */
  letter-spacing:   var(--master-letter-h2)   !important;
  font-weight:      400                         !important;
  margin-bottom:    0.5rem;
}
.wallet-balance-left h1 {
  font-size:        var(--master-size-h1)     !important; /* 32px */
  letter-spacing:   var(--master-letter-h1)   !important;
  font-weight:      600                         !important;
  margin-bottom:    0.5rem;
}

.wallet-balance-left p {
  font-size:        var(--master-size-body)   !important; /* 16px */
  letter-spacing:   var(--master-letter-body) !important;
  margin-bottom:    0.5rem;
}

.wallet-balance-left a {
  font-size:        var(--master-size-body)   !important;
  text-decoration:  underline                 !important;
  color:            var(--master-color-light) !important;
}

/* Right side small text */
.wallet-balance-right {
  font-size:        var(--master-size-body)   !important;
  opacity:          0.85                      !important;
  font-family:      var(--master-font-body);
}

/* Menu of cards */
.wallet-menu {
  display:          flex;
  flex-wrap:        wrap;
  gap:              1.25rem;   /* 20px */
  margin-bottom:    2.5rem;    /* 40px */
}

/* Individual card */
.wallet-card {
  flex:             1 1 28%;
  background-color: var(--master-color-white);
  color:            var(--master-color-text);
  text-decoration:  none;
  text-align:       center;
  padding:          1.25rem;   /* 20px */
  border-radius:    0.625rem;  /* 10px */
  box-shadow:       0 0.0625rem 0.1875rem rgba(0,0,0,0.05);
  transition:       background-color 0.2s ease-in-out;
  font-family:      var(--master-font-body);
}

.wallet-card:hover {
  background-color: var(--master-color-bg);
}

/* Icon & title */
.wallet-icon {
  font-size:       1.75rem;  /* 28px */
  margin-bottom:   0.625rem; /* 10px */
}

.wallet-title {
  font-size:       var(--master-size-body);
  font-weight:     500;
  margin-bottom:   0.5rem;
}

/* Transactions list */
.wallet-content {
  background-color: var(--master-color-white);
  border-radius:    0.625rem;
  padding:          1.25rem;
  box-shadow:       0 0.0625rem 0.1875rem rgba(0,0,0,0.05);
}

.wallet-transactions {
  list-style:      none;
  margin:          0;
  padding:         0;
}

.wallet-transaction {
  display:         flex;
  justify-content: space-between;
  border-bottom:   1px solid #e5e5e5;
  padding:         0.875rem 0; /* 14px 0 */
}

.wallet-transaction-details {
  font-weight:     500;
  margin-bottom:   0.25rem;    /* 4px */
  font-family:     var(--master-font-body);
}

.wallet-transaction-date {
  font-size:       0.8125rem;  /* 13px */
  color:           #888;
}

.wallet-transaction-amount {
  font-weight:     700;
  font-size:       1rem;       /* 16px */
}

.wallet-transaction-amount.credit {
  color:           #28a745;
}

.wallet-transaction-amount.debit {
  color:           #dc3545;
}

/* Form elements */
.wallet-form {
  margin-top:      1.25rem;    /* 20px */
}

.wallet-form label {
  display:         block;
  margin-bottom:   0.375rem;   /* 6px */
  font-weight:     500;
  font-family:     var(--master-font-body);
}

.wallet-form input,
.wallet-form textarea,
.wallet-form select {
  width:           100%;
  padding:         0.625rem;    /* 10px */
  margin-bottom:   1rem;        /* 16px */
  border:          1px solid #ccc;
  border-radius:   0.375rem;    /* 6px */
  font-family:     var(--master-font-body);
}

/* Form submit button */
.wallet-form button,
.wallet-form input[type="submit"] {
  font-family:      var(--master-font-header);
  font-size:        var(--master-size-btn);
  letter-spacing:   var(--master-letter-btn);
  font-weight:      var(--master-weight-btn);
  text-transform:   uppercase;
  background-color: var(--master-color-main);
  color:            var(--master-color-white);
  border:           none;
  padding:          0.75em 1.25em;
  border-radius:    0.375rem;    /* 6px */
  cursor:           pointer;
  transition:       background-color 0.2s;
}

.wallet-form button:hover,
.wallet-form input[type="submit"]:hover {
  background-color: var(--master-color-dark);
}


/*───────────────────────────────────────────────────────────────
14. HIDE ZOOM + HEART BUTTONS & RESTYLE BACK CAMPAIGN BUTTON
───────────────────────────────────────────────────────────────*/

/* 1) Hide WooCommerce product zoom trigger */
.woocommerce-product-gallery__trigger {
  display: none !important;
}

/* 2) Hide "Love This Campaign" heart icon */
#love_this_campaign {
  display: none !important;
}

/* 3) Style Back Campaign button */
.btn-back-campaign.btn-theme-2.wpneo_donate_button {
  background-color: var(--master-color-main)   !important;
  color:            var(--master-color-white)  !important;
  font-family:      var(--master-font-header)  !important;
  font-size:        var(--master-size-btn)     !important;
  letter-spacing:   var(--master-letter-btn)   !important;
  font-weight:      var(--master-weight-btn)   !important;
  text-transform:   uppercase;
  border:           none;
  border-radius:    6px;
  padding:          0.75rem 1.5rem;
  cursor:           pointer;
  transition:       background-color 0.2s ease-in-out;
}

/* Hover state */
.btn-back-campaign.btn-theme-2.wpneo_donate_button:hover {
  background-color: var(--master-color-dark) !important;
  color:            var(--master-color-white)!important;
}


/*───────────────────────────────────────────────────────────────
16. GVA NAV MENU — OVERRIDE PURPLE ACTIVE & HOVER COLOR
───────────────────────────────────────────────────────────────*/

ul.gva-nav-menu > li:hover > a,
ul.gva-nav-menu > li:active > a,
ul.gva-nav-menu > li:focus > a,
ul.gva-nav-menu > li.current_page_parent > a {
  color: var(--master-color-main) !important;
}


.breadcrumb li.active::before {
  content: "Campaigns";
  color: var(--master-color-text);
}

.breadcrumb li.active {
  color: transparent !important;
}



/*───────────────────────────────────────────────────────────────
17. ELEMENTOR FOOTER OVERRIDE — UNIFY FONT SYSTEM
───────────────────────────────────────────────────────────────*/

/* Target all elements inside Elementor footer sections */
footer,
footer .elementor *,
footer .elementor p,
footer .elementor span,
footer .elementor li,
footer .elementor a {
  font-family: var(--master-font-body) !important;
  font-size: var(--master-size-body) !important;
  letter-spacing: var(--master-letter-body) !important;
  line-height: 1.5 !important;
  color: var(--master-color-text) !important;
}


/*───────────────────────────────────────────────────────────────
18. HIDE PSEUDO-ELEMENT AFTER BACK CAMPAIGN BUTTON
───────────────────────────────────────────────────────────────*/

.btn-back-campaign.btn-theme-2.wpneo_donate_button::after {
  display: none !important;
  content: none !important;
}


/*───────────────────────────────────────────────────────────────
19. HIDE WALLET BALANCE LINK IN HEADER / MENU
───────────────────────────────────────────────────────────────*/

a.woo-wallet-menu-contents.menu-link {
  display: none !important;
}



/*───────────────────────────────────────────────────────────────
  22. GLOBAL COLOR & FONT OVERRIDES (overwrite old #674DF0 / Poppins)
───────────────────────────────────────────────────────────────*/

:root {
  /* TEC, Elementor, Theme overrides */
  --tec-color-accent-primary: var(--master-color-main) !important;
  --e-global-color-primary:   var(--master-color-main) !important;
  --e-global-color-accent:    var(--master-color-main) !important;
  --e-global-color-text:      var(--master-color-text) !important;
  --tec-font-family-sans-serif: var(--master-font-body) !important;
  --e-global-typography-primary-font-family: var(--master-font-header) !important;
  --e-global-typography-text-font-family:     var(--master-font-body) !important;
}



/*───────────────────────────────────────────────────────────────
23. ICON BOX HOVER EFFECT — Change + icon and "Campaign" text
───────────────────────────────────────────────────────────────*/

:root {
  /* Arc background layers */
  --arc-palette-background:             var(--master-color-bg)      !important;
  --arc-palette-backgroundExtra:        var(--master-color-lighter) !important;
  --arc-background-gradient-color0:     var(--master-color-bg)      !important;
  --arc-background-gradient-color1:     var(--master-color-bg)      !important;

  /* Arc foreground/text colors */
  --arc-palette-foregroundPrimary:      var(--master-color-text)    !important;
  --arc-palette-foregroundSecondary:    var(--master-color-dark)    !important;
  --arc-palette-foregroundTertiary:     var(--master-color-main)    !important;

  /* Arc contrast & cutout */
  --arc-palette-maxContrastColor:       var(--master-color-white)   !important;
  --arc-palette-minContrastColor:       var(--master-color-text)    !important;
  --arc-palette-cutoutColor:            var(--master-color-bg)      !important;

  /* Arc accent states */
  --arc-palette-hover:                  var(--master-color-light)   !important;
  --arc-palette-focus:                  var(--master-color-dark)    !important;

  /* Arc titles & subtitles */
  --arc-palette-title:                  var(--master-color-text)    !important;
  --arc-palette-subtitle:               var(--master-color-text)    !important;
}


/*───────────────────────────────────────────────────────────────
24. PAGE NAV & CROWD-FUND BUTTONS — aligned to Master Styles
───────────────────────────────────────────────────────────────*/

/* Base styling for nav “Next/Prev” & submit campaign */
button.next-button,
button.prev-button,
.wpneo-submit-campaign,
.wp-crowd-btn {
  margin:            0.625rem 0.3125rem 0 0;     /* 10px 5px 0 0 */
  padding:           0.75em 1.25em;               /* 12px 20px */
  display:           inline-block;
  font-family:       var(--master-font-header);
  font-size:         var(--master-size-btn);
  letter-spacing:    var(--master-letter-btn);
  font-weight:       var(--master-weight-btn);
  text-transform:    uppercase;
  border:            none;
  border-radius:     0.25rem;                     /* 4px */
  background-color:  var(--master-color-main);
  color:             var(--master-color-white);
  cursor:            pointer;
  transition:        background-color 0.35s ease;
}

/* Hover state */
button.next-button:hover,
button.prev-button:hover,
.wpneo-submit-campaign:hover,
.wp-crowd-btn:hover {
  background-color: var(--master-color-dark);
}

/* Primary variant (darker) */
.wp-crowd-btn-primary {
  background-color: var(--master-color-darker) !important;
  color:            var(--master-color-white)  !important;
}

.wp-crowd-btn-primary:hover {
  background-color: var(--master-color-dark) !important;
}



/*───────────────────────────────────────────────────────────────
24. UNIFY ALL BUTTONS TO “FILLED” STYLE
───────────────────────────────────────────────────────────────*/

button,
input[type="button"],
input[type="submit"],
.button,
.btn,
a.button,
a.btn,
.elementor-button,
.elementor-button-link,
.wp-crowd-btn,
.wp-crowd-btn-primary,
.wp-crowd-btn-secondary {
  /* Typography & spacing */
  font-family:      var(--master-font-header) !important;
  font-size:        var(--master-size-btn)    !important;
  letter-spacing:   var(--master-letter-btn)  !important;
  font-weight:      var(--master-weight-btn)  !important;
  text-transform:   uppercase                 !important;
  display:          inline-block              !important;
  text-decoration:  none                      !important;
  padding:          0.75em 1.5em              !important; /* 12px 24px */
  border-radius:    0.375rem                  !important; /* 6px */
  border:           none                      !important;
  cursor:           pointer                   !important;
  transition:       background-color 0.3s ease!important;

  /* Filled colors */
  background-color: var(--master-color-main)  !important;
  color:            var(--master-color-white) !important;
}

/* Hover/Focus */
button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
.button:hover,
.btn:hover,
a.button:hover,
a.btn:hover,
.elementor-button:hover,
.elementor-button-link:hover,
.wp-crowd-btn:hover,
.wp-crowd-btn-primary:hover,
.wp-crowd-btn-secondary:hover {
  background-color: var(--master-color-dark)  !important;
  color:            var(--master-color-white) !important;
}

/* Active/Pressed */
button:active,
input[type="button"]:active,
input[type="submit"]:active,
.button:active,
.btn:active,
a.button:active,
a.btn:active,
.elementor-button:active,
.elementor-button-link:active,
.wp-crowd-btn:active,
.wp-crowd-btn-primary:active,
.wp-crowd-btn-secondary:active {
  background-color: var(--master-color-darker) !important;
  color:            var(--master-color-white) !important;
}



/*───────────────────────────────────────────────────────────────
   FORCE ALL WP-NEO / CROWDFUND BUTTONS INTO YOUR FILLED STYLE
───────────────────────────────────────────────────────────────*/
  
/* 1) Base filled look on hover */
.removecampaignupdate:hover,
.wp-crowd-btn:hover,
.wp-crowd-btn-primary:hover,
.wpneo-edit-btn:hover,
.wpneo-cancel-btn:hover,
.wpneo-save-btn:hover,
.wpneo-image-upload:hover,
#wpneo_active_edit_form:hover,
.wpneo-image-upload-btn:hover {
  background-color: var(--master-color-dark) !important;
  color:            var(--master-color-white) !important;
}

/* 2) Also force any inner text or icons white */
.removecampaignupdate:hover *,
.wp-crowd-btn:hover *,
.wp-crowd-btn-primary:hover *,
.wpneo-edit-btn:hover *,
.wpneo-cancel-btn:hover *,
.wpneo-save-btn:hover *,
.wpneo-image-upload:hover *,
#wpneo_active_edit_form:hover *,
.wpneo-image-upload-btn:hover * {
  color: var(--master-color-white) !important;
}

/* 3) If the element is an <a>, boost specificity */
a.removecampaignupdate:hover,
a.wp-crowd-btn:hover,
a.wp-crowd-btn-primary:hover,
a.wpneo-edit-btn:hover,
a.wpneo-cancel-btn:hover,
a.wpneo-save-btn:hover,
a.wpneo-image-upload:hover,
a#wpneo_active_edit_form:hover,
a.wpneo-image-upload-btn:hover {
  background-color: var(--master-color-dark) !important;
  color:            var(--master-color-white) !important;
}


/* make those two buttons sit side by side */
.wpneo-form-buttons {
  display: flex;
  gap: 0.75rem; /* space between buttons */
  align-items: center;
  margin-top: 1rem; /* adjust as needed */
}

.wpneo-form-buttons .prev-button,
.wpneo-form-buttons .wpneo-submit-campaign .wpcf-btn {
  /* ensure they use your button design tokens */
  font-family:     var(--master-font-header);
  font-size:       var(--master-size-btn);
  letter-spacing:  var(--master-letter-btn);
  font-weight:     var(--master-weight-btn);
  text-transform:  uppercase;
  padding:         0.75em 1.5em;
  border-radius:   0.375rem;
  border:          none;
  cursor:          pointer;
  transition:      background-color 0.3s ease;
  background-color: var(--master-color-main);
  color:            var(--master-color-white);
}

.wpneo-form-buttons .prev-button:hover,
.wpneo-form-buttons .wpneo-submit-campaign:hover .wpcf-btn:hover{
  background-color: var(--master-color-dark);
}

/* 1. Smooth transitions on icon, title & description */
.elementor-icon-box-icon svg,
.elementor-icon-box-title a,
.elementor-icon-box-description {
  transition: fill 0.3s ease, color 0.3s ease;
}

/* 2. On hover anywhere in the wrapper, light up ALL parts */
.elementor-icon-box-wrapper:hover .elementor-icon-box-icon svg,
.elementor-icon-box-wrapper:hover .elementor-icon-box-title a,
.elementor-icon-box-wrapper:hover .elementor-icon-box-description {
  fill:  var(--master-color-main) !important;
  color: var(--master-color-main) !important;
}

/* 3. Show pointer cursor */
.elementor-icon-box-wrapper {
  cursor: pointer;
}

/*───────────────────────────────────────────────────────────────
   Turn your 8-item, 3-col megamenu into a 4×2 flex grid
───────────────────────────────────────────────────────────────*/

/*───────────────────────────────────────────────────────────────
   Override the 3-column multicol plugin and force a 4×2 grid
───────────────────────────────────────────────────────────────*/

/*
 * Override existing column styles and apply CSS Grid
 * Target the specific UL element using its existing classes.
 */
.megamenu-wrap-inner .megamenu-sub.megamenu-columns-3 {
    /* Override potential column-count properties */
    column-count: auto !important; /* Use !important if needed to force override */
    column-gap: normal !important;   /* Use !important if needed */

    /* Apply CSS Grid */
    display: grid !important; /* Use !important if needed */
    grid-template-columns: repeat(3, 5.0fr); /* 3 equal columns */
    gap: 15px; /* Adjust spacing as desired (row and column gap) */

    /* Ensure list defaults are reset (might be needed depending on base styles) */
    list-style: none;
    padding: 0;
    /* Keep existing margin if necessary, or set margin: 0; */

    /* The parent div already has width: 680px inline, so the grid will fill that */
}


ul.gva-nav-menu > li.megamenu-main .megamenu-wrap-inner ul.megamenu-sub.megamenu-columns-3 > li {
    width: 100% !important;
}

.elementor-4818 .elementor-element.elementor-element-1ff7 .gva-navigation-menu ul.gva-nav-menu > li .submenu-inner, .gva-navigation-menu ul.gva-nav-menu > li ul.submenu-inner {
    min-width: 720px !important;
}

/* Smooth text‐only hover on mega‐menu links */
.megamenu-wrap-inner .megamenu-sub.megamenu-columns-3 > li > a {
  transition: color 0.3s ease;
  background: none !important; /* ensure no bg */
}

/* Hover just the text */
.megamenu-wrap-inner .megamenu-sub.megamenu-columns-3 > li:hover > a {
  color: var(--master-color-main) !important;
}

/* Active/current item—text only */
.megamenu-wrap-inner .megamenu-sub.megamenu-columns-3 > li.current-menu-item > a {
  color: var(--master-color-main) !important;
}


/* Two-column grid instead of floats */
#wpneo-dashboard-form .wpneo-row {
  display: grid;
  grid-template-columns: repeat(2, 10fr);
  gap: 1rem;
}
@media (max-width: 768px) {
  #wpneo-dashboard-form .wpneo-row {
    grid-template-columns: 1fr;
  }
}

/* Disabled fields look muted until you hit Edit */
#wpneo-dashboard-form input[disabled],
#wpneo-dashboard-form textarea[disabled] {
  background: #f9f9f9;
  border: 1px solid #ddd;
  color: #666;
}


/* Save is dimmed until there's something to save */
.wpneo-btn-disabled {
  opacity: 0.5 !important;
  cursor:  not-allowed !important;
}

/* Once something changes, pulse the Save button */
@keyframes pulse {
  0%,100% { box-shadow: 0 0 0 rgba(15,150,159,0.0); }
  50%     { box-shadow: 0 0 8px rgba(15,150,159,0.5); }
}
.wpneo-btn-highlight {
  animation: pulse 1s infinite;
  background-color: var(--master-color-main) !important;
  color: #fff !important;
}

/* Make sure Cancel matches your button style */
.wpneo-cancel-btn {
  margin-left: 0.5rem;
  background-color: #ccc;
  color: #333;
}

.wpneo-row .wpneo-col6 {
    max-width: 100%!important;

}


/* Make our <label> look exactly like the other filled buttons */
label[for="profile_image"] {
  display: inline-block;
  font-family: var(--master-font-header);
  font-size:   var(--master-size-btn);
  letter-spacing: var(--master-letter-btn);
  font-weight: var(--master-weight-btn);
  text-transform: uppercase;
  background-color: var(--master-color-main) !important;
  color:            var(--master-color-white)!important;
  border: none !important;
  border-radius: 0.375rem;      /* 6px */
  padding: 0.75em 1.5em;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

/* Hover state matches your other buttons */
label[for="profile_image"]:hover {
  background-color: var(--master-color-dark) !important;
}

/* If you want to show the chosen file name next to the label,
   you can add a <span id="profile_image_filename"></span> after
   the label and update it with JS on-change. */
/* hide the entire first WPNEO-col6 (the “My Information” box) */
#wpneo-dashboard-form .wpneo-row > .wpneo-col6:first-child {
 /* display: none !important; */
}

/* hide the “0 Days to go” meta item */
.wpcrowd-admin-meta-info .wpneo-meta-wrap:first-child {
  display: none !important;
}


/*───────────────────────────────────────────────────────────────
   WooCommerce “Submit” Buttons — aligned to Master Styles
───────────────────────────────────────────────────────────────*/
.woocommerce .button[type*="submit"] {
  font-family:        var(--master-font-header);
  font-size:          var(--master-size-btn);
  letter-spacing:     var(--master-letter-btn);
  font-weight:        var(--master-weight-btn);
  text-transform:     uppercase;
  background-color:   var(--master-color-main);
  color:              var(--master-color-white);
  border:             none;
  padding:            0.75em 1.5em;      /* 12px 24px */
  line-height:        1.4;
  border-radius:      0.375rem;          /* 6px */
  display:            inline-block;
  position:           relative;
  z-index:            9;
  transition:         background-color 0.35s ease, color 0.35s ease;
  text-decoration:    none;
}

/* Hover / focus state */
.woocommerce .button[type*="submit"]:hover,
.woocommerce .button[type*="submit"]:focus {
  background-color:   var(--master-color-dark);
  color:              var(--master-color-white);
}

/* Style the wrapper span */
.password-input {
  position: relative; /* Needed for absolute positioning of the button if you choose that method */
  display: flex;     /* Use flexbox for easy alignment */
  align-items: center; /* Vertically center items within the flex container */
  width: 100%; /* Make the wrapper take full width available */
}

/* Style the password input itself */
.password-input input[type="password"],
.password-input input[type="text"] {
  /* Ensure input takes up most space, leaving room for the button */
  flex-grow: 1;
  /* Remove any default browser padding/margin that might interfere */
  padding-right: 40px; /* Add padding to prevent text from going under the button */
                           /* Adjust this value based on button size */
  /* Add any other specific input styling you need */
  /* Example: width: 100%; might not be needed with flex-grow */
}


/* Style the toggle button */
.password-input .show-password-input {
  /* Position the button absolutely within the relative wrapper */
  position: absolute;
  right: 5px;  /* Adjust horizontal position from the right */
  top: 50%;    /* Position top edge at the middle */
  transform: translateY(-50%); /* Shift button up by half its height to center vertically */
  height: 30px; /* Example height */
  width: 30px;  /* Example width */
  padding: 0; /* Remove default button padding */
  border: none; /* Remove default button border */
  background: transparent; /* Make button background invisible */
  cursor: pointer;
  /* Optional: Style the icon color */
  color: #777;
  display: flex; /* Center icon inside button */
  justify-content: center; /* Center icon inside button */
  align-items: center; /* Center icon inside button */
}

/* Optional: Style adjustments on hover/focus */
.password-input .show-password-input:hover {
  color: #333;
}


.woocommerce form .password-input button.show-password-input {
  /* Positioning */
  position: absolute !important;
  top: 50% !important;
  right: 0px !important; /* Position flush right, adjust if needed */
  transform: translateY(-50%) !important; /* Vertical centering */
  z-index: 2 !important; /* Ensure it's above the input field */

  /* Reset Appearance - *Get rid of the teal background/borders* */
  background: none !important;
  border: none !important;
  padding: 8px !important; /* Adjust padding *around* the icon for click area */
  margin: 0 !important;
  box-shadow: none !important;
  line-height: 1 !important; /* Prevent extra vertical space */
  height: auto !important; /* Let height be determined by icon + padding */
  width: auto !important; /* Let width be determined by icon + padding */

  /* Center the icon *inside* the button area */
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  /* Other */
  cursor: pointer !important;
  color: #777 !important; /* Icon color */
}

/* 4. Style the icon itself (usually not needed, but just in case) */
.woocommerce form .password-input button.show-password-input i.fas {
    font-size: 16px; /* Adjust icon size if needed */
    line-height: 1;
    display: block; /* Make sure icon behaves predictably */
    margin: 0;
    padding: 0;
    vertical-align: middle; /* Helps sometimes */
}

/* 5. Hover style */
.woocommerce form .password-input button.show-password-input:hover {
  color: #333 !important; /* Darker icon on hover */
  background: none !important; /* Ensure no background appears on hover */
}


/* Target specifically the SPAN element with this class and hide it */
span.show-password-input {
  display: none !important;
}

/* Just to be safe, ensure the BUTTON element remains displayed as intended */
/* Use the display value from your previous working CSS */
button.show-password-input {
   display: inline-flex !important; /* Or block, absolute etc. - match your layout CSS */
}

.wpneo-wrapper{
    margin-top: 25px!important;
    
}


.wp-crowd-btn {
     margin: 0; 
     
    
    }
    
   /*───────────────────────────────────────────────────────────────
   10. WALLET DASHBOARD DATEPICKER OVERRIDES
   — align jQuery UI datepicker to Master Styles design tokens
───────────────────────────────────────────────────────────────*/

.ui-datepicker {
  background-color:   var(--master-color-white)   !important;
  border:             1px solid var(--master-color-light)   !important;
  box-shadow:         0 2px 8px rgba(0,0,0,0.05)   !important;
  color:              var(--master-color-text)    !important;
  font-family:        var(--master-font-body)     !important;
  padding:            0.5rem                      !important;
}

/* header row */
.ui-datepicker .ui-datepicker-header {
  background-color: var(--master-color-bg)   !important;
  border-bottom:    1px solid var(--master-color-light) !important;
}

/* title text */
.ui-datepicker .ui-datepicker-title {
  font-family: var(--master-font-header) !important;
  font-size:   var(--master-size-h2)     !important;
  font-weight: 500                       !important;
  color:       var(--master-color-text)  !important;
}

/* day grid */
.ui-datepicker table {
  width:           100%;
  border-collapse: collapse;
}
.ui-datepicker th,
.ui-datepicker td {
  padding:     0.4rem 0.2rem    !important;
  text-align:  center           !important;
  font-family: var(--master-font-body) !important;
}

/* normal day */
.ui-datepicker .ui-state-default {
  background-color: var(--master-color-white) !important;
  color:            var(--master-color-text)  !important;
  border:           1px solid transparent     !important;
  border-radius:    0.375rem                  !important;
}

/* hover */
.ui-datepicker .ui-state-default:hover,
.ui-datepicker .ui-state-hover {
  background-color: var(--master-color-lighter) !important;
  color:            var(--master-color-text)    !important;
}

/* today’s date */
.ui-datepicker .ui-state-highlight {
  background-color: var(--master-color-lighter) !important;
  color:            var(--master-color-text)    !important;
  border:           1px solid var(--master-color-main) !important;
}

/* selected date */
.ui-datepicker .ui-state-active {
  background-color: var(--master-color-main)  !important;
  color:            var(--master-color-white) !important;
  border:           1px solid var(--master-color-main) !important;
}

/* make the day link fill the cell for consistent hit area */
.ui-datepicker td a {
  display: block;
  width:   100%;
  height:  100%;
}


/* put this at the very bottom of your stylesheet */
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  text-indent: -9999px !important;
  overflow:    hidden   !important;
}
